第2章 資訊交換技術
談到交換,從廣義上講,任何資料的轉發都可以叫做交換。但是傳統的、狹義的第2層交換技術,僅包括資料鍊路層的轉發。資料鍊路層的概念在第1章中的網絡七層模型中提及過。
2層交換機主要用在小型區域網路中,機器數量在二三十台以下,這樣的網絡環境下,廣播包影響不大,2層交換機的快速交換功能、多個接入端口和低廉價格,為小型網絡使用者提供了完善的解決方案。
總之,交換式區域網路技術使專用的帶寬為使用者所獨享,極大地提高了區域網路傳輸的效率。可以說,在網絡系統內建的技術中,直接面向使用者的第2層交換技術已得到了令人滿意的使用者體驗。
第3層交換技術是1997年前後才開始出現的一種交換技術,最初是為了解決廣播域的問題。經過多年發展,第3層交換技術已經成為建構多業務融合網絡的主要力量。
在大規模區域網路中,為了減小廣播風暴的危害,必須把大型區域網路按功能或地域等因素劃分成多個小區域網路,這樣必然導緻不同子網間的大量互訪,而單純使用第2層交換技術,卻無法實作子網間的互訪。
為了從技術上解決這個問題,網絡廠商利用第3層交換技術開發了3層交換機,也叫做路由交換機,它是傳統交換機與路由器的智能結合。
簡單地說,可以處理網絡第3層資料轉發的交換技術就是第3層交換技術。
從硬體上看,在第3層交換機中,與路由器有關的第3層路由硬體子產品,也插接在高速背闆/總線上。這種方式使得路由子產品可以與需要路由的其他子產品間高速交換資料,進而突破了傳統的外接路由器接口速率的限制。
3層交換機是為IP設計的,接口類型簡單,擁有很強的3層包處理能力,價格又比相同速率的路由器低得多,非常适用于大規模區域網路絡。
第3層交換技術到今天已經相當成熟,同時,3層交換機也從來沒有停止過發展。第3層交換技術及3層交換裝置的發展,必将在更深層次上推動整個社會的資訊化變革,并在整個網絡中獲得越來越重要的地位。
交換技術正朝着智能化的方向演進,從最初的第2層交換發展到第3層交換,目前已經演進到網絡的第7層應用層的交換。其根本目的就是在降低成本的前提下,保證網絡的高可靠性、高性能、易維護、易擴充,最終達到網絡的智能化管理。
本章将從交換技術的曆史講起,直到現代交換機的設計等專題。
2.1 交換技術概述
1.電路交換技術的發展
1876年在Bell A.G發明電話以後的很短時間裡,人們就意識到應該把電話線集中到一個中心節點上,中心點可以把電話線連接配接起來,這樣就誕生了最早的電話交換技術——人工磁石電話交換機。這種交換機的交換網絡就是一個接線台,非常簡單,接線由人工控制。但由于人工接續的固有缺點,如接續速度慢、接線員需日夜服務等,迫使人們尋求自動接續方式。
在1889年,Strowger A. B. 發明了第一個由兩步動作完成的上升旋轉式自動交換機,以後又逐漸演變為廣泛應用的步進制自動交換機。這種交換機的交換網絡由步進接線器組成,主叫使用者的撥号脈沖直接控制交換網絡中步進選擇器的動作,進而完成電話的接續,屬于直接控制(direct control)或叫分散控制方式。步進選擇器動作範圍大,帶來的直接後果是接續速度慢、噪音大。直接控制的方式導緻組網和擴容非常不靈活。
第一個縱橫交換機于1932年投入使用。縱橫交換機的交換網絡由縱橫接線器組成,與步進接線器相比,器件動作範圍減小了很多,接續速度明顯提高。它采用一種稱為“記發器”的特殊電路實作收号控制和呼叫接續,是一種集中控制(indirect control)方式。這種控制方式下的組網和容量擴充靈活。
第二次世界大戰後,當整個長距離網絡實作自動化時,自動電話占據了統治地位。半導體的發明刺激了交換系統的電子化,導緻了20世紀50年代後期第一個電子交換機的出現。
随着計算機技術的出現,從20世紀60年代開始有了軟體控制的交換系統。如1965年,美國開通了世界上第一個用計算機存儲程式控制的程控交換機。由于采用了計算機軟體控制,使用者的服務性能得到了很大發展,如增加了呼叫等待、呼叫轉移及三方通話等功能。
模拟信号轉換為數字信号的原理随着脈沖編碼調制PCM(Pulse Code Modulation)的推出而被人們廣泛接受。20世紀70年代,電話語音被編碼後傳送,出現了數字程控交換機。由于計算機比較昂貴,是以采用了集中控制方式。
數字程控交換在發展初期,有些系統由于成本和技術原因,曾采用過部分數字化,即選組級數字化,而使用者級仍為模拟的形式,編/譯碼器也曾采用集中的共用方式,而非單路編/譯碼器形式。随着內建電路技術的發展,很快就采用了單路編/譯碼器和全數字化的使用者級交換。
微處理機技術的迅速發展和普及,使數字程控交換普遍采用多機分散控制方式,靈活性高,處理能力增強,系統擴充友善而經濟。
軟體方面,除去部分軟體要注重實時效率,為了與硬體關系密切而用彙編語言編寫以外,普遍采用進階語言,包括C語言、CHILL語言和其他電信交換的專用語言。對軟體的主要要求不再是節省空間開銷,而是可靠性、可維護性、可移植性和可再用性,使用了結構化分析與設計、子產品化設計等軟體設計技術,并建立和不斷完善了用于程控交換軟體開發、測試、生産、維護的支援系統。
數字程控交換機的信令系統也從随路信令走向共路信令。
綜上所述,到了20世紀80年代中期,交換網絡已實作了從模拟到數字、控制系統的單級控制到分級控制,信令系統從随路信令到7号共路信令的轉變。
經過一百多年的發展,電路交換技術已非常完善和成熟,是目前網絡中使用的一種主要交換技術。傳統電話交換網中的交換局,GSM數字移動通信系統的移動交換局,窄帶ISDN(N-ISDN)中的交換局,智能網IN(Intelligent Network)中的業務交換點SSP(Service Switching Point)均使用的是電路交換技術。
2.分組交換技術的發展
20世紀60年代初期,歐洲RAND公司的成員Paul Baran和他的助手們為北大西洋公約組織制定了一個基于話音打包傳輸與交換的空軍通信網絡體制,目的在于提高話音通信網的安全和可靠性。這個網絡的工作原理設想是:把送話人的話音信号分割成數字化的一些“小片”,各個小片被封裝成“包”,并在網内的不同通路上獨立地傳輸到目的端,最後從包中卸下“小片”裝配成原來的話音信号送給受話人。這樣,在除目的地之外的任何其他終點,隻能竊聽到支言片語,不可能是一個完整的語句。另外,由于每個話音小片可以有多條通路到達目的站,因而網絡具有抗破壞和抗故障能力。
第一次論述這種分組交換通信網絡體制的論文發表于1964年。可惜由于當時的技術尤其是數字技術水準所限,并且對語音信号實作複雜處理的器件及大型網絡的分組交換、路由選擇和流量控制等功能所要求的計算機還十分缺乏和昂貴,因而這種網絡體制未能實作。
第一個利用這個研究成果的是美國國防部的進階研究計劃局ARPA(Advanced Research Project Agency)。當時ARPA在全國範圍内的許多大學和實驗室安裝了許多計算機,進行大量的基礎和應用科學研究工作。由于時區、計算中心負荷、專用軟體、硬體等差别,他們覺得需要一種能交換資料和共享資源的有效辦法。當時世界上還沒有任何能實作資源共享的網絡,是以ARPA決定緻力于開發一個網絡,把分組交換技術應用于網絡的資料通信。這就是1969年開始組建、1971年投入營運的ARPANET——世界上第一個采用分組交換技術的計算機通信網。
第一代的分組交換機由一台主機和一台接口資訊處理機IMP(Interface Message Processor)組成,見圖1.22。主機将發送的封包分成多個分組,加上分組頭,為每一個分組獨立選路,然後将某個輸入隊列中的分組轉移到某個輸出隊列中并發往目的地。接收端處理過程相反。IMP執行較低級别的規程,例如鍊路差錯控制,以減輕主計算機的負荷。系統中的軟體也是ARPANET專用的。受計算機速度的限制,第一代分組交換機每秒隻能處理幾百個分組。
到1969年12月已經有由4個節點組成的實驗性網絡被啟動。當更多的IMP被安裝時,網絡增長得非常快,并且很快覆寫了全美國。
3.寬帶交換技術的發展
未來網絡的發展不會是多個網絡,而是用一個統一的寬帶網絡提供多種業務。這個網絡中的關鍵裝置——交換機,也必須能實作多種速率、多種服務要求及多種業務的交換。
使寬帶網絡成為可能的技術有3種:ATM、寬帶IP技術和光交換技術。
ATM是電信界為實作B-ISDN而提出的面向連接配接的技術。它集中了電路交換和分組交換的優點,具有可信的QoS來保證語音、資料、圖像和多媒體資訊的傳輸。它還具有無級帶寬配置設定、安全和自愈能力強等特點。
另一方面以IP協定為基礎的Internet的迅猛發展,使IP成為目前計算機網絡應用環境中的“既成事實”标準和開放式系統平台。其優點在于:
- 易于實作異種網絡互連;
- 對延遲、帶寬、QoS等要求不高,适于非實時的資訊通信;
- 具有統一的尋址體系,易于管理。
ATM和IP都是發展前景良好的技術,但它們在發展過程中都遇到了問題。
從技術角度看,ATM技術是最佳的,而且ATM過于完善了,其協定體系的複雜性造成了ATM系統研制、配置、管理、故障定位的難度;ATM沒有機會将現有設施推倒重來,建構一個純ATM網。相反,ATM必須支援主流的IP協定才能夠生存。
傳統的IP網絡隻能提供盡力而為(best effort)的服務,沒有任何有效的業務品質保證機制。IP技術在發展過程中也遇到了路由器瓶頸等問題。
如果把這兩種技術結合起來,既可以利用ATM網絡資源為IP使用者提供高速直達資料鍊路,發展ATM上的IP使用者業務,又可以解決網際網路發展中瓶頸問題,推動網際網路業務進一步發展。
在支援IP協定時,ATM處于第二層,IP協定處于第三層,這是業界普遍認可的一種網絡模型。當網絡中的交換機接收到一個IP分組時,它首先根據IP分組中的IP位址通過某種機制進行路由位址處理, 按路由轉發。随後,按已計算的路由在ATM網上建立虛電路(VC)。以後的IP分組在此VC上以直通方式傳輸,進而有效地解決了傳統路由器的瓶頸問題,并提高了IP分組轉發速度。
随着吉比特(GBit)高速路由器的出現及IP QoS、MPLS等概念的提出,ATM的優勢也發生了變化。新的網絡模型被提出,IP作為二層處理的呼聲日益高漲,甚至有人預測随着MPLS産品的出現及IP QoS問題的解決,對ATM的需求将會日益減少。ATM技術與IP技術在未來骨幹網中的地位之争也達到了空前激烈的程度,很多電信營運廠商仍在觀望,而更多的廠商則是雙管齊下。
盡管在未來誰是主流的問題上有很多分歧,但多數廠商和研究人員均認為ATM技術與IP技術在未來很長一段時間内将共存,并最終融合在一起。目前最看好的是支援兩者結合的多協定标記交換(MPLS)技術,它的大部分标準已制定。
對光交換的探索始于20世紀70年代,80年代中期發展比較迅速。首先是在實驗室對各種光基本器件進行了技術研究,然後對構成系統進行了研究。目前對光交換所需器件的研究已具有相當水準。在光器件技術推動下,光交換系統技術的研究也有了很大進展。第一步進行電控光交換,即信号交換是全光的,而光器件的控制仍由電子電路完成。目前實用系統大都處于這一水準,相關成果媒體報道得也比較多。第二步為全光交換技術,即系統的邏輯、控制和交換均由光子完成。關于這方面的媒體報道還較少。
随着B-ISDN技術的發展,各國對光交換的關注日益增加。許多國家都在緻力于光交換技術的研究與開發,其中美國的ATM貝爾研究所、日本的NEC和NTF、德國的HHI、瑞典的愛立信等研究機構對光交換的研究水準較高,主要涉及6種交換方式,以及光互聯、全光同步、光存儲器和光交換在B-ISDN中的應用等領域。光交換領域急需研究開發的課題有:光互聯、光交換、光邏輯控制及光綜合通信網的結構。
我國在“七五”期間就開展了光交換技術的研究,并将光交換技術列為“八五”“九五”期間的高科技基礎研究課題。1990年,清華大學實作了我國第一個時分光交換(34Mbps)示範系統。1993年,北京郵電大學光通信技術研究所研制出了光時分交換網絡實驗模型。
光交換的優點在于,光信号在通過光交換單元時不需經過光電、電光轉換,是以它不受檢測器、調制器等光電器件響應速度的限制,對比特速率和調制方式透明,可以大大提高交換單元的吞吐量。光交換将是未來寬帶網絡使用的另一種寬帶交換技術。
2.2 數字程控交換
程控交換技術主要指的是通過交換裝置在通信網路終端使用者之間建立相應的連接配接,并且通過網絡通道實作資訊的傳遞和交流,主要的組成部分包括信号發射源、信号發生終端、信号收取終端、網絡傳輸通道和相應的交換節點。
程控的意思是程式控制,把對交換機的各種控制、方法、步驟都編成程式,存放在存儲器中,用程式來控制交換機的各項工作。程控交換是利用計算機軟體進行控制的一種交換方式。
與程控相對的概念是布控,(Wider Logic Control,布線邏輯控制)所有控制邏輯用機電或電子元件做在一定的印制闆上,通過機架的布線做成。布控交換是利用邏輯電路進行接續控制的一種交換方式。
程控交換機的優越性表現在以下幾方面:
- 靈活性大,适應性強;
- 能提供多種新服務性能;
- 便于實作共路信令;
- 操作維護管理功能的自動化;
- 适應現代電信網的發展。
現在常用的交換裝置幾乎全部都是數字程控交換裝置。
2.3 ATM交換
ATM是ITU-T(國際電聯電信部)确定的用于寬帶ISDNB-ISDN(Broadband Integrated Services Digital Network)的複用、傳輸和交換模式。信元是ATM特有的分組單元,話音、資料、視訊等各種不同類型的數字資訊均可被分割成一定長度的信元。它的長度為53位元組,分成兩部分:5位元組的信元頭含有用于表征信元去向的邏輯位址、優先級等控制資訊;48個位元組的資訊段用來裝載不同使用者的業務資訊。任何業務資訊在發送前都必須經過分割,封裝成統一格式的信元,在接收端完成相反操作,以恢複業務資料原來的形式。通信過程中業務資訊信元的再現,取決于業務資訊要求的比特率或資訊瞬間的比特率。
ATM具有以下技術特點:
- ATM是一種統計時分複用技術。它将一條實體信道劃分為多個具有不同傳輸特性的邏輯信道提供給使用者,實作網絡資源的按需配置設定。
- ATM利用硬體實作固定長度分組的快速交換,具有時延小、實時性好的特點,能夠滿足多媒體資料傳輸的要求。
- ATM是支援多種業務的傳遞平台,并提供服務品質QoS保證。ATM通過定義不同ATM适配層AAL(ATM Adaptation Layer)來滿足不同業務傳送性能的要求。
- ATM是面向連接配接的傳輸技術,在傳輸使用者資料之前必須建立端到端的虛連接配接。所有資訊,包括使用者資料、信令和網管資料都通過虛連接配接傳輸。
- 信元頭比分組頭更簡單,處理時延更小。
ATM支援語音、資料、圖像等各種低速和高速業務,是一種不同于其他交換方式、與業務無關的全新交換方式。
2.4 以太網交換
以太網是Xerox公司發明的基帶LAN标準,它采用帶沖突檢測的載波監聽多路通路協定(CSMA/CD),速率為10Mbps,傳輸媒體為同軸電纜。以太網是在20世紀70年代為解決網絡中零散的和偶然的堵塞開發的,而IEEE 802.3标準是在最初的以太網技術基礎上于1980年開發成功的。現在,以太網一詞泛指所有采用CSMA/CD 協定的區域網路。以太網2.0版由數字裝置公司(Digital Equipment Corp)Intel公司和Xerox公司聯合開發,它與IEEE 802.3相容。
盡管以太網與IEEE 802.3标準有很多相似之處,但也存在一定的差别。以太網提供的服務對應于OSI參考模型的第一層和第二層,而IEEE 802.3提供的服務對應的OSI參考模型的第一層和第二層的信道通路部分(即第二層的一部分)。IEEE 802.3沒有定義邏輯鍊路控制協定,但定義了幾個不同實體層,而以太網隻定義了一個實體層。另外,IEEE 802.3的幀格式與以太網II的幀格式也不完全相同,現在的以太網裝置一般都相容這兩種幀格式。
從速率等級來看以太網技術經曆了10M、100M、千兆和10G以太網4個階段。目前千兆速率以下IEEE 802.3都已經定義了相關的标準,随着10G以太網技術标準的出台,已經有一些廠商推出了10G以太網裝置,比如CISCO和Juniper等。
從應用角度來看,最初以太網技術用于區域網路,主要是當時以太網的傳輸距離僅僅局限在幾百米,随着以太網傳輸距離的擴大,特别是以太網的長距離光纖傳輸技術的出現,以太網技術應用的範圍已經突破區域網路的範圍,以太網技術已經成為城域寬帶接入的一種主要技術。
從技術融合角度來看,由于以太網技術的經濟性和技術的簡單性,非常友善承載IP業務,是以在資料業務與時分業務的融合中也扮演着非常重要的角色,目前已經有以太網 OVER VDSL,以太網 OVER SDH等幾種技術。
網絡的七層模型及INTERNET的五層模型之間的對應關系如表2.1所示。

以太網技術标準主要定義了資料鍊路層和實體層的規範,如圖2.1所示。對等技術标準包括令牌環網等。TCP/IP協定本身是與資料鍊路層和實體層無關的,TCP/IP協定棧可以架構在以太網技術上,也可以是令牌環網上。
2.5 光 交 換
光纖有着巨大的頻帶資源和優異的傳輸性能,是實作高速率、大容量傳輸最理想的實體媒質。随着波分複用(Wavelength Division Multiplexing,WDM)技術的成熟,一根光纖中能夠傳輸幾百吉比特/秒(Gbit/s)到太比特/秒(Tbit/s)的數字資訊,這就要求通信網中交換系統的規模越來越大,運作速率也越來越高。
光交換和ATM交換一樣,是寬帶交換的重要組成。
光交換技術是一種光纖通信技術,它是指不經過任何光/電轉換,在光域直接将輸入光信号交換到不同的輸出端。資訊的光電交換和光交換的原理示意圖如圖2.2和圖2.3所示。
<p style="text-align:center">
随着光器件和波分複用技術的發展及不斷成熟,光交換技術将會成為一個核心技術。
2.6 二層交換——交換機原理
交換機(Switch)是一種用于電信号轉發的網絡裝置。它可以為接入交換機的任意兩個網絡節點提供獨享的電信号通路。
交換機的主要功能包括實體編址、網絡拓撲結構、錯誤校驗、幀序列及流控。交換機還具備一些新的功能,如對VLAN(Virtual Local Area Network,虛拟區域網路)的支援、對鍊路彙聚的支援,甚至有的交換機還具有防火牆的功能。
首先,我們需要清楚二層交換機和HUB的差別。其實很簡單,二層交換機比HUB(多端口轉發器,也稱集線器)“聰明”。當從網絡中收到一個資料幀時,HUB給所有的端口都發一份資料,而交換機隻給目的裝置連接配接的那個端口發一份資料。
二層交換是指在LAN中的封包轉發,我們結合交換機的工作原理來闡述LAN中的封包轉發。
如圖2.4所示,從外部網絡來一個封包進入LAN中,已知它的目标主機就在這個LAN中,但是它隻知道目标主機的IP位址,這樣就需要位址解析協定(Address Resolution Protocol,ARP)來幫助它找到目标主機的鍊路層位址,這時路由器就會發送ARP請求,在LAN中尋找與封包目的IP位址對應的MAC位址及此主機連接配接的端口。這樣,就完成了LAN内的尋址。同時在二層交換機上會有一張MAC位址表來幫助以後封包進行LAN内的轉發。
二層交換的特點總結:
- ARP解析可以獲得對端MAC位址;
- 交換機學習MAC位址映射。
二層交換的關鍵資料就是MAC表,MAC表記錄了通路指定MAC位址的封包需要交換到哪個端口。MAC是二層交換的核心。
2.7 三層轉發——路由器原理
路由器是指用于網絡互連的計算機裝置,它的主要作用如下:
- 路由(尋徑):學習和維護網絡拓撲結構知識的機制,産生和維護路由表。
- 交換/轉發:資料在路由器内部移動與處理的過程(從路由器一個接口輸入,然後選擇合适的接口輸出,做幀的解封裝與封裝,并對包做相應處理)。
- 隔離廣播,指定通路規則。
- 異種網絡互連。
路由裝置的工作流程如圖2.5所示。
1.直連路由
當接口配置了網絡協定位址并狀态正常時,接口上配置的網段位址自動出現在路由表中并與接口關聯,并随接口的狀态變化在路由表中自動出現或消失。IPv4路由表結構示意圖如圖2.6所示。
2.靜态路由
靜态路由是一條單向路由,還需要在對方的路由裝置上配置一條相反的路由。靜态路由示意圖如圖2.7所示。
預設路由配置示例如圖2.8所示。
預設配置路由可以配置在隻有一條出口的“根狀網絡”的出口路由裝置上,可以通路“未知的”目的網絡。
3.動态路由
動态路由是指路由器能夠自動地建立自己的路由表,并且能夠根據實際情況的變化适時地進行調整。動态路由機制的運作依賴路由器的兩個基本功能:路由器之間适時的路由資訊交換,以及對路由表的維護。
路由協定是運作在路由器上的軟體程序,與其他路由器上相同路由協定之間交換路由資訊,學習非直連網絡的路由資訊,并加入路由表,并且在網絡拓撲結構變化時能自動調整,維護正确的路由資訊。
常見的動态路由協定有以下幾個:
- RIP協定:路由資訊協定(RIP)是内部網關協定IGP中最先得到廣泛使用的協定。RIP是一種分布式的基于距離向量的路由選擇協定,是網際網路的标準協定,其最大優點就是實作簡單,開銷較小。
- OSPF協定:OSPF(Open Shortest Path First,開放式最短路徑優先)是一個内部網關協定(Interior Gateway Protocol,IGP),用于在單一自治系統(Autonomous System,AS)内決策路由。
動态路由工作機制如圖2.9所示。
路由轉發的核心是路由表。
三層IP轉發和二層交換有什麼差別呢?最主要的差別是它們尋找目的地的關鍵字不同,二層交換是鍊路層位址,三層轉發是IP位址。鍊路層位址——MAC位址,通常存在于一個平面位址空間,沒有清晰的位址層次,隻适合于同一網段内主機的通信。對于不同網絡之間的互連通信,考慮到可能使用不同的傳輸媒體,不同的鍊路層協定,為提供更大的靈活性,通常使用網絡層位址——IP位址來尋址通信。
每個路由器中都有一張路由表,這張表可以由使用者手動配置,也可以從動态路由協定中學到。該表的索引是IP位址/掩碼,每個表項中都存放有下一跳的IP位址和出口。有了這張表,路由器接在收到資料包時就能做到心中有數了。
如圖2.10所示,IP位址為192.4.1.1的主機要通路遠端IP位址為192.5.1.1的主機。資料包需要先在接入路由器上查找路由,一般情況下接入路由器上路由表項都比較簡單,對所有網段的位址都指向其直連的上遊裝置20.1.1.2.。然後還需在20.1.1.2上查找路由表,找到比對項192.5.1.0 /24 : 10.1.1.1,就從10.1.1.2所在的接口通過E1鍊路将資料包發送出去。在10.1.1.1上接收到封包後,檢查資料報的目的位址,發現在其直連網段,遂将資料封包正确送到IP位址為192.5.1.1的主機,進而完成一次完整的轉發。
IP轉發的特點總結:
- 封包逐跳轉發;
- 封包的轉發機關可以是資料包,也可以是資料流。
2.8 三層交換——三層交換機
三層交換機是二層交換機和路由器在功能上的內建,三層交換機在功能上實作了VLAN的劃分、VLAN内部的二層交換和VLAN間路由的功能。
VLAN是一組邏輯上的裝置和使用者,這些裝置和使用者并不受實體位置的限制,可以根據功能、部門及應用等因素将它們組織起來,互相之間通信就像在同一個網段中一樣,由此得名虛拟區域網路。
VLAN工作在OSI參考模型的第2層和第3層,一個VLAN就是一個廣播域,VLAN之間的通信是通過第3層的路由器來完成的。
傳統的交換技術是在OSI網絡标準模型中的第二層——資料鍊路層進行操作的,而三層交換技術是在網絡模型中的第三層實作了資料包的高速轉發。應用第三層交換技術即可實作網絡的路由功能,又可以根據不同的網絡狀況做到最優的網絡性能。
三層交換機就是具有部分路由器功能的交換機,三層交換機的最重要目的是加快大型區域網路内部的資料交換,所具有的路由功能也是為這個目的服務的,能夠做到“一次路由,多次轉發”。對于資料包轉發等規律性的過程由硬體高速實作,而像路由資訊更新、路由表維護、路由計算、路由确定等功能,由軟體實作。
典型應用:同一個區域網路中的各個子網的互聯及區域網路中VLAN間的路由,用三層交換機來代替路由器;區域網路與公網互聯之間要實作跨地域的網絡通路時,通過專業路由器。
優點:實作區域網路内的快速轉發。
特點:交換機的資訊轉發基于硬體轉發,路由器的資訊轉發基于軟體轉發。三層轉發流程如圖2.11所示。
(1)源主機→網關,通過ARP擷取網關MAC(源主機與目的主機處于不同網段)。
(2)網關→源主機,網關發送ARP應答封包,應答封包中的“源MAC位址”就包含了網關的MAC位址。
(3)源主機→網關,目的MAC使用網關MAC位址,源IP位址使用主機的IP位址,目的IP位址為目的主機的IP位址,發送封包給網關。
(4)網關(交換機)查找轉發表(Forward Information Base,FIB)。(查找FIB表的條件:源主機與目的主機的IP位址不在同一網段。FIB表是根據路由表生成的,主要存儲的是有效的路由,如果你的路由全部有效,那麼FIB表與路由表内容完全一樣,這種情況時路由器可以直接轉發。路由表是屬于控制層,FIB屬于轉發層。也就是說,路由表是配置時生成的下一跳,這個下一跳不一定直接可達,FIB是轉發的,下一跳必須直接可達)。
(5)FIB表Miss,請求CPU檢視軟體路由表,如果比對,需要查詢目的MAC位址;通過發送ARP包進行查詢。
(6)擷取目的MAC後,向ARP表中添加對應表項,并轉發由源主機到達目的主機的包;同時三層交換機三層引擎結合路由表生成目的主機的三層硬體轉發表。
(7)路由器生成硬體轉發表完成後,目的主機的資料包根據轉發表項進行資料交換;
以上流程适用于不同VLAN(網段)中的主機互訪時屬于這種情況,這時用于互連的交換機做三層交換轉發。這就是“一次路由,多次交換”的原理。
例如,PC A與PC B進行通信的示例如圖2.12所示。MAC表如表2.2所示,三層交換機的ARP表如表2.3所示,硬體轉發表如表2.4所示,其中,L3-SW的含義是三層交換機。主機PCA的ARP表如表2.5所示。
(1)PC A的IP(1.1.1.2)與目的PC B IP(2.1.1.2)不在同一網段,需通過網關進行中轉;PC A檢測是否有網關MAC,有則進行轉發,沒有則先通過ARP擷取網關MAC。廣播幀組成結構:源MAC(PC A)+目的MAC(IP位址廣播,全0)+目的IP(1.1.1.1)+源IP(1.1.1.2)。
(2)L3-SW交換機(網關)接收ARP包,(主機發送消息時将包含目标IP位址的ARP請求廣播到網絡中的所有主機上,并接收傳回消息,以此确定目标的實體位址)确定為請求交換機(網關)自己的MAC位址,然後進行ARP應答,回複交換機(網關)自身的MAC位址;同時進行MAC學習,完成MAC表和ARP表,然後把“PC A IP位址+MAC+端口+VLAN等”的多元組更新至硬體轉發表。
(3)PC A收到ARP回複封包,重新整理ARP表,同時把要發送資料的目的MAC修改為網關MAC。
?注意:三層轉發時,改變的是幀封裝後的源和目的MAC位址,原來輸入IP包中的“目的MAC位址”作為轉發的“下一跳MAC位址”,原來的“源MAC位址”改為三層交換機自身的MAC位址,源和目的IP位址都不變。
(4)L3-SW交換機收包,根據目的IP查詢轉發表,找尋出接口(端口),找到直接轉發;否則進行查詢ARP表,找到目的IP對應的網段,然後查找目的IP對應的MAC位址,MISS則查詢路由表,查詢到直連網段,再查找ARP表擷取目的MAC位址,傳回MISS。
(5)L3-SW交換機在目的IP所在網段,進行ARP廣播,擷取目的裝置的MAC位址。
(6)L3-SW交換機根據ARP應答封包,更新ARP、MAC、硬體轉發表。
(7)L3-SW交換機把PC A要發給PC B的封包轉發給PC B,完成第一次通信;第一次通信的第(3)至第(7)步如圖2.13所示。PC B、L3-SW交換機的MAC表、L3-SW交換機的ARP表、硬體轉發表和PC A表,分别如表2.6至表2.10所示。
(8)後續PC A與PC B進行通信,根據硬體轉發表的資訊,查詢出接口(端口),進行封包轉發,完成兩台裝置間的通信。
為什麼有了三層轉發,還會發展出三層交換技術呢?原因就是交換比轉發要快。交換功能是交換晶片提供的,這個過程不需要CPU的參與,但是轉發往往是CPU的實作,CPU由于要幹很多事情,是以往往沒有時間處理這麼多的轉發封包,是以從性能上看,相同價位的路由器跟三層交換機相比,交換機的性能更好。當然轉發也有硬體實作的,這種情況下自然性能更好,但是成本也高。
2.9 交換機設計開發
2.9.1 交換機的層次定位
當設計一款交換機時,首先要明白自己的交換機需要應用在什麼樣的網絡中,在網絡中的層次是什麼,這是第一步,也就是說必須從網絡的整體來考慮,然後再對局部的交換機進行功能抽象。如圖2.14所示為一個典型的校園網網絡圖。
其中,交換機分為3種:接入交換機、彙聚交換機和核心交換機。
接入交換機:
- 多模式的接入(有線、無線);
- 可以提供本地資訊點的資料交換;
- 可以提供VLAN劃分功能;
- 實作對于多點傳播功能的支援。
彙聚交換機:
- 連接配接校園網骨幹;
- 完成本區域内的資料交換和路由功能;
- 為接入層提供高速可靠的傳輸鍊路。
核心交換機:
- 實作在骨幹網絡之間的優化傳輸;
- 保證整個網絡的備援能力、可靠性和高速傳輸;
- 實作對網絡的全面管理。
2.9.2 交換機的硬體設計
交換機的硬體參考圖如圖2.15所示。
下面對交換機硬體中幾個重要部分進行介紹。
1.處理器部分
CPU:交換機的CPU是具有交換能力的CPU,其生産廠家有Marvel、博通。交換晶片是交換機的核心部分,也是交換機成本中的大頭,其決定了交換機的路數(能出多少個光口、電口),交換機的吞吐量(每秒鐘能夠交換的封包數量)。整個交換機架構中使用Marwell公司的98dx3236交換晶片,該晶片内部包含以下主要資源及性能名額:
- 120MPPS的包轉發速率;
- 84Gbps的背闆帶寬;
- 12個可配置的serdes接口,其中,6個可配置為1~10Gbps接口,6個可配置為1~5Gbps接口;
- 内嵌1.5MB的包緩存;
- AlleyCat3:單核,ARM v7,400 MHz;
- PonCat3:雙核,ARM v7,800 MHz。
可提供的接口速率及接口類型見表2.11。
2.實體層接口
PHY:以太網PHY是一個晶片,可以發送和接收以太網的資料幀(frame),PHY是Port Physical Layer的縮寫。
3.電源部分
電源部分的設計要求是提供穩定的供電,有時候如果端口需要提供POE(端口供電)功能,要求的功率較大。當電源設計不穩定的時候,可能會造成端口資料解析的錯誤。
4.外設部分
(1)DDR存儲
交換機的硬體設計方案使用DDR3作為RAM系統存儲,使用單片16bit總線形式,總容量為512MB。
(2)NAND存儲
交換機的硬體設計方案使用NAND作為ROM系統存儲。
(3)看門狗
交換機的硬體設計方案使用一個硬體看門狗
(4)系統時鐘
交換機的硬體設計方案設計中要求系統時鐘的數量和種類較多,使用了1個專用時鐘晶片,用于産生CPU系統時鐘,25MHz的CMOS邏輯系統時鐘,100M的PCI_E的差分LVDS邏輯時鐘,156.25MHz的用于10Gbps網絡的差分PECL邏輯時鐘,本次設計将LVDS通過交流耦合電路将LVDS邏輯轉變為PECL邏輯。
(5)I2C複用電路
在SFP+部分需要對每個光子產品通過I2C總線進行讀寫通路,需要對I2C總線進行複用,同時通過I2C總線擴充幾個IO口對光子產品進行收發使能,以及對在位狀态進行檢查。
(6)LED驅動電路
光子產品的狀态訓示燈需要對交換晶片的IO進行驅動,使用HC251進行驅動控制。
在設計之初,設計人員要确定交換機的交換能力,根據交換機的交換能力選擇交換晶片,方能達到不浪費晶片的能力,做到高成本效益。
如表2.12所示參數是華為S6300裝置的硬體屬性。
2.9.3 交換機的軟體設計
交換機的功能由硬體和軟體共同實作。硬體在晶片确定之後,硬體性能基本就确定了。軟體實作的功能則伸縮性很大,取決于研發團隊的軟體實力。軟體能力是交換機功能的另一種展現,由于軟體的特性太多,而且軟體特性也在不斷更新、更新,是以軟體開發的工作量很大,是項目研發團隊的核心工作之一。
1.MAC協定
MAC(Media Access Control)子層負責完成下列任務:
- MAC位址自動學習和老化:MAC子產品的主要功能。
- 靜态、動态、黑洞MAC表項重新整理:靜态MAC用于給一些不支援動态協定的節點使用,比如列印機,動态MAC是常見應用,黑洞MAC用于屏蔽一些攻擊源,提供一種網絡安全功能。
- MAC FLAPPING檢測:支援MAC位址漂移的檢測,用于預防攻擊的安全目的。
- Sticky MAC,粘性MAC功能,儲存配置後重新開機裝置。Sticky MAC位址不會丢失,無須重新學習,解決了端口安全問題。MAC層的代碼編寫主要還是跟SDK配合。
2.以太網
- 全雙工、半雙工、自動協商工作方式:自動協商的主要功能就是使實體鍊路兩端的裝置通過互動資訊自動選擇同樣的工作參數。自動協商的内容主要包括雙工模式、運作速率及流控等參數。一旦協商通過,鍊路兩端的裝置就鎖定為同樣的雙工模式和運作速率。
- 端口流量控制:流量控制會從實體層對網絡擁塞進行一定的反壓(發送一個pause幀),目的是讓資料發送方知道你發得太快了,請降低速率以便接收方可以處理。
- Jumbo幀:就是巨型幀的支援能力,通常以太網幀的長度是1520。巨型幀指長度較大的幀,不同廠家的實作不盡相同,一般在9000~12000之間。
- 鍊路聚合(Trunk)和負載分擔:Trunk是一種捆綁技術。将多個實體接口捆綁成一個邏輯接口,這個邏輯接口就稱為Trunk接口,捆綁在一起的每個實體接口稱為成員接口。Trunk技術可以實作增加帶寬、提高可靠性和負載分擔的功能。
- LLDP(Link Layer DiscoveryProtocol):LLDP是一種鄰近發現協定。它為以太網網絡裝置如交換機、路由器和無線區域網路接入點定義了一種标準的方法,使其可以向網絡中其他節點公告自身的存在,并儲存各個鄰近裝置的發現資訊。例如,裝置配置和裝置識别等詳細資訊都可以用該協定進行公告。
以太網特性的諸多小特性也大多是交換晶片的SDK直接具備的功能,大多數的工作量是調試。
3.VLAN
VLAN(Virtual Local Area Network,虛拟區域網路)是将一個實體的LAN在邏輯上劃分成多個廣播域(多個VLAN)的通信技術。VLAN内的主機間可以直接通信,而VLAN間不能直接互通,進而将廣播封包限制在一個VLAN内。由于VLAN間不能直接互訪,是以提高了網絡安全性。
VLAN特性是一個在二層組網中相當重要的特性,幾乎所有的網絡劃分都要用到最基本的VLAN特性。
根據對VLAN幀的識别情況,将端口分為4類:
- Access端口:是交換機上用來連接配接使用者主機的端口,它隻能連接配接接傳入連結路。有如下特點:
- 僅僅允許唯一的VLAN ID通過本端口,這個VLAN ID與端口的PVID(PortDefault VLAN ID,端口預設的VLAN ID)相同。
- 如果該端口收到的對端裝置發送的幀是untagged(不帶VLAN标簽),交換機将強制加上該端口的PVID。
- Access端口發往對端裝置的以太網幀永遠是不帶标簽的幀。
- Trunk端口:是交換機上用來和其他交換機連接配接的端口,它隻能連接配接幹道鍊路,如圖2.16所示。有如下特點:
- Trunk端口允許多個VLAN的幀(帶Tag标記)通過。
- 如果從Trunk端口發送的幀帶Tag,且Tag與端口預設的VLAN ID相同,則交換機會剝掉該幀中的Tag标記。因為每個端口的PVID取值是唯一的。僅在這種情況下,Trunk端口發送的幀不帶Tag。
- 如果從Trunk端口發送的幀帶Tag,但是與端口預設的VLAN ID不同,則交換機對該幀不做任何操作,直接發送帶Tag的幀。
- QinQ:QinQ(802.1Q-in-802.1Q)端口:是使用QinQ協定的端口。QinQ端口可以給幀加上雙重Tag,即在原來Tag的基礎上,給幀加上一個新的Tag,進而可以支援多達4094×4094個VLAN,滿足網絡對VLAN數量的需求。
QinQ有兩層标簽,外層的标簽通常被稱做公網Tag,用來存放公網的VLAN ID;内層标簽通常被稱做私網Tag,用來存放私網的VLAN ID。
按照VLAN的劃分方式,可以分為以下幾種:
- 基于端口劃分:根據交換裝置的端口編号來劃分VLAN。
- 基于MAC位址劃分:根據計算機網卡的MAC位址來劃分VLAN。
- 基于子網劃分:交換裝置根據封包中的IP位址資訊劃分VLAN。
- 基于比對政策劃分:基于MAC位址、IP位址、接口組合政策劃分VLAN,是指在交換機上配置終端的MAC位址和IP位址,并與VLAN關聯。隻有符合條件的終端才能加入指定VLAN。
VLAN的技術點相當複雜,要實作VLAN的基本功能至少需要實作以上前3種接口,而VLAN的劃分方式,需要至少實作一種才能夠配置VLAN,從實作角度來說第一種劃分最容易實作。
VLAN的特性還有很多,限于篇幅,這裡不再展開。
- hybird端口:是Access和Trunk的集合,Hybrid端口untagged tagged對封包的處理過程如下所述。
接收封包時:Hybrid封包在收到資料的時候,先看它是否帶VLAN标簽,是否允許通過(在untagged和tagged清單中的封包都允許通過,這個就相當于Trunk的allow-pass vlan)。當你給PC1劃入vlan10的時候(port hybrid pvid vlan 10),相應的就要放行vlan10(port hybrid untagged vlan 10)。如果封包已經有标簽且可以通過,則讓封包帶着标簽通過;如果封包沒标簽且可以通過,則打上PVID,再讓帶着PVID标簽的封包通過;(以上兩點跟Trunk端口一樣)如果不在untagged或tagged清單中,則表示不允許通過,丢棄此封包。
發送封包時:如果封包在untagged或tagged清單中,則表示可以從此端口通過,對于untagged清單中的封包,在發送的時候去掉VLAN标簽後再從端口發送出去;對于tagged清單中的封包,在發送的時候帶着VLAN标簽從端口發送出去。
如果封包不在untagged或tagged清單中,表示不從此端口通過。接收封包的時候,可以當做Trunk口來對待;untagged(去标簽)和tagged(帶标簽)隻是做到了Trunk是否放行VLAN的需要,和實際打不打标簽沒有關系。untagged(去标簽)和tagged(帶标簽)隻對從端口發送出去的封包起作用(保留标簽或去掉标簽再發送出去)。在untagged或tagged清單中的VLAN表示可以從本端口發送或者接收;不在untagged或tagged清單中的VLAN表示不可以從本端口發送或接收。
2.9.4 測試環節
産品完成後的測試主要是硬體測試。軟體測試在開發階段應該已經完成。常見的測試方法有:
- 高低溫測試:一般使用高低溫測試箱進行。高低溫測試箱分為交變測試箱和濕熱測試箱,兩種試驗方法都是在高低溫測試箱的基礎上進行更新拓展。交變測試箱是指可以一次性将需要做的溫度、濕度和時間設定在儀表參數内,測試箱會按照設定程式執行;濕熱測試箱就是在溫度的基礎上加濕熱系統,這樣可以在做溫度測試的同時也可以做濕度測試,使試驗效果更接近自然氣候,模拟出更惡劣的自然氣候,進而使被測樣品的可靠性更高。
- 端口還回測試:端口還回是指在交換機的一個端口上産生一個輸入,然後從一個端口出,使流量形成閉環,這樣就能夠使每個端口都能夠利用這個正向激勵達到每個端口的滿帶寬,進而實作軟硬體的測試,如圖2.17所示。
- 長穩測試:這個要搭建一個組網環境,進行長時間的流量測試,這種測試至少要一周時間,來測試交換機的穩定性。
2.10 小 結
交換機的設計重點是設計出符合自己需求的交換機,功能做到盡量不浪費硬體的性能,這就要求設計人員對交換産品的軟硬體特性要有很深的了解。
2.11 習 題
1.簡述交換機的功能與交換原理。
2.簡述路由器的功能與路由原理。
3.簡述交換機的開發流程。
4.VPN在交換機中的設計要點是什麼?
5.簡述交換機軟體設計流程?