在二層交換機的性能參數中,常常提到一個重要的指標:TRUNK ,許多的二層交換機產品在介紹其性能時,都會提到能夠支持TRUNK 功能,從而可以為互連的交換機之間提供更好的傳輸性能。那到底什么是TRUNK呢?使用TRUNK 功能到底能給我們帶來哪些應用方面的優勢?還有在具體的交換機產品中怎樣來配置TRUNK. 下面我們來了解一下這些方面的知識。

一、什么是 TRUNK ?

TRUNK是端口匯聚的意思,就是通過配置軟件的設置,將2個或多個物理端口組合在一起成為一條邏輯的路徑從而增加在交換機和網絡節點之間的帶寬,將屬于這幾個端口的帶寬合并,給端口提供一個幾倍于獨立端口的獨享的高帶寬。

Trunk是一種封裝技術,它是一條點到點的鏈路,鏈路的兩端可以都是交換機,也可以是交換機和路由器,還可以是主機和交換機或路由器。基于端口匯聚(Trunk )功能,允許交換機與交換機、交換機與路由器、主機與交換機或路由器之間通過兩個或多個端口并行連接同時傳輸以提供更高帶寬、更大吞吐量,大幅度提供整個網絡能力。

一般情況下,在沒有使用TRUNK 時,大家都知道,百兆以太網的雙絞線的這種傳輸介質特性決定在兩個互連的普通 10/100 交換機的帶寬僅為100M ,如果是采用的全雙工模式的話,則傳輸的最大帶寬可以達到最大200M,這樣就形成了網絡主干和服務器瓶頸。要達到更高的數據傳輸率,則需要更換傳輸媒介,使用千兆光纖或升級成為千兆以太網,這樣雖能在帶寬上能夠達到千兆,但成本卻非常昂貴(可能連交換機也需要一塊換掉),更本不適合低成本的中小企業和學校使用。如果使用TRUNK 技術,把四個端口通過捆綁在一起來達到 800M 帶寬,這樣可較好的解決了成本和性能的矛盾。

二、TRUNK 的具體應用

TRUNK (端口匯聚)是在交換機和網絡設備之間比較經濟的增加帶寬的方法,如服務器、路由器、工作站或其他交換機。這中增加帶寬的方法在當單一交換機和節點之間連接不能滿足負荷時是比較有效的。

TRUNK 的主要功能就是將多個物理端口(一般為 2- 8 個) 綁定為一個邏輯的通道,使其工作起來就像一個通道一樣。將多個物理鏈路捆綁在一起后,不但提升了整個網絡的帶寬,而且數據還可以同時經由被綁定的多個物理鏈路傳輸,具有鏈路冗余的作用,在網絡出現故障或其他原因斷開其中一條或多條鏈路時,剩下的鏈路還可以工作。

但在 VLAN 數據傳輸中,各個廠家使用不同的技術,例如:思科的產品是使用其 VLAN TRUNK 技術,其他廠商的產品大多支持 802.1q 協議打上 TAG 頭,這樣就生成了小巨人幀,需要相同端口協議的來識別,小巨人幀由于大小超過了標準以太幀的 1518 字節限制,普通網卡無法識別,需要有交換機脫 TAG.

TRUNK 功能比較適合于以下方面具體應用:

1、 TRUNK 功能用于與服務器相聯,給服務器提供獨享的高帶寬。

2、 TRUNK 功能用于交換機之間的級聯,通過犧牲端口數來給交換機之間的數據交換提供捆綁的高帶寬,提高網絡速度,突破網絡瓶頸,進而大幅提高網絡性能。

3、 Trunk 可以提供負載均衡能力以及系統容錯。由于 Trunk 實時平衡各個交換機端口和服務器接口的流量,一旦某個端口出現故障, 它會自動把故障端口從 Trunk 組中撤消, 進而重新分配各個 Trunk 端口的流量, 從而實現系統容錯。

三、如何設置 TRUNK ?

設置 TRUNK 需要指定一個作為主干的端口,比如 2/24 ,如把某個端口設成 Trunk 方式,命令如下:

set trunk mod/port [on | off | desirable | auto | nonegotiate] [vlan_range] [isl | dot1q dot10 | lane | negotiate].

該命令可以分成以下 4 個部分:

mod/port :指定用戶想要運行 Trunk 的那個端口;

Trunk 的運行模式,分別有: on | off | desirable | auto | nonegotiate.

要想在快速以太網和千兆以太網上自動識別出 Trunk ,則必須保證在同一個 VTP 域內。也可以使用 On 或 Nonegotiate 模式來強迫一個端口上起 Trunk ,無論其是否在同一個 VTP 域內。

承載的 VLAN 范圍。缺省下是 1 ~ 1005 ,可以修改,但必須有 TRUNK 協議。使用 TRUNK 時,相鄰端口上的協議要一致。

另外在中心交換機上需要把和下面的交換機相連的端口設置成 TRUNK ,這樣下面的交換機中的多個 VLAN 就能夠通過一條鏈路和中心交換機通信了。

四、配置TRUNK時的注意事項

在一個 TRUNK 中,數據總是從一個特定的源點到目的點,一條單一的鏈路被設計去處理廣播包或不知目的地的包。在配置 TRUNK 時,必須遵循下列規則:

1:正確選擇TRUNK 的端口數目,必須是 2,4 或 8.

2:必須使用同一組中的端口,在交換機上的端口分成了幾個組, TRUNK 的所有端口必須來自同一組。

3:使用連續的端口;TRUNK 上的端口必須連續,如你可以用端口 4,5,6 和 7 組合成一個端口匯聚。

4:在一組端口只產生一個 TRUNK ;如對于安奈特的 AT - 8224XL 以太網交換機有 3 組,假定沒有擴展槽。

所以該交換機可以支持 3 個端口聚合。加上擴展槽可以使得該交換機多支持一個端口匯聚。

5:基于端口號維護接線順序:在接線時最重要的是兩頭的連接線必須相同。在一端交換機的最低序號的端口必須和對方最低序號的端口相連接,依次連接。

6:為 TRUNK 配置端口參數:在 TRUNK 上的所有端口自動認為都具有和最低端口號的端口參數相同的配置(比如在VLAN 中的成員)。比如如果你用端口 4、5、6 和 7產生了TRUNK ,端口4是主端口,它的配置被擴散到其他端口(端口5、6和7)。只要端口已經被配置成了TRUNK ,你不能修改端口 5 、 6 和 7 的任何參數,可能會導致和端口 4 的設置沖突。

7:使用擴展槽:有些擴展槽支持 TRUNK. 這要看模塊上的端口數量。

Trunk 的優點:

1、可以在不同的交換機之間連接多個 VLAN ,可以將 VLAN 擴展到整個網絡中。

2、 Trunk 可以捆綁任何相關的端口,也可以隨時取消設置,這樣提供了很高的靈活性。

3、 Trunk 可以提供負載均衡能力以及系統容錯。由于 Trunk 實時平衡各個交換機端口和服務器接口的流量,一旦某個端口出現故障, 它會自動把故障端口從 Trunk 組中撤消, 進而重新分配各個 Trunk 端口的流量, 從而實現系統容錯。

要傳輸多個 VLAN 的通信,需要用專門的協議封裝或者加上標記( tag ),以便接收設備能區分數據所屬的 VLAN.VLAN 標識從邏輯上定義了,哪個數據包是它有多種協議,而我們最常用到的是基于: IEEE802.1Q 和 CISCO專用的協議: ISL.

下面我簡要的介紹一下這兩種協議。

1、交換機間鏈路( ISL )是一種 CISCO 專用的協議,用于連接多個交換機。當數據在交換機之間傳遞時負責保持VLAN信息的協議。在一個 ISL干道端口中,所有接收到的數據包被期望使用ISL頭部封裝,并且所有被傳輸和發送的包都帶有一個ISL頭。從一個ISL端口收到的本地幀( non-tagged )被丟棄。它只用在 CISCO 產品中。

2、IEEE802.1Q 正式名稱是虛擬橋接局域網標準, 用在不同的產家生產的交換機之間。一個 IEEE802.1Q干道端口同時支持加標簽和未加標簽的流量。一個 802.1Q 干道端口被指派了一個缺省的端口 Vlan ID ( PVID ),并且所有的未加標簽的流量在該端口的缺省 PVID 上傳輸。一個帶有和外出端口的缺省 PVID 相等的 Vlan ID 的包發送時不被加標簽。所有其他的流量發送是被加上 Vlan 標簽的。

在設置 trunk 后,trunk 鏈路不屬于任何一個 VLAN.trunk 鏈路在交換機之間起著VLAN 管道的作用,交換機會將該 trunk 以外并且和 trunk 中的端口處于一個 vlan 中的其它端口的負載自動分配到該 trunk 中的各個端口。

因為同一個 vlan 中的端口之間會相互轉發數據報,而位于 trunk 中的 trunk 端口被當作一個端口來看待,如果vlan中的其它非 trunk 端口的負載不分配到各個 trunk 端口,則有些數據報可能隨機的發往 trunk 而導致幀順序混亂。由于 trunk 口作為 1 個邏輯端口看待,因此在設置了 trunk 后,該trunk 將自動加入到這些 vlan 中它的成員端口所屬的vlan中,而其成員端口則自動從vlan中刪除。

在中 TRUNK 線路上傳輸不同的 VLAN 的數據時,可使用有兩種方法識別不同的 VLAN 的數據:幀過濾和幀標記。幀過濾法根據交換機的過濾表檢查幀的詳細信息。每一個交換機要維護復雜的過濾表,同時對通過主干的每一個幀進行詳細檢查,這會增加網絡延遲時間。

目前在 VLAN 中這種方法已經不使用了。現在使用的是幀標記法。數據幀在中繼線上傳輸的時候,交換機在幀頭的信息中加標記來指定相應的 VLAN ID. 當幀通過中繼以后,去掉標記同時把幀交換到相應的 VLAN 端口。幀標記法被 IEEE 選定為標準化的中繼機制。它至少有如下三種處理方法:

1)靜態干線配置

靜態干線配置最容易理解。干線上每一個交換機都可由程序設定發送及接收使用特定干線連接協議的幀。在這種設置下,端口通常專用于干線連接,而不能用于連接端節點,至少不能連接那些不使用干線連接協議( trunking protocol )的端節點。 當自動協商機制不能正常工作或不可用時,靜態配置是非常有用的,其缺點是必須手工維護。

2)干線功能通告

交換機可以周期性地發送通告幀,表明它們能夠實現某種干線連接功能。例如,交換機 可以通告自己能夠支持某種類型的幀標記 V L A N,因此按這個交換機通告的幀格式向其發送幀是不會有錯的。交換機的功能還止這些,它還可以通告它現在想為哪個V L A N提供干線連接服務。 這類干線設置對于一個由端節點和干線混合組成的網段可能會很有用。

3)干線自動協商

干線也能通過協商過程自動設置。在這種情況下,交換機周期性地發送指示幀,表明它們希望轉到干線連接模式。如果另一端的交換機收到并識別這些幀,并自動進行配置,那么這兩部交換機就會將這些端口設成干線連接模式。

這種自動協商通常依賴于兩部交換機(在同一網段上)之間已有的鏈路,并且與這條鏈路相連的端口要專用于干線連接,這與靜態干線設置非常相似。

trunk (干道)是一種封裝技術,它是一條點到點的鏈路,主要功能就是僅通過一條鏈路就可以連接多個交換機從而擴展已配置的多個 VLAN. 還可以采用通過 Trunk 技術和上級交換機級連的方式來擴展端口的數量, 可以達到近似堆疊的功能,節省了網絡硬件的成本,從而擴展整個網絡。

TRUNK 承載的VLAN 范圍。缺省下是1~1005,可以修改,但必須有1個Trunk 協議。使用 Trunk 時,相鄰端口上的協議要一致。

ACCESS模式和TRUNK模式區別

ACCESS模式和TRUNK模式區別:連接對象不同、發送數據處理方法不同、作用不同

1、連接對象不同

TRUNK模式:可以允許多個VLAN通過,可以接收和發送多個VLAN 報文,一般用于交換機與交換機相關的接口。

ACCESS模式:可以允許多個VLAN通過,可以接收和發送多個VLAN 報文,可以用于交換機的間連接也可以用于連接用戶計算機。

2、發送數據處理方法不同

ACCESS模式和TRUNK模式在接收數據時,處理方法是一樣的,但發送數據時:ACCESS模式可以允許多個vlan的報文不打標簽,而TRUNK模式只允許缺省vlan的報文不打標簽,同一個交換機上不能hybrid和trunk并存。

3、作用不同

TRUNK模式主要用在交換機之間互連,使交換機上不同VLAN共享線路。

ACCESS模式:主要實現高隔離度的波分和復用。

標簽: trunk模式