NetBIOS - NetBIOS

NetBIOS ( / п ɛ т б ɒ s / ) является аббревиатурой Network Basic Input / Output System . Она предоставляет услуги , связанные с сеансового в модели OSI , позволяя приложениям на разных компьютерах , чтобы общаться по локальной сети . Как строго API , NetBIOS не является сетевым протоколом . Старые операционные системы запускали NetBIOS поверх IEEE 802.2 и IPX / SPX с использованием протоколов NetBIOS Frames (NBF) и NetBIOS over IPX / SPX (NBX) соответственно. В современных сетях NetBIOS обычно работает через TCP / IP через протокол NetBIOS через TCP / IP (NBT). Это приводит к тому, что каждый компьютер в сети имеет как IP-адрес, так и имя NetBIOS, соответствующее (возможно другому) имени хоста. NetBIOS также используется для идентификации системных имен в TCP / IP (Windows). Проще говоря, это протокол, который позволяет передавать файлы и принтеры через сеансовый уровень модели OSI в локальной сети.

История и терминология

NetBIOS - это немаршрутизируемый протокол OSI Session Layer 5 и служба, которая позволяет приложениям на компьютерах взаимодействовать друг с другом по локальной сети (LAN). NetBIOS был разработан в 1983 году Sytek Inc . в качестве API для программного обмена данными по технологии локальной сети IBM PC Network . В PC-Network, как API, NetBIOS полагался на проприетарные сетевые протоколы Sytek для связи по проводам. Несмотря на поддержку до 80 ПК в локальной сети, NetBIOS стал отраслевым стандартом.

В 1985 году IBM продолжила разработку сетевой схемы Token Ring , и был создан эмулятор NetBIOS, позволяющий приложениям с поддержкой NetBIOS из эпохи компьютерных сетей работать над этим новым дизайном. Этот эмулятор, названный расширенным пользовательским интерфейсом NetBIOS (NetBEUI), расширил базовый API NetBIOS, помимо прочего, возможностью работать с большей емкостью узлов Token Ring. Одновременно был разработан новый сетевой протокол, NBF , чтобы позволить NetBEUI (NetBIOS) предоставлять свои услуги через Token Ring, в частности, на уровне управления логическим каналом IEEE 802.2 .

В 1985 году Microsoft создала реализацию NetBIOS для своей сетевой технологии MS-Net . Как и в случае с IBM Token Ring, услуги реализации NetBIOS от Microsoft предоставлялись через уровень IEEE 802.2 Logical Link Control по протоколу NBF . До тех пор, пока Microsoft не приняла разрешение имен хостов в системе доменных имен (DNS) , операционные системы Microsoft использовали NetBIOS для разрешения имен в клиент-серверных сетях Windows .

В 1986 году Novell выпустила Advanced Novell NetWare 2.0 с собственным эмулятором NetBIOS. Его сервисы были инкапсулированы в протокол NetWare IPX / SPX с использованием протокола NetBIOS over IPX / SPX (NBX).

В 1987 году был опубликован метод инкапсуляции NetBIOS в пакеты TCP и UDP , NetBIOS over TCP / IP (NBT). Он был описан в RFC 1001 («Стандарт протокола для службы NetBIOS на транспорте TCP / UDP: концепции и методы») и RFC 1002 («Стандарт протокола для службы NetBIOS на транспорте TCP / UDP: подробные спецификации»). Протокол NBT был разработан для того, чтобы «позволить реализации [приложений NetBIOS] быть построенной практически на любом типе системы, в которой доступен набор протоколов TCP / IP», и «разрешить взаимодействие NetBIOS в Интернете».

После того, как в 1987 году на рынке появился компьютер PS / 2 , IBM выпустила программу поддержки локальной сети ПК, которая включала драйвер для NetBIOS.

Существует некоторая путаница между названиями NetBIOS и NetBEUI. NetBEUI возник строго как название усовершенствованного эмулятора NetBIOS от IBM 1985 года для Token Ring. Название NetBEUI должно было там умереть, учитывая, что в то время реализации NetBIOS других компаний были известны просто как NetBIOS, независимо от того, включали ли они расширения API, найденные в этом эмуляторе. Однако для MS-Net Microsoft решила назвать свою реализацию протокола NBF «NetBEUI», назвав свою реализацию транспортного протокола в честь второй версии API IBM. Следовательно, совместное использование файлов и принтеров Microsoft через Ethernet продолжает называться NetBEUI, с именем NetBIOS, которое обычно используется только для совместного использования файлов и принтеров через TCP / IP . Точнее, первое - это кадры NetBIOS (NBF), а второе - это NetBIOS через TCP / IP (NBT).

С момента первоначальной публикации в техническом справочнике от IBM спецификация NetBIOS API стала стандартом де-факто .

Услуги

NetBIOS предоставляет три различных сервиса:

(Примечание. SMB , верхний уровень, представляет собой службу, которая работает поверх службы сеанса и службы датаграмм, и ее не следует путать как необходимую и неотъемлемую часть самого NetBIOS. Теперь она может работать поверх TCP с небольшим уровень адаптации, который добавляет длину пакета к каждому сообщению SMB; это необходимо, потому что TCP предоставляет только службу байтового потока без понятия границ пакета.)

Служба имен

Чтобы запускать сеансы или распространять дейтаграммы, приложение должно зарегистрировать свое имя NetBIOS с помощью службы имен. Имена NetBIOS имеют длину 16 октетов и зависят от конкретной реализации. Часто 16-й октет, называемый суффиксом NetBIOS, обозначает тип ресурса и может использоваться, чтобы сообщить другим приложениям, какие типы услуг предлагает система. В NBT служба имен работает на UDP-порту 137 (TCP-порт 137 также может использоваться, но редко).

NetBIOS предлагает следующие примитивы службы имен:

  • Добавить имя - регистрирует имя NetBIOS.
  • Добавить имя группы - регистрирует имя «группы» NetBIOS.
  • Удалить имя - отмена регистрации имени NetBIOS или имени группы.
  • Найти имя - поиск имени NetBIOS в сети.

Разрешение имен NetBIOS не поддерживается Microsoft для протокола Интернета версии 6 (IPv6) .

Служба распространения дейтаграмм

Режим дейтаграммы не требует установления соединения ; приложение отвечает за обнаружение ошибок и исправление. В NBT служба дейтаграмм работает на UDP-порту 138.

NetBIOS предлагает следующие примитивы службы дейтаграмм:

  • Отправить дейтаграмму - отправить дейтаграмму на удаленное имя NetBIOS.
  • Отправить широковещательную дейтаграмму - отправить дейтаграмму всем именам NetBIOS в сети.
  • Получить дейтаграмму - дождаться прибытия пакета после операции отправки дейтаграммы.
  • Получить широковещательную дейтаграмму - дождаться прибытия пакета в результате операции отправки широковещательной дейтаграммы.

Сессионный сервис

Режим сеанса позволяет двум компьютерам устанавливать соединение, позволяет сообщениям охватывать несколько пакетов и обеспечивает обнаружение ошибок и восстановление. В NBT служба сеанса работает на TCP-порту 139.

NetBIOS предлагает следующие примитивы сеансового обслуживания:

  • Вызов - открывает сеанс с удаленным NetBIOS-именем.
  • Слушать - прослушивать попытки открыть сеанс с именем NetBIOS.
  • Hang Up - закрыть сеанс.
  • Отправить - отправляет пакет компьютеру на другом конце сеанса.
  • Send No Ack - аналогично Send, но не требует подтверждения.
  • Получить - дождаться прибытия пакета от отправки на другом конце сеанса.

В исходном протоколе, используемом для реализации служб NetworkBIOS в сети ПК, для установления сеанса компьютер-инициатор отправляет запрос Open, на который отвечает открытое подтверждение. Компьютер, запустивший сеанс, затем отправит пакет запроса сеанса, который предложит либо пакет принятия сеанса, либо пакет отклонения сеанса.

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

Имя NetBIOS и имя хоста в Интернете

Когда NetBIOS работает вместе с Интернет-протоколами (например, NBT), каждый компьютер может иметь несколько имен: одно или несколько имен службы имен NetBIOS и одно или несколько имен узлов Интернета.

Имя NetBIOS

Имя NetBIOS состоит из 16 символов ASCII, однако Microsoft ограничивает имя хоста 15 символами и резервирует 16-й символ как суффикс NetBIOS. Этот суффикс описывает тип записи службы или имени, такой как запись хоста, запись основного браузера, запись контроллера домена или другие службы. Имя хоста (или короткое имя хоста) указывается при установке / настройке сети Windows, зарегистрированные суффиксы определяются отдельными службами, предоставляемыми хостом. Чтобы подключиться к компьютеру, на котором запущен TCP / IP, через его имя NetBIOS, имя должно быть преобразовано в сетевой адрес . Сегодня это обычно IP-адрес ( преобразование имени NetBIOS в IP-адрес часто выполняется широковещательной рассылкой или сервером WINS - сервером имен NetBIOS). Имя NetBIOS компьютера часто совпадает с именем хоста этого компьютера (см. Ниже), хотя и сокращено до 15 символов, но также может быть совершенно другим.

Имена NetBIOS представляют собой последовательность буквенно-цифровых символов. Следующие символы явно не разрешены:\ /: *? "<> |. Начиная с Windows 2000, имена NetBIOS также должны соответствовать ограничениям на имена DNS: они не могут состоять полностью из цифр, а символы дефиса («-») или точки («.») Могут не отображаться в качестве первого или последнего символа. . Начиная с Windows 2000, Microsoft рекомендует не включать в имена NetBIOS любые символы точки («.»), Чтобы приложения могли использовать точку, чтобы отличать имена доменов от имен NetBIOS.

Файл Windows LMHOSTS предоставляет метод разрешения имен NetBIOS, который можно использовать для небольших сетей, в которых не используется WINS-сервер.

Имя хоста в Интернете

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

Обычно имя хоста компьютера с Windows основывается на имени NetBIOS и первичном DNS-суффиксе, которые задаются в диалоговом окне «Свойства системы». Также могут быть суффиксы для конкретного соединения, которые можно просмотреть или изменить на вкладке DNS в Панели управления → Сеть → TCP / IP → Дополнительные свойства. Имена хостов используются такими приложениями , как telnet , ftp , веб-браузеры и т. Д. Чтобы подключиться к компьютеру, на котором работает протокол TCP / IP, используя его имя, имя хоста должно быть преобразовано в IP-адрес , обычно DNS-сервером. (Также можно работать со многими приложениями на основе TCP / IP, включая три перечисленных выше, используя только IP-адреса, но это не является нормой.)

Типы узлов

В Windows тип узла сетевого компьютера зависит от способа преобразования имен NetBIOS в IP-адреса . Это предполагает наличие любых IP-адресов для узлов NetBIOS, что обеспечивается только в том случае, если NetBIOS работает через NBT; таким образом, типы узлов являются не собственностью NetBIOS как таковой, а взаимодействием между NetBIOS и TCP / IP в среде ОС Windows. Есть четыре типа узлов.

  • B-узел: 0x01 Broadcast
  • P-узел: 0x02 Peer (только WINS)
  • M-узел: 0x04 смешанный (широковещательный, затем WINS)
  • H-узел: 0x08 Hybrid (WINS, затем широковещательный)

Тип используемого узла отображается при открытии командной строки и вводе ipconfig / all . Windows , реестр компьютера также может быть настроен таким образом, чтобы отобразить «неизвестный» для типа узла.

Суффиксы NetBIOS

Суффикс NetBIOS, также называемый конечным символом NetBIOS (endchar), является 16-м символом имени NetBIOS и указывает тип службы для зарегистрированного имени. Количество типов записей ограничено 255; некоторые часто используемые значения:

Для уникальных имен:

Для названий групп:

  • 00: Служба рабочей станции (рабочая группа / доменное имя)
  • 1С: Контроллеры домена для домена (групповая запись до 25 IP-адресов)
  • 1E: Выбор службы браузера

Смотрите также

использованная литература

дальнейшее чтение

  • Хаугдал, Дж. Скотт (1990). Внутри NetBIOS . Архитектура Technology Corp. ISBN  99914-57-34-8
  • Зильбершац, Авраам; Гэлвин, Питер Баер; Гань, Грег (2004). Понятия операционной системы . (7-е изд.). Джон Вили и сыновья. ISBN  0-471-69466-5
  • Мейерс, Майкл (2004). «Управление сетями и устранение неисправностей». Макгроу-Хилл. ISBN  978-0-07-225665-9
  • Тамара Дин. Сеть + Руководство по сетям , стр. 206 (NetBEUI)

внешние ссылки