华为Datacom认证已于4月18日正式发布,大家都知道,全新的Datacom认证在传统路由交换技术基础之上,融合了华为数通网络解决方案、网络新技术。下面我们就通过一篇文章,来看Datacom认证中的新知识点,从MPLS到SR的演进。
在“云网一体化”的背景下,骨干网以及数据中心网络等场景要求网络更加灵活、可靠、智能。数据中心组网从“两地三中心”到“分布式多活”的架构,需要对各类业务流量进行实时的调度、优化,而传统IP转发存在诸多缺陷,不能满足上述需求。MPLS技术的出现一定程度上解决了IP转发的缺陷,但是在实现流量工程等方面仍然显得“力不从心”,而SR技术的横空出世可以说是迎合SDN时代的革新。
○传统IP路由转发存在什么缺陷?
我们可以发现当一个数据包到达路由器的时候,路由器根据目的地址查询IP路由表进行数据转发,这种转发方式需要每台路由器通过最长掩码匹配原则进行逐跳转发。早期路由器硬件性能有限,导致这种查表方式的转发效率相对低下;而现在的路由器因为专用芯片(ASIC、NP)可以实现硬件转发,转发效率得到大幅提升。
但是IP路由转发采用无连接的转发方式却带来了新的问题:
1、配置BGP等协议跨设备传递路由,可能出现路由黑洞;
2、无法提供较好的端到端QoS保证或者灵活的流量工程。
○何为路由黑洞?
多数据中心、企业分支互联等大规模组网场景,BGP边界网关协议必不可少,而传统IP转发的方式会导致BGP路由黑洞。
路由传递过程:AS100中的设备R1将Net1的路由借助BGP(路由搬运工)传递给R2,R2继续借助BGP “隔空传物”将路由直接传递给R4,最终R4传递给AS300中的R5。
数据转发过程:AS300中存在业务需要访问Net1,于是R5将数据报文发送给R4,R4需要将数据报文发给R2,但是真实转发路径需要发送给R3,还记得上文提到的IP路由转发方式吗?R3因为没有Net1对应的路由,直接丢弃报文,路由黑洞就产生了。
○MPLS多协议标签交换如何解决上述问题?
首先Ingress入口设备RTA上存在去往4.4.4.4的LSP隧道,则在原始数据包中PUSH压入1027标签(标签位于二层和三层头部之间),进入到对应的LSP隧道;
然后RTB、RTC作为Transit传输节点直接执行相应的SWAP交换动作进行标签转发;
最后RTD作为Egress出口设备执行标签POP弹出动作,继而查询IP路由表进行正确的数据转发。
○假设上述路由黑洞场景中,R4上存在去往R2的LSP隧道,直接为数据报文封装相应的标签,而沿途设备直接通过MPLS标签转发,不再查询IP路由表,问题是不是就迎刃而解啦?
MPLS真香,Segment
Routing又是啥?
如果部署MPLS,我们需要传统的IGP内部网关协议实现路由可达,再通过LDP标签协议进行标签的分配和通告,这无疑增加了控制层面部署的复杂性,而且IGP和LDP这哥俩哪一个发脾气,都很折腾人。
所以Segment Routing简称SR技术直接对现有IGP进行扩展,使得IS-IS、OSPF等协议也具备了标签分发能力,从而简化控制层面,凡事IGP说了算,也就不担心LDP闹情绪了。
SR技术的数据层面仍然可以使用MPLS进行标签交换,只不过这里的标签我们更多的称之为Segment-ID。SR仍然利用IGP计算最短路径,通过IGP分配并通告每台设备的前缀或者节点SID,最后网络设备根据前缀或节点SID将数据报文转发到正确的设备,如下图R1根据节点SID和前缀SID将数据按照最短路径转发给R4,这种转发方式我们也称为SR-BE(Best-Effort)。
也许你有点疑惑,这不是仍然采用了MPLS的转发方式吗?难道全新的SR技术仅仅就为了简化控制层面,不给LDP面子?
如何利用SR技术来实现流量工程?
上面提到无连接的IP转发方式无法灵活的实现TE (Traffic Engineering)流量工程,而通过MPLS技术可以更好的部署流量工程。我们可以通过建立基于一定约束条件(带宽、路径)的LSP隧道,实现流量的引导、带宽预留,从而达到流量工程的目的。
传统的MPLS TE技术采用RSVP资源预留协议,但如果采用RSVP-TE部署,流量工程会带来新的问题:
1、引入控制层面的RSVP-TE协议,增加部署和维护的复杂度;
2、RSVP-TE需要针对不同业务创建多条LSP ,配置量较大;
3、所有网络设备都需要维护隧道状态和转发表项,扩展性较差。
设想多个数据中心之间的业务需要进行流量转发的显式路径规划,我们得在沿途所有设备配置大量的命令,“我太难了”……
而SR技术作为源路由技术,可以方便我们更好的通过Segment-list(也就是MPLS标签栈)实现流量引导。
刚才我们提到在SR技术中,标签也称之为Segment-ID(SID),这个SID又分为如下几种:
1、前缀SID:标识某个目的地址前缀;
2、节点SID:特殊的前缀SID,通常是环回接口的/32 IP地址,标识某台设备;
3、邻接SID:标识设备的邻接关系,也就是接口或链路。
而通过在源端设备上压入相应的Segment-list(标签栈),我们可实现流量通过特定的路径、特定的设备进行转发。数据转发的过程解析如下:
1、R1为数据包压入了标签栈;
2、R1通过查询栈顶标签(节点SID:101)将报文发送给相应的节点R3;
3、R3发现栈顶标签为自身节点SID则弹出标签,继续查询并弹出相应标签(邻接SID:1034)将报文发送给R4;
4、R4、R5则根据标签(前缀SID:100)将数据转发至R6。
SR-TE的隧道转发路径,可以通过源端设备的标签栈来引导 ,更加灵活、智能,而且工作量大大降低。
想了解更多DATACOM认证的信息,推荐您访问
腾科教育