交換機、路由器、網橋和區域網/高階主題
| 一位讀者請求改進本書的格式和佈局。 良好的格式使書籍更易於閱讀,並使讀者更感興趣。請參閱編輯維基文字以獲取想法,並參閱WB:FB以獲取優秀書籍的示例。 請繼續編輯本書並改進格式,即使在刪除此訊息後也是如此。請參閱討論頁面以瞭解當前進度。 |
您無疑聽說過“樹枝上的路由器”這個術語。圖 7.1 描述了樹枝上的路由器架構。
從圖中可以看出,多個主機使用了兩個獨立的 VLAN 賦值。一個段執行在 VLAN10 上,另一個段執行在 VLAN50 上。這兩個 VLAN 或段都連線到同一個交換機。然後交換機連線到路由器。這裡我們展示了一個外部路由器,但 RSM 提供相同的功能,只是在內部。
到目前為止,您已經瞭解到,對於 VLAN10 上的主機 A 與 VLAN50 上的主機 D 通訊,資料包必須透過路由器 A 進行路由。由於 VLAN 賦值,交換機必須將資料包傳送到介面 FE0/0.10 上的路由器。路由器知道 VLAN50 分配的網路的路由是透過介面 FE0/0.50。然後資料包被髮送回交換機並轉發到主機 D。
現在回到我們最初的問題。為什麼要使用 MLS?您可以從圖 7.1 中的圖中看到,當主機 A 和主機 D 連線到同一裝置時,必須使用路由器或路由交換模組 (RSM) 來移動資料包是非常低效的。MLS 用於繞過後續相同流的資料包上的路由器。流是透過使用資料包報頭資訊(交換機間鏈路 (ISL)、第 2 層和第 3 層報頭)建立的。資料包中有一些欄位使其獨一無二
- 源和目標 IP 地址
- 源和目標 MAC 地址
- 服務型別 (TOS)
- 協議型別(例如,HTTP、FTP、ICMP 等)
這些只是可用於建立流的一些資料包特性。流是透過使用這些屬性的指定集來定義的。
思科 Catalyst 交換機需要額外的硬體來檢視資料包報頭資訊。Catalyst 5000 交換機使用 NetFlow 功能卡 (NFFC) 來收集此資訊並將其快取。Catalyst 6000 系列交換機使用多層交換功能卡 (MSFC) 和策略功能卡 (PFC) 來收集和快取報頭資訊。本章後面將詳細介紹一個允許交換機建立流的詳細過程。MLS 需要三個元件才能在任何網路中發揮作用 多層交換協議 (MLSP) 是一種在路由器上執行的協議,它允許它與 MLS-SE 通訊以瞭解拓撲或安全更改。多層交換路由處理器 (MLS-RP) 可以是支援 MLS 的路由器或安裝在交換機中的 RSM。多層交換交換引擎 (MLS-SE) 是支援 MLS 的交換機(帶有 NFFC 的 5000 或帶有 MSFC 和 PFC 的 6000)。
現在您已經對 MLS 的作用以及 MLS 在網路中發揮作用所需的條件有了基本的瞭解,讓我們深入瞭解其工作原理。
我們討論了 MLS 的三個必需元件。瞭解它們如何協同工作以啟用第 3 層交換非常重要。讓我們看一下支援 MLS 的示例網路拓撲。圖 7.2 顯示了路由器和交換機的簡單架構,交換機上連線了兩個主機。同樣,主機具有不同的 VLAN 賦值,需要路由器的干預來路由資料包。請注意,該圖描繪了具有兩個子介面 FE0/0.2 和 FE0/0.3 的主介面。MLS 遵循四步流程來建立第 3 層交換功能。然後可以將這四個步驟分解成更詳細的過程。啟用 MLS 所需的四個步驟如下:MLSP 發現 MLS-RP 使用 MLSP 將 Hello 資料包傳送到所有介面以發現 MLS-SE 並建立 MLS-RP/MLS-SE 鄰居關係。識別候選資料包 NFFC 或 PFC 監視傳入資料包併為其建立部分快取條目,從而將這些資料包識別為流的潛在候選者或候選資料包。識別啟用資料包 NFFC 或 PFC 監視來自 MLS-RP 的資料包並嘗試將其與候選資料包條目匹配。如果匹配,則將資料包標記為啟用資料包,並在 CAM 表中建立快捷轉發條目。後續流資料包進行第 3 層交換 傳入資料包與 CAM 表條目進行比較。如果資料包與流條件匹配,則由 NFFC 或 PFC 重寫它們,然後傳送到流的相應出口埠。MLSP 發現 – 交換機(特別是 NFFC 或 PFC)需要路由器執行初始路由表查詢和資料包重寫。此依賴關係要求在交換機和路由器之間建立 MLS 鄰接關係。這是使用 MLSP 協議完成的。最初,路由器或 MLS-RP 傳送包含在路由器上配置的所有 MAC 地址和 VLAN 的 Hello 資料包。這些訊息每 15 秒傳送到 01-00-0C-DD-DD-DD 的第 2 層多播地址。這些 Hello 資料包的預期接收者是網路上的 MLS-SE 裝置。當 MLS-SE 接收資訊時,它會在 CAM 表中為第 2 層網路中的所有 MLS-RP 裝置建立一個條目。提到第 2 層是因為 MLS-SE 裝置不關心未直接連線到第 2 層裝置(例如交換機)的裝置。圖 7.3 描述了 MLSP 發現過程。一旦收到 MLSP Hello 資料包,在 CAM 表中儲存的部分資訊是一個稱為 XTAG 的 ID。下一節將描述 XTAG 的意義和用途。XTAG 簡而言之,XTAG 是 MLS-SE(交換機)用於跟蹤網路中 MLS-RP 的唯一識別符號。MLS-RP 上使用的所有 MAC 地址和 VLAN 都與 CAM 表中的 XTAG 值相關聯。您可以清楚地看到 MFSC 已被分配了 XTAG 值 1。MFSC 接收分配是因為 MFSC 充當 MLS-RP。在此示例中,只有一個 MAC 地址與 XTAG 1 相關聯。但是,有兩個 VLAN 與它相關聯。
一旦 MLS-SE 為 MLS-RP 建立了 CAM 條目,交換機就可以開始掃描資料包並建立快取條目。這在前面被描述為識別候選資料包和啟用資料包。建立快取條目是為了維護流資料。流資料允許 MLS-SE 使用新的源和目標 MAC 地址重寫資料包,然後轉發資料包。所有這些都在不將資料包傳送到路由器進行路由查詢和重寫的情況下完成。
快取條目分兩步進行
- 候選資料包條目
- 啟用資料包條目
在 MLS-SE 中建立這些條目後,後續資料包將與現有流條目進行匹配,並相應地處理。
識別候選資料包的過程非常簡單。如前所述,MLS-SE 擁有來自 MLS-RP 的所有介面的 MAC 地址條目。利用此資訊,MLS-SE 開始監視所有發往與 MLS-RP 相關的 MAC 地址的傳入幀。
傳入幀將匹配以下三個條件之一:
- 不是發往 MLS-RP MAC 地址的。
- 發往 MLS-RP MAC 地址,但此流不存在快取條目。
- 發往 MLS-RP MAC 地址,但此流已存在快取條目。
MLS-SE 將根據匹配的條件採取不同的操作。我們現在將討論第一個條件。其他條件將在後續章節中討論。如果傳入幀不是發往與 MLS-RP 相關的 MAC 地址,則不會建立快取條目。之所以不建立快取條目,是因為 MLS 用於避免額外的路由查詢。如果該幀的目標是 CAM 表中另一個 MAC 地址,則該幀將進行二層交換。接下來,讓我們繼續討論識別和處理後兩個條件的過程。首先,我們將討論當條目已存在時會發生什麼情況。然後,我們將介紹候選資料包的快取條目過程的細節。圖中描述了候選資料包快取條目的出現情況。當幀進入交換機並目標為 MLS-RP MAC 地址時,MLS-SE 會檢查是否已建立與當前資料包屬性匹配的快取條目。如前所述,每個幀都具有獨特的特徵或屬性,允許 MLS-SE 將資料包分類到一個流中。MLS-SE 使用這些屬性進行模式匹配。如果傳入資料包與已建立的流快取條目具有相同的屬性,則該資料包將進行三層或快捷交換。當合格的(目標為 MLS-RP MAC 地址)傳入幀與快取進行比較並失敗(未找到匹配項)時,將建立一個快取條目。此時,資料包被標記為候選資料包。建立快取條目後,資料包將轉發到路由器(MLS-RP)進行正常處理。在這裡,路由器執行路由查詢,重寫二層報頭,並將資料包傳送到下一個躍點介面(無論哪個介面)。在此階段,MLS 快取的狀態僅為部分狀態。尚未建立完整的流快取,因為 MLS-SE 只看到一個數據包進入並轉發到路由器。它仍然需要看到路由器發回的一些可以標記為啟用資料包的內容。
啟用資料包是流快取拼圖中缺失的部分。就像 MLS-SE 監視所有發往 MLS-RP MAC 地址的傳入幀一樣,它還監視來自 MLS-RP 的所有資料包。它監視這些資料包,希望能與候選資料包快取條目匹配。如果它可以進行匹配,則該資料包將被標記為啟用資料包,並且流快取的其餘元素將在 CAM 表中完成。圖 7.5 描述了啟用資料包的出現情況。匹配是使用以下條件進行的:源 MAC 地址來自 MLS-RP。目標 IP 與候選資料包的目標 IP 匹配。源 MAC 地址與候選資料包的目標 MAC 地址關聯到相同的 XTAG 值。如果滿足所有這三個條件,則 MLS-SE 將完成快捷快取條目。幀修改瞭解快捷交換髮生在三層這一點非常重要。交換機將重寫二層幀。通常,路由器(三層裝置)將使用必要的資訊重寫幀。重寫包括更改 VLAN 賦值、源和目標 MAC 地址以及校驗和。MLS-SE 還可以修改 TTL、校驗和、TOS 和封裝。由於 MLS 資料包不再發送到路由器,因此 MLS-SE 必須執行重寫功能。當它更改源和目標 MAC 地址時,MLS-SE 使用 MLS-RP 的 MAC 地址作為源,並將目標 MAC 更改為直接連線的主機的 MAC。透過此過程,目標主機看起來好像資料包是透過路由器發來的。圖 7.6 描述了傳入幀和傳出幀之間的區別。後續資料包一旦識別出候選資料包和啟用資料包並建立快捷或流快取,交換機將把後續資料包轉發到目標,而無需使用路由器。由於 MLS-SE 能夠重寫幀,因此它可以進行必要的修改並將幀直接轉發到目標主機。MLS-SE 將必要的資訊儲存在快取中,例如源和目標 IP 地址、源和目標 MAC 地址以及與 MLS-RP 相關的 MAC 地址。利用此資訊,MLS-SE 能夠識別屬於特定流的資料包,重寫幀並將資料包轉發到正確的目標。停用 MLS在路由器或交換機上停用 MLS 有正確的方法和錯誤的方法(不一定錯誤,只是不需要)。這裡將討論這兩種方法。正確的方法停用 MLS 的正常且正確的方法取決於您使用的裝置。在路由器上停用 MLS 可以與在 6500 系列交換機的 MSFC 上停用 MLS 相提並論。命令甚至相同:no mls rp ip 從路由器或 MSFC 上的介面發出。要完全停用它,您可以從全域性配置模式發出相同的命令。此操作的後果因其發出的系統而異。當在路由器上發出該命令時,僅路由器停用 MLS。當在 MSFC 上發出該命令時,MSFC 和交換機本身將停用 MLS。這就是使用不同的交換機時存在差異的原因。當您使用 5000 系列交換機時,預設情況下會停用 MLS。但是,在 6000 系列交換機上,預設情況下會啟用 MLS。要在 5000 系列交換機上停用 MLS,請使用 set mls disable 命令。在 6000 系列上,應透過在 MSFC 上發出 no ip mls 命令來停用 MLS。錯誤的方法有幾種方法可能會意外地停用交換機上的 MLS。有些是臨時的,而另一些是永久性的。以下列出了可能停用 MLS 的 MSFC/路由器命令:no ip routing ip security ip tcp compression-connections ip tcp header-compression clear ip route透過在 MSFC 或路由器上停用 IP 路由,您會自動停用 MLS。IP 安全會停用應用該命令的介面上的 MLS。IP TCP 壓縮命令也會產生相同的結果。最後,clear ip route 命令只是清除 MLS 快取條目,並且必須重新建立流快取。
