前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >网速慢可能是这些原因

网速慢可能是这些原因

作者头像
入门笔记
发布2022-06-03 09:24:58
4.5K0
发布2022-06-03 09:24:58
举报
文章被收录于专栏:入门小站

上网方式及理论网速

如图 1-1,宽带网络是一个极其复杂的端到端系统,包括 LAN 侧和 WAN 侧。LAN 侧指用户到 AR 这一段,包括 FIT AP、S、用户终端等设备。WAN 侧指 AR 到 Internet 之间,包括光猫、接入网、核心网设备,不过这些都是运营商提供的,与用户无关,不在本文讨论范围内。

图 1-1 用户上网组网图

下行速率是指 Internet 向用户发送信息时的数据传输速率,单位是 Mbit/s,比如打开浏览器,下载文件等。上行速率是指用户向 Internet 上传文件时可以达到的速率。对于大部分用户来说,主要上网业务是从 Internet 下载文件,而非上传文件,所以下行速率一般都高于上行速率。用户从宽带运营商那里办理的带宽值就是下行速率。例如,用户办理了 200M 宽带套餐,这里的 200M 就是下行速率,对应的上行速率可能只有几十 M。

用户终端可以通过有线方式上网,也可以通过无线方式上网,不同的上网方式,用户能达到的最大网速也不同。本文讨论的是有线用户访问 Internet 时遇到的下行网速慢问题,因此下行速率才是有线用户网速可以达到的理论值。此外,有线用户的网速还与网络硬件设施(光猫、AR、S、网线)有关。在解决网速慢问题之前,请先检查网络的硬件设施符合网速的要。

如何测网速

当发现上网慢问题时,建议先测量一下实际的网速后再处理故障。常用的网速测量方法有网站测速、测速工具测速等。不同的测速方法测量结果略有不同,建议使用不同的测速方法多测几次:

  • 使用网站测速。各大运营商网站都提供了测速功能,例如中国电信宽带测速网,不同区域网址不一样,例如上海;也可以用一些专门的测速网站来测,例如测速网。
  • 使用测速工具测速。在应用商店下载并安装测量网速的工具进行测速,例如网速测试、网络测速大师、测网速大师等。

有些测速软件的测量结果是下载速度 MB/s,但会同步换算成对应的带宽值 Mbit/s。如果没有,也可以根据 1MB/s = 8Mbit/s 的关系,自己换算一下。

了解网速慢故障场景

AR 作为企业网络的路由网关设备,在企业网络里扮演了非常重要的角色,为用户提供上网服务。为了帮助用户解决在通过 AR 上网时遇到的上网慢问题,本文从多个现网真实案例中,总结出两大常见上网慢故障场景:单上行出口上网慢和双上行 / 多上行出口上网慢。

单上行出口上网慢

单上行出口上网是指 AR 路由器和公网之间只有一条上行链路相连。如图 1-2 所示,AR 和 Internet 之间的连线只有一条,GE3/0/0 是连接 Internet 的接口,也叫作公网口,Eth2/0/0 是连接私网的接口,也叫作私网口。该场景常见的上网慢原因包括:TCP 最大报文段长度 MSS(Max Segment Size)值配置不合理、网络攻击导致设备 Session 资源耗尽、接口模式协商错误等,具体定位方法请参见单上行出口上网慢故障处理章节。

图 1-2 单上行出口上网场景组网示例

双上行 / 多上行出口上网慢

双上行 / 多上行出口上网是指 AR 路由器和公网之间有两条或者大于两条上行链路相连。如图 1-3 所示,AR 和 Internet 之间的连线有多条,GE0/0/1 和 GE0/0/2 都是公网口,GE0/0/3 是私网口。该场景常见的上网慢原因除了单出口场景中列出的,还包括一些特有的原因,例如:Dialer 口路由问题、报文来回路径不一致、等价路由问题等,具体定位方法请参见双上行出口 / 多上行出口上网慢故障处理章节。

图 1-3 双上行 / 多上行出口上网场景组网示例(PPPoE 拨号)

为什么网速慢,原因在这里

图 1-4 是用户通过 AR 上网慢故障树,列出了单上行出口和双上行出口两种场景上网慢的常见原因。

图 1-4 为什么网速这么慢故障树

单上行出口上网慢故障处理

报文分片导致部分网页打开慢

背景信息

如果仅是部分网页访问慢,其他网页访问正常,则大概率是由于 TCP 最大报文段长度 MSS(Max Segment Size)值配置不合理,导致报文被分片传输,影响用户的上网速度。此时,可以参考本节内容,修改报文分片的参数值。

最大传输单元 MTU(Maximum Transmission Unit)是用来标识 IP 报文是否分片的选项。如果对端发送的 IP 报文长度超过 MTU 值,则 IP 报文会进行分片处理。为了保证 TCP 报文不分片,配置过程中需要注意 MSS 与 MTU 的关系。一般情况下,为了不影响报文传输,MSS 值加上报文开销(TCP 首部、IP 首部等)不超过 MTU 值。例如,以太网接口的缺省 MTU 值为 1500 字节,为了保证报文不分片,MSS 值最大配置为 1460(1500 − 20(TCP 首部最小长度) − 20(IP 首部最小长度))字节。推荐用户配置 MSS 值为 1200 字节。

定位步骤

【1】执行命令 display ip interface brief,查看公网接口是物理接口还是 Dialer 接口。

代码语言:javascript
复制
<Huawei> display ip interface brief
*down: administratively down                                                    
^down: standby                                                                  
(l): loopback                                                                   
(s): spoofing                                                                   
(E): E-Trunk down    
The number of interface that is UP in Physical is 2                             
The number of interface that is DOWN in Physical is 3                           
The number of interface that is UP in Protocol is 2                             
The number of interface that is DOWN in Protocol is 3                           

Interface                         IP Address/Mask      Physical   Protocol      
Atm0/0/0                          unassigned           down       down          
Bridge-if10                       unassigned           down       down          
MFR0/0/1                          unassigned           down       down          
NULL0                             unassigned           up         up(s)         
GE0/0/1                           x.x.x.x/24           up         up   
GE0/0/2                           x.x.x.x/24           up         up

【2】如果是物理接口,则在物理接口视图下执行命令 tcp adjust-mss 配置接口的 TCP 最大报文段长度,推荐数值为 1200。

代码语言:javascript
复制
<Huawei> system-view
[Huawei] interface GigabitEthernet 0/0/1
[Huawei-GigabitEthernet0/0/1] tcp adjust-mss 1200

【3】如果是 Dialer 接口,则在 Dialer 接口视图下执行命令 tcp adjust-mss 配置接口的 TCP 最大报文段长度,推荐数值为 1200,并执行命令 mtu 配置接口的最大传输单元值为 1492。对于 Dialer 接口,adjust-mss 值和 mtu 值不能配置一样。

代码语言:javascript
复制
[Huawei] interface Dialer 0
[Huawei-Dialer0] tcp adjust-mss 1200
[Huawei-Dialer0] mtu 1492
[Huawei-Dialer0] restart

【4】建议同步将私网接口的 TCP 最大报文段长度值也配置成推荐值 1200。假设私网接口为 GE0/0/2,则在私网接口上配置 tcp adjust-mss 1200 命令。

代码语言:javascript
复制
<Huawei> system-view
[Huawei] interface GigabitEthernet 0/0/2
[Huawei-GigabitEthernet0/0/2] tcp adjust-mss 1200
私网流量大导致设备的 Session 资源耗尽

背景信息

当网络中存在一些攻击行为或者业务较多时,路由器会收到大量流量,路由器的 Session 和 Block 内存资源很快会被耗尽,超过阈值。其他正常用户可能会因为分配不到 Session 和 Block 资源而出现上网慢情况。此时,可以参考本节内容,检查下设备的 Session 和 Block 资源是否正常。如果发现资源被耗尽,则通过 traffic-policy 或者 traffic-filter 命令禁止端口上的异常流量通过,同时找出攻击源进行杀毒。如果正常流量本身就很多,超过了设备的性能,则需要更换更高性能的设备。

定位步骤

【1】执行命令 display logbuffer,查看 Log 缓冲区记录的信息中是否有大量 Session 和 Block 内存资源过载的日志。

代码语言:javascript
复制
<Huawei> display logbuffer
Logging buffer configuration and contents: enabled                              
Allowed max buffer size: 1024                                                   
Actual buffer size: 512                                                         
Channel number: 4, Channel name: logbuffer                                      
Dropped messages: 0                                                             
Overwritten messages: 167                                                       
Current messages: 512 
Mar  5 2021 15:47:25+08:00 Huawei %%01FORWARD/4/SESSION-RES-LACK(l)[135]:The device session resources were overloaded.(Usage = 94%)
Mar  5 2021 16:29:25+08:00 Huawei %%01FORWARD/4/CAP-BLOCK-RES-LACK(l)[259]:The block memory resources were overloaded.(Usage = 97%)
Mar  5 2021 16:34:25+08:00 Huawei %%01FORWARD/4/SESSION-RES-LACK(l)[261]:The device session resources were overloaded.(Usage = 92%)
Mar  5 2021 16:43:25+08:00 Huawei %%01FORWARD/4/CAP-BLOCK-RES-LACK(l)[273]:The block memory resources were overloaded.(Usage = 96%)

【2】进入诊断视图,执行命令 display session statistics top 10 order-by source-ip 根据源 IP 地址统计 Top 10 用户的 Session 信息,检查 Total Sessions 字段的值是否接近设备的 Session 规格。设备的 Session 规格可以在规格查询工具中查到,以 AR1220C 为例,选择 “接入路由器”->“AR1220C”->“软件性能”->“IP 应用”->“NAT”->“最大并发连接数”。

代码语言:javascript
复制
[Huawei] diagnose
[Huawei-diagnose] display session statistics top 10 order-by source-ip
Session statistic top 10 (Condition: Source IP, Service: SESSION, Items: 10, Total Sessions: 25768)
-------------------------------------------------------------------------------------------------
TOP-N     IP/Port                       Counts              Percentage(%)       
-------------------------------------------------------------------------------------------------
1         192.168.1.99                  19714               76.505744           
2         192.168.1.88                  5988                23.238125           
3         192.168.1.165                 9                   0.034927

【3】如果设备的 Session 数已达到设备的规格,且发现 Top 10 会话里有大量私网终端建立的会话(源 IP 地址为私网终端的 IP 地址,例如步骤 1 中的 192.168.1.99 和 192.168.1.88),说明私网中可能存在攻击行为。此时,执行命令 display session statistics top 10 order-by destination-port 进一步查看私网终端建立的会话的端口信息。本例中,私网用户建立了大量目的端口为 445 和 1433 的会话,建议在私网接口上配置 ACL 规则拒绝目的端口为 445 和 1433 的流量通过。

代码语言:javascript
复制
[Huawei-diagnose] display session statistics top 10 order-by destination-port
Session statistic top 10 (Condition: Destination Port, Service: SESSION, Items: 10, Total Sessions: 25768)
-------------------------------------------------------------------------------------------------
TOP-N     IP/Port                       Counts              Percentage(%)       
-------------------------------------------------------------------------------------------------
1         445                           15486               60.097796           
2         1433                          9565                37.119683           
3         3389                          648                 2.514747
[Huawei-diagnose] quit  
[Huawei] interface GigabitEthernet 0/0/0
[Huawei-GigabitEthernet0/0/0] display this
#
ip address 192.168.1.255 255.255.255.0

在流策略里绑定 ACL 并将流策略应用到私网接口 GE0/0/0,不允许目的端口为 445 和 1433 的流量通过私网接口,从而解决故障。

代码语言:javascript
复制
[Huawei] acl 3000 
[Huawei-acl-adv-3000] rule 20 permit tcp  destination-port eq 445
[Huawei-acl-adv-3000] rule 25 permit tcp  destination-port eq 1433
[Huawei-acl-adv-3000] quit
[Huawei] traffic classifier virus operator or
[Huawei-classifier-virus] if-match acl 3000
[Huawei-classifier-virus] quit
[Huawei] traffic behavior virus
[Huawei-behavior-virus] deny
[Huawei-behavior-virus] quit
[Huawei] traffic policy virus 
[Huawei-trafficpolicy-virus] classifier virus behavior virus 
[Huawei-trafficpolicy-virus] quit
[Huawei] interface GigabitEthernet 0/0/0
[Huawei-GigabitEthernet0/0/0] traffic-policy virus outbound
[Huawei-GigabitEthernet0/0/0] traffic-policy virus inbound

【4】如果检查之后,没有发现私网有攻击行为,则说明私网的业务较多,流量大属于正常现象,当前的设备性能已无法满足私网的业务,需要更换性能更高的设备。

私网存在 ARP 攻击导致用户上网时断时续

背景信息

如果用户发现上网时断时续,且网速特别慢,则很有可能是因为私网存在 ARP 攻击。此时,可以参考本节内容,检查设备上是否存在 ARP 攻击。

定位步骤

【1】执行命令 display logbuffer 检查设备运行日志,看是否有 ARP 协议报文因 CPU 阀值的限制被丢弃。

代码语言:javascript
复制
<Huawei> display logbuffer
Sep  9 2021 16:01:55+00:00 Huawei %%01SECE/4/PORT_ATTACK(l)[0]:Port attack occurred.(Slot=MPU, SourceAttackInterface=GigabitEthernet0/0/0, OuterVlan/InnerVlan=0/0, AttackPackets=64 packets per second)
Sep  9 2021 16:01:54+00:00 Huawei %%01DEFD/4/CPCAR_DROP_MPU(l)[1]:Some packets are dropped by cpcar on the MPU. (Packet-type=arp-miss, Drop-Count=770)
Sep  9 2021 16:01:54+00:00 Huawei %%01DEFD/4/CPCAR_DROP_MPU(l)[2]:Some packets are dropped by cpcar on the MPU. (Packet-type=arp-request, Drop-Count=3458)

【2】如果日志中有 ARP 报文被丢弃,则怀疑设备连接的私网中存在 ARP 攻击。此时,可以在设备上配置攻击溯源功能,进一步排查。

代码语言:javascript
复制
<Huawei> system-view
[Huawei] cpu-defend policy 1
[Huawei-cpu-defend-policy-1] auto-defend enable
[Huawei-cpu-defend-policy-1] auto-defend threshold 40  //可适当调整建议不要太小
[Huawei-cpu-defend-policy-1] auto-defend attack-packet sample 5
[Huawei-cpu-defend-policy-1] auto-defend protocol all
[Huawei-cpu-defend-policy-1] auto-defend trace-type source-ip source-mac source-portvlan
[Huawei-cpu-defend-policy-1] auto-defend alarm enable
[Huawei-cpu-defend-policy-1] quit
[Huawei] cpu-defend-policy 1  
[Huawei] cpu-defend-policy 1 global

【3】配置完攻击溯源后,当网络出现异常时,在设备上执行命令 display auto-defend attack-source 进一步确认是否存在 ARP 攻击。

代码语言:javascript
复制
[Huawei] display auto-defend attack-source
  Attack Source User Table:
  -------------------------------------------------------------------------
      MacAddress       InterfaceName      Vlan:Outer/Inner      TOTAL 
  -------------------------------------------------------------------------
  xxxx-xxxx-xxxx   GigabitEthernet0/0/1         0               368    
  yyyy-yyyy-yyyy   GigabitEthernet0/0/0         0               7152   
  -------------------------------------------------------------------------
  Total: 2

  Attack Source Port Table:
  -----------------------------------------------------
    InterfaceName        Vlan:Outer/Inner       TOTAL  
  -----------------------------------------------------
  GigabitEthernet0/0/1     0                    368   
  GigabitEthernet0/0/0     0                    23472 
  -----------------------------------------------------
  Total: 2

  Attack Source IP Table:
  -------------------------------------
   IPAddress        TOTAL Packets 
  -------------------------------------
  x.x.x.x      368    
  y.y.y.y      7152   
  -------------------------------------  
  Total: 2

如上所示,私网中源 IP 地址为 y.y.y.y,源 MAC 为 yyyy-yyyy-yyyy 的用户发送了大量的攻击报文(本例中 GE0/0/1 为公网接口,报文数量增长不大,可以忽略)。此时,根据被攻击端口 GE0/0/0,逐层往下找到攻击源用户,使用杀毒软件杀毒,解决故障。

【4】如果无法查到攻击源用户,可以在设备的私网接口 GE0/0/0 上配置 ACL 规则过滤掉二层 ARP 流量功能,拒绝源 MAC 地址为 yyyy-yyyy-yyyy 的报文通过私网接口,解决故障。

代码语言:javascript
复制
[Huawei] acl number 4444
[Huawei-acl-L2-4444] rule 5 deny l2-protocol arp source-mac yyyy-yyyy-yyyy 
[Huawei] interface gigabitethernet 0/0/0
[Huawei-GigabitEthernet0/0/0] traffic-filter inbound acl 4444
[Huawei-GigabitEthernet0/0/0] quit
[Huawei] quit
公网接口状态异常导致网速慢

背景信息

如果公网接口状态异常,也会导致用户上网慢,例如,接口的状态异常、接口的双工模式不对。此时,可以参考本节内容,检查下 AR 设备连接公网的接口状态是否正常。

定位步骤

【1】假设 AR 设备连接公网的接口为 GE0/0/1,执行命令 display interface 查看公网接口的信息,关注 Duplex、Total Error、CRC、Giants 等加粗部分的参数值。

代码语言:javascript
复制
<Huawei> display interface GigabitEthernet 0/0/1                                 
GigabitEthernet0/0/1 current state : UP                                         
Line protocol current state : UP                                                
Last line protocol up time : 2021-10-08 09:00:00                                
Description:HUAWEI, AR Series, GigabitEthernet0/0/1 Interface                   
Route Port,The Maximum Transmit Unit is 1500                                    
Internet Address is 120.44.5.15/24                                              
IP Sending Frames' Format is PKTFMT_ETHNT_2, Hardware address is 60d7-55f0-42c1 
Last physical up time   : 2021-10-08 09:00:00                                   
Last physical down time : 2021-10-08 08:58:09                                   
Current system time: 2021-10-22 06:14:56                                        
Port Mode: COMMON COPPER                                                        
Speed :  100,  Loopback: NONE                                                   
Duplex: FULL,  Negotiation: ENABLE                                              
Mdi   : AUTO,  Clock   : -                                                      
Last 300 seconds input rate 99992 bits/sec, 50 packets/sec                      
Last 300 seconds output rate 192 bits/sec, 0 packets/sec                        
Input peak rate 223880 bits/sec,Record time: 2021-10-13 14:13:56                
Output peak rate 18464 bits/sec,Record time: 2021-10-20 07:27:05                

Input:  55586497 packets, 13516267464 bytes                                     
  Unicast:              10526,  Multicast:              195548                  
  Broadcast:         55380423,  Jumbo:                       -                  
  Discard:                  0,  Total Error:                 0                  

  CRC:                      0,  Giants:                      0                  
  Jabbers:                  0,  Throttles:                   0                  
  Runts:                    0,  Symbols:                     0                  
  Ignoreds:                 0,  Frames:                      0                  

Output:  9237 packets, 590811 bytes                                             
  Unicast:               9227,  Multicast:                   0                  
  Broadcast:               10,  Jumbo:                       -                  
  Discard:                  0,  Total Error:                 0                  

  Collisions:               0,  ExcessiveCollisions:         0                  
  Late Collisions:          0,  Deferreds:                   0                  

    Input bandwidth utilization threshold : 100.00%                             
    Output bandwidth utilization threshold: 100.00%                             
    Input bandwidth utilization  : 0.11%                                        
    Output bandwidth utilization : 0.01%

【2】如果在全双工模式下,公网接口的双工模式被协商成了半双工,则公网接口在发送报文时会丢包,从而影响用户的上网速度。此时,可以检查公网接口协商的双工状态是否正确,即 Duplex 是否为 FULL。

如果发现接口双工模式协商的不对,则可能是设备本身协商错了,也可能是对端接口的速率与本端接口的速率不一致导致。先在公网接口上执行命令 speed,修改本端接口的速率和对端相同。

代码语言:javascript
复制
<Huawei> system-view                                                       
[Huawei] interface GigabitEthernet 0/0/1
[Huawei-GigabitEthernet0/0/1] undo negotiation auto
[Huawei-GigabitEthernet0/0/1] speed 100

速率修改成一致后,如果接口的双工模式仍然协商错误,则可以执行命令 duplex full 手动配置接口的双工模式为全双工。

代码语言:javascript
复制
<Huawei> system-view                                                       
[Huawei] interface GigabitEthernet 0/0/1
[Huawei-GigabitEthernet0/0/1] duplex full
[Huawei-GigabitEthernet0/0/1] quit
[Huawei] quit

如果上述步骤无法解决双工问题,建议直接更换一根确认为好的网线,重新对接端口。

【3】如果接口上存在一些错包计数,即 Total Error、CRC 等参数不为 0,则说明设备收到了错误报文。设备收到错误报文的原因比较多,可能是使用的线缆类型错误,也可能是对端设备的问题。

【4】如果以上操作都无法解决接口异常问题,则有可能是硬件故障,可以尝试更换一台新的设备解决故障。

双上行出口 / 多上行出口上网慢故障处理

Dialer 接口拨号失败后路由未失效

背景信息

正常情况下,在双链路 / 多链路 PPPoE 拨号场景中,如果一条 PPPoE 链路拨号失败,用户的上网流量会切换到其他正常的链路转发。但是,如果拨号失败链路对应的 Dialer 接口没有 Down 掉,则该 Dialer 接口的路由会继续生效。用户的上网流量会继续在该条拨号失败的链路上转发,从而出现用户访问某些网页慢的问题。此时,可以参考本节内容,使拨号失败链路对应的 Dialer 接口状态为 Down,并使对应的路由失效。

定位步骤

【1】执行命令 display ip interface brief,查看 Dialer 接口与 IP 相关的简要信息,包括 IP 地址、子网掩码、物理链路和协议的 Up/Down 状态等。

代码语言:javascript
复制
<Huawei> display ip interface brief
*down: administratively down                                                    
^down: standby                                                                  
(l): loopback                                                                   
(s): spoofing                                                                   
(E): E-Trunk down    
The number of interface that is UP in Physical is 2                             
The number of interface that is DOWN in Physical is 3                           
The number of interface that is UP in Protocol is 2                             
The number of interface that is DOWN in Protocol is 3                           

Interface                         IP Address/Mask      Physical   Protocol  
Dialer1                           unassigned           up         up(s)     
Dialer2                           100.64.40.165/32     up         up(s)

【2】执行命令 display ip routing-table 查看 IPv4 路由表的信息。

代码语言:javascript
复制
<Huawei> display ip routing-table
Route Flags: R - relay, D - download to fib, T - to vpn-instance
------------------------------------------------------------------------------
Routing Tables: Public
         Destinations : 31       Routes : 32       

Destination/Mask    Proto   Pre  Cost      Flags NextHop         Interface

        0.0.0.0/0   Static  60   0           D   0.0.0.0         Dialer1
                    Static  60   0           D   100.64.40.165   Dialer2

【3】根据步骤 1 和步骤 2 查到的信息,可以看到 Dialer1 接口虽然拨号失败,未分配到 IP 地址,但是接口的物理和协议状态都为 UP,导致 Dialer1 接口的路由仍然生效。此时,建议在每一个 Dialer 接口下配置命令 dialer number 1 autodial,使 Dialer 接口拨号失败后转换为 Down 状态。当该 Dialer 接口的状态变为 Down 时,对应的路由也会同步失效。

代码语言:javascript
复制
<Huawei> system-view
[Huawei] interface dialer 1
[Huawei-Dialer1] dialer number 1 autodial
[Huawei-Dialer1] quit
[Huawei] quit
公网口上收到的报文来回路径不一致

背景信息

在双出口 / 多出口链路上网场景,为了保证私网用户可以从任意一个公网口上网,每个公网口上都会配置 NAT 功能。AR 的 NAT 功能会检查公网口上收到报文的来回路径是否一致,即报文从哪个公网口发送出去,对端回复的报文也要从该公网口收到。如果发现某个公网口上收到的报文来回路径不一致,则会丢弃该报文,导致出现上网慢问题。

例如,AR 的双上行公网口分别为 GE1 和 GE2,某个报文从 GE1 口发送出去,回程报文却从 GE2 口回来,此时,AR 会丢弃该回程报文。出现这种报文来回路径不一致的情况,一般都是由对端设备发送报文时路由选择不对引起的。本节内容主要是指导用户如何在 AR 上定位出是否是因为报文的来回路径不一致引起的上网慢问题。具体的解决办法需要联系对端网络工程师处理,可以检查对端网络的组网或者修改配置等,保证对端设备发出的报文满足源进源出的要求。

定位步骤

【1】假设 AR 双上行公网口分别为 GE0/0/1 上和 GE0/0/2,GE1 口的对端设备所在的网络地址为 172.16.1.0/24,用户访问该网段的一台主机的 IP 地址和端口号为 172.16.1.254/24 和 65532。在 AR 的 GE0/0/2 口上配置基于 ACL 对报文流进行过滤功能,即 GE0/0/2 口上仅允许源 IP 地址为 172.16.1.254/24,源端口号为 65532 的报文通过。

代码语言:javascript
复制
<Huawei> system-view
[Huawei] acl 3000
[Huawei-acl-adv-3000] rule 5 permit tcp source 172.168.1.254 0.0.0.0 source-port eq 65532 
[Huawei-acl-adv-3000] quit
[Huawei] interface GigabitEthernet 0/0/2
[Huawei-GigabitEthernet0/0/2] traffic-filter inbound acl 3000
[Huawei-GigabitEthernet0/0/2] quit

【2】在 GE0/0/2 上配置完流量统计功能后,执行命令 display acl all 查看设备上是否有 ACL 匹配计数。如果有如下粗体部分的记录,说明 GE2 口上收到了 GE1 口发出去的报文,出现了报文来回路径不一致的情况,需要联系对端网络工程师处理。

代码语言:javascript
复制
[Huawei] display acl all                                                         
 Total quantity of nonempty ACL number is 1                                     

Advanced ACL 3000, 1 rule                                                       
Acl's step is 5                                                                 
 rule 5 permit tcp source 172.168.1.254 0 source-port eq 65532 (2 matches)
负载分担场景下的用户上网慢

背景信息

在双出口 / 多出口场景中,链路之间的关系分为负载分担和主备备份两种。负载分担是指同一时刻,多条链路都在转发流量。主备备份表示同一时刻只有一条链路在转发流量,另一条处于备份状态。负载分担可以提高链路使用效率,增加带宽,主要通过配置多条等价路由来实现。主备备份可以提高链路可靠性,主要通过配置多条不同优先级的路由来实现。

不同的企业使用不同的方式,但是在多条质量差别较大的链路间使用负载分担可能会引入上网慢问题。例如,AR 将某个用户访问某个网页的报文分配到两条链路上转发,质量较差的链路转发报文慢,且丢包多,必然会影响用户的上网体验。因此,在双出口 / 多出口场景时,如果遇到负载分担场景下的上网慢问题,可以参考本节内容,改成主备备份方式或者配置策略路由来解决。

定位步骤

【1】在 AR 上执行命令 display ip routing-table protocol static 查看配置的静态路由表信息。如果路由表内有两条优先级相同的路由分别到不同的下一跳,说明两条路由是等价路由,链路之间是负载分担的关系。

代码语言:javascript
复制
<Huawei> display ip routing-table protocol static                                
Route Flags: R - relay, D - download to fib, T - to vpn-instance                
------------------------------------------------------------------------------  
Public routing table : Static                                                   
         Destinations : 1        Routes : 2        Configured Routes : 2        

Static routing table status : <Active>                                          
         Destinations : 0        Routes : 0                                     

Static routing table status : <Inactive>                                        
         Destinations : 1        Routes : 2                                     

Destination/Mask    Proto   Pre  Cost      Flags NextHop         Interface      

        0.0.0.0/0   Static  60   0               172.16.1.2      Unknown        
        0.0.0.0/0   Static  60   0               10.1.1.2        Unknown

【2】删掉其中一条路由,重新访问网页,检查使用单链路上网时是否会出现上网慢现象。如果无,则说明两条链路质量都很好,上网慢并非是等价路由引起的问题,有可能是负载分担算法配置不合理引起的。此时,可以执行命令 ip load-balance hash,配置两条等价路由的负载分担方式。缺省情况下,IP 报文基于源 IP 地址和目的 IP 地址进行负载分担;TCP 或者 UDP 报文基于源 IP 地址、目的 IP 地址、源端口号和目的端口号进行负载分担。

代码语言:javascript
复制
<Huawei> system-view 
[Huawei] ip load-balance hash src-ip  //配置基于源IP地址进行负载分担

【3】如果其中一条路由上网慢,说明该条链路质量差。建议执行命令 ip route-static,修改该条路由的优先级,使其小于另一条路由的优先级,让该条链路成为备份链路。路由优先级值越大,路由优先级越低。

代码语言:javascript
复制
[Router] ip route-static 0.0.0.0 0 10.1.1.2 preference 100

【4】如果用户不想把两条链路改成主备备份,仍然希望两条链路都能转发流量,也可以通过配置策略路由的方式解决该问题。策略路由配置的原则为让质量好的链路多转发一些流量,质量差的链路少转发一些流量。例如,让 70% 的用户流量从质量好的链路转发,30% 的用户流量从质量差的链路转发。

主备链路场景下的用户上网慢

背景信息

在双出口 / 多出口场景中,有些企业用户对链路的可靠性要求较高,会同时部署多条链路作为主备链路。这种组网确实可以提高链路可靠性,减少丢包,但不表示一点丢包都没有。当主链路发生故障时,AR 会删除 NAT 表项里该条链路的相关信息,并等待客户端给服务器发送新的建立连接请求。AR 则根据客户端发送的连接请求重新建立会话表项。AR 重新建立会话表项的时间依赖于客户端和服务器之间的报文交互时间。极端情况下,如果客户端一直不发请求,则网络访问会中断。有些用户不太了解 AR 建立连接的机制,会误认为出故障了,实际上属于正常上网慢现象。如果遇到主备链路场景下的上网慢问题,可以参考本节内容,检查是否由于重新建立连接引起的。

定位步骤

【1】在 AR 路由器上连续多次执行命令 display nat session 查看 NAT 映射表项信息是否有变化。

代码语言:javascript
复制
<Huawei> display nat session all verbose
  NAT Session Table Information:

     Protocol          : TCP(6)
     SrcAddr  Port Vpn : 10.200.200.200 65532
     DestAddr Port Vpn : 10.100.100.100 1024
     Time To Live      : 60 s
     NAT-Info
       New SrcAddr     : 10.10.10.10
       New SrcPort     : 10240
       New DestAddr    : 10.30.30.30
       New DestPort    : 21

     Protocol          : UDP(6)
     SrcAddr  Port Vpn : 10.200.200.200 65532
     DestAddr Port Vpn : 10.100.100.100 1024
     Time To Live      : 60 s
     NAT-Info
       New SrcAddr     : 10.10.10.10
       New SrcPort     : 10240
       New DestAddr    : 10.30.30.3
       New DestPort    : 21

  Total : 2

【2】如果发现 NAT 表项中 “SrcAddr Port Vpn” 字段的源端口号发生变化,说明 AR 设备上重新建立了 NAT 会话表项,该上网慢是由 NAT 表项重新建立引起的,属于正常情况,无需额外处理。

收集上网慢故障信息

如果以上步骤均未能解决您的问题,请先按如下步骤收集相关信息,然后寻求技术支持。

【1】收集故障相关信息

一键式收集设备的所有诊断信息并导出文件。

在用户视图下,执行 display diagnostic-information file-name 命令,采集设备诊断信息并保存为文件。

代码语言:javascript
复制
<Huawei> display diagnostic-information dia-info.txt
  This operation will take several minutes, please wait.........................
..................................................................              
Info: The diagnostic information was saved to the device successfully.

【2】收集设备的日志和告警信息并导出文件。

在用户视图下,执行 save logfile 命令,将缓冲区的日志和告警信息保存为文件。

代码语言:javascript
复制
<Huawei> save logfile
Info: It may take several seconds,please wait...  
Save log file successfully.

来源:网络技术平台

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-03-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 入门小站 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 上网方式及理论网速
    • 如何测网速
    • 了解网速慢故障场景
      • 单上行出口上网慢
        • 双上行 / 多上行出口上网慢
        • 为什么网速慢,原因在这里
        • 单上行出口上网慢故障处理
          • 报文分片导致部分网页打开慢
            • 私网流量大导致设备的 Session 资源耗尽
              • 私网存在 ARP 攻击导致用户上网时断时续
                • 公网接口状态异常导致网速慢
                • 双上行出口 / 多上行出口上网慢故障处理
                  • Dialer 接口拨号失败后路由未失效
                    • 公网口上收到的报文来回路径不一致
                      • 负载分担场景下的用户上网慢
                        • 主备链路场景下的用户上网慢
                        • 收集上网慢故障信息
                        相关产品与服务
                        云服务器
                        云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
                        领券
                        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档