<i id="yupd0"></i>
  • <i id="yupd0"></i>
  • <thead id="yupd0"></thead>
    <blockquote id="yupd0"></blockquote>
    <i id="yupd0"></i>
  • 碼迷,www.greeshyz.com
    首頁 > 其他好文 > 詳細

    網絡編程之網絡通信原理

    時間:2020-07-21 23:25:01      閱讀:58      評論:0      收藏:0      [點我收藏+]

    標簽:之間   icm   互聯網通信   理解   啟動   以太網   模型   text   arp   

    網絡存在的意義就是跨地域數據傳輸, 稱之為通信
    網絡 = 物理鏈接介質 + 互聯網通信協議

    互聯網的本質就是一系列的協議,總稱為‘互聯網協議’(Internet Protocol Suite)。互聯網協議的功能:定義計算機如何接入internet,以及接入internet的計算機通信的標準。

    OSI七層模型

    互聯網協議按照功能不同分為osi七層或tcp/ip五層或tcp/ip四層

    技術圖片

    OSI七層協議數據傳輸的封包與解包過程如下

    技術圖片

    將應用層,表示層,會話層并作應用層,從tcp/ip五層協議的角度來闡述每層的由來與功能,搞清楚了每層的主要協議, 就理解了網絡通信的原理

     

    物理層

    物理層的作用:

      (1) 規定怎樣在連接各種計算機的傳輸媒介上傳輸數據比特,不是指具體的傳輸媒介。

      (2)完成傳輸方式的轉換。因為在計算機內部多采用并行傳輸方式,但數據在通信線路上一般都是串行傳輸。

    負責發送電信號, 單純的電信號毫無意義, 必須對其進行分組, 一組物理層數據稱之為位。

     

    數據鏈路層: ethernet以太網協議

    數據鏈路層由來:單純的電信號0和1沒有任何意義,必須規定電信號多少位一組,每組什么意思

    數據鏈路層的功能:定義了電信號的分組方式

    數據鏈路:鏈路是一個結點到另一個結點之間的物理線路,而中間滅有其他交換結點。當傳輸數據時,還需要一些必要的通信協議來控制數據傳輸。因此,鏈路加上通信協議就是數據鏈路。

    在數據鏈路層中, 一組數據稱之為數據幀

    幀:數據鏈路層的協議數據單元為幀。數據鏈路層將網絡層下發的IP數據報封裝成幀

    數據幀分為兩部分: 頭部信息和數據, 頭部信息中包含有源地址與目標地址, 該地址是mac地址, 數據即網絡層的整體數據內容。

    以太網協議規定但凡接入互聯網的主機必須有一塊網卡, 每塊網卡在出廠時都燒制好一個獨一無二的地址-mac地址

    注意: 計算機通信采用的是廣播的方式, 即以太網協議的工作方式是廣播

    因為以太網協議的工作方式是廣播的方式, 所以, 如果一臺計算機發送信息時, 全世界將會收到, 所以這將導致出現問題, 那么就需要劃分網絡區域, 也就是網絡層的工作

     

    網絡層: IP協議, ARP協議

    網絡層要達到的目的: 劃分廣播域, 每一個廣播域但凡要接通外部, 一定要有一個網關幫內部的計算機轉發包到公網, 網關與外界通信走的是路由協議

    在網絡層中, 一組數據稱為數據包,  數據包分為頭信息和數據兩部分, 頭信息中包括源地址和目標地址(該地址是ip地址), 數據包含傳輸層整體的數據內容。

    注意: 一個合法的IPv4地址組成部分 = ip地址/子網掩碼地址

    IP協議是TCP/IP協議的核心,所有的TCP,UDP,IMCP,IGMP的數據都以IP數據格式傳輸。要注意的是,IP提供不可靠、無連接的數據傳送,賴其他層的協議進行差錯控制。不可靠指的是IP數據報不保證能成功的到達目的地,如果出現錯誤則選擇丟棄該數據,然后發送ICMP消息報給信源端。無連接指的是IP不提供任何后續數據報的狀態信息,每個數據報處理都是獨立的。如果一個信源發送了連續的兩個數據報,每個數據報選擇獨立的路由,兩個數據可能不同時到達。

    IP協議的作用主要有兩個,一個是為每一臺計算機分配IP地址,另一個是確定哪些地址在同一個子網絡。

    進行網絡通信的時候, 我們事先知道的是對方的ip地址, 但是計算機的底層通信是基于ethernet以太網協議的mac地址通信, 所以必須要將ip地址解析成mac地址, 這就要使用到ARP協議。

    ARP協議的工作流程
    # 兩臺計算機位于同一局域網內
    1. 會先獲取兩個通信的計算機的ip地址, 然后計算兩者的地址, 如果一樣, 拿到另一個計算機的mac地址即可
    2. 然后發送廣播包, 格式如下: 源mac 目標mac 源ip 目標ip 數據部分 發送端mac FF:FF:FF:FF:FF:FF 172.16.10.10/24 172.16.10.11/24 數據
    FF:FF:FF:FF:FF:FF有特殊的含義, 表示要獲取目標mac地址
    # 兩臺計算機不在同一局域網內 1. 會先獲取兩個通信的計算機的ip地址, 然后計算兩者的地址, 如果不一樣, 拿到網關的mac地址
    2. 然后發送廣播包, 格式如下: 源mac 目標mac 源ip 目標ip 數據部分 發送端mac FF:FF:FF:FF:FF:FF 172.16.10.10/24 172.16.10.11/24 數據 FF:FF:FF:FF:FF:FF有特殊的含義, 表示要獲取目標mac地址
    3. 然后網關將數據通過路由協議找到目標計算機, 然后得到目標的mac的地址

    這個包會以廣播的方式在發送端所處的自網內傳輸,所有主機接收后拆開包,發現目標ip為自己的,就響應,返回自己的mac

    ip地址+mac地址可以標識全世界范圍內獨一無二的計算機, 當然, 由于ARP協議的存在, ip地址也可以標識全世界范圍內獨一無二的計算機

     

    傳輸層: tcp/udp協議, 都是基于端口的協議

    傳輸層功能:建立端口到端口的通信

    端口范圍0-65535, 0-1023為系統占用端口

    TCP將用戶數據打包構成報文段,它發送數據時啟動一個定時器,另一端收到數據進行確認,對失序的數據重新排序,丟棄重復的數據。TCP提供一種面向連接的可靠的字節流服務,面向連接意味著兩個使用TCP的應用(B/S)在彼此交換數據之前,必須先建立一個TCP連接

    TCP三次握手建立連接的過程:

    1、請求端(客戶端)發送一個SYN段指明客戶打算連接的服務器的端口,以及初始序列號(ISN),這個SYN為報文段1.
    2、服務器發回包含服務器的初始序列號的SYN報文段(報文段2)作為應答。同時,將確認序號設置為客戶的ISN加1以對客戶的SYN報文段進行確認。一個SYN將占用一個字符。
    3、客戶必須將明確序號設置為服務器的ISN加1以對服務器的SYN報文段進行確認(報文段3)
    4、這三個報文段完成連接的建立,這個過程成為三次握手。

    TCP四次揮手終止連接的過程:

    1、客戶端進程發出連接釋放報文,并且停止發送數據。釋放數據報文首部,FIN=1,其序列號為seq=u(等于前面已經傳送過來的數據的最后一個字節的序號加1),此時,客戶端進入FIN-WAIT-1(終止等待1)狀態。 TCP規定,FIN報文段即使不攜帶數據,也要消耗一個序號。
    2、服務器收到連接釋放報文,發出確認報文,ACK=1,ack=u+1,并且帶上自己的序列號seq=v,此時,服務端就進入了CLOSE-WAIT(關閉等待)狀態。TCP服務器通知高層的應用進程,客戶端向服務器的方向就釋放了,這時候處于半關閉狀態,即客戶端已經沒有數據要發送了,但是服務器若發送數據,客戶端依然要接受。這個狀態還要持續一段時間,也就是整個CLOSE-WAIT狀態持續的時間。
    客戶端收到服務器的確認請求后,此時,客戶端就進入FIN-WAIT-2(終止等待2)狀態,等待服務器發送連接釋放報文(在這之前還需要接受服務器發送的最后的數據)。
    3、服務器將最后的數據發送完畢后,就向客戶端發送連接釋放報文,FIN=1,ack=u+1,由于在半關閉狀態,服務器很可能又發送了一些數據,假定此時的序列號為seq=w,此時,服務器就進入了LAST-ACK(最后確認)狀態,等待客戶端的確認。
    客戶端收到服務器的連接釋放報文后,必須發出確認,ACK=1,ack=w+1,而自己的序列號是seq=u+1,此時,客戶端就進入了TIME-WAIT(時間等待)狀態。注意此時TCP連接還沒有釋放,必須經過2∗MSL(最長報文段壽命)的時間后,當客戶端撤銷相應的TCB后,才進入CLOSED狀態。
    4、服務器只要收到了客戶端發出的確認,立即進入CLOSED狀態。同樣,撤銷TCB后,就結束了這次的TCP連接。可以看到,服務器結束TCP連接的時間要比客戶端早一些。

    技術圖片

    TCP總共有11種狀態:

    • LISTEN :等待連接。
    • SYN_SENT : 客戶端主動發起連接請求(發送 SYN n)。
    • SYN_RECV : 服務端接到連接請求后,響應 (發送 ACK n+1,SYN j)。
    • ESTABLISHED :連接建立成功(發送 ACK j+1)。
    • FIN_WAIT1 : 客戶端主動關閉連接,等待對方確認是否可以關閉(發送 FIN x)。
    • FIN_WAIT2 : 客戶端收到對方確定可以關閉回應(接收到ACK x+1)。
    • CLOSE_WAIT : 服務端準備關閉連接時的狀態,此時連接還為關閉。
    • LAST_ACK : 服務端發送可以關閉的消息(發送FIN y)。
    • CLOSING :客戶端接到服務器關閉連接的信息,發送連接正式關閉消息(接收到 FIN y,發送ACK y+1)。
    • TIME_WAIT : 客戶端進入time wait 時間,等2倍MSL 時間后,關閉連接。
    • CLOSED :服務端接到客戶端正式關閉消息后,關閉連接。(接收到 ACK y+1)

    注意: 當服務器大量處于TIME_WAIT狀態時, 意味著服務端正在經歷高并發

     

    應用層: 規定應用程序的數據格式

    TCP協議可以為各種各樣的程序傳遞數據,比如Email、WWW、FTP等等。那么,必須有不同協議規定電子郵件、網頁、FTP數據的格式,這些應用程序協議就構成了”應用層”。

    應用層協議定義了運行在不同端上的應用程序進程如何相互傳遞報文,其中包括了

    1)交換的報文類型,

    2)各種報文類型的語法,如報文中的各個字段以及這些字段是怎么描述的

    3)字段的語義,即這些字段中包含信息的含義

    4)一個進程何時以及如何發送報文,對報文進行響應的規則

     

    Socket抽象層

    我們知道兩個進程如果需要進行通訊最基本的一個前提是能夠唯一標示一個進程,在本地進程通訊中我們可以使用PID來唯一標示一個進程,但PID只在本地唯一,網絡中的兩個進程PID沖突幾率很大,這時候我們需要另辟它徑了,我們知道IP層的IP地址可以唯一標示主機,而TCP層協議和端口號可以唯一標示主機的一個進程,這樣我們可以利用IP地址+協議+端口號唯一標示網絡中的一個進程。

    能夠唯一標示網絡中的進程后,它們就可以利用Socket進行通信了,什么是Socket呢?我們經常把Socket翻譯為套接字,Socket是在應用層和傳輸層之間的一個抽象層,它把TCP/IP層復雜的操作抽象為幾個簡單的接口供應用層調用已實現進程在網絡中通信。

    技術圖片

     技術圖片

    網絡編程之網絡通信原理

    標簽:之間   icm   互聯網通信   理解   啟動   以太網   模型   text   arp   

    原文地址:https://www.cnblogs.com/featherwit/p/13356976.html

    (0)
    (0)
       
    舉報
    評論 一句話評論(0
    登錄后才能評論!
    迷上了代碼!
    91色国产论坛,久草99福利资源,青青草在线华人,99热在线视频观看免费,青青草a片免费看,青青草av视频导航,香蕉网站伊人大香蕉 青青碰人青青草免费 国产自拍偷拍在线播放 青青草华人在线av 伊人影院在线大香 无码大香蕉网伊人色 久久大香蕉视频网 青草精品资源在线 伊人大香蕉在线精品 97资源总站久久爱视频 自拍中文字幕 青青草手机在线视频 青青草久久爱大香蕉 国产青青草自拍 伊人大香蕉在线精品 97资源总站久久爱视频 自拍中文字幕 av图片在线看 久草视频福利免费资源站 自拍国产视频在线 www.琪琪色 爱色影爱色搞搞 97资源库 大香萑a久草视频 久草在线福利资站 青青草成人在线免费视频 久久精品国can视频在热 99热国产情侣偷拍 国产自拍 在线 凹凸分类视频97免费 av啪啪中文网站 青青草91自拍视频 奇米影视第四色 国产无限制自拍 大香蕉伊人精品在线 久久手机看片国产免费 无码大香蕉网伊人色 亚洲激情色 久草99福利资源 狼人色终合网站 91色国产色去色 2019奇米777奇米网 久久草妹妹色 米奇影院888奇米色 青青青草成人免费现看 超碰自拍 在线99热这里精品 色琪琪永久无码 伊人大香蕉成人视频综合 国产自拍视频在线 大香蕉伊人久操在线 青青草久草热久久草 偷拍自拍第四色 奇米网电影网 超碰99久久天天拍日日操 天天拍天天拍久草片 激情图片,激情小说 超碰碰av大香蕉伊人 久草97大香蕉伊人 美女伊人色情香蕉网站 青青草华人免费视频在线 大香蕉伊人久草视频 奇米网在线手机在线 青草七次郞视频观看 青青草公开在线观看 狠狠夜夜干大香蕉伊人 777奇米网 日逼视频网站 欧美人和动物XXX 大香蕉色 欧美 国产 奇米影院首页 大香蕉伊人久久爱在线 青青青草免费手机播放 国产青青草 欧美一级黑寡妇夜夜干 啪啪 国产精品 东方aⅴ在线看 手机看A片 777米奇色狠狠俺去啦 香蕉网站伊人中文字幕 久操在线新免费视频 伊人影院在线大香 大香蕉成人伊人在线视频 青青草成人在线视频观看 91国产自拍偷拍视频 青青草色爱久久 精品国产自拍 小色狗 琪琪热热色无码 影音先锋大香蕉久草资源 小明视频看看成人免费 俺去了色网婷婷色 久久色情片 超碰在线青青草 超碰视频起碰视频 国产偷拍自拍影音先锋 小明视频看看成人免费 俺去了色网婷婷色 久久色情片 超碰在线青青草 超碰视频起碰视频 国产偷拍自拍影音先锋 老鸭窝在线视频 www.奇米在线四色 老版本日本怡春院 强奸乱伦在线观看 青青草在观视频 色琪琪在线视频原网 欧美色色大香焦 欧美色热图 亚洲香蕉手机在线观看视频 偷拍偷窥自拍网站 超91在线观看 最新奇米奇色777在线 婷婷网站 微拍秒拍福利视频 自拍在线 精品视频 欧美情色无码在线 久草激情视频 午夜高清影院在线观看 第四色青娱乐奇米影视 青青草在线综合 99热这里有精品 自拍偷拍影音先锋 国产自拍 先锋影音 成人在线视频97 久草在线免费观看大香蕉 99er久久国产精品在线 精品国产在线偷拍 啪啪青青草视频 国内偷拍 亚洲 大香蕉成人手机在线 在线伊人大香蕉手机版 久草伊人久草视频 伊人久久青青草综合网 青青草手机在线视频 青青草久久爱大香蕉 国产青青草自拍 伊人大香蕉在线精品 97资源总站久久爱视频 自拍中文字幕 av图片在线看 久草视频福利免费资源站 自拍国产视频在线 www.琪琪色 爱色影爱色搞搞 97资源库 大香蕉在线视频免费观看 a片直播妹子在线视频 a.v在线视频 开心五月色婷婷免费 香蕉福利视频在线观 青青草成人+激情偷拍 青青草视频大香蕉伊人网 av啪啪中文网站 青青草91自拍视频 奇米影视第四色 国产无限制自拍 大香蕉伊人精品在线 久久手机看片国产免费 无码大香蕉网伊人色 亚洲激情色 久草99福利资源 狼人色终合网站 91色国产色去色 2019奇米777奇米网 久久草妹妹色 米奇影院888奇米色 青青青草成人免费现看 超碰自拍 在线99热这里精品 色琪琪永久无码 伊人大香蕉成人视频综合 国产自拍视频在线 大香蕉伊人久操在线 青青草久草热久久草 偷拍自拍第四色 奇米网电影网 超碰99久久天天拍日日操 天天拍天天拍久草片 激情图片,激情小说 青青草久草热久久草 偷拍自拍第四色 奇米网电影网 超碰99久久天天拍日日操 天天拍天天拍久草片 操好屌色 米奇先锋 久草 偷拍 亚洲,偷拍,自拍,精品 伊人大香蕉综合色 大香蕉久久久 成人色啪啪 大香蕉色看片 欧美自拍在线 久久色综合网站xoxo 久热草大香蕉在线视频 久久大香蕉视频网 肏逼免费视频在线 网友自拍偷拍 欧美 国产 奇米影院首页 大香蕉伊人久久爱在线 青青青草免费手机播放 国产青青草 欧美一级黑寡妇夜夜干 啪啪 国产精品 东方aⅴ在线看 手机看A片 777米奇色狠狠俺去啦 香蕉网站伊人中文字幕 久操在线新免费视频 伊人影院在线大香 大香蕉成人伊人在线视频 青青草成人在线视频观看 91国产自拍偷拍视频 青青草色爱久久 精品国产自拍 小色狗 琪琪热热色无码 影音先锋大香蕉久草资源 小明视频看看成人免费 俺去了色网婷婷色 久久色情片 超碰在线青青草 欧美激情图片 自拍超碰 久草视频在线 天天 综合色伊人网 大香蕉视频成人中文网 大香蕉伊人欧美色 久热在线播放中文字幕 青青草久草福利 欧美色色大香焦 欧美色热图 亚洲香蕉手机在线观看视频 偷拍偷窥自拍网站 超91在线观看 最新奇米奇色777在线 婷婷网站 微拍秒拍福利视频 自拍在线 精品视频 欧美情色无码在线 久草激情视频 午夜高清影院在线观看 第四色青娱乐奇米影视 青青草在线综合 99热这里有精品 自拍偷拍影音先锋 国产自拍 先锋影音 成人在线视频97 久草在线免费观看大香蕉 99er久久国产精品在线
    久久草2019在线观看 99这里有精品 大香蕉免费公开青青草 狠狠色丁香婷婷综合 国产久草福利手机在线 青青草黄色三级网站 大香蕉他也啪 青青草视频大香蕉伊人网 久久爱大香焦在线视频 日本有码视频 成人视屏 国产精品91在线 91国产自拍小视频 伊人狼人香蕉网小说 青青草香蕉草久在线 av青青操 亚洲自拍欧美 91 国产 在线 97超碰资源共享 青青草伊人大香蕉 奇米四色网 国産偷拍91 精品国产在线自拍 伊人大香蕉色琪琪影院 caoprom超碰 青青视频在线视频 开心五月婷婷色婷在线 第四色色 Caoprom超碰视频 亚洲图片欧美图色姐 天天干情色网 操妹妹干妹妹 丁香五月婷婷伊人大香蕉 国产精品自拍偷拍在线 青青青成人社区 成人av在线 碰碰视频在线免费播放 影音先锋 小说色 久久草大香蕉 亚洲情色狼人网 思思久久re热线播放 久久草超碰 播播影院私人影院 大香蕉他也啪 米奇影视 成人国产老鸭窝 伊人大香蕉久久天天啪 男人的天堂 国产精品自偷拍 很很鲁在线97