NetBIOS協(xié)議的會話、數(shù)據(jù)報以及范圍
前面我們分析了NetBIOS協(xié)議的基本概念,以及和NetBEUI的區(qū)別。讓我們了解了不少相關(guān)的內(nèi)容。那么接下來。我們再來對NetBIOS協(xié)議更具體的內(nèi)容進(jìn)行一下介紹。包括NetBIOS會話,數(shù)據(jù)包以及系統(tǒng)等方面的講解。
NetBIOS會話
NetBIOS會話服務(wù)提供給用戶程序一種面向連接,可靠的,完全雙重的信息服務(wù)。NetBIOS要求一個是客戶端程序,一個是服務(wù)器端程序。NetBIOS會話的建立需要雙方預(yù)定的合作。一個程序必須先發(fā)出listen命令,其他程序才可以發(fā)出call令。listen命令參考在它的NetBIOS名稱表中的名稱(或windows服務(wù)器中的),也參考用于作為會話另一端的遠(yuǎn)端程序的名稱。如果聆聽者不在聆聽,call命令將不會成功。如果call成功,各程序?qū)⒔拥綍抜d,以作為會話建立的確認(rèn)。
send和receive命令操作傳輸數(shù)據(jù)。在會話***,各程序?qū)?zhí)行掛起命令。沒有為會話服務(wù)的實(shí)際流控制,因為假定局域網(wǎng)足夠快,能夠傳輸需要的數(shù)據(jù)。
NetBIOS數(shù)據(jù)報
數(shù)據(jù)報可以發(fā)送到特定的地點(diǎn),或組中所有成員,或廣播到整個局域網(wǎng)。與其它數(shù)據(jù)服務(wù)相比,NetBIOS數(shù)據(jù)報是無連接,非可靠的。Send_Datagram命令需要調(diào)用者設(shè)定目的名。如果目的名是組名,組中每個成員都收到數(shù)據(jù)。Receive_Datagram命令的調(diào)用者必須確定它接收數(shù)據(jù)的本地名。除了實(shí)際數(shù)據(jù)外,Receive_Datagram也返回發(fā)送者的名稱。如果NetBIOS收到數(shù)據(jù),但卻沒有Receive_Datagram命令在等待,數(shù)據(jù)將被丟棄。
Send_Broadcast_Datagram命令發(fā)送信息給本地網(wǎng)上每個NetBIOS協(xié)議系統(tǒng)。當(dāng)NetBIOS節(jié)點(diǎn)收到廣播數(shù)據(jù),發(fā)布Receive_Broadcast_Datagram命令的每個進(jìn)程都收到數(shù)據(jù)。如果當(dāng)廣播數(shù)據(jù)被收到時,沒有這些命令在運(yùn)行,數(shù)據(jù)將被丟棄。
NetBIOS使應(yīng)用程序能和另一個設(shè)備建立會話,使網(wǎng)絡(luò)轉(zhuǎn)發(fā)器和處理協(xié)議處理收到、發(fā)送到另一臺機(jī)器的請求。NetBIOS實(shí)際上不操作數(shù)據(jù)。NetBIOS定義規(guī)定了用來到達(dá)這些服務(wù)的協(xié)議的網(wǎng)絡(luò)接口,而非協(xié)議本身。歷史上,NetBIOS曾與叫做NetBEUI的協(xié)議(網(wǎng)絡(luò)擴(kuò)展用戶接口)捆綁。接口和協(xié)議的結(jié)合有時引起混淆,但它們是不同的。
網(wǎng)絡(luò)協(xié)議為定位、連接到網(wǎng)絡(luò)上特定的服務(wù)提供至少一種方法。這通常由將節(jié)點(diǎn)和服務(wù)名轉(zhuǎn)化為網(wǎng)絡(luò)地址(名稱解析)完成。在連接用TCP/IP建立前,NetBIOS服務(wù)名必須解析成IP地址。大多數(shù)NetBIOS的TCP/IP實(shí)現(xiàn),用廣播或LMHOSTS文件完成名稱地址的解析。在Microsoft環(huán)境中,你最可能使用叫做WINS的NetBIOS名稱服務(wù)器。
NetBEUI解釋
NetBEUI是網(wǎng)絡(luò)操作系統(tǒng)使用NetBIOS協(xié)議的加強(qiáng)版本。它規(guī)范了在NetBIOS中未標(biāo)準(zhǔn)化的傳輸幀,還加了額外的功能。傳輸層驅(qū)動器經(jīng)常被MicrosoftsLANManager(微軟局域網(wǎng)操作器)使用。NetBEUI執(zhí)行OSILLC2協(xié)議。NetBEUI是原始的PC網(wǎng)絡(luò)協(xié)議和IBM為LanManger(局域網(wǎng)操作器)服務(wù)器設(shè)計的接口。本協(xié)議稍后被微軟采用作為它們的網(wǎng)絡(luò)產(chǎn)品的標(biāo)準(zhǔn)。它規(guī)定了高層軟件通過NetBIOS幀協(xié)議發(fā)送、接收信息的方法。本協(xié)議運(yùn)行在標(biāo)準(zhǔn)802.2數(shù)據(jù)鏈協(xié)議層上。
NetBIOS范圍
NetBIOS范圍ID為建立在TCP/IP(叫做NBT)模塊上的NetBIOS提供額外的命名服務(wù)。NetBIOS范圍ID的主要目的是隔離單個網(wǎng)絡(luò)上的NetBIOS通信和那些有相同NetBIOS范圍ID的節(jié)點(diǎn)。NetBIOS范圍ID是附加在NetBIOS名稱上的字符串。兩個主機(jī)上的NetBIOS協(xié)議范圍ID必須匹配,否則兩主機(jī)無法通信。NetBIOS范圍ID允許計算機(jī)使用相同的計算機(jī)名,不同的范圍ID。范圍ID是NetBIOS名稱的一部分,使名稱唯一。