OSI RM(Open System Interconnect Reference Model,開放系統互連參考模型)是由國際標準組織ISO定義的,規範不一樣系統的互聯標準,使兩個不一樣的系統可以較容易的通訊。OSI RM把網絡按照層次分爲七層,依次爲物理層、數據鏈路層、網絡層、傳輸層、會話層、標識層、應用層。緩存
- 物理層
負責把逐個的比特從一跳(節點)移動到另外一跳(節點);定義接口和媒體的物理特性;定義比特的表示、數據傳輸速率、信號的傳輸模式;定義網絡物理拓撲- 數據鏈路層
在不可靠的物理鏈路上,提供可靠的數據傳輸服務,把幀從一跳(節點)移動到另外一跳(節點);組幀、物理地址、流量控制、差錯控制、接入控制- 網絡層
爲網絡設備提供邏輯地址;進行路由選擇、維護路由表;負責將分組數據從源端傳輸到目的端- 傳輸層
負責創建端到端的鏈接,保證報文在端到端之間的傳輸,服務點編址、分段與重組、鏈接控制、流量控制、差錯控制- 會話層
負責創建、管理和終止表示層實體之間的會話鏈接,在設備或節點之間提供會話控制,在系統之間協調通訊過程- 表示層
數據的遍碼和解碼,數據的加密和解密,數據的壓縮和解壓縮- 應用層
爲應用軟件提供接口,使應用程序可以使用網絡服務
實際應用中一般使用TCP/IP 模型。將OSI RM 七層模型簡化爲TCP/IP 4層模型,即主機到網絡層、網絡互連層、傳輸層、應用層網絡
- 主機到網絡層
對應於OSI RM 模型中的物理層和數據鏈路層,負責監視數據在主機和網絡之間的交換- 網絡互連層
對應於OSI RM 模型中的網絡層,把分組發往目標網絡或主機- 傳輸層
對應於OSI RM 模型中的傳輸層,使源端主機和目標端主機上的對等實體能夠進行會話- 應用層
對應於OSI RM 模型中的會話層、表示層和應用層,爲應用程序提供網絡服務
ICMP(Internet Control Message Protocol,Internet控制報文協議)是網絡層的一個重要協議,在網絡設備間傳遞差錯、控制、查詢等信息。ide
- ICMP 重定向
ICMP Redirect重定向消息用於支持路由功能。報文從源端直接發送到目的端,而不是先發送到網關設備,再由網關設備發送到目的端- ICMP差錯檢測
ICMP Echo消息經常使用於診斷源和目的之間的網絡連通性,進行差錯檢測。- ICMP錯誤報告
當網絡設備沒法訪問目標時,自動發送ICMP目的不可達報文到發生端設備。- Ping命令
Ping命令是檢測網絡連通性地經常使用工具。ping命令中指定不一樣參數,如ICMP報文長度、發送的ICMP報文個數、等待回覆響應的超時時間。- Tracert命令
Tracert基於報文頭中TTL值來逐跳跟蹤報文的轉發路徑。源端將報文的TTL值設置爲1,到達第一個節點後,TTL超時,向源端發送TTL超時消息,而後源端將報文的TTL值設置爲2,以此類推,直到到達目的地。
ARP(Address Resolution Protocol,地址解析協議),用來將IP地址解析爲相應的MAC地址。ARP協議應用於廣播型網絡,點對點鏈路不使用ARP協議。 數據鏈路層在進行數據封裝時,須要目的MAC地址。ARP報文不能穿越路由器,不能被轉發到其餘廣播域。工具
ARP報文類型分爲ARP Request和ARP Reply,報文結構以下
加密
- 在以太網網絡類型中,幀類型字段爲0x0806,協議類型字段爲0x0800
- op操做字段指出4種操做類型:ARP Request、ARP Reply、RARP Request、RARP Reply
以下圖所示,PC1須要訪問PC3,首先PC1發送ARP Request,交換機SW收到ARP Request後,廣播發送改ARP Request,PC2和PC3都會收到ARP Request,PC3收到該ARP Request後,發送ARP Reply到SW上,而後SW轉發
ARP Reply到PC1,PC1收到ARP Reply後,就能夠和PC3正常通訊。3d
3. ARP緩存
ARP 緩存用來存放IP地址和MAC地址的關聯信息。在發送數據前。設備會查找ARP緩存表,若是緩存表中存在對方設備的MAC地址,則直接使用MAC地址封裝幀;若是緩存表不存在,則發送ARP Request請求報文。代理
若是ARP請求是一個物理網絡發往另外一個另外一個物理網絡,那麼鏈接這兩個網絡的設備能夠應答該ARP請求,將這個過程稱爲ARP代理(Proxy ARP)。Proxy ARP分爲路由式 Proxy ARP、VLAN內Proxy ARP和VLAN間Proxy ARP。blog
- 路由式 Proxy ARP
應用場景:須要互通的主機(主機上沒有配置缺省網關)處於相同的網段但不在同一廣播域內- VLAN內Proxy ARP
應用場景:須要互通的主機處於相同網段,且屬於相同VLAN,可是VLAN間配置了端口隔離- VLAN間Proxy ARP
應用場景:須要互通的主機處於相同網段,但屬於不一樣VLAN
免費ARP用來探測IP地址是否衝突。主機發送ARP Request廣播報文,目的IP地址是源IP地址,當目的IP地址被使用時,收到響應的ARP Reply報文。接口
每臺主機或設備上維護ARP高速緩存,ARP高速緩存中保存動態ARP表項。 主機或設備每次發送報文時,會先在本地高速緩存中查找目的IP地址所對應的MAC地址。若是高速緩存中有對應的MAC地址,主機或設備不會再發送ARP請求報文,而是直接將報文發至這個MAC地址;若是高速緩存中沒有對應的MAC地址,主機或設備纔會廣播發送ARP請求報文,進行ARP地址解析。設備上動態ARP表項到達老化超時時間後,設備會發送老化探測報文(即ARP請求報文)。設備發送的老化探測報文能夠是單播報文,也能夠是廣播報文。缺省狀況下,設備只在最後一次發送ARP老化探測報文是廣播模式,其他均爲單播模式發送。ARP老化時間通常 20分鐘。路由
傳輸層定義了主機應用程序之間端到端的連通性,經常使用傳輸控制協議TCP和用戶數據包協議。
TCP
TCP是一種面向鏈接的傳輸層協議,提供可靠的傳輸服務。TCP使用端口號來區分不一樣網絡服務。TCP經過三次握手創建可靠鏈接,經過四次握手關閉鏈接。