TCP/UDP 套接字总结
參考 <<TCP/IP網(wǎng)絡(luò)編程>> 伊圣雨
套接字簡介
套接字可以連接為計算機為了通信準(zhǔn)備的一種標(biāo)準(zhǔn)接口,這個接口函數(shù)與操作系統(tǒng)聯(lián)系緊密,是實現(xiàn)計算機之間通信的重要基礎(chǔ)。
TCP 編程
根據(jù)TCP的協(xié)議我們知道TCP通信的服務(wù)端與客戶端有比較大的差別。服務(wù)端需要先啟動并進(jìn)入監(jiān)聽狀態(tài)才可以與客戶端連接(監(jiān)聽狀態(tài)listen函數(shù),并且利用accept函數(shù)確定與自己建立連接的客戶端socket信息)。一旦成功與客戶端連接之后,就可以客戶端交互數(shù)據(jù)。
客戶端需要先調(diào)用connect函數(shù)與服務(wù)端連接。不論是客戶端與服務(wù)端都需要調(diào)用bind函數(shù)將套接字接口與操作系統(tǒng)中相關(guān)處理綁定。
UDP編程
UDP協(xié)議由于沒有連接要求,所以客戶端服務(wù)端差別不大,都是套接字對套接字的通信。但是每一次套接字通信的數(shù)據(jù)都要加上接收方的IP地址和端口。
補充比較
UDP與TCP最大的區(qū)別在于是否建立連接已經(jīng)是否進(jìn)行發(fā)送流控制(可靠性)上,TCP做了這些所以TCP數(shù)據(jù)傳輸可靠,但是較慢,UDP不做所以UDP較快。兩者應(yīng)用場景不同,UDP適合視頻音頻的直播信息傳送,TCP適合網(wǎng)頁 壓縮文件等處理。
UDP也可以建立連接,只是為了減少每次都要設(shè)置發(fā)送目標(biāo)的地址。
TCP兩個進(jìn)程間通信需要一對套接字對應(yīng),UDP不需要。
總結(jié)
以上是生活随笔為你收集整理的TCP/UDP 套接字总结的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 操作系统 真象还原 读书笔记
- 下一篇: 多进程fork()函数