浅谈NETBIOS

文章目录

  • 前言
  • 一、netbios是什么?
    • 1、历史
    • 2、被设计的目的
  • 二、从技术上理解NetBIOS
  • 三、现在的NetBIOS的一些具体应用
    • 服务
    • 使用场景
  • 总结


前言

这段时间,我在学习的时候总看到NetBIOS的身影,不知道是什么,但感觉很厉害的样子。所有今天打算着重学习一下,简单地了解一下这是个什么玩意。

一、netbios是什么?

1、历史

要了解一个东西,从它是如何诞生的开始切入都是不错的

IBM在局域网中,为他们的大型主机开发了IBM系统网络架构(SNA)。但这套系统过于复杂,
不适用于个人计算机,IBM雇用了Sytek Inc,为他们开发新的IBM PC Network,
以适用于个人计算机组成的局域网。

1983年,Sytek Inc开发了一套软件API,使用在IBM PC Network局域网中。
NetBIOS(Network Basic Input/Output System,网络基本输入/输出系统)是Sytek Inc公司在1983年为IBM
 PC开发的一种应用程序编程接口(API)。它最初被设计用于使IBM PC和其他计算机之间能够进行通信。

1984年,IBM授权开放这套标准的API给外界使用,用来与IBM计算机进行网上链接。

1985年,IBM开发令牌环(token ring)网络,为了让旧有使用NetBIOS API的软件能在新的网络架构上
运作,创建了NetBIOS模拟器,这个模拟器被称为NetBIOS延伸用户界面
(NetBIOS Extended User Interface, NetBEUI),
扩展了原有的 NetBIOS API。同时,也制定了NetBIOS Frames协议,
让NetBEUI能够在token ring网络上提供服务,特别是在IEEE 802.2LLC层。

1986年,Novell发表NetWare2.0,将NetBIOS实现在其中。Novell让NetBIOS运作在IPX/SPX协议上,
提出了NetBIOS over IPX/SPX协议。

1987年,出现将NetBIOS封装为TCP与UDP数据包的技术,IETF随后发布RFC 1001与RFC 1002,
将它制定为标准,这套标准被称为NetBIOS over TCP/IP,简称为NBT。
在PS/2计算机上市之后,IBM发布了PC LAN支持程序,在其中包括了NetBIOS驱动程序。

2、被设计的目的

NetBIOS,为网上基本输入输出系统(英语:Network Basic Input/Output System)的缩写,它提供了OSI模型中的会话层服务,让在不同计算机上运行的不同程序,可以在局域网中,互相连线,以及分享数据。严格来说,NetBIOS不是一种网上协议,而是应用程序接口(API)。较古老的操作系统,使用IEEE 802.2与IPX/SPX协议,可以使用NetBIOS Frames协议或NetBIOS over IPX/SPX协议来运作。现代操作系统,多数都使用TCP/IP协议,则可透过NetBIOS over TCP/IP协议来相互通信

简单地说,所谓NetBIOS就是一个在会话层的API,该协议的目的就是让不同计算机(主要指Windows,Linux与unix可以通过额外安装软件来实现,但兼容性不理想)在局域网之中实现连接,得以分享数据。很多应用程序基于NetBIOS来实现计算机之间的通信。 其实就是提供了一个很好的统一实现通信的标准,只要按照这个标准编写程序,通过这个程序,计算机之间就能实现通信与数据的分享。

二、从技术上理解NetBIOS

NetBIOS说得更加具体一点就是,一组网络编程的API,同时支持可靠的面向连接与不可靠的无连接的通信。是不是有人感到了一些熟悉,如果了解socket网络编程的朋友应该就有一种会心一笑的感觉。
以下是NetBIOS简单的工作流程:

  1. 如果该服务器是面向连接的,那么它执行一个NetBIOS监听命令,以等待客户的连接请求到来。当客户被连接上以后,服务器执行 NetBIOS函数来发送和接收数据。
  2. 无连接的通信也类似,但服务器只是简单地读取消息,无须事先建立连接。

其实,NetBIOS可以算是socket网络编程的前辈(因为NetBIOS基本已经过时了,有更好的技术来代替它),从以上典型的流程就可以看出现在的socket有不少NetBIOS的影子。现在NetBIOS还存在的原因也只有为了兼容以前已经编写好的且还可以使用的程序。

三、现在的NetBIOS的一些具体应用

为什么是现在呢?因为现在的常见的NetBIOS基本指NetBIOS over tcp/ip,就是NetBIOS over tcp/ip(会话层)下面的网络层是用tcp/ip来实现的。另外,传统的NetBIOS使用NetBIOS Frames协议(NBF),是一种非路由网络协议(这个具体是什么我也不清楚,至少已经不多见了),位于传输层。

服务

NetBIOS(网络基本输入输出系统)提供了一组网络服务,包括名称服务(NBNS)、数据报服务(NBDS)和会话服务(NBSS)。这些服务在网络中扮演着重要的角色。

  1. 名称服务(NBNS):NBNS是NetBIOS基于TCP/IP的实现,它提供了将NetBIOS名称映射到IP地址的功能。这是一种动态DNS的实现,使得在局域网中通过NetBIOS名称来访问计算机成为可能。
  2. 数据报服务(NBDS):NBDS提供了无连接和面向广播的通信方式。它主要用于浏览列表通知,例如Windows中的“网上邻居”功能,以及用NET SEND *命令给计算机组发送消息等。
  3. 会话服务(NBSS):NBSS提供了面向连接的TCP协议通信方式,是文件和打印机共享服务的主要实现方式。它允许网络中的计算机之间进行经认证的进程间通信。
    这些服务使得在Windows系统中进行网络通信和资源共享变得更加方便和高效。

使用场景

  1. 文件共享:在Windows系统中,NetBIOS协议用于实现文件和打印机共享,允许多台计算机之间进行文件传输和打印服务。
  2. 网络打印:NetBIOS协议可以将计算机连接到网络中的打印机,实现网络打印功能。
  3. 远程登录:通过NetBIOS协议,用户可以在本地计算机上远程登录到另一台计算机,并对其进行操作。
  4. 网络管理:管理员可以使用NetBIOS协议远程管理其他计算机,监控它们的运行状态,并进行故障排除。

总结

今天我简单地了解了什么是NetBIOS(不涉及具体的技术),它是如何产生的以及其作用是什么。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值