zoukankan      html  css  js  c++  java
  • 基于UDP协议的socket套接字编程

    一、基于UDP协议的socket套接字编程

    socket套接字包括使用TCP协议和UDP协议进行通讯

    1.1 用法

    socket指定使用UDP通讯协议server = socket.socket(socket.AF_INET, type=socket.SOCK_DGRAM)

    发送udp数据server.sendto(发送数据)

    接收udp数据data, addr = server.recvfrom(1024)

    1.2 udp协议的特点

    1. 可以发空数据(数据报协议,有头)
    2. 不需要建连接
    3. 不会粘包
    4. 不可靠(客户端,服务器谁断开都不受影响)

    1.3 实例

    服务端

    HOST = "127.0.0.1"
    POST = 8080
    
    if __name__ == '__main__':
        # udp服务器
        server = socket.socket(socket.AF_INET, type=socket.SOCK_DGRAM)  # 指定udp协议进行通讯。
        server.bind((HOST,POST))
        while 1:
            data, addr = server.recvfrom(1024)
            print(data.upper().decode("utf8"))
            server.sendto(data.upper(),addr)
    

    客户端

    HOST = "127.0.0.1"
    POST = 8080
    
    if __name__ == '__main__':
        # udp客户端
        client = socket.socket(socket.AF_INET, type=socket.SOCK_DGRAM) # 指定udp协议进行通讯。
        while 1:
            msg = input("请输入>>:")
            # 直接发
            client.sendto(msg.encode("utf8"),(HOST,POST))
            data=client.recvfrom(1024)[0]   # 是个元祖
            print(data.decode("utf8"))
    
  • 相关阅读:
    四则运算02
    第三周学习进度条
    《构建之法》阅读笔记1
    第二周学习进度条
    四则运算01
    第八周进度条
    每日站立会日07,08
    每日站立会议06
    每日站立会议05
    每日站立会议04
  • 原文地址:https://www.cnblogs.com/XuChengNotes/p/11492450.html
Copyright © 2011-2022 走看看