udp客户端收发数据流程

1、创建客户端socket开始进行通讯。 2、这时服务端应该先启动,并在知道服务端的ip以及端口号的时候才能进行通讯。 3、本地不需要绑定ip以及端口号,在用此套接字对象发送消息的时候会自动分配活动端口(1024-65535) 每次重启程序可能每次都不一样。 4、然后对将要发送的信息进行编码处理,然后将编码后的字节码发送到指定服务端ip以及端口。 5、这里还可以进行消息的接收,在这里接收消息首先得要发送数据到指定的服务端,告诉服务端客户端的ip以及所使用的端口是什么。 6、如果先进行消息阻塞是收不到消息的,这里客户端不需要绑定端口可以理解成在客户端把数据发送到服务端以后系统在后台默默地 把客户端ip以及端口和客户端绑定了起来。这样服务端发送的消息就能被客户端所接收。 7、接受到消息同样要进行解码,解码形式与服务端发送过来数据的编码格式相对应,把字节码转换成能看懂的数据进行打印。 8、最后进行客户端udp套接字关闭。

from socket import *
# 客户端

# 定义客户端udp套接字
socket_udp = socket(AF_INET, SOCK_DGRAM)
# 确定目标ip以及端口,这里是服务端在局域网内的ip地址以及服务端绑定的端口号
dest_addr = (' 这里填写服务端ipv4地址   ', 8989)

while True:
    # 输入发送数据
    temp_data = input('客户端:')
    # 加上具体对象形成对话形式
    temp_data = '客户端:' + temp_data
    # 对将要发送的数据进行编码,目标地址使用的什么编码去解码接收,则在这里使用什么编码去进行编码
    socket_data = temp_data.encode('gbk')
    # 调用套接字里udp发送数据的函数sendto()
    socket_udp.sendto(socket_data, dest_addr)
    # 准备接收数据,接收长度为1024
    temp_recv_data = socket_udp.recvfrom(1024)
    # 对接收到的数据进行解码
    socket_udp_recv_data = temp_recv_data[0].decode('gbk')
    # # 对接收到的消息进行打印
    # print(socket_udp_recv_data, '\n对方发送数据所使用的端口号是:', temp_recv_data[1][1])
    # 对接收到的消息进行打印
    print(socket_udp_recv_data)
# 发送完毕,关闭udp套接字、
# socket_udp.close()

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏别先生

eclipse工具下hadoop环境搭建

eclipse工具下hadoop环境搭建:     window10操作系统中搭建eclipse64开发系统,配置hadoop的eclipse插件,让eclip...

2985
来自专栏Java Edge

优雅地使用 mybatis-generator

1816
来自专栏杂烩

dubbokeeper安装 原

git地址https://github.com/dubboclub/dubbokeeper

713
来自专栏Java3y

Linux进程管理

每个用户均可同时运行多个程序。为了区分每一个运行的程序,Linux给每个进程都做了标识,称为进程号(process ID),每个进程的进程号是唯一的。

1370
来自专栏Theo Tsao

Linux网络管理

本文包括: 查看网络接口、配置网络接口、重启网络接口、路由命令 route、主机名称命令 hostname、网络工具

862
来自专栏L宝宝聊IT

Linux基础——Firewalld防火墙(二)

1513
来自专栏电光石火

mysql用户管理

服务器上mysql的用户有两种: 1.  本地用户   从本机连接mysql,例如: mysql部署在A服务器上,从A上连接mysql的用户 2.  远...

1995
来自专栏Golang语言社区

LINUX环境并发服务器的三种实现模型

服务器设计技术有很多,按使用的协议来分有TCP服务器和UDP服务器。按处理方式来分有循环服务器和并发服务器。 1 循环服务器与并发服务器模型 在网络程序里面,一...

2684
来自专栏xingoo, 一个梦想做发明家的程序员

Nodejs·网络服务

本章是从NodeJS拥有的模块角度,讲述了网络服务中的应用: net ----- > TCP dgram --> UDP http -----> HTT...

17910
来自专栏L宝宝聊IT

构建SSH服务体系示例

1725

扫码关注云+社区