社区
C++ 语言
帖子详情
TCP Socket 长连接问题
chrischeng03
2010-06-24 04:36:47
最近在做Linux 下Socket长连接编程时遇到一个问题,当Socket有一段时间没有数据发送(这时Socket客户端和服务器端还是连接着的),突然发送一条信息,调用send函数成功,但是接收方却接收不到信息,当紧接着再发送一次时则可以收到(前一次的包已经丢弃了),请各位大虾指点下。
环境:Linux
语言:c++
...全文
737
38
打赏
收藏
TCP Socket 长连接问题
最近在做Linux 下Socket长连接编程时遇到一个问题,当Socket有一段时间没有数据发送(这时Socket客户端和服务器端还是连接着的),突然发送一条信息,调用send函数成功,但是接收方却接收不到信息,当紧接着再发送一次时则可以收到(前一次的包已经丢弃了),请各位大虾指点下。 环境:Linux 语言:c++
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
38 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Nov_c
2010-12-20
打赏
举报
回复
抓包看下失败发生在什么地方
koolxiaoyuer
2010-12-20
打赏
举报
回复
心跳包,学习了
JieCh121599
2010-12-20
打赏
举报
回复
会不会是在Client::recv()的时候,没有WaitSingleEvent(),导致文件接收的顺序错误?
zuoguodang
2010-12-20
打赏
举报
回复
发心跳啊
flandy_feng
2010-12-19
打赏
举报
回复
可以抓包分析下,看数据包究竟有没发送成功;或者对方有没收到数据包。
sharpor
2010-12-19
打赏
举报
回复
这个问题应该不是心跳的问题。
应该是接收端处理程序问题的可能性比较大。
检测方法是抓包。看第一次send的时候,网络上是不是走了send的数据。我觉得应该是走了数据。
longren331100
2010-12-17
打赏
举报
回复
up,围观学习中
全速前行
2010-12-17
打赏
举报
回复
这样说太笼统了,下一次再发送,客户就能接到,说明连接没有断开。
lz还是考虑其他方面原因
汗晕倒
2010-06-30
打赏
举报
回复
mark~~~~~~~
秋悦恒迹
2010-06-30
打赏
举报
回复
DDDDD
mofeellassie
2010-06-30
打赏
举报
回复
服务器端不能有效的判断客户端是否在线也就是说,服务器无法区分客户端是长时间在空闲,还是已经掉线的情况
mofeellassie
2010-06-30
打赏
举报
回复
服务器端不能有效的判断客户端是否在线也就是说,服务器无法区分客户端是长时间在空闲,还是已经掉线的情况
Jonix
2010-06-29
打赏
举报
回复
TCP 包怎么会丢呢?
aytchvtdbhfcfgc12155
2010-06-29
打赏
举报
回复
up^
Xiaoloveliuforever
2010-06-29
打赏
举报
回复
你这样泛泛的说 实在不知道哪里出问题了
不过TCP是可靠的连接 不会出现丢包的情况 这是可以肯定的
赵4老师
2010-06-29
打赏
举报
回复
《TCP-IP详解卷一:协议》第17到23章
herman~~
2010-06-29
打赏
举报
回复
应该是没有保持连接的问题了
chrischeng03
2010-06-28
打赏
举报
回复
[Quote=引用 4 楼 lianshaohua 的回复:]
Keep-Alive的问题,设置为true,
[/Quote]
试了用Keep-Alive还是丢包啊
chrischeng03
2010-06-28
打赏
举报
回复
[Quote=引用 3 楼 macrojj 的回复:]
Mark
[/Quote]
试了,好像还是不行啊
yongta
2010-06-28
打赏
举报
回复
Socket连接保持一段时间后也会释放吧.
加上心跳检测包或者握手相关的消息,发送成功对方应该是收到了,
加载更多回复(16)
Python网络编程(
socket
)
答案就是
socket
.
socket
翻译为套接字,它本质就是在应用层和传输层(
TCP
/IP协议族通信)之间的一个抽象层,是一组接口,它把
TCP
/IP层复杂的操作抽象为几个简单的接口供应用层调用已实现进程在网络中通信。该课程包括OS...
TCP
Socket
与
TCP
连接
为建立
tcp
连接所需要的
socket
给新建的
socket
绑定IP和port。 其中serv_addr结构体内包含了IP和port信息。 通过系统调用接收连接 这里newsockfd是通过系统调用新建的
socket
文件描述符。当server...
TCP
socket
中的
长连接
与短连接的区别
当网络通信时采用
TCP
协议时,在真正的读写操作之前,server与client之间必须建立一个连接,当读写操作完成后,双方不再需要这个连接时它们可以释放这个连接,连接的建立是需要三次握手的,而释放则需要4次握手,所以...
HTTP、
TCP
、
Socket
、
长连接
、短连接的概念和原理及其区别
文章目录HTTPScoketHTTP协议和
TCP
/IP的关系
Socket
与
TCP
/IP的关系
Socket
与HTTP的关系
TCP
/IP协议分层
长连接
和短连接
长连接
和短连接的优点和缺点短连接的操作步骤
长连接
的操作步骤什么时候用
长连接
,短连接?...
Socket
长连接
和短连接的区别
短连接 连接->传输数据->关闭连接 ...短连接是指
SOCKET
连接后发送后接收完数据后马上断开连接。...
长连接
指建立
SOCKET
连接后不管是否使用都保持连接,但安全性较差。 http的
长连接
HTTP也可以建立
长连接
的
C++ 语言
64,631
社区成员
250,926
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章