什么是Socket
Socket又称"套接字",应用程序通常通过"套接字"向网络发出请求或者应答网络请求。套接字之间的连接过程可以分为三个步骤:服务器监听,客户端请求,连接确认。
Socket是面向客户/服务器模型而设计的,针对客户和服务器程序提供不同的Socket系统调用。客户随机申请一个Socket(相当于一个想打电话的人可以在任何一台入网电话上拨号呼叫),系统为之分配一个Socket号;服务器拥有全局公认的Socket,任何客户都可以向它发出连接请求和信息请求(相当于一个被呼叫的电话拥有一个呼叫方知道的电话号码)。
Python中的Socket
Python 提供了两个级别访问的网络服务:
- 低级别的网络服务支持基本的 Socket,它提供了标准的 BSD Sockets API,可以访问底层操作系统Socket接口的全部方法。
- 高级别的网络服务模块 SocketServer, 它提供了服务器中心类,可以简化网络服务器的开发。
在python中我们通过 import socket 来导入socket模块,用 socket()函数来创建套接字,语法格式如下:
socket.socket([family[, type[, proto]]])
——family: 套接字家族可以使AF_UNIX或者AF_INET
——type: 套接字类型可以根据是面向连接的还是非连接分为SOCK_STREAM或SOCK_DGRAM
——protocol: 一般不填默认为0.
Socket对象的方法列表:
服务端的套接字对象方法
方法名称 | 描述 |
---|---|
s.bind() |