Совокупность протоколов Internet

Совокупность протоколов Internet {стек, или семейство про­токолов TCP/IP) отличается от ранее рассмотренной модели OSI и обычно редуцируется до схемы, представленной на рис. 5.6. Обе архитектуры включают похожие уровни, в TCP/IP несколь­ко слоев OSl-модели объединены в один.


 

 


Модель OSI

Прикладной Представительный Сеансовый Транспортный

Сетевой

Передача данных Физический

Рис. 5.7.

TCP/IP (Internet)

j Уровень приложений (прикладные i программы конечных пользователей)

Транспортный уровень (связь между программами в сети)

Сетевой уровень (базовые коммуникации, адресация и маршрутизация) j

j Канальный уровень (сетевые аппаратные j средства и драйверы устройств) j

L ___ . __________ . __________ ______ J

Структура стека протоколов TCP/IP


В Unix-системах список поддерживаемых протоколов содер­жится в файле /etc/protocols (табл. 5.5). В первой колонке здесь указаны названия программных модулей, поддерживающих протокол (взаимодействующих с драйвером, с сетевыми при­кладными программами или с другими модулями), и, как видно из содержания колонки 2, всем основным протоколам присвое­ны уникальные номера.

Таблица 5.5. Фрагменты содержания файла /etc/protocols
Модуль Номер Аббревиатура Полное наименование протокола, примечания
ip IP Internet Protocol, Pseudo Protocol Number
icmp ICMP Internet Control Message Protocol
igmp IGMP Internet Group Management
ggp GGP Gateway-Gateway Protocol
ipencap IP-ENCAP IP Encapsulated in IP (officially «IP»)
St ST ST Datagram Mode
tcp TCP Transmission Control Protocol
egp EGP Exterior Gateway Protocol
udp UDP User Datagram Protocol
hmp HMP Host Monitoring Protocol
xns-idp XNS-IDP Xerox NSIDP i
rdp RDP Reliable Datagram Protocol
iso-tp4 ISO-TP4 ISO Transport Protocol class 4
xtp XTP Xpress Transfer Protocol
idpr-cmtp IDPR-CMTP IDPR Control Message Transport
rsvp RSVP Resource ReSeiVation Protocol
vmtp VMTP Versatile Message Transport
ospf OSPFIGP Open Shortest Path First IGP
encap ENCAP Yet Another IP Encapsulation

 

Взаимодействие на уровне прикладных протоколов осуществ­ляется путем обмена командами установления/прекращения со­единений (типа open/close), приема/передачи (send/receive) и собственно данными. Прикладные протоколы (Telnet, элек­тронная почта, Gopher, FTP, HTTP, WAIS) будут рассмотрены далее, совместно с информационными сервисами доступа к ин­формационным ресурсам, здесь же мы ограничимся рассмотре­нием собственно протоколов TCP/IP — канального, сетевого, транспортного уровней. Вот эти протоколы:

• TCP — Transmission Control Protocol — базовый транспорт­ный протокол, давший название всему семейству протоко­лов TCP/IP;

• UDP — User Datagram Protocol — второй по распространен­ности транспортный протокол семейства TCP/IP;

• IP — Internet Protocol — межсетевой протокол;

• ARP — Address Resolution Protocol — используется для определения соответствия IP-адресов и Ethernet-адресов;

• SLIP — Serial Line Internet Protocol — протокол передачи данных по телефонным линиям;

• РРР — Point to Point Protocol (протокол обмена данными «точка — точка»);

• RPC — Remote Process Control (протокол управления уда­ленными процессами);

• TFTP — Trivial File Transfer Protocol (тривиальный прото­кол передачи файлов);

• DNS — Domain Name System (система доменных имен);

• RIP — Routing Information Protocol (протокол маршрути­зации).

Некоторые предварительные замечания. На каждом из уров­ней схемы рис. 5.7 физически коммуникация осуществляется блоками (пакетами), и при переходе с уровня на уровень реали­зуются следующие преобразования форматов: инкапсуляция/экс- капсуляция', фрагментация/дефрагментация.

Инкапсуляция

Инкапсуляция — способ упаковки данных в формате выше­стоящего протокола в формат нижестоящего протокола. При этом один или несколько первичных пакетов преобразуются в один вторичный пакет и снабжаются управляющей информаци-

Уровень приложений (HTTP, FTP и т. п.)
Уровень TCP Заголовок TCP Блок данных TCP, включающий все сообщения прикладного уровня
       
Уровень IP Заголовок IP Заголовок TCP Блок данных TCP, включающий все сообщения прикладного уровня
    <------- Блок данных пакета протокола IP --------- ►

Рис. 5.8. Инкапсуляция протоколов берхнего уровня в протоколы TCP/IP

 

ей, характерной для принимающего уровня. Например, помеще­ние пакета IP в качестве данных Ethernet-кадра, помещение TCP-сегмента в качестве данных в IP-пакет (рис. 5.8). При воз­врате на верхний уровень исходный формат восстанавливается в соответствии с обратной процедурой — экскапсуляцией.

Фрагментация

Фрагментация реализуется, если разрешенная длина пакета нижнего уровня недостаточна для размещения первичного паке­та, при этом осуществляется «нарезка» пакетов (например, на пакеты SLIP или фреймы РРР); аналогично при возврате на пер­вичный уровень пакет должен быть дефрагментирован.

При описании основных протоколов стека TCP/IP будем следовать модели, представленной на рис. 5.7. Первыми будут рассмотрены протоколы канального ровня SLIP и РРР. Это единственные протоколы, которые были разработаны в рамках Internet и для Internet. Другие протоколы, например NDIS или ODI, мы рассматривать не будем, поскольку они создавались в других сетях, хотя и могут использоваться также в сетях TCP/IP.