Ref: 11020001
Title: NetBIOS Basics
date: 6/9/89

Copyright 3Com Corporation, 1991.  All rights reserved.

Originally developed by IBM as an Application Program Interface
(API) for IBM PC programs to access LAN facilities, NetBIOS has
become the basis of many other networking applications.  This
article explains what NetBIOS is, how it works, and shows how
3Com uses NetBIOS in its networking scheme.


What Does NetBIOS Do?

NetBIOS standardizes the interface between application programs
and a LAN's operating capabilities.  Applications can be written
to access only the highest levels of the OSI model, making them
transportable to other network environments.  Any program can use
the network while making the usual calls to DOS, but NetBIOS
calls enable the user to instantly transmit information to an
application on another network machine.

All nodes on the network can communicate with each other or with
the server on an equal basis (peer-to-peer communication).

NetBIOS' standardized set of function calls establishes and uses
"sessions" (logical connections between the server and a node),
sends "datagrams" (raw data transmitted in a general broadcast),
and maintains a dynamic, centralized list of names for devices
attached to the network.  These names are hardware-independent.


How Does NetBIOS Specify Network Addresses?

In NetBIOS, a name is used as a network address.  NetBIOS names
are programmatically added and may be up to 15 characters long.
There is a permanent node name (usually the adapter address) and
up to 16 other names.  In a 3+ environment, the Locator program
acts as a "name service" for NetBIOS applications by mapping
NetBIOS names to real addresses, such as Ethernet addresses.

3+ software uses the Xerox XNS Clearinghouse facility to name
users or objects and to assign the properties (for example,
access rights) for each name.  Names may describe groups or
individuals.  The name format is Name:Domain:Organization.

This enables users to log into the network from any netstation,
because their names are not tied to a specific hardware address.


Examples of NetBIOS Applications

NetBIOS enables an application to establish a session with
another device and lets the network redirector and transaction
protocols pass a request to and from another machine.  NetBIOS
does not actually manipulate the data.

An example of a NetBIOS-based network redirector is Microsoft's
MSREDIR.  Microsoft also developed "server message blocks" (SMBs)
to act as transaction protocols.   MSREDIR takes standard DOS-
based application requests for files and printers and uses SMBs
to pass the requests via NetBIOS sessions, redirecting them to
network resources.  At the Application and Presentation levels of
the seven-layer OSI model, SMBs access, open, close, and
manipulate the files, directories, or printers connected to
servers in the network.

3Com uses MSREDIR and SMBs in its network management software,
3+.  MSREDIR makes a NetBIOS call to set up a session with a
server.  In the call, the 3+ driver LGL maps the NetBIOS name to
the real XNS address, transparently to NetBIOS.

3+ has two versions of NetBIOS:  NETBIOS.EXE and NB.EXE.
NETBIOS.EXE is a full implementation of the NetBIOS standard and
enables complex applications like gateways to be run on the
netstation.  NB.EXE is a smaller version of NetBIOS with just
enough functionality for 3+ and MSREDIR to work on netstations
that will not be running any other NetBIOS applications.
