专利名称:一种基于ipv6地址的主机身份标识与位置标识分离的方法
技术领域:
本发明涉及网络通信技术领域,尤其涉及一种基于IPV6地址的主机身份标识与位置 标识分离的方法,该方法可用于主机系统协议栈的开发等技术领域。
背景技术:
随着科学技术的不断发展,各种移动网络终端越来越普及,网络接入点的移动性要求 不断提高,但是当前的TCP/IP网络体系结构当初是针对固定网络设计的,因此不能很好的 支持网络移动性,而要解决这一问题的根源就在于如何解决IP语义过载问题。所谓的IP语义过载是指IP地址在语义上具有双重含义,既代表了网络节点的拓 扑位置,又是节点的标识。由于TCP/IP在会话中过早绑定了 IP地址(位置),在很大程度 上制约了网络的移动性。TCP/IP协议的传输连接基于IP地址,当一个移动节点的IP发 生改变时,由于其原有的通信服务仍然绑定在旧的IP之上,将导致节点的通信服务中断。 在移动环境下,代表网络节点位置的IP地址是变化的,网络无法维持移动节点之间的会 话。因此,为了支持移动通信,通信会话应当基于固定的网络标识。IP地址语义过载则 限制了移动条件下的资源访问。目前,身份标识和位置标识分离协议主要有两大类,第一类是在主机端实现 了身份标识与位置标识的分离,基于主机的解决方案采用了“地址重写(Addressing Rewriting)”的处理方式,增加主机可见的新名字空间,在主机协议栈网络层之上增加了 新的端到端命名层,主机完成上层使用的Identity与下层的Locator之间的映射转换。 基于主机的解决方案需要对主机的应用层和传输层进行修改,典型的协议有HIP和》 πι6 ; 另一类是在路由器端实现了标识分离的基于网络的解决方案,基于网络的解决方案采用 了 “映射封装(Map-and-Encapsulate)”的处理方式,保持主机协议栈及上层应用不变,主 机可以继续使用原有的名字空间。边缘由器通过映射服务完成节点的identifier空间到 locator空间的转换,典型的协议是LISP。I )主机标识协议(Host Identity Protocol, HIP)引入一个新的名字空间主机 身份(Host Identity, HI),通过在网络层和传输层之间加入一层主机标识层而实现了将网 络层的位置标识符与上层的主机标识符分离。终端使用非对称密钥来标识,HI是非对称密 钥的公钥部分,私钥由Diffie-Hellman密钥交换机制产生。HIP用HI作为传输层标识符 (Transport Layer Identifiers, TLIs), HIT (Host Identity Tag)与 LSI (Local Scope Identifier)分别是HI的1 位与32位长的哈希值,分别使用在IPV6与IPV4网络中。同 时新的名字空间使得主机能够穿过NAT与使用私人地址的通信对端进行联系。II ) LISP协议是一种基于网络的位置标识和身份标识分离协议。它保持现有终 端主机的网络协议架构不变,只改变了终端主机接入路由器的工作方式。LISP协议将现 有的IP地址拆分成身份标识EID和路由标识RL0C。EID是一个32位(IPv4)或者1 位 (IPv6)的二进制数,用于标识终端主机的身份。终端主机通过EID来访问对端节点。终端主机可以通过查询DNS获得对端主机的EID。而RLOC是路由器的IPv4或者IPv6地址,用 于在路由系统进行数据包的转发。III ) Shim6协议通过将终端主机的网络层分为IP路由子层和IP身份子层,从 而实现了标识的分离,其中,Locator和Identifier均使用IPv6地址空间。Shim6协议支 持终端主机的多宿及地址对选择功能,Shim6为多宿主的终端主机提供了多个IPv6地址构 成Locator集合,并从中挑出一个作为ULID (Up Layer ID)。Locator是终端主机接口用 于路由的IPv6地址,ULID是上层会话使用的介于网络层和传输层之间,在传输连接中使用 的固定标识。上层应用使用原有的IPv6地址作为ULID,并由主机的SHIM6层根据链路和负 载情况从Locator集合中确定特定的Locator,以选择提供者和路径。上述三种方案,LISP为基于网络的解决方案,HIP、SHIM6为基于主机的解决方案。 基于主机的解决方案在主机协议栈完成映射和报文处理,优点在于核心路由的扩展性较 好,支持多宿主和灵活的流量工程,缺点是需要更新主机协议栈和上层应用,一些方案仅支 持IPv6。基于网络的解决方案在网络边缘设备上完成映射和报文处理,可以做到对主机透 明。基于网络的解决方案除了具有基于主机的解决方案的优点之外,还提高了地址空间的 利用率,避免了大规模主机更新的困境,但需要更新网络设备,并且为了在不同地址空间之 间正常路由和转发报文,需要对原始报文进行处理。“地址重写”机制实现简单,但存在地 址重写的开销,仅限于IPv6网络和应用,在实际部署上存在难度。“映射+封装”机制根据 获得的映射信息为原始报文封装一个包含位置信息的新报文头,避免了对边缘主机和核心 路由系统的修改,并能同时支持IPv4/IPv6,但需要考虑构建和维持GRE层叠网所带来的开 销。此外,报文封装增大了原始报文尺寸,不利于报文分片。在现有的身份标识与位置标识分离协议中,HIP协议实现了标识的完全分离,对 移动性、多宿性、以及安全性都有很好地支持,但不能兼容现有的协议。LISP协议将路由表 DFZ区域的规模减小了一个数量级,且由于LISP协议不需要修改终端主机,因而部署量较 小,但它与HIP —样,也存在兼容性问题。相对来说,Shim6协议可以很好的兼容遗留IPv6 主机。但Siime协议未能实现标识的完全分离,且存在不支持移动性等问题。
发明内容
本发明的目的在于解决上述问题,提出一种基于IPV6地址的主机身份标识与位置标 识分离的方法,其方法简便易行,兼容性好,可较好的支持网络移动性。为实现上述目的,本发明采用如下技术方案
一种基于IPV6地址的主机身份标识与位置标识分离的方法,在主机端,在TCP/IP体系 结构中的网络层上加入主机身份标识HID,该标识采用IPV6地址的形式,其组成形式为前 缀“0000011+域标识+单机标识”,拥有该前缀所表示的地址属于IPV6未分配使用的地 址,域标识与单机标识可以分别采用40位和81位二进制码表示;
在网络上与DNS服务器并列的位置部署映射服务器,实现主机身份标识HID与位置标 识的映射管理,映射服务器包括标识管理域服务器IDS与身份-位置映射服务器IPS ;
在主机端进行地址对比,用以区分是否部署该方法所提出的协议,从而决定主机间的 通信方式。当主机初次加入网络时,主机从标识管理域服务器IDS获得域标识,单机标识按 照标识管理域服务器IDS的要求随机获得。使用本方法部署的主机向DNS服务器注册时,使用主机身份标识进行注册。所述标识管理域服务器IDS根据管理域内主机接入时间及位置参数为主机分配 单机标识。所述在主机端网络层中,主机身份标识HID被默认封装在IPV6包的扩展包头位置。当主机初次加入网络获得主机身份标识HID后,需进行主机身份标识HID到IP地 址的映射以得到主机身份标识HID所对的IP地址。当形成主机身份标识HID到IP地址的映射后,在身份-位置映射服务器IPS上实 现主机身份标识HID到IP地址的映射管理。通过架设标识管理域服务器IDS实现主机身份标识HID到身份-位置映射服务器 IPS的映射管理。所述地址对比过程为,主机端若检测到DNS服务器返回的地址是以0000011为前 缀,则向标识管理域服务器IDS请求对方主机所属的身份-位置映射服务器IPS,并由身 份-位置映射服务器IPS获得通信用IP地址。本发明的有益效果是
1、实现身份标识和位置标识的完全分离。即主机标识只用来标识身份而不用来路由寻 址;IP地址只用来标识位置、路由寻址,而和主机的身份无关。2、可以兼容IPv6网络,可以和没有部署该协议的主机进行通信,从而可以实现逐 步部署。即未部署本发明所述协议的的IPv6主机能够在不需要代理,不需要修改协议栈的 情况下与部署本发明所述协议的主机进行通信,使得运营商能对本发明所述协议进行逐步
部署ο3、支持在主机的实时移动切换。即在主机移动时,如果有另一台主机正在与它进 行通信,则此移动机制可以保证通信的连续性。同时可以保证其他主机能够访问到该移动 后的主机。并且由于标识分离协议的固有特点,移动主机发生IP地址切换时,其TCP层可 以仍然保持连接而不被中断。4、尽可能少的减少对当前网络结构的改变;本方法在主机中引入主机身份标识字 段,在外围路由器增加了封装转发功能,并没有改变当前网络结构。在尽可能少的修改当前网络结构、使用尽可能少的设备、尽可能简单的流程、尽可 能少的时延的基础上实现身份标识与位置标识的彻底分离。
图1为本发明主机协议栈结构图; 图2为本发明的通信拓扑图。
具体实施例方式下面结合附图与实施例对本发明做进一步说明。本发明通过在主机协议栈的网络层上加入IPv6地址格式的主机身份标识HID,从 而将传输层的身份标识与网络层的位置标识分离,在外围路由器实现主机标识与位置标识 的映射封装,由于主机标识格式与IPV6地址格式相同,所以部署了新标识分离协议的主机 同样能与未部署新标识分离协议的主机进行通信。
1、在网络层封装主机身份标识
本发明通过在主机协议栈的网络层中加入主机身份标识来分离解除传输层与网络层 的耦合,协议栈结构如图1所示。所使用的主机身份标识HID ( Host Identifier )同IPv6地址一样,主机身份标 识HID是一个1 位的二进制数,但不用来进行路由。位于传输层(包括传输层)以上的协 议栈通过主机身份标识HID来访问对端主机,即传输服务访问点(TSAP)采用(HID,本地端 口)对的形式。网络层得到传输层传来的数据包,打包后可以在扩展报头中标记主机身份 标识,并且进行HID-IP映射,以得到主机身份标识HID所对的IP地址。主机使用本方法进 行通信时仍然使用IP地址作为网络地址标识,因此网络层及其以下各层的通信机制不需 要作任何变化。HID的分配与运营商无关,它在主机第一次接入网络时进行,之后该主机就 永久使用此HID作为主机身份标识。主机身份标识HID的名字空间的前缀为0000011,此 前缀目前为IPv6地址中的未分配段,因而目前不能在网络上进行路由,从而可以用来区分 主机身份标识HID与普通IPV6地址。并且,由于主机身份标识HID的格式与IPV6地址的 格式相同,因此无需对DNS服务器进行修改,便可以得到域名与主机身份标识HID的映射服 务。同时由于和普通IPV6地址相同,因此可以更方便的与未使用本方法部署协议的主机进 行通信,增强了本方法的兼容性。引入的主机身份标识HID在分配到主机时需要绑定主机身份标识HID与标识管理 域服务器IDS地址之间的映射关系,这一绑定需要储存在主机的主机身份标识HID模块。2、引入地址对比机制
主机要与通信对端CN(Corresponding Node)进行通信时一般获得了通信对端的域名, 主机凭借通信对端的域名向DNS服务器查询域名对应的IP地址,部署地址比对机制的主机 可以根据DNS服务器返回的通信对端的IP地址判断通信对端是否使用本方法部署协议。1)如果DNS服务器返回的通信对端的IP地址的前缀为0000011,则表明通信对端 使用本方法部署通信协议,该IP地址为通信对端的主机身份标识HID,需要向身份-位置映 射服务器IPS进一步查询以获得通信用IP地址;
2)如果DNS服务器返回的通信对端的IP地址为正常的IP地址,则表明通信对端未使 用本方法部署通信协议,可以直接与之通信。3、部署映射服务器
主机身份标识与位置标识的映射关系可以在DNS服务器上实现,但是由于DNS服务器 更新缓慢,因而不适合用来进行实时查询。为了支持主机身份标识与位置标识映射关系的 快速更新,本发明引入了服务器实现主机身份标识HID到位置标识IP的映射。在局域网中,如果只部署一个映射服务器,实现主机身份标识HID到IP的映射服 务,则使得映射服务器同DNS服务器一样会具有更新时延大、更新频繁等缺点,因此需要部 署多个主机身份标识HID到IP的身份-位置映射服务器IPS。由于管理范围变小,管理细 化,所有的身份-位置映射服务器IPS都可以实时更新,因此需要采用标识管理域服务器 IDS统一管理。标识管理域服务器IDS维护了主机与局域网内各个身份-位置映射服务器IPS之 间的映射关系。标识管理域服务器IDS记录终端主机属于哪个身份-位置映射服务器IPS 所管辖,即保存了主机身份标识HID及其所归属身份-位置映射服务器IPS的IP地址的对应关系。由于主机接入网络后,其所属的身份-位置映射服务器IPS —般不会改变,因而标 识管理域服务器IDS很少进行更新,除非有新部署的主机接入网络。每一台终端主机都归属于一个身份-位置映射服务器IPS。身份-位置映射服务 器IPS存放了其管辖小区内所有主机身份标识HID和IP的对应关系。当主机初次接入网 络或者发生IP地址更改后都会及时向其归属的身份-位置映射服务器IPS进行注册或更 新,使其保存有自己最新状态下的主机身份标识HID和IP地址的映射关系。局域网内多个 身份-位置映射服务器IPS的部署正是为了适应IP地址的快速更新,使身份-位置映射服 务器IPS始终保持主机身份标识HID到IP映射关系的最新状态,因此该部署方法可以实现 移动过程中通信的连续性以及主机移动后的可访问性。标识管理域服务器IDS与DNS服务器类似其内容应保持全球同步,但在主机很少 跨域移动的情况下,标识管理域服务器IDS不必随时保持同步,只要及时更新域内主机身 份标识HID到身份-位置映射服务器IPS映射关系,便可使主机顺利访问身份-位置映射 服务器IPS从而获得主机身份标识HID与IP地址的映射。这两种服务器的部署密度取决于所在网络中的部署的主机数,以及两种服务器中 映射记录更新的频繁程度。3、通信过程
通信拓扑结构如图2所示。主机A欲与主机B进行通信,通信过程如下
1)主机A获得主机B的域名;
2)主机A使用主机B的域名向DNS服务器进行查询;
3)DNS服务器向主机A发送包含主机B的主机身份标识HID的查询结果;
4)主机A启用地址比对机制,判别DNS服务器返回的主机B的主机身份标识HID的前 缀是否为0000011。若是,则主机A需要根据主机中储存的标识管理域服务器IDS地址向标 识管理域服务器IDS发送查询请求;若否,主机A可以使用正常基于IPv6的通信方式与主 机B进行通信。5)标识管理域服务器IDS收到主机A的查询请求,查询主机B的主机身份标识HID 对应的身份-位置映射服务器IPS,并将身份-位置映射服务器IPS的IP地址返回主机A。6)主机A收到标识管理域服务器IDS返回的主机B对应的身份-位置映射服务器 IPS的IP地址,根据此IP地址向该身份-位置映射服务器IPS发送查询主机B的IP地址 的请求。7)主机B对应身份-位置映射服务器IPS收到主机A的查询请求,查询主机B的 主机身份标识HID到IP地址的映射,并将主机B的IP地址返回给主机A。8)主机A收到身份-位置映射服务器IPS返回的主机B的IP地址,开始与主机B 进行正常通信。5、位置更新机制
一个新的部署了该方法的主机进入网络后需要进行注册,该注册过程为 1)主机根据接入的路由器广播获得自己的IP地址。2)主机将获得的IP地址以及自身的主机身份标识HID向主机所属的身份-位置 映射服务器IPS进行注册。
3)身份-位置映射服务器IPS根据主机的主机身份标识HID向主机所属的标识管 理域服务器IDS进行注册。
权利要求
1.一种基于IPV6地址的主机身份标识与位置标识分离的方法,其特征在于,在主机 端,在TCP/IP体系结构中的网络层上加入主机身份标识HID,该标识采用IPV6地址的形式, 其组成形式为前缀“0000011+域标识+单机标识”,拥有该前缀所表示的地址属于IPV6未 分配使用的地址;在网络上与DNS服务器并列的位置部署映射服务器,实现主机身份标识HID与位置标 识的映射管理,映射服务器包括标识管理域服务器IDS与身份-位置映射服务器IPS ;在主机端进行地址对比,用以区分是否部署该方法所提出的协议,从而决定主机间的 通信方式。
2.如权利要求1所述的基于IPV6地址的主机身份标识与位置标识分离的方法,其特征 是,当主机初次加入网络时,主机从标识管理域服务器IDS获得域标识,单机标识按照标识 管理域服务器IDS的要求随机获得,部署的主机向DNS服务器注册时,使用主机身份标识。
3.如权利要求1所述的基于IPV6地址的主机身份标识与位置标识分离的方法,其特征 是,所述标识管理域服务器IDS根据管理域内主机接入时间及位置参数为主机分配单机标 识。
4.如权利要求1所述的基于IPV6地址的主机身份标识与位置标识分离的方法,其特征 是,所述在主机端网络层中,主机身份标识HID被默认封装在IPV6包的扩展包头位置。
5.如权利要求1所述的基于IPV6地址的主机身份标识与位置标识分离的方法,其特征 是,当主机初次加入网络获得主机身份标识HID后,需进行主机身份标识HID到IP地址的 映射以得到主机身份标识HID所对的IP地址。
6.如权利要求5所述的基于IPV6地址的主机身份标识与位置标识分离的方法,其特征 是,当形成主机身份标识HID到IP地址的映射后,架设身份-位置映射服务器IPS来实现 主机身份标识HID到IP地址的映射管理。
7.如权利要求6所述的基于IPV6地址的主机身份标识与位置标识分离的方法,其特 征是,通过架设标识管理域服务器IDS实现主机身份标识HID到身份-位置映射服务器IPS 的映射管理。
8.如权利要求1所述的基于IPV6地址的主机身份标识与位置标识分离的方法,其特征 是,所述地址对比过程为,主机端若检测到DNS服务器返回的地址是以0000011为前缀,则 向标识管理域服务器IDS请求对方主机所属的身份-位置映射服务器IPS,并由身份-位置 映射服务器IPS获得通信用IP地址。
全文摘要
本发明涉及一种基于IPV6地址的主机身份标识与位置标识分离的方法,其方法简便易行,兼容性好,可较好的支持网络移动性。在主机端,在TCP/IP体系结构中的网络层上加入主机身份标识HID,该标识采用IPV6地址的形式,其组成形式为前缀“0000011+域标识+单机标识”,拥有该前缀所表示的地址属于IPV6未分配使用的地址;在网络上与DNS服务器并列的位置部署映射服务器,实现主机身份标识HID与位置标识的映射管理,映射服务器包括标识管理域服务器IDS与身份-位置映射服务器IPS;在主机端进行地址对比,用以区分是否部署该方法所提出的协议,从而决定主机间的通信方式。
文档编号H04L29/12GK102123182SQ20111008824
公开日2011年7月13日 申请日期2011年4月9日 优先权日2011年4月9日
发明者侯剑, 王岑竹 申请人:山东师范大学