偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

一文教你了解TCP/IP協(xié)議

網(wǎng)絡(luò) 無線技術(shù)
TCP/IP 協(xié)議不僅僅指的是 TCP 和 IP 兩個(gè)協(xié)議,而是指一個(gè)由 FTP、SMTP、TCP、UDP、IP 等協(xié)議構(gòu)成的協(xié)議簇, 只是因?yàn)樵?TCP/IP 協(xié)議中 TCP 協(xié)議和IP協(xié)議最具代表性,所以被稱為 TCP/IP 協(xié)議。

又到了金三銀四的時(shí)間,阿粉也是有點(diǎn)蠢蠢欲動(dòng),想要準(zhǔn)備面試一下,檢驗(yàn)一下自己的工作水平了,于是阿粉就開始了改改簡歷,然后想著準(zhǔn)備面試一下,結(jié)果在面試的第一家就遭遇了滑鐵盧,直接是涼涼收尾。為什么呢?那就是面試官按著協(xié)議就開始懟,HTTP協(xié)議、TCP/IP協(xié)議、SSL協(xié)議、MQTT協(xié)議,反正就是各種懟,導(dǎo)致阿粉就不得不好好看看這些協(xié)議的內(nèi)容。阿粉今天就給大家分析一下這個(gè)TCP協(xié)議。

什么是TCP/IP協(xié)議

TCP/IP協(xié)議,中文名傳輸控制協(xié)議。是指能夠在多個(gè)不同網(wǎng)絡(luò)間實(shí)現(xiàn)信息傳輸?shù)膮f(xié)議簇。

如果你覺得 TCP/IP 協(xié)議只是指的TCP和IP鞋油的話,那么阿粉就得給你安排一下了,TCP/IP 協(xié)議不僅僅指的是 TCP 和 IP 兩個(gè)協(xié)議,而是指一個(gè)由 FTP、SMTP、TCP、UDP、IP 等協(xié)議構(gòu)成的協(xié)議簇, 只是因?yàn)樵?TCP/IP 協(xié)議中 TCP 協(xié)議和IP協(xié)議最具代表性,所以被稱為 TCP/IP 協(xié)議。

也就是說,TCP/IP 協(xié)議是由很多構(gòu)成的,而不僅僅是 TCP 和 IP 這兩塊的內(nèi)容。

TCP/IP協(xié)議的組成

在上面阿粉已經(jīng)把圖給大家放到了上面,實(shí)際上圖中已經(jīng)給大家畫出來這個(gè)TCP協(xié)議的分層了,實(shí)際上TCP/IP傳輸協(xié)議是嚴(yán)格來說是一個(gè)四層的體系結(jié)構(gòu),應(yīng)用層、傳輸層、網(wǎng)絡(luò)層和數(shù)據(jù)鏈路層都包含其中。

而根據(jù)OSI參考模型的分類,又有很多人稱他為七層,而不同的層級(jí)又分別對(duì)應(yīng)不同的內(nèi)容。

實(shí)際上OSI七層模型中 應(yīng)用層,表示層,會(huì)話層,對(duì)應(yīng)的都是四層模型中的應(yīng)用層,因?yàn)閼?yīng)用層、表示層、會(huì)話層三個(gè)層次提供的服務(wù)相差不是很大,所以都給他合并了。

而數(shù)據(jù)鏈路層和物理層都是歸屬于網(wǎng)絡(luò)接口層,又稱之為鏈路層。這是因?yàn)閿?shù)據(jù)鏈路層和物理層的內(nèi)容相差不多,所以在TCP/IP協(xié)議中它們被歸并在網(wǎng)絡(luò)接口層(鏈路層)一個(gè)層次里。

TCP/IP協(xié)議分層介紹

分層既然都是四層了,我們就來分別的介紹一下這四層都是代表了什么,以及他們主要完成的功能情況。

自上而下:

1. 應(yīng)用層

應(yīng)用層是TCP/IP協(xié)議的第一層,是直接為應(yīng)用進(jìn)程提供服務(wù)的。

  • 加密、解密、格式化數(shù)據(jù).
  • 可以建立或解除與其他節(jié)點(diǎn)的聯(lián)系,這樣可以充分節(jié)省網(wǎng)絡(luò)資源.
  • 對(duì)不同種類的應(yīng)用程序它們會(huì)根據(jù)自己的需要來使用應(yīng)用層的不同協(xié)議,郵件傳輸應(yīng)用使用了SMTP協(xié)議、萬維網(wǎng)應(yīng)用使用了HTTP協(xié)議、遠(yuǎn)程登錄服務(wù)應(yīng)用使用了有TELNET協(xié)議.

2. 運(yùn)輸層

運(yùn)輸層也有人喜歡稱之為傳輸層,實(shí)際上就是提供了進(jìn)程間的邏輯通信,運(yùn)輸層向高層用戶屏蔽了下面網(wǎng)絡(luò)層的核心細(xì)節(jié),使應(yīng)用程序看起來像是在兩個(gè)運(yùn)輸層實(shí)體之間有一條端到端的邏輯通信信道。

而傳輸層包含了兩部分的協(xié)議:

  • TCP(傳輸控制協(xié)議):應(yīng)用程序之間通信
  • UDP(用戶數(shù)據(jù)報(bào)協(xié)議):應(yīng)用程序之間的簡單通信

作用都是用來在程序之間通信的,但是 UDP 相對(duì)于 TCP 來說,是不具備可靠性的。

UDP只是做了運(yùn)輸協(xié)議能夠做的最少工作,除了復(fù)用/分解功能及少數(shù)的差錯(cuò)檢驗(yàn)外,它幾乎沒有對(duì)ip增加別的東西。

既然說 TCP 相對(duì)于 UDP 協(xié)議來說,他是具備可靠性的,那么為什么他是可靠的呢?

TCP可靠性來自于:

  • 當(dāng)TCP發(fā)送一個(gè)段之后,啟動(dòng)一個(gè)定時(shí)器,等待目的點(diǎn)確認(rèn)收到報(bào)文,如果不能及時(shí)收到一個(gè)確認(rèn),將重發(fā)這個(gè)報(bào)文。
  • 當(dāng)TCP收到連接端發(fā)來的數(shù)據(jù),就會(huì)推遲幾分之一秒發(fā)送一個(gè)確認(rèn)。
  • TCP將保持它首部和數(shù)據(jù)的檢驗(yàn)和,這是一個(gè)端對(duì)端的檢驗(yàn)和,目的在于檢測數(shù)據(jù)在傳輸過程中是否發(fā)生變化。(有錯(cuò)誤,就不確認(rèn),發(fā)送端就會(huì)重發(fā))
  • TCP是以IP報(bào)文來傳送,IP數(shù)據(jù)是無序的,TCP收到所有數(shù)據(jù)后進(jìn)行排序,再交給應(yīng)用層
  • IP數(shù)據(jù)報(bào)會(huì)重復(fù),所以TCP會(huì)去重
  • TCP能提供流量控制,TCP連接的每一個(gè)地方都有固定的緩沖空間。TCP的接收端只允許另一端發(fā)送緩存區(qū)能接納的數(shù)據(jù)。

而 UDP 不可靠的因素則是:

  • 不保證消息交付:不確認(rèn),不重傳,無超時(shí)
  • 不保證交付順序:不設(shè)置包序號(hào),不重排,不會(huì)發(fā)生隊(duì)首阻塞
  • 不跟蹤連接狀態(tài):不必建立連接或重啟狀態(tài)機(jī)
  • 不需要擁塞控制:不內(nèi)置客戶端或網(wǎng)絡(luò)反饋機(jī)制

既然 UDP 都是不可靠的了,那么為什么還有人是用呢?

其實(shí)最主要的原因有幾點(diǎn):

第一,UDP 協(xié)議簡單,在使用 TCP 協(xié)議傳輸數(shù)據(jù)時(shí),如果一個(gè)數(shù)據(jù)段丟失或者接收端對(duì)某個(gè)數(shù)據(jù)段沒有確認(rèn),發(fā)送端會(huì)重新發(fā)送該數(shù)據(jù)段,而 TCP 重新發(fā)送數(shù)據(jù)會(huì)帶來傳輸延遲和重復(fù)數(shù)據(jù),降低了用戶的體驗(yàn),而 UDP 協(xié)議雖然不能保證這個(gè)數(shù)據(jù)傳輸?shù)拇_認(rèn),但是他能數(shù)據(jù)丟失呀(強(qiáng)行解釋他的low,阿粉都有點(diǎn)無地自容),實(shí)際上就是這樣,因?yàn)橛脩舻捏w驗(yàn),結(jié)果只能犧牲掉消息可靠性了,丟了就丟了,我為了用戶體驗(yàn),我不要了,這種方式切記,寫代碼的時(shí)候絕對(duì)不可取。

第二,UDP適合于實(shí)時(shí)數(shù)據(jù)傳輸,如語音和視頻通信,因?yàn)樗鼈兗词古紶杹G失一兩個(gè)數(shù)據(jù)包,也不會(huì)對(duì)接收結(jié)果產(chǎn)生太大影響,就比如早期的QQ,是用的就是 UDP 的協(xié)議。

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

網(wǎng)絡(luò)層在TCP/IP協(xié)議中的位于第三層。在TCP/IP協(xié)議中網(wǎng)絡(luò)層可以進(jìn)行網(wǎng)絡(luò)連接的建立和終止以及IP地址的尋找等功能。實(shí)際上網(wǎng)絡(luò)層是為運(yùn)輸層提供服務(wù)的,傳送的協(xié)議數(shù)據(jù)單元稱為數(shù)據(jù)包或分組。

(1) 而網(wǎng)絡(luò)層協(xié)議的代表包括:IP、IPX、RIP、OSPF等

我們以經(jīng)典的 IP 協(xié)議為例:

  • 規(guī)定網(wǎng)絡(luò)地址的協(xié)議叫ip協(xié)議,它定義的地址稱之為ip地址,廣泛采用的v4版本即ipv4,它規(guī)定網(wǎng)絡(luò)地址由32位2進(jìn)制表示
  • 范圍0.0.0.0-255.255.255.255
  • 一個(gè)ip地址通常寫成四段十進(jìn)制數(shù),例:172.16.10.1

(2) IP地址分類

IP地址根據(jù)網(wǎng)絡(luò)ID的不同分為5種類型,A類地址、B類地址、C類地址、D類地址和E類地址。

  • A類IP地址 地址范圍從1.0.0.0 到126.0.0.0
  • B類IP地址 地址范圍從128.0.0.0到191.255.255.255
  • C類IP地址 范圍從192.0.0.0到223.255.255.255
  • D類地址用于多點(diǎn)廣播(Multicast)

一般這些內(nèi)容都是在我們學(xué)計(jì)算機(jī)基礎(chǔ)的時(shí)候就學(xué)到的 IP 協(xié)議的地址取值范圍。

而 IP 地址的主要作用就是:

  • 尋址與路由
  • 分段與重組

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

網(wǎng)絡(luò)接口層在 TCP/IP 協(xié)議中,網(wǎng)絡(luò)接口層位于第四層。由于網(wǎng)絡(luò)接口層兼并了物理層和數(shù)據(jù)鏈路層所以,網(wǎng)絡(luò)接口層既是傳輸數(shù)據(jù)的物理媒介,也可以為網(wǎng)絡(luò)層提供一條準(zhǔn)確無誤的線路。

網(wǎng)絡(luò)接口層在發(fā)送端將上層的IP數(shù)據(jù)報(bào)封裝成幀后發(fā)送到網(wǎng)絡(luò)上;數(shù)據(jù)幀通過網(wǎng)絡(luò)到達(dá)接收端時(shí),該結(jié)點(diǎn)的網(wǎng)絡(luò)接口層對(duì)數(shù)據(jù)幀拆封,并檢查幀中包含的MAC地址。如果該地址就是本機(jī)的MAC地址或者是廣播地址,則上傳到網(wǎng)絡(luò)層,否則丟棄該幀。

其實(shí)阿粉覺得網(wǎng)絡(luò)接口層實(shí)際上就是相當(dāng)于一個(gè)網(wǎng)卡的功能,數(shù)據(jù)包從一個(gè)網(wǎng)卡到另一個(gè)網(wǎng)卡一樣。

而這些協(xié)議,其實(shí)往往都是靠個(gè)人理解,有些人喜歡交數(shù)據(jù)鏈路層,有些人喜歡叫網(wǎng)絡(luò)接口層,只能說個(gè)人喜好吧,到時(shí)候面試的時(shí)候,就看你的表現(xiàn)了。

責(zé)任編輯:趙寧寧 來源: Java極客技術(shù)
相關(guān)推薦

2023-09-02 21:44:24

TCP/IP通信協(xié)議

2023-07-31 21:56:54

哨兵系統(tǒng)redis

2019-07-09 08:29:51

TCPIP協(xié)議

2022-02-25 07:34:36

MQTT協(xié)議RabbitMQ

2023-12-27 07:40:43

HTTP服務(wù)器負(fù)載均衡

2023-08-26 20:56:02

滑動(dòng)窗口協(xié)議

2022-02-24 07:34:10

SSL協(xié)議加密

2021-12-07 06:02:15

Redis Docker運(yùn)維

2021-05-07 09:17:21

HTTPTCP協(xié)議

2021-07-12 12:03:32

EPaxos分布式協(xié)議流程

2021-07-08 12:32:58

2025-05-30 01:00:00

RAG大模型流程

2024-11-20 16:12:31

Python圖像處理計(jì)算機(jī)視覺

2024-11-18 17:16:18

Python性能優(yōu)化編程

2024-11-20 16:42:03

Python科學(xué)計(jì)算

2023-12-06 16:28:56

2010-09-17 16:38:41

TCP IP協(xié)議

2021-08-06 09:36:00

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

2022-09-05 07:32:46

mock數(shù)據(jù)Stream

2024-12-19 15:00:00

數(shù)據(jù)清洗Python
點(diǎn)贊
收藏

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