Linux作为校园网出口的优化.pptVIP

  • 3
  • 0
  • 约1.85千字
  • 约 18页
  • 2018-08-22 发布于江苏
  • 举报
Linux作为校园网出口的优化

计算机网络安全基础 计算机网络安全基础 计算机网络安全基础 Linux作为校园网出口的优化 张焕杰 james@ Tel: 3601897(O) 主要内容 功能要求 系统优化 功能要求 区分国内国外地址 利用netfilter/iptables实现 校内IP分3种权限:校内、国内、国际 国内地址有300多条目(大于8IP的条目) 策略路由 利用ip rule 实现 服务器要永远走教育网出去 用户的IP根据情况选择 科大有7种选择 Iptables的性能优化 校内IP的状态 避免针对每个IP增加iptables的条目,因为这样做iptables规则很多,性能非常低 可以考虑使用ippool或后续的ipset,他们的优点都是利用单独的数据结构存放一个IP的状态(属于一个pool或set,可以认为对应0和1) 使用ippool或ipset后,一条iptables规则就可以起到原来iptables几千条规则的作用,避免了iptables顺序查找的低效率,执行速度能快几百倍 / 建议的做法 建立类型为nethash的cernetfree ipset 建立类型为ipmap的cernetip ipset,并缺省绑定cernetfree Cernetfree中加入免费地址列表 如果为出校IP,增加到cernetip既可以 如果为出国IP,增加到cernetip,并解除与cernetfree的缺省绑定 科大的优化 科大用的是自己写的,每个IP在内存中有1个字节用来存放IP的权限(0-255) 有一个数据结构用来存放网络的权限(0-255),目前仅仅存放教育网免费地址列表,权限都是50 增加了一个iptables规则处理: 如果校内IP的权限=对方网络的权限,允许转发数据包 科大的优化(2) /proc/iprightmap/netright 50 50 /proc/iprightmap/_ 50 7 50 9 100 0 50 2 Ip rule 系统优化 性能问题 路由时,顺序查找路由规则表 如果表的项目太多(现在有3000个用户在线,有3000条规则,平均一次要查1500项才会找到),效率不高 因此需要优化,用其他方式替换顺序查找 使用ipset的优化 建立若干个ipset,对应不同的路由方式 在mangle表中,对不同的ipset设置不同的fwmark Ip rule 根据fwmark进行路由选择 科大的优化策略 由于决定使用哪个路由表的关键词是源地址,而校内的源地址有限(即使256个C也就是64KB个) 因此可以用一个或多个数组来存放这些信息 数组的大小为校内IP的个数,内容为该IP使用哪个路由表 数据结构 实际的控制 为了方便,kernel和应用程序采用/proc文件系统通信,文件/proc/iprule/control为控制文件 写 A 202 38 64 0 255 255 224 0到control增加一段内部地址 增加地址后/proc/iprule下会增加2个文件 _和 B_ 读这两个文件可以得到某个IP的策略信息 前面一个是ASCII的 后面一个是binary的,偏移量0的字节就是的策略 实际的控制 写 C XXX 202 38 64 1到control修改策略,xxx为路由表 如 echo “C 101 202 38 64 51” control 设定1使用路由表101 使用情况 P4 2.4G的CPU 进出通信达到850Mbps,每秒处理16万个数据包 CPU利用率接近100% 其他优化 更高性能可以通过以下途径获得 多台负载分担 两台并行,可以提高一倍的性能 结构调整 如用3角路由,从NAT设备进入校园网校园网的数据包直通(这部分不需要权限检查) 从校内发出到CERNET的数据包直接出去 网络通原理 优化后使用情况 2台 Xeon 2.4G的CPU 单台 进出通信达到450Mbps 每秒处理7万个数据包 CPU利用率接近70% 谢谢 * * …. 100 102 101 100 …. 100 102 101 100 …. 100 102 101 100 长度 256*32 长度 256*16 长度 256*16 一个数组存放校内的IP段信息 每段有个数组存放该段的策略信息 修改路由时查找规则表的处理过程,利用以上结构来查 教育网出口 校内网络 电信出口NAT Switch 网通出口NAT 9 *

文档评论(0)

1亿VIP精品文档

相关文档