初识socket

一. 

  C/S架构:客户端(client)/服务端(server)架构

    B/S架构:浏览器(browser) / 服务端(server)架构

  软件cs架构:浏览器,qq,微信,陌陌等等

  硬件cs架构:打印机

二.   网络通信的整个流程 

       集线器: 将所有电脑联通起来

  交换机: 升级版的集线器

  网卡: 接收处理电信号

  Mac地址: 物理地址: 54-27-1E-62-67-9F  前三位厂商编号  后三位生产流水号,全球唯一的,也就是你网络设备的身份证号

  Ip地址  IPv4 地址: 192.168.12.40  划分广播域

  Ip地址段: 192.168.12.0 --- 192.168.12.255 同一ip地址段,称为同一子网  ,以广播的形式通信.192.168.0.0 -- 192.168.255.255 

  子网掩码: 计算是否属于同一网段,同一子网 255.255.255.0

  DHCP协议: 自动获取IP地址

  Arp协议: 通过ip地址获取mac地址

  域名: www.jd.com

  DNS服务端:{‘www.jd.com’ : 京东服务器IP地址}

三.     初识socket  (重点)

  实现两个人即使消息发送 :

   服务端:

import socket
server = socket.socket()
server_ip = ("192.168.12.40",1026)
server.bind(server_ip)
server.listen()
conn,address = server.accept()
while 1 :
    from_client = conn.recv(1024)
    print("高熠超说:",from_client.decode("utf-8"))
    a = input("我说:")
    if a.upper() == "Q":
        break
    else :
        conn.send(a.encode("utf-8"))
conn.close()
server.close()

   客户端:

import socket
client = socket.socket()
client_ip = ("192.168.12.40",1026)
client.connect(client_ip)
while 1 :
    a = input("我说:")
    if a.upper() == "Q" :
        break
    else :
        client.send(a.encode("utf-8"))
        from_server = client.recv(1024)
        print("甜甜说:",from_server.decode("utf-8"))
client.close()

  客户端与服务端实现实时通话功能

猜你喜欢

转载自www.cnblogs.com/gyc-tzx/p/10210539.html