当云企业网中多个地域的TR连接到ECR时,云上云下资源互访会存在多条流量路径,本文为您介绍在这种情况下的选路规则。
选路规则
首先确定下云流量路径。默认情况下,当来自VPC的下云流量到达TR时:
如果当前TR与ECR直接相连,则流量直接从当前TR进入ECR下云。
如果当前TR与ECR不直接相连,则流量选择有ECR直接相连的其他TR下云。此时如果其他TR有多个:
选择和目标VBR相同地域的TR下云。
如果其他TR的地域都和目标VBR的地域不同,则选择地域ID字节序靠前的TR下云。
下云流量路径确定后,系统会确保上云流量与下云流量路径对称。
场景示例
本节提供2个典型场景示例,帮助您熟悉和理解选路规则。
示例一:多个TR均连接了ECR

以上图场景为例,某企业在华东1(杭州)地域建有IDC机房,且分别在华东1(杭州)地域和华东2(上海)地域的VPC内部署了业务。
企业通过VBR、ECR、TR连通云下IDC和云上VPC,杭州TR和上海TR之间建立了跨地域连接,ECR绑定了杭州TR1、上海TR2、杭州VBR。
1. 下云流量路径

2. 上云流量路径

因为下云流量路径已确定,系统会引导上云流量与下云流量路径对称:
示例二:多个TR之间相互连接,存在TR未连接ECR

以上图场景为例,某企业已将3个IDC分别接入到华北2(北京)地域、华东2(上海)、华东1(杭州)地域的VBR,且分别在华北2(北京)、华东2(上海)、华东1(杭州)地域的VPC内部署了业务。
企业已将3个VBR连接至ECR,并将TR1和TR2连接至ECR。3个TR之间均建立了跨地域连接。
1. 下云流量路径
VPC1下云的流量路径 | VPC2下云的流量路径 | VPC3下云的流量路径 |
 |  |  |
VPC1下云访问3个IDC时,因为TR1和ECR直接相连,所以流量会直接从TR1进入ECR下云。
VPC2下云与VPC1同理,流量会直接从TR2进入ECR下云。
VPC3下云访问3个IDC时,因为TR3不和ECR直接相连,所以流量会选择去往TR1或TR2下云:
VPC3访问IDC1时,流量到达TR3后,选择和目标VBR1相同地域的TR1下云。
VPC3访问IDC2时,流量到达TR3后,选择和目标VBR2相同地域的TR2下云。
VPC3访问IDC3时,流量到达TR3后,因为TR1和TR2的地域都和目标VBR3的地域不同,此时流量选择地域ID字节序靠前的TR1下云(比较TR1和TR2的地域ID字节序,cn-beijing比cn-shanghai靠前)。
2. 上云流量路径
上云访问VPC1的流量路径 | 上云访问VPC2的流量路径 | 上云访问VPC3的流量路径 |
 |  |  |
下云流量路径确定后,系统会引导上云流量与下云流量路径对称,详情见上图,此处不再赘述。
调整选路默认行为
在需要通过比较地域ID字节序来选择TR的情况下,您可以通过手动指定TR,来改变默认的流量路径。通过改变流量路径,您可以:
降低时延:改变流量可能在地理位置上发生绕行的路径,从而降低网络时延。
降低成本:云上网络中,多个跨地域连接链路的带宽成本可能不同,您可以使业务流量优先走低成本的跨地域链路,从而减少费用。
控制流量分布:如果某个地域TR流量较大,您可以将部分业务流量定向引导至流量较为空闲的TR,从而提升整体的网络质量和吞吐率。
默认情况下,VPC3和IDC3的互访流量路径 | 改路后,VPC3和IDC3的互访流量路径 |
 |  |
如上图所示,当VPC3访问IDC3时,按照前述的选路规则需要比较TR1和TR2的地域ID字节序,流量默认会选择TR1传输。
此时您可以将TR2设为default,使得VPC3和IDC3的互访流量通过TR2传输,从而改变默认的流量路径。
操作步骤
打开高速通道控制台,找到目标ECR,在ECR详情页面,选择想要操作的TR,然后在对应的操作列单击设为default。

工作原理
TR和ECR之间的选路规则通过各自路由表中的路由条目优先级实现,下方给出选路规则的具体实现原理,供有需求的用户参考。
单击查看选路规则的实现原理
MED说明
MED(Multi-Exit Discriminator,多出口鉴别器)是BGP的一种路径属性,当相邻的自治系统之间存在多条相同路由的路径时,可以通过设置MED属性改变流量路径。
MED属性的存放位置:MED属性存在于路由条目中,您可以在ECR路由条目列表的MED列查看。
MED属性的取值范围:当前阿里云侧MED的取值为3个,分别为1000、2000、3000,其中1000对应同地域,2000对应default,3000对应跨地域。
MED优先级:数值越低,优先级越高。TR或ECR进行选路时,优先选择MED值低的路由条目。
MED传递范围:MED属性仅在ECR和TR之间、TR和TR之间传递,不传递到VBR或VPC。
MED传递策略:
下云流量方向:下云流量通过TR的路由条目进行选路。ECR向TR传递路由条目时,如果某个路由条目来源VBR和对应接收的TR位于同一地域,则该路由条目的MED值置为1000;如果位于不同地域,则置为3000。
上云流量方向:上云流量通过ECR的路由条目进行选路。TR向ECR传递路由条目时,如果路由条目来自于同地域直接相连的VPC,那么TR会将该路由条目的MED值置为1000;如果路由条目来自于其他TR,那么TR会将该路由条目的MED值置为3000。
路由条目优先级
TR和ECR之间的流量选路,通过各自路由表中路由条目优先级来实现。
下云流量路由选路规则
下云流量通过企业版转发路由器TR的路由条目进行选路。
TR从ECR实例和其他TR实例学习到相同目标网段的路由条目后,系统将根据TR的路由优先级,从高到低依次比较每个属性值,属性值优先级高的路由条目被优选用于转发流量。若多条路由条目当前属性值相同,则系统继续对比下一个路由条目属性值。
路由选路优先级如下表所示:
说明 路由条目属性优先级从高到低依次为:P1>P2>P3>P4。
路由条目属性优先级 | 路由条目属性 | 属性值说明 |
P1 | AS_Path | 系统会对比去往相同目标网段路由条目的AS_Path路径。 AS_Path长度越短越优先,若AS_Path长度相同,则比对本地优先属性。 |
P2 | 本地优先 | 下一跳是地域内连接的优先级高于跨地域连接。 |
P3 | MED | VPC的地域中若没有ECR和TR连接的地域,则比对MED值,MED值越小的路由条目越优先。您可以在ECR中设置目标TR为Default的MED值,以改变下云流量的路径选路。具体操作,请参见操作步骤。 若去往相同目标网段路由条目的MED值相同,则比对字节序属性。 |
P4 | 字节序 | 系统会对比去往相同目标网段路由条目所属的地域ID。地域ID按照字母排序,地域ID排序靠前的路由条目的优先级较高。 例如:来自华北2(北京)(cn-beijing)地域的路由条目优先级高于来自华东1(杭州)(cn-hangzhou)地域的路由优先级。 |
上云流量路由选路规则
上云流量通过ECR的路由条目进行选路。
ECR从TR实例和其他ECR实例学习到相同目标网段的路由条目后,系统将依据路由条目属性的优先级,从高到低依次对比各路由条目在每个属性上的值,属性值优先级高的路由条目被优先用于转发流量。若多条路由条目当前路由条目属性值相同,则系统继续对比下一个路由条目属性值。
路由选路的优先级如下表所示:
说明 路由条目属性优先级从高到低依次为:P1>P2>P3>P4。
路由条目属性优先级 | 路由条目属性 | 属性值说明 |
P1 | MED | ECR从TR实例学习到去往相同目标网段的路由条目,路由条目来自同地域的TR,MED值为1000;路由条目来自其他跨地域的TR,MED值为3000。 若从TR实例学习到去往相同目标网段的路由均为跨地域的TR,则MED值均为3000,继续比对本地优先属性。 |
P2 | 本地优先 | VBR的地域中有ECR和TR连接的地域,优先从与VBR地域相同的ECR和TR连接处上云。 VBR的地域中没有ECR和TR连接的地域,则比对默认出口标记属性。 |
P3 | 默认出口 | VBR的地域中没有ECR和TR连接的地域,系统会对从设置Default出口连接收到的TR路由打标记,确保进入ECR的路由条目优先选择打标的此路由条目。 若ECR出口连接收到的TR路由未打标记,继续比对字节序属性。 |
P4 | 字节序 | 系统会对比去往相同目标网段路由条目所属的地域ID。地域ID按照字母排序,排序靠前的地域ID路由条目的优先级较高。 例如:来自华北2(北京)(cn-beijing)地域的路由条目优先级高于来自华东1(杭州)(cn-hangzhou)地域的路由优先级。 |
原理示例
下面依次介绍3个场景,由浅入深,帮助您理解TR和ECR之间的选路原理,以及如何改变流量路径。所有场景假设AS-PATH长度相同。
场景1:多个TR仅有1个连接了ECR

以上图场景为例,某企业的IDC接入了华东1(杭州)地域的VBR,且分别在华东1(杭州)地域和华东2(上海)地域的VPC内部署了业务。
企业通过VBR、ECR、TR连通云下IDC和云上VPC,其中杭州TR1和上海TR2之间建立了跨地域连接,ECR绑定了杭州TR1和杭州VBR。
1. IDC路由传播至VPC

2. VPC路由传播至IDC

3. 流量路径

因为VBR和VPC1之间、VBR和VPC2之间均只有1条路径,所以不需要选路,流量路径如图。
场景2:多个TR均连接了ECR

以上图场景为例,某企业在华东1(杭州)地域建有IDC机房,且分别在华东1(杭州)地域和华东2(上海)地域的VPC内部署了业务。
企业通过VBR、ECR、TR连通云下IDC和云上VPC,杭州TR和上海TR之间建立了跨地域连接,ECR绑定了杭州TR1、上海TR2、杭州VBR。TR和ECR之间全互联。
1. IDC路由传播至VPC

A:IDC向VBR传播路由
B:VBR向ECR传播路由
C:ECR向TR1和TR2传播路由,此时ECR会在路由条目中先设置MED属性,再发送给2个TR。
当路由条目“来源VBR”和“目标TR”属于同地域时,MED值设为1000;属于跨地域时设为3000,所以:
D:TR之间传播路由。传播完成后,各个TR路由生效情况如下:
2. VPC路由传播至IDC

3. 流量路径

根据前述路由分析:
场景3:多个TR之间相互连接,存在TR未连接ECR

以上图场景为例,某企业已将3个IDC分别接入到华东2(北京)地域、华东2(上海)、华东1(杭州)地域的VBR,且分别在华北2(北京)、华东2(上海)、华东1(杭州)地域的VPC内部署了业务。
企业已将3个VBR连接至ECR,并将TR1和TR2连接至ECR。3个TR之间均建立了跨地域连接。
1. IDC路由传播至VPC

A:IDC向VBR传播路由
B:VBR向ECR传播路由
C:ECR向TR1和TR2传播路由,此时ECR会在路由条目中先设置MED属性,再发送给TR。
当路由条目“来源VBR”和“目标TR”属于同地域时,MED值设为1000;属于跨地域时设为3000。
以来自于VBR1的路由条目为例:
D:TR之间传播路由。传播完成后,各个TR路由生效情况如下:
根据上述路由规则,从各个VPC下云的流量路径分别为:
VPC1下云的流量路径 | VPC2下云的流量路径 | VPC3下云的流量路径 |
 |  |  |
2. VPC路由传播至IDC

根据上述路由规则,IDC上云访问3个VPC的流量路径分别为:
上云访问VPC1的流量路径 | 上云访问VPC2的流量路径 | 上云访问VPC3的流量路径 |
 |  |  |
3. 改变流量路径
您可以在ECR将TR2置为default默认路径,改变VPC3和IDC3之间互访流量的路径:
改变下云流量路径:
ECR将TR2置为default默认路径后,根据MED传递策略,ECR发送给TR2的所有路由条目MED属性都会被置为2000。TR2将这些路由条目发送给TR3后,TR3会优先生效来自TR2的路由条目,从而将VPC3的下云流量出口从TR1改为TR2。
改变上云流量路径:
ECR将TR2置为default默认路径后,根据默认出口原则,上云流量优先选择已设为default的TR2作为下一跳。此时来自VBR3的上云流量访问VPC3时,ECR选择TR2作为下一跳。
修改MED前,VPC3和IDC3的互访流量路径 | 修改MED后,VPC3和IDC3的互访流量路径 |
 |  |
3个VPC与IDC互访的流量路径汇总如下:
MED修改状态 | VPC1与IDC互访流量路径 | VPC2与IDC互访流量路径 | VPC3与IDC互访流量路径 |
修改MED前 |  |  |  |
修改MED后 | 流量路径不变 | 流量路径不变 |  |