发明内容
为解决现有技术存在的上述缺陷,本发明提出了一种采用随路改变目的地址的报文路由转发方法,能够提高网络传输性能,从而及时对感知到的网络状态进行响应。
本发明提供的一种采用随路改变目的地址的报文路由转发方法,该方法包括:在使用所述采用随路改变目的地址的路由转发方法的网络中,
网络中所有网元实体包括但不限于主机、设备、数据和服务,每个网元实体是通过唯一且不变的标识符ID进行标识,每个网元实体的标识符ID与对应的网络地址之间的映射关系,是由一个基于服务等级的解析服务系统维护;
其中,所述服务等级是指基于测量而定义的差异性服务,该定义包括但不限于基于网络测量的响应时延定义的服务等级、基于地理距离测量定义的服务等级、基于语义相关性测量和计算定义的服务等级、以及基于上述任意两种或着三种信息组合定义的服务等级;
网络路由交换设备在接收到网络层数据报文后,可以改写该报文的网络地址字段和网络地址扩展字段;依据改写后的报文网络地址字段和网络地址扩展字段,通过报文重构形成转发报文,并基于转发表进行转发,转发表可以采用基于位置的路由方法进行计算和维护;
其中,所述数据报文以网络层报文格式转发,该数据报文包括:网络地址字段,网络地址扩展字段,会话期间保持不变的ID标识字段和携带应用对传输需求的偏好字段;其中,该偏好字段包括:应用相关的特定参数;该应用相关的特定参数包括但不限于服务质量需求和应用偏好。
作为上述技术方案的改进之一,所述基于服务等级的解析服务系统中,该解析服务系统包括一个或多个服务等级,是一个维护标识符ID和对应的网络地址之间的映射关系、并可提供多个服务等级的解析服务的分布式查询服务系统;
该解析服务系统为基于服务等级的层次型结构的分布式系统;构成该分布式系统的每个分布式节点均维护一张或多张邻域节点列表,并且所述一张或多张邻域节点列表中的节点协同响应同一个解析请求;
所有标识符ID标识和对应的网络地址之间的映射关系,在解析服务系统中进行注册和管理;
其中,所述解析服务系统包括但不限于注册服务能力、检索服务能力、查询服务能力和管理服务能力。
作为上述技术方案的改进之一,所述基于服务等级的层次型结构的分布式系统,该分布式系统为单层结构或多层结构;
所述分布式系统中的同一层次的节点,具有相同的服务等级,而不同层的节点具有不同的服务等级;
一个用户在某个服务等级上的可服务节点,表示该用户可以在该服务节点上以该服务等级对应的服务性能获得解析查询服务;
一个服务节点拥有某个用户,表示该服务节点可对该用户提供该服务等级对应的服务性能的解析查询服务。
作为上述技术方案的改进之一,所述基于服务等级的层次型结构的分布式系统中,一个用户节点具有一个或者多个属于同服务等级的可服务节点,如果在某个服务等级有多个可服务节点,则该服务等级有且只有一个服务节点为master点;
其中,服务于该用户的各服务等级所有master点符合嵌套结构,该用户在服务等级j的master点所拥有的所有用户,也必须是该用户高于服务等级j的master点所拥有的用户;
假设用户为u
i,ms
i,j是为u
i在服务等级j所选择的master点,Φ(ms
i,j)为master点ms
i,j所服务的用户集合,当服务等级k>服务等级j时,则
其中,master点通过选择函数定义或指派方式确定。
作为上述技术方案的改进之一,所述邻域节点列表是一个由节点自身维护的局部自治的节点列表,该节点基于邻域判定准则,选出部分网络中的服务节点构建成邻域节点列表;
如果通过多个准则,则可以构建多个邻域节点列表;
其中,邻域判定准则包含但不限于:
基于网络时延测量准则构建邻域,如节点与候选邻域节点间时延小于某个阈值,则将该候选邻域节点加入邻域节点列表;
基于地理位置距离准则构建邻域,如节点与候选邻域节点间物理距离小于预先设定的距离阈值,则将该候选邻域节点加入邻域节点列表;
基于语义相近程度准则构建邻域,如节点与候选邻域节点中存储内容相关性较强,则将该候选邻域节点加入邻域节点列表;其中,相关性是指通过语义计算的方式获得两个节点所存储内容的相近程度;
基于结构关系准则建立邻域,如所有服务节点构成一个树形结构,将该树形结构中的子孙节点或者后代节点构成邻域。
作为上述技术方案的改进之一,所述一张或多张邻域节点列表中的节点协同响应同一个解析请求;每个节点所维护的邻域节点列表中的节点,可代替节点自身或与节点并行提供服务;
其中,可替代性或者并行服务的判定条件,包括但不限于:
节点自身负载过重难以在服务等级要求下响应请求,且与自身有相同服务能力的邻域节点可对该请求提供符合等级要求的服务;
节点自身没有存储所需内容,且相关邻域节点具有该所需内容并可提供用户所需服务等级的服务;
高并发请求时,多个邻域节点可同时满足服务要求,可执行请求分流。
作为上述技术方案的改进之一,所述网络地址扩展字段,其信息包括但不限于:目的ID标识对应内容的多个候选存储地址集合信息或其引用信息、同一个设备ID标识下的多个候选网络地址集合信息或其引用信息,和网络层处理指示信息;其中,所述引用信息包括但不限于指针和偏移量。
作为上述技术方案的改进之一,所述数据报文的网络地址字段和网络地址扩展字段改写的具体过程为:
步骤1)根据数据报文携带的ID标识,向解析服务系统请求符合现场响应服务等级要求的解析服务,获取该ID标识下新的目的地址,并用该新的目的地址改写该数据报文的网络地址字段,获得改写后的网络地址字段;
步骤2)根据网络路由交换设备自身感知的网络状态和该数据报文中可能携带的网络地址和网络地址扩展字段信息,通过网络地址扩展字段中的候选地址集合信息或其引用信息,得到候选地址集合;
该候选地址集合与根据ID标识向解析服务系统查询得到的地址构成的集合中,选取部分子集,并重新排序,根据预先策略,选出合适地址作为新的目的地址,将其填入该数据报文的网络地址字段中,并对所选取的部分子集进行筛选,将筛选后的内容写回网络地址扩展字段中的相应位置;
步骤3)根据网络路由交换设备自身感知的网络状态和该数据报文中可能携带的网络地址扩展字段信息,基于预先策略,计算新的网络地址扩展字段中的部分字段信息,并改写该数据报文中的网络地址扩展字段中的相应部分,获得改写后的NA Expanded字段。
作为上述技术方案的改进之一,所述的报文重构的具体过程为:
将改写后的网络地址字段和改写后的网络地址扩展字段的报文重新构建成当前网络所支持的报文格式,并按照新的目标地址的转发表进行转发。
本发明与现有技术相比的有益效果是:
本发明的方法能够通过网络感知的状态信息,对路由转发过程进行及时优化和调整,通过转发路径的现场选择和计算,为每一跳选择合适的转发路径,从而提高网络的整体路由转发性能。
具体实施方式
现结合附图对本发明作进一步的描述。
如图1所示,本发明提供一种采用随路改变目的地址的报文路由转发方法,在使用所述采用随路改变目的地址的报文路由转发方法的网络中,其方法具体为:
(1)网络中所有网元实体包括但不限于,主机、设备、数据和服务,是通过唯一且不变的标识符ID进行标识,每个网元实体的标识符ID与对应的网络地址之间的映射关系,是由一个基于服务等级的解析服务系统维护;
其中,服务等级是指基于测量而定义的差异性服务,该定义包括但不限于基于网络测量的响应时延定义的服务等级、基于地理距离测量定义的服务等级、基于语义相关性测量和计算定义的服务等级、以及基于上述任意两种或三种信息组合定义的服务等级。
(2)对于上述基于服务等级的解析服务系统中,其特点如下:
该解析服务系统包括一个或多个服务等级,是一个维护标识符ID和对应的网络地址映射关系、并可提供多个服务等级的解析服务的分布式查询服务系统;
其中,服务等级是指基于测量而定义的差异性服务,该定义包括但不限于基于网络测量的响应时延定义的服务等级、基于地理距离定义的服务等级、基于语义相关性定义的服务等级、以及上述任意两个或三个服务等级的多种组合;
所有ID标识和对应的网络地址之间的映射关系,在解析服务系统中进行注册和管理。解析系统包括但不限于注册、检索、管理和查询服务能力。
该解析服务系统为基于服务等级的层次型结构的分布式解析系统,可为单层结构,也可为多层结构;
同一层次的节点,具有相同的服务等级,而不同层的节点具有不同的服务等级。
某个服务等级的服务节点可对一个用户提供服务,表示该用户的标识符ID到网络地址的对应关系,可以在该服务节点上以该服务等级对应的服务性能查询到。
构成该系统的每个分布式节点都维护一张或多张邻域节点列表,并且所述一张或多张邻域节点列表中的节点可以协同响应同一个解析请求;
在这里,所述邻域节点列表是一个由节点自身维护的局部自治的节点列表,该节点基于邻域判定准则,选出部分网络中的服务节点构建成邻域节点列表;
如果通过多个准则,则可以构建多个邻域节点列表。
其中邻域判定准则包含但不限于:
基于网络时延测量准则构建邻域,如节点与候选邻域节点间时延小于某个阈值,则将该候选邻域节点加入邻域节点列表;
基于地理位置距离准则构建邻域,如节点与候选邻域节点间物理距离小于预先设定的距离阈值,则将该候选邻域节点加入邻域节点列表;
基于语义相近程度准则构建邻域,如节点与候选邻域节点中存储内容相关性较强,则将该候选邻域节点加入邻域节点列表;其中,相关性是指通过语义计算的方式获得两个节点所存储内容的相近程度;
基于结构关系准则建立邻域,如所有服务节点构成一个树形结构,将该树形结构中的子孙节点或者后代节点构成邻域。
除此之外,一张或多张邻域节点列表中的节点协同响应同一个解析请求;每个节点所维护的邻域节点列表中的节点,可代替节点自身或与节点并行提供服务;
其中,可替代性或者并行服务的判定条件,包括但不限于:
一、节点自身负载过重难以在服务等级要求下响应请求,且与自身有相同服务能力的邻域节点可对该请求提供符合等级要求的服务;
二、节点自身没有存储所需内容,且相关邻域节点具有该所需内容并可提供用户所需服务等级的服务;
三、高并发请求时,多个邻域节点可同时满足服务要求,可执行请求分流。
一个用户节点有一个或者多个属于同服务等级的可服务节点,如果在某个服务等级有多个可服务节点,则该服务等级有且只有一个服务节点为master点;
其中,服务于该用户的各服务等级所有master点需要符合嵌套结构,该用户在服务等级j的master点所拥有的所有用户,也必须是该用户高于服务等级j的master点所拥有的用户;
假设用户为u
i,ms
i,j是为u
i在服务等级j所选择的master点,Φ(ms
i,j)为master点ms
i,j所服务的用户集合,当服务等级k>服务等级j时,
其中,master点可以通过选择函数定义或指派方式确定。
所述数据报文以网络层报文格式转发,所述数据报文包括:网络地址字段(NA地址字段),网络地址扩展字段(NA Expanded字段);会话期间保持不变的ID标识字段;还可能携带应用对传输需求的偏好(Preference)字段,该偏好字段包含了应用相关的特定参数,该特定参数包括但不限于服务质量需求、应用偏好。
其中,NA地址字段和NA Expanded字段都可在路由转发过程中被动态改写。
(3)网络路由交换设备在接收到数据报文后,可以改写该报文的NA地址字段和NAExpanded字段;
其中,NA地址字段和NA Expanded字段改写的具体过程包括:
步骤1)根据数据报文携带的ID标识,向解析服务系统请求符合现场响应服务等级要求的解析服务,获取该ID标识下新的目的地址,并用该新的目的地址改写该数据报文的NA地址字段,获得改写后的NA地址字段;
步骤2)根据网络路由交换设备自身感知的网络状态和该数据报文中可能携带的网络地址和网络地址扩展字段信息,通过NA Expanded字段的候选地址集合信息或引用信息,得到候选地址集合;
该候选地址集合与根据ID标识向解析服务系统查询得到的地址构成的集合中,选取部分子集,并重新排序,根据预先策略,选出合适地址作为新的目的地址,将其填入该数据报文中的NA地址字段中,并对所选取的部分子集进行筛选,将筛选后的内容写回NAExpanded字段中的相应位置;
步骤3)根据网络路由交换设备自身感知的网络状态和该数据报文中可能携带的NA Expanded字段信息,基于预先策略,计算新的NA Expanded字段中的部分字段信息,并改写该数据报文中的NA Expanded字段中的相应部分,获得改写后的NA Expanded字段。
其中,NA Expanded字段,其信息包括但不限于:目的ID对应内容的多个候选存储地址集合信息或其引用信息、同一个设备ID下的多个候选网络地址集合信息或其引用信息,和网络层处理指示信息。其中,所述引用信息包括但不限于指针和偏移量。
(4)网络路由交换设备依据改写后的报文的NA字段和NA Expanded字段,通过报文重构形成转发报文,并基于新的目的地址的转发表进行转发,该转发表可以是采用基于位置的路由方法计算和维护的,例如IP协议。
具体地,报文重构是将改写后的NA地址字段或NA Expanded字段的报文重新构建成当前网络所支持的报文格式,并按照新的目标地址的转发表进行转发。
实施例1.
网络中所有网元实体,包括:主机、设备、数据和服务,是通过唯一且不变的标识符ID进行标识,用IP作为网络地址进行路由。
解析服务系统维护了网元实体的ID标识与对应的网络地址(即IP地址)之间的映射关系;其中,解析服务系统提供时延差异化的服务,通过网络测量得到的不同时延范围为不同的服务等级,该解析服务系统提供解析时延在d1ms,d2ms,d3ms......不同服务等级的解析服务。
数据报文以网络层报文格式转发,所述数据报文包括:源地址s、目的地址ts,ID标识字段id,以及候选地址集合信息CTS={ts1,ts2…},其中,初始时,CTS为空。数据报文还携带应用需求信息,包含应用相关的特定参数R={r1,r2…},该相关的特定参数包括但不限于服务质量需求、应用偏好。其中,网络路由交换设备为交换机;其传输过程中的地址改写和转发的步骤,如图1所示:
1)在每一次转发时,首先看当前节点地址是否是报文转发的目的地址,如果是,则停止转发,如果不是,则交换机通过解析服务系统对数据报文中携带的id进行解析查询,根据对交换机接收到的报文解析服务等级l的要求,交换机向解析服务系统中对应l服务等级的服务节点发出解析查询请求,解析服务节点需要在l服务等级服务性能要求范围内返回结果,则该返回结果可能为返回空(即CIP=null),也可能返回一个IP地址集合,即候选地址集合CIP={cip1,cip2…cipn};其中,n>=1。
2)交换机接收到返回的候选地址集合CIP后,将CIP加入到候选地址字段CTS中,得到更改后的候选地址集合CTS’,即CTS’=CTS∪CIP,并根据选择函数,对其中地址进行选择,
tip=S(CTS’,R,NS)
其中,S(X,Y,Z)为选择函数,X值为更改后的候选节点集合CTS’,Y值为参数集合R,Z值为网络状态信息集合NS,如端口负载、链路带宽等;
tip为最终选择出符合选择函数要求的ip地址,作为下一跳的转发地址,即新的目的地址。其中,S(X,Y,Z)为选择最小端口负载所对应的地址作为下一跳地址;
计算候选节点列表CTS1=DEL(CTS,R,NS),
其中,DEL(X,Y,Z)为候选地址列表裁剪函数,该裁剪函数可根据服务需求定义,
如端口负载超出阈值的对应候选地址需裁剪,则将不符合性能要求的节点从更改后的候选地址集合CTS’集合中删除,之后,用裁剪后的候选节点列表代替之前列表。
其中,DEL(X,Y,Z)为删除端口负载大于阈值THL的所有候选节点。
3)通过新选出的目的地址,以及之前的源地址s和ID标识id,以及更改后的候选地址集合CTS’,重构具有当前网络所支持的报文格式的新的IP数据报文,并通过IP路由转发机制,基于IP路由协议,按照新的目的地址的转发表进行报文转发。
4)上述过程不断执行,直至到达目的地址ts。
最后所应说明的是,以上实施例仅用以说明本发明的技术方案而非限制。尽管参照实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,对本发明的技术方案进行修改或者等同替换,都不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。