可以用acl和nbar技术综合定义数据流。Acl定义可以采用下述参数:源ip地址、目的IP地址、第4层协议(如UDP)、源端口号码以及目的端口号码等。与一套已定义参数相匹配的数据包都被视为属于相同的流,NBAR技术可以识别应用层流; 建立ACL用来识别p2p应用端口或者服务器ip地址,可根据实际情况配置,例如: ip access-list extended edonkey permit tcp any any range 4661 4662 permit tcp any any range 4242 4243 permit udp any any eq 4665 同时应用pdlm包 ip nbar pdlm bittorrent.pdlm ip nbar pdlm eDonkey.pdlm
mls qos !--- 激活 QoS mls qos flow-policing class-map match-any bit match PRotocol bittorrent match protocol eDonkey match access-group edonkey match … !-用户根据实际情况定义 policy-map p2p class bit police flow 100000 2000 conform-action transmit exceed-action drop !--- 定义微流治理器,限制每个p2p应用流为100 Kbps的微流量 police 20000000 13000 26000 conform-action transmit exceed-action drop !--- 定义聚合治理器,以便限制所有p2p应用流为20Mbps聚合流量 三、在接口上应用策略(设备可能仅支持input方向) interface gigabitEthernet0/2 service-policy input p2p service-policy output p2p 假如实施基于VLAN的QoS配置,需要在二层接口配置mls qos vlan-based
四、验证策略实施情况 sh mls qos sh mls qos ip gigabitEthernet 0/2 sh mls ip detail #进行微流策略统计 sh int g0/2 rate-limit show policy-map interface g0/2 show ip nbar unclassified-port-stats show ip nbar protocol stats byte-count show ip nbar port-map include custom