Стандартные сетевые протоколы
4.3. Стандартные сетевые протоколы
Протокол - это набор правил и процедур, регулирующих порядок осуществления связи. Естественно, все компьютеры, участвующие в обмене, должны работать по одним и тем же протоколам, чтобы по завершении передачи вся информация восстанавливалась в первоначальном виде.
О протоколах самых нижних уровней (физического и канального), относящихся к аппаратуре, уже упоминалось в предыдущих разделах. В частности, к ним относятся методы кодирования и декодирования, методы управления обменом в сети. Подробнее о некоторых из них будет рассказано в специальных главах книги. А сейчас мы остановимся на особенностях протоколов более высоких уровней, реализуемых программно.
Связь сетевого адаптера с сетевым программным обеспечением осуществляют драйверы сетевых адаптеров. Именно благодаря драйверу компьютер может не знать никаких аппаратурных особенностей адаптера (ни его адресов, ни правил обмена с ним, ни его характеристик). Драйвер унифицирует, делает единообразным общение программных средств с любой платой данного класса. Сетевые драйверы, поставляемые вместе с сетевыми адаптерами, позволяют сетевым программам одинаково работать с платами разных поставщиков и даже с платами разных локальных сетей (Ethernet, Arcnet, Token-Ring и т.д.). Если говорить о стандартной модели OSI, то драйверы, как правило, выполняют часть функций верхнего подуровня (подуровень управления доступом к среде, MAC) канального уровня, хотя иногда они выполняют и часть функций сетевого уровня. Например, драйверы формируют передаваемый пакет в буферной памяти адаптера, читают из этой памяти пришедший по сети пакет, дают команду на передачу и информируют компьютер о приеме пакета.
В любом случае перед приобретением платы адаптера не мешает ознакомиться со списком совместимого оборудования (Hardware Compatibility List, HCL), который публикуют все производители сетевых операционных систем. Выбор там довольно велик (например, для Microsoft Windows NT Server список включает более сотни драйверов сетевых адаптеров).
Если в список HCL не входит адаптер какого-то типа, лучше не рисковать и не покупать его.
Рассмотрим теперь кратко протоколы более высоких уровней.
Существует несколько стандартных наборов (или, как их еще называют, стеков) протоколов, получивших сейчас наиболее широкое распространение:
Включение в этот список протоколов глобальной сети вполне объяснимо, ведь модель OSI используется для любой открытой системы, как на базе локальной сети, так и на основе глобальной сети или комбинации локальной и глобальной сетей.
Протоколы перечисленных наборов делятся на три основные типа:
Прикладные протоколы обеспечивают взаимодействие приложений и обмен данными между ними. К наиболее популярным из них относятся следующие:
Транспортные протоколы поддерживают сеансы связи между компьютерами и гарантируют надежный обмен данными между ними. Наиболее популярны из них следующие:
• TCP (Transmission Control Protocol) - TCP/IP-протокол для гарантированной доставки данных, разбитых на последовательность фрагментов;
Сетевые протоколы управляют адресацией, маршрутизацией, проверкой ошибок и запросами на повторную передачу. Наиболее популярны из них следующие:
Все перечисленные протоколы могут быть поставлены в соответствие тем или иным уровням эталонной модели OSI. При этом надо учитывать, что разработчики протоколов не слишком строго придерживаются этих уровней. Например, некоторые протоколы выполняют функции, относящиеся сразу к нескольким уровням модели OSI, а другие - только часть функций одного из уровней. Это приводит к тому, что протоколы разных фирм часто оказываются несовместимы между собой, а также к тому, что протоколы могут быть успешно использованы исключительно в составе своего набора протоколов (стека), который выполняет более или менее законченную группу функций. Как раз это и делает сетевую операционную систему «фирменной», то есть, по сути, несовместимой со стандартной моделью открытой системы OSI.