Лекция "Характеристика стека протоколов TCP/IP"

  • Лекции
  • docx
  • 15.03.2017
Публикация на сайте для учителей

Публикация педагогических разработок

Бесплатное участие. Свидетельство автора сразу.
Мгновенные 10 документов в портфолио.

Самый нижний ( уровень IV ) соответствует физическому и канальному уровням модели OSI. Этот уровень в протоколах TCP/IP не регламентируется, но поддерживает все популярные стандарты физического и канального уровня: для локальных сетей это Ethernet, Token Ring, FDDI, Fast Ethernet, 100VG-AnyLAN, для глобальных сетей - протоколы соединений "точка-точка" SLIP и PPP, протоколы территориальных сетей с коммутацией пакетов X.25, frame relay. Разработана также специальная спецификация, определяющая использование технологии ATM в качестве транспорта канального уровня. Обычно при появлении новой технологии локальных или глобальных сетей она быстро включается в стек TCP/IP за счет разработки соответствующего RFC, определяющего метод инкапсуляции пакетов IP в ее кадры.
Иконка файла материала тема 4 вопрос 27.docx
тема 4 вопрос 27 характеристика стека протоколов TCP/IP Структура стека TCP/IP. Краткая характеристика протоколов  Так как стек TCP/IP был разработан до появления модели взаимодействия открытых систем ISO/OSI,  то, хотя он также имеет многоуровневую структуру, соответствие уровней стека TCP/IP уровням  модели OSI достаточно условно.  Структура протоколов TCP/IP приведена на рисунке Протоколы TCP/IP делятся на 4 уровня.  Рис. Стек TCP/IP  Самый нижний ( уровень IV ) соответствует физическому и канальному уровням модели OSI. Этот  уровень в протоколах TCP/IP не регламентируется, но поддерживает все популярные стандарты  физического и канального уровня: для локальных сетей это Ethernet, Token Ring, FDDI, Fast Ethernet,  100VG­AnyLAN, для глобальных сетей ­ протоколы соединений "точка­точка" SLIP и PPP, протоколы  территориальных сетей с коммутацией пакетов X.25, frame relay. Разработана также специальная  спецификация, определяющая использование технологии ATM в качестве транспорта канального  уровня. Обычно при появлении новой технологии локальных или глобальных сетей она быстро  включается в стек TCP/IP за счет разработки соответствующего RFC, определяющего метод  инкапсуляции пакетов IP в ее кадры.  Следующий уровень ( уровень III ) ­ это уровень межсетевого взаимодействия, который занимается  передачей пакетов с использованием различных транспортных технологий локальных сетей,  территориальных сетей, линий специальной связи и т. п.  В качестве основного протокола сетевого уровня (в терминах модели OSI) в стеке используется  протокол IP, который изначально проектировался как протокол передачи пакетов в составных сетях,  состоящих из большого количества локальных сетей, объединенных как локальными, так и глобальными связями. Поэтому протокол IP хорошо работает в сетях со сложной топологией, рационально используя наличие в них подсистем и экономно расходуя пропускную способность низкоскоростных линий связи.  Протокол IP является дейтаграммным протоколом, то есть он не гарантирует доставку пакетов до узла  назначения, но старается это сделать.  К уровню межсетевого взаимодействия относятся и все протоколы, связанные с составлением и  модификацией таблиц маршрутизации, такие как протоколы сбора маршрутной информации RIP  (Routing Internet Protocol) и OSPF (Open Shortest Path First), а также протокол межсетевых  управляющих сообщений ICMP (Internet Control Message Protocol). Последний протокол предназначен  для обмена информацией об ошибках между маршрутизаторами сети и узлом ­ источником пакета. С  помощью специальных пакетов ICMP сообщается о невозможности доставки пакета, о превышении  времени жизни или продолжительности сборки пакета из фрагментов, об аномальных величинах  параметров, об изменении маршрута пересылки и типа обслуживания, о состоянии системы и т.п.  Следующий уровень ( уровень II ) называется основным. На этом уровне функционируют протокол  управления передачей TCP (Transmission Control Protocol) и протокол дейтаграмм пользователя UDP  (User Datagram Protocol). Протокол TCP обеспечивает надежную передачу сообщений между  удаленными прикладными процессами за счет образования виртуальных соединений. Протокол UDP  обеспечивает передачу прикладных пакетов дейтаграммным способом, как и IP, и выполняет только  функции связующего звена между сетевым протоколом и многочисленными прикладными процессами.  Верхний уровень ( уровень I ) называется прикладным. За долгие годы использования в сетях различных  стран и организаций стек TCP/IP накопил большое количество протоколов и сервисов прикладного  уровня. К ним относятся такие широко используемые протоколы, как протокол копирования файлов  FTP, протокол эмуляции терминала telnet, почтовый протокол SMTP, используемый в электроннойпочте сети Internet, гипертекстовые сервисы доступа к удаленной информации, такие как WWW и  многие другие. Остановимся несколько подробнее на некоторых из них.  Протокол пересылки файлов FTP (File Transfer Protocol) реализует удаленный доступ к файлу. Для  того, чтобы обеспечить надежную передачу, FTP использует в качестве транспорта протокол с  установлением соединений ­ TCP. Кроме пересылки файлов протокол FTP предлагает и другие услуги.  Так, пользователю предоставляется возможность интерактивной работы с удаленной машиной,  например, он может распечатать содержимое ее каталогов. Наконец, FTP выполняет аутентификацию  пользователей. Прежде, чем получить доступ к файлу, в соответствии с протоколом пользователи  должны сообщить свое имя и пароль. Для доступа к публичным каталогам FTP­архивов Internet  парольная аутентификация не требуется, и ее обходят за счет использования для такого доступа  предопределенного имени пользователя Anonymous.  В стеке TCP/IP протокол FTP предлагает наиболее широкий набор услуг для работы с файлами, однако он является и самым сложным для программирования. Приложения, которым не требуются все  возможности FTP, могут использовать другой, более экономичный протокол ­ простейший протокол  пересылки файлов TFTP (Trivial File Transfer Protocol). Этот протокол реализует только передачу  файлов, причем в качестве транспорта используется более простой, чем TCP, протокол без  установления соединения ­ UDP.  Протокол telnet обеспечивает передачу потока байтов между процессами, а также между процессом и  терминалом. Наиболее часто этот протокол используется для эмуляции терминала удаленного  компьютера. При использовании сервиса telnet пользователь фактически управляет удаленным  компьютером так же, как и локальный пользователь, поэтому такой вид доступа требует хорошей  защиты. Поэтому серверы telnet всегда используют как минимум аутентификацию по паролю, а иногда и более мощные средства защиты, например, систему Kerberos.  Протокол SNMP (Simple Network Management Protocol) используется для организации сетевого  управления. Изначально протокол SNMP был разработан для удаленного контроля и управления  маршрутизаторами Internet, которые традиционно часто называют также шлюзами. С ростом  популярности протокол SNMP стали применять и для управления любым коммуникационным  оборудованием ­ концентраторами, мостами, сетевыми адаптерами и т.д. и т.п. Проблема управления в  протоколе SNMP разделяется на две задачи.  Первая задача связана с передачей информации. Протоколы передачи управляющей информации  определяют процедуру взаимодействия SNMP­агента, работающего в управляемом оборудовании, и  SNMP­монитора, работающего на компьютере администратора, который часто называют также  консолью управления. Протоколы передачи определяют форматы сообщений, которыми обмениваются  агенты и монитор.  Вторая задача связана с контролируемыми переменными, характеризующими состояние управляемого  устройства. Стандарты регламентируют, какие данные должны сохраняться и накапливаться в  устройствах, имена этих данных и синтаксис этих имен. В стандарте SNMP определена спецификация  информационной базы данных управления сетью. Эта спецификация, известная как база данных MIB  (Management Information Base), определяет те элементы данных, которые управляемое устройство  должно сохранять, и допустимые операции над ними.  8. Общая характеристика стека протоколов TCP/IP. Основные протоколы сетевого и транспортного  уровней. Модель OSI имеет исключительно теоретическую направленность, а ее практическая реализация  популярности не получила, зато мировое признание имеет модель TCP/IP, которая имеет 3 уровня,  представленные ниже.  Межсетевой уровень определяет официальный формат пакета и протокол, называемый IP (Internet  Protocol). Задачей межсетевого протокола является доставка IP­пакетов к пунктам назначения.  Основными аспектами здесь являются адресация компьютеров, выбор маршрута пакета и недопущение  закупорки транспортных артерий. Поэтому можно утверждать, что межсетевой уровень модели TCP/IP  функционально близок сетевому уровню модели OSI.Транспортный уровень создан для того, чтобы одноуровневые сущности на приемных и передающих  компьютерах могли поддерживать связь, подобно связи при транспортном уровне модели OSI. На этом  уровне описаны два протокола.  TCP (Transmission Control Protocol – протокол управления передачей), является надежным протоколом  с установлением соединений, позволяющим без ошибок доставлять байтовый поток с одной машины на  любую другую машину объединенной сети. Он разбивает входной поток байтов на отдельные  сообщения и передает их межсетевому уровню. В пункте назначения получающий TCP­процесс  собирает из полученных сообщений выходной поток. Кроме того, TCP осуществляет управление  потоком, чтобы быстрый отправитель не перегрузил информацией медленного получателя.  UDP (User Data Protocol – пользовательский протокол данных), является ненадежным протоколом без  установления соединения, не использующим последовательное управление потоком протокола TCP, а  предоставляющим свое собственное. Он также широко используется в одноразовых клиент­серверных  запросах и приложениях, в которых оперативность важнее аккуратности, например при передаче речи и видео.  Прикладной уровень. содержит все протоколы высокого уровня и по функционалу соответствует  одноименному уровню модели OSI. Главной задачей протоколов и служб данного уровня является  формирование потока (stream) данных, который будет переправляться нижележащему транспортному  уровню для нарезания его на сегменты. Протокол IP находится на межсетевом уровне стека протоколов TCP/IP и обеспечивает передачу  блоков данных, называемых пакетами, от отправителя к получателям, где отправители и получатели яв­ ляются компьютерами, идентифицируемыми адресами фиксирован­ной длины (IP­адресами). Протокол  IP обеспечивает при необходимо­сти также фрагментацию и сборку пакетов для передачи данных через сети блоками малого размера.  Протокол IP является ненадежным протоколом без установления соединения. Это означает, что  протокол IP не подтверждает доставку данных, не контролирует целостность полученных данных и не  про­изводит операцию квитирования (от англ. handshaking) – обмена слу­жебными сообщениями,  подтверждающими установку соединения с узлом назначения и его готовность к приему данных.  Протокол IP об­рабатывает каждый пакет как независимую единицу, не имеющую связи ни с какими  другими пакетами в сети. После того как пакет от­правляется в сеть, его дальнейшая судьба никак не  контролируется отправителем (на уровне протокола IP). Если пакет не может быть доставлен, он  уничтожается. Гарантию правильной передачи данных предоставляют протоко­лы вышестоящего  уровня (например, протокол TCP), которые имеют для этого необходимые механизмы. Одна из основных задач, решаемых протоколом IP, – маршрутизация пакетов, то есть определение пути  следования пакета от одного узла сети к другому на основании адреса получателя. Маршрутизатором,  или шлюзом, называется узел сети с несколькими IP­интерфейсами, подключенными к разным IP­сетям, который осуществляется на основе решения задачи маршрутизации (перенаправление пакетов из одной  сети в другую для доставки от отправителя к получателю). Хостами называются узлы IP­сети, не  являющиеся маршрутизаторами. Обычно хост имеет один IP­интерфейс (например, связанный с сетевой картой Ethernet или с модемом), хотя может иметь и не­сколько [13].  Главная задача транспортного уровня заключается в передаче данных между прикладными процессами.  Эту задачу решают протокол управления передачей TCP (Transmission Control Protocol) и протокол  пользовательских дейтаграмм UDP (User Datagram Protocol). Протоколы TCP и UDP имеют много  общего. Тот и другой обеспечивают интерфейс с вышележащим прикладным уровнем, передавая  данные, поступающие на входной интерфейс хоста, соответствующему приложению. При этом оба  протокола используют концепции «порт» и «сокет». Оба они также поддерживают интерфейс с  нижележащим сетевым уровнем IP, упаковывая свои пакеты в IP­пакеты. Процедура приема протоколами TCP и UDP данных, поступающих от нескольких различных  прикладных служб, называется мультиплексированием. Обратная процедура – процедура  распределения протоколами TCP и UDP поступающих от сетевого уровня пакетов между набором  высокоуровневых служб – называется демультиплексированием. TCP протокол. Информация, поступающая к протоколу TCP от протоколов более высокого уровня,  рассматривается протоколом TCP как неструктурированный поток байтов. Поступающие данныебуферизуются средствами TCP. Для передачи на сетевой уровень из буфера «вырезается» некоторая  непрерывная часть данных, которая называется сегментом, и снабжается заголовком. Основным отличием протокола TCP от UDP является то, что на протокол TCP возложена  дополнительная задача – обеспечить надежную доставку сообщений, используя в качестве основы  протокол IP. TCP­протокол решает задачу обеспечения надежного обмена данными путем установления между  компьютерами логических соединений, благодаря которым TCP следит, чтобы передаваемые сег­менты не были потеряны, не были продуб¬лированы и пришли к полу­чателю в том порядке, в котором были  отправлены. При установлении логического соединения модули TCP договариваются между собой о параметрах  процедуры обмена данными. В протоколе TCP каждая сто¬рона соединения посылает противополож­ ной стороне следующие параметры: 1) максимальный размер сегмента, который она готова принимать;  2) максимальный объем данных (возможно несколько сегментов), которые она разрешает другой  стороне передавать в свою сторону, даже если та еще не по¬лучила квитанцию на предыдущую порцию  данных; 3) начальный порядковый номер байта, с которого она начинает отсчет потока данных в рамках этого соединения.  Таким образом, из всего вышеизложенного о двух протоколах транспортно¬го уровня стека TCP/IP  следует, что на один из них – TCP – возложена сложная и очень важная задача обеспечения надежной  передачи данных через ненадежную сеть.  С другой стороны, функциональная простота протокола UDP обусловливает простоту алгоритма его  работы, компактность и высокую скорость. Поэто¬му те приложения, в которых реализован собст­ венный, достаточно надежный механизм обмена сообщениями, осно­ванный на установлении  соединения, пред¬почитают использовать для непосредственной передачи данных по сети менее  надежные, но бо­лее быстрые средства транспортировки, в качестве которых по отно­шению к  протоколу TCP и выступает протокол UDP.  Протокол UDP может быть использован и в том случае, когда хорошее качество линий связи  обеспе¬чивает достаточный уровень надежности и без применения дополнительных приемов (например, ус­тановление логического соединения и квитирования пере¬даваемых пакетов (подтверждение  получения)). Заметим, что, поскольку прото­кол TCP основан на ло¬гических соединениях, он не  годится для ши­роковещательной и групповой рассылки, в отличие от протокола UDP.