15-智能选路配置
本章节下载: 15-智能选路配置 (1.45 MB)
目 录
1.29.3 在本/对端设备互连的接口上应用QoS策略重标记报文
1.30.2 配置将本端SDWAN扩展隧道接口与对端的SDWAN隧道接口进行关联
1.30.3 配置将本端SDWAN隧道接口下的TTE连接信息和RIR的链路质量信息通过协同通道同步到对端设备
1.30.6 配置协同通道断开后,通过该协同通道同步的TTE连接的老化时间
1.38.1 基于VXLAN的Hub-Spoke组网中的智能选路配置举例
1.38.2 基于VXLAN的Hub-Spoke组网中的协同智能选路配置举例(本/对端设备直连)
1.38.3 基于VXLAN的Hub-Spoke组网中的协同智能选路配置举例(本/对端设备非直连)
传统的链路优选一般基于链路开销或路由策略,无法根据实际的业务需求选择最适合的链路。RIR(Resilient Intelligent Routing,智能选路)可以根据不同业务流量的链路需求,如链路质量、链路带宽等,为其选择最适合的链路。如果业务流量当前选择的链路由于链路状态变化而不再符合要求,智能选路还可以自动将流量切换到另一条符合要求的链路上。
RIR可以基于VXLAN隧道或SDWAN隧道部署。其中,基于VXLAN隧道部署的RIR称为RIR-VXLAN,基于SDWAN隧道部署的RIR称为RIR-SDWAN。
智能选路可以应用于基于VXLAN(Virtual eXtensible LAN,可扩展虚拟局域网络)的Hub-Spoke组网环境。在图1-1所示的组网中,智能选路可以根据链路优先级、链路主备、链路质量和链路带宽等,在Hub设备与Spoke设备之间为不同业务流量选择不同的VXLAN隧道进行传输。
图1-1 RIR-VXLAN应用场景示意图
流量无论是从Hub设备到Spoke设备还是从Spoke设备到Hub设备都可以进行智能选路,且不同方向的选路结果可能不同。
智能选路可以应用于SDWAN(Software-defined WAN,软件定义广域网)组网环境。
SDWAN组网中,SDWAN设备有以下几种角色:
· CPE:用户侧的SDWAN隧道终端设备。
· RR:路由反射器,用于反射CPE之间传输的网络信息和路由信息。
所有角色的SDWAN设备均支持智能选路功能。
如图1-2所示,智能选路可以根据链路优先级、链路质量和链路带宽等,在SDWAN设备之间为不同业务流量选择不同的SDWAN隧道进行传输。
图1-2 RIR-SDWAN应用场景示意图
业务流量模板用于为一类业务流量定义选路策略,通过Flow ID标识。
设备可以识别带有Flow ID标识的业务流量,为其选择对应的业务流量模板,并基于业务流量模板下配置的选路策略进行选路。
目前支持通过QoS重标记功能为流量标识Flow ID。当接口收到业务流量报文时,设备会根据流量报文五元组和DSCP值区分业务特征,为不同的业务流量标识其对应业务流量模板的Flow ID。该业务流量标识仅在设备选路流程中使用,不会被报文携带出去。
有关QoS重标记功能的详细介绍,请参见“ACL和QoS配置指导”中的“QoS概述”、“QoS策略”和“重标记”。
RIR-VXLAN和RIR-SDWAN对链路的定义不同。
RIR-VXLAN中的链路为VXLAN隧道,通过链路类型和编号唯一标识。
· 链路类型:为区分不同网络类型下的链路,RIR-VXLAN为链路定义了链路类型。根据常用的网络类型,RIR-VXLAN定义了4G、Internet、MPLS和MSTP四种链路类型。链路类型仅用于标识链路,不会对实际报文的封装形式造成影响。
· 链路编号:为链路分配链路编号,以区分相同网络类型下的不同链路。
在RIR-VXLAN中,每个Hub设备与每个Spoke设备间在每个VSI虚接口下(即每个VXLAN中)只能有一条VXLAN隧道。如图1-3所示,对于Hub设备,可以通过VSI虚接口唯一确定Hub设备与任一Spoke设备间的一条VXLAN隧道。因此,通过在VSI虚接口下配置链路类型和编号,就能在Hub设备与Spoke设备之间唯一标识一条VXLAN隧道。
图1-3 VXLAN组网中的链路
SDWAN组网中的链路是SDWAN隧道。每条SDWAN隧道连接一个传输网络,通过传输网络名称或ID唯一标识。传输网络名称和ID一一对应。RIR-SDWAN通过SDWAN隧道使用的传输网络名称区分不同的链路。
SDWAN隧道可以提供一台SDWAN设备到多台SDWAN设备的虚拟连接。每台SDWAN设备与另一SDWAN设备交互TTE(Transport Tunnel Endpoint,传输隧道终结点)信息(包括站点ID、设备ID、接口ID等),建立到另一SDWAN设备的SDWAN隧道。如图1-4所示,RR通过TN 1和TN 2分别建立了一条到CPE的SDWAN隧道。
图1-4 RIR-SDWAN中的链路
有关SDWAN隧道的详细介绍,请参见“SDWAN配置指导”中的“SDWAN”。
对于某一业务类型流量,用户可以根据链路特征、业务需求等因素,如链路价格,为其可选链路定义优先级。设备为业务流量选路时,会优先选择优先级较高的链路。
基于VXLAN隧道部署智能选路时,可以在业务流量模板下基于链路类型和编号,为VSI虚接口配置链路优先级。由于每个Hub设备与每个Spoke设备间在每个VSI虚接口下(即每个VXLAN中)只能有一条VXLAN隧道,在业务流量模板下配置VSI虚接口的链路优先级,就确定了一个Hub设备和一个Spoke设备之间VXLAN隧道的优先级。
基于SDWAN隧道部署智能选路时,可以在业务流量模板下基于传输网络名称,为SDWAN隧道配置链路优先级。
在同一业务流量模板下可以为不同的链路配置相同的链路优先级。
设备为某业务流量选路时,会按照业务流量模板下配置的链路优先级从高到低的顺序,依次选路:
· 如果该优先级下没有链路符合业务要求,则继续选择次优先级的链路。
· 如果该优先级下有且只有一条链路符合业务要求,则选择该链路进行传输。
· 如果该优先级下有两条及以上的链路符合业务要求,则按照智能选路负载分担方式选择链路。
仅RIR-VXLAN支持基于链路主备选路。
为保证业务可靠性,实际VXLAN组网中在设置主用Hub设备时,一般还会设置备用Hub设备。Spoke设备与主用Hub设备之间的链路称为主用链路,Spoke设备与备用Hub之间的链路称为备用链路。在业务流量模板下基于链路类型和编号,为VSI虚接口配置链路优先级后,该VSI虚接口关联的VXLAN隧道即缺省作为主用链路选路。如果将某个VSI虚接口关联的VXLAN隧道配置为RIR备份隧道,则该VXLAN隧道作为备用链路选路。当没有通往主用Hub设备的合适链路时,Spoke设备可以将流量发送给备用Hub设备,以保证流量不中断。
如图1-5所示,当Spoke设备与主用Hub设备之间的主用链路1和主用链路2不满足业务流量要求时,可以使用备用链路3将流量发送到备用Hub设备。
在Hub-Spoke实际组网中,一个Hub设备一般需要与多个Spoke设备进行通信。为避免Hub设备因检测多条链路而消耗过多资源,RIR-VXLAN定义了以下两种设备角色:
· RIR服务器:不进行NQA(Network Quality Analyzer,网络质量分析)链路探测,仅通过RIR客户端同步过来的链路探测质量结果进行选路。
· RIR客户端:通过NQA链路探测对链路进行质量探测,并将链路探测质量结果同步至RIR服务器。
通过将Hub设备配置为RIR服务器,将Spoke设备配置为RIR客户端,Hub设备即可通过Spoke设备同步过来的链路探测质量结果进行选路。
在全局和接口下都可以开启RIR服务器功能。如图1-6所示,当在全局开启RIR服务器功能时,设备上所有接口都会开启RIR服务器功能,即所有接口均可用于接收RIR客户端的链路探测质量结果;当在接口下开启RIR服务器功能时,则只有该接口可以用于接收RIR客户端的链路探测质量结果。
图1-6 RIR服务器功能开启示意图
VXLAN组网中仅Tunnel接口可以开启RIR服务器功能,RIR服务器基于Tunnel接口接收RIR客户端同步过来的链路探测质量结果。
RIR客户端功能开启方法与RIR服务器一致,不再详细介绍。
在单一的Hub-Spoke组网中,设备只会担任Hub设备或Spoke设备一种角色,可以直接全局开启RIR服务器或RIR客户端功能。如果设备在不同的Hub-Spoke组网中分别担任Hub设备和Spoke设备两种角色时,则可以在不同接口下分别开启RIR服务器和RIR客户端功能。
在同一接口下只能开启一种功能模式(RIR客户端功能或RIR服务器功能),如果同时在全局和接口下开启不同的功能模式,则接口下的功能模式以接口配置为准。
在实际组网中,用户可以根据组网情况在全局和接口下配合开启RIR服务器或RIR客户端功能。在图1-7所示组网中,其功能开启策略如下:
· Device A:全局开启RIR服务器功能。
· Device B:全局开启RIR客户端功能,在一个接口下开启RIR服务器功能。
· Device C:在两个接口下分别开启RIR客户端功能和RIR服务器功能。
· Device D:全局开启RIR客户端功能。
· Device E:在一个接口下开启RIR客户端功能。
图1-7 RIR服务器/客户端功能开启策略示意图
RIR-VXLAN通过NQA功能对待选链路进行探测,并基于探测结果实现基于链路质量的链路优选。有关NQA的详细介绍,请参见“网络管理与监控配置指导”中的“NQA”。
由于Hub设备需要基于Spoke设备同步的链路探测质量结果进行选路,RIR-VXLAN以Spoke设备为NQA客户端、以Hub设备为NQA服务器,定义了两种NQA链路探测:
· NQA链路通断探测:通过ICMP-echo测试探测每条链路的通断情况。如果某条链路探测结果为链路断开,设备不会对该链路进行NQA链路质量探测。
· NQA链路质量探测:通过UDP-jitter测试探测链路的时延、抖动和丢包率。设备只对链路通断探测结果正常的链路进行NQA链路质量探测。
设备只会探测已配置链路编号与链路类型的链路。其中,NQA链路通断探测只能开启一个,而NQA链路质量探测可以开启多个,同一链路在不同链路质量探测中的探测结果可能不同。
为了区分不同业务对链路质量的差异化需求,用户可以配置SLA(Service Level Agreement,服务等级协议)。SLA中定义了用于评估链路质量的各类阈值,包括延迟、抖动、丢包率等。
基于VXLAN隧道部署智能选路时,业务流量模板的质量策略由SLA和NQA链路质量探测组成。业务流量模板将NQA链路质量探测结果与SLA的阈值进行比较,如果链路的所有探测结果(延迟、抖动、丢包率等)均低于或等于阈值,则判定该链路符合业务质量要求。
如图1-8所示,如果配置了质量策略,Spoke设备会基于NQA链路探测得出“哪些链路符合业务质量要求”的质量结果,基于该质量结果进行选路,并将该质量结果同步到Hub设备。对于某一业务流量的待选链路:
· 如果NQA链路通断探测结果为链路断开,则直接认为该链路不符合业务质量要求。
· 如果NQA链路通断探测结果为链路可达,则继续判断该链路的NQA链路质量探测结果是否满足SLA的要求:
¡ 如果指定NQA链路质量探测的所有探测结果(延迟、抖动、丢包率等)均低于或等于指定SLA的阈值,则认为该链路符合业务质量要求。
¡ 如果指定NQA链路质量探测的任一探测结果高于指定SLA的阈值,则认为该链路不符合业务质量要求。
Spoke设备基于链路质量为业务流量选路时,仅需考虑Spoke设备质量策略的配置情况。如果为该业务流量配置了质量策略,则会基于相应的NQA链路探测和SLA得出链路探测质量结果,并基于该质量结果进行选路;如果没有为该业务流量配置质量策略,则选路时不考虑链路质量因素,直接认为链路质量符合业务质量要求。
Hub设备基于链路质量为业务流量选路时,需同时考虑Hub设备质量策略和Spoke设备质量策略的配置情况。对于某一业务流量,Hub基于链路质量的具体选路策略见表1-1。
表1-1 Hub设备基于链路质量的选路策略
Hub设备是否配置质量策略 |
Spoke设备是否配置质量策略 |
Hub设备的质量选路策略 |
是 |
是 |
Spoke设备会将该业务的链路探测质量结果同步给Hub设备,Hub设备基于该质量结果进行选路 |
是 |
否 |
Spoke设备不会将该业务的链路探测质量结果同步给Hub设备,Hub设备选路时认为该业务的所有链路质量均不符合业务质量要求 |
否 |
是 |
Spoke设备会将该业务的链路探测质量结果同步给Hub设备,但Hub设备选路时认为该业务的所有链路质量都符合业务质量要求 |
否 |
否 |
Spoke设备不会将该业务的链路探测质量结果同步给Hub设备,Hub设备选路时认为该业务的所有链路质量都符合业务质量要求 |
实际组网中,建议Hub设备和Spoke设备同时配置或者同时都不配置质量策略。
RIR-SDWAN定义了两种链路探测机制:
· Keepalive或BFD链路通断探测:通过Keepalive报文或BFD控制报文探测每条TTE连接的通断情况。
· iNQA链路质量探测:通过iNQA功能探测每条链路的时延、抖动和丢包率。
RIR-SDWAN使用相同的探测参数,对所有SDWAN隧道进行链路通断探测和链路质量探测。
与RIR-VXLAN的质量评估一样,RIR-SDWAN也基于SLA进行质量评估。SLA中定义了用于评估链路质量的各类阈值,包括延迟、抖动、丢包率等。由于所有业务流量使用相同的质量探测参数,业务流量模板的质量策略由SLA决定。
RIR-SDWAN根据CQI(Comprehensive Quality Indicator,综合质量指标)算法评估各链路的质量优劣。CQI算法的工作机制如下:
(1) 当单项质量(时延、时延抖动或丢包率)探测结果低于或等于SLA下相应的质量阈值时,认为单项CQI值为100。
(2) 当单项质量探测结果高于SLA下相应的质量阈值时,单项CQI值(时延CQI值Ds、时延抖动CQI值Js或丢包率CQI值Ls)=(单项阈值 * 100)/单项质量探测结果。
(3) 综合质量CQI值=(x* Ds+ y*Js + z* Ls)/(x + y + z)。其中x、y、z分别为时延、时延抖动和丢包率的权重(取值范围为0~10,且不可以全为0)。
为避免链路频繁切换,设备选路时使用综合质量近似CQI值来评估链路优劣。综合质量近似CQI值为不大于综合质量CQI值的最大的5的倍数。例如,如果综合质量CQI值为82.5,则综合质量近似CQI值为80。
SDWAN设备基于链路质量为业务流量选路时,如果为该业务流量配置了质量策略,则会基于链路探测结果和SLA得出链路质量结果,并基于该质量结果进行选路。对于某一业务流量的待选链路:
· 如果链路的综合质量近似CQI值小于100,则认为该链路不符合业务质量要求。
· 如果链路的综合质量近似CQI值等于100,则认为该链路符合业务质量要求。
如果没有为该业务流量配置质量策略,则选路时不考虑链路质量因素,认为链路质量符合业务质量要求。
基于链路带宽选路,不仅可以为业务流量选择带宽符合要求的链路,还可以均衡地使用各链路带宽,尽量避免出现个别链路带宽占用过高,甚至链路拥塞的情况。
基于链路带宽选路时,设备会根据可选链路和所属物理接口的已使用带宽、链路和所属物理接口的总带宽以及会话预计使用的带宽等多个方面为业务流量选择合适的链路。在VXLAN组网和SDWAN组网中,链路带宽是Tunnel接口带宽,而链路所属物理接口带宽则是发送隧道报文的物理出接口带宽。会话预计使用的带宽可以实时获取(业务流量在某一Tunne接口的带宽除以该业务流量在该Tunnel接口的会话统计数量),也可以通过手工配置。
同时,设备以会话为最小粒度,进行基于链路带宽的选路,以实现更精细地链路带宽管理。会话通过五元组唯一定义,报文的源IP地址、目的IP地址、源端口、目的端口以及传输层协议中任一元素不同,则属于不同的会话。
为某个会话的流量进行智能选路时,设备会基于会话所属业务流量模板下配置的会话预计使用的带宽进行带宽检测。如果同时满足以下条件,则认为待选链路当前可用带宽符合会话带宽要求,带宽检测通过:
· 待选链路所属物理接口的已使用带宽与会话预计使用的带宽之和小于待选链路所属物理接口总带宽的80%(默认为80%,可配置为100%);
· 待选链路已使用带宽与会话预计使用的带宽之和小于待选链路总带宽的80%(默认为80%,可配置为100%)。
仅RIR-SDWAN支持实时获取会话预计使用的带宽,RIR-VXLAN只能在业务流量模板下配置的会话预计使用的带宽。
当某一业务流量存在多条链路可选时,设备会基于链路带宽将业务流量分布到多条链路上传输,以实现链路的负载分担。智能选路支持多种链路负载分担模式,包括:
· 逐流加权选路模式:RIR全局级的链路负载分担模式,对参与智能选路的所有业务流量生效。该模式可以按照一定权重将同一业务流量的不同会话分布到不同链路上进行传输,一个会话只选择一条链路进行传输。
· 逐流周期调整模式:RIR全局级的链路负载分担模式,对参与智能选路的所有业务流量生效。该模式不但可以将同一业务流量的不同会话分布到不同链路上进行传输,而且会进行周期性地调整。在一个调整周期内,一个会话只选择一条链路进行传输。
· 逐包模式:业务级的链路负载分担模式,只对参与智能选路的指定业务流量生效。该模式可以将指定业务流量的同一会话分布到多条链路上进行传输。
逐包链路负载分担模式的优先级高于逐流链路负载分担模式。
负载分担机制基于链路带宽,涉及的主要概念有:
· 带宽权重:即以链路带宽作为链路的权重,或以链路所属的物理接口带宽作为链路所属的物理接口的权重。如果是以总带宽作为权重,则称为总带宽权重;如果以剩余带宽作为权重,则称为剩余带宽权重。按照链路的带宽权重从多条可选链路中选路时,每条链路被选中的概率等于该链路带宽与所有可选链路带宽之和(即权重和)的比值;同理,按照链路所属物理接口的带宽权重选择一个物理接口时,每个物理接口被选中的概率等于该物理接口带宽与所有可选链路所属物理接口带宽之和(即权重和)的比值。例如,链路1、链路2和链路3的总带宽分别为10Mbps、10Mbps和20Mbps,剩余带宽分别为8Mbps、4Mbps和8Mbps,并且三条链路均符合业务流量要求。如果按照链路的总带宽权重选路,则链路1、链路2和链路3被选中的概率分别为25%、25%和50%;如果按照链路的剩余带宽权重选路,则链路1、链路2和链路3被选中的概率分别为40%、20%和40%。
· 剩余带宽比:链路剩余带宽与链路总带宽的比值,或链路所属的物理接口剩余带宽与所属的物理接口总带宽的比值。在同时考虑多条链路所属物理接口的剩余带宽比时,如果某条链路所属物理接口的剩余带宽比最大,则称该链路所属物理接口的剩余带宽比为最大剩余带宽比;同理,如果某条链路所属物理接口的剩余带宽比最小,则称该链路所属物理接口的剩余带宽比为最小剩余带宽比。
逐流加权选路模式的机制如下:
· 进行主备链路优先级选路和质量勉强选路时,如果存在多条链路可选(进行RIR-SDWAN的质量勉强选路时指综合质量近似CQI值最高的链路存在多条),则在可选链路中为业务流量的每个会话分别选择一条最优链路进行转发。每个会话选路时首先按照可选链路所属的物理接口剩余带宽权重(将会话预计使用的带宽计入物理接口已使用带宽)选择一个物理接口,再从选中物理接口下的可选链路中按照链路剩余带宽权重(将会话预计使用的带宽计入链路已使用带宽)选择一条链路作为最优链路。
如图1-9所示,Tunnel1和Tunnel2属于物理接口Interface1,Tunnel3和Tunnel4属于物理接口Interface2。从Tunnel1、Tunnel2、Tunnel3和Tunnel4中为预计使用带宽为10Mbps的会话选路时,将会话预计使用带宽计入Tunnel1、Tunnel2、Tunnel3和Tunnel4的已使用带宽,4条链路的带宽使用率分别为40%、60%、40%和80%。因此,Tunnel1、Tunnel2和Tunnel3可选,而Tunnel4因带宽大于等于80%不可选。然后,将会话预计使用带宽计入Tunnel1、Tunnel2所属的物理接口Interface1和Tunnel3所属的物理接口Interface2的已使用带宽,两个物理接口的剩余带宽则分别为60Mbps和90Mbps,按照剩余带宽权重选路,Interface1和Interface2被选中的概率分别为40%和60%。如果选中Interface1,Tunnel1和Tunnel2的剩余带宽(将会话预计使用带宽计入已使用带宽)为30Mbps和20Mbps,则Tunnel1和Tunnel2在Interface1下被选中的概率分别为60%和40%;如果选中Interface2,Tunnel3在Interface2下被选中的概率为100%。最终可以得出,Tunnel1、Tunnel2、Tunnel3和Tunnel4被选中的概率分别为24%、16%、60%和0%。
· 进行带宽勉强选路时,如果存在多条链路可选,则按照可选链路的总带宽权重,为业务流量的每个会话分别选择一条最优链路进行转发。
有关主备链路优先级选路、质量勉强选路和带宽勉强选路的详细介绍,请参见“1.12 智能选路机制”。
逐流周期调整模式的机制如下:
· 进行主备链路优先级选路和质量勉强选路时,如果存在多条链路可选(进行RIR-SDWAN的质量勉强选路时指综合质量近似CQI值最高的链路存在多条),则在可选链路中为业务流量的每个会话分别选择一条最优链路进行转发。每个会话选路时首先从可选链路所属的物理接口中选择一个带宽使用率最低(将会话预计使用的带宽计入物理接口已使用带宽)的物理接口,再从选中物理接口下的可选链路中选择一条带宽使用率最低(将会话预计使用的带宽计入链路已使用带宽)的链路作为最优链路。
· 进行带宽勉强选路时,如果存在多条链路可选,则在可选链路中为业务流量的每个会话分别选择一条最优链路进行转发,每个会话选路时会优先选择上一次选择的链路。如果是首次为该会话流量选路,则首先按照可选链路所属的物理接口剩余带宽权重(将会话预计使用的带宽计入物理接口已使用带宽)选择一个物理接口,再从选中物理接口下的可选链路中按照链路剩余带宽权重(将会话预计使用的带宽计入链路已使用带宽)选择一条链路作为最优链路。
逐流周期调整模式下,设备会对链路上的业务流量进行周期性地调整。当达到调整周期时,设备会对所有业务流量的链路带宽使用情况进行检测。如果用于转发某一业务流量的所有链路所属的物理接口或隧道接口中,最大剩余带宽比与最小剩余带宽比的差值大于周期调整上限阈值,则会对该业务流量进行重新选路。重新选路可能持续多个调整周期。当达到新的调整周期时,如果最大和最小剩余带宽比的差值小于周期调整下限阈值,或者新的调整周期是该业务流量开始进行重新选路的第20次调整,设备会停止调整该业务流量。
逐包模式的机制如下:
· 当进行主备链路优先级选路和质量勉强选路时,如果存在多条链路可选(进行RIR-SDWAN的质量勉强选路时指综合质量近似CQI值最高的链路存在多条),则将多条链路都作为会话的最优链路。当转发会话的流量时,设备会为会话逐包选择链路进行转发,每条链路被选中的概率的计算方法如下:
a. 将链路带宽和链路所属的物理接口带宽进行比较,取较小的带宽值。
b. 如果链路带宽的值较小,则按照链路剩余带宽权重(将会话预计使用的带宽计入链路已使用带宽)选择一条链路作为最优链路。
c. 如果链路所属的物理接口带宽值较小,则按照可选链路所属的物理接口剩余带宽权重(将会话预计使用的带宽计入物理接口已使用带宽)选择一个物理接口。
· 当进行带宽勉强选路时,如果存在多条链路可选,则将多条链路都作为会话的最优链路。当转发该会话的流量时,设备为会话逐包选择链路进行转发,每条链路被选中的概率相同。
为提高报文转发效率,业务流量完成第一次智能选路后,后续相同业务的流量均按照第一次选路结果进行转发。当业务流量模板中的任一链路发生如下任一变化时,设备会重新选路:
· 链路质量由满足业务质量要求变为不满足业务质量要求或由不满足业务质量要求变为满足业务质量要求。
· 链路已使用带宽达到该链路最大带宽的90%,或者链路所属的物理接口已使用带宽达到所属物理接口最大带宽的90%。
为避免链路震荡时设备频繁选路,智能选路定义了选路延迟时间和选路抑制周期。
设备执行一次选路后,如果配置了选路抑制周期,则会进入选路抑制周期。设备在选路抑制周期内不会重新选路,但会一直维护链路状态数据。当选路抑制周期结束后,如果设备链路状态满足重新选路条件,并在周期结束后的选路延迟时间内一直满足该条件,设备在选路延迟时间超时后重新选路。如果选路延迟时间内设备链路状态变为不满足重新选路条件,设备不会重新选路。
实际组网中,同一物理区域可能部署了多台独立智能选路的设备,每个设备只能为业务流量选择本设备上的链路,无法实现全区域的链路优选和负载分担。协同选路可以使多台具备智能选路能力的设备间共享链路数据,并通过建立专用转发通道实现设备链路的集中调度。
如图1-10所示,协同选路组网中的主要概念如下:
· 协同选路设备组
协同进行智能选路的一组设备。协同选路设备组内的设备互为本端设备和对端设备(简称本/对端设备),可以实现链路共享。
同一协同选路设备组内的设备一般部署在同一物理区域内,如同一个机房、同一个园区等。
¡ 一组Hub设备可以组成协同选路Hub组。
¡ 一组Spoke设备可以组成协同选路Spoke组。
协同选路设备组作为一台逻辑上的“设备”,既可以与另一个协同选路设备组形成Hub-Spoke组网,也可以与某一台物理设备形成Hub-Spoke组网。
· 协同链路组
协同选路设备组内到同一协同选路设备组或同一设备(Spoke设备或者Hub设备)的链路集合。例如,图1-10中协同选路Hub组到单个Spoke设备的链路集合为协同链路组1,到协同选路Spoke组的链路集合为协同链路组2。
· 本端报文和对端报文
协同选路过程中,首先由本端设备处理的业务报文称为本端报文,首先由对端设备处理的业务报文称为对端报文。协同选路设备组的成员设备对本端报文和对端报文的选路策略不同。
当设备不是协同选路设备组的成员设备时,该设备收到的业务报文均认为是本端报文。
协同选路设备组的所有设备两两建立选路协同关系后,本端设备与对端设备中IP地址较小的设备作为客户端,向另一设备发起建立TCP连接。通过建立的TCP连接,本端设备将本设备上符合业务要求的链路配置数据和链路状态数据发送给对端设备,发送的数据不包括从同一协同选路设备组内的其他设备同步过来的链路数据。同步结束后,协同选路设备组内的任一设备都获取到组内所有设备的链路信息,并进行实时的更新。
当协同选路设备组内的任一设备接收到某一会话报文,会按照表1-2所示的协同选路策略进行处理。
接收报文情况 |
是否存在接收报文的转发路由 |
协同选路策略 |
报文为本端报文并且首次收到 |
是 |
根据是否存在该会话的最优链路信息,分为以下两种情况: · 当存在最优链路信息时,按照选路信息转发报文 · 当不存在最优链路信息时,设备综合考虑本地业务模板下的链路和对端设备同一业务流量模板下的链路,选择一条最符合业务需求的链路进行传输。选中链路后: ¡ 如果选中的链路为本端设备上的链路,则直接进行本地转发 ¡ 如果选中的链路为对端设备上的链路,则将报文发送给对端设备 |
报文为本端报文并且首次收到 |
否 |
从所有协同选路对端设备中选择一个对端设备,并将报文转发给该对端设备 |
报文为本端报文但不是首次收到 |
是 |
该报文一般是由于对端设备不存在转发路由而返回的本端报文。此时,设备只从本端设备链路中,选择一条最符合业务需求的链路进行传输。设备每隔60秒为该会话进行一次重新选路,以保证在对端设备路由恢复时,该会话能及时切换到对端设备链路进行传输 |
报文为本端报文但不是首次收到 |
否 |
从未被选择用来转发该报文所属会话流量的协同选路对端设备中选择一个对端设备,并将报文转发给该对端设备;如果不存在符合要求的对端设备,则丢弃报文 |
报文为对端报文 |
是 |
根据是否存在该会话的最优链路信息,分为以下两种情况: · 当存在最优链路信息时,按照选路信息转发报文 · 当不存在最优链路信息时,设备只从本端设备链路中,选择一条最符合业务需求的链路进行传输 |
报文为对端报文 |
否 |
将报文返回给原对端设备 |
设备收到报文后,首先会按照如下步骤进行处理:
(1) 根据五元组和DSCP对业务流量进行分类,并通过QoS功能重标记Flow ID。
(2) 判断报文携带的Flow ID是否有效,如果无效,则按原路由表项进行普通转发。
(3) 如果报文携带的Flow ID有效,设备会在路由表中查询是否存在可转发路由。如果不存在可转发路由,设备会继续判断报文是否为本端报文:
¡ 如果不是本端报文,则将报文返回给原协同选路对端设备。
¡ 如果是本端报文,则会从未被选择用来转发该报文所属会话流量的协同选路对端设备中选择一个对端设备,并将报文转发给该设备。如果不存在符合要求的协同选路对端设备,则丢弃该报文。
(4) 如果存在可转发路由,设备则会查看是否存在该报文所属会话的最优链路信息。
¡ 如果存在最优链路信息,则按照选路信息转发报文。
¡ 如果不存在可转发路由,则为该报文进行选路。
图1-11 RIR-VXLAN选路准备
设备收到报文后,首先会按照如下步骤进行处理:
(1) 根据五元组和DSCP对业务流量进行分类,并通过QoS功能重标记Flow ID。
(2) 判断报文携带的Flow ID是否有效,如果无效,则按原路由表项进行普通转发。
(3) 如果报文携带的Flow ID有效,设备会在路由表中查询是否存在可转发路由。如果不存在可转发路由,设备会直接丢弃该报文。
(4) 如果存在可转发路由,设备则会查看是否存在该报文所属会话的最优链路信息。
¡ 如果存在最优链路信息,则按照选路信息转发报文。
¡ 如果不存在可转发路由,则为该报文进行选路。
图1-12 RIR-SDWAN选路准备
(1) 设备根据报文携带的Flow ID选择业务流量模板。
(2) 在业务流量模板下的链路中选择最优链路,依次进行:
a. 主链路优先级选路
b. 备链路优先级选路
仅RIR-VXLAN支持备链路优先级选路。
c. 质量勉强选路
d. 带宽勉强选路
基于VXLAN隧道部署智能选路时,如果报文是本端报文并且是首次收到,可选链路包括本地业务模板下的链路和对端设备同一业务流量模板下的链路;如果报文是对端报文,或者报文是本端报文但不是首次收到,可选链路则仅包括本设备上的链路。
(3) 如果在任一类型选路中找到最优链路,则返回选路结果,剩余类型的选路不再进行;否则,继续进行下一类型选路。如果所有类型的选路都没有找到最优链路,则认为没有最优链路,并返回选路结果。
(4) 如果在业务流量模板下的链路中找到最优链路,则根据选路结果转发。其中:
¡ 基于VXLAN隧道部署智能选路时,如果最优链路是本端设备链路,则直接本地转发;如果最优链路是协同选路设备组中的对端设备链路,则将报文转发给对端设备。
¡ 基于SDWAN隧道部署智能选路时,直接本地转发。
(5) 如果没有找到最优链路,则按原路由表项进行普通转发。
完成选路后,设备会关联报文的五元组与最优链路,并将其作为所属会话的最优链路信息记录下来,后续收到的相同会话流量按照最优链路信息进行转发。当持续一段时间没有收到相应会话流量时,设备会删除该最优链路信息。
图1-13 智能选路流程总图
智能选路会优先为业务流量选择质量和带宽均满足业务要求的主用链路,这一选路过程称为主链路优先级选路。主链路优先级选路过程如图1-14所示,设备会按照从高到低的顺序遍历业务流量模板下的所有优先级,对于当前优先级:
(1) 设备会遍历优先级下的所有链路,判断链路是否为等价路径之一。如果链路是等价路径之一,则继续判断该链路是否为链路带宽和质量均符合业务要求的主用链路。如果是,则将该链路计入当前优先级可选链路;否则,继续判断该链路是否为链路带宽符合要求的主用链路:
¡ 如果是,则将该链路计入质量勉强选路可选链路,并继续判断当前优先级下的其他链路。
¡ 如果不是,则继续判断当前优先级下的其他链路。
如果链路不是等价路径之一,继续判断当前优先级下的其他链路。
(2) 当遍历完当前优先级下的所有链路后,设备会确认业务流量在当前优先级下有几条可选链路:
¡ 如果只有一条可选链路,则直接选择该链路为最优链路。
¡ 如果有多条可选链路,则根据链路负载分担模式选择一条或多条链路作为最优链路。业务报文在逐流链路负载分担模式下,只会选择一条链路作为最优链路;在逐包链路负载分担模式下会选择多条链路作为最优链路。
¡ 如果没有可选链路,则继续遍历下一优先级下的链路。
(3) 如果所有优先级下均无可选链路,则认为主链路优先级选路没有为该业务流量找到最优链路。
关于RIR-VXLAN和RIR-SDWAN如何判断链路质量是否符合要求,请分别参见“1.6.3 RIR-VXLAN的质量策略”和“1.7.2 RIR-SDWAN的质量评估机制和质量策略”。关于如何判断链路带宽是否符合要求,请参见“1.8.2 带宽策略”。
基于VXLAN隧道部署智能选路时,如果主链路优先级选路没有为业务流量找到最优链路,设备进行备链路优先级选路。备链路优先级选路为业务流量选择质量和带宽均满足业务要求的备用链路,其具体选路流程与主链路优先级选路类似,不再详细介绍。
当主链路优先级选路与备链路优先级选路(仅RIR-VXLAN支持备链路优先级选路)未找到最优链路时,设备进行质量勉强选路。
质量勉强选路的对象为主链路优先级选路和备链路优先级选路过程中,计入质量勉强选路可选链路的所有链路。这些链路的链路质量不满足业务要求,但链路带宽满足业务要求。质量勉强选路即是在没有链路质量满足业务要求时,勉强为业务流量选择一条带宽满足业务要求的链路。其中:
· RIR-VXLAN为业务流量进行质量勉强选路时,如果只存在一条可选链路,则选择该链路为最优链路;如果存在多条可选链路,设备会根据链路负载分担模式选择一条或者多条链路作为最优链路。
· RIR-SDWAN为业务流量进行质量勉强选路时,选择待选链路中综合质量近似CQI值最高的链路。如果综合质量近似CQI值最高的可选链路存在多条,则根据链路负载分担模式选择一条或者多条链路作为最优链路。
如果质量勉强选路仍未找到最优链路,即所有等价路径的链路带宽均不满足业务要求,设备进行带宽勉强选路。带宽勉强选路会在业务流量模板下属于等价路径之一的链路中,勉强为业务选择一条链路作为最优链路。
为业务流量进行带宽勉强选路时,如果存在多条可选链路,设备会根据链路负载分担模式选择一条或者多条链路作为最优链路。
本特性的支持情况与设备的型号有关,请以设备的实际情况为准。
型号 |
说明 |
MSR610 |
支持 |
MSR810、MSR810-W、MSR810-W-DB、MSR810-LM、MSR810-W-LM、MSR810-10-PoE、MSR810-LM-HK、MSR810-W-LM-HK、MSR810-LM-CNDE-SJK、MSR810-CNDE-SJK、MSR810-EI、MSR810-LM-EA、MSR810-LM-EI |
支持 |
MSR810-LMS、MSR810-LUS |
不支持 |
MSR810-SI、MSR810-LM-SI |
不支持 |
MSR810-LMS-EA、MSR810-LME |
支持 |
MSR1004S-5G、MSR1004S-5G-CN |
支持 |
MSR1104S-W、MSR1104S-W-CAT6、MSR1104S-5G-CN、MSR1104S-W-5G-CN |
支持 |
MSR2600-6-X1、MSR2600-15-X1、MSR2600-15-X1-T |
支持 |
MSR2600-10-X1 |
支持 |
MSR2630 |
支持 |
MSR3600-28、MSR3600-51 |
支持 |
MSR3600-28-SI、MSR3600-51-SI |
不支持 |
MSR3600-28-X1、MSR3600-28-X1-DP、MSR3600-51-X1、MSR3600-51-X1-DP |
支持 |
MSR3600-28-G-DP、MSR3600-51-G-DP |
支持 |
MSR3610-I-DP、MSR3610-IE-DP、MSR3610-IE-ES、MSR3610-IE-EAD、MSR-EAD-AK770、MSR3610-I-IG、MSR3610-IE-IG |
支持 |
MSR-iMC |
支持 |
MSR3610-X1、MSR3610-X1-DP、MSR3610-X1-DC、MSR3610-X1-DP-DC、MSR3620-X1、MSR3640-X1 |
支持 |
MSR3610、MSR3620、MSR3620-DP、MSR3640、MSR3660 |
支持 |
MSR3610-G、MSR3620-G |
支持 |
MSR3640-G |
支持 |
MSR3640-X1-HI |
支持 |
型号 |
说明 |
MSR810-W-WiNet、MSR810-LM-WiNet |
支持 |
MSR830-4LM-WiNet |
支持 |
MSR830-5BEI-WiNet、MSR830-6EI-WiNet、MSR830-10BEI-WiNet |
支持 |
MSR830-6BHI-WiNet、MSR830-10BHI-WiNet |
支持 |
MSR2600-6-WiNet |
支持 |
MSR2600-10-X1-WiNet |
支持 |
MSR2630-WiNet |
支持 |
MSR3600-28-WiNet |
支持 |
MSR3610-X1-WiNet |
支持 |
MSR3620-X1-WiNet |
支持 |
MSR3610-WiNet、MSR3620-10-WiNet、MSR3620-DP-WiNet、MSR3620-WiNet、MSR3660-WiNet |
支持 |
型号 |
说明 |
MSR860-6EI-XS |
支持 |
MSR860-6HI-XS |
支持 |
MSR2630-XS |
支持 |
MSR3600-28-XS |
支持 |
MSR3610-XS |
支持 |
MSR3620-XS |
支持 |
MSR3610-I-XS |
支持 |
MSR3610-IE-XS |
支持 |
MSR3620-X1-XS |
支持 |
MSR3640-XS |
支持 |
MSR3660-XS |
支持 |
型号 |
说明 |
MSR810-LM-GL |
支持 |
MSR810-W-LM-GL |
支持 |
MSR830-6EI-GL |
支持 |
MSR830-10EI-GL |
支持 |
MSR830-6HI-GL |
支持 |
MSR830-10HI-GL |
支持 |
MSR1004S-5G-GL |
支持 |
MSR2600-6-X1-GL |
支持 |
MSR3600-28-SI-GL |
不支持 |
链路负载较高时修改链路优选策略(如链路优先级等),可能导致链路优选结果与当前配置的链路优选策略不符。建议在链路无负载或者负载较小时修改链路优选策略。
Spoke设备配置任务如下:
(1) 启动RIR-VXLAN服务
(2) 配置Spoke设备链路探测功能
¡ (可选)配置NQA链路通断探测
(4) 配置链路属性
¡ 配置链路带宽
¡ (可选)配置链路为备用链路
(5) 配置业务流量模板
¡ 创建业务流量模板
¡ (可选)配置会话预计使用的带宽
¡ 配置链路优先级
(6) 配置链路负载分担模式
缺省情况下,链路负载分担模式为逐流加权选路模式。
(7) (可选)配置基于业务优先级的选路功能
(8) (可选)配置选路延迟时间和选路抑制周期
c. 定义策略
d. 应用策略
(10) (可选)配置协同选路
c. 将链路添加到协同链路组
e. 添加报文重定向策略
f. 开启接口透传功能
(11) (可选)开启RIR日志功能
(12) (可选)开启隧道基于Flow ID的流量速率统计功能
Hub设备配置任务如下:
(1) 启动RIR-VXLAN服务
(2) 配置Hub设备链路探测功能
¡ (可选)创建NQA链路质量探测
(4) 配置链路属性
¡ 配置链路带宽
¡ (可选)配置链路为备用链路
(5) 配置业务流量模板
¡ 创建业务流量模板
¡ (可选)配置会话预计使用的带宽
¡ 配置链路优先级
(6) 配置链路负载分担模式
缺省情况下,链路负载分担模式为逐流加权选路模式。
(7) (可选)配置基于业务优先级的选路功能
(8) (可选)配置选路延迟时间和选路抑制周期
c. 定义策略
d. 应用策略
(10) (可选)配置协同选路
c. 将链路添加到协同链路组
e. 添加报文重定向策略
(11) (可选)开启RIR日志功能
(12) (可选)开启隧道基于Flow ID的流量速率统计功能
RIR-SDWAN配置任务如下:
(1) 启动RIR-SDWAN服务
(2) 配置SDWAN设备的链路探测功能
¡ 配置链路通断探测
¡ 配置链路质量探测
(3) 配置SLA(RIR-SDWAN)
(4) 配置链路属性
¡ 配置链路带宽
(5) 配置业务流量模板
¡ 创建业务流量模板
¡ 配置CQI算法
¡ (可选)配置会话预计使用的带宽
¡ 配置链路优先级
(6) (可选)开启选路时关心带宽功能
(7) 配置链路负载分担模式
缺省情况下,链路负载分担模式为逐流加权选路模式。
(8) (可选)配置基于业务优先级的选路功能
(9) (可选)配置选路延迟时间和选路抑制周期
(10) 配置QoS策略重标记Flow ID
¡ 定义策略
¡ 应用策略
(11) (可选)配置协同选路(RIR-SDWAN)
b. 配置将本端SDWAN扩展隧道接口与对端的SDWAN隧道接口进行关联
c. 配置将本端SDWAN隧道接口下的TTE连接信息和RIR的链路质量信息通过协同通道同步到对端设备
e. 配置接口的协同组ID
f. 配置协同通道断开后,通过该协同通道同步的TTE连接的老化时间
g. 开启隧道的BFD检测功能
(12) (可选)维护RIR-SDWAN
¡ 配置应用质量探测
(13) (可选)开启RIR链路冷备功能
(14) (可选)开启SDWAN隧道的流量调度跟随功能
RIR可以基于VXLAN隧道或SDWAN隧道部署。
· 基于VXLAN隧道进行智能选路时,各Hub设备与Spoke设备必须启动RIR-VXLAN服务。
· 基于SDWAN隧道进行智能选路时,SDWAN设备必须启动RIR-SDWAN服务。
· 启动RIR-VXLAN服务或RIR-SDWAN服务时,系统会同时启动RIR进程。关闭RIR-VXLAN服务或RIR-SDWAN服务时,系统会同时关闭RIR进程。
· 不能同时启动RIR-VXLAN服务和RIR-SDWAN服务。
¡ RIR-VXLAN服务处于启动状态时,必须先使用undo rir命令关闭RIR-VXLAN服务,才能启动RIR-SDWAN服务。
¡ RIR-SDWAN服务处于启动状态时,必须先使用undo rir sdwan命令关闭RIR-SDWAN服务,才能启动RIR-VXLAN服务。
(1) 进入系统视图。
system-view
(2) 启动RIR-VXLAN服务,并进入RIR-VXLAN视图。
rir
缺省情况下,RIR-VXLAN服务处于关闭状态。
(1) 进入系统视图。
system-view
(2) 启动RIR-SDWAN服务,并进入RIR-SDWAN视图。
rir sdwan
缺省情况下,RIR-SDWAN服务处于关闭状态。
在Hub-Spoke组网中,为避免Hub设备因检测多条链路而消耗过多资源,一般将Hub设备配置为RIR服务器,将Spoke设备配置为RIR客户端。
在全局和接口下都可以开启RIR客户端功能。全局开启RIR客户端功能时,设备的所有接口下都会开启RIR客户端功能,即所有接口都可以发送RIR客户端的链路探测质量结果。在接口下开启RIR客户端功能时,仅该接口可以发送RIR客户端的链路探测质量结果。
· VXLAN组网中仅Tunnel接口可以开启RIR客户端功能,RIR客户端基于Tunnel接口发送链路探测质量结果。
· 在同一接口下只能开启RIR客户端功能或开启RIR服务器功能。
· 同时在全局和接口下开启不同的功能模式(RIR客户端功能或RIR服务器功能),接口下的功能模式以接口配置为准。
(1) 进入系统视图。
system-view
(2) 开启RIR客户端功能。请至少选择其中一项进行配置。
¡ 请依次执行以下命令全局开启RIR客户端功能。
rir
client enable
¡ 请依次执行以下命令在VXLAN隧道模式的Tunnel接口视图下开启RIR客户端功能。
interface tunnel tunnel-number mode vxlan
rir role client
缺省情况下,未开启RIR客户端功能。
为保证RIR客户端的链路探测质量结果能够同步到RIR服务器,必须在RIR客户端上配置探测信息同步端口号。
RIR客户端与RIR服务器上配置的探测信息同步端口号必须保持一致,否则RIR客户端无法将链路探测质量结果同步到RIR服务器。
(1) 进入系统视图。
system-view
(2) 进入RIR-VXLAN视图。
rir
(3) 配置RIR服务器与RIR客户端的探测信息同步端口号。
probe sync-port port-number
缺省情况下,未配置RIR服务器与RIR客户端的探测信息同步端口号。
Spoke设备作为RIR客户端时,也同时担任NQA客户端的角色。因此,需要在Spoke设备上开启NQA客户端功能,以保证NQA链路通断探测与NQA链路质量探测能够正常进行。
(1) 进入系统视图。
system-view
(2) 开启NQA客户端功能。
nqa agent enable
缺省情况下,NQA客户端功能处于关闭状态。
本命令的详细介绍,请参见“网络管理与监控命令参考”中的“NQA”。
开启RIR-VXLAN服务后,设备会启动NQA链路通断探测,对业务流量模板下配置的所有链路进行通断探测。Spoke设备(即NQA客户端)以一定时间间隔发送探测报文,并等待接收响应报文。如果超过超时时间仍未收到响应报文,则认为该链路不通。
通过本配置,可以:
· 修改探测时间间隔:时间间隔越短,检测灵敏度越高,同时消耗的系统资源也越多。
· 修改探测的超时时间:超时时间越短,对链路要求越高。
在VXLAN组网中,设备仅对开启RIR客户端功能的Tunnel接口进行NQA链路通断探测。
NQA链路通断探测报文以VXLAN隧道的源端地址为源IP地址、VXLAN隧道的目的端地址为目的IP地址,不必另行配置。
(1) 进入系统视图。
system-view
(2) 进入RIR-VXLAN视图。
rir
(3) 配置NQA通断探测参数。
probe connect interval interval timeout timeout
缺省情况下,NQA链路通断探测时间间隔为100毫秒,超时时间为3000毫秒。
配置NQA链路质量探测后,设备会启动UDP-jitter测试,根据配置的探测参数进行链路质量检测。在业务流量模板下配置质量策略,关联SLA和NQA链路质量探测后,业务流量模板会将NQA链路质量探测结果与SLA的链路质量阈值进行比较。如果链路的所有探测结果均低于或等于阈值,则判定该链路符合业务质量要求。
为区别不同业务流量对链路质量探测的不同要求,可以为不同业务流量模板指定探测参数不同的NQA链路质量探测。NQA链路质量探测参数不同,其对同一链路的探测结果可能不同。
在VXLAN组网中,设备仅对开启RIR客户端功能的Tunnel接口进行NQA链路通断探测。
NQA链路质量探测报文以VXLAN隧道的源端地址为源IP地址、VXLAN隧道的目的端地址为目的IP地址,不必另行配置。
NQA链路质量探测需要NQA服务器和客户端配合才能完成。配置NQA链路质量探测前,需要在对应的NQA服务器上配置UDP监听功能。
(1) 进入系统视图。
system-view
(2) 进入RIR-VXLAN视图。
rir
(3) 创建NQA链路质量探测,并进入NQA链路质量探测视图。
nqa nqa-id
(4) 配置NQA链路质量探测的时间间隔。
probe interval interval
缺省情况下,NQA链路质量探测时间间隔为100毫秒。
(5) 配置NQA链路质量探测报文的DSCP值。
probe packet-dscp dscp-value
缺省情况下,NQA链路质量探测报文的DSCP值为63。
(6) 配置NQA链路质量探测时发送报文的数量。
probe packet-number number
缺省情况下,NQA链路质量探测时发送报文的数量为100。
(7) 配置NQA链路质量探测报文发送的时间间隔。
probe packet-interval interval
缺省情况下,NQA链路质量探测报文发送的时间间隔为20毫秒。
(8) 配置NQA链路质量探测的超时阈值。
probe packet-timeout packet-timeout
缺省情况下,NQA链路质量探测报文的应答超时时间为3000毫秒。
(9) 配置进行NQA链路质量探测的端口号。
probe port port-number
缺省情况下,未配置进行NQA链路质量探测的端口号。
NQA链路质量探测的端口号必须与RIR服务器(即NQA服务器)配置的UDP监听端口号相同,否则无法正常进行链路质量探测。
在Hub-Spoke组网中,为避免Hub设备因检测多条链路而消耗过多资源,一般将Hub设备配置为RIR服务器,将Spoke设备配置为RIR客户端。
在全局和接口下都可以开启RIR服务器功能。全局开启RIR服务器功能时,设备的所有接口下都会开启RIR服务器功能,即所有接口都可以接收RIR客户端的链路探测质量结果。在接口下开启RIR服务器功能时,该接口可以接收RIR客户端的链路探测质量结果。
· VXLAN组网中仅Tunnel接口可以开启RIR服务器功能,RIR服务器基于Tunnel接口接收RIR客户端同步过来的链路探测质量结果。
· 在同一接口下只能开启RIR客户端功能或开启RIR服务器功能。
· 同时在全局和接口下开启不同的功能模式(RIR客户端功能或RIR服务器功能),接口下的功能模式以接口配置为准。
(1) 进入系统视图。
system-view
(2) 开启RIR服务器功能。请至少选择其中一项进行配置。
¡ 请依次执行以下命令全局开启RIR服务器功能。
rir
server enable
¡ 请依次执行以下命令在VXLAN隧道模式的Tunnel接口视图下开启RIR服务器功能。
interface tunnel tunnel-number mode vxlan
rir role server
缺省情况下,未开启RIR服务器功能。
为保证RIR服务器能够接收到RIR客户端同步的链路探测质量结果,必须在RIR服务器上配置探测信息同步端口号。
RIR服务器与RIR客户端上配置的探测信息同步端口号必须保持一致,否则RIR客户端无法将链路探测质量结果同步到RIR服务器。
(1) 进入系统视图。
system-view
(2) 进入RIR-VXLAN视图。
rir
(3) 配置RIR服务器与RIR客户端的探测信息同步端口号。
probe sync-port port-number
缺省情况下,未配置RIR服务器与RIR客户端的探测信息同步端口号。
Hub设备作为RIR服务器时,同时担任NQA服务器的角色。因此,需要在Hub设备上开启NQA服务器功能,以保证NQA链路通断探测能够正常进行;并配置UDP监听服务,以保证NQA链路质量探测能够正常进行。
Hub设备(即NQA服务器)上配置的监听端口号必须与Spoke设备(即NQA客户端)上配置的NQA链路质量探测目的端口号一致,并且不能与已有的UDP监听服务冲突。
(1) 进入系统视图。
system-view
(2) 开启NQA服务器功能。
nqa server enable
缺省情况下,NQA服务器功能处于关闭状态。
本命令的详细介绍,请参见“网络管理与监控命令参考”中的“NQA”。
(3) 在RIR服务器(即NQA服务器)上配置UDP监听服务。
nqa server udp-echo ip-address port-number [ vpn-instance vpn-instance-name ] [ tos tos ]
本命令的详细介绍,请参见“网络管理与监控命令参考”中的“NQA”。
配置Hub设备的业务流量模板质量策略时必须指定SLA和NQA链路质量探测。本配置用于创建质量策略引用的NQA链路质量探测。Hub设备业务流量模板质量策略引用的NQA链路质量探测可以不配置具体参数;如果配置了参数,该参数不生效。质量策略配置的详细介绍,请参见1.23.3 配置业务流量模板质量策略。
· 如果Hub设备不配置业务流量模板质量策略,可以不创建NQA链路质量探测。
· 配置Hub设备业务流量模板质量策略引用的NQA链路质量探测编号,与Spoke设备相应业务流量模板质量策略引用的NQA链路质量探测编号不一致,不会影响质量策略的执行和应用,但为了方便识别,建议配置成一致。
(1) 进入系统视图。
system-view
(2) 进入RIR-VXLAN视图。
rir
(3) 创建NQA链路质量探测,并进入NQA链路质量探测视图。
nqa nqa-id
设备可以通过BFD方式或Keepalive方式检测SDWAN隧道上TTE连接的连通性。当SDWAN隧道上TTE连接出现故障时,设备可以快速检测到故障,以便及时进行相应地处理,如将流量切换到其他TTE连接。
BFD方式通过在SDWAN隧道的所有TTE连接上,周期性地向TTE连接对端发送BFD控制报文,来检测TTE连接的连通性。如果在检测时间内没有收到对端发送的BFD控制报文,则认为本端与对端的TTE连接不可达。关于BFD功能的详细介绍,请参见“可靠性配置指导”中的“BFD”。
Keepalive方式通过在SDWAN隧道的所有TTE连接上,按照指定的时间间隔向对端发送Keepalive请求报文,来检测TTE连接的连通性:
· 如果本端在发送Keepalive请求报文的时间间隔内收到对端发送的Keepalive应答报文,则认为本端与对端的TTE连接可达。
· 如果本端未在发送Keepalive请求报文的时间间隔内收到对端发送的Keepalive应答报文,则本端会尝试重新发送Keepalive请求报文。若在发送Keepalive请求报文的时间间隔×允许未收到Keepalive应答报文的最大连续次数时间内没有收到Keepalive应答报文,则认为本端与对端的TTE连接不可达,将不再使用该TTE连接转发报文。
在应用智能选路的SDWAN组网中,建议将发送Keepalive请求报文的时间间隔配置为1~5秒。
采用BFD方式时,需要在TTE连接的两端均配置sdwan bfd enable命令。
若隧道接口下配置了sdwan bfd enable命令,则设备基于BFD方式的检测结果判断TTE连接的连通性;否则,设备基于Keepalive方式的检测结果判断TTE连接的连通性。
(1) 进入系统视图。
system-view
(2) 进入UDP封装的IPv4/IPv6 SDWAN隧道模式的Tunnel接口视图。
interface tunnel tunnel-number [ mode sdwan udp [ ipv6 ] ]
(3) 配置使用BFD检测TTE连接的连通性。
sdwan bfd enable [ template template-name ]
缺省情况下,未使用BFD检测TTE连接的连通性,使用Keepalive报文检测TTE连接的连通性。
(1) 进入系统视图。
system-view
(2) 创建模式为UDP封装的SDWAN Tunnel接口,并进入Tunnel接口视图。
interface tunnel tunnel-number mode sdwan udp [ ipv6 ]
在隧道的两端应配置相同的隧道模式,否则会造成报文传输失败。
(3) (可选)配置SDWAN隧道发送Keepalive请求报文的时间间隔和允许未收到Keepalive应答报文的最大连续次数。
sdwan keepalive interval interval [ retry retries ]
缺省情况下,SDWAN隧道发送Keepalive请求报文的时间间隔为10秒,允许未收到Keepalive应答报文的最大连续次数为3次。
本命令的详细介绍,请参见“SDWAN命令参考”中的“SDWAN”。
启动RIR-SDWAN服务后,设备会通过iNQA功能对所有SDWAN隧道进行周期性地链路质量探测,并基于探测结果进行智能选路。
· 在配置本功能前,请完成NTP或者PTP的配置,使得Analyzer和所有Collector时间同步。关于NTP和PTP功能的具体配置,请分别参见“网络管理和监控配置指导”中的“NTP”和“PTP”。
· 在SDWAN组网中的任一SDWAN设备上开启iNQA的Analyzer功能,并配置Analyzer标识。
(1) 进入系统视图。
system-view
(2) 开启Collector功能并进入Collector视图。
inqa collector
缺省情况下,Collector功能处于关闭状态。
本命令的详细介绍,请参见“网络管理和监控命令参考”中的“iNQA”。
(3) 将Collector实例和全局Analyzer关联。
analyzer analyzer-id
缺省情况下,Collector实例未关联Analyzer。
本命令的详细介绍,请参见“网络管理和监控命令参考”中的“iNQA”。
(4) 退回系统视图。
quit
(5) 进入RIR-SDWAN视图。
rir sdwan
(6) 配置链路质量探测的周期。
link-quality probe interval interval
缺省情况下,链路质量探测的周期为60秒。
修改链路质量探测周期时,设备会停止所有SDWAN隧道的质量探测,并以新的周期对所有SDWAN隧道进行链路质量探测。
在VXLAN组网中,Spoke设备的业务流量模板质量策略中需要指定SLA和NQA链路质量探测。通过本配置可以在Spoke设备上创建SLA并配置SLA的各类参数。同一链路质量探测结果与不同SLA的阈值相比较,质量结果可能不同。
(1) 进入系统视图。
system-view
(2) 进入RIR-VXLAN视图。
rir
(3) 创建SLA,并进入SLA视图。
sla sla-id
(4) 配置业务延迟阈值。
delay threshold threshold-value
缺省情况下,业务延迟阈值为10毫秒。
(5) 配置业务抖动阈值。
jitter threshold threshold-value
缺省情况下,业务抖动阈值为100毫秒。
(6) 配置业务丢包率阈值。
packet-loss threshold threshold-value
缺省情况下,业务丢包阈值为100‰。
在VXLAN组网中,配置Hub设备的业务流量模板质量策略时必须指定SLA和NQA链路质量探测。本配置用于创建质量策略引用的SLA。Hub设备业务流量模板质量策略引用的SLA可以不配置具体参数;如果配置了参数,该参数不生效。质量策略配置的详细介绍,请参见“1.23.3 配置业务流量模板质量策略”。
· 如果Hub设备不配置业务流量模板质量策略,可以不创建SLA。
· Hub设备业务流量模板质量策略引用的SLA编号,与Spoke设备相应业务流量模板质量策略引用的SLA不一致时,不会影响质量策略的执行和应用,但为了方便识别,建议配置成一致。
(1) 进入系统视图。
system-view
(2) 进入RIR-VXLAN视图。
rir
(3) 创建SLA,并进入SLA视图。
sla sla-id
在SDWAN组网中,SDWAN设备的业务流量模板质量策略中仅需要指定SLA。通过本配置可以在SDWAN设备上创建SLA并配置SLA的各类参数。
(1) 进入系统视图。
system-view
(2) 进入RIR-SDWAN视图。
rir sdwan
(3) 创建SLA,并进入RIR-SDWAN SLA视图。
sla sla-id
(4) 配置业务延迟阈值。
delay threshold threshold-value
缺省情况下,业务延迟阈值为10毫秒。
(5) 配置业务抖动阈值。
jitter threshold threshold-value
缺省情况下,业务抖动阈值为100毫秒。
(6) 配置业务丢包率阈值。
packet-loss threshold threshold-value
缺省情况下,业务丢包阈值为100‰。
基于VXLAN组网部署智能选路时,链路类型与编号用来在Hub设备与Spoke设备之间唯一确定一条链路。只有为链路配置链路类型与编号,该链路才能被业务流量模板引用。通过本配置,可以配置链路为4G、Internet、MPLS或MSTP链路类型,以标识该链路的网络类型。
基于VXLAN组网部署智能选路时,每个Hub设备与每个Spoke设备间在每个VSI虚接口下(即每个VXLAN中)只能有一条VXLAN隧道。通过在VSI虚接口下配置链路类型和编号,就能在Hub设备与Spoke设备之间唯一标识一条VXLAN隧道。
Hub设备或Spoke设备的同一VSI虚接口下可以有多条VXLAN隧道分别对应多个Spoke设备或Hub设备。这些VXLAN隧道共用相同的链路类型和编号。
目前仅支持在VSI虚接口下配置4G、Internet、MPLS和MSTP四种链路类型,配置时需要注意:
· 链路类型的配置仅提供标识作用,不会对实际报文的封装形式造成影响。
· 一个VSI虚接口只能配置为一种类型的链路。
· 不同的VSI虚接口下同类型链路的编号不能相同。
(1) 进入系统视图。
system-view
(2) 进入VSI虚接口视图。
interface vsi-interface vsi-interface-id
(3) 配置链路类型及编号。
rir link-type { 4g | internet | mpls | mstp | vpdn } index link-index
缺省情况下,未配置VSI虚接口的链路类型和编号。
RIR-SDWAN通过SDWAN隧道使用的传输网络名称区分不同的链路。
(1) 进入系统视图。
system-view
(2) 进入SDWAN隧道模式的Tunnel接口视图。
interface tunnel tunnel-number mode sdwan udp
(3) 配置链路使用的传输网络。
sdwan transport-network network-name id network-id
缺省情况下,未配置SDWAN隧道所属的传输网络。
本命令的详细介绍,请参见“SDWAN命令参考”中的“SDWAN”。
(1) 进入系统视图。
system-view
(2) 进入VXLAN隧道模式或SDWAN隧道模式的Tunnel接口视图。
interface tunnel tunnel-number mode { sdwan udp | vxlan }
(3) 配置Tunnel接口的期望带宽。
bandwidth bandwidth-value
缺省情况下,接口的期望带宽=接口的最大速率÷1000(kbps)。
期望带宽供业务模块使用,不会对接口实际带宽造成影响。
本命令的详细介绍,请参见“三层技术-IP业务命令参考”中的“隧道”。
在RIR-SDWAN服务下,如果用户关心业务流量选路路径的带宽,并希望提高链路带宽利用率,可以通过配置本条命令来指定SDWAN隧道的可用带宽阈值。
执行本命令时如果设备上未启动RIR进程,则系统会同时启动RIR进程,但执行undo rir bandwidth-threshold命令时不会关闭RIR进程。
当开启基于业务优先级的选路功能时,如果配置的基于业务优先级选路的带宽阈值<链路的可用带宽阈值,则本命令不生效。
多次执行本命令,最后一次执行的命令生效。
(1) 进入系统视图。
system-view
(2) 进入SDWAN隧道模式的Tunnel接口视图。
interface tunnel tunnel-number mode sdwan udp
(3) 配置链路的可用带宽阈值。
rir bandwidth-threshold bandwidth-threshold
缺省情况下,链路的可用带宽阈值80%。
通过指定链路所属的物理出接口,设备为业务流量智能选路时,可以同时考虑链路及其所属的物理接口的带宽使用情况。链路所属的物理出接口为发送VXLAN隧道或SDWAN隧道报文的物理出接口。
· 配置智能选路必须指定发送隧道报文的物理出接口,否则选路功能无法正常使用。
· 如果隧道源端地址为某一物理接口的IP地址,则本配置指定的发送隧道报文的物理出接口必须与该物理接口是同一接口。
· 只能为每个VXLAN隧道或SDWAN隧道指定一个物理出接口,可以为不同的VXLAN隧道或SDWAN隧道指定相同的物理出接口。
(1) 进入系统视图。
system-view
(2) 进入VXLAN隧道模式或SDWAN隧道模式的Tunnel接口视图。
interface tunnel tunnel-number mode { sdwan udp | vxlan }
(3) 指定发送隧道报文的物理出接口。
tunnel out-interface interface-type interface-number
缺省情况下,未指定发送隧道报文的物理出接口。
本命令的详细介绍,请参见“三层技术-IP业务命令参考”中的“隧道”。
基于VXLAN部署智能选路时,Spoke设备与主用Hub设备之间的链路称为主用链路,Spoke设备与备用Hub之间的链路称为备用链路。设备为业务流量进行智能选路时,会优先选择符合业务要求的主用链路,然后才会选择符合业务要求的备用链路。
在业务流量模板下基于链路类型和编号,为VSI虚接口配置链路优先级后,该VSI虚接口关联的VXLAN隧道即缺省作为主用链路选路。如果将某个VSI虚接口关联的VXLAN隧道配置为RIR备份隧道,该VXLAN隧道即作为备用链路选路。
如果实际组网需要,用户可以配置Spoke设备与主Hub设备之间的链路为备用链路。
(1) 进入系统视图。
system-view
(2) 进入VXLAN隧道模式的Tunnel接口视图。
interface tunnel tunnel-number mode vxlan
(3) 指定当前隧道为RIR备用隧道。
rir backup
缺省情况下,隧道为RIR主用隧道。
当需要某隧道只转发某些业务流量时,如基于MPLS专线建立的VXLAN隧道只转发视频会议流量,可以通过本命令将该隧道配置为业务流量的专用链路。
设备为业务流量智能选路时,会优先选择该业务流量的专用链路。其中:
· 如果该业务流量只有一条专用链路可用,则选择该链路进行转发。
· 如果该业务流量有多条专用链路可用,则选择一条优先级最高的专用链路进行转发;如果存在多条优先级相同的专用链路,则按照当前业务流量的负载分担模式在多条专用链路上进行负载分担。
· 如果该业务流量的所有专用链路均不可用,则在该业务流量模板下选择最优链路进行转发。
当设备为业务流量选择专用链路时,会同时将专用链路上的其他业务流量调度到其他链路上。如果无法为其他业务流量选择该专用链路外的其他链路,则将其他业务流量报文丢弃,以保证专用链路上流量的稳定性。当该业务流量不再使用专用链路时,设备可以将其他业务流量重新调度到专用链路上。
· 业务流量的专用链路必须已配置在对应业务流量模板下,否则,设备为业务流量选路时不会将该链路作为专用链路。
· 一条隧道只能配置为一条业务流量的专用链路,但可以为同一业务流量配置多条专用链路。
(1) 进入系统视图。
system-view
(2) 进入VXLAN隧道模式的Tunnel接口视图。
interface tunnel tunnel-number mode vxlan
(3) 将隧道配置为指定业务流量的专用链路。
rir dedicated flow flow-id
缺省情况下,隧道不是业务流量的专用链路。
通过配置业务流量模板,可以确定某一类业务的选路策略。
业务流量模板用于定义不同业务流量的链路选择策略。当设备识别出不同业务流量的报文后,将通过Qos策略为不同的业务流量分配Flow ID。设备使用该Flow ID对应的业务流量模板为报文选择符合要求的链路进行转发。
(1) 进入系统视图。
system-view
(2) 进入RIR-VXLAN视图。
rir
(3) 创建业务流量模板,并进入RIR-VXLAN业务流量模板视图。
flow flow-id
(1) 进入系统视图。
system-view
(2) 进入RIR-SDWAN视图。
rir sdwan
(3) 创建业务流量模板,并进入RIR-SDWAN业务流量模板视图。
flow flow-id
本功能用于配置业务流量模板质量策略。其中:
· 基于VXLAN隧道部署智能选路时,业务流量模板的质量策略由SLA和NQA链路质量探测组成。
· 基于SDWAN隧道部署智能选路时,业务流量模板的质量策略由SLA决定。
在VXLAN组网中,Hub设备业务流量模板下配置质量策略后,会按照Spoke设备同步过来的链路探测质量结果执行链路质量检测。如果Hub设备上配置了业务流量模板质量策略,而Spoke设备上没有配置相应的业务流量模板质量策略,那么会因无法同步链路探测质量结果,导致该业务流量模板对应的所有业务流量质量检测不通过。如果没有配置质量策略,则在设备为业务流量选路时认为链路质量符合业务质量要求。
(1) 进入系统视图。
system-view
(2) 进入RIR-VXLAN视图。
rir
(3) 进入RIR-VXLAN业务流量模板视图。
flow flow-id
(4) 配置业务流量模板质量策略。
quality-policy sla sla-id nqa nqa-id
缺省情况下,未配置业务流量模板的质量策略。
为业务流量模板质量策略指定SLA、NQA链路质量探测时,指定SLA、NQA链路质量探测必须已经创建。
(1) 进入系统视图。
system-view
(2) 进入RIR-SDWAN视图。
rir sdwan
(3) 进入RIR-SDWAN业务流量模板视图。
flow flow-id
(4) 配置业务流量模板质量策略。
quality-policy sla sla-id
缺省情况下,未配置业务流量模板的质量策略。
为业务流量模板质量策略指定SLA时,指定SLA必须已经创建。
RIR-SDWAN根据CQI算法评估各链路的质量优劣。本功能用于配置CQI算法中时延、时延抖动和丢包率的权重。
不可以将CQI算法中时延、时延抖动和丢包率的权重值都配置为0。
(1) 进入系统视图。
system-view
(2) 进入RIR-SDWAN视图。
rir sdwan
(3) 进入RIR-SDWAN业务流量模板视图。
flow flow-id
(4) 配置CQI算法中时延、时延抖动和丢包率的权重。
cqi-weight delay delay-weight jitter jitter-weight packet-loss packet-loss-weight
缺省情况下,CQI算法中时延、抖动和丢包率的权重都是1。
设备会实时获取会话预计使用的带宽,并基于获取的带宽进行带宽检测;如果获取不到,则基于会话所属业务流量模板下配置的会话预计使用的带宽进行带宽检测。如果同时满足以下条件,则认为待选链路当前可用带宽符合会话带宽要求,带宽检测通过:
· 待选链路所属物理接口的已使用带宽与会话预计使用的带宽之和小于待选链路所属物理接口总带宽的80%(默认为80%,可配置为100%);
· 待选链路已使用带宽与会话预计使用的带宽之和小于待选链路总带宽的80%(默认为80%,可配置为100%)。
· 仅RIR-SDWAN支持实时获取会话预计使用的带宽,RIR-VXLAN只能在业务流量模板下配置的会话预计使用的带宽。
· 使用逐包模式进行链路负载分担时,必须手工配置会话预计使用的带宽。
(1) 进入系统视图。
system-view
(2) 进入RIR-VXLAN视图。
rir
(3) 进入RIR-VXLAN业务流量模板视图。
flow flow-id
(4) 配置会话预计使用的带宽。
expect-bandwidth bandwidth
缺省情况下,会话预计使用的带宽为0kbps。
(1) 进入系统视图。
system-view
(2) 进入RIR-SDWAN视图。
rir sdwan
(3) 进入RIR-SDWAN业务流量模板视图。
flow flow-id
(4) 配置会话预计使用的带宽。
expect-bandwidth bandwidth
缺省情况下,会话预计使用的带宽为0kbps。
设备为某一业务类型流量选路时,会优先选择优先级较高的链路。
基于VXLAN组网部署智能选路时,可以在业务流量模板下基于链路类型和编号,为VSI虚接口下的链路配置链路优先级。由于每个Hub设备与每个Spoke设备间在每个VSI虚接口下(即每个VXLAN中)只能有一条VXLAN隧道,在业务流量模板下配置链路优先级,就确定了一个Hub设备和一个Spoke设备之间VXLAN隧道的优先级。
基于SDWAN组网部署智能选路时,可以在业务流量模板下基于传输网络名称,为SDWAN隧道配置链路优先级。
在同一业务流量模板下可以为不同的链路配置相同的链路优先级。
(1) 进入系统视图。
system-view
(2) 进入RIR-VXLAN视图。
rir
(3) 进入RIR-VXLAN业务流量模板视图。
flow flow-id
(4) 配置链路优先级。
path link-type { 4g | internet | mpls | mstp | vpdn } index link-index preference preference
缺省情况下,未配置业务流量模板中各类型链路的优先级。
(1) 进入系统视图。
system-view
(2) 进入RIR-SDWAN视图。
rir sdwan
(3) 进入RIR-SDWAN业务流量模板视图。
flow flow-id
(4) 配置链路优先级。
path sdwan transport-network network-name [ group-id group-id ] preference preference
缺省情况下,未配置业务流量模板中各类型链路的优先级。
通过智能选路机制,设备可以为业务流量从对应业务流量模板下的链路中选择最优链路进行转发。如果没有找到最优链路,则按照原路由表项进行普通转发。当为某业务指定的链路均发生故障,且用户不希望该业务流量占用其他链路时,例如,不希望低优先级的视频流量占用业务链路时,可以配置本功能。配置本功能后,如果设备没有为业务流量找到最优链路,则会将该业务流量的报文丢弃。
(1) 进入系统视图。
system-view
(2) 进入RIR视图。
rir
(3) 进入业务流量模板视图。
flow flow-id
(4) 配置设备没有为指定业务流量找到最优链路时丢弃该流量。
no-optimal-link drop
缺省情况下,设备没有为业务流量找到最优链路时,按照路由表项对该流量进行普通转发。
设备在开启优选相同传输网络选路功能后,会优先选择传输网络ID相同的TTE连接进行报文转发。如果传输网络ID相同的TTE连接均不符合选路条件时,再从传输网络ID不同的TTE连接中进行选路。如果有多个传输网络ID相同的TTE链接时,按选路原则分担。
(1) 进入系统视图。
system-view
(2) 进入RIR-SDWAN视图。
rir sdwan
(3) 进入RIR-SDWAN业务流量模板视图。
flow flow-id
(4) 开启优选相同传输网络选路功能。
link-select same-transport-network prefer
缺省情况下,优选相同传输网络选路功能处于关闭状态。
如果用户对业务流量的转发路径特别关心,对链路质量和带宽不关心。可以通过配置本功能来关闭选路时关心带宽功能。
(1) 进入系统视图。
system-view
(2) 进入RIR-SDWAN视图。
rir sdwan
(3) 开启选路时关心带宽功能。
link-bandwidth ignore
缺省情况下,选路时关心带宽。
将RIR全局的链路负载分担模式配置为逐流周期调整模式,并将某一业务的链路负载分担模式配置为逐包模式时,该业务流量会按照逐包模式进行链路负载分担,除该业务流量外的其他业务流量则按照逐流周期调整模式进行链路负载分担。
(1) 进入系统视图。
system-view
(2) 进入RIR-VXLAN视图或RIR-SDWAN视图。请选择其中一项进行配置。
¡ 进入RIR-VXLAN视图。
rir
¡ 进入RIR-SDWAN视图。
rir sdwan
(3) 配置业务链路的负载分担模式为逐流周期调整模式。
load-balance per-session periodic-adjust enable
缺省情况下,业务的链路负载分担模式为逐流加权选路模式。
(4) 配置逐流周期调整链路负载分担模式的调整周期。
load-balance per-session periodic-adjust adjust-interval interval-value
缺省情况下,逐流周期调整链路负载分担模式的调整周期为30秒。
(5) 配置逐流周期调整链路负载分担模式的剩余带宽比差值阈值。
load-balance per-session periodic-adjust threshold upper upper-threshold-value lower lower-threshold-value
缺省情况下,逐流周期调整链路负载分担模式的剩余带宽比差值的上限阈值为50%,下限阈值为20%。
指定的剩余带宽比差值的上限阈值必须大于或等于下限阈值。
· 由于同一会话的报文分布在多条链路上进行传输,报文可能无法按照顺序到达接收端。因此,对报文顺序敏感的业务(TCP等可以保序的协议除外)建议不要配置为逐包转发负载分担模式。
· 开启WAAS(Wide Area Application Services,广域网应用服务)日志报文压缩或解压缩功能时,不能正常进行逐包链路负载分担。有关WAAS日志报文压缩和解压缩功能的详细介绍,请参见“三层技术-IP业务配置指导”中的“WAAS”。
(1) 进入系统视图。
system-view
(2) 进入RIR-VXLAN视图或RIR-SDWAN视图。请选择其中一项进行配置。
¡ 进入RIR-VXLAN视图。
rir
¡ 进入RIR-SDWAN视图。
rir sdwan
(3) 进入RIR-VXLAN业务流量模板视图或RIR-SDWAN业务流量模板视图。
flow flow-id
(4) 配置链路负载分担模式为逐包模式。
load-balance per-packet enable
缺省情况下,业务的链路负载分担模式以RIR全局的链路负载分担模式为准。
为更好地保证高优先级业务优先使用链路资源,智能选路支持基于业务优先级选路。
在基于业务优先级的选路机制中,业务流量模板质量策略中的SLA编号决定了相应业务的优先级。SLA编号越大,优先级越高。如果相应业务流量模板下没有配置质量策略,则认为该业务流量的优先级最低。
开启基于业务优先级的选路功能后,如果链路所属物理接口或隧道接口的带宽使用率高于上限阈值,设备会对该链路上的业务流量进行重新选路。重新选路通过多个调度周期逐步完成。在每个调度周期内,设备会将该链路上当前优先级最低的业务流量调整到其他链路上进行传输,直至该链路上只存在最高优先级的业务流量,或当前优先级最低的业务流量的所有可选链路所属物理接口和隧道接口带宽使用率都低于下限阈值。
开启基于业务优先级的选路功能后,设备支持流量业务优先级抢占功能,保证高业务优先级流量优先选中高优链路。当链路负载了低业务优先级的流量,且链路带宽占用率在业务优先级的上下阈值之间,此时如果有更高业务优先级的流量进入设备进行智能选路,选择该链路时,因为链路带宽超过下限,不符合带宽要求,此时智能选路功能会将此链路上的低优流量调度到其他链路,保证高优流量优先负载到此链路上。
业务优先级抢占功能不支持抢占链路负载分担模式为逐包模式的业务流量。
(1) 进入系统视图。
system-view
(2) 进入RIR-VXLAN视图或RIR-SDWAN视图。请选择其中一项进行配置。
¡ 进入RIR-VXLAN视图。
rir
¡ 进入RIR-SDWAN视图。
rir sdwan
(3) 开启基于业务优先级的选路功能。
flow priority-based-schedule enable
(4) 配置基于业务优先级选路的调度周期。
flow priority-based-schedule schedule-period schedule-period-value
缺省情况下,基于业务优先级选路的调度周期为30秒。
(5) 配置基于业务优先级选路的带宽阈值。
flow priority-based-schedule bandwidth-threshold upper upper-threshold lower lower-threshold
缺省情况下,基于业务优先级选路的带宽上限阈值为90%,下限阈值为20%。
指定的带宽上限阈值必须大于等于下限阈值。
(1) 进入系统视图。
system-view
(2) 进入RIR-VXLAN视图或RIR-SDWAN视图。请选择其中一项进行配置。
¡ 进入RIR-VXLAN视图。
rir
¡ 进入RIR-SDWAN视图。
rir sdwan
(3) 配置选路延迟时间。
link-select delay delay
缺省情况下,选路延迟时间为60秒。
(4) 配置选路抑制周期。
link-select suppress-period period-value
缺省情况下,未配置选路抑制周期,设备执行一次选路后不会进入选路抑制周期。
建议配置选路抑制周期大小为选路延迟时间的整数倍,至少为2倍。
为业务流量分配指定Flow ID,可以关联流量与业务流量模板,流量根据业务流量模板下的选路策略进行选路。
通过配置QoS策略可以为业务流量重标记不同的Flow ID。有关QoS重标记功能的详细介绍,请参见“ACL和QoS配置指导”中的“QoS概述”、“QoS策略”和“重标记”。
(1) 进入系统视图。
system-view
(2) 创建流分类,并进入流分类视图。
traffic classifier classifier-name [ operator { and | or } ]
(3) 定义匹配报文的五元组和DSCP。
if-match [ not ] match-criteria
缺省情况下,未定义匹配数据包的规则。
(1) 进入系统视图。
system-view
(2) 创建流行为,并进入流行为视图。
traffic behavior behavior-name
(3) 配置重标记报文的Flow ID。
remark flow-id flow-id
缺省情况下,未配置重新标记报文的Flow ID动作。
(1) 进入系统视图。
system-view
(2) 创建QoS策略,并进入策略视图。
qos policy policy-name
(3) 在策略中为类指定采用的流行为。
classifier classifier-name behavior behavior-name
缺省情况下,没有为类指定流行为。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 在接口的入方向应用QoS策略。
qos apply policy policy-name inbound
缺省情况下,未应用QoS策略。
组建协同选路设备组的所有设备必须具备独立的智能选路能力,并且使用相同的业务定义策略,即可以将同类业务流量标识成相同的Flow ID。
本/对端设备间需要建立专用转发路径,以防止本端设备转发给对端设备的报文被中间设备转发给其他设备。专用转发路径可以是直连路由或GRE隧道:
· 如果本/对端设备直连,则可以通过配置多个物理接口或者子接口,分别为本/对端设备间公网或每个VPN实例的报文生成一条直连路由。有关子接口配置的详细介绍,请参见“接口管理配置指导”中的“以太网接口”。
· 如果本/对端设备非直连,则需要手动为本/对端设备间公网或每个VPN实例的报文分别建立一条GRE隧道。有关GRE隧道配置的详细介绍,请参见“三层技术-IP业务配置指导”中的“GRE”。
由于业务流量标识仅在设备选路流程中使用,不会被报文携带出设备。所以,需要在本/对端设备互连的接口上应用QoS策略,为接收到的报文重新添加业务流量标识。有关使用QoS策略重标记流量标识的详细介绍,请参见“1.28 配置QoS策略重标记Flow ID”。
本端设备只能发现和选择已添加到协同选路组中的对端设备链路,并且在选路过程中会将本端设备链路的目的地作为同一协同链路组中的对端设备链路的目的地。
同一协同选路设备组到不同设备(Hub设备或Spoke设备)或其他协同选路设备组的协同链路组编号不能相同。
不同协同选路设备组到同一设备(Hub设备或Spoke设备)或同一协同选路设备组的协同链路组编号可以相同,但为了组网清晰,建议配置成不同。
(1) 进入系统视图。
system-view
(2) 进入VXLAN隧道模式的Tunnel接口视图。
interface tunnel tunnel-number mode vxlan
(3) 配置VXLAN隧道属于指定RIR协同链路组。
rir collaboration-link-group group-id
缺省情况下,VXLAN隧道属于RIR协同链路组0。
协同选路设备组的所有设备需要两两建立选路协同关系以同步链路数据。建立选路协同关系后,本/对端设备中IP地址较小的设备会作为客户端,向另一设备发起建立TCP连接。通过该TCP连接,本端设备可以将本设备上符合业务要求的链路配置数据和链路状态数据发送给对端设备,发送的数据不包括从同一协同选路设备组内的其他设备同步过来的链路数据。
建立选路协同关系时指定的本端和对端地址必须同时属于公网或相同的VPN实例。
同一协同选路本/对端设备间只可以建立一条用于同步链路数据的有效TCP连接。
(1) 进入系统视图。
system-view
(2) 进入RIR-VXLAN视图。
rir
(3) 配置本端设备与对端设备建立选路协同关系。
collaboration peer [ vpn-instance vpn-instance-name ] peer-ipv4-address local local-ipv4-address sync-port port-number
缺省情况下,本端设备未与对端设备建立选路协同关系。
本端设备与对端设备建立选路协同关系后,可以同步链路信息,但仍无法选择对端设备链路进行数据转发。在本端设备上配置对端设备在公网或某个VPN实例的报文重定向地址后,本端设备在选择对端设备的链路转发公网或某个VPN实例的数据报文时,会根据对端设备在公网或该VPN实例内的重定向地址,查找公网或该VPN实例的路由表,将报文通过专用转发路径转发到对端设备。
(1) 进入系统视图。
system-view
(2) 进入RIR-VXLAN视图。
rir
(3) 配置协同选路对端设备的报文重定向地址。
collaboration peer [ vpn-instance vpn-instance-name ] peer-ipv4-address redirect [ vpn-instance redirect-vpn-instance-name ] redirect-ipv4-address
缺省情况下,未配置协同选路对端设备的报文重定向地址。
其中,vpn-instance vpn-instance-name用于指定与对端设备建立的选路协同关系所属的VPN实例;vpn-instance redirect-vpn-instance-name用于配置本端设备在选择对端设备的链路转发数据报文时,将指定VPN实例的报文重定向到redirect-ipv4-address。
RBM与RIR协同选路时,用户可以通过配置本功能,在协同选路的设备之间建立一条单独为RIR使用的透传通道。当报文到达设备进行选路时,如果需要透传报文,则可以将报文通过透传通道透传到对端设备上。
本功能必须配置在协同选路的两端设备上相同接口下。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 开启接口透传功能。
rir relay enable
缺省情况下,接口透传功能处于关闭状态。
组成协同选路组的设备必须位于同一个站点内。当多台设备组成协同选路设备组进行协同选路时,设备组内的所有设备需要两两建立选路协同关系。建立选路协同关系的两台设备互为本端和对端设备,均需要配置本命令。
当本端设备与对端设备都配置本命令后,IP地址较小的设备会作为客户端,使用本命令配置的端口号,向另一设备发起TCP连接建立请求,该TCP连接即协同通道。通过该协同通道,对端设备可以将本设备上指定隧道口下的TTE连接信息和RIR的链路质量信息发送给本端设备。
本端设备与对端设备上配置的同步链路数据使用的TCP端口号必须相同。本端设备与不同的对端设备同步链路数据使用的TCP端口号可以相同,也可以不同。
多次执行本命令时,若配置的本端IP地址、对端的设备ID和对端设备的IP地址均相同,则最后一次执行的命令生效。
本端设备与对端设备之间只能配置一条协同通道,并且指定的本端设备与对端设备的IP地址类型必须要相同。
(1) 进入系统视图。
system-view
sdwan collaboration peer device-id device-id [ vpn-instance vpn-instance-name ] { peer-ipv4-address | peer-ipv6-address } local { local-ipv4-address | local-ipv6-address } [ sync-port port-number ]
缺省情况下,本端设备未与对端设备建立选路协同关系。
配置将本端SDWAN扩展隧道接口与对端的SDWAN隧道接口进行关联后,若本端选路的结果为通过对端设备的TTE连接进行报文转发,则数据报文需要在本地完成SDWAN扩展封装,通过TTE连接所在隧道接口关联的SDWAN扩展隧道接口转发到对端设备上。
(1) 进入系统视图。
system-view
(2) 进入GRE封装的SDWAN扩展隧道视图。
interface tunnel tunnel-number mode sdwan-ex gre [ ipv6 ]
(3) 配置将本端SDWAN扩展隧道接口与对端的SDWAN隧道接口进行关联。
sdwan collaboration-map peer-device-id device-id peer-interface-id interface-id
缺省情况下,SDWAN扩展隧道接口和SDWAN隧道接口未进行关联。
配置本命令后,本端SDWAN隧道接口下的TTE连接信息和RIR的链路质量信息会通过协同通道同步到指定的对端设备。
(1) 进入系统视图。
system-view
(2) 进入SDWAN隧道模式的Tunnel接口视图。
interface tunnel tunnel-number mode sdwan udp
(3) 配置将本端SDWAN隧道接口下的TTE连接信息和RIR的链路质量信息通过协同通道同步到对端设备。
sdwan collaboration peer-device-id device-id
缺省情况下,本端SDWAN隧道接口下的TTE连接信息和RIR的链路质量信息不会通过协同通道同步到对端设备。
在协同选路组网中,为了保证同一业务流量由同一台协同选路设备进行转发,引入了Owner的概念。Owner由业务流量的五元组计算得出,同一业务流量的五元组一致,计算出的Owner也一致,保障了同一业务流量由同一台Owner设备进行转发。对于直接发送到作为非Owner的协同选路设备上的业务流量,需要通过配置本命令,将业务流量重定向到作为Owner的协同选路设备上进行处理。
(1) 进入系统视图。
system-view
(2) 配置RIR数据报文的重定向地址。
rir redirect peer peer-ipv4-address interface interface-type interface-number
缺省情况下,未配置RIR数据报文的重定向地址,即RIR数据报文不会重定向到对端设备。
在协同选路组网中,同一业务流量由同一台Owner设备进行转发,需要在业务流量接入建立协同选路关系的设备的接口上配置相同的接口协同组。对于直接发送到作为非Owner的协同选路设备上的业务流量,会携带接口协同组ID并重定向到作为Owner的协同选路设备上。Owner设备按照业务流量的入接口为本端配置相同接口协同组ID的接口对报文进行处理。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置接口的协同组ID。
rir recirect group group-id
缺省情况下,未配置接口的协同组ID。
(1) 进入系统视图。
system-view
(2) 配置协同通道断开后,通过该协同通道同步的TTE连接的老化时间。
sdwan collaboration tte-connection aging aging-time
缺省情况下,协同通道断开连接后,通过该协同通道同步的TTE连接的老化时间为180秒。
隧道的BFD检测功能用来避免CPE设备无法感知或无法及时感知SDWAN扩展隧道的故障,导致报文转发失败。隧道两端的CPE设备上均需要开启该功能。CPE设备周期性地通过SDWAN扩展隧道向协同选路对端设备发送BFD控制报文。如果在5秒内未接收到对端发送的BFD控制报文,则将隧道状态置为Defect,隧道接口状态仍为Up。SDWAN扩展隧道故障排除后,隧道状态将自动恢复为Up。
(1) 进入系统视图。
system-view
(2) 进入GRE封装的SDWAN扩展隧道视图。
interface tunnel tunnel-number mode sdwan-ex gre [ ipv6 ]
(3) 开启隧道的BFD检测功能。
tunnel bfd enable [ template template-name ]
缺省情况下,隧道的BFD检测功能处于关闭状态。
除链路质量探测外,RIR-SDWAN还支持应用质量探测,对通过SDWAN隧道传输的指定业务流量中符合应用质量探测报文特征的应用流进行质量探测。
开启业务流量的应用质量探测后,设备会通过iNQA功能周期性地对设备间指定报文特征的应用流进行探测,以计算该应用流的质量。应用质量探测结果可以用来对业务中指定报文特征的应用进行分析,不影响选路。
· 进行应用质量探测时,不支持逐包链路负载分担模式。
· 每个实例只可以探测业务流量中一种报文特征的应用的质量。如果需要探测多种报文特征的应用的质量,需要创建多个应用探测实例。
· 为了探测两个SDWAN设备间通过SDWAN隧道传输的某个业务流量中指定报文特征的应用流的质量,需要同时在两个SDWAN设备上创建名称相同的应用质量探测实例。该实例下配置的报文特征和质量探测周期必须相同,并配置相反的应用质量探测的设备角色(源端设备或目的端设备)。
· 如果指定业务流量中不存在符合应用质量探测报文特征的应用流,设备不进行该业务流量的应用质量探测。
· 必须先关闭该实例下所有业务流量的应用质量探测,才能修改应用质量探测的探测周期、对端设备和报文特征。
开启指定业务流量的应用质量探测前,请确保设备上已创建相应的业务流量模板,否则该业务流量的应用质量探测不生效。
(1) 进入系统视图。
system-view
(2) 进入RIR-SDWAN视图。
rir sdwan
(3) 进入应用质量探测视图。
application-quality
(4) 创建应用质量探测的实例,并进入应用质量探测实例视图。
instance instance-name
(5) 配置应用质量探测的周期。
probe interval interval
缺省情况下,应用质量探测的周期为60秒。
(6) 配置应用质量探测的对端设备
peer { source | destination } site-id site-id device-id device-id
缺省情况下,未配置应用质量探测的对端设备。
(7) 配置应用质量探测的报文特征。
signature { source-ip { any | src-ip-address [ src-mask-length ] } destination-ip { any | dest-ip-address [ dest-mask-length ] } | source-ipv6 { any | src-ipv6-address [ src-prefix-length ] } destination-ipv6 { any | dest-ipv6-address [ dest-prefix-length ] } }
缺省情况下,未配置应用业务质量探测时用户关心的报文特征。
(8) 开启指定业务流量的应用质量探测。
probe flow flow-id
缺省情况下,所有业务流量的应用质量探测均处于关闭状态。
在一个实例下,设备可以同时开启多条业务流量的应用质量探测。
不同应用质量探测实例下不能开启同一业务流量的应用质量探测。
RIR日志记录了智能选路过程中发生的选路调度事件、质量变化事件、带宽变化事件、配置变化事件和链路故障事件,以便网络管理员根据记录的事件分析、维护和调整智能选路网络。
RIR日志通过Flow日志方式进行输出。开启RIR日志功能后,必须配置Flow日志的相关功能,才能输出RIR日志信息。
有关Flow日志的详细介绍,请参见“网络管理和监控配置指导”中的“Flow日志”。
Flow日志能够按照会话源IP进行负载分担,一条Flow日志仅仅会发送到用户配置的所有日志主机中的某一台特定的日志主机。然而,RIR日志不支持通过此方式进行输出。
(1) 进入系统视图。
system-view
(2) 进入RIR-VXLAN视图或RIR-SDWAN视图。请选择其中一项进行配置。
¡ 进入RIR-VXLAN视图。
rir
¡ 进入RIR-SDWAN视图。
rir sdwan
(3) 开启RIR日志功能。
log enable
缺省情况下,RIR日志功能属于关闭状态。
开启隧道基于Flow ID的流量速率统计功能后,设备将会基于Flow ID对隧道流量速率进行统计。
(1) 进入系统视图。
system-view
(2) 开启隧道基于Flow ID的流量速率统计功能。
tunnel flow-statistics enable
缺省情况下,隧道基于Flow ID的流量速率统计功能处于关闭状态。
(3) (可选)配置隧道基于Flow ID的流量速率统计时间间隔。
tunnel flow-statistics interval interval
缺省情况下,隧道基于Flow ID的流量速率统计时间间隔为300秒。
当RIR的某条业务流量使能了逐包负载分担功能后,同一会话的报文将分布在不同多条链路上进行传输,并且WAAS会根据报文发送顺序对报文编排序号(例如1、2……n)。接收端WAAS会在将接收的报文按序号排序后转发。若出现较小序号的报文未接收到的情况,接收端WAAS会缓存已收到的报文,待较小序号的报文到达后再按照序号依次发送;如果接收端WAAS在报文保序的超时时间内未收到较小序号的报文,则接收端WAAS会直接发送缓存的数据包,有关WAAS的详细介绍,请参见“三层技术-IP业务配置指导”中的“WAAS”。
本功能仅适用于WAAS模块的报文保序功能。
(1) 进入系统视图。
system-view
(2) 配置逐包负载分担报文保序的超时时间。
load-balance per-packet reorder timeout timeout
缺省情况下,逐包负载分担报文保序的超时时间为100毫秒。
设备通过智能选路功能进行选路时,如果通过本功能开启了RIR冷备功能,用户可以将传输相同业务流量的隧道配置为同一个链路组,并且指定隧道为主用或备用链路,从而提升网络的可靠性。
对于同一个链路组,只有当所有主用链路全部不可用时,设备才会启用备用链路转发流量,保障业务不中断。当链路组内存在可用的主用链路时,备用链路将保持关闭状态,此时流量无法通过备用链路转发。
(1) 进入系统视图。
system-view
(2) 创建RIR链路组,并进入RIR链路组视图。如果RIR链路组已存在,则直接进入RIR链路组视图。
rir link-group name
缺省情况下,未配置RIR链路组。
(3) 配置RIR链路组的成员隧道接口。
link-member interface tunnel tunnel-number [ standby ]
缺省情况下,未配置链路组的成员隧道接口。
指定隧道接口必须是已存在的SDWAN隧道接口,并且同一个SDWAN隧道不能被配置为多个链路组的成员。
多次执行本命令,可以向RIR链路组添加多个成员隧道接口,同一个链路组最多只能配置32个成员隧道接口。
(4) 返回系统视图。
quit
(5) 开启RIR链路冷备功能。
rir link-backup enable
缺省情况下,RIR链路冷备功能处于关闭状态。
智能选路只能对设备出方向的流量进行调度,无法对收到的流量进行调度。在两台SDWAN设备之间如果存在多个可选链路,则流量会在多个链路上进行负载分担,同一会话的往返链路可能会不同。
在负载分担的场景下,为了保证数据流的来回路径一致,可以开启SDWAN隧道的调度跟随功能,保证隧道的两端设备为同一会话选择相同的转发链路。配置本功能后,本设备作为从选路设备,通过SDWAN隧道向本设备发送流量的设备作为主选路设备。从选路设备会为反向流量选择和正向流量相同的链路。
本功能支持在负载分担场景和协同选路场景下配置,关于各场景下的流量调度跟随功能工作机制和注意事项的详细介绍,请参见智能选路命令手册。
在设备上执行本命令开启SDWAN隧道的流量调度跟随功能时,还需要同时开启快转负载分担功能(系统视图下执行ip fast-forwarding load-sharing命令),否则SDWAN隧道的流量调度跟随功能不生效。
设备支持开启全局所有SDWAN模式Tunnel接口的流量调度跟随功能,也支持开启SDWAN隧道的流量调度跟随功能。只要全局或接口的流量调度跟随功能开启,指定接口的调度跟随功能就会开启;只有全局和接口的调度跟随功能全部关闭时,接口的调度跟随功能才会关闭。
(1) 进入系统视图。
system-view
(2) 进入SDWAN隧道模式的Tunnel接口视图。
interface tunnel tunnel-number mode sdwan udp
(3) 开启SDWAN隧道的流量调度跟随功能。
rir symmetric enable
缺省情况下,SDWAN隧道的流量调度跟随功能处于关闭状态。
(1) 进入系统视图。
system-view
(2) 进入RIR-SDWAN视图。
rir sdwan
(3) 开启全局所有SDWAN隧道的流量调度跟随功能。
link-select symmetric enable
缺省情况下,全局所有SDWAN隧道的流量调度跟随功能处于关闭状态。
在任意视图下执行display命令可以显示智能选路配置后的运行情况,通过查看显示信息验证配置的效果。
在用户视图下执行reset命令可以清除流量速率统计信息。
表1-3 智能选路显示和维护
操作 |
命令 |
显示应用质量探测信息 |
display rir sdwan application-quality instance instance-name [ flow-id flow-id ] |
显示TTE连接的带宽信息 |
display rir sdwan bandwidth tte [ peer peer-site-id peer-device-id peer-interface-id [ local local-site-id local-device-id local-interface-id ] ] |
显示指定SDWAN隧道接口及其对应物理出接口的带宽信息 |
display rir sdwan bandwidth tunnel tunnel-number |
显示指定业务流量的选路策略相关信息 |
display rir sdwan flow flow-id |
显示SDWAN隧道的链路质量探测信息 |
display rir sdwan link-quality [ tunnel tunnel-number ] |
显示指定Tunnel接口的业务会话统计信息 |
(独立运行模式) display rir sdwan session-statistics tunnel interface-number [ flow flow-id ] (IRF模式) display rir sdwan session-statistics tunnel interface-number [ flow flow-id ] [ slot slot-number ] |
显示隧道的流量速率统计信息 |
display tunnel flow-statistics [ flow flow-id [ interface tunnel number ] ] [ tte-connection ] |
清除隧道基于Flow ID的流量速率统计信息 |
reset tunnel flow-statistics [ flow flow-id [ interface tunnel number ] ] |
在图1-15所示的Hub-Spoke组网中,Router A和Router B作为Hub侧,Router C作为Spoke侧,部署在VXLAN网络上。通过配置智能选路,流量从Spoke侧流向Hub侧或者从Hub侧流向Spoke侧时,按照为其定义的选路策略进行选路。具体组网需求如下:
· 在Transport network内配置OSPF协议,使Router A、Router B和Router C之间路由可达。
· 基于Transport network配置VXLAN,Router A、Router B和Router C为VTEP设备,Router A和Router C之间、Router B和Router C之间分别配置两条VXLAN隧道。
· Router A、Router B和Router C分别创建VSI虚接口VSI-interface 1、VSI-interface 2。通过配置VSI实例与VSI虚接口关联,实现在独立的Hub-Spoke组网中,VSI虚接口与VXLAN隧道一一对应。
· 配置Router A、Router B和Router C为分布式VXLAN IP网关,并在Router A、Router B、 Router C、Router E、Router F和Router G配置BGP协议,使Router A、Router B和Router C上分别存在两条及以上到对应Hub侧或Spoke侧的、以VSI虚接口为出接口的等价路由。
选路策略定义如下:
· 配置业务流量模板1和业务流量模板2,指导DSCP为1和DSCP为2的报文选择最优的VXLAN隧道进行传输。
· Hub设备为业务流量选路时不进行质量检测,Spoke设备为业务流量选路时进行质量检测。
· Hub设备与Spoke设备的链路负载分担模式均为逐流加权选路模式(缺省模式,无需配置)。
· Hub设备分别为业务流量配置两条优先级相同的链路,当两条链路都符合业务要求时会实现负载分担;Spoke设备分别为业务流量配置两条优先级不同的链路,优先为业务流量选择优先级较高的链路。
· 发送VXLAN隧道报文的物理接口带宽均符合业务流量带宽要求。
设备 |
接口 |
IP地址 |
设备 |
接口 |
IP地址 |
Router A |
GE1/0/1 |
1.1.1.1/24 |
Router D |
GE1/0/1 |
1.1.1.2/24 |
|
GE1/0/2 |
2.1.1.1/24 |
|
GE1/0/2 |
2.1.1.2/24 |
|
GE1/0/3 |
30.1.1.1/24 |
|
GE1/0/3 |
3.1.1.2/24 |
Router B |
GE1/0/3 |
3.1.1.1/24 |
|
GE1/0/4 |
4.1.1.2/24 |
|
GE1/0/4 |
4.1.1.1/24 |
|
GE1/0/5 |
5.1.1.2/24 |
|
GE1/0/5 |
50.1.1.1/24 |
|
GE1/0/6 |
6.1.1.2/24 |
Router C |
GE1/0/5 |
5.1.1.1/24 |
Router E |
GE1/0/3 |
30.1.1.2/24 |
|
GE1/0/6 |
6.1.1.1/24 |
Router F |
GE1/0/5 |
50.1.1.2/24 |
|
GE1/0/1 |
10.1.1.1/24 |
Router G |
GE1/0/1 |
10.1.1.2/24 |
按照组网图配置各接口的IP地址和子网掩码。
(1) 在Transport network内配置OSPF协议
¡ 配置Router A
<RouterA> system-view
[RouterA] ospf 1
[RouterA-ospf-1] area 0
[RouterA-ospf-1-area-0.0.0.0] network 1.1.1.0 0.0.0.255
[RouterA-ospf-1-area-0.0.0.0] quit
[RouterA-ospf-1] quit
[RouterA] ospf 2
[RouterA-ospf-2] area 0
[RouterA-ospf-2-area-0.0.0.0] network 2.1.1.0 0.0.0.255
[RouterA-ospf-2-area-0.0.0.0] quit
[RouterA-ospf-2] quit
¡ 配置Router B
<RouterB> system-view
[RouterB] ospf 1
[RouterB-ospf-1] area 0
[RouterB-ospf-1-area-0.0.0.0] network 3.1.1.0 0.0.0.255
[RouterB-ospf-1-area-0.0.0.0] quit
[RouterB-ospf-1] quit
[RouterB] ospf 2
[RouterB-ospf-2] area 0
[RouterB-ospf-2-area-0.0.0.0] network 4.1.1.0 0.0.0.255
[RouterB-ospf-2-area-0.0.0.0] quit
[RouterB-ospf-2] quit
¡ 配置Router C
<RouterC> system-view
[RouterC] ospf 1
[RouterC-ospf-1] area 0
[RouterC-ospf-1-area-0.0.0.0] network 5.1.1.0 0.0.0.255
[RouterC-ospf-1-area-0.0.0.0] quit
[RouterC-ospf-1] quit
[RouterC] ospf 2
[RouterC-ospf-2] area 0
[RouterC-ospf-2-area-0.0.0.0] network 6.1.1.0 0.0.0.255
[RouterC-ospf-2-area-0.0.0.0] quit
[RouterC-ospf-2] quit
¡ 配置Router D
<RouterD> system-view
[RouterD] ospf 1
[RouterD-ospf-1] area 0
[RouterD-ospf-1-area-0.0.0.0] network 1.1.1.0 0.0.0.255
[RouterD-ospf-1-area-0.0.0.0] network 3.1.1.0 0.0.0.255
[RouterD-ospf-1-area-0.0.0.0] network 5.1.1.0 0.0.0.255
[RouterD-ospf-1-area-0.0.0.0] quit
[RouterD-ospf-1] quit
[RouterD] ospf 2
[RouterD-ospf-2] area 0
[RouterD-ospf-2-area-0.0.0.0] network 2.1.1.0 0.0.0.255
[RouterD-ospf-2-area-0.0.0.0] network 4.1.1.0 0.0.0.255
[RouterD-ospf-2-area-0.0.0.0] network 6.1.1.0 0.0.0.255
[RouterD-ospf-2-area-0.0.0.0] quit
[RouterD-ospf-2] quit
(2) 基于Transport network配置VXLAN
¡ 配置Router A
# 开启L2VPN能力。
[RouterA] l2vpn enable
# 创建VSI实例vpna和VXLAN 90。
[RouterA] vsi vpna
[RouterA-vsi-vpna] vxlan 90
[RouterA-vsi-vpna-vxlan-90] quit
[RouterA-vsi-vpna] quit
# 创建VSI实例vpnb和VXLAN 70。
[RouterA] vsi vpnb
[RouterA-vsi-vpnb] vxlan 70
[RouterA-vsi-vpnb-vxlan-70] quit
[RouterA-vsi-vpnb] quit
# 在Router A和Router C之间建立VXLAN隧道Tunnel 1,指定隧道的源端地址为接口GigabitEthernet1/0/1的地址1.1.1.1,目的端地址为Router C上接口GigabitEthernet1/0/5的地址5.1.1.1。
[RouterA] interface tunnel 1 mode vxlan
[RouterA-Tunnel1] source 1.1.1.1
[RouterA-Tunnel1] destination 5.1.1.1
[RouterA-Tunnel1] quit
# 在Router A和Router C之间建立VXLAN隧道Tunnel 2,指定隧道的源端地址为接口GigabitEthernet1/0/2的地址2.1.1.1,目的端地址为Router C上接口GigabitEthernet1/0/6的地址6.1.1.1。
[RouterA] interface tunnel 2 mode vxlan
[RouterA-Tunnel2] source 2.1.1.1
[RouterA-Tunnel2] destination 6.1.1.1
[RouterA-Tunnel2] quit
# 配置Tunnel 1与VXLAN 90关联。
[RouterA] vsi vpna
[RouterA-vsi-vpna] vxlan 90
[RouterA-vsi-vpna-vxlan-90] tunnel 1
[RouterA-vsi-vpna-vxlan-90] quit
[RouterA-vsi-vpna] quit
# 配置Tunnel 2与VXLAN 70关联。
[RouterA] vsi vpnb
[RouterA-vsi-vpnb] vxlan 70
[RouterA-vsi-vpnb-vxlan-70] tunnel 2
[RouterA-vsi-vpnb-vxlan-70] quit
[RouterA-vsi-vpnb] quit
# 创建VSI虚接口VSI-interface 1,并为其配置IP地址;指定该VSI虚接口为分布式本地网关接口,并开启本地代理ARP功能。
[RouterA] interface vsi-interface 1
[RouterA-Vsi-interface1] ip address 192.168.1.1 255.255.255.0
[RouterA-Vsi-interface1] distributed-gateway local
[RouterA-Vsi-interface1] local-proxy-arp enable
[RouterA-Vsi-interface1] quit
# 创建VSI虚接口VSI-interface 2,并为其配置IP地址;指定该VSI虚接口为分布式本地网关接口,并开启本地代理ARP功能。
[RouterA] interface vsi-interface 2
[RouterA-Vsi-interface2] ip address 172.168.1.1 255.255.255.0
[RouterA-Vsi-interface2] distributed-gateway local
[RouterA-Vsi-interface2] local-proxy-arp enable
[RouterA-Vsi-interface2] quit
# 配置VXLAN 90所在的VSI实例和接口VSI-interface 1关联,并配置该VSI实例的子网网段为192.168.1.0/24。
[RouterA] vsi vpna
[RouterA-vsi-vpna] gateway vsi-interface 1
[RouterA-vsi-vpna] gateway subnet 192.168.1.0 0.0.0.255
[RouterA-vsi-vpna] quit
# 配置VXLAN 70所在的VSI实例和接口VSI-interface 2关联,并配置该VSI实例的子网网段为172.168.1.0/24。
[RouterA] vsi vpnb
[RouterA-vsi-vpnb] gateway vsi-interface 2
[RouterA-vsi-vpnb] gateway subnet 172.168.1.0 0.0.0.255
[RouterA-vsi-vpnb] quit
¡ 配置Router B
# 开启L2VPN能力。
[RouterB] l2vpn enable
# 创建VSI实例vpna和VXLAN 90。
[RouterB] vsi vpna
[RouterB-vsi-vpna] vxlan 90
[RouterB-vsi-vpna-vxlan-90] quit
[RouterB-vsi-vpna] quit
# 创建VSI实例vpnb和VXLAN 70。
[RouterB] vsi vpnb
[RouterB-vsi-vpnb] vxlan 70
[RouterB-vsi-vpnb-vxlan-70] quit
[RouterB-vsi-vpnb] quit
# 在Router B和Router C之间建立VXLAN隧道Tunnel 3,指定隧道的源端地址为接口GigabitEthernet1/0/3的地址3.1.1.1,目的端地址为Router C上接口GigabitEthernet1/0/5的地址5.1.1.1。
[RouterB] interface tunnel 3 mode vxlan
[RouterB-Tunnel3] source 3.1.1.1
[RouterB-Tunnel3] destination 5.1.1.1
[RouterB-Tunnel3] quit
# 在Router B和Router C之间建立VXLAN隧道Tunnel 4,指定隧道的源端地址为接口GigabitEthernet1/0/4的地址4.1.1.1,目的端地址为Router C上接口GigabitEthernet1/0/6的地址6.1.1.1。
[RouterB] interface tunnel 4 mode vxlan
[RouterB-Tunnel4] source 4.1.1.1
[RouterB-Tunnel4] destination 6.1.1.1
[RouterB-Tunnel4] quit
# 配置Tunnel 3与VXLAN 90关联。
[RouterB] vsi vpna
[RouterB-vsi-vpna] vxlan 90
[RouterB-vsi-vpna-vxlan-90] tunnel 3
[RouterB-vsi-vpna-vxlan-90] quit
[RouterB-vsi-vpna] quit
# 配置Tunnel 4与VXLAN 70关联。
[RouterB] vsi vpnb
[RouterB-vsi-vpnb] vxlan 70
[RouterB-vsi-vpnb-vxlan-70] tunnel 4
[RouterB-vsi-vpnb-vxlan-70] quit
[RouterB-vsi-vpnb] quit
# 创建VSI虚接口VSI-interface 1,并为其配置IP地址;指定该VSI虚接口为分布式本地网关接口,并开启本地代理ARP功能。
[RouterB] interface vsi-interface 1
[RouterB-Vsi-interface1] ip address 192.168.1.2 255.255.255.0
[RouterB-Vsi-interface1] distributed-gateway local
[RouterB-Vsi-interface1] local-proxy-arp enable
[RouterB-Vsi-interface1] quit
# 创建VSI虚接口VSI-interface 2,并为其配置IP地址;指定该VSI虚接口为分布式本地网关接口,并开启本地代理ARP功能。
[RouterB] interface vsi-interface 2
[RouterB-Vsi-interface2] ip address 172.168.1.2 255.255.255.0
[RouterB-Vsi-interface2] distributed-gateway local
[RouterB-Vsi-interface2] local-proxy-arp enable
[RouterB-Vsi-interface2] quit
# 配置VXLAN 90所在的VSI实例和接口VSI-interface 1关联,并配置该VSI实例的子网网段为192.168.1.0/24。
[RouterB] vsi vpna
[RouterB-vsi-vpna] gateway vsi-interface 1
[RouterB-vsi-vpna] gateway subnet 192.168.1.0 0.0.0.255
[RouterB-vsi-vpna] quit
# 配置VXLAN 70所在的VSI实例和接口VSI-interface 2关联,并配置该VSI实例的子网网段为172.168.1.0/24。
[RouterB] vsi vpnb
[RouterB-vsi-vpnb] gateway vsi-interface 2
[RouterB-vsi-vpnb] gateway subnet 172.168.1.0 0.0.0.255
[RouterB-vsi-vpnb] quit
¡ 配置Router C
# 开启L2VPN能力。
[RouterC] l2vpn enable
# 创建VSI实例vpna和VXLAN 90。
[RouterC] vsi vpna
[RouterC-vsi-vpna] vxlan 90
[RouterC-vsi-vpna-vxlan-90] quit
[RouterC-vsi-vpna] quit
# 创建VSI实例vpnb和VXLAN 70。
[RouterC] vsi vpnb
[RouterC-vsi-vpnb] vxlan 70
[RouterC-vsi-vpnb-vxlan-70] quit
[RouterC-vsi-vpnb] quit
# 在Router C和Router A之间建立VXLAN隧道Tunnel 1,指定隧道的源端地址为接口GigabitEthernet1/0/5的地址5.1.1.1,目的端地址为Router A上接口GigabitEthernet1/0/1的地址1.1.1.1。
[RouterC] interface tunnel 1 mode vxlan
[RouterC-Tunnel1] source 5.1.1.1
[RouterC-Tunnel1] destination 1.1.1.1
[RouterC-Tunnel1] quit
# 在Router C和Router A之间建立VXLAN隧道Tunnel 2,指定隧道的源端地址为接口GigabitEthernet1/0/6的地址6.1.1.1,目的端地址为Router A上接口GigabitEthernet1/0/2的地址2.1.1.1。
[RouterC] interface tunnel 2 mode vxlan
[RouterC-Tunnel2] source 6.1.1.1
[RouterC-Tunnel2] destination 2.1.1.1
[RouterC-Tunnel2] quit
# 在Router C和Router B之间建立VXLAN隧道Tunnel 3,指定隧道的源端地址为接口GigabitEthernet1/0/5的地址5.1.1.1,目的端地址为Router B上接口GigabitEthernet1/0/3的地址3.1.1.1。
[RouterC] interface tunnel 3 mode vxlan
[RouterC-Tunnel3] source 5.1.1.1
[RouterC-Tunnel3] destination 3.1.1.1
[RouterC-Tunnel3] quit
# 在Router C和Router B之间建立VXLAN隧道Tunnel 4,指定隧道的源端地址为接口GigabitEthernet1/0/6的地址6.1.1.1,目的端地址为Router B上接口GigabitEthernet1/0/4的地址5.1.1.1。
[RouterC] interface tunnel 4 mode vxlan
[RouterC-Tunnel4] source 6.1.1.1
[RouterC-Tunnel4] destination 4.1.1.1
[RouterC-Tunnel4] quit
# 配置Tunnel 1、Tunnel 3与VXLAN 90关联。
[RouterC] vsi vpna
[RouterC-vsi-vpna] vxlan 90
[RouterC-vsi-vpna-vxlan-90] tunnel 1
[RouterC-vsi-vpna-vxlan-90] tunnel 3
[RouterC-vsi-vpna-vxlan-90] quit
[RouterC-vsi-vpna] quit
# 配置Tunnel 2、Tunnel 4与VXLAN 70关联。
[RouterC] vsi vpnb
[RouterC-vsi-vpnb] vxlan 70
[RouterC-vsi-vpnb-vxlan-70] tunnel 2
[RouterC-vsi-vpnb-vxlan-70] tunnel 4
[RouterC-vsi-vpnb-vxlan-70] quit
[RouterC-vsi-vpnb] quit
# 创建VSI虚接口VSI-interface 1,并为其配置IP地址;指定该VSI虚接口为分布式本地网关接口,并开启本地代理ARP功能。
[RouterC] interface vsi-interface 1
[RouterC-Vsi-interface1] ip address 192.168.1.3 255.255.255.0
[RouterC-Vsi-interface1] distributed-gateway local
[RouterC-Vsi-interface1] local-proxy-arp enable
[RouterC-Vsi-interface1] quit
# 创建VSI虚接口VSI-interface 2,并为其配置IP地址;指定该VSI虚接口为分布式本地网关接口,并开启本地代理ARP功能。
[RouterC] interface vsi-interface 2
[RouterC-Vsi-interface2] ip address 172.168.1.3 255.255.255.0
[RouterC-Vsi-interface2] distributed-gateway local
[RouterC-Vsi-interface2] local-proxy-arp enable
[RouterC-Vsi-interface2] quit
# 配置VXLAN 90所在的VSI实例和接口VSI-interface 1关联,并配置该VSI实例的子网网段为192.168.1.0/24。
[RouterC] vsi vpna
[RouterC-vsi-vpna] gateway vsi-interface 1
[RouterC-vsi-vpna] gateway subnet 192.168.1.0 0.0.0.255
[RouterC-vsi-vpna] quit
# 配置VXLAN 70所在的VSI实例和接口VSI-interface 2关联,并配置该VSI实例的子网网段为172.168.1.0/24。
[RouterC] vsi vpnb
[RouterC-vsi-vpnb] gateway vsi-interface 2
[RouterC-vsi-vpnb] gateway subnet 172.168.1.0 0.0.0.255
[RouterC-vsi-vpnb] quit
(3) 配置BGP协议
¡ 配置Router A
[RouterA] bgp 100
[RouterA-bgp-default] peer 30.1.1.2 as-number 100
[RouterA-bgp-default] peer 172.168.1.3 as-number 200
[RouterA-bgp-default] peer 192.168.1.3 as-number 200
[RouterA-bgp-default] address-family ipv4 unicast
[RouterA-bgp-default-ipv4] balance 4
[RouterA-bgp-default-ipv4] peer 30.1.1.2 enable
[RouterA-bgp-default-ipv4] peer 30.1.1.2 next-hop-local
[RouterA-bgp-default-ipv4] peer 172.168.1.3 enable
[RouterA-bgp-default-ipv4] peer 192.168.1.3 enable
[RouterA-bgp-default-ipv4] quit
[RouterA-bgp-default] quit
¡ 配置Router B
[RouterB] bgp 100
[RouterB-bgp-default] peer 50.1.1.2 as-number 100
[RouterB-bgp-default] peer 172.168.1.3 as-number 200
[RouterB-bgp-default] peer 192.168.1.3 as-number 200
[RouterB-bgp-default] address-family ipv4 unicast
[RouterB-bgp-default-ipv4] balance 4
[RouterB-bgp-default-ipv4] peer 50.1.1.2 enable
[RouterB-bgp-default-ipv4] peer 50.1.1.2 next-hop-local
[RouterB-bgp-default-ipv4] peer 172.168.1.3 enable
[RouterB-bgp-default-ipv4] peer 192.168.1.3 enable
[RouterB-bgp-default-ipv4] quit
[RouterB-bgp-default] quit
¡ 配置Router C
[RouterC] bgp 200
[RouterC-bgp-default] peer 10.1.1.2 as-number 200
[RouterC-bgp-default] peer 172.168.1.1 as-number 100
[RouterC-bgp-default] peer 192.168.1.1 as-number 100
[RouterC-bgp-default] peer 172.168.1.2 as-number 100
[RouterC-bgp-default] peer 192.168.1.2 as-number 100
[RouterC-bgp-default] address-family ipv4 unicast
[RouterC-bgp-default-ipv4] balance 4
[RouterC-bgp-default-ipv4] peer 10.1.1.2 enable
[RouterC-bgp-default-ipv4] peer 10.1.1.2 next-hop-local
[RouterC-bgp-default-ipv4] peer 172.168.1.1 enable
[RouterC-bgp-default-ipv4] peer 192.168.1.1 enable
[RouterC-bgp-default-ipv4] peer 172.168.1.2 enable
[RouterC-bgp-default-ipv4] peer 192.168.1.2 enable
[RouterC-bgp-default-ipv4] quit
[RouterC-bgp-default] quit
¡ 配置Router E
<RouterE> system-view
[RouterE] bgp 100
[RouterE-bgp-default] peer 30.1.1.1 as-number 100
[RouterE-bgp-default] address-family ipv4 unicast
[RouterE-bgp-default-ipv4] import-route direct
[RouterE-bgp-default-ipv4] peer 30.1.1.1 enable
[RouterE-bgp-default-ipv4] quit
[RouterE-bgp-default] quit
¡ 配置Router F
<RouterF> system-view
[RouterF] bgp 100
[RouterF-bgp-default] peer 50.1.1.1 as-number 100
[RouterF-bgp-default] address-family ipv4 unicast
[RouterF-bgp-default-ipv4] import-route direct
[RouterF-bgp-default-ipv4] peer 50.1.1.1 enable
[RouterF-bgp-default-ipv4] quit
[RouterF-bgp-default] quit
¡ 配置Router G
<RouterG> system-view
[RouterG] bgp 200
[RouterG-bgp-default] peer 10.1.1.1 as-number 200
[RouterG-bgp-default] address-family ipv4 unicast
[RouterG-bgp-default-ipv4] import-route direct
[RouterG-bgp-default-ipv4] peer 10.1.1.1 enable
[RouterG-bgp-default-ipv4] quit
[RouterG-bgp-default] quit
(4) 配置智能选路相关功能
¡ 配置Router A
# 开启RIR服务器功能,配置探测信息同步端口号。
[RouterA] rir
[RouterA-rir] server enable
[RouterA-rir] probe sync-port 65535
# 配置选路延迟时间为30秒,选路调整周期为60秒。
[RouterA-rir] link-select delay 30
[RouterA-rir] link-select suppress-period 60
[RouterA-rir] quit
# 开启NQA服务器功能,并在NQA服务器上配置UDP监听服务。
[RouterA] nqa server enable
[RouterA] nqa server udp-echo 1.1.1.1 65501 high-performance-mode
[RouterA] nqa server udp-echo 1.1.1.1 65502 high-performance-mode
[RouterA] nqa server udp-echo 2.1.1.1 65501 high-performance-mode
[RouterA] nqa server udp-echo 2.1.1.1 65502 high-performance-mode
# 配置VSI虚接口,在接口VSI-interface 1下配置链路类型为MPLS,在接口VSI-interface 2下配置链路类型为Internet。
[RouterA] interface vsi-interface 1
[RouterA-Vsi-interface1] rir link-type mpls index 1
[RouterA-Vsi-interface1] quit
[RouterA] interface vsi-interface 2
[RouterA-Vsi-interface2] rir link-type internet index 2
[RouterA-Vsi-interface2] quit
# 配置VXLAN隧道Tunnel 1和Tunnel 2的带宽为30000kbps,并指定发送VXLAN隧道Tunnel 1报文的物理出接口为GigabitEthernet1/0/1,发送VXLAN隧道Tunnel 2报文的物理出接口为GigabitEthernet1/0/2。
[RouterA] interface tunnel 1 mode vxlan
[RouterA-Tunnel1] bandwidth 30000
[RouterA-Tunnel1] tunnel out-interface gigabitethernet 1/0/1
[RouterA-Tunnel1] quit
[RouterA] interface tunnel 2 mode vxlan
[RouterA-Tunnel2] bandwidth 30000
[RouterA-Tunnel2] tunnel out-interface gigabitethernet 1/0/2
[RouterA-Tunnel2] quit
# 创建业务流量模板1和业务流量模板2,分别为业务流量模板下的链路配置相同的链路优先级,并在业务流量模板下分别配置会话预计使用的带宽。两个业务流量模板都不配置质量策略。
[RouterA] rir
[RouterA-rir] flow 1
[RouterA-rir-flow-1] path link-type mpls index 1 preference 10
[RouterA-rir-flow-1] path link-type internet index 2 preference 10
[RouterA-rir-flow-1] expect-bandwidth 300
[RouterA-rir-flow-1] quit
[RouterA-rir] flow 2
[RouterA-rir-flow-2] path link-type mpls index 1 preference 20
[RouterA-rir-flow-2] path link-type internet index 2 preference 20
[RouterA-rir-flow-2] expect-bandwidth 300
[RouterA-rir-flow-2] quit
[RouterA-rir] quit
# 配置QoS策略重标记流量,并将策略应用在接口GigabitEthernet1/0/3上,其中DSCP为1的报文Flow ID标记为1,DSCP为2的报文Flow ID标记为2。
[RouterA] traffic classifier class1
[RouterA-classifier-class1] if-match dscp 1
[RouterA-classifier-class1] quit
[RouterA] traffic classifier class2
[RouterA-classifier-class2] if-match dscp 2
[RouterA-classifier-class2] quit
[RouterA] traffic behavior behav1
[RouterA-behavior-behav1] remark flow-id 1
[RouterA-behavior-behav1] quit
[RouterA] traffic behavior behav2
[RouterA-behavior-behav2] remark flow-id 2
[RouterA-behavior-behav2] quit
[RouterA] qos policy policy1
[RouterA-qospolicy-policy1] classifier class1 behavior behav1
[RouterA-qospolicy-policy1] classifier class2 behavior behav2
[RouterA-qospolicy-policy1] quit
[RouterA] interface gigabitethernet 1/0/3
[RouterA-GigabitEthernet1/0/3] qos apply policy policy1 inbound
[RouterA-GigabitEthernet1/0/3] quit
¡ 配置Router B
# 开启RIR服务器功能,配置探测信息同步端口号。
[RouterB] rir
[RouterB-rir] server enable
# 配置选路延迟时间为30秒,选路调整周期为60秒。
[RouterB-rir] link-select delay 30
[RouterB-rir] link-select suppress-period 60
[RouterB-rir] probe sync-port 65535
[RouterB-rir] quit
# 开启NQA服务器功能,并在NQA服务器上配置UDP监听服务。
[RouterB] nqa server enable
[RouterB] nqa server udp-echo 3.1.1.1 65501 high-performance-mode
[RouterB] nqa server udp-echo 3.1.1.1 65502 high-performance-mode
[RouterB] nqa server udp-echo 4.1.1.1 65501 high-performance-mode
[RouterB] nqa server udp-echo 4.1.1.1 65502 high-performance-mode
# 配置VSI虚接口,在接口VSI-interface 1下配置链路类型为MPLS,在接口VSI-interface 2下配置链路类型为Internet。
[RouterB] interface vsi-interface 1
[RouterB-Vsi-interface1] rir link-type mpls index 1
[RouterB-Vsi-interface1] quit
[RouterB] interface vsi-interface 2
[RouterB-Vsi-interface2] rir link-type internet index 2
[RouterB-Vsi-interface2] quit
# 配置VXLAN隧道Tunnel 3和Tunnel 4的带宽为30000kbps,并指定发送VXLAN隧道Tunnel 3报文的物理出接口为GigabitEthernet1/0/3,发送VXLAN隧道Tunnel 4报文的物理出接口为GigabitEthernet1/0/4。
[RouterB] interface tunnel 3 mode vxlan
[RouterB-Tunnel3] bandwidth 30000
[RouterB-Tunnel3] tunnel out-interface gigabitethernet 1/0/3
[RouterB-Tunnel3] quit
[RouterB] interface tunnel 4 mode vxlan
[RouterB-Tunnel4] bandwidth 30000
[RouterB-Tunnel4] tunnel out-interface gigabitethernet 1/0/4
[RouterB-Tunnel4] quit
# 创建业务流量模板1和业务流量模板2,分别为业务流量模板下的链路配置相同的链路优先级,并在业务流量模板下分别配置会话预计使用的带宽。两个业务流量模板都不配置质量策略。
[RouterB-rir] flow 1
[RouterB-rir-flow-1] path link-type mpls index 1 preference 10
[RouterB-rir-flow-1] path link-type internet index 2 preference 10
[RouterB-rir-flow-1] expect-bandwidth 300
[RouterB-rir-flow-1] quit
[RouterB-rir] flow 2
[RouterB-rir-flow-2] path link-type mpls index 1 preference 20
[RouterB-rir-flow-2] path link-type internet index 2 preference 20
[RouterB-rir-flow-2] expect-bandwidth 300
[RouterB-rir-flow-2] quit
[RouterB-rir] quit
# 配置QoS策略重标记流量,并将策略应用在接口GigabitEthernet1/0/5上,其中DSCP为1的报文Flow ID标记为1,DSCP为2的报文Flow ID标记为2。
[RouterB] traffic classifier class1
[RouterB-classifier-class1] if-match dscp 1
[RouterB-classifier-class1] quit
[RouterB] traffic classifier class2
[RouterB-classifier-class2] if-match dscp 2
[RouterB-classifier-class2] quit
[RouterB] traffic behavior behav1
[RouterB-behavior-behav1] remark flow-id 1
[RouterB-behavior-behav1] quit
[RouterB] traffic behavior behav2
[RouterB-behavior-behav2] remark flow-id 2
[RouterB-behavior-behav2] quit
[RouterB] qos policy policy1
[RouterB-qospolicy-policy1] classifier class1 behavior behav1
[RouterB-qospolicy-policy1] classifier class2 behavior behav2
[RouterB-qospolicy-policy1] quit
[RouterB] interface gigabitethernet 1/0/5
[RouterB-GigabitEthernet1/0/5] qos apply policy policy1 inbound
[RouterB-GigabitEthernet1/0/5] quit
¡ 配置Router C
# 开启RIR客户端功能,配置探测信息同步端口号。
[RouterC] rir
[RouterC-rir] client enable
[RouterC-rir] probe sync-port 65535
# 配置选路延迟时间为30秒,选路调整周期为60秒。
[RouterC-rir] link-select delay 30
[RouterC-rir] link-select suppress-period 60
[RouterC-rir] quit
# 开启NQA客户端功能。
[RouterD] nqa agent enable
# 配置NQA链路通断探测。
[RouterC] rir
[RouterC-rir] probe connect interval 300 timeout 65535
# 创建NQA链路质量探测1和NQA链路质量探测2,分别配置不同的链路质量探测参数。
[RouterC-rir] nqa 1
[RouterC-rir-nqa-1] probe packet-dscp 10
[RouterC-rir-nqa-1] probe interval 60
[RouterC-rir-nqa-1] probe packet-interval 15
[RouterC-rir-nqa-1] probe packet-number 60
[RouterC-rir-nqa-1] probe packet-timeout 500
[RouterC-rir-nqa-1] probe port 65501
[RouterC-rir-nqa-1] quit
[RouterC-rir] nqa 2
[RouterC-rir-nqa-2] probe packet-dscp 20
[RouterC-rir-nqa-2] probe interval 120
[RouterC-rir-nqa-2] probe packet-interval 30
[RouterC-rir-nqa-2] probe packet-number 120
[RouterC-rir-nqa-2] probe packet-timeout 1000
[RouterC-rir-nqa-2] probe port 65502
[RouterC-rir-nqa-2] quit
# 创建SLA 1和SLA 2,分别配置不同的链路质量阈值。
[RouterC-rir] sla 1
[RouterC-rir-sla-1] jitter threshold 20
[RouterC-rir-sla-1] delay threshold 60
[RouterC-rir-sla-1] packet-loss threshold 150
[RouterC-rir-sla-1] quit
[RouterC-rir] sla 2
[RouterC-rir-sla-2] jitter threshold 40
[RouterC-rir-sla-2] delay threshold 120
[RouterC-rir-sla-2] packet-loss threshold 300
[RouterC-rir-sla-2] quit
[RouterC-rir] quit
# 配置VSI虚接口,在接口VSI-interface 1下配置链路类型为MPLS,在接口VSI-interface 2下配置链路类型为Internet。
[RouterC] interface vsi-interface 1
[RouterC-Vsi-interface1] rir link-type mpls index 1
[RouterC-Vsi-interface1] quit
[RouterC] interface vsi-interface 2
[RouterC-Vsi-interface2] rir link-type internet index 2
[RouterC-Vsi-interface2] quit
# 配置VXLAN隧道Tunnel 1、Tunnel 2、Tunnel 3和Tunnel 4的带宽为30000kbps,并指定发送VXLAN隧道Tunnel 1和Tunnel 3报文的物理出接口为GigabitEthernet1/0/5,发送VXLAN隧道Tunnel 2和Tunnel 4报文的物理出接口为GigabitEthernet1/0/6。
[RouterC] interface tunnel 1 mode vxlan
[RouterC-Tunnel1] bandwidth 30000
[RouterC-Tunnel1] tunnel out-interface gigabitethernet 1/0/5
[RouterC-Tunnel1] quit
[RouterC] interface tunnel 2 mode vxlan
[RouterC-Tunnel2] bandwidth 30000
[RouterC-Tunnel2] tunnel out-interface gigabitethernet 1/0/6
[RouterC-Tunnel2] quit
[RouterC] interface tunnel 3 mode vxlan
[RouterC-Tunnel3] bandwidth 30000
[RouterC-Tunnel3] tunnel out-interface gigabitethernet 1/0/5
[RouterC-Tunnel3] quit
[RouterC] interface tunnel 4 mode vxlan
[RouterC-Tunnel4] bandwidth 30000
[RouterC-Tunnel4] tunnel out-interface gigabitethernet 1/0/6
[RouterC-Tunnel4] quit
# 创建业务流量模板1和业务流量模板2,分别业务流量模板下的链路配置不同的链路优先级,并为不同的业务流量模板配置不同的质量策略,并在业务流量模板下分别配置会话预计使用的带宽。
[RouterC] rir
[RouterC-rir] flow 1
[RouterC-rir-flow-1] path link-type mpls index 1 preference 10
[RouterC-rir-flow-1] path link-type internet index 2 preference 20
[RouterC-rir-flow-1] expect-bandwidth 300
[RouterC-rir-flow-1] quality-policy sla 1 nqa 1
[RouterC-rir-flow-1] quit
[RouterC-rir] flow 2
[RouterC-rir-flow-2] path link-type mpls index 1 preference 20
[RouterC-rir-flow-2] path link-type internet index 2 preference 10
[RouterC-rir-flow-1] expect-bandwidth 300
[RouterC-rir-flow-2] quality-policy sla 2 nqa 2
[RouterC-rir-flow-2] quit
[RouterC-rir] quit
# 配置QoS策略重标记流量,并将策略应用在接口GigabitEthernet1/0/1上,其中DSCP为1的报文Flow ID标记为1,DSCP为2的报文Flow ID标记为2。
[RouterC] traffic classifier class1
[RouterC-classifier-class1] if-match dscp 1
[RouterC-classifier-class1] quit
[RouterC] traffic classifier class2
[RouterC-classifier-class2] if-match dscp 2
[RouterC-classifier-class2] quit
[RouterC] traffic behavior behav1
[RouterC-behavior-behav1] remark flow-id 1
[RouterC-behavior-behav1] quit
[RouterC] traffic behavior behav2
[RouterC-behavior-behav2] remark flow-id 2
[RouterC-behavior-behav2] quit
[RouterC] qos policy policy1
[RouterC-qospolicy-policy1] classifier class1 behavior behav1
[RouterC-qospolicy-policy1] classifier class2 behavior behav2
[RouterC-qospolicy-policy1] quit
[RouterC] interface gigabitethernet 1/0/1
[RouterC-GigabitEthernet1/0/1] qos apply policy policy1 inbound
[RouterC-GigabitEthernet1/0/1] quit
(5) 开启隧道基于Flow ID的流量速率统计功能
¡ 配置Router A
# 开启隧道基于Flow ID的流量速率统计功能,并配置统计时间间隔为5秒。
[RouterA] tunnel flow-statistics enable
[RouterA] tunnel flow-statistics interval 5
¡ 配置Router B
# 开启隧道基于Flow ID的流量速率统计功能,并配置统计时间间隔为5秒。
[RouterB] tunnel flow-statistics enable
[RouterB] tunnel flow-statistics interval 5
¡ 配置Router C
# 开启隧道基于Flow ID的流量速率统计功能,并配置统计时间间隔为5秒。
[RouterC] tunnel flow-statistics enable
[RouterC] tunnel flow-statistics interval 5
(1) 查看等价路由
# 在Router A上查看目的地址为Router G的路由信息,可以看到两条出接口为VSI虚接口的等价路由。
[RouterA] display ip routing-table 10.1.1.2
Summary count : 2
Destination/Mask Proto Pre Cost NextHop Interface
10.1.1.0/24 BGP 255 0 172.168.1.3 Vsi2
BGP 255 0 192.168.1.3 Vsi1
# 在Router B上查看目的地址为Router G的路由信息,可以看到两条出接口为VSI虚接口的等价路由。
[RouterB] display ip routing-table 10.1.1.2
Summary count : 2
Destination/Mask Proto Pre Cost NextHop Interface
10.1.1.0/24 BGP 255 0 172.168.1.3 Vsi2
BGP 255 0 192.168.1.3 Vsi1
# 在Router C上查看目的地址为Router E和Router F的路由信息,可以分别看到两条出接口为VSI虚接口的等价路由。
[RouterC] display ip routing-table 30.1.1.2
Summary count : 2
Destination/Mask Proto Pre Cost NextHop Interface
30.1.1.0/24 BGP 255 0 172.168.1.1 Vsi2
BGP 255 0 192.168.1.1 Vsi1
[RouterC] display ip routing-table 50.1.1.2
Summary count : 2
Destination/Mask Proto Pre Cost NextHop Interface
50.1.1.0/24 BGP 255 0 172.168.1.2 Vsi2
BGP 255 0 192.168.1.2 Vsi1
(2) 查看TCP连接
# 在Router A上(Hub设备)查看TCP连接信息,可以看到两条本地端口号为65535的TCP连接建立完成,Spoke设备可以使用该TCP连接将链路探测质量结果同步到对应的Hub设备。(本地端口号或对端端口号为179的TCP连接由BGP协议运行时生成)
[RouterA] display tcp
*: TCP connection with authentication
Local Addr:port Foreign Addr:port State Slot PCB
0.0.0.0:179 30.1.1.2:0 LISTEN 0 0xffffffffffffffa2
0.0.0.0:179 172.168.1.3:0 LISTEN 0 0xffffffffffffffa5
0.0.0.0:179 192.168.1.3:0 LISTEN 0 0xffffffffffffffa6
0.0.0.0:65535 0.0.0.0:0 LISTEN 0 0xffffffffffffffb6
1.1.1.1:65535 5.1.1.1:57419 ESTABLISHED 0 0xffffffffffffffb7
2.1.1.1:65535 6.1.1.1:57421 ESTABLISHED 0 0xffffffffffffffb8
30.1.1.1:179 30.1.1.2:10560 ESTABLISHED 0 0xffffffffffffffb5
172.168.1.1:179 172.168.1.3:57408 ESTABLISHED 0 0xffffffffffffffb1
192.168.1.1:179 192.168.1.3:57412 ESTABLISHED 0 0xffffffffffffffb0
# 在Router B上(Hub设备)查看TCP连接信息,可以看到两条本地端口号为65535的TCP连接建立完成,Spoke设备可以使用该TCP连接将链路探测质量结果同步到对应的Hub设备。(本地端口号或对端端口号为179的TCP连接由BGP协议运行时生成)
[RouterB] display tcp
*: TCP connection with authentication
Local Addr:port Foreign Addr:port State Slot PCB
0.0.0.0:179 172.168.1.3:0 LISTEN 0 0xffffffffffffffa4
0.0.0.0:179 192.168.1.3:0 LISTEN 0 0xffffffffffffffa5
0.0.0.0:65535 0.0.0.0:0 LISTEN 0 0xffffffffffffffc4
3.1.1.1:65535 5.1.1.1:57420 ESTABLISHED 0 0xffffffffffffffd1
4.1.1.1:65535 6.1.1.1:57422 ESTABLISHED 0 0xffffffffffffffd2
50.1.1.1:179 50.1.1.2:35072 ESTABLISHED 0 0xffffffffffffffe4
172.168.1.2:179 172.168.1.3:57409 ESTABLISHED 0 0xffffffffffffffad
192.168.1.2:179 192.168.1.3:57411 ESTABLISHED 0 0xffffffffffffffac
# 在Router C上(Spoke设备)查看TCP连接信息,可以看到四条本地端口号为65535的TCP连接建立完成,Spoke设备可以使用该TCP连接将链路探测质量结果同步到对应的Hub设备。(本地端口号或对端端口号为179的TCP连接由BGP协议运行时生成)
[RouterC] display tcp
*: TCP connection with authentication
Local Addr:port Foreign Addr:port State Slot PCB
0.0.0.0:179 10.1.1.2:0 LISTEN 0 0xffffffffffffffa9
0.0.0.0:179 172.168.1.1:0 LISTEN 0 0xffffffffffffffa7
0.0.0.0:179 172.168.1.2:0 LISTEN 0 0xffffffffffffffa8
0.0.0.0:179 192.168.1.1:0 LISTEN 0 0xffffffffffffffab
0.0.0.0:179 192.168.1.2:0 LISTEN 0 0xffffffffffffffaa
5.1.1.1:57419 1.1.1.1:65535 ESTABLISHED 0 0xffffffffffffffb3
5.1.1.1:57420 3.1.1.1:65535 ESTABLISHED 0 0xffffffffffffffb4
6.1.1.1:57421 2.1.1.1:65535 ESTABLISHED 0 0xffffffffffffffb5
6.1.1.1:57422 4.1.1.1:65535 ESTABLISHED 0 0xffffffffffffffb6
10.1.1.1:179 10.1.1.2:15808 ESTABLISHED 0 0xffffffffffffffb2
172.168.1.3:57408 172.168.1.1:179 ESTABLISHED 0 0xffffffffffffffa3
172.168.1.3:57409 172.168.1.2:179 ESTABLISHED 0 0xffffffffffffffa5
192.168.1.3:57411 192.168.1.2:179 ESTABLISHED 0 0xffffffffffffffa6
192.168.1.3:57412 192.168.1.1:179 ESTABLISHED 0 0xffffffffffffffa4
(3) 查看业务流量的选路信息
¡ 查看Router A
# 配置Router E仅发起UDP业务至Router G(业务对应多个会话,即有多个不同五元组的业务流量),业务流量的DSCP值为1。查看隧道基于Flow ID的流量速率统计信息,业务流量模板1下Tunnel 1和Tunnel 2都有业务流量。说明设备通过业务流量模板1为DSCP值为1的业务流量,以负载分担的方式选择链路进行传输。
[RouterA] display tunnel flow-statistics
Flow 1:
Interface Out pps Out bps
Tunnel1 300 300000
Tunnel2 200 250000
# 配置Router E仅发起UDP业务至Router G(业务对应多个会话,即有多个不同五元组的业务流量),业务流量的DSCP值为2。查看隧道基于Flow ID的流量速率统计信息,业务流量模板2下Tunnel 1和Tunnel 2都有业务流量。说明设备通过业务流量模板2为DSCP值为2的业务流量,以负载分担的方式选择链路进行传输。
[RouterA] display tunnel flow-statistics
Flow 1:
Interface Out pps Out bps
Tunnel1 300 300000
Tunnel2 200 250000
¡ 查看Router B
Router B与Router A相似,不作介绍。
¡ 查看Router C
# 配置Router G仅发起UDP业务至Router E(业务对应多个会话,即有多个不同五元组的业务流量),业务流量的DSCP值为1。查看隧道基于Flow ID的流量速率统计信息,仅有业务流量模板1下Tunnel 1有业务流量。说明设备通过业务流量模板1为DSCP值为1的业务流量优先选择Tunnel 1进行传输。
[RouterC] display tunnel flow-statistics
Flow 1:
Interface Out pps Out bps
Tunnel1 300 300000
# 配置Router G仅发起UDP业务至Router E(业务对应多个会话,即有多个不同五元组的业务流量),业务流量的DSCP值为2。查看隧道基于Flow ID的流量速率统计信息,仅有业务流量模板2下的Tunnel 2有业务流量。说明设备通过业务流量模板2为DSCP值为2的业务流量优先选择Tunnel 2进行传输。
[RouterC] display tunnel flow-statistics
Flow 2:
Interface Out pps Out bps
Tunnel1 300 300000
配置Router G发起业务到Router F时,Router C上的选路信息类似,不作介绍。
在图1-16所示的VXLAN组网中,Router A和Router B组建协同选路设备组作为Hub侧,Router C作为Spoke侧。通过配置智能选路,流量从Spoke侧流向Hub侧或者从Hub侧流向Spoke侧时,按照为其定义的选路策略进行选路。具体组网需求如下:
· 在Transport network内配置OSPF协议,使Router A、Router B和Router C之间路由可达。
· 基于Transport network配置VXLAN,Router A、Router B和Router C为VTEP设备,Router A和Router C之间、Router B和Router C之间分别配置两条VXLAN隧道。
· Router A、Router B和Router C上均创建VSI虚接口VSI-interface 1、VSI-interface 2。通过配置VSI实例与VSI虚接口关联,实现在每个Hub设备和Spoke设备间,VSI虚接口与VXLAN隧道一一对应。
· 配置Router A、Router B和Router C为分布式VXLAN IP网关,并在Router A、Router B、 Router C、Router E、Router F和Router G配置BGP协议,使Router A、Router B和Router C上分别存在两条到其对应Hub或Spoke的、以VSI虚接口为出接口的等价路由。
· Router A和Router B直连,组成协同选路Hub组。其中,Router A和Router B使用公网地址建立选路协同关系,并配置对端设备在公网的报文重定向地址。
选路策略定义如下:
· Hub设备和Spoke设备分别配置业务流量模板1和业务流量模板2,指导DSCP为1和DSCP为2的报文选择最优的VXLAN隧道进行传输。
· Hub设备为业务流量选路时不进行质量检测,Spoke设备为业务流量选路时进行质量检测。
· Hub设备与Spoke设备的链路负载分担模式均为逐流加权选路模式(缺省模式,无需配置)。
· 协同选路设备组内的Hub设备Router A和Router B均为业务流量配置两条优先级不同的链路,使得协同选路设备组收到公网业务报文时,优先选择Router A优先级较高的链路进行传输,当Router A优先级较高的链路不符合业务要求时,优先选择Router B优先级较高的链路进行传输。
· Spoke设备分别为业务流量配置两条优先级相同的链路,当两条链路都符合业务要求时会实现负载分担。
· 发送VXLAN隧道报文的物理接口带宽均符合业务流量带宽要求。
设备 |
接口 |
IP地址 |
设备 |
接口 |
IP地址 |
Router A |
GE1/0/1 |
1.1.1.1/24 |
Router D |
GE1/0/1 |
1.1.1.2/24 |
|
GE1/0/2 |
2.1.1.1/24 |
|
GE1/0/2 |
2.1.1.2/24 |
|
GE1/0/3 |
30.1.1.1/24 |
|
GE1/0/3 |
3.1.1.2/24 |
|
GE1/0/6 |
60.1.1.1/24 |
|
GE1/0/4 |
4.1.1.2/24 |
Router B |
GE1/0/3 |
3.1.1.1/24 |
|
GE1/0/5 |
5.1.1.2/24 |
|
GE1/0/4 |
4.1.1.1/24 |
|
GE1/0/6 |
6.1.1.2/24 |
|
GE1/0/5 |
50.1.1.1/24 |
Router E |
GE1/0/3 |
30.1.1.2/24 |
|
GE1/0/6 |
60.1.1.2/24 |
Router F |
GE1/0/5 |
50.1.1.2/24 |
Router C |
GE1/0/5 |
5.1.1.1/24 |
Router G |
GE1/0/1 |
10.1.1.2/24 |
|
GE1/0/6 |
6.1.1.1/24 |
|
|
|
|
GE1/0/1 |
10.1.1.1/24 |
|
|
|
按照组网图配置各接口的IP地址和子网掩码。
(1) 在Transport network内配置OSPF协议
¡ 配置Router A
<RouterA> system-view
[RouterA] ospf 1
[RouterA-ospf-1] area 0
[RouterA-ospf-1-area-0.0.0.0] network 1.1.1.0 0.0.0.255
[RouterA-ospf-1-area-0.0.0.0] quit
[RouterA-ospf-1] quit
[RouterA] ospf 2
[RouterA-ospf-2] area 0
[RouterA-ospf-2-area-0.0.0.0] network 2.1.1.0 0.0.0.255
[RouterA-ospf-2-area-0.0.0.0] quit
[RouterA-ospf-2] quit
¡ 配置Router B
<RouterB> system-view
[RouterB] ospf 1
[RouterB-ospf-1] area 0
[RouterB-ospf-1-area-0.0.0.0] network 3.1.1.0 0.0.0.255
[RouterB-ospf-1-area-0.0.0.0] quit
[RouterB-ospf-1] quit
[RouterB] ospf 2
[RouterB-ospf-2] area 0
[RouterB-ospf-2-area-0.0.0.0] network 4.1.1.0 0.0.0.255
[RouterB-ospf-2-area-0.0.0.0] quit
[RouterB-ospf-2] quit
¡ 配置Router C
<RouterC> system-view
[RouterC] ospf 1
[RouterC-ospf-1] area 0
[RouterC-ospf-1-area-0.0.0.0] network 5.1.1.0 0.0.0.255
[RouterC-ospf-1-area-0.0.0.0] quit
[RouterC-ospf-1] quit
[RouterC] ospf 2
[RouterC-ospf-2] area 0
[RouterC-ospf-2-area-0.0.0.0] network 6.1.1.0 0.0.0.255
[RouterC-ospf-2-area-0.0.0.0] quit
[RouterC-ospf-2] quit
¡ 配置Router D
<RouterD> system-view
[RouterD] ospf 1
[RouterD-ospf-1] area 0
[RouterD-ospf-1-area-0.0.0.0] network 1.1.1.0 0.0.0.255
[RouterD-ospf-1-area-0.0.0.0] network 3.1.1.0 0.0.0.255
[RouterD-ospf-1-area-0.0.0.0] network 5.1.1.0 0.0.0.255
[RouterD-ospf-1-area-0.0.0.0] quit
[RouterD-ospf-1] quit
[RouterD] ospf 2
[RouterD-ospf-2] area 0
[RouterD-ospf-2-area-0.0.0.0] network 2.1.1.0 0.0.0.255
[RouterD-ospf-2-area-0.0.0.0] network 4.1.1.0 0.0.0.255
[RouterD-ospf-2-area-0.0.0.0] network 6.1.1.0 0.0.0.255
[RouterD-ospf-2-area-0.0.0.0] quit
[RouterD-ospf-2] quit
(2) 基于Transport network配置VXLAN
¡ 配置Router A
# 开启L2VPN能力。
[RouterA] l2vpn enable
# 创建VSI实例vpna和VXLAN 90。
[RouterA] vsi vpna
[RouterA-vsi-vpna] vxlan 90
[RouterA-vsi-vpna-vxlan-90] quit
[RouterA-vsi-vpna] quit
# 创建VSI实例vpnb和VXLAN 70。
[RouterA] vsi vpnb
[RouterA-vsi-vpnb] vxlan 70
[RouterA-vsi-vpnb-vxlan-70] quit
[RouterA-vsi-vpnb] quit
# 在Router A和Router C之间建立VXLAN隧道Tunnel 1,指定隧道的源端地址为接口GigabitEthernet1/0/1的地址1.1.1.1,目的端地址为Router C上接口GigabitEthernet1/0/5的地址5.1.1.1。
[RouterA] interface tunnel 1 mode vxlan
[RouterA-Tunnel1] source 1.1.1.1
[RouterA-Tunnel1] destination 5.1.1.1
[RouterA-Tunnel1] quit
# 在Router A和Router C之间建立VXLAN隧道Tunnel 2,指定隧道的源端地址为接口GigabitEthernet1/0/2的地址2.1.1.1,目的端地址为Router C上接口GigabitEthernet1/0/6的地址6.1.1.1。
[RouterA] interface tunnel 2 mode vxlan
[RouterA-Tunnel2] source 2.1.1.1
[RouterA-Tunnel2] destination 6.1.1.1
[RouterA-Tunnel2] quit
# 配置Tunnel 1与VXLAN 90关联。
[RouterA] vsi vpna
[RouterA-vsi-vpna] vxlan 90
[RouterA-vsi-vpna-vxlan-90] tunnel 1
[RouterA-vsi-vpna-vxlan-90] quit
[RouterA-vsi-vpna] quit
# 配置Tunnel 2与VXLAN 70关联。
[RouterA] vsi vpnb
[RouterA-vsi-vpnb] vxlan 70
[RouterA-vsi-vpnb-vxlan-70] tunnel 2
[RouterA-vsi-vpnb-vxlan-70] quit
[RouterA-vsi-vpnb] quit
# 创建VSI虚接口VSI-interface 1,并为其配置IP地址;指定该VSI虚接口为分布式本地网关接口,并开启本地代理ARP功能。
[RouterA] interface vsi-interface 1
[RouterA-Vsi-interface1] ip address 192.168.1.1 255.255.255.0
[RouterA-Vsi-interface1] distributed-gateway local
[RouterA-Vsi-interface1] local-proxy-arp enable
[RouterA-Vsi-interface1] quit
# 创建VSI虚接口VSI-interface 2,并为其配置IP地址;指定该VSI虚接口为分布式本地网关接口,并开启本地代理ARP功能。
[RouterA] interface vsi-interface 2
[RouterA-Vsi-interface2] ip address 172.168.1.1 255.255.255.0
[RouterA-Vsi-interface2] distributed-gateway local
[RouterA-Vsi-interface2] local-proxy-arp enable
[RouterA-Vsi-interface2] quit
# 配置VXLAN 90所在的VSI实例和接口VSI-interface 1关联,并配置该VSI实例的子网网段为192.168.1.0/24。
[RouterA] vsi vpna
[RouterA-vsi-vpna] gateway vsi-interface 1
[RouterA-vsi-vpna] gateway subnet 192.168.1.0 0.0.0.255
[RouterA-vsi-vpna] quit
# 配置VXLAN 70所在的VSI实例和接口VSI-interface 2关联,并配置该VSI实例的子网网段为172.168.1.0/24。
[RouterA] vsi vpnb
[RouterA-vsi-vpnb] gateway vsi-interface 2
[RouterA-vsi-vpnb] gateway subnet 172.168.1.0 0.0.0.255
[RouterA-vsi-vpnb] quit
¡ 配置Router B
# 开启L2VPN能力。
[RouterB] l2vpn enable
# 创建VSI实例vpna和VXLAN 90。
[RouterB] vsi vpna
[RouterB-vsi-vpna] vxlan 90
[RouterB-vsi-vpna-vxlan-90] quit
[RouterB-vsi-vpna] quit
# 创建VSI实例vpnb和VXLAN 70。
[RouterB] vsi vpnb
[RouterB-vsi-vpnb] vxlan 70
[RouterB-vsi-vpnb-vxlan-70] quit
[RouterB-vsi-vpnb] quit
# 在Router B和Router C之间建立VXLAN隧道Tunnel 3,指定隧道的源端地址为接口GigabitEthernet1/0/3的地址3.1.1.1,目的端地址为Router C上接口GigabitEthernet1/0/5的地址5.1.1.1。
[RouterB] interface tunnel 3 mode vxlan
[RouterB-Tunnel3] source 3.1.1.1
[RouterB-Tunnel3] destination 5.1.1.1
[RouterB-Tunnel3] quit
# 在Router B和Router C之间建立VXLAN隧道Tunnel 4,指定隧道的源端地址为接口GigabitEthernet1/0/4的地址4.1.1.1,目的端地址为Router C上接口GigabitEthernet1/0/6的地址6.1.1.1。
[RouterB] interface tunnel 4 mode vxlan
[RouterB-Tunnel4] source 4.1.1.1
[RouterB-Tunnel4] destination 6.1.1.1
[RouterB-Tunnel4] quit
# 配置Tunnel 3与VXLAN 90关联。
[RouterB] vsi vpna
[RouterB-vsi-vpna] vxlan 90
[RouterB-vsi-vpna-vxlan-90] tunnel 3
[RouterB-vsi-vpna-vxlan-90] quit
[RouterB-vsi-vpna] quit
# 配置Tunnel 4与VXLAN 70关联。
[RouterB] vsi vpnb
[RouterB-vsi-vpnb] vxlan 70
[RouterB-vsi-vpnb-vxlan-70] tunnel 4
[RouterB-vsi-vpnb-vxlan-70] quit
[RouterB-vsi-vpnb] quit
# 创建VSI虚接口VSI-interface 1,并为其配置IP地址;指定该VSI虚接口为分布式本地网关接口,并开启本地代理ARP功能。
[RouterB] interface vsi-interface 1
[RouterB-Vsi-interface1] ip address 192.168.1.2 255.255.255.0
[RouterB-Vsi-interface1] distributed-gateway local
[RouterB-Vsi-interface1] local-proxy-arp enable
[RouterB-Vsi-interface1] quit
# 创建VSI虚接口VSI-interface 2,并为其配置IP地址;指定该VSI虚接口为分布式本地网关接口,并开启本地代理ARP功能。
[RouterB] interface vsi-interface 2
[RouterB-Vsi-interface2] ip address 172.168.1.2 255.255.255.0
[RouterB-Vsi-interface2] distributed-gateway local
[RouterB-Vsi-interface2] local-proxy-arp enable
[RouterB-Vsi-interface2] quit
# 配置VXLAN 90所在的VSI实例和接口VSI-interface 1关联,并配置该VSI实例的子网网段为192.168.1.0/24。
[RouterB] vsi vpna
[RouterB-vsi-vpna] gateway vsi-interface 1
[RouterB-vsi-vpna] gateway subnet 192.168.1.0 0.0.0.255
[RouterB-vsi-vpna] quit
# 配置VXLAN 70所在的VSI实例和接口VSI-interface 2关联,并配置该VSI实例的子网网段为172.168.1.0/24。
[RouterB] vsi vpnb
[RouterB-vsi-vpnb] gateway vsi-interface 2
[RouterB-vsi-vpnb] gateway subnet 172.168.1.0 0.0.0.255
[RouterB-vsi-vpnb] quit
¡ 配置Router C
# 开启L2VPN能力。
[RouterC] l2vpn enable
# 创建VSI实例vpna和VXLAN 90。
[RouterC] vsi vpna
[RouterC-vsi-vpna] vxlan 90
[RouterC-vsi-vpna-vxlan-90] quit
[RouterC-vsi-vpna] quit
# 创建VSI实例vpnb和VXLAN 70。
[RouterC] vsi vpnb
[RouterC-vsi-vpnb] vxlan 70
[RouterC-vsi-vpnb-vxlan-70] quit
[RouterC-vsi-vpnb] quit
# 在Router C和Router A之间建立VXLAN隧道Tunnel 1,指定隧道的源端地址为接口GigabitEthernet1/0/5的地址5.1.1.1,目的端地址为Router A上接口GigabitEthernet1/0/1的地址1.1.1.1。
[RouterC] interface tunnel 1 mode vxlan
[RouterC-Tunnel1] source 5.1.1.1
[RouterC-Tunnel1] destination 1.1.1.1
[RouterC-Tunnel1] quit
# 在Router C和Router A之间建立VXLAN隧道Tunnel 2,指定隧道的源端地址为接口GigabitEthernet1/0/6的地址6.1.1.1,目的端地址为Router A上接口GigabitEthernet1/0/2的地址2.1.1.1。
[RouterC] interface tunnel 2 mode vxlan
[RouterC-Tunnel2] source 6.1.1.1
[RouterC-Tunnel2] destination 2.1.1.1
[RouterC-Tunnel2] quit
# 在Router C和Router B之间建立VXLAN隧道Tunnel 3,指定隧道的源端地址为接口GigabitEthernet1/0/5的地址5.1.1.1,目的端地址为Router B上接口GigabitEthernet1/0/3的地址3.1.1.1。
[RouterC] interface tunnel 3 mode vxlan
[RouterC-Tunnel3] source 5.1.1.1
[RouterC-Tunnel3] destination 3.1.1.1
[RouterC-Tunnel3] quit
# 在Router C和Router B之间建立VXLAN隧道Tunnel 4,指定隧道的源端地址为接口GigabitEthernet1/0/6的地址6.1.1.1,目的端地址为Router B上接口GigabitEthernet1/0/4的地址4.1.1.1。
[RouterC] interface tunnel 4 mode vxlan
[RouterC-Tunnel4] source 6.1.1.1
[RouterC-Tunnel4] destination 4.1.1.1
[RouterC-Tunnel4] quit
# 配置Tunnel 1、Tunnel 3与VXLAN 90关联。
[RouterC] vsi vpna
[RouterC-vsi-vpna] vxlan 90
[RouterC-vsi-vpna-vxlan-90] tunnel 1
[RouterC-vsi-vpna-vxlan-90] tunnel 3
[RouterC-vsi-vpna-vxlan-90] quit
[RouterC-vsi-vpna] quit
# 配置Tunnel 2、Tunnel 4与VXLAN 70关联。
[RouterC] vsi vpnb
[RouterC-vsi-vpnb] vxlan 70
[RouterC-vsi-vpnb-vxlan-70] tunnel 2
[RouterC-vsi-vpnb-vxlan-70] tunnel 4
[RouterC-vsi-vpnb-vxlan-70] quit
[RouterC-vsi-vpnb] quit
# 创建VSI虚接口VSI-interface 1,并为其配置IP地址;指定该VSI虚接口为分布式本地网关接口,并开启本地代理ARP功能。
[RouterC] interface vsi-interface 1
[RouterC-Vsi-interface1] ip address 192.168.1.3 255.255.255.0
[RouterC-Vsi-interface1] distributed-gateway local
[RouterC-Vsi-interface1] local-proxy-arp enable
[RouterC-Vsi-interface1] quit
# 创建VSI虚接口VSI-interface 2,并为其配置IP地址;指定该VSI虚接口为分布式本地网关接口,并开启本地代理ARP功能。
[RouterC] interface vsi-interface 2
[RouterC-Vsi-interface2] ip address 172.168.1.3 255.255.255.0
[RouterC-Vsi-interface2] distributed-gateway local
[RouterC-Vsi-interface2] local-proxy-arp enable
[RouterC-Vsi-interface2] quit
# 配置VXLAN 90所在的VSI实例和接口VSI-interface 1关联,并配置该VSI实例的子网网段为192.168.1.0/24。
[RouterC] vsi vpna
[RouterC-vsi-vpna] gateway vsi-interface 1
[RouterC-vsi-vpna] gateway subnet 192.168.1.0 0.0.0.255
[RouterC-vsi-vpna] quit
# 配置VXLAN 70所在的VSI实例和接口VSI-interface 2关联,并配置该VSI实例的子网网段为172.168.1.0/24。
[RouterC] vsi vpnb
[RouterC-vsi-vpnb] gateway vsi-interface 2
[RouterC-vsi-vpnb] gateway subnet 172.168.1.0 0.0.0.255
[RouterC-vsi-vpnb] quit
(3) 配置BGP协议
¡ 配置Router A
[RouterA] bgp 100
[RouterA-bgp-default] peer 30.1.1.2 as-number 100
[RouterA-bgp-default] peer 172.168.1.3 as-number 200
[RouterA-bgp-default] peer 192.168.1.3 as-number 200
[RouterA-bgp-default] address-family ipv4 unicast
[RouterA-bgp-default-ipv4] balance 4
[RouterA-bgp-default-ipv4] peer 30.1.1.2 enable
[RouterA-bgp-default-ipv4] peer 30.1.1.2 next-hop-local
[RouterA-bgp-default-ipv4] peer 172.168.1.3 enable
[RouterA-bgp-default-ipv4] peer 192.168.1.3 enable
[RouterA-bgp-default-ipv4] quit
[RouterA-bgp-default] quit
¡ 配置Router B
[RouterB] bgp 100
[RouterB-bgp-default] peer 50.1.1.2 as-number 100
[RouterB-bgp-default] peer 172.168.1.3 as-number 200
[RouterB-bgp-default] peer 192.168.1.3 as-number 200
[RouterB-bgp-default] address-family ipv4 unicast
[RouterB-bgp-default-ipv4] balance 4
[RouterB-bgp-default-ipv4] peer 50.1.1.2 enable
[RouterB-bgp-default-ipv4] peer 50.1.1.2 next-hop-local
[RouterB-bgp-default-ipv4] peer 172.168.1.3 enable
[RouterB-bgp-default-ipv4] peer 192.168.1.3 enable
[RouterB-bgp-default-ipv4] quit
[RouterB-bgp-default] quit
¡ 配置Router C
[RouterC] bgp 200
[RouterC-bgp-default] peer 10.1.1.2 as-number 200
[RouterC-bgp-default] peer 172.168.1.1 as-number 100
[RouterC-bgp-default] peer 192.168.1.1 as-number 100
[RouterC-bgp-default] peer 172.168.1.2 as-number 100
[RouterC-bgp-default] peer 192.168.1.2 as-number 100
[RouterC-bgp-default] address-family ipv4 unicast
[RouterC-bgp-default-ipv4] balance 4
[RouterC-bgp-default-ipv4] peer 10.1.1.2 enable
[RouterC-bgp-default-ipv4] peer 10.1.1.2 next-hop-local
[RouterC-bgp-default-ipv4] peer 172.168.1.1 enable
[RouterC-bgp-default-ipv4] peer 192.168.1.1 enable
[RouterC-bgp-default-ipv4] peer 172.168.1.2 enable
[RouterC-bgp-default-ipv4] peer 192.168.1.2 enable
[RouterC-bgp-default-ipv4] quit
[RouterC-bgp-default] quit
¡ 配置Router E
<RouterE> system-view
[RouterE] bgp 100
[RouterE-bgp-default] peer 30.1.1.1 as-number 100
[RouterE-bgp-default] address-family ipv4 unicast
[RouterE-bgp-default] import-route direct
[RouterE-bgp-default-ipv4] peer 30.1.1.1 enable
[RouterE-bgp-default-ipv4] quit
[RouterE-bgp-default] quit
¡ 配置Router F
<RouterF> system-view
[RouterF] bgp 100
[RouterF-bgp-default] peer 50.1.1.1 as-number 100
[RouterF-bgp-default] address-family ipv4 unicast
[RouterF-bgp-default] import-route direct
[RouterF-bgp-default-ipv4] peer 50.1.1.1 enable
[RouterF-bgp-default-ipv4] quit
[RouterF-bgp-default] quit
¡ 配置Router G
<RouterG> system-view
[RouterG] bgp 200
[RouterG-bgp-default] peer 10.1.1.1 as-number 200
[RouterG-bgp-default] address-family ipv4 unicast
[RouterG-bgp-default] import-route direct
[RouterG-bgp-default-ipv4] peer 10.1.1.1 enable
[RouterG-bgp-default-ipv4] quit
[RouterG-bgp-default] quit
(4) 配置智能选路基本功能
¡ 配置Router A
# 开启RIR服务器功能,配置探测信息同步端口号。
[RouterA] rir
[RouterA-rir] server enable
[RouterA-rir] probe sync-port 65535
# 配置选路延迟时间为30秒,选路调整周期为60秒。
[RouterA-rir] link-select delay 30
[RouterA-rir] link-select suppress-period 60
[RouterA-rir] quit
# 开启NQA服务器功能,并在NQA服务器上配置UDP监听服务。
[RouterA] nqa server enable
[RouterA] nqa server udp-echo 1.1.1.1 65501 high-performance-mode
[RouterA] nqa server udp-echo 1.1.1.1 65502 high-performance-mode
[RouterA] nqa server udp-echo 2.1.1.1 65501 high-performance-mode
[RouterA] nqa server udp-echo 2.1.1.1 65502 high-performance-mode
# 配置VSI虚接口,在接口VSI-interface 1下配置链路类型为MPLS,在接口VSI-interface 2下配置链路类型为Internet。
[RouterA] interface vsi-interface 1
[RouterA-Vsi-interface1] rir link-type mpls index 1
[RouterA-Vsi-interface1] quit
[RouterA] interface vsi-interface 2
[RouterA-Vsi-interface2] rir link-type internet index 2
[RouterA-Vsi-interface2] quit
# 配置VXLAN隧道Tunnel 1和Tunnel 2的带宽为30000kbps,并指定发送VXLAN隧道Tunnel 1报文的物理出接口为GigabitEthernet1/0/1,发送VXLAN隧道Tunnel 2报文的物理出接口为GigabitEthernet1/0/2。
[RouterA] interface tunnel 1 mode vxlan
[RouterA-Tunnel1] bandwidth 30000
[RouterA-Tunnel1] tunnel out-interface gigabitethernet 1/0/1
[RouterA-Tunnel1] quit
[RouterA] interface tunnel 2 mode vxlan
[RouterA-Tunnel2] bandwidth 30000
[RouterA-Tunnel2] tunnel out-interface gigabitethernet 1/0/2
[RouterA-Tunnel2] quit
# 创建业务流量模板1和业务流量模板2,分别为业务流量模板下的链路配置不同的链路优先级,并在业务流量模板下分别配置会话预计使用的带宽。两个业务流量模板都不配置质量策略。
[RouterA] rir
[RouterA-rir] flow 1
[RouterA-rir-flow-1] path link-type mpls index 1 preference 10
[RouterA-rir-flow-1] path link-type internet index 2 preference 30
[RouterA-rir-flow-1] expect-bandwidth 300
[RouterA-rir-flow-1] quit
[RouterA-rir] quit
[RouterA-rir] flow 2
[RouterA-rir-flow-2] path link-type mpls index 1 preference 20
[RouterA-rir-flow-2] path link-type internet index 2 preference 40
[RouterA-rir-flow-2] expect-bandwidth 300
[RouterA-rir-flow-2] quit
[RouterA-rir] quit
# 配置QoS策略重标记流量,并将策略应用在接口GigabitEthernet1/0/3上,其中DSCP为1的报文Flow ID标记为1,DSCP为2的报文Flow ID标记为2。
[RouterA] traffic classifier class1
[RouterA-classifier-class1] if-match dscp 1
[RouterA-classifier-class1] quit
[RouterA] traffic classifier class2
[RouterA-classifier-class2] if-match dscp 2
[RouterA-classifier-class2] quit
[RouterA] traffic behavior behav1
[RouterA-behavior-behav1] remark flow-id 1
[RouterA-behavior-behav1] quit
[RouterA] traffic behavior behav2
[RouterA-behavior-behav2] remark flow-id 2
[RouterA-behavior-behav2] quit
[RouterA] qos policy policy1
[RouterA-qospolicy-policy1] classifier class1 behavior behav1
[RouterA-qospolicy-policy1] classifier class2 behavior behav2
[RouterA-qospolicy-policy1] quit
[RouterA] interface gigabitethernet 1/0/3
[RouterA-GigabitEthernet1/0/3] qos apply policy policy1 inbound
[RouterA-GigabitEthernet1/0/3] quit
¡ 配置Router B
# 开启RIR服务器功能,配置探测信息同步端口号。
[RouterB] rir
[RouterB-rir] server enable
# 配置选路延迟时间为30秒,选路调整周期为60秒。
[RouterB-rir] link-select delay 30
[RouterB-rir] link-select suppress-period 60
[RouterB-rir] probe sync-port 65535
[RouterB-rir] quit
# 开启NQA服务器功能,并在NQA服务器上配置UDP监听服务。
[RouterB] nqa server enable
[RouterB] nqa server udp-echo 3.1.1.1 65501 high-performance-mode
[RouterB] nqa server udp-echo 3.1.1.1 65502 high-performance-mode
[RouterB] nqa server udp-echo 4.1.1.1 65501 high-performance-mode
[RouterB] nqa server udp-echo 4.1.1.1 65502 high-performance-mode
# 配置VSI虚接口,在接口VSI-interface 1下配置链路类型为MPLS,在接口VSI-interface 2下配置链路类型为Internet。
[RouterB] interface vsi-interface 1
[RouterB-Vsi-interface1] rir link-type mpls index 1
[RouterB-Vsi-interface1] quit
[RouterB] interface vsi-interface 2
[RouterB-Vsi-interface2] rir link-type internet index 2
[RouterB-Vsi-interface2] quit
# 配置VXLAN隧道Tunnel 3和Tunnel 4的带宽为30000kbps,并指定发送VXLAN隧道Tunnel 3报文的物理出接口为GigabitEthernet1/0/3,发送VXLAN隧道Tunnel 4报文的物理出接口为GigabitEthernet1/0/4。
[RouterB] interface tunnel 3 mode vxlan
[RouterB-Tunnel3] bandwidth 30000
[RouterB-Tunnel3] tunnel out-interface gigabitethernet 1/0/3
[RouterB-Tunnel3] quit
[RouterB] interface tunnel 4 mode vxlan
[RouterB-Tunnel4] bandwidth 30000
[RouterB-Tunnel4] tunnel out-interface gigabitethernet 1/0/4
[RouterB-Tunnel4] quit
# 创建业务流量模板1和业务流量模板2,分别为业务流量模板下的链路配置相同的链路优先级,并在业务流量模板下分别配置会话预计使用的带宽。两个业务流量模板都不配置质量策略。
[RouterB-rir] flow 1
[RouterB-rir-flow-1] path link-type mpls index 1 preference 10
[RouterB-rir-flow-1] path link-type internet index 2 preference 30
[RouterB-rir-flow-1] expect-bandwidth 300
[RouterB-rir-flow-1] quit
[RouterB-rir] quit
[RouterB-rir] flow 2
[RouterB-rir-flow-2] path link-type mpls index 1 preference 20
[RouterB-rir-flow-2] path link-type internet index 2 preference 40
[RouterB-rir-flow-2] expect-bandwidth 300
[RouterB-rir-flow-2] quit
[RouterB-rir] quit
# 配置QoS策略重标记流量,并将策略应用在接口GigabitEthernet1/0/5上,其中DSCP为1的报文Flow ID标记为1,DSCP为2的报文Flow ID标记为2。
[RouterB] traffic classifier class1
[RouterB-classifier-class1] if-match dscp 1
[RouterB-classifier-class1] quit
[RouterB] traffic classifier class2
[RouterB-classifier-class2] if-match dscp 2
[RouterB-classifier-class2] quit
[RouterB] traffic behavior behav1
[RouterB-behavior-behav1] remark flow-id 1
[RouterB-behavior-behav1] quit
[RouterB] traffic behavior behav2
[RouterB-behavior-behav2] remark flow-id 2
[RouterB-behavior-behav2] quit
[RouterB] qos policy policy1
[RouterB-qospolicy-policy1] classifier class1 behavior behav1
[RouterB-qospolicy-policy1] classifier class2 behavior behav2
[RouterB-qospolicy-policy1] quit
[RouterB] interface gigabitethernet 1/0/5
[RouterB-GigabitEthernet1/0/5] qos apply policy policy1 inbound
[RouterB-GigabitEthernet1/0/5] quit
¡ 配置Router C
# 开启RIR客户端功能,配置探测信息同步端口号。
[RouterC] rir
[RouterC-rir] client enable
[RouterC-rir] probe sync-port 65535
# 配置选路延迟时间为30秒,选路调整周期为60秒。
[RouterC-rir] link-select delay 30
[RouterC-rir] link-select suppress-period 60
[RouterC-rir] quit
# 开启NQA客户端功能。
[RouterD] nqa agent enable
# 配置NQA链路通断探测。
[RouterC] rir
[RouterC-rir] probe connect interval 300 timeout 65535
# 创建NQA链路质量探测1和NQA链路质量探测2,分别配置不同的链路质量探测参数。
[RouterC-rir] nqa 1
[RouterC-rir-nqa-1] probe packet-dscp 10
[RouterC-rir-nqa-1] probe interval 60
[RouterC-rir-nqa-1] probe packet-interval 15
[RouterC-rir-nqa-1] probe packet-number 60
[RouterC-rir-nqa-1] probe packet-timeout 500
[RouterC-rir-nqa-1] probe port 65501
[RouterC-rir-nqa-1] quit
[RouterC-rir] nqa 2
[RouterC-rir-nqa-2] probe packet-dscp 20
[RouterC-rir-nqa-2] probe interval 120
[RouterC-rir-nqa-2] probe packet-interval 30
[RouterC-rir-nqa-2] probe packet-number 120
[RouterC-rir-nqa-2] probe packet-timeout 1000
[RouterC-rir-nqa-2] probe port 65502
[RouterC-rir-nqa-2] quit
# 创建SLA 1和SLA 2,分别配置不同的链路质量阈值。
[RouterC-rir] sla 1
[RouterC-rir-sla-1] jitter threshold 20
[RouterC-rir-sla-1] delay threshold 60
[RouterC-rir-sla-1] packet-loss threshold 150
[RouterC-rir-sla-1] quit
[RouterC-rir] sla 2
[RouterC-rir-sla-2] jitter threshold 40
[RouterC-rir-sla-2] delay threshold 120
[RouterC-rir-sla-2] packet-loss threshold 300
[RouterC-rir-sla-2] quit
[RouterC-rir] quit
# 配置VSI虚接口,在接口VSI-interface 1下配置链路类型为MPLS,在接口VSI-interface 2下配置链路类型为Internet。
[RouterC] interface vsi-interface 1
[RouterC-Vsi-interface1] rir link-type mpls index 1
[RouterC-Vsi-interface1] quit
[RouterC] interface vsi-interface 2
[RouterC-Vsi-interface2] rir link-type internet index 2
[RouterC-Vsi-interface2] quit
# 配置VXLAN隧道Tunnel 1、Tunnel 2、Tunnel 3和Tunnel 4的带宽为30000kbps,并指定发送VXLAN隧道Tunnel 1和Tunnel 3报文的物理出接口为GigabitEthernet1/0/5,发送VXLAN隧道Tunnel 2和Tunnel 4报文的物理出接口为GigabitEthernet1/0/6。
[RouterC] interface tunnel 1 mode vxlan
[RouterC-Tunnel1] bandwidth 30000
[RouterC-Tunnel1] tunnel out-interface gigabitethernet 1/0/5
[RouterC-Tunnel1] quit
[RouterC] interface tunnel 2 mode vxlan
[RouterC-Tunnel2] bandwidth 30000
[RouterC-Tunnel2] tunnel out-interface gigabitethernet 1/0/6
[RouterC-Tunnel2] quit
[RouterC] interface tunnel 3 mode vxlan
[RouterC-Tunnel3] bandwidth 30000
[RouterC-Tunnel3] tunnel out-interface gigabitethernet 1/0/5
[RouterC-Tunnel3] quit
[RouterC] interface tunnel 4 mode vxlan
[RouterC-Tunnel4] bandwidth 30000
[RouterC-Tunnel4] tunnel out-interface gigabitethernet 1/0/6
[RouterC-Tunnel4] quit
# 创建业务流量模板1和业务流量模板2,分别业务流量模板下的链路配置不同的链路优先级,并为不同的业务流量模板配置不同的质量策略,并在业务流量模板下分别配置会话预计使用的带宽。
[RouterC] rir
[RouterC-rir] flow 1
[RouterC-rir-flow-1] path link-type mpls index 1 preference 10
[RouterC-rir-flow-1] path link-type internet index 2 preference 10
[RouterC-rir-flow-1] expect-bandwidth 300
[RouterC-rir-flow-1] quality-policy sla 1 nqa 1
[RouterC-rir-flow-1] quit
[RouterC-rir] flow 2
[RouterC-rir-flow-2] path link-type mpls index 1 preference 20
[RouterC-rir-flow-2] path link-type internet index 2 preference 20
[RouterC-rir-flow-1] expect-bandwidth 300
[RouterC-rir-flow-2] quality-policy sla 2 nqa 2
[RouterC-rir-flow-2] quit
[RouterC-rir] quit
# 配置QoS策略重标记流量,并将策略应用在接口GigabitEthernet1/0/1上,其中DSCP为1的报文Flow ID标记为1,DSCP为2的报文Flow ID标记为2。
[RouterC] traffic classifier class1
[RouterC-classifier-class1] if-match dscp 1
[RouterC-classifier-class1] quit
[RouterC] traffic classifier class2
[RouterC-classifier-class2] if-match dscp 2
[RouterC-classifier-class2] quit
[RouterC] traffic behavior behav1
[RouterC-behavior-behav1] remark flow-id 1
[RouterC-behavior-behav1] quit
[RouterC] traffic behavior behav2
[RouterC-behavior-behav2] remark flow-id 2
[RouterC-behavior-behav2] quit
[RouterC] qos policy policy1
[RouterC-qospolicy-policy1] classifier class1 behavior behav1
[RouterC-qospolicy-policy1] classifier class2 behavior behav2
[RouterC-qospolicy-policy1] quit
[RouterC] interface gigabitethernet 1/0/1
[RouterC-GigabitEthernet1/0/1] qos apply policy policy1 inbound
[RouterC-GigabitEthernet1/0/1] quit
(5) 配置协同选路功能
¡ 配置Router A
# 将QoS策略policy1应用在接口GigabitEthernet1/0/6上。
[RouterA] interface gigabitethernet 1/0/6
[RouterA-GigabitEthernet1/0/6] qos apply policy policy1 inbound
[RouterA-GigabitEthernet1/0/6] quit
# 配置VXLAN隧道Tunnel 1和Tunnel 2属于协同链路组3。
[RouterA] interface tunnel 1
[RouterA-Tunnel1] rir collaboration-link-group 3
[RouterA-Tunnel1] quit
[RouterA] interface tunnel 2
[RouterA-Tunnel2] rir collaboration-link-group 3
[RouterA-Tunnel2] quit
# 配置Router A与Router B建立选路协同关系,二者同步链路数据使用的TCP端口号为3000。
[RouterA] rir
[RouterA-rir] collaboration peer 60.1.1.2 local 60.1.1.1 sync-port 3000
[RouterA] quit
# 配置Router B在公网的报文重定向地址60.1.1.2,。
[RouterA] rir
[RouterA-rir] collaboration peer 60.1.1.2 redirect 60.1.1.2
[RouterA] quit
¡ 配置Router B
# 将QoS策略policy1应用在接口GigabitEthernet1/0/6上。
[RouterB] interface gigabitethernet 1/0/6
[RouterB-GigabitEthernet1/0/6] qos apply policy policy1 inbound
[RouterB-GigabitEthernet1/0/6] quit
# 配置VXLAN隧道Tunnel 3和Tunnel 4属于协同链路组3。
[RouterB] interface tunnel 3
[RouterB-Tunnel3] rir collaboration-link-group 3
[RouterB-Tunnel3] quit
[RouterB] interface tunnel 4
[RouterB-Tunnel4] rir collaboration-link-group 3
[RouterB-Tunnel4] quit
# 配置Router B与Router A建立选路协同关系,二者同步链路数据使用的TCP端口号为3000。
[RouterB] rir
[RouterB-rir] collaboration peer 60.1.1.1 local 60.1.1.2 sync-port 3000
[RouterB] quit
# 配置Router A在公网的报文重定向地址60.1.1.1。
[RouterB] rir
[RouterB-rir] collaboration peer 60.1.1.1 redirect 60.1.1.1
[RouterB] quit
(6) 开启隧道基于Flow ID的流量速率统计功能
¡ 配置Router A
# 开启隧道基于Flow ID的流量速率统计功能,并配置统计时间间隔为5秒。
[RouterA] tunnel flow-statistics enable
[RouterA] tunnel flow-statistics interval 5
¡ 配置Router B
# 开启隧道基于Flow ID的流量速率统计功能,并配置统计时间间隔为5秒。
[RouterB] tunnel flow-statistics enable
[RouterB] tunnel flow-statistics interval 5
¡ 配置Router C
# 开启隧道基于Flow ID的流量速率统计功能,并配置统计时间间隔为5秒。
[RouterC] tunnel flow-statistics enable
[RouterC] tunnel flow-statistics interval 5
(1) 查看等价路由
# 在Router A上查看目的地址为Router G的路由信息,可以看到两条出接口为VSI虚接口的等价路由。
[RouterA] display ip routing-table 10.1.1.2
Summary count : 2
Destination/Mask Proto Pre Cost NextHop Interface
10.1.1.0/24 BGP 255 0 172.168.1.3 Vsi2
BGP 255 0 192.168.1.3 Vsi1
# 在Router B上查看目的地址为Router G的路由信息,可以看到两条出接口为VSI虚接口的等价路由。
[RouterB] display ip routing-table 10.1.1.2
Summary count : 2
Destination/Mask Proto Pre Cost NextHop Interface
10.1.1.0/24 BGP 255 0 172.168.1.3 Vsi2
BGP 255 0 192.168.1.3 Vsi1
# 在Router C上查看目的地址为Router E和Router F的路由信息,可以分别看到两条出接口为VSI虚接口的等价路由。
[RouterC] display ip routing-table 30.1.1.2
Summary count : 2
Destination/Mask Proto Pre Cost NextHop Interface
30.1.1.0/24 BGP 255 0 172.168.1.1 Vsi2
BGP 255 0 192.168.1.1 Vsi1
[RouterC] display ip routing-table 50.1.1.2
Summary count : 2
Destination/Mask Proto Pre Cost NextHop Interface
50.1.1.0/24 BGP 255 0 172.168.1.2 Vsi2
BGP 255 0 192.168.1.2 Vsi1
(2) 查看TCP连接
# 在Router A上(Hub设备)查看TCP连接信息,可以看到两条本地端口号为65535的TCP连接和一条目的端口号为3000的TCP连接建立完成。其中,Spoke设备可以使用本地端口号为65535的TCP连接将链路探测质量结果同步到本端Hub设备,本端Hub设备可以使用端口号为3000的TCP连接将链路数据同步给对端Hub设备。(本地端口号或对端端口号为179的TCP连接由BGP协议运行时生成)
[RouterA] display tcp
*: TCP connection with authentication
Local Addr:port Foreign Addr:port State Slot PCB
0.0.0.0:179 30.1.1.2:0 LISTEN 1 0xffffffffffffffa0
0.0.0.0:179 172.168.1.3:0 LISTEN 1 0xffffffffffffffa1
0.0.0.0:179 192.168.1.3:0 LISTEN 1 0xffffffffffffffa2
0.0.0.0:65535 0.0.0.0:0 LISTEN 1 0x0000000000000382
1.1.1.1:65535 5.1.1.1:29439 ESTABLISHED 1 0x00000000000003b6
2.1.1.1:65535 6.1.1.1:5889 ESTABLISHED 1 0x00000000000003b5
30.1.1.1:179 30.1.1.2:12480 ESTABLISHED 1 0x00000000000003ec
60.1.1.1:49198 60.1.1.2:3000 ESTABLISHED 1 0x00000000000003e4
172.168.1.1:179 172.168.1.3:29378 ESTABLISHED 1 0x0000000000000378
192.168.1.1:179 192.168.1.3:29381 ESTABLISHED 1 0x0000000000000379
# 在Router B上(Hub设备)查看TCP连接信息,可以看到两条本地端口号为65535的TCP连接和一条本地端口号为3000的TCP连接建立完成。其中,Spoke设备可以使用本地端口号为65535的TCP连接将链路探测质量结果同步到本端Hub设备,本端Hub设备可以使用端口号为3000的TCP连接将链路数据同步给对端Hub设备。(本地端口号或对端端口号为179的TCP连接由BGP协议运行时生成)
[RouterB] display tcp
*: TCP connection with authentication
Local Addr:port Foreign Addr:port State Slot PCB
0.0.0.0:179 50.1.1.2:0 LISTEN 1 0xffffffffffffffa0
0.0.0.0:179 172.168.1.3:0 LISTEN 1 0xffffffffffffffa2
0.0.0.0:179 192.168.1.3:0 LISTEN 1 0xffffffffffffffa1
0.0.0.0:65535 0.0.0.0:0 LISTEN 1 0xffffffffffffffe8
3.1.1.1:65535 5.1.1.1:5908 ESTABLISHED 1 0xffffffffffffffea
4.1.1.1:65535 6.1.1.1:5909 ESTABLISHED 1 0xffffffffffffffeb
50.1.1.1:179 50.1.1.2:30400 ESTABLISHED 1 0x0000000000000019
60.1.1.2:3000 60.1.1.1:0 LISTEN 1 0x000000000000000f
60.1.1.2:3000 60.1.1.1:49198 ESTABLISHED 1 0x0000000000000010
172.168.1.2:23298 172.168.1.3:179 ESTABLISHED 1 0xffffffffffffffa6
192.168.1.2:179 192.168.1.3:29379 ESTABLISHED 1 0xffffffffffffffa7
# 在Router C上(Spoke设备)查看TCP连接信息,可以看到四条本地端口号为65535的TCP连接建立完成,Spoke设备可以使用该TCP连接将链路探测质量结果同步到对应的Hub设备。(本地端口号或对端端口号为179的TCP连接由BGP协议运行时生成)
[RouterC] display tcp
*: TCP connection with authentication
Local Addr:port Foreign Addr:port State Slot PCB
0.0.0.0:179 10.1.1.2:0 LISTEN 1 0xffffffffffffffa6
0.0.0.0:179 172.168.1.1:0 LISTEN 1 0xffffffffffffffa3
0.0.0.0:179 172.168.1.2:0 LISTEN 1 0xffffffffffffffa4
0.0.0.0:179 192.168.1.1:0 LISTEN 1 0xffffffffffffffa5
0.0.0.0:179 192.168.1.2:0 LISTEN 1 0xffffffffffffffa2
5.1.1.1:5908 3.1.1.1:65535 ESTABLISHED 1 0xffffffffffffffff
5.1.1.1:29439 1.1.1.1:65535 ESTABLISHED 1 0xffffffffffffffea
6.1.1.1:5889 2.1.1.1:65535 ESTABLISHED 1 0xffffffffffffffec
6.1.1.1:5909 4.1.1.1:65535 ESTABLISHED 1 0x0000000000000001
10.1.1.1:179 10.1.1.2:48512 ESTABLISHED 1 0x000000000000002c
172.168.1.3:179 172.168.1.2:23298 ESTABLISHED 1 0xffffffffffffffad
172.168.1.3:29378 172.168.1.1:179 ESTABLISHED 1 0xffffffffffffffac
192.168.1.3:29379 192.168.1.2:179 ESTABLISHED 1 0xffffffffffffffae
192.168.1.3:29381 192.168.1.1:179 ESTABLISHED 1 0xffffffffffffffb0
(3) 查看业务流量的选路信息
¡ 查看Router A
# 配置Router E仅发起公网UDP业务至Router G(业务对应多个会话,即有多个不同五元组的业务流量),业务流量的DSCP值为1。查看隧道基于Flow ID的流量速率统计信息,仅业务流量模板1下的本端设备链路Tunnel 1有业务流量。说明设备通过业务流量模板1为DSCP值为1的业务流量,优先选择本端设备链路Tunnel 1进行传输。
[RouterA] display tunnel flow-statistics
Flow 1:
Interface Out pps Out bps
Tunnel1 300 300000
# 配置Router E仅发起公网UDP业务至Router G(业务对应多个会话,即有多个不同五元组的业务流量),业务流量的DSCP值为2。查看隧道基于Flow ID的流量速率统计信息,仅业务流量模板2下的本端设备链路Tunnel 1有业务流量。说明设备通过业务流量模板2为DSCP值为2的业务流量,优先选择本端设备链路Tunnel 1进行传输。
[RouterA] display tunnel flow-statistics
Flow 2:
Interface Out pps Out bps
Tunnel1 300 300000
¡ 查看Router B
# 配置Router F仅发起公网UDP业务至Router G(业务对应多个会话,即有多个不同五元组的业务流量),业务流量的DSCP值为1。查看隧道基于Flow ID的流量速率统计信息,仅业务流量模板1下的对端设备链路Tunnel 1有业务流量。说明设备通过业务流量模板1为DSCP值为1的业务流量,优先选择对端设备链路Tunnel 1进行传输。
[RouterB] display tunnel flow-statistics
Flow 1:
Interface Out pps Out bps
Tunnel1 300 300000
# 配置Router F仅发起公网UDP业务至Router G(业务对应多个会话,即有多个不同五元组的业务流量),业务流量的DSCP值为2。查看隧道基于Flow ID的流量速率统计信息,仅业务流量模板2下的对端设备链路Tunnel 1有业务流量。说明设备通过业务流量模板2为DSCP值为2的业务流量,优先选择对端设备链路Tunnel 1进行传输。
[RouterB] display tunnel flow-statistics
Flow 1:
Interface Out pps Out bps
Tunnel1 300 300000
¡ 查看Router C
# 配置Router G仅发起UDP业务至Router E(业务对应多个会话,即有多个不同五元组的业务流量),业务流量的DSCP值为1。查看隧道基于Flow ID的流量速率统计信息,业务流量模板1下Tunnel 1和Tunnle 2都有业务流量。说明设备通过业务流量模板1为DSCP值为1的业务流量,以负载分担的方式选择链路进行传输。
[RouterC] display tunnel flow-statistics
Flow 1:
Interface Out pps Out bps
Tunnel1 300 300000
Tunnel2 300 300000
# 配置Router G仅发起UDP业务至Router E(业务对应多个会话,即有多个不同五元组的业务流量),业务流量的DSCP值为2。查看隧道基于Flow ID的流量速率统计信息,业务流量模板2下Tunnel 1和Tunnle 2都有业务流量。说明设备通过业务流量模板2为DSCP值为2的业务流量,以负载分担的方式选择链路进行传输。
[RouterC] display tunnel flow-statistics
Flow 2:
Interface Out pps Out bps
Tunnel1 300 300000
Tunnel2 300 300000
配置Router G发起业务到Router F时,Router C上的选路信息类似,不作介绍。
(4) 通过快转表查看链路的切换情况
# 配置Router E仅发起公网UDP业务至Router G(业务对应多个会话,即有多个不同五元组的业务流量),业务流量的DSCP值为1。此时,查看快转表,目的地址10.1.1.2的流量出接口为Vsi1。
[RouterA] display ip fast-forwarding cache 10.1.1.2
Total number of fast-forwarding entries: 2
SIP SPort DIP DPort Pro Input_If Output_If Flg
30.1.1.2 246 10.1.1.2 2048 1 GE1/0/3 Vsi1 1
# 将Tunnel1 shutdown后,再查看快转表,出接口变为重定向接口GE1/0/6。表明当本端设备链路不是最优链路时,本端设备会将报文发送到对端设备上,由对端设备进行转发。.
[RouterA-Tunnel1] display ip fast-forwarding cache 10.1.1.2
Total number of fast-forwarding entries: 2
SIP SPort DIP DPort Pro Input_If Output_If Flg
30.1.1.2 246 10.1.1.2 2048 1 GE1/0/3 GE1/0/6 1
在图1-17所示的VXLAN组网中,Router A和Router B组建协同选路设备组作为Hub侧,Router C作为Spoke侧。通过配置智能选路,流量从Spoke侧流向Hub侧或者从Hub侧流向Spoke侧时,按照为其定义的选路策略进行选路。具体组网需求如下:
· 在Transport network内配置OSPF协议,使Router A、Router B和Router C之间路由可达。
· 基于Transport network配置VXLAN,Router A、Router B和Router C为VTEP设备,Router A和Router C之间、Router B和Router C之间分别配置两条VXLAN隧道。
· Router A、Router B和Router C上均创建VSI虚接口VSI-interface 1、VSI-interface 2。通过配置VSI实例与VSI虚接口关联,实现每个Hub设备和Spoke设备间,VSI虚接口与VXLAN隧道一一对应。
· 配置Router A、Router B和Router C为分布式VXLAN IP网关,并在Router A、Router B、 Router C、Router E、Router F和Router G配置BGP协议,使Router A、Router B和Router C上分别存在两条及以上到其对应Hub或Spoke的、以VSI虚接口为出接口的等价路由。
· Router A和Router B非直连,两者之间建立GRE隧道,组成协同选路Hub组。其中,Router A和Router B使用公网地址建立选路协同关系,并配置对端设备在公网的报文重定向地址。
选路策略定义如下:
· Hub设备和Spoke设备分别配置业务流量模板1和业务流量模板2,指导DSCP为1和DSCP为2的报文选择最优的VXLAN隧道进行传输。
· Hub设备为业务流量选路时不进行质量检测,Spoke设备为业务流量选路时进行质量检测。
· Hub设备与Spoke设备的链路负载分担模式均为逐流加权选路模式(缺省模式,无需配置)。
· 协同选路设备组内的Hub设备Router A和Router B分别为业务流量配置两条优先级不同的链路。使得协同选路设备组收到公网业务报文时,优先选择Router A优先级较高的链路进行传输,当Router A优先级较高的链路不符合业务要求时,优先选择Router B优先级较高的链路进行传输。
· Spoke设备分别为业务流量配置两条优先级相同的链路,当两条链路都符合业务要求时会实现负载分担。
· 发送VXLAN隧道报文的物理接口带宽均符合业务流量带宽要求。
设备 |
接口 |
IP地址 |
设备 |
接口 |
IP地址 |
Router A |
GE1/0/1 |
1.1.1.1/24 |
Router D |
GE1/0/1 |
1.1.1.2/24 |
|
GE1/0/2 |
2.1.1.1/24 |
|
GE1/0/2 |
2.1.1.2/24 |
|
GE1/0/3 |
30.1.1.1/24 |
|
GE1/0/3 |
3.1.1.2/24 |
|
GE1/0/6 |
60.1.1.1/24 |
|
GE1/0/4 |
4.1.1.2/24 |
Router B |
GE1/0/3 |
3.1.1.1/24 |
|
GE1/0/5 |
5.1.1.2/24 |
|
GE1/0/4 |
4.1.1.1/24 |
|
GE1/0/6 |
6.1.1.2/24 |
|
GE1/0/5 |
50.1.1.1/24 |
Router E |
GE1/0/3 |
30.1.1.2/24 |
|
GE1/0/6 |
80.1.1.1/24 |
Router F |
GE1/0/5 |
50.1.1.2/24 |
Router C |
GE1/0/5 |
5.1.1.1/24 |
Router G |
GE1/0/1 |
10.1.1.2/24 |
|
GE1/0/6 |
6.1.1.1/24 |
Router H |
GE1/0/1 |
60.1.1.2/24 |
|
GE1/0/1 |
10.1.1.1/24 |
|
GE1/0/2 |
80.1.1.2/24 |
按照组网图配置各接口的IP地址和子网掩码。
(1) 在Transport network内配置OSPF协议
¡ 配置Router A
<RouterA> system-view
[RouterA] ospf 1
[RouterA-ospf-1] area 0
[RouterA-ospf-1-area-0.0.0.0] network 1.1.1.0 0.0.0.255
[RouterA-ospf-1-area-0.0.0.0] quit
[RouterA-ospf-1] quit
[RouterA] ospf 2
[RouterA-ospf-2] area 0
[RouterA-ospf-2-area-0.0.0.0] network 2.1.1.0 0.0.0.255
[RouterA-ospf-2-area-0.0.0.0] quit
[RouterA-ospf-2] quit
¡ 配置Router B
<RouterB> system-view
[RouterB] ospf 1
[RouterB-ospf-1] area 0
[RouterB-ospf-1-area-0.0.0.0] network 3.1.1.0 0.0.0.255
[RouterB-ospf-1-area-0.0.0.0] quit
[RouterB-ospf-1] quit
[RouterB] ospf 2
[RouterB-ospf-2] area 0
[RouterB-ospf-2-area-0.0.0.0] network 4.1.1.0 0.0.0.255
[RouterB-ospf-2-area-0.0.0.0] quit
[RouterB-ospf-2] quit
¡ 配置Router C
<RouterC> system-view
[RouterC] ospf 1
[RouterC-ospf-1] area 0
[RouterC-ospf-1-area-0.0.0.0] network 5.1.1.0 0.0.0.255
[RouterC-ospf-1-area-0.0.0.0] quit
[RouterC-ospf-1] quit
[RouterC] ospf 2
[RouterC-ospf-2] area 0
[RouterC-ospf-2-area-0.0.0.0] network 6.1.1.0 0.0.0.255
[RouterC-ospf-2-area-0.0.0.0] quit
[RouterC-ospf-2] quit
¡ 配置Router D
<RouterD> system-view
[RouterD] ospf 1
[RouterD-ospf-1] area 0
[RouterD-ospf-1-area-0.0.0.0] network 1.1.1.0 0.0.0.255
[RouterD-ospf-1-area-0.0.0.0] network 3.1.1.0 0.0.0.255
[RouterD-ospf-1-area-0.0.0.0] network 5.1.1.0 0.0.0.255
[RouterD-ospf-1-area-0.0.0.0] quit
[RouterD-ospf-1] quit
[RouterD] ospf 2
[RouterD-ospf-2] area 0
[RouterD-ospf-2-area-0.0.0.0] network 2.1.1.0 0.0.0.255
[RouterD-ospf-2-area-0.0.0.0] network 4.1.1.0 0.0.0.255
[RouterD-ospf-2-area-0.0.0.0] network 6.1.1.0 0.0.0.255
[RouterD-ospf-2-area-0.0.0.0] quit
[RouterD-ospf-2] quit
(2) 基于Transport network配置VXLAN
¡ 配置Router A
# 开启L2VPN能力。
[RouterA] l2vpn enable
# 创建VSI实例vpna和VXLAN 90。
[RouterA] vsi vpna
[RouterA-vsi-vpna] vxlan 90
[RouterA-vsi-vpna-vxlan-90] quit
[RouterA-vsi-vpna] quit
# 创建VSI实例vpnb和VXLAN 70。
[RouterA] vsi vpnb
[RouterA-vsi-vpnb] vxlan 70
[RouterA-vsi-vpnb-vxlan-70] quit
[RouterA-vsi-vpnb] quit
# 在Router A和Router C之间建立VXLAN隧道Tunnel 1,指定隧道的源端地址为接口GigabitEthernet1/0/1的地址1.1.1.1,目的端地址为Router C上接口GigabitEthernet1/0/5的地址5.1.1.1。
[RouterA] interface tunnel 1 mode vxlan
[RouterA-Tunnel1] source 1.1.1.1
[RouterA-Tunnel1] destination 5.1.1.1
[RouterA-Tunnel1] quit
# 在Router A和Router C之间建立VXLAN隧道Tunnel 2,指定隧道的源端地址为接口GigabitEthernet1/0/2的地址2.1.1.1,目的端地址为Router C上接口GigabitEthernet1/0/6的地址6.1.1.1。
[RouterA] interface tunnel 2 mode vxlan
[RouterA-Tunnel2] source 2.1.1.1
[RouterA-Tunnel2] destination 6.1.1.1
[RouterA-Tunnel2] quit
# 配置Tunnel 1与VXLAN 90关联。
[RouterA] vsi vpna
[RouterA-vsi-vpna] vxlan 90
[RouterA-vsi-vpna-vxlan-90] tunnel 1
[RouterA-vsi-vpna-vxlan-90] quit
[RouterA-vsi-vpna] quit
# 配置Tunnel 2与VXLAN 70关联。
[RouterA] vsi vpnb
[RouterA-vsi-vpnb] vxlan 70
[RouterA-vsi-vpnb-vxlan-70] tunnel 2
[RouterA-vsi-vpnb-vxlan-70] quit
[RouterA-vsi-vpnb] quit
# 创建VSI虚接口VSI-interface 1,并为其配置IP地址;指定该VSI虚接口为分布式本地网关接口,并开启本地代理ARP功能。
[RouterA] interface vsi-interface 1
[RouterA-Vsi-interface1] ip address 192.168.1.1 255.255.255.0
[RouterA-Vsi-interface1] distributed-gateway local
[RouterA-Vsi-interface1] local-proxy-arp enable
[RouterA-Vsi-interface1] quit
# 创建VSI虚接口VSI-interface 2,并为其配置IP地址;指定该VSI虚接口为分布式本地网关接口,并开启本地代理ARP功能。
[RouterA] interface vsi-interface 2
[RouterA-Vsi-interface2] ip address 172.168.1.1 255.255.255.0
[RouterA-Vsi-interface2] distributed-gateway local
[RouterA-Vsi-interface2] local-proxy-arp enable
[RouterA-Vsi-interface2] quit
# 配置VXLAN 90所在的VSI实例和接口VSI-interface 1关联,并配置该VSI实例的子网网段为192.168.1.0/24。
[RouterA] vsi vpna
[RouterA-vsi-vpna] gateway vsi-interface 1
[RouterA-vsi-vpna] gateway subnet 192.168.1.0 0.0.0.255
[RouterA-vsi-vpna] quit
# 配置VXLAN 70所在的VSI实例和接口VSI-interface 2关联,并配置该VSI实例的子网网段为172.168.1.0/24。
[RouterA] vsi vpnb
[RouterA-vsi-vpnb] gateway vsi-interface 2
[RouterA-vsi-vpnb] gateway subnet 172.168.1.0 0.0.0.255
[RouterA-vsi-vpnb] quit
¡ 配置Router B
# 开启L2VPN能力。
[RouterB] l2vpn enable
# 创建VSI实例vpna和VXLAN 90。
[RouterB] vsi vpna
[RouterB-vsi-vpna] vxlan 90
[RouterB-vsi-vpna-vxlan-90] quit
[RouterB-vsi-vpna] quit
# 创建VSI实例vpnb和VXLAN 70。
[RouterB] vsi vpnb
[RouterB-vsi-vpnb] vxlan 70
[RouterB-vsi-vpnb-vxlan-70] quit
[RouterB-vsi-vpnb] quit
# 在Router B和Router C之间建立VXLAN隧道Tunnel 3,指定隧道的源端地址为接口GigabitEthernet1/0/3的地址3.1.1.1,目的端地址为Router C上接口GigabitEthernet1/0/5的地址5.1.1.1。
[RouterB] interface tunnel 3 mode vxlan
[RouterB-Tunnel3] source 3.1.1.1
[RouterB-Tunnel3] destination 5.1.1.1
[RouterB-Tunnel3] quit
# 在Router B和Router C之间建立VXLAN隧道Tunnel 4,指定隧道的源端地址为接口GigabitEthernet1/0/4的地址4.1.1.1,目的端地址为Router C上接口GigabitEthernet1/0/6的地址6.1.1.1。
[RouterB] interface tunnel 4 mode vxlan
[RouterB-Tunnel4] source 4.1.1.1
[RouterB-Tunnel4] destination 6.1.1.1
[RouterB-Tunnel4] quit
# 配置Tunnel 3与VXLAN 90关联。
[RouterB] vsi vpna
[RouterB-vsi-vpna] vxlan 90
[RouterB-vsi-vpna-vxlan-90] tunnel 3
[RouterB-vsi-vpna-vxlan-90] quit
[RouterB-vsi-vpna] quit
# 配置Tunnel 4与VXLAN 70关联。
[RouterB] vsi vpnb
[RouterB-vsi-vpnb] vxlan 70
[RouterB-vsi-vpnb-vxlan-70] tunnel 4
[RouterB-vsi-vpnb-vxlan-70] quit
[RouterB-vsi-vpnb] quit
# 创建VSI虚接口VSI-interface 1,并为其配置IP地址;指定该VSI虚接口为分布式本地网关接口,并开启本地代理ARP功能。
[RouterB] interface vsi-interface 1
[RouterB-Vsi-interface1] ip address 192.168.1.2 255.255.255.0
[RouterB-Vsi-interface1] distributed-gateway local
[RouterB-Vsi-interface1] local-proxy-arp enable
[RouterB-Vsi-interface1] quit
# 创建VSI虚接口VSI-interface 2,并为其配置IP地址;指定该VSI虚接口为分布式本地网关接口,并开启本地代理ARP功能。
[RouterB] interface vsi-interface 2
[RouterB-Vsi-interface2] ip address 172.168.1.2 255.255.255.0
[RouterB-Vsi-interface2] distributed-gateway local
[RouterB-Vsi-interface2] local-proxy-arp enable
[RouterB-Vsi-interface2] quit
# 配置VXLAN 90所在的VSI实例和接口VSI-interface 1关联,并配置该VSI实例的子网网段为192.168.1.0/24。
[RouterB] vsi vpna
[RouterB-vsi-vpna] gateway vsi-interface 1
[RouterB-vsi-vpna] gateway subnet 192.168.1.0 0.0.0.255
[RouterB-vsi-vpna] quit
# 配置VXLAN 70所在的VSI实例和接口VSI-interface 2关联,并配置该VSI实例的子网网段为172.168.1.0/24。
[RouterB] vsi vpnb
[RouterB-vsi-vpnb] gateway vsi-interface 2
[RouterB-vsi-vpnb] gateway subnet 172.168.1.0 0.0.0.255
[RouterB-vsi-vpnb] quit
¡ 配置Router C
# 开启L2VPN能力。
[RouterC] l2vpn enable
# 创建VSI实例vpna和VXLAN 90。
[RouterC] vsi vpna
[RouterC-vsi-vpna] vxlan 90
[RouterC-vsi-vpna-vxlan-90] quit
[RouterC-vsi-vpna] quit
# 创建VSI实例vpnb和VXLAN 70。
[RouterC] vsi vpnb
[RouterC-vsi-vpnb] vxlan 70
[RouterC-vsi-vpnb-vxlan-70] quit
[RouterC-vsi-vpnb] quit
# 在Router C和Router A之间建立VXLAN隧道Tunnel 1,指定隧道的源端地址为接口GigabitEthernet1/0/5的地址5.1.1.1,目的端地址为Router A上接口GigabitEthernet1/0/1的地址1.1.1.1。
[RouterC] interface tunnel 1 mode vxlan
[RouterC-Tunnel1] source 5.1.1.1
[RouterC-Tunnel1] destination 1.1.1.1
[RouterC-Tunnel1] quit
# 在Router C和Router A之间建立VXLAN隧道Tunnel 2,指定隧道的源端地址为接口GigabitEthernet1/0/6的地址6.1.1.1,目的端地址为Router A上接口GigabitEthernet1/0/2的地址2.1.1.1。
[RouterC] interface tunnel 2 mode vxlan
[RouterC-Tunnel2] source 6.1.1.1
[RouterC-Tunnel2] destination 2.1.1.1
[RouterC-Tunnel2] quit
# 在Router C和Router B之间建立VXLAN隧道Tunnel 3,指定隧道的源端地址为接口GigabitEthernet1/0/5的地址5.1.1.1,目的端地址为Router B上接口GigabitEthernet1/0/3的地址3.1.1.1。
[RouterC] interface tunnel 3 mode vxlan
[RouterC-Tunnel3] source 5.1.1.1
[RouterC-Tunnel3] destination 3.1.1.1
[RouterC-Tunnel3] quit
# 在Router C和Router B之间建立VXLAN隧道Tunnel 4,指定隧道的源端地址为接口GigabitEthernet1/0/6的地址6.1.1.1,目的端地址为Router B上接口GigabitEthernet1/0/4的地址4.1.1.1。
[RouterC] interface tunnel 4 mode vxlan
[RouterC-Tunnel4] source 6.1.1.1
[RouterC-Tunnel4] destination 4.1.1.1
[RouterC-Tunnel4] quit
# 配置Tunnel 1、Tunnel 3与VXLAN 90关联。
[RouterC] vsi vpna
[RouterC-vsi-vpna] vxlan 90
[RouterC-vsi-vpna-vxlan-90] tunnel 1
[RouterC-vsi-vpna-vxlan-90] tunnel 3
[RouterC-vsi-vpna-vxlan-90] quit
[RouterC-vsi-vpna] quit
# 配置Tunnel 2、Tunnel 4与VXLAN 70关联。
[RouterC] vsi vpnb
[RouterC-vsi-vpnb] vxlan 70
[RouterC-vsi-vpnb-vxlan-70] tunnel 2
[RouterC-vsi-vpnb-vxlan-70] tunnel 4
[RouterC-vsi-vpnb-vxlan-70] quit
[RouterC-vsi-vpnb] quit
# 创建VSI虚接口VSI-interface 1,并为其配置IP地址;指定该VSI虚接口为分布式本地网关接口,并开启本地代理ARP功能。
[RouterC] interface vsi-interface 1
[RouterC-Vsi-interface1] ip address 192.168.1.3 255.255.255.0
[RouterC-Vsi-interface1] distributed-gateway local
[RouterC-Vsi-interface1] local-proxy-arp enable
[RouterC-Vsi-interface1] quit
# 创建VSI虚接口VSI-interface 2,并为其配置IP地址;指定该VSI虚接口为分布式本地网关接口,并开启本地代理ARP功能。
[RouterC] interface vsi-interface 2
[RouterC-Vsi-interface2] ip address 172.168.1.3 255.255.255.0
[RouterC-Vsi-interface2] distributed-gateway local
[RouterC-Vsi-interface2] local-proxy-arp enable
[RouterC-Vsi-interface2] quit
# 配置VXLAN 90所在的VSI实例和接口VSI-interface 1关联,并配置该VSI实例的子网网段为192.168.1.0/24。
[RouterC] vsi vpna
[RouterC-vsi-vpna] gateway vsi-interface 1
[RouterC-vsi-vpna] gateway subnet 192.168.1.0 0.0.0.255
[RouterC-vsi-vpna] quit
# 配置VXLAN 70所在的VSI实例和接口VSI-interface 2关联,并配置该VSI实例的子网网段为172.168.1.0/24。
[RouterC] vsi vpnb
[RouterC-vsi-vpnb] gateway vsi-interface 2
[RouterC-vsi-vpnb] gateway subnet 172.168.1.0 0.0.0.255
[RouterC-vsi-vpnb] quit
(3) 配置BGP协议
¡ 配置Router A
[RouterA] bgp 100
[RouterA-bgp-default] peer 30.1.1.2 as-number 100
[RouterA-bgp-default] peer 172.168.1.3 as-number 200
[RouterA-bgp-default] peer 192.168.1.3 as-number 200
[RouterA-bgp-default] address-family ipv4 unicast
[RouterA-bgp-default-ipv4] balance 4
[RouterA-bgp-default-ipv4] peer 30.1.1.2 enable
[RouterA-bgp-default-ipv4] peer 30.1.1.2 next-hop-local
[RouterA-bgp-default-ipv4] peer 172.168.1.3 enable
[RouterA-bgp-default-ipv4] peer 192.168.1.3 enable
[RouterA-bgp-default-ipv4] quit
[RouterA-bgp-default] quit
¡ 配置Router B
[RouterB] bgp 100
[RouterB-bgp-default] peer 50.1.1.2 as-number 100
[RouterB-bgp-default] peer 172.168.1.3 as-number 200
[RouterB-bgp-default] peer 192.168.1.3 as-number 200
[RouterB-bgp-default] address-family ipv4 unicast
[RouterB-bgp-default-ipv4] balance 4
[RouterB-bgp-default-ipv4] peer 50.1.1.2 enable
[RouterB-bgp-default-ipv4] peer 50.1.1.2 next-hop-local
[RouterB-bgp-default-ipv4] peer 172.168.1.3 enable
[RouterB-bgp-default-ipv4] peer 192.168.1.3 enable
[RouterB-bgp-default-ipv4] quit
[RouterB-bgp-default] quit
¡ 配置Router C
[RouterC] bgp 200
[RouterC-bgp-default] peer 10.1.1.2 as-number 200
[RouterC-bgp-default] peer 172.168.1.1 as-number 100
[RouterC-bgp-default] peer 192.168.1.1 as-number 100
[RouterC-bgp-default] peer 172.168.1.2 as-number 100
[RouterC-bgp-default] peer 192.168.1.2 as-number 100
[RouterC-bgp-default] address-family ipv4 unicast
[RouterC-bgp-default-ipv4] balance 4
[RouterC-bgp-default-ipv4] peer 10.1.1.2 enable
[RouterC-bgp-default-ipv4] peer 10.1.1.2 next-hop-local
[RouterC-bgp-default-ipv4] peer 172.168.1.1 enable
[RouterC-bgp-default-ipv4] peer 192.168.1.1 enable
[RouterC-bgp-default-ipv4] peer 172.168.1.2 enable
[RouterC-bgp-default-ipv4] peer 192.168.1.2 enable
[RouterC-bgp-default-ipv4] quit
[RouterC-bgp-default] quit
¡ 配置Router E
<RouterE> system-view
[RouterE] bgp 100
[RouterE-bgp-default] peer 30.1.1.1 as-number 100
[RouterE-bgp-default] address-family ipv4 unicast
[RouterE-bgp-default] import-route direct
[RouterE-bgp-default-ipv4] peer 30.1.1.1 enable
[RouterE-bgp-default-ipv4] quit
[RouterE-bgp-default] quit
¡ 配置Router F
<RouterF> system-view
[RouterF] bgp 100
[RouterF-bgp-default] peer 50.1.1.1 as-number 100
[RouterF-bgp-default] address-family ipv4 unicast
[RouterF-bgp-default] import-route direct
[RouterF-bgp-default-ipv4] peer 50.1.1.1 enable
[RouterF-bgp-default-ipv4] quit
[RouterF-bgp-default] quit
¡ 配置Router G
<RouterG> system-view
[RouterG] bgp 200
[RouterG-bgp-default] peer 10.1.1.1 as-number 200
[RouterG-bgp-default] address-family ipv4 unicast
[RouterG-bgp-default] import-route direct
[RouterG-bgp-default-ipv4] peer 10.1.1.1 enable
[RouterG-bgp-default-ipv4] quit
[RouterG-bgp-default] quit
(4) 配置智能选路基本功能
¡ 配置Router A
# 开启RIR服务器功能,配置探测信息同步端口号。
[RouterA] rir
[RouterA-rir] server enable
[RouterA-rir] probe sync-port 65535
# 配置选路延迟时间为30秒,选路调整周期为60秒。
[RouterA-rir] link-select delay 30
[RouterA-rir] link-select suppress-period 60
[RouterA-rir] quit
# 开启NQA服务器功能,并在NQA服务器上配置UDP监听服务。
[RouterA] nqa server enable
[RouterA] nqa server udp-echo 1.1.1.1 65501 high-performance-mode
[RouterA] nqa server udp-echo 1.1.1.1 65502 high-performance-mode
[RouterA] nqa server udp-echo 2.1.1.1 65501 high-performance-mode
[RouterA] nqa server udp-echo 2.1.1.1 65502 high-performance-mode
# 配置VSI虚接口,在接口VSI-interface 1下配置链路类型为MPLS,在接口VSI-interface 2下配置链路类型为Internet。
[RouterA] interface vsi-interface 1
[RouterA-Vsi-interface1] rir link-type mpls index 1
[RouterA-Vsi-interface1] quit
[RouterA] interface vsi-interface 2
[RouterA-Vsi-interface2] rir link-type internet index 2
[RouterA-Vsi-interface2] quit
# 配置VXLAN隧道Tunnel 1和Tunnel 2的带宽为30000kbps,并指定发送VXLAN隧道Tunnel 1报文的物理出接口为GigabitEthernet1/0/1,发送VXLAN隧道Tunnel 2报文的物理出接口为GigabitEthernet1/0/2。
[RouterA] interface tunnel 1 mode vxlan
[RouterA-Tunnel1] bandwidth 30000
[RouterA-Tunnel1] tunnel out-interface gigabitethernet 1/0/1
[RouterA-Tunnel1] quit
[RouterA] interface tunnel 2 mode vxlan
[RouterA-Tunnel2] bandwidth 30000
[RouterA-Tunnel2] tunnel out-interface gigabitethernet 1/0/2
[RouterA-Tunnel2] quit
# 创建业务流量模板1和业务流量模板2,分别为业务流量模板下的链路配置不同的链路优先级,并在业务流量模板下分别配置会话预计使用的带宽。两个业务流量模板都不配置质量策略。
[RouterA] rir
[RouterA-rir] flow 1
[RouterA-rir-flow-1] path link-type mpls index 1 preference 10
[RouterA-rir-flow-1] path link-type internet index 2 preference 30
[RouterA-rir-flow-1] expect-bandwidth 300
[RouterA-rir-flow-1] quit
[RouterA-rir] quit
[RouterA-rir] flow 2
[RouterA-rir-flow-2] path link-type mpls index 1 preference 20
[RouterA-rir-flow-2] path link-type internet index 2 preference 40
[RouterA-rir-flow-2] expect-bandwidth 300
[RouterA-rir-flow-2] quit
[RouterA-rir] quit
# 配置QoS策略重标记流量,并将策略应用在接口GigabitEthernet1/0/3上,其中DSCP为1的报文Flow ID标记为1,DSCP为2的报文Flow ID标记为2。
[RouterA] traffic classifier class1
[RouterA-classifier-class1] if-match dscp 1
[RouterA-classifier-class1] quit
[RouterA] traffic classifier class2
[RouterA-classifier-class2] if-match dscp 2
[RouterA-classifier-class2] quit
[RouterA] traffic behavior behav1
[RouterA-behavior-behav1] remark flow-id 1
[RouterA-behavior-behav1] quit
[RouterA] traffic behavior behav2
[RouterA-behavior-behav2] remark flow-id 2
[RouterA-behavior-behav2] quit
[RouterA] qos policy policy1
[RouterA-qospolicy-policy1] classifier class1 behavior behav1
[RouterA-qospolicy-policy1] classifier class2 behavior behav2
[RouterA-qospolicy-policy1] quit
[RouterA] interface gigabitethernet 1/0/3
[RouterA-GigabitEthernet1/0/3] qos apply policy policy1 inbound
[RouterA-GigabitEthernet1/0/3] quit
¡ 配置Router B
# 开启RIR服务器功能,配置探测信息同步端口号。
[RouterB] rir
[RouterB-rir] server enable
# 配置选路延迟时间为30秒,选路调整周期为60秒。
[RouterB-rir] link-select delay 30
[RouterB-rir] link-select suppress-period 60
[RouterB-rir] probe sync-port 65535
[RouterB-rir] quit
# 开启NQA服务器功能,并在NQA服务器上配置UDP监听服务。
[RouterB] nqa server enable
[RouterB] nqa server udp-echo 3.1.1.1 65501 high-performance-mode
[RouterB] nqa server udp-echo 3.1.1.1 65502 high-performance-mode
[RouterB] nqa server udp-echo 4.1.1.1 65501 high-performance-mode
[RouterB] nqa server udp-echo 4.1.1.1 65502 high-performance-mode
# 配置VSI虚接口,在接口VSI-interface 1下配置链路类型为MPLS,在接口VSI-interface 2下配置链路类型为Internet。
[RouterB] interface vsi-interface 1
[RouterB-Vsi-interface1] rir link-type mpls index 1
[RouterB-Vsi-interface1] quit
[RouterB] interface vsi-interface 2
[RouterB-Vsi-interface2] rir link-type internet index 2
[RouterB-Vsi-interface2] quit
# 配置VXLAN隧道Tunnel 3和Tunnel 4的带宽为30000kbps,并指定发送VXLAN隧道Tunnel 3报文的物理出接口为GigabitEthernet1/0/3,发送VXLAN隧道Tunnel 4报文的物理出接口为GigabitEthernet1/0/4。
[RouterB] interface tunnel 3 mode vxlan
[RouterB-Tunnel3] bandwidth 30000
[RouterB-Tunnel3] tunnel out-interface gigabitethernet 1/0/3
[RouterB-Tunnel3] quit
[RouterB] interface tunnel 4 mode vxlan
[RouterB-Tunnel4] bandwidth 30000
[RouterB-Tunnel4] tunnel out-interface gigabitethernet 1/0/4
[RouterB-Tunnel4] quit
# 创建业务流量模板1和业务流量模板2,分别为业务流量模板下的链路配置相同的链路优先级,并在业务流量模板下分别配置会话预计使用的带宽。两个业务流量模板都不配置质量策略。
[RouterB-rir] flow 1
[RouterB-rir-flow-1] path link-type mpls index 1 preference 10
[RouterB-rir-flow-1] path link-type internet index 2 preference 30
[RouterB-rir-flow-1] expect-bandwidth 300
[RouterB-rir-flow-1] quit
[RouterB-rir] quit
[RouterB-rir] flow 2
[RouterB-rir-flow-2] path link-type mpls index 1 preference 20
[RouterB-rir-flow-2] path link-type internet index 2 preference 40
[RouterB-rir-flow-2] expect-bandwidth 300
[RouterB-rir-flow-2] quit
[RouterB-rir] quit
# 配置QoS策略重标记流量,并将策略应用在接口GigabitEthernet1/0/5上,其中DSCP为1的报文Flow ID标记为1,DSCP为2的报文Flow ID标记为2。
[RouterB] traffic classifier class1
[RouterB-classifier-class1] if-match dscp 1
[RouterB-classifier-class1] quit
[RouterB] traffic classifier class2
[RouterB-classifier-class2] if-match dscp 2
[RouterB-classifier-class2] quit
[RouterB] traffic behavior behav1
[RouterB-behavior-behav1] remark flow-id 1
[RouterB-behavior-behav1] quit
[RouterB] traffic behavior behav2
[RouterB-behavior-behav2] remark flow-id 2
[RouterB-behavior-behav2] quit
[RouterB] qos policy policy1
[RouterB-qospolicy-policy1] classifier class1 behavior behav1
[RouterB-qospolicy-policy1] classifier class2 behavior behav2
[RouterB-qospolicy-policy1] quit
[RouterB] interface gigabitethernet 1/0/5
[RouterB-GigabitEthernet1/0/5] qos apply policy policy1 inbound
[RouterB-GigabitEthernet1/0/5] quit
¡ 配置Router C
# 开启RIR客户端功能,配置探测信息同步端口号。
[RouterC] rir
[RouterC-rir] client enable
[RouterC-rir] probe sync-port 65535
# 配置选路延迟时间为30秒,选路调整周期为60秒。
[RouterC-rir] link-select delay 30
[RouterC-rir] link-select suppress-period 60
[RouterC-rir] quit
# 开启NQA客户端功能。
[RouterD] nqa agent enable
# 配置NQA链路通断探测。
[RouterC] rir
[RouterC-rir] probe connect interval 300 timeout 65535
# 创建NQA链路质量探测1和NQA链路质量探测2,分别配置不同的链路质量探测参数。
[RouterC-rir] nqa 1
[RouterC-rir-nqa-1] probe packet-dscp 10
[RouterC-rir-nqa-1] probe interval 60
[RouterC-rir-nqa-1] probe packet-interval 15
[RouterC-rir-nqa-1] probe packet-number 60
[RouterC-rir-nqa-1] probe packet-timeout 500
[RouterC-rir-nqa-1] probe port 65501
[RouterC-rir-nqa-1] quit
[RouterC-rir] nqa 2
[RouterC-rir-nqa-2] probe packet-dscp 20
[RouterC-rir-nqa-2] probe interval 120
[RouterC-rir-nqa-2] probe packet-interval 30
[RouterC-rir-nqa-2] probe packet-number 120
[RouterC-rir-nqa-2] probe packet-timeout 1000
[RouterC-rir-nqa-2] probe port 65502
[RouterC-rir-nqa-2] quit
# 创建SLA 1和SLA 2,分别配置不同的链路质量阈值。
[RouterC-rir] sla 1
[RouterC-rir-sla-1] jitter threshold 20
[RouterC-rir-sla-1] delay threshold 60
[RouterC-rir-sla-1] packet-loss threshold 150
[RouterC-rir-sla-1] quit
[RouterC-rir] sla 2
[RouterC-rir-sla-2] jitter threshold 40
[RouterC-rir-sla-2] delay threshold 120
[RouterC-rir-sla-2] packet-loss threshold 300
[RouterC-rir-sla-2] quit
[RouterC-rir] quit
# 配置VSI虚接口,在接口VSI-interface 1下配置链路类型为MPLS,在接口VSI-interface 2下配置链路类型为Internet。
[RouterC] interface vsi-interface 1
[RouterC-Vsi-interface1] rir link-type mpls index 1
[RouterC-Vsi-interface1] quit
[RouterC] interface vsi-interface 2
[RouterC-Vsi-interface2] rir link-type internet index 2
[RouterC-Vsi-interface2] quit
# 配置VXLAN隧道Tunnel 1、Tunnel 2、Tunnel 3和Tunnel 4的带宽为30000kbps,并指定发送VXLAN隧道Tunnel 1和Tunnel 3报文的物理出接口为GigabitEthernet1/0/5,发送VXLAN隧道Tunnel 2和Tunnel 4报文的物理出接口为GigabitEthernet1/0/6。
[RouterC] interface tunnel 1 mode vxlan
[RouterC-Tunnel1] bandwidth 30000
[RouterC-Tunnel1] tunnel out-interface gigabitethernet 1/0/5
[RouterC-Tunnel1] quit
[RouterC] interface tunnel 2 mode vxlan
[RouterC-Tunnel2] bandwidth 30000
[RouterC-Tunnel2] tunnel out-interface gigabitethernet 1/0/6
[RouterC-Tunnel2] quit
[RouterC] interface tunnel 3 mode vxlan
[RouterC-Tunnel3] bandwidth 30000
[RouterC-Tunnel3] tunnel out-interface gigabitethernet 1/0/5
[RouterC-Tunnel3] quit
[RouterC] interface tunnel 4 mode vxlan
[RouterC-Tunnel4] bandwidth 30000
[RouterC-Tunnel4] tunnel out-interface gigabitethernet 1/0/6
[RouterC-Tunnel4] quit
# 创建业务流量模板1和业务流量模板2,分别业务流量模板下的链路配置不同的链路优先级,并为不同的业务流量模板配置不同的质量策略,并在业务流量模板下分别配置会话预计使用的带宽。
[RouterC] rir
[RouterC-rir] flow 1
[RouterC-rir-flow-1] path link-type mpls index 1 preference 10
[RouterC-rir-flow-1] path link-type internet index 2 preference 10
[RouterC-rir-flow-1] expect-bandwidth 300
[RouterC-rir-flow-1] quality-policy sla 1 nqa 1
[RouterC-rir-flow-1] quit
[RouterC-rir] flow 2
[RouterC-rir-flow-2] path link-type mpls index 1 preference 20
[RouterC-rir-flow-2] path link-type internet index 2 preference 20
[RouterC-rir-flow-1] expect-bandwidth 300
[RouterC-rir-flow-2] quality-policy sla 2 nqa 2
[RouterC-rir-flow-2] quit
[RouterC-rir] quit
# 配置QoS策略重标记流量,并将策略应用在接口GigabitEthernet1/0/1上,其中DSCP为1的报文Flow ID标记为1,DSCP为2的报文Flow ID标记为2。
[RouterC] traffic classifier class1
[RouterC-classifier-class1] if-match dscp 1
[RouterC-classifier-class1] quit
[RouterC] traffic classifier class2
[RouterC-classifier-class2] if-match dscp 2
[RouterC-classifier-class2] quit
[RouterC] traffic behavior behav1
[RouterC-behavior-behav1] remark flow-id 1
[RouterC-behavior-behav1] quit
[RouterC] traffic behavior behav2
[RouterC-behavior-behav2] remark flow-id 2
[RouterC-behavior-behav2] quit
[RouterC] qos policy policy1
[RouterC-qospolicy-policy1] classifier class1 behavior behav1
[RouterC-qospolicy-policy1] classifier class2 behavior behav2
[RouterC-qospolicy-policy1] quit
[RouterC] interface gigabitethernet 1/0/1
[RouterC-GigabitEthernet1/0/1] qos apply policy policy1 inbound
[RouterC-GigabitEthernet1/0/1] quit
(5) 配置协同选路功能
¡ 配置Router A
# 配置GRE隧道。
[RouterA] interface tunnel 10 mode gre
[RouterA-Tunnel10] ip address 150.1.1.1 255.255.255.0
[RouterA-Tunnel10] source 60.1.1.1
[RouterA-Tunnel10] destination 80.1.1.1
# 将QoS策略policy1应用在隧道接口Tunnel 10上。
[RouterA] interface tunnel 10
[RouterA-Tunnel10] qos apply policy policy1 inbound
[RouterA-Tunnel10] quit
# 配置VXLAN隧道Tunnel 1和Tunnel 2属于协同链路组3。
[RouterA] interface tunnel 1
[RouterA-Tunnel1] rir collaboration-link-group 3
[RouterA-Tunnel1] quit
[RouterA] interface tunnel 2
[RouterA-Tunnel2] rir collaboration-link-group 3
[RouterA-Tunnel2] quit
# 配置Router A与Router B建立选路协同关系,二者同步链路数据使用的TCP端口号为3000。
[RouterA] rir
[RouterA-rir] collaboration peer 150.1.1.2 local 150.1.1.1 sync-port 3000
[RouterA] quit
# 配置Router B在公网的报文重定向地址150.1.1.2。
[RouterA] rir
[RouterA-rir] collaboration peer 150.1.1.2 redirect 150.1.1.2
[RouterA] quit
¡ 配置Router B
# 配置GRE隧道。
[RouterB] interface tunnel 10 mode gre
[RouterB-Tunnel10] ip address 150.1.1.2 255.255.255.0
[RouterB-Tunnel10] source 80.1.1.1
[RouterB-Tunnel10] destination 60.1.1.1
# 将QoS策略policy1应用在隧道接口Tunnel 10上。
[RouterB] interface tunnel 10
[RouterB-Tunnel10] qos apply policy policy1 inbound
[RouterB-Tunnel10] quit
# 配置VXLAN隧道Tunnel 3和Tunnel 4属于协同链路组3。
[RouterB] interface tunnel 3
[RouterB-Tunnel3] rir collaboration-link-group 3
[RouterB-Tunnel3] quit
[RouterB] interface tunnel 4
[RouterB-Tunnel4] rir collaboration-link-group 3
[RouterB-Tunnel4] quit
# 配置Router B与Router A建立选路协同关系,二者同步链路数据使用的TCP端口号为3000。
[RouterB] rir
[RouterB-rir] collaboration peer 150.1.1.1 local 150.1.1.2 sync-port 3000
[RouterB] quit
# 配置Router A在公网的报文重定向地址150.1.1.1。
[RouterB] rir
[RouterB-rir] collaboration peer 150.1.1.1 redirect 150.1.1.1
[RouterB] quit
(6) 开启隧道基于Flow ID的流量速率统计功能
¡ 配置Router A
# 开启隧道基于Flow ID的流量速率统计功能,并配置统计时间间隔为5秒。
[RouterA] tunnel flow-statistics enable
[RouterA] tunnel flow-statistics interval 5
¡ 配置Router B
# 开启隧道基于Flow ID的流量速率统计功能,并配置统计时间间隔为5秒。
[RouterB] tunnel flow-statistics enable
[RouterB] tunnel flow-statistics interval 5
¡ 配置Router C
# 开启隧道基于Flow ID的流量速率统计功能,并配置统计时间间隔为5秒。
[RouterC] tunnel flow-statistics enable
[RouterC] tunnel flow-statistics interval 5
(1) 查看等价路由
# 在Router A上查看目的地址为Router G的路由信息,可以看到两条出接口为VSI虚接口的等价路由。
[RouterA] display ip routing-table 10.1.1.2
Summary count : 2
Destination/Mask Proto Pre Cost NextHop Interface
10.1.1.0/24 BGP 255 0 172.168.1.3 Vsi2
BGP 255 0 192.168.1.3 Vsi1
# 在Router B上查看目的地址为Router G的路由信息,可以看到两条出接口为VSI虚接口的等价路由。
[RouterB] display ip routing-table 10.1.1.2
Summary count : 2
Destination/Mask Proto Pre Cost NextHop Interface
10.1.1.0/24 BGP 255 0 172.168.1.3 Vsi2
BGP 255 0 192.168.1.3 Vsi1
# 在Router C上查看目的地址为Router E和Router F的路由信息,可以分别看到两条出接口为VSI虚接口的等价路由。
[RouterC] display ip routing-table 30.1.1.2
Summary count : 2
Destination/Mask Proto Pre Cost NextHop Interface
30.1.1.0/24 BGP 255 0 172.168.1.1 Vsi2
BGP 255 0 192.168.1.1 Vsi1
[RouterC] display ip routing-table 50.1.1.2
Summary count : 2
Destination/Mask Proto Pre Cost NextHop Interface
50.1.1.0/24 BGP 255 0 172.168.1.2 Vsi2
BGP 255 0 192.168.1.2 Vsi1
(2) 查看TCP连接
# 在Router A上(Hub设备)查看TCP连接信息,可以看到两条本地端口号为65535的TCP连接和一条目的端口号为3000的TCP连接建立完成。其中,Spoke设备可以使用本地端口号为65535的TCP连接将链路探测质量结果同步到本端Hub设备,本端Hub设备可以使用端口号为3000的TCP连接将链路数据同步给对端Hub设备。(本地端口号或对端端口号为179的TCP连接由BGP协议运行时生成)
[RouterA] display tcp
*: TCP connection with authentication
Local Addr:port Foreign Addr:port State Slot PCB
0.0.0.0:179 30.1.1.2:0 LISTEN 1 0xffffffffffffffa0
0.0.0.0:179 172.168.1.3:0 LISTEN 1 0x00000000000003f2
0.0.0.0:179 192.168.1.3:0 LISTEN 1 0x000000000000049a
0.0.0.0:65535 0.0.0.0:0 LISTEN 1 0x0000000000000382
1.1.1.1:65535 5.1.1.1:22235 ESTABLISHED 1 0x0000000000000520
2.1.1.1:65535 6.1.1.1:62560 ESTABLISHED 1 0x0000000000000498
30.1.1.1:179 30.1.1.2:12480 ESTABLISHED 1 0x00000000000003ec
150.1.1.1:49210 150.1.1.2:3000 ESTABLISHED 1 0x000000000000050c
172.168.1.1:179 172.168.1.3:62558 ESTABLISHED 1 0x0000000000000496
192.168.1.1:179 192.168.1.3:22233 ESTABLISHED 1 0x000000000000051f
# 在Router B上(Hub设备)查看TCP连接信息,可以看到两条本地端口号为65535的TCP连接和一条本地端口号为3000的TCP连接建立完成。其中,Spoke设备可以使用本地端口号为65535的TCP连接将链路探测质量结果同步到本端Hub设备,本端Hub设备可以使用端口号为3000的TCP连接将链路数据同步给对端Hub设备。(本地端口号或对端端口号为179的TCP连接由BGP协议运行时生成)
[RouterB] display tcp
*: TCP connection with authentication
Local Addr:port Foreign Addr:port State Slot PCB
0.0.0.0:179 50.1.1.2:0 LISTEN 1 0xffffffffffffffa0
0.0.0.0:179 172.168.1.3:0 LISTEN 1 0xffffffffffffffa2
0.0.0.0:179 192.168.1.3:0 LISTEN 1 0xffffffffffffffa1
0.0.0.0:65535 0.0.0.0:0 LISTEN 1 0xffffffffffffffe8
3.1.1.1:65535 5.1.1.1:5908 ESTABLISHED 1 0xffffffffffffffea
4.1.1.1:65535 6.1.1.1:5909 ESTABLISHED 1 0xffffffffffffffeb
50.1.1.1:179 50.1.1.2:30400 ESTABLISHED 1 0x0000000000000019
150.1.1.2:3000 150.1.1.1:0 LISTEN 1 0x000000000000001a
150.1.1.2:3000 150.1.1.1:49210 ESTABLISHED 1 0x000000000000001b
172.168.1.2:23298 172.168.1.3:179 ESTABLISHED 1 0xffffffffffffffa6
192.168.1.2:179 192.168.1.3:29379 ESTABLISHED 1 0xffffffffffffffa7
# 在Router C上(Spoke设备)查看TCP连接信息,可以看到四条本地端口号为65535的TCP连接建立完成,Spoke设备可以使用该TCP连接将链路探测质量结果同步到对应的Hub设备。(本地端口号或对端端口号为179的TCP连接由BGP协议运行时生成)
[RouterC] display tcp
*: TCP connection with authentication
Local Addr:port Foreign Addr:port State Slot PCB
0.0.0.0:179 10.1.1.2:0 LISTEN 1 0xffffffffffffffa6
0.0.0.0:179 172.168.1.1:0 LISTEN 1 0x0000000000000034
0.0.0.0:179 172.168.1.2:0 LISTEN 1 0xffffffffffffffa4
0.0.0.0:179 192.168.1.1:0 LISTEN 1 0x00000000000000d6
0.0.0.0:179 192.168.1.2:0 LISTEN 1 0xffffffffffffffa2
5.1.1.1:5908 3.1.1.1:65535 ESTABLISHED 1 0xffffffffffffffff
5.1.1.1:22235 1.1.1.1:65535 ESTABLISHED 1 0x000000000000014b
6.1.1.1:5909 4.1.1.1:65535 ESTABLISHED 1 0x0000000000000001
6.1.1.1:62560 2.1.1.1:65535 ESTABLISHED 1 0x00000000000000cf
10.1.1.1:179 10.1.1.2:48512 ESTABLISHED 1 0x000000000000002c
172.168.1.3:179 172.168.1.2:23298 ESTABLISHED 1 0xffffffffffffffad
172.168.1.3:62558 172.168.1.1:179 ESTABLISHED 1 0x00000000000000cd
192.168.1.3:22233 192.168.1.1:179 ESTABLISHED 1 0x0000000000000149
192.168.1.3:29379 192.168.1.2:179 ESTABLISHED 1 0xffffffffffffffae
(3) 查看业务流量的选路信息
¡ 查看Router A
# 配置Router E仅发起公网UDP业务至Router G(业务对应多个会话,即有多个不同五元组的业务流量),业务流量的DSCP值为1。查看隧道基于Flow ID的流量速率统计信息,仅业务流量模板1下的本端设备链路Tunnel 1有业务流量。说明设备通过业务流量模板1为DSCP值为1的业务流量,优先选择本端设备链路Tunnel 1进行传输。
[RouterA] display tunnel flow-statistics
Flow 1:
Interface Out pps Out bps
Tunnel1 300 300000
# 配置Router E仅发起公网UDP业务至Router G(业务对应多个会话,即有多个不同五元组的业务流量),业务流量的DSCP值为2。查看隧道基于Flow ID的流量速率统计信息,仅业务流量模板2下的本端设备链路Tunnel 1有业务流量。说明设备通过业务流量模板2为DSCP值为2的业务流量,优先选择本端设备链路Tunnel 1进行传输。
[RouterA] display tunnel flow-statistics
Flow 2:
Interface Out pps Out bps
Tunnel1 300 300000
¡ 查看Router B
# 配置Router F仅发起公网UDP业务至Router G(业务对应多个会话,即有多个不同五元组的业务流量),业务流量的DSCP值为1。查看隧道基于Flow ID的流量速率统计信息,仅业务流量模板1下的对端设备链路Tunnel 1有业务流量。说明设备通过业务流量模板1为DSCP值为1的业务流量,优先选择对端设备链路Tunnel 1进行传输。
[RouterB] display tunnel flow-statistics
Flow 1:
Interface Out pps Out bps
Tunnel1 300 300000
# 配置Router F仅发起公网UDP业务至Router G(业务对应多个会话,即有多个不同五元组的业务流量),业务流量的DSCP值为2。查看隧道基于Flow ID的流量速率统计信息,仅业务流量模板2下的对端设备链路Tunnel 1有业务流量。说明设备通过业务流量模板2为DSCP值为2的业务流量,优先选择对端设备链路Tunnel 1进行传输。
[RouterB] display tunnel flow-statistics
Flow 1:
Interface Out pps Out bps
Tunnel1 300 300000
¡ 查看Router C
# 配置Router G仅发起UDP业务至Router E(业务对应多个会话,即有多个不同五元组的业务流量),业务流量的DSCP值为1。查看隧道基于Flow ID的流量速率统计信息,业务流量模板1下Tunnel 1和Tunnle 2都有业务流量。说明设备通过业务流量模板1为DSCP值为1的业务流量,以负载分担的方式选择链路进行传输。
[RouterC] display tunnel flow-statistics
Flow 1:
Interface Out pps Out bps
Tunnel1 300 300000
Tunnel2 300 300000
# 配置Router G仅发起UDP业务至Router E(业务对应多个会话,即有多个不同五元组的业务流量),业务流量的DSCP值为2。查看隧道基于Flow ID的流量速率统计信息,业务流量模板2下Tunnel 1和Tunnle 2都有业务流量。说明设备通过业务流量模板2为DSCP值为2的业务流量,以负载分担的方式选择链路进行传输。
[RouterC] display tunnel flow-statistics
Flow 2:
Interface Out pps Out bps
Tunnel1 300 300000
Tunnel2 300 300000
配置Router G发起业务到Router F时,Router C上的选路信息类似,不作介绍。
(4) 通过快转表查看链路的切换情况
# 配置Router E仅发起公网UDP业务至Router G(业务对应多个会话,即有多个不同五元组的业务流量),业务流量的DSCP值为1。此时,查看快转表,目的地址10.1.1.2的流量出接口为Vsi1。
[RouterA] display ip fast-forwarding cache 10.1.1.2
Total number of fast-forwarding entries: 2
SIP SPort DIP DPort Pro Input_If Output_If Flg
30.1.1.2 246 10.1.1.2 2048 1 GE1/0/3 Vsi1 1
# 将Tunnel1 shutdown后,再查看快转表,出接口变为重定向接口Tunnel10(GRE隧道接口)。表明当本端设备链路不是最优链路时,本端设备会将报文发送到对端设备上,由对端设备进行转发。.
[RouterA-Tunnel1]display ip fast-forwarding cache 10.1.1.2
Total number of fast-forwarding entries: 2
SIP SPort DIP DPort Pro Input_If Output_If Flg
30.1.1.2 246 10.1.1.2 2048 1 GE1/0/3 Tun10 1
本节仅以IPv4站点接入IPv4网络为例,IPv4站点接入IPv6网络、IPv6站点接入IPv6网络、IPv6站点接入IPv4网络的配置与此类似。
在图1-18所示的SDWAN组网中,CPE 1和CPE 2部署在分支网络中,RR部署在数据中心网络中。通过智能选路,设备可以按照定义的选路策略为CPE与RR之间的业务流量选择合适的路径。具体组网需求如下:
· CPE 1、CPE 2和RR分别属于Site1、Site2和Site3,设备ID都为1。
· 在CPE 1、CPE 2和RR上配置iNQA功能,CPE 1、CPE 2和RR均为Collector,RR同时为Analyzer。
· CPE 1、CPE 2和RR的GigabitEthernet1/0/1接口连接到Internet1,GigabitEthernet1/0/2接口连接到Internet2。在CPE 1、CPE 2和RR上分别创建SDWAN隧道Tunnel 1和Tunnel 2,Tunnel 1的源接口和发送隧道报文的出接口为GigabitEthernet1/0/1,Tunnel 2的源接口和发送隧道报文的出接口为GigabitEthernet1/0/2。
· CPE 1、CPE 2和RR分别通过GigabitEthernet1/0/3连接到分支网络或数据中心网络的本地设备。
配置如下选路策略,使CPE 1、CPE 2和RR可以分别为不同业务报文(通过DSCP区分)选择最高优先级的一条或者两条链路(负载分担)进行转发。
· 配置业务流量模板1和业务流量模板2,指导DSCP为1和DSCP为2的报文选择最优的SDWAN隧道进行传输。
· 在CPE 1、CPE 2和RR分别配置业务流量模板1的质量策略关联SLA 1、业务流量模板2的质量策略关联SLA 2,按照质量策略为业务流量进行链路质量探测和评估。
· CPE 1、CPE 2和RR的链路负载分担模式均为逐流加权选路模式(缺省模式,无需配置)。
· CPE 1、CPE 2分别为业务流量配置两条优先级相同的链路,当两条链路都符合业务要求时会实现负载分担;RR分别为业务流量配置两条优先级不同的链路,优先为业务流量选择优先级较高的链路。
· 发送SDWAN隧道报文的物理接口带宽均符合业务流量带宽要求。
图1-18 基于SDWAN组网的智能选路配置举例示意图
· 配置各接口的IP地址和子网掩码,配置路由协议与静态路由,使各设备间路由可达,具体配置过程略。
· 配置NTP协议,使CPE 1、CPE 2和RR时间同步。
(1) 搭建SDWAN组网需要配置的SSL、BGP、IPsec、STUN等特性,本举例不作详细介绍。有关这些特性的详细介绍,请参见“SDWAN配置指导”中的“SDWAN”。
(2) 配置SDWAN全局参数
¡ 配置RR
# 配置RR的站点ID为3,站点名称为Site3,设备ID为1,站点角色为RR,系统IP为Loopback10接口下的主IP地址。
<RR> system-view
[RR] sdwan site-id 3
[RR] sdwan site-name Site3
[RR] sdwan device-id 1
[RR] sdwan site-role rr
[RR] sdwan system-ip loopback 10
# 配置SDWAN报文的源UDP端口号为3000。
[RR] sdwan encapsulation global-udp-port 3000
¡ 配置CPE 1
# 配置CPE 1的站点ID为1,站点名称为Site1,设备ID为1,站点角色为CPE,系统IP为Loopback10接口下的主IP地址。
<CPE1> system-view
[CPE1] sdwan site-id 1
[CPE1] sdwan site-name Site1
[CPE1] sdwan device-id 1
[CPE1] sdwan site-role cpe
[CPE1] sdwan system-ip loopback 10
# 配置SDWAN报文的源UDP端口号为3000。
[CPE1] sdwan encapsulation global-udp-port 3000
¡ 配置CPE 2
# 配置CPE 2的站点ID为2,站点名称为Site2,设备ID为1,站点角色为CPE,系统IP为Loopback10接口下的主IP地址。
<CPE2> system-view
[CPE2] sdwan site-id 2
[CPE2] sdwan site-name Site2
[CPE2] sdwan device-id 1
[CPE2] sdwan site-role cpe
[CPE2] sdwan system-ip loopback 10
# 配置SDWAN报文的源UDP端口号为3000。
[CPE1] sdwan encapsulation global-udp-port 3000
(3) 配置SDWAN服务器和客户端功能。
¡ 配置RR为SDWAN Server
# 在RR上配置SDWAN Server服务的TCP端口号为4000,与CPE(SDWAN Client)之间建立SSL连接时引用的SSL服务器端策略为plc1,并开启SDWAN Server服务。
[RR] sdwan server port 4000
[RR] sdwan ssl-server-policy plc1
[RR] sdwan server enable
¡ 配置CPE 1为SDWAN Client
# 指定SDWAN Server的System IP为130.1.1.1、IP地址为31.1.1.1、TCP端口号为4000,指定与RR(SDWAN server)建立SSL连接时引用的SSL客户端策略为plc1。
[CPE1] sdwan server system-ip 130.1.1.1 ip 31.1.1.1 port 4000
[CPE1] sdwan ssl-client-policy plc1
¡ 配置CPE 2为SDWAN Client
# 指定SDWAN Server的System IP为130.1.1.1、IP地址为32.1.1.1、TCP端口号为4000,指定与RR(SDWAN server)建立SSL连接时引用的SSL客户端策略为plc1。
[CPE2] sdwan server system-ip 130.1.1.1 ip 32.1.1.1 port 4000
[CPE2] sdwan ssl-client-policy plc1
(4) 配置SDWAN隧道接口参数
¡ 配置RR
# 创建SDWAN隧道接口Tunnel 1,配置Tunnel1的源接口为GigabitEthernet1/0/1,指定发送隧道报文的出接口为GigabitEthernet1/0/1。
[RR] interface tunnel1 mode sdwan udp
[RR-Tunnel1] source gigabitethernet 1/0/1
[RR-Tunnel1] tunnel out-interface gigabitethernet 1/0/1
[RR-Tunnel1] ip address unnumbered interface gigabitethernet 1/0/1
# 配置SDWAN隧道接口Tunnel 1使用的路由域名称为rd1、路由域ID为10,使用的传输网络名称为internet1、传输网络ID为10,接口ID为30。
[RR-Tunnel1] sdwan routing-domain rd1 id 10
[RR-Tunnel1] sdwan transport-network internet1 id 10
[RR-Tunnel1] sdwan interface-id 30
[RR-Tunnel1] quit
# 创建SDWAN隧道接口Tunnel 2,配置Tunnel2的源接口为GigabitEthernet1/0/2,指定发送隧道报文的出接口为GigabitEthernet1/0/2。
[RR] interface tunnel2 mode sdwan udp
[RR-Tunnel2] source gigabitethernet 1/0/2
[RR-Tunnel2] tunnel out-interface gigabitethernet 1/0/2
[RR-Tunnel2] ip address unnumbered interface gigabitethernet 1/0/2
# 配置SDWAN隧道接口Tunnel 2使用的路由域名称为rd2、路由域ID为20,使用的传输网络名称为internet2、传输网络ID为20,接口ID为40。
[RR-Tunnel2] sdwan routing-domain rd2 id 20
[RR-Tunnel2] sdwan transport-network internet2 id 20
[RR-Tunnel2] sdwan interface-id 40
[RR-Tunnel2] quit
¡ 配置CPE 1
# 创建SDWAN隧道接口Tunnel 1,配置Tunnel1的源接口为GigabitEthernet1/0/1,指定发送隧道报文的出接口为GigabitEthernet1/0/1。
[CPE1] interface tunnel1 mode sdwan udp
[CPE1-Tunnel1] source gigabitethernet 1/0/1
[CPE1-Tunnel1] tunnel out-interface gigabitethernet 1/0/1
# 配置SDWAN隧道接口Tunnel 1使用的路由域名称为rd1、路由域ID为10,使用的传输网络名称为internet1、传输网络ID为10,接口ID为30。
[CPE1-Tunnel1] sdwan routing-domain rd1 id 10
[CPE1-Tunnel1] sdwan transport-network internet1 id 10
[CPE1-Tunnel1] sdwan interface-id 30
[CPE1-Tunnel1] quit
# 创建SDWAN隧道接口Tunnel 2,配置Tunnel2的源接口为GigabitEthernet1/0/2,指定发送隧道报文的出接口为GigabitEthernet1/0/2。
[CPE1] interface tunnel2 mode sdwan udp
[CPE1-Tunnel2] source gigabitethernet 1/0/2
[CPE1-Tunnel2] tunnel out-interface gigabitethernet 1/0/2
# 配置SDWAN隧道接口Tunnel 2使用的路由域名称为rd2、路由域ID为20,使用的传输网络名称为internet2、传输网络ID为20,接口ID为40。
[CPE1-Tunnel2] sdwan routing-domain rd2 id 20
[CPE1-Tunnel2] sdwan transport-network internet2 id 20
[CPE1-Tunnel2] sdwan interface-id 40
[CPE1-Tunnel2] quit
¡ 配置CPE 2
# 创建SDWAN隧道接口Tunnel 1,配置Tunnel1的源接口为GigabitEthernet1/0/1,指定发送隧道报文的出接口为GigabitEthernet1/0/1。
[CPE2] interface tunnel1 mode sdwan udp
[CPE2-Tunnel1] source gigabitethernet 1/0/1
[CPE2-Tunnel1] tunnel out-interface gigabitethernet 1/0/1
# 配置SDWAN隧道接口Tunnel 1使用的路由域名称为rd1、路由域ID为10,使用的传输网络名称为internet1、传输网络ID为10,接口ID为30。
[CPE2-Tunnel1] sdwan routing-domain rd1 id 10
[CPE2-Tunnel1] sdwan transport-network internet1 id 10
[CPE2-Tunnel1] sdwan interface-id 30
[CPE2-Tunnel1] quit
# 创建SDWAN隧道接口Tunnel 2,配置Tunnel2的源接口为GigabitEthernet1/0/2,指定发送隧道报文的出接口为GigabitEthernet1/0/2。
[CPE2] interface tunnel2 mode sdwan udp
[CPE2-Tunnel2] source gigabitethernet 1/0/2
[CPE2-Tunnel2] tunnel out-interface gigabitethernet 1/0/2
# 配置SDWAN隧道接口Tunnel 2使用的路由域名称为rd2、路由域ID为20,使用的传输网络名称为internet2、传输网络ID为20,接口ID为40。
[CPE2-Tunnel2] sdwan routing-domain rd2 id 20
[CPE2-Tunnel2] sdwan transport-network internet2 id 20
[CPE2-Tunnel2] sdwan interface-id 40
[CPE2-Tunnel2] quit
(5) 配置RIR-SDWAN
¡ 配置RR
# 开启iNQA的Analyzer功能,并配置Analyzer标识为130.1.1.1。
[RR] inqa analyzer
[RR-inqa-analyzer] analyzer id 130.1.1.1
[RR-inqa-analyzer] quit
# 开启iNQA的Collector功能,并绑定Analyzer标识130.1.1.1。
[RR] inqa collector
[RR-inqa-collector] analyzer 130.1.1.1
[RR-inqa-collector] quit
# 开启RIR-SDWAN服务。
[RR] rir sdwan
# 配置选路延迟时间为30秒,选路调整周期为60秒。
[RR-rir-sdwan] link-select delay 30
[RR-rir-sdwan] link-select suppress-period 60
# 配置链路质量探测。
[RR-rir-sdwan] link-quality probe interval 30
# 创建SLA 1和SLA 2,分别配置不同的链路质量阈值。
[RR-rir-sdwan] sla 1
[RR-rir-sdwan-sla-1] jitter threshold 20
[RR-rir-sdwan-sla-1] delay threshold 60
[RR-rir-sdwan-sla-1] packet-loss threshold 150
[RR-rir-sdwan-sla-1] quit
[RR-rir-sdwan] sla 2
[RR-rir-sdwan-sla-2] jitter threshold 40
[RR-rir-sdwan-sla-2] delay threshold 120
[RR-rir-sdwan-sla-2] packet-loss threshold 300
[RR-rir-sdwan-sla-2] quit
# 创建业务流量模板1和业务流量模板2,分别在业务流量模板下配置链路优先级、会话预计使用的带宽和质量策略,并配置CQI算法的时延、时延抖动和丢包率的权重为2、5、7。
[RR-rir-sdwan] flow 1
[RR-rir-sdwan-flow-1] path sdwan transport-network internet1 preference 10
[RR-rir-sdwan-flow-1] path sdwan transport-network internet2 preference 20
[RR-rir-sdwan-flow-1] expect-bandwidth 300
[RR-rir-sdwan-flow-1] quality-policy sla 1
[RR-rir-sdwan-flow-1] cqi-weight delay 2 jitter 5 packet-loss 7
[RR-rir-sdwan-flow-1] quit
[RR-rir-sdwan] flow 2
[RR-rir-sdwan-flow-2] path sdwan transport-network internet1 preference 20
[RR-rir-sdwan-flow-2] path sdwan transport-network internet2 preference 10
[RR-rir-sdwan-flow-2] expect-bandwidth 300
[RR-rir-sdwan-flow-2] quality-policy sla 2
[RR-rir-sdwan-flow-2] cqi-weight delay 2 jitter 5 packet-loss 7
[RR-rir-sdwan-flow-2] quit
[RR-rir-sdwan] quit
# 配置QoS策略重标记流量,并将策略应用在接口GigabitEthernet1/0/3上,其中DSCP为1的报文Flow ID标记为1,DSCP为2的报文Flow ID标记为2。
[RR] traffic classifier class1
[RR-classifier-class1] if-match dscp 1
[RR-classifier-class1] quit
[RR] traffic classifier class2
[RR-classifier-class2] if-match dscp 2
[RR-classifier-class2] quit
[RR] traffic behavior behav1
[RR-behavior-behav1] remark flow-id 1
[RR-behavior-behav1] quit
[RR] traffic behavior behav2
[RR-behavior-behav2] remark flow-id 2
[RR-behavior-behav2] quit
[RR] qos policy policy1
[RR-qospolicy-policy1] classifier class1 behavior behav1
[RR-qospolicy-policy1] classifier class2 behavior behav2
[RR-qospolicy-policy1] quit
[RR] interface gigabitethernet 1/0/3
[RR-GigabitEthernet1/0/3] qos apply policy policy1 inbound
[RR-GigabitEthernet1/0/3] quit
¡ 配置CPE 1
# 开启iNQA的Collector功能,并绑定Analyzer标识130.1.1.1。
[CPE1] inqa collector
[CPE1-inqa-collector] analyzer 130.1.1.1
[CPE1-inqa-collector] quit
# 开启RIR-SDWAN服务。
[CPE1] rir sdwan
# 配置选路延迟时间为30秒,选路调整周期为60秒。
[CPE1-rir-sdwan] link-select delay 30
[CPE1-rir-sdwan] link-select suppress-period 60
# 配置链路质量探测。
[CPE1-rir-sdwan] link-quality probe interval 30
# 创建SLA 1和SLA 2,分别配置不同的链路质量阈值。
[CPE1-rir-sdwan] sla 1
[CPE1-rir-sdwan-sla-1] jitter threshold 20
[CPE1-rir-sdwan-sla-1] delay threshold 60
[CPE1-rir-sdwan-sla-1] packet-loss threshold 150
[CPE1-rir-sdwan-sla-1] quit
[CPE1-rir-sdwan] sla 2
[CPE1-rir-sdwan-sla-2] jitter threshold 40
[CPE1-rir-sdwan-sla-2] delay threshold 120
[CPE1-rir-sdwan-sla-2] packet-loss threshold 300
[CPE1-rir-sdwan-sla-2] quit
# 创建业务流量模板1和业务流量模板2,分别在业务流量模板下配置相同的链路优先级,配置会话预计使用的带宽和质量策略,并配置CQI算法的时延、时延抖动和丢包率的权重为2、5、7。
[CPE1-rir-sdwan] flow 1
[CPE1-rir-sdwan-flow-1] path sdwan transport-network internet1 preference 10
[CPE1-rir-sdwan-flow-1] path sdwan transport-network internet2 preference 10
[CPE1-rir-sdwan-flow-1] expect-bandwidth 300
[CPE1-rir-sdwan-flow-1] quality-policy sla 1
[CPE1-rir-sdwan-flow-1] cqi-weight delay 2 jitter 5 packet-loss 7
[CPE1-rir-sdwan-flow-1] quit
[CPE1-rir-sdwan] flow 2
[CPE1-rir-sdwan-flow-2] path sdwan transport-network internet1 preference 20
[CPE1-rir-sdwan-flow-2] path sdwan transport-network internet2 preference 20
[CPE1-rir-sdwan-flow-2] expect-bandwidth 300
[CPE1-rir-sdwan-flow-2] quality-policy sla 2
[CPE1-rir-sdwan-flow-2] cqi-weight delay 2 jitter 5 packet-loss 7
[CPE1-rir-sdwan-flow-2] quit
[CPE1-rir-sdwan] quit
# 配置QoS策略重标记流量,并将策略应用在接口GigabitEthernet1/0/3上,其中DSCP为1的报文Flow ID标记为1,DSCP为2的报文Flow ID标记为2。
[CPE1] traffic classifier class1
[CPE1-classifier-class1] if-match dscp 1
[CPE1-classifier-class1] quit
[CPE1] traffic classifier class2
[CPE1-classifier-class2] if-match dscp 2
[CPE1-classifier-class2] quit
[CPE1] traffic behavior behav1
[CPE1-behavior-behav1] remark flow-id 1
[CPE1-behavior-behav1] quit
[CPE1] traffic behavior behav2
[CPE1-behavior-behav2] remark flow-id 2
[CPE1-behavior-behav2] quit
[CPE1] qos policy policy1
[CPE1-qospolicy-policy1] classifier class1 behavior behav1
[CPE1-qospolicy-policy1] classifier class2 behavior behav2
[CPE1-qospolicy-policy1] quit
[CPE1] interface gigabitethernet 1/0/3
[CPE1-GigabitEthernet1/0/3] qos apply policy policy1 inbound
[CPE1-GigabitEthernet1/0/3] quit
¡ 配置CPE 2
# 开启iNQA的Collector功能,并绑定Analyzer标识130.1.1.1。
[CPE2] inqa collector
[CPE2-inqa-collector] analyzer 130.1.1.1
[CPE2-inqa-collector] quit
# 开启RIR-SDWAN服务。
[CPE2] rir sdwan
# 配置选路延迟时间为30秒,选路调整周期为60秒。
[CPE2-rir-sdwan] link-select delay 30
[CPE2-rir-sdwan] link-select suppress-period 60
# 配置链路质量探测。
[CPE2-rir-sdwan] link-quality probe interval 30
# 创建SLA 1和SLA 2,分别配置不同的链路质量阈值。
[CPE2-rir-sdwan] sla 1
[CPE2-rir-sdwan-sla-1] jitter threshold 20
[CPE2-rir-sdwan-sla-1] delay threshold 60
[CPE2-rir-sdwan-sla-1] packet-loss threshold 150
[CPE2-rir-sdwan-sla-1] quit
[CPE2-rir-sdwan] sla 2
[CPE2-rir-sdwan-sla-2] jitter threshold 40
[CPE2-rir-sdwan-sla-2] delay threshold 120
[CPE2-rir-sdwan-sla-2] packet-loss threshold 300
[CPE2-rir-sdwan-sla-2] quit
# 创建业务流量模板1和业务流量模板2,分别在业务流量模板下配置相同的链路优先级,配置会话预计使用的带宽和质量策略,并配置CQI算法的时延、时延抖动和丢包率的权重为2、5、7。
[CPE2-rir-sdwan] flow 1
[CPE2-rir-sdwan-flow-1] path sdwan transport-network internet1 preference 10
[CPE2-rir-sdwan-flow-1] path sdwan transport-network internet2 preference 10
[CPE2-rir-sdwan-flow-1] expect-bandwidth 300
[CPE2-rir-sdwan-flow-1] quality-policy sla 1
[CPE2-rir-sdwan-flow-1] cqi-weight delay 2 jitter 5 packet-loss 7
[CPE2-rir-sdwan-flow-1] quit
[CPE2-rir-sdwan] flow 2
[CPE2-rir-sdwan-flow-2] path sdwan transport-network internet1 preference 20
[CPE2-rir-sdwan-flow-2] path sdwan transport-network internet2 preference 20
[CPE2-rir-sdwan-flow-2] expect-bandwidth 300
[CPE2-rir-sdwan-flow-2] quality-policy sla 2
[CPE2-rir-sdwan-flow-2] cqi-weight delay 2 jitter 5 packet-loss 7
[CPE2-rir-sdwan-flow-2] quit
[CPE2-rir-sdwan] quit
# 配置QoS策略重标记流量,并将策略应用在接口GigabitEthernet1/0/3上,其中DSCP为1的报文Flow ID标记为1,DSCP为2的报文Flow ID标记为2。
[CPE2] traffic classifier class1
[CPE2-classifier-class1] if-match dscp 1
[CPE2-classifier-class1] quit
[CPE2] traffic classifier class2
[CPE2-classifier-class2] if-match dscp 2
[CPE2-classifier-class2] quit
[CPE2] traffic behavior behav1
[CPE2-behavior-behav1] remark flow-id 1
[CPE2-behavior-behav1] quit
[CPE2] traffic behavior behav2
[CPE2-behavior-behav2] remark flow-id 2
[CPE2-behavior-behav2] quit
[CPE2] qos policy policy1
[CPE2-qospolicy-policy1] classifier class1 behavior behav1
[CPE2-qospolicy-policy1] classifier class2 behavior behav2
[CPE2-qospolicy-policy1] quit
[CPE2] interface gigabitethernet 1/0/3
[CPE2-GigabitEthernet1/0/3] qos apply policy policy1 inbound
[CPE2-GigabitEthernet1/0/3] quit
(6) 开启隧道基于Flow ID的流量速率统计功能
¡ 配置RR
# 开启隧道基于Flow ID的流量速率统计功能,并配置统计时间间隔为5秒。
[RR] tunnel flow-statistics enable
[RR] tunnel flow-statistics interval 5
¡ 配置CPE 1
# 开启隧道基于Flow ID的流量速率统计功能,并配置统计时间间隔为5秒。
[CPE1] tunnel flow-statistics enable
[CPE1] tunnel flow-statistics interval 5
¡ 配置CPE 2
# 开启隧道基于Flow ID的流量速率统计功能,并配置统计时间间隔为5秒。
[CPE2] tunnel flow-statistics enable
[CPE2] tunnel flow-statistics interval 5
(1) 查看CPE 1
配置从Branch 1仅发起UDP业务至Data Center,(业务对应多个会话,即有多个不同五元组的业务流量),业务流量的DSCP值为1。查看隧道基于Flow ID的流量速率统计信息,业务流量模板1下Tunnel 1和Tunnel 2都有业务流量。说明设备通过业务流量模板1为DSCP值为1的业务流量,以负载分担的方式选择链路进行传输。
[CPE1] display tunnel flow-statistics
Flow 1:
Interface Out pps Out bps
Tunnel1 300 300000
Tunnel2 300 300000
配置从Branch 1仅发起UDP业务至Data Center,(业务对应多个会话,即有多个不同五元组的业务流量),业务流量的DSCP值为2。查看隧道基于Flow ID的流量速率统计信息,业务流量模板2下Tunnel 1和Tunnel 2都有业务流量。说明设备通过业务流量模板2为DSCP值为2的业务流量,以负载分担的方式选择链路进行传输。
[CPE1] display tunnel flow-statistics
Flow 2:
Interface Out pps Out bps
Tunnel1 300 300000
Tunnel2 300 300000
(2) 查看CPE 2
CPE 2与CPE 1相似,不作介绍。
(3) 查看RR
配置从Data Center仅发起UDP业务至Branch 1(业务对应多个会话,即有多个不同五元组的业务流量),业务流量的DSCP值为1。查看隧道基于Flow ID的流量速率统计信息,仅有业务流量模板1下Tunnel 1有业务流量。说明设备通过业务流量模板1为DSCP值为1的业务流量优先选择Tunnel 1进行传输。
[RR] display tunnel flow-statistics
Flow 1:
Interface Out pps Out bps
Tunnel1 300 300000
配置从Data Center仅发起UDP业务至Branch 1(业务对应多个会话,即有多个不同五元组的业务流量),业务流量的DSCP值为2。查看隧道基于Flow ID的流量速率统计信息,仅有业务流量模板2下的Tunnel 2有业务流量。说明设备通过业务流量模板2为DSCP值为2的业务流量优先选择Tunnel 2进行传输。
[RR] display tunnel flow-statistics
Flow 2:
Interface Out pps Out bps
Tunnel2 300 300000
通过SaaS路径优化功能,设备可以为访问SaaS应用的流量选择最优路径,并能够根据路径质量的变化进行调整。
SaaS应用分为定制SaaS应用和非定制SaaS应用。定制SaaS应用一般是常用的SaaS应用,由系统预先定义;非定制SaaS应用则是用户根据实际需求配置的SaaS应用。
设备可以通过直接访问、间接访问(通过网关访问)和直接/间接混合访问三种方式访问SaaS应用。
如图2-1所示,设备(以Branch中的设备为例)通过本地接口直接访问SaaS应用,并基于本地直接访问SaaS应用的路径质量进行SaaS路径优化。基于VXLAN隧道和SDWAN隧道部署RIR的场景均支持直接访问方式。
如图2-2所示,设备(以Branch中的设备为例)作为客户端,通过网关间接访问SaaS应用,并基于间接访问SaaS应用的路径质量进行SaaS路径优化。只有基于SDWAN隧道部署RIR的场景支持通过网关访问方式。
在混合方式下,设备可以直接访问SaaS应用,也可以通过网关访问SaaS应用。设备进行SaaS路径优化时,会根据设备直接访问SaaS应用的路径质量和间接访问SaaS应用的路径质量,从中选择最优路径。只有基于SDWAN隧道部署RIR的场景支持混合方式。
设备进行指定SaaS应用的路径优化时,会探测通过健康监测URL访问该SaaS应用的路径质量,并根据质量探测结果为访问该SaaS应用的流量选择最优路径。
非定制SaaS应用的健康监测URL通过手工配置。定制SaaS应用的健康监测URL由系统缺省配置,不可以修改。
设备直接访问SaaS应用,或者作为其他设备访问SaaS应用的网关设备时,会以30秒为周期探测接口(手工配置的直接访问SaaS应用的接口)通过健康监测URL直接访问SaaS应用的路径质量(时延、时延抖动、丢包率等)。
间接访问路径由客户端与网关之间的SDWAN隧道和网关访问SaaS应用的路径组成。设备会通过RIR-SDWAN服务的质量探测机制探测SDWAN隧道质量,并收集网关通告的网关访问SaaS应用的最优路径质量(网关站点中的CPE通过BGP IPv4 Tnl-encap-ext路由向RR发送SaaS路径质量信息,然后由RR反射给其他CPE),以得出间接访问路径质量。
设备进行指定SaaS应用的路径优化时,会探测访问该SaaS应用的路径质量,并根据质量探测结果和质量(时延、时延抖动和丢包率)期望值,使用CQI算法进行路径质量的评估。
CQI算法的工作机制如下:
(1) 当单项质量(时延、时延抖动或丢包率)探测结果满足访问SaaS应用的期望质量时,认为单项CQI值为100。
(2) 当单项质量探测结果不满足访问SaaS应用的期望质量时,单项CQI值(时延CQI值Ds、时延抖动CQI值Js或丢包率CQI值Ls)=(单项期望值 * 100)/单项质量探测结果。
(3) 综合质量CQI值=(x* Ds+ y*Js + z* Ls)/(x + y + z)。其中x、y、z分别为时延、时延抖动和丢包率的权重(取值范围为0~10,且不可以全为0)。
设备会周期性地计算路径的综合质量CQI值,以评估设备访问SaaS应用的路径质量。另外,当影响CQI计算的配置(如质量期望值、权重等)发生变化时,设备也会计算路径的综合质量CQI值。其中:
· 当评估设备直接访问SaaS应用的路径质量时,可以基于设备本地接口探测的路径质量得出路径综合质量CQI值。
· 当评估设备间接访问(通过网关访问)SaaS应用的路径质量时,可以基于网关本地接口探测的路径质量(由网关通过BGP IPv4 Tnl-encap-ext路由通告给设备)得出网关直接访问SaaS应用的路径综合质量CQI值,再基于RIR-SDWAN服务的质量探测机制探测的SDWAN隧道质量得出设备到网关的路径综合质量CQI值。设备通过网关访问SaaS应用的路径综合质量CQI值为两者的平均值。
为避免链路频繁切换,设备使用综合质量近似CQI值评估链路优劣。综合质量近似CQI值为不大于综合质量CQI值的最大的5的倍数。例如,如果设备间接访问SaaS应用的路径综合质量CQI值为82.5,则综合质量近似CQI值为80。
根据路径综合质量近似CQI值,设备为路径划分色区。其中:
· 综合质量近似CQI值为80~100的路径属于绿区。
· 综合质量近似CQI值为55~80的路径属于黄区。
· 综合质量近似CQI值为0~50的路径属于红区。
设备为访问SaaS应用的流量选择最优路径时,首先按照绿、黄、红的顺序选择最优色区,然后在最优色区中选择最优路径。如果最优色区中只有一条路径,则选择该路径作为最优路径;如果最优色区中有多条路径,则随机选择一条路径作为最优路径。
用户一般基于SaaS应用的URL,通过DNS请求动态获取SaaS应用的IP地址,以访问该SaaS应用。设备收到访问该SaaS应用的DNS请求报文(DNS请求报文中的URL为SaaS应用实例的URL)时,会按照如下步骤进行SaaS路径优化:
(1) 根据CQI算法评估的访问SaaS应用的路径质量选择最优路径。
(2) 通过最优路径转发DNS请求报文。
(3) 将收到的DNS应答报文中的IP地址与最优路径关联,并记录为最优路径信息表项。
(4) 将DNS应答报文发送给用户。
(5) 用户使用DNS应答报文中的IP地址访问SaaS应用。
(6) 设备接收到用户发送的报文后,根据报文的目的IP地址查找匹配的最优路径信息表项,以便通过记录的最优路径转发访问SaaS应用的报文。
系统在定制SaaS应用中预先定义了该应用的IP地址(即静态IP地址)。用户访问定制SaaS应用时可以使用静态IP地址。
当设备收到以定制SaaS应用的静态IP地址作为目的IP地址的业务报文时,如果不存在该静态IP地址对应的最优路径信息表项,则会根据静态IP地址所属SaaS应用的路径质量,为该业务报文选择最优路径进行转发,并将静态IP地址与最优路径关联,记录为最优路径信息表项。设备根据最优路径信息表项转发后续收到的、以静态IP地址作为目的IP地址的报文。
最优路径信息表项经过一定时间将会被老化。对于为动态IP地址建立的最优路径信息表项,当通过DNS解析到的IP地址失效时间达到两分钟时,最优路径信息表项也会被老化。
由于SaaS路径优化需要解析DNS报文,所以必须同时开启DNS代理功能。有关DNS代理的详细介绍,请参见“三层技术-IP业务配置指导”中的“域名解析”。
SaaS路径优化配置任务如下:
(1) 配置SaaS路径优化组网参数
c. 配置设备的节点类型
(2) 配置SaaS应用实例
a. 创建SaaS应用实例
c. 配置健康监测URL
f. (可选)设置对公网或指定VPN报文进行SaaS路径优化
在SaaS路径优化视图下,可以配置SaaS路径优化相关参数。
(1) 进入系统视图。
system-view
(2) 创建SaaS路径优化视图,并进入SaaS路径优化视图。
saas-path-optimize
为实现设备的SaaS路径优化,需要根据设备的访问方式配置设备的节点类型:
· 当设备只通过网关访问方式访问SaaS应用时,需要配置设备为客户端,但不指定allow-direct-access参数。
· 当设备以直接访问方式或混合方式访问SaaS应用时,需要配置设备为客户端,并指定allow-direct-access参数。
· 当设备以直接访问方式访问SaaS应用,并同时作为其他设备访问SaaS应用的网关时,需要配置设备为网关。
设备通过网关访问方式或者混合方式访问SaaS应用时,必须开启RIR-SDWAN服务,否则不能正常进行SaaS路径优化。设备仅以直接访问方式访问SaaS应用时,开启RIR-VXLAN服务或RIR-SDWAN服务均可正常进行SaaS路径优化。
(1) 进入系统视图。
system-view
(2) 进入SaaS路径优化视图。
saas-path-optimize
(3) 配置设备的节点类型。
node-type { client [ allow-direct-access ] | gateway }
缺省情况下,未配置设备的节点类型。
设备直接访问SaaS应用,或者作为其他设备访问SaaS应用的网关设备时,均需要配置直接访问的接口。配置设备的节点类型,并配置设备直接访问SaaS应用的接口后,设备会以30秒为周期探测接口通过健康监测URL直接访问SaaS应用的路径质量。
(1) 进入系统视图。
system-view
(2) 进入SaaS路径优化视图。
saas-path-optimize
(3) 配置设备直接访问SaaS应用的接口。
direct interface interface-type interface-number
缺省情况下,未配置设备直接访问SaaS应用的接口。
为指定SaaS应用配置路径优化功能前,必须先为该SaaS应用创建SaaS应用实例。其中:
· 定制SaaS应用实例由系统缺省创建,不可以手工删除,并且不能手工添加、删除或修改定制SaaS应用实例的定制参数(如URL、健康监测URL和静态IP地址)。
· 非定制SaaS应用实例由用户手工配置。
创建的SaaS应用实例名称不能与定制SaaS应用实例名称、已创建的其他非定制SaaS应用实例名称相同。
(1) 进入系统视图。
system-view
(2) 进入SaaS路径优化视图。
saas-path-optimize
(3) 创建SaaS应用实例,并进入SaaS应用实例视图。
application-instance instance-name
缺省情况下,设备上只存在定制SaaS应用实例。
通过本功能可以在非定制SaaS应用实例下添加访问该SaaS应用的URL。
(1) 进入系统视图。
system-view
(2) 进入SaaS路径优化视图。
saas-path-optimize
(3) 进入SaaS应用实例视图。
application-instance instance-name
(4) 添加访问SaaS应用的URL
url url
缺省情况下,非定制SaaS应用实例下不存在URL。
设备进行指定SaaS应用的路径优化时,会探测通过健康监测URL访问该SaaS应用的路径质量,并根据质量探测结果为访问该SaaS应用的流量选择最优路径。
本功能用于配置非定制SaaS应用的健康监测URL。定制SaaS应用的健康监测URL由系统缺省配置,不可以修改。
配置非定制SaaS应用的健康监测URL时,如果健康监测URL先前未添加到该SaaS应用实例下,系统会自动将该URL添加到该SaaS应用实例下。
(1) 进入系统视图。
system-view
(2) 进入SaaS路径优化视图。
saas-path-optimize
(3) 进入SaaS应用实例视图。
application-instance instance-name
(4) 配置健康监测URL。
health-url health-url
缺省情况下,未配置非定制SaaS应用的健康监测URL。
设备进行指定SaaS应用的路径优化时,会探测访问该SaaS应用的路径质量,并根据质量探测结果和本功能配置的时延、时延抖动和丢包率期望值,使用CQI算法进行路径质量的评估。
通过网关访问方式或混合方式访问SaaS应用时,建议在客户端和网关上配置相同的期望质量。
(1) 进入系统视图。
system-view
(2) 进入SaaS路径优化视图。
saas-path-optimize
(3) 进入SaaS应用实例视图。
application-instance instance-name
(4) 配置访问SaaS应用的时延、时延抖动和丢包率期望值。
expect-quality delay delay-value jitter jitter-value packet-loss packet-loss-ratio
缺省情况下,访问SaaS应用的时延、时延抖动、丢包率期望值分别为10毫秒、100毫秒和100‰。
设备进行指定SaaS应用的路径优化时,使用CQI算法评估访问SaaS应用的各路径的质量优劣。本功能用于配置SaaS路径优化CQI算法中时延、时延抖动和丢包率的权重。
不可以将CQI算法中时延、时延抖动和丢包率的权重值都配置为0。
通过网关访问方式或混合方式访问SaaS应用时,建议在客户端和网关上配置相同的CQI算法权重。
(1) 进入系统视图。
system-view
(2) 进入SaaS路径优化视图。
saas-path-optimize
(3) 进入SaaS应用实例视图。
application-instance instance-name
(4) 配置访问SaaS应用的时延、时延抖动和丢包率期望值。
cqi-weight delay delay-weight jitter jitter-weight packet-loss packet-loss-weight
缺省情况下,CQI算法中时延、时延抖动和丢包率的权重均为1。
通过本功能在指定SaaS应用实例下设置对公网或指定VPN报文进行SaaS路径优化后,设备仅为访问该SaaS应用的公网或指定VPN报文选择最优路径。
取消对公网和所有VPN实例报文进行SaaS路径优化后,设备会对访问该SaaS应用的所有报文都进行SaaS路径优化。
(1) 进入系统视图。
system-view
(2) 进入SaaS路径优化视图。
saas-path-optimize
(3) 进入SaaS应用实例视图。
application-instance instance-name
(4) 设置对公网或指定VPN报文进行SaaS路径优化。
access-network { public | vpn-instance vpn-instance-name }
缺省情况下,对访问指定SaaS应用的所有报文都进行SaaS路径优化。
在任意视图下执行display命令可以显示SaaS路径优化配置后的运行情况,通过查看显示信息验证配置的效果。
表2-1 SaaS路径优化显示和维护
操作 |
命令 |
显示SaaS应用的属性信息 |
display saas attribute [ verbose [ application-instance instance-name ] ] |
显示访问SaaS应用的最优路径信息 |
display saas optimal-path application-instance instance-name |
显示访问SaaS应用的路径CQI信息 |
display saas path-cqi [ application-instance instance-name ] |
显示访问SaaS应用的路径质量信息 |
display saas path-quality { client-to-gateway | gateway-to-saas | local-to-saas } [ application-instance instance-name ] |
在RIR-SDWAN组网下,对CPE直接访问SaaS应用App1的路径进行优化。具体需求如下:
· CPE通过接口GigabitEthernet1/0/1、GigabitEthernet1/0/2直接访问SaaS应用。
· 用户可以通过www.app1url1.com、www.app1url2.com和www.app1url3.com访问SaaS应用App1,其中www.app1url1.com为健康监测URL。
· CQI算法评估访问SaaS应用App1的路径质量时使用的时延权重值为1、时延抖动权重值为2、丢包率权重值为2。
图2-3 直接访问SaaS应用路径优化配置举例示意图
· 配置各接口的IP地址和子网掩码,配置路由协议或静态路由,使各设备间路由可达。
· 完成RIR-SDWAN部署。
· 配置域名服务器,不同的域名服务器的配置方法不同。
(1) 配置DNS代理
# 配置域名服务器的IP地址为5.5.5.5。
<CPE> system-view
[CPE] dns server 5.5.5.5
# 开启DNS proxy功能。
[CPE] dns proxy enable
(2) 配置SaaS路径优化组网参数
# 创建SaaS路径优化视图。
[CPE] saas-path-optimize
# 配置设备为客户端,并指定allow-direct-access参数。
[CPE-saas-pathoptimize] node-type client allow-direct-access
# 配置接口GigabitEthernet1/0/1、GigabitEthernet1/0/2为设备直接访问SaaS应用的接口。
[CPE-saas-pathoptimize] direct interface gigabitethernet 1/0/1
[CPE-saas-pathoptimize] direct interface gigabitethernet 1/0/2
(3) 配置SaaS应用实例
# 创建SaaS应用实例App1。
[CPE-saas-pathoptimize] application-instance App1
# 添加访问SaaS应用App1的URL www.app1url1.com、www.app1url2.com、www.app1url3.com。
[CPE-saas-pathoptimize-App1] url www.app1url1.com
[CPE-saas-pathoptimize-App1] url www.app1url2.com
[CPE-saas-pathoptimize-App1] url www.app1url3.com
# 指定URL www.app1url1.com为健康监测URL。
[CPE-saas-pathoptimize-App1] health-url www.app1url1.com
# 配置访问SaaS应用App1的时延期望值为200毫秒、时延抖动期望值为100毫秒、丢包率期望值为50‰。
[CPE-saas-pathoptimize-App1] expect-quality delay 200 jitter 100 packet-loss 50
# 配置CQI算法评估访问SaaS应用App1的路径质量时使用的时延权重值为1、时延抖动权重值为2、丢包率权重值为2。
[Sysname-saas-pathoptimize-App1] cqi-weight delay 1 jitter 2 packet-loss 2
# 查看SaaS应用App1的详细属性信息。
<CPE> display saas attribute verbose application-instance App1
SaaS application : App1
Health check URL : www.app1url1.com
URL list : www.app1url1.com
www.app1url2.com
www.app1url3.com
Static IP addresses : -
# 查看访问SaaS应用App1的路径CQI信息,可知CPE会选择本地CQI为75的路径访问SaaS应用App1。
<CPE> display saas path-cqi application-instance App1
SaaS application: App1
DirectInterface TunnelID SiteID DevID IntID CQI Color
------------------------------------------------------------------------------
GE1/0/1 - - - - 75 Yellow
GE1/0/2 - - - - 50 Red
在RIR-SDWAN组网下,对CPE 1通过网关站点设备CPE 2访问SaaS应用App1的路径进行优化。具体需求如下:
· 在CPE 1和CPE 2上分别创建SDWAN隧道Tunnel 1和Tunnel 2,Tunnel 1的源接口和发送隧道报文的出接口为GigabitEthernet1/0/1,Tunnel 2的源接口和发送隧道报文的出接口为GigabitEthernet1/0/2。
· CPE 1通过网关站点设备CPE 2间接访问SaaS应用,CPE 2通过接口GigabitEthernet1/0/1、GigabitEthernet1/0/2直接访问SaaS应用。
· 用户可以通过www.app1url1.com、www.app1url2.com和www.app1url3.com访问SaaS应用App1,其中www.app1url1.com为健康监测URL。
· CQI算法评估访问SaaS应用App1的路径质量时使用的时延权重值为1、时延抖动权重值为2、丢包率权重值为2。
图2-4 通过网关访问SaaS应用路径优化配置举例示意图
· 配置各接口的IP地址和子网掩码,配置路由协议或静态路由,使各设备间路由可达。
· 完成RIR-SDWAN部署。
· 配置域名服务器,不同的域名服务器的配置方法不同。
(1) 配置DNS代理
¡ 配置CPE 1
# 配置域名服务器的IP地址为5.5.5.5。
<CPE1> system-view
[CPE1] dns server 5.5.5.5
# 开启DNS proxy功能。
[CPE1] dns proxy enable
¡ 配置CPE 2
# 配置域名服务器的IP地址为5.5.5.5。
<CPE2> system-view
[CPE2] dns server 5.5.5.5
# 开启DNS proxy功能。
[CPE2] dns proxy enable
(2) 配置SaaS路径优化功能
¡ 配置CPE 1
# 创建SaaS路径优化视图。
[CPE1] saas-path-optimize
# 配置设备为客户端,但不指定allow-direct-access参数。
[CPE1-saas-pathoptimize] node-type client
# 创建SaaS应用实例App1。
[CPE1-saas-pathoptimize] application-instance App1
# 添加访问SaaS应用App1的URL www.app1url1.com、www.app1url2.com、www.app1url3.com。
[CPE1-saas-pathoptimize-App1] url www.app1url1.com
[CPE1-saas-pathoptimize-App1] url www.app1url2.com
[CPE1-saas-pathoptimize-App1] url www.app1url3.com
# 指定URL www.app1url1.com为健康监测URL。
[CPE1-saas-pathoptimize-App1] health-url www.app1url1.com
# 配置访问SaaS应用App1的时延期望值为200毫秒、时延抖动期望值为100毫秒、丢包率期望值为50‰。
[CPE1-saas-pathoptimize-App1] expect-quality delay 200 jitter 100 packet-loss 50
# 配置CQI算法评估访问SaaS应用App1的路径质量时使用的时延权重值为1、时延抖动权重值为2、丢包率权重值为2。
[CPE1-saas-pathoptimize-App1] cqi-weight delay 1 jitter 2 packet-loss 2
¡ 配置CPE 2
# 创建SaaS路径优化视图。
[CPE2] saas-path-optimize
# 配置设备为网关。
[CPE2-saas-pathoptimize] node-type gateway
# 配置接口GigabitEthernet1/0/1、GigabitEthernet1/0/2为设备直接访问SaaS应用的接口。
[CPE2-saas-pathoptimize] direct interface gigabitethernet 1/0/1
[CPE2-saas-pathoptimize] direct interface gigabitethernet 1/0/2
# 创建SaaS应用实例App1。
[CPE2-saas-pathoptimize] application-instance App1
# 添加访问SaaS应用App1的URL www.app1url1.com、www.app1url2.com、www.app1url3.com。
[CPE2-saas-pathoptimize-App1] url www.app1url1.com
[CPE2-saas-pathoptimize-App1] url www.app1url2.com
[CPE2-saas-pathoptimize-App1] url www.app1url3.com
# 指定URL www.app1url1.com为健康监测URL。
[CPE2-saas-pathoptimize-App1] health-url www.app1url1.com
# 配置访问SaaS应用App1的时延期望值为200毫秒、时延抖动期望值为100毫秒、丢包率期望值为50‰。
[CPE2-saas-pathoptimize-App1] expect-quality delay 200 jitter 100 packet-loss 50
# 配置CQI算法评估访问SaaS应用App1的路径质量时使用的时延权重值为1、时延抖动权重值为2、丢包率权重值为2。
[CPE2-saas-pathoptimize-App1] cqi-weight delay 1 jitter 2 packet-loss 2
# 在CPE 1上查看SaaS应用App1的详细属性信息。
<CPE1> display saas attribute verbose application-instance App1
SaaS application : App1
Health check URL : www.app1url1.com
URL list : www.app1url1.com
www.app1url2.com
www.app1url3.com
Static IP addresses : -
# 在CPE 1查看访问SaaS应用App1的路径CQI信息,可知CPE 1会选择通过网关的CQI为100的路径访问SaaS应用App1。
<CPE1> display saas path-cqi application-instance App1
SaaS application: App1
DirectInterface TunnelID SiteID DevID IntID CQI Color
------------------------------------------------------------------------------
- 1 2 1 1 100 Green
- 2 2 1 2 70 Yellow
在RIR-SDWAN组网下对CPE 1直接访问和通过网关站点设备CPE 2访问SaaS应用App1的路径进行优化。具体需求如下:
· 在CPE 1和CPE 2上分别创建SDWAN隧道Tunnel 1和Tunnel 2,Tunnel 1的源接口和发送隧道报文的出接口为GigabitEthernet1/0/1,Tunnel 2的源接口和发送隧道报文的出接口为GigabitEthernet1/0/2。
· CPE 1可以通过接口GigabitEthernet1/0/1、GigabitEthernet1/0/2直接访问SaaS应用,也可以通过网关站点CPE 2间接访问SaaS应用。
· CPE 2通过接口GigabitEthernet1/0/1、GigabitEthernet1/0/2直接访问SaaS应用。
· 用户可以通过www.app1url1.com、www.app1url2.com和www.app1url3.com访问SaaS应用App1,其中www.app1url1.com为健康监测URL。
· CQI算法评估访问SaaS应用App1的路径质量时使用的时延权重值为1、时延抖动权重值为2、丢包率权重值为2。
图2-5 直接访问SaaS应用路径优化配置举例示意图
· 配置各接口的IP地址和子网掩码,配置路由协议或静态路由,使各设备间路由可达。
· 完成RIR-SDWAN部署。
· 配置域名服务器,不同的域名服务器的配置方法不同。
(1) 配置DNS代理
¡ 配置CPE 1
# 配置域名服务器的IP地址为5.5.5.5。
<CPE1> system-view
[CPE1] dns server 5.5.5.5
# 开启DNS proxy功能。
[CPE1] dns proxy enable
¡ 配置CPE 2
# 配置域名服务器的IP地址为5.5.5.5。
<CPE2> system-view
[CPE2] dns server 5.5.5.5
# 开启DNS proxy功能。
[CPE2] dns proxy enable
(2) 配置SaaS路径优化功能
¡ 配置CPE 1
# 创建SaaS路径优化视图。
[CPE1] saas-path-optimize
# 配置设备为客户端,并指定allow-direct-access参数。
[CPE1-saas-pathoptimize] node-type client allow-direct-access
# 配置接口GigabitEthernet1/0/1、GigabitEthernet1/0/2为设备直接访问SaaS应用的接口。
[CPE1-saas-pathoptimize] direct interface gigabitethernet 1/0/1
[CPE1-saas-pathoptimize] direct interface gigabitethernet 1/0/2
# 创建SaaS应用实例App1。
[CPE1-saas-pathoptimize] application-instance App1
# 添加访问SaaS应用App1的URL www.app1url1.com、www.app1url2.com、www.app1url3.com。
[CPE1-saas-pathoptimize-App1] url www.app1url1.com
[CPE1-saas-pathoptimize-App1] url www.app1url2.com
[CPE1-saas-pathoptimize-App1] url www.app1url3.com
# 指定URL www.app1url1.com为健康监测URL。
[CPE1-saas-pathoptimize-App1] health-url www.app1url1.com
# 配置访问SaaS应用App1的时延期望值为200毫秒、时延抖动期望值为100毫秒、丢包率期望值为50‰。
[CPE1-saas-pathoptimize-App1] expect-quality delay 200 jitter 100 packet-loss 50
# 配置CQI算法评估访问SaaS应用App1的路径质量时使用的时延权重值为1、时延抖动权重值为2、丢包率权重值为2。
[CPE1-saas-pathoptimize-App1] cqi-weight delay 1 jitter 2 packet-loss 2
¡ 配置CPE 2
# 创建SaaS路径优化视图。
[CPE2] saas-path-optimize
# 配置设备为网关。
[CPE2-saas-pathoptimize] node-type gateway
# 配置接口GigabitEthernet1/0/1、GigabitEthernet1/0/2为设备直接访问SaaS应用的接口。
[CPE2-saas-pathoptimize] direct interface gigabitethernet 1/0/1
[CPE2-saas-pathoptimize] direct interface gigabitethernet 1/0/2
# 创建SaaS应用实例App1。
[CPE2-saas-pathoptimize] application-instance App1
# 添加访问SaaS应用App1的URL www.app1url1.com、www.app1url2.com、www.app1url3.com。
[CPE2-saas-pathoptimize-App1] url www.app1url1.com
[CPE2-saas-pathoptimize-App1] url www.app1url2.com
[CPE2-saas-pathoptimize-App1] url www.app1url3.com
# 指定URL www.app1url1.com为健康监测URL。
[CPE2-saas-pathoptimize-App1] health-url www.app1url1.com
# 配置访问SaaS应用App1的时延期望值为200毫秒、时延抖动期望值为100毫秒、丢包率期望值为50‰。
[CPE2-saas-pathoptimize-App1] expect-quality delay 200 jitter 100 packet-loss 50
# 配置CQI算法评估访问SaaS应用App1的路径质量时使用的时延权重值为1、时延抖动权重值为2、丢包率权重值为2。
[CPE2-saas-pathoptimize-App1] cqi-weight delay 1 jitter 2 packet-loss 2
# 在CPE 1上查看SaaS应用App1的详细属性信息。
<CPE1> display saas attribute verbose application-instance App1
SaaS application : App1
Health check URL : www.app1url1.com
URL list : www.app1url1.com
www.app1url2.com
www.app1url3.com
Static IP addresses : -
# 在CPE 1查看访问SaaS应用App1的路径CQI信息,可知CPE 1会选择通过网关的CQI为100的路径访问SaaS应用App1。
<CPE1> display saas path-cqi application-instance App1
SaaS application: App1
DirectInterface TunnelID SiteID DevID IntID CQI Color
------------------------------------------------------------------------------
- 1 2 1 1 100 Green
GE1/0/1 - - - - 75 Yellow
- 2 2 1 2 70 Yellow
GE1/0/2 - - - - 50 Red
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!