zoukankan      html  css  js  c++  java
  • 网络通信

    CS架构(****) client server

    软件CS架构:客户端服务端架构:京东,淘宝,今日头条,qq,微信.....

    BS架构:浏览器(browser)服务端>>>统一接口

    硬件CS架构: 打印机.

    网络通信整个流程(**)

    网线:传输电信号

    集线器:将所有连接到集线器的网络设备连通起来

    交换机: 升级版的集线器

    网卡:接受电信号

    MAC地址:物理地址:   8C-EC-4B-88-B9-C9  #前三位厂商编号,后三位生产流水号

    单播:

    广播:

    广播风暴:网络拥堵,信息不安全

    服务端

    import socket

    #实例化socket对象
    server = socket.socket() #创建了一部手机

    ip_port = ('192.168.15.46',8001) #买个电话卡

    #绑定IP地址和端口
    server.bind(ip_port) #插卡

    #监听,
    server.listen() #开机
    #等待客户端连接
    print(111111)
    conn,addr = server.accept() #等别人的电话,阻塞

    print(222222)
    print(conn)
    print(addr)
    #发送消息
    # conn.send(b'leihao') #必须是bytes类型的数据

    while 1:
    server_msg = input('王斌>>>>')

    conn.send(server_msg.encode('utf-8')) #必须是bytes类型的数据

    #接受消息
    from_client_msg = conn.recv(1024) #1024,一次性能够接受的消息大小1024B

    print('来自俊豪妹的消息',from_client_msg.decode('utf-8'))

    # conn.send(b'gun')
    #挂电话,关闭通道
    conn.close()
    #关机,关闭socket
    server.close()

    客户端

    import socket
    client = socket.socket() #
    #服务端的ip地址和端口
    server_ip_port = ('192.168.15.46',8001)
    #连接服务端的应用程序
    client.connect(server_ip_port)

    while 1:
    from_server_msg1 = client.recv(1024) #阻塞
    print('来自王斌消息:',from_server_msg1.decode('utf-8'))
    client_msg = input('俊豪妹>>>')
    client.send(client_msg.encode('utf-8'))

    from_server_msg = client.recv(1024)

    print('来自服务端的消息:',from_server_msg)
    client.close()

  • 相关阅读:
    Linux C Socket编程原理及简单实例
    clock_gettime 用法
    Linux未来监控tracing框架——eBPF
    eBPF监控工具bcc系列五工具funccount
    【转】如何测量电源纹波?
    【转】在网页中运行VB6程序
    如何为互阻抗放大器电路选择具有足够带宽的运算放大器
    互阻放大器的稳定工作及其评估
    【原创】OPA857 TEST模式使用
    [转]What you need to know about transimpedance amplifiers – part 1
  • 原文地址:https://www.cnblogs.com/wwjx/p/9997679.html
Copyright © 2011-2022 走看看