操屁眼的视频在线免费看,日本在线综合一区二区,久久在线观看免费视频,欧美日韩精品久久综

新聞資訊

    計(jì)算機(jī)網(wǎng)絡(luò)

    物理層

    在物理層上所傳送的數(shù)據(jù)單位是比特。

    物理層( layer)的作用是實(shí)現(xiàn)相鄰計(jì)算機(jī)節(jié)點(diǎn)之間比特流的透明傳送,盡可能屏蔽掉具體傳輸介質(zhì)和物理設(shè)備的差異,使其上面的數(shù)據(jù)鏈路層不必考慮網(wǎng)絡(luò)的具體傳輸介質(zhì)是什么。“透明傳送比特流”表示經(jīng)實(shí)際電路傳送后的比特流沒(méi)有發(fā)生變化網(wǎng)絡(luò)協(xié)議是計(jì)算機(jī)網(wǎng)絡(luò)中服務(wù)器,對(duì)傳送的比特流來(lái)說(shuō),這個(gè)電路好像是看不見(jiàn)的。

    數(shù)據(jù)鏈路層

    數(shù)據(jù)鏈路層(data link layer)通常簡(jiǎn)稱為鏈路層。兩臺(tái)主機(jī)之間的數(shù)據(jù)傳輸,總是在一段一段的鏈路上傳送的,這就需要使用專門(mén)的鏈路層的協(xié)議。在兩個(gè)相鄰節(jié)點(diǎn)之間傳送數(shù)據(jù)時(shí),數(shù)據(jù)鏈路層將網(wǎng)絡(luò)層交下來(lái)的 IP 數(shù)據(jù)報(bào)組裝成幀,在兩個(gè)相鄰節(jié)點(diǎn)間的鏈路上傳送幀。每一幀包括數(shù)據(jù)和必要的控制信息(如同步信息,地址信息,差錯(cuò)控制等)。

    在接收數(shù)據(jù)時(shí),控制信息使接收端能夠知道一個(gè)幀從哪個(gè)比特開(kāi)始和到哪個(gè)比特結(jié)束。這樣,數(shù)據(jù)鏈路層在收到一個(gè)幀后,就可從中提出數(shù)據(jù)部分,上交給網(wǎng)絡(luò)層。控制信息還使接收端能夠檢測(cè)到所收到的幀中有無(wú)差錯(cuò)。如果發(fā)現(xiàn)差錯(cuò),數(shù)據(jù)鏈路層就簡(jiǎn)單地丟棄這個(gè)出了差錯(cuò)的幀,以避免繼續(xù)在網(wǎng)絡(luò)中傳送下去白白浪費(fèi)網(wǎng)絡(luò)資源。如果需要改正數(shù)據(jù)在鏈路層傳輸時(shí)出現(xiàn)差錯(cuò)(這就是說(shuō),數(shù)據(jù)鏈路層不僅要檢錯(cuò),而且還要糾錯(cuò)),那么就要采用可靠性傳輸協(xié)議來(lái)糾正出現(xiàn)的差錯(cuò)。這種方法會(huì)使鏈路層的協(xié)議復(fù)雜些。

    我一直的一個(gè)疑惑: 為什么有了 MAC 地址又需要 IP 地址, 或者說(shuō)為什么有了 IP 地址還要有MAC 地址 ,困擾了我很長(zhǎng)時(shí)間

    1. 1. MAC地址是數(shù)據(jù)鏈路層的概念, IP 是網(wǎng)絡(luò)層的概念, MAC地址只能實(shí)現(xiàn)在同一局域網(wǎng)下廣播找到對(duì)應(yīng)機(jī)器, 在當(dāng)不在同一局域網(wǎng)的時(shí)候, 就需要路由轉(zhuǎn)發(fā)等事情, 就需要 IP 來(lái)進(jìn)行.

    2. 2. 最開(kāi)始, 網(wǎng)絡(luò)層也不光是 IP協(xié)議一家獨(dú)大的, 還存在別的協(xié)議, 那么下層數(shù)據(jù)鏈路層需要提供服務(wù)就得用一個(gè)不受上層協(xié)議影響的一個(gè)東西來(lái)兼容. 也就是 MAC 地址,

    3. 3. IP 設(shè)計(jì)初衷是一人一個(gè)的,不是說(shuō)永久, 就是動(dòng)態(tài)唯一, 但是隨著 IPV4 的使用,并不夠用, 私網(wǎng)公網(wǎng)地址轉(zhuǎn)換的技術(shù),這就讓一個(gè)IP地址可以對(duì)應(yīng)很多臺(tái)終端,這樣其實(shí) 通過(guò) IP 就無(wú)法找到一個(gè)唯一的終端 .

    4. 4. 不同設(shè)備(手機(jī) 電腦 平板等)的 MAC 地址的格式規(guī)格都不一樣, 無(wú)法統(tǒng)一標(biāo)準(zhǔn) .

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

    努力盡最大可能交付

    思考:

    數(shù)據(jù)鏈路層未解決的問(wèn)題:

    數(shù)據(jù)鏈路層沒(méi)辦法保證可靠傳輸 (不重復(fù) 不丟失 不失序)

    同一網(wǎng)絡(luò)下 可以通過(guò)共享總線的方式 廣播 找到MAC地址 . 不同網(wǎng)絡(luò)下, 如何交換數(shù)據(jù) ?

    網(wǎng)絡(luò)層是否可以完成 ?

    網(wǎng)絡(luò)層無(wú)法保證可靠傳輸 網(wǎng)絡(luò)層負(fù)責(zé)將數(shù)據(jù)包傳輸 不保證重復(fù) 丟失 連續(xù) 這個(gè)問(wèn)題向上傳遞

    不同網(wǎng)絡(luò)下, 通過(guò)中間設(shè)備 路由器 來(lái)進(jìn)行分組轉(zhuǎn)發(fā), 找到對(duì)應(yīng)的 IP MAC地址

    網(wǎng)絡(luò)層提供的兩種服務(wù)

    虛電路 是一種邏輯電路 , 猶如電話線 ,兩端可直接對(duì)接.

    1、由網(wǎng)絡(luò)管理員提前配置好一條線路,以后當(dāng)數(shù)據(jù)從H1到H2時(shí),都會(huì)走這條線路。

    2、虛電路服務(wù)是邏輯線路

    數(shù)據(jù)報(bào)更像是 寫(xiě)信 ,寫(xiě)完之后不管怎么走,不管走哪條路最后爭(zhēng)取送到另一端

    1、網(wǎng)絡(luò)層向上只提供簡(jiǎn)單靈活的、無(wú)連接的、盡最大努力交付的數(shù)據(jù)報(bào)服務(wù)。

    2、網(wǎng)絡(luò)在發(fā)送分組時(shí)不需要建立連接,每個(gè)IP數(shù)據(jù)報(bào)都是獨(dú)立的。

    3、網(wǎng)絡(luò)層不提供服務(wù)質(zhì)量的承諾。即所傳送的分組可能出錯(cuò)、丟失、重復(fù)和失序(不按序到達(dá)終點(diǎn)),當(dāng)然也不保證分組傳送的時(shí)限。

    網(wǎng)絡(luò)中速率的單位是_網(wǎng)絡(luò)協(xié)議是計(jì)算機(jī)網(wǎng)絡(luò)中服務(wù)器_h.248協(xié)議中8個(gè)命令是

    兩者對(duì)比

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

    網(wǎng)絡(luò)協(xié)議 IP 是 TCP/IP 體系中兩個(gè)最主要的協(xié)議之一 .

    與 IP 協(xié)議配套使用的還有三個(gè)協(xié)議

    將網(wǎng)絡(luò)互相連接起來(lái)需要使用一些中間設(shè)備,中間設(shè)備又稱為 中間系統(tǒng) 或中繼設(shè)備.

    有一下五種中間設(shè)備:

    路由器屏蔽不同網(wǎng)絡(luò)之間的不同,組成一個(gè)虛擬互聯(lián)網(wǎng)絡(luò)

    虛擬互聯(lián)網(wǎng)絡(luò)也就是邏輯互聯(lián)網(wǎng)絡(luò), 他的意思就是互聯(lián)起來(lái)的各種物理網(wǎng)絡(luò)的異構(gòu)性本來(lái)是客觀存在的, 但是我們利用 IP 協(xié)議就可以使這些性能各異的網(wǎng)絡(luò)從用戶看起來(lái)好像是一個(gè)統(tǒng)一的網(wǎng)絡(luò).

    IP 地址就是給每個(gè)連接在互聯(lián)網(wǎng)上的主機(jī)(或路由器) 分配一個(gè)在全世界唯一的 32 位的標(biāo)識(shí)符

    分類(lèi) IP 地址:

    IP 地址的結(jié)構(gòu) : 網(wǎng)絡(luò)號(hào) + 主機(jī)號(hào)32位

    用戶使用 A B C 三類(lèi) , 三類(lèi)根據(jù) 地址中 網(wǎng)絡(luò)號(hào)跟主機(jī)號(hào)位數(shù)不一樣來(lái)分類(lèi)

    二進(jìn)制 0開(kāi)頭 A類(lèi) 10開(kāi)頭 B類(lèi) 110開(kāi)頭 C類(lèi)

    地址解析協(xié)議 (ARP)

    已經(jīng)知道一個(gè)主機(jī)的 IP , 如何找到對(duì)應(yīng)的硬件地址 ?

    ARP協(xié)議作用: 從網(wǎng)絡(luò)層使用的 IP 地址, 解析出在數(shù)據(jù)鏈路層使用的硬件地址,

    已知IP地址轉(zhuǎn)換為MAC地址的工作是由ARP協(xié)議來(lái)完成的

    每一個(gè)主機(jī)都設(shè)置有一個(gè)ARP高速緩存, 里面有所有在局域網(wǎng)上的各主機(jī)和路由器的IP 地址與硬件地址的映射表

    ARP是解決同一局域網(wǎng)上的主機(jī)或路由器的 IP 地址與物理地址的映射關(guān)系

    如果要找的主機(jī)和源主機(jī)不在同一個(gè)局域網(wǎng)上, 那么就通過(guò)arp找到一個(gè)位于局域網(wǎng)上的某個(gè)路由器的硬件地址 , 然后把分組發(fā)送給這個(gè)路由器的硬件地址, 然后把分組發(fā)送給這個(gè)路由器, 讓這個(gè)路由器轉(zhuǎn)發(fā)給下一個(gè)網(wǎng)絡(luò) ,剩下的工作就交給下一個(gè)網(wǎng)絡(luò)來(lái)做 .

    鏈路層封裝幀的時(shí)候是如何知道目標(biāo)mac地址的?

    1. 假設(shè)拓?fù)錇橹鳈C(jī)A——R1——R2——主機(jī)B

    2. 主機(jī)A向主機(jī)B發(fā)送PING,完整過(guò)程如下:

    3. 1)主機(jī)A發(fā)現(xiàn)目標(biāo)IP與自己不在同一網(wǎng)段,需要經(jīng)過(guò)路由器轉(zhuǎn)發(fā)

    4. 2)查路由表獲得R1IP地址及出接口(從哪個(gè)網(wǎng)卡發(fā)出),查ARP表無(wú)對(duì)應(yīng)條目

    5. 3)發(fā)起ARP請(qǐng)求,目的IPR1,目的MAC為廣播MACFF:FF:FF:FF:FF:FF),源IP和源MAC為主機(jī)A網(wǎng)卡的IPMAC

    6. 4R1收到ARP請(qǐng)求,將主機(jī)AIPMAC加入自己的ARP緩存表,用自身IPMAC響應(yīng)主機(jī)AARP請(qǐng)求。

    7. 5)主機(jī)A收到ARP響應(yīng),將R1IPMAC加入自己的ARP緩存表,用自身IPMAC為源,主機(jī)BIPR1MAC為目的,封裝數(shù)據(jù)幀,并將其轉(zhuǎn)發(fā)給R1(此時(shí)數(shù)據(jù)幀源IP為主機(jī)A,目的IP為主機(jī)B,源MAC為主機(jī)A,目的MACR1

    8. 6R1收到數(shù)據(jù)幀,根據(jù)目的IP查路由表,發(fā)現(xiàn)需要R2轉(zhuǎn)發(fā),查ARP表,無(wú)對(duì)應(yīng)條目。以自身IPMAC為源,目的IPR2,目的MAC為廣播發(fā)送ARP請(qǐng)求,并將來(lái)自主機(jī)A的數(shù)據(jù)幀丟棄。

    9. 7R2收到ARP請(qǐng)求,將R1IPMAC加入自己的ARP緩存表,用自身IPMAC響應(yīng)主機(jī)R2ARP請(qǐng)求。

    10. 8R1收到ARP響應(yīng),將R2IPMAC加入自己的ARP緩存表

    11. 9)主機(jī)A發(fā)現(xiàn)超時(shí),重發(fā)數(shù)據(jù)幀

    12. 10R1收到數(shù)據(jù)幀,查路由表,須經(jīng)R2轉(zhuǎn)發(fā),查ARP表,獲得R2MAC地址。將數(shù)據(jù)幀的源MAC修改為自身,目的MAC修改為R2,并將數(shù)據(jù)幀轉(zhuǎn)發(fā)給R2。(此時(shí)數(shù)據(jù)幀源IP為主機(jī)A,目的IP為主機(jī)B,源MACR1,目的MACR2

    13. 11R2收到數(shù)據(jù)幀,查路由表,發(fā)現(xiàn)主機(jī)B與自己直連,查ARP表,無(wú)對(duì)應(yīng)條目。發(fā)起ARP請(qǐng)求,并將來(lái)自主機(jī)A的數(shù)據(jù)包丟棄。

    14. 12)主機(jī)B收到ARP請(qǐng)求,將R2加入ARP緩存,并響應(yīng)。

    15. 13R2收到響應(yīng),將主機(jī)B加入ARP緩存

    16. 14)主機(jī)A發(fā)現(xiàn)超時(shí),重發(fā)數(shù)據(jù)幀(此時(shí)源IPA,目的IPB,源MACA,目的MACR1

    17. 15R1收到數(shù)據(jù)幀,查路由表arp表,修改源目MAC后轉(zhuǎn)發(fā)給R2(此時(shí)源IPA,目的IPB,源MACR1,目的MACR2

    18. 16R2收到數(shù)據(jù)幀,查路由表arp表,修改修改源目MAC后轉(zhuǎn)發(fā)給主機(jī)B(此時(shí)源IPA,目的IPB,源MACR2,目的MACB

    19. 17)主機(jī)B收到數(shù)據(jù)幀,并響應(yīng)主機(jī)APING請(qǐng)求,將響應(yīng)報(bào)文的源IP設(shè)為主機(jī)B,目的IPA,源MACB,目的MACR2,并將數(shù)據(jù)幀轉(zhuǎn)發(fā)給R2(此時(shí)源IPB,目的IPA,源MACB,目的MACR2

    20. 18R2收到數(shù)據(jù)幀,查路由表arp表,修改修改源目MAC后轉(zhuǎn)發(fā)給R1(此時(shí)源IPB,目的IPA,源MACR2,目的MACR1

    21. 19R1收到數(shù)據(jù)幀,查路由表arp表,修改修改源目MAC后轉(zhuǎn)發(fā)給主機(jī)A(此時(shí)源IPB,目的IPA,源MACR1,目的MACA

    22. 20)主機(jī)A收到主機(jī)B的響應(yīng)。每經(jīng)過(guò)一臺(tái)路由器,數(shù)據(jù)幀的源目IP不會(huì)改變,但源目MAC都會(huì)變化,所有設(shè)備都只知道與自己直連設(shè)備的MAC地址。

    網(wǎng)絡(luò)中速率的單位是_h.248協(xié)議中8個(gè)命令是_網(wǎng)絡(luò)協(xié)議是計(jì)算機(jī)網(wǎng)絡(luò)中服務(wù)器

    為什么不直接用硬件地址來(lái)進(jìn)行通信 ?

    因?yàn)槿澜绱嬖诟魇礁鳂拥木W(wǎng)絡(luò), 他們使用不同的硬件地址 . 要使這些異構(gòu)網(wǎng)絡(luò)能夠互相通信就必須進(jìn)行非常復(fù)雜的硬件地址轉(zhuǎn)換工作, 因此幾乎是不可能的事.

    IP 數(shù)據(jù)報(bào)的格式

    劃分子網(wǎng)和構(gòu)建超網(wǎng)

    子網(wǎng)掩碼

    為什么需要子網(wǎng)掩碼 ?

    1. 從一個(gè) IP 數(shù)據(jù)報(bào)的 首部 并無(wú)法判斷源主機(jī)或目的主機(jī)所連接的網(wǎng)絡(luò)是否進(jìn)行了子網(wǎng)劃分

    2. 使用子網(wǎng)掩碼可以找出 IP地址的子網(wǎng)部分

    ICMP協(xié)議

    ICMP 報(bào)文的種類(lèi)分為兩種 :

    ICMP詢問(wèn)報(bào)文

    虛擬專用網(wǎng) VPN

    傳輸層傳輸層協(xié)議概述

    如果把可靠傳輸交給網(wǎng)絡(luò)層 : 那么主機(jī)與主機(jī)之間就需要固定的線路, 而別的主機(jī)就沒(méi)辦法使用這個(gè)線路.

    復(fù)用與分用

    1. 個(gè)人總結(jié)理解: 復(fù)用與分用 , 兩臺(tái)主機(jī)同時(shí)通信多個(gè)不同的應(yīng)用程序, 傳到傳輸層的時(shí)候只有兩種協(xié)議 , tcp udp , tcp udp 就會(huì)根據(jù)不同的進(jìn)程所需的傳輸層協(xié)議進(jìn)行復(fù)用, 傳輸層傳到 網(wǎng)絡(luò)層 又會(huì)進(jìn)行 IP 復(fù)用, 復(fù)用(個(gè)人理解為 共用一種協(xié)議) 就可以和在一塊發(fā)送, 接收方在根據(jù)協(xié)議進(jìn)行 分用

    傳輸層提供應(yīng)用進(jìn)程間的邏輯通信

    網(wǎng)絡(luò)層與傳輸層的區(qū)別 :

    1. 網(wǎng)絡(luò)層是為主機(jī)間提供邏輯通信

    2. 傳輸層是為應(yīng)用進(jìn)程之間提供端到端的邏輯通信

    傳輸層的兩個(gè)主要協(xié)議 :

    用戶數(shù)據(jù)報(bào)協(xié)議 UDP

    網(wǎng)絡(luò)中速率的單位是_h.248協(xié)議中8個(gè)命令是_網(wǎng)絡(luò)協(xié)議是計(jì)算機(jī)網(wǎng)絡(luò)中服務(wù)器

    UDP 首部 組成 源端口 目的端口 長(zhǎng)度 校驗(yàn)和 各占 2 字節(jié)

    校驗(yàn)和校驗(yàn)的是 偽首部中 IP 與 端口 才能確定一個(gè)唯一的值 .

    傳輸控制協(xié)議 TCP 概述

    TCP 連接是一條虛連接而不是一條真正的物理連接.

    TCP 根據(jù)對(duì)方給出的窗口值和擁塞程度來(lái)決定一個(gè)報(bào)文段包含多少個(gè)字節(jié)

    TCP連接的端點(diǎn)不是主機(jī), 不是主機(jī)的 IP 地址 , 不是應(yīng)用進(jìn)程, 也不是運(yùn)輸層協(xié)議的端口 .

    TCP 連接的端點(diǎn)叫做套接字

    TCP協(xié)議如何保證可靠傳輸(必看)9

    套接字 = IP + 端口號(hào)

    可靠傳輸?shù)墓ぷ髟?/p>

    停止等待協(xié)議

    “停止等待” 就是每發(fā)送完一個(gè)分組就停止發(fā)送, 等待對(duì)方確認(rèn). 在收到確認(rèn)后再發(fā)送下一個(gè)分組 .

    可能有三種差錯(cuò)情況 :

    M1 丟失

    B 回復(fù) ACK 丟失 , A并沒(méi)有收到不知道發(fā)送成功與否

    都沒(méi)有丟失,但是饒了遠(yuǎn)路

    累計(jì)確認(rèn):在流水線傳輸時(shí),不用每個(gè)分組都給確認(rèn),確認(rèn)收到連續(xù)最大的分組就可,表示前面的分組全部收到。

    網(wǎng)絡(luò)中速率的單位是_網(wǎng)絡(luò)協(xié)議是計(jì)算機(jī)網(wǎng)絡(luò)中服務(wù)器_h.248協(xié)議中8個(gè)命令是

    TCP連接的每一端都必須設(shè)有兩個(gè)窗口 發(fā)送窗口 和 接受窗口, 這四個(gè)窗口處于動(dòng)態(tài)變化中 .

    TCP 的可靠傳輸是基于 字節(jié)的序號(hào) 進(jìn)行控制, TCP 所有的確認(rèn)都是基于序號(hào)而不是基于報(bào)文段 .

    TCP 報(bào)文段的首部格式

    雖然 TCP 是基于 報(bào)文段傳輸?shù)? 但是報(bào)文段中 是基于 數(shù)據(jù)流傳輸?shù)?, 相當(dāng)于報(bào)文段是一個(gè)總概括, 我這次要給你的字節(jié)流是多少, 收到多少 , 這些字節(jié)流的序號(hào) , 報(bào)文段是一個(gè)載體,概括.

    序號(hào) : 我這次給你發(fā)送的數(shù)據(jù)起始點(diǎn) . 我上次給你發(fā)到了 5 收到了, 這次發(fā)送是 6 開(kāi)始. 4 字節(jié)

    確認(rèn)號(hào) : 上次發(fā)到我收到了 幾號(hào) 字節(jié)的序號(hào), 下次給我發(fā)就從這個(gè)發(fā)起 . 假如我已經(jīng)收到 5 , 那么我下次期望開(kāi)始的是 6 這個(gè)數(shù)就是 6 . 4 字節(jié)

    A 發(fā)給 B 序號(hào)是 x 從 X 發(fā)送 到 Y 確認(rèn)號(hào)就是你上次給我發(fā)的我收到了 這次我想要 n 開(kāi)始的序號(hào)

    B 收到 A 的報(bào)文段 給A 回復(fù) 中 序號(hào)就是 行 你想要 n 開(kāi)始 那我就從 n 開(kāi)始 , 確認(rèn)號(hào) 你上次發(fā)給我到 y 的字節(jié)序號(hào)我也收到了 你下次給我發(fā) 從 y + 1 的位置發(fā)

    1. URG 緊急指針 配合緊急指針 緊急指針有緊急數(shù)據(jù)的位置


    2. ACK 當(dāng)?shù)谝淮芜B接的時(shí)候 其實(shí)是沒(méi)有數(shù)據(jù)的 0


    3. PSH 當(dāng)為 1 時(shí) 就全部推給應(yīng)用進(jìn)程, 如果是 0 就等緩存填滿 而不是來(lái)一位推一位


    4. RST 當(dāng)RST 1 時(shí), 表明 TCP 連接送出現(xiàn)差錯(cuò), 必須釋放連接 , 然后重新建立連接


    5. SYN 當(dāng) SYN1 表示這是一個(gè)連接請(qǐng)求 正在進(jìn)行連接


    6. FIN 釋放連接


    7. 窗口 發(fā)送方的接收窗口 你根據(jù)我的接收窗口大小 修改你的 發(fā)送窗口的大小 2字節(jié)


    8. 校驗(yàn)和 2 字節(jié)

    這的窗口是接收窗口

    TCP 的滑動(dòng)窗口 是以字節(jié)為單位

    加權(quán)平均往返時(shí)間 (RTT)

    TCP 的流量控制

    利用滑動(dòng)窗口實(shí)現(xiàn)流量控制

    流量控制就是讓發(fā)送方的發(fā)送速率不要太快, 既要讓接收方來(lái)得及接收, 也不要使網(wǎng)絡(luò)擁塞 .

    當(dāng)滑動(dòng)窗口的 大小為 0 時(shí) , 那么發(fā)送端沒(méi)法發(fā)送數(shù)據(jù) , 如何知道接收端的窗口的大小 ?

    TCP 的擁塞控制

    在某段時(shí)間, 若對(duì)網(wǎng)絡(luò)中某些資源的需求超過(guò)了該資源所能提供的可用部分 ,網(wǎng)絡(luò)的性能就要變壞. 這種現(xiàn)象稱為擁塞.

    出現(xiàn)擁塞的原因 : 對(duì)資源需求 > 可用資源

    擁塞控制就是防止過(guò)多的數(shù)據(jù)注入到網(wǎng)絡(luò)中, 是網(wǎng)絡(luò)中的路由器和鏈路不至過(guò)載

    當(dāng)前網(wǎng)絡(luò)朝著高速化的方向發(fā)展, 這很容易出現(xiàn)緩存不夠大而造成分組丟失. 但分組丟失是網(wǎng)絡(luò)發(fā)生擁塞的征兆而不是原因,

    因?yàn)榘l(fā)生分組丟失的情況有很多.

    TCP采用基于窗口的方式進(jìn)行擁塞控制, TCP 發(fā)送方維持一個(gè)擁塞窗口

    收到三個(gè)相同的確認(rèn) :

    網(wǎng)絡(luò)協(xié)議是計(jì)算機(jī)網(wǎng)絡(luò)中服務(wù)器_h.248協(xié)議中8個(gè)命令是_網(wǎng)絡(luò)中速率的單位是

    A 給 B 發(fā)送數(shù)據(jù) 1 B收到了 , 回了確認(rèn) 我要 2 然后 A 發(fā)送 2 , 3 , 4 , 5 這個(gè)時(shí)候如果 B一直沒(méi)有收到2網(wǎng)絡(luò)協(xié)議是計(jì)算機(jī)網(wǎng)絡(luò)中服務(wù)器,但是收到了了3 ,4 , 5 ,

    他每收到一個(gè)就會(huì)給A 回 我2 沒(méi)有收到 這樣 這三個(gè)回復(fù)就是相同的 就預(yù)示著可能會(huì)出現(xiàn)擁塞控制 ,采取措施.

    TCP 擁塞控制算法:

    慢開(kāi)始門(mén)限下 每個(gè)輪次 慢開(kāi)始 擁塞窗口加倍 , 加到慢開(kāi)始門(mén)限值時(shí), 就擁塞避免了, 每個(gè)輪次 擁塞窗口 +1 一直加到 超時(shí)的時(shí)候, 那這個(gè)時(shí)候 直接來(lái)個(gè)狠得, 把擁塞窗口 變?yōu)樽钚≈?1 , 然后慢開(kāi)始門(mén)限值 變?yōu)閯偛懦瑫r(shí)時(shí)候的擁塞窗口值的一半, 然后接著慢開(kāi)始 ,到慢開(kāi)始門(mén)限, 就 +1 增長(zhǎng), 擁塞避免, 然后等到出現(xiàn) 收到三次重復(fù)確認(rèn)的時(shí)候, 有擁塞的征兆的時(shí)候, 就把擁塞窗口值變?yōu)?剛才的一半 門(mén)限值也為原來(lái)的一半, 接著擁塞避免 +1 的走 . 為的就是在更多的輪次中發(fā)送更多的分組, 讓擁塞控制來(lái)的更晚一些.

    最后擁塞窗口為什么不變?yōu)?1 ?

    因?yàn)檫@個(gè)時(shí)候還能收到分組數(shù)據(jù), 證明還沒(méi)那么嚴(yán)重, 沒(méi)必要把擁塞窗口設(shè)置為 1 .這樣在每個(gè)輪次中發(fā)送的分組更多.

    TCP 的運(yùn)輸連接管理

    過(guò)程

    A —- > B SYN 請(qǐng)求建立連接 然后 seq 序號(hào) x

    B —- > A 好的 我接收到你給我發(fā)的數(shù)據(jù)了 ACK = 1 ack = x + 1 確認(rèn)號(hào) 剛發(fā)的 x + 1 之前的我都收到了, 全雙工通信 , 我也對(duì)你請(qǐng)求建立連接 SYN = 1 , seq = y

    A —- > B 好的 我收到你的請(qǐng)求 ACK = 1 , 你剛給我發(fā)的 y + 1之前的數(shù)據(jù)我也收到了 , 這次給你發(fā)的數(shù)據(jù) 是從 x+1 發(fā)的

    如果最后第四個(gè) A -> B 的數(shù)據(jù)報(bào)丟了怎么辦 . A 怎么知道 B 收沒(méi)收到我的收到信號(hào) .

    A 會(huì)在發(fā)送第四次數(shù)據(jù)報(bào)之后等 2MSL (報(bào)文最大生存時(shí)間)的時(shí)間 狀態(tài), 這個(gè)時(shí)候假如丟了, 那么 B 一直沒(méi)有收到消息, 就會(huì)超時(shí)重傳 , 只要我沒(méi)有收到B 傳回來(lái)的報(bào)文段證明剛才那個(gè)就發(fā)送成功了 可以斷開(kāi)連接.

    TCP粘包,拆包及解決方法

    當(dāng)客戶端發(fā)送一連串的消息到服務(wù)端, 而服務(wù)端只接受到一半或者兩個(gè)連續(xù)的消息. 服務(wù)端收到消息, 但無(wú)法解析

    為什么會(huì)發(fā)生TCP粘包、拆包?

    1. 發(fā)生TCP粘包、拆包主要是由于下面一些原因:


    2. 1.應(yīng)用程序?qū)懭氲臄?shù)據(jù)大于套接字緩沖區(qū)大小,這將會(huì)發(fā)生拆包。


    3. 2.應(yīng)用程序?qū)懭霐?shù)據(jù)小于套接字緩沖區(qū)大小,網(wǎng)卡將應(yīng)用多次寫(xiě)入的數(shù)據(jù)發(fā)送到網(wǎng)絡(luò)上,這將會(huì)發(fā)生粘包。


    4. 3.進(jìn)行MSS(最大報(bào)文長(zhǎng)度)大小的TCP分段,當(dāng)TCP報(bào)文長(zhǎng)度-TCP頭部長(zhǎng)度>MSS的時(shí)候?qū)l(fā)生拆包。


    5. 4.接收方法不及時(shí)讀取套接字緩沖區(qū)數(shù)據(jù),這將發(fā)生粘包。

    粘包、拆包解決辦法

    1. TCP本身是面向流的,作為網(wǎng)絡(luò)服務(wù)器,如何從這源源不斷涌來(lái)的數(shù)據(jù)流中拆分出或者合并出有意義的信息呢?通常會(huì)有以下一些常用的方法:


    2. 1、發(fā)送端給每個(gè)數(shù)據(jù)包添加包首部,首部中應(yīng)該至少包含數(shù)據(jù)包的長(zhǎng)度,這樣接收端在接收到數(shù)據(jù)后,通過(guò)讀取包首部的長(zhǎng)度字段,便知道每一個(gè)數(shù)據(jù)包的實(shí)際長(zhǎng)度了。


    3. 2、發(fā)送端將每個(gè)數(shù)據(jù)包封裝為固定長(zhǎng)度(不夠的可以通過(guò)補(bǔ)0填充),這樣接收端每次從接收緩沖區(qū)中讀取固定長(zhǎng)度的數(shù)據(jù)就自然而然的把每個(gè)數(shù)據(jù)包拆分開(kāi)來(lái)。


    4. 3、可以在數(shù)據(jù)包之間設(shè)置邊界,如添加特殊符號(hào),這樣,接收端通過(guò)這個(gè)邊界就可以將不同的數(shù)據(jù)包拆分開(kāi)。

    應(yīng)用層 ( 面試高頻問(wèn)點(diǎn) )

    應(yīng)用層的總結(jié)知識(shí)都是面試常問(wèn)的知識(shí) .

    DNS 過(guò)程

    1. 進(jìn)行DNSDomain Name System,域名系統(tǒng))查詢,它的作用是將域名轉(zhuǎn)化為具體的ip地址。


    2. 先談一下DNS的結(jié)構(gòu):


    3. 1)根域名服務(wù)器,全球只有13個(gè)不同ip地址的服務(wù)器,注意不是服務(wù)器只有13臺(tái),只是他們所代表的地址只有13個(gè),也就是存在鏡像服務(wù)器,一個(gè)地址可以對(duì)應(yīng)多個(gè)鏡像服務(wù)器。


    4. 2)根域名服務(wù)器之下的頂級(jí)域名服務(wù)器,如comnetcngov等。


    5. 3)頂級(jí)域名服務(wù)器之下的權(quán)威服務(wù)器,比如baidufacebook等。


    6. 4)權(quán)威服務(wù)器之下的資源記錄,比如wwwftpmail等。


    7. 查詢的過(guò)程如下:


    8. 1)首先會(huì)在瀏覽器緩存中去查詢,之前每瀏覽一個(gè)網(wǎng)站,瀏覽器都會(huì)在緩存中存有域名與ip地址的映射關(guān)系。不過(guò)緩存失效的時(shí)間不由瀏覽器決定,而由操作系統(tǒng)決定。


    9. 2)瀏覽器緩存中查詢不到后,之后會(huì)在系統(tǒng)緩存中查詢,由瀏覽器發(fā)起一個(gè)系統(tǒng)調(diào)用,查詢系統(tǒng)緩存中的數(shù)據(jù)。


    10. 3)系統(tǒng)緩存中也查詢不到后,將會(huì)去路由器緩存中查找。


    11. 4)路由器緩存中也找不到的話,將會(huì)從本地DNS服務(wù)器的緩存中查找,本地服務(wù)器即用戶自己配置的DNS服務(wù)器。


    12. 5)如果本地的DNS服務(wù)器也找不到的話,本地DNS將會(huì)發(fā)送請(qǐng)求至根域名服務(wù)器,根域名服務(wù)器中沒(méi)有相關(guān)緩存數(shù)據(jù)的時(shí)候,就會(huì)返回com頂級(jí)域名服務(wù)器的地址。然后本地DNS服務(wù)器再發(fā)送請(qǐng)求至com頂級(jí)域名服務(wù)器,com頂級(jí)域名服務(wù)器中查詢不到的話,就會(huì)返回baidu權(quán)威服務(wù)器的地址,然后本地DNS服務(wù)器再發(fā)送請(qǐng)求至baidu權(quán)威服務(wù)器,baidu權(quán)威服務(wù)器就會(huì)返回www主機(jī)地址。(這是一種迭代的過(guò)程,還有一種遞歸的過(guò)程。即local至根域名,根域名不直接返回com地址,而是發(fā)送請(qǐng)求至comcom發(fā)送請(qǐng)求至baidubaidu發(fā)送請(qǐng)求至wwwwww再返回給baidubaidu返回給comcom再返回給local)至此,整個(gè)DNS查詢步驟結(jié)束,現(xiàn)在瀏覽器拿到了域名對(duì)應(yīng)的ip地址。

網(wǎng)站首頁(yè)   |    關(guān)于我們   |    公司新聞   |    產(chǎn)品方案   |    用戶案例   |    售后服務(wù)   |    合作伙伴   |    人才招聘   |   

友情鏈接: 餐飲加盟

地址:北京市海淀區(qū)    電話:010-     郵箱:@126.com

備案號(hào):冀ICP備2024067069號(hào)-3 北京科技有限公司版權(quán)所有