网络通信 频道

局域网中限速方法总结

  二、具体实现方法

  具体实现方法又分两大类,一类是通过交换机限速进行端口限速,另一类是通过限制某些特定的网络应用限速(比如专门限制BT和网络电视等的使用)。

  (一)基于交换机的限速

  1、接入层交换机的限速

  接入层交换机也叫做楼幢交换机或桌面型交换机,它们位于网络的最底层,直接接入终端用户(家庭或办公用户),一般来说这类交换机很廉价,也没有什么管理功能,但是也有一些交换机可以满足我们进行端口限速的要求(当然价格也要略高一点)。此类交换机进行端口限速往往很直接,有的甚至可以通过图形界面,用下拉菜单的模式很直观的设置几十K至100M的端口速率,不过本例中还是通过CLI来实现,是一款DLINK的二层可管理交换机:DES-3026,设置方法如下:

  DES-3026:4#config bandwidth_control 1-10 rx-rate 64

  command:config bandwidth_control 1-10 rx_rate 64

  Note:To perform precise bandwidth control,it is required to enable the flow

  control to mitigate the retransmission of TCP traffic.

  Success

  这样我们就将这台交换机的1-10端口的接收速率设置为64kbps。

  2、汇聚层交换机

  朋友们可能会问了,既然接入层的交换机的端口限速功已经做得很好了,那我们全部使用这样的交换机进行组网行不行,答案是否定的,我们在汇聚层还是要使用更高档次的交换机。因为在汇聚层工作的交换机,除了稳定性以外,还有一个很重要的技术指标,那就是背板带宽,它决定了这台交换机是否可以实现线速转发。如果判断交换机的背板带宽够不够用呢?计算方法如下:端口数*相应端口速率*2(全双工模式),举例来说,一台24口的交换机,端口均需工作在100M,那么背板带宽至少需要:24*100*2=2.4G,而CISCO29系列交换机的背板带宽都在8G以上,满足线速转发是没有问题的。 但是目前我们还没有找到在CISCO29系列交换机上进行端口限速的方法。

  3、核心层交换机

  核心层的交换机除了要支持VLAN、TRUNK、ACL等等功能外,它最核心的功能就是要保证各个端口间的快速数据转发,因此它们上面的端口限速往往不是简单设置一个数值就OK了,总体来说要分四个步骤:

  1)建立一个访问控制列表(ACL);

  2)建立一个类(CLASS),并在这个类上引用刚建立的那个访问控制列表(ACL);

  3)建立一个策略(POLICY),在这个策略上指定相应的带宽,并引用相应的类;

  4)将这个策略应用具体的端口上。

  具体操作如下:

  CISCO3550交换机:

  1、在交换机上启动QOS

  Switch(config)#mls qos //在交换机上启动QOS

  2、定义访问控制列表

  Switch(config)#access-list 1 permit 10.59.0.0 0.0.255.255 //针对10.59/16这个网段进行上行流量控制

  Switch(config)#access-list 101 permit ip any 10.59.0.0 0.0.255.255 //针对10.59/16这个网段进行下行流量控制

  3、定义类,并和上面定义的访问控制列表绑定

  Switch(config)# class-map xsup //定义上行的类,并绑定访问列表1

  Switch(config-cmap)# match access-group 1

  Switch(config-cmap)# exit

  Switch(config)# class-map xsdown

  Switch(config-cmap)# match access-group 101 //定义下行的类,并绑定访问列表101

  Switch(config-cmap)# exit

  4、定义策略,把上面定义的类绑定到该策略

  Switch(config)# policy-map xsup //定义上行的速率为1M,超过的丢弃

  Switch(config-pmap)# class xsup

  Switch(config-pmap-c)# trust dscp

  Switch(config-pmap-c)# police 1000000 1000000 exceed-action drop

  Switch(config)# policy-map xsdown //定义下行的速率为1M,超过的丢弃

  Switch(config-pmap)# class xsdown

  Switch(config-pmap-c)# trust dscp

  Switch(config-pmap-c)# police 1000000 1000000 exceed-action drop

  Switch(config-pmap-c)# exit

  5、在接口上运用策略

  Switch(config)# interface fa0/1

  Switch(config-if)# service-policy input xsup

  Switch(config)# interface fa0/24

  Switch(config-if)# service-policy input xsdown //24口为上行接口

  华为3552交换机:

  1、sys

  [ZXJF_3552]acl name xs advanced //建立名为xs的高级ACL

  [ZXJF_3552-acl-adv-chen]rule 1 permit ip source 10.67.0.0 0.0.255.255 //允许67网段的主机通过

  [ZXJF_3552-acl-adv-chen]q

  2、sys

  [ZXJF_3552]int e0/1

  [ZXJF_3552-Ethernet0/1]packet-filter inbound ip-group xs//在1口上激活了ACL“xs”

  3、sys

  [ZXJF_3552]int e0/1

  [ZXJF_3552-Ethernet0/1]traffic-limit inbound ip-group xs 10240 1280000 1280000 //对1口上接收的流量速率限制为10M=10240kbps。

  [ZXJF_3552-Ethernet0/1]traffic-shape 10400 192 //对1口上发送的流量速率限制为10M=10400kbps,突发尺寸192kbytes。

  当我们这样做好以后,局域内的带宽使用就会被有效的限制下一个数量级,比如原来日常8、90M的带宽使用就会降到6、70M了。

  当然我们也可以挖掘一下核心层交换机的高级应用,比如通过限制某些端口通过的方式来限制某些网络应用(比如迅雷下载),但实际限制起来的效果并不是太好,因为迅雷此类的程序其实使用了很复杂的网络协议,但靠限制某些端口是很难把它搞定的,所以还是要靠专业流控设备。

0
相关文章