Cisco 877 DSL 上的简单 QoS 策略似乎没有任何作用

Cisco 877 DSL 上的简单 QoS 策略似乎没有任何作用

我正在尝试使用 Cisco 877 在我的 DSL 线路上建立并运行一个相当简单的 QoS 策略。我的目标很简单 - 确保实时和管理功能(如 RTP 和 SSH)无论拥塞如何都能正常工作,然后确保 HTTP、FTP、SMTP 等协议在拥塞时得到良好的响应,并在繁忙时限制 bittorrent 等功能。

我尝试应用下面的配置,但似乎没有效果。如果我下载几个 ubuntu torrent,并通过 HTTP 下载一个大文件,HTTP 下载速度会变得非常慢,而 torrent 则能以 300kbps+ 的速度继续下载。它似乎唯一的效果是上游 bittorrent 速度减慢到大约 0.1kbps。

我的理解是,我需要在 ATM 子接口上应用出站策略,并在 VLAN 上应用入站策略,这样路由器才知道如何处理双向流动的不同数据包。我尝试在 ATM 子接口上添加仅限警察的入站策略,但同样,这似乎没有什么区别。Bittorrent 传入流量横扫一切。

奇怪的是,无论我如何尝试配置它,我都无法让数据包排队策略在 ATM0.1 接口上显示出站。入站策略显示正常。

有任何想法吗?

class-map match-any BESTEFFORT
 match protocol http
 match protocol secure-http
 match protocol icmp
 match protocol secure-imap
 match protocol smtp
 match protocol ipsec
 match protocol dns
class-map match-any REALTIME
 match protocol rtp
 match protocol rtcp
 match protocol sip
 match protocol ssh
class-map match-any SCAVENGER
 match protocol bittorrent
!
!
policy-map Packet-Queueing
 class REALTIME
    priority 400
 class BESTEFFORT
    bandwidth percent 50
     random-detect
 class SCAVENGER
    bandwidth percent 5
     random-detect
 class class-default
    fair-queue
     random-detect
!
policy-map Input-Police
 class SCAVENGER
   police rate 8000 bps
     conform-action transmit
     exceed-action drop
!
policy-map Packet-Tagging
 class REALTIME
  set precedence 5
 class BESTEFFORT
  set precedence 4
 class SCAVENGER
  set precedence 0
!
!
interface ATM0
 description ATM ADSL Interface
 no ip address
 no ip redirects
 no ip unreachables
 no ip proxy-arp
 no atm ilmi-keepalive
 dsl operating-mode adsl2
 dsl enable-training-log
 !
!
interface ATM0.1 point-to-point
 pvc 0/38
  vbr-rt 886 886
  encapsulation aal5mux ppp dialer
  dialer pool-member 1
  service-policy in Input-Police
 !
interface Vlan1
 description internal private VLAN
 ip address 192.168.0.1 255.255.255.0
 no ip redirects
 no ip unreachables
 no ip proxy-arp
 ip flow ingress
 ip nat inside
 ip virtual-reassembly
 ip route-cache same-interface
 ip tcp adjust-mss 1452

 service-policy input Packet-Tagging
 hold-queue 100 out
!

答案1

您遇到的根本问题是,入站方向(进入路由器)的 QoS 对于控制流向您的方向的流量相对无用。

拥塞发生在路由器所连接的 ISP 设备的出口处。该 ISP 接口未应用相关 QoS - 它肯定是一个 FIFO 队列。因此,如果 bittorrent 端点发送数据的速度比 HTTP 端点快,则 bittorrent 在经典 FIFO 队列中获胜,并且您的 HTTP 下载将处于停滞状态。

这是几乎每个家庭网络设置中都存在的一个常见问题。Bittorrent 不仅会轻易限制 SSH 或 RTP 流量,还会限制 VoIP 流量。

使用 Bittorrent 软件的内置速率限制将上传和下载速度限制在低于可用速率。

答案2

您可以对 bittorrent 的传出速率进行限制,但这可能需要:

(i) 使用可以使用可预测源端口的 bittorrent 客户端。至少可以通过为此目的编写的补丁进行传输。

(ii)使用 vlan1 上的传入服务策略将这些数据包标记为 ip 优先级 1 或其他

(iii) 如果发生其他事情,请采取一些措施,使得传出的 IP 优先级为 1 的数据包受到相当糟糕的处理。

至于传出策略,我不确定。如果你放弃传入策略,是否可以启用传出策略?当我第一次设置时,我收到奇怪的消息,说在虚拟接口存在的情况下无法启用传出策略。对同事和我自己有用的两件事是:

(i) 启用传出服务策略,然后从接口配置菜单中使用“do copy run start”。这对我来说很有效,因为当我输入“exit”时,它会抱怨并删除该策略,但启动配置已将其设置好,重新启动后即可使其正常工作。

或者同事做了什么:

(ii)在其他地方编辑配置并执行“复制 tftp 启动”或类似操作。然后重新启动。

这可能是一种愚蠢的做法,但我们中的一些人遇到了问题。它可能特定于特定软件或平台:我能够在带有 ADSL 接口的 2821 路由器上应用策略,没有任何问题。

相关内容