欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
UNIX socket API 復習 基礎概念篇

一、socket分類(lèi):

     1.TCP socket: socke

               用于應用TCP協(xié)議傳輸,也就是當你通過(guò)此類(lèi)socket發(fā)出的數據包都會(huì )經(jīng)過(guò)TCP協(xié)議封包,形成流發(fā)送出去,通過(guò)socket(AF_INET/AF_INET6,SOCK_STREAM,IPPROTO_TCP);即可獲得.

     2.UDP socket

               用于應用UDP協(xié)議傳輸

               通過(guò)socket(AF_INET/AF_INET6,SOCK_DGRAM,IPPROTO_UDP);即可獲得

     3.STCP socket

              STCP是一種新興的協(xié)議,設計用于網(wǎng)絡(luò )電話(huà)等類(lèi)似的應用,跟TCP有點(diǎn)類(lèi)似,但功能更強大,支持多一條連接多個(gè)流,類(lèi)組播等功能。不過(guò)我工作兩年了還沒(méi)有碰到過(guò)這種協(xié)議的應用,書(shū)上寫(xiě)的這么好,就不明白怎么沒(méi)有人用,唉,通過(guò)socket(AF_INET/AF_INET6,SOCK_STREAM,IPPROTO_STCP);獲得socket句柄

     4.UNIX Domain socket

               它只能算是一個(gè)IPC(進(jìn)程間通信),用于本地上的程序通過(guò)這個(gè)機制相互通信,通過(guò)socket(AF_LOCAL,SOCK_STREAM,0);得到

     5.Raw socket

               很常用啦,通過(guò)他可以構造ICMP,ARP,RARP等傳輸層所的很多種包,當然你要是愿意構造一個(gè)沒(méi)人認識的結構包也可以,通過(guò)socket(AF_INET/AF_INET6,SOCK_RAW,protocol)可獲得,這里的protocol變量可以是IPPROTO_ICMP或是其它什么,具體在<netinet/in.h>中有定義

     6.Routing socket

                這個(gè)我估計很多寫(xiě)了網(wǎng)絡(luò )代碼很多年的都不知道這個(gè)socket的存在,上次面試有人就問(wèn)我怎么得到網(wǎng)口的地址,我就報了這個(gè),他一頭霧水,我還認為我說(shuō)錯了,除了這個(gè)功能還可以管理路由等等,這是一個(gè)和內核打交道的接口,通過(guò)socket(AF_ROUTE,SOCK_RAW,0)可以得到

     7.Key Management socket

               這個(gè)我就估計用的人更少了,當啟用IPsec模塊時(shí),通過(guò)這個(gè)socket可以管理SADB(安全關(guān)聯(lián)數據庫)等等都是跟加密有關(guān)的一些東西,估計我這輩子是用不上了,因為人家工具都把他包了又包,包的非常好,要做IPsec也用不著(zhù)去學(xué)這個(gè),通過(guò)socket(PF_KEY,SOCK_RAW,PF_KEY_V2);可以獲得

 

上面分的類(lèi),很常用的其實(shí)只有兩種

            1.TCP socket

             2.UDP socket

很少用到的也只有兩種

            1.UNIX Domain socket

            2. RAW socket

經(jīng)常通過(guò)工具使用它但是不用了解它的也有兩種

            1.Routing socket

            2.Key Management socket

剩下那個(gè)基本上不用它的就是

            STCP socket了

 

二、細述

       就重避輕,這里只講一下TCP socket和 UDP socket

       1.TCP socket特性

              說(shuō)TCP socket就不能不說(shuō)TCP協(xié)議,TCP協(xié)議有三個(gè)重點(diǎn)的重點(diǎn)(其實(shí)是相對UDP來(lái)說(shuō)的),一就是有狀態(tài),二就是自動(dòng)重發(fā),三就是流可控性,

             先說(shuō)狀態(tài)吧,就是一個(gè)TCP socket它在和對端TCP socket交互過(guò)程中會(huì )出現很多種狀態(tài),每一種狀態(tài)都表明兩端的協(xié)商程度,當這個(gè)都處理ESTABLISHED時(shí)就表求連接上了,也就引出了一個(gè)另一個(gè)特性,即虛擬連接性

            自動(dòng)重發(fā),也可以說(shuō)是可靠性(其實(shí)TCP并不可靠,愛(ài)因斯坦說(shuō)的,什么都只是相對的),為了實(shí)現可靠性,里面還包括很多元素,如給每個(gè)包編號,每發(fā)出一個(gè)包需要對方ACK(回復說(shuō)收到了),如果在一定的時(shí)間對方不說(shuō)收到還要重新再發(fā)等。

            流可控性,意思有兩個(gè),一就是說(shuō)他是流,經(jīng)典解析例子也就是你把一段數據從這邊send了5次去過(guò)去,另一邊要收到他并不一定就要read 5下才讀出這段數據(可能是4下,6下,10下等等),還就是這個(gè)流是可控制的(愛(ài)因斯坦說(shuō)的是相對的),它協(xié)議里在每次交互時(shí)都會(huì )告訴對方,我下一次能接收多少字節(通知空間,告訴對方別發(fā)太多,我處理不過(guò)來(lái)),主要意思是這個(gè)流他可以自控制,當你上層處理不來(lái)時(shí)他會(huì )自動(dòng)控制速度

            特性就這些了,上次面試,唉,還是面試,那個(gè)掉毛硬說(shuō)TCP協(xié)議里有流量控制的東西,見(jiàn)他的鬼吧,就我說(shuō)的那個(gè)流可控性能做流量控制嗎??你要能成功,那做專(zhuān)業(yè)做流量控制要全要去自殺

 

        2.TCP協(xié)議封包

                 應用程序     send (sock,data,2000); 成功

                 內核     socket 發(fā)送緩沖里    2000字節

                 內核 TCP封包      |tcp頭|data1(1460byte)|         |tcp頭|data2(540byte)|

                 內核 IP封包     |IP頭|tcp頭|data1(1460byte)|     |IP頭|tcp頭|data2(540byte)|

                 內核 以太封包    略

                 內核 網(wǎng)口驅動(dòng)發(fā)送隊列          略

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

            這里的MSS(最大TCP包長(cháng))是1460 ,MTU是1500, 以上有兩種可能:

                    如果MTU不是1500(特變態(tài)的那種,當然如果MTU不是1500一般MSS也不會(huì )有這么大),有可能IP要分片,也就是一個(gè)data1可能分為幾個(gè)IP包,可就有可能出現有的IP包里沒(méi)有TCP頭的喲,不過(guò)沒(méi)關(guān)系,他有分片標識,在IP重組時(shí)能在TCP重組前還原成一個(gè)IP包,不會(huì )出現一個(gè)沒(méi)有TCP頭的IP包而找不到去娘家的路。

                    還有一種可能就是到網(wǎng)口驅動(dòng)隊列排隊時(shí)發(fā)現隊滿(mǎn)了,這時(shí)驅動(dòng)可不管你那么多,它會(huì )丟掉的,不過(guò)好在他會(huì )通知IP層,IP層會(huì )通知TCP,TCP層會(huì )知道,它有機制重發(fā)的.

本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
傳輸模型和套接字
一文帶你了解Python Socket 編程
10、socket()函數用法詳解:創(chuàng )建套接字
??socket實(shí)現Ping命令打造?BOSS來(lái)了?摸魚(yú)神器?干貨巨多??建議收藏??
python之socket編程
Python的互聯(lián)網(wǎng)編程
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久