電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>通信網(wǎng)絡(luò)>基于Net-BIOS協(xié)議的網(wǎng)絡(luò)通信設(shè)計方案解析

基于Net-BIOS協(xié)議的網(wǎng)絡(luò)通信設(shè)計方案解析

2017-10-27 | rar | 0.3 MB | 次下載 | 1積分

資料介紹

1 引言
  在有文件服務(wù)器存在的計算機(jī)網(wǎng)絡(luò)系統(tǒng)中,要實現(xiàn)PC機(jī)之間的通信信息交換,一般是由一個工作站把信息寫入文件服務(wù)器,然后由另一個工作站去讀取,這是工作站之間信息交換的一種方式,但不是最佳、最方便的方式。因為使用文件服務(wù)器,速度慢、需占用硬盤空間,還要經(jīng)常對文件系統(tǒng)進(jìn)行維護(hù)、管理等等。而且用戶對文件系統(tǒng)的訪問權(quán)也受到權(quán)限等因素的限制,更重要的是服務(wù)器的存在,提高了網(wǎng)絡(luò)系統(tǒng)的成本及造價。所以,在很多情況下采用Net-BIOS支持下的PC機(jī)之間直接通信則更為簡捷、經(jīng)濟(jì)。
  2 數(shù)據(jù)通信與NetBIOS協(xié)議
  數(shù)據(jù)通信通常包含以下幾項內(nèi)容:
  一 是連接的建立和拆除。即在計算機(jī)網(wǎng)絡(luò)通信中,為使源主機(jī)與目標(biāo)主機(jī)進(jìn)行通
  信,通常通信前先在它們之間建立連接,即建立一條由源主機(jī)到目標(biāo)主機(jī)的通信線路,在通信結(jié)束時拆除已建立的連接。
  二 是數(shù)據(jù)傳送控制。也就是在通信雙方建立起連接之后,利用該連接傳送用戶數(shù)
  據(jù)。另外還有錯誤的檢測及處理等。
  NetBIOS(NETWORK BASICINPUT/OUTPUTSYSTEM)網(wǎng)絡(luò)基本輸入/輸出系統(tǒng),是一種用于計算機(jī)之間進(jìn)行通信的專用程序,是計算機(jī)網(wǎng)絡(luò)通信中的重要協(xié)議之一。它支持TCP/IP、MAP/TOP、IEEE和OSI等協(xié)議,而且NetBIOS正迅速成為不同操作系統(tǒng)環(huán)境下普遍使用的編程平臺。NetBIOS基本概念包括NetBIOS名字、NetBIOS命令、NetBIOS通信方式等,下面分別給以說明。
  NetBIOS名字:NetBIOS是一種按名字工作的系統(tǒng),每個網(wǎng)絡(luò)工作站都有一個名字。由NetBIOS保留一張名字表,每個名字由16字符組成,在進(jìn)行通信時,信息的源地址和目的地址都是用名字來表示的。
  NetBIOS命令:NetBIOS的功能是由一系列命令完成的。NetBIOS命令返回方式有兩種WAIT和NO_WAIT。前者要等到命令完成之后,才返回你的程序,后者則立即返回你的程序,并帶回“立即返回代碼”,待命令執(zhí)行完時又返回一個“最終返回代碼”。
  NetBIOS通信方式:NetBIOS有兩種通信方式,即數(shù)據(jù)報通信方式和會話通信方式。數(shù)據(jù)報通信是一種非面向連接的通信方式,每個數(shù)據(jù)報中的信息長度必須小于或等于512個字節(jié),而會話通信是一種面向連接的通信方式,信息長度限制在65535字節(jié)以內(nèi)。
  3 NetBIOS支持下的網(wǎng)絡(luò)通信系統(tǒng)的設(shè)計
  3.1正確選擇通信方式
  我們知道NetBIOS的通信方式有兩種,即數(shù)據(jù)報通信方式和會話通信方式。那么,在通信系統(tǒng)設(shè)計時究竟采用哪種通信方式呢?這要根據(jù)我們的實際情況,進(jìn)行具體分析。
  由于數(shù)據(jù)報通信時,把每一個報文作為一個獨(dú)立的數(shù)據(jù)報處理,即各個數(shù)據(jù)報之間相互獨(dú)立,單獨(dú)傳送,不用建立和拆除會話連接,所以簡單方便、通信速度快。但這種機(jī)制在通信過程中不檢測信息是否安全到達(dá)目的地,系統(tǒng)出現(xiàn)差錯時,無出錯提示信息,而且每個數(shù)據(jù)報信息長度受到512字節(jié)的限制,所以,數(shù)據(jù)報通信僅適用于待發(fā)送的信息是一系列互不相關(guān)的報文及一些簡單對話、小數(shù)據(jù)的場合。
  而會話通信方式是在通信之前先在發(fā)送方和接收方之間建立會話連接,然后進(jìn)行會話通信,在會話通信過程中,發(fā)出的所有報文都能正確無誤地送到目的地。如果發(fā)出的報文不止一個,那么通信協(xié)議將保證收到報文次序和發(fā)送報文次序一致。如果報文在傳送過程中發(fā)生差錯,通信協(xié)議會自動地進(jìn)行重發(fā),加以更正,并有出錯信息提示。最后,在送完報文之后撤除會話連接。
  由此可見,會話通信過程比較復(fù)雜,通信速度較慢,又通信中信息長度限制在65535字節(jié)以內(nèi),所以,會話通信適于點(diǎn)到點(diǎn)之間多次往復(fù)式對話、大數(shù)據(jù)場合。
  數(shù)據(jù)報通信方式和會話通信方式各自都有優(yōu)點(diǎn)和缺點(diǎn)。數(shù)據(jù)報方式適合于小批量的傳送數(shù)據(jù),可靠性不高,數(shù)據(jù)傳送時易發(fā)生錯誤或丟失,但它的傳送過程比較簡單,易于實現(xiàn),易于管理。會話方式可傳送的信息量大,可靠性高,但傳送過程比較復(fù)雜,在發(fā)送信息之前先要建立會話連接,信息傳送結(jié)束后要撤除會話連接,不易于管理。我們在具體設(shè)計通信系統(tǒng)時,要根據(jù)自己的實際情況、實際要求和實際傳送數(shù)據(jù)量的大小選擇合適的通信方式。若A工作站和B工作站之間以數(shù)據(jù)報文方式通信,步驟如下:
  工作站A 工作站B
  a增加名字A 增加名字B
  b發(fā)送報文給B 接收
  c接收 發(fā)送報文給A
  d刪除名字A 刪除名字B
  若A工作站和B工作站之間以會話方式通信,步驟如下:
  工作站A 工作站B
  a增加名字A 增加名字B
  bListen Call A站
  c發(fā)送報文給B 接收報文
  d接收報文 發(fā)送報文給A
  eHang up B站 Hang up A站
  f刪除名字A 刪除名字B
  3.2正確選擇NetBIOS命令的返回方式
  NetBIOS命令的返回方式有WAIT(等待)和NO_WAIT(非等待)兩種方式。如果采用WAIT方式,則要等到NetBIOS命令完成之后才返回你的程序。如果采用NO_WAIT方式,那么又可以有兩種選擇:一種是采用輪詢方法,即反復(fù)查詢網(wǎng)絡(luò)控制塊(NCB)中的最終返回代碼字段,當(dāng)它的值從FF變?yōu)?0時,表示NetBIOS命令完成,返回用戶程序。另一種是將一個POST程序的地址告訴NetBIOS,使NetBIOS在完成命令時喚醒該程序,執(zhí)行一個指定的程序段。這兩種方法都是在后臺進(jìn)行的,它們的主要差別在于對網(wǎng)負(fù)荷的影響。例如,A站發(fā)出一命令,要求B站執(zhí)行一項較費(fèi)時的任務(wù),如果A站采用NO_WAIT的輪詢方法,不斷地詢問對方是否完成任務(wù),這樣會大大地增加網(wǎng)絡(luò)負(fù)荷,這時盡管輪詢比較容易編程,那也不是一種好的選擇。我們在通信系統(tǒng)設(shè)計時,要綜合各種因素,選擇合適的NetBIOS命令返回方式。
  3.3分組長度的限制及差錯和超時
  數(shù)據(jù)報通信,每個報文長度上限為512字節(jié)。會話通信中,每個報文長度上限為65535字節(jié)。那么,當(dāng)我們要傳送的數(shù)據(jù)信息大小超過所規(guī)定的限制值時怎么辦呢?這時可采用分組處理的辦法,按照規(guī)定的信息長度限制,將數(shù)據(jù)分為若干段,對每一段進(jìn)行一次發(fā)送,在接收端再把它們裝配起來復(fù)原。另一種方法是依照信息長度限制規(guī)定來設(shè)計一個數(shù)據(jù)記錄的格式,這樣每個報文都可安全發(fā)送。
  無論采用何種方式的通信,通信過程中差錯是不可避免的,所以差錯處理是必不可少的。當(dāng)出現(xiàn)差錯時,首先要根據(jù)差錯代碼確定差錯性質(zhì),并做出相應(yīng)處理,排除錯誤之后繼續(xù)執(zhí)行后面的命令。超時通常是指一個工作站向另一個工作站發(fā)出信息到收到對方應(yīng)答所需時間的超時時限。
  引起超時的因素很多,一般是因為網(wǎng)絡(luò)過于繁忙或接收站故障。
  3.4調(diào)用NetBIOS功能
  在編寫通信程序中,要調(diào)用一個Net-BIOS功能,必須首先構(gòu)造一個網(wǎng)絡(luò)控制塊,然后把網(wǎng)絡(luò)控制塊的地址寫入ES:BX中,作為指向該控制塊的遠(yuǎn)程地址指針,最后執(zhí)行5CH中斷,使NetBIOS自動進(jìn)入ES:BX指定的地址,讀網(wǎng)絡(luò)控制塊信息,從而得知有關(guān)操作信息。下面是網(wǎng)絡(luò)控制塊的格式及所對應(yīng)的結(jié)構(gòu)定義。
  4 NetBIOS支持下的網(wǎng)絡(luò)通信系統(tǒng)的實現(xiàn)
  作為NetBIOS支持下的網(wǎng)絡(luò)通信系統(tǒng)的實現(xiàn),我們以會話通信方式下雙機(jī)通信為例。
  4.1通信硬件環(huán)境要求
  兩臺獨(dú)立的PC機(jī)各自接有網(wǎng)卡,通過一根同軸電纜線將其相連。同軸電纜的兩端各接50Ω的匹配器,這樣就從物理上連通了兩臺PC機(jī)。
  4.2通信軟件環(huán)境要求
  DOS5.0以上版本啟動,同時磁盤上應(yīng)有以下文件:IPX.EXE網(wǎng)絡(luò)通信協(xié)議;NetBIOS協(xié)議支持用戶程序;TC高級語言環(huán)境,用以編寫用戶通信程序。
  基于Net-BIOS協(xié)議的網(wǎng)絡(luò)通信設(shè)計方案解析
  4.3通信程序
  要實現(xiàn)兩臺PC機(jī)間的雙機(jī)通信,必須編寫NetBIOS支持下的雙機(jī)通信程序,包括
  發(fā)送信息程序SEND.C和接收信息程序RECEIVE.C。其程序流程框圖如下:
  基于Net-BIOS協(xié)議的網(wǎng)絡(luò)通信設(shè)計方案解析
  程序略。
  這樣在兩臺PC機(jī)上分別執(zhí)行SEND程序和RECEIVE程序,就可將信息從A站(PC1機(jī))上傳送到B站(PC2機(jī))上,實現(xiàn)雙機(jī)通信。
  5 結(jié)束語
  實現(xiàn)NetBIOS支持下的計算機(jī)網(wǎng)絡(luò)通信,可使我們更加快速、方便、經(jīng)濟(jì)地進(jìn)行計算機(jī)間的數(shù)據(jù)傳送,以達(dá)到數(shù)據(jù)通信與資源共享的目的。通過網(wǎng)絡(luò)通信,一方面為特定環(huán)境下的用戶實現(xiàn)計算機(jī)間的數(shù)據(jù)傳送提供了重要的支持,另一方面也大大地提高了通信網(wǎng)絡(luò)的性能。
?
下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1純電動汽?的主要部件及?作原理
  2. 5.76 MB   |  11次下載  |  5 積分
  3. 2明偉電源模塊RSP-3000圖紙
  4. 0.30 MB   |  5次下載  |  免費(fèi)
  5. 3無鉛焊接的可靠性
  6. 1.03 MB   |  5次下載  |  1 積分
  7. 4800VA純正弦波逆變器的參考設(shè)計
  8. 2.96MB   |  3次下載  |  免費(fèi)
  9. 5PT500齒輪傳動動力學(xué)綜合測試實驗臺
  10. 0.16 MB   |  3次下載  |  免費(fèi)
  11. 6卓顯-體視顯微鏡-ZEX-075M
  12. 1.89 MB  |  1次下載  |  免費(fèi)
  13. 7SX1308應(yīng)用電路圖與SX1308升壓電路圖
  14. 0.18 MB   |  1次下載  |  免費(fèi)
  15. 8ADC參數(shù)單位換算
  16. 761.94KB   |  1次下載  |  免費(fèi)

本月

  1. 1ACDC變換器的原理圖免費(fèi)下載
  2. 0.26 MB   |  65次下載  |  免費(fèi)
  3. 2無刷電機(jī)控制方案設(shè)計合作
  4. 1.05 MB   |  22次下載  |  免費(fèi)
  5. 3美的超薄電磁爐TM-S1-09B主板原理圖
  6. 0.08 MB   |  20次下載  |  免費(fèi)
  7. 4純電動汽?的主要部件及?作原理
  8. 5.76 MB   |  11次下載  |  5 積分
  9. 5GP328和GP88S對講機(jī)的維修實列資料合集免費(fèi)下載
  10. 0.03 MB   |  10次下載  |  10 積分
  11. 6舒爾SLX4無線話筒接收機(jī)原理圖:二次變頻超外差部分
  12. 0.27 MB   |  8次下載  |  免費(fèi)
  13. 7IP5385_DEMO開發(fā)資料
  14. 1.96 MB   |  7次下載  |  2 積分
  15. 8i.MX Linux開發(fā)實戰(zhàn)指南—基于野火i.MX系列開發(fā)板
  16. 17.86 MB   |  6次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935115次下載  |  10 積分
  3. 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計
  4. 1.48MB  |  420061次下載  |  10 積分
  5. 3Altium DXP2002下載入口
  6. 未知  |  233084次下載  |  10 積分
  7. 4電路仿真軟件multisim 10.0免費(fèi)下載
  8. 340992  |  191363次下載  |  10 積分
  9. 5十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
  10. 158M  |  183329次下載  |  10 積分
  11. 6labview8.5下載
  12. 未知  |  81580次下載  |  10 積分
  13. 7Keil工具M(jìn)DK-Arm免費(fèi)下載
  14. 0.02 MB  |  73805次下載  |  10 積分
  15. 8LabVIEW 8.6下載
  16. 未知  |  65985次下載  |  10 積分