TCP/IP(Transmission Control Protocol/Internet Protocol,傳輸控制協議/網際協議)是指能夠在多個不同網絡間實現信息傳輸的協議簇。
TCP/IP協議不僅僅指的是TCP和IP兩個協議,而是指一個由FTP、SMTP、TCP、UDP、IP等協議構成的協議簇, 只是因為在TCP/IP協議中TCP協議和IP協議最具代表性,所以被稱之為TCP/IP協議。
計算機網絡體系結構分層
包、幀、數據包、段、消息
以上五個術語都用來表述數據的單位,大致區分如下:
① 包可以說是全能性術語;
② 幀用于表示數據鏈路層中包的單位;
③ 數據包是 IP 和 UDP 等網絡層以上的分層中包的單位;
④ 段則表示 TCP 數據流中的信息;
⑤ 消息是指應用協議中數據的單位。
每個分層中,都會對所發送的數據附加一個首部,在這個首部中包含了該層必要的信息,如發送的目標地址以及協議相關信息。通常,為協議提供的信息為包首部,所要發送的內容為數據。在下一層的角度看,從上一層收到的包全部都被認為是本層的數據。
此外,還需了解IP、MAC、端口
IP 地址:用來識別 TCP/IP 網絡中互連的主機和路由器。
MAC:識別同一鏈路中不同的計算機。
端口:端口號用來識別同一臺計算機中進行通信的不同應用程序。因此,它也被稱為程序地址。
協議棧中數據傳輸的過程:
① 應用程序處理
首先應用程序會進行編碼處理,這些編碼相當于 OSI 的表示層功能;編碼轉化后,郵件不一定馬上被發送出去,這種何時建立通信連接何時發送數據的管理功能,相當于 OSI 的會話層功能。
② TCP 模塊的處理
TCP 根據應用的指示,負責建立連接、發送數據以及斷開連接。TCP 提供將應用層發來的數據順利發送至對端的可靠傳輸。為了實現這一功能,需要在應用層數據的前端附加一個 TCP 首部。
③IP 模塊的處理
IP 將 TCP 傳過來的 TCP 首部和 TCP 數據合起來當做自己的數據,并在 TCP 首部的前端加上自己的 IP 首部。IP 包生成后,參考路由控制表決定接受此 IP 包的路由或主機。
從 IP 傳過來的 IP 包對于以太網來說就是數據。給這些數據附加上以太網首部并進行發送處理,生成的以太網數據包將通過物理層傳輸給接收端。
⑤ 網絡接口(以太網驅動)的處理
主機收到以太網包后,首先從以太網包首部找到 MAC 地址判斷是否為發送給自己的包,若不是則丟棄數據。如果是發送給自己的包,則從以太網包首部中的類型確定數據類型,再傳給相應的模塊,如 IP、ARP 等。這里的例子則是 IP 。
⑥ IP 模塊的處理
IP 模塊接收到數據后也做類似的處理。從包首部中判斷此 IP 地址是否與自己的 IP 地址匹配,如果匹配則根據首部的協議類型將數據發送給對應的模塊,如 TCP、UDP。這里的例子則是 TCP。另外,對于有路由器的情況,接收端地址往往不是自己的地址,此時,需要借助路由控制表,在調查應該送往的主機或路由器之后再進行轉發數據。
⑦ TCP 模塊的處理
在 TCP 模塊中,首先會計算一下校驗和,判斷數據是否被破壞。然后檢查是否在按照序號接收數據。最后檢查端口號,確定具體的應用程序。數據被完整地接收以后,會傳給由端口號識別的應用程序。
⑧ 應用程序的處理
接收端應用程序會直接接收發送端發送的數據。通過解析數據,展示相應的內容。
TCP/IP 中有兩個具有代表性的傳輸層協議:TCP 和 UDP
TCP 是面向連接的、可靠的流協議。流就是指不間斷的數據結構,當應用程序采用 TCP 發送消息時,雖然可以保證發送的順序,但還是猶如沒有任何間隔的數據流發送給接收端。TCP 為提供可靠性傳輸,實行“順序控制”或“重發控制”機制。此外還具備“流控制(流量控制)”、“擁塞控制”、提高網絡利用率等眾多功能。
UDP 是不具有可靠性的數據包協議。細微的處理它會交給上層的應用去完成。在 UDP 的情況下,雖然可以確保發送消息的大小,卻不能保證消息一定會到達。因此,應用有時會根據自己的需要進行重發處理。
TCP 和 UDP 的優缺點無法簡單地、絕對地去做比較:TCP 用于在傳輸層有必要實現可靠傳輸的情況;而在一方面,UDP 主要用于那些對高速傳輸和實時性有較高要求的通信或廣播通信。TCP 和 UDP 應該根據應用的目的按需使用。
通過 IP 地址、端口號、協議號進行通信識別:
① 和 ② 的通信是在兩臺計算機上進行的。它們的目標端口號相同,都是80。這里可以根據源端口號加以區分。
③ 和 ① 的目標端口號和源端口號完全相同,但它們各自的源 IP 地址不同。
此外,當 IP 地址和端口號全都一樣時,我們還可以通過協議號來區分(TCP 和 UDP)。
-
TCP
+關注
關注
8文章
1378瀏覽量
79301
發布評論請先 登錄
相關推薦
Air780E之TCP應用,你了解嗎?
![Air780E之<b class='flag-5'>TCP</b>應用,<b class='flag-5'>你</b><b class='flag-5'>了解</b>嗎?](https://file1.elecfans.com/web2/M00/0B/B1/wKgaomcoaZiAMVQ9AALAQaQM2m4785.png)
Modbus RTU協議與Modbus TCP/IP協議的區別
TCP協議是什么
EtherNet/IP轉Modbus-TCP協議轉換網關
![EtherNet/<b class='flag-5'>IP</b>轉Modbus-<b class='flag-5'>TCP</b><b class='flag-5'>協議</b>轉換網關](https://file1.elecfans.com/web2/M00/06/76/wKgaombawvCAByIzAAEsl9KcMkg136.png)
深入了解 Windows 系統 TCP/IP 參數配置
EtherNet/IP轉Modbus-TCP協議網關(EtherNet/IP轉Modbus-TCP)
![EtherNet/<b class='flag-5'>IP</b>轉Modbus-<b class='flag-5'>TCP</b><b class='flag-5'>協議</b>網關(EtherNet/<b class='flag-5'>IP</b>轉Modbus-<b class='flag-5'>TCP</b>)](https://file1.elecfans.com/web2/M00/05/1E/wKgaombMIuGAMqO0AAK22mjr9qA153.png)
華納云:TCP IP協議的發展和優勢
你了解清楚了嘛-TCP、HTTP、MQTT協議
![<b class='flag-5'>你</b><b class='flag-5'>了解</b>清楚了嘛-<b class='flag-5'>TCP</b>、HTTP、MQTT<b class='flag-5'>協議</b>](https://file1.elecfans.com/web2/M00/FB/36/wKgaomaM8TaAQTxWAACIZqMj3-A546.png)
評論