socket recv 服务端阻塞 python_网络编程(基于socket编程)

本文介绍了Python中的socket编程,包括套接字的工作流程、socket模块函数的使用方法,以及一个简单的远程命令执行服务端和客户端代码示例。服务器通过bind、listen和accept监听并处理客户端连接,客户端则通过connect发送命令,双方使用recv和send进行数据交互。
摘要由CSDN通过智能技术生成

网络编程(基于socket编程)

socket套接字:应用程序通常通过socket“套接字”向网络发送请求或应答网络请求,是主机间或同一计算机中的进程间相互通讯

socket是介于应用层和TCP、UDP/IP协议中间的一个抽象层,它是一组接口,它将复杂的TCP、UDP/IP协议封装在每一个socket接口中,我们只要使用这一组简单的接口就可以完成数据传输

套接字工作流程(三次握手,四次挥手)

发送建立请求,回应请求并发送建立请求,回应请求(三握手)

发送关闭请求,回应关闭请求,发送关闭请求,回应关闭请求(四挥手)

服务端先初始化一个socket(创建socket),然后与端口绑定,监听端口,调用accept阻塞,等待客户端的连接。之后客户端初始化也一个socket,连接服务端,连接成功就相当于两端的连接建立起来了。接着客户端发送数据请求,服务端接收并处理数据请求,然后把回应数据发至客户端,最后关闭连接,一次交互结束

socket模块函数用法

在python中,我们通过socket()函数来创建“套接字”

创建套接字的语法格式 s =socket.socket(family,type,protocol) #s类似于一个标识符

family:最常用的是基于IPv4网络协议的套接字家族AF-INET(适用于跨机器间的通讯即主机间通讯),还有一种基于文件类型的套接字家族AF-U

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值