socket簡單整理

先說一些概念知識:

網絡上的請求就是通過Socket來建立連接然后互相通信,訪問ip地址(網絡上主機設備的唯一標識)

端口號:(定位程序)用于標示進程的邏輯地址,不同進程的標示

有效端口:0~65535,其中0~1024由系統使用或者保留端口,開發中建議使用1024以上的端口

傳輸協議(用什么樣的方式進行交互)通訊的規則,常見協議:TCP、UDP

http:超文本傳輸協議,它的底層就是通過socket建立連接通信管道,他屬于socket層上協議,屬于應用層的協議,格式類似于json,有content-type,body等。

XMPP協議:即時通訊協議,同http一樣屬于應用層協議,格式為xml,環信就是基于xmpp進行的二次開發。

在這里附上tcp和udp的概念

TCP(傳輸控制協議)

建立連接,形成傳輸數據的通道

在連接中進行大數據傳輸(數據不受限制)

通過三次握手完成連接,是可靠協議,安全送達

必須建立連接,效率會稍低

UDP(用戶數據報協議)

將數據及源和目的封裝成數據包中,不需要建立連接

每個數據報的大小限制在64K之內

因為無需連接,因此是不可靠協議

不需要建立連接,速度快

tcp和udp都屬于傳輸層協議,他和http、xmpp等的區別在于,tcp和udp是描述該協議的傳輸方式,比如是否要建立連接等,而http則表示在該協議下進行數據傳送時的數據格式。

那么什么是socket,所謂socket就是套接字,網絡上的兩個程序通過一個雙向的通信連接實現數據的交換,這個連接的一端稱為一個socket。

通信管道建立的時候也就是socket連接的時候。

下面這張就是TCP協議下的整個流程圖,

首先由客戶端發起請求,服務端會時刻處于監聽狀態,當客戶端將請求發送到服務端時,服務端將判斷該請求是否正常,若請求正常則會建立連接,開啟數據傳輸,具體可以參閱上圖。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 大學學習網絡基礎的時候老師講過,網絡由下往上分為物理層、數據鏈路層、網絡層、傳輸層、會話層、表示層和應用層。通過初...
    西門丨不吹雪閱讀 1,814評論 0 18
  • 網絡概念第一天 兩臺電腦怎么通過網絡傳輸數據?怎樣才能知道傳輸的是數據?誰摸過網線? 看電影,怎么看的?通過電流,...
    小吖朱閱讀 1,583評論 0 1
  • 1.1 TCP/IP協議組 TCP/IP協議(傳輸控制協議)由網絡層的IP協議和傳輸層的TCP協議組成 IP層負責...
    F麥子閱讀 2,837評論 0 25
  • 1.TCP報頭格式 UDP報頭格式 TCP報頭格式 UDP報頭格式 具體的各部分解釋看 TCP報文格式詳解 - ...
    杰倫哎呦哎呦閱讀 2,508評論 0 5
  • 在孩子三歲時,面對孩子經常生病的狀況,我終于“醒悟”過來,給他換到兒童醫院去看病,雖然受到了先生的再三反對,(...
    愛幻想qm閱讀 315評論 0 4