zoukankan      html  css  js  c++  java
  • 网络编程-基于UDP协议套接字

    TCP传输数据可靠,收发数据需确认,接收这没确认将重新发送。采用数据流方式,不能发送空数据

    UDP传输数据不可靠,不管对方是否收到,优点,无需三次握手,效率高。采用数据报方式,可以发送空数据。UDP必须一发一收。

    UDP协议不会黏包

    server:

    from socket import *
    server=socket(AF_INET,SOCK_DGRAM)#数据报协议
    server.bind(('127.0.0.1',8090))#绑定端口,
    # server.listen(5)UDP无连接,则无监听
    # server.accept()UDP无需建连接
    while True:#通讯循环
        data,client_addr=server.recvfrom(1024)
        print(data)
        server.sendto(data.upper(),client_addr)
    server.close()

    client:

    from socket import *
    client=socket(AF_INET,SOCK_DGRAM)
    while True:
        msg=input('>>:').strip()
        client.sendto(msg.encode("utf-8"),('127.0.0.1',8090))#明确指定发给谁
    
        data,server_addr=client.recvfrom(1024)
        print(data)
    client.close()

    网络查询(ntp,dns),聊天消息等都是通过UDP实现

  • 相关阅读:
    关于树及其各种操作
    正交矩阵与齐次矩阵
    矩阵的行列式与矩阵的逆
    线性变换
    矩阵
    向量的运算
    求两直线的交点
    微任务防抖
    二项分布
    二项式定理
  • 原文地址:https://www.cnblogs.com/yaya625202/p/8964673.html
Copyright © 2011-2022 走看看