位置: 编程技术 - 正文

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)

  • 证书挂靠要申报个人所得税年度汇算吗
  • 房屋租赁如何开增值税专用发票
  • 城市维护建设税的计税依据是什么
  • 公司食堂辅助账怎么记账
  • 资源税类包括哪些税种
  • 应付股东现金股利通过什么核算
  • 注册资本需要实交吗
  • 上月发票错误退回怎么做账
  • 其他应收款资产负债表是负数怎么办
  • 其他现代服务税目包括哪些内容
  • 查增应纳税所得额怎么算
  • 当月进项税额大于销项税额
  • 固定资产当月入账下月计提折旧
  • 以旧换新如何确认收入
  • 公司拍摄产品的文案
  • 建筑业预缴税款都要填哪些表
  • 境外所得纳税
  • 购进租赁设备分录
  • 税收分类编码风险评估
  • 金税四期具体内容
  • 春节公司发福利买什么东西
  • 房地产企业按照功能可分为
  • 统一社会信用代码查询和税号一致吗
  • 银行不肯给电子承兑贴现怎么回事
  • 公司与股东的往来款涉税
  • 公司账户电子承兑
  • 预提费用年底必须结转吗
  • 房屋租赁公司和公寓管理公司区别是什么
  • 汇算清缴时所得税费用
  • 政府授权国企为基建项目建设单位
  • 孕妇可以喝蜂蜜水吗?
  • mac切换不了中文怎么回事
  • Yii2使用驼峰命名的形式访问控制器(实例讲解)
  • 小规模纳税人免征增值税的账务处理
  • 台式电脑组装过程视频
  • linux系统备份整个硬盘的命令
  • 企业存货成本包括利润吗
  • 期间损益结转都结转什么
  • css calculate
  • php使用自定义函数的方式
  • 前端手撕代码
  • 科目汇总表借方发生额等于贷方发生额吗
  • 加油票发票抬头开错了
  • 发票走账不走账怎么处理
  • 一般纳税人资格证明在哪里查询
  • 商品流通企业的含义
  • 一般纳税企业增值税的核算应当使用
  • 增值税发票是记账联还是抵扣联
  • 用友u8财务报表打印设置在哪
  • 原材料的采购成本包括哪些
  • 总公司与分公司的账务处理
  • 如果对装修费用有异议怎么办
  • 金蝶k3怎么打印科目余额表
  • 独立法人资格是独立核算
  • 私营公司应付利息怎么算
  • mysql查询包含
  • ubuntu20.04怎么安装
  • 在Windows Server 2008中配置FTP服务
  • win8系统忘记电脑开机密码怎么办
  • win制作mac启动
  • ds是什么文件
  • 延长药品使用时间的方法
  • win81激活
  • windows 10 升级
  • android游戏排行榜
  • linux shell $1
  • 批处理 dir
  • html模板 js
  • python写一个备份文件功能
  • Unity3D游戏开发标准教程吴亚峰于复兴人民邮电出版社
  • 怎样屏蔽锁屏广告
  • for循环取数据
  • Python中list初始化方法示例
  • 重庆市网上税务局官网
  • 重庆国税电子税务局手机版
  • 个体办税控盘需要什么材料
  • 江苏省南京市国医堂
  • 马达加斯加秒懂百科
  • 代销手续费增值税会计处理
  • 新车购置税是在4s店交吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设