前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >PCEP导读

PCEP导读

原创
作者头像
DifficultWork
修改2019-05-07 09:53:38
8K1
修改2019-05-07 09:53:38
举报
文章被收录于专栏:阶梯计划阶梯计划

PCEP是什么

PCEP的全称是Path Computation Element Communication Protocol,直译过来就是路径计算单元通信协议。简单概括就是一个通信协议,基于TCP的应用层协议,具体用来干什么,会在下面逐步介绍。

PCEP的发展曲线

PCEP最初是想将路由器上的CSPF功能抽取出来,实现一个集中算路的能力,最初的时候是不温不火的;后面随着SDN大热,PCEP由于具备下发路径的能力,就被人拿出来说这不就是SDN嘛,PCEP红红火火了两年;随着SDN的降温,近几年PCEP又处于不温不火的状态了。

PCEP在发展过程中有几个关键的变更点:

  • 最初的状态是Stateless PCE
  • 之后演进为Stateful PCE,其中Stateful PCE又分为Passive Stateful PCE和Active Stateful PCE
  • 如今又进化为PCE-Initiated 下面会分别介绍这几个关键的特性。

PCEP的诞生

最初PCEP的工作组是为了实现RSVP-TE的路径计算和路径建立功能的分离,之前的RSVP-TE的路径计算都在路由器上,是一个分布式路径计算的系统;考虑到在网络中增加一个路径计算的服务器节点,为所有路由器上的RSVP-TE进行路径计算,从而可以做到集中算路,这样就要求路由器和算路服务器之间通信有一个协议,于是PCEP应运而生。

PCEP通信架构示意
PCEP通信架构示意

如上图是PCEP通信架构示意,其中PCE(Path Computation Element)是算路服务器,PCC(Path Computation Client)是算路请求客户端,路径计算通过PCEP协议在PCE和PCC之间完成,而路径建立是由路由器之间通过RSVP信令协议完成,这也是一个转控分离的原始形态。详细内容请参考标准A Path Computation Element (PCE)-Based Architecture

Stateless PCE

最初的PCE相当于一个集中的CSPF(Constrained Shortest Path First)算路能力,这里之所以称为无状态是相对于LSP的,是指PCE并不记录每条LSP的路径和状态,PCE每次收到一条LSP的路径计算请求,会根据当前网络资源状态进行计算,计算完成后会将结果返回给请求者,不会记录和LSP相关的任何信息。

标准Path Computation Element (PCE) Communication Protocol是PCEP协议的基础,既定义了基础的PCEP消息,也定义了Stateless PCE。

Stateful PCE

Stateful是相对Stateless的。所谓有状态,顾名思义是PCE保存了LSP的路径和状态信息,因此从PCE上即可获取网络中LSP的所有信息。标准PCEP Extensions for Stateful PCE在之前的协议上进行了扩展,定义了Stateful PCE和相关消息。

在标准中又定义了两种不同的模式:Passive Stateful PCE和Active Stateful PCE,这里的被动和主动是区分PCE在网络中承担了不同的作用:

Passive Stateful PCE

Passive是指LSP的控制者是属于PCC路由器的,PCE只提供路径计算的服务,每次算路都是由PCC发起,PCE虽然可以看到LSP的路径和状态,但无法主动变更LSP的路径和状态:

Passive Stateful PCE请求/应答示意
Passive Stateful PCE请求/应答示意

Actice Stateful PCE

与Passive Stateful PCE相反,在Active Stateful PCE中,PCC将LSP的控制权完全上交给PCE,什么时候发起算路,以及什么时候出发LSP的路径和状态变更取决于PCE,从这里可以看出,Active Stateful PCE具备更强的控制器能力,与SDN的概念更加贴合了:

Active Stateful PCE交互示意
Active Stateful PCE交互示意

PCE-Initiated

在聊这个概念之前,先聊一下RSVP-TE LSP是怎么生成的,所有的设备厂商都一样,在设备上配置一条RSVP-TE Tunnel后就会生成相应的LSP信息,所以可以认为之前的RSVP-TE LSP都是配置生成的。因此PCE-Initiated提出了一种PCE-Initiated LSP,即不通过配置下发,而通过一个PCEP的消息创建RSVP-TE LSP,相关标准参考PCEP Extensions for PCE-Initiated LSP Setup in a Stateful PCE Model

PCE-Initiated LSP生命周期
PCE-Initiated LSP生命周期

PCEP其他扩展

Segment Routing扩展

支持SR-TE LSP,草案PCEP Extensions for Segment Routing

其他还有一些基于PCEP for SR的扩展,如绑定标签(Binding SID)或者路径标签(Path SID),感兴趣者可以自己研究一下。

保护路径扩展

支持LSP关联组,草案PCEP Extensions for Establishing Relationships Between Sets of LSPs

支持LSP保护关系,主要用于hot-standby LSP,草案PCEP Extensions for Associating Working and Protection LSPs with Stateful PCE

相对于保护关联组,还有基于正反向LSP关联组的扩展,感兴趣者也可以自己研究。

PCEP的应用场景和前景

以下仅为个人看法:

PCEP的优点是相对于网络配置协议(Netconf)而言的,具备设备形态无关性、高性能的特点。但是由于该协议是基于RSVP-TE LSP诞生的,所以带着一定的局限性:作为一个异步有状态协议,使整个系统变得更下复杂,从实际的实现上也可以看出PCEP在多厂家设备间的互通性是非常差的。因此,PCEP适用于单厂商设备的同构网络。另外,PCEP这种将控制器作为服务端的通信架构不太符合SDN的理念,上层控制器如果想做负载分担或者异地保护,还需要一个单独的南向反向代理服务,在面对大规模网络时压力会很大。

对于PCEP的前景是不太看好的,因为有更多的无状态协议可以替代它,如BGP、gRPC等等。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • PCEP是什么
  • PCEP的发展曲线
    • PCEP的诞生
      • Stateless PCE
        • Stateful PCE
          • Passive Stateful PCE
          • Actice Stateful PCE
        • PCE-Initiated
        • PCEP其他扩展
          • Segment Routing扩展
            • 保护路径扩展
            • PCEP的应用场景和前景
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档