08-IP性能优化配置
本章节下载: 08-IP性能优化配置 (218.16 KB)
目 录
设备支持两种运行模式:独立运行模式和IRF模式,缺省情况为独立运行模式。有关IRF模式的介绍,请参见“IRF配置指导”中的“IRF”。
在一些特定的网络环境里,可以通过调整IP的参数,以使网络性能达到最佳。IP性能的优化配置包括:
· 配置允许转发定向广播报文
· 配置TCP定时器
· 配置TCP连接的接收和发送缓冲区的大小
· 配置ICMP差错报文发送功能
· 配置ICMP携带扩展信息功能
· 配置ICMP流量控制功能
定向广播报文是指发送给特定网络的广播报文。该报文的目的IP地址中网络号码字段为特定网络的网络号,主机号码字段为全1。
如果允许设备转发目的地址为接口所在网络的定向广播报文,黑客就可以利用这样的报文来攻击网络系统,给网络的安全带来了很大的隐患。但在某些应用环境下,设备又需要转发定向广播报文,例如:
· 使用UDP Helper功能,将广播报文转换为单播报文发送给指定的服务器。
· 使用Wake on LAN(网络唤醒)功能,发送定向广播报文唤醒远程网络中的计算机。
在上述情况下,用户可以通过命令配置设备允许转发定向广播报文。
表1-1 配置允许转发定向广播报文
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入VLAN接口视图 |
interface interface-type interface-number |
- |
配置允许接口转发定向广播报文 |
ip forward-broadcast |
必选 缺省情况下,禁止接口转发定向广播报文,允许接口接收定向广播报文。 |
· 目前,只能在VLAN接口配置允许转发定向广播报文,其它接口类型不支持,另外在SuperVlan接口下可以配置,但是设备无法转发对应的定向广播报文。
· 命令配置后,设备会自动下发和接口网段对应的网络广播转发表项,因此不建议配置对应的静态ARP或静态路由(例如10.0.0.1/24的接口网段会下发10.0.0.255/32的转发表项,此时不应该配置10.0.0.255的静态ARP),否则会产生配置冲突。冲突过程中可能会产生日志,产生冲突后必须删除静态ARP配置和定向广播后重新配置定向广播或者静态ARP,业务可以恢复。
· 设备要转发定向广播报文,接口链路状态和协议状态必须为Up。
如图1-1所示,HostA的接口和Switch A的VLAN接口3处于同一个网段(1.1.1.0/24),Switch A的VLAN接口2和Switch B的VLAN接口3处于一个网段(1.1.2.0/24),Switch B的VLAN接口2和HostB、HostC处于一个网段(1.1.3.0/24)。HostA上配置默认网关为Switch A的VLAN接口3的地址(1.1.1.1/24),HostB、HostC上配置默认网关为Switch B的VLAN接口2的地址(1.1.3.1/24)。Switch A、Switch B上配置静态路由使得HostA与HostB、HostC之间路由可达。
要求通过配置使得HostB、HostC可以接收到HostA发送的定向广播报文。
(1) 配置Switch A
# 配置SwitchA的静态路由。
<SwitchA> system-view
[SwitchA] ip route-static 1.1.3.0 255.255.255.0 1.1.2.2
# 配置VLAN接口3和VLAN接口2的IP地址。
[SwitchA] interface vlan-interface 3
[SwitchA-Vlan-interface3] ip address 1.1.1.1 24
[SwitchA-Vlan-interface3] quit
[SwitchA] interface vlan-interface 2
[SwitchA-Vlan-interface2] ip address 1.1.2.1 24
(2) 配置Switch B
# 配置SwitchB的静态路由。
<SwitchB> system-view
[SwitchB] ip route-static 1.1.1.0 255.255.255.0 1.1.2.1
# 配置VLAN接口3和VLAN接口2的IP地址。
[SwitchB] interface vlan-interface 3
[SwitchB-Vlan-interface3] ip address 1.1.2.2 24
[SwitchB-Vlan-interface3] quit
[SwitchB] interface vlan-interface 2
[SwitchB-Vlan-interface2] ip address 1.1.3.1 24
# 配置允许VLAN接口2转发定向广播报文。
[SwitchB-Vlan-interface2] ip forward-broadcast
配置完成以后,在HostA上ping Switch B的VLAN接口2所在子网网段的广播地址(1.1.3.255)时,HostB、HostC可以收到该报文。
表1-2 配置TCP连接的接收和发送缓冲区大小
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置TCP连接的接收和发送缓冲区的大小 |
tcp window window-size |
可选 缺省情况下,TCP连接的接收和发送缓冲区大小为8KB |
可以配置的TCP定时器包括:
· synwait定时器:当发送SYN报文时,TCP启动synwait定时器,如果synwait超时前未收到回应报文,则TCP连接建立不成功。
· finwait定时器:当TCP的连接状态为FIN_WAIT_2时,启动finwait定时器,如果在定时器超时前没有收到报文,则TCP连接终止;如果收到FIN报文,则TCP连接状态变为TIME_WAIT状态;如果收到非FIN报文,则从收到的最后一个非FIN报文开始重新计时,在超时后中止连接。
表1-3 配置TCP定时器
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置TCP的synwait定时器超时时间 |
tcp timer syn-timeout time-value |
可选 缺省情况下,synwait定时器超时时间为75秒 |
配置TCP的finwait定时器超时时间 |
tcp timer fin-timeout time-value |
可选 缺省情况下,finwait定时器超时时间为675秒 |
finwait定时器的实际超时时间由如下公式决定:finwait定时器的实际超时时间=(配置的finwait定时器超时时间-75)+配置的synwait定时器超时时间。
发送差错报文是ICMP(Internet Control Message Protocol,互联网控制报文协议)的主要功能之一。差错报文通常被网络层或传输层协议用来在异常情况发生时通知相应设备,从而便于进行控制管理。
重定向报文、超时报文、目的不可达报文是ICMP差错报文中的三种。下面分别介绍这三种差错报文发送的条件及作用。
(1) ICMP重定向报文发送功能
主机启动时,它的路由表中可能只有一条到缺省网关的缺省路由。当满足一定的条件时,缺省网关会向源主机发送ICMP重定向报文,通知主机重新选择正确的下一跳进行后续报文的发送。
满足下列条件时,设备会发送ICMP重定向报文:
· 接收和转发数据报文的接口是同一接口;
· 被选择的路由本身没有被ICMP重定向报文创建或修改过;
· 被选择的路由不是设备的默认路由;
· 数据报文中没有源路由选项。
ICMP重定向报文发送功能可以简化主机的管理,使具有很少选路信息的主机逐渐建立较完善的路由表,从而找到最佳路由。
(2) ICMP超时报文发送功能
ICMP超时报文发送功能是在设备收到IP数据报文后,如果发生超时差错,则将报文丢弃并给源端发送ICMP超时差错报文。
设备在满足下列条件时会发送ICMP超时报文:
· 设备收到IP数据报文后,如果报文的目的地不是本地且报文的TTL字段是1,则发送“TTL超时”ICMP差错报文;
· 设备收到目的地址为本地的IP数据报文的第一个分片后,启动定时器,如果所有分片报文到达之前定时器超时,则会发送“重组超时”ICMP差错报文。
(3) ICMP目的不可达报文发送功能
ICMP目的不可达报文发送功能是在设备收到IP数据报文后,如果发生目的不可达的差错,则将报文丢弃并给源端发送ICMP目的不可达差错报文。
设备在满足下列条件时会发送目的不可达报文:
· 设备收到目的地址为本地的数据报文时,如果设备不支持数据报文采用的传输层协议,则给源端发送“协议不可达”ICMP差错报文;
· 设备收到目的地址为本地、传输层协议为UDP的数据报文时,如果报文的端口号与正在使用的进程不匹配,则给源端发送“端口不可达”ICMP差错报文;
· 源端如果采用“严格的源路由选择”发送报文,当中间设备发现源路由所指定的下一个设备不在其直接连接的网络上,则给源端发送“源站路由失败”的ICMP差错报文(设备目前不支持此功能);
· 设备在转发报文时,如果转发接口的MTU小于报文的长度,但报文被设置了不可分片,则给源端发送“需要进行分片但设置了不可分片比特”ICMP差错报文(设备目前不支持此功能);
· 设备在转发报文时,如果在路由表中没有找到对应的转发路由,且路由表中没有缺省路由,则给源端发送“网络不可达”ICMP差错报文(设备目前不支持此功能)。
ICMP差错报文的发送虽然方便了网络的控制管理,但也存在一定的弊端:
· 由于发送大量的ICMP报文,增大了网络流量。
· 如果设备接收到大量需要发送ICMP差错报文的恶意攻击报文,设备会因为处理大量该类报文而导致性能降低。
· 由于重定向功能会在主机的路由表中增加主机路由,当增加的主机路由很多时,会降低主机性能。
· 由于ICMP目的不可达报文传递给用户进程的信息为不可达信息,如果有用户恶意攻击,可能会影响终端用户的正常使用。
为了避免上述现象发生,可以关闭设备的ICMP差错报文发送功能,从而减少网络流量、防止遭到恶意攻击。
表1-4 配置ICMP差错报文发送功能
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
开启ICMP重定向报文发送功能 |
ip redirects enable |
必选 缺省情况下,ICMP重定向报文发送功能处于关闭状态 |
开启ICMP超时报文发送功能 |
ip ttl-expires enable |
必选 缺省情况下,ICMP超时报文发送功能处于关闭状态 |
开启ICMP目的不可达报文发送功能 |
ip unreachables enable |
必选 缺省情况下,ICMP目的不可达报文发送功能处于关闭状态 |
· 在以太网接口板上,ICMP重定向报文发送功能只在VLAN接口上生效。
· 关闭ICMP超时报文发送功能后,设备不会再发送“TTL超时”ICMP差错报文,但“重组超时”ICMP差错报文仍会正常发送。
传统的ICMP报文格式是固定的,不能携带扩展信息。在使能ICMP携带扩展信息功能后,设备可以在需要的时候在ICMP报文的后面加上扩展信息字段。目前,设备仅支持在ICMP报文中扩展携带MPLS标签信息。
在MPLS网络中,当报文在转发过程中出现TTL超时后,MPLS会剥离掉MPLS头,构造一个ICMP TTL超时报文,送到MPLS隧道出口,隧道出口再重新把报文回送给隧道的源端。传统ICMP报文里面不能携带标签等信息,而这些信息对于源端来说却非常重要。使能ICMP携带扩展信息功能后,设备可以在TTL超时后,把当时的标签附加到TTL超时报文的后面,回送给源端。
ICMP携带扩展信息功能通常在MPLS网络中进行Tracert时使用,通过在ICMP报文中携带标签,就可以打印出MPLS转发过程每一跳的标签信息。
ICMP报文可以分为三类:
· 传统ICMP报文:报文中不携带扩展信息。
· 携带长度字段的扩展ICMP报文:报文中携带扩展信息,并且携带长度字段,长度字段的值为ICMP头后面的原始数据长度(不包含扩展信息的长度)。此类报文符合RFC 4884的要求。
· 不携带长度字段的扩展ICMP报文:报文中携带扩展信息,但是不携带长度字段。此类报文不符合RFC 4884的要求。
根据设备对三类ICMP报文的处理机制,可将设备分为三种模式:传统模式、兼容模式和非兼容模式。三种模式设备对三类ICMP报文的处理机制如表1-5所示。
表1-5 三种模式设备对三类ICMP报文的处理机制
设备模式 |
可以发送的ICMP报文 |
可以正确接收的ICMP报文 |
备注 |
传统模式 |
传统ICMP报文 |
传统ICMP报文 |
如果收到扩展ICMP报文,不会处理报文中的扩展信息 |
兼容模式 |
传统ICMP报文 携带长度字段的扩展ICMP报文 |
传统ICMP报文 携带长度字段的扩展ICMP报文 |
如果收到不携带长度字段的扩展ICMP报文,则认为报文不携带扩展信息,按传统ICMP报文进行处理 |
非兼容模式 |
传统ICMP报文 不携带长度字段的扩展ICMP报文 |
传统ICMP报文 携带长度字段的扩展ICMP报文 不携带长度字段的扩展ICMP报文 |
- |
IPv4的重定向报文、超时报文、目的不可达报文,以及IPv6的目的不可达、超时报文可以携带扩展信息,其余类型的ICMP/ICMPv6报文不能携带扩展信息。
表1-6 配置ICMP携带扩展信息功能
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
使能ICMP携带扩展信息功能,采用兼容模式 |
ip icmp-extensions compliant |
可选 缺省情况下,ICMP不携带扩展信息 |
使能ICMP携带扩展信息功能,采用非兼容模式 |
ip icmp-extensions non-compliant |
可选 缺省情况下,ICMP不携带扩展信息 |
关闭ICMP携带扩展信息功能后,设备发送的ICMP报文都不携带扩展信息。
大量ICMP报文上送给CPU,会使CPU消耗大量时间来处理ICMP报文,影响到其他业务的性能。为了防止这种情况的发生,可以对上送CPU的ICMP流量进行控制。
表1-7 配置ICMP流量控制功能
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
开启ICMP流量控制功能 |
ip icmp flow-control |
必选 缺省情况下,ICMP流量控制功能处于关闭状态 |
在完成上述配置后,在任意视图下执行display命令可以显示配置IP性能后的运行情况,通过查看显示信息验证配置的效果。
在用户视图下执行reset命令清除IP、TCP和UDP的流量统计信息。
表1-8 IP性能优化显示和维护
操作 |
命令 |
显示TCP连接的流量统计信息 |
display tcp statistics [ | { begin | exclude | include } regular-expression ] |
显示UDP流量统计信息 |
display udp statistics [ | { begin | exclude | include } regular-expression ] |
显示IP报文统计信息(独立运行模式) |
display ip statistics [ slot slot-number ] [ | { begin | exclude | include } regular-expression ] |
显示IP报文统计信息(IRF模式) |
display ip statistics [ chassis chassis-number slot slot-number ] [ | { begin | exclude | include } regular-expression ] |
显示ICMP流量统计信息(独立运行模式) |
display icmp statistics [ slot slot-number ] [ | { begin | exclude | include } regular-expression ] |
显示ICMP流量统计信息(IRF模式) |
display icmp statistics [ chassis chassis-number slot slot-number ] [ | { begin | exclude | include } regular-expression ] |
显示套接口信息(独立运行模式) |
display ip socket [ socktype sock-type ] [ task-id socket-id ] [ slot slot-number ] [ | { begin | exclude | include } regular-expression ] |
显示套接口信息(IRF模式) |
display ip socket [ socktype sock-type ] [ task-id socket-id ] [ chassis chassis-number slot slot-number ] [ | { begin | exclude | include } regular-expression ] |
清除IP报文统计信息(独立运行模式) |
reset ip statistics [ slot slot-number ] |
清除IP报文统计信息(IRF模式) |
reset ip statistics [ chassis chassis-number slot slot-number ] |
清除TCP连接的流量统计信息 |
reset tcp statistics |
清除UDP流量统计信息 |
reset udp statistics |
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!