Revision as of 13:24, 9 May 2014 edit82.139.81.0 (talk) fix IPA← Previous edit | Revision as of 07:13, 1 August 2014 edit undo203.76.200.2 (talk) ←Replaced content with 'node'Tag: blankingNext edit → | ||
Line 1: | Line 1: | ||
node | |||
{{Redirect2|NetBEUI|NetBIOS Enhanced User Interface|specifically the protocol available in Microsoft Windows|NetBIOS Frames protocol| | |||
details|#NetBEUI}} | |||
{{no footnotes|date=August 2012}} | |||
<!-- The term "NetBEUI" is unusually problematic and actually does redirect here. Please, do not remove the hatnote without discussion. --> | |||
'''NetBIOS''' {{IPAc-en|ˈ|n|ɛ|t|b|ʌ|ɪ|.|ɒ|s}} is an acronym for '''Network Basic Input/Output System'''. It provides services related to the ] of the ] allowing applications on separate computers to communicate over a ]. As strictly an ], NetBIOS is not a ]. Older ]s{{clarify|date=June 2012|reason=relative time reference, WP:RELTIME}} ran NetBIOS over ] and ] using the ] (NBF) and ] (NBX) protocols, respectively. In modern networks, NetBIOS normally runs over ] via the ] (NBT) protocol. This results in each computer in the network having both an ] and a NetBIOS name corresponding to a (possibly different) host name. | |||
==History and terminology== | |||
NetBIOS was developed in 1983 by ]. as an ] for software communication over ] ] technology. On PC-Network, as an API alone, NetBIOS relied on proprietary Sytek networking protocols for communication over the wire. Because PC Network only supported up to 80 devices in its most accommodating mode (]), NetBIOS was itself designed with limited nodes in mind. | |||
{{anchor|NetBEUI}}In 1985, IBM went forward with the ] network scheme and a NetBIOS ] was produced to allow NetBIOS-aware applications from the PC-Network era to work over this new design. This emulator, named NetBIOS Extended User Interface (NetBEUI), expanded the base NetBIOS API with, among other things, the ability to deal with the greater node capacity of token ring. A new networking protocol, ], was simultaneously produced to allow NetBEUI (NetBIOS) to provide its services over token ring – specifically, at the ] ] layer. | |||
Also in 1985, ] created a NetBIOS implementation for its ] networking technology. As in the case of IBM's token ring, the services of Microsoft's NetBIOS implementation were provided over the IEEE 802.2 Logical Link Control layer by the ] protocol. | |||
In 1986, ] released Advanced ] 2.0 featuring the company's own NetBIOS emulator. Its services were encapsulated within NetWare's ] protocol using the ] (NBX) protocol. | |||
In 1987, a method of encapsulating NetBIOS in ] and ] packets, ] (NBT), was published. It was described in RFC 1001 ("Protocol Standard for a NetBIOS Service on a TCP/UDP Transport: Concepts and Methods") and RFC 1002 ("Protocol Standard for a NetBIOS Service on a TCP/UDP Transport: Detailed Specifications"). The NBT protocol was developed in order to "allow an implementation to be built on virtually any type of system where the TCP/IP protocol suite is available," and to "allow NetBIOS interoperation in the Internet." | |||
After the ] computer hit the market in 1987, IBM released the PC LAN Support Program, which included a driver for NetBIOS. | |||
Worth noting is the popular confusion between the names NetBIOS and NetBEUI. NetBEUI originated strictly as the ] for IBM's enhanced 1985 NetBIOS emulator for ]. The name NetBEUI should have died there, considering that at the time, the NetBIOS implementations by other companies were known simply as NetBIOS regardless of whether they incorporated the API extensions found in that emulator. For MS-Net, however, Microsoft elected to name its implementation of the ] protocol "NetBEUI" – literally naming its implementation of the transport protocol after IBM's second version of the API. Consequently, even today, Microsoft file and printer sharing over ] continues to be called NetBEUI, with the name NetBIOS commonly used only in reference to file and printer sharing over ]. In truth, the former is the ], and the latter is ]. | |||
Since its original publishing in a technical reference book from IBM, the NetBIOS API specification has become a ]. | |||
==Services== | |||
NetBIOS provides three distinct services: | |||
*Name service (NetBIOS-NS) for name registration and ]. | |||
*] distribution service (NetBIOS-DGM) for connectionless communication. | |||
*] service (NetBIOS-SSN) for ] communication. | |||
(Note: ], an upper layer, is a service that runs on top of the Session Service and the Datagram service, and is not to be confused as a necessary and integral part of NetBIOS itself. It can now run atop TCP with a small adaptation layer that adds a packet length to each SMB message; this is necessary because TCP only provides a byte-stream service with no notion of packet boundaries.) | |||
===Name service=== | |||
In order to start sessions or distribute datagrams, an application must register its NetBIOS name using the name service. NetBIOS names are 16 octets in length and vary based on the particular implementation. Frequently, the 16th octet, called the NetBIOS Suffix, designates the type of resource, and can be used to tell other applications what type of services the system offers. In ], the name service operates on UDP port 137 (TCP port 137 can also be used, but rarely is). | |||
The name service primitives offered by NetBIOS are: | |||
*Add name – registers a NetBIOS name. | |||
*Add group name – registers a NetBIOS "group" name. | |||
*Delete name – un-registers a NetBIOS name or group name. | |||
*Find name – looks up a NetBIOS name on the network. | |||
NetBIOS name resolution is not supported by Microsoft for ]. | |||
===Datagram distribution service=== | |||
Datagram mode is ]; the application is responsible for error detection and recovery. In ], the datagram service runs on UDP port 138. | |||
The datagram service primitives offered by NetBIOS are: | |||
*Send Datagram – send a datagram to a remote NetBIOS name. | |||
*Send Broadcast Datagram – send a datagram to all NetBIOS names on the network. | |||
*Receive Datagram – wait for a packet to arrive from a Send Datagram operation. | |||
*Receive Broadcast Datagram – wait for a packet to arrive from a Send Broadcast Datagram operation. | |||
===Session service=== | |||
Session mode lets two computers establish a connection, allows messages to span multiple packets, and provides error detection and recovery. In ], the session service runs on TCP port 139. | |||
The session service primitives offered by NetBIOS are: | |||
*Call – opens a session to a remote NetBIOS name. | |||
*Listen – listen for attempts to open a session to a NetBIOS name. | |||
*Hang Up – close a session. | |||
*Send – sends a packet to the computer on the other end of a session. | |||
*Send No Ack – like Send, but doesn't require an acknowledgment. | |||
*Receive – wait for a packet to arrive from a Send on the other end of a session. | |||
In the original protocol used to implement NetworkBIOS services on PC-Network, to establish a session, the initiating computer sends an Open request which is answered by an Open acknowledgment. The computer that started the session will then send a Session Request packet which will prompt either a Session Accept or Session Reject packet. | |||
During an established session, each transmitted packet is answered by either a positive-acknowledgment (ACK) or negative-acknowledgment (NAK) response. A NAK will prompt retransmission of the data. Sessions are closed by the non-initiating computer by sending a close request. The computer that started the session will reply with a close response which prompts the final session closed packet. | |||
==NetBIOS name vs Internet host name== | |||
When NetBIOS is run in conjunction with ]s (e.g., NBT), each computer may have multiple names: one or more NetBIOS name service names and one or more Internet host names. | |||
===NetBIOS name=== | |||
The NetBIOS name is 16 ASCII characters, however Microsoft limits the host name to 15 characters and reserves the 16th character as a NetBIOS Suffix. This suffix describes the service or name record type such as host record, master browser record, or domain controller record. The host name (or short host name) is specified when Windows networking is installed/configured, the suffixes registered are determined by the individual services supplied by the host. In order to connect to a computer running TCP/IP via its NetBIOS name, the name must be resolved to a network address. Today this is usually an ] (the NetBIOS name to IP address resolution is often done by either broadcasts or a ] Server – NetBIOS Name Server). A computer's NetBIOS name is often the same as that computer's host name (see below), although truncated to 15 characters, but it may also be completely different. NetBIOS names are a sequence of alphanumeric characters. The hyphen ("-") and full-stop (".") characters may also be used in the NetBIOS name, but not as the first or last character. The Windows ] file provides a NetBIOS name resolution method that can be used for small networks that do not use a WINS server. | |||
===Internet host name=== | |||
A Windows machine's NetBIOS name is not to be confused with the computer's Internet host name. Generally a computer running Internet protocols (whether it is a Windows machine or not) has a host name (also sometimes called a machine name). Originally these names were stored in and provided by a ] but today most such names are part of the hierarchical ] (DNS). Generally the host name of a Windows computer is based on the NetBIOS name plus the Primary DNS Suffix, which are both set in the System Properties dialog box. | |||
There may also be connection-specific suffixes which can be viewed or changed on the DNS tab in Control Panel → Network → TCP/IP → Advanced Properties. Host names are used by ] such as ], ], ]s, etc. To connect to a computer running the TCP/IP protocol using its name, the host name must be resolved into an ], typically by a DNS server. | |||
==Node types== | |||
The '''node type''' of a networked ] relates to the way it resolves NetBIOS names to ]es. There are four node types. | |||
*B-node: 0x01 Broadcast | |||
*P-node: 0x02 Peer (WINS only) | |||
*M-node: 0x04 Mixed (broadcast, then WINS) | |||
*H-node: 0x08 Hybrid (WINS, then broadcast) | |||
The node type in use is displayed by opening a ] and typing ''ipconfig /all''. | |||
A ] computer registry may also be configured in such a way as to display "unknown" for the node type. | |||
==NetBIOS Suffixes== | |||
The NetBIOS Suffix, alternately called the NetBIOS End Character (endchar), is the 16th character of a NetBIOS name and indicates service type for the registered name. The number of record types is limited to 255; some commonly used values are: | |||
For unique names: | |||
*00: Workstation Service (workstation name) | |||
*03: ] | |||
*06: ] | |||
*20: ] (also called Host Record) | |||
*21: ] client | |||
*1B: ] Master ] – Primary Domain Controller for a domain | |||
*1D: Master Browser | |||
For group names: | |||
*00: Workstation Service (workgroup/domain name) | |||
*1C: ] for a domain (group record with up to 25 IP addresses) | |||
*1E: Browser Service Elections | |||
==See also== | |||
*] | |||
*] | |||
*] | |||
==References== | |||
*Haugdahl, J. Scott (1990). ''Inside NetBIOS''. Architecture Technology Corp. ISBN 99914-57-34-8 | |||
*Silberschatz, Abraham; Galvin, Peter Baer; Gagne, Greg (2004). ''Operating System Concepts''. (7th Ed.). John Wiley & Sons. ISBN 0-471-69466-5 | |||
*Meyers, Michael (2004). "Managing and Troubleshooting Networks". McGraw-Hill. ISBN 978-0-07-225665-9 | |||
*Tamara Dean. ''Network+ Guide to Networks'', pg. 206 (NetBEUI) | |||
==External links== | |||
* | |||
* (from the ] team, published under the ]) | |||
* | |||
* | |||
* – Microsoft Knowledge Base article describing list of NetBIOS Suffixes. | |||
*{{cite web |url=http://samba.anu.edu.au/cifs/docs/what-is-smb.html |title=Just what is SMB? |author=Richard Sharpe |date=8 October 2002 |accessdate=1 January 2012}} | |||
{{DEFAULTSORT:Netbios}} | |||
] |
Revision as of 07:13, 1 August 2014
node