TCP/IP協(xié)議
網(wǎng)絡(luò)協(xié)議通常分不同層次進(jìn)行開(kāi)發(fā),每一層分別負(fù)責(zé)不同的通信功能。一個(gè)協(xié)議族,比如 T C P / I P,是一組不同層次上的多個(gè)協(xié)議的組合。 T C P / I P通常被認(rèn)為是一個(gè)四層協(xié)議系統(tǒng),如圖所示。
TCP分層
每一層負(fù)責(zé)不同的功能:
-
鏈路層,有時(shí)也稱作數(shù)據(jù)鏈路層或網(wǎng)絡(luò)接口層,通常包括操作系統(tǒng)中的設(shè)備驅(qū)動(dòng)程序和計(jì)算機(jī)中對(duì)應(yīng)的網(wǎng)絡(luò)接口卡。它們一起處理與電纜(或其他任何傳輸媒介)的物理接口細(xì)節(jié)。
-
網(wǎng)絡(luò)層,有時(shí)也稱作互聯(lián)網(wǎng)層,處理分組在網(wǎng)絡(luò)中的活動(dòng),例如分組的選路。在T C P / I P協(xié)議族中,網(wǎng)絡(luò)層協(xié)議包括 I P協(xié)議(網(wǎng)際協(xié)議),I C M P協(xié)議(I n t e r n e t互聯(lián)網(wǎng)控制報(bào)文協(xié)議),以及I G M P協(xié)議(I n t e r n e t組管理協(xié)議)。
-
運(yùn)輸層主要為兩臺(tái)主機(jī)上的應(yīng)用程序提供端到端的通信。在 T C P / I P協(xié)議族中,有兩個(gè)互不相同的傳輸協(xié)議:T C P(傳輸控制協(xié)議)和U D P(用戶數(shù)據(jù)報(bào)協(xié)議)。
T C P為兩臺(tái)主機(jī)提供高可靠性的數(shù)據(jù)通信。它所做的工作包括把應(yīng)用程序交給它的數(shù)據(jù)分成合適的小塊交給下面的網(wǎng)絡(luò)層,確認(rèn)接收到的分組,設(shè)置發(fā)送最后確認(rèn)分組的超時(shí)時(shí)鐘等。由于運(yùn)輸層提供了高可靠性的端到端的通信,因此應(yīng)用層可以忽略所有這些細(xì)節(jié)。
而另一方面,U D P則為應(yīng)用層提供一種非常簡(jiǎn)單的服務(wù)。它只是把稱作數(shù)據(jù)報(bào)的分組從一臺(tái)主機(jī)發(fā)送到另一臺(tái)主機(jī),但并不保證該數(shù)據(jù)報(bào)能到達(dá)另一端。任何必需的可靠性必須由應(yīng)用層來(lái)提供。 -
應(yīng)用層負(fù)責(zé)處理特定的應(yīng)用程序細(xì)節(jié)。幾乎各種不同的 T C P / I P實(shí)現(xiàn)都會(huì)提供下面這些通用的應(yīng)用程序:
? Telnet 遠(yuǎn)程登錄。
? FTP 文件傳輸協(xié)議。
? SMTP 簡(jiǎn)單郵件傳送協(xié)議。
? SNMP 簡(jiǎn)單網(wǎng)絡(luò)管理協(xié)議
細(xì)分TCP/IP協(xié)議族
在T C P / I P協(xié)議族中,有很多種協(xié)議。
T C P和U D P是兩種最為著名的運(yùn)輸層協(xié)議,二者都使用 I P作為網(wǎng)絡(luò)層協(xié)議。
雖然T C P使用不可靠的 I P服務(wù),但它卻提供一種可靠的運(yùn)輸層服務(wù)。
U D P為應(yīng)用程序發(fā)送和接收數(shù)據(jù)報(bào)。一個(gè)數(shù)據(jù)報(bào)是指從發(fā)送方傳輸?shù)浇邮辗降囊粋€(gè)信息單元(例如,發(fā)送方指定的一定字節(jié)數(shù)的信息)。但是與T C P不同的是,U D P是不可靠的,它不能保證數(shù)據(jù)報(bào)能安全無(wú)誤地到達(dá)最終目的。
I P是網(wǎng)絡(luò)層上的主要協(xié)議,同時(shí)被 T C P和U D P使用。T C P和U D P的每組數(shù)據(jù)都通過(guò)端系統(tǒng)和每個(gè)中間路由器中的I P層在互聯(lián)網(wǎng)中進(jìn)行傳輸。
I C M P是I P協(xié)議的附屬協(xié)議。I P層用它來(lái)與其他主機(jī)或路由器交換錯(cuò)誤報(bào)文和其他重要信息。盡管I C M P主要被I P使用,但應(yīng)用程序也有可能訪問(wèn)它。我們將分析兩個(gè)流行的診斷工具,P i n g和Tr a c e r o u t e,它們都使用了I C M P。
I G M P是I n t e r n e t組管理協(xié)議。它用來(lái)把一個(gè) U D P數(shù)據(jù)報(bào)多播到多個(gè)主機(jī)。A R P(地址解析協(xié)議)和R A R P(逆地址解析協(xié)議)是某些網(wǎng)絡(luò)接口(如以太網(wǎng)和令牌環(huán)網(wǎng))使用的特殊協(xié)議,用來(lái)轉(zhuǎn)換 I P層和網(wǎng)絡(luò)接口層使用的地址。
TCP與UDP之間的區(qū)別
1.TCP 是面向連接的、可靠的傳輸協(xié)議,適用于對(duì)安全性和穩(wěn)定性要求高的數(shù)據(jù)傳輸。
2.UDP 是面向無(wú)連接的,不可靠的傳輸協(xié)議。適用于網(wǎng)絡(luò)負(fù)擔(dān)重、對(duì)傳輸時(shí)延要求低的數(shù)據(jù)傳輸。
TCP三次握手
假設(shè)網(wǎng)絡(luò)中兩臺(tái)機(jī)器分別是 客戶端A、服務(wù)器B 之間建立 TCP 連接。
首先一次握手,客戶端A建立傳輸控制模塊 TCB(傳輸控制塊的數(shù)據(jù)結(jié)構(gòu)把發(fā)給不同設(shè)備的數(shù)據(jù)封裝起來(lái)),發(fā)送SYN報(bào)文包( 報(bào)文段首部的同步位 SYN=1表示請(qǐng)求服務(wù)器B建立連接,以及一個(gè)序列號(hào) seq=x表示數(shù)據(jù)段的序號(hào)),此時(shí)客戶端A進(jìn)入syn_send狀態(tài),等待服務(wù)器 B的確認(rèn)。
第二次握手,當(dāng)服務(wù)器B收到客戶端A的syn報(bào)文包,需要給客戶端發(fā)送ACK確認(rèn)報(bào)文包,同時(shí)服務(wù)器B也要向客戶端A發(fā)送一個(gè)SNY報(bào)文包,所以也就是向客戶端發(fā)送SYN報(bào)文包加ACK報(bào)文包(同步位SYN=1表示同步位等于1代表收到了客戶端A的請(qǐng)求,確認(rèn)位ACK=1表示確認(rèn)位為1代表服務(wù)器B同意建立連接,序列號(hào)seq=y 表示服務(wù)器B發(fā)送的數(shù)據(jù)段序號(hào),確認(rèn)號(hào)ack=x+1表示確認(rèn)號(hào),希望客戶端A回復(fù)的報(bào)文序號(hào)為x+1),此時(shí)服務(wù)器B進(jìn)入syn_rcvd的狀態(tài)。
第三次握手,客戶端A收到SYN報(bào)文包加ACK報(bào)文包,向服務(wù)器B發(fā)送ACK確認(rèn)包(確認(rèn)位ACK=1表示服務(wù)器B同意連接,序列號(hào)seq=x+1表示數(shù)據(jù)段的序號(hào)+1,確認(rèn)號(hào)ack=y+1表示在正式傳輸數(shù)據(jù)時(shí),第一個(gè)包的序號(hào)為y+1),客戶端A進(jìn)入Established的狀態(tài)待服務(wù)器B收到客戶端A發(fā)送的ACK包,也會(huì)進(jìn)入Established的狀態(tài),完成三次握手
(ack表示確認(rèn)號(hào),ACK表示確認(rèn)位)
OSI七層模型
開(kāi)放式系統(tǒng)互聯(lián)通信參考模型(英語(yǔ):Open System Interconnection Reference Model,縮寫(xiě)為 OSI),簡(jiǎn)稱為OSI模型(OSI model),一種概念模型,由國(guó)際標(biāo)準(zhǔn)化組織提出,一個(gè)試圖使各種計(jì)算機(jī)在世界范圍內(nèi)互連為網(wǎng)絡(luò)的標(biāo)準(zhǔn)框架。定義于ISO/IEC 7498-1。
OSI七層模型以及各層作用
層次模型 | 作用 |
---|---|
應(yīng)用層 | 網(wǎng)絡(luò)服務(wù)與最終用戶的一個(gè)接口 |
表示層 | 數(shù)據(jù)的表示、壓縮、格式化、加密 |
會(huì)話層 | 建立、管理、終止會(huì)話 |
傳輸層 | 定義傳輸數(shù)據(jù)的協(xié)議端口號(hào),以及流量與差錯(cuò)校驗(yàn) |
網(wǎng)絡(luò)層 | 進(jìn)行邏輯地址尋址,實(shí)現(xiàn)不同網(wǎng)絡(luò)的路徑選擇 |
數(shù)據(jù)鏈路層 | 進(jìn)行硬件地址尋址,差錯(cuò)校驗(yàn)等功能 |
物理層 | 建立、維護(hù)、斷開(kāi)物理連接 |
OSI 七層模型中每一層的協(xié)議數(shù)據(jù)單元
層次模型 | 數(shù)據(jù)單元 |
---|---|
傳輸層 | 數(shù)據(jù)段 |
網(wǎng)絡(luò)層 | 數(shù)據(jù)包 |
數(shù)據(jù)鏈路層 | 數(shù)據(jù)幀 |
物理層 | 比特流 |
OSI 七層模型中每一層的相對(duì)應(yīng)的主要設(shè)備
層次模型 | 主要設(shè)備 |
---|---|
傳輸層 | 防火墻 |
網(wǎng)絡(luò)層 | 路由器 |
數(shù)據(jù)鏈路層 | 交換機(jī) |
物理層 | 網(wǎng)卡 |
數(shù)據(jù)的解封裝
當(dāng)應(yīng)用程序用 T C P傳送數(shù)據(jù)時(shí),數(shù)據(jù)被送入?yún)f(xié)議棧中,然后逐個(gè)通過(guò)每一層直到被當(dāng)作一串比特流送入網(wǎng)絡(luò)。其中每一層對(duì)收到的數(shù)據(jù)都要增加一些首部信息(有時(shí)還要增加尾部信息),該過(guò)程如圖所示。T C P傳給I P的數(shù)據(jù)單元稱作 T C P報(bào)文段或簡(jiǎn)稱為 T C P段(T C P s e g m e n t)。I P傳給網(wǎng)絡(luò)接口層的數(shù)據(jù)單元稱作 I P數(shù)據(jù)報(bào)(IP datagram)。通過(guò)以太網(wǎng)傳輸?shù)谋忍亓鞣Q作幀(Fr a m e )。
如圖中幀頭和幀尾下面所標(biāo)注的數(shù)字是典型以太網(wǎng)幀首部的字節(jié)長(zhǎng)度。
以太網(wǎng)數(shù)據(jù)幀的物理特性是其長(zhǎng)度必須在 4 6~1 5 0 0字節(jié)之間。
更準(zhǔn)確地說(shuō),圖中I P和網(wǎng)絡(luò)接口層之間傳送的數(shù)據(jù)單元應(yīng)該是分組( p a c k e t)。分組既可以是一個(gè)I P數(shù)據(jù)報(bào),也可以是I P數(shù)據(jù)報(bào)的一個(gè)片(f r a g m e n t)。
U D P數(shù)據(jù)與T C P數(shù)據(jù)基本一致。唯一的不同是 U D P傳給I P的信息單元稱作 U D P數(shù)據(jù)報(bào)(UDP datagram),而且U D P的首部長(zhǎng)為8字節(jié)。
由于T C P、U D P、I C M P和I G M P都要向I P傳送數(shù)據(jù),因此I P必須在生成的I P首部中加入某種標(biāo)識(shí),以表明數(shù)據(jù)屬于哪一層。為此, I P在首部中存入一個(gè)長(zhǎng)度為8 b i t的數(shù)值,稱作協(xié)議域。
許多應(yīng)用程序都可以使用 T C P或U D P來(lái)傳送數(shù)據(jù)。運(yùn)輸層協(xié)議在生成報(bào)文首部時(shí)要存入一個(gè)應(yīng)用程序的標(biāo)識(shí)符。 T C P和U D P都用一個(gè)1 6 b i t的端口號(hào)來(lái)表示不同的應(yīng)用程序。T C P和U D P把源端口號(hào)和目的端口號(hào)分別存入報(bào)文首部中。
總結(jié)
TCP/IP總結(jié)
T C P / I P協(xié)議族分為四層:鏈路層、網(wǎng)絡(luò)層、運(yùn)輸層和應(yīng)用層,每一層各有不同的責(zé)任。在T C P / I P中,網(wǎng)絡(luò)層和運(yùn)輸層之間的區(qū)別是最為關(guān)鍵的:網(wǎng)絡(luò)層( I P)提供點(diǎn)到點(diǎn)的服務(wù),而運(yùn)輸層(T C P和U D P)提供端到端的服務(wù)。
一個(gè)互聯(lián)網(wǎng)是網(wǎng)絡(luò)的網(wǎng)絡(luò)。構(gòu)造互聯(lián)網(wǎng)的共同基石是路由器,它們?cè)?I P層把網(wǎng)絡(luò)連在一起。第一個(gè)字母大寫(xiě)的I n t e r n e t是指分布在世界各地的大型互聯(lián)網(wǎng),其中包括 1萬(wàn)多個(gè)網(wǎng)絡(luò)和超過(guò)1 0 0萬(wàn)臺(tái)主機(jī)。
在一個(gè)互聯(lián)網(wǎng)上,每個(gè)接口都用 I P地址來(lái)標(biāo)識(shí),盡管用戶習(xí)慣使用主機(jī)名而不是 I P地址。域名系統(tǒng)為主機(jī)名和 I P地址之間提供動(dòng)態(tài)的映射。端口號(hào)用來(lái)標(biāo)識(shí)互相通信的應(yīng)用程序。服務(wù)器使用知名端口號(hào),而客戶使用臨時(shí)設(shè)定的端口號(hào)。文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-405076.html
OSI七層模型總結(jié)
文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-405076.html
到了這里,關(guān)于TCP/IP協(xié)議與OSI七層模型的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!