python 网络模块_python网络设计模块

1.Socket模块

Socket模块中的socket()方法用于创建套接字,套接字主要是两个程序之间的信息通道,程序可能分布在不同的计算机上,通过套接字相互发送信息

语法格式:socket(socket_family,socket_type,protocol = 0)

socket_family    该参数的值可以为AF_UNIX或AF_INET

socket_type   该参数的值可以为SOCK_STREAM或SOCK_DGRAM

protocol   该参数一般不赋值,默认值为0

2)socket的工作方式

套接字包括两个:服务器套接字和客户机套接字。套接字在工作的时候,将连接对端分为服务器端和客户端,这也是C/S(Client/Server,客户端/服务器端)模式的由来

服务器端套接字必须准备随时处理客户端的连接,同时还要处理多个连接,而客户机只是简单地连接,完成事务、断开连接。

Socket类的实例化需要3个参数:

·第一个参数是地址簇(默认是socket.AF_INET)

·第二个参数是流(默认值为socket.SOCK_STREAM)或数据报(默认值为socket.SOCK_DGRAM)套接字

·第三个参数是使用的协议(默认为0,使用默认值即可)

不同的套接字类型有着不同的套接字地址。在AF_UNIX地址簇中使用一个简单的字符串;在AF_INET地址簇中使用的是host和port地址对,其中host为主机地址名、IP地址或者Internet上的URL,而port则是一个整数;在AF_INET6地址簇中用(host,port,flowinfo,scopeid)元组来表示,其中的host和port与AF_INET中相同。

客户端应用程序在生成套接字对象后,可以调用bind()方法来绑定自己的请求套接字接口地址,然后调用connect()方法来连接服务器端进程。当连接建立后,可以使用send()和recv()方法来传输数据。最后需要使用close()方法将端口关闭。

服务器端套接字使用bind()方法绑定一个套接字接口地址,接着使用listen()方法监听客户端请求。当有客户端请求时,将通过accept()方法来生成一个连接对象,然后通过此连接对象发送和接收数据。数据传输完毕,可以调用close()方法将生成的连接关闭。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值