zoukankan      html  css  js  c++  java
  • 网络

    一、TCPIP协议

      1.TCPIP协议分层

        (1)四层(七层):链路层(物理层、数据链路层)、网络层(网络层)、传输层(传输层)、应用层(会话层、表示层、应用层)

    二、socket

    #创建tcp  socket
    
    import socket
    
    s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

    sendData = 'hahaha'; s.sendto(b
    'hahaha', ('192.168.1.1', 8080))          (python3中)
    s.sendto(sendData.encode('utf-8'), ('192.168.1.1', 8080))  (python3中)
    #创建udp socket import socket s = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)

      1.udp绑定信息

    from socket import *
    
    #1. 创建套接字
    udpSocket = socket(AF_INET, SOCK_DGRAM)
    
    #2. 绑定本地的相关信息,如果一个网络程序不绑定,则系统会随机分配
    bindAddr = ('', 7788) # ip地址和端口号,ip一般不用写,表示本机的任何一个ip
    udpSocket.bind(bindAddr)
    
    #3. 等待接收对方发送的数据
    recvData = udpSocket.recvfrom(1024) # 1024表示本次接收的最大字节数
    
    #4. 显示接收到的数据
    print recvData
    
    #5. 关闭套接字
    udpSocket.close()
    udp绑定信息

       2.udp广播

    from socket import *
    import sys
    
    dest = ("<broadcast>", 7788)
    
    udp = socket("AF_INET", "SOCK_DGRAM")
    
    udp.setsockopt(SOL_SOCKET, SO_BROADCAST, 1)
    
    s.sendto("haha", dest)
    udp广播

    三、tcp

      1.服务器端

    from socket import *
    
    tcpSocket = socket(AF_INET, SOCK_STREAM)
    
    tcpSocket.bind(("", 8899))
    
    tcpSocket.listen(5)
    
    #newSocket表示新的客户端,clientAddr表示新的客户端的ip、端口
    newSocket, clientAddr = tcpSocket.accept()
    
    recvData = newSocket.recv(1024)
    
    print("%s:%s"%(str(clientAddr), recvData))
    
    newSocket.close()
    tcpSocket.close()

       2.客户端

    from socket import *
    
    tcpSocket = socket("AF_INET", SOCK_STREAM)
    
    addr = ("192.168.1.1", 7878)
    
    # 连接服务器
    tcpSocket.connect(addr)
    
    sendData = input("请输入要发送的数据:")
    
    # 发送数据
    tcpSocket.send(sendData)
    
    # 接收服务器发送的数据
    recvData = tcpSocket.recv(1024)
    
    tcpSocket.close()
  • 相关阅读:
    python3使用多代理访问网站
    批处理写的俄罗斯方块
    Robot Framework安装指南
    Robot Framework 快速入门_英文版
    Robot Framework 快速入门_中文版
    python3操作注册表设置/取消IE代理
    在python3下用PIL做图像处理
    python win32api 使用小技巧
    Python小技巧1
    python编码-1
  • 原文地址:https://www.cnblogs.com/peilanluo/p/8414583.html
Copyright © 2011-2022 走看看