Методы согласования разных стеков протоколов

Обновлено: 30.06.2024

Модель OSI (Open System Interconnect Reference Model, Эталонная модель взаимодействия открытых систем) представляет собой универсальный стандарт на взаимодействие двух систем (компьютеров) через вычислительную сеть.

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

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

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

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

Возможна также взаимозаменяемость объектов одного уровня (например, при изменении способа реализации сервиса) таким образом, что объект вышестоящего уровня не заметит подмены.

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

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

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

1.1.1. Уровни модели OSI

Ниже перечислены (в направлении сверху вниз) уровни модели OSI и указаны их общие функции.

Уровень приложения (Application) - интерфейс с прикладными процессами.

Уровень представления (Presentation) - согласование представления (форматов, кодировок) данных прикладных процессов.

Сеансовый уровень (Session) - установление, поддержка и закрытие логического сеанса связи между удаленными процессами.

Транспортный уровень (Transport) - обеспечение безошибочного сквозного обмена потоками данных между процессами во время сеанса.

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

Канальный уровень (Data Link) - управление каналом передачи данных, управление доступом к среде передачи, передача данных по каналу, обнаружение ошибок в канале и их коррекция.

Физический уровень (Physical) - физический интерфейс с каналом передачи данных, представление данных в виде физических сигналов и их кодирование (модуляция).

1.1.2. Инкапсуляция и обработка пакетов

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

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

Модель OSI предложена достаточно давно, однако протоколы, на ней основанные, используются редко, во-первых, в силу своей не всегда оправданной сложности, во-вторых , из-за существования хотя и не соответствующих строго модели OSI, но уже хорошо зарекомендовавших себя стеков протоколов (например, TCP/IP).

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

1.2. Стек протоколов TCP/IP

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

Рис. 1.2.1. Стек протоколов TCP/IP

Стек протоколов TCP/IP делится на 4 уровня: прикладной ( application ), транспортный ( transport ), межсетевой ( internet ) и уровень доступа к среде передачи ( network access ). Термины, применяемые для обозначения блока передаваемых данных, различны при использовании разных протоколов транспортного уровня - TCP и UDP, поэтому на рисунке 1.2.1 изображено два стека. Как и в модели OSI, данные более верхних уровней инкапсулируются в пакеты нижних уровней (см. рис. 1.2.2).

Рис. 1.2.2. Пример инкапсуляции пакетов в стеке TCP/IP

Примерное соотношение уровней стеков OSI и TCP/IP показано на рис. 1.2.3.

Рис. 1.2.3. Соотношение уровней стеков OSI и TCP/IP

Ниже кратко рассматриваются функции каждого уровня и примеры протоколов. Программа, реализующая функции того или иного протокола, часто называется модулем, например, “IP-модуль”, “модуль TCP”.

1.2.1. Уровень приложений

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

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

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

Протоколы транспортного уровня обеспечивают прозрачную (сквозную) доставку данных (end-to-end delivery service) между двумя прикладными процессами. Процесс, получающий или отправляющий данные с помощью транспортного уровня, идентифицируется на этом уровне номером, который называется номером порта . Таким образом, роль адреса отправителя и получателя на транспортном уровне выполняет номер порта (или проще - порт).

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

На транспортном уровне работают два основных протокола: UDP и TCP .

TCP (Transmission Control Protocol - протокол контроля передачи) - надежный протокол с установлением соединения : он управляет логическим сеансом связи (устанавливает, поддерживает и закрывает соединение) между процессами и обеспечивает надежную (безошибочную и гарантированную) доставку прикладных данных от процесса к процессу.

Данными для TCP является не интерпретируемая протоколом последовательность пользовательских октетов, разбиваемая для передачи по частям. Каждая часть передается в отдельном TCP-сегменте. Для продвижения сегмента по сети между компьютером-отправителем и компьютером-получателем модуль TCP пользуется сервисом межсетевого уровня (вызывает модуль IP).

Более подробно работа протокола TCP рассматривается в главе 3.

Все приложения, приведенные как пример в предыдущем пункте, пользуются услугами TCP.

Пользовательские данные, поступившие от прикладного уровня, предваряются UDP-заголовком, и сформированный таким образом UDP-пакет отправляется на межсетевой уровень.

UDP-заголовок состоит из двух 32-битных слов:

Source Port - номер порта процесса-отправителя.

Destination Port - номер порта процесса-получателя.

Length - длина UDP-пакета вместе с заголовком в октетах.

Checksum - контрольная сумма. Контрольная сумма вычисляется таким же образом, как и в TCP-заголовке (см. п. 3.2); если UDP-пакет имеет нечетную длину, то при вычислении контрольной суммы к нему добавляется нулевой октет.

Примеры прикладных процессов, использующих протокол UDP: NFS (Network File System - сетевая файловая система), TFTP (Trivial File Transfer Protocol - простой протокол передачи файлов), SNMP (Simple Network Management Protocol - простой протокол управления сетью), DNS (Domain Name Service - доменная служба имен).

1.2.3. Межсетевой уровень и протокол IP

Основным протоколом этого уровня является протокол IP (Internet Protocol).

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

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

Протоколы IP и ICMP подробно рассмотрены в главе 2.

1.2.4. Уровень доступа к среде передачи

  • отображение IP-адресов в физические адреса сети (MAC-адреса, например, Ethernet-адрес в случае сети Ethernet). Эту функцию выполняет протокол ARP (см. раздел 2.6);
  • инкапсуляция IP-дейтаграмм в кадры для передачи по физическому каналу и извлечение дейтаграмм из кадров. При этом не требуется какого-либо контроля безошибочности передачи (хотя он может и присутствовать), поскольку в стеке TCP/IP такой контроль возложен на транспортный уровень или на само приложение. В заголовке кадров указывается точка доступа к сервису (SAP, Service Access Point) - поле, содержащее код протокола межсетевого уровня, которому следует передать содержимое кадра (в нашем случае это протокол IP);
  • определение метода доступа к среде передачи - то есть способа, с помощью которого компьютер устанавливает свое право на произведение передачи данных (передача токена, опрос компьютеров, множественный доступ с детектированием коллизий и т.п.).
  • определение представления данных в физической среде;
  • пересылка и прием кадра.

Стек TCP/IP не подразумевает использования каких-либо определенных протоколов уровня доступа к среде передачи и физических сред передачи данных. От уровня доступа к среде передачи требуется наличие интерфейса с модулем IP, обеспечивающего передачу дейтаграммы между уровнями. Также требуется обеспечить преобразование IP-адреса узла сети, на который передается дейтаграмма, в MAC-адрес. Часто в качестве уровня доступа к среде передачи могут выступать целые протокольные стеки, тогда говорят об IP поверх ATM, IP поверх IPX, IP поверх X.25 и т.п.

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

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

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

Стеки протоколов разбиваются на три уровня:

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

- DDP (Datagram Delivery Protocol, протокол доставки дейтаграмм). Протокол передачи данных Apple, используемый в Apple Talk.

- IP (Internet Protocol, протокол Internet). Протокол стека TCP/IP, обеспечивающий адресную информацию и информацию о маршрутизации.

- IPX (Internetwork Packet eXchange, межсетевой обмен пакетами) в NWLink. Протокол Novel NetWare, используемый для маршрутизации и направления пакетов.

- NetBEUI (NetBIOS Extended User Interface, расширенный пользовательский интерфейс базовой сетевой системы ввода вывода). Разработанный совместно IBM и Microsoft, этот протокол обеспечивает транспортные услуги для NetBIOS.

Транспортные протоколы предоставляют следующие услуги надежной транспортировки данных между компьютерами. Ниже приведены наиболее популярные транспортные протоколы.

- ATP (Apple Talk Protocol, транзакционный протокол Apple Talk) и NBP (Name Binding Protocol, протокол связывания имен). Сеансовый и транспортный протоколы Apple Talk.

- NetBIOS (Network Basis Input/Output System, базовая сетевая система ввода вывода). NetBIOS устанавливает соединение между компьютерами, а NetBEUIпредоставляет услуги передачи данных для этого соединения.

- SPX (Sequenced Packet eXchange, последовательный обмен пакетами) в NWLink. Протокол Novel NetWare, используемый для обеспечения доставки данных.

- TCP (Transmission Control Protocol, протокол управления передачей). Протокол стека TCP/IP отвечает за надежную доставку данных.

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

- AFP (Apple Talk File Protocol, файловый протокол Apple Talk). Протокол удаленного управления файлами Macintosh.

- FTP (File Transfer Protocol, протокол передачи файлов). Протокол стека TCP/IP, используемый для обеспечения услуг по передачи файлов.

- NCP (NetWare Core Protocol, базовый протокол NetWare). Оболочка и редиректоры клиента Novel NetWare.

- SNMP (Simple Network Management Protocol, простой протокол управления сетью). Протокол стека TCP/IP, используемый для управления и наблюдения за сетевыми устройствами.

Архитектура стека протоколов Microsoft TCP/IP.

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

Стек TCP/IP с точки зрения системной архитектуры соответствует эталонной модели OSI (Open Systems Interconnection, взаимодействие открытых систем) и позволяет обмениваться данными по сети приложениям и службам, работающим практически на любой платформе, включая Unix, Windows, Macintosh и другие.

Стандартная реализация TCP/IP (на примере фирмы Microsoft) соответствует четырехуровневой модели вместо семиуровневой модели

Модель TCP/IP включает большее число функций на один уровень, что приводит к уменьшению числа уровней. В модели используются следующие уровни:

- уровень Приложения модели TCP/IP соответствует Прикладному, Представительскому и Сеансовому уровням модели OSI;

- Транспортный уровень модели TCP/IP соответствует аналогичному уровню модели OSI;

- Межсетевой уровень модели TCP/IP выполняет те же функции, что и Сетевой уровень модели OSI;

- уровень Сетевого интерфейса модели TCP/IP соответствует Канальному и Физическому уровням модели OSI.

© 2014-2021 — Студопедия.Нет — Информационный студенческий ресурс. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав (0.003)

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

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

Связанные понятия

Сетевой уровень (англ. Network layer) — 3-й уровень сетевой модели OSI, предназначается для определения пути передачи данных. Отвечает за трансляцию логических адресов и имён в физические, определение кратчайших маршрутов, коммутацию и маршрутизацию, отслеживание неполадок и заторов в сети. На этом уровне работает такое сетевое устройство, как маршрутизатор.

Управление доступом к среде (англ. media access control, или medium access control, MAC) — подуровень канального (второго) уровня модели OSI, согласно стандартам IEEE 802.

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

Упоминания в литературе

В отличие от протоколов TCP/IP и IPX/SPX, стек протокола AppleTalk использует собственную реализацию физического и канального уровней, а не протоколы модели ISO/OSI (рис. 3.4).

Связанные понятия (продолжение)

Канальный уровень (англ. Data Link layer) — второй уровень сетевой модели OSI, предназначенный для передачи данных узлам, находящимся в том же сегменте локальной сети. Также может использоваться для обнаружения и, возможно, исправления ошибок, возникших на физическом уровне. Примерами протоколов, работающих на канальном уровне, являются: Ethernet для локальных сетей (многоузловой), Point-to-Point Protocol (PPP), HDLC и ADCCP для подключений точка-точка (двухузловой).

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

Сетевой мост (также бридж с англ. bridge) — сетевое устройство второго уровня модели OSI, предназначенное для объединения сегментов (подсети) компьютерной сети в единую сеть.

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

Удалённый вызов процедур, реже Вызов удалённых процедур (от англ. Remote Procedure Call, RPC) — класс технологий, позволяющих компьютерным программам вызывать функции или процедуры в другом адресном пространстве (как правило, на удалённых компьютерах). Обычно реализация RPC-технологии включает в себя два компонента: сетевой протокол для обмена в режиме клиент-сервер и язык сериализации объектов (или структур, для необъектных RPC). Различные реализации RPC имеют очень отличающуюся друг от друга архитектуру.

Сервер баз данных (БД) выполняет обслуживание и управление базой данных и отвечает за целостность и сохранность данных, а также обеспечивает операции ввода-вывода при доступе клиента к информации.

Со́кет (англ. socket — разъём) — название программного интерфейса для обеспечения обмена данными между процессами. Процессы при таком обмене могут исполняться как на одной ЭВМ, так и на различных ЭВМ, связанных между собой сетью. Сокет — абстрактный объект, представляющий конечную точку соединения.

Глобальная вычислительная сеть, ГВС (англ. Wide Area Network, WAN) — компьютерная сеть, охватывающая большие территории и включающая большое число узлов.

Взаимодействие компьютеров между собой, а также с другим активным сетевым оборудованием, в TCP/IP-сетях организовано на основе использования сетевых служб, которые обеспечиваются специальными процессами сетевой операционной системы (ОС) — демонами в UNIX-подобных ОС, службами в ОС семейства Windows и т. п. Примерами сетевых сервисов являются веб-серверы (в т.ч. сайты всемирной паутины), электронная почта, FTP-серверы для обмена файлами, приложения IP-телефонии и многое другое.

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

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

Сетевая плата (в англоязычной среде NIC — англ. network interface controller/card), также известная как сетевая карта, сетевой адаптер (в терминологии компании Intel), Ethernet-адаптер — по названию технологии — дополнительное устройство, позволяющее компьютеру взаимодействовать с другими устройствами сети. В настоящее время в персональных компьютерах и ноутбуках контроллер и компоненты, выполняющие функции сетевой платы, довольно часто интегрированы в материнские платы для удобства, в том числе.

Кадр (жарг. фрейм, от англ. frame — кадр) — фрагмент данных протокола канального уровня модели OSI, передаваемый по линии связи.

Файловый дескриптор — это неотрицательное целое число. Когда создается новый поток ввода-вывода, ядро возвращает процессу, создавшему поток ввода-вывода, его файловый дескриптор.

Контроллер домена в компьютерных сетях построенных на Microsoft Server — сервер, контролирующий область компьютерной сети (домен).

Механизм копирования при записи (англ. Copy-On-Write, COW) используется для оптимизации многих процессов, происходящих в операционной системе, таких как, например, работа с оперативной памятью или файлами на диске (пример — ext3cow).

Монтирование файловой системы — системный процесс, подготавливающий раздел диска к использованию операционной системой.

Физический слой (англ. physical layer) или Физический уровень — первый уровень сетевой модели OSI. Это нижний уровень модели OSI — физическая и электрическая среда для передачи данных. Физический уровень описывает способы передачи бит (а не пакетов данных) через физические среды линий связи, соединяющие сетевые устройства. На этом уровне описываются параметры сигналов, такие как амплитуда, частота, фаза, используемая модуляция, манипуляция. Решаются вопросы, связанные с синхронизацией, избавлением.

Широковещательный адрес — условный (не присвоенный никакому устройству в сети) адрес, который используется для передачи широковещательных пакетов в компьютерных сетях.

Балансировка нагрузки отличается от физического соединения тем, что балансировка нагрузки делит трафик между сетевыми интерфейсами на сетевой сокет (модель OSI уровень 4) основе, в то время как соединение канала предполагает разделение трафика между физическими интерфейсами на более низком уровне, либо в пакет (модель OSI уровень 3) или по каналу связи (модель OSI уровень 2); Основы с, как протокол соединения кратчайшего пути.

Распределительная вычислительная среда (англ. Distributed Computing Environment, сокр. DCE) — система программного обеспечения, разработанная в начале 1990-х годов в Open Software Foundation, который представлял собой ассоциацию нескольких компаний: Apollo Computer, IBM, Digital Equipment Corporation и других. DCE предоставляет фреймворк и средства разработки клиент-серверных приложений.

В программировании именованный канал или именованный конвейер (англ. named pipe) — один из методов межпроцессного взаимодействия, расширение понятия конвейера в Unix и подобных ОС. Именованный канал позволяет различным процессам обмениваться данными, даже если программы, выполняющиеся в этих процессах, изначально не были написаны для взаимодействия с другими программами. Это понятие также существует и в Microsoft Windows, хотя там его семантика существенно отличается. Традиционный канал — «безымянен.

Отказоустойчивый кластер (англ. High-Availability cluster, HA cluster — кластер высокой доступности) — кластер (группа серверов), спроектированный в соответствии с методиками обеспечения высокой доступности и гарантирующий минимальное время простоя за счёт аппаратной избыточности. Без кластеризации сбой сервера приводит к тому, что поддерживаемые им приложения или сетевые сервисы оказываются недоступны до восстановления его работоспособности. Отказоустойчивая кластеризация исправляет эту ситуацию.

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

Широковещательный канал, широковещание (англ. broadcasting) — метод передачи данных в компьютерных сетях, при котором определенный поток данных (каждый переданный пакет в случае пакетной передачи) предназначен для приёма всеми участниками сети.

Репликация (англ. replication) — механизм синхронизации содержимого нескольких копий объекта (например, содержимого базы данных). Репликация — это процесс, под которым понимается копирование данных из одного источника на другой (или на множество других) и наоборот.

Софтфо́н (калька с англ. software telephone, программный телефон) — класс программного обеспечения для персонального компьютера для совершения телефонных (голосовых) или видеозвонков через Интернет (в общем случае через любую IP-сеть) без использования дополнительного аппаратного обеспечения, за исключением гарнитуры, USB-телефона, микрофона и аудиоколонок, вебкамеры (в случае видеосвязи).

Мультивещание, многоадресное вещание (англ. multicast — групповая передача) — форма широковещания, при которой адресом назначения сетевого пакета является мультикастная группа (один ко многим). Существует мультивещание на канальном, сетевом и прикладном уровнях. Мультивещание не следует путать с технологией передачи на физическом уровне точка-многоточка.

Технология единого входа (англ. Single Sign-On) — технология, при использовании которой пользователь переходит из одного раздела портала в другой без повторной аутентификации.

Виртуальное соединение (ВС), виртуальный канал (ВК) (англ. VC - Virtual Circuit) — канал связи в сети коммутации пакетов, соединяющий двух и более абонентов, и состоящий из последовательных физических звеньев системы передачи между узлами связи (коммутаторами), а также из физических и логических звеньев внутри коммутаторов на пути между указанными абонентами. Логическое звено управляет физическим звеном и они оба одновременно организуются на этапе установления сквозного ВС между абонентами.

Сетевой коммутатор (жарг. свитч, свич от англ. switch — переключатель) — устройство, предназначенное для соединения нескольких узлов компьютерной сети в пределах одного или нескольких сегментов сети. Коммутатор работает на канальном (втором) уровне модели OSI. Коммутаторы были разработаны с использованием мостовых технологий и часто рассматриваются как многопортовые мосты. Для соединения нескольких сетей на основе сетевого уровня служат маршрутизаторы (3 уровень OSI).

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

Защита памяти (англ. Memory protection) — это способ управления правами доступа к отдельным регионам памяти. Используется большинством многозадачных операционных систем. Основной целью защиты памяти является запрет доступа процессу к той памяти, которая не выделена для этого процесса. Такие запреты повышают надёжность работы как программ, так и операционных систем, так как ошибка в одной программе не может повлиять непосредственно на память других приложений. Следует различать общий принцип защиты.

Узел сети (англ. node) — устройство, соединённое с другими устройствами как часть компьютерной сети.. Узлами могут быть компьютеры, мобильные телефоны, карманные компьютеры, а также специальные сетевые устройства, такие как маршрутизатор, коммутатор или концентратор.

Разделяемая память (англ. Shared memory) является самым быстрым средством обмена данными между процессами.

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

Точка монтирования (англ. mount point) — это каталог или файл, с помощью которого обеспечивается доступ к новой файловой системе, каталогу или файлу.

Межпроцессное взаимодействие (англ. inter-process communication, IPC) — обмен данными между потоками одного или разных процессов. Реализуется посредством механизмов, предоставляемых ядром ОС или процессом, использующим механизмы ОС и реализующим новые возможности IPC. Может осуществляться как на одном компьютере, так и между несколькими компьютерами сети.

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

Модуль ядра, загружаемый модуль ядра (англ. loadable kernel module, LKM) — объект, содержащий код, который расширяет функциональность запущенного или т. н. базового ядра ОС. Большинство текущих систем, основанных на Unix, поддерживают загружаемые модули ядра, хотя они могут называться по-разному (например, kernel loadable module в FreeBSD и kernel extension в Mac OS X).

На рис. 1 показана модель взаимодействия двух узлов. С каждой стороны средства взаимодействия представлены четырьмя уровнями. Процедура взаимодействия этих двух узлов может быть описана в виде набора правил взаимодействия каждой пары соответствующих уровней обеих участвующих сторон.


Рис. 1. Взаимодействие двух узлов

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

Средства каждого уровня должны отрабатывать, во-первых, собственный протокол, а во-вторых, интерфейсы с соседними уровнями.

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

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

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

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

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

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

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

Стек протоколов — это набор протоколов для взаимодействия N-уровней ВОС.

Существующие стеки протоколов: TCP/IP, IPX/SPX, OSI, NetBIOS/SMB, SNA (фирма Apple).

Стек IPX/SPX является оригинальным стеком протоколов фирмы Novell, разработанным для сетевой операционной системы NetWare еще в начале 80-х годов. Многие особенности стека IPX/SPX обусловлены ориентацией ранних версий ОС NetWare (до версии 4.0) на работу в локальных сетях небольших размеров, состоящих из персональных компьютеров со скромными ресурсами. Понятно, что для таких компьютеров компании Novell нужны были протоколы, на реализацию которых требовалось бы минимальное количество оперативной памяти (ограниченной в IBM-совместимых компьютерах под управлением MS-DOS объемом 640 Кбайт) и которые бы быстро работали на процессорах небольшой вычислительной мощности. В результате протоколы стека IPX/SPX до недавнего времени хорошо работали в локальных сетях и не очень в больших корпоративных сетях, так как они слишком перегружали медленные глобальные связи широковещательными пакетами, которые интенсивно используются несколькими протоколами этого стека (например, для установления связи между клиентами и серверами). Сейчас стек IPX/ SPX реализован не только в NetWare, но и в нескольких других сетевых ОС.

Основными отличиями протоколов TCP/IP и IPX/SPX является их противоположная направленность по области применения, так IPX/SPX ориентированы на применение в небольших локальных сетях и для работы на маломощных вычислительных машинах. В отличие от них протоколы стека TCP/IP ориентированы на применение как в ГВС, так и в ЛВС, и требуют больших вычислительных ресурсов. В TCP/IP фрагментация пакетов, гибкая система адресации и сложное администрирование (DNS, DHCP вспомогательные службы).

Читайте также: