1)ip位址空間的利用率有時很低。
每乙個a類位址網路可連線的主機數超過1000萬台,每乙個b類位址網路可連線的主機數超過6萬台。然而有些網路對連線在網路上的計算機資料有限制。例如,10base-t乙太網規定其最大結點數只有1024個。
2)給每乙個物理網路分配乙個網路號給使路由表變得太大因而使網路效能變壞。
每乙個ie路由器都應當能夠從路由表查出應怎樣到達其他網路的下一跳路由器。因此網際網路中的網路數越多,路由器的路由表的專案數就越多。
3)兩級ip位址不夠靈活
有時情況緊急,乙個單位需要在新的地點馬上開通乙個新的網路。但在申請到乙個新的ip位址之前,新增加的網路是不可能連線到網際網路上工作的
2023年起在ip位址中又增加了乙個「子網號字段」,使兩級ip位址變為**ip位址。這種做法叫做劃分子網或子網定址或子網路由選擇。
劃分子網的基本思路:
1)乙個擁有許多物理網路的單位,可將所屬的物理網路劃分為若干各子網。劃分子網純屬乙個單位內部的事情。本單位以外的網路看不見這個網路是由多少個子網組成,因為這個單位對外仍然表現為乙個網路。
3)凡是從其他網路發給本單位某個主機的ip資料報,仍然是根據ip資料報的目的網路號找到連線在本單位網路上的路由器。但此路由器在收到ip資料報後,再按目的網路號和子網號找到目的子網,把ip資料報交付目的主機。
問題:從ip資料報的首部無法看出源主機或目的主機所連線的網路是否進行了子網的劃分。
解決方案:子網掩碼
不管網路有沒有劃分子網,只要把子網掩碼和ip位址進行逐位相「與」(and),得出所要找的子網的網路位址。
不同的子網掩碼確定了每乙個子網中的最大主機數和可劃分的子網數。
無分類編碼cidr(構成超網)
正式名字:無分類域間路由選擇cidr(classless inter-domain routing)
特點:1)cidr消除了傳統的a類、b類和c類位址以及劃分子網的概念。cidr把32位的ip位址劃分為兩個部分。前面的部分是「網路字首」,用來指明網路,後面的部分則用來指明主機。因此cidr使ip位址從**編址(使用子網掩碼)又回到了兩級編址,但這是無分類的兩級編址。 ip位址 ::=
2)cidr把網路字首都相同的連續的ip位址組成乙個「cidr位址塊」。只要知道了cidr位址塊中的任何乙個位址,就可以知道這個位址塊的起始位址和最大位址等資訊。
cidr使用「斜線記法」,或稱為cidr記法,即在ip位址後面加上斜線「/」,然後寫上網路字首所佔的位數。
為了方便地進行路由選擇,cidr使用32位的位址掩碼。由於目前仍有一些網路還使用子網劃分和子網掩碼,因此cidr所使用的位址掩碼也可繼續稱為子網掩碼。/20表示位址掩碼中1的個數。 /20位址塊的位址掩碼: 11111111 11111111 11110000 0000000
由於乙個cidr位址塊中有很多位址,所以在路由表中就利用cidr位址塊來查詢目的網路。這種位址的聚合常稱為路由聚合,也稱為構成超網
在1994和2023年,網際網路的乙個路由表就會超過7萬個專案,而使用了cidr後,在2023年乙個路由表的專案數才只用3萬多個。
假設乙個isp共擁有64個c類網路,如果不採用cidr技術,則在與該isp的路由器交換路由資訊的每乙個路由器的路由表中就需要64個專案。
網路字首越短,其位址塊所包含的位址數就越多。而在** 結構的ip位址中,劃分子網是使網路字首變長。
查詢路由表時可能會得到不止乙個匹配結果。應當從匹配結果中選擇具有最長網路字首的路由。這叫作最長字首匹配,又稱為最長匹配或最佳匹配。
問題:由於要尋找最長字首匹配,使路由表的查詢過程變得更加複雜了。如何減小路由表的查詢時間。
方案:把無分類編址的路由表存放在一種層次的資料結構中,然後自上而下地按層次進行查詢。最常用的就是二叉線索。
為了簡化二叉線索的結構,可以先找出對應於每乙個ip位址的唯一字首。
在tcp/ip的標準中,各種資料格式常常以32位(即4位元組)為單位來描述。
2)首部長度 佔4位,可表示的最大十進位制數值是15。該單位是32位(4位元組)。首部長度欄位的最小值是5,相當於ip首部長度為5*4=20位元組。
3)總長度 指首部和資料之和的長度,單位為位元組。總長度欄位為16位。資料報最大長度為2^16 - 1 = 65535位元組。
在ip層下面的每一種資料鏈路層協議都規定了乙個資料楨中的資料字段的最大長度,這稱為最大傳送單元mtu(maximum transfer unit).
例如,最常用的乙太網就規定其mtu值是1500位元組。若所傳送的資料報長度超過資料鏈路層的mtu值,就必須把過長的資料報進行分片處理。
ip協議規定,在網際網路中所有的主機和路由器,必須能夠接受長度不超過576位元組的資料報。這是假定上層交下來的資料長度有512位元組(合理的長度),加上最長的ip首部60位元組,再加上4位元組的富裕量,就得到576位元組。
4)標識 佔16位。ip軟體在儲存器中維持乙個計數器,每產生乙個資料報,計數器就加一,並將此值賦給標識字段。但這個「標識」並不是序號,因為ip是無連線服務,資料報不存在按序接收的問題。當資料報由於長度超過網路的mtu而必須分片時,這個標識欄位的值就被複製到所有的資料報片的標識欄位中。相同的標識欄位的值使分片後的各資料報片最後能正確地重灌成為原來的資料報。(即標示的值只用於判斷是否是同乙個資料報的切片,其值並無其他意義)
5)標誌 佔3位 目前只有兩位有意義
標誌欄位中的最低位記為mf(more fragment)。mf=1即表示後面「還有分片」的資料報。mf=0表示這已是若干資料報片中的最後乙個。
標誌字段中間的一位記為df(don't fragment)。意思是"不能分片"。只有當df=0時才允許分片。
6)片偏移 佔13位。片偏移指出:較長的分組在分片後,某片在原分組中的相對位置。也就是說,相對於使用者資料字段的起點,該片從何處開始。片偏移以8個位元組為偏移單位。 這就是說,每個分片的長度一定是8位元組(64位)的整數倍。
7)生存時間 佔8位,生存時間字段常用的英文縮寫是ttl(time to live),表明是資料報在網路中的壽命。由發出資料報的原點設定這個字段。其目的是防止無法交付的資料報無限制地在網際網路中兜圈子。(生存時間並不是指其在網路中能存活的時長)
最初的設計:以秒作為ttl值的單位。每經過乙個路由器時,就把ttl減去資料報在路由器所消耗掉的一段時間。若資料報在路由器消耗的時間小於1秒,就把ttl值減1.當ttl值減為零時,就丟棄這個資料報。
後來隨著技術的進步,路由器處理資料報所需的時間不斷在縮短,一般都遠遠小於1秒鐘,後來就把ttl欄位的功能改為「跳數限制」(但名稱不變)。ttl的意義指資料報在網際網路中至多可經過多少個路由器。最大值為255。
8)協議 佔8位,協議字段指出此資料報攜帶的資料是使用何種協議,以便使目的主機的ip層知道應將資料部分上交給哪個處理過程。
常用協議和相應的協議字段值
協議名icmp
igmp
iptcp
egpigp
udpipv6
espospf
協議字段值12
4689
1741
5089
9)首部檢驗和 佔16位。這個字段只檢驗資料報的首部,但不包括資料部分。資料報每經過乙個路由器,路由器都要重新計算一下首部檢驗和(生存時間欄位會變化)。為了減少計算量,採用反碼算術運算把所有16位字相加後得到的反碼寫入檢驗和字段。
計算機網路(4 5)網路層 IP位址與硬體位址
ip 位址與硬體位址是不同的位址。從層次的角度看,1 硬體位址 或實體地址 是資料鏈路層和物理層使用的位址。2 ip 位址是網路層和以上各層使用的位址,是一種邏輯位址 稱ip 位址是邏輯位址是因為ip 位址是用軟體實現的 在 ip 層抽象的網際網路上只能看到ip資料報。圖中的ip1 ip2表示從源位...
計算機網路7 三 網路層 IP
為主機提供資料傳輸服務。在傳送資料時,網路層把傳輸層產生的報文段或使用者資料報封裝成ip資料報進行傳送。網路層的另乙個任務是選擇合適的路由,使ip資料報可以通過網路中的路由器找到目的主機。使用的協議有ip協議,還有與ip協議配套使用的arp icmp igmp協議。位址解析協議arp 網際控制報文協...
計算機網路(10)網路層
ip多播 ip多播就是一對多的通訊,網際網路範圍內的多播要靠路由器來實現,能夠執行多播協議的路由器稱為多播路由器。多播資料報的目的位址一定不能寫主機位址,因為多播組中可能有成千上萬個主機位址,所以自資料報的目的位址中寫入多播組的標示符,設法讓加入這個多播組的主機位址與標示符關聯起來。多播組的標示符就...