python实现socket简单通信
首先先来简单介绍下socket:
(具体更详细介绍的可以在网上找找,都讲得非常详细),这里主要是我自己的一些理解。
socket是在应用层与传输层之间的一个抽象层,它的本质是编程接口,通过socket,才能实现TCP/IP协议。
它就是一个底层套件,用来处理最底层消息的接受和发送。
socket翻译为套接字,可以把TCP/IP复杂的操作抽象为简单的几个接口来供应用层调用来实现进程在网络中的通信。socket起源于Unix,而Unix的基本要素之一就是“一切都为文件”,即可以通过打开——读写——关闭的模式来操作,通过这一点我们就可以来实现socket的简单编写
这里再贴上关于socket工作原理的具体图像:
大家若有看不懂的,也先别着急,看完下面的再来结合这张图理解会有更深的理解
其实在本机上,我们可以通过PID来标识唯一一个进程,但如果网络中的两个进程要进行通讯的话,PID的冲突就很大了,这个时候IP协议的ip地址就可以来标识主机,而TCP的协议与端口号可以标识主机的一个进程,所以就可以通过ip地址+协议+端口号来标识网络中的某个进程
大概了解的差不多了,我就来说说python里的socket库
先简单介绍一些socket库里的参数:
首先是地址蔟