一、路由协议:
OSPF
1、OSPF区域的划分:
由于详细链路状态信息不会被发布到区域以外,因此划分区域可以使LSDB的规模大大缩小。减小LSDB规模可以:
减轻路由器负担。
增强稳定性,减小因LSDB更新引起的震荡范围。
2、OSPF邻居:
OSPF 链路两端接口网络类型配置不一致,一端为广播,一端为点到点,邻居可以建立,但路由学习异常。
华为路由器OSPF默认不检查接口MTU,邻居建立不受此影响。
3、OSPF LSA
LS type,Link State ID和Advertising Router的组合共同标识一条LSA
OSPF LSA序列号累加、age 累加。ISIS LSP序列号累加,age递减。
5类、7类LSA forwarding address 的设置
对于5类LSA:
所引入外部路由的下一跳如果在OSPF路由域内,则Forwarding Address应设置为此外部路由的下一跳。
如果所引入外部路由的下一跳不在该 OSPF路由域内,则Forwarding Address应设置为0.0.0.0
对于7类LSA的Forwarding Address设置规则如下:
如果Options字段显示此LSA不可以被转换成第五类LSA,则Forwarding Address 可以被设置成0.0.0.0。
如果Options字段显示此LSA可以被转换成第五类LSA,则Forwarding Address不能被设置0.0.0.0。如果所引入外部路由的下一跳在OSPF路由域内,则Forwarding Address直接设置为所引入外部路由的下一跳;
如果所引入外部路由的下一跳不在OSPF路由域内,则Forwarding Address设置为该ASBR上某个OSPF路由域内的Stub网段(例如Loopback0接口)的接口IP地址,有多个Stub网段时选IP地址最大者。
4、OSPF外部路由:
第一类外部路由永远比第二类外部路由优先,无论cost是多少。
5、OSPF特殊区域:
为了防止外部路由信息重复,在一个NSSA有多个ABR的时候,只允许一个ABR可以把NSSA-LSA转换成AS-external-LSA,这个ABR称为此NSSA的Translator。Translator基于Router ID选举。NSSA的ABR会在Router-LSA中使用一个Bit标识自己是NSSA的ABR,通过检查区域中的Router-LSA,每个NSSA的ABR都可以维护一个ABR列表,从中选举Router ID最大的做为Translator
6、OSPF缺省路由:
Nssa default-route-advertise:
该参数只用于NSSA区域的ABR或ASBR才有意义,配置后,对于ABR,不论本地是否存在缺省路由,都将生成一条Type-7 LSA向区域内发布缺省路由;对于ASBR,只有当本地存在缺省路由时,才产生Type-7 LSA向区域内发布缺省路由.
OSPF缺省路由的发布原则如下:
OSPF设备只有具有对外的出口时,才能够发布缺省路由LSA。
如果OSPF设备已经发布了缺省路由LSA,那么不再学习其它路由器发布的相同类型缺省路由。即路由计算时不再计算其它路由器发布的相同类型的缺省路由LSA,但数据库中存有对应LSA。
外部缺省路由的发布如果要依赖于其它路由,那么被依赖的路由不能是本OSPF路由域内的路由。
路由器发布缺省路由时会检查区域0是否有状态为full的邻居,当区域0仅有状态为full的邻居时,缺省路由才会发布。
由于OSPF路由的分级管理,Type3缺省路由的优先级高于Type5和Type7路由。
Stub Area、Totally Stub Area: ABR会自动产生一条缺省的Summary LSA(Type3 LSA)通告到整个Stub/Totally Stub区域内。
NSSA Area、Totally NSSA Area:ABR会自动产生缺省的Type3 LSA和Type7 LSA通告到整个NSSA Area、Totally NSSA区域内。Type7 LSA缺省路由不会在ABR上转换成Type5 LSA缺省路由泛洪到整个OSPF域。
7、Stub路由器和LSDB过载 :
stub-router:
该命令通过增大该设备所生成的LSA中的链路的度量值(65535),告知其它OSPF设备不要使用这个Stub设备来转发数据。非Stub网段的开销为65535,Stub网段的开销不变,所以到自身接口及网段的流量不受影响。
lsdb-overflow-limit :
当LSDB中的第五类LSA超过配置的最大条目数时,路由器进入超载状态,进入超载状态时,路由器将自身产生的第五类LSA在网络中老化,并不再生成第五类LSA。
处于超载状态的OSPF路由器可以接收其他路由器生成的第五类LSA,但是数量不能超过配置的最大限制,如果新接收的第五类LSA使LSDB中的第五类LSA可能超过配置的最大限制,则新接收的第五类LSA将被丢弃。
8、OSPF VPN(OSPF多实例):
防环机制:通过设置DN及tag防止环路:
3类和5类的DN位设置:
DN bit 置位发生在PE设备上,当PE上的OSPF多实例中引入BGP时,BGP传递过来的3类及5类LSA放入OSPF进程中时DN置1 。
DN bit的检查发生在CE或PE的OSPF多实例中,OSPF未绑定VPN时不检查DN位。
DN bit的最终目的是在OSPF多实例环境中防止PE发出的LSA再回到PE上。
5类LSA tag设置:
根据华为文档解释,VPN route tag 的设置发生在PE设备上,只有当PE将收到的私网路由产生的5、7类LSA的时候打上tag,但在模拟器实验时,当路由器是PE角色时(有MBGP邻居),无论PE的OSPF多实例是否引入BGP路由,OSFP多实例都会将引入的外部路由(包括引入的直连、静态或其他协议路由)打上tag,tag值由AS号转换而来。
DN-bit-set,DN-bit-check,vpn-instance-capbility simple 这三条命令:
DN-bit-set:可以对3、5、7类LSA分别设置,也可以关闭。
DN-bit-check:检查DN位,置1则不处理,LSA正常接收,可以对3、5、7类分别检查,还可以对不同router-id分别检查。
vpn-instance-capbility simple:对DN位及tag都生效,配置此命令后将取消DN和tag检查。
前两种多用于跨域VPN中,当PE与CE、ASBR之间使用OSPF时,ASBR之间传递路由时使用。后一种多用于MCE场景,当CE启用了OSPF多实例的情况下使用。
9、OSPF快收敛:
SPF计算时间:可以通过配置设置为固定值interval1或者使用智能定时器,
spf-schedule-interval interval1 | intelligent-timer max-interval start-interval hold-interval
智能定时器规则:
初次计算SPF的间隔时间由start-interval参数指定。
第n(n≥2)次计算SPF的间隔时间为hold-interval×2(n-2)。
当hold-interval×2(n-2)达到指定的最长间隔时间max-interval时,OSPF保持计算SPF的时间间隔一直使用最长间隔时间。
如果距离上次SPF计算时间间隔超过最大计算间隔max-interval,并且在该时间内无震荡,则退出智能定时器。
在上次SPF计算间隔内没有发生震荡的情况下,本次计算间隔内如果发生震荡,则SPF计算延时start-interval,SPF计算结束后使用本次计算间隔。
LSA更新时间:lsa-originate-interval
LSA接收间隔:lsa-arrival-interval
OSPFV3
OSPFv3是基于链路运行的,取消了编址性的语义,Router ID,Area ID和LSA的Link State ID仍然为32位,只作编号使用。使用链路本地地址作为路由的下一跳,而Virtual-Link除外。
在同一个链路上使用多个OSPF实例,OSPFv2通过认证实现,而OSPFv3 通过在OSPF包头中添加Instance ID字段,以及修改OSPF接口数据结构实现的。Instance ID值影响OSPF包的接收行为。如果接口的Instance ID与其所接收的OSPF包的Instance ID不匹配,则丢弃该包。
OSPFv3本身取消了认证字段,认证依靠IPV6协议实现。
OSPFv3 LSA:
OSPFv3使用Link-LSA与Intra-Area-Prefix-LSA发布前缀。
一个链路范围内的IPv6前缀信息由link-LSA负责通告;
intra-area-prefix-LSA负责把IPv6前缀公告到本区域范围内
未知LSA的处理:
OSPFv2丢弃任何未知类型的LSA。
OSPFv3 根据LS type 字段中的LSA Handling位决定如何处理LSA。
要么只泛洪到本地链路上。
要么把它当作类型已知的LSA来处理,也就是存储下来并泛洪出去。对于本路由器来说,因为这个LSA类型是未知的,所以不把这个LSA纳入计算过程中。
OSPFv3 LSA的泛洪范围增加了“链路本地范围”,对于LSA的泛洪范围,明确写入了LSA头部的LSA-type字段中。
U:标识对未知LSA的处理方法,S2和S1:标识LSA的泛洪范围。
00:链路本地泛洪范围
01:区域泛洪范围
10:AS泛洪范围
11:保留
LSA类型 | LSA作用 |
Router-LSA(Type1) | 设备会为每个运行OSPFv3接口所在的区域产生一个LSA,描述了设备的链路状态和开销,在所属的区域内传播。 |
Network-LSA(Type2) | 由DR产生,描述本链路的链路状态,在所属的区域内传播。 |
Inter-Area-Prefix-LSA(Type3) | 由ABR产生,描述区域内某个网段的路由,并通告给其他相关区域。 |
Inter-Area-Router-LSA(Type4) | 由ABR产生,描述到ASBR的路由,通告给除ASBR所在区域的其他相关区域。 |
AS-external-LSA(Type5) | 由ASBR产生,描述到AS外部的路由,通告到所有的区域(除了Stub区域和NSSA区域)。 |
NSSA LSA(Type7) | 由ASBR产生,描述到AS外部的路由,仅在NSSA区域内传播。 |
Link-LSA(Type8) | 每个设备都会为每个链路产生一个Link-LSA,描述到此Link上的link-local地址、IPv6前缀地址,并提供将会在Network-LSA中设置的链路选项,它仅在此链路内传播。 |
Intra-Area-Prefix-LSA(Type9) | 每个设备及DR都会产生一个或多个此类LSA,在所属的区域内传播。 |
Advertising Router | 泛洪范围 | Link-State ID | |
ISIS
SYSTEM ID:
华为规定为6个字节,一台路由器配置最多3个NET。一个路由域中的System ID必须有相同的长度,一个中间系统的所有NET 必须有相同的System ID。
ISIS邻居建立
检查的参数:
1、最大区域地址数:默认值是0(表示支持3个区域地址),这个值必须一致;
2、System ID长度:默认值是0(表示System ID长度为6字节),这个值必须一致;
3、Area ID和路由器类型:如果Area ID一样,则可以建立Level-1和Level-2的邻接关系;
如果不一样,则只能建立Level-2的邻接关系;
4、认证:如果配置了认证,则认证参数必须匹配;
5、IP地址网段:同一网段检查,此项为华为特性。由于IS-IS直接承载在数据链路层之
上,理论上是不需要进行同一网段的检查。华为 VRP提供了这一新功能,进行同一网段
检查,保证邻居关系的正确建立。
DIS选举:
各层次选举自己的DIS,抢占式,比较顺序:接口优先级—snpa地址(LNA中指MAC)— system-ID ,数值越大越优先。
接口优先级范围0-127,默认64.
握手机制:
点到点链路上邻居形成为2次握手,在后续的新TLV中定义了三次握手机制。
广播链路上邻居形成为3次握手,有level 1和level 2 两种hello报文,根据接口配置的链路类型来确定发送哪种hello,如果链路类型是level-1-2,则两种都发送。
ISIS计时器:
Hello时间
点到点链路上默认hello时间10s,hold 时间 3倍hello时间。
广播链路上,DIS发送Hello时间为普通路由器的1/3,其它路由器上检测DIS的hold时间为一个hello
默认 DIS发送hello 3s ,其它路由器检测DIS的hold为10s,其它路由器hello与点到点链路相同。
DIS 周期更新CSNP时间 10s
ISIS数据库周期泛洪时间15分钟,老化时间20分钟,零剩余生存时间60s
ISIS的cost:
窄度量:采用6-bit 的接口开销,范围1-63;10-bit的路径开销,范围1-1023 。
宽度量:采用24-bit的接口度量和32-bit的路径度量
narrow-compatible:表示既可以接受narrow 的报文,也可以接受wide的报文,对于
发送,却是只发送narrow的报文。
wide-compatible:表示既可以接受narrow的报文,也可以接受wide的报文,对于发
送,却是只发送wide的报文
ISIS 认证:
接口认证:在接口视图下配置,对Level-1和Level-2的Hello报文进行认证。
区域认证:在IS-IS进程视图下配置,对Level-1的CSNP、PSNP和LSP报文进行认证。
路由域认证:在IS-IS进程视图下配置,对Level-2的CSNP、PSNP和LSP报文进行认证。
ISIS的路由计算:
在路由计算中,路由代表叶子,路由器则代表节点。如果I-SPF计算后的SPT改变,PRC会只处理那个变化的节点上的所有叶子;如果经过I-SPF计算后的SPT并没有变化,则PRC只处理变化的叶子信息。
isis v6增加的TLV:
IPv6 Reachability TLV [Type 236] [0xEC]
IPv6 Interface Address TLV [Type 232] [0xE8]
BGP
BGP认证:
BGP协议本身没有认证,认证是通过TCP选项字段进行的。
BGP AS号:
普通BGP AS号长度为2字节,范围1-65535,1-64511为公有AS,64512-65535是私有AS号。
目前AS号已扩展为4字节,与2字节AS号兼容,4字节AS分为整数和点分两种形式,点分形式用x.y表示,换算关系是:整数形式的4字节AS号=x*65536+y 。需要注意的是调整4字节AS号的显示格式会影响AS-Path正则表达式和扩展团体属性过滤器的匹配结果。
4字节AS号与2字节的兼容:
标准协议定义了2种新的可选过渡属性AS4_Path(属性码为0x11)和AS4_Aggregator(属性码为0x12)用于在Old Session上传递4字节AS信息。
BGP的Open消息头是固定的,其中My AS Number字段填写的是本地AS号,但是My AS Number字段只占有两个字节,无法填充4字节的AS号。因此New Speaker在发送Open消息时,将AS_TRANS号23456填充到My AS Number字段,而将自己实际的4AS Number填写在可选能力字段,这样邻居间就能通过Open消息的可选能力字段获知对方是否支持4字节AS能力。
BGP的路由更新:
BGP初始化时发送所有的路由给BGP对等体,同时在本地保存了已经发送给BGP对等体的路由信息。
当本地的BGP收到了一条新路由时,与保存的已发送信息进行比较,如未发送过,则发送,如已发送过则与已经发送的路由进行比较,如新路由更优,则发送此新路由,同时更新已发送信息,反之则不发送。
当本地BGP发现一条路由失效时,如果路由已发送过,则向BGP对等体发送一个撤消路由消息。
BGP路由通告原则:
1、连接一旦建立,BGP Speaker将把自己所有BGP最优路由发布给新对等体。存在多条有效路由时,BGP Speaker只将最优路由发布给对等体。
2、BGP Speaker只把自己使用的路由通告给对等体
3、BGP Speaker从EBGP获得的路由会向它所有BGP对等体发布(包括EBGP对等体和IBGP对等体)。
4、BGP Speaker从IBGP获得的路由不向它的IBGP对等体发布。
5、BGP Speaker从IBGP获得的路由是否通告给它的EBGP对等体要依据IGP和BGP同步的情况。
BGP的属性
公认必须遵循的(Well-known mandatory):所有BGP设备都可以识别,且必须存在于Update消息中。如果缺少这种属性,路由信息就会出错。
公认任意(Well-known discretionary):所有BGP设备都可以识别,但不要求必须存在于Update消息中,可以根据具体情况来选择。
可选过渡(Optional transitive):在AS之间具有可传递性的属性。BGP设备可以不支持此属性,但它仍然会接收这类属性,并通告给其他对等体。
可选非过渡(Optional non-transitive):如果BGP设备不支持此属性,则相应的这类属性会被忽略,且不会通告给其他对等体。
BGP路由优选
1、丢弃下一跳不可达路由
2、优选协议首选值(PrefVal)最高的路由。
3、优选本地优先级(Local_Pref)最高的路由。
4、优选本地生成的路由:优选聚合路由,手动聚合优于自动聚合路由,network命令引入的路由的优先级高于通过import-route命令引入的路由。
5、优选AS路径(AS_Path)最短的路由。
6、比较Origin属性,依次优选Origin类型为IGP、EGP、Incomplete的路由。
7、优选MED(Multi Exit Discriminator)值最低的路由。
8、优选从EBGP邻居学来的路由(EBGP路由优先级高于IBGP路由)
9、优选到BGP下一跳IGP Metric较小的路由。
到此步骤,如果以上全部相同,则可以进行负载,如果负载未开启则继续比较以下条件:
10、优选Cluster_List最短的路由。
11、优选Router ID最小的路由器发布的路由。
12、比较对等体的IP Address,优选从具有较小IP Address的对等体学来的路由。
BGP路由聚合
summary automatic命令对BGP引入的路由按照自然网段进行聚合,对network命令引入的路由无效
aggregate该命令可以对BGP本地路由表中的路由进行手工聚合。缺省情况下手动聚合后会把明细路由和聚合路由一起发布。
BGP反射器:
Cluster_List属性:
用于防止AS内部的环路。cluster id用于标识一个RR或者一个RR集群,可以将一个集群的RR配置相同的cluster id,缺省情况下,反射器使用自己的Router ID做为Cluster ID。
路由反射器使用CLUSTER_LIST,记录反射路由经过的所有CLUSTER_ID,Cluster_List由路由反射器产生。当RR接收到一条更新路由时,RR会检查Cluster_List。如果Cluster_List中已经有本地Cluster_ID,丢弃该路由。
Originator_ID属性:
当一条路由第一次被RR反射的时候,RR将接收到路由的始发者router-id(本地AS始发路由:BGP宣告者的Router ID,非本地AS始发路由:本地AS的边界路由器的Router ID)做为Originator_ID属性加入这条路由,标识这条路由的发起路由器。
如果一条路由中已经存在了Originator_ID属性,则RR将不会创建新的Originator_ID。
当其他BGP Speaker接收到这条路由的时候,将比较收到的Originator_ID和本地的Router ID,如果两个ID相同,BGP Speaker会忽略掉这条路由,不做处理。
BGP dampening:
dampening只对EBGP路由生效,dampening ibgp命令只对BGP VPNv4路由生效。
dampening half-life-reach reuse suppress ceiling
half-life-reach: 半衰期,单位分值,缺省15分钟,取值1-45
Reuse:解除抑制阈值
Suppress:抑制阈值
Ceiling:惩罚上限
BGP对等体组:
IBGP对等体组:所包括的对等体属于同一个内部AS。
纯EBGP对等体组:所包括的对等体属于同一个外部AS。
混合EBGP对等体组:所包括的对等体属于不同的外部AS。
Tips:
IBGP将本地始发路由发布给IBGP邻居时,不携带AS号
二、隧道技术
MPLS/MPLS-TE
MPLS标签空间:
20个bit,特殊标签:
0 IPV4显示空标签,倒数第二跳正常压入值为0的MPLS标签。
3 隐式空标签,倒数第二跳检测如果下游分配的式值为3的标签,则直接弹出MPLS标签,将IP报文转发给最后一跳。
2 IPV6显示空标签,
FEC分类:
FEC可以根据地址、业务类型、QoS等要素进行划分。
LDP协议:
LDP消息承载在UDP(本地)或TCP(远程连接)之上,端口号为646。
两个LSR都从对端发来的Hello Message中获得对端用于建立TCP连接的地址,然后比较两个地址的大小,地址大的作为主动方发起TCP连接。
LDP Identifier后2Bytes填充0时表示基于平台的标签空间。帧模式封装的MPLS使用基于平台的标签空间,信元模式的MPLS使用基于接口的标签空间。
LDP标签的分发、控制和保持:
分发方式:DU(Distribution Unsolicited)和DOD(Distribution on Demand)。下游自主,下游按需
控制方式:Ordered和Independent。有序和独立
保持方式:Conservative和Liberal。自由和保守
华为vrp平台采用DU+Ordered+Liberal方式。
MPLS环路检测:
MPLS要依靠IGP建立LSP ,IGP本身有TTL做为环路检测机制。帧模式的MPLS中使用TTL,信元模式的MPLS中无TTL。MPLS对于TTL的处理有两种方式:
1、Uniform模式:拷贝IP TTL值。IP报文在进入MPLS网络的时候,入口处TTL减1,拷贝至MPLS头部;MPLS域只对MPLS TTL处理,IP TTL不变;出口处弹出标签时将MPLS TTL拷贝回IP头部。
2、Pipe模式:TTL统一设置为255。IP报文在进入MPLS网络的时候,入口处IP头TTL减1,MPLS头TTL设置为255;MPLS域只对MPLS TTL处理,IP TTL不变;出口处弹出标签,IP头标签TTL值不变。
LDP环路检测机制,距离向量法,最大跳数法。
LDP路径向量法和最大跳数法分别通过两类TLV实现:Path Vector TLV 和 Hop Count TLV 。LDP通过把自己的LSR ID加到Path Vector TLV的列表中,Hop Count TLV 经过一个LSR加1。如果LSR发现Path Vector TLV列表中出现自己的LSR ID或者Hop Count 超过设定值则认为发生环路,拒绝建立LSP。
目前主流的MPLS TE实现方式:
RSVP-TE:RSVP-TE技术较为成熟,已经规模运用,但技术本身较为复杂,扩展性较差。
CR LDP-TE:CR LDP-TE技术不太成熟,基本没有运用,但是比较简单,扩展性较好。
MPLS TE组件:
四大组件:信息发布组件、路径计算组件、信令组件(或称路径建立组件)、报文转发组件。
高级特性:FRR(Fast Reroute)、隧道的备份(Backup)、带宽的自动调整(Auto Bandwidth Allocation)、路径的重优化(Reoptimum)。
MPLS TE 实现:
1.通过扩展OSPF和ISIS协议,泛洪带有带宽、链路属性等参数的链路状态信息;
2.通过扩展的CSPF(Constraint Shortest Path First)算法,计算从源到目的地的最佳路径;
3.通过对RSVP协议的扩展,建立端到端的LSP,同时进行标签的分配;
4.最后,把流量注入到LSP隧道中。
MPLS TE 发布的信息:
1、链路状态信息-IGP本身就具有
2、TE Metric:可手工配置,手工配置后建立路径是使用TE metric ,IGP Metric将被忽略。
3、带宽信息
4、管理组和亲和属性
带宽信息包括:最大物理带宽、最大可预留带宽、每优先级的当前可用带宽。TE隧道有0-7共8个优先级,0的优先级最高,高优先级隧道可抢占低优先级隧道的带宽。
带宽的重大变化:在VRP的实现中,默认定义的阈值是10%。即变化量与剩余带宽的比值大于等于10%,即泛洪带宽信息。
管理组即为链路属性,32bit,可用用来给链路着色。
亲和属性为隧道属性,32bit 。
掩码,32bit,可以和管理组及亲和属性与操作。
隧道优先级分为建立优先级和保持优先级。抢占时,将新建隧道的建立优先级和原有隧道的保持优先级进行比较。
这4种信息由OSPF Type=10的不透明LSA(Opaque LSA)和 isis Type=135 Wide Metric、Type=22 IS可达性TLV发布。泛洪之后形成TEDB数据库,TEDB与IGP路由的LSDB完全独立。
MPLS TE 路径计算
CSPF有两个计算依据:
1、待建立隧道的隧道属性,这些都在隧道的入口处配置;例如metric、显示路径等。
2、流量工程数据库TEDB。
CSPF的计算过程如下:
1、针对待建立隧道的隧道属性,先对TEDB中的链路进行裁剪,把不满足属性要求的链路剪掉;
2、再采用SPF算法,寻找一条到隧道目的地址的最短路径。
缺省情况下,CSPF在计算路径时预先采用OSPF协议生成的TEDB来计算CR-LSP的路径。
CSPF在计算路径的过程中,如果遇到多条权值相同的路径,将根据策略选择其中的一条。这个过程称为仲裁(tie-breaking)。可用的仲裁策略有:
Most-fill:选择已用带宽和最大可预留带宽的比值最大的链路,使链路带宽资源高效使用;
Least-fill:选择已用带宽和最大可预留带宽的比值最小的链路,使各条链路的带宽资源均匀使用;
Random:随机选取,使每条链路上的LSP数量均匀分布,不考虑带宽因素。
Most-fill和Least-fill模式只在两条链路的带宽占用率之差超过10%时有效
RSVP:
RSVP的主要消息类型:
Path:用来建立和维护保留
Resv:响应Path消息,用来建立和维护保留
PathTear:结构与Path类似,用于在网络中删除保留
ResvTear:结构与Resv类似,用于在网络中删除保留
PathErr:接收到错误的Path消息后发送。
ResvErr:接收到错误的ResvErr消息后发送
Hello:RSVP-TE的扩展,用于邻居间状态的快速检测
三、VPN技术
MPLS-VPN
1、BGP/MPLS-VPN
RD设置
不同VPN的RD值设置一定不同,相同VPN的RD值设置可以相同也可以不同。通常在承载网的VPN FRR场景中,因要使用备份路由,需要将奇偶数平面的RD设置为不同。
HVPN
HoVPN SPE向UPE发布汇聚或者缺省路由,SPE上部署VPN实例。
HVPN SPE向UPE通告所有路由,SPE上不部署VPN实例。
HUB-Spoke
方式1:HUB和Spoke都使用EBGP协议,HUB-PE上需要配置允许AS-path重复。
方式2:HUB和Spoke都使用IGP协议。
方式3:HUB使用EBGP协议,Spoke使用IGP协议。HUB-PE上需要配置允许AS-path重复。
不能采用HUB使用IGP协议,Spoke使用EBGP协议的方式,Spoke PE侧会产生路由震荡。
2、VPWS
CCC 静态单层手工分配标签,支持本地和远程连接。
Martini 内层和外层标签都由LDP动态分配,不支持本地连接。
SVC 内层标签手工静态分配,外层标签LDP动态分配。
3、VPLS中,使用“全连接”和“水平分割转发”来避免环路。从公网侧PW收到的数据包不再转发到其他PW上,从PE收到的报文不转发到其他PE。
EVPN
传统VPLS缺陷:
CE到PE链路只能单活,无法负载,浪费链路资源。
网络侧路径单一,无法形成多路径。
故障收敛慢,收敛时间从1S到10S不等。
ARP请求早上广播泛洪,浪费带宽和设备资源。
因VPLS水平分割防环机制,需要PW全连接。
EVPN5种路由:
集成多播路由(Inclusive Multicast Route)发现PE设备,BUM表PE设备标签分配
以太网段路由(Ethernet Segment Route)发现连接同一个ES的PE设备,DF选举,形成ES成员表
MAC/IP以太自动发现路由(Ethernet Auto-Discovery Route) ESI标签分配(针对ES成员表),环路避免、快收敛、负载分担,多活、别名。
地址通告路由(MAC/IP Advertisement Route)MAC-VRF表分配标签,MAC地址通告、主机迁移
IP前缀路由(IP Prefix Route)路由通告 分配前缀标签
VLAN-Aware
每个子接口配置一个VLAN,一个BD域,每个BD域下配置相同VPN实例,但使用不同bd-tag,以实现不同VLAN可以相同MAC地址。
四、可靠性
HA
Mtbf 平均故障时间间隔
Mttr 平均故障修复时间
Availability= Mtbf/(Mtbf+ Mttr),电信行业99.999%的可用度意味着设备因故障导致的业务中断时间平均每年不能超过5分钟
BFD
BFD工作方式:
BFD控制报文封装在UDP报文中传送。会话开始阶段,双方系统通过控制报文中携带的参数(会话标识符、期望的收发报文最小时间间隔、本端BFD会话状态等)进行协商。协商成功后,以协商的报文收发时间在彼此之间的路径上定时发送BFD控制报文。
Eth-Trunk接口BFD问题:
普通的BFD单跳会话绑定Eth-Trunk接口,只会创建一个BFD会话,并从Eth-Trunk口中选择一个成员口所在单板作为状态机单板,并对这一条成员链路进行检测。如果该成员口故障、该成员链路故障,或者该状态机单板故障,BFD会话就会认为整个Eth-Trunk发生了故障,实际上,该Eth-Trunk的其他成员链路仍然可用,Eth-Trunk接口的状态应该是Up的。
BFD for Link-bundle类型的会话能够很好的解决这个问题。使用了BFD for Link-bundle会话绑定Eth-Trunk接口,Eth-Trunk成员口状态发生震荡不会导致整个Eth-Trunk状态发生震荡。
bfd btoa bind link-bundle peer-ip 10.1.1.1 interface Eth-Trunk1 source-ip 10.1.1.2
min-tx-interval 10
min-rx-interval 10
BFD检测时间
异步模式的检测时间 = 接收到的远端Detect Mult × max(本地的RMRI,接收到的DMTI),其中:
DMTI(Desired Min Tx Interval):本端想要采用的最短BFD报文的发送间隔。
RMRI(Required Min Rx Interval):本端能够配置的最短BFD报文接收间隔。
Detect Mult(Detect time multiplier):检测时间倍数。
bfd bind peer-ip default-ip:缺省情况下,BFD的缺省组播地址为224.0.0.184
VPN静态路由Track bfd
ip route-static vpn-instance VPNA 1.1.1.1 255.255.255.255 10.2.1.1 track bfd-session pe2_to_ce1
bfd pe2_to_ce1 bind peer-ip 10.2.1.1 vpn-instance VPNA interface GigabitEthernet3/0/0 source-ip 10.2.1.2 auto
BFD状态与接口状态联动
bfd pis bind peer-ip default-ip interface GigabitEthernet1/0/0
discriminator local 2
discriminator remote 1
process-interface-status
BFD状态与子接口状态联动
bfd pissub bind peer-ip default-ip interface GigabitEthernet1/0/0
discriminator local 2
discriminator remote 1
process-interface-status sub-if
VRRP
- 虚拟MAC地址:00-00-5E-00-01-{VRID}
- Vrrp组播地址224.0.0.18
- Vrrp根据优先级选举master,数值大的优先。优先级相同时,VRRP设备上VRRP备份组所在接口主IP地址较大的成为Master设备。
- IP地址拥有者优先级为255,通常将成为Master
- 当Master设备主动放弃Master地位(如Master设备退出备份组)时,会发送优先级为0的通告报文,用来使Backup设备快速切换成Master设备,而不用等到MASTER_DOWN定时器超时。这个切换的时间称为Skew_time,计算方式为:(256-Backup设备的优先级)/256,单位为秒。
- 当Master设备发生网络故障而不能发送通告报文的时候,Backup设备并不能立即知道其工作状况。等到MASTER_DOWN定时器超时后,才会认为Master设备无法正常工作,从而将状态切换为Master。其中,MASTER_DOWN定时器取值为:(3* ADVER_INTERVAL)+ Skew_time,单位为秒。
- Master设备会根据该定时器定期发送VRRP通告报文,缺省值为1秒
- VRRP协议包括两个版本:VRRPv2和VRRPv3。
VRRPv2仅适用于IPv4网路,VRRPv3适用于IPv4和IPv6两种网络。
VRRPv3不支持认证功能,而VRRPv2支持认证功能。
VRRPv3支持的是厘秒级,而VRRPv2支持的是秒级
- Vrrp的负载分担:
多网关负载分担:通过创建多个带虚拟IP地址的VRRP备份组,为不同的用户指定不同的VRRP备份组作为网关,实现负载分担。
单网关负载分担:通过创建带有虚拟IP地址的VRRP负载分担管理组LBRG(Load-Balance Redundancy Group),并向该负载分担管理组中加入成员VRRP备份组(无需配置虚拟IP地址),指定负载分担管理组作为所有用户的网关,实现负载分担。
NSR与NSF
NSR 依靠双主控,分布式结构,转发与控制分离实现业务不中断,不需要邻居协助
NSF(GR)是一个多点技术,需要邻居协助完成业务的不中断。
隧道保护技术
TE-FRR:保护的是一个节点或一个链路。
TE-hoststandby:是一种端到端的保护技术
TI-LFA FRR支持任意拓扑的节点和链路保护,能够弥补传统隧道保护技术的不足。
五、QOS
保证传输的带宽,降低传送的时延和时延抖动,降低数据的丢包率等.
带宽是传输路径上的最小带宽。时延包括传输时延、处理时延、排队时延。
QOS模型分为Best Effort(尽力而为) 、Integrated Services Model(集成服务模型) 、Differentiated Services Model(区分服务模型)
QOS标记:
MPLS 网络使用EXP、VLAN 网络使用802.1p中的Priority、IPV4包头使用tos(以前使用IP Precedence,现在使用DSCP).
DSCP :
DSCP 使用TOS字段的前6bit,可将流量分为64类,DSCP定义了4类PHB:
BE PHB (Default PHB),CS PHB ,EF PHB ,AF PHB
Default DSCP:000000,Default PHB:先进先出(FIFO)、尾丢弃(Tail-drop)。
CS DSCP:000000-111000,CS PHB:为了兼容IP Precedence,使用高三位比特对应IP Precedence。
EF DSCP值:101110,EF PHB:保证最小的延迟,保证一定的优先带宽,超过规定带宽的流量被丢弃
AF DSCP值:分为四类,AF1-AF4,高三位001-100,每一类分为三个丢弃优先级对应第三位的010、100、110, AF PHB:保证一定数量的带宽,如果有空余带宽,可以占用额外带宽。
AF1 | AF2 | AF3 | AF4 | |
低丢弃率 | 001010 | 010010 | 011010 | 100010 |
中丢弃率 | 001100 | 010100 | 011100 | 100100 |
高丢弃率 | 001110 | 010110 | 011110 | 100110 |
流分类:
对于流量的分类,几乎可以依据报文的任何信息,比如可以根据报文长度、源IP地址、目的IP地址、源端口号、目的端口号、协议ID等进行流量的分类。
复杂流分类:
是指根据五元组(源/目的地址、源/目的端口号、协议类型)等信息对报文进行分类。
简单流分类:
利用IP Precedence、DSCP、MPLS EXP、802.1P识别出各种类别的流,执行对应的PHB。
网络边缘:复杂流分类,标记分类结果,网络核心:简单流分类,执行对应的PHB。
流量监管和整形:
流量监管(Traffic-policing):
监督进入或流出网络中某一流量的规格,限制它在一个允许的范围之内。一般在应用在入方向。由CAR技术实现,如果流量超标,将超标的报文丢弃或重新标记。
流量整形(Traffic-shaping):
限制流出某一网络的某一连接的流量与突发。由GTS技术实现,如果流量超标,将超标的报文放入缓存队列,当令牌桶有足够的令牌时,再均匀的向外发送这些被缓存的报文。
拥塞管理:
当接口发生拥塞,利用拥塞管理技术解决资源竞争问题。拥塞管理利用队列调度策略来决定数据包处理的先后顺序。
FIFO: 先进先出队列,尾丢弃
PQ:优先级队列,共8个队列,优先级高的先调度,尾丢弃。容易造成饿死现象。
CQ:自定义队列,共17个队列,其中0是优先级队列,1~16号队列可以按用户的定义分配它们能占用的接口带宽比例,在报文出队的时候采用Round Robin调度方式。尾丢弃。
WFQ:加权公平队列,支持4096个队列。WFQ不允许用户通过ACL对报文进行分类,WFQ是根据流(flow)对报文进行动态分类,一个流的定义由报文的五元组( 源IP 、目的IP 、协议号、源端口号、目的端口号)来确定,具有相同五元组特性的报文属于同一个流,使用Hash算法映射到不同的队列中。不同队列间根据流的IP Precedence值决定享有的带宽比例。不同队列的报文在入队时都被赋予一个SN,SN小的报文优先被调度。当队列已满,使用WFQ机制丢弃后到达的报文。
SN计算:SN由报文长度和IP优先级决定,小字节、高优先级的报文被优先调度。
IP RTPQ:IP RTP Queuing,IP RTP优先队列
CBQ:Class-based Queuing,基于类的队列
拥塞避免:
RED:Random Early Detection,随机早期检测
WRED:Weighted Random Early Detection,加权随机早期检测
五、IP网络新技术
Segment routing
特点:
1)、通过对现有协议(例如IGP)进行扩展,能使现有网络更好的平滑演进。
2)、同时支持控制器的集中式控制模式和转发器的分布式控制模式,提供集中式控制和分布式控制之间的平衡。
3)、采用源路由技术,提供网络和上层应用快速交互的能力。
收益:
1)、简化MPLS网络的控制平面。Segment Routing使用控制器或者IGP集中算路和分发标签,不再需要RSVP-TE,LDP等隧道协议。Segment Routing可以直接应用于MPLS架构,转发平面没有变化。
2)、提供高效TI-LFA(Topology-Independent Loop-free Alternate) FRR保护,实现路径故障的快速恢复。在Segment Routing技术的基础上结合RLFA(Remote Loop-free Alternate) FRR算法,形成高效的TI-LFA FRR算法。TI-LFA FRR支持任意拓扑的节点和链路保护,能够弥补传统隧道保护技术的不足。
3)、Segment Routing技术更具有网络容量扩展能力。传统MPLS TE是一种面向连接的技术,为了维护连接状态,节点间需要发送和处理大量Keepalive报文,设备控制层面压力大。Segment Routing仅在头节点对报文进行标签操作即可任意控制业务路径,中间节点不需要维护路径信息,设备控制层面压力小。此外,Segment Routing技术的标签数量是:全网节点数+本地邻接数,只和网络规模相关,与隧道数量和业务规模无关。
4)、更好的向SDN网络平滑演进。Segment Routing技术基于源路由理念而设计,通过源节点即可控制数据包在网络中的转发路径。配合集中算路模块,即可灵活简便的实现路径控制与调整。Segment Routing同时支持传统网络和SDN网络,兼容现有设备,保障现有网络平滑演进到SDN网络,而不是颠覆现有网络。
Segment分类
1)、Prefix Segment(前缀段):手工配置,IGP扩散,全局可见,全局有效。Prefix SID根据偏移值、SRGB计算生成MPLS转发表项。
2)、Adjacency Segment(邻接段):动态分配,也可以手工配置。IGP扩散,全局可见,本地有效。Adjacency SID为SRGB范围外的本地SID。
3)、Node Segment(节点段):手工配置。Node Segment是特殊的Prefix Segment。在节点的Loopback接口下配置IP地址作为前缀,这个节点的Prefix SID实际就是Node SID。
4)、在路径中的每一跳,使用栈顶段信息区分下一跳。段信息按照顺序堆叠在数据头的顶部。当栈顶段信息包含另一个节点的标识时,接收节点使用等价多路径(ECMP)将数据包转发到下一跳。当栈顶段信息是本节点的标识时,接收节点弹出顶部段并执行下一个段所需的任务。
Segment Routing标签冲突处理原则:
标签冲突分为前缀冲突和SID冲突,前缀冲突是指相同的前缀关联了两个不同的SID,SID冲突是指相同的SID关联到不同的前缀。
标签冲突处理原则:当冲突产生后,优先处理前缀冲突,之后根据处理结果再进行SID冲突处理,并按如下规则进行优选。
前缀掩码更大者优选;前缀更小者优选;SID更小者优选
SID的组合使用:
Prefix segment :按照最短路径转发
Adjacency segment :显示严格路径
Adjacency segment + Prefix segment :显示松散路径
IGP for SR-MPLS
Isis:Prefix-SID Sub-TLV、Adj-SID Sub-TLV、LAN-Adj-SID Sub-TLV、SID/Label Sub-TLV、SID/Label Binding TLV、SR-Capabilities Sub-TLV、SR Local Block Sub-TLV
Ospf:Type 10 Opaque LSA、及其它sub-TLV
SR-MPLS BE
SR-MPLS BE(Segment Routing-MPLS Best Effort)是指IGP使用最短路径算法计算得到的最优SR LSP。SR LSP的创建过程和数据转发与LDP LSP类似。这种LSP不存在Tunnel接口。SR-MPLS BE是一种替代“IGP+LDP方案”的一种新方案。
SR-MPLS Flex-Algo
灵活算法一般使用一个三元组表示:(metric-type,calc-type,constraints),在实现中,给定一个ID表示唯一的一种算法,ISIS中算法ID取值范围128-255,其中:
约束条件constraints包括:
exclude admin group:不能包含任意一个引用的亲和属性名称
include any admin group:包含任意一个引用的亲和属性名称
include all admin group:包含所有引用的亲和属性名称
calc-type:目前都使用spf
metric-type:计算过程中使用的算法类型
ISIS使用SR-Algorithm TLV通告自己使用的算法,SR-Algorithm TLV只能在同一个isis级别里传播。
在同一个IGP域内,不同设备定义的算法值相同,但算法含义不一致,可以通过sub-TLV的priority字段进行优选,值大的优先,如果优先级相同,则选择system-id大的。
引流:通过color与Flex-Algo映射,BGP发布路由时通过策略给路由染色(设置color),这样将流量引入通过不同Flex-Algo计算出的隧道中。
SR-MPLS TE
组件:信息采集组件、集中算路组件、信令组件、报文转发组件
传统MPLS-TE组件:信息发布组件、路径计算组件、路径建立组件、报文转发组件
SR-Policy
可以由CLI、netconf、PCEP、BGP-SR-Policy等多种方式生成。
SR-Policy 由一个三元组标识(头端,color,尾端),其中color是一个32bit的团体属性值。
隧道下发:可以由BGP-SR-Policy、PCEP、netconf实现,目前通常使用BGP-SR-Policy
路径:一个SR-Policy可以包含多个候选路径,候选路径携带优先级(preference),优先级高的成为主路径,每条候选路径可以包含多个segmentlist,segment list 配置weight值,可以根据weight值进行等价/非等价负载分担。
Binding SID:每个SR-Policy可以定义一个binding SID,BSID可以用于路径计算。
BGP for SR-MPLS
BGP EPE可为域间路径分配BGP Peer SID,包括Peer-Node SID(每个BGP会话)、Peer-Adj SID(到达peer的邻接)、Peer-Set SID(指示一组邻居),通过BGP-LS使用Link NLRI上报给控制器,控制器利用这些SID进行编排路径,实现跨域SR。
Peer-Node SID和Peer-Adj SID均是局部标签,在本机有效。不同设备的Peer-Node SID和Peer-Adj SID可以重复。
BGP-SR-policy 的NLRI
当前BGP EPE 只支持EBGP场景,多跳EBGP也必须通过物理链路直连,BGP EPE只分配SID,不建立隧道。BGP EPE不能与SR-MPLS-BE配合,只能和SR-MPLS-TE配合形成EPE隧道。
隧道接口及流量引入:
SR-MPLS-BE 无隧道接口,可通过VPN隧道策略,静态路由迭代,BGP路由迭代
SR-MPLS-TE 有隧道接口,可通过vpn隧道策略,静态路由出接口,自动路由,策略路由
SR-MPLS-Policy 无隧道接口,可以通过color和DSCP进行引流。
SRV6
SR-MPLS与普通的MPLS相比简化了控制平面,将传统的LDP、IGP、RSVP-TE统一到了IGP+SR.
SRV6与SR-MPLS相比简化了转发平面,不再使用MPLS标签,直接使用IPV6转发。
SRV6可以简化现有网络协议,降低网络管理复杂度,更核心的优势是nativeIP转发和可编程性。可编程性体现在segment list、SID中的function、argument+option
使用IPV6的43号标准扩展头-路由扩展头(RH)的类型4(SRH)实现SRV6。
SRV6 SID :
SID组成:locator+function+argument(可选),SID length(L+F+A)<=128,当小于128位时,保留位填0.
Locator占用高64bit,网络里其他节点通过Locator网段路由就可以定位到本节点,同时本节点发布的所有SRv6 SID也都可以通过该条Locator网段路由到达。
SID中的字母意义:
end 标识一个目的节点,表示终止当前指令,开始执行下一个指令。
X:表示一个或者一组三层接口转发报文。例如end.X
T:代表查询路由表并转发报文
D:解封装
V:表示vlan
U:表示根据单播MAC地址表转发
M:表示查询二层组播转发表进行转发
B6:表示应用指定的SRV6 policy
BM:表示应用指定的SR-MPLS policy
SRV6 flavors(SRV6附加行为):
USP:最后一跳弹出,与MPLS显示空标签0作用相似。
PSP:倒数第二跳弹出,与MPLS隐式空标签 3作用相似。
USD:最后一个endpoint节点解封装外出IPV6报文。
SID类型:
End、End.X、End.DT4、End.DX4、End.DT6、End.DX6、End.OP(OAM)、Src.DT4(组播VPN)、Src.DT6(组播VPN),其中:
end由IGP发布,全局可见本地有效。可手工配置也可由IGP动态分配。
End.X由IGP发布,全局可见本地有效。可手工配置也可由IGP动态分配。
其它VPN类型的SID由BGP发布,可手工配置也可由BGP动态分配。
SID中的function可以由协议动态分配也可以静态配置,对应SID后面的功能选项(X、DT4、DT6等)。
-----------------------------------------------------------------+
| Locator | Dynamic Opcode | Static Opcode | Args |
-----------------------------------------------------------------+
静态配置SID时,SID只占用静态段范围,静态段取值从1开始,动态段设置为0。动态分配SID时,SID会占用动态段和静态段范围,动态段取值从1开始,静态段取值从0开始。
SRV6节点:
源节点:可以是生产SRV6报文并且支持SRV6的设备,也可以是SRV6域的边缘设备。
源节点行为有封装和插入两种模式,具体有以下几种方式:
H.insert、H.insert.Red、H.Encaps、H.Encaps.Red、H.Encaps.L2、H.Encaps.L2.Red
其中,Red(reduced)表示SRH中的segment-list不包含已存在IPV6目的地址中的第一个segment
中转节点:SRV6报文转发路径上不参与SRV6处理的IPV6节点,中转节点只执行普通的IPV6报文转发。中转节点可以是普通的IPV6节点,也可以是支持SRV6的节点。
Endpoint节点:节点接收报文的IPV6目的地址是本地配置的SID,则该节点为endpoint节点,它定义本地生成的SID,指定绑定到这些SID的指令,存储和这些指令相关的转发信息,为报文提供转发、封装和解封装等服务。
SFC(service function chain):服务功能链
主要包含的服务:FW、IPS、应用加速器、NAT等。
SRV6-Aware SF :能够识别SRV6报文并进行处理
SRV6-unaware SF:不识别SRV6报文,收到后会丢弃,这种场景需要配置SF代理才能实现业务链。
组件:SFC域、分类器SC(位于SFC域边界入口)、转发节点SFF、功能节点SF,如果SF不支持SRV6则由SFF担任SF代理,将SRV6报文中的SRV6封装删除然后转发给SF,SF接收报文后进行功能处理然后转发给SFF,SFF重新封装SRV6报头并转发。
TI-LFA
P空间:
以保护链路源端为根节点建立SPF树,所有从根节点不经过保护链路可达的节点集合称为P空间。
扩展P空间:
以保护链路源端的所有邻居为根节点分别建立SPF树,所有从根节点不经过保护链路可达的节点集合称为扩展P空间。P空间或者扩展P空间的节点称为P节点。
Q空间:
以保护链路末端为根节点建立反向SPF树,所有从根节点不经过保护链路可达的节点集合称为Q空间。Q空间的节点称为Q节点。
PQ节点:
PQ节点是指既在(扩展)P空间又在Q空间的节点,PQ节点会作为保护隧道的目的端。
LFA:
LFA(Loop-Free Alternate)算法计算备份链路的基本思路是:以可提供备份链路的邻居为根节点,利用SPF算法计算到达目的节点的最短距离,然后计算出一组开销最小且无环的备份链路。
RLFA:
RLFA(Remote LFA)算法根据保护路径计算PQ节点,并在源节点与PQ节点之间建立隧道形成备份下一跳保护。当保护链路发生故障时,流量自动切换到隧道备份路径,继续转发,从而提高网络可靠性。
TI-LFA:
LFA FRR和Remote LFA对于某些场景中,扩展P空间和Q空间既没有交集,也没有直连的邻居,无法计算出备份路径,不能满足可靠性要求。在这种情况下,实现了TI-LFA。TI-LFA算法根据保护路径计算扩展P空间,Q空间,Post-convergence最短路径树,以及根据不同场景计算Repair List,并从源节点到P节点,再到Q节点建立Segment Routing隧道形成备份下一跳保护。当保护链路发生故障时,流量自动切换到隧道备份路径,继续转发,从而提高网络可靠性。
防微环
无论是正切防微环还是回切防微环,都是针对各个节点IGP路径收敛完成时间不一致的情况下,在源节点先于故障节点收敛时会产生微环的问题。而解决问题的方法是在源节点上延迟IGP路径收敛(部署定时器),同时使用TI-LFA或者显示路径进行数据转发,以避免环路。在IGP路径收敛完成后(定时器超时),切换到IGP路径转发数据。这里IGP路径是否收敛完成,源节点无法获知,而是通过延迟一段时间(部署定时器)收敛的方式等待故障点的收敛,在定时器失效之前始终使用repair list进行数据转发。
正切防微环:
源节点在部署了TI-LFA备份路径的情况下,主路径发生故障时,立即使用TI-LFA备份路径进行流量转发,在IGP备份路径(IGP计算的路径)没有收敛完成之前,不进行TI-LFA备份路径到IGP备份路径的切换,直到IGP备份路径收敛完成后再进行TI-LFA备份路径到IGP备份路径的切换。
回切防微环:
源节点在使用IGP备份路径转发数据时,主用路径故障恢复,源节点通过添加添加端到端路径信息(显示路径),强制使数据包沿主用路径转发,直到主用路径收敛完成后,去掉显示路径信息,按照正常主路径转发。
Netconf 分钟级别,实时性比较差,不能用于隧道托管。PCEP是实时协议,用于隧道托管。
SR policy 包含多条候选路径+优先级(越大越优先),优先级高的为主路径。每个候选路径可以包含多个段列表+权重值,可以通过权重进行负载分担。某条段列表负载的流量:W1/所有段列表权重之和。
推荐静态配置END SID 和 END.X,动态生产的SID如果设备重启,SID会变化,不利于维护。
VXLAN
通过24比特的VNI可以支持多达16M的VXLAN段的网络隔离,对用户进行隔离和标识不再受到限制,可满足海量租户。
除VXLAN网络边缘设备,网络中的其他设备不需要识别虚拟机的MAC地址,减轻了设备的MAC地址学习压力,提升了设备性能。
通过采用MAC in UDP(4789端口)封装来延伸二层网络,实现了物理网络和虚拟网络解耦,租户可以规划自己的虚拟网络,不需要考虑物理网络IP地址和广播域的限制,大大降低了网络管理的难度。
VXLAN可支持VM在POD内、POD之间、虚拟数据中心之间进行迁移。
支持ECMP,充分利用现有网络,中间节点可不支持VXLAN。
VXLAN概念
NVE:网络虚拟边缘节点,实现网络虚拟化功能的网络实体。
VTEP:VXLAN tunnel endpoint
VNI:24bit VXLAN 网络ID,支持16M用户。
BD:桥域 VBDIF:BD域的三层虚拟接口。
VXLAN报文:
8字节(64bit),VXLAN报文封装在UDP报文中,目标端口号4789
VXLAN原理
VXLAN的简化理解,两次虚拟化,第一次是将整改underlay网络抽象成一台大交换机;第二次是利用VNI将这台大交换机虚拟出多个二层广播域。
VXLAN的水平分割:VXLAN通过头段复制列表将广播转换为单播转发。
VXLAN二层子接口封装类型对VLAN的处理:
配置流封装类型为dot1q时,只接收带有指定VLAN Tag的报文。
配置流封装类型为untag时,只接收不带VLAN Tag的报文。
配置流封装类型为default时,允许接口接收所有报文,不区分报文中是否带VLAN Tag。
配置流封装类型为qinq时,收到的报文带有两层及两层以上VLAN Tag,根据报文的前两层VLAN Tag识别是否接收。
VXLAN三层网关部署
集中式网关:对跨子网流量进行集中管理,网关的部署和管理比较简单,但转发路径不是最优,ARP表项存在瓶颈。
分布式网关:转发路径最优,没有ARP表项限制,扩展能力强,组网复杂,需要部署BGP EVPN
FlexE
FlexE包括FlexE Client, FlexE Shim和FlexE Group三个部分。
FlexE Client:对应于外在观察到的用户接口,为64、66 bit的以太网码流,支持n*5G速率。
FlexE主要功能:
通道化功能:将不同的Client的数据放在同一个PHY的不同时隙传输。
端口绑定功能:通过FlexE Shim将多路PHY捆绑,以实现更大容量的端口。
子速率功能:将PHY的一部分时隙分配给Client。
IFIT
传统带外检测:NQA、Y.1731、TWAMP(发送探测报文,非真实业务)
传统带内检测:IPFPM(在优先级字段染色)、IOAM(逐跳增加信息,尾节点集中上报)
IFIT功能:
IFIT提供IP业务流级端到端、逐条sla(包括丢包、时延、抖动、实时流量)测量能力。必须配合时钟部署。
支持的网络:
MPLS/SR/SRV6/L3VPN/L2VPN,目前仅仅支持L3VPN、EVPN V4移动业务场景。
iFIT的统计过程主要涉及三个对象:
目标流、目标流穿越的网络(Transit Network)、统计系统。
目标流根据生成方式的不同可以分为静态检测流和动态检测流两种。静态方式人为指定五元组,动态方式由带有IFIT头的流量触发产生。
IFIT检测模式:
端到端:仅头尾节点感知IFIT报文,中间节点bypass处理。
逐跳:业务路径沿途支持IFIT的节点都感知IFIT报文,中间节点不支持则默认转发。
在实际应用中,一般是E2E IFIT+Trace IFIT组合使用,当E2E IFIT的检测数据达到阈值时会自动触发Trace IFIT。
IFIT报文结构:
For SR/mpls: 使用保留标签12,必须在栈底。
For SRV6 :封装在SRH头中。
Bier和BierV6
传统组播技术的缺陷:
协议复杂,可扩展性差。
可靠性弱、用户体验不佳。
部署运维困难。
Bier使用mpls标签进行封装转发,BierV6使用IPV6的目的选项头(DOH,60)携带Bier头。
SDN及其相关协议
SDN:软件定义网络
转发面与控制面分离,SDN控制器通过openflow控制转发平面进行数据转发。
由于传统网络规模较大,如果直接使用软SDN,全部白盒化,更换所有硬件投入过大,对于提供传统硬件的厂商也非常不友好,所以出现了硬SDN,可以对现有的硬件设备进行改造,实现转控分离,提供灵活的业务编排、应用的快速上线等能力。
硬SDN体系架构分为应用层、控制层、数据转发平面,控制层与应用层通过北向接口通信,主要的协议有restful,控制层与转发平面通过通过南向接口通信,主要协议有netconf、snmp、telemetry、BGP-LS、PCEP。
SNMP:
SNMP 主要用于网络管理,有v1、v2c、v3三个版本,SNMP封装在UDP中,管理站使用162端口,代理使用161端口。
Mib是一个按照层次结构组织的树状结构,每个被管理对象对应树形结构的一个叶子节点,成为一个object,拥有唯一的一个数字标识符(OID)。Mib节点一旦发布就和被定义的对象绑定,不能修改,mib节点不能被删除,只能将状态置为obsolete(废除)状态。
Mib分为公有和私有两种。
Snmp有五种报文:get-request、get-next-request、set-request、get-response、trap
get-request:从代理进程提取一个或多个参数值
get-next-request:从代理进程按照字典序提取一个或多个参数值
set-request:设置代理进程的一个或多个参数值
get-response:返回一个或多个参数值。
上面前三种由管理站发出;第四种由代理发出,作为前三种的响应。
Trap:代理主动发出的报文。
SNMPv2c增加了2种报文:
Get-bulk:相当于执行多次get-next-request操作,实现了网管端对被管理设备的信息群查询。
Inform-request:提供告警的确认机制。设备发送此保文后会等待网管端发送确认报文,如果没有收到,则重传,直到网管端回复确认或重传超时结束。
Netconf:
NETCONF是基于可扩展标记语言XML的网络配置和管理协议,使用简单的基于RPC(Remote Procedure Call)机制实现客户端和服务器之间通信。
NETCONF提供保护锁定机制,防止多用户操作产生冲突。
利用现有的安全协议提供安全保证,并不与具体的安全协议绑定。NETCONF传输层首选推荐SSH协议,XML信息通过SSH协议承载。
扩展性好:不同制造商设备可以定义自己的协议操作
NETCONF协议框架:
NETCONF分为传输层、RPC层、操作层、内容层共四个层次。
YANG是专门为NETCONF协议设计的数据建模语言,数据通过yang模型生成XML文件。
NETCONF Client和Server之间使用RPC机制进行通信。Client必须和Server成功建立一个安全的、面向连接的会话才能进行通信。Client向Server发送一个RPC请求,Server处理完用户请求后,给Client发送一个回应消息。
Client的RPC请求和Server的回应消息全部使用XML编码。
RPC 元素:
<rpc>:请求 <rpc-reply>:应答 <rpc-error>:错误 <ok> :未发生错误
NETCONF报文由三部分组成:Message(消息层)、Operations(操作层)、Content(管理对象层)
BGP-LS:
传统拓扑收集问题:
对上层控制器的计算能力要求较高,且要求控制器也支持IGP协议及其算法。
当涉及到跨IGP域拓扑信息收集时,上层控制器无法看到完整的拓扑信息,无法计算端到端的最优路径。
不同的路由协议分别上送拓扑信息给上层控制器,控制器对拓扑信息的分析处理过程比较复杂。
BGP-LS路由:
携带网络拓扑信息的介质,一共有六种BGP-LS路由,分别用来携带节点、链路、路由前缀信息、IPv6路由前缀信息、SRv6 SID路由信息和TE Policy路由信息。这几种路由相互配合,共同完成拓扑信息的传输。
为了减少与控制器连接的数量,可以选择一台(或几台)设备作为BGP-LS反射器,需要与控制器建立BGP-LS邻居的设备都与反射器建立邻居关系。
PCEP:
PCE是一种基于MPLS-TE开发的一种集中路径计算方式。
PCC为ingress节点,是路径计算的需求端,PCEP运行IGP TE 收集网络拓扑资源,形成TEDB,统一算路。PCC与PCE之间使用PCEP通信,PCEP使用tcp端口4189。
三种PCE模式:
无状态:仅用于TEDB计算LSP路径。
被动有状态:TEDB和LSPDB用于路径计算,路径计算有PCC触发,PCE不会主动更新名下托管的LSP状态和参数。
主动有状态:LSP托管至PCE服务器,PCE除了计算路径以外还会更新名下托管的LSP的状态和参数。
Telemetry:
是一项远程的从物理设备或虚拟设备上高速采集数据的技术。设备通过推模式(Push Mode)周期性的主动向采集器上送设备的接口流量统计、CPU或内存数据等信息,相对传统拉模式(Pull Mode)的一问一答式交互,提供了更实时更高速的数据采集功能。
狭义的Telemetry是一个设备特性,广义的Telemetry是一个闭环的自动化运维系统,由网络设备、采集器、分析器和控制器等部件组成,分为网管侧和设备侧。
静态配置:控制器通过命令行配置支持Telemetry的设备,订阅数据源,完成数据采集。
推送采样数据或自定义事件:网络设备依据控制器的配置要求,将采集完成的数据或自定义事件,上报给采集器进行接收和存储。
读取数据:分析器读取采集器存储的采样数据或自定义事件。
分析数据:分析器分析读取到的采样数据或自定义事件,并将分析结果发给控制器,便于控制器对网络进行配置管理,及时调优网络。
调整网络参数:控制器将网络需要调整的配置下发给网络设备;配置下发生效后,新的采样数据或自定义事件又会上报到采集器,此时Telemetry网管侧可以分析调优后的网络效果是否符合预期,直到调优完成后,整个业务流程形成闭环。
对于Telemetry设备侧:Telemetry=原始数据+数据模型+编码格式+传输协议;
对于Telemetry网管侧:Telemetry=收集系统+存储系统+应用分析系统
原始数据:
Telemetry采样的原始数据可来自网络设备的转发面、控制面和管理面,目前支持采集设备的接口流量统计、CPU或内存数据等信息。
数据模型:
Telemetry基于YANG模型组织采集数据。YANG是一种数据建模语言,用于设计可以作为各种传输协议操作的配置数据模型、状态数据模型、远程调用模型和通知机制等。
编码格式:
支持GPB(Google Protocol Buffer)、JSON(JavaScript Object Notation)编码格式。
传输协议:
支持gRPC协议(google Remote Procedure Call Protocol)、支持UDP协议。
SDN
传统网络面临的问题:
网络太拥塞、设备太复杂、运维太困难、新业务部署太慢、数据中心网络虚拟化是趋势。
传统网络部署:
控制面和数据面在同一个硬件设备上,设备分布式部署,每个设备独立进行计算、配置和管理。
SDN:
是一种新型网络创新架构,将控制面和数据面部署在独立的两套硬件上。
SDN特点:
控制平面和数据平面分离,集中式组网,开放接口
SDN和NFV的本质及区别:
SDN是面向网络的,其本质是把网络软件化,提高网络的可编程能力和易修改性,它没有改变网络的功能,而是重构了网络的架构。
NFV是面向设备的,其本质是把专用硬件设备变成一个通用软件设备,共享硬件基础设施,它没有改变设备的功能,而是改变了设备的形态。
SDN的三层模型:
SDN模型分为协同应用层、控制层、转发层(又称基础架构层)三个层次。
Openflow协议是构建SDN解决方案的基本要素。
SDN的转发层:
由转发器和连接转发器之间的线路构成基础转发网络,转发表项由控制器生产并通过南向接口下发给转发器,转发表项可以是2层或者3层,转发器上报网络资源信息和状态,接收控制器下发的转发信息,按照转发表项转发数据。
OVS是开源的虚拟交换机,部署在虚拟化计算节点,提供VM之间、VM与物理网络之间的数据交换。OVSDB就是负责管理和配置OVS的一个管理协议。
SDN控制层:
控制层是系统的控制中心,负责网络内部交换路径和边界业务路由的生成,并负责处理网络状态变化事件。
SDN协同应用层:
完成用户意图的各种上层应用程序,典型的协同层应用包括:OSS、Openstack等。它和控制层通过北向接口交互,主要有restful
Rest是一种www服务的软件架构风格,并不是一种具体的标准或架构,其宗旨是从资源的角度观察整个网络,分布在各处的资源由URI确定。倾向于用更加简单轻量的方法设计和实现。而基于rest架构的服务称为restful。
SDN接口:
以控制器为视角
北向接口:restful、snmp、restconf。
南向接口:pcep、netconf、snmp、telemetry、BGP、BGP-LS、OVSDB、openflow
SDN标准化组织:
ONF:定义了openflow,谷歌、微软等参与创建。
ITU-T: 定义了SDN环境和相关架构用于在运营商网络上运行。
ETSI:参与NFV标准化,相对独立。
IETF:倾向于网络厂商,关注怎样在现有的设备上运行SDN
Opendaylight:主要是厂商参与,不推广openflow
ONOS:倾向于运营商,主要由各大运营商组成,根据运营商网络特点进行软件架构设计。
SDN-DCN
概念:
DC、vDC、VPC、spine、leaf、fabric、server-leaf、service-leaf、border-leaf、NVE、VTEP
vDC一虚多:一个DC内划分为多个vDC。
多虚一:多个DC通过DCI互联成为一个DC
华为云数据中心网解决方案组成:
云平台、控制器、网络、服务器
单数据中心组网架构:
协同应用层、控制层、fabric网络层、服务器层
组件间的接口:
AC-云平台:restful
AC-VMM:RPC进行虚拟化感知。
AC-软/硬件防火墙:netconf进行配置。
AC-物理交换机的VTEP:netconf、openflow 进行VXLAN配置和流表下发。
AC-vswitch:OVSDB、openflow 进行vswitch的配置和流表下发。
SDN-DCN的Overlay 部分vxlan组网方案(根据软硬件区分):
硬件overlay:vxlan隧道端点全部在硬件交换机上。
软件overlay:vxlan隧道端点全部在软件交换机上(服务器上的EVS即Vswitch)。
混合overlay:接入VM的VTEP部署在EVS上,接入BM的VTEP部署在物理交换机上。
软硬件overlay方案区别:
软件方案:VTEP在虚拟交换机上,TOR交换机不需要虚拟感知,实现简单,但要消耗服务器资源,影响性能,故障定位与流量识别困难。
硬件方案:VTEP在硬件交换机上,故障定位与流量识别容易,高性能,线速转发,但需要TOR交换机具备虚拟感知能力,功能灵活性受厂芯片商限制。
SDN-DCN的Overlay 部分组网方式(根据网关部署情况区分):
集中式overlay组网:三层网关集中在某几台设备上,二层网关分布部署在leaf上
分布式overlay组网:三层网关部署在leaf上。
SDN-DCN的underlay部分组网方案:
整体三层架构:分为leaf、spine、gateway(border-leaf)三层。
整体两层架构:分为leaf、spine(兼做GW)两层。
Leaf节点接入:TOR单机部署、TOR堆叠部署、TOR部署M-LAG、TOR部署SVF。
Leaf节点部署:全解耦、全融合(网关、border-leaf、service-leaf和spine融合)、部分解耦A、部分解耦B。
网关(三层)部署:网关与spine融合部署、网关与spine分离部署。
网关可靠性部署:传统堆叠、多活网关、多组网关
云平台业务模型:
POD(最小交付单元)作为承载业务的基本部署单元。
VPC作为DC资源出租单元,租户以VPC为粒度进行资源租用。VPC不支持跨POD.
VPC组成元素:subnet(IP子网)、network(一个二层网络,可包含一个或多个(配置从地址)subnet)、vfw、vLB
算力网络
算力单位:
ZFLOPS、GFLOPS、TFLOPS、……
算力网络发展驱动因素:
算力供给和需求高速增长、算网融合趋势、东数西算布局
算力网络的目标是实现:
“算力泛在、算网共生、智能编排、一体服务”
算力网络特点:
精准业务调度,可靠性,边云协同、边边协同,边缘计算业务多接入方式协同,流粘性的保持。
移动发展算力网络的先天优势:
网络优势、身份优势、定位优势
算力网络演进路径及特征:
起步阶段(2021-2023年)泛在协同:网随算动、协同编排、协同运营、一站服务
发展阶段(2024-2025)融合统一: 算网融合、智能编排、统一运营、融合服务
跨越阶段一体内生: 算网一体、智慧内生、创新运营、一体服务
算力网络体系架构:
运营服务层:算网运营
编排管理层:算网大脑
算网基础设施层:算网底座
算力网络安全体系:
安全管理(合规):态势感知、审计溯源、零信任管理、可信管理、联邦安全协同
数据安全(资产):数据标记、隐私计算、区块链
算网安全(环境):内生安全、全程可信
算力网络的典型应用场景:
赋能生活:个人生活场景、家庭生活场景
赋能行业:未来生产模式、智慧交通场景、智慧医疗场景
赋能社会:开创社会算力交易新业态
报文长度总结:
报文类型 | 报头长度 | |
IP | 20字节 | |
IPV6 | 40字节 | |
OSPF | 24字节 | |
OSPFv3 | 16字节 | |
以太帧 | 帧头14字节,FCS 4字节 | |
802.1Q | 4字节 | |
vlan | 12bit | |
vxlan | 8字节 | |
VNI | 24bit | |
MPLS头部 | 32bit | |
MPLS标签 | 20bit |
更多阅读:
吉安到承德火车要多久(吉安到承德火车要多久能到)五星三轮汽车公告信息查询(五星牌三轮车价格表)九代思域有哪些通病及缺点东莞810多久一趟(东莞巴士811路)摩托车发动机欧一跟欧二有什么区别保时捷保养包括哪些(保时捷保养费用高吗)冠道哪些颜色是金属漆(冠道哪些颜色是金属漆涂的)云南车牌照有哪些字母(云南车牌照有哪些字母的)佛山到河南新乡坐汽车要多久(佛山到新乡的火车)云浮用什么车考科目三的(云浮市科目三)
猜你喜欢:
奔驰大G与陆巡哪个好(陆巡VS大G)奔驰大g最快能跑多少钱(大g最快能跑多少码)奔驰奥迪宝马哪个贵(奔驰奥迪宝马哪个更贵)奔驰大g提车最少要多久(奔驰大g提车最少要多久能提车)奔驰多媒体旋转按钮怎么取下来(奔驰多媒体旋转按钮怎么取下来图解)奔驰大架子号如何查年份(奔驰车架号出来了 如何查车在哪)奔驰大g最低多少钱一个(奔驰大g最低配多少钱一辆)奔驰大g的钥匙插在哪里(大g奔驰汽车钥匙)奔驰大g最低多少钱一个(奔驰大g要多少元)奔驰头枕如何拆卸(奔驰头枕拆卸视频)
文档下载: 导出为rr怎么更新系统(怎么更新rc版).doc文档
本文来自投稿,不代表本人立场,如若转载,请注明出处:http://fsxxzx.cn/article/58315.html