LISP协议简述

lisp简述

LISP是基于网络映射-封装的协议,其优点在于无需对主机协议栈做任何修改,也不需要对网络中现有的基础设置做大规模改进,只需添加相对较少的具有特殊功能的隧道路由器以实现映射-封装。LISP采取了“Jack Up”的架构,如图1所示,通过在原始的IP网络层下添加路由层(原始的IP网络层标识节点身份信息,添加的路由层标识节点位置信息)实现“身份与位置分离”的思想。LISP的设计旨在提高站点的多宿性,增强ISP多家乡技术。

在LISP中,IP地址的使用与传统的互联网无异。LISP的IP地址被分为两类,一类是终端标识(Endpoint Identifiers, EIDs),另一类则是位置标识(Routing Locators, RLOCs)。

EID用于标识主机身份,其长度为32位(IPv4)或128位(Ipv6),用于填写LISP里层包头的源地址或目的地址。源主机获得目的主机的EID与现有互联网的实现方式无异,比如通过DNS查询或SIP信令交换。源主机所在的站点拥有自己的EID前缀块,当源主机请求EID时,站点通过现有的机制分配EID给源主,EID也可作为源主机的“本地”IP地址。由于EID标识主机身份,EID必须全球唯一且不能用作RLOC。值得一提的是,EID块可以按照层次划分、独立于拓扑或易于映射系统操作的方式分配。另外,EID地址块的分配可以根据本地占地结构,以方便站点内数据包的路由;但站点内的结构对外不可见。EID不是全球可路由地址,其路由范围仅限于本地站点。

RLOC用于标识主机位置,其长度为32位(IPv4)或128位(Ipv6),用于填写LISP外层包头的源地址或目的地址,它是gress Tunnel Router, ETR)的地址,是EID到RLOC的映射结果。RLOC通常是由运营商按照拓扑编址,它也是PA地址,易于聚合,是全球可路由地址。一台ETR上可以分配多个RLOC地址,使得一个EID可以对应多个RLOC,以实现多家乡技术和流量工程技术。

在LISP中,为了实现映射-封装技术,引入了两个新的实体——入口隧道路由器(Ingress Tunnel Router, ITR)和出口隧道路由器(Egress Tunnel Router, ETR)。

ITR是源主机发送数据的默认网关。当源主机需要向站点外的发送数据时,数据将发送至ITR并由ITR进行封装。ITR首先查看源主机所发送数据包的目的EID,并执行EID-RLOC的映射。之后,ITR将所获得的RLOC地址作为外层包头目的地址以及自身的RLOC地址作为外层包头的源地址封装到源主机所发送的数据包上并按照路由表转发出去。简而言之,ITR接收主机发送的数据包并进行封装,并向更广阔的互联网转发。

ETR是LISP数据包外层包头的目的地址所指向的路由器。ETR收到发送给自己的LISP数据包后,将数据包解封装,把外包头剥离,并根据内包头的目的EID转发数据。另外,ETR还负责向映射系统注册本站点内的EID。

LISP的基本规则如下:

  1. 主机发送的数据包,其目的地址只能是EID。主机对EID-RLOC的映射完全透明,并认为以EID作为目的地址可以穿越网络到达对端节点。LISP路由器截获本站点内以EID为目的地址的数据包,封装RLOC地址并将其转发至EID不可路由的核心网,最终到达目的节点,但该操作并不改变现有主机发送数据包的过程。

  2. EID是分配给主机IP地址。

  3. LISP路由器通常只处理RLOC地址。

  4. RLOC地址通常分配给路由器。

  5. 由路由器发起的数据包,其源地址可以是EID也可以是RLOC。当路由器充当主机的时候,其数据包源地址为EID。但此时路由器所使用的EID不可以在作为RLOC使用。EID仅可以在自己所属的站点路由。

  6. EID可以按照层次划分方便管理,同时,也可促进映射系统的可扩展性。

EID的层次划分独立于网络拓扑。

  1. EID也可按照适合本地路由的方式组织。

协议流程

当LISP域内源主机发起通信时,与传统互联网一致,源主机首先查询DNS系统并获得目的主机的EID。源主机将自己的EID作为数据的源地址、目的主机的EID作为目的地址发送数据至ITR。ITR检查EID-RLOC缓存是否存在相关条目,如果存在,ITR直接封装数据包并转发至网络中,外层包头源地址为ITR的RLOC,目的地址为目的主机所对应的ETR的RLOC。数据到达目的主机所属的ETR后,由该ETR对数据包进行解封装,去除外层包头并根据目的主机的EID转发。ITR如果没有相应的缓存条目,ITR向映射系统发送Map Request消息,查询相应映射信息。Map Request消息被映射系统转发至目的主机所属的ETR上,并由该ETR通过发送Map Reply消息回复ITR目的主机EID所对应的RLOC。当ITR收到Map Reply后,缓存目的主机EID-RLOC的映射条目。此后,ITR/ETR所发送的数据包不再经过映射系统,直接通过核心网传送。另外,ETR也可根据Map Request信息缓存源主机的EID-RLOC映射条目。示意图如下:

参考文献

Was this helpful?

0 / 0

发表回复 0