1》Socket简介:
socket通常也称作“套接字”,用于描述IP地址和端口,是一个通信链的句柄,应用程序通常通过“套接字”向网络发出请求或者应答网络请求,socket起源于unix,而 unix/linux基本哲学之一就是“一切皆文件”,对于文件用打开,读写,关闭模式来操作,socket就是该模式的一个实现,socket即是一种特殊的文件,一些socket函数就是对 其进行的操作(读/写IO,打开,关闭);
socket和file的区别:
file模块是针对某个指定文件进行打开,读写,关闭;
socket模块是针对服务器端和客户端Socket进行打开,读写,关闭;
服务器端代码:
客户端代码:
通讯结果:
2》socket连续交互通信:
服务端:
客户端:
服务端通信:
客户端通信:
3》服务端与多个客户端交互通信:
服务端:
客户端:
客户端2:
客户端1断开连接后,客户端2启动连接与服务端交互通信:
服务端重新进入等待中:
客户端2启动连接,进入交互通信:
4》Python3中的socket会遇到的问题:
在Linux中windows中的代码会出问题,需要修改,不需要进行异常检测,代码进阶版为:
服务端:
5》通过socket模拟实现简单的ssh功能:
服务端:
客户端:
效果显示:
优化:当输入的命令没有输出时可以返回一个自定义的输出(比如:cd命令):
客户端优化,输入为空继续,退出按q:
6》通过socket实现大数据传输:
服务端:
客户端:
大数据传输结果: