centos发包 centos镜像下载

大家好,关于centos发包很多朋友都还不太明白,今天小编就来为大家分享关于centos镜像下载的知识,希望对各位有所帮助!

CentOS下TCP断线监测详解

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

一,心跳包机制

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

二,利用tcp_keepalive机制

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

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

# sysctl-a|grep tcp_keepalive

显示如下:

net.ipv4.tcp_keepalive_intvl= 75

net.ipv4.tcp_keepalive_probes= 9

net.ipv4.tcp_keepalive_time= 7200

分别说一下这三个参数:

tcp_keepalive_time参数:

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

keepalive_intvl参数:

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

keepalive_probes参数:

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

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

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

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

修改/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对应

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

玩转tcpdump解决Centos7环境抓包难题

网络数据采集分析工具 Tcpdump

借助 host参数筛选特定主机

1. Tcpdump选项详解

基于IP地址过滤:通过 host参数指定特定IP进行筛选

-根据源IP筛选

-根据目标IP筛选

基于网段过滤:net参数用于指定特定网段

对于同一网段,可细分为源网段和目标网段

基于端口过滤:port参数用于指定特定端口筛选

端口可再细分为源端口与目标端口

同时指定多个端口或端口段简化筛选

使用协议名代替端口号筛选特定协议

如 http对应 80,https对应 443

基于协议过滤:proto参数用于筛选常见协议,如 tcp、udp、icmp等

查看 ICMP包时,直接使用 icmp

protocol参数值包括:ip、ip6、arp、rarp等

输出抓取数据至文件:使用-w参数生成 pcap文件

结合 wireshark分析数据

读取 pcap文件使用-r参数

过滤与分析结合使用

提取 HTTP用户代理:从请求头筛选

提取用户代理与主机名:使用 egrep同时筛选

找出发包最多的IP:统计分析筛选

抓取 DNS请求与响应:通过端口筛选

切割 pcap文件:自动管理大文件

按小时创建新文件:避免数据过大覆盖旧文件

CentOS下千兆网卡带宽测试详解

iperf是一个基于C/S模型的纯带宽测试软件,可以测试网卡的吞吐量。

iperf的好处是纯粹发包和接收,防止硬盘拖后腿,影响测试结果。

本文以千兆网卡Bcom 5720进行测试,环境CentOS 6.4 x64

在两台机器上分别安装iperf

yuminstalliperf--enablerepo=epel

在其中一台以服务端方式启动,并开放防火墙5001端口

iperf-s-i 1-w 448k

启动结果如下:

Server listening on TCP port 5001

TCP window size: 448 KByte

在另一台上,以客户端方式连接到服务端,测试10分钟

iperf-c 10.10.10.22-i 1-w 448k-t 600

此时,服务端会显示如下信息

[ 4]local10.10.10.22 port 5001 connected with 10.10.10.11 port 56251

[ ID] Interval Transfer Bandwidth

[ 4] 0.0- 1.0 sec 112 MBytes 941 Mbits/sec

[ 4] 1.0- 2.0 sec 112 MBytes 941 Mbits/sec

[ 4] 2.0- 3.0 sec 112 MBytes 941 Mbits/sec

[ 4] 3.0- 4.0 sec 112 MBytes 941 Mbits/sec

[ 4] 4.0- 5.0 sec 112 MBytes 941 Mbits/sec

[ 4] 5.0- 6.0 sec 112 MBytes 941 Mbits/sec

[ 4] 6.0- 7.0 sec 112 MBytes 941 Mbits/sec

[ 4] 7.0- 8.0 sec 112 MBytes 941 Mbits/sec

客户端信息则是

3] 46.0-47.0 sec 112 MBytes 942 Mbits/sec

[ ID] Interval Transfer Bandwidth

[ 3] 47.0-48.0 sec 112 MBytes 941 Mbits/sec

[ ID] Interval Transfer Bandwidth

[ 3] 48.0-49.0 sec 112 MBytes 942 Mbits/sec

[ ID] Interval Transfer Bandwidth

[ 3] 49.0-50.0 sec 112 MBytes 941 Mbits/sec

[ ID] Interval Transfer Bandwidth

[ 3] 50.0-51.0 sec 112 MBytes 942 Mbits/sec

[ ID] Interval Transfer Bandwidth

[ 3] 51.0-52.0 sec 112 MBytes 941 Mbits/sec

[ ID] Interval Transfer Bandwidth

[ 3] 52.0-53.0 sec 112 MBytes 941 Mbits/sec

[ ID] Interval Transfer Bandwidth

[ 3] 53.0-54.0 sec 112 MBytes 942 Mbits/sec

[ ID] Interval Transfer Bandwidth

[ 3] 54.0-55.0 sec 112 MBytes 941 Mbits/sec

以上信息显示,当前网卡传输速度约为940Mbit/s,接近理论速度1G/s,下载速度112M/s,也接近理论速度125M/s,通过cacti带宽监控,也显示上述统计结果。

至此,千兆网卡验明正身。

补充说明,影响带宽的可能原因有很多:

1、交换机是百兆的,通信枢纽

2、千兆网卡工作在百兆模式,参与测试的机器任意一台工作在百兆都不行

3、用真实的硬盘文件进行测试,硬盘速度拖后腿

阅读剩余
THE END