目錄

什么是套接字
套接字(Socket)是一種介于應(yīng)用層與傳輸層之間的抽象層,使用Socket可以將應(yīng)用程序添加到網(wǎng)絡(luò)中,并可以與處于同一個網(wǎng)絡(luò)中的其他應(yīng)用程序進(jìn)行數(shù)據(jù)通信。

Socket的建立條件
Socket的建立條件有三個分別是:
(1)通信目的互聯(lián)網(wǎng)地址
(2)使用的傳輸層協(xié)議(TCP或UDP)
(3)通信目的端口號
Socket類型
我們現(xiàn)在主要使用的是TCP/IP協(xié)議族,而TCP/IP協(xié)議族中的主要Socket類型為流套接字和數(shù)據(jù)報套接字。
●流套接字:
○使用協(xié)議:使用TCP作為端對端的通信協(xié)議
○特點:
(1)面向連接;
(2)每一條TCP連接只能是點對點的(一對一);
(3)提供可靠交付的服務(wù);
(4)提供全雙工通信;
(5)面向字節(jié)流。
流套接字,就好像打電話,必須兩端同時接通才能通話。
●數(shù)據(jù)報套接字:
○使用協(xié)議:使用UDP作為端對端的通信協(xié)議
○特點:
(1)無連接;
(2)盡最大努力交付;
(3)面向報文;
(4)無擁塞控制;
(5)支持一對一、一對多、多對一和多對多的交互通信;
(6)首部開銷?。ㄖ挥兴膫€字段:源端口、目的端口、長度、檢驗和)。
數(shù)據(jù)報套接字,就好像寄信,我往外寄出去了,但是對方收沒收到我不知道。
Socket工作流程
●TCP

●UDP
