基于LISP协议的网络构架的研究
2013-01-16易著梁
易著梁
(南宁职业技术学院信息工程学院 广西南宁 530008)
0 引言
随着网络技术的发展,下一代网络(NGN)[1]在安全性、移动性、多宿性等方面提出了更高的要求。在传统的TCP/IP协议中,一方面,IP地址作为通信终端的身份标识用于建立通信连接;同时,IP地址又表示终端的位置用于数据包寻址和路由,给网络的进一步发展带来了一些不利因素:首先在安全性方面,现有的IP地址既作为位置标识又作为地址标识,因而非法用户很容易得到用户的IP地址,便可以通过一定的方式取得网络的使用权,并由此带来一系列的安全问题;其次,很多网络设备支持多宿主问题,然而身份标识的不唯一制约了这种发展;再次,随着社会的发展,用户对移动性的需求越来越强烈,而传统的IP地址的特性限制了终端的移动性。因此,将IP地址身份和位置双重属性进行剥离是下一代网络发展的一个重要方向。
1 现有的身份位置分离技术分析比较
国内外很多学者对主机位置分离技术研究卓有成效,其中最为有名的就是HIP协议、shim6协议和LISP协议。下面对这几种技术进行分析和比较。
1.1 HIP 协议
HIP协议的结构如图1所示,该协议在原有的TCP/IP协议的基础上引入了新的层次—HIP层,HIP协议定义了一个新的名字空间:Host Identity(HI),并使用HI/HIT用于标识主机的唯一性,在HIP协议架构上建立的通信连接可以在终端IP地址发生变更时保持通信连续而不被中断[2]。
图1 引入HIP协议前后协议栈对比
1.2 Shim6 协议
Shim6协议是一种针对IPv6网络解决多宿问题的协议,由IETF于2005年提出。Shim6协议的主要思想是将传统IP地址既表示身份又表示位置的这两种功能分离,Shim6协议继续沿用IP地址,但赋予其新的功能:上层身份标识ULID(Upper-layer Identifiers)。对于Shim6终端,其IP地址分为两类:一类是ULID,用于标识其终端身份,另一类为Locator,用于标识终端在网络中的位置。Shim6终端在与通信对端建立初始连接时,从其IP地址列表中选取一个作为上层身份标识ULID。在通信过程中Shim6终端的IP地址可能发生改变或失效,但是上层协议所使用的身份标识ULID保持不变。Shim6的体系结构如图2所示。
图2 Shim6协议体系结构
1.3 LISP 协议
LISP(Locator/ID Separation Protocol)协议是由思科公司2007年提出的一种基于网络IP地址位置属性和身份属性分离协议。该协议保持了现有终端的网络协议架构不变,而只改变了终端第一跳接入路由器的工作方式。LISP协议将现有的IP地址拆分成终端身份标识(Endpoint ID,EID)和路由位置标识(Routing Locator,RLOC)。所有的终端使用EID来访问其他终端,EID可以根据EID-to-RLOC映射服务器的部署需求进行合理分配,而路由器则通过RLOC实现数据包在网络中的转发。LISP协议的结构如图3所示。
图3 LISP协议体系结构
1.4 三种协议的比较分析
下一代网络应该满足四个基本条件:①安全性;②部署成本;③兼容性;④移动性。对于以上四个要求,HIP协议、Shim6协议和LISP协议都有各自的优缺点,如表1所示,下面就几个方面进行比较:
表1 三种协议的比较
1)安全性:HIP协议将IPsec数据传输机制结合到协议本身,在通信中采用了 Diffie-Hellman[3]密钥机制及签名认证机制实现四次握手,具有较高的安全性;Shim6协议也采用抗DoS的四次握手,并通过CGA/HBA验证和签名认证机制进行通信,也具有一定的安全性;LISP协议不涉及安全机制,但由于未改变终端的状态,所以基于LISP协议构建的网络中可使用现有的安全机制,如IPsec、PPTP等。
2)部署成本:HIP协议和Shim6协议需要在所有终端对TCP/IP协议进行修改,部署成本较大;而LISP协议只在骨干网络边缘实现了分离,主要对边缘路由器的协议栈进行修改,而不改变终端协议状态。所以相比较而言,LISP协议对现有网络所做改动不大,因此部署成本相对较低。
3)兼容性:HIP协议完全改变了终端的TCP/IP协议栈,所以它不能与非HIP协议的终端进行通信,兼容性存在着很大问题;Shim6协议能兼容现有的IPv6终端,并且仍然使用现有IP地址来标识终端身份,但不支持IPv4;LISP协议只需要改变边缘接入路由器的工作方式,可以与边界路由器很好地协同工作,对现有的终端具有很强的兼容性。
4)移动性:HIP协议栈是在终端实现的,所以很好地支持了移动性,而Shim6协议和LISP协议并不支持移动性。
2 基于LISP协议的网络构架
2.1 基于LISP协议的网络结构
LISP协议实现了IP地址身份和位置属性的完全分离,同时全网终端不需修改,兼容性更好,可方便实现同已有网络实现互联互通。EID和RLOC的引入将骨干网和接入网分离开,更好地保护了骨干网的安全,方便运营商对网络的管理和控制。
如图4所示,新型网络在逻辑上将整个网络划分为骨干网和接入网。骨干网由现有骨干网组成,主要负责网络的路由和数据的转发;接入网由边缘路由器(ASR)和各接入用户终端组成,主要完成身份和位置的分离和数据的拆解包工作。
图4 基于LISP协议网络架构
其主要网络构成如下:
1)骨干网:该网络保持先有骨干网络结构不变,主要由核心路由器(CR)、通信设备和通信干线组成,骨干网主要是负责 IP路由和数据包的转发[4]。
2)接入网边缘路由器(ASR):位于骨干网边缘,支持移动、固定多种接入方式的接入。ASR上部署了LISP协议,对数据包进行封装和拆包,并把相应EID和RLOC信息反映到映射服务器中。
3)映射服务器:部署于接入网,主要用于存储EID—RLOC映射表,是网络中存储用户身份标识EID和位置标识RLOC之间映射关系的数据库。具有存储、搜索EID和RLOC的功能,其数据结构与功能与DNS服务器类似。
4)认证管理服务器:主要是对用户身份、权限等进行合法性验证,实现对网络的可管可控[5]。
2.2 基于LISP协议网络的工作模式
LISP协议网络在骨干网中采用了隧道技术,在ASR中对发往目的地的数据包进行二次封装。这样EID(IP地址)只作为用户的身份标识而不在网络中路由,而RLOC地址作为主机的位置标识在核心网络中进行路由,这样在ASR中,进行二次封装的数据包里进行数据路由目的地址是对端的RLOC地址。所有终端都需要通过ASR接入网络中,ASR首先会对终端发起合法性验证,检查通过后将终端EID保存在ASR本地接入终端列表中,然后将终端EID和ASR的RLOC映射关系通知映射服务器。这样映射服务器中保存了全网接入终端EID和RLOC的实时映射关系。当数据包到达ASR后,映射服务器和ASR相互配合,完成源目址 EID和RLOC的相互替换和转发;接收端ASR接收到数据包后,对数据进行解压将数据包中的目的EID取出,再与本端映射服务器对照,根据映射表确定数据是否丢弃或者转发。
基于LISP的网络将骨干网和接入网严格分离开来,接入网中所有终端都使用网络运营商分配的EID来标识身份,骨干网中所有设备都使用RLOC进行数据转发,RLOC严格按照网络拓扑结构进行分配,ASR位于骨干网和接入网的连接处,是实现LISP网络的关键设备。
LISP由于使用RLOC地址进行路由,把接入网和骨干网分离,可以很大程度上提高用户数据的安全性,同时也提高了IP地址的利用率,LISP协议适用于大型网络。
3 结束语
从目前已有的研究成果看,LISP协议能够实现主机身份和位置的分离,同时具有易部署性和兼容性,有很大的发展前景,但也存在很多问题,如“地址—身份”映射机制随着网络用户的增多,会加重边缘路由器的负重,对数据包的二次封装也会产生网络的延时问题,对移动性的支持也在逐步探索中。目前,LISP只是下一代网络构建的一种建议,还处于开发阶段,更好地投入实际还需更多的探索。
[1]万晓榆.下一代网络的业务生成技术[M].北京:邮电大学出版社,2005:1-8.
[2]W.Richard Stevens.TCP/IP详解[M].范建华,等,译.北京:机械工业出版社,1999:12-15.
[3]Paul T.Ammann.管理动态 IP网络[M].徐六通,等,译.北京:清华大学出版社,2001:3-7.
[4]谢希仁.计算机网络[M].北京:电子工业出版社,2004:21-23.
[5]尤松,常虹.计算机云备份技术的特征及可用性评估模型的建立[J].常州信息职业技术学院学报,2012(4):31-33.