忘记密码   免费注册 查看新帖 |

ChinaUnix.net

  平台 论坛 博客 文库 频道自动化运维 虚拟化 储存备份 C/C++ PHP MySQL 嵌入式 Linux系统
12下一页
最近访问板块 发新帖
查看: 7595 | 回复: 16

[网络子系统] 需要对一个防火墙进行synflood测试 现在程序能达到400,000pps 如何进一步提高发包速度 [复制链接]

论坛徽章:
0
发表于 2015-01-07 14:28 |显示全部楼层
本帖最后由 YunThanatos 于 2015-01-07 20:05 编辑

这是发起synflood的机器配置:
        CPU:
                Intel(R) Xeon(R) CPU E5-2620 0 @ 2.00GHz
                Architecture:          x86_64
                CPU(s):                24
                On-line CPU(s) list:   0-23
                Thread(s) per core:    2
                Core(s) per socket:    6
        NIC:
                05:00.0 Ethernet controller: Intel Corporation 82574L Gigabit Network Connection

synflood程序:
        使用c语言开发的,使用system call:raw socket接口发送自定义IP头的SYN包(工作于用户空间)

现在的性能:
        threads:24 200,000pps
        threads:80 400,000pps

如何进一步提高syn发包速度? 难道用户空间发包只能到达这种程度了么?

论坛徽章:
0
发表于 2015-01-07 15:06 |显示全部楼层
之前在lvs的文档里看过一份synproxy的测试报告:
  在他们的机器上,synproxy能抵挡350w pps的synflood攻击

不知道taobao的350w pps synflood的攻击是怎么产生的?是分布式DDOS还是单机DOS?
  350w=3.5x10^6     每微秒能发3.5个syn攻击包  如果从内核级别实现发包 理论上能到3.5ppus的速度么?

论坛徽章:
3
射手座
日期:2014-08-18 12:15:53戌狗
日期:2014-08-22 09:53:36寅虎
日期:2014-08-22 14:15:29
发表于 2015-01-07 15:48 |显示全部楼层
按照每个SYN包64字节计算, 千兆网卡的最大PPS 理论上才200W

论坛徽章:
0
发表于 2015-01-07 17:08 |显示全部楼层
回复 3# gaojl0728


    是的!千兆网卡发SYN包理论峰值约为 200w pps 谢谢提醒!
   
PS:

    在用户空间提高发包速度 目前想到的方法有:

      ·使用多进程的方法尽可能的接近网卡的性能极限了
      ·使用DDOS的方法(间接)

论坛徽章:
36
IT运维版块每日发帖之星
日期:2016-04-10 06:20:00IT运维版块每日发帖之星
日期:2016-04-16 06:20:0015-16赛季CBA联赛之广东
日期:2016-04-16 19:59:32IT运维版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-19 06:20:00每日论坛发贴之星
日期:2016-04-19 06:20:00IT运维版块每日发帖之星
日期:2016-04-25 06:20:00IT运维版块每日发帖之星
日期:2016-05-06 06:20:00IT运维版块每日发帖之星
日期:2016-05-08 06:20:00IT运维版块每日发帖之星
日期:2016-05-13 06:20:00IT运维版块每日发帖之星
日期:2016-05-28 06:20:00每日论坛发贴之星
日期:2016-05-28 06:20:00
发表于 2015-01-07 17:13 |显示全部楼层
回复 2# YunThanatos

阿里有钱,随便上几个测试仪不就够了。还需要自己写测试程序吗?


   

论坛徽章:
36
IT运维版块每日发帖之星
日期:2016-04-10 06:20:00IT运维版块每日发帖之星
日期:2016-04-16 06:20:0015-16赛季CBA联赛之广东
日期:2016-04-16 19:59:32IT运维版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-19 06:20:00每日论坛发贴之星
日期:2016-04-19 06:20:00IT运维版块每日发帖之星
日期:2016-04-25 06:20:00IT运维版块每日发帖之星
日期:2016-05-06 06:20:00IT运维版块每日发帖之星
日期:2016-05-08 06:20:00IT运维版块每日发帖之星
日期:2016-05-13 06:20:00IT运维版块每日发帖之星
日期:2016-05-28 06:20:00每日论坛发贴之星
日期:2016-05-28 06:20:00
发表于 2015-01-07 17:19 |显示全部楼层
回复 1# YunThanatos

我建议你先考虑优化自己程序的实现逻辑,印象中我几年用的 hping,开启几个进程,每秒几十万pps 应该是可以达到的。

你可以先编译个 hping 发送 synflood 试试它能够达到多少。


   

论坛徽章:
0
发表于 2015-01-07 19:43 |显示全部楼层
回复 6# Godbach


    刚刚测试了一下 hping的synflood在相同的机器上测试最高能达到约20w pps 它每一次发伪造包都会重新计算checksum  
   
    刚才看了一下网络测试仪 确实很贵 :wink:

论坛徽章:
0
发表于 2015-01-07 19:46 |显示全部楼层
Godbach 发表于 2015-01-07 17:19
回复 1# YunThanatos

我建议你先考虑优化自己程序的实现逻辑,印象中我几年用的 hping,开启几个进程, ...


### 这是测试防火墙的synflood防御策略:
   "SYN Flood保护:当设备下主机IP收到SYN报文数量,每秒超过次数设置值时(此处设置为10000),此设备下主机进入SYN Flood防御模式,此时此设备下主机会对新客户机IP的第一个SYN请求包进行丢弃,正常客户机发送第一个SYN请求包没有收到回应,会继续发送第二个SYN请求包,当设备收到此客户机的第二个SYN请求包才会放行。"

  这是非常单一的syn首包丢弃策略,如果攻击者将伪造的Syn报文发送两次,这种方法就失去了效果
  
  现在的目标是测试这个防火墙:
      
      将伪造的Syn报文间隔一小段时间后 再发一次 验证它能否穿透firewall
      这样的话 攻击程序必须得维护一个很大的伪造sip:sport的状态数组 目前好像没有发现这样的工具
      程序最后测试的时候就遇到了这个发包速度的问题了


PS:
     使用pktgen做了一下测试 64B包速度能达到 60w pps左右


论坛徽章:
36
IT运维版块每日发帖之星
日期:2016-04-10 06:20:00IT运维版块每日发帖之星
日期:2016-04-16 06:20:0015-16赛季CBA联赛之广东
日期:2016-04-16 19:59:32IT运维版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-19 06:20:00每日论坛发贴之星
日期:2016-04-19 06:20:00IT运维版块每日发帖之星
日期:2016-04-25 06:20:00IT运维版块每日发帖之星
日期:2016-05-06 06:20:00IT运维版块每日发帖之星
日期:2016-05-08 06:20:00IT运维版块每日发帖之星
日期:2016-05-13 06:20:00IT运维版块每日发帖之星
日期:2016-05-28 06:20:00每日论坛发贴之星
日期:2016-05-28 06:20:00
发表于 2015-01-08 11:25 |显示全部楼层
回复 8# YunThanatos

不是在讨论如何提高你发包工具的速度吗,怎么转向防御策略了 :wink:

   

论坛徽章:
15
射手座
日期:2014-02-26 13:45:082015年迎新春徽章
日期:2015-03-04 09:54:452015年辞旧岁徽章
日期:2015-03-03 16:54:15羊年新春福章
日期:2015-02-26 08:47:552015年亚洲杯之卡塔尔
日期:2015-02-03 08:33:45射手座
日期:2014-12-31 08:36:51水瓶座
日期:2014-06-04 08:33:52天蝎座
日期:2014-05-14 14:30:41天秤座
日期:2014-04-21 08:37:08处女座
日期:2014-04-18 16:57:05戌狗
日期:2014-04-04 12:21:33技术图书徽章
日期:2014-03-25 09:00:29
发表于 2015-01-08 14:05 |显示全部楼层
建议先分析下瓶颈在哪里,一方面是从发包程序自身角度优化,另一方面可以考虑操作操作系统层面优化。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

【重磅资料】多云网络实战的相关问题汇总!
云网融合的多云网络

本文介绍如何管理私有云数据中心,构建数据中心互联和混合云解决方案。对于OTT 网络架构的深入理解,基本上来源于SIGCOM 的白皮书和一些公开视频。

Overlay SDN 控制器详解

云计算为了适应业务/APP 的快速开发和部署,会把网络分为两层:Overlay 和 Underlay 网络。本文主要讲Overlay网络层面的问题。

超级核心路由器演进

2016 年,网络连接已经采用100G/200G/400G(虽然 400GE 接口技术还未成熟),互联网出口也已经增长到了 T 级别。

获得资料 >>
  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号 北京市公安局海淀分局网监中心备案编号:11010802020122
广播电视节目制作经营许可证(京) 字第1234号 中国互联网协会会员  联系我们:wangnan@it168.com
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP