Intranet - статьи
3942494f

Зачем так много протоколов?


Сегодня существует несколько распространенных семейств протоколов, выполняющих сходные функции: TCP/IP, NetBIOS/SMB, AppleTalk и IPX/SPX. Такое разнообразие связано не с отсутствием стандартизации - эталонная модель OSI, описывающая взаимодействие компьютерных систем, была завершена и опубликована еще в 1984 г. Большое количество семейств протоколов обусловлено тем, что разработчики разных компаний старались максимально адаптировать создаваемые ими протоколы к решаемым задачам и имеющейся технике (которую очень часто выпускала эта же компания).

В начале 80-х гг. компания Novell вышла на рынок со своей сетевой операционной системой NetWare. Основным стеком в этой ОС являлся IPX/SPX - прямая адаптация протоколов XNS (Xerox Network Systems). ОС NetWare позволяла выполнять множество задач, в том числе и специализированных, таких как разделение дисковых томов и принтеров, управление именами, рассылка сообщений, учет использования ресурсов и синхронизация файлов.

Практически все эти функции реализуются с помощью основного протокола NetWare NCP (NetWare Core Protocol), и вспомогательного SAP (Service Advertisement Protocol), уведомляющего другие компьютеры о предоставляемых сервисах. Благодаря отсутствию серьезной конкуренции OC NetWare быстро приобрела популярность, поэтому стек IPX/SPX долгое время лидировал в локальных и корпоративных сетях.

ОС NetWare всегда славилась совместимостью с другими платформами. В ее версиях 3 и 4 имеется полноценный сервер печати и файловых служб для сетей AppleTalk. К сожалению, начиная с версии 5 права на разработку и распространение ПО поддержки клиентских станций Macintosh переданы сторонней фирме Prosoft Engineering, и его использование потребует дополнительных расходов.

Протоколы AppleTalk появились приблизительно в те же годы, в начале 80-х. Компания Apple готовилась тогда к выпуску компьютеров Macintosh. Инженеры стремились сделать сетевые возможности создаваемого ПК столь же простыми в настройке, как и графический интерфейс MacOS.

Для этого был разработан стек протоколов AppleTalk, поддерживающий как принудительное, так и полностью автоматическое конфигурирование сети. Из основных протоколов AppleTalk стоит отметить высокоуровневые протоколы AFP (AppleTalk Filing Protocol), предназначенный для коллективного использования файлов, и PAP (Printer Access Protocol), позволяющий поддерживать связь между клиентами и служебными устройствами, в том числе и принтерами.

Стек AppleTalk являлся базовым для компьютеров Macintosh вплоть до выхода Mac OS 7.5. Начиная с данной версии, в систему была внедрена модульная сетевая технология Open Transport, и начат переход на протоколы TCP/IP. Развитие этой идеи получило продолжение в виде связки AppleTalk over TCP/IP, применявшейся в Mac OS до версии 9 включительно. ("AppleTalk over TCP/IP" подразумевает, что в качестве низкоуровневых протоколов применяются открытые технологии из набора TCP/IP, а в качестве высокоуровневых, предоставляющих доступ к сервисным функциям сети, - PAP и AFP.)

Сети AppleTalk поддерживаются многими ОС. Так, в состав серверных версий Windows NT/2000/XP входит служба Service for Macintosh, обеспечивающая разделение принтеров и дисковых томов между пользователями платформ Mac и Wintel. Некоторые дистрибутивы Unix/Linux также содержат модули AppleTalk. Более того, существует freeware-пакет - Columbia AppleTalk Package.

Стек NetBIOS/SMB появился в 1984 г., когда IBM, спустя три года после выпуска первого компьютера IBM PC, в целях расширения стандартных функций базовой системы ввода/вывода (BIOS) разработала программный интерфейс (API) NetBIOS - Network Basic Input/Output System. Это расширение применялось для взаимодействия между сетевыми ресурсами, но не предусматривало низкоуровневого протокола для передачи данных по сети. Такой протокол появился в 1985 г. и был объединен с NetBIOS в связке NetBEUI (NetBIOS Extended User Interface).

NetBEUI создавался в расчете на небольшие рабочие группы (до 255 узлов) и не имел функций маршрутизации. Позже Microsoft выпустила дополнение - протокол SMB (Server Message Block), реализующий целый ряд высокоуровневых сервисов, таких как файловая служба, служба печати и передача сообщений между приложениями, и использующий для этого возможности NetBIOS.

Протокол SMB является базовым для операционных систем Windows. Он является закрытым стандартом, и Microsoft предоставляет спецификации SMB только сертифицированным партнерам. SMB постоянно дорабатывается (обновления выходят с каждой новой Windows). В настоящее время его последняя версия под названием CIFS (Common Internet File System) активно продвигается Microsoft в качестве межсетевой файловой системы.

Несмотря на коммерческий статус протокола SMB, существует свободно распространяемый программный пакет Samba, обеспечивающий ограниченную поддержку сервисов SMB для ОС Unix/Linux. Поскольку основными протоколами Unix-систем являются протоколы стека TPC/IP, то в Samba для совместимости применяется NetBIOS over TCP/IP.

Низкоуровневые протоколы семейства TCP/IP появились в середине 70-х гг. Они были созданы по инициативе Министерства обороны США и предназначались для соединения экспериментальной сети ARPAnet с другими сетями (позже этот эксперимент трансформировался в то, что мы называем интернетом). Так как с самого начала стек TCP/IP ориентировался на глобальные сети, состоящие из множества разнородных сегментов, то в нем уделено особое внимание эффективной маршрутизации, гарантированной доставке пакетов и гибкой системе адресации. Впоследствии стек TCP/IP был расширен протоколами прикладного уровня, из которых наиболее известны служба передачи гипертекстовой информации HTTP, почтовый протокол SMTP и протокол пересылки файлов FTP.

В конце 80-х гг. компания Sun Microsystems представила еще одно прикладное расширение TCP/IP, которое впоследствии стало широко применяться в системах Unix - сетевую файловую систему NFS (Network File System). Отличие NFS от FTP заключается в том, что FTP передает файлы по одному, а NFS подключает удаленные тома к существующей файловой системе и работает с ними так же, как с локальными дисками, абсолютно "прозрачно" для пользователей и приложений.

Большое влияние на распространение TCP/IP оказало то, что институт Беркли встроил эти протоколы в свою операционную систему BSDI UNIX. В свое время ОС BSDI пользовалась огромной популярностью. Затем программный код был перенесен в бесплатную FreeBSD. После интернет-бума и появления множества провайдеров, склонных к использованию именно FreeBSD из-за ее бесплатности, надежности и хорошей документированности TCP/IP вышел на лидирующие позиции сначала в глобальных, а затем и в локальных сетях. Кстати сказать, реализация стека TCP/IP в ОС FreeBSD до сих пор считается эталонной.



Содержание раздела