RFC 1088 INTERNET STANDARD LINK LAYER · ENCAPSULATION

IP over NetBIOS: Standard for the transmission of IP datagrams over NetBIOS networks

How to carry IP datagrams inside NetBIOS datagrams by building each NetBIOS name from an IP address.

On rfc-editor.org ↗
PUBLISHED
February 1989
AUTHORS
L.J. McLaughlin
STREAM
Legacy
NETBIOS NAME LENGTH
16 bytes
HOST NAME FORM
IP.XX.XX.XX.XX
BROADCAST NAME
IP.FF.FF.FF.FF
MTU
512 bytes
DOI
10.17487/RFC1088

RFC text

Contents
Original text · RFC Editor View on rfc-editor.org ↗
Network Working Group                                  L. McLaughlin III
Request for Comments: 1088                                           TWG
                                                           February 1989


 A Standard for the Transmission of IP Datagrams over NetBIOS Networks

Status of this Memo

   This document specifies a standard method of encapsulating the
   Internet Protocol [1] (IP) datagrams on NetBIOS [2] networks.
   Distribution of this memo is unlimited.

Introduction

   The goal of this specification is to allow compatible and
   interoperable implementations for transmitting IP datagrams over
   NetBIOS networks.

   NetBIOS is a standard which specifies a means of creating virtual
   circuits and of transmitting and receiving point-to-point, multicast,
   and broadcast datagrams.  This specification uses only the datagram
   services.

   Previous versions of this memo specified the use of the NetBIOS
   broadcast datagram services instead of the NetBIOS group name
   services to implement IP broadcasting.  These versions are now
   obsolete.

Description

   NetBIOS networks may be used to support IP networks and subnets [3]
   of any class.  By means of encapsulating IP datagrams within NetBIOS
   datagrams and assigning IP numbers to the hosts on a NetBIOS network,
   IP-based applications are supported on these hosts.  The addition of
   a router capable of encapsulating IP packets within ordinary data-
   link protocols (such as 802.3 [4]) as well as within NetBIOS
   datagrams allows these NetBIOS hosts to communicate with the Internet
   at large.

Address Mappings

   In general, NetBIOS names may be any series of 16 bytes, however, a
   few values are reserved or used by common networking packages.
   NetBIOS names for the IP applications on each host are chosen on the
   basis of the internet number of that host.  Since NetBIOS names are a
   mapping of IP addresses, no physical address query mechanism (e.g.,
   ARP [5]) is required.

   For these internet protocol applications, IP.XX.XX.XX.XX is the
   NetBIOS name for any IP over NetBIOS host where XX represents the
   ascii hexadecimal representation of that byte of the internet
   address.

   This addressing scheme allows for the multiplexing of standard
   datagram protocols over NetBIOS as well as easy visual confirmation
   of the correctness of a given packet's address.

Broadcast and Multicast Addresses

   Broadcast Internet addresses are represented by the NetBIOS group
   name IP.FF.FF.FF.FF.  Currently, no attempt is made to provide
   support of IP multicast addresses using NetBIOS group names.

Maximum Transmission Unit

   The maximum data size of a NetBIOS datagram, and therefore the
   Maximum Transmission Unit (MTU) for IP over NetBIOS networks, is 512
   bytes.  Therefore, any hosts communicating with a host on a NetBIOS
   network may be required to reassemble fragmented datagrams.

Implementation

   To support IP on a NetBIOS host for any given IP address the
   initialization code must:

       1) Add IP.XX.XX.XX.XX to the host's NetBIOS name table.

       2) Add IP.FF.FF.FF.FF to the host's NetBIOS group name table.

       3) Submit a receive datagram request for the reception of NetBIOS
          datagrams destined for IP.XX.XX.XX.XX.

       4) Submit a receive datagram request for the reception of NetBIOS
          datagrams destined for IP.FF.FF.FF.FF.

   When a NetBIOS datagram to either address is received, it is
   processed by the protocol stack and another receive datagram request
   is submitted.

   When an IP datagram is sent, it is considered to be NetBIOS datagram
   data and sent by a send datagram request to either IP.XX.XX.XX.XX or
   IP.FF.FF.FF.FF.

   Optionally, the IP software may desire to make adapter status queries
   of the NetBIOS network.  As support for SNMP becomes a requirement
   for IP hosts, these adapter status queries may become mandatory.

   Finally, when the IP support for a given NetBIOS host is
   discontinued, a cancel command request should be submitted for every
   pending receive datagram, and a delete name request should be
   submitted for both the IP.XX.XX.XX.XX and IP.FF.FF.FF.FF address
   added during initialization.

Acknowledgements

   This document would not have been possible without the efforts of
   John Bartas, James Davidson, and Dan Ladermann in the early design
   and implementation of IP over NetBIOS.

References

     [1]  Postel, J., "Internet Protocol", RFC-791, September 1981.

     [2]  IBM PC Network Technical Reference, Document Number 6322916,
          September 1984.

     [3]  Mogul, J., and J. Postel, "Internet Standard Subnetting
          Procedure", RFC-950, August 1985.

     [4]  Postel, J., and J. Reynolds, "A Standard for the Transmission
          of IP datagrams over IEEE 802 Networks", RFC-1042,
          February 1988.

     [5]  Plummer, D., "An Ethernet Address Resolution Protocol",
          RFC-826, November 1982.

Author's Address:

   Leo J. McLaughlin III
   The Wollongong Group
   1129 San antonio Road
   Palo Alto, CA 94303

   Phone: (415) 962-7100

   EMail: ljm@TWG.COM

ISO Plain Language

On this page
PROBLEMPrograms on a NetBIOS network want to use IP, but there was no agreed way to put IP datagrams into NetBIOS datagrams.
MECHANISMEach IP datagram is sent as the data of one NetBIOS datagram, and each host's NetBIOS name is built from its IP address, so no address lookup is needed.
STATUS TODAYIt is an Internet Standard. Broadcast uses one special group name, multicast is not supported, and the maximum packet size is 512 bytes.

§1Purpose and Scope

RFC 1088 sets one standard way to encapsulate Internet Protocol (RFC 791) datagrams inside NetBIOS datagrams, so that separate implementations can interoperate. NetBIOS can also create virtual circuits and send point-to-point, multicast and broadcast datagrams, but this specification uses only its datagram services.

Hosts on a NetBIOS network are given IP numbers, so IP-based applications work there. A router that can also encapsulate IP packets in ordinary data-link protocols such as 802.3 lets those hosts reach the wider Internet. The RFC notes that earlier versions of the memo used the NetBIOS broadcast datagram service for IP broadcasting instead of group names, and that those versions are now obsolete.

The RFC defines one shared way to put Internet packets into NetBIOS envelopes, so that equipment from different makers works together.

§2Names Built from IP Addresses

A NetBIOS name may be any series of 16 bytes, though a few values are reserved by common networking packages. For IP applications the name is chosen from the host's internet number: IP.XX.XX.XX.XX is the NetBIOS name of any IP over NetBIOS host, where each XX is the ASCII hexadecimal representation of that byte of the internet address.

Because NetBIOS names are a mapping of IP addresses, no physical address query mechanism such as ARP is required. The addressing scheme also allows standard datagram protocols to be multiplexed over NetBIOS and lets a person confirm by eye that a packet's address is correct.

Each computer's network name is made directly from its IP address, so nothing has to look the name up before sending.

§3Broadcast, Multicast and MTU

Broadcast internet addresses are represented by the NetBIOS group name IP.FF.FF.FF.FF. At present no attempt is made to support IP multicast addresses using NetBIOS group names.

The maximum data size of a NetBIOS datagram is 512 bytes, and therefore the Maximum Transmission Unit (MTU) for IP over NetBIOS networks is 512 bytes. Hosts communicating with a host on a NetBIOS network may therefore be required to reassemble fragmented datagrams.

Messages to everyone go to one shared name. Each envelope holds at most 512 bytes, so larger packets are split into pieces and put back together.

§4Starting and Stopping IP Support

To support IP for a given address, the initialization code must add IP.XX.XX.XX.XX to the host's NetBIOS name table, add IP.FF.FF.FF.FF to the host's group name table, and submit a receive datagram request for each of the two names. When a datagram arrives it is processed by the protocol stack and another receive request is submitted.

Sending an IP datagram means treating it as NetBIOS datagram data and using a send datagram request to IP.XX.XX.XX.XX or IP.FF.FF.FF.FF. Adapter status queries are optional, though the RFC says they may become mandatory as SNMP support becomes a requirement for IP hosts. When IP support is discontinued, a cancel request is submitted for every pending receive and a delete name request for both names.

A host registers its two names at start-up and listens for messages on them, and it removes them when it stops speaking IP.

§5References