基于TCP通信的套接字
Posted layerluo
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了基于TCP通信的套接字相关的知识,希望对你有一定的参考价值。
基于tcp通信的套接字必须先启动服务器再去启动客户端去链接服务器
客户端
服务端
这只是基于tcp通信的一个简单的套接字 只能进行一次的通信
服务端 客户端
这是能多次通信的套接字
在阻塞前添加一个循环就能实现一个链接循环
服务端
客户端
这是模拟ssh实现远程执行命令
粘包问题
二、两种情况下会发生粘包。
1.发送数据时间间隔很短,数据了很小,会合到一起,产生粘包
2.接收方不及时接收缓冲区的包,造成多个包接收(客户端发送了一段数据,服务端只收了一小部分,服务端下次再收的时候还是从缓冲区拿上次遗留的数据,产生粘包)
客户端
服务端
之前的ssh远程执行命令一直会有粘包问题存在 用struct模块能很好的解决粘包问题
服务端
客户端
以上是关于基于TCP通信的套接字的主要内容,如果未能解决你的问题,请参考以下文章