Упаковка запросов в OSI

Интернет-модель сетевого стека

(слайд №16)

(слайд №17)


Предположим, что вы хотите открыть какую-то интернет страничку со своего компьютера. Что при этом происходит? Вы вбиваете имя сайта в строке вашего браузера, например, www.ipmsol.ru, после чего формируется запрос web серверу, отобразить содержимое этого сайта в вашем браузере. На каждом уровне происходит упаковка этого запроса, т.е. добавляется заголовок, последовательно на уровне приложения, представления, сеансовом уровне.
После чего добавляется заголовок на транспортном уровне(упакованая единица данных на транспортном уровне называется сегмент). Сегмент содержит много служебной информации, главной является контрольное число(механизм называется windowing), благодаря которому определяется успешность/неуспешность передачи данных.

Затем добавляется заголовок с IP адресом отправителя, т.е. вашего компьютера, и получателя, т.е. web сервера, на котором находится сайт. Единица данных, упакованная на сетевом уровне, называется пакетом.
На уровне Data-Link к пакету добавляется заголовок и хвост. В заголовке содержится физический адрес отправителя и получателя в локальном сегменте сети, а в хвосте так называемая контрольная сумма(check sum), необходимая для проверки целостности единицы передачи данных, которая после упаковки на этом уровне называется frame. (для ethernet протокола, для WAN это может быть cell) Ну и на физическом уровне происходит просто передача 0 и 1.
Как видно на рисунке, упаковка происходит сверху вниз. И добавляются все новые заголовки при проходе через каждый новый уровень. Внешне похоже на снежный ком, спускающийся с вершины горы. Однако надо отметить, что у каждой единцы передачи данных есть свой лимит по размеру, поэтому сегмент может разбваться на несколько пакетов, а пакет на несколько фреймов. После того как запрос упаковался, он придет к web серверу ввиде 0 и 1, т.е. начнется все с физического уровная. На уровне сетеовом(network) будет выброшен заголовок и хвост Data Link уровня, в который был упакован пакет/чась пакета, из которого будет вытащен сегмент на транспортном(transport) уровне и в итоге это дойдет до уровня приложения. По сути, это распаковка запакованной единицы данных, осуществляется снизу вверх. В ответ сервер отправит содержимое запрашиваемого сайта, и все это точно также будет упаковано сверху вниз до 0 и 1. И так далее.

Сетевая архитектура Windows NT / 2000

(слайд №18)

Рисунок 112.

Опишем сетевую архитектуру Windows NT. Как можно видеть из схемы (рис. 112), программное обеспечение сетевых компонент может быть двух видов:

· Модули режима пользователя (динамические библиотеки - DLL и исполняемые файлы), взаимодействующие с драйверами при помощи программного интерфейса Win32 API.

· Драйверы режима ядра, взаимодействующие между собой при помощи программного интерфейса NDIS (Network Driver Interface Specification) и TDI (Transport Driver Interface).

Необходимо отметить, что в Windows NT используется несколько обобщенное понятие «драйвера», отличающееся от обычного, когда под драйвером подразумевается программа, управляющая конкретной моделью внешнего устройства и имеющая удобный для прикладного программиста программный интерфейс управления этим устройством. Имеется в виду тот факт, что драйверы в Windows NT могут, как управлять конкретным устройством, так и выполнять функции, не требующие работы с аппаратурой. Такие драйверы соответственно называют низкоуровневыми (аппаратными) и высокоуровневыми. При этом они имеют однотипную программную структуру и одинаковый формат исполняемого файла.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: