我們發(fā)送的信息數(shù)據(jù)是怎么處理的?

下圖以用戶 a 向用戶 b 發(fā)送郵件為例子:

1、應(yīng)用程序處理
首先應(yīng)用程序會(huì)進(jìn)行編碼處理,這些編碼相當(dāng)于 OSI 的表示層功能;
編碼轉(zhuǎn)化后,郵件不一定馬上被發(fā)送出去,這種何時(shí)建立通信連接何時(shí)發(fā)送數(shù)據(jù)的管理功能,相當(dāng)于 OSI 的會(huì)話層功能。
2、TCP 模塊的處理
TCP 根據(jù)應(yīng)用的指示,負(fù)責(zé)建立連接、發(fā)送數(shù)據(jù)以及斷開連接。TCP 提供將應(yīng)用層發(fā)來的數(shù)據(jù)順利發(fā)送至對(duì)端的可靠傳輸。為了實(shí)現(xiàn)這一功能,需要在應(yīng)用層數(shù)據(jù)的前端附加一個(gè) TCP 首部。
3、IP 模塊的處理
IP 將 TCP 傳過來的 TCP 首部和 TCP 數(shù)據(jù)合起來當(dāng)做自己的數(shù)據(jù),并在 TCP 首部的前端加上自己的 IP 首部。IP 包生成后,參考路由控制表決定接受此 IP 包的路由或主機(jī)。
4、網(wǎng)絡(luò)接口(以太網(wǎng)驅(qū)動(dòng))的處理
從 IP 傳過來的 IP 包對(duì)于以太網(wǎng)來說就是數(shù)據(jù)。給這些數(shù)據(jù)附加上以太網(wǎng)首部并進(jìn)行發(fā)送處理,生成的以太網(wǎng)數(shù)據(jù)包將通過物理層傳輸給接收端。

5、網(wǎng)絡(luò)接口(以太網(wǎng)驅(qū)動(dòng))的處理
主機(jī)收到以太網(wǎng)包后,首先從以太網(wǎng)包首部找到 MAC 地址判斷是否為發(fā)送給自己的包,若不是則丟棄數(shù)據(jù)。
如果是發(fā)送給自己的包,則從以太網(wǎng)包首部中的類型確定數(shù)據(jù)類型,再傳給相應(yīng)的模塊,如 IP、ARP 等。這里的例子則是 IP 。
6、IP 模塊的處理
IP 模塊接收到 數(shù)據(jù)后也做類似的處理。從包首部中判斷此 IP 地址是否與自己的 IP 地址匹配,如果匹配則根據(jù)首部的協(xié)議類型將數(shù)據(jù)發(fā)送給對(duì)應(yīng)的模塊,如 TCP、UDP。這里的例子則是 TCP。
另外,對(duì)于有路由器的情況,接收端地址往往不是自己的地址,此時(shí),需要借助路由控制表,在調(diào)查應(yīng)該送往的主機(jī)或路由器之后再進(jìn)行轉(zhuǎn)發(fā)數(shù)據(jù)。
7、TCP 模塊的處理
在 TCP 模塊中,首先會(huì)計(jì)算一下校驗(yàn)和,判斷數(shù)據(jù)是否被破壞。然后檢查是否在按照序號(hào)接收數(shù)據(jù)。最后檢查端口號(hào),確定具體的應(yīng)用程序。數(shù)據(jù)被完整地接收以后,會(huì)傳給由端口號(hào)識(shí)別的應(yīng)用程序。
8、應(yīng)用程序的處理
接收端應(yīng)用程序會(huì)直接接收發(fā)送端發(fā)送的數(shù)據(jù)。通過解析數(shù)據(jù),展示相應(yīng)的內(nèi)容。
IP66在線查IP地址位置:https://www.ip66.net/?utm-source=LJ&utm-keyword=?1146
