- 浏览: 432861 次
- 性别:
- 来自: 杭州
-
文章分类
最新评论
-
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 1344printf输出看不到,原因是stdin输出是行缓冲,要有换行 ... -
笔试题目草稿-C语言基础及算法
2010-08-24 15:38 1710#include <stdlib.h> ... -
Xnix系统下某些软件自动安装脚本
2010-03-09 10:15 1415我这里把我用到的那些东东整理一下,以后再安装直接copy就好了 ... -
SNMP和开源监控的一些资料
2009-11-22 09:29 2458http://blog.chinaunix.net/u/804 ... -
Chariot Endpoint相关
2009-11-16 13:52 1862Endpoint 5.0和7.0的目录名字不同, 5.0是:/ ... -
【LVS】作者:章文嵩博士-茶话会
2009-11-09 22:10 3160有图有真相 顺便学一下LVS ^-^ ... -
can't read "build.cmd": Failed to locate 'make' in path
2009-10-21 23:03 1630引用can't read "build.cmd&qu ... -
计算Linux某一进程所占用内存
2009-09-18 14:43 1816下面这个代码可以得到当前进程所占用的内存: cat /pro ... -
proc/{pid}/stat
2009-09-17 16:25 1345Linux中,某个进程消耗的CPU, 需要查看proc/{pi ... -
Epoll,Poll,Select
2009-09-16 11:56 1964先说Select: 1.Socket数量限制:该模式可操作的S ... -
Unix下跟踪一条命令的执行
2009-09-09 18:20 836strace -v ps -e 2>ps.txt -
别总以为自己很烂
2009-09-07 15:24 974我想写个Unix通用的监控, Linux上有proc很方便, ... -
Shell越写越复杂
2009-08-10 14:09 1040ps axf|grep "/usr/local/bi ... -
我的Haproxy做负载均衡的几个配置
2009-08-07 18:23 3910Normal 写道global maxconn 4096 nb ... -
我的IPVS(LVS)做负载均衡配置
2009-08-07 18:18 1249less /etc/sysconfig/ipvsadm 写道- ... -
<<LINUX内核完全注释>>阅读笔记------信号
2009-08-01 11:00 1080信号,signal.c: 信号一种软件中断。 在内核代码中通常 ... -
<<LINUX内核完全注释>>阅读笔记------进程初始化及进程调度
2009-08-01 10:53 1032进程初始化: 在内核态下运行的进程不能被其他进程抢占,内核在执 ... -
<<LINUX内核完全注释>>阅读笔记------进程数据结构
2009-08-01 10:52 1445Linux系统中一个进程可以在内核态或用户态下执行,并且分别使 ... -
这两天在玩进程通信
2009-07-17 16:54 988被研究对象:管道、信号 挺有意思。 java被局限于一个虚 ... -
如何使用Apache作为前端负载均衡器
2009-02-12 21:33 1587在某些场景中,我们需 ...
相关推荐
- **减少规则数量**:尽量减少iptables规则的数量,避免不必要的复杂度。 - **使用高级匹配**:利用扩展匹配模块(如`-m state`),减少不必要的数据包检查。 - **合理安排链**:将频繁使用的规则放在前面,提高命中...
1. **性能测试**: - 使用`ab`(ApacheBench)对Web服务器进行压力测试。 - 使用`iperf`测试网络带宽。 2. **安全扫描**: - 使用`nmap`扫描开放端口和服务。 - 使用`nikto`扫描Web服务器的安全漏洞。 3. **...
同时,许多嵌入式应用对性能和功能提出了更高的要求。传统的8/16位微控制器在速度和内存方面无法满足嵌入式互联网应用的需求。随着集成电路技术的进步,32位RISC处理器因其实现了嵌入式技术的高性能和多功能性而被...
关闭防火墙可能涉及修改`iptables`规则或使用`systemctl stop firewalld`。 5. **更改主机名和添加hosts记录**: 在`/etc/sysconfig/network`中更改主机名,然后在`/etc/hosts`中添加主机记录。 6. **创建目录**...
2. **网络连通性**:集群中的每台机器必须能够互相访问,因此需要正确配置iptables规则,避免防火墙阻断内部通信。 3. **统一的用户和目录**:建议在所有机器上创建同一个用户名(如hadoop),并且确保Hadoop的根...
使用`firewalld`或`iptables`配置防火墙规则;以及通过`ssh`进行远程访问。 此外,RHEL 9.1还引入了一些新特性,如改进的性能、增强的安全性(如默认使用Btrfs文件系统)、以及对新技术的支持,如Kubernetes容器...