Протоколы, используемые в мультисервисной сети
Стек протоколов TCP/IP В проектируемой мультисервисной сети используется стек протоколов TCP/IP. Стек протоколов TCP/IP (англ. Transmission Control Protocol/Internet Protocol) - собирательное название для сетевых протоколов разных уровней, используемых в сетях. Слово «стек» (англ. stack, стопка) подразумевает, что протокол TCP работает поверх IP. В модели OSI данный стек занимает (реализует) все уровни и сам делится на 4 уровня: прикладной, транспортный, межсетевой, уровень доступа к сети (в OSI это уровни - физический, канальный и частично сетевой). На стеке протоколов TCP/IP построено всё взаимодействие пользователей в сети, от программной оболочки до канального уровня модели OSI. По сути это база, на которой завязано всё взаимодействие. При этом стек является независимым от физической среды передачи данных. 3.1.1 Уровни стека TCP/IP Существуют разногласия в том, как вписать модель TCP/IP в модель OSI, поскольку уровни в этих моделях не совпадают. К тому же, модель OSI не использует дополнительный уровень - «Internetworking» - между транспортным и сетевым уровнями. Примером спорного протокола может быть ARP или STP. В таблице 3.1 показано как традиционно протоколы TCP/IP вписываются в эталонную модель OSI. Таблица 3.1 - Размещение протоколов стека TCP/IP по уровням модели OSI.
В таблице 3.2 представлена упрощенная интерпретацию стека TCP/IP.
Таблица 3.2 - Упрощенная интерпретация стека TCP/IP
Обычно в стеке TCP/IP верхние 3 уровня (прикладной, представительный и сеансовый) модели OSI объединяют в один - прикладной. Поскольку в таком стеке не предусматривается унифицированный протокол передачи данных, функции по определению типа данных передаются приложению. Физический уровень Физический уровень описывает среду передачи данных (будь то кабель, оптоволокно или радиоканал), физические характеристики такой среды и принцип передачи данных (разделение каналов, модуляцию, амплитуду сигналов, частоту сигналов, способ синхронизации передачи, время ожидания ответа и максимальное расстояние). Канальный уровень Канальный уровень описывает, каким образом передаются пакеты данных через физический уровень, включая кодирование. Ethernet, например, в полях заголовка пакета содержит указание того, какой машине или машинам в сети предназначен этот пакет. Примеры протоколов канального уровня - Ethernet, IEEE 802.11 Wireless Ethernet, SLIP, Token Ring, ATM и MPLS. PPP не совсем вписывается в такое определение, поэтому обычно описывается в виде пары протоколов HDLC/SDLC. MPLS занимает промежуточное положение между канальным и сетевым уровнем и, строго говоря, его нельзя отнести ни к одному из них. Канальный уровень иногда разделяют на 2 подуровня - LLC и MAC.
Сетевой уровень Изначально разработан для передачи данных из одной (под) сети в другую. Примерами такого протокола является X.25 и IPC в сети ARPANET. С развитием концепции глобальной сети в уровень были внесены дополнительные возможности по передаче из любой сети в любую сеть, независимо от протоколов нижнего уровня, а также возможность запрашивать данные от удалённой стороны, например в протоколе ICMP (используется для передачи диагностической информации IP-соединения) и IGMP (используется для управления multicast-потоками). ICMP и IGMP расположены над IP и должны попасть на следующий - транспортный - уровень, но функционально являются протоколами сетевого уровня, а поэтому их невозможно вписать в модель OSI. Пакеты сетевого протокола IP могут содержать код, указывающий, какой именно протокол следующего уровня нужно использовать, чтобы извлечь данные из пакета. Это число - уникальный IP-номер протокола. ICMP и IGMP имеют номера, соответственно, 1 и 2. Транспортный уровень Протоколы транспортного уровня могут решать проблему негарантированной доставки сообщений («дошло ли сообщение до адресата?»), а также гарантировать правильную последовательность прихода данных. В стеке TCP/IP транспортные протоколы определяют, для какого именно приложения предназначены эти данные. Протоколы автоматической маршрутизации, логически представленные на этом уровне (поскольку работают поверх IP), на самом деле являются частью протоколов сетевого уровня; например OSPF (IP идентификатор 89). TCP (IP идентификатор 6) - «гарантированный» транспортный механизм с предварительным установлением соединения, предоставляющий приложению надёжный поток данных, дающий уверенность в безошибочности получаемых данных, перезапрашивающий данные в случае потери и устраняющий дублирование данных. TCP позволяет регулировать нагрузку на сеть, а также уменьшать время ожидания данных при передаче на большие расстояния. Более того, TCP гарантирует, что полученные данные были отправлены точно в такой же последовательности. В этом его главное отличие от UDP. UDP (IP идентификатор 17) протокол передачи датаграмм без установления соединения. Также его называют протоколом «ненадёжной» передачи, в смысле невозможности удостовериться в доставке сообщения адресату, а также возможного перемешивания пакетов. В приложениях, требующих гарантированной передачи данных, используется протокол TCP.
UDP обычно используется в таких приложениях, как потоковое видео и компьютерные игры, где допускается потеря пакетов, а повторный запрос затруднён или не оправдан, либо в приложениях вида запрос-ответ (например, запросы к DNS), где создание соединения занимает больше ресурсов, чем повторная отправка. И TCP, и UDP используют для определения протокола верхнего уровня число, называемое портом. Прикладной уровень На прикладном уровне работает большинство сетевых приложений. Эти программы имеют свои собственные протоколы обмена информацией, например, HTTP для WWW, FTP (передача файлов), SMTP (электронная почта), SSH (безопасное соединение с удалённой машиной), DNS (преобразование символьных имён в IP-адреса) и многие другие. В массе своей эти протоколы работают поверх TCP или UDP и привязаны к определённому порту, например: HTTP на TCP-порт 80 или 8080, FTP на TCP-порт 20 (для передачи данных) и 21 (для управляющих команд), SSH на TCP-порт 22, запросы DNS на порт UDP (реже TCP) 53, обновление маршрутов по протоколу RIP на UDP-порт 520. Эти порты определены Агентством по выделению имен и уникальных параметров протоколов (IANA). Бесспорно, к этому уровню относятся: DHCP, Echo, Finger, Gopher, HTTP, HTTPS, IMAP, IMAPS, IRC, NNTP, NTP, POP3, POPS, QOTD, RTSP, SNMP, SSH, Telnet, XDMCP. IP (Internet Protocol) IP (англ. Internet Protocol - межсетевой протокол) - маршрутизируемый сетевой протокол, основа стека протоколов TCP/IP. Протокол IP используется для негарантированной доставки данных (разделяемых на так называемые пакеты) от одного узла сети к другому. Это означает, что на уровне этого протокола (третий уровень сетевой модели OSI) не даётся гарантий надёжной доставки пакета до адресата. В частности, пакеты могут прийти не в том порядке, в котором были отправлены, продублироваться (когда приходят две копии одного пакета; в реальности это бывает крайне редко), оказаться повреждёнными (обычно повреждённые пакеты уничтожаются) или не прибыть вовсе. Гарантии безошибочной доставки пакетов дают протоколы более высокого (транспортного) уровня сетевой модели OSI - например, TCP - которые IP используют в качестве транспорта.
В современной сети Интернет используется IP четвёртой версии (IPv4). В протоколе IP этой версии каждому узлу сети ставится в соответствие IP-адрес длиной 4 октета. При этом компьютеры в подсетях объединяются общими начальными битами адреса. Количество этих бит, общее для данной подсети, называется маской подсети (ранее использовалось деление пространства адресов по классам, сейчас используется бесклассовая адресация). В настоящее время вводится в эксплуатацию шестая версия протокола IPv6 (англ. Internet Protocol version 6), призванная решить проблемы за счёт использования длины адреса 128 бит вместо 32. После того, как адресное пространство в IPv4 закончится, два стека протоколов - IPv6 и IPv4 будут использоваться параллельно (dual stack), с постепенным увеличением доли трафика IPv6 по сравнению с IPv4. Такая ситуация возникает из-за наличия огромного количества устройств, не поддерживающих IPv6 и требующих специального преобразования для работы с устройствами, использующими только IPv6. 3.2.1 IP-пакет IP-пакет - форматированный блок информации, передаваемый по вычислительной сети. Соединения вычислительных сетей, которые не поддерживают пакеты, такие как традиционные соединения типа «точка-точка» в телекоммуникациях, просто передают данные в виде последовательности байтов, символов или битов. В современной практике термин «IP-пакет» обычно используется в качестве синонима к термину «IP-датаграмма». Вместе с тем в ряде документов IETF (RFC 1812, RFC 1547, RFC 1661 и др.) между ними проводится определенное различие. Как известно, модули данных верхних уровней сетевой модели последовательно инкапсулируются в модули данных нижележащих уровней. При передаче на канальный уровень IP-датаграмма может не помещаться в модуль данных канального уровня. В таком случае для инкапсуляции требуется предварительная фрагментация датаграммы для удовлетворения требований конкретной технологии уровня среды передачи данных. Таким образом, возникает ещё один термин - IP-фрагмент. Термин IP-пакет обобщает понятия IP-датаграммы и IP-фрагмента и обозначает модуль данных, передаваемый канальному уровню для инкапсуляции в кадр. Можно сказать, что на сетевом уровне IP-датаграмма является инкапсулирующим модулем данных, а IP-пакет - инкапсулируемым. В частном случае они могут совпадать, в общем случае - нет, так как IP-датаграмма может дробиться на фрагменты. Не всякая датаграмма, и даже не всякий фрагмент без дополнительной фрагментации может стать IP-пакетом.
Разведение понятий IP-датаграммы, IP-фрагмента и IP-пакета удобно для понимания процессов, происходящих на сетевом уровне. Вместе с тем следует иметь в виду, что общая структура сообщения с его заголовками и телом во всех трёх случаях одна и та же. Полные датаграммы и фрагменты датаграмм различаются только определенной информацией в заголовках. Пакет просто идентичен датаграмме или фрагменту, если они помещаются в кадр. Таким образом, необходимо помнить, что датаграммы, фрагменты и пакеты представляют собой разные единицы сетевого уровня не в структурном, а в функциональном плане. 3.2.2 Структура IP-датаграммы (пакета) Протокол IP четвертой версии (IPv4). На рисунке 3.1 приведена структура пакета IPv4.
Рисунок 3.1. – Структура IP-пакета IPv4
В таблице Таблица 3.3 приведены назначение полей IP-пакета IPv4 Таблица3.3 – Назначение полей IP-пакета IPv4
Протокол IP четвертой версии (IPv6). На рисунке 3.2 приведена структура пакета IPv6. В таблице 3.4 приведены назначение полей IP-пакета IPv6
Рисунок 3.2. - Структура IP-пакета IPv6
Таблица 3.4 - Назначение полей IP-пакета IPv6
3.2.3 Диапазоны IP-адресов для локальных сетей При подключении пользовательского компьютера к Интернету, IP-адреса выбираются из диапазона, предоставленного провайдером. Компьютеры, не имеющие IP-адреса, выданного провайдером, могут (при правильной настройке маршрутизации) работать с другими локальными компьютерами, имея IP-адреса из диапазонов, зарезервированных для локальных сетей (RFC 1918):
Компьютеры с такими адресами могут получать доступ к Интернету посредством прокси-серверов или NAT. При построении сетей, составляющих Интернет (например, сетей провайдеров), выбираются строго определённые диапазоны адресов, назначенные организацией IANA. IANA подконтрольна ICANN («высшей инстанции» в вопросах резервирования диапазонов адресов) и имеет свои представительства по всему миру. Например, в Европе распределение адресов координирует RIPE NCC.
Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|