UDP协议是无连接的、不稳定的网络通信协议。
通过使用飞秋端口(2425),以及模拟飞秋消息格式实现使用UDP协议对飞秋进行通信。
飞秋通信格式:
'1:1000:66:%s:32:%s'
以冒号分割,可以分割成6个小段每个小段的含义如下:
1.版本号
2.消息编号
3.发送人姓名
4.发送人机器名
5.命令字
6.附加内容。
socket.AF_INET:表示使用IPV4地址
socket.SOCK_DGRAM:表示使用UDP协议传输
UDP协议-飞秋应用-单IP版本代码实现:
import socket if __name__ == '__main__':
# 创建UDP套接字
# socket.AF_INET:表示使用IPV4地址
# socket.SOCK_DGRAM:表示使用UDP协议传输
udp_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
# 发送数据
send_data = ('1:1000:66:%s:32:666').encode('gbk')
udp_socket.sendto(send_data, ('127.0.0.1', 2425)) # 关闭UDP套接字
udp_socket.close()
注意:
虽然UDP是无连接的协议,但也需要有客户端接受UDP发送的数据,如果对方没有客户端接收数据,无论服务端如何发送数据对方都不会接受到,也不会造成内存溢出从而导致蓝屏问题。
但可以通过死循环,打死对方的UDP客户端。