最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501
当前位置: 首页 - 科技 - 知识百科 - 正文

python中socket实现UDP通信的介绍(附代码)

来源:懂视网 责编:小采 时间:2020-11-27 14:11:44
文档

python中socket实现UDP通信的介绍(附代码)

python中socket实现UDP通信的介绍(附代码):本篇文章给大家带来的内容是关于python中socket实现UDP通信的介绍(附代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。UDPTCP是建立可靠连接, 并且通信双方都可以以流的形式发送数据。 相对TCP, UDP则是面向无连接的协议。使用UD
推荐度:
导读python中socket实现UDP通信的介绍(附代码):本篇文章给大家带来的内容是关于python中socket实现UDP通信的介绍(附代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。UDPTCP是建立可靠连接, 并且通信双方都可以以流的形式发送数据。 相对TCP, UDP则是面向无连接的协议。使用UD
本篇文章给大家带来的内容是关于python中socket实现UDP通信的介绍(附代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

UDP

TCP是建立可靠连接, 并且通信双方都可以以流的形式发送数据。 相对TCP, UDP则是面向无连接的协议。使用UDP协议时, 不需要建立连接, 只需要知道对方的IP地址和端口号, 就可以直接发数据包。 但是, 能不能到达就不知道了。

我们来看看如何通过UDP协议传输数据。 和TCP类似, 使用UDP的通信双方也分为
客户端和服务器
socket实现UDP通信的结构图

4178974401-5bbac244a361b_articlex.jpg

UDP服务端

和TCP类似, 使用UDP的通信双方也分为客户端和服务器。 服务器首先需要绑定端口。但不需要监听客户端的连接

#server
import socket
#创建Socket时, SOCK_DGRAM 指定了这个Socket的类型是UDP。
server = socket.socket(type=socket.SOCK_DGRAM)
server.bind(('192.168.1.165',7890))
#不需要调用 listen() 方法, 而是直接接收来自任何客户端的数据
print('服务端已开启7890端口,正在等待被连接...')
#recvfrom() 方法返回数据和客户端的地址与端口, 这样, 服务器收到数据后,
#直接调用 sendto() 就可以把数据用UDP发给客户端
data,address = server.recvfrom(1024)
print("client>>",data.decode('utf-8'))
print("客户端连接的socket地址:", address)
server.sendto(b'drink more water!',address)
server.close()

UDP客户端

客户端使用UDP时, 首先仍然创建基于UDP的Socket, 然后, 不需要调用 connect() , 直接通过 sendto() 给服务器发数据

import socket
#创建Socket时, SOCK_DGRAM 指定了这个Socket的类型是UDP。
client = socket.socket(type=socket.SOCK_DGRAM)
send_data =b'hello sheenstar'
client.sendto(send_data,('192.168.1.165',7890))
re_Data,address = client.recvfrom(1024)
print('server>>',re_Data.decode('utf-8'))
client.close()

测试结果

用两个命令行分别启动服务器和客户端测试
开启服务端

2136325466-5bbac7a9f397d_articlex.png

完成一次UDP通信

2274791028-5bbac840cd9a2_articlex.png

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文档

python中socket实现UDP通信的介绍(附代码)

python中socket实现UDP通信的介绍(附代码):本篇文章给大家带来的内容是关于python中socket实现UDP通信的介绍(附代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。UDPTCP是建立可靠连接, 并且通信双方都可以以流的形式发送数据。 相对TCP, UDP则是面向无连接的协议。使用UD
推荐度:
标签: 通讯 代码 通信
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top