九色国产,午夜在线视频,新黄色网址,九九色综合,天天做夜夜做久久做狠狠,天天躁夜夜躁狠狠躁2021a,久久不卡一区二区三区
打開APP
未登錄
開通VIP,暢享免費電子書等14項超值服
開通VIP
首頁
好書
留言交流
下載APP
聯(lián)系客服
C/C 應用:深入理解Socket網(wǎng)絡通信
西北望msm66g9f
>《編程》
2019.11.15
關注
來源 :今日頭條@編程老大叔
Socket是網(wǎng)絡通訊經(jīng)常采用的一種方式,它不是一個具體的物件也不是想http類的通訊協(xié)議。
你可以把它看成是一組基于TCP和UDP通信協(xié)議的接口,Socket其實就是一個門面模式,它把復雜的TCP/IP協(xié)議族隱藏在Socket接口后面,對用戶來說,一組簡單的接口就是全部,讓Socket去組織數(shù)據(jù),以符合指定的協(xié)議。
Socket基本概念
在了解Socket之前你需要對計算機通訊的分層有個大概的了解,具體講解我在這里就不講了,放一張很好的圖分享給大家:
上面圖詳細講了基本整個計算機通信的分層架構(gòu),很多我也不了解沒我們只看我們關心的TCP/IP,其分層簡化圖示如下:
理解Socket
好,了解了基本分層機構(gòu)后,我們現(xiàn)在來形象的理解一下Socket到底是什么。
我這里有一個很形象的實例可以幫助我們很好的理解Socket,這也是我當初在學習Socket編程時自己領悟出來的,那就是
物流
。
我們要傳送的數(shù)據(jù)就是物流中的貨物,ip就是發(fā)貨人和收貨人的聯(lián)系方式,那么Socket是什么?
大家想想這送貨這這一流程還缺少啥?
對呀,物流公司啊,對吧!
物流公司就是那個Socket,他負責幫你處理送貨的瑣碎事情,比如你的貨物該怎么打包、該怎么防止易碎物品破碎、該用什么方式運輸、等等,如果是境外貨物還牽涉到報關等等一系列復雜瑣碎的事情,這些物流公司(Socket)幫你處理好了。
示意圖如下:
理解TCP與UDP的區(qū)別以及三次握手和四次揮手
然后我們來說一下TCP和UDP的區(qū)別。
前面講到Socket就相當于是物流公司,那么TCP協(xié)議就相當于是:
假設你是寄貨方,你要寄給你朋友一份禮物,你首先得去物流公司去寄,這樣你再物流公司就相當于建立了一個事物(Socket實例)。
然后物流公司有兩種服務方式讓你選擇(TCP和UDP)。
先說TCP,TCP這個協(xié)議它比較保守,物流公司說我必須確保你朋友會接收這份禮物,不然它不送。
于是物流公司就回去聯(lián)系你朋友。
然后聯(lián)系內(nèi)容大致如下:
物流:
你好,我這里有個你朋友寄的禮物要給你,你收嗎?
你朋友:
OK,收,什么時候發(fā),多久到?
物流:
現(xiàn)在就發(fā),大概要12小時到。
然后物流才開始發(fā)貨,并且會給你們一個物流單號,這個單號就是關于這份貨物你和你朋友的發(fā)貨收貨憑證。
這就是所謂的三次握手。
示意圖:
物流發(fā)送完后還會聯(lián)系你朋友,大致對話內(nèi)容:
物流:
你好,貨物已發(fā)送,請注意查收
你朋友:
好的。
貨物送到,你朋友:
OK,貨物收到,你們可以結(jié)案
物流:
好的,我結(jié)案了。
這就是所謂的四次揮手(拜拜);
(注釋:
三次握手四次揮手這都是Socket在你建立的時候根據(jù)你選擇的協(xié)議確定好的)
這樣是不是很麻煩,估計也就順豐有這服務了,其他大部分公司還是沒有這么貼心的服務的,他們可能就是UDP協(xié)議方式了。
UDP比較簡單,當你用物流(Socket)寄貨物的時候物流公司并不會管你朋友是否能聯(lián)系上,是否愿意接收,它只負責將你的貨物發(fā)出去就完事。
這中間是不需要通知你朋友的,你和你朋友也不需要有連接,這就是所謂的無連接。
兩種協(xié)議區(qū)別
UDP 常用于一次性傳輸比較少量數(shù)據(jù)的網(wǎng)絡應用中,UDP 也常用于多媒體應用(如 IP 電話、實時視頻會議、流媒體等),顯然,可靠數(shù)據(jù)傳輸對于這些應用來說并不是最重要的,但 TCP 的擁塞控制會導致數(shù)據(jù)出現(xiàn)較大的延遲,這是它們不能容忍的,我們最熟悉的視頻通話大部分就是用的UDP協(xié)議。
TCP面向連接,即發(fā)送數(shù)據(jù)之前需要建立連接,并且TCP是擁有擁塞機制的,當前部分數(shù)據(jù)還沒有被接收完,后部分的數(shù)據(jù)會被阻塞知道前部分數(shù)據(jù)傳遞OK后才會繼續(xù)傳遞后半部分,所以通過TCP連接傳送的數(shù)據(jù),無差錯,不丟失,不重復,且按序到達;
在數(shù)據(jù)完整性、安全性要求較高的場景需要使用TCP協(xié)議,比如你傳送重要辦公文件、圖片等,這些東西丟包都是會影響數(shù)據(jù)品質(zhì)的。
本站僅提供存儲服務,所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權內(nèi)容,請
點擊舉報
。
打開APP,閱讀全文并永久保存
查看更多類似文章
猜你喜歡
類似文章
TCP/IP UDP
tcp、udp、http、socket之間的區(qū)別(轉(zhuǎn)載)
TCP、UDP、ICMP的一些疑問的解答
基于Linux操作系統(tǒng)下的TCP/IP網(wǎng)絡通信研究與應用
socket通信協(xié)議關系詳解
winsocket的基本概念和API函數(shù)
更多類似文章 >>
生活服務
熱點新聞
首頁
萬象
文化
人生
生活
健康
教育
職場
理財
娛樂
藝術
上網(wǎng)
留言交流
回頂部
聯(lián)系我們
分享
收藏
點擊這里,查看已保存的文章
導長圖
關注
一鍵復制
下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!
聯(lián)系客服
微信登錄中...
請勿關閉此頁面
先別劃走!
送你5元優(yōu)惠券,購買VIP限時立減!
5
元
優(yōu)惠券
優(yōu)惠券還有
10:00
過期
馬上使用
×