C++服務端面試準備(5)網(wǎng)絡協(xié)議相關

聲明:本文內(nèi)容純屬博主自己查找和歸納的個人所需的知識點飒硅,僅作參考柄驻,如有錯誤狐树,博主強烈希望您指出。如果您是某個知識點的原創(chuàng)博主鸿脓,如有需要抑钟,可聯(lián)系本人加上鏈接。本文內(nèi)容會根據(jù)博主所需進行更新野哭,希望大家多多關照在塔。

由于博主不是計算機專業(yè)出身,個人能力有限拨黔,本文內(nèi)容涉及到博主的知識盲區(qū)蛔溃,在這領域不知道需要掌握多少,只是把自己看到的大概歸納一下,請見諒城榛。也希望網(wǎng)友們可以指點指點揪利,謝謝!

網(wǎng)絡層次劃分

TCP/IP 4層模型:應用層狠持、傳輸層疟位、網(wǎng)絡層、網(wǎng)絡接口層
TCP/IP 5層模型:應用層喘垂、傳輸層甜刻、網(wǎng)絡層、數(shù)據(jù)鏈路層正勒、物理層
OSI 7層模型:應用層得院、表示層、會話層章贞、傳輸層祥绞、網(wǎng)絡層、數(shù)據(jù)鏈路層鸭限、物理層

  • 物理層:發(fā)送高低電壓即電信號

  • 數(shù)據(jù)鏈路層:電信號分組蜕径,以太網(wǎng)協(xié)議,單位為幀

  • 網(wǎng)絡層:對子網(wǎng)間的數(shù)據(jù)包進行路由選擇败京,IP協(xié)議兜喻,單位為IP數(shù)據(jù)報

  • 傳輸層:負責端到端的可靠數(shù)據(jù)傳輸,網(wǎng)關赡麦,TCP協(xié)議和UDP協(xié)議

  • 會話層:進程間的會話

  • 表示層:數(shù)據(jù)的加密朴皆、壓縮、格式轉(zhuǎn)換等

  • 應用層:應用程序

以太網(wǎng)數(shù)據(jù)包

???????以太網(wǎng)數(shù)據(jù)包的頭為14字節(jié)泛粹,包括源地址遂铡、目標地址、數(shù)據(jù)類型晶姊,尾4字節(jié)忧便。

???????數(shù)據(jù)部分最短46字節(jié),最長1500字節(jié)帽借,這個大小稱為MTU(最長傳輸單元),內(nèi)容為IP數(shù)據(jù)報超歌,報頭占20字節(jié)砍艾。因此以太網(wǎng)包最短64字節(jié),最長1518字節(jié)

???????數(shù)據(jù)部分超過MTU就分片發(fā)送巍举,分片需包含IP頭和TCP/UDP頭

???????以TCP為例脆荷,以太網(wǎng)數(shù)據(jù)包數(shù)據(jù)部分有2000字節(jié),包含IP頭20字節(jié),TCP頭20字節(jié)(UDP8字節(jié))蜓谋,以及應用數(shù)據(jù)1960字節(jié)梦皮,需要做分片操作,第一部分1500字節(jié)桃焕,包含IP頭20字節(jié)剑肯,TCP頭20字節(jié),應用數(shù)據(jù)1460字節(jié)(這個值稱為最大報文段長度MSS)观堂,第二部分540字節(jié)让网,包含IP頭20字節(jié),TCP頭20字節(jié)师痕,應用數(shù)據(jù)500字節(jié)

???????另外溃睹,1492的MTU值的來源,是因為PPPoE協(xié)議胰坟。PPP協(xié)議是寬帶運營商用于對用戶認證計費的(TCP/IP以太網(wǎng)無此功能)因篇。PPPoE頭尾一共8字節(jié),所以有效載荷MTU變小了笔横,原來有1500字節(jié)竞滓,現(xiàn)在只剩1492

TCP協(xié)議和UDP協(xié)議

???????TCP傳輸控制協(xié)議協(xié)議是是一種面向連接的、可靠的狠裹、基于字節(jié)流的傳輸層通信協(xié)議虽界。

???????TCP/IP協(xié)議是Internet最基本的協(xié)議、Internet國際互聯(lián)網(wǎng)絡的基礎涛菠,由網(wǎng)絡層的IP協(xié)議和傳輸層的TCP協(xié)議組成莉御。通俗而言:TCP負責發(fā)現(xiàn)傳輸?shù)膯栴},一有問題就發(fā)出信號俗冻,要求重新傳輸礁叔,直到所有數(shù)據(jù)安全正確地傳輸?shù)侥康牡亍6鳬P是給因特網(wǎng)的每一臺聯(lián)網(wǎng)設備規(guī)定一個地址迄薄。

???????UDP用戶數(shù)據(jù)報協(xié)議琅关,是面向無連接的通訊協(xié)議,由于通訊不需要連接讥蔽,所以可以實現(xiàn)廣播發(fā)送涣易。UDP通訊時不需要接收方確認,屬于不可靠的傳輸冶伞,可能會出現(xiàn)丟包現(xiàn)象新症,實際應用中要求程序員編程驗證(例如模擬TCP的連接和斷開,要保證數(shù)據(jù)的有效性响禽、有序性)徒爹。

???????TCP 與 UDP 的區(qū)別:TCP是面向連接的荚醒,可靠的字節(jié)流服務;UDP是面向無連接的隆嗅,不可靠的數(shù)據(jù)報服務界阁。

三次握手和四次揮手

三次握手:

  • 客戶端發(fā)送SYN報文給服務端,進入SYN-SEND狀態(tài)胖喳;
  • 服務端收到SYN報文后發(fā)送SYN+ACK報文給客戶端泡躯,進入SYN-RCVD狀態(tài);
  • 客戶端收到SYN+ACK報文后發(fā)送ACK報文給服務端禀晓,雙方進入ESTABLISED狀態(tài)

四次揮手:

  • 客戶端發(fā)送FIN報文給服務端精续,進入FIN_WAIT-1狀態(tài);
  • 服務端收到FIN報文粹懒,發(fā)送ACK報文重付,繼續(xù)回復完客戶端前面的事務,進入CLOSE-WAIT凫乖,客戶端收到ACK報文后進入FIN-WAIT-2狀態(tài)确垫,接收服務端剩下的回復;
  • 服務端也發(fā)送FIN報文給客戶端帽芽,進入LAST-ACK狀態(tài)删掀;
  • 客戶端收到FIN報文后發(fā)送ACK報文給服務端,進入TIME-WAIT狀態(tài)导街,如果服務端沒有收到ACK報文則可以重傳FIN報文披泪,服務端收到ACK報文后關閉服務

為什么3次握手

???????假設改為兩次握手,client端發(fā)送的一個連接請求在服務器滯留了搬瑰,由于連接超時client端會放棄款票,這個連接請求是無效的,但等到服務器收到這個無效的請求泽论,服務器還是會繼續(xù)認為client想要建立一個新的連接艾少,于是就建立連接了,服務器此時會一直等client端發(fā)數(shù)據(jù)翼悴,這樣就浪費掉很多server端的資源

為什么4次揮手

???????如果客戶端在收到服務器給它的斷開連接的請求之后缚够,回應完服務器就直接斷開連接的話,如果因為一些原因鹦赎,服務器沒有收到回應谍椅,會以為客戶端還沒關閉,這樣服務器就會一直開著古话。所以客戶端要等待兩個最長報文段壽命的時間毯辅,以便于服務器沒有收到請求之后重新發(fā)送請求。
???????在釋放連接的過程中會有一些無效的滯留報文煞额,這些報文在經(jīng)過2MSL的時間內(nèi)就可以發(fā)送到目的地,不會滯留在網(wǎng)絡中。這樣就可以避免在下一個連接中出現(xiàn)上一個連接的滯留報文了

Socket通信流程

  • 服務端這邊首先創(chuàng)建一個Socket(Socket())膊毁,然后綁定IP地址和端口號(Bind())胀莹,之后注冊監(jiān)聽(Listen()),這樣服務端就可以監(jiān)聽指定的Socket地址了婚温;
  • 客戶端這邊也創(chuàng)建一個Socket(Socket())并打開描焰,然后根據(jù)服務器IP地址和端口號向服務器Socket發(fā)送連接請求(Connect());
  • 服務器Socket監(jiān)聽到客戶端Socket發(fā)來的連接請求之后栅螟,被動打開荆秦,并調(diào)用Accept()函數(shù)接收請求,這樣客戶端和服務器之間的連接就建立好了力图;
  • 成功建立連接之后客戶端和服務器就可以進行數(shù)據(jù)交互(Receive()步绸、Send());
  • 交互完之后吃媒,各自關閉連接(Close())瓤介,交互結(jié)束。

擁塞控制

???????參考:TCP慢啟動赘那、擁塞避免刑桑、快速重傳、快速恢復

???????背景:為了防止網(wǎng)絡的擁塞現(xiàn)象募舟,TCP提出了一系列的擁塞控制機制祠斧。最初由V. Jacobson在1988年的論文中提出的TCP的擁塞控制由“慢啟動(Slow start)”和“擁塞避免(Congestion avoidance)”組成,后來TCP Reno版本中又針對性的加入了“快速重傳(Fast retransmit)”拱礁、“快速恢復(Fast Recovery)”算法琢锋,再后來在TCP NewReno中又對“快速恢復”算法進行了改進,近些年又出現(xiàn)了選擇性應答( selective acknowledgement,SACK)算法觅彰,還有其他方面的大大小小的改進吩蔑,成為網(wǎng)絡研究的一個熱點

???????TCP的擁塞控制主要原理依賴于一個擁塞窗口(cwnd)來控制,還有一個對端的接收窗口(rwnd)用于流量控制填抬。因此TCP的真正的發(fā)送窗口=min(rwnd, cwnd)烛芬。但是rwnd是由對端確定的,網(wǎng)絡環(huán)境對其沒有影響飒责,所以在考慮擁塞的時候我們一般不考慮rwnd的值赘娄,我們暫時只討論如何確定cwnd值的大小。

???????關于cwnd的單位宏蛉,在TCP中是以字節(jié)來做單位的遣臼,假設TCP每次傳輸都按照MSS大小來發(fā)送數(shù)據(jù),則可以認為cwnd按照數(shù)據(jù)包個數(shù)來做單位拾并,所以有時我們說cwnd增加1也就是相當于字節(jié)數(shù)增加1個MSS大小揍堰。

慢啟動
???????當新建連接時鹏浅,cwnd初始化為1個最大報文段(MSS)大小,發(fā)送端開始按照擁塞窗口大小發(fā)送數(shù)據(jù)屏歹,每當有一個報文段被確認隐砸,cwnd就增加1個MSS大小。這樣cwnd的值就隨著網(wǎng)絡往返時間(RTT)呈指數(shù)級增長蝙眶,事實上季希,慢啟動的速度一點也不慢,只是它的起點比較低一點而已幽纷。我們可以簡單計算下:

???????開始 ---> cwnd = 1
???????經(jīng)過1個RTT后 ---> cwnd = 2 * 1 = 2
???????經(jīng)過2個RTT后 ---> cwnd = 2 * 2 = 4
???????經(jīng)過3個RTT后 ---> cwnd = 4 * 2 = 8

???????如果帶寬為W式塌,那么經(jīng)過RTT*log2W時間就可以占滿帶寬

擁塞避免
???????從慢啟動可以看到,cwnd可以很快的增長上來友浸,從而最大程度利用網(wǎng)絡帶寬資源峰尝,但是cwnd不能一直這樣無限增長下去,一定需要某個限制尾菇。TCP使用了一個叫慢啟動門限(ssthresh)的變量境析,當cwnd超過該值后,慢啟動過程結(jié)束派诬,進入擁塞避免階段劳淆。對于大多數(shù)TCP實現(xiàn)來說,ssthresh的值是65536(同樣以字節(jié)計算)默赂。擁塞避免的主要思想是加法增大沛鸵,也就是cwnd的值不再指數(shù)級往上升,開始加法增加缆八。此時當窗口中所有的報文段都被確認時曲掰,cwnd的大小加1,cwnd的值就隨著RTT開始線性增加奈辰,這樣就可以避免增長過快導致網(wǎng)絡擁塞栏妖,慢慢的增加調(diào)整到網(wǎng)絡的最佳值。

???????擁塞現(xiàn)象的判定:TCP對每一個報文段都有一個定時器奖恰,稱為重傳定時器(RTO)吊趾,當RTO超時且還沒有得到數(shù)據(jù)確認,那么TCP就會對該報文段進行重傳瑟啃。當發(fā)生超時時论泛,出現(xiàn)擁塞的可能性就很大,某個報文段可能在網(wǎng)絡中某處丟失蛹屿,并且后續(xù)的報文段也沒有了消息屁奏,在這種情況下,TCP反應比較“強烈”:

???????1.把ssthresh降低為cwnd值的一半
???????2.把cwnd重新設置為1
???????3.重新進入慢啟動過程

???????從整體上來講错负,TCP擁塞控制窗口變化的原則是AIMD原則坟瓢,即加法增大勇边、乘法減小

慢啟動和擁塞避免線型圖

快速重傳
???????其實TCP還有一種情況會進行重傳:那就是收到3個相同的ACK。TCP在收到亂序到達包時就會立即發(fā)送ACK,TCP利用3個相同的ACK來判定數(shù)據(jù)包的丟失,此時進行快速重傳朝抖,快速重傳做的事情有:

???????1.把ssthresh設置為cwnd的一半
???????2.把cwnd再設置為ssthresh的值(具體實現(xiàn)有些為ssthresh+3)
???????3.重新進入擁塞避免階段

快速恢復
???????后來的“快速恢復”算法是在上述的“快速重傳”算法后添加的邢锯,當收到3個重復ACK時,TCP最后進入的不是擁塞避免階段谊囚,而是快速恢復階段怕享。快速重傳和快速恢復算法一般同時使用镰踏。

???????快速恢復的思想是“數(shù)據(jù)包守恒”原則函筋,即同一個時刻在網(wǎng)絡中的數(shù)據(jù)包數(shù)量是恒定的,只有當“老”數(shù)據(jù)包離開了網(wǎng)絡后奠伪,才能向網(wǎng)絡中發(fā)送一個“新”的數(shù)據(jù)包跌帐,如果發(fā)送方收到一個重復的ACK,那么根據(jù)TCP的ACK機制就表明有一個數(shù)據(jù)包離開了網(wǎng)絡绊率,于是cwnd加1谨敛。如果能夠嚴格按照該原則那么網(wǎng)絡中很少會發(fā)生擁塞,事實上擁塞控制的目的也就在修正違反該原則的地方滤否。

???????具體來說快速恢復的主要步驟是:

???????1.當收到3個重復ACK時脸狸,把ssthresh設置為cwnd的一半,把cwnd設置為ssthresh的值加3藐俺,然后重傳丟失的報文段炊甲。(加3的原因是因為收到3個重復的ACK,表明有3個“老”的數(shù)據(jù)包離開了網(wǎng)絡)
???????2.如果再收到同樣的重復的ACK欲芹,擁塞窗口就再增加1卿啡,但ssthresh的值不變,如果是新的重復的ACK菱父,則到達3個又重復第一步的動作颈娜。
???????3.當收到新的數(shù)據(jù)包的ACK時,把cwnd設置為第一步中的ssthresh的值滞伟。(原因是因為該ACK確認了新的數(shù)據(jù)揭鳞,說明從重復ACK時的數(shù)據(jù)都已收到,該恢復過程已經(jīng)結(jié)束梆奈,可以回到恢復之前的狀態(tài)了野崇,也即再次進入擁塞避免狀態(tài))

???????然而在實際中,一個重傳超時可能導致許多的數(shù)據(jù)包的重傳亩钟,當多個數(shù)據(jù)包從一個數(shù)據(jù)窗口中丟失時并且觸發(fā)快速重傳和快速恢復算法時乓梨,問題就產(chǎn)生了鳖轰。

???????因此NewReno出現(xiàn)了,它在Reno快速恢復的基礎上稍加了修改扶镀,可以恢復一個窗口內(nèi)多個包丟失的情況蕴侣。具體來講就是:Reno在收到一個新的數(shù)據(jù)的ACK時就退出了快速恢復狀態(tài)了,而NewReno需要收到該窗口內(nèi)所有數(shù)據(jù)包的確認后才會退出快速恢復狀態(tài)臭觉,從而更一步提高吞吐量

選擇性應答(SACK)算法
???????SACK就是改變TCP的確認機制昆雀,最初的TCP只確認當前已連續(xù)收到的數(shù)據(jù),SACK則把亂序等信息會全部告訴對方蝠筑,從而減少數(shù)據(jù)發(fā)送方重傳的盲目性狞膘。

???????例如,序號1什乙,2挽封,3,5臣镣,7的數(shù)據(jù)收到了辅愿,普通的ACK只會確認序列號4,而SACK會把當前的5忆某,7已經(jīng)收到的信息在SACK選項里面告知對端点待,對端就能直接重發(fā)序號4和6的數(shù)據(jù),不用再在序號6的數(shù)據(jù)上花時間褒繁,從而提高性能亦鳞。

???????當使用SACK的時候,NewReno算法可以不使用棒坏,因為SACK本身攜帶的信息就可以使得發(fā)送方有足夠的信息來知道需要重傳哪些包燕差,而不需要重傳哪些包。

HTTP(可選)

???????超文本傳輸協(xié)議HTTP是互聯(lián)網(wǎng)上應用最為廣泛的一種網(wǎng)絡協(xié)議坝冕。所有的WWW文件都必須遵守這個標準徒探。

請求包
???????當瀏覽器向Web服務器發(fā)出請求時,它向服務器傳遞了一個數(shù)據(jù)塊喂窟,也就是請求信息测暗,HTTP請求信息由3部分組成:

l 請求方法URI協(xié)議/版本
l 請求頭(Request Header)

l 請求正文

???????下面是一個HTTP請求的例子:

GET/sample.jspHTTP/1.1
Accept:image/gif.image/jpeg,/
Accept-Language:zh-cn
Connection:Keep-Alive
Host:localhost
User-Agent:Mozila/4.0(compatible;MSIE5.01;Window NT5.0)
Accept-Encoding:gzip,deflate

username=jinqiao&password=1234

HTTP 協(xié)議包括的請求:

  • GET:請求讀取由URL所標志的信息。
  • POST:給服務器添加信息(如注釋)磨澡。
    (Get是從服務器上獲取數(shù)據(jù)碗啄,Post是向服務器傳送數(shù)據(jù))
  • PUT:在給定的URL下存儲一個文檔。
  • DELETE:刪除給定的URL所標志的資源稳摄。
  • HEAD:類似于 GET 請求稚字,只不過返回的響應中沒有具體的內(nèi)容,用于獲取報頭
  • CONNECT:HTTP/1.1 協(xié)議中預留給能夠?qū)⑦B接改為管道方式的代理服務器
  • OPTIONS:允許客戶端查看服務器的性能。
  • TRACE:回顯服務器收到的請求胆描,主要用于測試或診斷瘫想。
  • PATCH:是對 PUT 方法的補充,用來對已知資源進行局部更新 昌讲。

???????請求頭和響應頭的信息參考:HTTP 請求包和響應包 (網(wǎng)絡篇)

響應包
???????HTTP響應也由3個部分構(gòu)成国夜,分別是:

l 協(xié)議狀態(tài)版本代碼描述
l 響應頭(Response Header)

l 響應正文

???????下面是一個HTTP響應的例子:

HTTP/1.1 200 OK
Server:Apache Tomcat/5.0.12
Date:Mon,6Oct2003 13:23:42 GMT
Content-Length:112

<html>
<head>
<title>HTTP響應示例<title>
</head>
<body>
Hello HTTP!
</body>
</html>

HTTP答應碼:

  • 1XX-信息類(Information),表示收到Web瀏覽器請求,正在進一步的處理中
  • 2XX-成功類(Successful),表示用戶請求被正確接收短绸,理解和處理例如:200 OK
  • 3XX-重定向類(Redirection),表示請求沒有成功车吹,客戶必須采取進一步的動作。
  • 4XX-客戶端錯誤(Client Error)醋闭,表示客戶端提交的請求有錯誤 例如:404 NOT Found礼搁,意味著請求中所引用的文檔不存在。
  • 5XX-服務器錯誤(Server Error)表示服務器不能完成對請求的處理:如 500

其他

???????想實現(xiàn)網(wǎng)絡通信目尖,每臺主機需具備四要素:本機的IP地址、子網(wǎng)掩碼扎运、網(wǎng)關的IP地址瑟曲、DNS的IP地址

獲取這四要素分兩種方式:
???????1.靜態(tài)獲取 即手動配置
???????2.動態(tài)獲取 通過dhcp獲取

???????DHCP(動態(tài)主機配置協(xié)議)是一個局域網(wǎng)的網(wǎng)絡協(xié)議。指的是由服務器控制一段lP地址范圍豪治,客戶機登錄服務器時就可以自動獲得服務器分配的lP地址和子網(wǎng)掩碼洞拨。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市负拟,隨后出現(xiàn)的幾起案子烦衣,更是在濱河造成了極大的恐慌,老刑警劉巖掩浙,帶你破解...
    沈念sama閱讀 217,734評論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件花吟,死亡現(xiàn)場離奇詭異,居然都是意外死亡厨姚,警方通過查閱死者的電腦和手機衅澈,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,931評論 3 394
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來谬墙,“玉大人今布,你說我怎么就攤上這事∈锰В” “怎么了部默?”我有些...
    開封第一講書人閱讀 164,133評論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長造虎。 經(jīng)常有香客問我傅蹂,道長,這世上最難降的妖魔是什么累奈? 我笑而不...
    開封第一講書人閱讀 58,532評論 1 293
  • 正文 為了忘掉前任贬派,我火速辦了婚禮急但,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘搞乏。我一直安慰自己波桩,他們只是感情好,可當我...
    茶點故事閱讀 67,585評論 6 392
  • 文/花漫 我一把揭開白布请敦。 她就那樣靜靜地躺著镐躲,像睡著了一般。 火紅的嫁衣襯著肌膚如雪侍筛。 梳的紋絲不亂的頭發(fā)上萤皂,一...
    開封第一講書人閱讀 51,462評論 1 302
  • 那天,我揣著相機與錄音匣椰,去河邊找鬼裆熙。 笑死,一個胖子當著我的面吹牛禽笑,可吹牛的內(nèi)容都是我干的入录。 我是一名探鬼主播,決...
    沈念sama閱讀 40,262評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼佳镜,長吁一口氣:“原來是場噩夢啊……” “哼僚稿!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起蟀伸,我...
    開封第一講書人閱讀 39,153評論 0 276
  • 序言:老撾萬榮一對情侶失蹤蚀同,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后啊掏,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體蠢络,經(jīng)...
    沈念sama閱讀 45,587評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,792評論 3 336
  • 正文 我和宋清朗相戀三年迟蜜,在試婚紗的時候發(fā)現(xiàn)自己被綠了谢肾。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,919評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡小泉,死狀恐怖芦疏,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情微姊,我是刑警寧澤酸茴,帶...
    沈念sama閱讀 35,635評論 5 345
  • 正文 年R本政府宣布,位于F島的核電站兢交,受9級特大地震影響薪捍,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,237評論 3 329
  • 文/蒙蒙 一酪穿、第九天 我趴在偏房一處隱蔽的房頂上張望凳干。 院中可真熱鬧,春花似錦被济、人聲如沸救赐。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,855評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽经磅。三九已至,卻和暖如春钮追,著一層夾襖步出監(jiān)牢的瞬間预厌,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,983評論 1 269
  • 我被黑心中介騙來泰國打工元媚, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留轧叽,地道東北人。 一個月前我還...
    沈念sama閱讀 48,048評論 3 370
  • 正文 我出身青樓刊棕,卻偏偏與公主長得像犹芹,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子鞠绰,可洞房花燭夜當晚...
    茶點故事閱讀 44,864評論 2 354

推薦閱讀更多精彩內(nèi)容

  • 運輸層協(xié)議概述 從通信和信息處理的角度看,運輸層向它上面的應用層提供通信服務飒焦,它屬于面向通信部分的最高層蜈膨,同時也是...
    srtianxia閱讀 2,407評論 0 2
  • 個人認為,Goodboy1881先生的TCP /IP 協(xié)議詳解學習博客系列博客是一部非常精彩的學習筆記牺荠,這雖然只是...
    貳零壹柒_fc10閱讀 5,054評論 0 8
  • 本書結(jié)構(gòu)是自頂向下的翁巍,所以請按下列順序閱讀: 1.計算機網(wǎng)絡自頂向下--應用層2.計算機網(wǎng)絡自頂向下--運輸層3....
    牛富貴兒閱讀 2,768評論 0 3
  • 今天中午咨詢完,我覺得我對呂洋打我的事情有了全新的認識休雌,我內(nèi)心更加的不確定那個球是不是百分之百的是呂洋拋的灶壶?我當時...
    簡單快樂的天使閱讀 122評論 0 0