• TCP和UDP


    一、TCP和UDP对比

    TCP(Transmission Control Protocol)可靠的、面向连接的协议(eg:打电话)、传输效率低全双工通信(发送缓存&接  收缓存)、面向字节流。使用TCP的应用:Web浏览器;文件传输程序。

    UDP(User Datagram Protocol)不可靠的、无连接的服务,传输效率高(发送前时延小),一对一、一对多、多对  一、多对多、面向报文(数据包),尽最大努力服务,无拥塞控制。使用UDP的应用:域名系统 (DNS);视频流;IP语音(VoIP)。

     

    二、TCP和UDP下的socket

    Import socket
    Server = socket.socket()
    Ip_port = (‘192.168.12.11’,8003)  #127.0.0.1 本机的回环地址
    Server.bind(ip_port)  #绑定ip地址和端口
    Server.listen()  #监听ip
    Conn,addr = server.accept()
    From_client_msg = conn.recv(1024)
    Print(from_client_msg.decode(‘utf-8’)) 
    Conn.send(‘大力’.encode(‘utf-8’))
    Conn.close()
    Server.close()
    
    客户端:
    Import socket
    Client = socket.socket()
    Ip_port = (‘192.168.12.11’,8003)
    Client.connect(ip_port)
    Client.send(‘奇迹’.encode(‘utf-8’))
         From_server_msg = client.recv(1024)
    Print(from_server_msg.decode(‘utf-8’))
    Client.close()
    tcp下的socket
    # 服务端
    import socket
    
    udp_server = socket.socket(type=socket.SOCK_DGRAM) #datagram
    
    ip_port = ('127.0.0.1', 8002)
    udp_server.bind(ip_port)
    
    from_client_msg, client_addr = udp_server.recvfrom(1024)
    
    udp_server.sendto(b'gunduzi', client_addr)
    
    
    print(from_client_msg, client_addr)
    
    # 客户端
    import socket
    udp_client = socket.socket(type=socket.SOCK_DGRAM)
    ip_port = ('127.0.0.1',8002)
    udp_client.sendto(b'hello',ip_port)
    
    from_server_msg,server_addr = udp_client.recvfrom(1024)
    print(from_server_msg,server_addr)
    udp下的socket
  • 相关阅读:
    Android 屏幕实现水龙头事件
    高速排序算法
    hdu2993坡dp+二进制搜索
    如何设计接口?
    virtio-netdev 发送数据包
    android-sdk-windows下载版
    FusionCharts简明教程(一)---建立FusionCharts图形
    strcpy_s与strcpy对照
    安全博客
    图片相关
  • 原文地址:https://www.cnblogs.com/wangpanger/p/10217305.html
Copyright © 2020-2023  润新知