- UDP/IP
-
Стек протоколов TCP/IP (англ. Transmission Control Protocol/Internet Protocol) — собирательное название для сетевых протоколов разных уровней, используемых в сетях. Слово «стек» (англ. stack, стопка) подразумевает, что протокол IP.
В модели OSI данный стек занимает (реализует) все уровни и делится сам на 4 уровня: прикладной, транспортный, межсетевой, уровень доступа к сети (в OSI это уровни — физический, канальный и частично сетевой). На стеке протоколов TCP/IP построено всё взаимодействие пользователей в сети, от программной оболочки до канального уровня модели OSI. По сути это база, на которой завязано всё взаимодействие. При этом стек является независимым от физической среды передачи данных.
Содержание
Уровни стека TCP/IP
Существуют разногласия в том, как вписать модель TCP/IP в модель OSI, поскольку уровни в этих моделях не совпадают.
К тому же, модель OSI не использует дополнительный уровень — «Internetworking» — между транспортным и сетевым уровнями. Примером спорного протокола может быть STP.
Вот как традиционно протоколы TCP/IP вписываются в модель OSI:
7 Прикладной напр. SMTP, FTP, NFS, BGP 6 Представительный напр. XDR, SMB, AFP 5 Сеансовый напр. SSL, ISO 8327 / CCITT X.225, RPC, ASP 4 Транспортный напр. UDP, SCTP, ATP, GRE 3 Сетевой напр. ICMP, OSPF, IPX, DDP 2 Канальный напр. Token ring, PPP, X.25, Frame relay, ATM, Wi-Fi, RARP 1 Физический напр. электричество, радио, оптоволокно Обычно в стеке TCP/IP верхние 3 уровня (прикладной, представительный и сеансовый) модели OSI объединяют в один — прикладной. Поскольку в таком стеке не предусматривается унифицированный протокол передачи данных, функции по определению типа данных передаются приложению. Упрощенно интерпретацию стека TCP/IP можно представить так:
4 Прикладной
«7 уровень»напр. FTP, RIP, работающий поверх BGP, работающий поверх 3 Транспортный напр. UDP, SCTP, OSPF, что работают поверх 2 Межсетевой Для TCP/IP это (вспомогательные протоколы, вроде IGMP работают поверх IP, но являются частью сетевого уровня; 1 Физический напр. физическая среда и принципы кодирования информации, E1 Физический уровень
Физический уровень описывает среду передачи данных (будь то кабель, оптоволокно или радиоканал), физические характеристики такой среды и принцип передачи данных (разделение каналов, модуляцию, амплитуду сигналов, частоту сигналов, способ синхронизации передачи, время ожидания ответа и максимальное расстояние).
Канальный уровень
Канальный уровень описывает, каким образом передаются пакеты данных через физический уровень, включая кодирование (то есть специальные последовательности битов, определяющих начало и конец пакета данных).
Примеры протоколов канального уровня — IEEE 802.11 Wireless Ethernet, Token Ring, MPLS.
PPP не совсем вписывается в такое определение, поэтому обычно описывается в виде пары протоколов MPLS занимает промежуточное положение между канальным и сетевым уровнем и, строго говоря, его нельзя отнести ни к одному из них.
Канальный уровень иногда разделяют на 2 подуровня — LLC и MAC.
Сетевой уровень
Изначально разработан для передачи данных из одной (под)сети в другую. Примерами такого протокола является IPC в сети глобальной сети в уровень были внесены дополнительные возможности по передаче из любой сети в любую сеть, независимо от протоколов нижнего уровня, а также возможность запрашивать данные от удалённой стороны, например в протоколе IP-соединения) и multicast-потоками).
ICMP и IGMP расположены над IP и должны попасть на следующий — транспортный — уровень, но функционально являются протоколами сетевого уровня, а поэтому их невозможно вписать в модель OSI.
Пакеты сетевого протокола IP-номер протокола. ICMP и IGMP имеют номера, соответственно, 1 и 2.
Транспортный уровень
Протоколы транспортного уровня могут решать проблему негарантированной доставки сообщений («дошло ли сообщение до адресата?»), а также гарантировать правильную последовательность прихода данных. В стеке TCP/IP транспортные протоколы определяют, для какого именно приложения предназначены эти данные.
Протоколы автоматической маршрутизации, логически представленные на этом уровне (поскольку работают поверх IP), на самом деле являются частью протоколов сетевого уровня; например
поток данных, дающий уверенность в безошибочности получаемых данных, перезапрашивающий данные в случае потери и устраняющий дублирование данных. TCP позволяет регулировать нагрузку на сеть, а также уменьшать время ожидания данных при передаче на большие расстояния. Более того, TCP гарантирует, что полученные данные были отправлены точно в такой же последовательности. В этом его главное отличие от UDP (IP идентификатор 17) протокол передачи датаграмм без установления соединения. Также его называют протоколом «ненадёжной» передачи, в смысле невозможности удостовериться в доставке сообщения адресату, а также возможного перемешивания пакетов. В приложениях, требующих гарантированной передачи данных, используется протокол компьютерные игры, где допускается потеря пакетов, а повторный запрос затруднён или не оправдан, либо в приложениях вида запрос-ответ (например, запросы к
И TCP, и UDP используют для определения протокола верхнего уровня число, называемое портом.
-
См. также: Список портов TCP и UDP
Прикладной уровень
На прикладном уровне работает большинство сетевых приложений.
Эти программы имеют свои собственные протоколы обмена информацией, например, WWW, SMTP (электронная почта), DNS (преобразование символьных имён в IP-адреса) и многие другие.
В массе своей эти протоколы работают поверх UDP и привязаны к определённому порту, например:
Эти порты определены Агентством по выделению имен и уникальных параметров протоколов (DHCP, Finger, Gopher, HTTPS, IRC, NTP, RTSP, SSH, XDMCP.
См. также
Ссылки
- Официальный сайт IANA (англ.)
- IANA — идентификаторы протоколов (англ.)
- IANA — номера портов (англ.)
- RFC 1122 (англ.)
- RFC 793 (англ.) — TCP
- RFC 791 (англ.) — IP
Литература
- 'Терри Оглтри' Модернизация и ремонт сетей = Upgrading and Repairing Networks. — 4-е изд. — М.: «Вильямс», 2005. — С. 1328. — ISBN 0-7897-2817-6
- 'Дуглас Камер' Сети TCP/IP, том 1. Принципы, протоколы и структура = Internetworking with TCP/IP, Vol. 1: Principles, Protocols and Architecture. — М.: «Вильямс», 2003. — С. 880. — ISBN 0-13-018380-6
-
Wikimedia Foundation. 2010.