Протокол межсетевого взаимодействия (IP)

Обзор протоколов сетевого, транспортного и прикладного уровней

В локальных сетях могут совместно работать компьютеры разных производителей, оснащенные различным набором устройств и обладающие несхожими техническими характеристиками. На практике это означает, что для обеспечения нормального взаимодействия этих компьютеров необходим некий единый унифицированный стандарт, строго определяющий алгоритм передачи данных в распределенной вычислительной системе. В современных локальных сетях, или, как их принято называть в англоязычных странах, LAN (LocalAreaNetwork), роль такого стандарта выполняют сетевые протоколы.

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

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

Вместе с тем передача информации между несколькими сетевыми компьютерами — не такая уж простая задача, как это может показаться на первый взгляд. Для того чтобы понять это, достаточно представить себе тот круг проблем, который может возникнуть в процессе приема или трансляции каких-либо данных. В числе таких «неприятностей» можно перечислить аппаратный сбой либо выход из строя одного из обеспечивающих связь устройств, например, сетевой карты или концентратора, сбой прикладного или системного программного обеспечения, возникновение ошибки в самих передаваемых данных, потерю части транслируемой информации или ее искажение. Отсюда следует, что в локальной сети необходимо обеспечить жесткий контроль для отслеживания всех этих ошибок, и более того, организовать четкую работу как аппаратных, так и программных компонентов сети. Возложить все эти задачи на один-единственный протокол практически невозможно. Как быть?

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

Физический уровень

На физическом уровне и уровне звена передачи данных стек протоколов TCP/IP не отдает предпочтения ни одному протоколу. Он поддерживает все стандартные и частные протоколы передачи по кабелю, оптоволоконному кабелю и радиоканалам, которые определяются сетевыми технологиям на этом уровне (PDH — PlesiochronousDigitalHierarchy, SDH — SynchronousDigitalHierarchy, ATM — AsynchronousTransferMode и другими).

Канальный уровень (звена передачи данных)

На этом уровне коммутационные устройства используют различные технологии: Ethernet, TokenRing, FDDI, PPP и другие.

Интернет предназначен для транспортировки любого вида информации от источника к получателю. В транспортировке информации участвуют различные элементы сети (см. рис. 1.1) – оконечные устройства, коммутационные устройства и серверы. Группы узлов при помощи коммутационных устройств объединяются в локальную сеть, локальные сети соединяются между собой шлюзами (маршрутизаторами).

Узлы, с точки зрения сети, представляют собой источники и получатели информации. Четыре нижних уровня в совокупности независимы от вида передаваемой информации. Каждое приложение, связывающееся с четвертым уровнем, идентифицируется своим уникальным номером порта. Номера портов занимают диапазон от 0 до 65535. В этом диапазоне номера портов 0-1023 выделены под общесетевые приложения (well-knownports), номера портов 1024-49151 используются разработчиками специализированного программного обеспечения, номера портов 49152-65535 динамически закрепляются за приложениями пользователей на время сеанса связи.

Транспортный уровень

На транспортном уровне TCP/IP определяет два протокола: протокол управления передачей (TCP) и протокол пользовательских дейтаграмм (UDP).

UDP и TCP — транспортные протоколы уровня, которые отвечают за доставку сообщения от процесса (функционирующей программы) к другому процессу.

Протокол пользовательских дейтаграмм (UDP – UserDatagramProtocol) — наиболее простой из двух стандартных транспортных протоколов TCP/IP. Он выполняет функции передачи между прикладными уровнями разных рабочих станций, по адресу порта, контролирует ошибки по контрольной сумме и передает информацию верхним уровням.

Протокол управления передачей (TCP – TransmissionControlProtocol) обеспечивает полные услуги транспортного уровня к приложениям. TCP — достоверный транспортный протокол потока, ориентированный на дуплексный режим связи с установлением логического соединения. Для этого каждый передаваемый пакет снабжается порядковым номером, и правильный его прием должен быть подтвержден приемной стороной. В этом контексте термин поток означает передачу данных, рассчитанную на то, что соединение должно быть установлено между обоими концами передачи прежде, чем начнется передача данных. Протокол TCP имеет код протокола 6 (в шестнадцатеричном коде – 0x06) и используется для гарантированной транспортировки информации.

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

Сетевой уровень

На сетевом уровне (или, более точно, межсетевом уровне) TCP/IP поддерживает протокол межсетевого взаимодействия (IP). IP, на этом (сетевом) уровне используются четыре протокола поддержки: протокол определения адреса (ARP — AddressResolutionProtocol), протокол определения сетевого адреса по местоположению (RARP – ReverseAddressResolutionProtocol), протокол управляющих сообщений Internet – (ICMP — InternetControlMessageProtocol) и межсетевой протокол управления группами (IGMP – InternetGroupMessageProtocol). На этом же уровне применяются протоколы маршрутизации: протокол обмена маршрутной информацией (RIP — RoutingInformationProtocol), "открыть кратчайший путь первым" (OSPF — OpenShortestPathFirst), протокол пограничной маршрутизации (BGP — BorderGatewayProtocol).

Протокол межсетевого взаимодействия (IP)

Протокол межсетевого взаимодействия (IP) — механизм передачи, используемый протоколами TCP/IP. Это ненадежная служба доставки дейтаграммы без установления соединения, но с "максимальными усилиями" (best-effort).

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

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

Ограниченные функциональные возможности IP, однако, нельзя считать слабостью. IP обеспечивает "чистые" функции передачи, которые освобождены от пользовательских особенностей, и предполагает, что на других уровнях будут добавлены те средства, которые необходимы для данного приложения, и таким образом будет достигнута максимальная эффективность.

Протокол определения адресов (ARP – AddressResolutionProtocol) используется, чтобы связать адрес IP с физическим адресом. На типичной физической сети, типа локальной сети LAN (LocalAreaNetwork), каждое устройство на линии связи идентифицировано физическим адресом или адресом станции, обычно закрепленным в сетевой карте интерфейса (NIC – NetworkInterfaceCard). ARP используются, чтобы найти физический адрес узла, когда известен его адрес в сети Интернет.

Обратный протокол определения адресов (RARP — протокол определения сетевого адреса по местоположению) позволяет хосту обнаруживать его адрес в сети Интернет, когда хост знает только свой физический адрес. Он используется, когда компьютер связывается с сетью впервые или когда компьютер загружается без диска.

Протокол управляющих сообщений Интернета (ICMP – InternetControlMessageProtocol) — механизм, используемый хостами и шлюзами, чтобы передать извещение о дейтаграммных проблемах назад к передатчику.

Межсетевой протокол управления группами (IGMP – InternetGroupMessageProtocol) – обслуживает одновременную передачу сообщения к группе получателей.

Протокол пограничной маршрутизации (BGP — BorderGatewayProtocol) — протокол маршрутизации между автономными системами, основанный на применении вектора пути.

Протокол обмена маршрутной информацией (RIP — RoutingInformationProtocol) — протокол маршрутизации, основанный на использовании алгоритма вектора расстояний.

"Открыть кратчайший путь первым" (OSPF — OpenShortestPathFirst) — внутрисетевой протокол маршрутизации, основанный на анализе состояния линий связи.

 

Прикладной уровень TCP/IP

Прикладной уровень в стеке протоколов Интернета эквивалентен объединению сеансового, представительского и прикладного уровня в модели OSI.

 На рис. 1.3 показаны следующие протоколы прикладного уровня:

SMTP(Simple Mail Transfer Protocol) – простойпочтовыйпротокол. Он поддерживает передачу почтовых электронных сообщений по сети Интернет. Протокол называется простым, потому что обеспечивает передачу информации пользователям, готовым к немедленной доставке. Передача осуществляется в режиме 7-битовых слов. Он требует наличия программ перехода от принятого в большинстве программ формата с 8-разрядными словами к формату с 7-разрядными словами.

Система поддерживает:

· посылку одиночных сообщений одному или более получателям;

· посылку сообщений, включающих в себя текст, голосовые сообщения, видео или графические материалы.

Протокол передачи файлов (FTP — FileTransferProtocol) используется для передачи файлов от одного компьютера к другому. Обеспечивает просмотр каталогов удаленного компьютера, копирование, удаление и пересылку файлов. FTP отличается от других протоколов тем, что устанавливает два соединения между хостами. Одно используется для передачи информации, а другое — для управления передачей.


Дата добавления: 2018-02-28; просмотров: 523; Мы поможем в написании вашей работы!

Поделиться с друзьями:




Мы поможем в написании ваших работ!