NETBIOS与WinSock的区别

windows 下,网络通信的技术有 netbios 编程,重定向器、邮槽和管道, Winsock 编程以及 WinInet API 等。下面简单的介绍一下 netbios winsock 编程技术。[@more@]

NETBIOS

网络基本输入/输出系统(Network Basic Input/Output System,NetBIOS)是一种标准的应用程序编程接口(API)。对应于OSI模型,NetBIOS主要在会话和传输层发挥作用。NetBIOS API实施方案适用于为数众多的网络协议,使得编程接口“与协议无关”。NetBIOS API中的两个主要的概念是LANA编号和NetBIOS名。LANA编号对应于物理网卡和传输协议的唯一组合NetBIOS名长度16个字符,其中第16个字符作为特殊用途保留下来。在Win32环境下,针对每个可用的LANA号,每个进程都会为其维持一张NetBIOS名字表。若为LANA 0增添一个名字,意味着应用程序只能在LANA 0上同客户端建立连接。另外,NetBIOS名分为唯一名字和组名两种类型。NetBIOS同时提供了“面向连接”服务以及“无连接”服务。有了上面的概念,我们来看看NetBIOS API的设置,只有一个函数:UCHAR Netbios(PNCB Pncb);其中PNCB是指网络控制块的指针,该网络控制块包含了Netbios命令和所需的参数。

2 WINSOCK

在为通信双方开发应用程序的情况下,套接字是相当有用的。可以说网络通信的基石是套接字,一个套接字是通信的一端。在WINDOWS系统中进行编程时,总是需要使用很多系统提供的应用程序接口来调用系统功能,或者与系统交互,在WINDOWS系统中专门针对网络编程的接口——WinSock API。该接口包含了一组网络I/0和获取网络信息的库函数,这些函数均需要套接字作为一个参数。实际上,一个套接字包含了本地协议端口,本地主机地址,远地协议端口,远地主机地址,协议这5种信息,是网络通信中的一个端点的抽象。WINSOCK规范不仅包含了人们所熟悉的Berkeley Socket风格的库函数,也包含了一组针对windows的扩展库函数,以使程序员能充分的利用windows消息驱动机制进行编程。

3 两种技术的比较

这两种编程接口各有优缺点,下面是对它们的一个比较:

² Netbios编程接口简单易学,Winsock编程接口较多。

² 这两种编程接口在标示应用程序时所采用的方法不同,Netbios采用Netbios+lana号,winsock采用套接字。

² Netbios被更多的协议支持,也就是所谓的与协议无关,而winsock只能在tcp/ip上面运行。

Netbios适用于一个网段内通信,不能跨越网段通信,而winsock可以,适合整个网络通信。

NetBIOS和winsock是编程接口,供开发人员使用。而tcp/ip,ipx/spx,NetBEUI等是网络协议。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/22151076/viewspace-1039371/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/22151076/viewspace-1039371/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值