Основное различие между ранней версией Сетей Мicrosoft (Microsoft Networks) и NETBIOS заключается в том, что Сети Microsoft предоставляют интерфейс транспортного уровня, в то время как интерфейс NETBIOS находится на сеансовом уровне. Сети Microsoft также включают специализированной программное обеспечение спецпроцессора и рабочей станции, тогда как Программа ЛВС IBM PC обеспечивает эти и другие функции, включая неспециализированный спецпроцессор.
Транспортный уровень Сетей Microsoft используется для отправки сообщений через виртуальные каналы. По одному запросу может быть передано до 64 кбайт. Коммуникация (обмен данными) с транспортным уровнем осуществляется посредством прерывания 21H, функция 5BH (напомним, что NETBIOS использует прерывание 21H, функция 5CH). Коммуникация с транспортным уровнем производится посредством установки Блока управления транспортом (Transport Control Block, сокращенно TCB), а затем выполнения прерывания 21H. Блок управления транспортом аналогичен Блоку управления сообщениями (MCB) или Блоку управления сетью (NCB) в NETBIOS. Фактически, многие поля являются общими как для реализации TCB, так и для реализации NCB/MCB. На рис. 6-1 показана структура Блока управления транспортом (TCB).
ИМЯ ПОЛЯ ДЛИНА (байт) и ЗНАЧЕНИЕ ------------------------------------------------------------------- ! COMMAND ! 1 Поле команды ! ! ! ! ------------------------------------------------------------------- ! CID ! 1 Идентификатор команды ! ! ! ! ------------------------------------------------------------------- ! VCID ! 1 Идентификационный номер виртуального канала ! ! ! ! ------------------------------------------------------------------- ! LENGTH ! 2 Размер буфера данных ! ! ! ! ------------------------------------------------------------------- ! BADDR ! 4 Указаталь на адрес буфера сообщения ! ! ! (смещение:сегмент) ! ------------------------------------------------------------------- ! RES1 ! 2 Зарезервированное ! ! ! ! ------------------------------------------------------------------- ! LADDR ! 16 Местный адрес ! ! ! ! ------------------------------------------------------------------- ! RADDR ! 16 Удаленный адрес ! ! ! ! ------------------------------------------------------------------- ! ASYNC ! 4 Указатель на подпрограмму нотификации (объявления)! ! ! адреса (смещение:сегмент) ! ------------------------------------------------------------------- ! LNET ! 4 Местный номер ЛВС ! ! ! ! ------------------------------------------------------------------- ! RNET ! 4 Удаленный номер ЛВС ! ! ! ! ------------------------------------------------------------------- ! RTO ! 1 Тайм-аут получения (шаг равен 500 мсек) ! ! ! ! ------------------------------------------------------------------- ! STO ! 1 Тайм-аут отправки (шаг равен 500 мсек) ! ! ! ! ------------------------------------------------------------------- ! RES2 ! 8 Зарезервированное ! ! ! ! -------------------------------------------------------------------
Рис. 6-1. Блок управления транспортом (TCB).
Как и для оригинального NETBIOS в Сети ПЭВМ с модулированной передачей (PC Network), сетевой уровень в Сетях Microsoft реализован лишь в минимальной степени. Имеется поддержка для иерархического адреса, состоящего из 4-байтового адреса сети и 16-байтового адреса станции. Также имеется низкоуровневая поддержка для услуги дейтаграмм, позволяющая отправлять/принимать неквитированные пакеты длиной до 512 байт. Изготовитель комплексного оборудования должен решить, как отобразить адреса станций в адресах сети и как реализовать алгоритм маршрутизации, если будет разработан шлюз.
К сожалению, между Сетями Microsofdt и NETBIOS существует много различий, что затрудняет совместимость этих продуктов. Кроме уже упромянутых различий, несовместимыми являются и две схемы поименования. NETBIOS позоляет иметь несколько имен, динамически переназначать имена и транслировать их; в то сремя как в Сетях Microsoft требуется, чтобы администратор присваивал только одно логическое имя каждому физическому адресу.
Несмотря на различия в обеих реализациях, у них есть один общий недостаток: обе основываются на MS-DOS для выполнения услуг в файловом процессоре. Другими словами, на них влияют недостатки операционной системы - однопользовательской и "однозадачной". В первой редакции данной книги мы написали следующее: "Не совсем ясно, сможет ли 'многозадачная' версия DOS решить эту проблему, потому что для успешной своей работы она более чем вероятно НЕ будет совместима с предыдущими версиями DOS,что полностью обезоружит пять миллионов владельцев ПЭВМ". Как оказалось, OS/2 поддерживает только некоторые команды DOS и лежащую в основе DOS файловую структуру, что не устраняет трудности в работе для любого спецпроцессора ЛВС, действующего под управлением OS/2. (Метод, имеющийся в DOS, - метод использования таблицы размещения (записей) файла (FAT) потребует проведения интенсивного табличного поиска при открытии, закрытии и поддержании файла).
Некоторые фирмы-продавцы, объявившие о поддержке Сетей Microsoft, выпустили на рынок промышленные версии для своих сетей. Многие из них предлагают также и NETBIOS, т.к. Сети Microsoft включают "образец" эмулятора NETBIOS, который фирмы-изготовители комплексного оборудования могут предлагать наряду со своими продуктами. Получилось так, что первоначальная полезность Сетей Microsoft в чистой среде MS-DOS была некоторым образом ограничена. Первоначально Сети Microsoft были для ЛВС с комбинацией операционных систем DOS и Xenix.