16-WAAS配置
本章节下载: 16-WAAS配置 (433.05 KB)
WAAS(Wide Area Application Services,广域网应用服务)是能够对广域网链路流量提供优化的一种广域网技术。WAAS设备可以通过配置优化动作,改善广域网链路高延迟、低带宽的缺点。
WAAS可以针对TCP报文进行提供不同的优化动作,其中包括:FEC(Forward Error Correction,前向冗余纠错)、TFO(Transport Flow Optimization,传输层流优化)、DRE(Data Redundancy Elimination,数据冗余消除)、LZ(Lempel-Ziv compression,LZ压缩)和包复制。
TFO是指传输层流优化技术。在不改变TCP流量的源、目的IP地址和端口号的情况下,在广域网链路两端对TCP连接进行透明代理,并对广域网链路两端的TCP流量进行优化。TFO优化方式包括:
传统TCP慢启动时,拥塞窗口初始值为1个TCP分段,每经过一个传输轮次,拥塞窗口就加倍,最后拥塞窗口达到一个合适的值。在广域网环境下,传输时延较大,导致拥塞窗口达到一个合适的值需要经过较长的时间。慢启动优化通过扩大初始拥塞窗口大小的方式来缩短慢启动过程。
传统TCP的接收缓冲区最大为64K,即TCP在发送完64K的报文后,需接收到对端的确认报文后才能继续发送数据,即使广域网链路带宽还有空闲,也无法再发送数据。TFO可以把TCP接收缓冲区最大增加到16384K,提高TCP的传输性能。
TCP的拥塞控制算法主要依赖于拥塞窗口,窗口的大小代表在未收到确认报文的情况下能够发送出去的最大数据报文段。拥塞窗口的大小取决于网络的拥塞程度,并且动态地在变化。窗口越大,数据发送的速度越快,则越有可能出现网络拥塞;相反窗口越小,数据发送的速度越慢,则导致数据发送效率低下。TFO拥塞控制算法优化就是要在发送速度与网络拥塞状况这两者之间权衡,选取最好的拥塞窗口大小,使得网络吞吐量最大化且不产生拥塞。
传统TCP在数据的传输过程中采用累计确认机制,发送方需等待一个来回时间根据接收方的确认报文确认丢失的数据,并且可能重传一些已经被接收方正确接收的数据。在多个不连续分段丢失的情况下,这种机制降低了TCP传输的总吞吐量。
SACK(Selective Acknowledgment,选择性确认)允许接收方通知发送方所有正确接收的数据,因此发送方只需要重传丢失的数据。例如,在多个不连续分段丢失的情况下,接收方对未正确接收的不连续数据分别确认,使发送方只重传丢失的数据,实现数据包的选择性重传。
DRE是指消除冗余数据技术。在相互通信的WAAS设备上保存重复数据块与字典索引对应的数据字典。数据发送前首先查找字典,如果查找到该数据块的字典表项,则认为之前发送过该数据块,称为重复数据块。发送端将重复数据块替换为字典索引在广域网链路上传输。接收端通过识别字典索引,将其还原成重复数据块,以减少广域网链路传输的数据量,提高数据传输速度。用字典索引替换重复数据块的过程称为DRE压缩。用重复数据块替换字典索引的过程称为DRE解压缩。
(1) 数据缓存:将TCP连接上接收的数据块发送给DRE模块前,需要TCP透明代理缓存输入的TCP数据流,以提供给DRE一个较大的数据块。
(2) 数据分块和替换:DRE压缩前将待发送数据划分为互不重叠的数据块,针对数据块来检测是否为重复数据块。
· 如果为重复数据块,用字典索引替换该数据块,并根据该数据块生成MD5摘要,把字典索引和MD5摘要信息发送至接收端;
· 如果不是重复数据块,为该数据块生成对应的字典索引,将该字典索引和数据块添加到本地数据字典中,并根据该数据块生成MD5摘要,把数据块、对应的字典索引和摘要信息发送至接收端。
WAAS采用滑动块检测技术对数据进行分块和检测,滑动块检测技术的优点包括:
· 计算速度快、效率高。
· 对原始数据进行基于固定长度窗口的逐字节滑动比较,可以有效地检测出重复数据块,从而获得良好的重复数据缩减率。
(1) 数据还原:WAAS设备检测接收到的数据,根据接收数据获得对应的原始数据。
¡ 如果接收到的数据为字典索引,则根据字典索引进行数据字典查询以获取相对应的重复数据块。
¡ 如果接收到的数据为字典索引和重复数据块,则根据收到的数据创建新的字典表项,并添加到本地数据字典中。
(2) 数据校验:所有数据都还原后,计算解压数据的MD5摘要,并且和报文中携带的摘要信息进行对比。如果相同,则代表解压缩成功;如果不同,则代表解压缩失败,等待对端重新发送数据。
如果检测到接收到的数据是字典索引,并且在数据字典中查询失败,则认为解压缩失败,需要对端重传该报文原始数据和字典索引。
LZ压缩是一种数据无损压缩技术。主要是通过自建字典方法来进行压缩替换,其压缩字典存在于压缩结果中。与DRE压缩相比,LZ压缩的压缩率比较低,但其不需要在压缩和解压双方同步保存数据字典,因此内存开销比较小。
FEC是指前向冗余纠错技术。在相互通信的WAAS设备上,由发送端进行FEC编码且生成冗余包。冗余包不是简单的复制原始数据包,冗余包头信息中有该分组中原始数据包和冗余包的个数以及序号等信息。接收端进行FEC解码并根据未丢失的数据包和冗余包恢复丢失的数据包,为上层音频、视频服务提供有力保障。
· 平均抗丢包率:通过配置抗丢包率可以控制生成冗余包的数量。平均抗丢包率越小,生成的冗余包个数越少,占用带宽越小;平均抗丢包率越大,生成的冗余包个数越多,占用带宽越大。用户需要根据网络的实际丢包率来配置此值,配置的抗丢包率需大于实际丢包率。
· 编码块包数:通过配置编码块包数可以控制一组编码的包数。若此值配置较小,则冗余包会较少;若此值配置较大,则当网络中发生丢包时,解码侧恢复被丢报文产生的时延较大。
· 编码超时时间:发送端一次编码的超时时间。FEC编码块包数和FEC编码超时时间共同决定FEC一组编码块的原始数据包个数:若包数先达到编码块包数,则以编码块包数为准;若编码超时时间先到,则以此时缓存的原始数据包个数为准。
· 解码超时时间:接收端一次解码的超时时间。接收端缓存的原始数据包和冗余包之和小于该分组中原始数据包的个数,但缓存时间达到解码超时时间时,设备将不会进行FEC解码,而是直接发送接收到的原始数据包,丢弃冗余包。
· 采样周期:接收端周期性的发送采样报文将实时丢包率告知给发送端,发送端根据实时丢包率调节平均抗丢包率。仅A-FEC支持。
· 接收端信息的老化时间:发送端在老化时间内未收到接收端采样报文时,则删除本设备对应的探测到的接收端相关信息,平均抗丢包率恢复为配置的固定值或者缺省值。仅A-FEC支持。
FEC根据平均抗丢包率的配置方式分为A-FEC(Adaptive-FEC,自适应的FEC)和D-FEC(Determined-FEC,固定的FEC)两种类型。
· A-FEC根据实时丢包率调节平均抗丢包率:发送端在冗余包中加入设备地址信息通告给接收端。接收端对实时数据进行丢包率采样,并周期性的反馈给发送端,从而使发送端调整冗余包个数的生成,减少广域网链路传输的数据量,提高数据传输速度。
· D-FEC使用配置的固定平均抗丢包率。
FEC对报文的处理流程如下:
(1) 音频、视频数据包识别
a. 呼叫报文处理:设备接收到音频、视频呼叫报文后,在报文会话中设置ALG(Application Layer Gateway,应用层网关)业务标记,生成会话及关联表。关于会话的详细介绍,请参见“安全配置指导”中的“会话管理”。
b. 数据报文处理:接收到数据报文后,进行WAAS策略匹配。如果匹配到策略,则创建FEC的快速转发表项并设置快速转发业务标记。
(2) FEC编码过程
a. 数据缓存:设备将原始数据包进行缓存。
b. FEC编码处理:当缓存的原始数据包达到编码块包数或者编码缓存时间达到超时时间时,设备将缓存的原始数据包分成一组,并进行FEC编码,生成冗余包,再分别发送缓存的原始数据包与生成的冗余包。
(3) FEC解码过程
a. 数据缓存:设备将接收到的原始数据包和冗余包进行缓存。
b. FEC解码处理:在解码超时时间内,当缓存的原始数据包和冗余包之和大于等于该分组中原始数据包的个数,设备将缓存的数据包进行FEC解码处理,恢复丢失的数据包,再分别发送原始数据包和恢复的数据包,并丢弃冗余包。如果缓存时间达到解码超时时间,设备将不会进行FEC解码,而是直接发送原始数据包,丢弃冗余包。
Internet上进行音视频实时互动时,链路存在带宽限制、时延、抖动和误码等问题,同时传输层和应用层纠错重传加剧了带宽和时延问题,导致音视频数据传输质量下滑,易出现音视频长时间卡住不动然后快放的现象。
目前,大部分局域网普遍采用多条WAN链路接入广域网。包复制功能利用多链路优势,将同一份报文从两条链路发送出去,能够有效降低甚至解决因单条链路丢包导致的音视频卡顿等问题。具体的工作流程如下:
(1) 在WAN接口下应用WAAS策略,优化动作为包复制。
(2) WAN接口收到报文后,如果报文匹配成功,则查询等价路由,将报文复制到查询到的第一条等价路由所在链路。设备将从该WAN接口及查询到的等价路由出接口两条链路同时转发报文。
(3) 接收端通过报文特征整合两条链路收到的报文、丢弃重复报文。
与WAAS相关的协议规范有:
· RFC 1323:TCP Extensions for High Performance
· RFC 3390:Increasing TCP's Initial Window
· RFC 2581:TCP Congestion Control
· RFC 2018:TCP Selective Acknowledgment Options
· RFC 3042:Enhancing TCP's Loss Recovery Using Limited Transmit
· RFC 2582:The NewReno Modification to TCP's Fast Recovery Algorithm
使用WAAS特性时必须关闭快转负载分担功能,否则会造成WAAS业务不通,快速负载分担的详细介绍请参见“三层技术-IP业务配置指导”中的“快速转发”。
WAAS配置任务如下:
(1) 配置TCP优化的WAAS类
(2) 配置UDP优化的WAAS类
(3) 配置WAAS策略
(4) 配置接口应用WAAS策略
(5) (可选)配置WAAS工作在非对称组网模式
(6) (可选)配置TFO参数
(7) (可选)配置WAAS黑名单
(8) (可选)配置DRE优化参数
(9) (可选)配置FEC优化参数
(10) (可选)配置包复制优化参数
(11) (可选)还原或创建WAAS的预定义策略
(12) (可选)删除WAAS所有配置
(1) 进入系统视图。
system-view
(2) 创建一个WAAS类,并进入WAAS类视图。
waas class class-name
缺省情况下,不存在WAAS类。
(3) 创建匹配流分类的规则。
match [ match-id ] tcp any [ ip-address { ip-address [ mask-length | mask ] | object-group ip-object-group-name } | ipv6-address { ipv6-address [ prefix-length ] | object-group ipv6-object-group-name } ] [ port { port-list | object-group port-object-group-name } ]
match [ match-id ] tcp { destination ip-address { ip-address [ mask-length | mask ] | object-group ip-object-group-name } [ port { port-list | object-group port-object-group-name } ] | source ip-address { ip-address [ mask-length | mask ] | object-group ip-object-group-name } [ port { port-list | object-group port-object-group-name } ] } *
match [ match-id ] tcp { destination ipv6-address { ipv6-address [ prefix-length ] | object-group ipv6-object-group-name } [ port { port-list | object-group port-object-group-name } ] | source ipv6-address { ipv6-address [ prefix-length ] | object-group ipv6-object-group-name } [ port { port-list | object-group port-object-group-name } ] } *
match [ match-id ] tcp { destination | source } port { object-group port-object-group-name | port-list }
(4) (可选)创建匹配ACL的规则。
match [ match-id ] acl [ ipv6 ] { acl-number | name acl-name }
(1) 进入系统视图。
system-view
(2) 创建一个WAAS类,并进入WAAS类视图。
waas class class-name
缺省情况下,不存在WAAS类。
(3) 创建匹配UDP流分类的规则。
match [ match-id ] udp any [ ip-address { ip-address [ mask-length | mask ] | object-group ip-object-group-name } | ipv6-address { ipv6-address [ prefix-length ] | object-group ipv6-object-group-name } ] [ port { port-list | object-group port-object-group-name } ]
match [ match-id ] udp { destination ip-address { ip-address [ mask-legnth | mask ] | object-group ip-object-group-name } [ port { port-list | object-group port-object-group-name } ] | source ip-address { ip-address [ mask-legnth | mask ] | object-group ip-object-group-name } [ port { port-list | object-group port-object-group-name } ] } *
match [ match-id ] udp { destination ipv6-address { ipv6-address [ prefix-length ] | object-group ipv6-object-group-name } [ port { port-list | object-group port-object-group-name } ] | source ipv6-address { ipv6-address [ prefix-length ] | object-group ipv6-object-group-name } [ port { port-list | object-group port-object-group-name } ] } *
match [ match-id ] udp { destination | source } port { port-list | object-group port-object-group-name }
(4) (可选)创建匹配ACL的规则。
match [ match-id ] acl [ ipv6 ] { acl-number | name acl-name }
通过创建WAAS策略,然后在此WAAS策略视图下引用指定的类,为不同的类配置不同的动作,可以实现对匹配动作的报文进行优化处理。
WAAS类可以配置的动作包括:
· 优化动作:对匹配指定WAAS类的TCP流量进行优化处理,包括TFO、DRE、LZ三种方式。其中TFO为必选方式,DRE和LZ为可选方式。
· 直接旁路动作:对匹配指定WAAS类的TCP流量不进行优化处理。
· 配置优化动作命令受对应优化控制功能的影响,如果用户配置了优化动作命令,而对应的优化控制功能处于关闭状态,则不能对匹配的报文流量进行相应的优化处理。
· 建议用户通过修改预定义策略的方式完成策略配置。
(1) 进入系统视图。
system-view
(2) 创建WAAS策略,并进入WAAS策略视图。
waas policy policy-name
缺省情况下,只存在预定义策略waas_default。
(3) 配置WAAS策略引用的类,并进入WAAS策略类动作视图。
class class-name [ insert-before exiting_class ]
缺省情况下,WAAS策略未引用任何类。
(4) 配置WAAS类的动作。请选择其中一项进行配置。
¡ 配置WAAS类优化动作。
optimize { packet-dup | fec | tfo [ dre | lz ] * }
¡ 配置WAAS类直接旁路动作。
passthrough
缺省情况下,WAAS类未配置任何动作。
(5) 退回系统视图。
quit
(6) 配置WAAS消除数据冗余功能。
waas tfo optimize dre
缺省情况下,WAAS消除数据冗余功能处于开启状态。
(7) 配置WAAS数据压缩功能。
waas tfo optimize lz
缺省情况下,WAAS数据压缩功能处于开启状态。
在同一台设备上连接广域网的接口上应用WAAS策略,连接局域网的接口上不应用WAAS策略。对从广域网侧发送或接收的报文流量会与广域网接口所引用的策略进行匹配。但如果指定流量经过同一台设备的入接口和出接口都连接广域网,则不对报文进行优化。
一个WAAS策略可以应用于一台设备的多个接口,但一个接口只能应用一个策略。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 应用WAAS策略。
waas apply policy [ policy-name ]
缺省情况下,接口上未应用任何WAAS策略。
若报文的收发均通过设备的同一个接口,则称为对称组网,否则为非对称组网。在非对称组网环境中需要配置WAAS工作在非对称组网模式。
对于使用逻辑接口(包括聚合接口和隧道接口等)的组网,系统默认这类组网为非对称组网,必须配置本命令WAAS配置才能生效。
(1) 进入系统视图。
system-view
(2) 配置WAAS工作在非对称组网模式。
waas asymmetric
缺省情况下,WAAS工作在对称组网模式。
拥塞窗口的大小取决于网络的拥塞程度和发送速度,并且动态的在变化。设置合理的慢启动初始拥塞窗口,当拥塞发生后,能够较快的恢复到网络最大传输能力。
配置TFO的保活功能后,系统启动保活定时器。当定时器超时后,如果通信双方仍没有数据传输,则向对端设备发送保活报文,使连接不断开。
接收缓冲区的大小决定了可以接收到的报文大小,用户可以通过设置缓冲区的大小来影响线路的吞吐量。
不同的网络性能需要使用不同的拥塞算法,设置合理的拥塞算法,能够较快的恢复到网络最大传输能力。设备支持Reno、BIC、BBR三种主流TCP拥塞控制算法。不同TCP拥塞控制算法的特点如下:
· Reno:推荐用于低丢包率、低带宽、对延时要求低的场景,Reno将丢包作为拥塞控制的触发条件,不区分丢包原因是错包还是真正的网络拥塞,检测到丢包时拥塞窗口减半,线性增长探测拥塞窗口,优点是只要没有出现丢包,就不会主动降低发送速度;缺点是在高延时、高带宽的场景中,要经过很长时间拥塞窗口才能达到最大,会降低带宽的利用率。
· BIC:推荐用于低丢包率、高带宽、对时延要求低的场景。BIC同样是将丢包作为拥塞控制的触发条件,不区分丢包原因是错包还是真正的网络拥塞,检测到丢包时拥塞窗口减半,利用二分搜索法和乘性增加法探测CWND。与Reno相比,BIC收敛更快。
· BBR:推荐用于存在一定丢包率、高带宽、对时延要求高的场景。BBR不将丢包作为拥塞控制触发条件,以周期探测时延和带宽为依据,计算拥塞窗口和发送速率,平稳发包。与Reno和BIC相比,BBR收敛速度更快,抗丢包能力更强,网络排队时延更低,带宽利用率更高,吞吐量更大。
配置TFO的最大并发连接数,当超过最大连接数后,后续新建连接的流量不再进行WAAS优化处理。
(1) 进入系统视图。
system-view
(2) 配置超时重传时慢启动的初始拥塞窗口大小。
waas tfo base-congestion-window segments
缺省情况下,初始拥塞窗口为2。
(3) 配置TFO的保活功能。
waas tfo keepalive
缺省情况下,TFO的保活功能处于开启状态。
(4) 配置TFO的接收缓冲区大小。
waas tfo receive-buffer buffer-size
缺省情况下,TFO的接收缓冲区为64KB。
(5) 配置WAAS在WAN侧链路所使用的TCP拥塞控制算法。
waas tfo congestion-method { bbrv1 | bbrv2 | bic | reno }
缺省情况下,WAAS在WAN侧链路所使用的TCP拥塞控制算法为BIC算法。
(6) 配置TFO的最大并发连接数。
waas tfo connect-limit limit
缺省情况下,TFO的最大并发连接数是10000。
DRE优化参数包括以下内容:
· WAAS匹配偏移步进级别:配置的WAAS匹配偏移步进级别越高,步进的步长就越大,匹配精度也就越低。请根据链路的传输速率配置WAAS匹配偏移步进级别,建议在高速链路上配置高级别偏移步进,提高WAAS匹配的效率;在低速链路上配置低级别偏移步进,确保WAAS匹配的精度。
· WAAS数据字典表项的老化时间:配置WAAS数据字典表项的老化时间后,设备会循环遍历所有的WAAS数据字典表项,超过老化时间的表项将会被删除。WAAS数据字典表项数量到达最大后,不再新建表项。
设备遍历一次WAAS数据字典表项的时间与当前设备上表项数量有关,请以设备的实际情况为准。
(1) 进入系统视图。
system-view
(2) 配置WAAS匹配偏移步进级别。
waas dre offset-step { general | fast | fastest | normal }
缺省情况下,WAAS匹配偏移步进为normal级别。
WAAS匹配偏移步进级别由高到低分别为:fastest、fast、general、normal。
(3) 配置WAAS数据字典表项的老化时间。
waas dre cache aging minutes
缺省情况下,WAAS数据字典表项不老化,表项达到最大数量后,后续创建的新表项会覆盖最早创建的表项。
根据网络上当前的丢包状况及流量的速率,可以调整FEC配置的各项参数,使音频、视频优化达到好的效果。
(1) 进入系统视图。
system-view
(2) 创建WAAS策略,并进入WAAS策略视图。
waas policy policy-name
缺省情况下,只存在预定义策略waas_default。
(3) 配置WAAS策略引用的类,并进入WAAS策略类动作视图。
class class-name [ insert-before existing-class ]
缺省情况下,WAAS策略未引用任何类。
(4) 配置FEC的类型。
fec loss-recovery-type { adaptive-fec | determined-fec }
缺省情况下,FEC的类型为D-FEC。
(5) (可选)配置FEC的平均抗丢包率。
fec average-ratio ratio
缺省情况下,FEC的平均抗丢包率为35%。
(6) (可选)配置FEC的编码超时时间。
fec encode-timeout milliseconds
缺省情况下,编码超时时间为500毫秒。
(7) (可选)配置FEC的编码块包数。
fec block-size block-size
缺省情况下,编码块包数为20。
(8) (可选)配置FEC的解码超时时间。
fec decode-timeout milliseconds
缺省情况下,解码超时时间为800毫秒。
(9) (可选)配置A-FEC接收端信息的老化时间。
fec probe aging-time seconds
缺省情况下,A-FEC接收端信息的老化时间为1秒。
仅A-FEC支持。
(10) (可选)配置A-FEC的采样周期。
fec sample-interval interval
缺省情况下,A-FEC的采样周期为100毫秒。
在设备上配置包复制优化后,发送端会对待发送的报文进行复制,并额外选择一条到接收端可达的路径作为复制报文的转发路径,接收端接收到报文后会对报文进行保序去重,以保证报文的完整性,连续性。
对于复制路径的选择,发送端不仅可以通过包复制算法选择复制路径,还可以通过包复制路径智能选路功能或指定静态路径的方式选择复制路径,不同方式选择的复制路径优先级不同。
· 如果在设备上开启了包复制路径智能选路功能,设备会根据链路优先级、链路质量和链路带宽等因素,智能选择一条传输路径作为包复制路径。智能选路的复制路径优先级高于静态指定的复制路径和包复制算法选择的复制路径。
· 如果在设备上静态指定了一条复制路径且不存在智能选路的复制路径时,设备会使用静态复制路径作为包复制路径。静态指定的复制路径优先级高于包复制算法选择的复制路径。
· 如果设备发现既不存在智能选路的复制路径也不存在静态指定的复制路径,则通过包复制算法选择路由表中与原始路径等价的转发路径中的第一条作为复制路径。
对于报文的保序去重,发送端根据报文发送顺序对报文编排序号(例如1、2……n),再进行复制转发。接收端会丢弃序号相同的报文并根据序号对报文重新排序后,再进行转发。若出现较小序号的报文未接收到的情况,接收端会缓存已收到的报文,待较小序号的报文到达后再按照序号依次发送;如果接收端在报文保序去重的超时时间内未收到较小序号的报文,则接收端会直接发送缓存的报文。
包复制路径智能选路功能需要在设备上开启智能选路功能才能生效,有关智能选路的相关介绍,请参见“三层技术-IP路由配置指导”中的“智能选路配置”。
静态指定的包复制路径对应的SDWAN隧道必须已经存在,若同一条SDWAN隧道被多次配置为复制路径,则最后一次配置生效。若同一个目的地址配置了多条静态路径,有且仅一条静态路径会被选择为复制路径(由设备内部算法决定)。静态指定的包复制路径功能仅SDWAN组网支持。
(1) 进入系统视图。
system-view
(2) 创建WAAS策略,并进入WAAS策略视图。
waas policy policy-name
缺省情况下,只存在预定义策略waas_default。
(3) 配置WAAS策略引用的类,并进入WAAS策略类动作视图。
class class-name [ insert-before exiting_class ]
(4) 开启包复制路径智能选路功能。
packet-dup rir enable
缺省情况下,包复制路径智能选路功能处于关闭状态。
(1) 进入系统视图。
system-view
(2) 配置SDWAN组网下静态包复制路径。
waas packet-dup sdwan static-path { destination-ip dest-ipv4-address { dest-mask-length | dest-mask } | destination-ipv6 dest-ipv6-address dest-prefix-length } [ vpn-instance vpn-instance-name ] interface interface-type interface-number peer-site-id peer-site-id peer-device-id peer-device-id peer-interface-id peer-interface-id [ priority priority ]
缺省情况下,不存在静态包复制路径。
(1) 进入系统视图。
system-view
(2) 创建WAAS策略,并进入WAAS策略视图。
waas policy policy-name
缺省情况下,只存在预定义策略waas_default。
(3) 配置WAAS策略引用的类,并进入WAAS策略类动作视图。
class class-name [ insert-before exiting_class ]
(4) 配置包复制报文保序去重的超时时间。
packet-dup reorder timeout timeout
缺省情况下,包复制报文保序去重的超时时间为100ms。
当本端设备配置了WAAS策略并应用于接口时,如果本端设备不能通过此接口与对端设备建立TCP连接,那么系统自动将请求的服务器接口的IP地址和端口号加入黑名单,对匹配黑名单的流量不做任何优化。
在建立TCP连接的三次握手过程中,本端发送携带特定TCP选项的请求报文后,如果发生下列情况,则认为连接建立失败:
· 在指定时间内未作出有效应答。
· 对端设备关闭了TCP连接。
WAAS黑名单是系统实时自动生成的,黑名单表项有一定的生存时间,当黑名单超时后将被系统自动删除。
(1) 进入系统视图。
system-view
(2) 开启黑名单自动发现功能。
waas tfo auto-discovery blacklist enable
缺省情况下,自动发现黑名单功能处于关闭状态。
(3) (可选)配置黑名单表项的老化时间。
waas tfo auto-discovery blacklist hold-time minutes
缺省情况下,黑名单表项的老化时间为5分钟。
设备缺省不存在WAAS预定义策略,WAAS进程启动后,配置本命令可以在设备中创建预定义策略,设备中会自动生成预定义类和WAAS预定义策略waas_default。
WAAS预定义策略可以手动修改。当用户在预定义类视图或WAAS预定义策略视图下对预定义策略进行修改后,可以配置本命令将WAAS预定义策略还原成缺省状态。
配置本命令前,需要先配置WAAS相关命令启动WAAS进程,例如waas class命令,否则配置失败。
配置本功能时,需保证所有接口未应用任何WAAS策略,否则恢复失败。
(1) 进入系统视图。
system-view
(2) 还原或创建WAAS的预定义策略。
waas config restore-default
删除WAAS所有配置是指删除WAAS特性的所有配置数据和运行数据,并使WAAS进程退出。
(1) 进入系统视图。
system-view
(2) 删除WAAS所有配置。
waas config remove-all
可在任意视图下执行以下命令:
· 显示WAAS类的信息。
display waas class [ class-name ]
· 显示WAAS策略的信息。
display waas policy [ policy-name ]
· 显示WAAS会话信息。
display waas session { ipv4 | ipv6 } [ client-ip client-ip ] [ client-port client-port ] [ server-ip server-ip ] [ server-port server-port ] [ peer-id peer-id ] [ verbose ] [ slot slot-number ]
· 显示DRE的统计信息。
display waas statistics dre [ peer peer-id ] [ slot slot-number ]
· 显示FEC的报文统计信息。
display waas statistics fec
· 显示对端FEC的信息。
display waas fec peer-info { ipv4 | ipv6 } [ vpn-instance vpn-instance-name ] [ source-ip source-ip | source-port source-port | destination-ip destination-ip | destination-port destination-port ] *
· 显示WAAS全局状态。
display waas status
· 显示WAAS自动发现的黑名单信息。
display waas tfo auto-discovery blacklist { ipv4 | ipv6 } [ slot slot-number ]
· 显示包复制的报文统计信息。
display waas statistics packet-dup { ipv4 | ipv6 }
· 清除DRE的数据字典。
reset waas cache dre [ peer peer-id ]
· 清除DRE统计信息。
reset waas statistics dre [ peer peer-id ]
· 清除FEC的报文统计信息。
reset waas statistics fec
· 清除所有的黑名单表项。
reset waas tfo auto-discovery blacklist
· 清除包复制的报文统计信息。
reset waas statistics packet-dup { ipv4 | ipv6 }
· 在Router A和Router B两台设备上应用预定义策略waas_default,默认引用所有的预定义类。
· Host请求从Server下载数据,通过显示统计信息来检测优化效果。第一次请求下载数据,两端WAAS设备需要创建数据字典表项,发送字典索引和原始数据,压缩效率较低。第二次请求下载同样的数据,由于数据字典已经建立,用字典索引代替重复数据,压缩效率较高。
图1-1 预定义WAAS策略配置组网图
(1) 配置各接口的IP地址
按照图1-1配置各接口IP地址和掩码,具体配置过程略。
(2) 在广域网和各局域网内配置合适的路由协议,保证全网路由可达(具体配置过程略)
(3) 在设备上关闭快速转发负载分担功能。
# 在Router A上关闭快速转发负载分担功能。
<RouterA> system-view
[RouterA] undo ip fast-forwarding load-sharing
# 在Router B上关闭快速转发负载分担功能。
<RouterB> system-view
[RouterB] undo ip fast-forwarding load-sharing
(4) 在接口上应用预定义WAAS策略
# 在Router A的GigabitEthernet0/0/1接口上应用预定义策略。
[RouterA] interface gigabitethernet 0/0/1
[RouterA-GigabitEthernet0/0/1] waas apply policy
[RouterA-GigabitEthernet0/0/1] quit
[RouterA] quit
# 在Router B的GigabitEthernet0/0/1接口上应用预定义策略。
[RouterB] interface gigabitethernet 0/0/1
[RouterB-GigabitEthernet0/0/1] waas apply policy
(5) 客户端Host通过HTTP协议从Server下载一个约14MB的测试文件。
(6) 清除Router A 的DRE统计信息
<RouterA> reset waas statistic dre
(7) 客户端重新请求下载同一测试文件。
# 第一次下载后,显示Router A的DRE统计信息。
<RouterA> display waas statistic dre
Peer-ID: cc3e-5fd8-5158
Peer version: 1.0
Cache in storage: 12710912 bytes
Index number: 49652
Age: 00 weeks, 00 days, 00 hours, 00 minutes, 35 seconds
Total connections: 1
Active connections: 0
Encode Statistics
Dre msgs: 2
Bytes in: 286 bytes
Bytes out: 318 bytes
Bypass bytes: 0 bytes
Bytes Matched: 0 bytes
Space saving: -11%
Average latency: 0 usec
Decode Statistics
Dre msgs: 57050
Bytes in: 14038391 bytes
Bytes out: 14079375 bytes
Bypass bytes: 0 bytes
Space saved: 0%
Average latency: 0 usec
# 清除统计信息后,重新下载,显示Router A的DRE统计信息。
<RouterA> display waas statistic dre
Peer-ID: cc3e-5fd8-5158
Peer version: 1.0
Cache in storage: 12851200 bytes
Index number: 50200
Age: 00 weeks, 00 days, 00 hours, 2 minutes, 56 seconds
Total connections: 1
Active connections: 0
Encode Statistics
Dre msgs: 2
Bytes in: 286 bytes
Bytes out: 60 bytes
Bypass bytes: 0 bytes
Bytes Matched: 256 bytes
Space saved: 79%
Average latency: 0 usec
Decode Statistics
Dre msgs: 62791
Bytes in: 2618457 bytes
Bytes out: 13972208 bytes
Bypass bytes: 0 bytes
Space saved: 81%
Average latency: 0 usec
通过比较可以看出:数据字典建立后,第二次下载解压缩接收字节数明显降低,节省空间81%,第二次下载速度明显加快。
· 在Router A和Router B两台设备上应用用户自定义策略。
· Host请求从Server下载数据,通过显示统计信息来检测优化效果。第一次请求下载数据,两端WAAS设备需要创建数据字典表项,发送字典索引和原始数据,压缩效率较低。第二次请求下载同样的数据,由于数据字典已经建立,用字典索引代替重复数据,压缩效率较高。
图1-2 用户自定义WAAS策略配置组网图
(1) 配置各接口的IP地址
按照图1-2配置各接口IP地址和掩码,具体配置过程略。
(2) 在广域网和各局域网内配置合适的路由协议,保证全网路由可达(具体配置过程略)
(3) 在设备上关闭快速转发负载分担功能。
# 在Router A上关闭快速转发负载分担功能。
<RouterA> system-view
[RouterA] undo ip fast-forwarding load-sharing
# 在Router B上关闭快速转发负载分担功能。
<RouterB> system-view
[RouterB] undo ip fast-forwarding load-sharing
(4) 创建WAAS类
# 在Router A上创建WAAS类c1,在该WAAS类视图下创建匹配流分类的规则为匹配所有TCP流量。
[RouterA] waas class c1
[RouterA-waasclass-c1] match 1 tcp any
[RouterA-waasclass-c1] quit
# 在Router B上创建WAAS类c1,在该WAAS类视图下创建匹配流分类的规则为匹配所有TCP流量。
[RouterB] waas class c1
[RouterB-waasclass-c1] match tcp any
[RouterB-waasclass-c1] quit
(5) 创建WAAS策略
# 在Router A上创建策略p1,配置其引用WAAS类c1,匹配c1报文的优化方式为TFO、DRE和LZ。
[RouterA] waas policy p1
[RouterA-waaspolicy-p1] class c1
[RouterA-waaspolicy-p1-c1] optimize tfo dre lz
[RouterA-waaspolicy-p1-c1] quit
[RouterA-waaspolicy-p1] quit
# 在Router B上创建策略p1,配置其引用WAAS类c1,匹配c1报文的优化方式为TFO、DRE和LZ。
[RouterB] waas policy p1
[RouterB-waaspolicy-p1] class c1
[RouterB-waaspolicy-p1-c1] optimize tfo dre lz
[RouterB-waaspolicy-p1-c1] quit
[RouterB-waaspolicy-p1] quit
(6) 在接口上应用策略。
# 在Router A的GigabitEthernet0/0/1接口上应用WAAS策略p1。
[RouterA] interface gigabitethernet 0/0/1
[RouterA-GigabitEthernet0/0/1] waas apply policy p1
[RouterA-GigabitEthernet0/0/1] quit
[RouterA] quit
# 在Router B的GigabitEthernet0/0/1接口上应用WAAS策略p1。
[RouterB] interface gigabitethernet 0/0/1
[RouterB-GigabitEthernet0/0/1] waas apply policy p1
[RouterB-GigabitEthernet0/0/1] quit
[RouterB] quit
(7) 客户端Host通过HTTP协议从Server下载一个约14MB的测试文件。
(8) 清除DRE统计信息
<RouterA> reset waas statistic dre
(9) 客户端重新请求下载同一测试文件
# 第一次下载后,显示Router A的DRE统计信息。
<RouterA> display waas statistic dre
Peer-ID: cc3e-5fd8-5158
Peer version: 1.0
Cache in storage: 12718592 bytes
Index number: 49682
Age: 00 weeks, 00 days, 00 hours, 00 minutes, 35 seconds
Total connections: 1
Active connections: 0
Encode Statistics
Dre msgs: 2
Bytes in: 286 bytes
Bytes out: 318 bytes
Bypass bytes: 0 bytes
Bytes Matched: 0 bytes
Space saved: -11%
Average latency: 0 usec
Decode Statistics
Dre msgs: 56959
Bytes in: 13999244 bytes
Bytes out: 14055291 bytes
Bypass bytes: 0 bytes
Space saved: 0%
Average latency: 0 usec
# 清除统计信息后,重新下载,显示Router A的DRE统计信息。
<RouterA> display waas statistic dre
Peer-ID: cc3e-5fd8-5158
Peer version: 1.0
Cache in storage: 12857856 bytes
Index number: 50226
Age: 00 weeks, 00 days, 00 hours, 2 minutes, 02 seconds
Total connections: 1
Active connections: 0
Encode Statistics
Dre msgs: 2
Bytes in: 286 bytes
Bytes out: 60 bytes
Bypass bytes: 0 bytes
Bytes Matched: 256 bytes
Space saved: 79%
Average latency: 0 usec
Decode Statistics
Dre msgs: 62687
Bytes in: 2592183 bytes
Bytes out: 13972208 bytes
Bypass bytes: 0 bytes
Space saved: 81%
Average latency: 0 usec
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!