應用程序處理:TCP模塊的處理
1、應用程序處理
首先應用程序會進行編碼處理,這些編碼相當于 OSI 的表示層功能;
編碼轉(zhuǎn)化后,郵件不一定馬上被發(fā)送出去,這種何時建立通信連接何時發(fā)送數(shù)據(jù)的管理功能,相當于 OSI 的會話層功能。
2、TCP 模塊的處理
TCP 根據(jù)應用的指示,負責建立連接、發(fā)送數(shù)據(jù)以及斷開連接。TCP 提供將應用層發(fā)來的數(shù)據(jù)順利發(fā)送至對端的可靠傳輸。為了實現(xiàn)這一功能,需要在應用層數(shù)據(jù)的前端附加一個 TCP 首部。
3、IP 模塊的處理
IP 將 TCP 傳過來的 TCP 首部和 TCP 數(shù)據(jù)合起來當做自己的數(shù)據(jù),并在 TCP 首部的前端加上自己的 IP 首部。IP 包生成后,參考路由控制表決定接受此 IP 包的路由或主機。
4、網(wǎng)絡接口(以太網(wǎng)驅(qū)動)的處理
從 IP 傳過來的 IP 包對于以太網(wǎng)來說就是數(shù)據(jù)。給這些數(shù)據(jù)附加上以太網(wǎng)首部并進行發(fā)送處理,生成的以太網(wǎng)數(shù)據(jù)包將通過物理層傳輸給接收端。IP66在線查IP地址位置:https://www.ip66.net/?utm-source=LJ&utm-keyword=?1146
5、網(wǎng)絡接口(以太網(wǎng)驅(qū)動)的處理
主機收到以太網(wǎng)包后,首先從以太網(wǎng)包首部找到 MAC 地址判斷是否為發(fā)送給自己的包,若不是則丟棄數(shù)據(jù)。
如果是發(fā)送給自己的包,則從以太網(wǎng)包首部中的類型確定數(shù)據(jù)類型,再傳給相應的模塊,如 IP、ARP 等。這里的例子則是 IP 。
6、IP 模塊的處理
IP 模塊接收到 數(shù)據(jù)后也做類似的處理。從包首部中判斷此 IP 地址是否與自己的 IP 地址匹配,如果匹配則根據(jù)首部的協(xié)議類型將數(shù)據(jù)發(fā)送給對應的模塊,如 TCP、UDP。這里的例子則是 TCP。
另外,對于有路由器的情況,接收端地址往往不是自己的地址,此時,需要借助路由控制表,在調(diào)查應該送往的主機或路由器之后再進行轉(zhuǎn)發(fā)數(shù)據(jù)。
7、TCP 模塊的處理
在 TCP 模塊中,首先會計算一下校驗和,判斷數(shù)據(jù)是否被破壞。然后檢查是否在按照序號接收數(shù)據(jù)。最后檢查端口號,確定具體的應用程序。數(shù)據(jù)被完整地接收以后,會傳給由端口號識別的應用程序。
8、應用程序的處理
接收端應用程序會直接接收發(fā)送端發(fā)送的數(shù)據(jù)。通過解析數(shù)據(jù),展示相應的內(nèi)容。