日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

TCP/IP協(xié)議的工作流程

GReq_mcu168 ? 來源:CSDN博客 ? 作者:溫柔狠角色 ? 2021-11-19 14:11 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

TCP/IP協(xié)議

TCP/IP不是一個協(xié)議,而是一個協(xié)議族的統(tǒng)稱。里面包括IP協(xié)議、IMCP協(xié)議、TCP協(xié)議。

這里有幾個需要注意的知識點:

互聯(lián)網(wǎng)地址:也就是IP地址,一般為網(wǎng)絡號+子網(wǎng)號+主機號

域名系統(tǒng):通俗的來說,就是一個數(shù)據(jù)庫,可以將主機名轉(zhuǎn)換成IP地址

RFC:TCP/IP協(xié)議的標準文檔

端口號:一個邏輯號碼,IP包所帶有的標記

Socket:應用編程接口

數(shù)據(jù)鏈路層的工作特性:

為IP模塊發(fā)送和接收IP數(shù)據(jù)報

為ARP模塊發(fā)送ARP請求和接收ARP應答(ARP:地址解析協(xié)議,將IP地址轉(zhuǎn)換成MAC地址)

為RARP發(fā)送RARP請求和接收RARP應答

接下來我們了解一下TCP/IP的工作流程:

數(shù)據(jù)鏈路層從ARP得到數(shù)據(jù)的傳遞信息,再從IP得到具體的數(shù)據(jù)信息

IP協(xié)議

IP協(xié)議頭當中,最重要的就是TTL(IP允許通過的最大網(wǎng)段數(shù)量)字段(八位),規(guī)定該數(shù)據(jù)包能穿過幾個路由之后才會被拋棄。

ARP協(xié)議工作原理

a6dcd3ae-41f7-11ec-b939-dac502259ad0.jpg

ICMP協(xié)議(網(wǎng)絡控制文協(xié)議)

將IP數(shù)據(jù)包不能傳送的錯誤信息傳送給主機

查詢報文

ping查詢:主機是否可達,通過計算間隔時間和傳送多少個包的數(shù)量

子網(wǎng)掩碼

時間戳:獲得當前時間

差錯報文

不產(chǎn)生的情況:

ICMP差錯報文不產(chǎn)生差錯報文

源地址為零地址、環(huán)目地址、廣播地址、多播地址

IP路由器選擇協(xié)議

靜態(tài)路由選擇

a75243b4-41f7-11ec-b939-dac502259ad0.jpg

靜態(tài)路由選擇

配置接口以默認方式生成路由表項,或者使用route add手動添加表項

ICMP報文(ICMP重定向報文)更新表項

動態(tài)路由選擇(只使用在路由之間)

RIP(路由信息協(xié)議)

分布式的基于距離向量(路由器到每一個目的網(wǎng)絡的距離記錄)的路由選擇協(xié)議

router承擔的工作:

給每一個已知路由器發(fā)送RIP請求報文,要求給出完整的路由表

如果接受請求,就將自己的路由表交給請求者;如果沒有,就處理IP請求表項(自己部分+跳數(shù)/沒有的部分+16)

接受回應,更新路由表

定期更新路由表(一般為30s,只能說太頻繁~)

OSPF(開放最短路徑優(yōu)先協(xié)議)

分布式鏈路狀態(tài)(和這兩個路由器都有接口的網(wǎng)絡)協(xié)議

當鏈路狀態(tài)發(fā)生變化時,采用可靠的洪泛法,向所有的路由器發(fā)送信息(相鄰的所有路由器的鏈路狀態(tài))

最終會建立一個全網(wǎng)的拓撲結(jié)構(gòu)圖

TCP/IP的三次握手,四次分手

首先我們先來了解TCP報文段

重要的標志我在圖中也有標記,重點了解標志位

ACK:確認序號有效

RST:重置連接

SYN:發(fā)起了一個新連接

FIN:釋放一個連接

三次握手的過程(客戶端我們用A表示,服務器端用B表示)

前提:A主動打開,B被動打開

在建立連接之前,B先創(chuàng)建TCB(傳輸控制塊),準備接受客戶進程的連接請求,處于LISTEN(監(jiān)聽)狀態(tài)

A首先創(chuàng)建TCB,然后向B發(fā)出連接請求,SYN置1,同時選擇初始序號seq=x,進入SYN-SEND(同步已發(fā)送)狀態(tài)

B收到連接請求后向A發(fā)送確認,SYN置1,ACK置1,同時產(chǎn)生一個確認序號ack=x+1。同時隨機選擇初始序號seq=y,進入SYN-RCVD(同步收到)狀態(tài)

A收到確認連接請求后,ACK置1,確認號ack=y+1,seq=x+1,進入到ESTABLISHED(已建立連接)狀態(tài)。向B發(fā)出確認連接,最后B也進入到ESTABLISHED(已建立連接)狀態(tài)。

簡單來說,就是

建立連接時,客戶端發(fā)送SYN包(SYN=i)到服務器,并進入到SYN-SEND狀態(tài),等待服務器確認

服務器收到SYN包,必須確認客戶的SYN(ack=i+1),同時自己也發(fā)送一個SYN包(SYN=k),即SYN+ACK包,此時服務器進入SYN-RECV狀態(tài)

客戶端收到服務器的SYN+ACK包,向服務器發(fā)送確認報ACK(ack=k+1),此包發(fā)送完畢,客戶端和服務器進入ESTABLISHED狀態(tài),完成三次握手

在此穿插一個知識點就是SYN攻擊,那么什么是SYN攻擊?發(fā)生的條件是什么?怎么避免?

在三次握手過程中,Server發(fā)送SYN-ACK之后,收到Client的ACK之前的TCP連接稱為半連接(half-open connect),此時Server處于SYN_RCVD狀態(tài),當收到ACK后,Server轉(zhuǎn)入ESTABLISHED狀態(tài)。SYN攻擊就是 Client在短時間內(nèi)偽造大量不存在的IP地址,并向Server不斷地發(fā)送SYN包,Server回復確認包,并等待Client的確認,由于源地址 是不存在的,因此,Server需要不斷重發(fā)直至超時,這些偽造的SYN包將產(chǎn)時間占用未連接隊列,導致正常的SYN請求因為隊列滿而被丟棄,從而引起網(wǎng) 絡堵塞甚至系統(tǒng)癱瘓。SYN攻擊時一種典型的DDOS攻擊,檢測SYN攻擊的方式非常簡單,即當Server上有大量半連接狀態(tài)且源IP地址是隨機的,則可以斷定遭到SYN攻擊了,使用如下命令可以讓之現(xiàn)行:

#netstat -nap | grep SYN_RECV

四次分手的過程(客戶端我們用A表示,服務器端用B表示)

由于TCP連接時是全雙工的,因此每個方向都必須單獨進行關(guān)閉。這一原則是當一方完成數(shù)據(jù)發(fā)送任務后,發(fā)送一個FIN來終止這一方向的鏈接。收到一個FIN只是意味著這一方向上沒有數(shù)據(jù)流動,既不會在收到數(shù)據(jù),但是在這個TCP連接上仍然能夠發(fā)送數(shù)據(jù),知道這一方向也發(fā)送了FIN,首先進行關(guān)閉的一方將執(zhí)行主動關(guān)閉,而另一方則執(zhí)行被動關(guān)閉。

前提:A主動關(guān)閉,B被動關(guān)閉

有人可能會問,為什么連接的時候是三次握手,而斷開連接的時候需要四次揮手?

這是因為服務端在LISTEN狀態(tài)下,收到建立連接請求的SYN報文后,把ACK和SYN放在一個報文里發(fā)送給客戶端。而關(guān)閉連接時,當收到對方的FIN 報文時,僅僅表示對方不再發(fā)送數(shù)據(jù)了但是還能接收數(shù)據(jù),己方也未必全部數(shù)據(jù)都發(fā)送給對方了,所以己方可以立即close,也可以發(fā)送一些數(shù)據(jù)給對方后,再 發(fā)送FIN報文給對方來表示同意現(xiàn)在關(guān)閉連接,因此,己方ACK和FIN一般都會分開發(fā)送。

A發(fā)送一個FIN,用來關(guān)閉A到B的數(shù)據(jù)傳送,A進入FIN_WAIT_1狀態(tài)。

B收到FIN后,發(fā)送一個ACK給A,確認序號為收到序號+1(與SYN相同,一個FIN占用一個序號),B進入CLOSE_WAIT狀態(tài)。

B發(fā)送一個FIN,用來關(guān)閉B到A的數(shù)據(jù)傳送,B進入LAST_ACK狀態(tài)。

A收到FIN后,A進入TIME_WAIT狀態(tài),接著發(fā)送一個ACK給B,確認序號為收到序號+1,B進入CLOSED狀態(tài),完成四次揮手。

簡單來說就是

客戶端A發(fā)送一個FIN,用來關(guān)閉客戶A到服務器B的數(shù)據(jù)傳送(報文段4)。

服務器B收到這個FIN,它發(fā)回一個ACK,確認序號為收到的序號加1(報文段5)。和SYN一樣,一個FIN將占用一個序號。

服務器B關(guān)閉與客戶端A的連接,發(fā)送一個FIN給客戶端A(報文段6)。

客戶端A發(fā)回ACK報文確認,并將確認序號設置為收到序號加1(報文段7)。

A在進入到TIME-WAIT狀態(tài)后,并不會馬上釋放TCP,必須經(jīng)過時間等待計時器設置的時間2MSL(最長報文段壽命),A才進入到CLOSED狀態(tài)。為什么?

為了保證A發(fā)送的最后一個ACK報文段能夠到達B

防止“已失效的連接請求報文段”出現(xiàn)在本連接中

OK~是不是很難懂的感覺?那我們來說的“人性化點的”吧

三次握手流程

客戶端發(fā)個請求“開門吶,我要進來”給服務器

服務器發(fā)個“進來吧,我去給你開門”給客戶端

客戶端有很客氣的發(fā)個“謝謝,我要進來了”給服務器

四次揮手流程

客戶端發(fā)個“時間不早了,我要走了”給服務器,等服務器起身送他

服務器聽到了,發(fā)個“我知道了,那我送你出門吧”給客戶端,等客戶端走

服務器把門關(guān)上后,發(fā)個“我關(guān)門了”給客戶端,然后等客戶端走(尼瑪~矯情啊)

客戶端發(fā)個“我知道了,我走了”,之后自己就走了

OK,先到這吧

原文鏈接:http://blog.csdn.net/qq_25827845/article/details/66975129

責任編輯:haq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 協(xié)議
    +關(guān)注

    關(guān)注

    2

    文章

    620

    瀏覽量

    41198
  • IP
    IP
    +關(guān)注

    關(guān)注

    5

    文章

    1885

    瀏覽量

    156801
  • TCP
    TCP
    +關(guān)注

    關(guān)注

    8

    文章

    1434

    瀏覽量

    83782

原文標題:詳解TCP/IP協(xié)議總結(jié)(怒噴一口老血)

文章出處:【微信號:mcu168,微信公眾號:硬件攻城獅】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    EtherNet/IP轉(zhuǎn)TCP/IP 塔訊智能網(wǎng)關(guān)儲能PACK產(chǎn)線集中管控

    新能源儲能行業(yè)作為工業(yè)自動化領域的高前景主流賽道,產(chǎn)線中多協(xié)議設備共存是普遍現(xiàn)象,AB羅克韋爾EtherNet/IP協(xié)議與標準TCP/IP
    的頭像 發(fā)表于 03-27 15:48 ?289次閱讀
    EtherNet/<b class='flag-5'>IP</b>轉(zhuǎn)<b class='flag-5'>TCP</b>/<b class='flag-5'>IP</b> 塔訊智能網(wǎng)關(guān)儲能PACK產(chǎn)線集中管控

    工作流節(jié)點說明---工作流節(jié)點

    平臺提供工作流節(jié)點,實現(xiàn)工作流嵌套工作流的效果。 節(jié)點說明 在一個工作流中,開發(fā)者可以將另一個工作流作為其中的一個步驟或節(jié)點,實現(xiàn)復雜任務
    發(fā)表于 03-24 21:05

    工作流節(jié)點說明結(jié)束節(jié)點

    結(jié)束節(jié)點是工作流的最終節(jié)點,用于返回工作流運行后的結(jié)果。結(jié)束節(jié)點支持兩種返回方式:返回變量、返回文本。 返回變量 在返回變量模式下,工作流運行結(jié)束后會以JSON格式輸出所有返回參數(shù),適用于工作
    發(fā)表于 03-16 16:43

    開發(fā)工作流創(chuàng)建工作流

    擇要使用的節(jié)點。 2、將節(jié)點按任務流程相連接。 3、配置節(jié)點的輸入和輸出參數(shù) 測試并發(fā)布工作流 開發(fā)者如需在智能體內(nèi)使用該工作流,必須先完成工作流的上架。 1、單擊【試運行】,運行成功
    發(fā)表于 03-10 10:05

    AMS借助Altium Designer簡化電子設計工作流程

    隨著時間的推移,AMS 遇到的問題越來越多。顯然,AMS 需要一個設計解決方案,將他們的整個工作流程集成到一個統(tǒng)一的設計環(huán)境中。也就在這時,Altium 進入了他們的視野。
    的頭像 發(fā)表于 03-09 11:24 ?543次閱讀

    TCP/IP(Socket)協(xié)議深度剖析

    TCP/IP協(xié)議作為互聯(lián)網(wǎng)通信的基礎架構(gòu),其核心機制Socket編程承載著全球數(shù)據(jù)交換的使命。本文將深入剖析這一協(xié)議的七層架構(gòu)、三次握手與四次揮手的精妙設計、流量控制與擁塞控制的動態(tài)平
    的頭像 發(fā)表于 03-03 17:06 ?821次閱讀

    工業(yè)級4G路由器:TCP/IP與UDP協(xié)議,解鎖工業(yè)物聯(lián)網(wǎng)高效傳輸新范式

    /以太網(wǎng)能力,正重新定義工業(yè)數(shù)據(jù)傳輸?shù)倪吔?。其核心?yōu)勢,在于對TCP/IP與UDP協(xié)議的深度適配,為不同場景提供精準的通信解決方案。 ?? ?TCP/
    的頭像 發(fā)表于 01-19 18:25 ?336次閱讀
    工業(yè)級4G路由器:<b class='flag-5'>TCP</b>/<b class='flag-5'>IP</b>與UDP<b class='flag-5'>協(xié)議</b>,解鎖工業(yè)物聯(lián)網(wǎng)高效傳輸新范式

    為什么會有TCP/IP協(xié)議?

    見了面,完全不能交流信息。因而他們需要定義一些共通的東西來進行交流,TCP/IP就是為此而生。TCP/IP不是一個協(xié)議,而是一個
    發(fā)表于 12-03 06:28

    Profinet轉(zhuǎn)TCP/IP工業(yè)智能網(wǎng)關(guān)破解S7-1200與TCP/IP攝像頭視覺通訊壁壘的方案

    某汽車零部件工廠的自動化裝配車間需實現(xiàn)產(chǎn)線全流程視覺監(jiān)控與質(zhì)量追溯。車間以西門子S7-1200 PLC作為核心控制器(支持Profinet協(xié)議),負責產(chǎn)線節(jié)拍控制、設備聯(lián)動及異常響應;同時部署TCP
    的頭像 發(fā)表于 11-02 13:52 ?1846次閱讀
    Profinet轉(zhuǎn)<b class='flag-5'>TCP</b>/<b class='flag-5'>IP</b>工業(yè)智能網(wǎng)關(guān)破解S7-1200與<b class='flag-5'>TCP</b>/<b class='flag-5'>IP</b>攝像頭視覺通訊壁壘的方案

    ADI Power Studio工作流程與工具概述

    、直觀的工作流程,利用準確的模型來仿真實際性能,并自動生成關(guān)鍵的物料清單和報告等內(nèi)容,幫助工程團隊更早做出更優(yōu)決策。
    的頭像 發(fā)表于 10-22 09:38 ?1357次閱讀

    恩智浦i.MX RT1180跨界MCU驅(qū)動EtherCAT的工作流程

    上周的分享已經(jīng)介紹了整個參考設計的概況和相關(guān)硬件資源。那么,本次會從軟件工程角度進行分享。首先來了解EtherCAT Slave工作流程。
    的頭像 發(fā)表于 09-28 14:20 ?1380次閱讀
    恩智浦i.MX RT1180跨界MCU驅(qū)動EtherCAT的<b class='flag-5'>工作流程</b>

    電芯自動面墊分選裝盒生產(chǎn)線的工作流程解析

    電芯自動面墊分選裝盒生產(chǎn)線的工作流程解析|深圳比斯特自動化
    的頭像 發(fā)表于 09-28 10:29 ?598次閱讀

    GraniStudio : TCP/IP(Socket)協(xié)議深度剖析

    在工業(yè)自動化與物聯(lián)網(wǎng)領域,TCP/IP(Socket)協(xié)議作為應用最廣泛的網(wǎng)絡通信標準,是實現(xiàn)設備間數(shù)據(jù)交互的核心技術(shù)。GraniStudio 軟件作為工業(yè)級零代碼開發(fā)平臺,其內(nèi)置的 TCP
    的頭像 發(fā)表于 08-03 22:20 ?1376次閱讀
    GraniStudio : <b class='flag-5'>TCP</b>/<b class='flag-5'>IP</b>(Socket)<b class='flag-5'>協(xié)議</b>深度剖析

    什么是Modbus TCP協(xié)議

    Modbus TCP是一種基于TCP/IP協(xié)議的Modbus通信協(xié)議,用于在客戶機和服務器之間進行數(shù)據(jù)通信。它常用于工業(yè)自動化控制、電力監(jiān)控
    的頭像 發(fā)表于 07-23 17:18 ?4854次閱讀
    什么是Modbus <b class='flag-5'>TCP</b><b class='flag-5'>協(xié)議</b>

    生物制藥自動化升級:Modbus TCP與Ethernet/IP協(xié)議轉(zhuǎn)換實踐

    為優(yōu)化生物制藥生產(chǎn)流程,我司計劃將現(xiàn)有的Allen-Bradley PLC控制系統(tǒng)與新型生物反應器進行集成。由于兩者采用不同的通信協(xié)議(AB PLC使用Modbus TCP,而生物反應器支持
    的頭像 發(fā)表于 06-17 18:34 ?768次閱讀
    生物制藥自動化升級:Modbus <b class='flag-5'>TCP</b>與Ethernet/<b class='flag-5'>IP</b><b class='flag-5'>協(xié)議</b>轉(zhuǎn)換實踐
    石首市| 新源县| 延长县| 成安县| 高阳县| 尉氏县| 临桂县| 乐清市| 柳州市| 美姑县| 若尔盖县| 板桥市| 庄浪县| 莱芜市| 铜川市| 大冶市| 鄂尔多斯市| 泸定县| 鹿泉市| 集安市| 铜川市| 莫力| 徐州市| 博爱县| 赤水市| 祁连县| 澄城县| 塘沽区| 阿城市| 集贤县| 静乐县| 阿拉尔市| 吉木萨尔县| 安阳县| 吴江市| 武山县| 达州市| 安庆市| 平江县| 涿鹿县| 泗水县|