建立socket客户端和服务器端

  • 基于python建立socket客户端和服务器端
  • 一.客户端socket
  • 二.服务端socket
  • 三.服务端socket(多线程)


基于python建立socket客户端和服务器端

建立socket的大概步骤,分为客户端和服务器端,可使用SSL协议加密。分为客户端和服务器端两边说明。也可加入多线程进行编程。使用到python的socket和ssl库。

一.客户端socket

  1. 实例化socket
client = socket.socket(socket.AF_INET, socket.SOCK_STREAM);#TCP
client = socket.socket(socket.AF_INET, socket.SOCK_DGRAM);#UDP
  1. 实例化SSLsocket
SSLsocket = ssl.wrap_socket (sock[, **opts]) #opts表示用于指定其他配置数据的密钥参数的数量。
  1. 使用SSLsocket进行连接
SSLsocket.connect(host,port)
  1. 与服务器端传输和接收数据
SSLsocket.send()
SSLsocket.recv()
  1. 关闭socket
SSLsocket.close()

二.服务端socket

  1. 实例化socket
client = socket.socket(socket.AF_INET, socket.SOCK_STREAM);#TCP
client = socket.socket(socket.AF_INET, socket.SOCK_DGRAM);#UDP
  1. 服务器绑定自己的IP和端口
socket.bind(host,port)
  1. 服务器确定自己排队数量限制
socket.listen(n)
  1. 实例化SSLsocket
SSLsocket = ssl.wrap_socket (sock[, **opts]) #opts表示用于指定其他配置数据的密钥参数的数量。
  1. 与服务器端传输和接收数据
SSLsocket.send()
SSLsocket.recv()
  1. 关闭socket
SSLsocket.close()

三.服务端socket(多线程)

使用多线程,更好处理资源,防止了死循环。

  1. 定义类
    1️⃣初始化对象
    ①SSLcontect指定ssl版本
    ②加载信任根证书
    ③实例化socket
    ④解决程序端口处理问题
    ⑤绑定服务器IP和端口
    ⑥使用listen(n)控制排队数
    2️⃣连接
    ①连接
    ②实例化threading且运行
    3️⃣业务处理
    4️⃣断开socket
  2. 定义函数创建web服务器且运用类