На рис. 4.16 показано, в какой степени популярные стеки протоколов соответствуют рекомендациям модели OSI. Как мы видим, часто это соответствие весьма условно. В большинстве случаев разработчики стеков отдавали предпочтение скорости работы сети в ущерб модульности — ни один стек, кроме стека OSI, не разбит на семь уровней. Чаще всего в стеке явно выделяются 3-4 уровня: уровень сетевых адаптеров, в котором реализуются протоколы физического и канального уровней, сетевой уровень, транспортный уровень и уровень служб, вбирающий в себя функции сеансового уровня, уровня представления и прикладного уровня.
Структура стеков протоколов часто не соответствует рекомендуемому моделью OSI разбиению на уровни и по другим причинам. Давайте вспомним, чем характеризуется идеальная многоуровневая декомпозиция. С одной стороны, необходимо соблюсти принцип иерархии: каждый вышележащий уровень обращается с запросами только к нижележащему, а нижележащий предоставляет свои сервисы только непосредственно соседствующему с ним вышележащему. В стеках протоколов это приводит к тому, что PDU вышележащего уровня всегда инкапсулируется в PDU нижележащего.
|
|
Модель OSI IBM/Microsoft TCP/IP Novell Стек OSI
|
Рис. 4.16. Соответствие популярных стеков протоколов модели OSI |
С другой же стороны, идеальная многоуровневая декомпозиция предполагает, что все модули, отнесенные к одному уровню, ответственны за решение общей для всех них задачи. Однако эти требования часто вступают в противоречие. Например, основной функцией протоколов сетевого уровня стека TCP/IP (так же как и сетевого уровня OSI) является обеспечение передачи пакетов через составную сеть. Для решения этой задачи в стеке TCP/IP предусмотрено несколько протоколов: протокол продвижения IP-пакетов и протоколы маршрутизации RIP, OSPF и др. Если считать признаком принадлежности к одному и тому же уровню общность решаемых задач, то, очевидно, протокол IP и протоколы маршрутизации должны быть отнесены к одному уровню. Вместе с тем, если принять во внимание, что сообщения протокола RIP инкапсулируются в дейтаграммы UDP, а сообщения протокола OSPF — в IP-пакеты, то, следуя формально принципу иерархической организации стека, OSPF следовало бы отнести к транспортному, a RIP — к прикладному уровню. На практике же протоколы маршрутизации обычно включают в сетевой уровень.
|
|
Информационные и транспортные услуги
Список ключевых слов: транспортные услуги, информационные услуги, базы данных, файловые архивы, веб-сервис, электронная почта, инфокоммуникационная сеть, пользовательский слой, слой управления, слой менеджмента, сетевые приложения, интерфейс API, коммуникационные устройства, концентратор, коммутатор, маршрутизатор.
Услуги компьютерной сети можно разделить на две категории:
□ транспортные услуги;
□ информационные услуги.
Транспортные услуги состоят в передаче информации между пользователями сети в неизменном виде. При этом сеть принимает информацию от пользователя на одном из своих интерфейсов, передает ее через промежуточные коммутаторы и выдает другому пользователю через другой интерфейс. При оказании транспортных услуг сеть не вносит никаких изменений в передаваемую информацию, передавая ее получателю в том виде, в котором она поступила в сеть от отправителя. Примером транспортной услуги глобальных сетей является объединение локальных сетей клиентов.
Информационные услуги состоят в предоставлении пользователю некоторой новой информации. Информационная услуга всегда связана с операциями по обработке информации: хранению ее в некотором упорядоченном виде (файловая система, база данных), поиску нужной информации и преобразованию информации. Информационные услуги существовали и до появления первых компьютерных сетей, например, справочные услуги телефонной сети. С появлением компьютеров информационные услуги пережили революцию, так как компьютер и был изобретен для автоматической программной обработки информации. Для оказания информационных услуг применяются различные информационные технологии: программирование, базы данных, файловые архивы, веб-сервис, электронная почта.
В телекоммуникационных сетях «докомпьютерной» эры всегда преобладали транспортные услуги. Основной услугой телефонной сети всегда была передача голосового трафика между абонентами, в то время как справочные услуги были дополнительными. В компьютерных сетях одинаково важны обе категории услуг. Эта особенность компьютерных сетей сегодня отражается на названии нового поколения телекоммуникационных сетей, которые появляются в результате конвергенции сетей различных типов. Такие сети все чаще стали называть ин- фокоммуникационными. Это название пока не стало общеупотребительным, но оно хорошо отражает новые тенденции, включая обе составляющие услуг на равных правах.
Деление услуг компьютерных сетей на две категории проявляется во многих аспектах. Существует, например, четкое деление специалистов в области компьютерных сетей на специалистов информационных технологий и сетевых специалистов. К первой категории относятся программисты, разработчики баз данных, администраторы операционных систем, веб-дизайнеры, словом все те, кто имеет дело с разработкой и обслуживанием программного и аппаратного обеспечения компьютеров. Вторая категория специалистов занимается транспортными проблемами сети. Эти специалисты имеют дело с каналами связи и коммуникационным оборудованием, таким как коммутаторы, маршрутизаторы и концентраторы. Они решают проблемы выбора топологии сети, выбора маршрутов для потоков трафика, определения требуемой пропускной способности каналов связи и коммуникационных устройств и другие проблемы, связанные только с передачей трафика через сеть.
|
|
Безусловно, каждой категории специалистов необходимо знать проблемы и методы смежной области. Специалисты, занимающиеся разработкой распределенных приложений, должны представлять, какие транспортные услуги они могут получить от сети для организации взаимодействия отдельных частей своих приложений. Например, программист должен понимать, какая из двух предлагаемых стеком TCP/IP транспортных услуг, реализуемых протоколами TCP и UDP, подходит наилучшим образом его приложению. Аналогично, разработчики транспортных средств сети при передаче трафика должны стремиться максимально учитывать требования приложений.
Тем не менее специализация в области информационных технологий сохраняется, отражая двойственное назначение компьютерных сетей. Деление услуг сети на транспортные и информационные сказывается и на организации стека протоколов, а также на распределении протоколов различных уровней по элементам сети.