序言
本文檔旨在給出在NetBIOS網絡上傳輸ip數據報的具有兼容性和互操作性的實現方法。
NetBIOS標準描述了創建虛擬電路并發送和接收點對點、多點傳送和廣播數據報的一種
方法。本規范僅用了數據報服務。
本備忘錄的前期版本使用NetBIOS廣播數據報服務代替NetBIOS組名服務實現IP廣
播。現在這些版本已經作廢。
說明
NetBIOS網絡可以用以支持任何類型的IP網絡及子網絡[3]。通過將IP數據報封裝在
NetBIOS內并將IP地址映射到NetBIOS網絡中的主機上,基于IP的應用就可在這些主機上
運行。加上能將IP數據報同樣封裝在數據鏈協議(例如802.3[4])中的路由器,這些主機
就可以在互聯網上進行一般性通信。
地址映射
一般說來,NetBIOS名可以是一個任何16比特(二進制數),然而,少量數值被用做保
留值或被公用網絡包使用。每個主機上IP應用的NetBIOS名由該主機的因特網地址決定。
由于NetBIOS名是IP地址的映射,因此不需要物理地址查詢機制(例如ARP[5])。
對于這些IP應用,IP.XX.XX.XX.XX就是任一承載IP的NetBIOS主機的名稱,其中,
XX代表IP地址十六進制ascii表示法的相應字節。
這種定址方案考慮到了NetBIOS上的標準數據報協議的多路復用問題和給定包地址正
確性的快捷判定。
廣播和多點傳送取址
Internet廣播地址用NetBIOS組名IP.FF.FF.FF.FF表示。目前為止,還沒有嘗試利用
NetBIOS組名提供對IP多點傳送的支持。
最大傳輸單元
NetBIOS數據報的最大長度為512字節,因而NetBIOS網絡上承載的IP最大傳輸單元
也為512字節。所以,任何與NetBIOS網絡上的主機通信的主機都應能夠重組分段數據報。
實現
要在NetBIOS主機上支持任意地址IP,初始化代碼必須:
1)將IP.XX.XX.XX.XX加入主機的NetBIOS名稱表。
2)將IP.FF.FF.FF.FF加入主機的NetBIOS組名表。
3)為接收目標為IP.XX.XX.XX.XX的NetBIOS數據報發出收數據報請求。
4)為接收目標為IP.FF.FF.FF.FF的NetBIOS數據報發出收數據報請求。
假如收到發往任一地址的NetBIOS數據報,交由協議棧處理,并發出另一個收數據報請
求。
假如一個IP數據報被發出,它將被作為NetBIOS數據報的數據并經由一個發數據報請
求發往IP.XX.XX.XX.XX或IP.FF.FF.FF.FF中的任一地址。
另外,IP軟件可能會發出對NetBIOS網絡適配器狀態的查詢。隨著對SNMP的支持成為
對IP主機的要求,這些適配器狀態查詢可能是必不可少的。
最后,當一個給定的NetBIOS主機的IP支持終止時,對每個未到的接收數據報發出一
個撤消命令請求,并對所有在初始化時加入的諸如IP.XX.XX.XX.XX和IP.FF.FF.FF.FF的
地址發出一個名稱刪除請求。
致謝
感謝JohnBartas,JamesDavidson,和DanLadermann。沒有他們此前在設計和實現
NetBIOS承載IP的努力,就沒有本文。
參考資料
[1]Postel,J.,"Internet
[2]IBMPCNetworkTechnicalReference,DocumentNumber6322916,
September1984.
[3]Mogul,J.,andJ.Postel,"InternetStandardSubnetting
Procedure",RFC-950,August1985.
[4]Postel,J.,andJ.Reynolds,"AStandardfortheTransmission
ofIPdatagramsoverIEEE802Networks",RFC-1042,
February1988.
[5]Plummer,D.,"AnEthernetAddressResolutionProtocol",
RFC-826,November1982.
作者地址:
LeoJ.McLaughlinIII
TheWollongongGroup
1129SanantonioRoad
PaloAlto,CA94303
Phone:(415)962-7100
EMail:ljm@TWG.COM
新聞熱點
疑難解答