python八行建立UDP通信

首先我们要搭建一个UDP通信,首先我们就要知道什么UDP:

        UDP用户数据报传输协议,它位于TCP/IP协议的传输层,是一种无连接的协议,它发送的报文不能确定是否完整地到达了另外一端。UDP广泛应用于需要相互传输数据的网络应用中,如QQ使用的就是UDP协议。在网络质量不好的情况下,使用UDP协议时丢包现象十分严重,但UDP占用资源少,处理速度快,UDP依然是传输数据时常用的协议。

 

    我们简单来说,UDP就相当于我们发送短信一样,不管对方有没有回应,我们是发送出去了的,这就行了。

 

TCP和UDP的区别:   

    下面我放了一个图片,可以看到同在运输层还有TCP协议,那么TCP和UDP有什么区别?

        

    之前我们说了,UDP就像发短信一样不管对方有没有收到或者回应我们是发送了这就行了,那么TCP和UDP相反,TCP就像我们打电话一样,要确定对方并且有回应,那么才算成功,从上面我们就可以看出来了,像比如说我们发短信,发消息我们可以用UDP来进行链接传输,但是像是通话之类的需要用户回应之类的,我们可以采用一个TCP来进行传输

好了,接下来步入正题吧,首先这里需要分成两个部分,第一个是建立一个服务端,第二个是建立一个客户端,这里我们用的是python的socket这个模块

 

注意:这里需要注意个事情,我们的先启动服务端的代码,客户端才能发送消息出去,要不然会报下面这个错误

服务端代码:

import  socket
server = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
server.bind(("127.0.0.1",8888))
print("服务器已经启动")
while True:
    data,client = server.recvfrom(1024)
    print("接受到客户端的消息",data.decode("utf-8"))
    server.sendto("我晓得,但是再见".encode("utf-8"),client)

客户端代码:

import  socket
client = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
client.sendto("山有木兮木有枝 心悦君兮君不知".encode("utf-8"),("127.0.0.1",8888))
data,server = client.recvfrom(1024)
print(data.decode("utf-8"))
client.close()

 

运行结果:

 

大家在练习中有什么问题都可以加群询问:656721740

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值