转自:[url]http://sj.media.edu.cn/xiayidai/index2.php?id=2&IDx=275[/url] | |||
在本文中首先说明了基于IPv6的任播通讯,及目前在该领域中存在许多可能的应用,并指出一些问题和与之对应的解决办法,随后介绍了一种使用特殊任播地址来创建TCP链接的任播地址解析协议(AARP),使得任播地址在适应已经存在的应用和高层协议时,不须要修改或者扩展的状况下更加有效。
1 IPv6
地址类型的概述
IPv6
地址长度为128比特,地址按照其传输类型分为三种,即单播地址(UnicastAddress)、多播地址(Multicast Address)和任播地址(Anycast Address)。单播和多播地址在IPv4中已经存在,任播地址是IPv6中新的成员,RFC 2723将IPv6地址结构中的的任播地址定义为一系列网络接口(一般属于不一样的节点)的标识,其特色是:发往一个任播地址的分组将被转发到由该地址标识的“最近”的一个网络接口(“最近”的定义是基于路由协议中的距离度量)。
单播地址是每一个网络接口的惟一的标识符,多个接口不能分配相同的单播地址,带有一样目的地地址的数据包被发往同一个节点;另外一方面,多播地址被分配给一组节点,组中全部成员拥有一样的组播地址,而带有一样地址的数据包同时发给全部成员;相似于多播地址,单一的任播地址被分配给多个节点(任播成员),但和多播机制不一样的是:每次仅有一个分配任播地址的成员与发送端通讯。通常与任播地址相关的有三个节点,当源节点发送一个目的地地址为任播地址地数据包时,数据包被发送给三个节点中的一个,而不是全部的主机。任播机制的优点在于源节点不须要了解服务节点或目前网络的状况,而能够接收特定服务,当一个节点没法工做时,带有任播地址的数据包又被发往其余两个主机节点,从任播成员中选择合适的目的地节点取决于任播路由协议。
2 IPv6
任播技术的分析
任播技术是一种新的网络应用,它可以支持把一样的地址能够分配给多个节点去提供特定服务的以服务导向的地址,而带有任播目的地地址的数据报可以使用相同的任播地址并被传给众多节点中的任意一个。因特网研究任务组(IRTF)在1993年到RFC 1546中已经定义了任播技术的做用:“主机向一个任播地址发送数据报,网络负责尽力将数据报传递到至少一个,最好也是一个,按任播地址接收数据的服务器上。'采用任播机制的初衷是完全去简化在互联网中寻找合适服务器的任务;任播通讯的基本概念是从物理主机设备中分离出的逻辑服务标识符,任播地址能够根据服务类型来分配,使得网络服务担当一个逻辑主机的角色。
虽然目前任播技术的定义不是十分清楚,可是终端主机经过路由器是被基于包交换所决定。任播技术的概念并不局限于网络层,它也能够在其余层实现(例如:应用层),网络层和应用层的任播技术均有优势和缺点。
3 IPv6
任播技术的应用
适合于任播通讯的应用有不少,其中比较重要的一个应用是服务器位置。发送端的主机能够在众多一样功能的主机中选择其中一个,若是合理地利用任播路由方法去将任播需求均匀的分配到主机上,任播主机之中的负载分配目标能够达到。在任播主机中使用简便的随即选择方法在网络层任播技术中却不会奏效,例如:CPU的负载,由于很难知道每一个服务器的资源使用状态,而应用层任播技术使用该方法倒是实用的。
另外一个重要应用是服务位置,发送端主机能够经过说明任播地址去从多个任播主机中选择与最佳的、最小时延的、最大输出量的主机进行通讯,例如:在诸如移动ad hoc网络这类动态改变环境下运用该方法特别适用。经过网络层的任播技术,节点能够和合适的或是最近的服务器进行通讯,并经过应用层任播技术得到该类服务。
网络层任播技术的优点在于能够提供令源节点在无须借助服务节点和网络的状况下,可以接收到特定服务机制的简便方法。
4 IPv6
任播技术的问题和解决方法
IPv6
任播技术仍然存在许多问题。首先是任播技术的使用场合和应用任播技术的优势,其次是基于IPv6的任播技术是一个路由协议并无被包括IPv6的规范说明中,而这正是使得任播技术应用更普遍不可获缺的条件,路由器应该在决定目的地网络让任播包能够合适的传送地过程当中起到主动做用。目前的任务是须要设计和应用合适的任播路由协议到任播应用场合之中,并让互联网可以逐步去支持任播技术。例如:任播路由即便在因特网中只有少许的节点或路由器支持任播技术时也可以恰当的工做。全部基于TCP和一些基于UDP的协议在互联网应用中已经说明了,端主机之间创建通讯过程,并在交换信息过程当中认为它们是一致的。
4.1
主机向任播成员通告参与的问题
节点申明除了针对任播地址的公开路由信息之外,它们能够接受的数据报,而在IPv6的技术说明中节点必须是一个路由器。一个主机准备加入成为任播成员或离开时,它必须有不一样的能力去向“最近”的任播路由器通告它目前的状态(加入或离开)。
|