- 浏览: 427374 次
- 性别:
- 来自: 杭州
文章分类
最新评论
-
lkun__blog:
网页打不开啊
博客搬家到http://cuiz.me -
bglmmz:
楼主怎么解决的?我用python调用ice服务,也出现此问题, ...
syscall exception: 存储空间不足,无法处理此命令 -
luliangy:
哥,你什么配置,我10W个请求10秒左右就搞定了,毫无压力,R ...
Nginx和Apache简单的并发压力测试 -
liuxuejin:
这!看的我都···········。我看代码而已。怎么
EPOLL及消息队列实现SMTP 之 青楼的故事 -
zires:
night_stalker 写道unicorn 也很好维护啊, ...
Unicorn和Passenger性能测试对比
宿主机指XEN服务器,VM1和VM2都是XEN上的两个虚拟机,我们这次的性能测试要压VM1.
iptables的规则是在vm1的网桥上的,
通过对XEN服务器上的iptables的vm1链定义过滤规则,来测试不同规则数量对XEN服务器系统资源的影响.
场景一:
下图是压力源,选择的是Telnet的场景,从三台压力机对xm list中的vm1进行压力测试,每个链接都是长链接,共204个链接.
VM1上规则如下:
[root@localhost ~]# iptables-save |head -n100
# Generated by iptables-save v1.3.5 on Mon Nov 9 16:17:38 2009
*nat
:PREROUTING ACCEPT [11544456:847083593]
:POSTROUTING ACCEPT [1787885:91787925]
:OUTPUT ACCEPT [2030:122721]
COMMIT
# Completed on Mon Nov 9 16:17:38 2009
# Generated by iptables-save v1.3.5 on Mon Nov 9 16:17:38 2009
*filter
:INPUT ACCEPT [26255:1538953]
:FORWARD ACCEPT [86828026:3584385134]
:OUTPUT ACCEPT [24707:11914350]
:vm1 - [0:0]
-A FORWARD -m physdev --physdev-in peth0 --physdev-out vif10.0 -j vm1
-A vm1 -p tcp -m state --state RELATED,ESTABLISHED -j RETURN
-A vm1 -s 192.168.1.1 -p tcp -j ACCEPT
-A vm1 -s 192.168.1.2 -p tcp -j ACCEPT
-A vm1 -s 192.168.1.3 -p tcp -j ACCEPT
-A vm1 -s 192.168.1.4 -p tcp -j ACCEPT
-A vm1 -s 192.168.1.5 -p tcp -j ACCEPT
-A vm1 -s 192.168.1.6 -p tcp -j ACCEPT
.............
[root@localhost ~]# iptables-save |tail -n10
-A vm1 -s 192.168.139.13 -p tcp -j ACCEPT
-A vm1 -s 192.168.139.14 -p tcp -j ACCEPT
-A vm1 -s 192.168.139.15 -p tcp -j ACCEPT
-A vm1 -s ! 192.168.0.0/255.255.0.0 -p tcp -m tcp --dport 22 -j ACCEPT
-A vm1 -s ! 192.168.0.0/255.255.0.0 -p tcp -m tcp --dport 12345 -j ACCEPT
-A vm1 -s ! 192.168.0.0/255.255.0.0 -p tcp -m tcp --dport 10115 -j ACCEPT
-A vm1 -j ACCEPT
-A vm1 -j DROP
COMMIT
# Completed on Mon Nov 9 16:18:45 2009
规则数量:
[root@localhost ~]# iptables-save |grep "A vm1 -s" -c
34380
宿主机系统资源截图:
在这张图里面可以看到cpu时间花在softirq上有20.6%之多,
压力执行过程中iptables执行状态
[root@localhost ~]# iptables -vnL|head -n 10
Chain INPUT (policy ACCEPT 12078 packets, 792K bytes)
pkts bytes target prot opt in out source destination
Chain FORWARD (policy ACCEPT 81M packets, 3330M bytes)
pkts bytes target prot opt in out source destination
116K 9011K vm1 all -- * * 0.0.0.0/0 0.0.0.0/0 PHYSDEV match --physdev-in peth0 --physdev-out vif10.0
Chain OUTPUT (policy ACCEPT 10612 packets, 8726K bytes)
pkts bytes target prot opt in out source destination
[root@localhost ~]# iptables -vnL|tail -n 5
0 0 ACCEPT tcp -- * * !192.168.0.0/16 0.0.0.0/0 tcp dpt:22
0 0 ACCEPT tcp -- * * !192.168.0.0/16 0.0.0.0/0 tcp dpt:12345
0 0 ACCEPT tcp -- * * !192.168.0.0/16 0.0.0.0/0 tcp dpt:10115
14783 1167K ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0
0 0 DROP all -- * * 0.0.0.0/0 0.0.0.0/0
可以看到都被倒数第二条规则接收了.
附加信息:
vm1的数据流量:
root@ubuntu:~# ifstat
eth0
KB/s in KB/s out
2634.01 2632.44
2664.86 2662.29
2635.10 2633.90
2600.32 2599.70
2556.24 2553.81
2679.63 2679.75
2674.94 2674.52
2682.71 2678.81
2690.86 2689.16
2643.59 2641.61
2632.98 2630.52
2615.44 2615.29
压力源和VM1的网络链接状态(压力机上):
root@ubuntu:~# netstat -an|grep 10.2.226
tcp 0 0 10.2.226.221:10115 10.2.226.16:21482 TIME_WAIT
tcp 0 0 10.2.226.221:10115 10.2.226.15:26357 TIME_WAIT
tcp 0 1 10.2.226.221:12345 10.2.226.42:54471 ESTABLISHED
tcp 0 0 10.2.226.221:10115 10.2.226.16:21483 TIME_WAIT
tcp 0 0 10.2.226.221:10115 10.2.226.15:26356 TIME_WAIT
tcp 0 1 10.2.226.221:12345 10.2.226.42:54470 ESTABLISHED
tcp 0 0 10.2.226.221:10115 10.2.226.16:21480 TIME_WAIT
tcp 0 0 10.2.226.221:10115 10.2.226.15:26359 TIME_WAIT
tcp 0 1 10.2.226.221:12345 10.2.226.42:54469 ESTABLISHED
tcp 0 0 10.2.226.221:10115 10.2.226.16:21481 TIME_WAIT
tcp 0 0 10.2.226.221:10115 10.2.226.15:26358 TIME_WAIT
tcp 0 1 10.2.226.221:12345 10.2.226.42:54468 ESTABLISHED
压力源和VM1之间连接数:
root@ubuntu:~# netstat -an|grep 10.2.226 -c
206
root@ubuntu:~# netstat -an|grep 10.2.226 |wc -l
206
测试场景二:
压力源不变,
iptables规则逻辑不变,
更改规则数量为:
[root@localhost ~]# iptables-save |grep "A vm1 -s" -c
252
此时宿主机系统资源截图:
softirq占用了cpu的19%,也不少么!
这个试验证实了在该测试环境中,iptables的规则数对iptables主机的系统资源占用并无多大影响.
不过还两个问题还需要继续验证:
一:
目前这个场景的iptables只有一条接收所有请求.
如果有个场景的N条规则,每条规则都接受M条请求,会不会跟现在被测场景的消耗资源情况一样?
二:
softirq占用的CPU是都给iptables使用去了么?还是被XEN server使用了?
参考资料:
什么是softirq:
http://www.lslnet.com/linux/f/docs1/i48/big5331376.htm
ksoftirqd进程的解释:
http://blog.csdn.net/qinzhonghello/archive/2008/12/15/3524236.aspx
发表评论
-
Linux标准输出看不到
2011-03-04 11:03 1305printf输出看不到,原因是stdin输出是行缓冲,要有换行 ... -
笔试题目草稿-C语言基础及算法
2010-08-24 15:38 1669#include <stdlib.h> ... -
Xnix系统下某些软件自动安装脚本
2010-03-09 10:15 1403我这里把我用到的那些东东整理一下,以后再安装直接copy就好了 ... -
SNMP和开源监控的一些资料
2009-11-22 09:29 2426http://blog.chinaunix.net/u/804 ... -
Chariot Endpoint相关
2009-11-16 13:52 1824Endpoint 5.0和7.0的目录名字不同, 5.0是:/ ... -
【LVS】作者:章文嵩博士-茶话会
2009-11-09 22:10 3126有图有真相 顺便学一下LVS ^-^ ... -
can't read "build.cmd": Failed to locate 'make' in path
2009-10-21 23:03 1618引用can't read "build.cmd&qu ... -
计算Linux某一进程所占用内存
2009-09-18 14:43 1802下面这个代码可以得到当前进程所占用的内存: cat /pro ... -
proc/{pid}/stat
2009-09-17 16:25 1326Linux中,某个进程消耗的CPU, 需要查看proc/{pi ... -
Epoll,Poll,Select
2009-09-16 11:56 1952先说Select: 1.Socket数量限制:该模式可操作的S ... -
Unix下跟踪一条命令的执行
2009-09-09 18:20 812strace -v ps -e 2>ps.txt -
别总以为自己很烂
2009-09-07 15:24 962我想写个Unix通用的监控, Linux上有proc很方便, ... -
Shell越写越复杂
2009-08-10 14:09 1007ps axf|grep "/usr/local/bi ... -
我的Haproxy做负载均衡的几个配置
2009-08-07 18:23 3898Normal 写道global maxconn 4096 nb ... -
我的IPVS(LVS)做负载均衡配置
2009-08-07 18:18 1239less /etc/sysconfig/ipvsadm 写道- ... -
<<LINUX内核完全注释>>阅读笔记------信号
2009-08-01 11:00 1070信号,signal.c: 信号一种软件中断。 在内核代码中通常 ... -
<<LINUX内核完全注释>>阅读笔记------进程初始化及进程调度
2009-08-01 10:53 1019进程初始化: 在内核态下运行的进程不能被其他进程抢占,内核在执 ... -
<<LINUX内核完全注释>>阅读笔记------进程数据结构
2009-08-01 10:52 1426Linux系统中一个进程可以在内核态或用户态下执行,并且分别使 ... -
这两天在玩进程通信
2009-07-17 16:54 952被研究对象:管道、信号 挺有意思。 java被局限于一个虚 ... -
如何使用Apache作为前端负载均衡器
2009-02-12 21:33 1576在某些场景中,我们需 ...
相关推荐
rpm -ivh iptables-1.4.7-19.el6.x86_64.rpm or yum localinstall -y iptables-1.4.7-19.el6.x86_64.rpm 启动: service iptables start 停止: service iptables stop 重启 service iptables restart 基本防护...
通常应有两个软件包:一个是iptables服务(`iptables-1.4.21-35.el7.x86_64`),另一个是iptables服务(`iptables-services-1.4.21-35.el7.x86_64`)。 #### 三、安装步骤 接下来是具体的安装步骤: 1. **安装...
iptables-services-1.4.21-28.el7.x86_64.rpm 下载安装
iptables-services-1.4.21-34.el7.x86_64.rpm
iptables-1.4.21-35.el7.i686.rpm和iptables-services-1.4.21-35.e
centos7离线安装iptables,iptables-1.4.21-34.el7.x86_64.rpm和iptables-services-1.4.21-34.el7.x86_64.rpm
centos7 iptables-services-1.4.21-17.el7.x86_64.rpm 安装包 下载
* 设定默认规则在 iptables 规则中没有匹配到规则则使用默认规则进行处理 * iptables -P INPUT DROP * iptables -P OUTPUT ACCEPT * iptables -P FORWARD DROP * 配置 SSH 规则: + iptables -A INPUT -p tcp --...
centOS7适用,iptables-services-1.4.21-35.el7.x86_64.rpm
centOS7适用,iptables-1.4.21-35.el7.x86_64.rpm
Linux 上 iptables 防火墙的应用教程 ...iptables-restore < /etc/iptables.rules 执行:chmod +x /etc/network/if-pre-up.d/iptables 这些命令可以帮助您更好地使用 iptables 防火墙保护您的 Linux 系统。
显示具体信息,包括每条规章的匹配包数量和匹配字节数:iptables -L -n -v 6. 删除已添加的 iptables 规章 将全部 iptables 以序号标志显示:iptables -L -n --line-numbers 删除 INPUT 里序号为 8 的规章:...
适用于Linux系统的防火墙
修复 kube-proxy 报错:Failed to execute iptables-restore: exit status 1
通过配置iptables规则,我们可以对进出系统的数据包进行精细控制,从而达到网络安全防护的目的。 #### 二、iptables脚本功能概述 本次分享的iptables脚本主要实现了以下功能: 1. **清除已有规则**:清空所有已...
官方离线安装包,测试可用。使用rpm -ivh [rpm完整包名] 进行安装
centos6-iptables-1.4.7-16.el6.x86-64
iptables rpm包(redhat 6.9 )
iptables-sesrvices1.4.21版本
docker-iptables-restore.sh Bash脚本,仅将FORWARD,DOCKER和DOCKER-ISOLATION链中的相关规则还原到FILTER表(与您刚刚推送至系统的规则混合)存在,它将跳过该操作并使用您已推送的地址,否则从以前还原该主机上已...