CN101355490B - 消息路由方法、系统和节点设备 - Google Patents

消息路由方法、系统和节点设备 Download PDF

Info

Publication number
CN101355490B
CN101355490B CN2007101307854A CN200710130785A CN101355490B CN 101355490 B CN101355490 B CN 101355490B CN 2007101307854 A CN2007101307854 A CN 2007101307854A CN 200710130785 A CN200710130785 A CN 200710130785A CN 101355490 B CN101355490 B CN 101355490B
Authority
CN
China
Prior art keywords
node
response message
message
routing information
peer
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.)
Active
Application number
CN2007101307854A
Other languages
English (en)
Other versions
CN101355490A (zh
Inventor
李峰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN2007101307854A priority Critical patent/CN101355490B/zh
Priority to EP08783757A priority patent/EP2164207B1/en
Priority to PCT/CN2008/071764 priority patent/WO2009012725A1/zh
Priority to AT08783757T priority patent/ATE556518T1/de
Publication of CN101355490A publication Critical patent/CN101355490A/zh
Priority to US12/692,877 priority patent/US8401016B2/en
Application granted granted Critical
Publication of CN101355490B publication Critical patent/CN101355490B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/34Source routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/36Backward learning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W40/00Communication routing or communication path finding
    • H04W40/24Connectivity information management, e.g. connectivity discovery or connectivity update
    • H04W40/28Connectivity information management, e.g. connectivity discovery or connectivity update for reactive routing

Abstract

本发明公开了一种对等网络中的消息路由方法,包括如下步骤:在请求消息从源节点路由到目的节点的过程中,源节点和每一需要记录的中间节点在请求消息中添加本节点的路径信息,并向下一跳节点发送,直至到达目的节点;路径信息包括本节点的通信地址和穿越标识;目的节点在根据请求消息得到的响应消息中添加请求消息中的路径信息;根据路径信息将响应消息从目的节点路由到源节点。本发明还公开了一种源节点、中间转发节点和目的节点设备以及消息路由系统。通过使用本发明,实现了结构化对等网络中消息的递归路由,使得对等网络中的节点不必在本地维护事务记录表,从而节约了各个节点的资源,减小了对等网络的开销。

Description

消息路由方法、系统和节点设备
技术领域
本发明涉及通信技术领域,尤其涉及一种结构化对等网络中的消息路由方法、系统和节点设备。 
背景技术
P2P(Peer to Peer,对等网络)技术充分利用系统中的各个节点的能力,互相提供服务。使用P2P技术将大大提高这些节点的利用率,从而进一步提升网络、设备和信息服务的效能。P2P系统进一步包括结构化、非结构化和松散结构化系统。其中,结构化P2P系统的特点在于资源的发布和网络拓扑紧密相关,资源按照P2P拓扑中的逻辑地址精确的分布在网络中。在这类系统中的每个节点都具有虚拟的逻辑地址,并根据地址使所有节点构成一个相对稳定而紧密的拓扑结构。结构化P2P中,对资源根据Hash(哈希算法)后生成的值为key。因为key的名字空间和P2P节点的名字空间存在映射关系,资源就是根据该key和映射关系分布在结构化P2P网络中,之后可以通过该key在该P2P网络中找到该资源。 
P2P的一个重要功能是节点间通信过程中协议消息的路由,在结构化P2P系统中,消息的源节点在需要获取某个存储在目的节点的资源时,不仅要能够根据key按照算法,经过若干个peer(节点)将请求消息路由到目的地,还要能够将响应消息返回给消息的源节点。路由过程中可能有的peer是在NAT(Network Address Translation,网络地址转换)设备后或FW(Firewall,防火墙)之后,这就需要在路由的同时考虑NAT和FW穿越的问题。 
目前,P2P系统中的路由方式主要有递归路由、半递归路由和迭代路由。 
其中,递归路由的示意图如图1所示,描述了节点A向节点D发送消息并接收响应的过程。其原理为,收到消息的peer检查该消息的目的地是不是自己,如果是则结束路由,如果不是则根据自己的路由表将消息向更接近目 的的节点转发;返回时按照原路径返回。递归路由的主要需求是NAT和FW穿越,以保证响应消息能够返回到请求发起peer。 
半递归路由的示意图如图2所示,描述了节点A向节点D发送消息并接收响应的过程。其原理为,收到消息的peer检查该消息的目的地是不是自己,如果是则结束路由,如果不是则根据自己的路由表将消息向更接近目的节点转发;返回时直接将消息返回给请求发起peer。 
迭代路由的示意图如图3所示,描述了节点A向节点D发送消息并接收响应的过程。其原理为,收到消息的peer检查该消息的目的地是不是自己,如果是则结束路由,如果不是则根据自己的路由表通知请求发起peer谁是更接近目的的节点,由请求发起peer向更接近目的的节点转发消息。 
这三种路由方式的特点在于:递归路由的路由速度较快,但是返回时在知道请求发起peer的情况下,还经过了很多中间节点;半递归路由的路由速度最快,请求消息直接返回请求发起peer,效率高,但当请求发起peer在NAT之后或FW之后时存在穿越NAT和FW的问题;迭代路由NAT和FW穿越简单,但效率比较低。 
对于以上几种路由方式,在现有技术中存在不同的具体实现方法,以递归路由的实现方法为例,现在有一种采用事务方法进行递归路由的方法,其原理如图4所示 
Peer在本地维护一个事务记录表,转发请求消息时,在事务记录表中增加一条记录,并把事务号加入转发消息的报头;在收到响应消息时,从报头中取出事务号,到本地事务记录表中检查该事务是否存在,如果存在则根据事务记录将消息转发给向其发送请求消息的peer,如果不存在则丢弃该消息。通过该事务记录表,Peer可以实现递归路由。 
发明人认为该方法至少存在以下问题:使用该方法时,因事务记录表容量有限,导致peer在一定时间内能够维护的事务有限,如果事务记录表被填满,新的请求将被无条件拒绝。这也为DOS(Denial Of Service,拒绝服务攻击)攻击提供了便利,攻击者可以向特定peer发送大量请求消息,当该peer的事务记录表被填满后,该peer就不能够向其他peer提供转发消息的服务。 
发明内容
本发明的实施例要解决的问题是提供一种消息路由方法、系统和节点设备,以实现结构化P2P网络中的快速递归路由。 
为达到上述目的,本发明的实施例提供一种对等网络中的消息路由方法,包括如下步骤: 
在请求消息从源节点路由到目的节点的过程中,所述源节点和每一需要记录的中间节点在所述请求消息中添加本节点的路径信息,并向下一跳节点发送,直至到达所述目的节点;所述路径信息包括本节点的通信地址和穿越标识;所述穿越标识为网络地址转换NAT设备后标识或防火墙FW后标识,标识所述本节点是否处于所述网络地址转换NAT设备之后或所述防火墙FW之后; 
所述目的节点在根据所述请求消息得到的响应消息中添加所述请求消息中的路径信息; 
根据所述路径信息将所述响应消息从所述目的节点路由到所述源节点; 
所述根据路径信息将响应消息从目的节点路由到源节点的步骤具体包括: 
根据所述响应消息中记录的路径信息,获取发送所述响应消息的下一跳节点的路径信息; 
删除所述响应消息记录中所述下一跳节点的路径信息; 
根据所述下一跳节点的路径信息,向所述下一跳节点发送所述响应消息; 
所述删除所述响应消息记录中所述下一跳节点的路径信息之后及所述根据所述下一跳节点的路径信息,向所述下一跳节点发送所述响应消息之前进一步包括: 
删除所述下一跳节点的路径信息之后添加的节点的路径信息。 
本发明的实施例还提供一种对等网络中的源节点,包括: 
初始请求发送模块,用于向下一跳节点发送需要向目的节点发送的请求消息,所述路径信息包括所述源节点的通信地址和穿越标识。 
本发明的实施例还提供一种对等网络中的中间转发节点,包括: 
请求发送模块,用于向下一跳节点发送需要向目的节点发送的请求消息,并在需要时在所述请求消息中添加本节点的路径信息;所述路径信息包括本节点的通信地址和穿越标识,所述穿越标识为网络地址转换NAT设备后标识或防火墙FW后标识,标识所述本节点是否处于所述网络地址转换NAT转换之后或所述防火墙FW之后; 
响应发送模块,用于在接收到其他节点设备发送的响应消息时,根据所述响应消息中记录的路径信息将所述响应消息向下一跳节点发送; 
所述响应发送模块具体包括: 
下一跳节点获取子模块,用于获取发送所述响应消息的下一跳节点并提 供给响应消息发送子模块; 
响应消息维护子模块,用于删除所述响应消息记录中所述下一跳节点获取子模块选择的下一跳节点的路径信息; 
响应消息发送子模块,用于将记录响应消息维护子模块维护后的响应消息向所述下一跳节点获取子模块选择的下一跳节点发送; 
所述响应消息维护子模块进一步用于删除在下一跳节点的路径信息之后添加的节点的路径信息; 
本发明的实施例还提供一种对等网络中的目的节点,包括: 
处理模块,用于在根据请求消息得到的响应消息中添加所述请求消息中的路径信息; 
初始响应发送模块,用于在接收到所述处理模块发送的响应消息时,根据所述响应消息中记录的路径信息将所述响应消息向下一跳节点发送。 
本发明的实施例还提供一种对等网络中的消息路由系统,包括: 
源节点,在向目的节点发送的请求消息中添加本节点的路径信息,并向下一跳中间转发节点发送;所述路径信息包括本节点的通信地址和穿越标识; 
中间转发节点,用于向下一跳节点发送需要向目的节点发送的请求消息直至到达所述目的节点,并在需要时在所述请求消息中记录本节点的路径信息;以及在接收到响应消息时,根据所述响应消息中的路径信息向下一跳节点发送所述响应消息直至到达所述源节点; 
目的节点,用于在根据接收到的请求消息得到的响应消息中添加所述请求消息中的路径信息,并根据所述路径信息向下一跳中间转发节点发送所述响应消息,根据所述响应消息中记录的路径信息,获取发送所述响应消息的下一跳节点的路径信息;删除所述响应消息记录中所述下一跳节点的路径信息;根据所述下一跳节点的路径信息,向所述下一跳节点发送所述响应消息; 
所述目的节点还进一步用于在所述删除所述响应消息记录中所述下一跳节点的路径信息之后及所述根据所述下一跳节点的路径信息向所述下一跳节点发送所述响应消息之前,删除所述下一跳节点的路径信息之后添加的节点的路径信息。 
与现有技术相比,本发明的实施例至少具有以下优点: 
采用在P2P消息中记录消息路由的路径信息的方法,实现了结构化P2P网络中消息的递归路由,使得P2P网络中的节点不必在本地维护事务记录表,从而节约了各个节点的资源,减小了P2P网络的开销。另外,通过路由信息的选项,在实现NAT和FW穿越的同时有效的减少了路由跳数。 
附图说明
图1是现有技术中的递归路由的示意图; 
图2是现有技术中的半递归的示意图; 
图3是现有技术中的迭代路由的示意图; 
图4是现有技术中的采用事务方法实现递归路由的示意图; 
图5是本发明的实施例一中消息路由方法的流程图; 
图6是本发明的实施例二中请求消息路由的过程示意图; 
图7是本发明的实施例二中响应消息路由的过程示意图; 
图8是本发明的实施例二中节点处理消息的示意图; 
图9是本发明的实施例三中请求消息路由的过程示意图; 
图10是本发明的实施例三中响应消息路由的过程示意图; 
图11是本发明的实施例中应用的组网场景示意图; 
图12是本发明的实施例三中对请求消息路由的优化的过程示意图; 
图13是本发明的实施例三中对响应消息路由的优化的过程示意图; 
图14是本发明的实施例三中发送响应消息失败时的响应消息路由过程示意图; 
图15是本发明的实施例三中发送响应消息失败时的另一响应消息路由过程示意图; 
图16是本发明的实施例四中一种消息路由系统的结构示意图。 
具体实施方式
以下结合附图和实施例,对本发明的实施方式做进一步的说明。 
本发明的实施例一中,一种消息路由方法如图5所示,包括以下步骤: 
步骤s501、在请求消息从源节点路由到目的节点的过程中,源节点和每一需要记录的中间节点在请求消息中添加本节点的路径信息,并向下一跳节点发送,直至到达目的节点。 
通过该记录,在请求消息中保存了消息路由中所经过的必要的路径信息,使得各个节点无需在自身设备上对自己所转发过的消息进行记录。具体的,该记录保存的位置可以位于请求消息的报头中,具体为:在报头增加一个路径域,该路径域按顺序保存消息转发依次经过的peer的通信地址,该域可以采用栈、队列或类似的数据结构进行管理。在记录消息所经过的节点时,每经过一个节点,就把该节点的路径信息插入到路径域。 
步骤s502、目的节点处理该请求消息得到响应消息,并在该响应消息中添加请求消息中记录的路径信息。 
通过将上述记录复制添加到响应消息中,使得响应消息可以根据该记录按照请求消息的路由路径返回到请求消息的源节点。 
步骤s503、根据上述记录将该响应消息从目的节点路由到源节点。 
具体的,接收到响应消息的节点从记录中获取下一跳节点的信息,将该响应消息向下一跳节点发送,直至该响应消息到达源节点。 
本发明的实施例二中,在P2P请求消息和响应消息的报头设一个路径域,通过该路径域按顺序记录消息路由依次经过的peer的通信地址。通过该方法, 实现了消息的路由。 
具体的,本发明的实施例二中,请求消息路由的过程包括以下步骤: 
步骤s21、peer在发送请求消息时,生成栈元素<peer通信地址>,将自己在叠加网络(Overlay Network)中的通信地址加入报头栈中,将消息发给从路由表中取出的下一跳peer。 
该步骤中的peer通信地址是peer在叠加网络中对其他peer通信的地址。目前承载网主要为IP网络,因此peer通信地址一般会映射成IP(Internet Protocol,因特网协议)地址和TCP(Transmission Control Protocol,传输控制协议)/UDP(User Datagram Protocol,用户数据报协议)端口号。 
步骤s22、收到请求消息的peer判断自己是否是消息的目的地,是则处理该消息;不是则生成栈元素<peer通信地址>,将自己在叠加网络中的通信地址加入报头栈中,将消息发给从路由表中取出的下一跳peer。 
图6描述了对于上述请求消息路由过程的一个具体应用场景。如图6所示,该请求消息路由过程包括如下步骤: 
步骤s601、peer A发送目的地为key的请求消息(这里用消息Find key来标记),将自己的IP地址IPA、协议端口号PortA加入请求消息报头栈结构中。然后peer A根据key从路由表中取出下一跳是peer B,将请求消息发往peer B。 
步骤s602、peer B收到请求消息Find key后,根据key判断自己不是消息的目的地,则将自己的IP地址IPB、协议端口号PortB加入请求消息报头栈结构中,根据key从路由表中取出下一跳是peer C,将请求消息发往peer C。 
步骤s603、peer C收到请求消息Find key后,根据key判断自己不是消息的目的地,则将自己的IP地址IPC、协议端口号PortC加入请求消息报头栈结构中,根据key从路由表中取出下一跳是peer D,将请求消息发往peer D。peer D收到请求消息Find key后,根据key判断自己是消息的目的地,则对消息所描述请求进行处理。 
具体的,本发明的实施例二中,处理请求消息得到响应消息并将响应消息进行路由的过程包括以下步骤: 
步骤s23、请求消息的目的peer处理该请求消息并生成响应消息,从请求 消息报头的栈结构中的栈顶<peer通信地址>出栈,将栈复制到响应报头中,将响应消息发往从请求消息报头栈顶取出的通信地址。 
步骤s24、收到响应消息的peer判断自己是否是该响应消息的请求者,是则处理该消息;不是则从报头中栈结构出栈栈顶<peer通信地址>,将响应消息发往该通信地址。 
以上述图6描述的应用场景为例,图7描述了peer D接收到请求消息后,获取响应消息并将响应消息进行路由的过程。如图7所示,该响应消息路由过程包括如下步骤: 
步骤s701、peer D处理完请求消息Find key后,生成响应消息Found key(这里用消息Found key来标记),从请求消息报头中出栈栈顶<peer通信地址>,这里为取出IPC、PortC,将栈中剩下的内容复制到响应报头中,将响应消息发往IPC、PortC。 
步骤s702、peerC收到响应消息Found key后,从响应消息报头中出栈栈顶<peer通信地址>,这里为取出IPB、PortB,将响应消息发往IPB、PortB。 
步骤s703、peer B收到响应消息Found key后,从响应消息报头中出栈栈顶<peer通信地址>,取出IPA、PortA,将响应消息发往IPA、PortA;响应消息Foundkey最终到达请求者peer A。 
结合上述图6和图7所描述的应用场景,结构化P2P网络中的节点接收到其他节点发送的消息时的处理流程如图8所示,包括如下步骤: 
步骤s801、节点接收到消息。 
步骤s802、节点判断该消息为请求消息还是响应消息,为请求消息时进行步骤s803,为响应消息时进行步骤s810。 
步骤s803、判断本节点是否为请求消息的目的地,是则进行步骤s807,否则进行步骤s804。 
步骤s804、生成栈元素并添加在请求消息中。 
该栈元素中包括当前节点的<peer通信地址>。 
步骤s805、从路由表中取出下一跳的节点。 
步骤s806、将该请求消息向下一节点发送并结束。 
步骤s807、节点处理该请求消息,得到响应消息。 
步骤s808、出栈栈顶,得到<peer通信地址>。 
步骤s809、将请求消息的栈复制到响应消息中,进行步骤s812。 
步骤s810、判断本节点是否为响应消息的请求者,如果是则进行步骤s813,否则进行步骤s811。 
步骤s811、出栈栈顶,得到<peer通信地址>。 
步骤s812、将响应消息发往出栈peer通信地址并结束。 
步骤s813、处理响应消息并结束。 
为了实现高效的消息转发和NAT和FW穿越,同时避免个别中间peer的失效或离开影响路由的成功,本发明的实施例三在实施例二的基础上,在栈元素中增加一个穿越标识,该穿越标识可以为NAT后标识或FW后标识,标识peer是否处于NAT之后或FW之后。即在请求消息和响应消息的P2P报头设一个路径域,该路径域按顺序记录消息转发依次经过的peer的通信地址和路径上peer是否在NAT后或FW后的信息。对于该NAT后标识或FW后标识,以NAT后标识为例,可以通过不同的标识进行表示,如0表示不在NAT后,1表示在NAT后;或在NAT后则具有该标识,不在NAT后在不具有该标识。以下以通过不同的标识(0/1)对是否在NAT后进行标识为例,本发明的实施例三中的路由方法如下: 
请求消息的路由过程包括如下步骤: 
步骤s31、Peer在发送请求消息时,生成栈元素<peer通信地址、NAT后标记>,将自己在overlay中的通信地址加入报头栈中,将消息发给从路由表中取出的下一跳peer。其中NAT后标记用来标记peer是不是在NAT后或FW之后,0表示peer不在NAT后和FW后,1表示peer在NAT后或FW后。 
步骤s32、收到请求消息的Peer判断自己是否是消息的目的地,是则处理该消息;不是则生成栈元素<peer通信地址、NAT后标记>,将自己在overlay中的通信地址加入报头栈中,将消息发给从路由表中取出的下一跳peer。 
图9描述了对于上述请求消息路由过程的一个具体应用场景。如图9所示,该请求消息路由过程包括如下步骤: 
步骤s901、peer A发送目的地为key的请求消息(这里用消息Find key来标记),将自己的IP地址IPA、协议端口号PortA、NAT后标记加入请求消息报头栈结构中,根据key从路由表中取出下一跳是peer B,将请求消息发往peer B。 
步骤s902、peer B收到请求消息Find key后,根据key判断自己不是消息的目的地,则将自己的IP地址IPB、协议端口号PortB、NAT后标记加入请求消息报头栈结构中,根据key从路由表中取出下一跳是peer C,将请求消息发往peerC。 
步骤s903、peer C收到请求消息Find key后,根据key判断自己不是消息的目的地,则将自己的IP地址IPC、协议端口号PortC、NAT后标记加入请求消息报头栈结构中,根据key从路由表中取出下一跳是peer D,将请求消息发往peerD;peer D收到请求消息Find key后,根据key判断自己是消息的目的地,则对消息所描述请求进行处理。 
具体的,本发明的实施例三中,处理请求消息得到响应消息并将响应消息进行路由的过程包括以下步骤: 
步骤s33、消息的目的peer处理完消息,从请求消息报头中栈结构出栈栈顶<peer通信地址、NAT后标记>,将栈复制到响应报头中,将响应消息发往从请求消息报头栈顶取出的通信地址; 
步骤s34、收到响应消息的peer判断自己是否是该响应消息的请求者,是则处理该消息;不是则从报头中栈结构出栈栈顶<peer通信地址、NAT后标记>,将响应消息发往该通信地址。 
以上述图9描述的应用场景为例,图10描述了peer D接收到请求消息后,获取响应消息并将响应消息进行路由的过程。如图10所示,该根据请求消息获得的响应消息,并将该响应消息进行路由的过程包括如下步骤: 
步骤s1001、peer D处理完请求消息Find key后,生成响应消息Found key,从请求消息报头中出栈栈顶<peer通信地址、NAT后标记>,取出IPC、PortC,将栈中剩下的内容复制到响应报头中,将响应消息发往IPC、PortC。 
步骤s1002、peer C收到响应消息Found key后,从响应消息报头中出栈栈顶<peer通信地址、NAT后标记>,取出IPB、PortB,将响应消息发往IPB、PortB。 
步骤s1003、peer B收到响应消息Found key后,从响应消息报头中出栈栈顶<peer通信地址、NAT后标记>,取出IPA、PortA,将响应消息发往IPA、PortA;响应消息Found key最终到达请求者peer A。 
本发明的实施例三中,在栈元素中增加一个穿越标识时,可以根据该穿越标识进行请求消息和响应消息路由过程的优化,该穿越标识可以为NAT后标识或FW后标识,标识peer是否处于NAT之后或FW之后。该优化是基于现有技术中P2P网络的以下性质进行的: 
如图11所示,请求消息由源节点peer A路由到目的节点peer D过程中所经过的路径为peer A、peer B、peer C和peer D,这里假设peer A和peer C位于NAT后或FW后。该请求消息的路由过程中,下一跳节点的获取方法为:每个peer会根据该P2P网络采用的算法计算获取其路由表,并与路由表中的peer建立连接,而不管路由表中的peer是否在NAT/FW之后,连接都是可以建立的,这是由P2P网络及其他方法来保证,例如通过STUN、TRUN、ICE等穿越方法。通过该方法,保证了请求消息由源节点peer A经过peer B和peer C最终到达peerD,该过程中的单向路径都是导通的。 
在NAT或FW后的peer A向peer B发送路由消息后,peer B向peer A发送消息的单向路径就是导通的。这是因为,即便peer A所在的NAT是最难穿越的严格的对称型NAT或FW,peer A向peer B发送过消息后,则peer B就可以向peer A发消息。但是peer C和peer D不一定能够向peer A发消息,因为peer A没有给peer C、peer D直接发过消息,因此peer C和peer D向peer A发送的消息在某些类型NAT(如对称型NAT)的情况下无法到达peer A。对于这种情况,由于在实际的网络中很难事先获取路由过程中所经过的NAT类型,因此向peer A发送的消息必须经过peer B进行转发,才能保证peer A能够接收到向其发送的消息。 
对于不位于NAT后或FW后的节点,如peer B,因为其处于公网中,因此除了向peer B发送过消息的peer C外,peer D也可以在知晓peer B地址的情况下,直接将消息向peer B发送。 
基于上述描述的现有技术中的特点,本发明的实施例在路径信息中包括了穿越标识(NAT后标识或FW后标识)时,对请求消息和响应消息的路由可 以进行以下优化。 
例如对请求消息路由的优化: 
Peer在转发请求消息时,如果报头栈顶<peer通信地址、NAT后标记>的NAT后标记为0,则不再将自己的<peer通信地址、NAT后标记>入栈。该优化方法的示意图如图12所示: 
步骤s1201、peer A发送目的地为key的请求消息(这里用消息Find key来标记),将自己的IP地址IPA、协议端口号PortA、NAT后标记1加入请求消息报头栈结构中,根据key从路由表中取出下一跳是peer B,将请求消息发往peer B。 
步骤s1202、peer B收到请求消息Find key后,根据key判断自己不是消息的目的地,同时栈顶的NAT后标记为1,则将自己的IP地址IPB、协议端口号PortB、NAT后标记0加入请求消息报头栈结构中,根据key从路由表中取出下一跳是peer C,将请求消息发往peerC。 
步骤s1203、peer C收到请求消息Find key后,根据key判断自己不是消息的目的地,同时栈顶的NAT后标记为0,则根据key从路由表中取出下一跳是peer D,将请求消息发往peer D;peer D收到请求消息Find key后,根据key判断自己是消息的目的地,则对消息所描述请求进行处理。 
从中可以看出,peer C的信息未出现在peer D所接收到的请求消息中。其原因在于,因peer B未处于NAT后,则根据以上对现有技术的描述,若peer D直接向peer B发送响应消息时无需穿越NAT,peer B可以直接接收到peer D发送的响应消息,从而减少了路由跳数,加快了消息的路由速度。而由于peer A位于NAT后,因此即使peer D已经可以获取peer A的路径信息,根据上述结合图11对现有技术的描述,peer D也必须先向peer B发送响应消息,再通过peer B向peer A发送消息,以保证响应消息可以到达peer A。 
再例如对响应消息路由的优化: 
Peer在转发响应消息时,从报头栈中取出最下面的“NAT后标记”为0的<peer通信地址、NAT后标记>,将响应消息发往该通信地址,该优化方法的示意图如图13所示。 
步骤s1301、peer D处理完请求消息Find key后,生成响应消息Found key,从请求消息报头中不断出栈栈顶<peer通信地址、NAT后标记>,直到获取到最下面的“NAT后标记”为0的<peer通信地址、NAT后标记>,这里为IPB、PortA,将栈中剩下的内容复制到响应报头中,将响应消息发往IPB、PortB。 
步骤s1302、peer B收到响应消息Found key后,从响应消息报头中出栈栈顶<peer通信地址、NAT后标记>,取出IPA、PortA,将响应消息发往IPA、PortA;响应消息Found key最终到达请求者peer A。 
从中可以看出,响应消息的路由未经过peer C,因peer B未处于NAT后,则若peer D直接向peer B发送响应消息时无需穿越NAT,peer B可以直接接收到peer D发送的响应消息,而无需经过peer C。从而减少了路由跳数,加快了消息的路由速度。 
在响应消息的发送中,可能还涉及到peer向栈顶的<peer通信地址、NAT后标记>发送/转发响应消息失败的情况,这种情况下,可以从栈中再出栈一个<peer通信地址、NAT后标记>来尝试转发消息。该再出栈一个<peer通信地址、NAT后标记>的方法可以为: 
从栈中出栈下一个<peer通信地址、NAT后标记>,将响应消息发往该通信地址; 
从栈中不断出栈<peer通信地址、NAT后标记>,直到发现“NAT后标记”为0的地址,将响应消息发往该通信地址。 
对于第一种方法,如图14所示,包括如下步骤: 
步骤s1401、peer D处理完请求消息Find key后,生成响应消息Found key,从请求消息报头中出栈栈顶<peer通信地址、NAT后标记>,这里为IPC、PortC,将栈中剩下的内容复制到响应报头中,将响应消息发往IPC、PortC。发送失败时,peer D从待发送响应消息报头中出栈下一个栈顶<peer通信地址、NAT后标记>,这里为IPB、PortB,将响应消息发往IPB、PortB。 
步骤s1402、peer B收到响应消息Found key后,从响应消息报头中出栈栈顶<peer通信地址、NAT后标记>,取出IPA、PortA,将响应消息发往IPA、PortA;响应消息Found key最终到达请求者peer A。 
如果peer D是转发响应消息,同样也可以采用本方法尝试向peer B转发。 
对于第二种方法,如图15所示,包括如下步骤: 
步骤s1501、peer D处理完请求消息Find key后,生成响应消息Found key,从请求消息报头中出栈栈顶<peer通信地址、NAT后标记>,这里为IPC、PortC,将栈中剩下的内容复制到响应报头中,将响应消息发往IPC、PortC。发送失败时,peer D从待发送响应消息报头中出栈下一个栈顶<peer通信地址、NAT后标记>,发现“NAT后标记”为0的<peer通信地址、NAT后标记>,这里为IPA、PortA。peer D将响应消息发往IPA、PortA;响应消息Found key最终到达请求者peer A。 
如果peer D是转发响应消息,同样也可以采用本方法尝试向peer B转发。 
通过使用上述实施例所提供的消息路由方法,通过在P2P消息中记录消息路由的路径信息,实现了结构化P2P网络中消息的递归路由,使得P2P网络中的节点不必在本地维护事务记录表,从而节约了各个节点的资源,减小了P2P网络的开销。另外,通过路由信息的选项,在实现NAT和FW穿越的同时有效的减少了路由跳数,并且减少了中间节点的失效对路由的影响。 
本发明的实施例四还提供了一种消息路由系统,包括源节点、中间转发节点和目的节点,以某消息路由过程中只经过一个中间转发节点为例,其结构示意图如图15所示,包括源节点100、中间转发节点200和目的节点300。 
其中,源节点100用于向下一跳节点发送需要向目的节点300发送的请求消息,该路径信息包括本节点的通信地址、和本节点的穿越标识(网络地址转换设备后标识或防火墙后标识)。 
中间转发节点200用于向下一跳节点发送需要向目的节点300发送的请求消息,并在需要时在该请求消息中记录本节点的路径信息;或根据响应消息中的路径消息向下一跳节点发送该响应消息。 
目的节点300用于根据所述源节点发送的请求消息生成响应消息,并在响应消息中添加请求消息中记录的路径信息,根据响应消息中的路径消息向下一跳节点发送该响应消息。 
具体的,如图15所示,源节点100进一步包括: 
初始请求发送模块110,用于向下一跳节点发送需要向目的节点发送的请求消息,所述路径信息包括本节点的通信地址、和本节点的穿越标识(网络地址转换设备后标识或防火墙后标识)。 
具体的,如图15所示,中间转发节点200进一步包括: 
请求发送模块210,用于向下一跳节点发送需要向目的节点发送的请求消息,并在需要时按照路由顺序在请求消息中记录本节点的路径信息。 
响应发送模块220,用于在接收到其他节点设备发送的响应消息时,根据响应消息中记录的路径信息将响应消息向下一跳节点发送。 
添加判断模块230,用于当判断接收到的请求消息中最后添加的节点具有穿越标识时,通知请求发送模块200在该请求消息中添加本节点的路径信息,否则不在该请求消息中添加本节点的路径信息。 
而响应发送模块220进一步包括: 
下一跳节点获取子模块221,用于获取发送响应消息的下一跳节点并提供给响应消息发送子模块223。 
响应消息维护子模块222,用于删除响应消息记录中下一跳节点获取子模块221选择的下一跳节点的路径信息、以及在下一跳节点的路径信息之后记录的节点的路径信息。 
响应消息发送子模块223,用于将响应消息维护子模块222维护后的响应消息向下一跳节点获取子模块221选择的下一跳节点发送。 
具体的,如图15所示,目的节点300进一步包括: 
处理模块310,用于根据接收到的请求消息得到响应消息,并在响应消息中添加请求消息中记录的路径信息。 
初始响应发送模块320,用于在接收到处理模块310发送的响应消息时,根据响应消息中记录的路径信息将响应消息向下一跳节点发送。 
节点选择子模块321,用于根据响应消息中的记录,选择下一跳节点。 
记录维护子模块322,用于删除响应消息记录中节点选择子模块321选择的下一跳节点的路径信息、以及在下一跳节点的路径信息之后记录的节点的路径信息。 
初始响应消息发送子模块323,用于将记录维护子模块322维护后的响应消息向节点选择子模块321选择的下一跳节点发送。 
在该系统中,也可以在没有中间转发节点的情况下,由源节点只经过一次路由到达目的节点,这对于源节点与目的节点的功能和结构没有影响。另外,以上系统描述了在源节点向目的节点发送请求消息并接收响应消息的过程,在该特定场景中,所涉及的每个节点的功能是单一的。但一般情况下,在不同的应用场景中,同一个节点可以充当不同的角色,这也就要求一般情况下对等网络中的每个节点设备应该同时具有源节点、中间转发节点和目的节点的功能。对于该兼具多功能的节点设备的结构,为上述实施例中源节点、中间转发节点和目的节点所应具有的功能的总和,在此不做重复描述。 
通过使用上述实施例所提供的系统和节点设备,通过在P2P消息中记录消息路由的路径信息,实现了结构化P2P网络中消息的递归路由,使得P2P网络中的节点不必在本地维护事务记录表,从而节约了各个节点的资源,减小了P2P网络的开销。另外,通过路由信息的选项,在实现NAT和FW穿越的同时有效的减少了路由跳数,并且减少了中间节点的失效对路由的影响。 
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台节点设备执行本发明各个实施例所述的方法。 
以上公开的仅为本发明的几个具体实施例,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。 

Claims (9)

1.一种对等网络中的消息路由方法,其特征在于,包括如下步骤:
在请求消息从源节点路由到目的节点的过程中,所述源节点和每一需要记录的中间节点在所述请求消息中添加本节点的路径信息,并向下一跳节点发送,直至到达所述目的节点;所述路径信息包括本节点的通信地址和穿越标识;所述穿越标识为网络地址转换NAT设备后标识或防火墙FW后标识,标识所述本节点是否处于所述网络地址转换NAT设备之后或所述防火墙FW之后;
所述目的节点在根据所述请求消息得到的响应消息中添加所述请求消息中的路径信息;
根据所述路径信息将所述响应消息从所述目的节点路由到所述源节点;
所述根据路径信息将响应消息从目的节点路由到源节点的步骤具体包括:
根据所述响应消息中记录的路径信息,获取发送所述响应消息的下一跳节点的路径信息;
删除所述响应消息记录中所述下一跳节点的路径信息;
根据所述下一跳节点的路径信息,向所述下一跳节点发送所述响应消息;
所述删除所述响应消息记录中所述下一跳节点的路径信息之后及所述根据所述下一跳节点的路径信息,向所述下一跳节点发送所述响应消息之前进一步包括:
删除所述下一跳节点的路径信息之后添加的节点的路径信息。
2.如权利要求1所述对等网络中的消息路由方法,其特征在于,所述需要记录的中间节点具体为:
在请求消息从源节点路由到目的节点的过程中经过的每一中间节点;或
接收到请求消息时,发现所述请求消息中最后添加的节点具有穿越标识的中间节点。
3.如权利要求1或2所述对等网络中的消息路由方法,其特征在于,所述向下一跳节点发送所述响应消息后,还包括步骤:
若所述响应消息的发送消息失败,则根据所述响应消息中的记录,获取所述下一跳节点的再下一跳节点;
删除所述响应消息的记录中所述再下一跳节点的路径信息;
向所述再下一跳节点发送所述响应消息。 
4.如权利要求1或3所述对等网络中的消息路由方法,其特征在于,所述下一跳节点的路径信息为:
所述请求消息中最后添加的不具有穿越标识的节点的路径信息;或
所述请求消息中第一个添加的不具有穿越标识的节点的路径信息。
5.如权利要求1或2所述对等网络中的消息路由方法,其特征在于,
具有穿越标识的节点位于网络地址转换设备后或防火墙后。
6.一种对等网络中的中间转发节点,其特征在于,包括:
请求发送模块,用于向下一跳节点发送需要向目的节点发送的请求消息,并在需要时在所述请求消息中添加本节点的路径信息;所述路径信息包括本节点的通信地址和穿越标识,所述穿越标识为网络地址转换NAT设备后标识或防火墙FW后标识,标识所述本节点是否处于所述网络地址转换NAT设备之后或所述防火墙FW之后;
响应发送模块,用于在接收到其他节点设备发送的响应消息时,根据所述响应消息中记录的路径信息将所述响应消息向下一跳节点发送;
所述响应发送模块具体包括:
下一跳节点获取子模块,用于获取发送所述响应消息的下一跳节点并提供给响应消息发送子模块;
响应消息维护子模块,用于删除所述响应消息记录中所述下一跳节点获取子模块选择的下一跳节点的路径信息;
响应消息发送子模块,用于将响应消息维护子模块维护后的响应消息向所述下一跳节点获取子模块选择的下一跳节点发送;
所述响应消息维护子模块进一步用于删除在下一跳节点的路径信息之后添加的节点的路径信息。
7.如权利要求6所述对等网络中的中间转发节点,其特征在于,还包括:
添加判断模块,用于当判断所述请求消息中最后添加的节点路径信息具有穿越标识时,通知所述请求发送模块在所述请求消息中添加本节点的路径信息,否则不在所述请求消息中添加本节点的路径信息。
8.一种对等网络中的目的节点,其特征在于,包括:
处理模块,用于在根据请求消息得到的响应消息中添加所述请求消息中的路径信息;
初始响应发送模块,用于在接收到所述处理模块发送的响应消息时,根 据所述响应消息中记录的路径信息将所述响应消息向下一跳节点发送;
所述初始响应发送模块具体包括:
节点选择子模块,用于根据所述响应消息中的记录,选择下一跳节点;
记录维护子模块,用于删除所述响应消息记录中所述节点选择子模块选择的下一跳节点的路径信息、以及在下一跳节点的路径信息之后记录的节点的路径信息;
初始响应消息发送子模块,用于将所述记录维护子模块维护后的响应消息向所述节点选择子模块选择的下一跳节点发送。
9.一种对等网络中的消息路由系统,其特征在于,包括:
源节点,在向目的节点发送的请求消息中添加本节点的路径信息,并向下一跳中间转发节点发送;所述路径信息包括本节点的通信地址和穿越标识;
中间转发节点,用于向下一跳节点发送需要向目的节点发送的请求消息直至到达所述目的节点,并在需要时在所述请求消息中记录本节点的路径信息;以及在接收到响应消息时,根据所述响应消息中的路径信息向下一跳节点发送所述响应消息直至到达所述源节点;
目的节点,用于在根据接收到的请求消息得到的响应消息中添加所述请求消息中的路径信息,并根据所述路径信息向下一跳中间转发节点发送所述响应消息,根据所述响应消息中记录的路径信息,获取发送所述响应消息的下一跳节点的路径信息;删除所述响应消息记录中所述下一跳节点的路径信息;根据所述下一跳节点的路径信息,向所述下一跳节点发送所述响应消息;
所述目的节点还进一步用于在所述删除所述响应消息记录中所述下一跳节点的路径信息之后及所述根据所述下一跳节点的路径信息向所述下一跳节点发送所述响应消息之前,删除所述下一跳节点的路径信息之后添加的节点的路径信息。 
CN2007101307854A 2007-07-25 2007-07-25 消息路由方法、系统和节点设备 Active CN101355490B (zh)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN2007101307854A CN101355490B (zh) 2007-07-25 2007-07-25 消息路由方法、系统和节点设备
EP08783757A EP2164207B1 (en) 2007-07-25 2008-07-25 Message routing method, system and node equipment
PCT/CN2008/071764 WO2009012725A1 (fr) 2007-07-25 2008-07-25 Procédé, système de routage de message et équipement de nœud
AT08783757T ATE556518T1 (de) 2007-07-25 2008-07-25 Nachrichtenleitverfahren, system und stationsausrüstung
US12/692,877 US8401016B2 (en) 2007-07-25 2010-01-25 Method, system and peer device for message routing

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2007101307854A CN101355490B (zh) 2007-07-25 2007-07-25 消息路由方法、系统和节点设备

Publications (2)

Publication Number Publication Date
CN101355490A CN101355490A (zh) 2009-01-28
CN101355490B true CN101355490B (zh) 2012-05-23

Family

ID=40281022

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2007101307854A Active CN101355490B (zh) 2007-07-25 2007-07-25 消息路由方法、系统和节点设备

Country Status (5)

Country Link
US (1) US8401016B2 (zh)
EP (1) EP2164207B1 (zh)
CN (1) CN101355490B (zh)
AT (1) ATE556518T1 (zh)
WO (1) WO2009012725A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8401016B2 (en) 2007-07-25 2013-03-19 Huawei Technologies Co., Ltd. Method, system and peer device for message routing

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101483674B (zh) * 2009-02-12 2013-01-09 迈普通信技术股份有限公司 数据跨域查找方法
ES2531546T3 (es) * 2009-06-29 2015-03-17 Huawei Technologies Co., Ltd. Aparato y método para establecer un denominado pseudo-conductor
CN102036173B (zh) * 2009-09-28 2013-06-12 华为技术有限公司 无线网络数据传输方法与装置
US8675518B2 (en) 2010-02-02 2014-03-18 Micorsoft Corporation Message transport system using publication and subscription mechanisms
US8438294B2 (en) 2010-04-07 2013-05-07 Apple Inc. Application programming interface, system, and method for collaborative online applications
CN102118396B (zh) * 2011-03-14 2014-04-09 浙江宇视科技有限公司 实况监控方法及视频管理服务器
CN102209397A (zh) * 2011-05-23 2011-10-05 新邮通信设备有限公司 一种通信过程触发方法和通信系统
WO2013010242A1 (en) * 2011-07-15 2013-01-24 Research In Motion Limited Method and system for peer-to-peer (p2p) ad-hoc location determination routing protocol
CN103152785B (zh) * 2011-12-06 2016-04-27 中国移动通信集团福建有限公司 一种物联网业务网关应答消息路由方法和系统
WO2013114670A1 (ja) * 2012-01-31 2013-08-08 楽天株式会社 通信システム及び中継装置、中継プログラム、中継プログラムを記録したコンピュータ読み取り可能な記録媒体、並びに通信方法及び中継方法
US9313241B2 (en) 2012-01-31 2016-04-12 Rakuten, Inc. Communication system and relay device, computer-readable recording medium storing relay program, as well as communication method and relay method
US9940118B2 (en) 2012-02-23 2018-04-10 Dahrwin Llc Systems and methods utilizing highly dynamic wireless ad-hoc networks
US8774147B2 (en) * 2012-02-23 2014-07-08 Dahrwin Llc Asynchronous wireless dynamic ad-hoc network
US20150098472A1 (en) * 2012-06-29 2015-04-09 Byung Kyu Choi Routing Packet From Edge Device to Home Network or From Home Network to Remote Access Network
US8798617B1 (en) * 2012-10-19 2014-08-05 Sprint Communications Company L.P. Device enabled peer-to-peer location based routing to cellular network using an unlicensed radio spectrum for delivery of discovery messages
CN103929357A (zh) * 2013-01-11 2014-07-16 浙江大华技术股份有限公司 一种数据传输方法及网络设备
JP6054224B2 (ja) * 2013-03-25 2016-12-27 株式会社東芝 通信装置、通信システム、通信方法およびプログラム
US20140324987A1 (en) * 2013-04-28 2014-10-30 Xiao Long Zhang Method for communicating with a public id and public id assistant device
WO2015018452A1 (en) * 2013-08-09 2015-02-12 Telefonaktiebolaget L M Ericsson (Publ) Method for indicating a path to a target object comprised by a plurality of objects
CN104092719B (zh) * 2013-12-17 2015-10-07 深圳市腾讯计算机系统有限公司 文件传输方法、装置及分布式集群文件系统
US9699071B2 (en) * 2014-04-28 2017-07-04 Huawei Technologies Co., Ltd. Centrally optimized variable length coding for source routed multicast
CN105245453B (zh) * 2014-06-20 2018-12-07 华为技术有限公司 业务链的建立方法、设备及系统
CN104301221B (zh) * 2014-10-11 2018-05-18 华为技术有限公司 一种路由消息的方法及装置
TW201616844A (zh) * 2014-10-31 2016-05-01 Papago Inc 解決網路位址轉譯器之連線限制的網路連線系統及其方法
CN105162680B (zh) * 2015-07-24 2019-07-30 努比亚技术有限公司 发送多媒体信息服务的方法、系统和装置
CN107135118B (zh) * 2016-02-29 2020-06-26 华为技术有限公司 一种单播通信方法、网关以及vxlan接入设备
US11239999B1 (en) * 2018-04-25 2022-02-01 Tyson York Winarski Blockchain network communications system
CN109587226B (zh) * 2018-11-22 2021-09-17 北京大米科技有限公司 一种数据传输的方法、装置、终端及介质
CN111404701B (zh) * 2019-12-16 2022-04-05 杭州复杂美科技有限公司 一种信息广播方法、设备及存储介质
CN111181846B (zh) * 2019-12-26 2022-03-01 天津中科曙光存储科技有限公司 消息传输方法和装置以及存储介质
CN112702270B (zh) * 2020-12-18 2023-05-02 深圳赛安特技术服务有限公司 基于事件分发机制的节点调用方法、系统及存储介质
CN114553822A (zh) * 2022-02-07 2022-05-27 邦彦技术股份有限公司 一种简易nat穿越的方法
CN114582314B (zh) * 2022-02-28 2023-06-23 江苏楷文电信技术有限公司 基于asr的人机音视频交互逻辑模型设计方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1645838A (zh) * 2005-01-19 2005-07-27 哈尔滨工业大学 完整路由信息的自组网按需距离矢量多路由方法
CN1747456A (zh) * 2004-09-09 2006-03-15 微软公司 对于路由信息减少存储需求
CN1960313A (zh) * 2005-11-03 2007-05-09 中兴通讯股份有限公司 一种结合网络地址转换的提供商边缘设备及其使用方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050036470A1 (en) * 2003-08-04 2005-02-17 Calvert Nathan Hunter Multi-hop peer-to-peer wireless local loop phone system and method
US7355968B2 (en) * 2003-09-30 2008-04-08 International Business Machines Corporation Method of stateless group communication and repair of data packets transmission to nodes in a distribution tree
US7417981B2 (en) * 2003-10-15 2008-08-26 Vonage Holdings Corp. Method and apparatus for enhanced Internet Telephony
WO2005041534A1 (en) * 2003-10-16 2005-05-06 Ntt Docomo, Inc. Mobile peer-to-peer networking
US7280486B2 (en) * 2004-01-07 2007-10-09 Cisco Technology, Inc. Detection of forwarding problems for external prefixes
US20060050648A1 (en) * 2004-09-09 2006-03-09 Microsoft Corporation Reducing storage requirement for route information
WO2007034313A1 (en) * 2005-09-23 2007-03-29 Thomas Friedrich Theo Fuhrmann Routing method and apparatus
US7633882B2 (en) * 2006-02-02 2009-12-15 Eaton Corporation Ad-hoc network and method employing globally optimized routes for packets
US7855326B2 (en) * 2006-06-06 2010-12-21 Monsanto Technology Llc Methods for weed control using plants having dicamba-degrading enzymatic activity
US20080031237A1 (en) * 2006-08-02 2008-02-07 Tsu-Hung Liu Internet media server finding and playing methodologies
CN101355490B (zh) 2007-07-25 2012-05-23 华为技术有限公司 消息路由方法、系统和节点设备

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1747456A (zh) * 2004-09-09 2006-03-15 微软公司 对于路由信息减少存储需求
CN1645838A (zh) * 2005-01-19 2005-07-27 哈尔滨工业大学 完整路由信息的自组网按需距离矢量多路由方法
CN1960313A (zh) * 2005-11-03 2007-05-09 中兴通讯股份有限公司 一种结合网络地址转换的提供商边缘设备及其使用方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8401016B2 (en) 2007-07-25 2013-03-19 Huawei Technologies Co., Ltd. Method, system and peer device for message routing

Also Published As

Publication number Publication date
ATE556518T1 (de) 2012-05-15
US20100118874A1 (en) 2010-05-13
EP2164207A1 (en) 2010-03-17
WO2009012725A1 (fr) 2009-01-29
US8401016B2 (en) 2013-03-19
EP2164207A4 (en) 2010-07-28
EP2164207B1 (en) 2012-05-02
CN101355490A (zh) 2009-01-28

Similar Documents

Publication Publication Date Title
CN101355490B (zh) 消息路由方法、系统和节点设备
McCauley et al. Enabling a permanent revolution in internet architecture
EP2112788B1 (en) A method and node for p2p content sharing
Tarkoma Overlay Networks: Toward Information Networking.
JP2014511089A (ja) プライベートアドレスとパブリックアドレスのマッピング
CN104967677B (zh) 一种基于ndn缓存优化的文件传输方法以及装置
KR101727233B1 (ko) 콘텐츠 중심 네트워크에서 sip-기반 관리자 라우팅
CN103139076A (zh) 分布式哈希表互通网络系统、域间节点及实现方法
Hassanzadeh-Nazarabadi et al. DHT-based edge and fog computing systems: infrastructures and applications
Poryev et al. CARMA based MST approximation for multicast provision in P2P networks
Borch et al. Searching in Variably Connected P2P Networks.
KR101124635B1 (ko) IPv4/IPv6 연동 게이트웨이
Zheng et al. Improving Chord lookup protocol for P2PSIP-based Communication Systems
JP5287500B2 (ja) ノード装置およびノード装置用プログラム
Dowlatshahi et al. A scalable and efficient architecture for service discovery
Grishchenko et al. On the design of a practical information-centric transport
JP2011035686A (ja) 経路情報管理システム、経路情報管理方法、およびプログラム
Oh-ishi et al. Architecture for a Peer-to-peer Network with IP Multicasting
JP2006221457A (ja) Pure型P2P通信におけるレプリケーション制御を行うサーバントとそのレプリケーション制御方法およびプログラム
Yu et al. BGKR: A novel P2P network based on generalized Kautz and ring with constant congestion
Riahla et al. MultiPathP2P: a simple multipath ant routing system for P2P networks
Hwang et al. Resource name-based routing in the network layer
Kim et al. Securing anonymity in P2P network
Ranasinghe et al. Dynamic proxy assisted mobility support for third generation peer-to-peer networks
Lin et al. Analysis time delay of a next generation name resolution system

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant