• 产品与解决方案
  • 行业解决方案
  • 服务
  • 支持
  • 合作伙伴
  • 新华三人才研学中心
  • 关于我们

07-三层技术-IP业务配置指导

目录

10-IP性能优化配置

本章节下载 10-IP性能优化配置  (333.94 KB)

10-IP性能优化配置

  录

1 IP性能优化

1.1 IP性能优化配置任务简介

1.2 配置允许接口转发直连网段的定向广播报文

1.2.1 功能简介

1.2.2 配置步骤

1.2.3 允许接口转发直连网段的定向广播报文典型配置举例

1.3 配置接口发送IPv4报文的MTU

1.4 开启IP分片报文本地重组功能

1.5 配置IP虚拟分片重组功能

1.5.1 功能简介

1.5.2 开启IP虚拟分片重组功能

1.5.3 配置IP虚拟分片重组缓存报文的老化时间

1.6 配置DF标记位处理方式

1.7 开启三层聚合组/三层聚合接口IPv4报文加速功能

1.8 关闭转发报文IP校验和功能

1.9 配置ICMP差错报文发送功能

1.9.1 功能简介

1.9.2 开启ICMP重定向报文发送功能

1.9.3 开启ICMP超时报文发送功能

1.9.4 开启ICMP目的不可达报文发送功能

1.10 配置发送ICMP差错报文对应的令牌刷新周期和令牌桶容量

1.11 配置ICMP分片报文转发功能

1.12 指定ICMP报文源地址

1.13 开启发送指定类型的ICMP报文的功能

1.14 开启接收指定类型的ICMP报文的功能

1.15 配置接口的TCP最大报文段长度

1.16 配置TCP连接的Path MTU探测功能

1.17 开启SYN Cookie功能

1.18 配置TCP连接的缓冲区大小

1.19 配置TCP定时器

1.20 配置TCP代理所使用的TCP拥塞控制算法

1.21 IP性能优化显示和维护

1.21.1 显示和清除IP报文统计信息

1.21.2 显示ICMP流量统计信息

1.21.3 显示RawIP连接信息

1.21.4 显示TCP连接信息

1.21.5 显示TCP代理连接的信息

1.21.6 显示UDP连接信息

1.21.7 显示UDP连接负载分担的信息

1.21.8 显示和清除UDP流量统计信息

 


1 IP性能优化

1.1  IP性能优化配置任务简介

如下所有配置均为可选,请根据实际情况选择配置。

·     配置IP报文功能

¡     配置允许接口转发直连网段的定向广播报文

¡     配置接口发送IPv4报文的MTU

¡     开启IP分片报文本地重组功能

本功能适用于IRF组网环境。

¡     配置IP虚拟分片重组功能

¡     配置DF标记位处理方式

¡     开启三层聚合组/三层聚合接口IPv4报文加速功能

¡     关闭转发报文IP校验和功能

·     配置ICMP报文功能

¡     配置ICMP差错报文发送功能

¡     配置发送ICMP差错报文对应的令牌刷新周期和令牌桶容量

¡     配置ICMP分片报文转发功能

¡     指定ICMP报文源地址

¡     开启发送指定类型的ICMP报文的功能

¡     开启接收指定类型的ICMP报文的功能

·     配置TCP报文功能

¡     配置接口的TCP最大报文段长度

¡     配置TCP连接的Path MTU探测功能

¡     开启SYN Cookie功能

¡     配置TCP连接的缓冲区大小

¡     配置TCP定时器

¡     配置TCP代理所使用的TCP拥塞控制算法

1.2  配置允许接口转发直连网段的定向广播报文

1.2.1  功能简介

定向广播报文是指发送给特定网络的广播报文。该报文的目的IP地址中网络号码字段为特定网络的网络号,主机号码字段为全1。

在转发定向广播报文的情况下,如果在接口上配置了此命令,设备从其他接口接收到目的地址为此接口直连网段的定向广播报文时,会从此接口转发此类报文。

黑客可以利用定向广播报文来攻击网络系统,给网络的安全带来了很大的隐患。但在某些应用环境下,设备接口需要转发这类定向广播报文,例如:

·     使用UDP Helper功能,将广播报文转换为单播报文发送给指定的服务器。

·     使用Wake on LAN(网络唤醒)功能,发送定向广播报文唤醒远程网络中的计算机。

在上述情况下,用户可以通过命令配置接口允许转发直连网段的定向广播报文。

1.2.2  配置步骤

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     配置允许接口转发面向直连网段的定向广播报文。

ip forward-broadcast

缺省情况下,设备禁止转发直连网段的定向广播报文。

1.2.3  允许接口转发直连网段的定向广播报文典型配置举例

1. 组网需求

图1-1所示,Host的接口和Router A的接口GigabitEthernet0/0/1处于同一个网段(1.1.1.0/24),Router A的接口GigabitEthernet0/0/2和Router B的接口GigabitEthernet0/0/2处于另外一个网段(2.2.2.0/24)。Host上配置默认网关为Router A的接口GigabitEthernet0/0/1的地址(1.1.1.2/24),Router B上配置静态路由使得Host与Router B之间路由可达。

要求通过配置使得Router B可以收到Host发送的定向广播报文。

2. 组网图

图1-1 配置转发定向广播报文组网图

3. 配置步骤

(1)     配置Router A

# 配置接口GigabitEthernet0/0/1和GigabitEthernet0/0/2的IP地址。

<RouterA> system-view

[RouterA] interface gigabitethernet 0/0/1

[RouterA-GigabitEthernet0/0/1] ip address 1.1.1.2 24

[RouterA-GigabitEthernet0/0/1] quit

[RouterA] interface gigabitethernet 0/0/2

[RouterA-GigabitEthernet0/0/2] ip address 2.2.2.2 24

# 配置允许接口GigabitEthernet0/0/2转发直连网段的定向广播报文。

[RouterA-GigabitEthernet0/0/2] ip forward-broadcast

(2)     配置Router B

# 配置Router B到Host的静态路由。

<RouterB> system-view

[RouterB] ip route-static 1.1.1.1 24 2.2.2.2

# 配置接口GigabitEthernet0/0/2的IP地址。

[RouterB] interface gigabitethernet 0/0/2

[RouterB-GigabitEthernet0/0/2] ip address 2.2.2.1 24

配置完成以后,在Host上ping Router A的接口GigabitEthernet0/0/2所在子网网段的广播地址(2.2.2.255)时,Router B的接口GigabitEthernet0/0/2可以收到该报文。取消掉ip forward-broadcast的配置,Router B的接口GigabitEthernet0/0/2就不能收到该报文。

1.3  配置接口发送IPv4报文的MTU

1. 功能简介

当设备收到一个报文后,如果发现报文长度比转发接口发送IPv4报文的MTU值大,则进行下列处理:

·     如果报文不允许分片,则将报文丢弃;

·     如果报文允许分片,则将报文进行分片转发。

为了减轻转发设备在传输过程中的分片和重组数据包的压力,更高效的利用网络资源,请根据实际组网环境设置合适的接口MTU值,以减少分片的发生。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     配置发送IPv4报文的MTU。

ip mtu mtu-size

缺省情况下,未配置接口发送IPv4报文的MTU。

1.4  开启IP分片报文本地重组功能

1. 功能简介

当某单板收到目的为本设备的IP分片报文时,需要把分片报文送到主用主控板进行重组,这样会导致报文重组性能较低的问题。当开启IP分片报文本地重组功能后,分片报文会在该单板直接进行报文重组,这样就能提高报文的重组性能。开启IP分片报文本地重组功能后,如果分片报文是从设备上不同的单板进入的,会导致IP分片报文本地无法重组成功。

多台设备组成的IRF环境下,当某成员设备收到目的为本IRF设备的IP分片报文时,需要把分片报文送到主设备进行重组,这样会导致报文重组性能较低的问题。当开启IP分片报文本地重组功能后,分片报文会在该成员设备上直接进行报文重组,这样就能提高分片报文的重组性能。开启IP分片报文本地重组功能后,如果分片报文是从设备上不同的成员设备进入的,会导致IP分片报文本地无法重组成功。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     开启IP分片报文本地重组功能。

ip reassemble local enable

缺省情况下,IP分片报文本地重组功能处于关闭状态。

1.5  配置IP虚拟分片重组功能

1.5.1  功能简介

为了避免由于后片先到(报文分片后)的情况而导致设备重组分片报文复杂度过高的问题,设备需要对收到的分片报文先进行虚拟分片重组。IP虚拟分片重组功能可以对分片报文进行校验、排序和缓存,保证后续的报文重组功能处理的都是顺序正确的分片报文。

1.5.2  开启IP虚拟分片重组功能

1. 功能简介

IP虚拟分片重组功能不仅可以对报文进行检验、排序和缓存,还可以对下面几种分片攻击进行检测。如果检测到分片攻击,则设备会丢弃收到的分片报文,从而提高了设备的安全性。

·     Tiny Fragment攻击:如果设备收到分片报文的首片长度非常小,并且传输层协议(如:TCP、UDP)头字段放在第二个分片中,则认为是受到了Tiny Fragment攻击;

·     Overlapping Fragment攻击:如果设备收到了完全相同的分片报文,或者收到的分片报文与其前一分片或后一分片出现重叠时,则认为是受到了Overlapping Fragment攻击;

·     Fragment-flood攻击:如果设备收到的分片报文个数超过了指定的队列允许的最大分片报文个数或者设备上创建的分片队列个数超过了指定的最大分片队列个数,则认为是受到了Fragment-flood攻击。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     开启IP虚拟分片重组功能。

ip virtual-reassembly enable

缺省情况下,IP虚拟分片重组功能处于关闭状态。

1.5.3  配置IP虚拟分片重组缓存报文的老化时间

1. 功能简介

每个需要进行虚拟分片重组的分片报文均有一个老化时间,该老化时间到达后,报文将直接被丢弃,而不会进入后续的报文重组处理过程。

当某个业务在缓存中积压大量分片报文时,缓存队列中报文的ID字段可能会重复。先进入缓存队列的报文,如果某个分片丢包,则会将后进入缓存队列的、ID相同的报文的分片补充进自己的分片队列,导致分片重组错误。在某个业务缓存的分片报文过多,同时存在丢包的场景下,建议通过本命令减小缓存报文的老化时间,减少缓存报文的积压,继而降低由丢包和ID重复引起的报文分片重组错误的概率。

2. 配置限制和指导

设备开启虚拟分片重组功能后,缓存报文的老化时间配置才能生效。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     配置IP虚拟分片重组缓存报文的老化时间。

ip virtual-reassembly aging aging-milliseconds

缺省情况下,缓存报文的老化时间为3000毫秒。

1.6  配置DF标记位处理方式

1. 功能简介

设备转发IP报文时,由于链路MTU值可能会对IP报文进行分片。如果设备收到携带DF(Don’t Fragment,不分片)标记的IP报文,设备不会转发该IP报文,但会向报文发送端发送ICMP差错报文,这样会导致通信中断。

当用户在设备上配置IP报文DF标志位后,设备会直接修改IP报文中的DF标志位,使得该IP报文可以被分片转发。

配置本功能后,设备会修改所有转发IP报文的DF标志位,不会修改本设备生成的IP报文的DF标志位。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     配置DF标记位处理方式。

ip df-bit { clear | set }

缺省情况下,保留当前IP报文DF标志位取值。

1.7  开启三层聚合组/三层聚合接口IPv4报文加速功能

1. 功能简介

缺省情况下,三层聚合组/三层聚合接口发送IPv4报文时,会先通过QoS处理,再查询物理出接口发送。开启本功能后,三层聚合组/三层聚合接口发送IPv4报文时会跳过QoS处理,直接查询报文物理出接口发送,以提升三层聚合组/三层聚合接口发送报文的性能。

2. 配置限制和指导

建议在不配置QoS业务的设备上开启本功能,在配置QoS业务的设备上关闭本功能,以免对QoS业务造成影响。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     开启三层聚合组/三层聚合接口IPv4报文加速功能。

ip packet aggregation-accelerate enable

缺省情况下,三层聚合组/三层聚合接口报文IPv4加速功能处于关闭状态。

1.8  关闭转发报文IP校验和功能

1. 功能简介

关闭转发报文IP校验和功能后,转发的IP报文将不再进行校验和处理,节约了转发流程的资源,此时校验和错误的IP转发报文不会被丢弃,而是正常转发。上送本机的IP报文依然需要校验和处理。本功能多用于转发性能测试的场景。

2. 配置限制和指导

本功能仅在当前转发模式是HPF转发模式时生效。首先执行ip forwarding accelerate命令,再手动重启设备,可以启动HPF转发模式,关于ip forwarding accelerate命令的详细介绍,请参见“三层技术-IP业务命令参考”中的“IP转发基础”。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     关闭转发报文IP校验和功能。

ip forwarding no-checksum

缺省情况下,转发报文IP校验和功能处于开启状态。

1.9  配置ICMP差错报文发送功能

1.9.1  功能简介

ICMP报文通常被网络层或传输层协议用来在异常情况发生时通知相应设备,从而便于进行控制管理。ICMP差错报文的发送虽然方便了网络的控制管理,但是也存在缺限:发送大量的ICMP报文,增大网络流量;如果有用户发送ICMP差错报文进行恶意攻击,会导致设备性能下降或影响正常工作。为了避免上述现象发生,缺省情况下,ICMP差错报文发送功能处于关闭状态,用户可以根据需要开启ICMP差错报文发送功能。

ICMP差错报文包括重定向报文、超时报文和目的不可达报文。

1.9.2  开启ICMP重定向报文发送功能

1. 功能简介

ICMP重定向报文(报文Type字段值为5,详见RFC792)发送功能可以简化主机的管理,使具有很少选路信息的主机逐渐建立较完善的路由表,从而找到最佳路由。

主机启动时,它的路由表中可能只有一条到缺省网关的缺省路由。当满足一定的条件时,缺省网关会向源主机发送ICMP重定向报文,通知主机重新选择正确的下一跳进行后续报文的发送。

同时满足下列条件时,设备会发送ICMP重定向报文:

·     接收和转发数据报文的接口是同一接口;

·     报文的源IP地址和报文接收接口的IP地址在同一个网段;

·     数据报文中没有源路由选项。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     开启ICMP重定向报文发送功能。

ip redirects enable

缺省情况下,ICMP重定向报文发送功能处于关闭状态。

1.9.3  开启ICMP超时报文发送功能

1. 功能简介

ICMP超时报文(报文Type字段值为11,详见RFC792)发送功能是在设备收到IP数据报文后,如果发生超时差错,则将报文丢弃并给源端发送ICMP超时差错报文。

设备在满足下列条件时会发送ICMP超时报文:

·     设备收到IP数据报文后,如果报文的目的地不是本地且报文的TTL字段是1,则发送“TTL超时”ICMP差错报文(报文Code字段值为0,详见RFC792);

·     设备收到目的地址为本地的IP数据报文的第一个分片后,启动定时器,如果所有分片报文到达之前定时器超时,则会发送“重组超时”ICMP差错报文(报文Code字段值为1,详见RFC792)。

2. 配置限制和指导

关闭ICMP超时报文发送功能后,设备不会再发送“TTL超时”ICMP差错报文,但“重组超时”ICMP差错报文仍会正常发送。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     开启ICMP超时报文发送功能。

ip ttl-expires enable

缺省情况下,ICMP超时报文发送功能处于关闭状态。

1.9.4  开启ICMP目的不可达报文发送功能

1. 功能简介

ICMP目的不可达报文(报文Type字段值为3,详见RFC792)发送功能是在设备收到IP数据报文后,如果发生目的不可达的差错,则将报文丢弃并给源端发送ICMP目的不可达差错报文。

设备在满足下列条件时会发送目的不可达报文:

·     设备在转发报文时,如果在路由表中未找到对应的转发路由,且路由表中没有缺省路由,则给源端发送“网络不可达”ICMP差错报文;

·     设备收到目的地址为本地的数据报文时,如果设备不支持数据报文采用的传输层协议,则给源端发送“协议不可达”ICMP差错报文;

·     设备收到目的地址为本地、传输层协议为UDP的数据报文时,如果报文的端口号与正在使用的进程不匹配,则给源端发送“端口不可达”ICMP差错报文;

·     源端如果采用“严格的源路由选择”发送报文,当中间设备发现源路由所指定的下一个设备不在其直接连接的网络上,则给源端发送“源站路由失败”的ICMP差错报文;

·     设备在转发报文时,如果转发接口的MTU小于报文的长度,但报文被设置了不可分片,则给源端发送“需要进行分片但设置了不分片比特”ICMP差错报文。

2. 配置限制和指导

设备开启DHCP服务后,在未发送ICMP回显请求(ECHO-REQUEST)报文情况下,收到非法ICMP回显应答(ECHO-REPLY)报文,此时设备不会回应“协议不可达”ICMP差错报文。执行dhcp enable命令可以启动DHCP服务,关于dhcp enable命令的详细介绍,请参见“三层技术-IP业务命令参考”中的“DHCP”。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     开启ICMP目的不可达报文发送功能。

ip unreachables enable

缺省情况下,ICMP目的不可达报文发送功能处于关闭状态。

1.10  配置发送ICMP差错报文对应的令牌刷新周期和令牌桶容量

1. 功能简介

如果网络中短时间内发送的ICMP差错报文过多,将可能导致网络拥塞。为了避免这种情况,用户可以控制设备在指定时间内发送ICMP差错报文的最大数目,目前采用令牌桶算法来实现。

用户可以设置令牌桶的容量,即令牌桶中可以同时容纳的令牌数;同时可以设置令牌桶的刷新周期,即每隔多长时间发放一个令牌到令牌桶中,直到令牌桶中的令牌数达到配置的容量。一个令牌表示允许发送一个ICMP差错报文,每当发送一个ICMP差错报文,则令牌桶中减少一个令牌。如果连续发送的ICMP差错报文超过了令牌桶的容量,则后续的ICMP差错报文将不能被发送出去,直到按照所设置的刷新频率将新的令牌放入令牌桶中。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     配置发送ICMP差错报文对应的令牌刷新周期和令牌桶容量。

ip icmp error-interval interval [ bucketsize ]

缺省情况下,令牌刷新周期为100毫秒,令牌桶容量为10。

刷新周期为0时,表示不限制ICMP差错报文的发送。

1.11  配置ICMP分片报文转发功能

1. 配置限制和指导

为了防止ICMP分片报文攻击,用户可以关闭设备的ICMP分片报文转发功能,对于收到的ICMP分片报文不进行转发。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     关闭ICMP分片报文转发功能。

ip icmp fragment discarding

缺省情况下,ICMP分片报文转发功能处于开启状态。

1.12  指定ICMP报文源地址

1. 功能简介

在网络中IP地址配置较多的情况下,收到ICMP报文时,用户很难根据报文的源IP地址判断报文来自哪台设备。为了简化这一判断过程,可以指定ICMP报文源地址。用户配置特定地址(如环回口地址)为ICMP报文的源地址,可以简化判断。

设备发送ICMP差错报文(TTL超时、端口不可达和参数错误等)和ping echo request报文时,都可以通过上述命令指定报文的源地址。

2. 配置限制和指导

用户发送ping echo request报文时,如果ping命令中已经指定源地址,则使用该源地址,否则使用ip icmp source配置的源地址。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     指定ICMP报文源地址。

ip icmp source [ vpn-instance vpn-instance-name ] ip-address

缺省情况下,未指定ICMP报文源地址。

发送ICMP差错报文(TTL超时、端口不可达和参数错误等)时,设备使用触发ICMP差错报文的原始报文的入接口IP地址作为ICMP报文源地址。

发送ICMP echo request报文时,设备使用出接口IP地址作为ICMP报文源地址。

发送ICMP echo reply报文时,设备使用ICMP echo request报文的目的地址作为ICMP报文源地址。

1.13  开启发送指定类型的ICMP报文的功能

1. 功能简介

本功能用来开启发送指定类型的ICMP报文的功能。缺省情况下,设备支持发送大多数类型的ICMP报文,这样可能会存在安全隐患。例如设备发出的时间戳请求应答、掩码请求应答、网络重定向和网络不可达等报文,其携带的设备相关信息可能给被攻击者获取并发起攻击。为了提高安全性,可以关闭设备对指定类型的ICMP报文的发送功能。

2. 配置限制和指导

请根据网络实际情况执行本功能,随意关闭发送指定类型的ICMP报文的功能,可能会影响网络的正常运行。

ICMP目的不可达报文发送功能同时受本功能和ip unreachables enable命令的控制。只要一方开启,ICMP目的不可达报文发送功能就处于开启状态。

ICMP超时报文发送功能同时受本功能和ip ttl-expires enable命令的控制。只要一方开启,ICMP超时报文发送功能就处于开启状态。

ICMP重定向报文发送功能同时受本功能和ip redirects enable命令的控制。只要一方开启,ICMP重定向报文发送功能就处于开启状态。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     开启发送指定类型的ICMP报文的功能。

ip icmp { name icmp-name | type icmp-type code icmp-code } send enable

缺省情况下,发送ICMP目的不可达报文、ICMP超时报文和ICMP重定向报文功能处于关闭状态;发送其它ICMP报文功能处于开启状态。

1.14  开启接收指定类型的ICMP报文的功能

1. 功能简介

本功能用于开启接收指定类型的ICMP报文的功能。缺省情况下,设备会接收所有类型的ICMP报文,这会产生安全隐患。例如设备短时间内收到大量的回送请求报文时,会影响设备性能,导致设备无法正常运行。为了提高安全性,可以关闭设备接收指定类型的ICMP报文的功能。

2. 配置限制和指导

请根据网络实际情况执行本功能,随意关闭接收指定类型的ICMP报文的功能,可能会影响网络的正常运行。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     开启接收指定类型的ICMP报文的功能。

ip icmp { name icmp-name | type icmp-type code icmp-code } receive enable

缺省情况下,设备会接收所有类型的ICMP报文。

1.15  配置接口的TCP最大报文段长度

1. 功能简介

TCP最大报文段长度(Maximum Segment Size,MSS)表示TCP连接的对端发往本端的最大TCP报文段的长度,目前作为TCP连接建立时的一个选项来协商:当一个TCP连接建立时,连接的双方要将MSS作为TCP报文的一个选项通告给对端,对端会记录下这个MSS值,后续在发送TCP报文时,会限制TCP报文的大小不超过该MSS值。当对端发送的TCP报文的长度小于本端的TCP最大报文段长度时,TCP报文不需要分段;否则,对端需要对TCP报文按照最大报文段长度进行分段处理后再发给本端。

2. 配置限制和指导

·     用户可以通过下面的命令配置接口的TCP最大报文段长度,配置后该接口接收和发送的TCP报文的大小都不能超过该值。

·     该配置仅对新建的TCP连接生效,对于配置前已建立的TCP连接不生效。

·     该配置仅对IP报文生效,当接口上配置了MPLS功能后,不建议再配置本功能。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     配置接口的TCP最大报文段长度。

tcp mss value

缺省情况下,未配置接口的TCP最大报文段长度。

1.16  配置TCP连接的Path MTU探测功能

1. 功能简介

通过开启TCP连接的Path MTU探测功能,用户可确定TCP路径上从源端到目的端的最小MTU(Path MTU),按照Path MTU组织TCP分段长度,避免IP分片的发生。为了在Path MTU增大时,减少资源浪费,可以开启Path MTU老化定时器,保证设备尽量按照TCP路径允许的最大报文长度发送数据。

RFC 1191中规定的TCP连接的Path MTU探测机制如下:

(1)     TCP源端将发送的TCP数据段的外层IP报文设置DF(不可分片)标记。

(2)     如果TCP路径上某路由器的出接口MTU值小于该IP报文长度,则会丢弃报文,并给TCP源端发送ICMP差错报文,报文中会携带该出接口MTU值。

(3)     TCP源端通过解析该ICMP差错报文,可知TCP路径上当前最小的单向MTU值。

(4)     后续TCP源端发送数据段的长度不超过MSS。其中,MSS=最小MTU值-IP头部长度-TCP头部长度。

当MSS已经达到系统规定的最小的32字节后,如果再次收到减少MSS的ICMP差错报文,系统将允许该TCP连接发送的报文进行分片。

产生ICMP差错报文的路由器可能不支持RFC 1191,其产生的ICMP差错报文中的出接口MTU字段值为0,对于这种报文,TCP源端将按照RFC 1191中规定的MTU表获取比当前路径MTU更小的值作为计算TCP MSS的基础。MTU表的内容为(单位为字节):68、296、508、1006、1280、1492、2002、4352、8166、17914、32000、65535(由于系统规定的TCP最小MSS为32,所以对应最小的MTU实际为72字节)。

Path MTU的老化机制如下:

·     当TCP源端收到ICMP差错报文后,除了减小Path MTU值,同时会为该Path MTU值启动老化定时器。

·     当该定时器超时后,系统将按照RFC 1191规定的MTU表依次递增TCP的MSS值。

·     如果增加一次MSS之后的2分钟内未收到ICMP差错报文,则继续递增,直到MSS增长到对端在TCP三次握手阶段通告的MSS值。

2. 配置准备

TCP连接的Path MTU探测功能依赖IP报文的DF标记位设置后触发ICMP差错报文,因此需要TCP路径上的所有设备打开ICMP差错报文发送功能(ip unreachables enable),以确保ICMP差错报文可以发送到TCP源端。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     开启TCP连接的Path MTU探测功能。

tcp path-mtu-discovery [ aging age-time | no-aging ]

缺省情况下,TCP连接的Path MTU探测功能处于关闭状态。

1.17  开启SYN Cookie功能

1. 功能简介

SYN Cookie功能用来防止SYN Flood攻击。SYN Flood攻击中,攻击者向设备发送大量请求建立TCP连接的SYN报文,而不回应设备的SYN ACK报文,导致设备上建立了大量的TCP半连接。从而,达到耗费设备资源,使设备无法处理正常业务的目的。配置SYN Cookie功能后,当设备收到TCP连接请求时,不建立TCP半连接,而直接向发起者回复SYN ACK报文。设备接收到发起者回应的ACK报文后,建立连接,并进入ESTABLISHED状态。通过这种方式,可以避免在设备上建立大量的TCP半连接,防止设备受到SYN Flood攻击。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     开启SYN Cookie功能。

tcp syn-cookie enable

缺省情况下,SYN Cookie功能处于关闭状态。

1.18  配置TCP连接的缓冲区大小

(1)     进入系统视图。

system-view

(2)     配置TCP连接的接收和发送缓冲区的大小。

tcp window window-size

缺省情况下,TCP连接的接收和发送缓冲区大小为63KB。

1.19  配置TCP定时器

1. TCP定时器简介

可以配置的TCP定时器包括:

·     synwait定时器:当发送SYN报文时,TCP启动synwait定时器和重传SYN报文定时器,当synwait定时器超时且SYN报文重传未达到最大次数时,如果设备未收到回应报文,则TCP连接建立不成功;当synwait定时器未超时但是SYN报文重传达到最大次数时,如果设备未收到回应报文,则TCP连接建立不成功。

·     finwait定时器:当TCP的连接状态为FIN_WAIT_2时,启动finwait定时器,如果在定时器超时前未收到报文,则TCP连接终止;如果收到FIN报文,则TCP连接状态变为TIME_WAIT状态;如果收到非FIN报文,则从收到的最后一个非FIN报文开始重新计时,在超时后中止连接。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     配置TCP的synwait定时器超时时间。

tcp timer syn-timeout time-value

缺省情况下,synwait定时器超时时间为75秒。

(3)     配置TCP的finwait定时器超时时间。

tcp timer fin-timeout time-value

缺省情况下,finwait定时器超时时间为675秒。

1.20  配置TCP代理所使用的TCP拥塞控制算法

1. 功能简介

可以配置的TCP拥塞控制算法如下:

·     Reno:推荐用于低延时、低带宽的场景,因为在高延时、高带宽的场景中,传输速度往往要经过很长时间才能达到最大,会降低带宽的利用率。Reno将收到ACK作为拥塞窗口增长的依据,是一种早期的TCP拥塞控制算法。

·     BIC:推荐用于高带宽、低丢包率的场景。BIC将丢包作为拥塞信号,优点是只要没有出现丢包,就不会主动降低发送速度,可以最大程度的利用网络剩余带宽,提高吞吐量;缺点是传输时延较高,而且会将传输错误丢包认为是拥塞丢包,从而减小拥塞窗口,降低发送速率。

·     BBR:推荐用于高带宽、高时延、存在一定丢包率的场景。BBR不将丢包作为拥塞信号,所以在丢包率较高的场景下,BBR可以有效降低传输时延,并保证较高的吞吐量。BBRv2降低了抢占性,提高了不同算法共存时的公平性。

对于支持配置TCP拥塞控制算法的模块,以支持模块配置的TCP拥塞控制算法为准,本功能不生效。例如WAAS模块,可以通过执行waas tfo congestion-method命令来配置WAAS WAN侧链路的TCP拥塞控制算法;对于不支持配置TCP拥塞控制算法的模块,将采用与TCP代理模块相同的TCP拥塞控制算法。关于waas tfo congestion-method命令的详细介绍,请参见“三层技术-IP业务命令参考”中的“WAAS”。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     配置TCP代理所使用的TCP拥塞控制算法。

tcp-proxy congestion-method { bbrv1 | bbrv2 | bic | reno }

缺省情况下,TCP代理所使用的TCP拥塞控制算法为Reno算法。

1.21  IP性能优化显示和维护

1.21.1  显示和清除IP报文统计信息

可在任意视图下执行以下命令,显示IP报文统计信息。

display ip statistics [ slot slot-number ]

请在用户视图下执行以下命令,清除IP报文统计信息。

 

reset ip statistics

reset ip statistics [ slot slot-number ]

1.21.2  显示ICMP流量统计信息

可在任意视图下执行以下命令,显示ICMP流量统计信息。

 

display icmp statistics

display icmp statistics [ slot slot-number ]

1.21.3  显示RawIP连接信息

可在任意视图下执行以下命令:

·     显示RawIP连接摘要信息。

display rawip [ slot slot-number ]

·     显示RawIP连接详细信息。

display rawip verbose [ slot slot-number [ pcb pcb-index ] ]

1.21.4  显示TCP连接信息

可在任意视图下执行以下命令:

·     显示TCP连接摘要信息。

display tcp [ slot slot-number ]

·     显示TCP连接详细信息。

display tcp verbose [ slot slot-number [ pcb pcb-index ] ]

1.21.5  显示TCP代理连接的信息

可在任意视图下执行以下命令:

·     显示TCP代理连接的简要信息。

display tcp-proxy slot slot-number

·     显示TCP代理非保留端口的使用信息。

display tcp-proxy port-info slot slot-number

1.21.6  显示UDP连接信息

可在任意视图下执行以下命令:

·     显示UDP连接摘要信息。

display udp [ slot slot-number ]

·     显示UDP连接详细信息。

display udp verbose [ slot slot-number [ pcb pcb-index ] ]

1.21.7  显示UDP连接负载分担的信息

1. 显示UDP连接负载分担的概要信息

可在任意视图下执行以下命令,显示UDP连接负载分担的概要信息。

display udp socket-loadbalance [ slot slot-number ]

2. 显示UDP连接负载分担的详细信息

可在任意视图下执行以下命令,显示UDP连接负载分担的详细信息。

display udp socket-loadbalance verbose [ slot slot-number ] [ port port-number ]

1.21.8  显示和清除UDP流量统计信息

可在任意视图下执行以下命令,显示UDP流量统计信息。

 

display udp statistics

display udp statistics [ slot slot-number ]

请在用户视图下执行以下命令,清除UDP流量统计信息。

reset udp statistics

 

不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!

新华三官网
联系我们