码迷,mamicode.com
首页 > 其他好文 > 详细

基于TCP通信的套接字

时间:2018-09-03 22:27:13      阅读:207      评论:0      收藏:0      [点我收藏+]

标签:bubuko   tcp通信   inf   链接服务器   服务   简单的   时间   间隔   执行   

基于tcp通信的套接字必须先启动服务器再去启动客户端去链接服务器

客户端

技术分享图片

服务端

技术分享图片

这只是基于tcp通信的一个简单的套接字  只能进行一次的通信

 

 

 服务端                                                                                                 客户端

技术分享图片技术分享图片

这是能多次通信的套接字

 

 

 在阻塞前添加一个循环就能实现一个链接循环

技术分享图片

 

服务端

技术分享图片

客户端

技术分享图片

这是模拟ssh实现远程执行命令

 

 

 粘包问题

二、两种情况下会发生粘包。

1.发送数据时间间隔很短,数据了很小,会合到一起,产生粘包

2.接收方不及时接收缓冲区的包,造成多个包接收(客户端发送了一段数据,服务端只收了一小部分,服务端下次再收的时候还是从缓冲区拿上次遗留的数据,产生粘包)

客户端

技术分享图片

服务端

技术分享图片

 

之前的ssh远程执行命令一直会有粘包问题存在 用struct模块能很好的解决粘包问题

服务端

技术分享图片技术分享图片

 

客户端

技术分享图片

 

基于TCP通信的套接字

标签:bubuko   tcp通信   inf   链接服务器   服务   简单的   时间   间隔   执行   

原文地址:https://www.cnblogs.com/layerluo/p/9581314.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!