一談到TCP/IP協(xié)議棧,相信不少小白都處于暴躁的邊緣,只懂其一不知其二。沒關(guān)系,看完這篇你就知道啦!
我們先簡(jiǎn)單了解下TCP/IP協(xié)議,該協(xié)議最早得名于上世紀(jì)80年代,由于其優(yōu)異性,很快便成為主流網(wǎng)絡(luò)通信協(xié)議。后面出現(xiàn)的各類協(xié)議(http、ip、dns、tcp、arp等)都被整體納入這一協(xié)議體系中去,被統(tǒng)稱為“TCP/IP協(xié)議?!?,“TCP/IP協(xié)議?!泵Q就是這么由此而來的。
對(duì)應(yīng)這一協(xié)議棧,同時(shí)發(fā)展出了TCP/IP 參考模型,該模型是一個(gè)抽象的分層模型,TCP/IP 協(xié)議棧中的所有協(xié)議被歸類到這一模型的4個(gè)層次中(四個(gè)層分別是:鏈路層、網(wǎng)絡(luò)層、傳輸層、應(yīng)用層),每一層都呼叫它的下一層所提供的協(xié)議來完成其需求,各個(gè)層次間互相協(xié)作,由此完成了互聯(lián)網(wǎng)通信的主要工作。
*由于OSI協(xié)議棧比較復(fù)雜,且TCP和IP兩大協(xié)議在業(yè)界被廣泛使用,所以TCP/IP參考模型成為了互聯(lián)網(wǎng)的主流參考模型*
為了讓你對(duì)通信過程有一個(gè)更好的理解,我將以http請(qǐng)求通信的過程為例子,從TCP/IP四個(gè)層次出發(fā),對(duì)應(yīng)各個(gè)層次的通信實(shí)體,看各個(gè)協(xié)議是如何在這些通信實(shí)體中發(fā)生作用。
在這之前我們先了解下網(wǎng)絡(luò)通信中的三個(gè)地址:IP地址、Mac地址以及端口號(hào),三者分別代表:
IP地址:網(wǎng)絡(luò)中互聯(lián)的主機(jī)和路由器的標(biāo)識(shí)
Mac地址:每個(gè)網(wǎng)卡硬件的物理地址
端口號(hào):識(shí)別同一個(gè)主機(jī)上不同的應(yīng)用程序,也可以理解為程序地址
當(dāng)你輸入一個(gè)網(wǎng)址并按下回車鍵的時(shí)候:應(yīng)用層協(xié)議會(huì)先對(duì)該請(qǐng)求包做格式定義;緊接著傳輸層協(xié)議加上雙方的端口號(hào),確認(rèn)雙方通信的應(yīng)用程序;然后網(wǎng)絡(luò)層協(xié)議加上雙方的IP地址,確認(rèn)雙方的網(wǎng)絡(luò)位置;最后鏈路層協(xié)議加上雙方的MAC地址,確認(rèn)雙方的物理位置,以太網(wǎng)協(xié)議會(huì)通過對(duì)電信號(hào)數(shù)據(jù)進(jìn)行分組,形成數(shù)據(jù)幀,再采用廣播方式,通過傳輸介質(zhì)發(fā)送給對(duì)方主機(jī)。而對(duì)于不同網(wǎng)段,該數(shù)據(jù)包先會(huì)轉(zhuǎn)發(fā)給網(wǎng)關(guān)路由器,經(jīng)過多次轉(zhuǎn)發(fā)后,最終被發(fā)送到目標(biāo)主機(jī)。目標(biāo)機(jī)接收到數(shù)據(jù)包后,采用對(duì)應(yīng)的協(xié)議,對(duì)幀數(shù)據(jù)進(jìn)行組裝,然后再通過一層一層的協(xié)議進(jìn)行解析,最終被應(yīng)用層的協(xié)議解析并交給服務(wù)器處理。在這個(gè)過程中,各項(xiàng)協(xié)議確保了傳輸過程的實(shí)現(xiàn)以及數(shù)據(jù)的安全。
IP地址相當(dāng)于是人所在的區(qū)域,MAC地址相當(dāng)于是人的身份證號(hào)碼,對(duì)于網(wǎng)絡(luò)傳輸最終都是以MAC地址來實(shí)現(xiàn)的。
我們來梳理一下每層模型的職責(zé):
- 應(yīng)用層:定義數(shù)據(jù)格式,并按照對(duì)應(yīng)的格式解讀數(shù)據(jù)
- 傳輸層:定義端口,確認(rèn)主機(jī)上應(yīng)用程序的身份,并將數(shù)據(jù)包交給對(duì)應(yīng)的應(yīng)用程序
- 網(wǎng)絡(luò)層:定義IP地址,確認(rèn)主機(jī)所在的網(wǎng)絡(luò)位置,并通過IP進(jìn)行MAC尋址,對(duì)外網(wǎng)數(shù)據(jù)包進(jìn)行路由轉(zhuǎn)發(fā)
- 鏈路層:以字節(jié)為單位對(duì)0和1進(jìn)行分組,定義數(shù)據(jù)幀,確認(rèn)主機(jī)的物理地址,傳輸數(shù)據(jù)
以上內(nèi)容是對(duì)TCP/IP四層模型做了簡(jiǎn)單的介紹,而實(shí)際上每一層模型都有很多協(xié)議,每個(gè)協(xié)議要做的事情也很多,但我們首先得有一個(gè)清晰的脈絡(luò)結(jié)構(gòu),把基本的作用都掌握了,然后再去豐富細(xì)節(jié),就比較好理解了。
關(guān)注我,用最通俗的文字帶你了解物聯(lián)網(wǎng)~
-
協(xié)議棧
+關(guān)注
關(guān)注
2文章
141瀏覽量
33628
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論