Socket 是如何工作的既荚?

Socket本質(zhì)是網(wǎng)絡通信編程接口(API)贴唇,平時我們用到的high-level網(wǎng)絡編程底層實現(xiàn)其實就是Socket搀绣。它面向的是兩個傳輸層協(xié)議的編程,分別是UDP和TCP戳气,UDP是不可靠傳輸協(xié)議(比如TFTP链患、TFTP、SNMP)瓶您,TCP是可靠傳輸協(xié)議(比如HTTP麻捻、FTP纲仍、Telnet)。 這里不作贅述贸毕,有興趣的可以查資料了解郑叠,推薦找網(wǎng)絡原理的書看。

Chart

socket connect

通信過程

首先服務端需要在某個端口上發(fā)起監(jiān)聽(listen)明棍, 客戶端需要知道服務端的IPPort(端口號)乡革,接著向服務端發(fā)起socket連接請求。在
發(fā)起連接的時候摊腋,客戶端也會帶上本地的Port和IP沸版,一般由系統(tǒng)去做這個事情。

客戶端向服務器發(fā)起socket連接

如果沒有出現(xiàn)問題的話兴蒸,服務器接受(accept)客戶端的請求视粮。之后同樣創(chuàng)建一個socket套接字,綁定(bind)到本地的端口橙凳,并設置它遠程端點(client)的IPPort蕾殴。服務器會繼續(xù)創(chuàng)建一個新的socket來監(jiān)聽(listen)客戶端的請求。

服務端創(chuàng)建socket連接

在客戶端岛啸,當一個連接被接受(accept)時区宇,socket就創(chuàng)建成功了,客戶端使用這個socket和服務器進行數(shù)據(jù)傳輸值戳。
服務端和客戶端通過write or read來進行通信议谷。

socket連接是兩個應用在網(wǎng)絡中溝通的橋梁,socket綁定的端口號用來標識數(shù)據(jù)是被發(fā)送到指定的應用的堕虹。

最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末卧晓,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子赴捞,更是在濱河造成了極大的恐慌逼裆,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,183評論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件赦政,死亡現(xiàn)場離奇詭異胜宇,居然都是意外死亡,警方通過查閱死者的電腦和手機恢着,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,850評論 3 399
  • 文/潘曉璐 我一進店門桐愉,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人掰派,你說我怎么就攤上這事从诲。” “怎么了靡羡?”我有些...
    開封第一講書人閱讀 168,766評論 0 361
  • 文/不壞的土叔 我叫張陵系洛,是天一觀的道長俊性。 經(jīng)常有香客問我,道長描扯,這世上最難降的妖魔是什么定页? 我笑而不...
    開封第一講書人閱讀 59,854評論 1 299
  • 正文 為了忘掉前任,我火速辦了婚禮绽诚,結果婚禮上典徊,老公的妹妹穿的比我還像新娘。我一直安慰自己憔购,他們只是感情好宫峦,可當我...
    茶點故事閱讀 68,871評論 6 398
  • 文/花漫 我一把揭開白布岔帽。 她就那樣靜靜地躺著玫鸟,像睡著了一般。 火紅的嫁衣襯著肌膚如雪犀勒。 梳的紋絲不亂的頭發(fā)上屎飘,一...
    開封第一講書人閱讀 52,457評論 1 311
  • 那天,我揣著相機與錄音贾费,去河邊找鬼钦购。 笑死,一個胖子當著我的面吹牛褂萧,可吹牛的內(nèi)容都是我干的押桃。 我是一名探鬼主播,決...
    沈念sama閱讀 40,999評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼导犹,長吁一口氣:“原來是場噩夢啊……” “哼唱凯!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起谎痢,我...
    開封第一講書人閱讀 39,914評論 0 277
  • 序言:老撾萬榮一對情侶失蹤磕昼,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后节猿,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體票从,經(jīng)...
    沈念sama閱讀 46,465評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,543評論 3 342
  • 正文 我和宋清朗相戀三年滨嘱,在試婚紗的時候發(fā)現(xiàn)自己被綠了峰鄙。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,675評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡太雨,死狀恐怖先馆,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情躺彬,我是刑警寧澤煤墙,帶...
    沈念sama閱讀 36,354評論 5 351
  • 正文 年R本政府宣布梅惯,位于F島的核電站,受9級特大地震影響仿野,放射性物質(zhì)發(fā)生泄漏铣减。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 42,029評論 3 335
  • 文/蒙蒙 一脚作、第九天 我趴在偏房一處隱蔽的房頂上張望葫哗。 院中可真熱鬧,春花似錦球涛、人聲如沸劣针。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,514評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽捺典。三九已至,卻和暖如春从祝,著一層夾襖步出監(jiān)牢的瞬間襟己,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,616評論 1 274
  • 我被黑心中介騙來泰國打工牍陌, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留擎浴,地道東北人。 一個月前我還...
    沈念sama閱讀 49,091評論 3 378
  • 正文 我出身青樓毒涧,卻偏偏與公主長得像贮预,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子契讲,可洞房花燭夜當晚...
    茶點故事閱讀 45,685評論 2 360

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

  • 網(wǎng)絡編程 一.楔子 你現(xiàn)在已經(jīng)學會了寫python代碼怀泊,假如你寫了兩個python文件a.py和b.py茫藏,分別去運...
    go以恒閱讀 2,024評論 0 6
  • 1.1 TCP/IP協(xié)議組 TCP/IP協(xié)議(傳輸控制協(xié)議)由網(wǎng)絡層的IP協(xié)議和傳輸層的TCP協(xié)議組成 IP層負責...
    F麥子閱讀 2,791評論 0 25
  • 最近在學習Python看了一篇文章寫得不錯,是在腳本之家里的忠藤,原文如下挟伙,很有幫助: 一、網(wǎng)絡知識的一些介紹 soc...
    qtruip閱讀 2,725評論 0 6
  • 計算機網(wǎng)絡概述 網(wǎng)絡編程的實質(zhì)就是兩個(或多個)設備(例如計算機)之間的數(shù)據(jù)傳輸模孩。 按照計算機網(wǎng)絡的定義尖阔,通過一定...
    蛋炒飯_By閱讀 1,231評論 0 10
  • 時間:中午十二點半 事件:老公打電話給我說快遞沒到的事 觸發(fā)點:我正在午休很不想被打擾 我的情緒:不耐煩贮缅,煩躁,生...
    亭子文閱讀 149評論 0 0