Наборы протоколов
Стеки сетевых протоколов
Во многих случаях протоколы должны работать с другими протоколами. Протокольные пакеты предназначены для бесперебойной работы друг с другом.
Группа взаимосвязанных протоколов, необходимых для выполнения коммуникаций, называется набором протоколов.
Один из лучших способов представить, как протоколы взаимодействуют в одном наборе, — рассмотреть взаимодействие в виде стека. Стек протоколов показывает, как отдельные протоколы реализованы в одном наборе. Протоколы рассматриваются с точки зрения уровней. Причем каждый более высокий уровень обслуживания зависит от функций, определенных протоколами более низких уровней. Нижние уровни стека отвечают за перемещение данных по сети и предоставление сервисов верхним уровням, которые отвечают за содержание пересылаемых сообщений.
Как показано на рисунке, мы можем использовать уровни для описания действий, происходящих в нашем примере личного общения. На нижнем, физическом уровне есть два человека, каждый из которых может произнести слова вслух. В середине находится уровень правил, который определяет требования общения, в том числе, что должен быть выбран общий язык. Вверху находится уровень контента, и именно здесь на самом деле говорится о контенте общения.
На рисунке показаны три различных уровня, используемых для описания того, что происходит при общении лицом к лицу. Нижний уровень, обозначенный физическим уровнем, показывает два человека, обменивающегося сообщением. Средний уровень, помеченный уровнем правил, содержит список используемых протоколов бесед, включая: использование общего языка; ожидание хода; и сигнал после завершения. Верхний уровень помечен уровнем содержимого и содержит сообщение: Где кафе? Текст внизу гласит: Наборы протоколов - это наборы правил, которые работают вместе, чтобы помочь решить проблему.
Эволюция протоколов
Набор протоколов представляет собой множество протоколов, которые используются вместе для предоставления комплексных сетевых сервисов. Начиная с 1970-х годов было несколько различных пакетов протоколов, некоторые из которых были разработаны организацией по стандартизации, а другие разработаны различными поставщиками.
Во время эволюции сетевых коммуникаций и Интернета существовало несколько конкурирующих пакетов протоколов, как показано на рисунке.
Рисунок представляет собой таблицу с текстом под ней. Таблица состоит из четырех строк и пяти столбцов. Первый заголовок столбца - имя уровня TCP/IP и считывает сверху вниз: приложение, транспорт, Интернет и доступ к сети. Второй заголовок столбца — TCP/IP. Протоколами приложений являются HTTP, DNS, DHCP и FTP. TCP и UDP являются протоколами транспортного уровня. Интернет-протоколы IPv4, IPv6, ICMPv4 и ICMPv6. Протоколами сетевого доступа являются Ethernet, ARP и WLAN. Третий заголовок столбца - ISO. Протоколы приложений ACSE, ROSE, TRSE и SESE. Транспортные протоколы: TP0, TP1, TP2, TP3 и TP4. Интернет-протоколы являются CONP/CMNS и CLNP/CLNS. Протоколы сетевого доступа: Ethernet, ARP и WLAN. Четвертый заголовок столбца - AppleTalk. Протокол прикладного уровня - AFP Транспортные протоколы: ATP, AEP, NBP и RTMP. Протокол Интернета это AARP. Протоколы сетевого доступа: Ethernet, ARP и WLAN. Пятым заголовком столбца является Novell Netware. Протокол прикладного уровня - NDS. Транспортный протокол - SPX Протокол Интернета - IPX. Протоколы доступа к сети: Etherent, ARP и WLAN. Текст ниже таблицы гласит: Internet Protocol Suite или TCP/IP - Это наиболее распространенный и релевантных пакетов протоколов, используемых сегодня. Пакет протоколов TCP/IP представляет собой открытый стандартный набор протоколов, поддерживаемый рабочей группой Internet Engineering Task Force (IETF). Протоколы взаимодействия открытых систем (OSI) - это семейство протоколов, разработанных совместно в 1977 году Международной организацией по стандартизации (ИСО) и Международным союзом электросвязи (МСЭ). Протокол OSI также включал семиуровневую модель, называемую эталонной моделью OSI. Эталонная модель OSI классифицирует функции ее протоколов. Сегодня OSI в основном известен своей многоуровневой моделью. Протоколы OSI в основном были заменены TCP/IP. AppleTalk - Краткосрочный фирменный пакет протоколов, выпущенный компанией Apple Inc. в 1985 году для устройств Apple. В 1995 году Apple приняла использование TCP/IP вместо AppleTalk. Novell NetWare - недолговечный фирменный пакет протоколов и сетевой операционной системы, разработанный компанией Novell Inc. в 1983 году с использованием сетевого протокола IPX. В 1995 году компания «Новелл» приняла использование TCP/IP вместо IPX.
Пример протокола TCP/IP
Протоколы TCP/IP работают на транспортном, сетевом уровнях и уровне приложений. На уровне доступа к сети нет протоколов TCP/IP. Наиболее распространенными протоколами LAN уровня доступа к сети являются протоколы Ethernet и WLAN (беспроводная локальная сеть). Протоколы уровня сетевого доступа обеспечивают доставку IP-пакетов по физическому средству подключения.
На рисунке показан пример трех протоколов TCP/IP, используемых для отправки пакетов между веб-браузером хоста и веб-сервером. HTTP, TCP и IP используются протоколы TCP/IP. На уровне доступа к сети в примере используется Ethernet. Однако это также может быть беспроводной стандарт, такой как WLAN или сотовая связь.
На рисунке показаны протоколы TCP/IP, используемые для отправки пакетов между веб-браузером хоста и веб-сервером. Топология сети показывает узел, подключенный к облаку Интернета с подключением к веб-серверу. Конверт, представляющий пакет, отображается, проходящий между Интернетом и сервером. Из пакета исходит информация о протоколах, используемых на каждом уровне. Сверху вниз: уровень приложений и протокол передачи гипертекста (HTTP); транспортный уровень и протокол управления передачей (TCP); уровень интернета и интернет-протокол (IP); уровень доступа к сети и Ethernet.
Набор протоколов TCP/IP
Сегодня пакет протоколов TCP/IP включает в себя множество протоколов и продолжает развиваться для поддержки новых служб. Наиболее распространенные показаны на рисунке.
На рисунке показаны уровни TCP/IP и связанные протоколы. На прикладном уровне: DNS - это протокол системы имен; DHCPv4, DHCPv6 и SLAAC являются протоколами конфигурации хоста; SMTP, POP3 и IMAP являются протоколами электронной почты; FTP, SFTP и TFTP являются протоколами передачи файлов; а HTTP, HTTPS и REST - протоколы веб и веб-сервисов. На транспортном уровне: TCP — это протокол, ориентированный на подключение, а UDP — протокол без подключения. На интернет-уровне: IPv4, IPv6 и NAT являются интернет-протоколами; ICMPv4, ICMPv6 и ICMPv6 ND являются протоколами обмена сообщениями; OSPF, EIGRP и BGP являются протоколами маршрутизации. На уровне доступа к сети: ARP — это протокол разрешения адресов, а Ethernet и WLAN — протоколы передачи данных. Текст внизу гласит: TCP/IP - это набор протоколов, используемый в Интернете и сетях сегодняшнего дня. TCP/IP имеет два важных аспекта для поставщиков и производителей: открытый стандартный набор протоколов - это означает, что он свободно доступен для общественности и может использоваться любым поставщиком на их оборудовании или в их программном обеспечении. Каждый стандартный протокол принят отраслевыми компаниями и утвержден организацией по стандартизации. Использование стандартов в разработке и реализации протоколов гарантирует, что продукты от разных производителей будет успешно взаимодействовать между собой.
Обмен данными TCP/IP
На рисунке представлен весь процесс обмена данными на примере веб-сервера, передающего данные клиенту.
Нажмите кнопку «Воспроизведение» на рисунке и посмотрите, как идет процесс инкапсуляции, когда веб-сервер отправляет веб-страницу веб-клиенту.
Анимация показывает небольшую сеть с веб-сервером и веб-клиентом. Рисунок показывает компоненты, которые составляют сообщение. Ethernet кадр и IP-пакет, сегмент TCP и пользовательские данные. Анимация начинается с подготовки веб-сервером страницы на языке гипертекстовой разметки (HTML) в качестве данных для отправки. Заголовок протокола HTTP уровня приложений добавляется в начало данных в формате HTML. Заголовок содержит различные данные, включая версию HTTP, которую использует сервер, а также код состояния, указывающий, что у него имеется информация для веб-клиента. Протокол уровня приложений HTTP передает данные веб-страницы в формате HTML на транспортный уровень TCP. Протокол транспортного уровня добавляет дополнительную информацию к данным HTTP для управления обменом информацией между веб-сервером и веб-клиентом. Информация IP добавляется к информации TCP. IP назначает соответствующие IP-адреса источника и места назначения. Такая информация называется IP-пакетом. Протокол Ethernet добавляет информацию в начало и конец IP-пакета, чтобы создать кадр. Затем кадр преобразуется в строку бинарных битов, отправляемых по сетевому пути веб-клиенту.
Нажмите кнопку Воспроизведение на следующем рисунке, чтобы просмотреть анимацию принимающего клиента и отменить инкапсуляцию веб-страницы для отображения в веб-браузере.
Анимация показывает небольшую сеть с сервером и клиентом. Клиент получает поток битов с сервера. Клиент принимает двоичную строку битов и преобразует ее в кадр Ethernet. Кадр содержит заголовок Ethernet, IP-пакет, сегмент TCP и данные. При обработке кадра заголовки протоколов удаляются в обратном порядке. Сначала обрабатывается и удаляется информация Ethernet, вслед за ней информация IP-протокола, затем TCP и, наконец, HTTP. Затем данные веб-страницы передаются программному обеспечению веб-обозревателя клиента.