NetBIOS: What It Is and How It Works

It allows applications and computers to communicate over a LAN

NetBIOS provides communication services on local networks. It uses a software protocol called NetBIOS Frames that allows applications and computers on a local area network to communicate with network hardware and to transmit data across the network.

NetBIOS, an abbreviation for Network Basic Input/Output System, is a networking industry standard. It was created in 1983 by Sytek and is often used with the NetBIOS over TCP/IP protocol. However, it's also used in Token Ring networks, as well as by Microsoft Windows.

NetBIOS and NetBEUI are separate but related technologies. NetBEUI extended the first implementations of NetBIOS with additional networking capabilities.

How NetBIOS Works With Applications

Software applications on a NetBIOS network locate and identify each other through their NetBIOS names. In Windows, the NetBIOS name is separate from the computer name and can be up to 16 characters long.

Applications on other computers access NetBIOS names over UDP, a simple OSI transport layer protocol for client/server network applications based on Internet Protocol on port 137.

Registering the NetBIOS name is required by the application but is not supported by Microsoft for IPv6. The last octet is usually the NetBIOS Suffix that explains which services the system has available.

The Windows Internet Naming Service provides name resolution services for NetBIOS.

Two applications start a NetBIOS session when the client sends a command to "call" another client (the server) over TCP port 139. This is referred to as the session mode, where both sides issue "send" and "receive" commands to deliver messages in both directions. The "hang-up" command terminates a NetBIOS session.

NetBIOS also supports connectionless communications through UDP. Applications listen on UDP port 138 to receive NetBIOS datagrams. The datagram service sends and receives datagrams and broadcasts datagrams.

More Information on NetBIOS

Following are some of the options the name service is allowed to send through NetBIOS:

  • Add name to register the NetBIOS name
  • Add group name is similar but registers the NetBIOS group name
  • Delete name is for unregistering a NetBIOS name, whether it be a name or group
  • Find name is for looking up a NetBIOS name on the network

The session services allow these primitives:

  • Call to start a session through the NetBIOS name
  • Listen will see if an attempt can be made to open the session
  • Hang Up is used to close a session
  • Send will send a packet over the session
  • Send No Ack is the same as send but doesn't require an acknowledgment that it was sent through the session
  • Receive waits for the incoming packet

When in datagram mode, these primitives are supported:

  • Send Datagram will send a datagram through0. the NetBIOS name
  • Send Broadcast Datagram is for sending a datagram to every registered NetBIOS name on the network
  • Receive Datagram waits for a Send Datagram packet
  • Receive Broadcast Datagram waits for a Send Broadcast packet
  • What's the difference between NetBIOS and DNS?

    The Domain Name System (DNS) is a directory for communication between devices over the internet. An internet connection is required to use DNS, but NetBIOS is available to all machines on a local area network.

  • What is the maximum number of characters in a NetBIOS name?

    Sixteen. The first character must be alphanumeric (not a special character), and the final character can't be a minus (-) or a period. You must have at least one letter; they can't be all numbers.

  • What is the command to display NetBIOS over TCP/IP statistics?

    Use the nbtstat command to see NetBIOS over TCP/IP (NetBT) protocol statistics, as well as NetBIOS name tables and the NetBIOS name cache. Run the command without parameters to see Help information.

Was this page helpful?