Семейство протоколов tcp/ip. соответствие модели iso/osi

Рассмотрим еще одну модель организации сетевого взаимодействия — семейство протоколов TCP/IP (Рис. 60). Это классическая четырехуровневая модель организации сетевого взаимодействия. Протоколы семейства TCP/IP основаны на сети коммутации пакетов. Изначально данные протоколы были разработаны как стандарт военных протоколов министерства обороны США в агентстве перспективных разработок МО США DARPA. Это агентство разработало сеть ARPA-net, которая в своем развитии легла в основу современной сети Internet (поскольку это семейство протоколов было интегрировано в ОС BSD Unix).

Семейство протоколов tcp/ip. соответствие модели iso/osi

Рис. 60. Семейство протоколов TCP/IP.

Попытаемся сопоставить модели TCP/IP и ISO/OSI.

Уровень доступа к сети. Этот уровень соответствует физическому и канальному уровням модели ISO/OSI. На нем решаются проблемы сетевого адаптера, драйвера сетевого адаптера и проблемы среды передачи данных.

Межсетевой уровень (или internet-уровень). В некотором смысле ему соответствует сетевой уровень модели ISO/OSI. Т.е. на этом уровне решаются проблемы адресации и маршрутизации по сети.

Транспортный уровень. Он покрывает сеансовый и транспортный уровни модели ISO/OSI. На этом уровне имеется возможность использования протоколов, которые устанавливают виртуальное соединение или не устанавливают его.

Уровень прикладных программ. Он разрешает проблемы уровня представления и уровня прикладных программ модели ISO/OSI.

Эти уровни модели TCP/IP являются пакетными: на каждом уровне система оперирует порциями данных, обладающими характеристиками соответствующего уровня (Рис. 61). Имея содержательную информацию на прикладном уровне, двигаясь от верхнего уровня модели к нижнему, эта информация при необходимости дробится на пакеты фиксированного размера, и к каждому из них добавляется заголовочная информация.

Семейство протоколов tcp/ip. соответствие модели iso/osi

Рис. 61. Взаимодействие между уровнями протоколов TCP/IP.

Остановимся на каждом из уровней модели TCP/IP более подробно.

На уровне доступа к сети протоколы обеспечивают систему средствами для передачи данных другим устройствам в сети. В качестве примера можно привести протокол Ethernet, являющегося разработкой исследовательского центра компании Xerox (1976 г.), который основывается на единой шине (это широковещательная сеть). Для сетевых устройств обеспечивается множественный доступ с контролем несущей и обнаружением конфликтов (Carrier Sense Multiple Access with Collision Detection — CSMA/CD). Термины широковещательный и множественный доступ означают, что любой пакет, «выкинутый» в сеть, виден всем абонентам этой сети. Каждый абонент «слушает» сеть, и тот, кому предназначен пакет, забирает его. Контроль несущей означает, что каждый абонент, «слушая» сеть, распознает, свободна она или занята. Как только сеть становится свободной, устройство может «закидывать» очередную порцию данных. При этом устройство «слушает» как свою передачу, так и передачи других абонентов. «Бросая» в сеть, устройство способно распознать искажения, которые означают, что какое-то еще устройство также пытается послать данные в сеть. В этом случае обычно реализуется следующая стратегия: оба абонента прекращают вещание и берут тайм-аут на некоторый случайный промежуток времени (чтобы минимизировать повторные коллизии), а затем повторяют свои попытки. Данная сеть обладает типичными недостатками широковещательной сети: при интенсивной работе часто возникает ситуация, когда линия занята. Также при интенсивной работе возрастает частота конфликтов, что ведет к снижению производительности системы.

В качестве физической среды передачи данных используются самые разные источники: это может быть «толстый» Ethernet, «тонкий» Ethernet, витая пара, оптоволокно, радиосигнал.

Межсетевой[R10] уровень. Протокол IP — это один из основных протоколов. Данный протокол реализует следующие функции:

— формирование дейтаграмм;

— поддержание системы адресации;

— обмен данными между транспортным уровнем и уровнем доступа к сети;

— организация маршрутизации дейтаграмм;

— разбиение и обратная сборка дейтаграмм.

Основная функция этого протокола — поддержание системы адресации, позволяющей объединять различные (или гетерогенные) сети в единое целое (т.е. это межсетевая адресация — internet-адресация), а также поддержание маршрутизации. IP-адрес — это 32-разрядное число, которое кодирует информацию о конкретной сети и компьютере внутри этой сети. Имеются три категории содержательных IP-адресов сетей (Рис. 62).

Семейство протоколов tcp/ip. соответствие модели iso/osi

Рис. 62. Система адресации протокола IP.

Формат класса A позволяет задавать адреса до 126 сетей с 16 млн. хостов в каждой, класса B — до 16382 сетей с 64 Кбайт хостами, и, наконец, класса C — 2 млн. сетей с 254 хостами в каждой. Формат класса D предназначен для многоадресной рассылки. Остальные адреса используются для служебных целей. Отметим, что на сегодняшний момент в мире складывается ситуация, когда 32-битных IP-адресов не хватает, и ведутся разработки по использованию более длинной адресации.

Как отмечалось выше, каждый из уровней взаимодействует с соседними уровнями в соответствии с теми или иным протоколами порциями данных, имеющими специфичными для каждого уровня названия. Так, для межсетевого уровня пакет называется дейтограммой.

Протокол IP подразумевает использование некоторых специализированных компьютеров. Это компьютеры, предназначенные для организации физического объединения различных сетей, и они называются шлюзами. В общем случае шлюз имеет два и более сетевых адаптера, на которых функционирует соответствующее число (два или более) стеков протоколов.

Перед межсетевым уровнем также стоит задача маршрутизации— по имеющему IP-адресу получателя определить маршрут следования пакета. Эта задача распадается на две подзадачи. Первая подзадача — это проблема организации адресации в локальной сети, в рамках которой происходит взаимодействие. И здесь особых сложностей не возникает, поскольку специфика межсетевого уровня позволяет относительно просто организовать взаимодействие машин в рамках одной локальной сети. Вторая подзадача — это организация адресации между различными сетями. Для решения этой задачи используются шлюзы, которые одновременно принадлежат разным сетям, а также маршрутизаторы, которые решают задачу, через какой шлюз необходимо отправить пакет. Отметим, что стек протоколов TCP/IP позволяет совмещать компьютерам несколько функций: одна и та же машина может быть одновременно и шлюзом, и маршрутизатором, и хостом, причем работающий за ним пользователь может не догадываться об организации локальной сети, в которой он работает.

Рассмотрим пример (Рис. 63). Пускай необходимо послать сообщение от машины A1 машине A2. Машина A1 находится в сети A, а машина A2 — в сети C, причем сеть A соединена лишь с сетью B посредством шлюза G1, а сеть C соединена также лишь с сетью B, но посредством шлюза G2. Соответственно, маршрутизатор должен учитывать эти особенности при решении задачи маршрутизации. Обратим ваше внимание, что на компьютерных шлюзах реализовано только два уровня протоколов, поскольку для решения задачи транспортировки пакетов из одной сети в другую достаточны лишь наличие этих двух уровней.

Семейство протоколов tcp/ip. соответствие модели iso/osi

Рис. 63. Маршрутизация дейтаграмм.

Транспортный уровень. Одним из важнейших протоколов данного уровня является протокол TCP (Transmission Control Protocol — протокол управления передачей данных), который, равно как и протокол IP, дал свое название всему семейству протоколов. Этот протокол послужил некоторым «прародителем» этого семейства протоколов, поскольку Министерство Обороны США, когда начинало исследование ARPA-NET, ставило перед собой задачу разработку сети, устойчивой к недетерминированной физической среде передачи данных. И одним из условий было, чтобы полученная сеть работала корректно как на линиях с устойчивой передачей данных (в которых количество ошибок мало), так и на линиях, в которых возникает большое число ошибок. Это требование и его реализация обусловило распространение семейства протоколов TCP/IP и, в общем-то, развитие современных сетей, поскольку проблема дисбаланса различных сетей с точки зрения надежности каналов актуальна и по сей день, а разработанные протоколы решали эту проблему.

Среди протоколов транспортного уровня необходимо отметить протоколы TCP и UDP. Протокол TCP — это протокол, обеспечивающий установление виртуального канала, а это означает, что он обеспечивает последовательную передачу пакетов, контролирует доставку пакетов и отрабатывает сбои (пакет либо не доставляется, либо доставляется в целостном состоянии). Для обеспечения заявленных качеств данный протокол подразумевает отправку по сети подтверждающей информации, из-за чего содержательная пропускная способность может сильно падать, особенно в линиях связи с плохими техническими характеристиками. Итак, этот протокол подразумевает, что для каждого полученного пакета адресат обязан отправить подтверждение о доставке. К этому необходимо доставить, что в данном протоколе действует поддержка времени: если через некоторое время после отправки пакета подтверждение так и не пришло, то считается, что отправленный пакет пропал, и начинается повторная посылка пропавшего пакета.

Некоторой альтернативой служит протокол UDP (User Datagram Protocol — протокол пользовательских дейтаграмм). Данный протокол подразумевает отправку пакетов по сети без гарантии их доставки (он выбрасывает пакет и сразу же «забывает» о нем).

Уровень прикладных программ. На этом уровне находятся протоколы, часть которых опираются на протокол TCP, а часть — на UDP.

Протоколы, которые основываются на принципах работы протокола TCP, обеспечивают доступ и работу с заведомо корректной информацией, причем именно в среде межсетевого взаимодействия (internet), и эти протоколы требуют корректной доставки. В частности, это протокол TELNET (Network Terminal Protocol) — прикладной протокол, эмулирующий терминальное устройство; протокол перемещения файлов FTP (File Transfer Protocol); протокол передачи почтовых сообщений SMTP (Simple Mail Transfer Protocol).

Есть ряд прикладных протоколов, основанных на использовании протокола UDP. Эти протоколы оказываются относительно быстрыми, поскольку максимально снижены накладные расходы на передачу, но они допускают наличие ошибок.

Часть подобных протоколов действуют в рамках локальной сети. В частности, в большинстве случаев протокол NFS (Network File System) сетевой файловой системы функционирует именно в рамках локальной сети, и очень редко его запускают в межсетевом режиме.

Другая часть протоколов должны контролироваться, с одной стороны, на прикладном уровне, а с другой стороны, они предполагают обмен очень небольшими порциями данных. К таким протоколам относится DNS (Domain Name Service), который позволяет мнемоническим способом именовать сетевые устройства. В частности, этот протокол осуществляет преобразования IP-адресов в доменные имена и обратно.

Модель и стек протоколов TCP/IP | Курс \


Похожие статьи.

Понравилась статья? Поделиться с друзьями: