zoukankan      html  css  js  c++  java
  • python--教你做个最简单的tcp通信。。

    TCP协议:建立在IP协议之上的,TCP协议,传输控制协议(英语:Transmission Control Protocol,缩写为 TCP)是一种面向连接的、可靠的、基于字节流的传输层通信协议,由IETF的RFC 793定义。

    TCP通信需要经过创建连接、数据传送、终止连接三个步骤。其优点是:稳定可靠。

    上代码啦!!

    tcp服务端的搭建

    import socket

    # 不管是tcp还是udp最重要的是都需要导入socket套接字
    s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)

    # 同名方法socket需要导入两个参数,第1个参数Address Family:可以选择 AF_INET(用于 Internet 进程间通信) 或者 AF_UNIX(用于同一台机器进程间通信),实际工作中常用AF_INET

    #                                                          第2个参数Type:套接字类型:可以是 SOCK_STREAM(流式套接字,主要用于 TCP 协议),或者 SOCK_DGRAM(数据报套接字,主要用于 UDP 协议)。

    HOST = "0.0.0.0"    
    PORT = 3332
    s.bind((HOST,PORT))

    # 绑定IP和端口
    s.listen(128)

    # tcp特点需要监听,128代表最大接收请求数为123
    conn,addr = s.accept()

    # 拆包接收客户端
    print("客户端IP为:%s" %str(addr))
    mess = input("你相对客户说些什么:")
    mess = mess.encode()

    # 编码
    conn.send(mess)
    data = conn.recv(1024)

    # 接收客户端信息,最大字节1024
    print("客户端回传是:%s"%data.decode())
    conn.close()
    s.close()

    # 关闭通信、关闭服务端

    #  tcp客户端搭建

    import socket

    c = socket.socket(socket.AF_INET,socket.SOCK_STREAM)

    HOST = "127.0.0.1"
    POST = 3332
    c.connect((HOST,POST))
    print("服务端地址为:%s,端口是:%s,ok"% (HOST,str(POST)))
    data = c.recv(1024)
    print("服务端回传信息是:%s"% data.decode())
    mess = input("您对服务端有什么建议:")
    mess = mess.encode()
    c.send(mess)
    c.close()

    ---恢复内容结束---

    python 中文名:蟒蛇,设计者:Guido van Rossum
  • 相关阅读:
    log4j
    hashContext
    sql语句
    css样式
    作业七:(二)疑问解答
    作业七:(1)翻译
    结对编程作业
    软件优缺点评价(补交)
    C#程序分析
    VS2013安装及测试练习
  • 原文地址:https://www.cnblogs.com/lutt/p/10053859.html
Copyright © 2011-2022 走看看