位置: 编程技术 - 正文

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)

  • 工程会计税率
  • 企业税号还未开户
  • 税金及附加需要计提吗
  • 销售收入怎么计算销项税额
  • 生育津贴是否需要纳税
  • 为什么对子公司长投要用成本法
  • 劳务分包企业所得税25%
  • 直接计入当期损益的利得和损失,是指( )的利得或损失
  • 房地产企业契税税率是多少
  • 代缴税款是什么意思
  • 农产品代销合同协议书范本
  • 出口转内销增值税报表怎么填
  • 待认证进项分录
  • 纳税申报表多缴了怎么办
  • 年终奖有计算公式吗
  • 样板房 家具
  • 产品销售返利模式
  • 拆除固定资产的补偿款
  • 公允价值变动损益属于当期损益吗
  • 长期雇佣临时工
  • 西安的税务局
  • 个人所得税反推器
  • 为什么中国没有工业革命
  • 房产企业可计入开发成本的利息如何确定?
  • 增值税多交了怎么申请退税
  • 暑假工需要什么条件
  • 企业接受投资者的土地使用权投资
  • 非公党费返还
  • windows10.0
  • 对公账户被诈骗转款728000会怎么样呢
  • 存货跌价准备是谁的备抵账户
  • 个税手续费返还属于政府补助吗
  • 以前年度长期待摊费用没摊销怎么办
  • 中介公司代发工资合法吗
  • 企业采用的会计计量基础属于什么
  • 社保费税前扣还是税后扣
  • 操作系统的安全目标主要包括哪些?
  • 固定资产转出是什么意思
  • 房产税会计科目应该走税金及附加还是管理费用
  • PHP:oci_field_name()的用法_Oracle函数
  • 委托银行收款属于什么科目
  • php中的include
  • php图片叠加
  • 销售金额环比
  • web前端性能响应时间
  • php如何上传文件
  • 旧固定资产出售增值税率如何计算
  • 采购原材料凭证是什么
  • 水利基金可以不计提吗
  • 长期待摊费用核销
  • 入库的残料价值包括哪些
  • sql 临时表格
  • 现金回收率怎么计算
  • 车保险里面的车船税
  • 没有发票如何做会计分录
  • 同一张发票报销两次会被发现吗
  • 周转材料期末余额怎么算
  • 怎么冲减多计提的增值税
  • 房子贷款之后尾款发票
  • 劳务报酬现金流量
  • 公司发放给员工的福利又要回
  • 个体工商户怎样申请开票
  • mysql 内存模型
  • 数据库聚簇索引和非聚簇索引
  • linux ifconfig命令详解
  • mac 应用
  • fs是什么文件
  • cocos2dx AudioEngine初体验,音效播放结束判断测试
  • Centos7 中 Node.js安装简单方法
  • Android游戏开发pdf
  • 语音单词怎么读
  • dos命令中运行文件的命令
  • nodejs实战教程
  • python3+PyQt5实现使用剪贴板做复制与粘帖示例
  • 江苏省发票查询电话
  • 西安大修基金和契税怎么计算
  • 发票怎样上传?
  • 上海网上申报软件怎样下载
  • 扬州税务学院住宿环境
  • 贵州省税务局193项业务
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设