Tuesday, April 8, 2014

什麼是Trunk? 什麼是端口匯聚 (Link aggregation)?

什麼是Trunk? 什麼是端口匯聚 (Link aggregation)?

TRUNK是端口匯聚 (Link aggregation) 的意思,就是通過配置軟件的設置,將2個或多個物理端口組合在一起成為一條邏輯的路徑從而增加在交換機和網絡節點之間的帶寬,將屬於這幾個端口的帶寬合併,給端口提供一個幾倍於獨立端口的獨享的高帶寬。Trunk是一種封裝技術,它是一條點到點的鏈路,鏈路的兩端可以都是交換機,也可以是交換機和路由器,還可以是主機和交換機或路由器。基於端口匯聚(Trunk)功能,允許交換機與交換機、交換機與路由器、主機與交換機或路由器之間通過兩個或多個端口並行連接同時傳輸以提供更高帶寬、更大吞吐量, 大幅度提供整個網絡能力。

在最普遍的路由與交換領域,VLAN的端口聚合也有的叫TRUNK,不過大多數都叫TRUNKING ,如CISCO公司。所謂的TRUNKING是用來在不同的交換機之間進行連接,以保證在跨越多個交換機上建立的同一個VLAN的成員能夠相互通訊。其中交換機之間互聯用的端口就稱為TRUNK端口。與一般的交換機的級聯不同,TRUNKING是基於OSI第二層模型的,如果你在2個交換機上分別劃分了多個VLAN(VLAN也是基於Layer2的),那麼分別在兩個交換機上的VLAN10和VLAN20的各自的成員如果要互通,就需要在A交換機上設為VLAN10的端口中取一個和交換機B上設為VLAN10的某個端口作級聯連接。VLAN20也是這樣。那麼如果交換機上劃了10個VLAN就需要分別連10條線作級聯,端口效率就太低了。 當交換機支持TRUNKING的時候,事情就簡單了,只需要2個交換機之間有一條級聯線,並將對應的端口設置為Trunk,這條線路就可以承載交換機上所有VLAN的信息。這樣的話,就算交換機上設了上百個個VLAN也只用1個端口就解決了。

如果是不同台的交換機上相同id的vlan要相互通信,那麼可以通過共享的trunk端口就可以實現,如果是同一台上不同id的vlan/不同台不同id的vlan它們之間要相互通信,需要通過第三方的路由來實現;vlan的劃分有兩個需要注意的地方:一是劃分了幾個不同的vlan組,都有不同的vlan id號;分配到vlan 組裡面的交換機端口也有port id.比如端口1,2,3,4劃分到vlan10,5,6,7,8劃分到vlan20,我可以把1,3,4的端口的port id設置為10,而把2端口的 port id設置為20;把5,6,7端口的port id設置為20,而把8端口的port id設置為10.這樣的話,vlan10中的1,3,4端口能夠和vlan20中8端口相互通信;而vlan10中的2端口能夠和vlan20中的5,6,7端口相互通信;雖然vlan id不同,但是port id相同,就能通信,同樣vlan id相同,port id不同的端口之間卻不能相互訪問,比如vlan10中的2端口就不能和1,3,4端口通信。

Reference
http://digdeeply.org/archives/1212254.html

No comments: