在現今網絡飛速發展的時代中,路由器有著舉足輕重的作用。因為路由器作為網絡層中的中繼系統,提供著一個在第三層網絡間數據的路由選擇與轉發功能。因此,路由器的功能、作用及基礎配置都是作為IT行業成員的我們必須熟練掌握的。
以下,我們將從兩方面對路由器作一個簡要的分析:即如何在實驗中搭建一個最簡單的網絡環境,并在其配置中常會碰到的情況及相對應的解決方法;以及對在網際中的數據傳輸中應用不同的數據封裝協議(HDLC與PPP)、鏈路壓縮進行傳輸速率的比較。
路由器配置及網絡搭建
要組建一個網絡,就須在應用中對網絡結構要有一個很清晰的了解,而在物理上的正確連接、路由器中的分配IP地址、廣域網路由協議的選擇及局域網的接入等都是在實際應用中必需十分注意的。以下則是我們經過實驗總結出來的使整個網絡運行起來的三個主要方面。
一、網間的物理連接
在我們的實驗環境中,運用了最簡單的點對點環境,通過一對MODEM把兩臺路由器的廣域網口連接起來進行數據傳輸。MODEM間連接雙絞線(直通線) ,還要給予線路傳輸的帶寬。而在局域網口,路由器直接與一臺微機相連。但在實際的應用中,往往并不單單是兩臺路由器相連,或要多臺路由器、交換機、集線器等。這要視網絡結構來對網絡設備的數量、位置,根據環境和要求進一步考慮。
二、路由器的配置
因為今天的路由器所包含的已不僅僅是對數據轉發與路由轉換的概念,它還可以實現多種意義和功能,如:安全限制、流量控制等。所以,在此我們只是簡要介紹一下實現其原始功能的幾個步驟。首先,進入端口模式,給予每個廣域網口及以太網口一個IP地址與相應的地址掩碼。其次,在廣域網口要設置帶寬與數據的鏈路傳輸封裝協議(在實驗中我們分別使用了HDLC及PPP協議)。最后,要配置路由協議,在大型的網絡中,可選用的有很多不同的協議(靜態路由、動態的OSPF、EIGRP)。而我們則選用的是CISCO的專有動態路由協議EIGRP。
三、用戶終端的設定
為了實驗的簡便,為此我們只在以太網內放置了一臺微機與以太網口相連。從以太口接出的所有設備都必須要對其指定一個IP地址且是與路由器的以太網口同一網段的,同時以路由器的以太網口為網關,才能保證以太網與外網段正常交換信息。

經過上面的三點配置,這個實驗網絡就能運行起來。利用PING命令即可檢測兩臺微機間是否能正常通信。但在實驗的過程中,在以上的每一個方面中,還有很多需要注意的小地方。以下即是我們在實驗當中所得的幾點體會。
一.廣域網中連接的ASCOM是智能的,因此在連接后等待兩個MODEM的時鐘同步后即可進行通信。但需要注意的是在此對MODEM中會自定義一主一從或手工設定也可,當主MODEM改變傳輸的速率時,鏈路自動斷開,從MODEM會與主MODEM進行時鐘重同步以新設定的速率通信。
二.在路由器的端口狀態檢查中,當接口與下聯設備連接,端口為UP;當下聯設備處于開啟狀態,而且連接的鏈路協議也配置完成,端口的協議狀態才會呈現UP。 #p#副標題#e#
三.配置路由協議時,如果協議還沒有起來,檢查路由器的狀態則是所有端口都是UP,但鏈路卻不通。這是由于路由器沒有把下連設備的路由信息傳給上連路由器的路由表,數據轉發時就只能通過上連路由器的路由表找到直接相連的網段卻找不到下一跳相連的網段地址。只有在協議正常運行后,路由器通過路由協議學習到網絡中的路由,才能把得到的數據對其下一跳進行轉發。還要注意起用路由協議時,網絡號的指定是指運用此路由協議的整個網絡。
四.路由器廣域網的數據鏈路層封裝協議要同步,就是收發數據必須用同一種封裝協議,否則廣域網口會丟掉與接口封裝類型不相同的數據包,導致鏈路的不通。
五.由于微機與路由器的接口屬于同類網絡接入設備,要用反雙絞線(交叉線)進行連接。同樣的情況還有交換機與集線器的相連。也可以通過端口的標識判定。同種標識則用交叉線,反之,用直通線。
數據的傳輸
網絡本身的意義就在于它能使信息更快,更便捷的傳送到網絡所覆蓋的整個區域范圍,從而實現信息化和全球化的時代要求。但信息的傳送必須要得到正確、完整的保證。在計算機通信的早期人們就已發現,對于經常產生誤碼的實際鏈路,只要加上合適的控制規程,就可以使通信變為比較可靠的。這些規程演變到現在,成為網際間的數據傳輸封裝協議有HDLC、PPP、ATM、幀中繼等。于是,在兩臺微機可以在這個實驗網絡通信后,我們不但對HDLC與PPP進行了傳輸速率,還用CISCO路由器分別在這兩種協議下的加壓縮與不加壓縮時的狀態做了一個比較。
用于測試傳輸速度的軟件是5.58M的一個注冊表文件,使用FTP進行數據傳輸。傳輸過程應用了二進制算法和HASH排序,得出的結果在下表中列出。

從實驗的結果,可以看出在同樣的網絡環境中,HDLC與PPP相比,在正常的情況下,PPP要稍快一點。在加壓縮后,兩協議都明顯要比未壓縮前要快。這是什么原因呢?那么就從他們的結構開始說起吧。
HDLC(High-level Data Link Control),高級數據鏈路控制。前身是面向比特的規程SDLC,后經ISO修改才稱為HDLC的。在CISCO的路由器中,HDLC是默認的傳輸協議,與普通的HDLC的結構相似,為此,我們就以普通的HDLC對其結構進行分析。
HDLC的幀結構

數據鏈路層的數據是以幀為單位的。一個幀的結構具有固定的格式。標志字段F(Flag ),放在幀的開頭和結尾,作為幀的邊界,用于解決比特同步的問題。幀校驗序列FCS(Frame Check Sequence)字段共占16bit,它采用的生成多項式是CRC-CCITT。所檢驗的范圍是從地址字段的第1個比特起,到信息字段的最末1個為止。控制字段C共8bit。HDLC的許多重要功能都要靠控制字段來實現。

PPP的幀格式和HDLC的相似。與HDLC不同的是多了2個字節的協議字段。當協議字段為0x0021時,信息字段就是IP數據報。若為0xC021,則信息字段是鏈路控制數據,而0x8021表示這是網絡控制數據。PPP不提供使用序號和確認的可靠傳輸。PPP工作在網絡層與數據鏈路層中,包括NCP與LCP協議。NCP是在第三層用于局域網中的多協議封裝,LCP用于第二層的廣域網鏈路控制協議。 #p#副標題#e#
從兩者的結構上來看,PPP有比HDLC更復雜的控制機制,處理的時候需要的時間相對要多些。從通信的連接來看,HDLC在連接與斷開時采取的是雙方握手協議;PPP使用的是一個鑒別認證機制,雙方通過連接,然后協商,身份的鑒別,LCP的配置,打開通信到通信結束,完成整個過程。所以在整個測試中,PPP在鏈路的連接到數據的處理,所耗費的時間都要比HDLC要多。特別在大行的數據傳輸時,更能體現出HDLC的傳輸速度。但PPP在安全方面卻比HDLC要更勝一籌,其身份驗證可以根據安全的要求對所有接收的數據進行檢測,通過鑒定后才會把數據接收轉發否則丟棄掉。因此,對兩協議的選用可視傳輸的要求來考慮。(以下分別是兩協議的通信鏈路連接狀態圖)


此外,我們對兩種協議進行了鏈路的壓縮傳送。結果,在速度方面,兩者都有了顯著的提高。其實,所謂的壓縮也就是對傳輸實體進行的,對包頭和負載的壓縮。鏈路壓縮并不是指單單一個特別的協議功能,而CISCO就提供了兩種專用于路由器傳輸數據的壓縮算法----Stac與Predictor。但在HDLC結構中,Stac是唯一的選擇。STAC對數據的壓縮實際上是通過對一些多余字串的數據流用特定的標記替代,而這些帶有信息量的標記都是明顯短于所替代的數據流的。如果算法在數據中不能找到可以替代的字串,那么將不會有壓縮的情況發生,或者在傳輸中就像壓縮功能沒有被激活一般。在一些應用中,例如是在發送加密數據時,壓縮就只會增加傳輸的開銷,所以在這類情況中,是不會對原始傳輸進行修改。而且Stac壓縮算法對占用CPU的資源有較高要求,往往不被采用于高CPU利用率的路由器中。Predictor壓縮算法就如其名字一般。這一CISCO優先算法是通過嘗試從一個操作檢索系統中預測出即將到來的特征數據序列,而這個系統就是基于壓縮字典生成的。何為壓縮字典,其實它就是一本由眾多可能出現的數據序列組合成的編碼書。如果一個特征數據流在此字典中被發現,且與字典中的其中一條目完全吻合,那么,此字典條目將會用來替代數據流。得出的條目包含的是更小更短的特征序列。在遠端,這些特征將會與數據字典再次做一個對比進行解碼。數據流就會被找出及用合適的信息替換。Predictor壓縮算法就如形體語言一般,利用一個手勢即可表達整個的句子與含義(壓縮),遠比拼出由一個個單獨的詞語所組成的句子與含義(無壓縮)來得簡單。因為所有的群體對手勢語言都能理解,所以相互間能夠很好的溝通。相反,當其中一人在交流時包含了一個未知的形體語言,那么相互間的溝通將不會產生。在壓縮中同樣會出現缺少交流的情況。如在一方選用了壓縮算法,那么在另一方也必須使用。(需要注意的是,兩端所使用的算法必須一致。)Stac是高CPU占用,而Predictor卻是極端的高內存占用。因此,如果路由器沒有配備大容量的RAM,那就想也別想實行Predictor算法。但如果RAM充足的話,使用Predictor也是一個不錯的選擇。
因為上述實驗在一個理想化的網絡環境中進行,并受到條件和設備等限制,測試得出的數據并不能在所有環境中適用。我們的水平有限,經驗尚淺,本文的不足之處,還望同行多予指點。