Home Page

第七章

快速 Ethernet 網路

超高速 Ethernet 網路

(Fast Ethernet and Gigabit Ethernet)


yball1.gif (1556 bytes) 7.1 Fast Ethernet網路架構及特性簡介

開發Fast Ethernet 的主要目的是將 10BaseT (IEEE 802.3) 網路的傳送速率由 10 Mbps 提昇至 100 Mbps 而同時又保有原 10BaseT 網路的配線系統、 MAC 通訊協定、及訊框格式。

在第四章中我們已經介紹過 IEEE 802.3 區域網路的設計中允許最遠的二部工作站間的距離為 2.5 公里(包括中間的訊號增益器)。而最大的訊號傳遞延遲時間則是指訊號在 2.5 公里的線路上來回傳遞一趟的時間。根據表4-2 的計算,此延遲時間大約為 50 us。為了增加傳送的安全性及方便處理,此時間遂採用了 51.2us,以 10Mbps 的傳送速率計算,此期間可傳送 512 位元。事實上,增加網路傳送速率的方法之一就是減少線路的長度。目前 10BaseT 網路主要採用集線器 (Hub) 的架構,而工作站至集線器間的距離則最長只有 100 公尺。依此計算,兩部工作站間最遠的距離為 200 公尺,而訊號來回傳遞一趟的距離則只有 400 公尺。因此,我們可以在 CSMA/CD 通訊協定下使用更快的速率來傳送訊框並且將最短的訊框長度維持為 512 位元。在標準中,此傳送速率為 100 Mbps, 而此標準的簡稱也成為 100BaseT100BaseT網路的主要特性如下:

傳輸速率為 100 Mbps

訊框為 IEEE 802.3 CSMA/CD 訊框。

傳輸媒介為雙絞線或光纖。雙絞線可為「無遮蔽式雙絞線」(Unshielded Twist Pair, UTP) 或「遮蔽式雙絞線」(Shielded Twist Pair, STP) 。使用 UTP 又可分為等級 3 (Category 3) 及等級 5 (Category 5) 雙絞線。

通訊協定為 CSMA/CD,不提供優先權傳送服務。

不提供保証傳送延遲服務。如果同時有二個或二個以上的工作站同時傳送訊框將造成衝撞。發生衝撞的訊框視為無效並丟棄。網路負載重時會因為不斷發生衝撞的現象而使得訊框被成功傳送出去的時間無法預期。

頻寬使用不保証公平。工作站利用 CSMA/CD 通訊協定來互相競爭傳送訊框的機會,並沒有輪流傳送的特性,因此每個工作站實際使用的頻寬量可能差異極大。

高負載時頻寬使用率低。網路頻寬雖然達 100Mbps, 但是負載重時會因為不斷發生訊框衝撞的現象而使得訊框無法成功的傳送。嚴重時整個網路可能完全癱瘓。

可適合多媒體資訊傳輸。雖然網路無法提供保証的頻寬及傳送延遲服務,但 100Mbps 的頻寬足以應付適量具有即時要求的多媒體資訊。

網路容錯性高。網路採用集線器架構,每部工作站使用專線連接,易於管理。工作站故障或線路斷裂都不會影響集線器運作。集線器故障則網路無法運作。

Fast Ethernet 最大的挑戰是如何在長 100 公尺的無遮蔽式雙絞線(UTP)上以 100 Mbps 的速率傳送訊框。事實上,依傳輸媒介的不同又可分為兩種標準:100Base4T 100BaseX100Base4T趨向採用目前電話線系統使用的第三等級無遮蔽式雙絞線 (Voice-grade Category 3),而 100BaseX則頃向採用較高級之第五級無遮蔽式雙絞線 (Category 5), 遮蔽式雙絞線 (STP), 或是光纖。圖7-1所示為此兩種標準共同的通訊協定架構,其中「聚合次層」(Convergence Sublayer, 簡稱 CS) 是原來 10BaseT 網路沒有的,主要任務是提供 CSMA/CD MAC 次層與 PMD 次層間的界面,並且讓 MAC 次層不必知道底下以經使用了 100 Mbps 的傳送速率及不同的傳輸線路。也就是說,CSMA/CD 通訊協定可以完全不必修改。為了支援不同的傳輸媒介,在 CS 次層及 PMD 次層間則又定義了「媒介無關界面」(Media Independent Interface, MII)。圖7-2 所示為此界面所包含的訊號。

7-1 100BaseT網路通訊協定架構

7-2 100BaseT網路通訊協定界面訊號

在高速傳輸的環境下,一般較不適合使用時序編碼法 (clock encoding,如曼徹斯特編碼法、差動式曼徹斯特編碼法) ,因為高的時序率 (clock rate) 將導至在 UTP 雙絞線上的傳輸錯誤。為了避免這個問題,通常採用位元編碼法 (bit encoding)。這類編碼法因為保証每一個編碼後的符號都有足夠的訊號轉換,因此可以讓接收端達成同步接收的任務。

100Base4T 100BaseX 都採用位元編碼法,而且將原來之位元串先分為每四個位元一組,每一個編碼符號則由一組或多組四位元編碼而得。也就是說,所有經過 MII 界面的資料都是以四個位元為單位,而其他的控制線路則是負責將這些位元以可靠的方式在 MII 界面上傳送。因此 CS 次層的任務包含

(1) MAC 傳送訊框時,負責將 MAC 送出的位元串轉換成四位元的單位以便傳給 MII 界面,

(2) MAC 接收訊框時,負責將 MII 界面送來的四位元單位轉換成位元串以便傳給 MAC 次層,

(3) PMD 次層所產生之載波感測 (carrier sense) 訊號及衝撞偵測 (collision detect) 訊號傳給 MAC 次層。

100Base4T 100BaseX 使用了不同的 PMD 次層來達到 100 Mbps 的傳送速率。以下分別做更詳細的介紹。

 


yball1.gif (1556 bytes) 7.2 100Base4T

100Base4T 網路的傳輸線採用了具有四對雙絞線的第三級無遮蔽式雙絞線 (Category 3 UTP)。為了達到 100 Mbps 的傳送速率,每一對雙絞線都必須用來傳送資料。這也就是「4T」的由來。而 CSMA/CD 通訊協定有一個很重要的特性,就是同一時間最多只能有一部工作站傳送。也就是說,當某一工作站正在傳送訊框時,它就不可能又同時在接收訊框。這使得四對雙絞線以「半雙工」(Half-duplex) 的模式運作,即同一時間只能工作站傳送訊框給集線器或由集線器接收訊框,不能同時進行。在 10BaseT 的系統下,只用到兩對雙絞線,其中一對用來傳送訊框而另一對則用來接收訊框。這兩對雙絞線都只能單向傳送(但方向相反)。訊框衝撞的偵測方式是當工作站在傳送雙絞線上傳送訊框時卻又同時在接收雙絞線上收到訊框。在 100BaseT 的系統下,這兩對雙絞線的功能仍然相同(單向),但其他兩對雙絞線則用來傳送或接收訊框且以雙向的模式運作。如圖7-3 所示,當工作站傳送訊框給集線器時,第 1,3,4 對雙絞線用來傳送訊框而第 2 對雙絞線則用來偵測衝撞。當集線器傳送訊框給工作站時,第 2,3,4 對雙絞線用來傳送訊框而第 1 對雙絞線則用來偵測衝撞。也就是說,每一個方向的傳送都同時使用了三對的雙絞線來傳送訊框。對於 100Mbps 的傳送速率來說,每一對雙絞線的傳送速率只要 33.33 Mbps

7-3 四對雙絞線的使用

 

7.2.1 編碼

100Base4T 網路的編碼不採用原來 Ethernet 使用的曼徹斯特編碼法。這是因為每一條雙絞線如果要支援 33.33 Mbps 傳送速率則需要 33.33 MHz 的時序率,這將超過無遮蔽式雙絞線所能容忍的最大極限 -- 30 MHz。為了減少時序率,100Base4T 採用了具有三種電位水平的編碼 (3-level (ternary) code)。這三種電位水平為 +V, 0 , -V (為了方便起見,以下將分別以 +,0,- 表示之)。這種方法稱為 8B6T 編碼法,因為在傳送訊框之前必須先將位元串切成每 8 個位元一組,而每一組則轉換為具有 6 個符號的字碼(每個符號的電位水平為 +,0, -) 如圖7-4 所示,位元00100110轉換為+00-00。在此例中我們可以發現需要的時序率以經由原來的 33.3 MHz 減少為 25 MHz (100 X(6/8)/3 = 25 MHz), 這已經落在 UTP 所能支援的範圍內。

7-4 8B6T 編碼範例

8B6T 編碼法中必須選用適當的字碼(每一字碼包含6 個符號),而字碼的選擇必須考慮到「直流平衡」(DC balance) 的問題。也就是說,傳輸線上訊號電位的總和最好能維持在零電位的水平。如此可以使接收端在接收訊號時有一個零電位的參考電壓以便能清楚的辨識 +, 0, - 三種電位水平的訊號。為了達到此目標,字碼應審慎的選擇。由於字碼包含 6 個符號,而每一個符號有 3 種電位 (+, 0, -), 因此所有可用的字碼有 729 個(36 = 729)。但是要代表所有 8 位元的組合只要 256 種字碼即可 ( 28 = 256)。在字碼的選擇上首先考慮的應是維持直流平衡的字碼,然後才是具有至少兩次電位轉換的字碼。後者的考慮是希望接收端在接收訊號時能達到同步的功能。所有字碼中,比重為0 +1 的字碼共有 267 個,為了滿足後者的要求,我們將其中電位轉換少於兩次的字碼(共有 5 個)去除,然後再將前面或後面連續四個零的字碼(共有 6 個)去除,則剛好剩下 256 個字碼。這些字碼如表7-1 所示。

7-1 8B6T 編碼對照表

資料 資料 資料 資料

位元組 字碼 位元組 字碼 位元組 字碼 位元組 字碼

00

- + 0 0 - +

20

- + + - 0 0

40

- 0 0 + 0 +

60

0 + + 0 - 0

01

0 - + - + 0

21

+ 0 0 + - -

41

0 - 0 0 + +

61

+ 0 + - 0 0

02

0 - + 0 - +

22

- + 0 - + +

42

0 - 0 + 0 +

62

+ 0 + 0 - 0

03

0 - + + 0 -

23

+ - 0 - + +

43

0 - 0 + + 0

63

+ 0 + 0 0 -

04

- + 0 + 0 -

24

+ - 0 + 0 0

44

- 0 0 + + 0

64

0 + + 0 0 -

05

+ 0 - - + 0

25

- + 0 + 0 0

45

0 0 - 0 + +

65

+ + 0 - 0 0

06

+ 0 - 0 - +

26

+ 0 0 - 0 0

46

0 0 - + 0 +

66

+ + 0 0 - 0

07

+ 0 - + 0 -

27

- + + + - -

47

0 0 - + + 0

67

+ + 0 0 0 -

08

- + 0 0 + -

28

0 + + - 0 -

48

0 0 + 0 0 0

68

0 + + - + -

09

0 - + + - 0

29

+ 0 + 0 - -

49

+ + - 0 0 0

69

+ 0 + + - -

0A

0 - + 0 + -

2A

+ 0 + - 0 -

4A

+ - + 0 0 0

6A

+ 0 + - + -

0B

0 - + - 0 +

2B

+ 0 + - - 0

4B

- + + 0 0 0

6B

+ 0 + - - +

0C

- + 0 - 0 +

2C

0 + + - - 0

4C

0 + - 0 0 0

6C

0 + + - - +

0D

+ 0 - + - 0

2D

+ + 0 0 - -

4D

+ 0 - 0 0 0

6D

+ + 0 + - -

0E

+ 0 - 0 + -

2E

+ + 0 - 0 -

4E

0 - + 0 0 0

6E

+ + 0 - + -

0F

+ 0 - - 0 +

2F

+ + 0 - - 0

4F

- 0 + 0 0 0

6F

+ + 0 - - +

10

0 - - + 0 +

30

+ - 0 0 - +

50

+ - - + 0 +

70

0 0 0 + + -

11

- 0 - 0 + +

31

0 + - - + 0

51

- + - 0 + +

71

0 0 0 + - +

12

- 0 - + 0 +

32

0 + - 0 - +

52

- + - + 0 +

72

0 0 0 - + +

13

- 0 - + + 0

33

0 + - + 0 -

53

- + - + + 0

73

0 0 0 + 0 0

14

0 - - + + 0

34

+ - 0 + 0 -

54

+ - - + + 0

74

0 0 0 + 0 -

15

- - 0 0 + +

35

- 0 + - + 0

55

- - + 0 + +

75

0 0 0 + - 0

16

- - 0 + 0 +

36

- 0 + 0 - +

56

- - + + 0 +

76

0 0 0 - 0 +

17

- - 0 + + 0

37

- 0 + + 0 -

57

- - + + + 0

77

0 0 0 - + 0

18

- + 0 - + 0

38

+- 0 0 + -

58

- - 0 + + +

78

+ + + - - 0

19

+ - 0 - + 0

39

0 + - + - 0

59

- 0 - + + +

79

+ + + - 0 -

1A

- + + - + 0

3A

0 + - + - 0

5A

0 - - + + +

7A

+ + + 0 - -

1B

+ 0 0 - + 0

3B

0 + - - 0 +

5B

0 - - 0 + +

7B

0 + + 0 - -

1C

+ 0 0 + - 0

3C

+ - 0 - 0 +

5C

+ - - 0 + +

7C

- 0 0 - + +

1D

- + + + - 0

3D

- 0 + + - 0

5D

- 0 0 0 + +

7D

- 0 0 + 0 0

1E

+ - 0 + - 0

3E

- 0 + 0 + -

5E

0 + + + - -

7E

+ - - - + +

1F

- + 0 + - 0

3F

- 0 + - 0 +

5F

0 + + - 0 0

7F

+ - - + 0 0

 

 

 

 

7-1 8B6T 編碼對照表(續)

資料 資料 資料 資料

位元組 字碼 位元組 字碼 位元組 字碼 位元組 字碼

80

- 0 0 + - +

A0

- + + 0 - 0

C0

- + 0 + - +

E0

- + + 0 - +

81

0 - 0 - + +

A1

+ - + - 0 0

C1

0 - + - + +

E1

+ - + - + 0

82

0 - 0 + - +

A2

+ - + 0 - 0

C2

0 - + + - +

E2

+ - + 0 - +

83

0 - 0 + + -

A3

+ - + 0 0 -

C3

0 - + + + -

E3

+ - + + 0 -

84

- 0 0 + + -

A4

- + + 0 0 -

C4

- + 0 + + -

E4

- + + + 0 -

85

0 0 - - + +

A5

+ + - - 0 0

C5

+ 0 - - + +

E5

+ + - - + 0

86

0 0 - + - +

A6

+ + - 0 - 0

C6

+ 0 - + - +

E6

+ + - 0 - +

87

0 0 - + + -

A7

+ + - 0 0 -

C7

+ 0 - + + -

E7

+ + - + 0 -

88

- 0 0 0 + 0

A8

- + + - + -

C8

- + 0 0 + 0

E8

- + + 0 + -

89

0 - 0 + 0 0

A9

+ - + + - -

C9

0 - + + 0 0

E9

+ - + + - 0

8A

0 - 0 0 + 0

AA

+ - + - + -

CA

0 - + 0 + 0

EA

+ - + 0 + -

8B

0 - 0 0 0 +

AB

+ - + - - +

CB

0 - + 0 0 +

EB

+ - + - 0 +

8C

- 0 0 0 0 +

AC

- + + - - +

CC

- + 0 0 0 +

EC

- + + - 0 +

8D

0 0 - + 0 0

AD

+ + - + - -

CD

+ 0 - + 0 0

ED

+ + - + - 0

8E

0 0 - 0 0 +

AE

+ + - - + -

CE

+ 0 - 0 + 0

EE

+ + - 0 + -

8F

0 0 - 0 0 +

AF

+ + - - - +

CF

+ 0 - 0 0 +

EF

+ + - - 0 +

90

+ - - + - +

B0

+ 0 0 0 - 0

D0

+ - 0 + - +

F0

+ 0 0 0 - +

91

- + - - + +

B1

0 + 0 - 0 0

D1

0 + - - + +

F1

0 + 0 - + 0

92

- + - + - +

B2

0 + 0 0 - 0

D2

0 + - + - +

F2

0 + 0 0 - +

93

- + - + + -

B3

0 + 0 0 0 -

D3

0 + - + + -

F3

0 + 0 + 0 -

94

+ - - + + -

B4

+ 0 0 0 0 -

D4

+ - 0 + + -

F4

+ 0 0 + 0 -

95

- - + - + +

B5

0 0 +- 0 0

D5

- 0 + - + +

F5

0 0 + - + 0

96

- - + + - +

B6

0 0 + 0 - 0

D6

- 0 + + - +

F6

0 0 + 0 - +

97

- - + + + -

B7

0 0 + 0 0 -

D7

- 0 + + + -

F7

0 0 + + 0 -

98

+ - - 0 + 0

B8

+ 0 0 - + -

D8

+ - 0 0 + 0

F8

+ 0 0 0 + -

99

- + - + 0 0

B9

0 + 0 + - -

D9

0 + - + 0 0

F9

0 + 0 + - 0

9A

- + - 0 + 0

BA

0 + 0 - + -

DA

0 + - 0 + 0

FA

0 + 0 0 + -

9B

- + - 0 0 +

BB

0 + 0 - - +

DB

0 + - 0 0 +

FB

0 + 0 - 0 +

9C

+ - - 0 0 +

BC

+ 0 0 - - +

DC

+ - 0 0 0 +

FC

+ 0 0 - 0 +

9D

- - + + 0 0

BD

0 0 + + - -

DD

- 0 + + 0 0

FD

0 0 + + - 0

9E

- - + 0 + 0

BE

0 0 + - + -

DE

- 0 + 0 + 0

FE

0 0 + 0 + -

9F

- - + 0 0 +

BF

0 0 + - - +

DF

- 0 + 0 0 +

FF

0 0 + - 0 +

 

如前所述,所有 256 個被選擇的字碼的比重不是0就是1。例如字碼 ++0+- - 的比重為 1 而字碼 -+00-+ 的比重為0。傳送端如果傳送一連串比重為1的字碼,則接收端的訊號將迅速的偏移零電位而使得訊號辨識錯誤。此現象稱為「直流迷失」(DC wander)。解決這個問題的方法是傳送一連串比重為1的字碼時依字碼出現的順序將偶數次的字碼反相(+ ® -, - ® +)後傳送,以便將平均電位水平維持在零水平。例如欲傳送的一連串的字碼 ++0+- - , 則傳送出去的字碼為 ++0+- - , - - 0- ++ , ++0+- - , - - 0- ++, ...;其中偶數次(第2,4,... 次)字碼以反相方式傳送。接收端則以相同的規則處理接收的字碼。圖7-5 所示為傳送字碼之狀態轉換圖。

7-5 傳送字碼之狀態轉換圖

為了減少接收端在解碼時所花的時間,每一個字碼的6個符號都在同一條雙絞線上傳送,而字碼則依序輪流在三條雙絞線上傳送,如圖7-6 所示。請注意三條雙絞線在開始傳送時有兩個符號的時間延遲。這種傳送方式表示接收端可以將每一條雙絞線上依序收到的符號(6個一組)直接進行解碼的工作,而與其它雙絞線上的符號無關。除此之外,當最後一個符號收到時也可立刻處理該訊框。圖7-6中因為字碼 A1 A2 的比重都等於 1, 字碼 A2 的符號必須反相後傳送。

在傳送一筆訊框時,除了基本的 CRC 錯誤偵測碼外,前所述的字碼傳送法也有助於錯誤偵測的設計。由圖7-5 的字碼傳送狀態轉換圖可以知道傳送線上字碼比重的總合都是維持在0+1。當一筆訊框最後的CRC4個位元組) 傳送完時,我們在每一條雙絞線上加上一個「字串結束」字碼 (End-of-Stream, EOS)。圖7-7所示為 EOS 碼使用的範例。在此例中假設 CRC 的最後一個位元組 (CRC-4) 在第三條雙絞線上傳送。這表示第四條雙絞線上的字碼已經傳送完畢而必須加上一個 EOS 碼。此 EOS 字碼長度為6個符號 ++++++ - - - - - - ), 使用哪一個字碼則根據此雙絞線上字碼比重的總合而定,如果總合為0則使用 - - - - - - , 如果總合為1則使用 ++++++。其他兩條雙絞線的 EOS 碼依此原則選擇,但長度有所不同。依輪流的順序,下一條雙絞線(第一條)的 EOS 碼長度為 4個符號,再下一條雙絞線(第三條)的 EOS 碼長度為2個符號。這個方法可以使接收端幾乎在同一時間結束三條雙絞線的訊框接收工作。

7-6 字碼在雙絞線上之傳送順序

7-7 EOS碼使用範例

 

 

7.2.2 衝撞偵測

前面我們已經介紹過工作站(集線器)在傳送訊框給集線器(工作站)時使用第1,3,4 (2,3,4) 對雙絞線傳送,而第2 (1) 對雙絞線則用來偵測是否發生衝撞。當集線器傳送訊框時,第 1,3,4 對雙絞線上(靠近工作站端)較強的訊號將會在第2對雙絞線上產生串音現象,稱為「近端串音」(Next-end Crosstalk, NEXT),如圖7-8所示。此現象有可能讓工作站誤以為偵測到衝撞訊號而發生誤判的情形。此情形亦可能出現在集線器傳送訊框給工作站時。為了將此現象所造成的影響減至最低,每一個訊框的前導部份 (Preamble) 在編碼時採用只有兩種電位水平的編碼而非訊框資料所採用的三種電位水平編碼法。這種方法增加了高低訊號間的大小差異,因此也有助於工作站或集線器用來分辨所收到的是感應的 NEXT訊號或是發生衝撞訊框的前導部份。圖7-9所示為三條雙絞線上傳送前導部份的情形(假設集線器傳送訊框給工作站)。前導部份在編碼上稱為「字串起始」(Start-of-Stream, SOS),並且包含兩個具兩種電位水平的字碼:SOS-1 SFD (Start Frame Delimiter)。由圖中可以發現第四條雙絞線上的 SFD 前只有一個 SOS-1 字碼而其他兩條雙絞線都有兩個 SOS-1 字碼。這是因為訊框的第一個位元組將由第四條雙絞線上傳送,第二個位元組將由第一條雙絞線上傳送,第三個位元組將由第三條雙絞線上傳送,然後依序輪流傳送。

 

7-8 近端串音現象

7-9前導部份之編碼及傳送

當工作站偵測到訊框發生衝撞時會送出一個擾亂訊號 (jam sequence) 然後停止傳送訊框。此時該工作站必須知道其他參與衝撞的工作站何時停止傳送其訊框,以便開始進行重送的步驟。此部份較容易完成,因為在 8B6T 編碼法下,沒有傳送訊框可以由三條雙絞線上都是零電位的訊號而判斷出來。此時也不會在衝撞偵測雙絞線上產生感應的 NEXT 訊號,此將有助於擾亂訊號的判讀。為了增加傳輸線的使用率,傳送訊框間的時間間隔 (inter-frame gap) 也由原來 Ethernet 9.6us 縮短為 960ns

 


yball1.gif (1556 bytes) 7.3 100BASEX/100BASE-TX

100BaseX 100Base4T 都採用 CSMA/CD 通訊協定,不同的是,100BaseX將採用目前安裝區域網路使用最多的第五級無遮蔽式雙絞線(Category 5 UTP),另外也可以使用 STP 或光纖。這也是為什麼稱為X的原因 -- 可以使用不同的傳輸媒介。對於每一種傳輸媒介都應該有一種「實體層媒介相關」(PMD)次層,而最早要開發的則是 FDDI 網路使用的多模光纖。在第八章中我們曾介紹過 FDDI 網路通常用來擔任骨幹網路的任務,網路的規模可達100公里。在編碼上,FDDI 網路使用 4B/5B 編碼法,而此編碼法則為100BaseX所沿用;其中在「訊框起始區隔」及「訊框結束區隔」的設計上,100BaseX 則分別採用了 (J,K) 符號及 (T,R) 符號。

100BASE-TX 採用兩種纜線規格:兩對Cat-5 UTP雙絞線, 或兩對150歐姆之 STP雙絞線。網路卡與連接埠之間連線最長為100公尺。連接器(connectors 則可以是RJ-45或遮蔽式DB-9shielded DB-9 接頭。使用這兩種接頭的接線方式如表7-2所示。

7-2 100BASE-TX MDI接線方式

接腳

四對Cat-5 UTP雙絞線

(使用兩對), RJ-45

兩對150歐姆STP

Shield DB-9

內部不轉接

內部轉接

內部不轉接

內部轉接

1

Transmit +

Receive +

Receive +

Transmit +

2

Transmit -

Receive -

   

3

Receive +

Transmit +

   

4

       

5

   

Transmit +

Receive +

6

Receive -

Transmit -

Receive -

Transmit -

7

       

8

       

9

N/A

N/A

Transmit -

Receive -

Shell

N/A

N/A

Chassis

Chassis

 

「自動協商」(Auto-negotiation) Fast Ethernet一個非常重要的特性。適用於所謂的「雙速」(dual-speed) 網路卡或連接埠。也就是說,網路卡或連接埠支援10 Mbps, 100 Mbps兩種速率。如果雙方都同時支援100 Mbps, 則以此速率通訊,否則以10 Mbps速率通訊。彼此之間的協商是由網路卡與交換器或集線器的連接埠自動完成,使用者完全不必參與。自動協商時除了網路卡的雙速特性外,其他尚需考慮的因素還有收發器型態,傳輸模式(全雙工或半雙工),纜線規格(Cat-3 UTP Cat-5 UTP, 以及雙絞線的對數(兩對或四對)等等。表7-3所示為自動協商時雙方溝通取得協議的優先權順序。例如雙方同時都採用100BASE-TX,兩對雙絞線,並且以全雙工模式通訊,則可以立刻達成協議以100Mbps為傳送/接收速率。如果另外一端為10BASE-T, 兩對Cat-3 UTP雙絞線,以全雙工模式通訊,則雙方經協商後以10Mbps為傳送/接收速率。

 

7-3 自動協商優先權表

收發器型態

纜線規格

雙工模式

自動協商

優先權

100BASE-TX

兩對雙絞線

(Cat-5 UTP)

全雙工

100BASE-T4

四對雙絞線

(Cat-3 UTP)

半雙工

 

100BASE-TX

兩對雙絞線

(Cat-5 UTP)

半雙工

 

10BASE-T

兩對雙絞線

(Cat-3 UTP)

全雙工

 

10BASE-T

兩對雙絞線

(Cat-3 UTP)

半雙工

 


yball1.gif (1556 bytes) 7.4 Ether-Switch

雖然 Ethernet 是目前使用最多的區域網路,但是因為傳送速率只有 10Mbps, 並不足以應付多媒體資訊的需求。Fast Ethernet 的出發點是將 Ethernet 的傳送速率提升到 100Mbps。如前所述,此種設計必須在 MAC 次層與 PMD 次層間加上一個 CS 次層,而這也表示每一部工作站的網路界面卡必須更換。另外一種可以提高網路傳送速率又不必更換所有網路界面卡的方案是採用 Ether-Switch (Ethernet Switching) 架構。

Ethernet 的演進由最早期的粗線Ethernet (10Base5)、細線Ethernet (10Base2) ,到目前的 10BaseT。為了便於管理,線路架構則由單純的匯流排(採用同軸電纜)演變到目前的集線器(採用雙絞線)。匯流排架構的主要特性是廣播式傳輸,網路上任何一部工作站傳送時其他工作站都收得到訊號。集線器因為使用點對點(工作站對集線器)的設計因此並沒有廣播的特性。也就是說,在匯流排上任何兩部工作站同時傳送訊框一定會造成衝撞,但是在集線器的架構下並沒有訊框實際衝撞的問題。然而為了模擬 Ethernet 的行為,集線器必須提供廣播式傳送及訊框衝撞的特性。前者的作法是將收到的訊框強制轉送到所有其他連接埠上,而後者的作法則是將不同雙絞線上同時傳送的訊框視為衝撞(事實上並沒有衝撞)。這使得集線器上同時能傳送訊框的工作站只有一部(與Ethernet 相同)。Ether-Switch 就是希望改進此點而讓集線器(現在應稱為交換機)上能同時有多部工作站傳送訊框, 其網路結構如圖7-10所示。

 

7-10 Ether-Switch 網路結構

7-11所示為具有四個輸入/輸出連接埠的Ether-Switch 內部線路配置參考圖;其中每一個連接埠代表一個 Ethernet 界面。Ether-Switch 包含幾個較重要的元件:

控制處理機 (Control Processor):此處理機負責交換機相關軟體的執行及硬體控制訊號的產生。

交換元件 (Switching Element):此元件負責線路交換的任務。

緩衝器 (Buffer):每一個Ethernet 界面有一個緩衝器用來暫存工作站傳送的訊框。

路徑表 (Routing Table):此表提供訊框交換的參考路徑。其格式包含工作站之 MAC 位址及其連接埠。

7-11 Ether-Switch 內部線路配置範例

為了達到交換的目的,交換機必須知道哪一部工作站連接在哪一個連接埠上,也就是必須完成類似橋接器的位址學習功能。當交換機收到一筆訊框時首先至路徑表查詢目的地工作站的連接埠。如果查到,則控制處理機送出控制訊號至交換元件將此訊框輸出至該連接埠。如果查不到 (開始時,路徑表中尚無資訊),則此訊框將會被廣播至所有的連接埠上以保証目的地工作站能收到此訊框。而交換機也可以由此訊框中得知此工作站的 MAC 位址及連接埠,並且將之記錄在路徑表中。當所有連接工作站的 MAC 位址及連接埠都記錄完整時,交換機可以最快速的模式進行訊框交換的任務。此時交換機收到一筆訊框時只要利用其上的目的地工作站 MAC 位址即可立刻進行交換的工作。在「半雙工」(half-duplex) 模式下,由於工作站不可同時傳送及接收訊框 (CSMA/CD通訊協定規定),Ether-Switch 上最多可同時傳送訊框的工作站數目為 n/2; 其中n 為連接埠的個數。以具有16個連接埠的 Ether-Switch 來說,其網路最高頻寬可達 80Mbps; 其中每一個連接埠的傳送速率為10Mbps。在「全雙工」(full-duplex) 模式下,工作站可同時傳送及接收訊框,Ether-Switch 上最多可同時傳送訊框的工作站數目為n。以具有16個連接埠的 Ether-Switch 來說,其網路最高頻寬可高達 160Mbps

Ether-Switch 雖然沒有訊框實際衝撞的問題,但仍然有交換機常見的目的地衝突問題。也就是當交換機要傳送工作站X的訊框給工作站Y, 卻發現工作站Y正在接收另外一部工作站所傳送的訊框。此時工作站Y的接收應不受影響,但工作站X的傳送卻必須認定為發生衝撞。交換機必須利用另外一條雙絞線將此訊號回覆給工作站X。幸好一般 UTP線路包含四對雙絞線,除了傳送及接收各使用一條雙絞線外,尚有剩餘的雙絞線可支援衝撞訊號。

「回壓」(backpressure) 是交換器用來產生衝撞訊號的一種技術。當交換器連接埠偵測出訊框衝撞時便產生一個特殊的「擾亂訊號」(jam signal), 此擾亂訊號是長度介於32位元至48位元之間的任何值。傳送擾亂訊號的目的是保證衝撞持續夠久,因此網路區段上的所有工作站都可以偵測此衝撞。除此之外,沒有參與衝撞的工作站也必須等待衝撞訊號完全結束後才能嘗試傳送。如此可以避免不必要的衝撞。雖然擾亂訊號導致暫時停止傳送訊框,其也影響到所有連接在該埠的工作站。交換器是否啟動回壓技術常與緩衝器的使用狀況有關。通常當緩衝器中儲存達一定量的訊框時便可啟動回壓功能來產生擾亂訊號。當緩衝器中儲存訊框減少到某一臨界值時便可關閉回壓功能。

 


yball1.gif (1556 bytes) 7.5 Gigabit Ethernet網路架構及特性簡介

Gigabit Ethernet的發展始於1995年。當年11月的IEEE 802會議上,IEEE 802.3工作小組成立一個高速網路研究群,專門討論有關高速Ethernet的議題。並且在1996年六月正式成立IEEE 802.3z任務小組 (task force) 加速推動Gigabit Ethernet標準的制定。1996年十一月的會議則定為各方提出新技術的期限,以便能從中選擇一些方案作為標準的基礎。1997年一月的會議便開始審查第一版的草案(Draft D1)。第二版的草案(Draft D2)1997年三月的會議審查。進一步的修正建議則併入2.1版的草案(Draft D2.1) 1997年五月的會議審查。1997年七月的會議審查第三版的草案(Draft D3)1997年十二月的會議審查第四版的草案(Draft D4) 1998年二月的會議則審查了第4.1版的草案(Draft D4.1)。通過後則正式成立Gigabit Ethernet標準。Gigabit Ethernet 網路的主要特性如下:

傳輸速率為 1000 Mbps

訊框為 IEEE 802.3 CSMA/CD 訊框。

傳輸媒介為雙絞線或光纖。雙絞線可為「無遮蔽式雙絞線」(Unshielded Twist Pair, UTP) 或「遮蔽式雙絞線」(Shielded Twist Pair, STP) UTP 為等級 5 (Category 5) 雙絞線。

通訊協定為 CSMA/CD,不提供優先權傳送服務。 採用「載波延伸」(Carrier Extension) 技術與 「訊框爆發」(Frame Bursting) 技術支援 CSMA/CD,提升網路傳輸效率。

不提供保証傳送延遲服務。如果同時有二個或二個以上的工作站同時傳送訊框將造成衝撞。發生衝撞的訊框視為無效並丟棄。網路負載重時會因為不斷發生衝撞的現象而使得訊框被成功傳送出去的時間無法預期。

頻寬使用不保証公平。工作站利用 CSMA/CD 通訊協定來互相競爭傳送訊框的機會,並沒有輪流傳送的特性,因此每個工作站實際使用的頻寬量可能差異極大。

高負載時頻寬使用率低。網路頻寬雖然達 100Mbps, 但是負載重時會因為不斷發生訊框衝撞的現象而使得訊框無法成功的傳送。嚴重時整個網路可能完全癱瘓。

適合多媒體資訊傳輸。雖然網路無法提供保証的頻寬及傳送延遲服務,但 1000Mbps 的頻寬足以應付具有即時要求的多媒體資訊。

網路容錯性高。網路採用集線器架構,每部工作站使用專線連接,易於管理。工作站故障或線路斷裂都不會影響集線器運作。集線器故障則網路無法運作。

Gigabit Ethernet支援以1000 Mbps速度傳送標準Ethernet訊框。在802.3z的標準草案中則包含具流量控制的全雙工點對點鏈路(Full-duplex point-to-point links,與具半雙工共享衝撞特性的網域 (Half-duplex shared collision domain)。前者如Gigabit EtherSwitch交換機鏈路, 每一台直接連接交換機的工作站(或橋接器,路徑器,交換機)都可以同時傳送訊框與接收訊框。後者如Ethernet Hub集線器鏈路, 每一台直接連接集線器的工作站在同一時間只能傳送訊框或接收訊框,並且在傳送訊框時仍可能發生衝撞的現象。一般說來,網路線路的長短與傳送速度成反比。越是高速的網路,所能支援的距離就越短。但IEEE 802.3z在選擇半雙工運作模式的參數時,則希望能配合現今建築物所採用的鏈路標準而打破這個現象。也就是在單一星狀增益器架構 (repeater)下,能允許在直徑達200公尺的鏈路上成功的傳送。因此,Gigabit Ethernet是網路史上第一次將CSMA/CD通訊協定運用在來回傳遞延遲時間 (round-trip propagation delay) 遠大於傳送最短訊框所需時間的網路環境上。

Gigabit Ethernet網路結構如圖7-12所示。其中MAC次層下面的四種型態((1 Mbps,10Mbps), 10Mbps, 100Mbps, 1000Mbps) 彼此之間無關連。其包含的主要內容如下:

銜接單元界面 (Attachment Unit Interface, AUI)。此界面對於10Mbps系統為選項,1 Mbps, 100Mbps, 1000Mbps系統則無此界面。

媒介相關界面 (Medium Dependent Interface, MDI)

媒介無關界面 (Medium Independent Interface, MII)。此界面對於10Mbps用戶端 (DTEs) 100Mbps系統為選項,1 Mbps, 1000Mbps系統則無此界面。

超高速媒介無關界面 (Gigabit Medium Independent Interface, GMII)。此界面對於與1000 Mbps, 100Mbps系統與10Mbps用戶端 (DTEs) 為選項,1 Mbps 系統則無此界面。

媒介銜接單元 (Medium Attachment Unit, MAU)

實體層訊號 (Physical Layer Signaling, PLS)

實體層編碼次層 (Physical Coding Sublayer, PCS)

實體層媒介銜接 (Physical Medium Attachment, PMA)

實體層元件 (Physical Layer Device, PHY)

實體層媒介相關界面 (Physical Medium Dependent, PMD)。此界面只用在100BASE-X1000BASE-X系統,100BASE-T4不含此界面。

 

7-12 Gigabit Ethernet網路結構

Gigabit Ethernet標準同時支援全雙工點對點鏈路, 與具半雙工共享衝撞特性的網域。在實體層傳輸媒介上首先支援光纖(單模及多模皆支援)與短距銅線(150歐姆遮蔽式纜線)。 然後會支援較低價位的傳輸媒介1000BASE-T:在現今商業大樓使用最多的UTP level-5無遮蔽式電纜線上以gigabit速度傳送訊框。1000BASE-T的標準由IEEE 802.3ab規範,預計於1998年底前可定案。

 


yball1.gif (1556 bytes) 7.6 訊框格式

Gigabit Ethernet有一個非常重要的目標就是必須和已經存在的Ethernet標準 (10Mbps Ethernet, 100Mbps Fast Ethernet) 共容。首先不同速度的網路區段間必須能順利的轉送訊框。這樣才能簡化具多重速度的橋接器或路徑器的設計。而這種橋接器或路徑器則可能成為未來大型校園網路的主流。另外也必須顧及使用的便利性,最好能不須額外的訓練就能管理Gigabit Ethernet網路。因此,Gigabit Ethernet沒有變更傳統Ethernet訊框格式, 沒有變更傳統Ethernet最短訊框 (64位元組) 及最長訊框 (1518位元組) 的限制。甚至連在半雙工模式中大家最熟悉用來處理重送訊框的切除二元指數後退演算法 (Truncated Binary Exponential Backoff (BEB) algorithm) 也沒有改變。但是,為了處理在分享式半雙工模式下變得相對上非常大的傳遞延遲,CSMA/CD通訊協定仍必須做適度的修改。

Gigabit Ethernet的首要應用焦點是骨幹網路使用的「交換式全雙工」網路 (switched full-duplex)。因為交換式網路能提供比傳統分享式 (shared) CSMA/CD網路更好的傳輸效率。然而也因為 gigabit交換機的核心架構遠比gigabit 集線器複雜,其價格也相對較高。有些廠商則提出稱為「全雙工集線器」 (Full-duplex repeater) 的折衷方案,採用的是橋接器架構,每一個連接埠 (port) 都有一個MAC控制器及若干緩衝器。工作站則以具流量控制功能的全雙工鏈路與之連接。但是,和一般橋接器或交換器不同的是,每一個連接埠所收的訊框都直接廣播到所有的連接埠上。如此可以免除一般橋接器或交換器所需完成的網址過濾的動作, 或至少可以不須有一個高速的背板。以價格及效能來衡量,此類gigabit 設備界於傳統的半雙工集線器與先進的交換器之間。但是由於這三種設備的主要成本是在於光電元件(光傳送器與光接收器),因此在價位上並沒有太大的差異,都屬於高價位的產品。不過1000BASET網路的誕生將會打破此僵持的局面。硬體成本大幅降低的情況下,交換器將因其強大的功能而具有絕對的競爭優勢。

CSMA/CD是一個分散式的演算法,讓許多連在Ethernet網路的工作站能依序 (亂序)傳送訊框。每一部工作站傳送訊框之前都應該先進行載波偵測 (carrier sensing) 的工作以確認網路是否忙碌。如果忙碌則延後 傳送直至該載波結束為止。而一旦開始傳送訊框,也必須繼續進行衝撞偵測 (collision detection)的工作以確認訊框的成功傳送。如果發生衝撞的現象則必須停止該筆訊框的傳送,並且於適當的延遲後再嘗試重送。在 CSMA/CD演算法中,訊槽時間 (slot time) 是一個極為關鍵的參數。它是由網路中最長的來回傳遞延遲時間所推算而來。它也是二元指數後退演算法中後退時間的基本單位。同時也是制定訊框最短長度 (64位元組) 的依據。以訊槽時間為後退時間的基本單位具有所謂與網路架構無關的公平特性。也就是參與衝撞的工作站在執行後退演算法時所產生的亂數如果不相同,則不會再次衝撞,與工作站連接在網路的位置無任何關係。訊槽時間與訊框最短長度的關係也與半多工Ethernet網路(不能同時傳送與接收訊框)的正常運作有極大的關聯。雖然Ethernet只提供盡力式 (best-effort) 的傳輸服務,使用者還是希望在一般正常的狀況下,訊框流失的機率能越小越好以及不發生訊框重複接收的現象。而要達成這兩個需求就必須保證每次成功傳送一筆訊框時,其傳送時間至少要達一個訊槽時間。傳送端可以因沒偵測到衝撞而認為傳送成功。因為如果發生衝撞,傳送端會在第一個訊槽時間內偵測到。相同的,接收端也可以利用此長度的限制來過濾掉一些發生衝撞的片段。如果網路允許傳送更短的訊框,則可能出現在接收端發生衝撞,但傳送端沒有衝撞(或反過來)的現象。結果可能使得某些訊框發生流失的情形,因為傳送端以為傳送成功而事實上卻在接收端前發生衝撞。而某些訊框則可能造成重複接收的情形,因為接收端已經成功接收某訊框,而傳送端卻可能因為發生衝撞(與其他訊框)而重送該訊框,結果造成接收端重複接收同一筆訊框。

由於鏈路上訊號傳遞的速度已由物理定律決定,在CSMA/CD網路上如果增加資料傳輸速率,必須相對的減少網路長度或增加時槽時間的長度。以IEEE 802.3u Fast Ethernet為例。Fast Ethernet將網路傳輸速率由10Mbps提升為100 Mbps, 但仍然將訊槽時間維持在512位元時間。因此網路允許的最長距離便相對減少。結果網路的最大直徑定為205公尺(工作站至集線器的距離為100公尺)。這對絕大部份的環境來說已經足夠,因為目前纜線的標準組織,不論是電子工業協會/電信工業協會 (Electronic Industry Association/ Telecommunication Industry Association (EIA/TIA)) 或國際標準組織 (International Organization for Standards (ISO)), 都要求辦公室離最近的集線設備應該少於100公尺。有趣的是,如果我們進一步的將網路傳輸速率由100Mbps提升為1000 Mbps, 則將面臨無法要求再縮短網路直徑的問題。如果網路直徑只有25公尺,則網路線路就幾乎出不了機房,因為大部分的辦公室與機房的距離都大於25公尺。解決之道就只有增加訊槽時間的長度。IEEE 802.3z Gigabit Ethernet標準將1000Mbps網路的訊槽時間由原來的512位元時間(64位元組)增加到4096位元時間(512位元組),增加八倍。

 


yball1.gif (1556 bytes) 7.7 載波延伸

增加訊槽時間的長度對於發展一個適用於半雙工 (half-duplex) Gigabit Ethernet環境的CSMA/CD通訊協定來說,只是第一步而已。幸運的是,增加訊槽時間的長度對於後退演算法只有小小的改變(等待之單位時間變長),而沒有造成任何副作用。這種本身重送延遲的增加反而可以讓其他工作站有機會傳送更多的訊框,相對的也減少往後繼續衝撞的機會。但是無論如何,我們仍然必須維持最短訊框傳送時間與訊槽時間一致的環境(在10Mbps/100 Mbps Ethernet, 最短訊框傳送時間 = 訊槽時間 = 512位元時間)。1000Mbps Ethernet網路的訊槽時間為 4096位元時間。直接將最短訊框的長度增加為512位元組是最簡單但是無法接受的方法。這是因為維持單一訊框格式,無論傳輸速率為何,是Ethernet網路最優先考慮的事。否則,包含多種速率的橋接網路將無法有效的正常運作。首先,橋接器 (bridges) 必須先將每一個短訊框重新格式化後才能將之由較慢的鏈路(10/100 Mbps)轉送到gigabit Ethernet鏈路。再者,如果伺服器連在gigabit Ethernet上而用戶端在傳統的Ethernet上,則伺服器所回覆給用戶端的短訊框都比用戶端網路所需要的大八倍,造成低速用戶端網路的困擾。因此,最短訊框仍必須維持在512位元(64 位元組)。 為了克服最短訊框與時槽時間的差異問題,IEEE 802.3z任務小組採用了一種稱為「載波延伸」(Carrier Extension) 的技術。

在載波延伸的技術下,最短訊框的長度仍然為512位元(與10/100 Mbps Ethernet相同)。但每一次成功傳送所需的載波監測最短時間則增加為512 位元組。其方法如下: 如果傳送端在一筆訊框傳送完畢時仍未偵測出衝撞,則監測時間與訊框傳送時間相同。如果該傳送時間大於一個時槽時間,則和以往相同表示傳送成功,並且通知上層之用戶 (status code = transmit done)。如果該傳送時間不足一個時槽時間,則傳送器繼續傳送一系列特別設計的載波延伸符號,直到一個時槽時間為止,然後一樣通知上層之用戶 (status code = transmit done)。值得注意的是,這些載波延伸符號的位置在訊框檢查碼 (FCS) 之後,並不是訊框的一部份,如圖7-13所示。如果傳送器在傳送的過程中偵測到衝撞的現象(傳送訊框本身或載波延伸符號),則立刻停止傳送,並且送出一個32位元長度的擾亂訊號 (jam signal)

 

7- 13含延伸載波之訊框格式

值得注意的是,接收端並無法辨識擾亂訊號與一般數據訊號,即使衝撞是發生在載波延伸期間。因此,即使衝撞是發生在載波延伸期間,接收端仍然會將之前已接收的訊框丟棄。事實上,我們還必須特別小心的處理這個問題以避免因為衝撞發生在載波延伸期間的最末端而可能造成的接收端重複接收極短訊框問題。也就是說,接收端可能在還沒發生衝撞以前就已經成功的接收一筆訊框,並且已通過錯誤檢查。如果衝撞發生的過遲,則32位元長度的擾亂訊號也無法來得及阻礙接收端通過最短載波監測時間的關卡。結果是傳送端認為發生衝撞而接收端卻成功接受,傳送端重送就造成訊框重複的問題。

載波延伸亦影響接收端的行為。正常情況之下,每一片網路卡的接收部份隨時尋找網路上的位元串,嘗試辨認代表訊框開始的前導部份 (preamble)及訊框起始區隔碼 (SFD),然後開始計算接收的位元數,並且將不屬於延伸符號的部份累積起來存在接收緩衝器中,直到訊框結束為止。此時如果所收到的位元總數小於一個時槽時間,則將此訊框當成發生衝撞丟棄,即使接收緩衝器中已正確收到訊框。 否則便將接收緩衝器中的訊框交給MAC層進行錯誤碼及位址的檢查。總位元數會小於一個時槽時間表示傳送端已判斷此訊框發生衝撞,並且會採取重送的動作。因此,即使衝撞是發生在載波延伸期間而沒有破壞訊框,接收端仍必須將之丟棄以避免重複接收。

從另一個角度來看,載波延伸的技術代表CSMA/CD通訊協定只需非常小的修改就能解決增加時槽時間而不變更最短訊框長度的問題。同時還能保持演算法的其他特性。但是,載波延伸也大大的增加了短訊框的傳送時間,反而抵消了增加資料傳輸速率的效果。舉例來說,對於只傳送最短訊框的工作站而言,傳輸速率由100 Mbps提升至1000Mbps可以使其傳送比已往多十倍的資料量,但是每一筆訊框的長度卻是原來的八倍長。網路傳輸資料的效能事實上只增加了25%。當然這只是極端的例子,網路上只有最短訊框而沒有長訊框的機會並沒有這麼大。無論如何,如果我們能找到一種管線式傳輸技術 (pipelining) 來傳送訊框,則將有機會大大的提升網路的傳輸效能。

管線式傳輸技術常用於鏈結層 (data-link layer) 上之自動重複要求 (automatic repeat request, ARQ) 演算法。就好像在一條水管上運送水一樣,如果傳送端每次送進一點水就必須等接收端收到水後才能再送水,則水管的使用率不佳。如果傳送端能不斷的送水則接收端亦能連續的汲水,則必能提高水管的使用率。基於此觀念,Gigabit Ethernet任務小組曾經考慮採用所謂的「封包打包」(packet packing) 技術。

封包打包技術的主要觀念是藉由允許傳送端將許多訊框組合成為一個區塊 (block) 來傳送而提升網路的使用率。如果此區塊的長度仍不及一個時槽時間的長度,則採用前所述的載波延伸技術。封包打包的技術基本上可以彌補載波延伸所造成的效率不佳的問題,但是CSMA/CD MAC層與上層間的界面也必須跟著修正。原來的界面規定一次只能傳送一筆訊框,現在必須能允許一次傳送多筆訊框。相同的,接收端也必須稍微修正。原來是正確收到一筆訊框就往上層轉送,現在卻必須將屬於整個區塊的訊框全部正確收到且時間大於一個時槽時間後才能轉送給上層。否則可能出現因傳送端重送而造成的重複接收情形。由於封包打包技術在實作上仍然過於複雜,IEEE 802.3z標準草案並沒有採用此技術。

 


yball1.gif (1556 bytes) 7.8 訊框爆發

Gigabit Ethernet任務小組希望能有一種方法不但具有水管線式傳輸技術的優點,而同時又能不必更改大家所熟悉的MAC層界面:一次傳送/接收一筆訊框。任務小組最後終於採用了一種稱為「訊框爆發」 (frame bursting) 的技術。如同封包打包技術,訊框爆發技術也允許傳送端在一個訊爆 (burst) 中傳送許多筆訊框,訊框間則以延伸載波來分離。但是,訊爆的最大長度是以訊框最大長度為基準,而不是以時槽時間為基準,就像是所謂的「二元邏輯仲裁法」 (binary logarithmic arbitration method, BLAM)。除此之外,每一個訊爆中的第一筆訊框的傳送時間必須至少等於一個時槽時間,如果必要的話(訊框過短),則以延伸載波加長之。此特性保證衝撞只會影響訊爆中的第一個訊框,因此傳送端與接收端都可以保有大家所熟悉的MAC層界面:一次傳送/接收一筆訊框。

 

訊框爆發技術傳送訊框的方法如下:

傳送一筆訊框前,傳送器首先檢查訊爆計時器 (burst timer) 是否已啟動。如尚未啟動,則依照CSMA/CD正常的程序如有載波則延遲,如有衝撞則後退等等,不過在每次嘗試傳送之前都先設定一個旗標表示此訊框是訊爆中的第一筆訊框,並且啟動訊爆計時器。如果計時器已啟動,則立刻進行傳送的工作。

如果嘗試傳送成功,則傳送器檢查第一訊框旗標。如該旗標已被設定,則傳送器繼續傳送延伸載波 (如果該訊框長度不及一個時槽時間)直到訊爆計時器的值等於一個時槽時間,然後將第一訊框旗標值清除。如果此時仍未發生衝撞,則表示傳送成功,傳送器於是回覆一個TransmitOK給上層用戶,然後跳到步驟3。如果發生衝撞,則傳送器將第一訊框旗標及訊爆計時器清除,然後回到步驟1進行另一次嘗試傳送的程序。

此時傳送器剛成功的完成一次傳送的工作,並且繼續擁有線路的控制權。此時如果訊爆計時器尚未逾時,則傳送96-位元長度的延伸載波(訊爆中訊框間的間隔),然後進入步驟4。如果訊爆計時器已逾時,則不做任何事,直到下一個傳送需求來到。

此時表示傳送器剛傳送完96-位元長度的訊框間隔。此時如果還有另一筆訊框欲傳送,則可立刻傳送之。否則工作站便結束此訊爆,清除訊爆計時器。等待下一個傳送需求到來。

7-14所示為一個訊爆架構的範例。即使一個訊爆中的第一筆訊框因為過短而必須延伸載波,該訊框後面(由一個時槽時間起算)仍必須跟隨一個96-位元長度的訊框間隔。目的是讓接收端在接收下一筆訊框之前有時間處理前一筆訊框。圖中也顯示訊爆中的最後一筆訊框必須在訊爆計時器逾時前傳送。不過此訊框傳送結束的時間可以超過訊爆計時器的上限。

 

7-14 訊爆架構範例

在訊框爆發的技術下,要不要讓一筆訊框加入已經進行中的訊爆主要是根據下列兩項檢查:

此訊框必須能在訊爆計時器逾時前開始傳送。

此訊框必須在96-位元長度的訊框間隔結束前準備好。

在草案中, 一個訊爆的最大長度 (訊爆上限) 設為12,000位元時間 (bit time, BT)。此值恰比因公平考量而訂定的最大訊框長度 (1518位元組 = 1518x8 = 12,144位元) 稍小。 因此,對於一個訊爆中所包含的訊框來說,無論其長度如何組合,工作站每次傳送訊爆的長度至少可以等於一個最大訊框長度,最多不超過兩個最大訊框長度。不過,進一步的研究卻發現增加訊爆上限能明顯改善效能。於是在1997年五月的會議上,將訊爆上限變更為65,536位元時間。

將訊框爆發的技術加在CSMA/CD上時,接收端也必須做部份的修正:

接收端根據CSMA/CD的正常程序來接收一個新訊爆的第一筆(或唯一的一筆)訊框。也就是首先尋找一個正常的前導 (preamble) 及訊框起始區隔 (SFD)。然後接收器設定一個延伸旗標 (extending flag) 表示正在搜尋訊爆中的第一筆訊框。接下來接收器開始計算此訊框的位元數 (同時將不屬於延伸載波的位元集合起來成為原來之訊框),直到載波結束(發生衝撞或傳送端結束傳送)或延伸旗標被清除後的第一個延伸位元(訊框接收完畢,其長度大於或等於一個時槽時間)。然後進入步驟2。在接收的過程中,接收器每收到一個位元就比較總位元數是否等於一個時槽時間。如果相等則將延伸旗標清除(表示第一筆訊框沒發生衝撞)。

此時接收端已接收一筆訊框,但必須先檢查是否發生衝撞。如果此時延伸旗標尚未被清除則表示此訊框發生衝撞而必須丟棄。接收端在接收一個訊爆的第一筆訊框(如過短會被延伸至一個時槽時間)時,就會將此旗標清除,除非發生衝撞。延伸旗標一旦被清除後,在此訊爆的整個過程中將維持在被清除狀態。如果沒有發生衝撞,則接收端開始檢查訊框的長度是否短於最小極限或產生錯誤檢查碼。任何一種情形發生都將導致訊框丟棄。最後將正確的訊框轉交給上層通訊協定。並且進入步驟3

如果該訊框的結束是因為載波終止(end-of-carrier,表示傳送端不想繼續傳送訊框),或訊框間隔(96位元)後跟著的是載波終止而不是另外一筆訊框的前導及訊框起始區隔(表示傳送端想結束此訊爆),則表示此訊爆已經結束,接收端必須回到步驟1開始搜尋下一個訊爆。否則(訊爆尚未結束)接收端開始將接下來收到的位元組合成第二筆訊框,直到該訊框因載波終止或發現第一個延伸位元而結束。此時回到步驟2,但延伸旗標處於被清除狀態。

7-4 所示為Ethernet家族系列的重要參數表。表7-5 所示為IEEE 802.3u Fast EthernetIEEE 802.3z gigabit Ethernet 的特性比較表。圖7-15所示為IEEE 802.3z gigabit Ethernet 的通訊架構。

 

7-4 Ethernet家族系列重要參數表

參數

Ethernet 網路種類

 

10 Mbps

1 Mbps

100 Mbps

1000 Mbps

時槽時間

(位元時間)

512

512

512

4096

訊框間隔

(微秒)

9.6

96

0.96

0.096

嘗試極限

16

16

16

16

後退極限

10

10

10

10

擾亂訊號

長度(位元)

32

32

32

32

最大訊框

(位元組)

1518

1518

1518

1518

最小訊框

(位元組)

64

64

64

64

延伸載波長度(位元組)

0

0

0

448

訊爆長度

(位元)

-

-

-

65,536

7-5 IEEE 802.3u IEEE 802.3z 特性比較

規格

802.3u

802.3z

類別

100BASE-T

1000BASE-T,

1000BASE-CX, 1000BASE-SX, 1000BASE-LX

MAC通訊協定

CSMA/CD

CSMA/CD

實體層設計

4T-PLUS

100BASE-X

1000BASE-X

線材種類

Cat-3,4,5

Cat-5,光纖

Cat-5,光纖

線材對數

4

2

4

傳輸模式

半雙工

全雙工

全雙工

區塊編碼法

8B/6T

4B/5B

8B/10B

位元編碼法

NRZI

MII

GMII

 

7-15 Gigabit Ethernet 通訊架構

 


yball1.gif (1556 bytes) 7.9  Gigabit Ethernet集線器

Gigabit Ethernet集線器的目標是提供一種簡單,便宜,而且具彈性的方法來連結兩個或多個網路區段。Gigabit Ethernet集線器的標準與整個ISO/IEC 8802-3 CSMA/CD區域網路標準的關係如圖7-16所示。其中GMII對於10/100/1000 Mbps DTEs來說是屬於選項界面,1Mbps Ethernet網路則不具備此界面。

7-16 集線器架構

所謂「集線器組」 (Repeater Set) 是指所有1000 Mbps基頻網路與至少兩個以上的DTEs所組成的集合。經由連結兩個或兩個以上的網路區段,集線器組可以延伸網路的實體架構。在單一衝撞網域 (single collision domain) 中,一個集線器組可用來提供工作站間最長的路線。網路可以有不同的架構,但任何兩點之間只能存在一條運作中的路線。由於集線器組並不屬於工作站,因此不計算在網路連結工作站數目之上限 (1024) 內。

集線器組能在最惡劣的環境(雜訊,時序,訊號強度等等)下,由任何一個網路區段中接收資料並完成解碼的工作。在排除雜訊,時序,訊號強度所造成的影響後,將編碼後的資料重新轉送給所有相連的網路區段。值得注意的是,轉送資料的動作與接收資料的動作是同時進行的。也就是一邊接收,一邊轉送。如果發現衝撞,則集線器組將一個擾亂 (Jam Signal) 送至連結的每一個連接埠上,通知所有工作站。集線器組也可以經由隔絕某個損壞區段上的載波方式而提供網路某種程度的保護。

 


yball1.gif (1556 bytes) 7.10 Gigabit Ethernet應用架構

此節介紹建構1000 Mbps網路的幾個方案。當初在設計 1000 Mbps的架構時就考慮到其應用將包含兩種:同質性網路 (homogeneous) 與異質性網路 (heterogeneous)。前者是指所有網路都是1000 Mbps(如骨幹網路),後者則指包含10/100/1000 Mbps的混合式CSMA/CD網路。在發展設計 gigabit網路架構時,通常是在單一衝撞網域中考慮(使用集線器)。但也可以利用橋接器,路徑器,或交換器來增加設計的彈性並且提供多重衝撞網域。例如經由集線器與橋接器連結組合的1000BASE-T/100BASE-T/10BASE-T網路系統可以提供工作站專屬或共享式的頻寬(1000Mbps, 100Mbps, 10Mbps)。共享式頻寬的整體效益則依連接的工作站個數有所不同。

利用橋接器將許多1000Mbps衝撞網域連接起來可提供最大的彈性。橋接架構的設計可以使網路只提供單一頻寬(如圖7-17所示)的服務或多重頻寬(如圖7-18所示)的服務。

 

7-17 使用多連接埠橋接器之多衝撞網域架構

 

7-18 使用多連接埠橋接器之多重頻寬多衝撞網域架構

 

 

單一衝撞網域之多區段網路

以下介紹如何在單一衝撞網域中建構多區段(multi-segments) 1000Mbps CSMA/CD 網路。CSMA/CD網路的正常運作必須限制衝撞網域的大小以便滿足對「來回傳遞延遲」 (Round trip propagation delay) 必須小於或等於512位元時間的要求。同時為了符和訊框間隔 (Inter-Frame Gap) 必須至少等於96位元的要求,單一衝撞網域中最多也只能使用一個集線器。

1000Mbps CSMA/CD 網路提供兩種網路模式:「傳輸系統模式一」(Transmission System Model 1, TSM-1),「傳輸系統模式二」(Transmission System Model 2, TSM-2)

TSM-1以較保守的角度規範了一些經過驗證,能符合以上要求的 Gigabit網路架構。TSM-2則提供一些可以用來評估網路規畫是否符合規定的計算公式。TSM-2事實上也驗證了一些能運作,但是尚不符合TSM-1般嚴格要求的網路架構。

CSMA/CD 網路的實際大小受限於各個網路元件的特性。這些特性包括:

傳輸媒介(線路)長度及其傳遞延遲。

集線器元件延遲(啟動,穩定,結束)。

MAUsPHYs延遲(啟動,穩定,結束)。

集線器所造成的訊框間隔萎縮。

DTEs執行CSMA/CD演算法的延遲。

MAUsPHYs的衝撞偵測延遲。

7-6 所示為在TSM-1模式下,1000Mbps網路區段上的時間延遲。

7-6 1000Mbps 網路區段時間延遲

媒介種類

每區段最多連接點數

每區段最長(公尺)

每區段最大來回傳遞延遲(位元時間)

平衡纜線區段(1000BASE-T

2

100

1112

雙絞纜線區段(1000BASE-CX

2

25

253

光纖區段

1000BASE-SX, 1000BASE-LX

2

316

3192

 

傳輸系統模式一 (TSM-1)

以下四種網路架構的限制適用於使用傳輸系統模式一的網路:

只能單一集線器。

所有平衡纜線(銅線)無遮蔽區段長度都小於或等於100公尺。

所有雙絞線區段 (TW-style) 長度都小於或等於25公尺。

所有光纖區段長度都小於或等於 330公尺。

7-19所示為將兩部工作站直接相連的Gigabit網路範例。7-20所示為利用集線器將兩部工作站相連的Gigabit網路範例。兩種網路架構都符合TSM-1的規範。這兩種網路架構的衝撞網域直徑(網路最大範圍)與所使用的線材有關,詳細值如表7-7所示。

 

7-19 工作站直接相連(無集線器, TSM-1

7-20 單一集線器架構 (TSM-1)

7-7 TSM-1模式衝撞網域直徑

模式

CAT-5

平衡纜線(銅線)

雙絞纜線(銅線)

光纖

CAT-5 與光纖

T and XS/LX

雙絞纜線與光纖

CX and XS/LX

DTE-DTE

(參考圖7-19)

100

25

316

NA

NA

單一集線器

(參考圖7-20)

200

50

220

210+

220++

+ 假設CAT-5纜線100公尺及光纖110公尺。

++ 假設雙絞纜線 25公尺及光纖 195公尺。

傳輸系統模式二 (TSM-2)

TSM-2模式是以包含一個集線器,並且實際規模受來回傳遞延遲時間限制的網路架構。驗證這種架構是否符合要求基本上就是做一個延遲時間的計算。通常一個合格的網路必須能允許網路上的任何兩部工作站同時競爭網路的使用權。每一部參與競爭的工作站應該在「衝撞視窗」(collision window) 內收到發生衝撞的訊號。除此之外,在1000 Mbps網路上每一個訊框的長度最多為512位元組。以上的需求限制了網路的規模(直徑)。也就是說,網路的「最大路徑延遲」(Worst-case path delay value, PDV)必須符合標準。在計算網路的最大路徑延遲時必須同時考慮到工作站延遲,纜線延遲,以及集線器延遲等等。圖7-21所示為兩部工作站間包含一個集線器的路徑示意圖。

 

7-21 單一集線器架構 (TSM-2)

每一條欲驗證的路徑都應該以下列公式計算其PDV

PDV = S 鏈路延遲(LSDV+ 集線器延遲+工作站延遲+安全差數

其中鏈路延遲(Link Segment Delay Value, LSDV)表示網路區段的來回時間延遲,計算公式為

LSDV = 2 x區段纜線長度x纜線時間延遲

其中纜線時間延遲與纜線材質有關,可參考表7-6的數據。

集線器延遲及工作站延遲與產品製造有關,但仍可以參考表7-8的預設數據。至於安全差數 (safety margin) 則是路徑上可能的意外延遲,例如牆上接口至工作站間線路的長度常會有變化。安全差數可以將此部份的延遲吸收掉,通常安全差數可訂為0-40位元時間(建議值為32位元時間)。

PDV計算出來後的驗證非常簡單。只要PDV小於4096位元時間(即傳送一筆512位元組的訊框的時間),就算通過驗證。

7-8 TSM-2 模式網路元件時間延遲

元件

每公尺來回傳遞延遲

(位元時間/公尺)

最大來回傳遞延遲

(位元時間)

兩個 DTEs

864

Cat-5 纜線區段(1000BASE-T

11.12

1112 (100m)

雙絞纜線區段(1000BASE-CX

10.10

253 (25m)

光纖區段

1000BASE-SX, 1000BASE-LX

10.10

1111 (110m)

集線器

976

 

 


yball1.gif (1556 bytes) 7.11 8B/10B 編碼法

IEEE 802.3z gigabit Ethernet的實體層 PCS 採用8B/10B 編碼法來改善資料在線路上傳送的特性。此編碼法保證在實體層傳送之位元串有足夠的訊號轉換頻率以便接收端能從中復原時序 (clock recovery)。此種編碼亦大大的增加了偵測出一個或多個位元傳送錯誤的能力。除此之外,有些特殊的「群碼」 (code_groups) 包含獨特而容易辨識的位元圖案也可以幫助接收端於位元串中達成「群碼對齊」 (code_group alignment) 的工作。此 8B/10B編碼法同時也具有以下重要的特性:高訊號轉換密度 (high transition density), 長度限制編碼 (run-length-limited code), 以及直流平衡 (DC-balanced)。圖7-22所示為8B/10B編碼架構圖。8B/10B傳輸編碼使用字母來表示未編碼的位元組及一個訊號控制變數。未編碼位元組的每一個位元可能是二進位的 1 0,控制變數Z,則可為 D K。控制變數為 D 表示其所攜帶的位元組為數據位元組 (data octet), 控制變數為K則表示其所攜帶的位元組為特殊位元組 (special octet)

7-22 8B/10B 編碼架構

 

A,B,C,D,E,F,G,H 分別用來代表未編碼位元組的每一個位元。在8B/10B傳輸編碼下,這些位元會被轉換成10-位元(a,b,c,d,e,i,f,g,h,j)的群碼 (code_groups)。由於 8 位元有 256 種組合,因此我們需要 256 種群碼。為方便起見,我們用 Dx.y 來代表一個正確的數據群碼, Kx.y 來代表一個正確的特殊群碼,其中 x EDCBA 的十進位值, y HGF 的十進位值。表7-9所示為8B/10B傳輸編碼下正確的數據群碼 (D code-groups)。表7-10所示則為8B/10B傳輸編碼下正確的特殊群碼 (K code-groups)。這兩個表在傳送時可以用來產生正確的群碼,在接收時則可以用來驗證收到的群碼是否正確。表7-9中的第一個欄位為群碼名稱(Code-group name), 第二個欄位為其位元組值(00-FF, 第三個欄位為其八個位元值,第四及第五個欄位較特別,是每一個位元組對照的十個位元。不過到底要用哪一個欄位的值必須根據目前傳送的「偏差值」(Running Disparity, RD)。偏差值是二元數,可以是正 (RD+) 的,也可以是負 (RD-)的。

 

7-9正確之數據群碼

群碼名稱

位元組值

八位元

HGF EDCBA

目前RD -

abcdei fghj

目前RD +

abcdei fghj

D0.0

00

000 00000 100111 0100 011000 1011

D1.0

01

000 00001 011101 0100 100010 1011

D2.0

02

000 00010 101101 0100 010010 1011

D3.0

03

000 00011 110001 1011 110001 0100

D4.0

04

000 00100 110101 0100 001010 1011

D5.0

05

000 00101 101001 1011 101001 0100

D6.0

06

000 00110 011001 1011 011001 0100

D7.0

07

000 00111 111000 1011 000111 0100

D8.0

08

000 01000 111001 0100 000110 1011

D9.0

09

000 01001 100101 1011 100101 0100

D10.0

0A

000 01010 010101 1011 010101 0100

D11.0

0B

000 01011 110100 1011 110100 0100

D12.0

0C

000 01100 001101 1011 001101 0100

D13.0

0D

000 01101 101100 1011 101100 0100

D14.0

0E

000 01110 011100 1011 011100 0100

D15.0

0F

000 01111 010111 0100 101000 1011

D16.0

10

000 10000 011011 0100 100100 1011

D17.0

11

000 10001 100011 1011 100011 0100

D18.0

12

000 10010 010011 1011 010011 0100

D19.0

13

000 10011 110010 1011 110010 0100

D20.0

14

000 10100 001011 1011 001011 0100

D21.0

15

000 10101 101010 1011 101010 0100

D22.0

16

000 10110 011010 1011 011010 0100

表7-9正確之數據群碼(續)

群碼名稱

位元組值

八位元

HGF EDCBA

目前RD -

abcdei fghj

目前RD +

abcdei fghj

D23.0

17

000 10111 111010 0100 000101 1011

D24.0

18

000 11000 110011 0100 001100 1011

D25.0

19

000 11001 100110 1011 100110 0100

D26.0

1A

000 11010 010110 1011 010110 0100

D27.0

1B

000 11011 110110 0100 001001 1011

D27.0

1B

000 11011 110110 0100 001001 1011

D28.0

1C

000 11100 001110 1011 001110 0100

D29.0

1D

000 11101 101110 0100 010001 1011

D30.0

1E

000 11110 011110 0100 100001 1011

D31.0

1F

000 11111 101011 0100 010100 1011

D0.1

20

001 00000 100111 1011 011000 1001

D1.1

21

001 00001 011101 1011 100010 1001

D2.1

22

001 00010 101101 1011 010010 1001

D3.1

23

001 00011 110001 1011 110001 1001

D4.1

24

001 00100 110101 1011 001010 1001

D5.1

25

001 00101 101001 1011 101001 1001

D6.1

26

001 00110 011001 1011 011001 1001

D7.1

27

001 00111 111000 1011 000111 1001

D8.1

28

001 01000 111001 1011 000110 1001

D9.1

29

001 01001 100101 1011 100101 1001

D10.1

2A

001 01010 010101 1001 010101 1001

D11.1

2B

001 01011 110100 1001 110100 1001

D12.1

2C

001 01100 001101 1001 001101 1001

 

 

 

表7-9正確之數據群碼(續)

群碼名稱

位元組值

八位元

HGF EDCBA

目前RD -

abcdei fghj

目前RD +

abcdei fghj

D13.1

2D

001 01101 101101 1001 101100 1001

D14.1

2E

001 01110 011100 1001 011100 1001

D15.1

2F

001 01111 010111 1001 101000 1001

D16.1

30

001 10000 011011 1001 011011 1001

D17.1

31

001 10001 100011 1001 100011 1001

D18.1

32

001 10010 010011 1001 010011 1001

D19.1

33

001 10011 110010 1001 110010 1001

D20.1

34

001 10100 001011 1001 001011 1001

D21.1

35

001 10101 101010 1001 101010 1001

D22.1

36

001 10110 011010 1001 011010 1001

D23.1

37

001 10111 111010 1001 000101 1001

D24.1

38

001 11000 110011 1001 001100 1001

D25.1

39

001 11001 100110 1001 100110 1001

D26.1

3A

001 11010 010110 1001 010110 1001

D27.1

3B

001 11011 110110 1001 001001 1001

D28.1

3C

001 11100 001110 1001 001110 1001

D29.1

3D

001 11101 101110 1001 010001 1001

D30.1

3E

001 11110 011110 1001 100001 1001

D31.1

3F

001 11111 101011 1001 010100 1001
D0.2

40

010 00000 100111 0101 011000 0101
D1.2

41

010 00001 011101 0101 100010 0101
D2.2

42

010 00010 101101 0101 010010 0101
D3.2

43

010 00011 110001 0101 110001 0101

 

 

表7-9正確之數據群碼(續)

群碼名稱

位元組值

八位元

HGF EDCBA

目前RD -

abcdei fghj

目前RD +

abcdei fghj

D4.2

44

010 00100 110101 0101 001010 0101
D5.2

45

010 00101 101001 0101 101001 0101
D6.2

46

010 00110 011001 0101 011001 0101
D7.2

47

010 00111 111000 0101 000111 0101
D8.2

48

010 01000 111001 0101 000110 0101
D9.2

49

010 01001 100101 0101 100101 0101

D10.2

4A

010 01010 010101 0101 010101 0101

D11.2

4B

010 01011 110100 0101 110100 0101

D12.2

4C

010 01100 001101 0101 001101 0101

D13.2

4D

010 01101 101100 0101 101100 0101

D14.2

4E

010 01110 011100 0101 011100 0101

D15.2

4F

010 01111 010111 0101 101000 0101

D16.2

50

010 10000 011011 0101 100100 0101

D17.2

51

010 10001 100011 0101 100011 0101

D18.2

52

010 10010 010011 0101 010011 0101

D19.2

53

010 10011 110010 0101 110010 0101

D20.2

54

010 10100 001011 0101 001011 0101

D21.2

55

010 10101 101010 0101 101010 0101

D22.2

56

010 10110 011010 0101 011010 0101

D23.2

57

010 10111 111010 0101 000101 0101

D24.2

58

010 11000 110011 0101 001100 0101

D25.2

59

010 11001 100110 0101 100110 0101

D26.2

5A

010 11010 010110 0101 010110 0101

表7-9正確之數據群碼(續)

群碼

名稱

位元組值

八位元

HGF EDCBA

目前RD -

abcdei fghj

目前RD +

abcdei fghj

D27.2

5B

010 11011 110110 0101 001001 0101

D28.2

5C

010 11100 001110 0101 001110 0101

D29.2

5D

010 11101 101110 0101 010001 0101

D30.2

5E

010 11110 011110 0101 100001 0101

D31.2

5F

010 11111 101011 0101 010100 0101

D0.3

60

011 00000 100111 0011 011000 1100

D1.3

61

011 00001 011101 0011 100010 1100

D2.3

62

011 00010 101101 0011 010010 1100

D3.3

63

011 00011 110001 1100 110001 0011

D4.3

64

011 00100 110101 0011 001010 1100

D5.3

65

011 00101 101001 1100 101001 0011

D6.3

66

011 00110 011001 1100 011001 0011

D7.3

67

011 00111 111000 1100 000111 0011

D8.3

68

011 01000 111001 0011 000110 1100

D9.3

69

011 01001 100101 1100 100101 0011

D10.3

6A

011 01010 010101 1100 010101 0011

D11.3

6B

011 01011 110100 1100 110100 0011

D12.3

6C

011 01100 001101 1100 001101 0011

D13.3

6D

011 01101 101100 1100 101100 0011

D14.3

6E

011 01110 011100 1100 011100 0011

D15.3

6F

011 01111 010111 0011 101000 1100

D16.3

70

011 10000 011011 0011 100100 1100

D17.3

71

011 10001 100011 1100 100011 0011

 

表7-9正確之數據群碼(續)

群碼名稱

位元組值

八位元

HGF EDCBA

目前RD -

abcdei fghj

目前RD +

abcdei fghj

D18.3

72

011 10010 010011 1100 010011 0011

D19.3

73

011 10011 110010 1100 110010 0011

D20.3

74

011 10100 001011 1100 001011 0011

D21.3

75

011 10101 101010 1100 101010 0011

D22.3

76

011 10110 011010 1100 011010 0011

D23.3

77

011 10111 111010 0011 000101 1100

D24.3

78

011 11000 110011 0011 001100 1100

D25.3

79

011 11001 100110 1100 100110 0011

D26.3

7A

011 11010 010110 1100 010110 0011

D27.3

7B

011 11011 110110 0011 001001 1100

D28.3

7C

011 11100 001110 1100 001110 0011

D29.3

7D

011 11101 101110 0011 010001 1100

D30.3

7E

011 11110 011110 0011 100001 1100

D31.3

7F

011 11111 101011 0011 010100 1100

D0.4

80

100 00000 100111 0010 011000 1101

D1.4

81

100 00001 011101 0010 100010 1101

D2.4

82

100 00010 101101 0010 010010 1101

D3.4

83

100 00011 110001 1101 110001 0010

D4.4

84

100 00100 110101 0010 001010 1101

D5.4

85

100 00101 101001 1101 101001 0010

D6.4

86

100 00110 011001 1101 011001 0010

D7.4

87

100 00111 111000 1101 000111 0010

D8.4

88

100 01000 111001 0010 000110 1101

 

表7-9正確之數據群碼(續)

群碼

名稱

位元組值

八位元

HGF EDCBA

目前RD -

abcdei fghj

目前RD +

abcdei fghj

D9.4

89

100 01001 100101 1101 100101 0010

D10.4

8A

100 01010 010101 1101 010101 0010

D11.4

8B

100 01011 110100 1101 110100 0010

D12.4

8C

100 01100 001101 1101 001101 0010

D13.4

8D

100 01101 101100 1101 101100 0010

D14.4

8E

100 01110 011100 1101 011100 0010

D15.4

8F

100 01111 010111 0010 101000 1101

D16.4

90

100 10000 011011 0010 100100 1101

D17.4

91

100 10001 100011 1101 100011 0010

D18.4

92

100 10010 010011 1101 010011 0010

D19.4

93

100 10011 110010 1101 110010 0010

D20.4

94

100 10100 001011 1101 001011 0010

D21.4

95

100 10101 101010 1101 101010 0010

D22.4

96

100 10110 011010 1101 011010 0010

D23.4

97

100 10111 111010 0010 000101 1101

D24.4

98

100 11000 110011 0010 001100 1101

D25.4

99

100 11001 100110 1101 100110 0010

D26.4

9A

100 11010 010110 1101 010110 0010

D27.4

9B

100 11011 110110 0010 001001 1101

D28.4

9C

100 11100 001110 1101 001110 0010

D29.4

9D

100 11101 101110 0010 010001 1101

D30.4

9E

100 11110 011110 0010 100001 1101

D31.4

9F

100 11111 101011 0010 010100 1101

 

表7-9正確之數據群碼(續)

群碼名稱

位元組值

八位元

HGF EDCBA

目前RD -

abcdei fghj

目前RD +

abcdei fghj

D0.5

A0

101 00000 100111 1010 011000 1010

D1.5

A1

101 00001 011101 1010 100010 1010

D2.5

A2

101 00010 101101 1010 010010 1010

D3.5

A3

101 00011 110001 1010 110001 1010

D4.5

A4

101 00100 110101 1010 001010 1010

D5.5

A5

101 00101 101001 1010 101001 1010

D6.5

A6

101 00110 011001 1010 011001 1010

D7.5

A7

101 00111 111000 1010 000111 1010

D8.5

A8

101 01000 111001 1010 000110 1010

D9.5

A9

101 01001 100101 1010 100101 1010

D10.5

AA

101 01010 010101 1010 010101 1010

D11.5

AB

101 01011 110100 1010 110100 1010

D12.5

AC

101 01100 001101 1010 001101 1010

D13.5

AD

101 01101 101100 1010 101100 1010

D14.5

AE

101 01110 011100 1010 011100 1010

D15.5

AF

101 01111 010111 1010 101000 1010

D16.5

B0

101 10000 011011 1010 100100 1010

D17.5

B1

101 10001 100011 1010 100011 1010

D18.5

B2

101 10010 010011 1010 010011 1010

D19.5

B3

101 10011 110010 1010 110010 1010

D20.5

B4

101 10100 001011 1010 001011 1010

D21.5

B5

101 10101 101010 1010 101010 1010

D22.5

B6

101 10110 011010 1010 011010 1010

7-9正確之數據群碼(續)

群碼名稱

位元組值

八位元

HGF EDCBA

目前RD -

abcdei fghj

目前RD +

abcdei fghj

D23.5

B7

101 10111 111010 1010 000101 1010

D24.5

B8

101 11000 110011 1010 001100 1010

D25.5

B9

101 11001 100110 1010 100110 1010

D26.5

BA

101 11010 010110 1010 010110 1010

D27.5

BB

101 11011 110110 1010 001001 1010

D28.5

BC

101 11100 001110 1010 001110 1010

D29.5

BD

101 11101 101110 1010 010001 1010

D30.5

BE

101 11110 011110 1010 100001 1010

D31.5

BF

101 11111 101011 1010 010100 1010

D0.6

C0

110 00000 100111 0110 011000 0110

D1.6

C1

110 00001 011101 0110 100010 0110

D2.6

C2

110 00010 101101 0110 010010 0110

D3.6

C3

110 00011 110001 0110 110001 0110

D4.6

C4

110 00100 110101 0110 001010 0110

D5.6

C5

110 00101 101001 0110 101001 0110

D6.6

C6

110 00110 011001 0110 011001 0110

D7.6

C7

110 00111 111000 0110 000111 0110

D8.6

C8

110 01000 111001 0110 000110 0110

D9.6

C9

110 01001 100101 0110 100101 0110

D10.6

CA

110 01010 010101 0110 010101 0110

D11.6

CB

110 01011 110100 0110 110100 0110

D12.6

CC

110 01100 001101 0110 001101 0110

D13.6

CD

110 01101 101100 0110 101100 0110

 

 

7-9正確之數據群碼(續)

群碼名稱

位元組值

八位元

HGF EDCBA

目前RD -

abcdei fghj

目前RD +

abcdei fghj

D14.6

CE

110 01110 011100 0110 011100 0110

D15.6

CF

110 01111 010111 0110 101000 0110

D16.6

D0

110 10000 011011 0110 100100 0110

D17.6

D1

110 10001 100011 0110 100011 0110

D18.6

D2

110 10010 010011 0110 010011 0110

D19.6

D3

110 10011 110010 0110 110010 0110

D20.6

D4

110 10100 001011 0110 001011 0110

D21.6

D5

110 10101 101010 0110 101010 0110

D22.6

D6

110 10110 011010 0110 011010 0110

D23.6

D7

110 10111 111010 0110 000101 0110

D24.6

D8

110 11000 110011 0110 001100 0110

D25.6

D9

110 11001 100110 0110 100110 0110

D26.6

DA

110 11010 010110 0110 010110 0110

D27.6

DB

110 11011 110110 0110 001001 0110

D28.6

DC

110 11100 001110 0110 001110 0110

D29.6

DD

110 11101 101110 0110 010001 0110

D30.6

DE

110 11110 011110 0110 100001 0110

D31.6

DF

110 11111 101011 0110 010100 0110

D0.7

E0

111 00000 100111 0001 011000 1110

D1.7

E1

111 00001 011101 0001 100010 1110

D2.7

E2

111 00010 101101 0001 010010 1110

D3.7

E3

111 00011 110001 1110 110001 0001

D4.7

E4

111 00100 110101 0001 001010 1110

 

表7-9正確之數據群碼(續)

群碼名稱

位元組值

八位元

HGF EDCBA

目前RD -

abcdei fghj

目前RD +

abcdei fghj

D5.7

E5

111 00101 101001 1110 101001 0001

D6.7

E6

111 00110 011001 1110 011001 0001

D7.7

E7

111 00111 111000 1110 000111 0001

D8.7

E8

111 01000 111001 0001 000110 1110

D9.7

E9

111 01001 100101 1110 100101 0001

D10.7

EA

111 01010 010101 1110 010101 0001

D11.7

EB

111 01011 110100 1110 110100 1000

D12.7

EC

111 01100 001101 1110 001101 0001

D13.7

ED

111 01101 101100 1110 101100 1000

D14.7

EE

111 01110 011100 1110 011100 1000

D15.7

EF

111 01111 010111 0001 101000 1110

D16.7

F0

111 10000 011011 0001 100100 1110

D17.7

F1

111 10001 100011 0111 100011 0001

D18.7

F2

111 10010 010011 0111 010011 0001

D19.7

F3

111 10011 110010 1110 110010 0001

D20.7

F4

111 10100 001011 0111 001011 0001

D21.7

F5

111 10101 101010 1110 101010 0001

D22.7

F6

111 10110 011010 1110 011010 0001

D23.7

F7

111 10111 111010 0001 000101 1110

D24.7

F8

111 11000 110011 0001 001100 1110

D25.7

F9

111 11001 100110 1110 100110 0001

D26.7

FA

111 11010 010110 1110 010110 0001

D27.7

FB

111 11011 110110 0001 001001 1110

D28.7

FC

111 11100 001110 1110 001110 0001

表7-9正確之數據群碼(續)

群碼名稱

位元組值

八位元

HGF EDCBA

目前RD -

abcdei fghj

目前RD +

abcdei fghj

D29.7

FD

111 11101 101110 0001 010001 1110

D30.7

FE

111 11110 011110 0001 100001 1110

D31.7

FF

111 11111 101011 0001 010100 1110

 

7-10正確之特殊群碼

群碼名稱

位元組值

八位元

HGF EDCBA

目前RD -

abcdei fghj

目前RD + abcdei fghj

Notes

K28.0

1C

000 11100

001111 0100

110000 1011

1

1.2

1

1

1

2

1

1.2

K28.1

3C

001 11100

001111 1001

110000 0110

K28.2

5C

010 11100

001111 0101

110000 1010

K28.3

7C

011 11100

001111 0011

110000 1100

K28.4

9C

100 11100

001111 0010

110000 1101

K28.5

BC

101 11100

001111 1010

110000 0101

K28.6

DC

110 11100

001111 0110

110000 1001

K28.7

FC

111 11100

001111 1000

110000 0111

K23.7

F7

111 10111

111010 1000

000101 0111

K27.7

FB

111 11011

110110 1000

001001 0111

K29.7

FD

111 11101

101110 1000

010001 0111

K30.7

FE

111 11110

011110 1000

100001 0111

NOTES

1 Reserved

2 Contains comma

 

在傳送端,偏差值的初始值為負的。傳送器每傳送一個群碼就根據該群碼的內容重新計算一個新值。在接收端,偏差值的初始值可正可負。接收器每接收一個群碼就根據該群碼的內容重新計算一個新值。偏差值的計算原則如下所述。

一個群碼的偏差值的計算是以所謂的「子區塊」 (sub-blocks) 為基礎。而所傳送(接收)的十位元中,前六個位元(abcdei)形成一個子區塊,後面四個位元(fghj)形成另一個子區塊。在六位元子區塊前的偏差值是前一個群碼的偏差值,在四位元子區塊前的偏差值是在六位元子區塊計算後的偏差值,群碼後的偏差值則是該群碼中四位元子區塊計算後的偏差值。子區塊偏差值的計算方式如下:

任何一個子區塊後的偏差值為正,如果該子區塊包含1的數量大於0的數量。如果是在一個值為 000111 的六位元子區塊後,則偏差值仍然為正。相同的,如果是在一個值為 0011 的四位元子區塊後,則偏差值仍然為正。

任何一個子區塊後的偏差值為負,如果該子區塊包含1的數量小於0的數量。如果是在一個值為 111000 的六位元子區塊後,則偏差值仍然為負。相同的,如果是在一個值為 1100 的四位元子區塊後,則偏差值仍然為負。

在其他狀況下(包含1的數量等於0的數量),則偏差值保持不變。

這裡值得注意的是,所有包含1數量等於0數量的子區塊都屬於無偏差。但是為了限制子區塊間1數量與0數量的差異值,8B/10B編碼法規定,000111 0011 只能在該子區塊之前的偏差值為正時才能產生。相同的,111000 1100 只能在該子區塊之前的偏差值為負時才能產生。

針對每一個位元組,其對應的群碼應參考表7-9或表7-10所產生。在選擇使用哪一行的群碼時,應該依據傳送端目前的偏差值。如果目前的偏差值為正,則選用最右邊欄位的群碼。如果目前的偏差值為負,則選用右邊第二個欄位的群碼。每傳送一個群碼都必須計算一個新的偏差值。

接收端在接收群碼時也是根據表7-9或表7-10來決定該群碼的正確性。當然,接收端目前的偏差值也必須考慮到。如果該群碼在表中存在,而且與接收端目前的偏差值符合,則該群碼為正確群碼,其相對的八位元也成功的被解碼出來。如果該群碼不在表中,則該群碼被認為是不正確的。但是無論接收群碼的正確性,該群碼仍必須用來產生一個新的偏差值。此新值成為驗證下一個接收群碼正確性時的偏差值。

在接收時發現一個不正確的群碼並不表示該群碼發生錯誤。不正確群碼可能肇因於先前的傳送錯誤,該錯誤改變了傳送位元串的偏差值,但是錯誤發生當時沒有檢查出來。錯誤群碼發生率通常與線路的位元錯誤率 (bit-error-rate, BER) 成正比,計算群碼發生錯誤率也可用來監督線路的狀況。

為了傳送端與接收端間能達到位元與群碼之同步,8B/10B編碼法也規範了八種所謂的「順序集合」 (Ordered-sets)。順序集合可以是只有一個特殊群碼,或特殊群碼與數據群碼的組合,如表7-11所示。順序集合可以包含一個,兩個,或四個群碼,但第一個群碼一定是一個特殊群碼。對於多群碼的順序集合,第二個群碼一定是一個數據群碼。此數據群碼用來區別其他的順序集合。

7-11 順序集合

代碼

順序集合

群碼數

編碼

/C/

Configuration

 

/C1//C2/交替

/C1/

Configuration 1

4

/K28.5/D21.5/Config-Rega

/C2/

Configuration 2

4

/K28.5/D2.2/Config-Rega

/I/

IDLE

 

Correcting /I1/, Preserving /I2/

/I1/

IDLE 1

2

/K28.5/D5.6/

/I2/

IDLE 2

2

/K28.5/D16.2/

 

Encapsulation

   

/R/

Carrier_Extend

1

/K23.7/

/S/

Start_of_Packet

1

/K27.7/

/T/

End_of_Packet

1

/K29.7/

/V/

Error-Propagation

1

/K30.7/

a: 代表 Config-Reg 值的兩個數據群碼

 

在傳送端與接收端開始通訊之前,先用組態 (Configuration) 順序集合來設定雙方的組態。在傳送一個訊框時則使用 /S/, /T/ 碼來表示訊框的開始與結束。GMII介面如果沒有資料往下傳,則傳送端只傳送 /I/ 碼。

7-12, 7-13, 7-14 所示為8B/10B編碼法計算偏差值的範例。表 7-12, 7-13的例子同時也舉出在接收時發現一個不正確的群碼並不表示該群碼發生錯誤的情形。表 7-12的例子中,偏差值在群碼發生錯誤後的第二個群碼檢測出錯誤。表 7-13的例子中,偏差值在群碼發生錯誤後的第一個群碼就檢測出錯誤。表 7-14 的例子則顯示一個群碼發生一個位元的錯誤,而且該群碼就被檢查出不正確。此錯誤影響到下一個群碼,但在檢查出偏差值的錯誤後,遏止此錯誤的蔓延。

 

 

 

7-12 偏差值計算與錯誤偵測範例(一)

字元串

群碼 群碼 群碼

RD RD RD RD RD RD RD

傳送群碼

- D21.1 - D10.2 - D23.5 +

傳送位元串

- 101010 - 1001 - 010101 - 0101 - 111010 + 1010 +

接收位元串

- 101010 - 1011a + 010101 + 0101 + 111010 +b 1010 +

接收群碼

- D21.0 + D10.2 + 錯誤群碼b +c

a: 位元發生錯誤 (1001 Þ 1011)

b: 非零偏差的區塊應該交換其前後偏差值之極性 (+ Þ -)

c: 無論接收群碼是否正確,偏差值仍須繼續計算。非零偏差的區塊可避免錯誤蔓延。

7-13 偏差值計算與錯誤偵測範例(二)

字元串

群碼 群碼 群碼

RD RD RD RD RD RD RD

傳送群碼

- D21.1 - D23.4 - D23.5 +

傳送位元串

- 101010 - 1001 - 111010 + 0010 - 111010 + 1010 +

接收位元串

- 101010 - 1011a + 111010b + 0010 + 111010 + 1010 +

接收群碼

- D21.0 + 錯誤群碼b - D23.5 +

a: 位元發生錯誤 (1001 Þ 1011)

b: 非零偏差的區塊應該交換其前後偏差值之極性 (+ Þ -)

7-14 偏差值計算與錯誤偵測範例(三)

字元串

群碼 群碼 群碼

RD RD RD RD RD RD RD

傳送群碼

- D3.6(FCS3) - K29.7(/T/) - K23.7(/R/) -

傳送位元串

- 110001 - 0110 - 101110 + 1000 - 111010 + 1000 -

接收位元串

- 110001 - 0111a +b 101110 +c 1000 - 111010 + 1010 -

接收群碼

- 錯誤群碼d + 錯誤群碼e - K23.7(/R/) -

a: 位元發生錯誤 (0110 Þ 0111)

b: 非零偏差的區塊應該交換其前後偏差值之極性 (- Þ +)

c: 非零偏差的區塊應該交換其前後偏差值之極性 (+ Þ -)

d: 接收群碼在表7-9, 7-10中找不到(檢查出錯誤群碼)。

e: 非零偏差的區塊可避免錯誤蔓延。

 


習題

7.1 請說明 100BaseT 網路通訊協定架構。

7.2 請比較 100Base4T 網路與 100BaseX 網路的異同。

7.3 請說明 100Base4T 網路如何利用四對雙絞線傳送訊框。

7.4 請說明為什麼 100BaseT 網路不採用原來 Ethernet 網路之編碼技術?

7.5 何謂 8B/6T 編碼法?100Base4T 網路如何利用此編碼法?

7.6 何謂「直流迷失」(DC wander) 現象?100Base4T 網路如何解決此問題?

7.7 參考表7-1。請將下圖中 A-L 位置填入適當字碼。

7-23

7.8 參考表7-1。請將下圖中 A-L 位置填入適當字碼。

7-24

 

7.9 請說明 100Base4T 編碼法中,EOS (End-of-Stream) 的使用方式。

7.10 請說明 100Base4T 編碼法中,SOS (Start-of-Stream) 的使用方式。

7.11 何謂「近端串音」現象?100Base4T 網路如何解決此問題?

請說明 Ether-Switch 的工作原理。

何謂「回壓」(backpressure) 技術?交換器如何使用技術?

何謂「延伸載波」(extended carrier) ? 請說明其工作原理與包含延伸載波之訊框格式。

何謂「訊爆」(frame bursting) ? 請說明其工作原理。

1000Mbps CSMA/CD 網路提供兩種網路模式:「傳輸系統模式一」(Transmission System Model 1, TSM-1),「傳輸系統模式二」(Transmission System Model 2, TSM-2)。請說明這兩種模式的特性為

何。

請說明TSM-2模式中,「最大路徑延遲」 (Worst-case path delay value, PDV) 值如何計算。

請簡略說明Gigabit Ethernet採用之8B/10B編碼法工作原理。

請簡略說明8B/10B編碼法中「偏差值」(running disparity) 的目的與計算規則。

參閱表7-9。請將下表中接收位元串及接收群碼空白部份填入正確內容。

字元串

群碼 群碼 群碼

RD RD RD RD RD RD RD

傳送群碼

- D21.1 - D10.2 - D23.5 +

傳送位元串

- 101010 - 1001 - 010101 - 0101 - 111010 + 1010 +

接收位元串

- 101010 - 1000

接收群碼

 

 

7.21參閱表7-9。請將下表中接收位元串及接收群碼空白部份填入正確內容。

字元串

群碼 群碼 群碼

RD RD RD RD RD RD RD

傳送群碼

- D21.1 - D23.4 - D23.5 +

傳送位元串

- 101010 - 1001 - 111010 + 0010 - 111010 + 1010 +

接收位元串

- 101010 - 1101

接收群碼

 

 

22參閱表7-9及表7-10。請將下表中接收位元串及接收群碼空白部份填入正確內容。

字元串

群碼 群碼 群碼

RD RD RD RD RD RD RD

傳送群碼

- D3.6(FCS3) - K29.7(/T/) - K23.7(/R/) -

傳送位元串

- 110001 - 0110 - 101110 + 1000 - 111010 + 1000 -

接收位元串

- 110001 - 0100

接收群碼