Уровни сетевой архитектуры (OSI)

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

Однако на самом деле при этом его запрос преобразуется в нужный для сети формат, осуществляется захват сети (арбитраж), передаваемая информация разбивается на пакеты, кодируется, преобразуется в нужные электрические сигналы и передается в сеть. На приемной части происходит обратное преобразование. Но для пользователя это должно быть незаметно или, как еще говорят, прозрачно.  Существует так называемая модель открытой системы обмена информацией OSI (Open System Interchange), которая формирует требования в том числе и к локальным сетям. Термин ” открытая система ” в данном случае означает, что система не замкнута в себе и может наращиваться до бесконечности, в частности, связываться с другими системами. 

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

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

6. Уровень представления данных 

5. Сеансовый уровень 

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

 3. Сетевой уровень

 2. Уровень управления линией передачи 

1. Физический уровень  

Рис. 1.35. Уровни модели взаимодействия открытых систем OSI 

 Уровни модели OSI получили следующие названия.  

1) Физический уровень. К нему относятся функции преобразования передаваемых данных в электрические (или световые) сигналы, распространяющиеся по кабелю, а также обратное преобразование. К этому уровню относятся такие аппаратные средства, как соединительные кабели, приемники и передатчики сетевых адаптеров. 2) Уровень управления линией передачи (он же канальный уровень) включает в себя функции управления доступом к сети (арбитраж), формирования пакетов (кадров), обнаружения ошибок передачи. Обычно все эти функции реализует аппаратура сетевых адаптеров и их программные драйверы. 3) Сетевой уровень включает в себя функции коммутации и маршрутизации в сложных сетях, состоящих из нескольких простых сетей, а также соответствующая буферизация данных и регулирование потока пакетов. 4) Транспортный уровень. К нему относятся функции сетевой адресации, нумерации передаваемых пакетов и контроль порядка их следования, а также согласование различных сетей между собой, например, двух локальных сетей, локальной сети и глобальной сети. 5) Сеансовый уровень. К нему относятся функции преобразования имен абонентов в сетевые адреса, управления доступом к сети на основе заданных прав доступа, а также взаимодействия абонентов, участвующих в сеансе связи. 6) Уровень представления данных включает в себя функции трансляция форматов и синтаксиса прикладных программ в форму, удобную для сети, шифрование данных и их сжатие (в случае необходимости). 7) Уровень приложений — это функции поддержки прикладного программного обеспечения конечного пользователя. 

 Таким образом, уровни 1 и 2 обычно реализуются аппаратно. На этих уровнях определяется физическая скорость передачи и топология сети. Именно к этим уровням относятся названия Еthernet, Arcnet, Token-Ring и т.д., то есть тип конкретных аппаратных средств. Более высокие уровни не работают напрямую с конкретной аппаратурой, но уровни 3, 4, 5 учитывают ее особенности.  Уровни 3, 4, 5 часто объединяют в отдельную группу, так как они управляют аппаратурой. Эти уровни обеспечивают взаимодействие передающего и принимающего абонентов, формируют то, что называется виртуальным каналом связи (в отличие от физического канала), то есть канал связи, работающий временно, не непрерывно, но который воспринимается пользователем как реальная линия связи. Эти уровни в основном решаются средствами сетевой операционной системы или сетевой оболочки, хотя иногда отдельные функции возлагаются и на аппаратуру.  Уровни 6 и 7 уже не имеют к аппаратуре вообще никакого отношения. Можно заменить аппаратуру на другую — эти уровни этого не заметят и не изменятся. Они обслуживаются средствами взаимосвязи прикладных задач. В качестве примера таких средств можно привести систему NAS (Network Applications  Systems),  фирмы DEC (Digital), а также систему SAA (Systems Application Architecture) фирмы IBM. Они позволяют объединять самые разные компьютерные средства: от терминалов до больших ЭВМ, работают с самыми разными операционными системами (VMS, UNIX, MS-DOS, OS/2, Apple Macintosh) и со всеми сетевыми средствами (Decnet, Netware, Ethernet, FDDI, Token Ring и т.д.). 

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