社区
Linux/Unix社区
帖子详情
linux下什么函数可以检测TCP的链接是否还有效?
qsyang
2004-02-16 10:44:28
我这边做server端,需要检测client是否已经关闭了连接,有什么函数吗?我找了半天都没找到。
...全文
101
1
打赏
收藏
linux下什么函数可以检测TCP的链接是否还有效?
我这边做server端,需要检测client是否已经关闭了连接,有什么函数吗?我找了半天都没找到。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
1 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Microsoft
2004-04-07
打赏
举报
回复
那什么信号能检测到客户端来连接?
怎样及时
检测
出非正常断开的
TCP
连接.DOC
怎样及时
检测
出非正常断开的
TCP
连接,有实现代码
linux
判断网络
是否
连通
函数
,
TCP
连接状态-如何判断一个
TCP
连接
是否
可用
转自:https://www.cnblogs.com/gwwdq/p/9261615.html作者:吉瓦吴老师在使用一个长连接的
TCP
时,如果
TCP
服务器端接收到
TCP
的客户端连接过来后,接着服务器端的
TCP
节点需要对这个客户端进行数据收发,收发时需要判断这个SOCKET
是否
可用用,判断方法有多种;1.
linux
的5种方法,本人在使用modbus服务器端判断已经连接的设备或是gprs服务器对已经连...
在
Linux
中使用 epoll 处理
TCP
连接断开问题
首先开启 SO_KEEPALIVE 选项,然后设置了
TCP
_KEEPIDLE (连接空闲多久后开始发送探测包)、
TCP
_KEEPINTVL (探测包发送间隔)和
TCP
_KEEPCNT (探测失败多少次后认为连接断开)这几个和 Keep - Alive 相关的参数。在底层网络设备(如网卡)没有向
TCP
协议栈反馈链路故障的情况下,
TCP
连接会处于一种看起来仍然“正常”的状态,实际上数据已经无法传输了。在
Linux
中使用 epoll 处理
TCP
连接时,默认情况下无法直接
检测
到网线断开这类物理链路故障。
linux
tcp
服务端
检测
链路断开,
tcp
服务端如何判断客户端断开连接
1.C/S结构。功能方面比较简单就是client端与server端建立连接,然后发送消息给server,如果socket连接断开(异常,正常)后,我如何才能感知到?要求:server端这边是绝对被动的,sever端不能主动断开连接。也没有连接链路维持包之类的。client端发送数据的时间也是不定的。在socket连接断开后, server要能够感知到并释放资源。方案1:当使用 select()
函数
...
linux
tcp
断线
检测
,
linux
socket
tcp
断开
检测
经过实际测试,根据测试结果做的socket断开
检测
。目前应用在项目中正常。有更好的方法,期待交流。1、send非阻塞 client/server端send:①对端close(fd)
检测
:send 返回-1,错误errno == EPIPE,说明对端进程被kill掉,即正常close(fd)的效果②网线断开/断电关机
检测
(超时
检测
):send 返回-1,errno == EWOULDBLOCK,意为...
Linux/Unix社区
23,224
社区成员
74,537
社区内容
发帖
与我相关
我的任务
Linux/Unix社区
Linux/Unix社区 应用程序开发区
复制链接
扫一扫
分享
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章