CN102714632A - 端到端覆盖网中转方法和系统 - Google Patents
端到端覆盖网中转方法和系统 Download PDFInfo
- Publication number
- CN102714632A CN102714632A CN2012800001963A CN201280000196A CN102714632A CN 102714632 A CN102714632 A CN 102714632A CN 2012800001963 A CN2012800001963 A CN 2012800001963A CN 201280000196 A CN201280000196 A CN 201280000196A CN 102714632 A CN102714632 A CN 102714632A
- Authority
- CN
- China
- Prior art keywords
- node
- cluster agent
- host node
- cluster
- agent node
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B7/00—Radio transmission systems, i.e. using radiation field
- H04B7/24—Radio transmission systems, i.e. using radiation field for communication between two or more posts
- H04B7/26—Radio transmission systems, i.e. using radiation field for communication between two or more posts at least one of which is mobile
- H04B7/2603—Arrangements for wireless physical layer control
- H04B7/2606—Arrangements for base station coverage control, e.g. by using relays in tunnels
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明提供了端对端覆盖网中转方法和系统。端对端覆盖网中转方法用于在包括多个主机节点和引导服务器的端对端覆盖网中寻找从源主机节点到目的主机节点的中继节点,包括:主机节点与引导服务器通信以获得坐标信息,该坐标信息用于基于距离预测机制来计算两个主机节点之间的时延;执行主机节点的聚类,以将一部分主机节点作为聚类代理节点,而其它主机节点作为归属于聚类代理节点的主机节点;基于距离预测机制从聚类代理节点中选择从源主机节点到目的主机节点的中继节点。通过根据本发明的端对端覆盖网中转方法和系统,可以在端对端覆盖网中快速发现有效的中继节点,从而建立时延更短、效率更高且稳定性更强的替代路由,实现端到端的高性能通信。
Description
技术领域
本发明实施例涉及网络访问技术,且具体地说涉及端到端覆盖网中转方法和系统。
背景技术
目前的因特网网络层由于使用的路由协议和网络架构等因素导致整体路由效率不佳,通过IP(internet protocol:因特网协议)层尽力而为交付原则选择的默认路由已经难以满足许多对实时性要求较高的应用层业务的性能需求。其主要原因包括以下几方面:
IP层路由中,数据包跨越不同域发送时,边界网关协议(BGP:bordergateway protocol)只保证连通可达,其提供的并非最短路径。这样两点直连情况下的传输时延往往较长,以至于不能满足服务应用的需求。
互联网中路由器转发数据包的排队等待机制在负载较大时经常出现拥塞,这样的拥塞造成的网络抖动会带来时延增加和频繁丢包,使得本来质量较好的链路出现性能衰退。
由于网络中NAT(network addresst ranslation:网络地址转换)和防火墙的设置,在保护网络的同时,也为网络应用人为设置了障碍,这使得无法对大量的目的结点进行直连,NAT或防火墙后的用户完全无法享受网络电话等应用层服务。
为了解决这些问题,人们开始研究P2P(peer-to-peer:端到端)覆盖网中转技术。因为从目前的研究发现,因特网网络中存在大量TIV(triangleinequality violations三角不等式违反)现象,如图1所示,约40%-50%的路径存在等效或时延更小的替代路径,80%的路径存在丢包率更低的替代路径。图1是示出因特网网络中的TIV现象的示意图。P2P覆盖网中转技术就是通过在P2P覆盖网中寻找合适的中继节点,媒体通过中继节点转发,从而为应用层两点间建立比默认IP路由时延更短、效率更高、稳定性更强的替代路由,实现端到端的高性能通信.
这里的P2P覆盖网是指应用层节点(如skype软终端)按照P2P的方式自组织成一个网络,它是一个逻辑虚拟拓扑网络。中继节点是一种具有特殊能力的应用层节点,它不仅为本地用户提供应用服务,同时还充当其他两个或多个应用层节点间的桥接节点,完成媒体转发。P2P覆盖网中转技术的核心问题是中继节点的发现算法,即如何在短时间内以可接受开销发现可用的有效中继节点。
发明内容
基于上述目的做出本发明,且本发明的目的是提供用于有效地发现中继节点的端对端覆盖网中转方法和系统。
一方面,提供了端对端覆盖网中转方法,所述端对端覆盖网中包括多个主机节点和引导服务器,所述方法用于寻找从源主机节点到目的主机节点的中继节点,所述方法包括:所述主机节点与引导服务器通信以获得坐标信息,所述坐标信息用于基于距离预测机制来计算两个主机节点之间的时延;执行所述主机节点的聚类,以将一部分主机节点作为聚类代理节点,而其它主机节点作为归属于所述聚类代理节点的主机节点;基于距离预测机制从所述聚类代理节点中选择从源主机节点到目的主机节点的中继节点。
另一方面,提供了端对端覆盖网中转系统,所述端对端覆盖网中包括多个主机节点和引导服务器,所述系统用于寻找从源主机节点到目的主机节点的中继节点,所述端对端覆盖网中转系统包括:通信单元,用于使得所述主机节点与引导服务器通信以获得坐标信息,所述坐标信息用于基于距离预测机制来计算两个主机节点之间的时延;聚类单元,用于执行所述主机节点的聚类,以将一部分主机节点作为聚类代理节点,而其它主机节点作为归属于所述聚类代理节点的主机节点;以及选择单元,用于基于距离预测机制从所述聚类代理节点中选择从源主机节点到目的主机节点的中继节点。
通过根据本发明实施例的端对端覆盖网中转方法和系统,可以在端对端覆盖网中快速发现有效的中继节点,从而建立时延更短、效率更高且稳定性更强的替代路由,实现端到端的高性能通信。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是示出因特网网络中的TI V现象的示意图;
图2是示出根据本发明第一实施例的端对端覆盖网中转方法的示意性流程图;
图3是示出根据本发明第一实施例的端对端覆盖网中转方法中的节点加入过程的具体示例的流程图;
图4是示出根据本发明第一实施例的端对端覆盖网中转方法中的主机节点和聚类代理节点之间的信息更新过程的具体示例的流程图;
图5是示出根据本发明第一实施例的端对端覆盖网中转方法中的聚类代理节点和BS服务器之间的信息更新过程的具体示例的流程图;
图6是示出根据本发明第一实施例的端对端覆盖网中转方法中的Meridian环构建过程的具体示例的流程图;
图7是示出根据本发明第一实施例的端对端覆盖网中转方法中的Meridian环维护更新过程的具体示例的流程图;
图8是示出根据本发明第一实施例的端对端覆盖网中转方法中的中继节点选择过程的具体示例的流程图;
图9是示出根据本发明第二实施例的端对端覆盖网中转方法的示意性流程图;
图10是示出根据本发明第三实施例的端对端覆盖网中转方法的示意性流程图;
图11是示出根据本发明第四实施例的端对端覆盖网中转方法的示意性流程图;
图12是示出根据本发明第五实施例的端对端覆盖网中转方法的示意性流程图;
图13是示出根据本发明第一实施例的端对端覆盖网中转系统的示意性框图;
图14是示出根据本发明第二实施例的端对端覆盖网中转系统的示意性框图;
图15是示出根据本发明第三实施例的端对端覆盖网中转系统的示意性框图;
图16是示出根据本发明第四实施例的端对端覆盖网中转系统的示意性框图;
图17是示出根据本发明第一实施例的端对端覆盖网中转系统的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在根据本发明实施例的网络环境下,专门部署固定的一个或者多个BS(Bootrap Server:引导服务器)服务器,其指导网络节点注册,辅助主机节点找到归属的聚类代理节点,管理存储系统中所有聚类代理节点信息,并指导新加入聚类代理节点初始构建自己的环结构。聚类代理节点是由拥有公网IP、CPU处理能力强、带宽大、在线时间长等条件的普通客户终端提升而成。聚类代理节点管理归属于自己的主机节点信息,并维护更新由其他邻近聚类代理节点构建的环结构。在管理的主机节点需要中继节点时,聚类代理节点从自己的环结构中选取提供合适的中继节点列表。聚类代理节点需要充当中继节点的角色,负责用户面的NAT穿越以及媒体中转。并且,主机节点指的是普通客户终端,其在加入网络后附着到某个聚类代理节点,并依靠聚类代理节点来完成中继节点的查找。
ASAP(AS-aware peer-relay protocol:自治系统感知对等中继协议)算法是P2P覆盖网中转技术的一个示例,其需要部署引导服务器,负责收集存取网络AS(Autonomous System:自治系统)分布图、AS和IP前缀的映射表。基于IP前缀信息对用户节点进行聚类,每个聚类选择一个能力较强的节点作为聚类代理节点。引导服务器需要存储维护聚类和聚类代理节点信息。每个聚类代理节点基于AS拓扑图,通过广度优先搜索获取邻近AS信息,然后通过实际探测来构建邻近聚类集合。在实际中继节点选择过程中,该算法基于主被叫邻近聚类集合交集来选取合适的中继节点。
在上述ASAP算法中,AS域间关系需要通过获取BGP广播消息来推断,BGP广播的内容有限,且难于获取。另外,该算法基于AS拓扑图的探测方法,范围太大,实际开销也比较高。
Meridian(子午环)算法是P2P覆盖网中转技术的另一示例,在Meridian算法中,每个节点加入网络时,首先通过引导服务器或者已存在的节点获取一部分现有网络节点信息。然后对这些节点进行实际探测,基于获取的RTT(round-trip time:往返时延)信息构建环状的拓扑结构,以自己为圆心,由内向外将这些节点分别放在离自己不同距离(时延)的环上。另外,它基于gossip协议周期性地维护和更新这个环结构。在实际中继节点选择时,发起方根据设定的阈值从自己的环结构中选取节点进行广播,通过逐跳迭代的方式找到合适的中继节点。
但是,通过逐步逼近的多跳方式发现中继节点,逼近参数的设置难,而且多跳的方式容易造成媒体时延和丢包增大,多个转发节点在接入侧上造成下行带宽的消耗。另外,meridian算法中也没有提到节点聚类来减少网络开销和提高命中率。
为了解决因特网网络故障,NAT穿越,通信时延太大等问题,本发明实施例提出了新颖的和改进的端对端覆盖网中转方法和系统。
本发明实施例的基本思想是采用节点聚类、meridian环和GNP(GlobalNetwork Positioning全球网络位置)距离预测中的一种或多种技术的端对端覆盖网中转方法和系统。
在本发明的实施例中,网络系统中的节点可以依据时延和部分网络拓扑信息(例如,IP地址或ASN(Autonomous System Number:自治系统号))来完成聚类。每个聚类内选择一个能力强的节点充当聚类代理节点,管理本聚类内的其它节点。此外,可以仅由聚类代理节点参与构建meridian环,从而通过节点聚类保证meridian环上节点地理上的分散性。
并且,通过meridian环的多层解析环结构,让网络系统中的聚类代理节点能够在存储有限数目节点的基础上,更多的了解和携带整个网络拓扑的节点信息。
另外,在进行中继节点的选择时,通过比如GNP距离预测机制的距离预测机制从源和目的节点归属的聚类代理节点的meridian环结构中筛选获取一跳候选中继节点,这能够大幅度减少不必要的探测开销,提高预测精度。
下面,将基于图2到图8对本发明的端对端覆盖网中转方法的第一实施例进行描述。
图2是示出根据本发明第一实施例的端对端覆盖网中转方法的示意性流程图。如图2所示,根据本发明第一实施例的一种端对端覆盖网中转方法应用于包括多个主机节点和引导服务器的端对端覆盖网,用于寻找从源主机节点到目的主机节点的中继节点,该方法包括:S1000,所述主机节点与引导服务器通信以获得坐标信息,所述坐标信息用于基于距离预测机制来计算两个主机节点之间的时延;S1001,执行所述主机节点的聚类,以将一部分主机节点作为聚类代理节点,而其它主机节点作为归属于所述聚类代理节点的主机节点;S1002,基于距离预测机制从所述聚类代理节点中选择从源主机节点到目的主机节点的中继节点。
下面,将基于图3到图8对上述根据本发明第一实施例的端对端覆盖网中转方法进行详细说明如下。
在本发明的实施例中,节点加入步骤可以包括注册,GNP坐标计算和节点聚类三个部分。在根据本发明实施例的网络系统中,每个节点上都存储有BS服务器地址信息,在节点加入网络时,首先由要加入的节点向BS服务器发起注册请求。然后,要加入的节点在BS服务器成功完成鉴权后获取landmark(路标)节点信息,然后通过GNP算法计算得到自己的GNP坐标。在GNP坐标计算完成后,节点进行聚类操作,并向BS服务器发起归属聚类代理节点信息请求。BS服务器根据时延和IP地址等拓扑信息,协助新加入节点完成聚类。图3是示出根据本发明第一实施例的端对端覆盖网中转方法中的节点加入过程的具体示例的流程图。
如图3所示,S1100,要加入网络的主机节点向BS服务器发起注册请求消息,例如,该消息中可以携带用户的用户名和密码;S1101,BS服务器对要加入网络的主机节点进行鉴权,例如,通过鉴定用户的用户名和密码的有效性来进行鉴权。如果鉴权成功,则BS服务器向要加入网络的主机节点返回成功响应消息,并在该消息中携带多个landmark(地标)节点信息,该地标节点信息可以包括该地标节点的IP地址、GNP坐标等(地标节点是事先部署在网络中的设备,其信息存储在BS服务器上),如果鉴权失败,则BS服务器返回失败响应消息;S1102,要加入网络的主机节点从成功响应消息中获取landmark节点的IP地址,然后基于该IP地址向获取的landmark节点发送探测消息并收到响应,计算相应的RTT(RTT的计算方式通过计算收到该探测消息的响应消息的时间与发送相应的探测消息的时间之间的时间差得到的,后续计算RTT的方式均与此处类似),结合获取的RTT以及多个地标节点的GNP坐标,例如通过Simplex Downhill方法计算得到加入网络的主机节点的GNP坐标;S1103,要加入网络的主机节点向BS服务器发送探测消息以获取BS服务器的RTT,同时完成本节点的NAT类型检测(这里,本领域技术人员可以理解NAT类型检测的具体方式,例如可以参考RFC3489);S1104,要加入网络的主机节点向BS服务器发送聚类代理节点信息请求,参数为上一步获取的RTT;S1105,BS服务器根据RTT值和IP地址等拓扑信息从存储的聚类代理节点数据库中选取多个聚类代理节点作为候选,例如,BS服务器选择候选节点的标准可以为聚类代理节点到BS服务器的时延与加入网络的主机节点到BS服务器的时延相近(即,两者的差值满足一定范围,具体取值可根据网络特征选取),另外,选择标准也可以是聚类代理节点的IP地址与加入节点的IP地址的相同IP前缀尽量长,等等;S1106,BS服务器返回成功响应消息,并在该消息中携带在S1105中选取的候选聚类代理节点信息,例如,该信息可以包括候选聚类代理节点的IP地址,或者候选聚类代理节点的其它标识信息等;S1107,加入的主机节点收到响应消息,如果响应消息中候选聚类代理节点信息为空,则转到S1117;S1108,如果响应消息中候选聚类代理节点信息非空,则加入的主机节点向这些候选聚类代理节点发送探测消息;S1109,候选聚类代理节点收到探测消息后立即返回响应消息;S1110,加入的主机节点计算到多个候选聚类代理节点的时延RTT;S1111,如果没有时延RTT小于设定的聚类内时延最大值(根据网络特征取值,在现有情况下因特网上一个AS内节点间的时延RTT平均为60ms,;例如,可以将聚类内时延最大值设定为60ms),则转到S1117;S1112,如果有时延RTT小于设定的聚类内时延最大值,则将最小时延对应的聚类代理节点作为归属的聚类代理节点;S1113,向在S1112中选取的归属聚类代理节点发送加入请求消息;S1114,归属聚类代理节点根据本聚类节点数目,判断加入是否成功,例如,如果该聚类代理节点存储节点数目已满则失败,如果未满则成功,并返回响应消息;S1115,如果收到成功响应消息,加入的主机节点存储归属聚类代理节点的信息,例如IP地址信息,同时启动和聚类代理节点之间周期性的信息更新任务,本次加入过程完成;S1116,如果收到失败响应,则对剩下的候选聚类代理节点重复S1111和S1112,并且,如果重复达到一定次数,则转到S1117;S 1117,加入的主机节点向BS服务器申请生成新的聚类,自己作为该聚类的代理节点,此时,BS服务器为该节点生成新的聚类ID,同时将该节点的IP地址,GNP坐标,到BS服务器的时延RTT,节点网络状况(带宽和CPU使用情况),更新时间等存储到与聚类ID对应的数据库中,加入系统完成。
在完成节点加入的过程之后,节点可能需要进行自组织管理,以进行周期性的信息更新(该信息例如包括时延和更新时间),在本发明第一实施例的端对端覆盖网中转方法中,该节点的自组织管理过程包括主机节点和聚类代理节点之间的信息更新过程和聚类代理节点和BS服务器之间的信息更新过程。
图4是示出根据本发明第一实施例的端对端覆盖网中转方法中的主机节点和聚类代理节点之间的信息更新过程的具体示例的流程图。在上述信息更新过程中,普通主机节点和聚类代理之间定期地刷新信息,从而保证存储数据的准确性。如图4所示,上述信息更新过程包括:S1200,主机节点周期性地向附着的聚类代理节点发送信息更新消息,并设定超时定时器;S1201,聚类代理节点接收到信息更新消息后更新所存储的主机节点信息,例如主机节点到BS服务器的时延RTT和更新时间;S1202,聚类代理节点返回成功响应消息,其中,如果定时器超时主机节点仍没有收到聚类代理节点返回的成功响应消息,则该主机节点向BS服务器发送请求消息以获取新的归属聚类代理节点信息;S1203,聚类代理节点周期性地检测存储的主机节点数据库,删除没有周期性地发送更新消息的节点。
图5是示出根据本发明第一实施例的端对端覆盖网中转方法中的聚类代理节点和BS服务器之间的信息更新过程的具体示例的流程图。在上述信息更新过程中,聚类代理节点和BS服务器之间定期地刷新信息,从而保证存储数据的准确性,该信息例如主要包括节点网络状况(带宽和CPU使用情况)以及更新时间。如图5所示,上述信息更新过程包括:S1300,聚类代理节点周期性地向BS服务器发送信息更新请求消息;S1301,BS服务器接收到信息更新请求消息后更新存储的聚类代理节点信息,例如,聚类代理节点的节点网络状况和更新时间等;S1302,BS服务器返回成功响应消息;S1303,BS服务器周期性地检测存储的聚类代理节点数据库,删除没有周期性地发送信息更新请求消息的聚类代理节点。
在根据本发明第一实施例的端对端覆盖网中转方法中,进行节点的自组织管理以在主机节点与聚类代理节点之间,以及在聚类代理节点与BS服务器之间周期性地进行信息更新。但是,在本发明的其它实施例中,例如,在网络系统中的变化相对较小的环境中,可以省略上述节点的自组织管理过程,从而减少网络开销。并且,代替周期性地进行信息更新,本发明的其它实施例也可以基于其它条件来进行信息更新,例如,响应于用户或者网络管理员的预定操作或预定指令来进行信息更新,从而提高网络使用的便利度。这里,本发明的实施例并不意在进行任何限制。
图6是示出根据本发明第一实施例的端对端覆盖网中转方法中的Meridian环构建过程的具体示例的流程图。在本发明的第一实施例中,以聚类代理节点来进行meridian环的构建,从而保证meridian环上节点地理上的分散性。并且,在聚类代理节点初次加入网络时,需要首先通过BS服务器获取一批邻近聚类代理节点信息来构建meridian环结构。为了减轻网络的负载和BS服务器的压力,在本发明的第一实施例中,BS服务器返回的并非全局聚类代理节点信息。如图6所示,meridian环构建过程包括:S1400,聚类代理节点向BS服务器发送邻近聚类代理节点请求消息;S1401,BS服务器基于要构建Meridian环的聚类代理节点发送的邻近聚类代理节点请求消息,根据GNP坐标预测来计算BS服务器上存储的其他聚类代理节点到该要构建Meridian环的聚类代理节点的时延(这里,该计算所使用的参数为BS服务器上存储的其他聚类代理节点的GNP坐标和该聚类代理节点的GNP坐标,并且计算方法可以为欧式距离:d=sqrt(∑(xi1-xi2)^)这里i=1,2..n),来选取一定数量的聚类代理节点作为候选;S1402,BS服务器返回响应消息,该响应消息中携带在S1401选取的聚类代理节点信息,例如,该信息可以包括选取的聚类代理节点的IP地址、或者其他标识信息等;S1403,聚类代理节点从上步BS服务器返回的响应消息中获取得到邻近聚类代理节点信息,例如,IP地址,并向获取的这些节点发送探测消息;S1404,邻近聚类代理节点返回响应消息;S1405,聚类代理节点计算获取从发送探测消息到接收响应消息的时延RTT,然后根据RTT将这些邻近聚类代理节点信息存储到相应的环结构中,从而构建自己初始的meridian环。这里,Meridian环的具体的构建方法可以如下。首先,聚类代理节点以自己为圆心,生成多个不同半径的同心环,这些环的内半径ri=as^(i-1),外半径Ri=as^(i)(i>0),a是一个常数,s是一个倍增的因数。最内层环r0=0,R0=a。其中,具体环的个数,环上存储节点的个数,以及环之间的时延设置需要通过实际测试数据来分析得到较优值。然后,聚类代理节点按照其他聚类代理节点到其的时延,找到对应的环区间,将其他聚类代理节点信息(IP地址,GNP坐标,到本聚类代理节点的时延,更新时间等)存储到对应的环数据库中。由于meridian环的环结构的环半径成指数增长,所以每个节点能够在存储有限数目节点的基础上,更多的了解和携带整个网络拓扑的节点信息。
在上述本发明的第一实施例中,为了减轻网络的负载和BS服务器的压力,基于GNP坐标预测而获得的聚类代理节点之间的时延,来选取一定数量的聚类代理节点作为候选,但是,本领域技术人员可以理解BS服务器也可以任意选择一定数量的聚类代理节点来作为候选,或者基于其它机制进行候选的聚类代理节点的选择,如本发明的第二实施例所述,本发明的实施例并不意在对此进行任何限制。
在完成meridian环的构建之后,meridian环也可能需要进行维护更新。也就是说,每个聚类代理节点在完成自己的meridian环的构建之后,可能需要动态地实时维护以保证存储的节点时延信息的实时性。另外,由于在登录过程中,BS服务器并没有返回网络中所有聚类代理节点信息,所以环的更新维护需要及时获取当前网络中更多的邻近聚类代理节点信息,以保证在寻找中转节点时,能够覆盖更大的范围,并增大找到中转路径的概率。图7是示出根据本发明第一实施例的端对端覆盖网中转方法中的Meridian环维护更新过程的具体示例的流程图。如图7所示,该维护更新过程采用轻量级的gossip机制,包括:S1500,聚类代理节点从meridian环的每个环上随机选取一些节点作为种子节点;S1501,向在S1500选取的种子节点发送邻近节点请求消息;S1502,每个种子节点在自己环结构中随机选取一些节点;S1503,种子节点返回响应消息,该响应消息中携带S1502中选取的节点的节点信息,例如,选取的节点的IP地址,GNP坐标,到本节点时延,更新时间等;S1504,聚类代理节点基于获取的节点信息对响应消息中携带的节点进行处理,删除重复项以及与本身meridian环上节点重复的节点,将这些节点作为后备环节点;S1505,聚类代理节点向在S1504获取的后备环节点发送探测请求消息;S1506,后备环节点返回响应消息;S1507,计算从发送探测请求消息到接收响应消息的时延RTT,然后根据时延RTT找到自己meridian环结构上对应的环区间,然后将这些节点信息,例如IP地址,GNP坐标,到本节点时延,更新时间等存储到对应环的数据库中。在本发明的第一实施例中,因为环上存储的节点数目有限,需要根据时延、节点IP地址等拓扑信息以及节点选做中继节点的次数等综合信息来制定替换机制。
在上述实施例中,聚类代理节点可以定期向环结构上的节点发送探测请求,判断节点是否在线,同时根据返回的RTT调整该节点在环结构中的位置。
与上述节点的自组织管理的情况相同,在本发明的其它实施例中,例如,在网络系统中的变化相对较小的环境中,可以省略上述meridian环的维护更新过程,从而减少网络开销。并且,上述meridian环的维护更新过程可以周期性地进行的,也可以基于其它条件来进行,例如,响应于用户或者网络管理员的预定操作或预定指令来进行meridian环的维护更新,从而提高网络使用的便利度。这里,本发明的实施例并不意在进行任何限制。
图8是示出根据本发明第一实施例的端对端覆盖网中转方法中的中继节点选择过程的具体示例的流程图。在本发明的第一实施例中,中继节点的选择基于源节点和目的节点归属的聚类代理节点的meridian环信息,并结合了GNP距离预测机制,从而减少不必要的探测开销。如图8所示,中继节点选择过程包括:S1600,源节点通过自己归属的聚类代理节点查找得到目的节点的IP地址,源节点和目的节点进行消息交互,两者分别获取得到对方的GNP坐标,归属的聚类代理节点的IP地址,所处网络的NAT类型等信息。S1601,源节点和目的节点之间通过多次探测包的交互来计算缺省路径的时延RTT和丢包率。S1602,源节点向自己归属的聚类代理节点发送中继节点选择请求消息,该消息中分别携带源节点和目的节点的GNP坐标信息;S1603,源节点向目的节点归属的聚类代理节点发送中继节点选择请求消息,该消息中分别携带源节点和目的节点的GNP坐标信息;S1604,源节点归属的聚类代理节点根据上述消息中提供的目的节点坐标,通过GNP距离预测来计算自己存储的环结构中的其他聚类代理节点到目的节点的时延(计算参数为自己存储的环结构中的其他聚类代理节点的GNP坐标和目的节点的GNP坐标,计算方法为欧式距离:d=sqrt(∑(xi1-xi2)^)这里i=1,2..n)并与环结构中存储的其他聚类代理节点到本节点的实际探测时延相加以得到每条中继路径总时延,然后,删除总时延大于缺省路径时延的节点,得到一个候选节点集合,继而从中选取一定数量的节点作为候选中继节点;S1605,源节点归属的聚类代理节点返回响应消息,该消息中携带S1604中选取的候选中继节点信息;S1606,目的节点归属的聚类代理节点根据中继节点选择请求消息中所提供的源节点坐标,通过GNP距离预测来计算自己存储的环结构中的其他聚类代理节点到源节点的时延(计算参数为自己存储的环结构中的其他聚类代理节点的GNP坐标和源节点的GNP坐标的时延值,计算方法为欧式距离:d=sqrt(∑(xi1-xi2)^)这里i=1,2..n,并且计算得到的结果也是时延值)并与环结构中存储的其他聚类代理节点到本节点的实际探测时延相加以得到每条中继路径总时延,然后,删除总时延大于缺省路径时延的节点,得到一个候选节点集合,继而从中选取一定数量的节点作为候选中继节点;S1607,目的节点归属的聚类代理节点返回响应消息,该消息中携带S1606中选取的候选中继节点信息;S1608,源节点从响应消息中获取候选中继节点信息,删除重复项,得到一个候选节点集合,然后对这些中继节点对应的中继路径发起时延和丢包率探测(具体探测方式为:源节点向中继节点发送探测消息,中继节点将该消息转发给目的节点,然后反向返回响应,通过多次的消息交互能够计算得到中继路径的时延和丢包率),获取各条中继路径的时延和丢包率;S1609,源节点从S1608的候选中继节点中选取三个比缺省路径质量好的节点作为本次会话的一主二备三个中继节点,判断标准为时延和丢包率,可根据网络情况和业务需求选择以哪个条件为主。而如果通过当前获得的中继节点无法找到合适的三个节点,则重复S1602;S1610,如果S1602的重复次数达到设定阈值,且仍未找齐满足需求的一主二备三个中继节点,则从前面已经探测的节点中选取路径性能最好的节点将一主二备机制补齐;S1611,将一主二备三个中继节点信息通知给目的节点,然后对三条中继路径进行周期性地探测,获取时延和丢包率,根据网路质量变化以及设置的切换参数完成路径之间的切换。
另外,在上述中继节点选择过程中,当通过GNP距离预测选择候选中继节点时,还可以另外根据随机原则选择一些节点作为候选中继节点,以避免当网络中出现大面积故障时,所选的候选中继节点全部失效的情况。这是因为当采用GNP距离预测或者其他距离预测机制选择候选中继节点时,通常这些候选中继节点会处于地理上相对接近的位置,因此当在网络中出现大面积故障时,很可能这些候选中继节点会全部失效,从而使得无法选择中继节点。而通过另外随机选择一些候选中继节点,可以保证能够选出中继节点,从而提高根据本发明实施例的端到端覆盖网中转方法的适应性。
通过根据本发明第一实施例的端对端覆盖网中转方法,可以解决因特网网络中路由效率不佳,频繁出现拥塞以及路由失效,NAT穿越等问题,并在较小的探测开销情况下,提供较高的中转节点的查找命中率。通过采用meridian环结构的形式存储邻近节点信息,能够让每个节点在存储有限数目节点的基础上,更多的了解和携带整个网络拓扑的节点信息。并且,通过结合RTT值和IP地址因素对节点进行聚类,且仅使得聚类代理节点参与meridian环的构建,可以保证meridian环上节点地理上的分散性。另外,在选择中继节点时,通过GNP距离预测机制从主被叫的meridian环结构中筛选获取一跳候选中继节点,可以大幅度减少不必要的探测开销,并提高预测精度。
在上述本发明的第一实施例中,以结合RTT值和IP地址因素对节点进行聚类为例进行了描述,但是,在端对端网络中,还存在其它的节点聚类方法,这些节点聚类方法可以有效地支撑端对端网络路由、应用层组播、资源有效放置、感知拓扑构建等,从而极大地提高端对端网络的性能。例如,节点聚类机制还可以包括以下方案:
(1)通过根据BGP路由表前缀划分Cluster(聚类),每个节点加入网络时,通过IP地址前缀匹配完成聚类。
(2)基于路由器聚类:利用传输网络中的路由器(Router)比位于网络边缘的端节点相对稳定的特点,将P2P的覆盖网络和物理网络之间的匹配关系用端节点和路由器之间的匹配关系来表示。每个节点加入网络时,首先向网络事先选定的地标节点发送traceroute(跟踪路由)请求,通过分析traceroute记录的时延信息,就能够找出位于区域之间的路由器,然后根据这些路由器实现聚类。
并且,在上述本发明的第一实施例中,以通过GNP距离预测机制从主被叫的meridian环结构中筛选获取一跳候选中继节点为例进行了描述,但是,还可以基于其它距离预测方案来从Meridian环结构中选择中继节点。实际上,网络距离预测的主要任务就是根据有限的测量信息对实际网络中任意两个节点间的时延值进行推测,进而向用户提供相关的信息。例如,距离预测机制还可以包括以下的方案:
IDMaps:IDMaps是最早提出的一种大规模网络距离预测机制,通过集中服务为网络节点提供距离预测服务。该机制中包括两个核心内容:地址前缀块(address prefix,简称AP)以及Tracer节点。每个AP代表一个具有相同IP地址前缀的节点集合,Tracer节点则是网络中部署的测量节点,并保证每个地址块至少有一个Tracer与其接近。不同的Tracer节点周期性地互相测量相互之间的距离,同时每个Tracer节点周期性地测量到与其邻近AP的距离。所有这些测量信息都被收集到某个集中式服务器中。这样任意两台主机间的距离就等于两台主机所在AP到各自Tracer节点间距离与两个相关Tracer节点间距离之和。
Lighthouse:该方法采用坐标变换的方式计算网络坐标。系统中首先设定一个全局坐标基,新加入的节点首先通过随机探测K+1(K为坐标的维度)地标获得相应距离信息,并通过Gram-Schmidt过程计算其全局坐标基,然后通过局部和全局坐标基的转换矩阵来计算新节点的全局坐标。系统中任意两个节点之间的距离通过全局坐标计算。
Virtual landmarks:使用主成分分析法(PCA)提取网络的拓扑信息以降低嵌入空间维数,通过矩阵乘法运算获取节点在嵌入空间中的坐标。该算法需要首先部署N个基准节点构成基准节点集,基准节点之间互相测量到达彼此的距离以形成一N*N的距离矩阵。然后采用PCA技术消除相似向量,减少维度,计算变换矩阵。当一个节点加入系统时,首先测量到所有基准节点的距离以形成一个距离向量,然后根据变换矩阵将该向量映射到新的空间中,映射后的向量值即为新坐标。
Vivaldi:采用启发式的坐标调整过程,其将空间嵌入问题模拟为弹簧弹性势能最小化问题。系统中每个节点都有一个网络坐标x和本地误差e。节点在加入系统时随机测量到系统中一组节点的距离,根据测量值确定自己的初始坐标,然后通过多次更新使得网络坐标x和本地误差e不断接近理想值。在每一次更新中,节点首先测量它到某个邻居节点间的实际时延,然后通过测量的时延对当前的网络坐标x和本地误差e的值进行调整。
图9是示出根据本发明第二实施例的端对端覆盖网中转方法的示意性流程图。如图9所示,根据本发明第二实施例的端对端覆盖网中转方法包括步骤:S2000,将节点加入网络并执行节点聚类,以将一部分节点选为聚类代理节点,而其它节点作为归属于所述聚类代理节点的主机节点;S2001,对于每个聚类代理节点,以其它聚类代理节点为基础构建自己的Meridian环结构;和S2002,从Meridian环结构上的节点中选择从源节点到目的节点的中继节点。也就是说,在根据本发明第二实施例的端对端覆盖网中转方法中,结合了节点聚类和构建meridian环的特征。
在图9所示的根据本发明第二实施例的端对端覆盖网中转方法中,其节点聚类的步骤和以聚类代理节点构建Meridian环结构的步骤均可以与上述根据本发明第一实施例的端对端覆盖网中转方法中的相应步骤相同。并且,与上述根据本发明第一实施例的端对端覆盖网中转方法类似,在根据本发明第二实施例的端对端覆盖网中转方法中,也可以进行节点自组织管理和Meridian环维护更新,并且其具体过程与上述相同,在此为了简明的原因便不再赘述。此外,本领域技术人员可以理解,上述根据本发明第一实施例的端对端覆盖网中转方法中的其它方面也可以相同地应用于根据本发明第二实施例的端对端覆盖网中转方法,本发明的实施例并不意在对此进行任意限制。
如上所述,通过在节点加入网络时进行聚类,并仅以聚类代理节点参与构建Meridian环,可以保证Meridian环上节点地理上的分散性,从而避免在网络中出现大面积故障时候选节点全部失效的情况,并提高候选节点的选择效率。并且,通过采用meridian环结构的形式存储邻近节点信息,能够让每个节点在存储有限数目节点的基础上,更多的了解和携带整个网络拓扑的节点信息。
与上述本发明的第一实施例相比,在根据本发明第二实施例的端对端覆盖网中转方法中,并不限定从Meridian环结构上的节点选取中继节点的具体方法,这使得可以基于现有的Meridian算法来选择适当的中继节点,从而减少对系统的改动,促进与现有系统的兼容性。
图10是示出根据本发明第三实施例的端对端覆盖网中转方法的示意性流程图。如图10所示,根据本发明第三实施例的端对端覆盖网中转方法包括步骤:S3000,将节点加入网络并执行节点聚类,以将一部分节点选为聚类代理节点,而其它节点作为归属于所述聚类代理节点的主机节点,其中,所述节点在加入网络时计算出距离预测机制所需的信息;S3001,基于距离预测机制从所述聚类代理节点中选择从源节点到目的节点的中继节点。也就是说,在根据本发明第三实施例的端对端覆盖网中转方法中,结合了节点聚类和距离预测的特征。
在图10所示的根据本发明第三实施例的端对端覆盖网中转方法中,其节点聚类的步骤和基于距离预测机制选择中继节点的步骤均可以与上述根据本发明第一实施例的端对端覆盖网中转方法中的相应步骤相同。并且,与上述根据本发明第一实施例的端对端覆盖网中转方法类似,在根据本发明第三实施例的端对端覆盖网中转方法中,也可以进行节点自组织管理,并且其具体过程与上述相同,在此为了简明的原因便不再赘述。此外,本领域技术人员可以理解,上述根据本发明第一实施例的端对端覆盖网中转方法中的其它方面也可以相同地应用于根据本发明第三实施例的端对端覆盖网中转方法,本发明的实施例并不意在对此进行任意限制。
如上所述,由于源和目的节点归属的聚类代理节点存储有其它聚类代理节点的信息,因此,通过采用距离预测机制从源和目的节点归属的聚类代理节点存储的邻近聚类代理节点数据中筛选获取一条候选中继节点,可以大幅度地减少不必要的探测开销,从而提高预测精度。
并且,与上述本发明的第一实施例相比,在根据本发明第三实施例的端对端覆盖网中转方法中,并不限定要以聚类代理节点构建Meridian环结构,因此,根据本发明第三实施例的端对端覆盖网中转方法也可以应用于除Meridian算法以外的其它算法,例如,ASAP算法,从而提高根据本发明实施例的端对端覆盖网中转方法的适应性。
在上述根据本发明的第一到第三实施例中,均包含节点在加入网络时进行聚类以产生聚类代理节点的过程,之后再从聚类代理节点中选择中继节点。这里,本领域技术人员可以理解,在节点加入端对端覆盖网时,例如,如现有Meridian算法中那样,可以不进行节点聚类,而是直接选择适当的中继节点。
图11是示出根据本发明第四实施例的端对端覆盖网中转方法的示意性流程图。如图11所示,根据本发明第四实施例的端对端覆盖网中转方法包括步骤:S4000,节点加入网络,以构建Meridian环结构,其中所述节点在加入网络时计算出距离预测机制所需的信息;S4001,基于距离预测机制从所述Meridian环结构的节点中选择从源节点到目的节点的中继节点。也就是说,在本发明第四实施例的端对端覆盖网中转方法中,结合了构建meridian环和距离预测的特征。
这里,在图11所示的根据本发明第四实施例的端对端覆盖网中转方法中,基于距离预测机制从Meiridan环结构的节点中选择中继节点的步骤均可以与上述根据本发明第一实施例的端对端覆盖网中转方法中的相应步骤相同。并且,与上述根据本发明第一实施例的端对端覆盖网中转方法类似,在根据本发明第四实施例的端对端覆盖网中转方法中,也可以进行Meridian环的维护更新,并且其具体过程与上述相同,在此为了简明的原因便不再赘述。此外,本领域技术人员可以理解,上述根据本发明第一实施例的端对端覆盖网中转方法中的其它方面也可以相同地应用于根据本发明第四实施例的端对端覆盖网中转方法,本发明的实施例并不意在对此进行任意限制。
如上所述,通过采用距离预测机制从Meridian环结构上的节点中筛选获取一条候选中继节点,可以大幅度地减少不必要的探测开销,从而提高预测精度。
另外,通过在现有Meridian算法中直接应用距离预测机制,可以提高根据本发明实施例的端对端覆盖网中转方法与采用现有Meridian算法的网络的兼容性。
如上所述,在本发明的实施例中,通过将节点聚类、meridian环和距离预测三种技术相互结合地使用,从而提高中继节点选择的精确性。其中,通过节点加入网络时进行聚类,只有聚类代理节点参与中继节点的选择,可以保证候选的中继节点在地理上的分散性,从而防止在网络中出现大面积故障时候选节点全部失效的情况,并提高候选节点的选择效率;并且,通过距离预测机制从候选的中继节点中筛选获取一跳候选中继节点,可以大幅度减少不必要的探测开销,从而提高预测精度。
图12是示出根据本发明第五实施例的端对端覆盖网中转方法的示意性流程图。如图12所示,根据本发明第五实施例的端对端覆盖网中转方法包括步骤:S5000,节点加入网络,其中所述节点在加入网络时计算出距离预测机制所需的信息;S5001,基于距离预测机制选择出从源节点到目的节点的中继节点。也就是说,在根据本发明第五实施例的端对端覆盖网中转方法中,仅采用距离预测的特征来选择中继节点。
这里,节点加入网络的过程与基于距离预测机制选择中继节点的过程可以与上述根据本发明第一实施例的端对端覆盖网中转方法中的相应步骤相同。并且,与上述根据本发明第一实施例的端对端覆盖网中转方法类似,在根据本发明第五实施例的端对端覆盖网中转方法中,也可以进行节点的自组织管理以更新距离预测机制所需的信息,并且其具体过程与上述相同,在此为了简明的原因便不再赘述。此外,本领域技术人员可以理解,上述根据本发明第一实施例的端对端覆盖网中转方法中的其它方面也可以相同地应用于根据本发明第五实施例的端对端覆盖网中转方法,本发明的实施例并不意在对此进行任意限制。
通过在端对端覆盖网中采用距离预测机制来选择中继节点,可以避免如现有技术当中的TIV现象,从而可以以时延更小的替代路径来代替从源节点到目的节点的直接路径,建立时延更短、效率更高且稳定性更强的替代路由,实现端到端的高性能通信。
根据本发明实施例的另一方面,还提供了端对端覆盖网中转系统。下面,将参考图13到图17描述根据本发明第一实施例到第五实施例的端对端覆盖网中转系统。
图13是示出根据本发明第一实施例的端对端覆盖网中转系统的示意性框图。根据本发明第一实施例的端对端覆盖网应用于包括多个主机节点和引导服务器的端对端覆盖网,且用于寻找从源主机节点到目的主机节点的中继节点。如图13所示,根据本发明第一实施例的端对端覆盖网中转系统100包括:通信单元101,用于使得主机节点与引导服务器通信以获得坐标信息,该坐标信息用于基于距离预测机制来计算两个主机节点之间的时延;聚类单元102,用于执行主机节点的聚类,以将一部分主机节点作为聚类代理节点,而其它主机节点作为归属于聚类代理节点的主机节点;以及选择单元103,用于基于距离预测机制从聚类代理节点中选择从源主机节点到目的主机节点的中继节点。
在上述端对端覆盖网中转系统100中,可以进一步包括:构建单元(未示出),连接在聚类单元102和选择单元103之间,用于对于每个聚类代理节点,以其它聚类代理节点为基础构建自己的Meridian环结构;且选择单元103具体用于基于距离预测机制从Meridian环结构上的聚类代理节点中选择从源主机节点到目的主机节点的中继节点。
在上述端对端覆盖网中转系统100中,进一步包括:第一更新单元(未示出),用于在主机节点和聚类代理节点之间更新以下信息的至少其中之一:主机节点的网络状况、主机节点到引导服务器的时延和主机节点的更新时间;以及第二更新单元(未示出),用于在聚类代理节点和BS服务器之间更新以下信息的至少其中之一:聚类代理节点的网络状况、聚类代理节点到引导服务器的时延和聚类代理节点的更新时间。
在上述端对端覆盖网中转系统100中,进一步包括:维护更新单元(未示出),用于使得每个聚类代理节点维护并更新其自己的Meridian环结构,其中,每个代理节点维护并更新以下信息的至少其中之一:Meridian环结构上其它聚类代理节点的IP地址、坐标信息、到本聚类代理节点的时延和更新时间。
在上述端对端覆盖网中转系统100中,选择单元103具体用于:基于距离预测机制从源主机节点所属的聚类代理节点的Meridian环结构上的聚类代理节点以及目的主机节点所属的聚类代理节点的Meridian环结构上的聚类代理节点中选择从源主机节点到目的主机节点的中继节点。
在上述端对端覆盖网中转系统100中,选择单元103具体用于:使得源主机节点所属的聚类代理节点基于目的主机节点的坐标,通过距离预测计算其自己的Meridian环结构上的各个聚类代理节点到目的主机节点的时延,并分别与所存储的该Meridian环结构上的各个聚类代理节点到源主机节点所属的聚类代理节点的时延相加以得到与各个聚类代理节点相关的各条中继路径的总时延;选择与总时延小于预定阈值的中继路径相关的聚类代理节点作为候选中继节点;对与候选中继节点相关的中继路径进行时延和丢包率检测,并基于时延和丢包率检测结果选择与路径质量最好的中继路径相关的候选中继节点作为从源主机节点到目的主机节点的中继节点。
在上述端对端覆盖网中转系统100中,选择单元103进一步用于:在与总时延小于预定阈值的中继路径相关的聚类代理节点之外,另外随机选择一些聚类代理节点作为候选中继节点。
在上述端对端覆盖网中转系统100中,聚类单元102具体用于:基于主机节点到引导服务器的往返时延和主机节点的IP地址对主机节点进行聚类。
在上述端对端覆盖网中转系统100中,距离预测机制是GNP距离预测,且用于基于距离预测机制计算两个主机节点之间的时延的坐标信息是GNP坐标,端对端覆盖网中转系统100进一步包括:注册请求单元(未示出),用于使得主机节点向引导服务器发送注册请求;鉴权单元(未示出),与注册请求单元和通信单元101连接,用于使得引导服务器对主机节点进行鉴权,并在鉴权成功的情况下向主机节点所述发送成功响应消息,成功响应消息中包含多个地标节点的信息,其中,地标节点是事先部署在网络中的其信息存储在引导服务器上的设备,且地标节点的信息至少包括地标节点的IP地址或GNP坐标。
在上述端对端覆盖网中转系统100中,构建单元具体用于:使得引导服务器通过采用GNP距离预测计算每个聚类代理节点与其它聚类代理节点之间的时延,并基于该时延对于每个聚类代理节点选择一定数量的候选聚类代理节点;使得每个聚类代理节点基于与其它聚类代理节点的往返时延,将其它聚类代理节点信息存储到其自己的Meridian环结构中,从而构建其自己的Meridian环结构。
在上述端对端覆盖网中转系统100中,选择单元103具体用于:使得源主机节点向自己所属的聚类代理节点和目的主机节点所属的聚类代理节点发送中继节点选择请求消息,该中继节点选择请求消息中包含源主机节点和目的主机节点的GNP坐标;使得源主机节点所属的聚类代理节点基于目的主机节点的GNP坐标,通过GNP距离预测计算其自己的Meridian环结构上的各个聚类代理节点到目的节点的时延,并与其自己的Meridian环结构上的各个聚类代理节点到源主机节点的时延相加以得到每条中继路径的总时延;选择总时延小于等于预定阈值的中继路径所对应的聚类代理节点作为第一组候选中继节点;使得目的主机节点所属的聚类代理节点基于源主机节点的GNP坐标,通过GNP距离预测计算其自己的Meridian环结构上的各个聚类代理节点到源主机节点的时延,并与其自己的Meridian环结构上的各个聚类代理节点到目的主机节点的时延相加以得到每条中继路径的总时延;选择总时延小于等于预定阈值的中继路径所对应的聚类代理节点作为第二组候选中继节点;对于第一组候选中继节点和第二组候选中继节点所对应的中继路径进行时延和丢包检测,并基于时延和丢包检测结果选择路径质量最好的中继路径所对应的中继节点作为从源节点到目的节点的中继节点。
图14是示出根据本发明第二实施例的端对端覆盖网中转系统的示意性框图。如图14所示,根据本发明第二实施例的端对端覆盖网中转系统200包括:节点加入和聚类单元201,配置为将节点加入网络并执行节点聚类,以将一部分节点设置为聚类代理节点,而将其它节点设置为归属于所述聚类代理节点的主机节点;Meridian环构建单元202,配置为对于每个聚类代理节点,以其它聚类代理节点为基础构建自己的Meridian环结构;和中继节点选择单元203,配置为从Meridian环结构上的节点中选择从源节点到目的节点的中继节点。
图15是示出根据本发明第三实施例的端对端覆盖网中转系统的示意性框图。如图15所示,根据本发明第三实施例的端对端覆盖网中转系统300包括:节点加入和聚类单元301,配置为将节点加入网络并执行节点聚类,以将一部分节点设置为聚类代理节点,而将其它节点设置为归属于所述聚类代理节点的主机节点,其中,所述节点加入和聚类单元301在将节点加入网络时计算出距离预测机制所需的信息;和中继节点选择单元302,配置为基于距离预测机制从所述聚类代理节点中选择从源节点到目的节点的中继节点。
图16是示出根据本发明第四实施例的端对端覆盖网中转系统的示意性框图。如图16所示,根据本发明第四实施例的端对端覆盖网中转系统400包括:Meridian环构建单元401,配置为将节点加入网络以构建Meridian环结构,其中所述Meridian环构建单元401在将节点加入网络时计算出距离预测机制所需的信息;和中继节点选择单元402,配置为基于距离预测机制从所述Meridian环结构的节点中选择从源节点到目的节点的中继节点。
图17是示出根据本发明第五实施例的端对端覆盖网中转系统的示意性框图。如图17所示,根据本发明第五实施例的端对端覆盖网中转系统500包括:节点加入单元501,配置为将节点加入网络,其中所述节点加入单元501在将节点加入网络时计算出距离预测机制所需的信息;和中继节点选择单元502,配置为基于距离预测机制选择出从源节点到目的节点的中继节点。
综上所述,通过根据本发明实施例的端对端覆盖网中转方法和系统,可以在端对端覆盖网中快速发现有效的中继节点,从而建立时延更短、效率更高且稳定性更强的替代路由,实现端到端的高性能通信。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (22)
1.一种端对端覆盖网中转方法,所述端对端覆盖网中包括多个主机节点和引导服务器,所述方法用于寻找从源主机节点到目的主机节点的中继节点,所述方法包括:
所述主机节点与引导服务器通信以获得坐标信息,所述坐标信息用于基于距离预测机制来计算两个主机节点之间的时延;
执行所述主机节点的聚类,以将一部分主机节点作为聚类代理节点,而其它主机节点作为归属于所述聚类代理节点的主机节点;
基于距离预测机制从所述聚类代理节点中选择从源主机节点到目的主机节点的中继节点。
2.如权利要求1所述的方法,在所述执行所述主机节点的聚类的步骤之后和所述基于距离预测机制从所述聚类代理节点中选择从源主机节点到目的主机节点的中继节点的步骤之前进一步包括:
对于每个聚类代理节点,以其它聚类代理节点为基础构建自己的Meridian环结构;
且所述基于距离预测机制从所述聚类代理节点中选择从源主机节点到目的主机节点的中继节点的步骤具体为:
基于距离预测机制从所述Meridian环结构上的聚类代理节点中选择从源主机节点到目的主机节点的中继节点。
3.如权利要求2所述的方法,进一步包括
在主机节点和聚类代理节点之间更新以下信息的至少其中之一:主机节点的网络状况、主机节点到引导服务器的时延和主机节点的更新时间;以及
在聚类代理节点和BS服务器之间更新以下信息的至少其中之一:聚类代理节点的网络状况、聚类代理节点到引导服务器的时延和聚类代理节点的更新时间。
4.如权利要求2所述的方法,进一步包括:
由每个聚类代理节点维护并更新其自己的Meridian环结构,其中,每个代理节点维护并更新以下信息的至少其中之一:Meridian环结构上其它聚类代理节点的IP地址、坐标信息、到本聚类代理节点的时延和更新时间。
5.如权利要求2所述的方法,其中,所述基于距离预测机制从Meridian环结构上的聚类代理节点中选择从源主机节点到目的主机节点的中继节点的步骤具体包括:
基于距离预测机制从源主机节点所属的聚类代理节点的Meridian环结构上的聚类代理节点以及目的主机节点所属的聚类代理节点的Meridian环结构上的聚类代理节点中选择从源主机节点到目的主机节点的中继节点。
6.如权利要求5所述的方法,其中,所述基于距离预测机制从源主机节点所属的聚类代理节点的Meridian环结构上的聚类代理节点以及目的节点所属的聚类代理节点的Meridian环结构上的聚类代理节点中选择从源主机节点到目的主机节点的中继节点的步骤具体包括:
所述源主机节点所属的聚类代理节点基于目的主机节点的坐标,通过距离预测计算其自己的Meridian环结构上的各个聚类代理节点到目的主机节点的时延,并分别与所存储的该Meridian环结构上的各个聚类代理节点到所述源主机节点所属的聚类代理节点的时延相加以得到与各个聚类代理节点相关的各条中继路径的总时延;
选择与总时延小于预定阈值的中继路径相关的聚类代理节点作为候选中继节点;
对与候选中继节点相关的中继路径进行时延和丢包率检测,并基于时延和丢包率检测结果选择与路径质量最好的中继路径相关的候选中继节点作为从源主机节点到目的主机节点的中继节点。
7.如权利要求6所述的方法,其中,所述选择与总时延小于预定阈值的中继路径相关的聚类代理节点作为候选中继节点的步骤进一步包括:
在与总时延小于预定阈值的中继路径相关的聚类代理节点之外,另外随机选择一些聚类代理节点作为候选中继节点。
8.如权利要求2到7中任意一项所述的方法,其中,所述执行所述主机节点的聚类的步骤具体包括:
基于所述主机节点到引导服务器的往返时延和所述主机节点的IP地址对所述主机节点进行聚类。
9.如权利要求2到7中任意一项所述的方法,其中,所述距离预测机制是GNP距离预测,且所述用于基于距离预测机制计算两个主机节点之间的时延的坐标信息是GNP坐标,
所述主机节点与引导服务器通信以计算用于基于距离预测机制计算两个主机节点之间的时延的坐标信息的步骤之前进一步包括:
所述主机节点向所述引导服务器发送注册请求;
所述引导服务器对所述主机节点进行鉴权,并在鉴权成功的情况下向所述主机节点所述发送成功响应消息,所述成功响应消息中包含多个地标节点的信息,其中,所述地标节点是事先部署在网络中的其信息存储在引导服务器上的设备,且所述地标节点的信息至少包括所述地标节点的IP地址或GNP坐标。
10.如权利要求9所述的方法,其中,所述对于每个聚类代理节点以其它聚类代理节点为基础构建自己的Meridian环结构的步骤包括:
引导服务器通过采用GNP距离预测计算每个聚类代理节点与其它聚类代理节点之间的时延,并基于所述时延对于每个聚类代理节点选择一定数量的候选聚类代理节点;
每个聚类代理节点基于与其它聚类代理节点的往返时延,将其它聚类代理节点信息存储到其自己的Meridian环结构中,从而构建其自己的Meridian环结构。
11.如权利要求9所述的方法,其中,所述基于距离预测机制从Meridian环结构上的聚类代理节点中选择从源主机节点到目的主机节点的中继节点的步骤具体包括:
源主机节点向自己所属的聚类代理节点和目的主机节点所属的聚类代理节点发送中继节点选择请求消息,所述中继节点选择请求消息中包含所述源主机节点和所述目的主机节点的GNP坐标;
所述源主机节点所属的聚类代理节点基于所述目的主机节点的GNP坐标,通过GNP距离预测计算其自己的Meridian环结构上的各个聚类代理节点到所述目的主机节点的时延,并与其自己的Meridian环结构上的各个聚类代理节点到所述源主机节点的时延相加以得到每条中继路径的总时延;
选择总时延小于等于预定阈值的中继路径所对应的聚类代理节点作为第一组候选中继节点;
所述目的主机节点所属的聚类代理节点基于所述源主机节点的GNP坐标,通过GNP距离预测计算其自己的Meridian环结构上的各个聚类代理节点到源主机节点的时延,并与其自己的Meridian环结构上的各个聚类代理节点到所述目的主机节点的时延相加以得到每条中继路径的总时延;
选择总时延小于等于预定阈值的中继路径所对应的聚类代理节点作为第二组候选中继节点;
对于第一组候选中继节点和第二组候选中继节点所对应的中继路径进行时延和丢包检测,并基于时延和丢包检测结果选择路径质量最好的中继路径所对应的中继节点作为从源主机节点到目的主机节点的中继节点。
12.一种端对端覆盖网中转系统,所述端对端覆盖网中包括多个主机节点和引导服务器,所述系统用于寻找从源主机节点到目的主机节点的中继节点,所述端对端覆盖网中转系统包括:
通信单元,用于使得所述主机节点与引导服务器通信以获得坐标信息,所述坐标信息用于基于距离预测机制来计算两个主机节点之间的时延;
聚类单元,用于执行所述主机节点的聚类,以将一部分主机节点作为聚类代理节点,而其它主机节点作为归属于所述聚类代理节点的主机节点;
选择单元,用于基于距离预测机制从所述聚类代理节点中选择从源主机节点到目的主机节点的中继节点。
13.如权利要求12所述的端对端覆盖网中转系统,进一步包括:
构建单元,连接在所述聚类单元和所述选择单元之间,用于对于每个聚类代理节点,以其它聚类代理节点为基础构建自己的Meridian环结构;
且所述选择单元具体用于基于距离预测机制从所述Meridian环结构上的聚类代理节点中选择从源主机节点到目的主机节点的中继节点。
14.如权利要求13所述的端对端覆盖网中转系统,进一步包括
第一更新单元,用于在主机节点和聚类代理节点之间更新以下信息的至少其中之一:主机节点的网络状况、主机节点到引导服务器的时延和主机节点的更新时间;以及
第二更新单元,用于在聚类代理节点和BS服务器之间更新以下信息的至少其中之一:聚类代理节点的网络状况、聚类代理节点到引导服务器的时延和聚类代理节点的更新时间。
15.如权利要求13所述的端对端覆盖网中转系统,进一步包括:
维护更新单元,用于使得每个聚类代理节点维护并更新其自己的Meridian环结构,其中,每个代理节点维护并更新以下信息的至少其中之一:Meridian环结构上其它聚类代理节点的IP地址、坐标信息、到本聚类代理节点的时延和更新时间。
16.如权利要求13所述的端对端覆盖网中转系统,其中,所述选择单元具体用于:
基于距离预测机制从源主机节点所属的聚类代理节点的Meridian环结构上的聚类代理节点以及目的主机节点所属的聚类代理节点的Meridian环结构上的聚类代理节点中选择从源主机节点到目的主机节点的中继节点。
17.如权利要求16所述的端对端覆盖网中转系统,其中,所述选择单元具体用于:
使得所述源主机节点所属的聚类代理节点基于目的主机节点的坐标,通过距离预测计算其自己的Meridian环结构上的各个聚类代理节点到目的主机节点的时延,并分别与所存储的该Meridian环结构上的各个聚类代理节点到所述源主机节点所属的聚类代理节点的时延相加以得到与各个聚类代理节点相关的各条中继路径的总时延;
选择与总时延小于预定阈值的中继路径相关的聚类代理节点作为候选中继节点;
对与候选中继节点相关的中继路径进行时延和丢包率检测,并基于时延和丢包率检测结果选择与路径质量最好的中继路径相关的候选中继节点作为从源主机节点到目的主机节点的中继节点。
18.如权利要求17所述的端对端覆盖网中转系统,其中,所述选择单元进一步用于:
在与总时延小于预定阈值的中继路径相关的聚类代理节点之外,另外随机选择一些聚类代理节点作为候选中继节点。
19.如权利要求13到18中任意一项所述的端对端覆盖网中转系统,其中,所述聚类单元具体用于:
基于所述主机节点到引导服务器的往返时延和所述主机节点的IP地址对所述主机节点进行聚类。
20.如权利要求13到18中任意一项所述的端对端覆盖网中转系统,其中,所述距离预测机制是GNP距离预测,且所述用于基于距离预测机制计算两个主机节点之间的时延的坐标信息是GNP坐标,
所述端对端覆盖网中转系统进一步包括:
注册请求单元,用于使得所述主机节点向所述引导服务器发送注册请求;
鉴权单元,与所述注册请求单元和所述通信单元连接,用于使得所述引导服务器对所述主机节点进行鉴权,并在鉴权成功的情况下向所述主机节点所述发送成功响应消息,所述成功响应消息中包含多个地标节点的信息,其中,所述地标节点是事先部署在网络中的其信息存储在引导服务器上的设备,且所述地标节点的信息至少包括所述地标节点的IP地址或GNP坐标。
21.如权利要求20所述的端对端覆盖网中转系统,其中,所述构建单元具体用于:
使得引导服务器通过采用GNP距离预测计算每个聚类代理节点与其它聚类代理节点之间的时延,并基于所述时延对于每个聚类代理节点选择一定数量的候选聚类代理节点;
使得每个聚类代理节点基于与其它聚类代理节点的往返时延,将其它聚类代理节点信息存储到其自己的Meridian环结构中,从而构建其自己的Meridian环结构。
22.如权利要求20所述的端对端覆盖网中转系统,其中,所述选择单元具体用于:
使得源主机节点向自己所属的聚类代理节点和目的主机节点所属的聚类代理节点发送中继节点选择请求消息,所述中继节点选择请求消息中包含所述源主机节点和所述目的主机节点的GNP坐标;
使得所述源主机节点所属的聚类代理节点基于所述目的主机节点的GNP坐标,通过GNP距离预测计算其自己的Meridian环结构上的各个聚类代理节点到所述目的主机节点的时延,并与其自己的Meridian环结构上的各个聚类代理节点到所述源主机节点的时延相加以得到每条中继路径的总时延;
选择总时延小于等于预定阈值的中继路径所对应的聚类代理节点作为第一组候选中继节点;
使得所述目的主机节点所属的聚类代理节点基于所述源主机节点的GNP坐标,通过GNP距离预测计算其自己的Meridian环结构上的各个聚类代理节点到源主机节点的时延,并与其自己的Meridian环结构上的各个聚类代理节点到所述目的主机节点的时延相加以得到每条中继路径的总时延;
选择总时延小于等于预定阈值的中继路径所对应的聚类代理节点作为第二组候选中继节点;
对于第一组候选中继节点和第二组候选中继节点所对应的中继路径进行时延和丢包检测,并基于时延和丢包检测结果选择路径质量最好的中继路径所对应的中继节点作为从源主机节点到目的主机节点的中继节点。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2012/071027 WO2012092899A2 (zh) | 2012-02-10 | 2012-02-10 | 端到端覆盖网中转方法和系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102714632A true CN102714632A (zh) | 2012-10-03 |
Family
ID=46457758
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2012800001963A Pending CN102714632A (zh) | 2012-02-10 | 2012-02-10 | 端到端覆盖网中转方法和系统 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN102714632A (zh) |
WO (1) | WO2012092899A2 (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104079659A (zh) * | 2014-07-14 | 2014-10-01 | 清华大学 | 一种基于随机代理的位置服务匿名查询系统及其使用方法 |
CN107689970A (zh) * | 2016-08-03 | 2018-02-13 | 中国移动通信集团湖北有限公司 | 一种选择最优测速服务器的方法及装置 |
CN108028781A (zh) * | 2015-09-25 | 2018-05-11 | 英特尔公司 | 用于网络往返时间估计的技术 |
CN109447177A (zh) * | 2018-11-12 | 2019-03-08 | 南京中孚信息技术有限公司 | 账号聚类方法、装置和服务器 |
CN113660158A (zh) * | 2021-08-05 | 2021-11-16 | 北京网聚云联科技有限公司 | Overlay虚拟链路动态路由的调度方法、服务器及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101924690A (zh) * | 2009-06-10 | 2010-12-22 | 华为技术有限公司 | 一种数据路由方法及设备 |
CN101945127A (zh) * | 2010-09-10 | 2011-01-12 | 华中科技大学 | 一种VoIP系统中的语音动态中转方法 |
CN102143290A (zh) * | 2010-02-03 | 2011-08-03 | 中兴通讯股份有限公司 | 一种对等网络中网络电话业务的中转节点选择方法及系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3013832B2 (ja) * | 1998-01-09 | 2000-02-28 | 日本電気株式会社 | Atmマルチキャストシステム |
CN102300281B (zh) * | 2011-09-14 | 2014-03-05 | 长安大学 | 一种基于无线传感网络的桥梁状态监测路由方法 |
-
2012
- 2012-02-10 CN CN2012800001963A patent/CN102714632A/zh active Pending
- 2012-02-10 WO PCT/CN2012/071027 patent/WO2012092899A2/zh active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101924690A (zh) * | 2009-06-10 | 2010-12-22 | 华为技术有限公司 | 一种数据路由方法及设备 |
CN102143290A (zh) * | 2010-02-03 | 2011-08-03 | 中兴通讯股份有限公司 | 一种对等网络中网络电话业务的中转节点选择方法及系统 |
CN101945127A (zh) * | 2010-09-10 | 2011-01-12 | 华中科技大学 | 一种VoIP系统中的语音动态中转方法 |
Non-Patent Citations (3)
Title |
---|
姜浩: "对等网络中路由中继结点发现机制的研究", 《中国优秀硕士学位论文全文数据库信息科技辑》, 15 May 2009 (2009-05-15) * |
温安宇: "一种基于聚类的路由中继节点选择算法", 《2010 ASIA-PACIFIC CONFERENCE ON INFORMATION NETWORK AND DIGITAL CONTENT SECURITY (2010APCID)》, 31 December 2010 (2010-12-31) * |
邢长友 等: "网络距离预测技术", 《软件学报》, vol. 20, no. 9, 30 September 2009 (2009-09-30), pages 2470 - 2482 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104079659A (zh) * | 2014-07-14 | 2014-10-01 | 清华大学 | 一种基于随机代理的位置服务匿名查询系统及其使用方法 |
CN104079659B (zh) * | 2014-07-14 | 2017-06-13 | 清华大学 | 一种基于随机代理的位置服务匿名查询系统及其使用方法 |
CN108028781A (zh) * | 2015-09-25 | 2018-05-11 | 英特尔公司 | 用于网络往返时间估计的技术 |
CN108028781B (zh) * | 2015-09-25 | 2022-03-29 | 英特尔公司 | 用于网络往返时间估计的技术 |
CN107689970A (zh) * | 2016-08-03 | 2018-02-13 | 中国移动通信集团湖北有限公司 | 一种选择最优测速服务器的方法及装置 |
CN109447177A (zh) * | 2018-11-12 | 2019-03-08 | 南京中孚信息技术有限公司 | 账号聚类方法、装置和服务器 |
CN109447177B (zh) * | 2018-11-12 | 2020-12-18 | 南京中孚信息技术有限公司 | 账号聚类方法、装置和服务器 |
CN113660158A (zh) * | 2021-08-05 | 2021-11-16 | 北京网聚云联科技有限公司 | Overlay虚拟链路动态路由的调度方法、服务器及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2012092899A3 (zh) | 2013-01-10 |
WO2012092899A2 (zh) | 2012-07-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Wanalertlak et al. | Behavior-based mobility prediction for seamless handoffs in mobile wireless networks | |
Wang et al. | A survey on geographic routing protocols in delay/disruption tolerant networks | |
Whitbeck et al. | HYMAD: Hybrid DTN-MANET routing for dense and highly dynamic wireless networks | |
Li et al. | Latency estimation for fog-based internet of things | |
CN102318288B (zh) | 节点排序与选取方法、装置及系统 | |
Iwanicki et al. | On hierarchical routing in wireless sensor networks | |
CN102714632A (zh) | 端到端覆盖网中转方法和系统 | |
Khan et al. | Saving: Socially aware vehicular information-centric networking | |
US7280519B1 (en) | Dynamic metropolitan area mobile network | |
AU2011336056A1 (en) | Communication system, control device, communication method and program | |
Hagenauer et al. | Parked cars as virtual network infrastructure: Enabling stable V2I access for long-lasting data flows | |
CN109547348A (zh) | 一种通信、路由建立方法和装置 | |
Bravo-Torres et al. | Optimizing reactive routing over virtual nodes in VANETs | |
Li et al. | Improving routing in networks of Unmanned Aerial Vehicles: Reactive‐Greedy‐Reactive | |
Maryam et al. | Mitigating broadcast storm in interest/data packet forwarding in vehicular content centric networking | |
CN108683445A (zh) | 一种飞行器编队分层入网管理方法及系统 | |
Mitra et al. | Efficient group communications in location aware mobile ad-hoc networks | |
Fazio et al. | IP address autoconfiguration in ad hoc networks: Design, implementation and measurements | |
Vaghela et al. | Vehicular parking space discovery with agent approach | |
Chu et al. | Sink discovery in location-free and mobile-sink wireless sensor networks | |
Shin et al. | Motion-MiX DHT for wireless mobile networks | |
Quan et al. | Content retrieval model for information-center MANETs: 2-dimensional case | |
US20120163289A1 (en) | Node apparatus, node management apparatus and method, and communication system based on continuous network connectivity-lacking network | |
Miranda et al. | Adaptive deployment scheme for mobile relays in substitution networks | |
Srivastava et al. | Modelling mobility in emergency scenario for MANET applications |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20121003 |