计算机网络基础知识点三
網絡層
與網際協議IP配套的協議有:
地址解析協議 ARP(Address Resolution Protocol)
網際控制報文協議 ICMP(Internet Control Message Protocol)
網際組管理協議 IGMP(Internet Group Management Protocol)
IP數據報的格式
一個IP數據報由首部和數據兩部分組成。首部的前一部分是固定長度共20字節,是所有IP數據報所必須具有的,在首部的固定部分的后面的一些可選字段長度是可變的。
版本:占4位,指IP協議的版本
首部長度:占4位,因此最大值為15。值為1表示的是1個32位字的長度,也就是4字節。因為首部固定長度為20字節,因此該值最小為5。如果可選字段的長度不是4字節的整數倍,就用尾部的填充部分來填充。
區分服務:占8位,用來獲得更好的服務,一般情況下不使用。
總長度:包括首部長度和數據部分長度
標識:在數據報長度過長而需要分片時,相同數據報的不同分片具有相同的標識符。
標志:占3位。標志字段中的最低位記為MF,MF=1表示后面還有分片,當MF=0時表示當前數據報已經是最后一個;標志字段中間的一位記為DF,只有當DF=0時才允許分片。
片偏移:占13位。指出較長的分組在分片后,某片在原分組中的相對位置
生存時間:占8位,定義數據報在網絡中的壽命,防止無法交付的數據報無限制的在互聯網中兜圈子。
協議:指出攜帶的數據應該上交給哪個協議進行處理,例如 ICMP、TCP、UDP 等
首部檢驗和:占16位。只檢驗數據報的首部,但不包括數據部分。不檢驗數據部分可減少計算的工作量。
源地址:占32位
目的地址:占32位
IP地址的編址方法:分類的IP地址、子網的劃分、構成超網
分類的IP地址:由兩部分組成,網絡號和主機號,其中不同分類具有不同的網絡號長度,并且是固定的。IP地址 ::= {< 網絡號 >, < 主機號 >}
子網的劃分:通過在主機號字段中拿一部分作為子網號,把兩級 IP 地址劃分為三級 IP 地址。IP 地址 ::= {< 網絡號 >, < 子網號 >, < 主機號 >}
要使用子網,必須配置子網掩碼。一個 B 類地址的默認子網掩碼為 255.255.0.0,如果 B 類地址的子網占兩個比特,那么子網掩碼為 11111111 11111111 11000000 00000000,也就是 255.255.192.0。子網掩碼的作用是找出數據報所要轉發的子網地址,將子網掩碼與數據報的目的地址逐位相與,便可得出子網的網絡地址。注意外網是看不到子網存在的。
構造超網(無分類編址CIDR)
無分類編址CIDR消除了傳統A類、B類和C類地址以及劃分子網的概念,使用網絡前綴和主機號來對IP地址進行編碼,網絡前綴的長度可以根據需要變化。
IP 地址 ::= {< 網絡前綴號 >, < 主機號 >}
CIDR 的記法上采用在 IP 地址后面加上網絡前綴長度的方法,例如 128.14.35.7/20 表示前 20 位為網絡前綴。CIDR把網絡前綴都相同的連續的IP地址組成一個CIDR地址塊。CIDR的地址掩碼也稱為子網掩碼,斜線記法中,斜線后面的數字就是地址掩碼中1的個數
一個CIDR地址塊中有很多地址,一個CIDR表示的網絡就可以表示原來的很多個網絡,并且在路由表中只需要一個路由就可以代替原來的多個路由,減少了路由表項的數量。把這種通過使用網絡前綴來減少路由表項的方式稱為路由聚合,也稱為構成超網 。
地址解析協議 ARP
網絡層實現主機之間的通信,而鏈路層實現具體每段鏈路之間的通信。因此在通信過程中,IP 數據報的源地址和目的地址始終不變,而 MAC 地址隨著鏈路的改變而改變。ARP實現由IP地址得到MAC地址。
每個主機都有一個ARP高速緩存,里面有本局域網上的各主機和路由器的IP地址到MAC地址的映射表。如果主機A知道主機B的IP地址,但是ARP高速緩存中沒有該IP地址到MAC 地址的映射,此時主機A通過廣播的方式發送ARP請求分組,主機B收到該請求后會發送 ARP 響應分組給主機A告知其MAC地址,隨后主機A向其高速緩存中寫入主機B的IP地址到 MAC 地址的映射。ARP解決的是同一個局域網上的主機或路由器的IP地址和硬件地址的映射問題。
網際控制報文協議 ICMP
ICMP是為了更有效地轉發IP數據報和提高交付成功的機會。它封裝在IP數據報中,但是不屬于高層協議。
ICMP 報文分為差錯報告報文和詢問報文。
網際組管理協議IGMP
IGMP協議讓連接在本地局域網上的多播路由器知道本局域網上是否有主機參加或退出了某個多播組,并配合多播路由選擇協議完成多播任務。IGMP的工作主要分為兩個階段:
第一階段:當某臺主機加入新的多播組時,該主機應向多播組的多播地址發送一個IGMP報文,聲明自己要成為該組的成員。本地的多播路由器收到IGMP報文后,還要利用多播路由選擇協議把這種組關系轉發給互聯網上的其他多播路由器。
第二階段:組成員關系是動態的。本地多播路由器要周期性的探尋本地局域網上的主機,以便知道這些主機是否還繼續是組的成員。只要有一臺主機對某個組響應,那么多播路由器就認為這個組是活躍的。但一個組在經過幾次探詢后仍然沒有一臺主機響應,多播路由器就認為本網絡上的主機已經都離開這個組,因此也就不再把這個組的成員關系轉發給其他的多播路由器。
虛擬專用網 VPN
由于IP地址的緊缺,一個機構能申請到的IP地址數往往遠小于本機構所擁有的主機數。并且一個機構并不需要把所有的主機接入到外部的互聯網中,機構內的計算機可以使用僅在本機構有效的IP地址(專用地址)。VPN使用公用的互聯網作為本機構各專用網之間的通信載體。專用指機構內的主機只與本機構內的其它主機通信;虛擬指好像是,而實際上并不是,它有經過公用的互聯網。
下圖中,場所A和B的通信經過互聯網,如果場所A的主機X要和另一個場所B的主機Y通信,IP數據報的源地址是10.1.0.1,目的地址是10.2.0.3。數據報先發送到與互聯網相連的路由器R1,R1對內部數據進行加密,然后重新加上數據報的首部,源地址是路由器R1的全球地址125.1.2.3,目的地址是路由器R2的全球地址194.4.5.6。路由器R2收到數據報后將數據部分進行解密,恢復原來的數據報,此時目的地址為10.2.0.3,就交付給Y。
網絡地址轉換 NAT
專用網內部的主機使用本地IP地址又想和互聯網上的主機通信時,可以使用NAT來將本地 IP轉換為全球IP。在以前,NAT將本地IP和全球IP 一一對應,這種方式下擁有n個全球IP地址的專用網內最多只可以同時有n臺主機接入互聯網。為了更有效地利用全球IP地址,現在常用的NAT轉換表把傳輸層的端口號也用上了,使得多個專用網內部的主機共用一個全球IP地址。使用端口號的NAT也叫做網絡地址與端口轉換NAPT。
路由器的結構
路由器從功能上可以劃分為:路由選擇和分組轉發。分組轉發結構由三個部分組成:交換結構、一組輸入端口和一組輸出端口。
路由器分組轉發的流程
從數據報的首部提取目的主機的IP地址D,得到目的網絡地址N。若N就是與此路由器直接相連的某個網絡地址,則進行直接交付;若路由表中有目的地址為D的特定主機路由,則把數據報傳送給表中所指明的下一跳路由器;若路由表中有到達網絡N的路由,則把數據報傳送給路由表中所指明的下一跳路由器;若路由表中有一個默認路由,則把數據報傳送給路由表中所指明的默認路由器;報告轉發分組出錯。
路由選擇協議
路由選擇協議都是自適應的,能隨著網絡通信量和拓撲結構的變化而自適應地進行調整。互聯網可以劃分為許多較小的自治系統AS,一個AS可以使用一種和別的AS不同的路由選擇協議。可以把路由選擇協議劃分為兩大類:
自治系統內部使用的路由選擇協議:RIP和OSPF
自治系統外部使用的路由選組協議:BGP
內部網關協議RIP:RIP是一種基于距離向量的路由選擇協議。距離是指跳數,直接相連的路由器跳數為1。跳數最多為15,超過15表示不可達。RIP 按固定的時間間隔僅和相鄰路由器交換自己的路由表,經過若干次交換之后,所有路由器最終會知道到達本自治系統中任何一個網絡的最短距離和下一跳路由器地址。
距離向量算法
①對地址為 X 的相鄰路由器發來的 RIP 報文,先修改報文中的所有項目,把下一跳字段中的地址改為 X,并把所有的距離字段加1。每一個項目都包括目的網絡N,距離d,以及下一跳的路由器X;
②對修改后的 RIP 報文中的每一個項目,進行以下步驟:
1)若原來的路由表中沒有目的網絡 N,則把該項目添加到路由表中;
2)否則(即在路由表中有目的網絡N,這時就再查看下一跳的路由器地址):若下一跳路由器地址是 X,則把收到的項目替換原路由表中的項目;
3)否則(即這個項目是:到目的網絡N,但下一跳路由器不是X):若收到的項目中的距離d小于路由表中的距離,則進行更新,否則什么也不做。
③若3分鐘還沒有收到相鄰路由器的更新路由表,則把該相鄰路由器標為不可達,即把距離置為16。
缺點:RIP協議實現簡單,開銷小。但是RIP能使用的最大距離為15,限制了網絡的規模。并且當網絡出現故障時,要經過比較長的時間才能將此消息傳送到所有路由器。
內部網關協議OSPF
開放最短路徑優先 OSPF,是為了克服 RIP 的缺點而開發出來的。開放表示OSPF不受某一家廠商控制,而是公開發表的;最短路徑優先表示使用了 Dijkstra 提出的最短路徑算法 SPF。
OSPF具有以下特點:
1)采用洪泛法向本自治系統中的所有路由器發送信息。
2)發送的信息就是本路由器與所有相鄰路由器的鏈路狀態,鏈路狀態包括與哪些路由器相鄰以及鏈路的度量,該度量表示費用、距離、時延、帶寬等信息。
3)只有當鏈路狀態發生變化時,路由器才會發送信息。
外部網關協議BGP
AS之間的路由選擇困難的原因在于:
第一,互聯網的規模太大,使得自治系統AS之間路由選擇非常困難
第二,各個AS內部使用不同的路由選擇協議,無法準確定義路徑的度量;
第三,各個AS之間的路由必須考慮有關的策略,比如有些AS不愿意讓其他AS經過
BGP 只能尋找一條比較好的路由,而不是最佳路由。每個AS都必須配置BGP發言人,通過在兩個相鄰BGP發言人之間建立TCP連接來交換路由信息。
總結
以上是生活随笔為你收集整理的计算机网络基础知识点三的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 八个步骤教你做好会议现场管理
- 下一篇: 软件测试入职第一天应该做什么?