Computer Network
lecture 3
Channel capacity — Shannon Hartley theorem
C = Blog2(1+S/N)
C : channel capacity (bps)
B : bandwidth of channel (hz)
S : average received power over bandwidth (w)
N : average power of the noise and interference over the bandwidth (w)
S/N : signal-to-noise rate (SNR)
要想增加C:B變大、S/N變大
S如何變大:傳輸功率增大、傳輸距離縮短、增加收發訊號天線
Encoding — 將二進位資料(0,1)進行編碼,以便傳輸
NRZ
1. 高電位表示“1”,而以低電位表示“0”。
2. 缺少同步的能力,無法提供較佳的訊號校正能力 。
3. baseline wander(基線漂移):
接收方以接收的訊號電位平均值作為區分高、低電位基準,當太多連續的“1”或“0”會使這個平均值發生改變,使得檢測信號中很難出現明顯的變化。
4. clock recovery(時鐘恢復):
當有電位變化產生會使收發端進行時中同步校正以確保編碼解碼的過程是同步的,若是有連續的“1”或“0”,會使電位長時間沒有這樣的變化就會導致時鐘漂移不變。
NRZI(1改變)
1. 資料是1->改變電位,資料是0->電位不變。
2. NRZI(0改變),反過來。
Get benben’s stories in your inbox
Join Medium for free to get updates from this writer.
manchester
1. 高電位->低電位表示“1”,低電位->高電位表示“0”
2. 每一位元都有預期有電位轉換,若是沒發生,則可能是有傳輸錯誤產生(利於偵錯)
4B/5B
1. 每4bits的資料都有5bits來表示(插入傳輸的資料中)
2. 添加的5bits需滿足條件:開頭的“0”最多只能1個,結尾的“0”最多只能2個,不能有3個連續的“0”,要有2個以上的“1”。
Error detection
CRC
1. 傳輸端與接收端都知道一個共同的值generator polynomial
2. generator polynomial是n bits,則要在傳輸的資料後方加入(n-1)個“0”
3. 傳送端將傳送資料除以generator polynomial,過程中餘數計算使用XOR
4. 傳送端將傳送資料(做過步驟2後)加上計算後的餘數傳給接收端
5. 接收端將接收資料除以generator polynomial,過程中餘數計算使用XOR
6. 接收端運算後的餘數為0則表示資料傳輸無誤
two dimensional parity
1. 針對每一列去添加1個bit使“1”的總數是偶數(或是奇數,看如何設定)。
2. 針對每一行去添加1個bit使“1”的總數是偶數(或是奇數,看如何設定)。
checksum
1. 傳輸端先將資料切成等分的區塊
2. 將加總所有區塊得到的值去做1補數得到checksum,並且將checksum與傳輸資料一併傳遞。
3. 接收端依據傳送端分割的方式將接收到的資料進行加總,然後再和checksum相加的結果去做1補數。
4. 接收端做完後得到結果為0則表示資料傳輸無誤。








