成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

TCP/IP 網(wǎng)絡(luò)模型有哪幾層?

網(wǎng)絡(luò) 網(wǎng)絡(luò)管理
網(wǎng)絡(luò)接口層主要為網(wǎng)絡(luò)層提供「鏈路級(jí)別」傳輸?shù)姆?wù),負(fù)責(zé)在以太網(wǎng)、WiFi 這樣的底層網(wǎng)絡(luò)上發(fā)送原始數(shù)據(jù)包,工作在網(wǎng)卡這個(gè)層次,使用 MAC 地址來(lái)標(biāo)識(shí)網(wǎng)絡(luò)上的設(shè)備。

問(wèn)大家,為什么要有 TCP/IP 網(wǎng)絡(luò)模型?

對(duì)于同一臺(tái)設(shè)備上的進(jìn)程間通信,有很多種方式,比如有管道、消息隊(duì)列、共享內(nèi)存、信號(hào)等方式,而對(duì)于不同設(shè)備上的進(jìn)程間通信,就需要網(wǎng)絡(luò)通信,而設(shè)備是多樣性的,所以要兼容多種多樣的設(shè)備,就協(xié)商出了一套通用的網(wǎng)絡(luò)協(xié)議。

這個(gè)網(wǎng)絡(luò)協(xié)議是分層的,每一層都有各自的作用和職責(zé),接下來(lái)就根據(jù)「 TCP/IP 網(wǎng)絡(luò)模型」分別對(duì)每一層進(jìn)行介紹。

應(yīng)用層

最上層的,也是我們能直接接觸到的就是應(yīng)用層(Application Layer),我們電腦或手機(jī)使用的應(yīng)用軟件都是在應(yīng)用層實(shí)現(xiàn)。那么,當(dāng)兩個(gè)不同設(shè)備的應(yīng)用需要通信的時(shí)候,應(yīng)用就把應(yīng)用數(shù)據(jù)傳給下一層,也就是傳輸層。

所以,應(yīng)用層只需要專注于為用戶提供應(yīng)用功能,比如 HTTP、FTP、Telnet、DNS、SMTP等。

應(yīng)用層是不用去關(guān)心數(shù)據(jù)是如何傳輸?shù)模皖愃朴冢覀兗目爝f的時(shí)候,只需要把包裹交給快遞員,由他負(fù)責(zé)運(yùn)輸快遞,我們不需要關(guān)心快遞是如何被運(yùn)輸?shù)摹?/p>

而且應(yīng)用層是工作在操作系統(tǒng)中的用戶態(tài),傳輸層及以下則工作在內(nèi)核態(tài)。

傳輸層

應(yīng)用層的數(shù)據(jù)包會(huì)傳給傳輸層,傳輸層(Transport Layer)是為應(yīng)用層提供網(wǎng)絡(luò)支持的。

在傳輸層會(huì)有兩個(gè)傳輸協(xié)議,分別是 TCP 和 UDP。

TCP 的全稱叫傳輸控制協(xié)議(Transmission Control Protocol),大部分應(yīng)用使用的正是 TCP 傳輸層協(xié)議,比如 HTTP 應(yīng)用層協(xié)議。TCP 相比 UDP 多了很多特性,比如流量控制、超時(shí)重傳、擁塞控制等,這些都是為了保證數(shù)據(jù)包能可靠地傳輸給對(duì)方。

UDP 相對(duì)來(lái)說(shuō)就很簡(jiǎn)單,簡(jiǎn)單到只負(fù)責(zé)發(fā)送數(shù)據(jù)包,不保證數(shù)據(jù)包是否能抵達(dá)對(duì)方,但它實(shí)時(shí)性相對(duì)更好,傳輸效率也高。當(dāng)然,UDP 也可以實(shí)現(xiàn)可靠傳輸,把 TCP 的特性在應(yīng)用層上實(shí)現(xiàn)就可以,不過(guò)要實(shí)現(xiàn)一個(gè)商用的可靠 UDP 傳輸協(xié)議,也不是一件簡(jiǎn)單的事情。

應(yīng)用需要傳輸?shù)臄?shù)據(jù)可能會(huì)非常大,如果直接傳輸就不好控制,因此當(dāng)傳輸層的數(shù)據(jù)包大小超過(guò) MSS(TCP 最大報(bào)文段長(zhǎng)度) ,就要將數(shù)據(jù)包分塊,這樣即使中途有一個(gè)分塊丟失或損壞了,只需要重新發(fā)送這一個(gè)分塊,而不用重新發(fā)送整個(gè)數(shù)據(jù)包。在 TCP 協(xié)議中,我們把每個(gè)分塊稱為一個(gè) TCP 段(TCP Segment)。

當(dāng)設(shè)備作為接收方時(shí),傳輸層則要負(fù)責(zé)把數(shù)據(jù)包傳給應(yīng)用,但是一臺(tái)設(shè)備上可能會(huì)有很多應(yīng)用在接收或者傳輸數(shù)據(jù),因此需要用一個(gè)編號(hào)將應(yīng)用區(qū)分開來(lái),這個(gè)編號(hào)就是端口。

比如 80 端口通常是 Web 服務(wù)器用的,22 端口通常是遠(yuǎn)程登錄服務(wù)器用的。而對(duì)于瀏覽器(客戶端)中的每個(gè)標(biāo)簽欄都是一個(gè)獨(dú)立的進(jìn)程,操作系統(tǒng)會(huì)為這些進(jìn)程分配臨時(shí)的端口號(hào)。

由于傳輸層的報(bào)文中會(huì)攜帶端口號(hào),因此接收方可以識(shí)別出該報(bào)文是發(fā)送給哪個(gè)應(yīng)用。

網(wǎng)絡(luò)層

傳輸層可能大家剛接觸的時(shí)候,會(huì)認(rèn)為它負(fù)責(zé)將數(shù)據(jù)從一個(gè)設(shè)備傳輸?shù)搅硪粋€(gè)設(shè)備,事實(shí)上它并不負(fù)責(zé)。

實(shí)際場(chǎng)景中的網(wǎng)絡(luò)環(huán)節(jié)是錯(cuò)綜復(fù)雜的,中間有各種各樣的線路和分叉路口,如果一個(gè)設(shè)備的數(shù)據(jù)要傳輸給另一個(gè)設(shè)備,就需要在各種各樣的路徑和節(jié)點(diǎn)進(jìn)行選擇,而傳輸層的設(shè)計(jì)理念是簡(jiǎn)單、高效、專注,如果傳輸層還負(fù)責(zé)這一塊功能就有點(diǎn)違背設(shè)計(jì)原則了。

也就是說(shuō),我們不希望傳輸層協(xié)議處理太多的事情,只需要服務(wù)好應(yīng)用即可,讓其作為應(yīng)用間數(shù)據(jù)傳輸?shù)拿浇椋瑤椭鷮?shí)現(xiàn)應(yīng)用到應(yīng)用的通信,而實(shí)際的傳輸功能就交給下一層,也就是網(wǎng)絡(luò)層(Internet Layer)。

網(wǎng)絡(luò)層最常使用的是 IP 協(xié)議(Internet Protocol),IP 協(xié)議會(huì)將傳輸層的報(bào)文作為數(shù)據(jù)部分,再加上 IP 包頭組裝成 IP 報(bào)文,如果 IP 報(bào)文大小超過(guò) MTU(以太網(wǎng)中一般為 1500 字節(jié))就會(huì)再次進(jìn)行分片,得到一個(gè)即將發(fā)送到網(wǎng)絡(luò)的 IP 報(bào)文。

網(wǎng)絡(luò)層負(fù)責(zé)將數(shù)據(jù)從一個(gè)設(shè)備傳輸?shù)搅硪粋€(gè)設(shè)備,世界上那么多設(shè)備,又該如何找到對(duì)方呢?因此,網(wǎng)絡(luò)層需要有區(qū)分設(shè)備的編號(hào)。

我們一般用 IP 地址給設(shè)備進(jìn)行編號(hào),對(duì)于 IPv4 協(xié)議, IP 地址共 32 位,分成了四段(比如,192.168.100.1),每段是 8 位。只有一個(gè)單純的 IP 地址雖然做到了區(qū)分設(shè)備,但是尋址起來(lái)就特別麻煩,全世界那么多臺(tái)設(shè)備,難道一個(gè)一個(gè)去匹配?這顯然不科學(xué)。

因此,需要將 IP 地址分成兩種意義:

  • 一個(gè)是網(wǎng)絡(luò)號(hào),負(fù)責(zé)標(biāo)識(shí)該 IP 地址是屬于哪個(gè)「子網(wǎng)」的;
  • 一個(gè)是主機(jī)號(hào),負(fù)責(zé)標(biāo)識(shí)同一「子網(wǎng)」下的不同主機(jī);

怎么分的呢?這需要配合子網(wǎng)掩碼才能算出 IP 地址 的網(wǎng)絡(luò)號(hào)和主機(jī)號(hào)。

舉個(gè)例子,比如 10.100.122.0/24,后面的/24表示就是 255.255.255.0 子網(wǎng)掩碼,255.255.255.0 二進(jìn)制是「
11111111-11111111-11111111-00000000」,大家數(shù)數(shù)一共多少個(gè)1?不用數(shù)了,是 24 個(gè)1,為了簡(jiǎn)化子網(wǎng)掩碼的表示,用/24代替255.255.255.0。

知道了子網(wǎng)掩碼,該怎么計(jì)算出網(wǎng)絡(luò)地址和主機(jī)地址呢?

將 10.100.122.2 和 255.255.255.0 進(jìn)行按位與運(yùn)算,就可以得到網(wǎng)絡(luò)號(hào),如下圖:

將 255.255.255.0 取反后與IP地址進(jìn)行進(jìn)行按位與運(yùn)算,就可以得到主機(jī)號(hào)。

大家可以去搜索下子網(wǎng)掩碼計(jì)算器,自己改變下「掩碼位」的數(shù)值,就能體會(huì)到子網(wǎng)掩碼的作用了。

那么在尋址的過(guò)程中,先匹配到相同的網(wǎng)絡(luò)號(hào)(表示要找到同一個(gè)子網(wǎng)),才會(huì)去找對(duì)應(yīng)的主機(jī)。

除了尋址能力, IP 協(xié)議還有另一個(gè)重要的能力就是路由。實(shí)際場(chǎng)景中,兩臺(tái)設(shè)備并不是用一條網(wǎng)線連接起來(lái)的,而是通過(guò)很多網(wǎng)關(guān)、路由器、交換機(jī)等眾多網(wǎng)絡(luò)設(shè)備連接起來(lái)的,那么就會(huì)形成很多條網(wǎng)絡(luò)的路徑,因此當(dāng)數(shù)據(jù)包到達(dá)一個(gè)網(wǎng)絡(luò)節(jié)點(diǎn),就需要通過(guò)路由算法決定下一步走哪條路徑。

路由器尋址工作中,就是要找到目標(biāo)地址的子網(wǎng),找到后進(jìn)而把數(shù)據(jù)包轉(zhuǎn)發(fā)給對(duì)應(yīng)的網(wǎng)絡(luò)內(nèi)。

所以,IP 協(xié)議的尋址作用是告訴我們?nèi)ネ乱粋€(gè)目的地該朝哪個(gè)方向走,路由則是根據(jù)「下一個(gè)目的地」選擇路徑。尋址更像在導(dǎo)航,路由更像在操作方向盤。

網(wǎng)絡(luò)接口層

生成了 IP 頭部之后,接下來(lái)要交給網(wǎng)絡(luò)接口層(Link Layer)在 IP 頭部的前面加上 MAC 頭部,并封裝成數(shù)據(jù)幀(Data frame)發(fā)送到網(wǎng)絡(luò)上。

IP 頭部中的接收方 IP 地址表示網(wǎng)絡(luò)包的目的地,通過(guò)這個(gè)地址我們就可以判斷要將包發(fā)到哪里,但在以太網(wǎng)的世界中,這個(gè)思路是行不通的。

什么是以太網(wǎng)呢?電腦上的以太網(wǎng)接口,Wi-Fi接口,以太網(wǎng)交換機(jī)、路由器上的千兆,萬(wàn)兆以太網(wǎng)口,還有網(wǎng)線,它們都是以太網(wǎng)的組成部分。以太網(wǎng)就是一種在「局域網(wǎng)」內(nèi),把附近的設(shè)備連接起來(lái),使它們之間可以進(jìn)行通訊的技術(shù)。

以太網(wǎng)在判斷網(wǎng)絡(luò)包目的地時(shí)和 IP 的方式不同,因此必須采用相匹配的方式才能在以太網(wǎng)中將包發(fā)往目的地,而 MAC 頭部就是干這個(gè)用的,所以,在以太網(wǎng)進(jìn)行通訊要用到 MAC 地址。

MAC 頭部是以太網(wǎng)使用的頭部,它包含了接收方和發(fā)送方的 MAC 地址等信息,我們可以通過(guò) ARP 協(xié)議獲取對(duì)方的 MAC 地址。

所以說(shuō),網(wǎng)絡(luò)接口層主要為網(wǎng)絡(luò)層提供「鏈路級(jí)別」傳輸?shù)姆?wù),負(fù)責(zé)在以太網(wǎng)、WiFi 這樣的底層網(wǎng)絡(luò)上發(fā)送原始數(shù)據(jù)包,工作在網(wǎng)卡這個(gè)層次,使用 MAC 地址來(lái)標(biāo)識(shí)網(wǎng)絡(luò)上的設(shè)備。

總結(jié)

綜上所述,TCP/IP 網(wǎng)絡(luò)通常是由上到下分成 4 層,分別是應(yīng)用層,傳輸層,網(wǎng)絡(luò)層和網(wǎng)絡(luò)接口層。

再給大家貼一下每一層的封裝格式:

網(wǎng)絡(luò)接口層的傳輸單位是幀(frame),IP 層的傳輸單位是包(packet),TCP 層的傳輸單位是段(segment),HTTP 的傳輸單位則是消息或報(bào)文(message)。但這些名詞并沒有什么本質(zhì)的區(qū)分,可以統(tǒng)稱為數(shù)據(jù)包。

責(zé)任編輯:武曉燕 來(lái)源: 今日頭條
相關(guān)推薦

2019-04-08 08:44:10

TCPIP網(wǎng)絡(luò)協(xié)議

2022-10-08 00:00:00

DNS地址網(wǎng)關(guān)

2015-03-03 10:52:48

TCPIP

2019-09-18 20:07:06

AndroidTCP協(xié)議

2010-06-09 14:55:11

TCP IP協(xié)議限制

2025-02-24 08:00:28

2009-04-09 10:11:00

TCPIP通訊

2010-09-09 16:28:19

2013-10-28 09:24:34

SDN軟件定義網(wǎng)絡(luò)TCP

2021-07-06 21:29:16

TCPIP協(xié)議棧

2015-10-29 09:51:35

TCPIP網(wǎng)絡(luò)協(xié)議

2009-01-16 08:45:02

2010-09-09 16:21:32

TCP IP網(wǎng)絡(luò)協(xié)議

2015-10-21 10:24:05

TCPIP網(wǎng)絡(luò)協(xié)議

2010-06-12 15:54:09

TCP IP協(xié)議

2015-04-24 09:48:59

TCPsocketsocket編程

2019-05-20 07:37:00

TCPIP網(wǎng)絡(luò)協(xié)議

2021-07-09 08:55:23

LinuxTCPIP

2018-10-12 10:33:25

TCPIP服務(wù)協(xié)議

2012-12-03 11:50:44

TCPIP網(wǎng)絡(luò)流量
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 中文字幕在线观看精品 | 欧美精品影院 | 一级a爱片久久毛片 | 欧美精品福利 | 亚洲国产一区二区在线 | 亚洲国产激情 | 久草新在线 | 免费精品在线视频 | 四虎午夜剧场 | 亚洲一区在线日韩在线深爱 | 国产精品成人一区二区三区夜夜夜 | 91精品国产综合久久久久久漫画 | 亚洲欧美日韩国产综合 | 欧美一级在线免费 | 91极品视频 | 欧美国产中文 | 亚洲视频一区 | 97国产精品视频 | 国产成人精品久久二区二区91 | 天天玩天天干天天操 | 色婷婷av久久久久久久 | 自拍中文字幕 | 精品国产区 | 日韩一区二区在线视频 | 亚洲视频在线观看免费 | 作爱视频免费看 | 在线观看www| 久草新在线 | 日韩在线一区二区 | 情侣av| 成人免费视频 | 亚洲精品久久久9婷婷中文字幕 | 日韩欧美在线一区 | 亚洲欧美日本在线 | 婷婷激情综合 | 999久久久国产精品 欧美成人h版在线观看 | 成人精品一区二区三区中文字幕 | 午夜男人视频 | caoporn免费| av在线免费播放 | 日本一区二区三区免费观看 |