logo search
Учебник проектирование и внедрение компьютерных

2. Взаимодействие между стеками протоколов

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

Прикладной

Представительный

Сеансовой

Транспортный

Сетевой

Канальный

Физический

Прикладной

Представительный

Сеансовой

Транспортный

Сетевой

Канальный

Физический

Рабочая станция в Локальной сети 1 готовит передаваемую информацию

Сервер в Локальной сети 2 получает информацию и интерпретирует ее на каждом уровне модели OSI

Рис. 4. Передача информации с использованием эталонной модели OSI

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

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

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

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

Каждый уровень стека действует как самостоятельный модуль, выполняющий одну основную функцию, и каждый уровень имеет собственный, формат команд передачи данных, определяемый соответствующим протоколом. Протоколы, используемые для связи функций, относящихся к одному и тому же уровню, называются протоколами взаимодействия равноправных систем (peer protocol) или одноранговыми протоколами (рис. 5). Одноранговые протоколы позволяют некоторому уровню OSI, на передающем узле взаимодействовать с таким же уровнем принимающего узла. Например, когда Канальный уровень передающего узла генерирует контрольные суммы, он использует одноранговый протокол, который будет понятен Канальному уровню принимающего узла.

Между уровнями информация передается при помощи команд, называемых примитивами (primitive) (Рис. 6). Передаваемая информация называется протокольной единицей обмена или модулем данных протокола (protocol data unit, PDU). Когда данные поступают от одного уровня к другому (более высокому или более низкому), к модулю PDU добавляется новая управляющая информация. После того как на некотором уровне сформирован модуль PDU, он пересылается аналогичному уровню взаимодействующего узла с помощью одноранговых протоколов. Вместе с тем когда модуль PDU готов к передаче следующему уровню, предыдущий уровень добавляет к этому модулю команды пересылки.

Рис. 6. Взаимодействие между уровнями с применением примитивов