目前交換機在傳送源和目的端口的數據包時通常采用直通式交換、存儲轉發式和碎片隔離方式三種數據包交換方式。目前的存儲轉發式是交換機的主流交換方式。
1、直通交換方式(Cut-through) 采用直通交換方式的以太網交換機可以理解為在各端口間是縱橫交叉的線路矩陣電話交換機。它在輸入端口檢測到一個數據包時,檢查該包的包頭,獲取包的目的地址,啟動內部的動態查找表轉換成相應的輸出端口,在輸入與輸出交叉處接通,把數據包直通到相應的端口,實現交換功能。由于它只檢查數據包的包頭(通常只檢查14個字節),不需要存儲,所以切入方式具有延遲小,交換速度快的優點。所謂延遲(Latency)是指數據包進入一個網絡設備到離開該設備所花的時間。 它的缺點主要有三個方面:一是因為數據包內容并沒有被以太網交換機保存下來,所以無法檢查所傳送的數據包是否有誤,不能提供錯誤檢測能力;第二,由于沒有緩存,不能將具有不同速率的輸入/輸出端口直接接通,而且容易丟包。如果要連到高速網絡上,如提供快速以太網(100BASE-T)、FDDI或ATM連接,就不能簡單地將輸入/輸出端口“接通”,因為輸入/輸出端口間有速度上的差異,必須提供緩存;第三,當以太網交換機的端口增加時,交換矩陣變得越來越復雜,實現起來就越困難。 2、存儲轉發方式(Store-and-Forward) 存儲轉發(Store and Forward)是計算機網絡領域使用得最為廣泛的技術之一,以太網交換機的控制器先將輸入端口到來的數據包緩存起來,先檢查數據包是否正確,并過濾掉沖突包錯誤。確定包正確后,取出目的地址,通過查找表找到想要發送的輸出端口地址,然后將該包發送出去。正因如此,存儲轉發方式在數據處理時延時大,這是它的不足,但是它可以對進入交換機的數據包進行錯誤檢測,并且能支持不同速度的輸入/輸出端口間的交換,可有效地改善網絡性能。它的另一優點就是這種交換方式支持不同速度端口間的轉換,保持高速端口和低速端口間協同工作。實現的辦法是將10Mbps低速包存儲起來,再通過100Mbps速率轉發到端口上。 3、碎片隔離式(Fragment Free) 這是介于直通式和存儲轉發式之間的一種解決方案。它在轉發前先檢查數據包的長度是否夠64個字節(512 bit),如果小于64字節,說明是假包(或稱殘幀),則丟棄該包;如果大于64字節,則發送該包。該方式的數據處理速度比存儲轉發方式快,但比直通式慢,但由于能夠避免殘幀的轉發,所以被廣泛應用于低檔交換機中。 使用這類交換技術的交換機一般是使用了一種特殊的緩存。這種緩存是一種先進先出的FIFO(First In First Out),比特從一端進入然后再以同樣的順序從另一端出來。當幀被接收時,它被保存在FIFO中。如果幀以小于512比特的長度結束,那么FIFO中的內容(殘幀)就會被丟棄。因此,不存在普通直通轉發交換機存在的殘幀轉發問題,是一個非常好的解決方案。數據包在轉發之前將被緩存保存下來,從而確保碰撞碎片不通過網絡傳播,能夠在很大程度上提高網絡傳輸效率。 |