随着互联网的发展,多种多样的数据和服务成为互联网中的重要对象,而且这些数据和服务的位置及性能可能是经常变化的,这就对当前基于主机域名来对资源进行命名的机制提出了挑战,需要一种命名机制来对网络资源进行与资源位置无关的标识。有的应用需要从多种可选的服务中选取一个或多个满足要求的服务,比如,把打印任务发送给一个地理位置最近的负载最轻的打印机,根据网络性能和服务器负载情况选择一个服务器下载文件等。目前的DNS解析中把一个域名解析为一个IP地址的服务模式显得过于简单,无法有效地支持上述服务。另外,DNS服务器对域名空间的管理过多地依赖于手动配置,手动配置的错误也会对DNS的解析产生很大的负面影响。在移动环境中,当数据和服务的位置发生变化时,需要尽可能快地对DNS服务器进行记录更新,但目前DNS采用的cache机制也很难满足这种需求。
私有网络、传感器网络等多种形式的边缘网络的出现,为互联网带来了NAT这样的网络中间件, 再加上各种代理、防火墙、DHCP服务器等网络中间件的存在, 在一定程度上破坏了互联网的体系结构和名字空间。由于边缘网络的名字空间与互联网的名字空间并不一致,常常需要在网络中间件进行转换,破坏了互联网的端到端原则可扩展性也比较差。比如,NAT设备需要在内部网络的私有IP地址和互联网的公用IP地址之间进行相互转换。网络中间件还往往成为通信中的瓶颈和单一故障点,比如,DHCP服务器发生故障将使得主机无法获取合法的IP地址因而不能进行通信。
1.3 解决的办法
对IP地址双重功能的分离,其目的是解决IP地址语义过载的问题,把设备的身份标识和位置标识分离开来。这将有助于解决移动、Multi-homing、IP地址动态重分配以及不同网络区域之间的互访等问题。这一类方案的主要代表有HIP,PeerNet和FARA等。
1.3.1 HIP
主机标识是一个抽象概念,在实际中使用的是主机标识符(host identifier)。为了与现有的基于IPv4地址的协议和应用程序接口兼容,HIP还定义了局部标识符(local scope identifier),统一长度为32位,但只在局部网络范围内使用。因此,在HIP中的主机标识层中存在一个抽象的名字空间即主机标识空间,以及3个具体的相关名字空间:主机标识符空间、主机标签空间和局部标识符空间。主机标识符空间是全局的、可变长的;主机标签空间是全局的、定长的;而局部标识符空间是局部的、定长的。这3个名字空间都是无结构的扁平名字空间。主机标识空间的名字分配是动态的、非唯一的,因此可以较容易地实现进程迁移和集群服务器。HIP中的IP地址是非唯一分配的,一个主机标识可以对应多个IP地址,因此能较好地解决Multi-homing和移动的问题。Multi-homing设备的主机标识对应多个IP地址,如果一个IP地址不能使用了,或者有更好用的IP地址,已经建立的传输层连接可以很容易地转移到其他IP地址。结点在移动过程中IP地址发生了改变,而主机标识并没有变,因此传输层的连接可以不中断,但是移动结点应该通知自己IP地址的改变。由于传输层连接是与主机标识绑定的,IP地址只是被用来进行路由,因此HIP还可以实现不同网络区域之间的互访,如公有网络与私有网络之间、IPv4网络与IPv6网络之间等。
1.3.2 PeerNet
PeerNet也提出把节点的身份标识和位置标识进行分离,避免IP地址同时拥有双重功能。但PeerNet是一个全新的网络层协议,它的目的是取代IP协议。PeeerNet网络中的每个节点都有一个节点标识和一个地址标识。节点标识可靠地代表节点的身份,不随节点的移动而改变。地址标识则严格地反映节点在网络中的当前位置,当节点移动时,节点的地址标识随之动态改变。由于地址标识是完全层次化分配的,PeerNet中就可以运用P2P网络的路由思想来组织路由。论文网 域名导航软件的设计与实现(3):http://www.751com.cn/jisuanji/lunwen_72098.html