next up previous contents index
Next: Кратко о NetBEUI, X.25, Up: Функционирование сетей Previous: Формирование пакетов (инкапсуляция)   Contents   Index

Интерфейсы и протоколы. Протокольные стеки

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

Протоколы работают на разных уровнях модели OSI. Функции протокола определяются уровнем, на котором он работает. Если, например, какой-то протокол работает на Физическом уровне, то это означает что он обеспечивает прохождение пакетов через плату сетевого адаптера и их поступление в сетевой кабель.

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


Работа протоколов

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


Компьютер-отправитель

Компьютер-отправитель в соответствии с протоколом выполняет следующие действия:


Компьютер-получатель

Компьютер-получатель в соответствии с протоколом выполняет те же действия, только в обратном порядке:

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


Маршрутизируемые и немаршрутизируемые протоколы

До середины 80-х годов большинство локальных сетей были изолированными. Они обслуживали один отдел или одну компанию и редко объединялись в крупные системы. Однако, когда локальные сети достигли высокого уровня развития и объем передаваемой ими коммерческой информации возрос, ЛВС стали компонентами больших сетей.

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


Протоколы в многоуровневой архитектуре

Несколько протоколов, которые работают в сети одновременно, обеспечивают следуюшие операции с данными:

Работа различных протоколов должна быть скоординирована так, чтобы исключить конфликты или незаконченные операции. Этого можно достичь с помощью разбиения на уровни. Стеки протоколов Стек протоколов (protocol stack) - это комбинация протоколов. Каждый уровень определяет различные протоколы для управления функциями связи или ее подсистемами. Каждому уровню присущ свой набор правил.

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


Привязка

Процесс, который называется привязка, позволяет с достаточной гибкостью настраивать сеть, т.е. сочетать протоколы и платы сетевых адаптеров, как того требует ситуация. Например, 2 стека протоколов, IPX/SPX и TCP/IP, могут быть привязаны к одной плате сетевого адаптера. Если на компьютере более одной платы сетевого адаптера, то стек проколов может быть привязан как к одной, так и к нескольким платам сетевого адаптера.

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

Обычно привязку выполняют сразу при установке операционной системы или протокола.

Например, если TCP/IP первый протокол в списке привязки, то именно он будет использоваться при попытке установить связь. Если попытка неудачна, компьютер попытается установить соединение используя следующий по порядку протокол в списке привязки. Привязка (binding) не ограничивается установкой соответствия стека протоколов и платы сетевого адаптера. Стек протоколов должен быть привязан (или ассоцииров к компонентам, уровни которых и выше, и ниже его уровня. Так, TCP/IP может быть привязан к Сеансовому уровню NetBIOS, а внизу - к драйверу пл сетевого адаптера. Драйвер, в свою очередь, привязан к плате сетевого адаптера.


Стандартные стеки

В компьютерной промышленности в качестве стандартных моделей протоколов разработано несколько стеков. Вот наиболее важные из них:

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


Прикладные протоколы

Прикладные протоколы работают на верхнем уровне модели OSI. Они обеспечивают взаимодействие приложений и обмен данными между ними. К наиболее популярным прикладным протоколам относятся:

АРРС (Advanced Program-to-Program Communication) - одноранговый SNA-протокол фирмы IBM, используемый в основном на AS/400CS);  
FTAM (File Transfer Access and Management) - протокол OSI доступа к файлам;  
X.400 протокол CCITT для международного обмена электронной почтой;  
Х.500 протокол CCITT служб файлов и каталогов на нескольких системах;  
SMTP (Simple Mail Transfer Protocol) - протокол Интернета для обмена электронной почтой;  
FTP (File Transfer Protocol) - протокол Интернета для передачи файлов;  
SNMP (Simple Network Management Protocol) - протокол Интернета для мониторинга сети и сетевых компонентов;  
Telnet протокол Интернета для регистрации на удаленных хостах и обработки данных на них;  
SMBs (Server Message Blocks, блоки сообщений сервера) и клиентские оболочки или редиректоры;  
NCP (Novell NetWare Core Protocol) и клиентские оболочки или редиректоры фирмы Novell;  
Apple Talk и Apple Share набор сетевых протоколов фирмы Apple;  
AFP (AppleTalk Filling Protocol) - протокол удаленного доступа к файлам фирмы Apple;  
DAP (Data Access Protocol) © протокол доступа к файлам сетей DECnet.  


Транспортные протоколы

Транспортные протоколы поддерживают сеансы связи между компьютерами и обеспечивают надежный обмен данными между ними. К популярным транспортным протоколам относятся:

TCP (Transmission Control Protocol) - TCP/I Р-протокол для гарантированной доставки данных, разбитых на последовательность фрагментов;  
SPX© часть набора протоколов IPX/SPX (Internetwork Packet Exchange/Sequential Packet Exchange) для данных, разбитых на последовательность фрагментов, фирмы Novell;  
NetBEUI [NetBIOS (Network Basic Input/Output System) Extended User Interface - расширенный интерфейс пользователя] - устанавливает сеанссы связи между компьютерами (NetBIOS) и предоставляет верхним уровням транспортные услуги (NetBEUI);  
АТР, NBP (AppleTalk Transaction Protocol), (Name Binding Protocol) -© протоколы сеансов связи и транспортировки данных фирмы Apple.  


Сетевые протоколы

Сетевые протоколы обеспечивают услуги связи. Эти протоколы управляют несколькими типами данных: адресацией, маршрутизацией, проверкой ошибок и запросами на повторную передачу. Сетевые протоколы, кроме того, определяют правила для осуществления связи в конкретных сетевых средах, например Ethernet или Token Ring.

К наиболее популярным сетевым протоколам относятся:

IP (Internet Protocol) - TCP/IP-протокол для передачи пакетов;  
IPX (Internetwork Packet Exchange) - протокол фирмы NetWare для передачи и маршрутизации пакетов;  
NetBEUI транспортный протокол, обеспечивающий услуги транспортировки, данных для сеансов и приложений NetBIOS;  
DDP (Datagram Delivery Protocol) - AppleTalk-протокол транспортировки данных.  


Стандарты протоколов

Модель OSI помогает определить, какие протоколы нужно использовать на каждом уровне. Продукты от разных производителей, которые соответствуют этой модели могут вполне корректно взаимодействовать друг с другом.


next up previous contents index
Next: Кратко о NetBEUI, X.25, Up: Функционирование сетей Previous: Формирование пакетов (инкапсуляция)   Contents   Index
Alex Otwagin 2002-12-16