位置: 编程技术 - 正文

CentOS下TCP断线监测详解(centos7 tcp6)

编辑:rootadmin

推荐整理分享CentOS下TCP断线监测详解(centos7 tcp6),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:tcping centos,centos7 tcp6,centos7 tcp连接数,centos7 tcpdump,centos tcp连接数,centos7 tcp连接数,centos7 tcp连接数,centos tcp连接数,内容如对您有帮助,希望把文章链接给更多的朋友!

TCP正常的断开,通信双方(服务端和客户端)都是能知道的。但是非正常的断开,比如直接拔掉了网线,就只能靠如下两种方法,实现短时间内的检测。

一,心跳包机制

心跳包机制,是网游设计中的常用机制。从用户层面,自己发包去判断对方连线状态。可以根据情况,很灵活的使用。比如,秒发送一个最小的数据包(也可以根据实际情况稍带一些其他数据)。如果发送没有回应,就判断对方掉线了。

二,利用tcp_keepalive机制

利用TCP的机制,通过设置系统参数,从系统层面,监测tcp的连接状态。以下为linux下的方法:

1,首先查看系统tcp_keepalive相关参数(centos和Ubuntu)

# sysctl -a|grep tcp_keepalive

显示如下:

net.ipv4.tcp_keepalive_intvl =

net.ipv4.tcp_keepalive_probes = 9

net.ipv4.tcp_keepalive_time =

分别说一下这三个参数:

tcp_keepalive_time 参数:

是指TCP发送keepalive消息的频度,默认为秒,也就是两个小时。

keepalive_intvl 参数:

当探测没有确认时,重新发送探测的频度。默认是秒。

keepalive_probes 参数:

在认定连接失效之前,发送多少个TCP的keepalive探测包。默认值是9次。

--------------------------------------------------------------------

2,修改系统的tcp_keepalive相关参数

在知道以上三个系统参数的定义和作用之后,我们来修改一下这三个参数:

CentOS下TCP断线监测详解(centos7 tcp6)

修改/etc/sysctl.conf文件:

# vi /etc/sysctl.conf

在打开的文件中,加入如下三行:

net.ipv4.tcp_keepalive_intvl = 1

net.ipv4.tcp_keepalive_probes = 1

net.ipv4.tcp_keepalive_time = 5

保存文件。

--------------------------------------------------------------------

3,重启服务器。

# reboot

附注:或者临时使系统设置生效也行:# sysctl -p

--------------------------------------------------------------------

4,修改程序代码部分。

注意:仅仅配置内核参数是不够的,还必须在编程的时候设置套接字的选项,调用函数是

socket.setsockopt(level, optname, value)

示例:

level为SOL_SOCKET的话,选项为SO_KEEPALIVE,值为布尔。

socket.setsockopt(socket.SOL_SOCKET, socket.SO_KEEPALIVE, True)

此外还可以设置TCP选项(设置的level为SOL_TCP而不是SOL_SOCKET)覆盖系统全局设置

TCP_KEEPCNT 与tcp_keepalive_probes 对应

TCP_KEEPIDLE 与tcp_keepalive_time 对应

TCP_KEEPINTVL 与tcp_keepalive_intvl 对应

--------------------------------------------------------------------

centos下关闭selinux不重启的方法 关闭SELinux的方法:修改/etc/selinux/config文件中的SELINUX=为disabled,然后重启。如果不想重启系统,使用命令setenforce0注:setenforce1设置SELinux成为enforcing模式

CentOS下找出大文件命令的方法 Q.如何在目录中找出所有大文件?A.1)句法forRedHat/CentOS/FedoraLinuxfind{/path/to/directory/}-typef-size+{size-in-kb}k-execls-lh{};|awk{print$9:$5}实例:查找当前目录下大于MB

CentOS开机自动运行自己的脚本详解 记录这个事情是上次完成之后,今天要新加一个文件夹,一时之间忘记以前怎么做了,因为有几种方法,起码我知道三种方法,这里记录一笔以前的做

标签: centos7 tcp6

本文链接地址:https://www.jiuchutong.com/biancheng/357111.html 转载请保留说明!

上一篇:Centos7安装时注意事项详解(centos7安装过程报错)

下一篇:centos下关闭selinux不重启的方法(linux如何关闭selinux)

  • 劳务费增值税专用发票税率是多少
  • 增值税发票管理办法及细则
  • 季报需要注意什么
  • 劳务公司在异地做项目需要提供当地完税证明
  • 事业单位资产负责比往年增加表明什么
  • 开票地址太长显示不全
  • 非营利组织的项目管理流程包括
  • 员工一次性伤残补助金
  • 合法有效的凭证
  • 发票丢失说明怎么填写
  • 施工机械保险费属于什么费用
  • 行政单位财务长期挂账处理办法
  • 法人代表领工资怎么领
  • 企业收取多年租金怎么算
  • 免抵税额和免抵退税额有什么区别
  • 个体户在银行开户
  • 餐饮业中的赠菜计入什么科目
  • 税收滞纳金可以税前扣除吗
  • 帮忙介绍业务
  • 房产开发企业涉及税种
  • 珊瑚礁区域常有的鱼类
  • css定位属性的运用
  • 深度学习参数初始化(二)Kaiming初始化 含代码
  • php递归算法经典题目
  • 房企预缴税款会退税吗
  • 财务人员工资构成
  • 固定资产入账是税前还是税后
  • Python函数的参数及其类型
  • SQLite教程(四):内置函数
  • sql server功能介绍
  • 收到货款没开票的会计分录怎么做
  • 公司注销公章的处理
  • 实收资本与注册资本之间的关系
  • 企业所得税的征税对象包括( )
  • 广告费的税费分录
  • 股东权益是资产吗
  • 二手房交易需缴纳哪些费用
  • 有哪些企业项目
  • 固定资产到期后继续使用
  • 售出货物
  • 固定资产被盗报警
  • 补提企业所得税后怎么调整未分配利润
  • 进项增值税发票抵扣期限
  • 民非企业怎么给员工交五险
  • 原材料采购未入库会计分录
  • 四技合同是什么?
  • 客户逾期不付款,需要赔多少违约金
  • sql添加后返回主键
  • 让windows server 2003 32位支持8G内存大内存
  • os x yosemite10.10.5怎么样?os x yosemite10.10.5公测版下载地址
  • windowsxp怎么卸载
  • mac安装软件提示无法检查更新
  • xp系统如何设置默认软件
  • 毕竟近义词语
  • Win10系统怎么使用经典事件查看器?
  • Win10 64位系统下QQ语音和QQ视频音量很小的两种解决方法
  • win7系统无法删除打印机驱动
  • win8.1如何更新到win10
  • 怎样解决windows照片查看器无法显示此图片
  • Win7摄像头驱动程序
  • css 3
  • JavaScript中的数据类型分哪为两大类?
  • Unity3D游戏开发(第2版)
  • unity 游戏保存
  • jQuery+PHP+MySQL实现无限级联下拉框效果
  • html里的标签
  • js math.js
  • android 系统app开机自启动设置
  • centos python2.7升级到3.7
  • 如何查政审合不合格
  • 国税系统公务员政审父母超生合格吗
  • 江苏增值税发票代码
  • 增值税发票综合服务平台登录不了
  • 纳税人虚假纳税申报
  • 通用申报表怎么填样本
  • 税务总局和各省税务机关
  • 如何查询甘肃省学业水平考试成绩
  • 计算本月应交消费税分录
  • 北京税务迁址流程是什么
  • 汕头汕尾什么意思
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设