Стек протоколов
Стек протоколов — это иерархически организованный набор сетевых протоколов, достаточный для организации взаимодействия узлов в сети. Протоколы работают в сети одновременно, значит работа протоколов должна быть организована так, чтобы не возникало конфликтов или незавершённых операций. Поэтому стек протоколов разбивается на иерархически построенные уровни, каждый из которых выполняет конкретную задачу — подготовку, приём, передачу данных и последующие действия с ними.
Количество уровней в стеке меняется в соответствии с конкретным стеком протоколов. Протоколы нижних уровней часто реализуются комбинацией программных и аппаратных средств, а протоколы верхних уровней, как правило, программными средствами.
Существует достаточное количество стеков протоколов, широко применяемых в сетях. Наиболее популярные стеки протоколов: OSI международной организации по стандартизации, TCP/IP, используемый в сети Internet и во многих сетях на основе операционной системы UNIX, IPX/SPX фирмы Novell, NetBIOS/SMB, разработанный фирмами Microsoft и IBM, DECnet корпорации Digital Equipment, SNA фирмы IBM и некоторые другие.
Стандартные стеки коммуникационных протоколов
OSI
Важно различать модель OSI и стек протоколов OSI. В то время как модель OSI является концептуальной схемой взаимодействия открытых систем, стек OSI представляет собой набор спецификаций конкретных протоколов.
В отличие от других стеков протоколов, стек OSI полностью соответствует модели OSI, включая спецификации протоколов для всех семи уровней взаимодействия, определённых в этой модели:
Стек протоколов OSI | ||||||
---|---|---|---|---|---|---|
7. Прикладной | X.400 | X.500 | VTP | FTAM | JTM | Другие |
6. Представления | Протокол уровня представления OSI | |||||
5. Сеансовый | Сеансовый протокол OSI | |||||
4. Транспортный | Транспортные протоколы OSI | |||||
3. Сетевой | ES-IS, IS-IS, CONP, CLNP | |||||
2. Канальный | Ethernet (OSI-8802.3, IEEE-802.3) | Token Bus (OSI-8802.4, IEEE-802.4) | Token Ring (OSI-8802.5, IEEE-802.5) | X.25 | ISDN | FDDI (ISO-9314) |
1. Физический | HDLC LAP-B |
- На физическом и канальном уровнях стек OSI поддерживает протоколы Ethernet, Token ring, FDDI, а также протоколы LLC, X.25 и ISDN, то есть использует все разработанные вне стека популярные протоколы нижних уровней, как и большинство других стеков.
- Сетевой уровень включает сравнительно редко используемые протоколы Connection-oriented Network Protocol (CONP) и Connectionless Network Protocol (CLNP). Как следует из названий, первый из них ориентирован на соединение (connection-oriented), второй — нет (connectionless). Более популярны протоколы маршрутизации стека OSI: ES-IS (End System — Intermediate System) между конечной и промежуточной системами и IS-IS (Intermediate System — Intermediate System) между промежуточными системами.
- Транспортный уровень стека OSI в соответствии с функциями, определёнными для него в модели OSI, скрывает различия между сетевыми сервисами с установлением соединения и без установления соединения, так что пользователи получают требуемое качество обслуживания независимо от нижележащего сетевого уровня. Чтобы обеспечить это, транспортный уровень требует, чтобы пользователь задал нужное количество обслуживания.
- Службы прикладного уровня обеспечивают передачу файлов, эмуляцию терминала, службу каталогов и почту. Из них наиболее популярными являются служба каталогов (стандарт X.500), электронная почта (стандарт X.400), протокол виртуального терминала (VTP), протокол передачи, доступа и управления файлами (FTAM), протокол пересылки и управления работами (JTM).
TCP/IP
Стек протоколов TCP/IP — набор сетевых протоколов, на которых базируется Интернет. Обычно в стеке TCP/IP верхние 3 уровня (прикладной, представления и сеансовый) модели OSI объединяют в один — прикладной. Поскольку в таком стеке не предусматривается унифицированный протокол передачи данных, функции по определению типа данных передаются приложению.
Уровни стека TCP/IP:
- Канальный уровень описывает каким образом передаются пакеты данных через физический уровень, включая кодирование (то есть специальные последовательности битов, определяющих начало и конец пакета данных).
- Сетевой уровень изначально разработан для передачи данных из одной (под)сети в другую. Примерами такого протокола является X.25 и IPC в сети ARPANET. С развитием концепции глобальной сети в уровень были внесены дополнительные возможности по передаче из любой сети в любую сеть, независимо от протоколов нижнего уровня, а также возможность запрашивать данные от удалённой стороны.
- Протоколы транспортного уровня могут решать проблему негарантированной доставки сообщений («дошло ли сообщение до адресата?»), а также гарантировать правильную последовательность прихода данных.
- На прикладном уровне работает большинство сетевых приложений. Эти программы имеют свои собственные протоколы обмена информацией, например, HTTP для WWW, FTP (передача файлов), SMTP (электронная почта), SSH (безопасное соединение с удалённой машиной), DNS (преобразование символьных имён в IP-адреса) и многие другие.
Существуют разногласия в том, как вписать модель TCP/IP в модель OSI, поскольку уровни в этих моделях не совпадают. Упрощённо интерпретацию стека TCP/IP можно представить так:
OSI | TCP/IP | |
---|---|---|
7. Прикладной | HTTP, FTP, Telnet, SMTP, DNS (RIP, работающий поверх UDP, и BGP, работающий поверх TCP, являются частью сетевого уровня), LDAP, RTP | Прикладной |
6. Представления | ||
5. Сеансовый | ||
4. Транспортный | TCP, UDP, SCTP, DCCP (протоколы маршрутизации, подобные OSPF, что работают поверх IP, являются частью сетевого уровня) | Транспортный |
3. Сетевой | IP (вспомогательные протоколы, вроде ICMP и IGMP, но являются частью сетевого уровня; ARP не работает поверх IP) | Сетевой |
2. Канальный | Ethernet, Token Ring, и подобные | Канальный |
1. Физический |
IPX/SPX
Название стеку дали протоколы сетевого и транспортного уровней - Internetwork Packet Exchange (IPX) и Sequenced Packet Exchange (SPX). К сетевому уровню этого стека отнесены также протоколы маршрутизации RIP и NLSP. А в качестве представителей трёх верхних уровней на рисунке ниже приведены два популярных протокола: протокол удалённого доступа к файлам NetWare Core Protocol (NCP) и протокол объявления о сервисах Service Advertising Protocol (SAP).
OSI | IPX/SPX |
---|---|
7. Прикладной | SAP, NCP |
6. Представления | |
5. Сеансовый | |
4. Транспортный | SPX |
3. Сетевой | IPX, RIP, NLSP |
2. Канальный | Ethernet, Token Ring, FDDI и другие |
1. Физический |
NetBIOS/SMB
На физическом и канальном уровнях этого стека также задействованы уже получившие распространение протоколы, такие как Ethernet, Token Ring, FDDI, а на верхних уровнях — специфические протоколы NetBEUI (протокол расширенного пользовательского интерфейса NetBEUI — NetBIOS Extended User Interface) и SMB. NetBEUI разрабатывался как эффективный протокол, потребляющий немного ресурсов и предназначенный для сетей, насчитывающих не более 200 рабочих станций. Этот протокол содержит много полезных сетевых функций, которые можно отнести к транспортному и сеансовому уровням модели OSI, однако с его помощью невозможна маршрутизация пакетов. Это ограничивает применение протокола NetBEUI локальными сетями, не разделёнными на подсети, и делает невозможным его использование в составных сетях.
Протокол Server Message Block (SMB) поддерживает функции сеансового уровня, уровня представления и прикладного уровня. На основе SMB реализуется файловая служба, а также службы печати и передачи сообщений между приложениями.
OSI | NetBIOS/SMB |
---|---|
7. Прикладной | SMB |
6. Представления | |
5. Сеансовый | NetBIOS |
4. Транспортный | |
3. Сетевой | Ethernet, Token Ring, FDDI и другие |
2. Канальный | |
1. Физический |
См. также
Литература
- В. Г. Олифер, Н. А. Олифер, Компьютерные сети. Принципы, технологии, протоколы., СПб.: Питер, 2002. — 672с. ISBN 5-8046-0133-4
- Д.А. Капустин, В. Е. Дементьев, Информационно-вычислительные сети : учебное пособие., Ульяновск : УлГТУ, 2011. — 141с. ISBN 978-5-9795-0926-6