1.5計算機網(wǎng)絡(luò)的類別
1、按照網(wǎng)絡(luò)的作用范圍劃分:
(1)廣域網(wǎng)WAN:是互聯(lián)網(wǎng)的核心比分,作用范圍是幾十到幾千公里
(2)城域網(wǎng)MAN:跨越一個城市或幾個城市
(3)局域網(wǎng)LAN:一般通過微型計算機或工作站相連在較小的范圍,學(xué)校廉侧,工廠
(4)個人區(qū)域網(wǎng)PAN:把個人的設(shè)備連接起來的網(wǎng)絡(luò)
2、按照網(wǎng)絡(luò)使用者劃分
(1)公用網(wǎng):
(2)專用網(wǎng):部分特殊業(yè)務(wù)而建造的網(wǎng)絡(luò)冰悠,軍隊姓惑、銀行等
3褐奴、用來把用戶接入到互聯(lián)網(wǎng)的網(wǎng)絡(luò)
接入網(wǎng)AN:又叫本地接入網(wǎng)和居民接入網(wǎng)
接入網(wǎng)是從某個用戶端到互聯(lián)網(wǎng)中的第一個路由器之間的一種網(wǎng)絡(luò)。
1.6計算機網(wǎng)絡(luò)的性能指標(biāo)
1于毙、速率:比特率敦冬,b/s或bps,人們談及網(wǎng)絡(luò)速率時常常省略bit/s,多少兆,多少G
2唯沮、帶寬:本來指信號擁有的頻帶寬度脖旱。計算機網(wǎng)絡(luò)中表示單位時間內(nèi)網(wǎng)絡(luò)中的某個信道所能通過的最高數(shù)據(jù)率。帶寬的單位就是bit/s.
3介蛉、吞吐量:表示單位時間內(nèi)通過某個信道或端口的實際數(shù)據(jù)量萌庆,通常小于帶寬。
4币旧、時延:指數(shù)據(jù)(一個報文或分組)從網(wǎng)絡(luò)一端到另一端的時間践险。
時延包括發(fā)送時延(傳輸時延)、傳播時延吹菱、處理時延巍虫、排隊時延。
在高速網(wǎng)絡(luò)鏈路上毁葱,我們提高的僅僅是數(shù)據(jù)的發(fā)送速率而不是比特在鏈路上的傳播速率垫言。
提高發(fā)送速率只是減小了發(fā)送時延。
5倾剿、時延帶寬積:
傳播時延*帶寬筷频。在發(fā)送的第一個比特即將到達(dá)終點時,發(fā)送端一共發(fā)送的比特數(shù)
6前痘、往返時間RTT
7凛捏、利用率
信道利用率和網(wǎng)絡(luò)利用率
1.7計算機網(wǎng)絡(luò)體系結(jié)構(gòu)
開放系統(tǒng)互連基本參考模型OSI/RM,簡稱OSI
現(xiàn)在得到廣泛應(yīng)用的不是OSI,而是TCP/IP
網(wǎng)絡(luò)協(xié)議:為進(jìn)行網(wǎng)絡(luò)中的數(shù)據(jù)交換而建立的規(guī)則、標(biāo)準(zhǔn)或約定稱為協(xié)議芹缔。
協(xié)議的三個要素:(1)語法:數(shù)據(jù)與控制信息的結(jié)構(gòu)或格式(2)語義:需要發(fā)出何種控制信息坯癣,完成何種動作及作出何種響應(yīng)。
網(wǎng)絡(luò)協(xié)議的結(jié)構(gòu)應(yīng)該是層次式的最欠。
計算機網(wǎng)絡(luò)的各層及其協(xié)議的集合就是網(wǎng)絡(luò)的體系結(jié)構(gòu)示罗。
1、應(yīng)用層交互的數(shù)據(jù)單元稱為報文
2芝硬、傳輸層:為兩臺主機進(jìn)程之間的通信提供通用的數(shù)據(jù)傳輸服務(wù)蚜点。主要使用兩種協(xié)議,TCP和UDP協(xié)議拌阴。傳輸控制協(xié)議TCP:提供面向連接的绍绘、可靠的數(shù)據(jù)傳輸服務(wù),數(shù)據(jù)傳輸?shù)膯挝皇菆笪亩巍S脩魯?shù)據(jù)報協(xié)議UDP:提供無連接的陪拘、盡最大努力的樹傳輸服務(wù)厂镇,數(shù)據(jù)傳輸單位是用戶數(shù)據(jù)報。
3左刽、網(wǎng)絡(luò)層:為不同主機提供通信服務(wù)捺信,網(wǎng)絡(luò)層將傳輸層的報文段或用戶數(shù)據(jù)報封裝成分組或包進(jìn)行傳送。因為網(wǎng)絡(luò)層使用IP協(xié)議悠反,所以分組也叫IP數(shù)據(jù)報残黑。
網(wǎng)絡(luò)層的另一個任務(wù)就是選擇合適的路由,是的傳輸層下來的分組通過網(wǎng)絡(luò)中的路由器找到目的主機斋否。
4梨水、數(shù)據(jù)鏈路層:把IP數(shù)據(jù)報組裝成幀,幀包含數(shù)據(jù)和必要的控制信息茵臭。在相鄰的節(jié)點之間的鏈路傳送幀疫诽。
5、物理層:傳輸比特旦委,0,1
TCP/IP體系結(jié)構(gòu):
第二章物理層
2.6寬帶接入技術(shù)
有線寬帶接入和無限寬帶接入奇徒。
(1)非對稱數(shù)字用戶線ADSL技術(shù):改造現(xiàn)有的模擬用戶線,使其能承載寬帶數(shù)字業(yè)務(wù)缨硝。
(2)光纖同軸混合網(wǎng):電視摩钙、電話、寬帶
(3)FTTx技術(shù):光纖入戶
第三章數(shù)據(jù)鏈路層
數(shù)據(jù)鏈路層使用的信道分為兩類:點對點信道和廣播信道
(1)點對點信道和廣播信道這兩種信道使用的協(xié)議PPP協(xié)議和CSMA/CD協(xié)議
(2)數(shù)據(jù)鏈路層的三個基本問題:封裝成幀查辩、透明傳輸和差錯傳輸
(3)以太網(wǎng)MAC層的硬件地址
(4)適配器胖笛、轉(zhuǎn)發(fā)器、集線器宜岛、網(wǎng)橋长踊、以太網(wǎng)交換機的作用及場合。
3.1使用點對點信道的數(shù)據(jù)鏈路層
數(shù)據(jù)鏈路=物理線路+通信協(xié)議來控制(網(wǎng)絡(luò)適配器來實現(xiàn)協(xié)議萍倡,包含硬件和軟件)
點對點信道的數(shù)據(jù)鏈路層的協(xié)議數(shù)據(jù)單元---幀身弊。
數(shù)據(jù)鏈路層把網(wǎng)絡(luò)層傳下來的IP數(shù)組報添加首部和尾部封裝成幀。
(1)封裝成幀
在IP數(shù)據(jù)報加上首部和尾部列敲,這樣在接收端收到物理層上交的比特流之后可以根據(jù)首部和尾部的標(biāo)記確定幀的開始和結(jié)束阱佛。
使用ASCII碼中有128個不同的ASCII碼,有95個是可以從鍵盤輸入的戴而,另外33個不可輸入的字符可以作為控制字符放在IP數(shù)據(jù)報的首尾瘫絮。只有收到完整的開始字符和結(jié)束字符才會手下,否則丟棄填硕。
(2)透明傳輸
傳輸?shù)臄?shù)據(jù)中不能有作為控制的字符,否則出現(xiàn)幀定界錯誤。
當(dāng)傳輸用文本文件組成的幀時不用考慮這個問題扁眯,因為文本文件的字符都是從鍵盤輸入的壮莹,不會出現(xiàn)控制字符,這就叫做透明傳輸姻檀。
當(dāng)數(shù)據(jù)部分是非ASCII碼的文本文件時(二進(jìn)制代碼的程序和圖像)命满,會出現(xiàn)與控制字符沖突,如字符EOT的二進(jìn)制數(shù)據(jù)是00000100绣版,導(dǎo)致錯誤的接收和丟棄胶台。這就不是透明傳輸。
用字節(jié)填充的方式解決透明傳輸?shù)膯栴}杂抽。
在數(shù)據(jù)中出現(xiàn)的控制字符前加入轉(zhuǎn)義字符ESC,如果數(shù)據(jù)中國也有ESC,同樣在ESC前面再加一個ESC诈唬,接收端在傳給網(wǎng)絡(luò)層之前刪除一個ESC.
3、差錯檢測
0變成1,1變成0缩麸,出現(xiàn)誤比特铸磅。誤碼率BER,
目前數(shù)據(jù)鏈路層廣泛使用循環(huán)冗余檢測CRC進(jìn)行檢錯。
一般認(rèn)為接收端數(shù)據(jù)鏈路層接收的幀均無差錯杭朱。這是誤比特的方面的差錯阅仔,還有一種是傳輸差錯,多接收了幀或順序錯了等弧械,這樣就不能為網(wǎng)絡(luò)提供可靠傳輸八酒。
為此在CRC檢測的基礎(chǔ)上還加入了幀編號、確認(rèn)和重傳機制刃唐。接收端收到了要向發(fā)送端發(fā)送確認(rèn)羞迷,若發(fā)送端未收到確認(rèn)則要重傳。
實際上唁桩,對于通信質(zhì)量良好的鏈路(有限)闭树,數(shù)據(jù)鏈路層不采用確認(rèn)和重傳的機制,因為本身差錯就很少荒澡,這時的差錯轉(zhuǎn)到上層傳輸層TCP層協(xié)議糾正差錯报辱。對于通信質(zhì)量差的鏈路(無線),還是用那種確認(rèn)重傳的機制单山。
3.2點對點協(xié)議PPP
以前通過高級數(shù)據(jù)鏈路控制HDLC實現(xiàn)數(shù)據(jù)鏈路層的可靠傳輸“郑現(xiàn)在用簡單的多的點對點協(xié)議PPP,它是現(xiàn)在使用最廣泛的數(shù)據(jù)鏈路層協(xié)議米奸。
用戶一般通過某個ISP接入互聯(lián)網(wǎng)昼接,PPP協(xié)議就是計算機和ISP通信時使用的數(shù)據(jù)鏈路層協(xié)議。
3.3使用廣播信道的數(shù)據(jù)鏈路層
局域網(wǎng)使用的就是廣播信道悴晰。
局域網(wǎng)根據(jù)網(wǎng)絡(luò)拓?fù)浞诸悾盒切尉W(wǎng)慢睡、環(huán)形網(wǎng)逐工、總線網(wǎng)。傳統(tǒng)的以太網(wǎng)就是總線網(wǎng)∑現(xiàn)在的以太網(wǎng)占據(jù)局域網(wǎng)市場的絕對優(yōu)勢泪喊,幾乎成了局域網(wǎng)的代名詞。
傳輸媒體:雙絞線髓涯、光纖
局域網(wǎng)(以太網(wǎng))在信道分配上是隨機接入袒啼。
以太網(wǎng)的兩個標(biāo)準(zhǔn):DIX Ethernet V2和IEEE 802.3
適配器的作用
適配器(網(wǎng)卡):使得計算機與外部局域網(wǎng)連接。適配器與局域網(wǎng)是通過串行方式傳輸纬纪,與處理器是通過IO總線并行傳輸蚓再,數(shù)據(jù)率不同,所以適配器需要能夠緩存數(shù)據(jù)包各。
適配器要有驅(qū)動程序告訴它怎么緩存數(shù)據(jù)塊摘仅。
適配器實現(xiàn)了數(shù)據(jù)鏈路層和物理層兩個層次的功能,組裝幀發(fā)送到局域網(wǎng)或從局域網(wǎng)接收幀髓棋。
CSMA/CD協(xié)議
以太網(wǎng)早期是總線網(wǎng)实檀,使用廣播的方式,每臺總線上的計算機的適配器都有唯一的地址按声,發(fā)送數(shù)據(jù)幀時在首部指定接收的地址膳犹,適配器對自己的地址的數(shù)據(jù)幀接收,其他的丟棄签则,實現(xiàn)一對一通信须床。
為通信簡便,以太網(wǎng)采取了一下兩種措施:
1渐裂、無連接的工作方式豺旬,適配器對發(fā)送的幀不編號也不要求對方確認(rèn),以太網(wǎng)盡最大努力交付柒凉,即不可靠交付族阅。差錯幀是否重傳有高層協(xié)議控制∠ダ蹋總線上同一時間只允許一臺計算機發(fā)送資源坦刀,如何協(xié)調(diào)總線上計算機的工作?以太網(wǎng)采用隨機接入的方式減少沖突蔬咬。使用的協(xié)議就是CSMA/CD鲤遥,載波監(jiān)聽多點接入/碰撞檢測。
2林艘、以太網(wǎng)發(fā)送的數(shù)據(jù)都是用曼徹斯特編碼的信號盖奈。
在使用CSMA/CD協(xié)議時,一個站不可能同時進(jìn)行發(fā)送和接收狐援,不可能進(jìn)行全雙工通信而只能進(jìn)行雙向交替通信(半雙工通信)钢坦。
集線器
在以太網(wǎng)的星型拓?fù)渲械闹行募尤爰€器究孕。與雙絞線配合使用。
集線器的特點:
(1)使用集線器的以太網(wǎng)在邏輯上仍是一個總線網(wǎng)场钉,適配器執(zhí)行的是CSMA/CD協(xié)議蚊俺。
(2)有很多接口,很像一個多接口的轉(zhuǎn)發(fā)器逛万。
(3)集線器工作在物理層,僅僅是簡單的轉(zhuǎn)發(fā)比特
(4)堆疊式的集線器提高可靠性批钠。
以太網(wǎng)的MAC層
MAC層中的硬件地址叫MAC地址宇植。
名字指出我們所要尋找的資源,地址指出那個資源在何處埋心,路由告訴我們?nèi)绾蔚竭_(dá)該處指郁。
具體是指局域網(wǎng)上的每一臺計算機中固化在適配器ROM中的地址。48位(6字節(jié))
MAC幀的格式:
擴展以太網(wǎng)
在物理層用轉(zhuǎn)發(fā)器擴展以太網(wǎng)的地理范圍】酱簦現(xiàn)在可以用光纖和一對光纖調(diào)制協(xié)調(diào)器擴展主機和集線器的距離闲坎。
在數(shù)據(jù)鏈路層擴展以太網(wǎng)是更常用的方法。最初是使用網(wǎng)橋茬斧,對收到的幀根據(jù)其MAC幀進(jìn)行轉(zhuǎn)發(fā)和過濾腰懂。查找網(wǎng)橋中的地址表進(jìn)行轉(zhuǎn)發(fā)。
現(xiàn)在都是使用以太網(wǎng)交換機项秉,它實質(zhì)上是多接口的網(wǎng)橋绣溜。
以太交換機的自學(xué)習(xí)能力:
使用以太交換機組網(wǎng)時,會增加冗余鏈路娄蔼,由于自學(xué)習(xí)的機制會產(chǎn)生環(huán)路怖喻,白白消耗網(wǎng)絡(luò)資源。
使用生成樹協(xié)議STP解決兜圈子的問題岁诉,在邏輯上切斷某些鏈路锚沸,避免環(huán)路出現(xiàn)。
第四章網(wǎng)絡(luò)層
重要內(nèi)容:
(1)虛擬互聯(lián)網(wǎng)絡(luò)
(2)IP地址與物理地址的關(guān)系
(3)傳統(tǒng)的分類的ip地址和無分類域間路由選擇CIDR
(4)路由選擇協(xié)議的工作原理
網(wǎng)際協(xié)議IP
虛擬互聯(lián)網(wǎng)絡(luò)涕癣,IP網(wǎng)絡(luò)
源主機先查找自己的路由表哗蜈,看目的主機是否就在此網(wǎng)絡(luò)上,如在則不需要經(jīng)過任何路由器直接交付属划。如不在恬叹,則必須把IP數(shù)據(jù)報轉(zhuǎn)發(fā)給某個路由器,路由器在查找了自己的路由表之后再轉(zhuǎn)發(fā)出去同眯,直到最后的路由器與目的主機在一個網(wǎng)絡(luò)上绽昼。
在虛擬互聯(lián)網(wǎng)絡(luò)上是如何尋址的:
1、分類的IP地址
將IP地址劃分為若干個固定類须蜗。每一類地址由兩個字段組成硅确。網(wǎng)絡(luò)號+主機號
網(wǎng)絡(luò)號是全網(wǎng)唯一的目溉,主機號在前面標(biāo)志的網(wǎng)絡(luò)里面也是唯一的。所以一個IP地址在整個互聯(lián)網(wǎng)內(nèi)是唯一的菱农。
現(xiàn)在已經(jīng)廣泛用無分類的IP地址進(jìn)行路由選擇缭付,ABC類都不用了。
路由器根據(jù)目的主機所連接的網(wǎng)絡(luò)號來轉(zhuǎn)發(fā)分組循未,可以節(jié)約路由器存儲陷猫,加快查找時間。
一個路由器至少連接兩個網(wǎng)絡(luò)的妖,所以至少有兩個不同的IP地址绣檬。使用網(wǎng)橋或轉(zhuǎn)發(fā)器連接的若干局域網(wǎng)仍然是一個網(wǎng)絡(luò)。具有不同網(wǎng)絡(luò)號的局域網(wǎng)必須用路由器互聯(lián)嫂粟。
IP地址與硬件地址的區(qū)別:
物理地址是數(shù)據(jù)鏈路層和物理層使用的地址娇未,IP地址是網(wǎng)絡(luò)層及以上使用的地址。
使用ip地址的ip數(shù)據(jù)報一但交給數(shù)據(jù)鏈路層會封裝成使用物理地址的MAC幀星虹,連接在鏈路上的主機收到Mac幀的時候零抬,根據(jù)首部中的硬件地址決定留下還是丟棄。剝?nèi)ac幀的首部尾部交給網(wǎng)絡(luò)層才能在ip數(shù)據(jù)報的首部中找到源ip和目的ip
在ip層抽象的互聯(lián)網(wǎng)上只能看到Ip數(shù)據(jù)報宽涌。路由器只根據(jù)目的站的ip地址的網(wǎng)絡(luò)號進(jìn)行路由選擇平夜。在局域網(wǎng)的鏈路層只能看見MAC幀
問題:主機或者路由器怎么知道應(yīng)該在MAC幀首部加入什么樣的硬件地址?
路由器的路由表是怎么來的护糖?
通過地址解析協(xié)議ARP,根據(jù)ip地址找到對應(yīng)的硬件地址褥芒。
在網(wǎng)絡(luò)層使用ip地址,但在實際的鏈路上還是根據(jù)硬件地址嫡良。ip地址與硬件地址不是簡單的映射關(guān)系锰扶,并且新加入或撤走主機,更換適配器(硬件地址改變)寝受,要維護(hù)這樣的關(guān)系坷牛。ARP協(xié)議就是在主機的ARP緩存中存放一個映射表并動態(tài)更新。
在局域網(wǎng)中這樣一個映射表是怎么建立的呢很澄,如果主機(路由器)的ARP的緩存里還沒有信息京闰。
通過在局域網(wǎng)廣播APR請求分組,發(fā)送自己的ip和硬件地址甩苛,收到請求響應(yīng)之后將相應(yīng)的映射寫入ARP高速緩存蹂楣。這是解決同一局域網(wǎng)的主機ip和硬件地址。
如果不是在同一局域網(wǎng)下讯蒲,首先通過本局域網(wǎng)的路由器進(jìn)行轉(zhuǎn)發(fā)痊土,通過轉(zhuǎn)發(fā)表和ARP找到下一個路由器的硬件地址。
那為什么已經(jīng)用的硬件地址墨林,還要用ip地址赁酝?因為在各式各樣的網(wǎng)絡(luò)中存在不同的硬件地址犯祠,不能把這些轉(zhuǎn)換的工作交個主機或用戶來解決,ip地址的方式對用戶屏蔽了底層的調(diào)用ARP的過程酌呆,提供方便衡载。
ip層轉(zhuǎn)發(fā)分組的流程:
如果路由器的路由表存主機名,那表格將過于龐大隙袁。所以只根據(jù)網(wǎng)絡(luò)號來轉(zhuǎn)發(fā)痰娱。在同一網(wǎng)絡(luò)上使用ARP協(xié)議找到硬件地址。每一條路由最重要的兩條信息是目的網(wǎng)絡(luò)地址和下一跳地址菩收。
前面都在說怎么根據(jù)路由表轉(zhuǎn)發(fā)猜揪,但是路由表是怎么建立起來以及更新的呢?
在進(jìn)一步了解路由選擇之前先了解劃分子網(wǎng)和構(gòu)造超網(wǎng)坛梁。
劃分子網(wǎng):
在一個網(wǎng)絡(luò)內(nèi),借用若干位的主機號作為子網(wǎng)號來劃分子網(wǎng)嵌灰。
子網(wǎng)掩碼:通過子網(wǎng)掩碼來看出是否使用了子網(wǎng)劃分喂窟,前面的網(wǎng)絡(luò)號加上借用的子網(wǎng)號為1箱熬,主機號全為0.
比如一個二級的ip地址(網(wǎng)絡(luò)號16位)到了目標(biāo)網(wǎng)絡(luò)的路由器,子網(wǎng)掩碼上的1多余16位褐缠,說明劃分了子網(wǎng),這時路由器將使用三級ip地址的子網(wǎng)掩碼(24位1)风瘦,與該地址做與運算队魏,得到目的子網(wǎng)的網(wǎng)絡(luò)地址。
劃分子網(wǎng)增加了靈活性万搔,但減少了能夠連接在網(wǎng)絡(luò)上的主機總數(shù)胡桨。
劃分了子網(wǎng)之后,分組轉(zhuǎn)發(fā)的算法也要改瞬雹,路由表必須包含目的網(wǎng)絡(luò)地址昧谊、子網(wǎng)掩碼和下一跳地址。
路由器分組轉(zhuǎn)發(fā)的算法如下:
(1)首先獲得數(shù)據(jù)報的目的iP地址酗捌,先判斷是否為直接交付呢诬,即對本路由器直接連接的各個網(wǎng)絡(luò)逐一檢查,將各網(wǎng)絡(luò)的子網(wǎng)掩碼與ip相與胖缤,看得到的結(jié)果是否與目的網(wǎng)絡(luò)一致尚镰。若一致,則直接交付(當(dāng)然也要封裝成幀轉(zhuǎn)發(fā))哪廓。
(2)若都不一致狗唉,則看路由表上是否有目的地址的特定主機路由,有則直接給對應(yīng)的下一跳路由器撩独。
(3)查找路由表中的其他項目敞曹,也是將ip與子網(wǎng)掩碼做與運算账月,然后檢查是否與對應(yīng)網(wǎng)絡(luò)一致。
(4)若沒找到澳迫,再看有無設(shè)置默認(rèn)路由局齿,可以走默認(rèn)路由。
(5)都沒找到則報轉(zhuǎn)發(fā)分組出錯橄登。
無分類編址:
劃分子網(wǎng)緩解了ip分配的困難抓歼,但
為什么用無分類編址?B類地址快用完了拢锹。
在一個子網(wǎng)劃分子網(wǎng)的網(wǎng)絡(luò)中使用變長子網(wǎng)掩碼(VLSM)進(jìn)一步提高ip地址利用率谣妻。在VLSM的基礎(chǔ)上提出無分類編址方法,又叫無分類域間路由選擇卒稳。(CIDR)
CIDR的特點:
(1)沒有ip分類和劃分子網(wǎng)的概念蹋半,將32位分為兩部分,回到原來的兩級編址充坑,但是兩部分現(xiàn)在分別是網(wǎng)絡(luò)前綴和主機號减江。使用斜線記法。在ip地址后加上斜線/捻爷,再加上網(wǎng)絡(luò)前綴的位數(shù)辈灼。
(2)CIDR地址把網(wǎng)絡(luò)前綴都相同的連續(xù)地址組成一個CIDR地址塊,如192.199.170.82/27也榄,表示前27位表示網(wǎng)絡(luò)前綴巡莹,后5位做主機號,這個地址塊最多可以有32個地址甜紫,并且可以推出起始地址和結(jié)束地址降宅,方法是將網(wǎng)絡(luò)前綴的27位固定,后5位全取0或1得到兩個地址棵介。CIDR地址后面表示網(wǎng)絡(luò)前綴位數(shù)的數(shù)字也可以用32位的0钉鸯、1串表示,用1的個數(shù)表示網(wǎng)絡(luò)前綴的個數(shù)邮辽。
(3)因為一個CIDR地址塊中有很多地址唠雕,所以在路由選擇的時候可以利用CIDR地址塊來查找目的網(wǎng)絡(luò)。這種地址的聚合稱為路由聚合吨述⊙艺觯可以使路由表中的一行表示以前的很多個路由。也叫構(gòu)成超網(wǎng)揣云。
網(wǎng)絡(luò)前綴小于13或大于27 的都較少用捕儒。
CIDR的好處就是可以更加有效的分配IPV4地址,以前只能以/8、/16刘莹、/24來分配⊙忠悖現(xiàn)在可以很靈活的用特定的位數(shù)。網(wǎng)絡(luò)前綴和主機號可以不是出現(xiàn)在整數(shù)字節(jié)處点弯。
大學(xué)拿到一個CIDR地址塊扇调,包含1024 個地址,在大學(xué)內(nèi)部可以自己增加網(wǎng)絡(luò)前綴精確的給每個部門分配確切數(shù)量的ip地址塊抢肛,路由也通過這個地址塊來找狼钮。
使用了CIDR之后,路由器的路由選擇應(yīng)該有什么樣的變化捡絮?
路由表以前是包含網(wǎng)絡(luò)地址熬芜、子網(wǎng)掩碼、下一跳地址福稳。
現(xiàn)在只有兩項:網(wǎng)絡(luò)前綴和下一跳地址涎拉。
在查找路由表匹配的時候,可能會匹配到多個CIDR地址塊的圆,我們使用最長前綴匹配曼库,讓我們找到的下一跳地址更加精確。
例如略板,大學(xué)的CIDR地址塊是206.0.68.0/22,大學(xué)四系的CIDR地址塊是206.0.71.128/25.四系希望ISP把發(fā)給四系的數(shù)據(jù)直接發(fā)到四系,而不經(jīng)過大學(xué)的路由器慈缔。這時需要在ISP的路由表加上四系的CIDR地址塊206.0.71.128/25叮称。如果有數(shù)據(jù)發(fā)送到四系下面的一個地址206.0.71.130.在ISP的路由表上,會匹配到大學(xué)的CIDR地址塊和四系的CIDR地址塊藐鹤,因為我們使用最長前綴匹配瓤檐,所以會根據(jù)四系的CIDR地址塊直接轉(zhuǎn)發(fā)到四系的路由器。匹配的過程就是將目的地址與兩個地址塊的掩碼相與娱节,因為四系的掩碼匹配了25位挠蛉,而大學(xué)的掩碼匹配了22位,所以選擇四系的路由器肄满。
現(xiàn)在的問題是如何快速有效的尋找最長前綴匹配谴古?
在路由表中必須使用很好的數(shù)據(jù)結(jié)構(gòu)并使用先進(jìn)的算法減少查找的時間。目前的方法是使用二叉線索查找路由表稠歉。
最簡單的方法是歲所有可能的前綴長度循環(huán)查找掰担。對每一個長度M都要進(jìn)行匹配,如果路由表項目很多怒炸,查找的時間復(fù)雜度很高带饱,如果沒有這個路由,就是最壞情況要查找32次。
構(gòu)造二叉線索數(shù)勺疼。首先要把路由表的每個項目在所有項目里的唯一前綴找出來教寂,使用這個唯一前綴來構(gòu)造二叉線索樹。在查找時执庐,只要與唯一前綴匹配酪耕,就能找到對應(yīng)的CIDR地址塊。
這個二叉樹最長深度是32層耕肩,對應(yīng)所有的位數(shù)因妇。如果路由表要加入一個項目,就直接使用ip從前往后在樹中插入一個節(jié)點猿诸,表示加入了一個唯一前綴婚被。
為了再提高查找速度,再使用各種壓縮技術(shù)梳虽,比如不比較前面相同的幾位址芯,直接從后面不同的開始比較。
網(wǎng)際控制報文協(xié)議ICMP
在網(wǎng)絡(luò)層使用ICMP協(xié)議窜觉。
用PING測試兩臺主機的連通性:使用了ICMP回送請求和回送回答報文谷炸。PING是應(yīng)用層直接使用網(wǎng)絡(luò)層ICMP的一個例子,沒有經(jīng)過傳輸層禀挫。
以上學(xué)過了劃分子網(wǎng)和構(gòu)造超網(wǎng)旬陡,下面是介紹路由器中的路由表是怎么來的?
路由器中的路由表是通過路由選擇協(xié)議建立的语婴。
路由選擇算法分為靜態(tài)路由選擇策略和動態(tài)路由選擇策略描孟,動態(tài)選擇策略可以很好的使用網(wǎng)絡(luò)狀態(tài)變化,適合復(fù)雜的大網(wǎng)絡(luò)砰左。
互聯(lián)網(wǎng)采用的路由選擇協(xié)議是自適應(yīng)的(動態(tài))匿醒、分布式的。
把整個互聯(lián)網(wǎng)劃分為很多小的自治系統(tǒng)AS.每個AS對于其他的AS都表現(xiàn)出一個單一和一致的路由選擇策略缠导。
AS內(nèi)部使用的路由選擇協(xié)議稱之為內(nèi)部網(wǎng)關(guān)協(xié)議(比如說有RIP和OSPF)
AS之間進(jìn)行數(shù)據(jù)傳遞時廉羔,因為不同AS內(nèi)部會采用不同的內(nèi)部網(wǎng)關(guān)協(xié)議,所以要有一個外部網(wǎng)關(guān)協(xié)議(目前都是用BGP-4)進(jìn)行路由轉(zhuǎn)換僻造。AS之間的路由選擇叫域間路由選擇憋他,AS內(nèi)部的路由選擇叫域內(nèi)路由選擇。
在AS的邊界的路由器髓削,不僅要運行內(nèi)部的網(wǎng)關(guān)協(xié)議举瑰,還要運行外部網(wǎng)關(guān)協(xié)議。
內(nèi)部網(wǎng)關(guān)協(xié)議:
(1)RIP協(xié)議的原理:簡單蔬螟,是分布式的基于距離向量的路由選擇協(xié)議此迅。直連的網(wǎng)絡(luò)距離為0,經(jīng)過一個路由器到非直連的網(wǎng)絡(luò),距離記為1耸序。
距離不超過15忍些,即最長找到15個路由器之外,再長相當(dāng)于不可見坎怪。只適用于小型互聯(lián)網(wǎng)罢坝。
每一個路由器都要和其他路由器交換信息。
和哪些路由器交換信息搅窿?交換哪些信息嘁酿?在什么時候交換?
RIP的特點是:僅和相鄰路由器交換男应、交換信息為自己路由表的全部信息闹司、按照固定的時間間隔來交換。
在一般情況下沐飘,RIP協(xié)議可以收斂游桩。路由表中的主要信息就是到某個網(wǎng)絡(luò)的距離及下一跳地址。要是最短距離耐朴。更新最短距離的算法叫距離向量算法借卧。
RIP報文使用傳輸層UDP進(jìn)行傳送。RIP協(xié)議的特點是:好消息傳的快筛峭,壞消息傳的慢铐刘。
(2)OSPF協(xié)議(開放最短路徑優(yōu)先),適用于大規(guī)模網(wǎng)絡(luò)影晓。使用了迪杰克斯拉的最短路徑算法SPF滨达。
使用分布式的鏈路狀態(tài)協(xié)議。與RIP的不同點:
洪泛法向本自治系統(tǒng)內(nèi)的所有路由器發(fā)送信息俯艰、發(fā)送的信息是與本路由器相鄰的所有路由器的鏈路狀態(tài)、只有鏈路狀態(tài)發(fā)生變化才使用洪泛法交換信息锌订。
每個路由器使用鏈路狀態(tài)數(shù)據(jù)庫中的數(shù)據(jù)通過迪杰克斯拉算法構(gòu)造自己的路由表竹握。鏈路狀態(tài)數(shù)據(jù)庫能較快的更新,OSPF的路由表的收斂過程更快辆飘。OSPF可以將一個AS再分成若干區(qū)域啦辐,這樣可以減小洪泛的范圍,減少通信量蜈项。一個區(qū)域內(nèi)部的路由器只知道本區(qū)域的完整網(wǎng)絡(luò)拓?fù)洹?/p>
OSPF直接使用IP數(shù)據(jù)報傳送芹关。
OSPF還有其他的特點:
(a)對于不同類型的業(yè)務(wù)可以計算出不同的路由,根據(jù)業(yè)務(wù)的類別紧卒,對于時間的敏感程度侥衬,對鏈路設(shè)置不同的代價來計算路由。
(b)如果計算出多條代價相同的路由,可以做負(fù)載均衡轴总。RIP只能選一條直颅。
(c)OSPF路由器之間交換分組,可以根據(jù)鏈路狀態(tài)更新的分組來交換鏈路信息怀樟。
(d)OSPF支持可變長的子網(wǎng)劃分和無分類編址CIDR
OSPF有5種分組:
問候分組功偿、數(shù)據(jù)庫描述分組、鏈路狀態(tài)請求分組往堡、鏈路狀態(tài)更新分組械荷、鏈路狀態(tài)確認(rèn)分組。
問候分組是確認(rèn)哪些鄰站可達(dá)虑灰。其他四種用于鏈路狀態(tài)數(shù)據(jù)庫的同步吨瞎。
首先相鄰路由器發(fā)送數(shù)據(jù)庫描述分組,交換鏈路狀態(tài)的摘要信息(哪些路由器的鏈路狀態(tài)信息已經(jīng)寫入了數(shù)據(jù)庫)瘩缆,然后發(fā)送鏈路狀態(tài)請求分組关拒,請求自己缺少的項目信息,經(jīng)過一系列分組交換庸娱,建立全網(wǎng)同步的數(shù)據(jù)鏈路狀態(tài)表着绊。
在運行過程中,只要一個路由器的鏈路狀態(tài)發(fā)生變化熟尉,就要像全網(wǎng)洪泛鏈路狀態(tài)更新分組归露。OSPF的洪泛是可靠洪泛,不會洪泛到之前的路由器斤儿。
外部網(wǎng)關(guān)協(xié)議BGP
外部網(wǎng)關(guān)協(xié)議為什么不選擇像內(nèi)部的網(wǎng)關(guān)協(xié)議一樣剧包?
因為互聯(lián)網(wǎng)規(guī)模巨大,使得不同AS之間的路由選擇十分困難往果,如果使用鏈路狀態(tài)協(xié)議疆液,每個路由器都要維護(hù)很大的鏈路狀態(tài)數(shù)據(jù)庫。而且不同的AS對于路由選擇的協(xié)議不同陕贮,而且如果使用計算代價的方式堕油,不同AS選用的代價的尺度不一樣,在AS之間使用計算代價的方法計算AS之間的最短路由行不通肮之。所以只在AS之間交換“可達(dá)性”信息掉缺。
AS之間的路由選擇必須支持多種策略。比如最短路徑戈擒、代價最小眶明、安全性最好等等。有的AS只允許對自己付費的AS從自己的路由器經(jīng)過筐高。國內(nèi)的不要經(jīng)過國外的兜圈子搜囱。
所以BGP不是要找最佳路由丑瞧,而是要找一條能夠到達(dá)目的網(wǎng)絡(luò)的比較好的路由。
BGP采用路徑向量選擇協(xié)議犬辰,與RIP和OSPF都不同嗦篱。
(1)每個AS至少選擇一個BGP發(fā)言人,即BGP邊界路由器幌缝。
(2)不同AS的BGP發(fā)言人交換路由信息:首先建立TCP連接灸促,交換BGP報文建立BGP會話(session),利用TCP會話交換路由信息涵卵,使用TCP連接提供可靠的服務(wù)浴栽。每個BGP發(fā)言人除了運行BGP協(xié)議之外還要運行內(nèi)部網(wǎng)關(guān)協(xié)議。
BGP協(xié)議交換的路由信息即可達(dá)性信息就是要到達(dá)某個網(wǎng)絡(luò)所要經(jīng)過的一系列AS轿偎。BGP的路由信息的數(shù)量級是AS的個數(shù)的量級典鸡,這遠(yuǎn)比網(wǎng)絡(luò)的數(shù)量少的多。
BGP支持無分類域間路由選擇CIDR坏晦。BGP發(fā)言人的路由表包含網(wǎng)絡(luò)前綴萝玷、下一跳地址以及到達(dá)目標(biāo)網(wǎng)絡(luò)需要經(jīng)過的AS序列。使用路徑向量信息避免兜圈子路由昆婿。
BGP剛運行時與鄰站交換整個BGP路由表球碉,之后只交換更新變化的部分。BGP有四種報文
OPEN(建立關(guān)系仓蛆,初始化通信)睁冬、UPDATE(通知更新路由信息)、KEEPALIVE(驗證連通性)看疙、NOTIFICATION(發(fā)送檢測到的差錯)四種豆拨。
路由器的結(jié)構(gòu)
路由器是多輸入多輸出端口的專用計算機,用來轉(zhuǎn)發(fā)分組能庆。
在輸入端口和輸出端口都使用了緩沖區(qū)施禾,這個緩沖區(qū)就是一個隊列。來不及轉(zhuǎn)發(fā)的分組會暫時存在這個隊列里搁胆,如果因為處理速率趕不上數(shù)據(jù)進(jìn)入隊列的速率弥搞,緩沖空間就會耗盡,之后的分組就會被丟棄丰涉。
IPv6
更大的地址空間:從IPv4的32位增大到128 位,可以劃分更多的層次斯碌。
IPv6數(shù)據(jù)報由兩部分構(gòu)成一死,基本首部和有效載荷(凈載荷)凈載荷里面還有零個或多個擴展首部,后面是數(shù)據(jù)部分傻唾,擴展首部不屬于首部投慈。
從IPv4向IPv6過渡承耿,IPv6需要能夠向后兼容。有兩種過渡的策略:雙協(xié)議棧和隧道技術(shù)
1伪煤、雙協(xié)議棧加袋,使一部分主機或路由器裝有雙協(xié)議棧,即能和IPv6的系統(tǒng)通信又能和IPv4的系統(tǒng)通信抱既。那如何知道使用的是那種地址呢职烧?使用域名系統(tǒng)DNS查詢地址,看返回的是IPv4還是IPv6地址防泵。在數(shù)據(jù)報的傳輸過程中蚀之,IPv4與IPv6的轉(zhuǎn)換需要轉(zhuǎn)換首部,而在恢復(fù)的時候捷泞,IPv6的一些首部信息無法恢復(fù)足删,會置為空缺,這種損失無法避免锁右。
2失受、隧道技術(shù)
在IPv6數(shù)據(jù)報要進(jìn)入IPv4網(wǎng)絡(luò)時,將IPv6數(shù)據(jù)報封裝成IPv4數(shù)據(jù)報咏瑟,IPv6數(shù)據(jù)報變成了IPv4數(shù)據(jù)包的數(shù)據(jù)部分拂到。
ICMPv6
IPv6也不保證可靠交付,因為路由器可能會丟棄數(shù)據(jù)報响蕴,所以依靠ICMPv6反饋差錯信息谆焊,已合并了ARP地址解析協(xié)議
虛擬專用網(wǎng)VPN和網(wǎng)絡(luò)地址轉(zhuǎn)換NAT
專用地址只用做本地地址,用于機構(gòu)的內(nèi)部通信浦夷∠绞裕互聯(lián)網(wǎng)中的所有路由器對目的地址是專用地址的數(shù)據(jù)報一律不進(jìn)行轉(zhuǎn)發(fā)。
專用網(wǎng)用作內(nèi)部的主機通信劈狐,但由于機構(gòu)的部門范圍很廣罐孝,專用網(wǎng)的不同網(wǎng)點之間的通信必須經(jīng)過公用的互聯(lián)網(wǎng),這需要加密肥缔。
實現(xiàn)虛擬專用網(wǎng)的方法: IP隧道技術(shù)
內(nèi)部的主機分到了本地的地址莲兢,但是又想和互聯(lián)網(wǎng)上的主機通信⌒牛可以采用網(wǎng)絡(luò)地址轉(zhuǎn)換的方式改艇。NAT要有一個全球IP地址,用NAT地址轉(zhuǎn)換表坟岔,轉(zhuǎn)換本地地址和路由器的全球IP地址谒兄。