TCP/IP的层次结构以及各层数据封装的过程 (一)
(參考文獻(xiàn))TCP/IP詳解,卷1:協(xié)議
Tcp/ip協(xié)議的四個(gè)層次:
?
在以上的圖中,FTP屬于應(yīng)用層的協(xié)議,TCP、UDP屬于運(yùn)輸層的協(xié)議。
在TCP/IP協(xié)議族中,網(wǎng)絡(luò)層IP提供的是一種不可靠的服務(wù),,它盡可能的把分組從源節(jié)點(diǎn)送到目的節(jié)點(diǎn),但是并不提供任何可靠保證。而TCP在不可靠的IP層上提供了一個(gè)可靠的運(yùn)輸層(參見TCP三次握手),為了提供這種可靠的服務(wù),TCP采用了超時(shí)重傳,發(fā)送和接收的端到端的確認(rèn)分組等機(jī)制。
TCP、IP協(xié)議的分層結(jié)構(gòu)圖:
在以上圖中,ICMP(控制報(bào)文協(xié)議)是IP協(xié)議的附屬協(xié)議,IP層用它來與其他主機(jī)或路由器交換錯(cuò)誤報(bào)文和其他重要信息。
ICMP是Internet組管理協(xié)議,它用來把一個(gè)UDP數(shù)據(jù)多播到多個(gè)主機(jī)上。
互聯(lián)網(wǎng)地址分類:
數(shù)據(jù)包的封裝:
當(dāng)應(yīng)用程序用TCP傳數(shù)據(jù)時(shí),數(shù)據(jù)被送入?yún)f(xié)議棧中,由上到下對(duì)每一層的數(shù)據(jù)進(jìn)行加工(主要是增加一些首部信息和尾部信息);TCP串給IP的數(shù)據(jù)單元被稱為TCP報(bào)文段;IP傳為網(wǎng)絡(luò)接口層的數(shù)據(jù)單元被稱為IP數(shù)據(jù)報(bào);通過以太網(wǎng)傳輸?shù)谋忍亓鞣Q作幀。
?
封裝流程圖圖下圖:
?
UDP數(shù)據(jù)與TCP數(shù)據(jù)基本一致,唯一不同的是,UDP傳給IP的信息單元稱為UDP數(shù)據(jù)包,并且UDP的首部長為8字節(jié)。
在上面的TCP、IP的分層結(jié)構(gòu)圖中我們可以看見,用戶程序、TCP、UDP、ICMP等都會(huì)向IP傳送數(shù)據(jù),因此在IP的首部加入了長度為8bit的標(biāo)識(shí);1表示ICMP協(xié)議,2表示IGMP協(xié)議,6表示TCP,17表示UDP協(xié)議。
TCP、和UDP在傳送數(shù)據(jù)的過程中都會(huì)用到一個(gè)16bit的端口號(hào)來表示不同的應(yīng)用程序TCP和UDP把源端口號(hào)和目的端口號(hào)分別存入報(bào)文首部中。(216= 65536)
網(wǎng)絡(luò)接口通常要發(fā)送和接收IP、ARP、RARP數(shù)據(jù),因此在以太網(wǎng)的首部(及幀的首部)也有一個(gè)16bit的標(biāo)識(shí)。
?
數(shù)據(jù)幀的解析過程:
端口號(hào)的分配(216 = 65536):
在上面說了TCP和UDP采用了16bit的端口號(hào)來識(shí)別應(yīng)用程序。
知名端口號(hào)一般位于:1 ---? 255 之間
256 --- 1023的端口號(hào),通常是由Unix系統(tǒng)占用(系統(tǒng)占用)
1024 ---5000 是大多數(shù)TCP、IP實(shí)現(xiàn)的臨時(shí)分配
大于5000的一般是給其他服務(wù)預(yù)留的(Internet上并不常用的服務(wù))
總結(jié)
以上是生活随笔為你收集整理的TCP/IP的层次结构以及各层数据封装的过程 (一)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: dos中for in后面执行多个命令
- 下一篇: tesklink 管理员项目角色被修改后