路由和交換是網(wǎng)絡世界中兩個重要的概念。傳統(tǒng)的交換發(fā)生在網(wǎng)絡的第二層,,即數(shù)據(jù)鏈路層,,而路由則發(fā)生在第三層,網(wǎng)絡層,。在新的網(wǎng)絡中,,路由的智能和交換的性能被有機的結(jié)合起來,三層交換機和多層交換機在園區(qū)網(wǎng)絡中大量使用,。本文將介紹一些路由和交換的基本概念,,分為網(wǎng)絡層次結(jié)構(gòu)、交換,、路由和全交換園區(qū)網(wǎng)絡四個部分,。
網(wǎng)絡層次結(jié)構(gòu)
網(wǎng)絡參考模型的定義給出了清晰的功能層次劃分。最常被提及的是ISO OSI參考模型和TCP/IP協(xié)議簇。
國際標準化組織定義的OSI參考模型將計算機網(wǎng)絡按功能劃分為七個層次,,這就是我們常說的七層模型或七層結(jié)構(gòu),。網(wǎng)絡功能分層的直接好處是這些層次可以各司其職,由不同廠家開發(fā)的不同層次的軟硬件設備可以配合使用,。一個層次的設備更新或軟件重寫也不會影響到其它層次,。TCP/IP協(xié)議體系中的各個層次和ISO的參考模型有大致的對應關系,。如下圖所示:
OSI中間一層,,即第四層執(zhí)行傳輸功能,它負責提供從一臺計算機到另外一臺計算機之間的可靠數(shù)據(jù)傳輸,。傳輸層(Transport Layer)是承上啟下的一層,,在它的下面有三層,都是與數(shù)據(jù)傳輸相關的功能;上面也有三層,,提供與網(wǎng)絡應用相關的功能,。
OSI下三層中。物理層(Physical Layer)負責實際的傳送數(shù)據(jù)信號,,數(shù)據(jù)鏈路層(Data Link Layer)負責網(wǎng)絡內(nèi)部的幀傳輸,,而網(wǎng)絡層(Network Layer)負責網(wǎng)絡間的計算機尋址和數(shù)據(jù)傳輸。
OSI上三層中,。應用層(Application Layer)是最高的層次,,它負責提供用戶操作的界面,因特網(wǎng)中常用的電子郵件服務,,文件傳輸服務等都是這一層提供的,。表示層(Presentation Layer)負責數(shù)據(jù)的表示,比如發(fā)送數(shù)據(jù)之前的加密,,接收數(shù)據(jù)時的解密,,中英文的翻譯等等都是這一層提供的功能。會話層(Session Layer)負責建立和終止網(wǎng)絡的數(shù)據(jù)傳輸,,計算機名字轉(zhuǎn)換成地址的工作也在這層完成,。
傳統(tǒng)意義上的交換是第二層的概念。數(shù)據(jù)鏈路層的功能是在網(wǎng)絡內(nèi)部傳輸幀,。所謂"網(wǎng)絡內(nèi)部"是指這一層的傳輸不涉及網(wǎng)間的設備和網(wǎng)間尋址,。通俗的理解,一個以太網(wǎng)內(nèi)的傳輸,,一條廣域網(wǎng)專線上的傳輸都由數(shù)據(jù)鏈路層負責,。所謂"幀"是指所傳輸?shù)臄?shù)據(jù)的結(jié)構(gòu),通常幀有幀頭和幀尾,,頭中有源目二層地址,,而幀尾中通常包含校驗信息,頭尾之間的內(nèi)容即是用戶的數(shù)據(jù)。
數(shù)據(jù)鏈路層涵蓋的功能很多,,所以又將它劃分為兩個子層,, MAC(Media Access Control,介質(zhì)訪問控制)層和LLC(Logical Link Control,,邏輯鏈路控制)層,。常見的局域網(wǎng)和城域網(wǎng)的二層標準是IEEE的802協(xié)議。而在廣域網(wǎng)中,,HDLC(High-level Data Link Control,,高級鏈路控制)、PPP(Point-to-Point Protocol,,點對點協(xié)議)和Frame Relay(幀中繼)等協(xié)議都有廣泛的使用,。
路由是第三層的概念。網(wǎng)絡層在Internet中是最重要的,,它的功能是端到端的傳輸,,這里端到端的含義是無論兩臺計算機相距多遠,中間相隔多少個網(wǎng)絡,,這一層保障它們可以互相通信,。例如我們常用的PING命令就是一個網(wǎng)絡層的命令,PING通了,,就是指網(wǎng)絡層的功能正常了,。通常,網(wǎng)絡層不保障通訊的可靠性,,也就是說,,雖然正常情況下數(shù)據(jù)可以到達目的地,但即便出現(xiàn)異常,,網(wǎng)絡層也不作任何更正和恢復的工作,。
網(wǎng)絡層常用的協(xié)議有IP、IPX,、APPLETALK等等,,其中IP協(xié)議更是Internet的基石。在TCP/IP協(xié)議體系中,,第三層的其他輔助協(xié)議還包括ARP(地址解析) ,、RARP(反向地址解析)、 ICMP(網(wǎng)際報文控制)和IGMP(組管理協(xié)議)等等,。由于網(wǎng)絡互連設備都具有路徑選擇功能,,所以我們經(jīng)常將 RIP、OSPF等路選協(xié)議也放在這一層討論,。
交換
談到交換的問題,,從廣義上講,,任何數(shù)據(jù)的轉(zhuǎn)發(fā)都可以稱作交換。當然,,現(xiàn)在我們指的是狹義上的交換,,僅包括數(shù)據(jù)鏈路層的轉(zhuǎn)發(fā)。做網(wǎng)絡的人理解交換大多是從交換機開始的,,電路交換機在通信網(wǎng)中已經(jīng)使用了幾十年了,,做幀交換的設備,尤其是以太網(wǎng)交換機的大規(guī)模使用則是近幾年的事情,。
理解以太網(wǎng)交換機的作用還要從網(wǎng)橋的原理講起,。傳統(tǒng)以太網(wǎng)是共享型的,如果網(wǎng)段上有四臺計算機A,、B ,、C和D,,那么A與B通信的同時,,C和D只能是被動的收聽。假如將纜段分開(即微化),,A,、B在一段上,C,、D在另一段上,,那么A和B通信的同時,C和D也可以通信,,這樣原有10M的帶寬從理論上講就變成20M了,。同時,為了確保這兩個網(wǎng)段可以互相通信,,需要用橋?qū)⑺鼈冞B接起來,,橋是有兩塊網(wǎng)卡的計算機,如下圖所示:
在整個網(wǎng)絡剛剛啟動時,,橋?qū)W(wǎng)絡的拓樸一無所知,。這時,假設A發(fā)送數(shù)據(jù)給B,,因為網(wǎng)絡是廣播式的,,所以橋也收到了,但橋不知到B在自己的左邊還是右邊,,它就進行缺省的轉(zhuǎn)發(fā),,即在另外一塊網(wǎng)卡上發(fā)送這個信息。雖然做了一次無用的轉(zhuǎn)發(fā),,但通過這個過程,,橋?qū)W習到數(shù)據(jù)的發(fā)送者A在自己的左邊,。當網(wǎng)絡上的每一臺計算機都發(fā)送過數(shù)據(jù)之后,橋就是智能的了,,它了解每一臺計算機在哪一個網(wǎng)段上,。當A再發(fā)送數(shù)據(jù)給B時,橋就不進行數(shù)據(jù)轉(zhuǎn)發(fā)了,,與此同時,,C可以發(fā)送數(shù)據(jù)給D。
從上面的例子可以看出,,橋可以減少網(wǎng)絡沖突發(fā)生的幾率,,這就是我們使用橋的主要目的,稱作減小沖突域,。但橋并不能阻止廣播,,廣播信息的隔絕要靠三層的連接設備,路由器,。
按照纜段微化的思想,,纜段越多,可用帶寬就越高,。極限情況是每一臺計算機處在一個獨立的纜段上,,如果網(wǎng)絡上有十臺計算機,就需要一個十端口的橋?qū)⑺鼈冞B接起來,。但實現(xiàn)這樣一個橋不太現(xiàn)實,,軟件轉(zhuǎn)發(fā)的速度也跟不上,于是有了交換機,,交換機就是將上述多端口的橋硬件或固件化,,以達到更低的成本和更高的性能。
交換機的一個重要的功能是避免交換循環(huán),,這就涉及到了STP(Spanning Tree Protocol,,分支樹協(xié)議)。分支樹協(xié)議的功能是避免數(shù)據(jù)幀在交換機構(gòu)成的網(wǎng)絡中循環(huán)傳送,。如下圖所示,,如果網(wǎng)絡中有冗余鏈路的話,STP協(xié)議現(xiàn)選出根交換機(Route Bridge),,然后確定每一臺非根交換機到根交換機之間的路徑,,最后,將此路徑上的所有鏈路置成轉(zhuǎn)發(fā)(Forward)狀態(tài),,其余的交換機之間的連接就是冗余鏈路,,置為阻塞(Block)狀態(tài)。
交換機的另外一個重要功能是VLAN(Virtual LAN,,虛擬局域網(wǎng)),。VLAN的好處主要有三個:
端口的分隔,。即便在同一個交換機上,處于不同VLAN的端口也是不能通信的,。這樣一個物理的交換機可以當作多個邏輯的交換機使用,。
網(wǎng)絡的安全。不同VLAN不能直接通信,,杜絕了廣播信息的不安全性,。
靈活的管理。更改用戶所屬的網(wǎng)絡不必換端口和聯(lián)線,,只該軟件配置就可以了,。
VLAN可以按端口或MAC地址來劃分。
有時,,我們需要在交換機所構(gòu)成的網(wǎng)絡上保持VLAN的配置的一致性,。這就需要交換機之間按照VTP(VLAN Trunk Protocol,VLAN骨干協(xié)議)交流VLAN信息,。VTP協(xié)議只在骨干端口(Trunk Port),,即交換機之間的端口上運行。