TCP/IP協議總結(概述)

 

 

 

tcp和UDP都是傳輸層協議,tcp:一般用於用於網絡上端到端的數據通信,tcp提供可靠傳輸。

對比

tcp要先建立會話連接,

UDP不用建立會話, UDP不提供可靠傳輸。可見UDP比tcp效率高,應用場景也不一樣。

舉例:1)訪問網站要先建立會話,由於返回的數據流往往很大,所以要把數據流分割再傳輸,就必須基於tcp進行可靠傳輸避免丟包和進行一系列的包處理。

(2)訪問dns服務器得到ip地址,通常一個數據包就能解決,udp就很適合,不用先建立會話。

應用服務和tcp一般的計算機應用服務都是基於TCP協議,通信兩端每一端都有可能有很多基於TCP的服務同時運行,因此爲了區分兩端的應用服務,每個服務都對應着TCP的一個端口號,例如web服務通常對應着tcp的80端口,服務運行時會監聽tcp的80端口(爲了好理解,可以理解爲,有着80端口標誌的tcp協議)。

應用協議和tcp: 例如http協議對應着tcp的80端口,https協議對應着tcp的443端口

http=tcp+80. https=tcp+443。

 

Tcp/ip協議在osi模型上是四層上三層合併爲一層(應用層),數據鏈路層和物理層合併爲鏈路層。每一層都爲上層服務。

記一次數據發送:當應用層產生數據交互時,http協議會對數據進行包裝和處理說明,

1.傳輸層:保證端到端的數據能夠正確傳輸(比如PC瀏覽器和服務器80端口通信),由於傳輸數據大小有限制,傳輸層會把應用層的數據進行分段、編號、等一系列處理,分多塊傳輸,具有出錯重傳、流量控制功能,到達另一端後會根據編號重組數據,給應用層解析。

2.網絡層:傳輸層分割後的數據段給網絡層傳輸,網絡層把數據段裝成ip數據包並編號進行傳輸,ip包由:首部 +源ip+目標ip+傳輸層數據段,組成。負責把數據包從源ip傳送到目標ip, 不提供可靠傳輸(例如丟包),只具有傳輸功能。網絡節點之間的傳輸需要識別MAC地址,同一網段中ARP協議通過廣播方式獲取目標MAC地址或者網關的MAC地址。在傳輸的路由上Rip協議可以廣播的方式找到下一步的傳輸路由地址,路由器具有學習功能會把地址加入路由表(也叫動態路由),RARP協議和ARP相反:可根據物理地址得到ip地址。

3.ICMP協議可檢測網絡層的狀況,比如ping命令就是基於ICMP協議

4.IGMP協議是 組播-多播,一般用於流媒體例如,客戶端綁定一個多播地址並建立連接,就可以觀看源信息流。

5.數據鏈路層:都知道:我們一般網絡傳輸都是從局域網到以太網的跨網段傳輸,之間必然是點到點的傳輸,最終到達目標Ip,點到點之間的傳輸需要識別MAC地址,ip包不能直接傳輸,因爲ip包沒有MAC地址,所以還需要封裝成數據幀才能正確傳輸,如果ip包過大會先分爲數據片並編號,然後再包裝成數據幀傳輸到達目標IP後再重組,數據幀: 幀首部+源MAC地址+目標MAC地址+ip包+FSC(幀效驗:效驗數據幀的完整性)

各層大致如下

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章