前言:中文期刊網精心挑選了數據通信范文供你參考和學習,希望我們的參考范文能激發你的文章創作靈感,歡迎閱讀。
數據通信范文1
所謂的分組交換,指的是將用戶發過來的報文的整體分成若干個定長的數據段,然后將這些分好的數據段進行存儲,在網內進行傳輸。每一個數據段也就是一個分組,每一個分組都標識著接收地址和發送的地址。同時不同的用戶的分組數據都采用的動態傳輸,也就是同一條路徑可以有不同的用戶在進行分組傳送,因此,這種方式的傳輸效率較高。
二、數據通信的應用及發展前景
(一)移動數據通信在業務上的應用
1.移動數據通信的應用是利用移動通信的系統進行數據通信,它不僅可以作為固定的數據通信,還能夠實現移動的圖文傳真、計算機聯網、遠距離傳輸等。由于移動數據的通信設備具有個性化的特點,因此數據傳輸的時候往往會由于一個網絡端口會被人們多次使用,所以會經常出現擁堵的情況,由此便造成了多個連接終端不順利進數據傳輸。但是移動數據通信就不會出現這種情況,我們只需要根據正常的程序進行,一個終端只負責一個用戶,提高了數據傳輸的效率。除此之外,移動數據通信還能夠實現電腦與電腦之間的遠程操作和簡單的數據傳送,這樣就利于人們在業務頻繁的時候,可以隨時隨地的進行數據傳輸,從而達到省時高效的目的。由此可以發現,移動數據的通信可以使用戶及時的收發消息。
2.幀中繼技術應用。所謂的幀中繼應用,主要是指使用光纖作為主要的傳輸方式,由于幀中繼由于具有出錯率低的技術特點,從而受到了人們的廣泛關注。目前為止,這種技術被作為主要的寬帶數據接口,也是交換數據的一種手段。但是這種方式不適用語音或者是視頻這類傳輸,其具有特定的服務特性。
(二)數據通信的發展前景
數據通信范文2
關鍵詞:cdma移動通信系統
1引言
目前,世界上關于移動數據通信系統的研究和開發工作正在如火如荼地進行。全球移動數據通信網絡運營商已超過50家,各發達國家和各大電信運營商、制造商都開始致力于移動數據通信業務的發展。未來移動數據通信業務將呈現多樣化發展的特點。在第二代gsm和cdma網絡向第三代網絡演進的過程中,目前研發與應用主要集中在使用無線信道進行高速數據傳輸上,最引人注目的就是數據技術的引入和發展。如gsm網絡通過采用gprs技術,數據最高速率可達115kbps,cdma網絡演進到cdma20001x階段時數據速率可達144kbps,而馬上開始商用的第三代移動通信系統imt-2000,最高速率可達2mbps,預計以后可達10~20mbps,歐洲正在研發155mbps的未來移動通信系統。2002年12月9日,由中國大唐公司自主研發的符合td-scdma標準的第三代移動通信設備和終端一次性通過了第二階段52項指標的測試(以數據業務為主)。2003年1月9日,中國聯通的cdma20001x網絡在上海測試完畢,現已在多個大中城市正式對用戶開通。
當前,雖然通用的cdma移動數據通信系統、設備和終端的研究和開發很多,但針對配電自動化、交通監控與信息、銀行卡服務、工業數據采集、環境檢測等具體應用、獨立研發的基于cdma公用移動通信網絡的移動數據通信系統還不多見。
以移動數據通信業務的高速發展和聯通cdma20001x網絡建成為契機,在廣泛了解國內外移動數據通信研發和應用現狀、深入研究相關數據通信技術的基礎上,本文提出了一種"基于cdma網絡的移運數據通信系統"。
2系統特點
(1)成本低廉、尤其在通信網絡的規模比較大時更為明顯:
首先是建設投資小,網絡建設中省去了大量的組網投資;其次是維護、運行費用低,網絡運行過程中只需承擔少量的終端維護費用;雖然需要支付一些數據通信使用費,但就目前的資費水平和網絡規模估算,單就運行和維護費用一項的節省就足以對其進行補償。
(2)網絡組建的靈活性和方便性:
由于網絡的基礎設施已經十分完善,通信系統的組建只需要考慮中心站和布點的問題。在布點時可以充分地享受無線網絡帶來的地點選擇上的自由性和移動通信網絡的較全面的覆蓋范圍。在大部分地區,基本上可以不考慮布點的限制,甚至支持可移動的站點。對于復雜、易變,站點位置經常性變化的網絡(城市改造、用戶變更等),無線網絡布點不受限制這一點更表現出它的優越性。
(3)地域范圍和網絡密度的適應性:
目前,cdma移動網的基站在城市中的密度大,而在鄉村中則相對較小,正好滿足在城市通信終端數量大、密度高而在鄉村數量少、密度小的要求。因此,基于cdma網絡的移動數據通信系統在地域范圍和網絡密度方面沒有問題。
(4)數據業務適應性:
目前的cdma移動網絡能支持多種豐富多彩的數據通信業務,因此基于cdma網絡的移動數據通信系統完全能滿足各種數據應用對通信的要求。
數據通信范文3
1通信系統傳輸手段
電纜通信:雙絞線、同軸電纜等。市話和長途通信。調制方式:SSB/FDM?;谕S的PCM時分多路數字基帶傳輸技術。光纖將逐漸取代同軸。
微波中繼通信:比較同軸,易架設、投資小、周期短。模擬電話微波通信主要采用SSB/FM/FDM調制,通信容量6000路/頻道。數字微波采用BPSK、QPSK及QAM調制技術。采用64QAM、256QAM等多電平調制技術提高微波通信容量,可在40M頻道內傳送1920~7680路PCM數字電話。
光纖通信:光纖通信是利用激光在光纖中長距離傳輸的特性進行的,具有通信容量大、通信距離長及抗干擾性強的特點。目前用于本地、長途、干線傳輸,并逐漸發展用戶光纖通信網。目前基于長波激光器和單模光纖,每路光纖通話路數超過萬門,光纖本身的通信纖力非常巨大。幾十年來,光纖通信技術發展迅速,并有各種設備應用,接入設備、光電轉換設備、傳輸設備、交換設備、網絡設備等。光纖通信設備有光電轉換單元和數字信號處理單元兩部分組成。
衛星通信:通信距離遠、傳輸容量大、覆蓋面積大、不受地域限制及高可靠性。目前,成熟技術使用模擬調制、頻分多路及頻分多址。數字衛星通信采用數字調制、時分多路及時分多址。
移動通信:GSM、CDMA。數字移動通信關鍵技術:調制技術、糾錯編碼和數字話音編碼。
2數據通信的構成原理
數據終端(DTE)有分組型終端(PT)和非分組型終端(NPT)兩大類。分組型終端有計算機、數字傳真機、智能用戶電報終端(TeLetex)、用戶分組裝拆設備(PAD)、用戶分組交換機、專用電話交換機(PABX)、可視圖文接入設備(VAP)、局域網(LAN)等各種專用終端設備;非分組型終端有個人計算機終端、可視圖文終端、用戶電報終端等各種專用終端。數據電路由傳輸信道和數據電路終端設備(DCE)組成,如果傳輸信道為模擬信道,DCE通常就是調制解調器(MODEM),它的作用是進行模擬信號和數字信號的轉換;如果傳輸信道為數字信道,DCE的作用是實現信號碼型與電平的轉換,以及線路接續控制等。傳輸信道除有模擬和數字的區分外,還有有線信道與無線信道、專用線路與交換網線路之分。交換網線路要通過呼叫過程建立連接,通信結束后再拆除;專線連接由于是固定連接就無需上述的呼叫建立與拆線過程。計算機系統中的通信控制器用于管理與數據終端相連接的所有通信線路。中央處理器用來處理由數據終端設備輸入的數據。
3數據通信的分類
3.1有線數據通信
數字數據網(DDN)。數字數據網由用戶環路、DDN節點、數字信道和網絡控制管理中心組成。DDN是利用光纖或數字微波、衛星等數字信道和數字交叉復用設備組成的數字數據傳輸網。也可以說DDN是把數據通信技術、數字通信技術、光遷通信技術以及數字交叉連接技術結合在一起的數字通信網絡。數字信道應包括用戶到網絡的連接線路,即用戶環路的傳輸也應該是數字的,但實際上也有普通電纜和雙絞線,但傳輸質量不如前。
分組交換網。分組交換網(PSPDN)是以CCITTX.25建議為基礎的,所以又稱為X.25網。它是采用存儲——轉發方式,將用戶送來的報文分成具用一定長度的數據段,并在每個數據段上加上控制信息,構成一個帶有地址的分組組合群體,在網上傳輸。分組交換網最突出的優點是在一條電路上同時可開放多條虛通路,為多個用戶同時使用,網絡具有動態路由選擇功能和先進的誤碼檢錯功能,但網絡性能較差。
幀中繼網。幀中繼網絡通常由幀中繼存取設備、幀中繼交換設備和公共幀中繼服務網3部分組成。幀中繼網是從分組交換技術發展起來的。幀中繼技術是把不同長度的用戶數據組均包封在較大的幀中繼幀內,加上尋址和控制信息后在網上傳輸。
3.2無線數據通信
無線數據通信也稱移動數據通信,它是在有線數據通信的基礎上發展起來的。有線數據通信依賴于有線傳輸,因此只適合于固定終端與計算機或計算機之間的通信。而移動數據通信是通過無線電波的傳播來傳送數據的,因而有可能實現移動狀態下的移動通信。狹義地說,移動數據通信就是計算機間或計算機與人之間的無線通信。它通過與有線數據網互聯,把有線數據網路的應用擴展到移動和便攜用戶。
4網絡及其協議
4.1計算機網絡
計算機網絡(ComputerNetwork),就是通過光纜、雙絞電話線或有、無線信道將兩臺以上計算機互聯的集合。通過網絡各用戶可實現網絡資源共享,如文檔、程序、打印機和調制解調器等。計算機網絡按地理位置劃分,可分為網際網、廣域網、城域網、和局域網四種。Internet是世界上最大的網際網;廣域網一般指連接一個國家內各個地區的網絡。廣域網一般分布距離在100-1000公里之間;城域網又稱為都市網,它的覆蓋范圍一般為一個城市,方圓不超過10-100公里;局域網的地理分布則相對較小,如一棟建筑物,或一個單位、一所學校,甚至一個大房間等。
局域網是目前使用最多的計算機網絡,一個單位可使用多個局域網,如財務部門使用局域網來管理財務帳目,勞動人事部門使用局域網來管理人事檔案、各種人才信息等等。
4.2網絡協議
網絡協議是兩臺計算機之間進行網絡對話所使用的語言,網絡協議很多,有面向字符的協議、面向比特的協議,還有面向字節計數的協議,但最常用的是TCP/IP協議。它適用于由許多LAN組成的大型網絡和不需要路由選擇的小型網絡。TCP/IP協議的特點是具有開放體系結構,并且非常容易管理。
TCP/IP實際上是一種標準網絡協議,是有關協議的集合,它包括傳輸控制協議(TransportControlProtocol)和因特網協議(InternetProtocol)。TCP協議用于在應用程序之間傳送數據,IP協議用于在程序與主機之間傳送數據。由于TCP/IP具有跨平臺性,現已成為Internet的標準連接協議。網絡協議分為如下四層:網絡接口層:負責接收和發送物理幀;網絡層:負責相鄰節點之間的通信;傳輸層:負責起點到終端的通信;應用層:提供諸如文件傳輸、電子郵件等應用程序要把數據以TCP/IP協議方式從一臺計算機傳送到另一臺計算機,數據需經過上述四層通信軟件的處理才能在物理網絡中傳輸。
目前的IP協議是由32位二進制數組成的,如202.0.96.133就表示連接到因特網上的計算機使用的IP地址,在整個因特網上IP地址是唯一的。
數據通信范文4
【關鍵詞】數據通信 結構分析 發展探討
近年來, 數據通信技術在我國各行各業中的應用逐漸擴大, 數據通信是通信技術和計算機技術相結合而產生的一種新的通信方式。新時期的歷史生產管理形式已經逐漸向著自動化、數字化、信息化和智能化的方向發展。因此,可以預測,數據通信技術的發展前景非常廣闊。
1、數據通信的構成環節及其交換形式的分析
為了促進數據通信工程的穩定發展,我們首先要進行其構成原理的分析,促進其數據終端的有效分類,實現對其非分組型終端及其分組型終端的有效應用,確保整體運作環節的優化,確保工程的綜合效益的提升。
在此過程中,我們要進行分組型終端系統的健全,實現對其計算機環節、相關用戶分組交換機、用戶分組裝拆設備環節的有效應用,確保其各個環節的終端設備的有效應用。為了滿足數據通信工程的綜合效益的提升,我們也要進行非分組型終端系統的應用,確保其個人計算機終端環節及其其他專用終端環節的優化,促進其數據通信模式的深化,確保其電路交換環節及其相關信息傳輸環節的優化,確保其相關信息的共享。
為了滿足實際工作的需要,我們也要進行其報文交換環節的優化,確保相關交換機的存儲器的有效應用,確保其相關電路環節的優化,確保其交換機環節及其終端環節的有效應用,確保其方式環節的優化,確保其電路的利用效率及其中繼線利用效率的提升,確保其分組交換環節及其相關環節的優化,確保其網內傳輸系統的健全。
在實際工作中,我們要進行其報文交換形式的應用環節分析,確保其對相關數據通信模式的深化應用,確保其分組交換環節等的發展。
該模式自身的優點是非常多的,具備一系列的電路交換的優勢,及其報文交換模式的優勢,滿足了實際工作的需要。它適用于對話式的計算機通信,如數據庫檢索、圖文信息存取、電子郵件傳遞和計算機間通信等各方面,傳輸質量高、成本較低,并可在不同速 率終端間通信。其缺點是不適宜于實時性要求高、信息量很大的業務使用。
2、數據通信分類環節的分析
為了滿足數據通信工程的發展需要,我們要進行其相關種類的分析,促進其有線數據通信環節的優化,確保其相關光纖及其數字微波的有效應用,確保其相關數字數據傳輸網絡的健全,確保其DDN 系統的健全,通過對其光纖通信技術、數據通信技術及其數字交叉連接技術的有效應用,確保其數字通信網絡的健全,我們也要進行其分組交換網系統的健全。又稱為X.25 網,將用戶送來的報文分成具用一定長度的數據段,并在每個數據段上加上控制信息,構成一個帶有地址的分組合群體,在網上傳輸。幀中繼網是從分組交換技術發展起來的。幀中繼技術是把不同長度的用戶數據組均包封在較大的幀中繼幀內,加上尋址和控制信息后在網上傳輸。
數據通信工程的穩定發展,離不開對其統計復用技術環節的優化,這一模式實現了對網絡資源的有效應用,確保其相關信息流的共享,確保其網絡資源的利用效率的提升。在此過程中,通過對其虛電路技術的有效應用,滿足用戶的數據信息工作的穩定發展,促進其相關環節的帶寬的有效分配,促進其分組動態分配性的提升,實現對一系列的突發性業務的質量效率的提升,確保其交換功能的提升,滿足了實際工作的需要。幀中繼通常的幀長度比分組交換長,達到1024-4096 字節/ 幀,因而其吞吐量非常高,其所提供的速率為2048Mbit/s。幀中繼沒有采用存儲_ 轉發功能,因而具有與快速分組交換相同的一些優點。其時延小于15ms。無線數據通信也稱移動數據通信,它是在有線數據通信的基礎上發展起來的。有線數據通信依賴于有線傳輸,因此只適合于固定終端與計算機或計算機之間的通信。
3、數據通信網絡及其相關環節的分析
3.1 數據通信工程的穩定發展,離不開對其計算機網絡系統的優化。
通過對其光纜環節、及其計算機環節等的應用,確保其計算機通信網絡的健全,確保其網絡資源的有效共享,實現對打印機、相關程序的有效共享,通過對其局域網的應用,確保其工作環節的優化。如財務部門使用局域網來管理財務帳目,勞動人事部門使用局域網來管理人事檔案、各種人才信息,公安刑偵部門使用局域網來管理犯罪信息系統、交警部門使用局域網來管理機動車輛、駕駛員信息等等。
網絡協議的定義并不復雜,它是計算機之間進行網絡對話的語言模式,它的種類是非常多的,其網絡協議數量也是比較的,比如其面向比特的協議等但最常用的是TCP/IP協議。它適用于由許多LAN 組成的大型網絡和不需要路由選擇的小型網絡。TCP/IP 協議的特點是具有開放體系結構,并且非常容易管理。
3.2 我們也要進行數字數據電路應用范圍的分析,其包括一系列的各種專用網、公用數據交換網及其可視圖文系統等,這一系列的環節。
這一系列模式的應用,滿足了其數據信道環節的運行的需要,滿足了其相關網絡系統的健全,滿足了實際數據通信工作的發展需要。利用DDN 實現大用戶局域網聯網;如我區各專業銀行、教育、科研以及自治區公安廳與城市公安局的局域網互聯等。提供租用線,讓大用戶自己組建專用數字數據傳輸網;使用DDN 作為集中操作維護的傳輸手段。
為了滿足數據信息工作的發展需要,我們要進行其分組交換網絡的有效應用,確保其相關電路業務環節的優化,確保其相關通信平臺的有效應用,確保其相關增值數據業務的穩定運行。確保其電子信箱系統的健全,滿足實際工作的需要。在分組交換網平臺上用戶把需發送的信息以規定的格式送入電子信箱的存儲空間,由電子信箱系統處理和傳輸后,送到接收用戶的電子信箱并通知收信人。電子數據交換是計算機、通信和現代管理技術相結合的產物,又被稱為“無紙貿易”。
4、數據通信的發展前景
數據通信技術在我國中的應用前景非常廣闊, 應用范圍也將逐漸擴大?,F階段,數據通信已成為當今通信發展的一種主導性力量,實現數字化、綜合化以及寬帶化、智能化的連接,各種大量信息源的信息高速公路將是通信網絡發展的重要方向。尤其是隨著數據、圖像、話音等各種類型的數據通信在各個層次以及各個領域中的綜合性利用, 將會是數據通信未來發展的美好前景。展望未來數據通信技術的發展,很多的因素將會使數據業務保持持續的高需求以及高增長。比如,傳統的電信業務向IP 網的轉移方面會實現快速的發展,在其中最為明顯的將是IP 電話,近些年來,IP 電話的使用率在不斷提高,尤其是隨著軟交換等技術的發展, 會進一步加快這種轉移的速度;隨著寬帶接入技術的不斷普及與應用,在家中上班、電子商務以及遠程醫療、教學等將會得到更快的發展,不斷滿足人們的需求。此外,隨著下一代網絡的出現以及發展將會帶動更多的需求, 目前依然處于初始階段的機對機的應用也將會逐漸趨向成熟。
以后網絡通信技術的發展還得看人們的根本需求" 網絡通信技術的發展必將更適宜社會發展的需求,滿足人們的要求,使用更方便,安全性更高"網絡通信技術的發展是一個社會發展的必然產物, 任何事物都不能阻礙其發展的步伐"當然,作為網絡通信技術面臨很大的挑戰, 需要我們大家不懈的努力,以實現他的發展目標"
參考文獻
[1]馮景瑜,盧光躍,包志強.認知無線電安全研究綜述[J].西安郵電學院學報,2012(02)
數據通信范文5
關鍵詞:多線程技術;數據通信;OSI模型
引言
進行數據通信軟件的系統設計期間,在進行通信的過程中,因為硬件設備和遠程裝置存在一定的不足之處,在指令發出直到指令結束以后,在開始一端以及終端將會出現一定的延時問題。作為數據鏈路層的一個主要方面,需要在設計中的軟件應該能夠延遲,根據過去對于通信系統的常規設置,例如軟件是在現實中進行工作的,根據格式同步周期對通信系統的性能有很大的影響。這樣的問題需要什么方式去處理呢?鑒于此,我們就需要進行編程,并設定和使用一個比價合適的技術手段,也就是多線程技術,來保障通信系統的正常運行。
1.多線程技術模型的適用場合
(1)在用戶輸入自己的用戶名時應該有一個主程序循環體系來保障相應的操作,不過這個體系并不只為數據而生;(2)使用一個相關用戶的使用模式;(3)出具一個主要的模式來保障用戶輸入時主程序可以進行迅速反應并進行相應的應對。這些條件的任何組合都能夠通過多線程技術編程的思想方式進行相應的處理。由于在程序中有很多不同的線程,因此把這個系統稱作多線程。主循環當(且僅當)相關用戶進行操作時才能夠做出反應,同樣應該對于相應模塊問題加以解決。這個體系是基于多線程技術的用戶輸入而設計的。
2.數據通信和多線程技術系統
眾所周知,在OSI堆棧結構的協議里,相關物理層被視為底層,而物理層又在數據進行相應的傳播過程中起著主要的作用,頂層是應用層,主要體現在用戶界面。實際的計算機上的物理層負責將數據傳輸到終端。傳輸完相應的數據,物理層需要進行一定時間內的守候,需要等從數據鏈路層接收過來的指令,也能夠是從對等層獲取數據。物理層無法拒絕這些實際的個體。總的來說,物理層在多線程技術下工作。這對于任何層都是成立的。所有既定的N層,在不同的給定時間內,都需要接收頂部或下一級的命令/響應。盡量不要讓另一層同時工作。系統也需要以這種形式滿足不同的需求。
3.多線程技術系統的數據通信設計
3.1多線程技術的通信設計中關鍵關鍵編程
(1)主循環——一般情況下也能夠被稱為主事件循環,也就是其在接受以及傳輸的過程中所遇事件。這樣的體系還包括調度方面的能力;(2)也就是主事件體系,是使用不同形式對于主循環進行事件的傳輸;(3)進行接收的體系,也能夠被稱作數據處理器,這是主事件在進行循環的過程中進行相應的告知的主要事件;(4)在主事件的循環過程中能夠使用相應的監管方式的體系,這個體系中不同的EVENTHANDLER均能夠進行主事件的循環。
3.2線程技術編程框架設計
(1)scheduler——對于主事件循環的完美闡釋。scheduler表明時間處理程序是現實的,其所監視的事件也是現實存在的;相反,scheduler在產生相應的事件期間需要使用相應的解決辦法。(2)eventHandler——為在系統中的不同事件進行相應設計的主要標準eventHandler使用經常使用的接口SetEven(),將scheduler給予eventHandler所監控到的事件。在相應的接口中出現了回調函數CheckEven()以及Event-Callback(),對scheduler進行上報的不同事件加以核實。(3)inputHandler——這是eventHandler類的的其中的分支,在文件的輸入上運用廣泛。這樣的類中能夠產生不同的類,然后進行相應的函數重寫EventCallback()在給出的相應設計中產生相應的設定。(4)timerHandler---為eventHandler類的其中一個類,在定時器的相應處理上頗有建樹。這樣一個類能夠不斷的衍生出不同的類,然后進行函數的重寫Event-Callback(),對于超過世間的定時器給予相應的操作。各類主要操作如下:(1)SetInput(),為inputHandler,這個函數接受一個指向fd-set的相應體系并將其表示的文件代替另一位。(2)SetTimeout(),為timerHandler,這個函數接受一個指向timeval結構的指針,將定時器上的相應時間設置好。(3)InputReadCallback(),使用這個方式并且把輸入方面的問題加以解決。(4)CheckInput(),為inputHandler,使用select將一個指令加以返回fd_set的結構,然后核實是否相同進行調整。它使用InputReadyCallback()取處理所有的輸入。(5)TimeoutCallback(),為timerHandler,在超過相應的時間時進行解決。(6)CheckTimeout(),為timerHandler,將其交給timeval的結構里目前存在的數字,然后核實有無超市情形,如果有的話,就要進行TimeoutCallback。這種配置管理系統的設計,使用比較超前的國際水準,確保了這一系統和與其一樣的互連和互操作標準系統。再進行相應的系統設計時需要使用相應的現實中的設計形式,使之能夠達到預期。
4.結束語
在電信網絡進程中主要遵循的標準是其在運營過程中需要完善的主要問題,使用相應的接口來保障網絡以及交易的不斷發展,運用相應的接口形式來保證網絡技術持續發展并能夠達到所需要的標準。在后期的電信網絡管理運營期間需要不斷進行發展和完善,文章從管理功能出發對于電信管理以及電信網絡設計進行了具體的描述和分析,找出了目前電信網絡將要不斷發展的目標和努力的方向。不過,同樣的,也以管理功能的角度對于目前使用的管理網絡以及相關理念給予相應的建議。
參考文獻:
[1]張松梅編.C++語言教程[M].成都:電子科技大學出版社,2015
[2]胡谷雨.當代網絡以及計算機相關設計[M].電子工業出版社,2016
數據通信范文6
在設計數據通信軟件系統的過程中,由于硬件需要與遠程設備進行通信,因此從在通信信道的一端發出命令開始,到收方從通信信道的另一端返回的最終響應為止,必然會出現一個時間上的延遲。
由于時間延遲,如我們仍按以往的習慣實現系統,程序中必然有圖1所示的類似的一個循環。數據通信軟件系統。按以往的習慣實現必然包含有類似的一個小程序,它接受用戶的輸入進行處理并產生輸出結果。戶的輸入而被掛起,也即程序將無限期地等待下去,直到用戶提供了輸入為止。一旦用戶提供輸入就會得到處理,并產生相應的輸出,系統仍舊返回去等待新的輸入。
而作為實現數據鏈路層的一部分,要求軟件在設計上應該能夠相應地進行延時等待,如按以往的習慣實現的通信系統,整個軟件實際上是按一種同步格式進行工作的,同步循環的產生極大地影響了通信系統的性能。如何解決這個問題?為此我們必須重新選擇編程模型,用一個更為恰當的術語——多線程技術,以適應數據通信系統實際需要。
1多線程技術模型的適用場合
假如有一個系統,它的功能上等同于一個同步系統,但是在設計上,程序不應無限期地去等待用戶輸入。在設計上必須考慮下列內容:
有一個主程序循環等待用戶輸入的發生,但這個循環并不是專門為等待某個輸入數據;
提供一個處理用戶輸入的模塊;
提供一套機制,使得當發生用戶輸入時,主程序循環能及時通知處理輸入的模塊。凡是復合上述條件的,均可用多線程技術編程的思想加以解決。圖2所示的為一個多線程技術模型。主循環負責從用戶界面接收用戶輸入事件,并負責通知需要處理這個事件的相應模塊。
這種系統之所以被稱為多線程技術,是因為程序中存在著多個線程(圖中的虛線)。主循環當(且僅當)發生用戶輸入時才作出響應,并負責通知適當的輸入處理模塊。整個系統是按照多線程技術的用戶輸入這一實質來進行設計的。
從圖2中我們看到,即使其中的一個用戶從不響應,則系統也能夠處理另一個用戶的輸入。經過上述轉變,主程序循環可以完全負責調度管理,這其中包括了優先級和數據沖突方面的內容。按照模塊化風格來進行設計,增加額外的用戶時主程序循環就不必發生變化,只需要復制一個用戶界面模塊和一個輸入處理模塊。在了解了軟件系統中的同步和多線程技術操作不同特點后,我們接下來探討,本系統的數據通信設計應該用什么模型進行,選用同步模型編程還是多線程技術模型編程?
2數據通信和多線程技術系統
我們知道在OSI棧式結構的一組協議中,最低層的是物理層,它負責實際的數據傳輸;而頂層的是一些應用層,負責與用戶接口。在本地計算機上的物理層負責把數據傳送到通信鏈路另一端的對等層上。傳送完數據之后,物理層應該處于一種等待狀態,等待接收從上面的數據鏈路層發來的命令,或是從對等層傳來的數據。物理層不能因為服務于這兩個實體中的一個而拒絕另一個。因此在本質上說,物理層是工作于多線程技術模式下。圖3中說明這種操作對于任何層來說都是適用的。給定的任何一層N,在任何一個時刻,都應該能接收來自上層或下層的命令/響應。盡可能不要在為某一層提供服務的同時而把另一層排斥在外。我們的系統也應該按照這種方式進行設計,使其能很好地滿足這些要求。
3多線程技術系統的數據通信設計
通過上述探討,我們已經了解,本數據通信的設計其本質上也是多線程技術模型。為詳細說明有關多線程技術系統的設計框架,下面以一數據通信系統為例,并深入闡述其多線程技術模式編程的框架。
3.1數據通信系統中多線程技術編程要素
我們在數據通信系統中多線程技術編程時所掌握的要素如下:
主循環——通常也叫做主事件循環,因為它負責接收和傳送事件.這個模塊同時還肩負著調度的功能;
為主循環產生事件的模塊,或者說是以某種方式向主循環通知事件;
接收通知的模塊,主事件循環通知它所發生的事件。這個模塊可以稱為“數據處理器”;
一種使主事件循環能夠知道所有它需要監視的事件的機制。這樣,每個EVENTHANDLER就可以分別通知主事件循環,它需要哪些事件。圖4中顯示了一個多線程技術編程的模型,整個多線程技術編程的框架模型可以看成由一個主事件循環、OS事件發生器、事件處理器、回調和事件注冊機制構成的。
3.2線程技術編程框架設計
這里我們著重介紹一組類的設計,這組類構成此數據通信多線程技術模式編程的框架如下。
scheduler——該類實現了主事件循環。事件處理程序要向scheduler聲明它們的存在,以及它們所要監視的事件;而反過來,scheduler在事件發生時要通知事件處理程序。
eventHandler——這是我們系統中所有事件處理程序的基類eventHandler有一個通用的接口SetEven(),這使得scheduler可以知道每個給定的eventHandler實例所監視的是什么事件。接口中還提供了通用的回調函數CheckEven()和Event-Callback(),對scheduler所報告的各種事件進行必要的處理。
inputHandler——這是eventHandler類的一個子類,它提供對文件上輸入的各種處理功能。從這個類可以繼承派生出其他的類,并重寫函數EventCallback()當給定文件上的輸入就緒時執行某種特定的操作。
timerHandler---這是eventHandler類的一個子類,它提供對定時器的各種處理功能。從這個類可以繼續派生出其他的類,并重寫函數Event-Callback(),對發生超時的定時器的定時器采取特定的操作。各類主要操作如下。
SetInput(),屬于inputHandler,這個函數接受一個指向fd-set結構的指針,把代表它的文件描述符的那一位,置1.
SetTimeout(),屬于timerHandler,這個函數接受一個指向timeval結構的指針,并設置該定時器在超時前所需的時間。
InputReadCallback(),屬于inputHandler,這個函數對輸入進行處理。
CheckInput(),屬于inputHandler,這個函數接受一個指向由select返回的指向fd_set結構的指針,并檢查它的文件描述符上是否有數據準備好輸入。它調用InputReadyCallback()取處理所有的輸入。
TimeoutCallback(),屬于timerHandler,這個函數對超時進行處理。
CheckTimeout(),屬于timerHandler,這個函數對比傳遞給它的timeval結構中的當前時間的值,并確定是否已經超時,如果已經超時,它就調用TimeoutCallback.用多線程技術編程模型設計的此數據通信類定義如下,此類的層次結構和相互關系如圖5所示。(如UNIX環境等),輔以人工編碼,經過編譯、測試就可獲得一實用系統。這樣設計出的配置管理系統,由于采用了先進的國際標準,保證了本系統與其它采用相同標準系統的互連和互操作。系統模型設計采用了功能實體設計,這樣便于實現和維護。