五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

14.2 UDP編程

2021-09-30 08:41 作者:海鷗之道  | 我要投稿

TCP是建立可靠連接,并且通信雙方都可以以流的形式發(fā)送數(shù)據(jù)。相對TCP,UDP則是面向無連接的協(xié)議。

使用UDP協(xié)議時,不需要建立連接,只需要知道對方的IP地址和端口號,就可以直接發(fā)數(shù)據(jù)包。但是,能不能到達就不知道了。

雖然用UDP傳輸數(shù)據(jù)不可靠,但它的優(yōu)點是和TCP比,速度快,對于不要求可靠到達的數(shù)據(jù),就可以使用UDP協(xié)議。

我們來看看如何通過UDP協(xié)議傳輸數(shù)據(jù)。和TCP類似,使用UDP的通信雙方也分為客戶端和服務器。服務器首先需要綁定端口:

創(chuàng)建Socket時,SOCK_DGRAM指定了這個Socket的類型是UDP。綁定端口和TCP一樣,但是不需要調(diào)用listen()方法,而是直接接收來自任何客戶端的數(shù)據(jù):

recvfrom()方法返回數(shù)據(jù)和客戶端的地址與端口,這樣,服務器收到數(shù)據(jù)后,直接調(diào)用sendto()就可以把數(shù)據(jù)用UDP發(fā)給客戶端。

注意這里省掉了多線程,因為這個例子很簡單。

客戶端使用UDP時,首先仍然創(chuàng)建基于UDP的Socket,然后,不需要調(diào)用connect(),直接通過sendto()給服務器發(fā)數(shù)據(jù):

從服務器接收數(shù)據(jù)仍然調(diào)用recv()方法。

仍然用兩個命令行分別啟動服務器和客戶端測試,結(jié)果如下:

小結(jié)

UDP的使用與TCP類似,但是不需要建立連接。此外,服務器綁定UDP端口和TCP端口互不沖突,也就是說,UDP的9999端口與TCP的9999端口可以各自綁定。


14.2 UDP編程的評論 (共 條)

分享到微博請遵守國家法律
抚远县| 广德县| 定陶县| 正蓝旗| 开阳县| 温州市| 霍邱县| 济阳县| 通许县| 永泰县| 吴江市| 彰武县| 根河市| 沙河市| 板桥市| 云南省| 同德县| 彭山县| 乐都县| 桃江县| 拜泉县| 托克逊县| 湖北省| 桐乡市| 石家庄市| 称多县| 怀化市| 乌审旗| 沂水县| 右玉县| 成都市| 桂林市| 扎赉特旗| 囊谦县| 神农架林区| 武山县| 马尔康县| 汶川县| 汶上县| 巧家县| 仙桃市|