網絡協議核心考點總結
第四章
- 主機的標志方式
- 數據鏈路層:物理地址(MAC)
- 網絡層:邏輯地址(IP)
- 地址解析:邏輯地址與物理地址之間的映射
- 地址解析協議ARP:從IP地址到物理地址的映射
- 反向地址解析協議RARP:從物理地址到IP地址的映射
- ARP功能
- 發送數據包請求獲得目的主機的物理地址
- 向請求物理地址的主機發送解析結果
- 使用ARP獲取目標物理地址的4種情況
- 源主機與目的主機在同一個子網當中
- 目標IP地址在IP數據報中獲取
- 直接獲取目的主機的物理地址
- 源主機與目的主機在不同子網,主機先要交給一個默認路由器
- 目標IP是默認路由器IP
- 獲取的是默認路由器的物理地址
- 源主機與目的主機在不同子網,交給適當的路由器
- 目標IP是路由表中路由IP
- 獲取路由的物理地址
- 路由器發給目的主機
- 目的IP是在IP數據報中獲取
- 獲取目的主機的物理地址
- 源主機與目的主機在同一個子網當中
- ARP命令
- arp -a [inet_addr] 顯示地址映射表項,[ ]為可選項。
- arp -g [inet_addr] 功能與arp -a [inet_addr]相同。
- arp -d inet_addr 刪除由inet_addr所指定的表項。
- arp -s inet_addr phys_addr 增加由inet_addr和phys_addr指定的靜態表項。inet_addr為點分十進制格式的IP地址,phys_addr為十六進制形式的物理地址,物理地址的字節之間用短橫線分割,例如,0C-26-1B-23-45-67 。
- ARP協議的詳細流程見圖

- 反向地址解析協議(RARP)
- 主機進行MAC地址廣播
- 目的IP為空
- 目的MAC為本機MAC
- 源IP為空
- 源MAC為本機MAC
- 服務器進行單播應答
- 目的IP為解析之后的IP
- 目的MAC為目的主機MAC
- 源IP為本機IP
- 源MAC為本機MAC
- 主機進行MAC地址廣播
- 抓包分析
本章習題總結
- 當源主機和目標主機在同一個網絡中時,ARP協議解析的結果將提供什么樣(什么設備)的物理地址?
- 目標主機的物理地址
- 當目的主機位於遠程網段時,ARP協議解析的結果將提供什么樣(什么設備)的物理地址?
- 默認網關路由器的物理地址
- 當ARP/RARP報文封裝在以太網幀中進行發送時,為什么要添加PAD字段?
- 以太網幀有最小幀要求(64字節),當要傳輸的數據長度不足時,需要添加PAD進行補充使得整個以太幀滿足最小長度要求。
- 簡述目的主機為遠程主機時的信息傳輸過程
- ARPARP協議的詳細流程圖,見圖進行分析即可。
- 抓包分析題

第五章
- ARP和RARP報文不被封裝在IP數據報中,而ICMP和IGMP的數據則要封裝在IP數據報中進行傳輸
- IP數據報

- IP數據報=首部+數據
- IP數據報首部分為定長部分和變長部分
- 數據長度=數據報總長度-首部長度×4
- 標識(16位)由信源機賦給IP數據報,每個IP數據報有一個本地惟一的標識符。數據報的標識由信源機產生,每次自動加1后分配給要發送的數據報。
- 標志(3位)用於表示該IP數據報是否允許分片和是否是最后的一片
- 片偏移(13位)表示本片數據在它所屬的原始數據報數據區中的偏移量(以8字節為單位)
- 首部校驗和(16位)用於保證首部數據的完整性
- 生存時間TTL(8位)控制IP數據報在網絡中的傳輸時間
- 數據分片與重組
- 最大傳輸單元MTU會出現不同情況,通常,網絡的速度越高,MTU也就越大
- 將數據報以從信源到信宿路徑上的最小MTU進行封裝
- 將數據報先以信源網絡的MTU進行封裝,在傳輸過程中再根據需要對數據報進行動態分片
- 分片需滿足
- 分片盡可能大,但必須能為幀所封裝
- 片中數據的大小必須為8字節的整數倍,否則IP無法表達其偏移量
- 分片可以在信源機或傳輸路徑上的任何一台路由器上進行,而分片的重組只能在信宿機上進行,重組超時會報錯
- 分片重組的控制主要根據數據報首部中的標識、標志和片偏移字段,
- IP選項(變長)
- IP選項的最大長度不能超過40字節
- 用於網絡控制和測試目的
- 三部分組成
- 選項碼(八位)
- 選項長度(八位)
- 選項數據(不定長)
- 選型類型
- 00用於IP數據報路徑的控制和測試
- 10用於時間戳的測試
- 01類和11類未用
- 嚴格源路由
- 選型類型:00
- 選項號:01001
- 選項碼:137
- 嚴格源路由選項要求信源機上的發送者指定數據報必須經過的每一個路由器,數據報必須嚴格按照發送方規定的路徑穿過每一個路由器
- 寬松源路由
- 選型類型:00
- 選項號:00011
- 選項碼:131
- 寬松源路由在選項的IP地址表中並不給出一條完備的路徑,而是只給出路徑中的某些關鍵點,關鍵點之間無直接物理連接時,通過路由器的自動路由選擇功能進行補充
- 分片時報文的變化
- 根據書上圖進行查看即可
本章習題總結
- IP協議為什么不提供對IP數據報數據區的校驗功能?
- IP協議是一個點對點的協議
- IP協議不可靠,讓更高層次解決可靠性
- IP協議為什么要對IP數據報首部進行校驗?
- IP首部屬於IP層協議內容,不可能由上層協議處理
- IP首部中的部分字段在點到點的傳遞過程中是不斷變化的,只能在每個中間點重新形成校驗數據,在相鄰點之間完成校驗
- 當IP數據報在路由器之間傳輸時,IP首部中哪些字段必然發生變化,哪些字段可能發生變化?
- 必然變化
- 生存時間(TTL):每經過一個路由器,TTL就會減1
- 首部校驗和:每次都要重新生產校驗和並進行校驗
- 可能變化
- 標志、片偏移、數據包總長度
- 必然變化
- 嚴格源路由與寬松源路由有什么區別?
- 嚴格源路由
- 選型類型:00
- 選項號:01001
- 選項碼:137
- 嚴格源路由選項要求信源機上的發送者指定數據報必須經過的每一個路由器,數據報必須嚴格按照發送方規定的路徑穿過每一個路由器
- 寬松源路由
- 選型類型:00
- 選項號:00011
- 選項碼:131
- 寬松源路由在選項的IP地址表中並不給出一條完備的路徑,而是只給出路徑中的某些關鍵點,關鍵點之間無直接物理連接時,通過路由器的自動路由選擇功能進行補充
- 嚴格源路由
- 為什么分片的重組必須在信宿機上進行
- 每一個分片都相互獨立的進行傳輸,在同一個路由器上收集完整的數據報分片不太可能,如果在中間過程進行重組會延長數據的到達時間,增大了路由器的負擔
- 一個首部長度為20字節、數據區長度為2000字節的IP數據報如何在MTU為820字節的網絡

第六章
- 因特網控制報文協議(ICMP)
- ICMP封裝在IP數據報中進行傳輸
- ICMP報文格式與類型
- 首部加數據:
- 首部為定長的8個字節,前4個字節是通用部分,后4個字節隨報文類型的不同有所差異
- 首部加數據:

- ICMP報文的三大類

-
ICMP差錯報告
- ICMP差錯報告具有以下特點
- 只報告差錯,但不負責糾正錯誤
- 發現出錯的設備只向信源報告差錯
- 差錯報告作為一般數據傳輸,不享受特別優先權和可靠性
- 產生ICMP差錯報告的同時,會丟棄出錯的IP數據報
- 注意特例
- ICMP差錯報文本身不會再產生ICMP差錯報告
- 分片報文的非第一個分片不會產生ICMP差錯報告
- 組播地址報文不會產生ICMP差錯報告
- 特殊地址127.0.0.0和0.0.0.0的報文不會產生ICMP差錯報告
- ICMP差錯報告具有以下特點
-
信宿不可達報告
- 類型是3,表示信宿不可達(0-15代碼看英文吧記下來有點難)
-
數據報超時報告
- 當TTL值為0時,路由器會丟棄當前的數據報,並產生一個ICMP數據報超時報告
- 信宿機進行重組也存在一個超時,產生一個ICMP數據報超時報告,並向信源發送該超時報告
- 類型是11
-
數據報參數錯報告
- 一旦路由器或信宿機發現錯誤的數據報首部和錯誤的數據報選項參數時,便拋棄該數據報,並向信源發送差錯報告報文
- 類型為12
-
ICMP控制報文包括源抑制報文和重定向報文
- 源抑制報文——用於擁塞控制
- 類型是4
- 重定向報文——用於路徑控制
- 類型是5
- 源抑制報文——用於擁塞控制
-
源抑制報文
- ICMP利用源抑制的方法來進行擁塞控制

- 源抑制的三個階段
- 發現擁塞階段
- 解決擁塞階段
- 擁塞解除后,信源逐漸恢復數據報傳輸速率
- 重定向報文
- 為了解決主機路由表的刷新問題,ICMP提供了重定向機制
- ICMP產生重定向報文的時候並不丟棄原數據報
- ICMP重定向報文由位於同一網絡的路由器發送給主機,完成對主機的路由表的刷新
- 被刷新的路由表項與重定向報文數據部分指示的IP數據報首部中的信宿地址相關。內容為重定向報文中目標路由器的IP地址
- ICMP請求與應答報文對
- 通過ICMP請求與應答報文對,網絡管理人員、用戶或應用程序可以對網絡進行檢測,目的是利用這些有用的信息,對網絡進行故障診斷和控制
- 設備的可達性
- 地址掩碼的設置
- 時鍾的同步等情況
- 通過ICMP請求與應答報文對,網絡管理人員、用戶或應用程序可以對網絡進行檢測,目的是利用這些有用的信息,對網絡進行故障診斷和控制
- 回應請求與應答報文
- ping命令大多是利用ICMP回應請求與應答報文來實現的
- 回應請求報文類型為8
- 回應應答報文類型為0
- 時間戳請求與應答報文
- ICMP時間戳請求與應答報文就是用於設備間進行時鍾同步的報文對
- 請求報文類型13
- 應答報文類型14
- 初始時間戳字段用於指示請求方發出請求的時間
- 接收時間戳字段用於指示應答方主機收到請求的時間
- 發送時間戳字段用於指示應答方主機發送應答的時間

- 請求報文:填初始時間戳,接收時間戳和發送時間戳為0
- 應答報文:初始時間戳直接從請求報文中復制,接收時間戳和發送時間戳由應答方主機根據自己接收和發送時的時鍾填寫
- 往返時間 = t當前-t初始-(t發送-t接收)
= t接收-t初始+t當前-t發送 - 單程時延 = 往返時間/2
- 時間差 = t接收-(t初始+單程時延)
- 地址掩碼請求與應答報文
- 地址掩碼請求類型為17
- 地址掩碼請求報文的地址掩碼字段為“0”
- 地址掩碼應答類型為18
- 地址掩碼請求類型為17


- 路由器請求與通告報文
- 初始化路由表方法
- 在配置文件中指定靜態路由
- 利用ICMP路由器請求和通告報文來獲得路由器的IP地址
- 路由器請求類型為10
- 路由器通告類型為9
- 初始化路由表方法
- 數據區:地址的優先等級,值越小優先級越高
- 地址優先級為0,則該地址可作為默認路由器地址
- 優先級為0x80000000時,表明該地址不能作為默認路由器地址使用
- ICMP報文封裝
- 封裝在IP報文中轉發
- 包含ICMP報文的IP數據報首部的協議字段為“1”
- traceroute工作原理
- UDP探測包,TTL設置1到達路由減1,隨后設置2...
- 當TTL變為0時,包被丟棄,路由器向源地址發回一個ICMP超時通知,內含發送IP包的源地址,IP包的所有內容及路由器的IP地址
- 直至目標地址收到探測數據包,並返回端口不可達通知
- 當源地址收到端口不可達包時停止
- 每跳默認發送3個探測包
本章習題總結
- TCP/IP的可靠性思想是將可靠性問題放到傳輸層解決以簡化路由設備的實現。那么為什么還要在IP層的ICMP中實現差錯報告功能?
- 端到端得方式解決信宿機不可達問題有困難
- IP層只涉及與路徑和可達相關的差錯問題,而不解決數據本身的差錯問題
- ICMP在IP層獨立,IP協議不負責完成差錯與控制功能
- 源抑制包括哪三個階段?
- 發現擁塞階段
- 解決擁塞階段
- 擁塞解除后,信源逐漸恢復數據報傳輸速率
- ICMP與IP協議是什么關系?
- 都位於IP層
- ICMP報文是封裝在IP數據報的數據部分進行傳輸的
- ICMP協議是IP協議的補充
- 用於IP層的差錯報告、控制以及路由器或主機信息的獲取
- 在利用時間戳請求應答報文進行時鍾同步時,主機A的初始時間戳為32530000,接收到主機B應答時的時間戳為32530246,主機B的接收時間戳和發送時間戳分別為32530100和32530130,主機A和主機B之間的時間差是多少?

- 抓包分析題
- 前提總結
- ICMP類型以及對應的報告
- 3:信宿不可達報告
- 4:源抑制報文
- 5:重定向報文
- 11:數據報超時報告
- 12:數據報參數錯報告
- ICMP請求與應答報文對
- 0:回應應答報文
- 8:回應請求報文
- 13:時間戳請求報文
- 14:時間戳應答報文
- 17:地址掩碼請求報文
- 18:地址掩碼應答報文
- 9:路由器通告報文
- 10:路由器請求報文
- ICMP類型以及對應的報告











第六章(補充IPv6)
- ICMPv6報文

- ICMPv6報文分成兩大類
- ICMPv6差錯報告報文
- 目的不可達
- 報文過長
- 超時
- 參數差錯報告報文
- ICMPv6信息報文
- 傳遞用於控制的請求和應答信息
- 實現ping功能的回聲請求報文和回聲應答報文
- 對多播組控制的ICMPv6信息報文
- ICMPv6差錯報告報文
- 目的不可達報文
- 類型:1
- 代碼
- 0-沒有到達目的地的路由
- 1-與目的地的通信由於管理被禁止,e.g.防火牆
- 2-目的地址在源地址可傳送域外
- 3-目的地址不可達,e.g.不能轉換為MAC地址
- 4-端口不可達,e.g.端口沒有開放
- 分組過大報文
- 類型:2
- 代碼:未用
- 使用ICMPv6路徑MTU發現(PMTUD)探測路徑MTU的過程
- 使用自己所在網絡的MTU發送給路由器
- 路由器發下下一跳的MTU小,返回ICMPv6類型2的報文並告訴源下一跳的MTU
- 以此循環,直到發送到目的主機,即可找到MTU
- 超時報文
- 類型:3
- 代碼
- 0-跳數限制為0
- 1-分片重組超時
- 參數錯誤報文
- 類型:4
- 代碼
- 0-錯誤的首部字段
- 1-不可識別的下一首部類型
- 2-不可識別的IPv6的可選項
- 回聲請求和回聲應答報文
- 類型128:回聲請求
- 類型129:回聲應答
- 每一個結點必須能夠完成ICMPv6回聲應答功能,即在收到ICMPv6回聲請求時發出相應的ICMPv6回聲應答報文
- 鄰結點探測協議NDP
- IPv6的一個重要組成部分,它不是一個全新的協議,而是由IPv4中的地址解析協議ARP、ICMP路由探測協議RDISC、ICMP報文重定向等協議綜合而成的
- 類型133:路由器請求(RS)
- 類型134:路由器通告(RA)
- 類型135:鄰結點請求(NS)
- 類型136:鄰結點通告(NA)
- 類型137:重定向
- 鄰結點請求報文和鄰結點通告報文
- 可以完成ARP功能,還可以用來測試目的主機的連通性,前者以多播形式發送,后者以單播形式發送。
- 用於ARP時,目的地址=多播IPv6地址。
- 探測目的主機連通性,目的地址=目的主機的IPv6地址
- 路由器請求報文和路由器通告報文
- 與遠程系統通信必須找到路由器
- 路由器限時更新信息
- 路由器限時發送路由器通告報文
- 重定向報文
- IPv6的被請求節點的組播地址
- 只在本地鏈路上有效
- 特點
- 在本地鏈路上,被請求接點的組播地址中只包含一個用戶
- 只要知道一個接點的ipv6地址,就能計算出他的被請求節點的組播地址
- 作用
- 在IPV6中,沒有ARP。ICMPv6代替了ARP的功能,被請求節點的組播地址被節點用來獲得相同本地鏈路上鄰居節點的鏈路層地址
- 用於重復地址檢測DAD
第七章
- 路由作用:為數據尋找一條從信源到信宿的最佳或較佳路徑的過程
- 直接傳遞與簡介傳遞
- 直接傳遞:直接傳到最終信宿的傳輸過程
- 間接傳遞:在信源和信宿位於不同物理網絡時,所經過的一些中間傳遞過程
- 數據傳遞由一個直接傳遞和零到多個間接傳遞所組成
- IP路由
- TCP/IP將網絡結構進行抽象,用點表示路由器,用線表示網絡,路由選擇基於抽象結構進行,通過路由選擇找到一條通往信宿的最佳路徑
- 單個路由表只反映了因特網局部的拓撲信息,但所有路由表的集合卻能反映因特網的整體拓撲結構
- 每台主機和路由器都有一個反映網絡拓撲結構的路由表
- 操作
- 路由選擇
- 路由表的建立與刷新
- 主機和路由器上的IP協議負責根據路由表完成路由選擇;路由表的建立與刷新由專門的路由協議負責
- 一個好的動態路由程序要保證路由表能夠及時地反映網絡結構的變化

- 路由表
- 基本構成
- 信宿地址 + 去往信宿的路徑
- 通常路由表中的信宿地址采用網絡地址
- 基本構成
- 路由表中為什么不直接采用主機IP地址
- 可以大大減小路由表的規模
- 與網絡的抽象結構相對應
- 增強了路由表對網絡變化的適應性
- 減輕了路由表維護以及路由選擇的開銷,同時也簡化了路由設備的設計和實現
- 為什么路由表中只采用下一跳地址而不用完整路徑
- 減小了路由表的規模
- 去掉了路由表中關於相同路徑的冗余信息
- 使路由表變得簡單,便於維護
- 路由表結構
- 信宿地址
- 子網掩碼
- 下一跳地址
- 輸出接口
- 度量值
- 特定主機路由
- 用主機的IP地址作為信宿地址的表目。
- 目的:給網絡管理人員賦予了更大的網絡控制權,用於安全性和網絡測試
- 默認路由
- 路由表中的另一個特殊表目。默認路由將去往多個網絡的路由表目合為一個
- 目的:進一步隱藏細節、縮小路由表
- 信宿地址與子網掩碼都是0.0.0.0
- 一個路由表中最多有一個默認路由
- 默認路由優先級最低
- 路由算法

- 靜態路由
- 路由表的建立和刷新采用的兩種不同方式
- 靜態路由
- 動態路由
- 靜態路由要求手工配置固定的路由表
- 自治系統:由獨立管理機構所管理的一組網絡和路由器組成
- 缺點
- 工作量大
- 大型網絡編輯困難
- 不能及時地反映網絡拓撲結構的頻繁變化
- 有可能造成難以管理的冗余路徑
- 路由表的建立和刷新采用的兩種不同方式
- 動態路由
- 路由器使用路由協議進行路由表的動態建立和維護
- 路由器進行路由選擇的原則:最短路徑優先
- 路由器自動獲取路徑信息的基本方法有兩種
- 向量—距離算法(又稱為距離—向量算法)
- 優點:簡單,易於實現
- 缺點:收斂速度慢,信息交換量較大
- 鏈路—狀態算法(又稱為最短路徑優先算法)
- 優點:收斂迅速,使用網絡類型廣泛
- 缺點:復雜,要求高
- 向量—距離算法(又稱為距離—向量算法)
- 內部網關協議
- RIP路由信息協議
- OSPF開放最短路徑優先協議
- 外部網關協議
- EGP:外部網關協議
- 路由信息協議RIP
- 解決路由環路問題:RIP規定路徑最大為16
- 解決相同距離路徑問題:先入為主的原則
- 解決失效路徑問題:RIP協議為每條路由設置一個定時器
- 解決收斂慢的問題:
- 水平分割法
- 保持法
- 毒性逆轉法
- RIP報文被封裝在UDP數據報中傳輸。RIP使用UDP的520端口號
- 特點
- RIPv1不支持子網地址
- RIPv1沒有鑒別機制
- RIPv1采用廣播方式進行路由通告,不支持單播和組播路由通告
- RIPv1只能用於小型網絡
- RIPv2可以支持可變長子網掩碼和無類別域間路由CIDR
- RIPv2提供了一種簡單的鑒別機制
- RIPv2支持組播
- 開放最短路徑優先OSPF
- OSPF直接使用IP。在IP首部的協議字段,OSPF協議的值為89
- 特點:
- 支持服務類型路由
- 能夠給每個接口指派費用
- 能夠提供負載均衡
- 支持擴展,易於管理
- 持特定主機、特定子網、分類網絡路由以及無類網絡路由
- 支持無編號網絡,可以節省IP地址
- 支持多種鑒別機制,不同的區域可以使用不同的鑒別方法
- 采用組播,減少不參與OSPF的系統的負載
本章習題總結
- 直接傳遞和間接傳遞有什么不同?
- 直接傳遞:直接傳到目的主機的傳遞過程
- 間接傳遞:源主機與目的主機在不同物理網絡,經過一些中間傳遞到達目的主機。
- 路由信息協議RIP和開放最短路徑優先OSPF有什么不同?
- RIP
- 采用距離-向量算法
- 路由器周期性發送廣播,告知相鄰路由器自身路由表的變化
- OPSPF
- 采用鏈路-狀態算法
- 支持服務類型路由
- 自身會首先形成一個鏈路狀態數據庫,等到結構發生變化,更新即可
- RIP
- OSPF具有哪些特點
- 支持服務類型路由
- 能夠給每個接口指派費用
- 能夠提供負載均衡
- 支持擴展,易於管理
- 持特定主機、特定子網、分類網絡路由以及無類網絡路由
- 支持無編號網絡,可以節省IP地址
- 支持多種鑒別機制,不同的區域可以使用不同的鑒別方法
- 采用組播,減少不參與OSPF的系統的負載
- RIP、OSPF報文分別封裝在什么協議中進行傳輸
- RIP
- 報文封裝在UDP中,端口為520
- OSPF
- 封裝在IP報文中,協議值是89
- RIP
第八章習題部分
- 為什么常用的服務器的端口號都采用熟知端口號,而客戶端一般采用臨時端口號?
- 服務器提供的是固定的服務,采用熟知端口有利於客戶端的訪問
- 客戶端時連接的發起者,用過之后端口可以關閉
- TCP段首部中的序號和確認號的含義和作用是什么?
- 序號:指出數據段中的數據部分在發送端數據流中的位置,發送數據部分第一個字節的序號
- 確認號:確認已收到對方的數據。並希望繼續傳輸。
- TCP段首部中的控制字段各位的含義和作用是什么?
- URG:緊急位,和緊急指針字段配合使用,當URG位置1時,表明此報文要盡快傳送,而不按原排隊次序發送,此時緊急指針字段有效,緊急指針指出本報文段中緊急數據的最后一個字節。
- ACK:確認位,和確認號字段配合使用,當ACK位置1時,確認號字段有效。
- PSH:推送位,當PSH位置1時,發送方將立即發送緩沖區中的數據,而不等待后續數據構成一個更大的段,接收方一旦收到PSH位為1的段,就立即將接收緩沖區中的數據提交給應用程序,而不等待后續數據的到達。
- RST:復位位,當RST位置1時,表明有嚴重差錯,必須釋放連接。
- SYN:同步位,當SYN位置1時,表示請求建立連接。+FIN:終止位,當FIN位置1時,表明數據已經發送完,請求釋放連接。
- 解釋滑動窗口協議是如何實現流量控制的。
- 通過發送方窗口和接收方窗口的配合來完成傳輸控制。
- 為了避免和消除擁塞,TCP采用了哪些策略來控制擁塞窗口?
- 首先是使用慢啟動策略
- 當擁塞窗口加大到門限值(擁塞發生時擁塞窗口的一半)時,進入擁塞避免階段
- 擁塞使重傳定時器超時,發送方進入擁塞解決階段
第九章
- 因特網的命名機制要求主機名字具有
- 全局惟一性
- 便於管理
- 便於映射
- 網絡中通常采用的明明機制有兩種:
- 無層次命名機制
- 早期因特網采用的。主機名用一個字符串表示,沒有任何結構。一起構成無層次的命名空間
- 命名采用集中式管理方式,名字—地址映射通常通過主機文件完成
- 不適用於大量對象網絡,映射效率低,容易出現名字沖突
- 層次型命名機制
- 當前因特網采用
- 層次型命名機制將層次結構引入主機名字,該結構對應於管理機構的層次
- 將名字空間分成若干子空間,每一個空間由授權的管理機構管理,並可以繼續鄉下進行分類
- 層次性命名機制呈現樹形結構
- 無層次命名機制

- 根是惟一的,所以不需要標號。
- 樹的葉子節點是需要根據名字去尋址的主機(通常是服務器)
- 唯一性:每一個機構或者子機構向上申請自己負責管理的名字空間,並向下分配子名字空間,進行標號時要保證自己所管理的名字的下一級標號不發生重復。
- 管理:分散到多個不同層次的管理機構去進行管理,減輕了單個管理機構的工作量,提高了效率
- 映射:很多的名字解析工作可以在本地完成,提高了系統適應大量且迅速變化的對象的能力
- 因特網域名
- 無層次命名機制:主機名通過主機文件進行轉換
- 每個需要進行名字解析的主機都擁有一個HOSTS文件
- 小型網絡可以采用這種方式進行名字解析
- 層次命名機制:主機名通過域名系統DNS進行轉換
- 域名系統層次結構從高到低的組織
- 根域(Root)DNS最高層,如果確實需要指明根,那么它將出現在FQDN(完全符合標准的域名)的最后面,以一個句點“.”表示
- 頂級域(一級域)頂級域按照組織類型和國家划分,可以分三個主要域
- 通用頂級域名gTLD
- com、org和net是向所有用戶開放的三個通用頂級域名,也稱為全球域名,任何國家的用戶都可申請注冊它們下面的二級域名
- mil、gov和edu三個通用頂級域名只向美國專門機構開放
- int是適用於國際化機構的國際頂級域名
- 國家代碼頂級域名ccTLD
- cn代表中國
- 反向域
- 頂級域名為arpa,用於實現IP地址到域名的反向解析
- 通用頂級域名gTLD
- 次級域(二級域)
- 次級域與具體的公司或組織相關聯
- 子域
- 次級域下面的域,子域是各個組織將名字空間進行的進一步划分
- 主機名
- 最低的層級
- 區域,實際的名字空間的管理中采用的概念,區域是DNS的管理單元
- 區域和域是不同的概念,域是一個完整的子樹,而區域可以是子樹中的任何一部分,區域可以是一個域,也可以不是一個域,區域不一定包含那部分DNS樹中的所有子域
- 域名系統層次結構從高到低的組織
- DNS的構成
- 名字解析器:名字解析器請求名字服務器的服務,獲得待查主機的IP地址,解析器位於應用程序中或主機的例行程序庫中
- 域名空間:用樹形結構組織的DNS數據庫
- 名字服務器: 名字服務器用於保存域名空間各部分的信息,響應名字解析請求
- 無層次命名機制:主機名通過主機文件進行轉換
- DNS服務器
- 獲取域名空間的部分信息的方法
- 由管理員編輯一個原始區域文件
- 從其他名字服務器那里復制區域文件
- 通過向其他DNS服務器查詢來獲取具有一定時效的緩存信息
- 名字服務器的類型
- 主名字服務器:擁有一個區域文件的原始版本的服務器
- 次名字服務器:從其他主名字服務器那里復制一個區域文件(只讀),通過區域傳輸進行跟隨性的變化
- 惟高速緩存名字服務器:幫助名字解析器完成名字解析,並緩存解析結果
- 啟動之后,通過緩存逐條建立DNS信息
- 獲取域名空間的部分信息的方法
- 域名解析
- TCP/IP的域名系統是一個有效的、可靠的、通用的、分布式的名字-地址映射系統
- 分類
- 正向解析
- 根據域名查詢其對應的IP地址或其他相關信息
- 反向解析
- 根據IP地址查詢其對應的域名
- in-addr.arpa專用於反向解析
- 正向解析
- DNS服務器和客戶端屬於TCP/IP模型的應用層,DNS既可以使用UDP,也可以使用TCP來進行通信。DNS服務器使用UDP/TCP的53號熟知端口
- DNS服務器能夠接收兩種類型的解析
- 遞歸解析(代替主機查詢)
- 遞歸解析要求名字服務器系統一次性完成名字—地址變換
- 客戶端計算機的解析器通常會發出遞歸查詢
- 反復解析(告訴主機方向。主機自己查詢)
- 反復解析要求客戶端本身反復尋求名字服務器的服務來獲得最終的解析結果
- 當一個名字服務器試圖找到它的本地域之外的名字時,往往會發送反復查詢(自頂向下查找)
- 解析效率
- 兩步名字解析機制
- 首先通過本地名字服務器解析
- 不通,采用自頂向下的方法
- 高速緩存技術
- 兩步名字解析機制
- 遞歸解析(代替主機查詢)
- DNS報文
- 請求報文
- 響應報文
- DNS資源記錄
習題部分
- 遞歸解析與反復解析有什么不同?
- 遞歸解析:
- 要求名字服務器系統一次性完成名字—地址變換
- 主機代替源主機尋找
- 反復解析
- 要求客戶端本身反復尋求名字服務器的服務來獲得最終的解析結果
- 主機自己進行尋找
- 遞歸解析:
- DNS是如何實現IP地址到域名的反向解析的?
- 名字解析中的反向解析是指由主機的IP地址求得其域名的過程。DNS在名字空間中設置了一個稱為in-addr.arpa的特殊域,專門用於反向解析。
- DNS是如何提高解析效率的?
- 兩步名字解析機制解析時,第一步先通過本地名字服務器進行解析,若不行,再采用自頂向下的方法搜索。兩步法既提高了效率又保證了域名管理的層次結構。
- 采用高速緩存技術,存放最近解析過的名字—地址映射和描述解析該名字的服務器位置的信息,可避免每次解析非本地名字時都進行自頂向下的搜索,減小非本地名字解析帶來的開銷。
第十五章
- HTTP:超文本傳輸協議
- URL:統一資源定位符
- HTTP的連接方式和無狀態性
- 非持久連接
- 傳輸完畢后立刻關閉
- 持久連接
- 連接時間由雙方進行決定
- 無狀態性
- 服務器無法分辨第幾次連接服務器
- 非持久連接
- HTTP報文
- 請求報文
- GET:請求讀取一個Web頁面
- POST:附加一個命名資源
- HEAD:請求讀取一個Web頁面的首部
- PUT:請求存儲一個web頁面
- DELETE:刪除Web頁面
- CONNECT:代理服務器s
- TRACE:用於測試
- OPTION:查詢特定選項
- 響應報文
- 100:正在處理
- 200:請求成功
- 301:頁面位置改變
- 403:禁止的頁面
- 404:未找到
- 500:服務器內部錯誤
- 503:以后再試
- 請求報文
本章習題
- HTTP的三種通信方式
- 點對點
- 具有中間服務器的方式
- 緩存方式
- HTTP的特點
- 簡單
- 無連接行
- 無狀態性
- 元信息
考題預測
- 簡答題
- 簡述ARP的工作原理分類寫(同一子網,不同子網)
- 簡述ARP獲取目的IP的四種不同情況以及提供的物理地址
- 封裝時為什么添加PAD字段?(個人認為不考)
- IP報文的分片(參考課本例題)
- 嚴格路由以及寬松路由的區別
- 簡述源抑制包括的三個階段
- ICMP的作用以及特點
- RIP與OSPF的優點和缺點以及不同
- TCP的流量控制以及擁塞
- DNS提高解析效率
- HTTP特點
- TCP三次握手
- 協議分析
- 網絡層協議分析
- ARP/RARP:地址解析協議以及反地址解析協議
- IP:網際協議
- ICMP:互聯網控制信息協議
- 網絡層協議分析
- AR、RARP報文格式

- 報文內容
- 硬件類型:表示物理網絡的類型,“0X0001”表示以太網;
- 協議類型:表示網絡網絡協議類型,“0X0800”表示IP 協議;
- 硬件地址長度:指定源/ 目的站物理地址的長度,單位為字節;
- 協議地址長度:指定源/ 目的站IP 地址的長度,單位為字節;
- 操作:指定該報文的類型,“1”為ARP 請求報文,“2”為ARP 響應報文;
- 源端硬件/IP 地址:由ARP 請求者填充;
- 目的站物理地址:在請求報文中為0,在響應報文中,由由發送響應報文的主機填寫接收該報文的目的主機的物理地址;
- 目的站IP 地址:由ARP 請求者填充,指源端想要知道的主機的IP 地址。只有IP 地址等於該IP 地址的主機才向源主機發送相應報文。
- 報文分析


- IP報文格式

- 報文內容
- 版本:指IP 協議的版本;
- 頭長:是指IP 數據報的報頭長度,它以4 字節為單位。IP 報頭長度至少為 20 字節,如果選項部分不是4 字節的整數倍時,由填充補齊;
- 總長度:為整個IP 數據報的長度;
- 服務類型:規定對數據報的處理方式;
- 標識:是IP 協議賦予數據報的標志,用於目的主機確定數據分片屬於哪個報文;
- 標志:為三個比特,其中只有低兩位有效,這兩位分別表示該數據報文能否分段和是否該分段是否為源報文的最后一個分段;
- 生存周期:為數據報在網絡中的生存時間,報文每經過一個路由器時,其值減 1,當生存周期變為 0 時,丟棄該報文;從而防止網絡中出現循環路由;
- 協議:指IP 數據部分是由哪一種協議發送的;
- 校驗和:只對IP 報頭的頭部進行校驗,保證頭部的完整性;
- 源IP 地址和目的IP 地址:分別指發送和接收數據報的主機的IP 地址。
- 報文分析

- ICMP報文格式

- 報文內容
- 類型:一個字節,表示ICMP 消息的類型,內容參見表5;
- 代碼:一個字節,用於進一步區分某種類型的幾種不同情況;
- 校驗和:兩個字節,提供對整個ICMP 報文的校驗和;


- 報文分析

- ping命令報文分析

- tracert命令報文分析


- DNS報文格式(這次不考吧)
- 報文分析

- HTTP報文格式

- 報文分析

