计算机网络技术(二)——数据通信
摘要
一、數據通信的概念
-
數據通信是什么?
數據通信是相對于電話通信、廣播電視通信等傳統通信業務而言的,是在計算機出現后,通信與計算機相結合而產生的一種通信業務。 -
通信系統是什么?
把能實現信息傳輸的一切技術設備和傳輸媒質的集合稱為通信系統。 -
通信系統模型
通信系統的核心包括信源、發送設備、信道、接收設備和信宿5個部分,另外,通信過程中還有各種噪聲的干擾。
- 通信系統分類
通信系統可以分為模擬通信系統和數字通信系統兩大類,其區別在于信道中傳輸的是模擬信號還是數字信號。
模擬信號——信號的因變量完全隨連續消息的變化而變化的信號,自變量可以連續,也可以離散。
數字信號——因變量是離散的,自變量時間的取值也是離散的信號。
二、數據傳輸方式
2.1 按數據傳輸方向
- 單向通信(又稱單工通信)
即任何時間都只能有一個方向的通信,而沒有反方向的交互。 - 雙向交替通信(又稱半雙工通信)
即通信的雙方都可以發送信息,但雙方不能同時發送(或同時接收)。 - 雙向同時通信(又稱全雙工通信)
即通信雙方可以同時發送和接收信息。
2.2 按二進制數據傳輸的時空順序
- 并行通信
為一個字節的每一個bit(位)都設置一個傳輸通道,全部bit(位)同時進行傳送。 - 串行通信
為信息傳輸設置一條通道,數據的一個字節中每一個bit(位)依次在這條通道上傳輸。
2.3 按發送方和接收方對數據保持步調一致的措施
同步技術——指通信系統中實現收發兩端動作統一、保持收發步調一致的過程。常用數據傳輸的同步方式有異步式同步(簡稱異步)和同步式同步(簡稱同步)。通常所說的異步和同步本質上都屬于同步技術。兩者的區別在于發送端和接收端的時鐘是獨立的還是同步的。
- 異步通信
數據傳輸以字符為單位發送,在字符的開始與結束位置分布加了起始位與停止位,異步傳輸不需要在收發兩端傳輸時鐘信號。 - 同步通信
數據傳輸以數據塊為單位發送,塊前與塊后分別有起始與結束標志,且收發雙方有同步時鐘。
2.4 按傳輸的信號是否要經過調制
基帶信號——計算機作為信源所發出的原始數據信號,即用固定的高低電平來表示二進制數字1或0
- 基帶傳輸
直接在信道中傳送基帶信號。 - 頻帶傳輸
利用基帶信號調制對應信道匹配的載波信號,然后把載波信號通過信道傳送出去。
對于數字基帶信號,主要有三種調制方法:
調幅(AM)、調頻(FM)、調相(PM)。
三、數據通信系統的性能
衡量數據通信系統的性能主要體現在系統的有效性和可靠性上。
有效性指標主要有帶寬、碼元速率、信息速率和頻帶利用率;
可靠性指標主要有信噪比和誤碼率。
對于模擬通信系統,其有效性用帶寬(包括信道帶寬和信號傳輸帶寬)評估;可靠性用接收端最終輸出有用信號的功率與噪聲功率的比值(簡稱噪聲比)來度量。
對于數字通信系統,有效性用傳輸速率和頻帶利用率來衡量,傳輸速率又包括碼元速率和信息速率。
-
碼元速率(又稱波特率)
表示每秒傳送的碼元數目(碼元——在數字系統中,通常用時間間隔相同的符合來表示一個離散值,這樣的時間間隔內的信號稱為碼元) -
信息速率(又稱比特率)
表示每秒傳送的二進制比特數 -
頻帶利用率
信道帶寬的占用情況。
數字通信系統的可靠性:
-
誤碼率
指接收到的錯誤碼元數在所傳輸的總碼元數中所占的比例 -
誤比特率
指接收到的錯誤比特數在所傳輸的總比特數中所占的比例
四、傳輸信道
信道——
信道是通信系統中連接發送端與接收端的通信設備,實現從發送端到接收端的信號傳送。信道分為廣義信道與狹義信道,狹義信道僅指傳輸介質;廣義信道包括信號傳輸介質和通信系統的一些變換裝置。研究通信的一般原理時采用廣義信道,研究信道的一般特性時,采用俠義信道,狹義信道又分為有線信道和無線信道。
-
有線信道
以導線為傳輸介質,信號沿導線進行傳輸。包括架空明線、雙絞線、同軸電纜、光纖等。 -
無線信道
利用電磁波在空間的傳播來傳輸信號。
五、數據通信中的編碼
數據編碼——計算機中存儲、處理和輸入/輸出的是用0和1表示的二進制數據。要把這些二進制數據序列轉成合適的電磁波信號才能在信道中進行傳輸,這種轉變過程稱為數據編碼。
不同的信道有不同傳輸特性,因此數據編碼有多種,根據將數據轉換為模擬信號還是數字信號,數據編碼方法可分為模擬數據編碼和數字數據編碼。
5.1 模擬數據編碼
在計算機出現前,有線電話網就已經存在了,電話網是為了傳輸語音信號設計的,只能傳輸音頻模擬信號,計算機網絡出現后,為了充分利用電話網信道,就需要將計算機發出的二進制數字信號轉換成能在電話網信道中傳輸的模擬信號。
調制(Modulation)—— 在發送端將數字信號變換成模擬信號的過程。
解調(Demodulation)—— 在接收端將模擬信號還原成數字信號的過程。
調制解調器(Modem)—— 能實現調制和解調功能的設備。
通常把能在模擬信道中傳輸的模擬信號稱為載波,其一般表達式為:
y(t)=Asin?(ωt+?)y(t) = A\sin(\omega t + \phi) y(t)=Asin(ωt+?)
其中,A是模擬信號的振幅,ω\omegaω是模擬信號的頻率,?\phi?是模擬信號的初始相位。調制的基本思想是通過載波信號的振幅、頻率和初始相位的變化來表示0和1,從而實現將數字信號變化為模擬信號。對應的調制方法分為振幅鍵控(ASK)、頻移鍵控(FSK)和相移鍵控(PSK)。
- 振幅鍵控(ASK)
通過改變載波信號的振幅來表示數字信號1和0。例如,用振幅為A表示數字1,振幅為0表示數字0,其數學表達式為:
y(t)={Asin?(ωt+?)數字10數字0y(t)=\left\{ \begin{aligned} A\sin(\omega t + \phi) && 數字 1 \\ 0 && 數字 0 \end{aligned} \right. y(t)={Asin(ωt+?)0??數字1數字0?
- 頻移鍵控(FSK)
通過改變載波信號的頻率來表示數字信號1和0。例如,用戶頻率ω1\omega_1ω1?表示數字1,用頻率ω2\omega_2ω2?表示數字0,其數學表達式為:
y(t)={Asin?(ω1t+?)數字1Asin?(ω2t+?)數字0y(t)=\left\{ \begin{aligned} A\sin(\omega_1 t + \phi) && 數字 1 \\ A\sin(\omega_2 t + \phi) && 數字 0 \end{aligned} \right. y(t)={Asin(ω1?t+?)Asin(ω2?t+?)??數字1數字0?
- 相移鍵控(PSK)
通過改變載波信號的初始相位來表示數字信號1和0。例如,用初始相位?=0\phi=0?=0表示數字1,用初始相位?=π\phi = \pi?=π表示數字0,其數學表達式為:
y(t)={Asin?(ω+0)數字1Asin?(ωt+π)數字0y(t)=\left\{ \begin{aligned} A\sin(\omega + 0) && 數字 1 \\ A\sin(\omega_t + \pi) && 數字 0 \end{aligned} \right. y(t)={Asin(ω+0)Asin(ωt?+π)??數字1數字0?
5.2 數字數據編碼
數字數據編碼是將原始的二進制數據變換成數字脈沖序列從而實現基帶傳輸的方法。常見的是利用矩形脈沖信號的幅值編碼二進制數字數據,包括單極不歸零碼(NRZ)、雙極不歸零碼、單極歸零碼(RZ)、雙極歸零碼、差分碼、雙相碼和多元碼等。
- 單極不歸零碼(Not Return to Zero,NRZ)
二進制數字0和1分別用零電平和正電平(或負電平)表示。脈沖幅值要么是正電平,要么是零電平,只有一個極性,故稱為 ”單極“;”不歸零“,是指整個脈沖持續時間內,電平保持不變,且脈沖持續期結束也不回歸0電平。不適合長距離傳輸,只用于計算機內部或計算機與外設之間短距離通信。
- 雙極不歸零碼
二進制數字0和1分別用負電平和正電平(或反過來)表示。在0和1等概率出現的情況下,不會產生直流分量,有利于在信道中傳輸,抗干擾能力強。
- 單極歸零碼(Return of Zero,RZ)
二進制數字0和1分別用零電平和正電平表示。與單極不歸零碼不同的是,在每個正脈沖持續期的中間時刻,電平要由正電平回到零電平。
- 雙極歸零碼
二進制數字0和1分別用負電平和正電平表示。與電極歸零碼相同,每個正、負脈沖周期的中間時刻,電平都要回到零電平。歸零碼(包括單極歸零碼和雙極歸零碼)均有利于時鐘信號的提取,便于同步。
- 差分碼
差分碼又稱為相對碼(與之對應的NRZ、RZ等稱為絕對碼),差分碼不是利用脈沖幅值的絕對電平來表示二進制數字0和1,而是利用電平的變化與否來表示信息。相鄰脈沖有電平跳變表示1,無跳變表示0。
- 雙相碼(Biphase Code)
又稱為曼徹斯特(Manchester)碼,雙相碼只有正、負兩種電平,每個比特持續時間的中間時刻要進行電平跳變,雙相碼就是利用該跳變編碼信息,正(高)電平跳到負(低)電平表示1,負電平跳到正電平表示0。
- 差分雙相碼(或差分曼徹斯特碼)
差分雙相碼的每個比特周期的中間時刻也要進行電平跳變,但該跳變僅用于同步,而利用每個比特開始處是否存在電平跳變來表示編碼信息。其中,開始處有跳變表示1,無跳變表示0。
- 多元碼
前幾種編碼都是將二進制數字符號映射為兩種脈沖幅值狀態,即利用兩種脈沖幅值狀態分別表示0和1,相當于二進制數據到二進制信號的映射。其實,也可以利用多脈沖幅值來表示二進制數據,即將二進制數據映射為多進制信號,這種編碼稱為多元碼,也稱為多電平碼。通常,多元碼將k個二進制數字符號(0或1)映射為 M=2kM =2^kM=2k個離散的脈沖幅值之一。下圖中,用4種脈沖幅值編碼二進制數據,每個脈沖幅值編碼為2個比特。多元碼每個脈沖傳輸的信息量要比前面幾種編碼量大,因此,易于實現高速數據傳輸。
5.3 模擬信號的數字編碼
在數據通信中,還有一類常用的編碼,其作用是將模擬信號轉換為數字信號。將模擬信號轉換為數字信號進行傳輸,需要經過3個步驟。
- 將模擬信號轉換為數字信號(A/D轉換)
- 將數字信號基帶傳輸或調制傳輸
- 將數字信號還原為模擬信號(D/A轉換)
其中,A/D轉換在信源編碼環節進行,要經過3個環節:抽樣、量化和編碼。
抽樣——以一定時間間隔采集模擬信號的瞬間值。
量化——根據某種規則將采樣得到的瞬間值用數值表示出來。
編碼——將量化得到的數值變換成一組二進制碼。
具體過程在此不做深入研究。
六、復用技術
在數據通信系統中,當需要在一條物理信道上進行多個信號的同時傳輸時,需要采用復用技術,比如電話系統的主干線中通常有成千上萬對用戶通話在同時進行。多路復用的目的就是充分利用信道資源,提供信道利用率,目前,數據通信系統中使用的多路復用技術主要有頻分復用、時分復用、波分復用和碼分復用等。其概念模型如下圖所示。
-
頻分多路復用(Frequency Division Multiplexing,FDM)
在頻域內將信道帶寬劃分為多個子信道,并利用載波調制技術,將原始信號調制到對應某個子信道的載波信號上,使得同時傳輸的多路信號在整個物理信道帶寬允許的范圍內頻譜不重疊,從而共用一個信道。 -
時分多路復用(Time Division Multiplexing,TDM)
將通信信道的傳輸信號在時域內劃分為多個等長的時隙,每路信號占用不同的時隙,在時域上互不重疊,使多路信號合用單一的通信信道,從而實現信道共享。
時分多路復用可以分為同步時分多路復用(STDM)和異步時分多路復用(ATDM)兩種。同步時分多路復用就是按照固定的順序把時隙分配給各路信號;為了提高設備利用率,可以為有大量數據要發送的用戶分配較多的時隙,發送數量少的分配較少的時隙,沒有數據的不分配,這種方法稱為異步時分多路復用。 -
波分多路復用(Wave Division Multiplexing,WDM)
其實質是一種頻分多路復用,只是由于在光纖通信中,光載波頻率很高,通常用光的波長來代替頻率,所以稱為波分多路復用。 -
碼分多路復用(Code Division Multiplexing,CDM)
通過利用更長的相互正交的碼組分別編碼各路原始信息的每個碼元,使得編碼后的信號在同一信道中混合傳輸,接收端利用碼組的正交性分離各路信號,從而實現信道共享。
七、差錯控制技術
差錯控制——通過信道編碼技術實現對信息傳輸差錯的檢測,并基于某種機制進行差錯糾正或處理,提高傳輸的可靠性。
7.1 差錯控制的基本方式
常見的差錯控制方式有4種:檢錯重發、前向糾錯、反饋校驗和檢錯丟棄。
- 檢錯重發
在檢錯重發方式中,發送端對發送數據進行差錯編碼,編碼后的數據通過信道傳輸,接收端利用差錯編碼檢測數據是否出錯,對于出錯的數據,接收端自動請求發送端重發該數據加以糾正,直到接收端收到正確的數據為止。因此,檢錯重發方式也稱為自動請求重傳方式(ARQ)。典型的ARQ包括3種形式:停止-等待ARQ、回退N步(GBN,Go-Back-N)ARQ和選擇性重傳ARQ。
(1) 停止等待ARQ
經過差錯編碼的數據包發送完成后,發送方等待接收方的接收狀態反饋確認,如果接收方正確接收到數據包(即差錯檢測無誤),則向發送方發送正確接收確認ACK,發送方繼續發送后續數據包;如果接收方檢測數據包有錯,則丟棄該數據包,并向發送方發送差錯反饋(接收失敗)NAK,發送方重傳剛剛發送的數據包。
(2)回退N步(GBN)ARQ
發送方可以連續發送多個數據包,每個數據包要確保有唯一的編號;接收方在接收到數據包后利用差錯編碼進行差錯檢測,對于五差錯的數據包進行正確接收,丟棄檢測出差錯的數據包,并進行差錯反饋,發送NAKn,其中n為發生錯誤數據包的編號。當發送NAKn后,接收方暫停接收后續的數據包(即丟棄所有后續到達的數據包,無論正確與否)直到收到重新發送并正確到達的NAKn為止,再繼續接收數據包。發送方在收到NAKn時,要重新發送n號數據包及其后續的數據包(無論是否已經發送過)。發送方相當于要退回若干步重新發送數據包,因此得名回退N步ARQ。
(3)選擇性重傳ARQ
發送方也可以連續發送多個數據包,每個數據包也要保證有唯一的編號;接收方對于按順序正確到達(即無差錯)的數據包進行正常接收,對于差錯數據包進行丟棄并發送NAKn進行差錯反饋,對于n號數據包之后正確到達的數據包進行緩存,直到收到重發的、正確的n號數據包,再依次順序接收(或提交)。發送方在收到NAKn時,只需重新發送n號數據包,即選擇性重傳。
-
前向糾錯(Forword Error Correction,FEC)
發送端首先對數據進行糾錯編碼,然后發送包含糾錯編碼信息的數據包,接收端收到數據包后利用糾錯編碼進行差錯檢測,對于發生錯誤的數據包直接進行糾錯。 -
反饋校驗
接收端將收到的數據原封不動地發回發送端,發送端通過對比接收端反饋的數據與發送的數據,可以確認接收端是否正確無誤地接收了已發送的數據。如果發送端發現不同,則認為接收端沒有正確接收到發送的數據,則立即重新發送數據,直到收到接收端反饋的數據與已發送數據一致為止。 -
檢錯丟棄
不同通信系統對可靠性的要求不同,某些通信系統(如實時多媒體播報系統)可以采用一種簡單的差錯控制策略,不糾正出錯的數據,而是直接丟棄錯誤數據。
7.2 差錯編碼
差錯編碼是通過在數據信息上附加差錯編碼冗余信息,實現對數據傳輸過程中的差錯檢測或糾正。差錯編碼提高了數據傳輸的可靠性,但降低了有效數據傳輸效率。
差錯編碼根據編碼原理、功能和實現技術可以分為不同的類型。
1)按照差錯編碼的檢錯/糾錯能力劃分
- 檢錯碼——只能檢錯,不能定位錯誤位置
- 糾錯碼——可以檢測錯誤,同時可以確定差錯位置,并加以糾正
2)按照數據信息與差錯編碼冗余信息之間的構成關系
- 線性碼——差錯編碼冗余信息與數據信息之間滿足線性關系
- 非線性碼——差錯編碼冗余信息與數據信息之間不滿足線性關系
3)按照差錯冗余信息與數據信息分組映射關系
可以分為分組碼和卷積碼
4)按照數據信息在編碼后是否發生變化
- 系統碼——編碼后的數據信息保持不變
- 非系統碼——編碼后的數據信息可能發生變化
5)按照差錯編碼檢錯/糾錯類型的不同
分為隨機錯誤檢測/糾正碼和突發錯誤檢測/糾正碼
八、交換技術
數據交換是多結點的通信網絡中實現數據傳輸的有效手段,常見的數據交換方式有:電路交換(Circuit Switching)方式和存儲-轉發(Store-Forward)方式兩大類,其中存儲-轉發方式又可分為報文交換(Message Switching)和分組交換(Packet Switching)兩種方式。
-
電路交換
通過中間交換結點在兩個通信設備之間建立一條專用的通信線路。利用電路交換進行通信包括建立電路、傳輸數據和拆除電路3個階段。
電路交換的特點:
有連接的,在通信時需要先建立電路連接,在通信過程中獨占一個信道,通信結束后拆除電路連接。
優點:
實時性高,時延和時延抖動都較小。
缺點:
信道利用率低,且傳輸速率單一。 -
報文交換
發送方把要發送的信息附加上發、收主機的地址及其他控制信息,構成一個完整的報文(Message)。然后以報文為單位在交換網絡的各結點之間以存儲-轉發的方式發送,直至送達目的主機。
優點:
事先不需要建立連接;只在發送時占用信道,線路利用率高。
缺點:
交換結點需要緩沖存儲,報文需要排隊,導致時延變長,存在被丟棄風險。 -
分組交換
分組交換是報文交換的一種改進,它將一個完整報文拆分成若干個分組,每個分組分別傳輸。
優點:
大大降低對網絡結點存儲容量的要求;處理速度更快,降低了傳輸延遲;提高了傳輸速率;降低了傳輸的出錯概率。
缺點:
對報文的拆分和組裝,增加了報文的處理時間
分組交換方式還可以分為兩種類型:
數據報(Datagram)分組交換和虛電路(Virtual Circuit)分組交換。
它們的差別在于是按照主機目的地對分組進行路由選擇還是按照虛電路號對分組進行路由選擇。
總結
-
介紹了數據通信的5個核心要素:信源、發送設備、傳輸媒質、接收設備和信宿
-
數據通信的多種傳輸方式
-
通信系統的有效性和可靠性
-
有線信道和無線信道
-
數據編碼方式:模擬數據編碼和數字數據編碼
-
信號傳輸復用技術:時分復用、頻分復用、波分復用和碼分復用
-
通過信道編碼實現在信息層面的差錯檢測與糾正
-
數據交換的多種方式:電路交換、存儲-轉發、報文交換和分組交換
luckluckluck
總結
以上是生活随笔為你收集整理的计算机网络技术(二)——数据通信的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 电脑热点怎么开,教你win7开启热点教程
- 下一篇: C语言 PRIu64 宏