CN101904136B - 提供用于分布式路由表的安全模式的方法和系统 - Google Patents

提供用于分布式路由表的安全模式的方法和系统 Download PDF

Info

Publication number
CN101904136B
CN101904136B CN200880123057.3A CN200880123057A CN101904136B CN 101904136 B CN101904136 B CN 101904136B CN 200880123057 A CN200880123057 A CN 200880123057A CN 101904136 B CN101904136 B CN 101904136B
Authority
CN
China
Prior art keywords
drt
message
node
safe
inundation
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.)
Expired - Fee Related
Application number
CN200880123057.3A
Other languages
English (en)
Other versions
CN101904136A (zh
Inventor
K·C·兰森
S·K·辛格豪尔
R·P·帕姆瓦帕提
T·M·巴顿
J·L·德威利
T·R·曼尼恩
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
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 Microsoft Corp filed Critical Microsoft Corp
Publication of CN101904136A publication Critical patent/CN101904136A/zh
Application granted granted Critical
Publication of CN101904136B publication Critical patent/CN101904136B/zh
Expired - Fee Related 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/44Distributed 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/54Organization of routing tables
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Storage Device Security (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

节点加入网格,其中该网格包括用于确定网格中的节点的地址的分布式路由表(DRT)。DRT消息根据该DRT的安全模式来处理。

Description

提供用于分布式路由表的安全模式的方法和系统
背景 
对等(P2P)网络提供无服务器通信环境。当今大多数P2P网络都是开放且不安全的。P2P网络中的对等体可以在没有诸如认证或授权等安全考虑事项的情况下向另一对等体提供路由信息并在另一对等体处查找路由信息。 
概述 
下面提供本发明的简要概述以便向读者提供基本的理解。本概述不是本发明的详尽概观,并且既不标识本发明的关键/重要元素,也不描绘本发明的范围。其唯一目的是以简化形式提供在此公开一些概念作为稍后提供的更详细描述的序言。 
本发明的各实施例提供了用于分布式路由表(DRT)的安全模式。DRT包括具有分布在一组机器上的条目的表,该表可用于通过找到经过对等体网络的路线来将键映射到端点。在一个示例中,基本安全模式要求节点证明发布键的权限。在另一样示例中,成员资格安全模式要求节点证明发布键和查找键的权限。在又一示例中,机密安全模式要求节点证明发布键、查找键的权限,并且加密DRT消息中的至少一部分数据以使得对探测DRT通信的未授权节点遮蔽该数据。 
许多附带特征将随着参考下面的详细描述并结合附图进行理解而得到更好的认识。 
附图简述 
附图中使用相同的附图标记来指代相同的部分。 
图1是根据本发明一实施例的分布式路由表的框图。 
图2是根据本发明一实施例的使用分布式路由表的对等网络的框图。 
图3是示出根据本发明一实施例的对分布式路由表使用安全模式的操作的流程图。 
图4是示出根据本发明一实施例的用于分布式路由表的基本安全模式的操作的流程图。 
图5是示出根据本发明一实施例的用于分布式路由表的基本安全模式的操作的流程图。 
图6是示出根据本发明一实施例的用于分布式路由表的成员资格安全模式的操作的流程图。 
图7是示出根据本发明一实施例的用于分布式路由表的成员资格安全模式的操作的流程图。 
图8是示出根据本发明一实施例的用于分布式路由表的机密安全模式的操作的流程图。 
图9是示出根据本发明一实施例的用于分布式路由表的机密安全模式的操作的流程图。 
图10是用于实现本发明的各实施例的示例计算设备的框图。 
详细描述 
下面结合附图提供的详细描述旨在作为对本发明各示例的描述,而非表示用于解释或利用本发明各示例的唯一形式。本说明书阐述各示例的功能以及用于构造和操作各示例的步骤序列。然而,相同或等效的功能与序列可由不同的示例来实现。 
对等网络提供无服务器环境以便在多个计算设备之间进行协作。P2P网络以自组织方式将各设备连接成被称为网格(或覆盖网络)的节点集合。网格在底层传输层(例如,IPv4或IPv6网络)或物理网络(例如,无线传输能力)上操作。同样,DRT对该层是不可知的并且被抽象成可分离且可插入的层(被称为传输)中的一个。 
DRT支持在网格中路由信息。DRT包括分布在网格中的若干节点上的一组路由表。DRT可由节点用来确定到网格中的目标节点的路线(例如,一系列网际协议(IP)地址、物理地址(例如MAC地址)、或设备ID)以及该目标节点本身的网络地址。DRT可包括对应于键(例如,节点的数字标识(ID)、节点的字符串ID等)的路由条目及其对应的网络地址。每一个节点可使用存 储在本地或另一节点处的DRT的一部分来搜索键。一旦该节点在DRT中找到所需键,该节点就可确定目标目的的网络地址;在键查找过程期间查询其本地DRT部分的节点集一起形成到该目标节点的路线。该节点然后可使用目标节点的网络地址(和/或在键查找期间发现的路线)来联系该目标节点以建立通信(例如,文件共享)。 
图1示出了根据本发明的一实施例的系统100。在一个实施例中,系统100的一个或多个组件可以由可由一个或多个计算设备来执行的计算机可读指令来实现。示例计算设备以下结合图10讨论。 
系统100包括用于支持包括节点121-123的网格的DRT 102。节点121-123分别在计算设备111-113上执行。DRT 102分布在寻求经由同一应用程序进行协作的多个节点121-123上。每一个节点121-123包括DRT 102的单独部分。在一个实施例中,单个设备可支持参与一个或多个网格的两个或更多节点(也被称为节点实例)。例如,单个应用程序可实例化参与同一网格的两个不同节点。 
应用程序131、132和133被示为分别在每一个设备111-113上。应用程序使用P2P网格来交换与该应用程序相关的信息。示例应用程序包括文件共享、实时协作、分布式搜索引擎、网际协议语音(VoIP)等。 
在一个实施例中,节点使用组件化模型。节点组件包括协议处理程序以及核心API。节点组件引用可分离子系统的可插入模块,这些模块可包括路由表管理、传输、引导、安全、以及日志记录。每一个模块都可由一应用程序实例化。 
可插入模块的实施例包括安全模块。在一个实施例中,网格中的每一个节点使用相同的安全模块实现来操作和管理如此处所描述的安全模式,诸如分别在节点121-123处示出的安全模块124-126。安全模块允许DRT 102实现允许应用程序作者为其P2P网格配置安全设置的一组安全模式。应用程序可按需将DRT配置成具有各种安全设置。更多的安全性通常耗费更多的路由带宽并且需要更多的计算,但允许更严的管理和更好的私密性。 
用于DRT 102的安全模式的各实施例包括(从最低安全级别到最高安全级别)基本安全模式、成员资格安全模式、以及机密安全模式。在一个实施例 中,安全模式包括在它之下的安全模式的特征。例如,成员资格模式包括基本模式的安全特征并且添加其自己的安全特征。 
图1还包括安全标识(ID)服务150。设备可与服务150通信以获取供与此处所描述的安全模式一起使用的安全ID 152。安全ID允许节点证明其参与网格中的其他节点的权限。示例安全ID包括证书。 
转向图2,示出了P2P网络的网格200的一实施例。网格200包括五个节点201-205,每一个节点分别具有安全模块206-210。这些节点可支持诸如台式PC、服务器、移动设备等计算设备(未示出)的混合上的应用程序或服务。 
网格200在被示为网络250的底层传输层(例如,IPv4或IPv6网络、或物理网络)之上形成。每一个节点存储并维护分布式路由表的一部分。节点的DRT部分被称为该节点的本地DRT。在图2中,节点201-205分别存储本地DRT 211-215。本地DRT 211-215的组合构成该网格的整个DRT。 
为了找到网格中的节点的地址(例如IP地址),节点可搜索另一节点的键。搜索节点可执行对其他节点的本地DRT的查找操作,直到找到该搜索的目标键。节点还可向网格发布其自己的键以便用其键来填充DRT。 
在搜索算法的一个实施例中,节点可通过在该节点的本地DRT中查找键来搜索该键。如果未找到该键,则该节点开始搜索其他节点的本地DRT。例如,搜索节点询问具有在数值上最接近所需键的键的节点,该节点是否在其本地DRT中具有该键。该节点进而在其自己的本地DRT中查找并返回对应于该键的所请求的节点的地址或者发布其本地DRT中的在数值上最接近的键的节点的地址。该过程重复直到找到该键或者已确定不存在这样的键。这一路由系统的示例包括分布式散列表(DHT)和对等名称解析协议(PNRP)。DRT为这些路由系统提供路由高速缓存基础结构。 
DHT用于存储由键标识的信息。在DHT中,键空间包括一组键。键空间在网格中的节点之间分解。每一个节点都负责一定范围的键。当一节点想要存储或检索关于特定键的信息时,该节点必须首先找到负责该键的节点,该节点搜索负责该键范围的节点。例如,在图2中,节点201可具有根15并且负责键8-22,节点202具有根26并且负责键23-31等等。通常只有一个节点发布对于特定键范围的键。当节点进入和离开网格时,调整分配给该节点的键范围。 该调整可以跨网格中的所有节点或一部分节点来进行。 
在PNRP中,节点维护所存储的关于其向网格发布的自己的键的信息。因此,节点可发布多个键并且特定键可由不止一个节点发布(与通常将每一个键分配给仅仅一个节点的DHT相比)。同样,在节点与其他节点通信时,将这些其他节点的键添加到该节点的本地DRT。 
得益于本说明书的本领域的技术人员可以理解,可将PNRP安全名与如此处所描述的DRT安全性区分开来。PNRP安全名允许节点证明它拥有特定键以防止键欺骗;它通过将名称与注册节点的公钥组合,并且提供证明拥有该公钥的证书来实现这一点。然而,PNRP不具有控制节点发布键或查找键的权限的安全措施。 
PNRP的示例在图2中示出。每一个节点201-205分别具有其自己的键(即其根)100、200、300、450和500。每一个节点201-205将其自己的键以及其他键存储在其本地DRT中。假设节点201想要确定对应于键(即,PNRP ID)300的端点(即,节点)。节点201在其自己的本地DRT 211中查找键300并且没有找到该键。节点201然后在其本地DRT 211中查找在数值上最接近所需键300的键。在这种情况下,键200最接近键300,因此节点201向对应于键200的节点(即,节点202)发送PNRP请求消息。因为节点202在其高速缓存(即,本地DRT 212)中具有键300,所以节点202将节点203(其对应于键300)的地址(例如,IPv6地址)发送到节点201。节点201然后可使用该地址来向节点203发送PNRP请求消息以开始与节点203通信。节点201还将键300添加到其自己的本地DRT 211。 
无论使用DHT、PNRP、还是某一其他路由系统,此处的各实施例提供关于对DRT中的信息的发布和访问的安全措施。 
转向图3,流程图300示出了根据本发明一实施例的对分布式路由表使用安全模式的操作。在一个实施例中,流程图300的至少一部分可以由可由一个或多个计算设备执行的计算机可读指令来实现。 
从操作302开始,获取安全ID。安全ID可从对网格的参与中带外获取。例如,计算设备可连接到安全ID服务(诸如网站)并获取安全ID。 
安全ID可以在诸如单个P2P会话等特定期限内有效。例如,用户可能想 要加入作为新闻网站的一部分的对等网络。该用户从新闻网站获取证书并在DRT消息中使用该证书。每一个节点都接收可以跟踪回到发行者(例如,经由证书链)的唯一安全ID。网格中的所有节点都接收安全ID以使得这些节点可彼此认证各种DRT消息,如下所述。 
接着,在操作304中,启动供与P2P网络一起使用的应用程序。在一个实施例中,该应用程序用所需安全模式来预编程。在一个实施例中,不在网格中混合安全模式,因此所有节点都使用相同的DRT安全模式。当一应用程序希望加入网格时,可存在特定的网格范围配置期望。例如,可以期望应用程序使用传输控制协议(TCP)而不是如用户数据报协议(UDP)的另一协议来通信。类似地,网格将期望加入的应用程序使用如此处所描述的特定安全模式。 
继续至操作306,创建节点并且该节点加入网格。例如,打开用于网格的DRT的节点实例。接着,在操作308中,使用如此处所描述的安全模式来处理DRT消息。处理DRT消息包括构造并发送DRT消息以及接收、认证、并处理得到认证的DRT消息。DRT消息包括与本地DRT高速缓存维护和搜索操作相关的消息,诸如洪泛消息(用于向对等体告知键的存在)、查找消息(用于查找键的拥有者)、询问消息(用于请求供认证的安全ID)、授权消息(用于传递供认证的安全ID)等等。 
继续至操作310,节点离开网格。例如,关闭DRT的节点实例。 
图3的操作的示例如下。体育网站具有用于向用户分发体育博客的网格。用户去往该体育网站并注册博客。在注册过程期间,用户接收供与网格一起使用的证书。用户然后启动其客户机器上的应用程序以加入网格。当与该用户相关联的节点在该网格中注册其存在(例如,发布其键)时,其他节点将认证证书以确保该用户的节点被授权在该网格中发布键。 
此外,用户的证书可具有有限期限。例如,体育博客服务可向用户收取月度费用。证书在每个月用户支付了月度费用时续订。如果用户未支付月度费用,则证书期满并且该用户不再能够使用体育博客网格。实际上,用户是因为网格中的其他节点将忽略该用户的节点所发送的任何发布键消息而无法使用该网格的。因为节点的键将不会被添加到DRT,所以其他节点将无法找到该节点的网络地址。 
转向图4-5,流程图400和500示出了根据本发明的一实施例的基本安全模式的操作。在一个实施例中,流程图400和500的至少一部分可以由可由一个或多个计算设备执行的计算机可读指令来实现。在另一实施例中,流程图400和/或500的逻辑由节点处的安全模块来实现。 
在一个实施例中,使用基本安全模式来控制发布键。以此方式,网格中的节点确保未授权节点没有向DRT提供假键。这些假键可用于将对等体定向到具有恶意目的的地址。可以理解,基本模式不阻止对等节点搜索节点的本地DRT(即,执行DRT查找)。在基本模式中,任何节点仍然能够搜索另一节点的本地DRT。 
流程图400示出了根据本发明的一实施例的发布键的操作。发布键的节点在网格中搜索需要知道新键的邻居节点(操作402)。在这样做时,发布节点向找到的相邻节点请求安全ID。进而,邻居将其安全ID发送到发布节点以便认证(操作404)。所有得到认证的邻居都将接收到洪泛消息,如下所述。在一个实施例中,潜在邻居包括具有接近发布节点的键的键的节点以及网格中的随机节点。通过向网格中的各个节点发布其键,发布节点向其他节点的本地DRT提供其键。 
发布节点通过向邻居节点发送DRT洪泛消息来向这些邻居(即,键空间中的将来邻居)警告新键的存在(操作406)。洪泛消息向发布节点的邻居告知键的存在。 
进而,这些邻居向发布节点请求认证并且该发布节点将其安全ID提供给作出请求的邻居(操作408)。在一个实施例中,邻居向发布节点发送询问消息以请求安全ID,并且发布节点用具有安全ID的授权消息来响应该邻居。在一替换实施例中,安全ID通过在操作406中发送的DRT洪泛消息中包括发布节点的安全ID来提供给邻居。 
流程图500示出了根据本发明的一实施例的节点接收DRT洪泛消息的操作。从操作502开始,节点接收DRT洪泛消息。接着,在操作504中,节点认证与接收到的洪泛消息相关联的发布节点的安全ID。在一个实施例中,接收节点在询问-授权消息交换中请求并接收发布节点的安全ID。在另一实施例中,发布节点的安全ID被包括在DRT洪泛消息中。 
接收节点通过将附加安全ID的发行者与接收节点自己的安全ID的发行者进行比较并确保发行者匹配(例如,安全ID服务150)来确认安全ID。例如,接收节点将附加证书与其自己的证书的配置的根证书链进行比较。如果其证书链具有相同的根链,则发送节点得到认证。 
如果安全ID得到认证,则处理DRT洪泛消息,如操作508所示。例如,将DRT洪泛消息中的键和对应的IP地址添加到节点的本地DRT。 
如果安全ID未得到认证,则该逻辑继续至操作506以使得接收到的DRT洪泛消息失效。在一个实施例中,节点忽略消息(例如,让消息超时)。在另一实施例中,节点回答它不理解消息。 
转向图6和7,流程图600和700示出了根据本发明的一实施例的成员资格安全模式的操作。在一个实施例中,流程图600和700的至少一部分可以由可由一个或多个计算设备执行的计算机可读指令来实现。在另一实施例中,流程图600和/或700的逻辑由节点处的安全模块来实现。 
在一个实施例中,成员资格模式在允许节点发布键和查找键之前要求节点证明其在网格中的成员资格。在成员资格模式中,节点必须证明搜索另一节点的本地DRT的权限。成员资格模式确保试图连接到其他节点(即,找到其网络地址)的节点是网格中的有效参与者。成员资格模式包括如以上结合图4和5描述的发布键安全措施。 
流程图600示出了根据本发明的一实施例的发送DRT查找消息的操作。从操作602开始,节点构造DRT查找消息。DRT查找消息要求节点在其本地DRT中搜索特定键。接着,在操作604中,该节点向一节点发送DRT查找消息。进而,接收该DRT查找消息的节点向发送节点请求认证并且该发送节点将其安全ID提供给该接收节点(操作606)。在一替换实施例中,安全ID通过在操作604中的DRT查找消息中包括安全ID来提供。 
流程图700示出了根据本发明的一实施例的接收DRT查找消息的操作。从操作702开始,节点接收DRT查找消息。接着,在操作704中,该逻辑认证发送DRT查找消息的节点的安全ID。在一个实施例中,接收节点在询问消息中请求发送节点的安全ID并且在来自发送节点的授权消息中接收发送节点的安全ID。在另一实施例中,发送节点的安全ID被包括在DRT查找消息本 身中。 
在另一实施例中,认证包括检查包括在与键查找相关联的DRT消息中的防篡改机制。在该实施例中,在查找/询问/授权消息中的每一个中,采用其中发送节点用由接收节点确认的数字签名来“保护”该消息的各部分的防篡改机制。 
如果安全ID得到认证,则该逻辑继续至操作708以处理DRT查找消息。在一个实施例中,为了处理DRT查找消息,节点在其本地DRT中查找所需键并且在找到该键的情况下返回对应的网络地址。如果节点未找到所需键,则该节点返回该节点的本地DRT中的最接近的键的网络地址。 
如果安全ID未得到认证,则该逻辑继续至操作706以使得DRT查找消息失效。例如,可忽略失效消息或者可以用出错消息来响应失效消息。 
转向图8-9,流程图800和900示出了根据本发明的一实施例的机密安全模式的操作。在一个实施例中,流程图800和900的至少一部分可以由可由一个或多个计算设备执行的计算机可读指令来实现。在另一实施例中,流程图800和/或900的逻辑由节点处的安全模块来实现。 
机密安全模式包括如以上结合图4-7描述的发布键和键查找安全措施。另外,机密模式加密网格中的节点之间的DRT消息的至少一部分。 
流程图800示出了根据本发明的一实施例的当在机密安全模式中时发送DRT消息的操作。从操作802开始,发送节点与对等节点建立加密。该加密可包括非对称密钥方案(例如,公钥/私钥)、对称密钥方案、混合方案(例如,使用非对称密钥来分发对称密钥,并且然后使用对称密钥来继续通信)等等。例如,在私钥/公钥对加密方案中,发送节点要求接收节点计算公钥/私钥对并将公钥发送到该发送节点。 
在另一示例中,在混合模式中,发送节点生成用于加密消息的各部分的对称密钥并且用目标节点的公钥来加密该对称密钥。加密对称密钥被包括在消息中。目标节点(即,接收节点)通过用其私钥来解密该对称密钥来获取该对称密钥。在该方案中,在先前不进行对称密钥的密钥交换的情况下实现私密性。目标节点的公钥在先前交换中获取。该公钥高速缓存在源节点中以便在向目标节点发送消息时使用。 
接着,在操作804中,节点构造DRT消息。继续至操作806,发送节点加密DRT消息的至少一部分。例如,发送节点可使用如在操作802中导出的密钥来加密一部分。接着,在操作808中,将DRT消息发送到接收节点。 
在一个实施例中,在网格中的两个节点之间建立的加密对于该节点对是唯一的。例如,在图2中,节点201和202所使用的密钥对(例如,对称或非对称)与节点201和205所使用的密钥对不同。 
流程图900示出了根据本发明的一实施例的当在机密安全模式中时接收DRT消息的操作。从操作902开始,与对等节点建立加密,诸如设置对称或非对称密钥对。例如,接收DRT消息的节点可导出公钥/私钥对。接收节点然后将公钥发送到发送节点并且保存私钥。 
接着,在操作904中,接收节点接收具有已加密的至少一部分的DRT消息。继续至操作906,接收节点解密加密部分。例如,接收节点使用其私钥来解密。接着,在操作908中,接收节点在适当时处理DRT消息。在一个实施例中,安全模块建立如上所述的将对称密钥连同DRT消息一起发送的混合加密方案。 
机密安全模式的各实施例对窥探的眼睛遮蔽DRT消息的各部分。以此方式,防止诸如两个节点之间的路由器等中间实体看见DRT消息的各敏感方面。可以加密的示例部分包括消息中用于解析与键相关联的IP地址的部分、应用程序净荷、节点在其本地DRT中所具有的IP地址的集合等。在一种情况下,只加密DRT消息的一部分以使得诸如因特网服务提供商(ISP)等中间实体可确定消息与P2P活动相关,但仍然无法查看该DRT消息的各敏感部分。 
本发明的各实施例涉及用于分布式路由表的安全模式。应用程序作者可分配对于将由网格处理的信息的敏感性适当的安全模式。在必要时增加安全性的能力使DRT成为用于各种各样的公共和商用P2P系统的合适的平台。DRT安全模式可支持如PNRP的大型开放式系统,以及受控的专用企业P2P网络。 
图10及以下讨论提供对实现本发明的各实施例的合适的计算环境的简要概括描述。图10的操作环境只是合适的操作环境的一个示例,并不旨在对该操作环境的使用范围或功能提出任何局限。可适用于与在此所述的各实施例一起使用的其它公知计算设备、环境、和/或配置包括但不限于个人计算机、服务 器计算机、手持或膝上型设备、移动设备(诸如移动电话、个人数字助理(PDA)、媒体播放器等等)、多处理器系统、消费电子产品、小型计算机、大型计算机、包括任何以上系统或设备的分布式计算环境等等。 
尽管并非必需,但本发明的各实施例在由一个或多个计算设备执行的“计算机可读指令”的一般上下文中描述。计算机可读指令可通过计算机可读介质来分发(在以下讨论)。计算机可读指令可被实现为执行特定任务或实现特定抽象数据类型的程序模块,如函数、对象、应用程序编程接口(API)、数据结构等等。通常,计算机可读指令的功能可按需在各个环境中组合或分布。 
图10示出了用于实现本发明的一个或多个实施例的计算设备1000的示例。在一种配置中,计算设备1000包括至少一个处理单元1002和存储器1004。取决于计算设备的确切配置和类型,存储器1004可以是易失性的(如RAM)、非易失性的(如ROM、闪存等)或是两者的某种组合。该配置在图10中由虚线1006来例示。 
在其它实施例中,设备1000可以包括附加特征和/或功能。例如,设备1000还可以包括附加存储(例如,可移动和/或不可移动),其中包括但不限于磁存储、光存储等等。这样的附加存储在图10中由存储1008示出。在一个实施例中,用于实现诸如安全模块124、节点121和应用程序131等本发明的各实施例的计算机可读指令可以在存储1008中。存储1008还可以储存实现操作系统、应用程序等的其它计算机可读指令。 
此处所使用的术语“计算机可读介质”包括计算机存储介质。计算机存储介质包括以用于存储诸如计算机可读指令或其它数据这样的信息的任何方法或技术来实现的易失性和非易失性、可移动和不可移动介质。存储器1004和存储1008都是计算机存储介质的示例。计算机存储介质包括但不限于,RAM、ROM、EEPROM、闪存或其它存储器技术、CD-ROM、数字多功能盘(DVD)或其它光存储、磁带盒、磁带、磁盘存储或其它磁存储设备、或者可用于存储所需信息并且可由设备1000访问的任何其它介质。任何这样的计算机存储介质都可以是设备1000的一部分。 
设备1000还可包括允许该设备1000与其它设备进行通信的通信连接1012。通信连接1012可包括但不限于,调制解调器、网络接口卡(NIC)、集 成网络接口、射频发射机/接收机、红外线端口、USB连接、或用于将计算设备1000连接到其它计算设备的其他接口。通信连接1012可以包括有线连接或无线连接。通信连接1012可以发送和/或接收通信媒体。 
术语“计算机可读介质”可以包括通信介质。通信介质通常以诸如载波或其它传输机制等“已调制数据信号”来体现计算机可读指令或其它数据,并包括任何信息传送介质。术语“已调制数据信号”指的是其一个或多个特征以在信号中编码信息的方式被设定或更改的信号。作为示例而非限制,通信介质包括有线介质,如有线网络或直接线连接,以及无线介质,如声学、射频、红外、近场通信(NFC)和其它无线介质。 
设备1000可包括输入设备1014,诸如键盘、鼠标、笔、语音输入设备、触摸输入设备、红外照相机、视频输入设备和/或任何其它输入设备。设备1000中还可包括输出设备1016,诸如一个或多个显示器、扬声器、打印机和/或任何其它输出设备。输入设备1014和输出设备1016可以通过有线连接、无线连接或其任何组合来连接到设备1000。在一个实施例中,来自另一计算设备的输入设备或输出设备可用作计算设备1000的输入设备1014或输出设备1016。 
计算设备1000的组件可以通过诸如总线等各种互连来连接。这些互连可包括诸如PCI Express等外围部件互连(PCI)、通用串行总线(USB)、火线(IEEE 1394)、光学总线结构等。在另一实施例中,计算设备1000的组件可以通过网络互连。例如,存储器1004可由位于通过网络互连的不同物理位置的多个物理存储器单元组成。 
在描述和权利要求书中,可使用术语“耦合的”及其派生词。“耦合的”可意味着两个或多个元件正在接触(物理地、电子地、磁性地、光学地等)。“耦合的”还可意味着两个或多个元件未彼此接触,但仍彼此合作或交互(例如,通信地耦合的)。 
本领域技术人员会认识到,用于存储计算机可读指令的存储设备可分布在网络上。例如,可以通过网络1020访问的计算设备1030可以储存实现本发明的一个或多个实施例的计算机可读指令。计算设备1000可以访问计算设备1030并下载部分或全部计算机可读指令来执行。或者,计算设备1000可以按需下载计算机可读指令的片断,或者某些指令可以在计算设备1000处执行而 某些则在计算设备1030处执行。本领域的技术人员还可认识到,所有或部分计算机可读指令可以由诸如数字信号处理器(DSP)、可编程逻辑阵列等专用电路来实现。 
此处描述了本发明各实施例的各种操作。在一个实施例中,所描述的操作中的一个或多个可以组成储存在一个或多个计算机可读介质上的计算机可读指令,这些指令如果被计算设备执行则使得计算设备执行所描述的操作。描述一些或全部操作的顺序不应被解释为暗示了这些操作必须要依赖于顺序。从本说明书获益的本领域技术人员应理解替换的排序。此外,应该理解并非所有的操作都必须存在于本发明的每一实施例中。 
本发明各实施例的以上描述,包括在摘要中所描述的内容,不旨在是穷举或将各实施例限于所公开的精确形式。尽管本发明的具体实施例和示例此处是为了说明的目的而描述的,但如相关领域的技术人员鉴于以上详细描述所能认识到的,各种等效技术方案和修改都是可能的。在所附权利要求书中所使用的术语不应被解释为将本发明限于说明书中所公开的具体实施例。相反,所附权利要求书应该根据所确立的权利要求解释原则来解释。 

Claims (17)

1.一种用于分布式路由表DRT的方法,包括:
由分布式网格的第一节点从所述分布式网格的第二节点接收DRT洪泛消息,其中所述第一节点存储DRT的本地部分,所述DRT被跨网格分布以确定所述网格的各个节点的地址,其中所述DRT被配置来实现一组一个或多个DRT安全模式,所述DRT安全模式允许所述DRT用所述网格的一个或多个安全设置来配置;
为所述第一节点存储安全标识ID,所述第一节点的安全ID具有第一发行者;
为所述第二节点确定安全标识ID,所述第二节点的安全ID具有第二发行者;
将所述第二节点的安全ID的所述第二发行者与所述第一节点的安全ID的所述第一发行者进行比较;
在所述第二发行者与所述第一发行者匹配时:
认证所述DRT洪泛消息;以及
将从所述第二节点接收的所述DRT洪泛消息中包括的键和对应的IP地址添加到存储在所述第一节点上的所述DRT的本地部分;以及
在所述第二发行者不与所述第一发行者匹配时,使所述DRT洪泛消息失效。
2.如权利要求1所述的方法,其特征在于,所述DRT洪泛消息的至少一部分是加密的,所述方法还包括:
解密所述DRT洪泛消息的所述部分。
3.如权利要求1所述的方法,其特征在于,还包括:
从安全标识服务接收所述第一节点的安全ID。
4.如权利要求1所述的方法,其特征在于,所述第二节点的安全ID被包括在所述DRT洪泛消息中。
5.如权利要求1所述的方法,其特征在于,所述DRT洪泛消息告知所述第二节点的键的存在。
6.如权利要求1所述的方法,其特征在于,所述网格的各个节点的每一个将所述DRT的一部分存储为本地DRT。
7.如权利要求1所述的方法,其特征在于,还包括:
接收DRT查找消息,所述查找消息请求所述第一节点搜索存储在所述第一节点上的所述DRT的本地部分中的所述第二节点的键。
8.一种用于分布式路由表DRT的方法,包括:
从安全标识服务接收安全标识ID;
执行与包括分布式路由表DRT的对等网格一起使用的应用程序,以确定所述对等网格的节点的地址,其中所述DRT被配置来实现一组DRT安全模式,所述DRT安全模式允许所述DRT用所述对等网格的DRT安全设置来配置,且其中所述应用程序用所需安全模式来预编程;
根据使用所述安全ID的DRT安全模式的至少一个,从所述对等网格的单独节点处理DRT消息,所述DRT消息包括DRT洪泛消息和DRT查找消息,其中基于所述安全ID是否被认证,处理所述DRT消息或使所述DRT洪泛消息或DRT查找消息失效。
9.如权利要求8所述的方法,其特征在于,其中所述DRT消息包括被发送到所述对等网格的接收节点的DRT洪泛消息,所述方法还包括:在所述接收节点请求时向所述接收节点提供所述安全ID。
10.如权利要求8所述的方法,其特征在于,从所述对等网格的单独节点处理所述DRT消息包括:
当所述DRT安全模式的至少一个包括基本模式时,
接收所述DRT消息,其中所述DRT消息包括DRT洪泛消息;
使用所述安全ID来认证所述DRT洪泛消息;
当DRT洪泛消息得到认证时,处理所述DRT洪泛消息;以及
当DRT洪泛消息未得到认证时,使所述DRT洪泛消息失效。
11.如权利要求8所述的方法,其特征在于,从所述对等网格的单独节点处理所述DRT消息包括:
当所述DRT安全模式的至少一个包括成员资格模式时,
接收所述DRT消息,其中所述DRT消息包括DRT查找消息;
使用所述安全ID来认证所述DRT查找消息;
当所述DRT查找消息得到认证时,处理所述DRT查找消息;以及
当所述DRT查找消息未得到认证时,使所述DRT查找消息失效。
12.如权利要求8所述的方法,其特征在于,从所述对等网格的单独节点处理所述DRT消息包括:
当所述DRT安全模式的至少一个包括机密模式时,
构造所述DRT消息;
加密所述DRT消息的一部分;以及
发送所述DRT消息。
13.如权利要求8所述的方法,其特征在于,从所述对等网格的单独节点处理所述DRT消息包括:
当所述DRT安全模式包括机密模式时,
接收DRT消息,其中所述DRT消息的一部分是加密的;
解密所述DRT消息的加密部分;以及
处理所述DRT消息。
14.如权利要求13所述的方法,其特征在于,所述方法还包括:
与所述单独节点建立加密方案。
15.一种对等网格系统,包括:
多个节点,其中各个节点将分布式路由表DRT的对应部分存储为本地DRT,且其中所述DRT被配置来实现一组DRT安全模式;以及
对应于所述多个节点的第一节点的第一安全模块,其中所述第一安全模块被配置来根据该组DRT安全模式的至少一个DRT安全模式来操作,所述第一安全模块包括:
用于从所述多个节点的第二节点接收DRT消息的装置,所述DRT消息包括DRT洪泛消息和DRT查找消息,所述DRT查找消息询问所述各个节点的一个或多个以搜索所述本地DRT以寻找单独节点的键;
用于将所述第一节点的安全ID与所述第二节点的安全ID进行比较的装置;
用于在所述第一节点的安全ID与所述第二节点的安全ID的发行者匹配时进行以下操作的装置:认证所述DRT洪泛消息,处理所述DRT洪泛消息以将从所述第二节点接收的所述DRT洪泛消息中包括的键和对应的IP地址添加到所述第一节点的本地DRT,认证所述DRT查找消息,用对应于所述单独节点的键的网络地址来响应所述DRT查找消息;
用于在所述第一节点的安全ID不与所述第二节点的安全ID的发行者匹配时,使所述DRT洪泛消息或DRT查找消息失效的装置。
16.如权利要求15所述的对等网格系统,其特征在于,所述DRT洪泛消息由所述第二节点发布并告知所述第二节点的键的存在。
17.如权利要求15所述的对等网格系统,其特征在于,还包括:
当所述DRT查找消息失效时,忽略所述DRT查找消息或用出错消息响应所述DRT查找消息。
CN200880123057.3A 2007-12-21 2008-11-25 提供用于分布式路由表的安全模式的方法和系统 Expired - Fee Related CN101904136B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/963,782 US7987290B2 (en) 2007-12-21 2007-12-21 Security modes for a routing table distributed across multiple mesh nodes
US11/963,782 2007-12-21
PCT/US2008/084617 WO2009085493A1 (en) 2007-12-21 2008-11-25 Security modes for a distributed routing table

Publications (2)

Publication Number Publication Date
CN101904136A CN101904136A (zh) 2010-12-01
CN101904136B true CN101904136B (zh) 2014-05-28

Family

ID=40789984

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200880123057.3A Expired - Fee Related CN101904136B (zh) 2007-12-21 2008-11-25 提供用于分布式路由表的安全模式的方法和系统

Country Status (4)

Country Link
US (1) US7987290B2 (zh)
EP (1) EP2223471A1 (zh)
CN (1) CN101904136B (zh)
WO (1) WO2009085493A1 (zh)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8161095B2 (en) 2007-03-12 2012-04-17 Microsoft Corporation Distributed routing table interface
US9232389B2 (en) * 2008-06-11 2016-01-05 Marvell World Trade Ltd. Mixed mode security for mesh networks
US20110066851A1 (en) * 2009-09-14 2011-03-17 International Business Machines Corporation Secure Route Discovery Node and Policing Mechanism
US8099479B2 (en) * 2009-12-15 2012-01-17 Intel Corporation Distributed mesh network
CN104579969B (zh) * 2013-10-29 2019-04-23 中兴通讯股份有限公司 报文发送方法及装置
US9392525B2 (en) * 2014-05-16 2016-07-12 Qualcomm Incorporated Establishing reliable routes without expensive mesh peering
US10284386B2 (en) * 2014-08-28 2019-05-07 Maxlinear, Inc. Method and apparatus for providing a high security mode in a network
US9794163B2 (en) * 2015-06-24 2017-10-17 Terranet Ab Enhanced peer discovery in a mesh network
US10572509B2 (en) * 2015-07-27 2020-02-25 Cisco Technology, Inc. Scalable spine nodes with partial replication of routing information in a network environment
US10673749B1 (en) * 2018-12-28 2020-06-02 Paypal, Inc. Peer-to-peer application layer distributed mesh routing
US10977027B1 (en) * 2020-05-07 2021-04-13 Hcl Technologies Limited System and method of deploying java agents in runtime
US11546763B1 (en) 2022-04-29 2023-01-03 strongDM, Inc. Managing and monitoring infrastructure access in networked environments
US11546323B1 (en) 2022-08-17 2023-01-03 strongDM, Inc. Credential management for distributed services
US11736531B1 (en) 2022-08-31 2023-08-22 strongDM, Inc. Managing and monitoring endpoint activity in secured networks
US11765159B1 (en) 2022-09-28 2023-09-19 strongDM, Inc. Connection revocation in overlay networks
US11916885B1 (en) 2023-01-09 2024-02-27 strongDM, Inc. Tunnelling with support for dynamic naming resolution
US11765207B1 (en) 2023-03-17 2023-09-19 strongDM, Inc. Declaring network policies using natural language

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1536834A (zh) * 2003-04-08 2004-10-13 国家数字交换系统工程技术研究中心 因特网中构造对等网络及获取该网络中共享信息的方法
CN1612562A (zh) * 2003-10-28 2005-05-04 武汉烽火网络有限责任公司 用策略流实现不同因特网协议数据包转发的方法和设备
WO2006132728A2 (en) * 2005-06-02 2006-12-14 Motorola, Inc. An autonomous mode for a plurality of nested mobile networks

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR970705313A (ko) 1994-08-12 1997-09-06 에버세드 마이클 데이터 관리 시스템 구성방법(a configuration method for a data management system)
US6408336B1 (en) 1997-03-10 2002-06-18 David S. Schneider Distributed administration of access to information
US7239633B1 (en) 1999-12-29 2007-07-03 Winbond Electronics Corp. Ethernet switch and method of switching
US20040260834A1 (en) 2001-11-22 2004-12-23 Lindholm Lars Ake Anders Scalable router-based network node
US7603481B2 (en) 2002-10-31 2009-10-13 Novell, Inc. Dynamic routing through a content distribution network
US7366113B1 (en) * 2002-12-27 2008-04-29 At & T Corp. Adaptive topology discovery in communication networks
US7269174B2 (en) 2003-03-28 2007-09-11 Modular Mining Systems, Inc. Dynamic wireless network
US7701858B2 (en) * 2003-07-17 2010-04-20 Sensicast Systems Method and apparatus for wireless communication in a mesh network
US7475158B2 (en) * 2004-05-28 2009-01-06 International Business Machines Corporation Method for enabling a wireless sensor network by mote communication
US7634813B2 (en) 2004-07-21 2009-12-15 Microsoft Corporation Self-certifying alert
JP4556761B2 (ja) 2005-05-06 2010-10-06 株式会社日立製作所 パケット転送装置
US7808971B2 (en) 2005-07-01 2010-10-05 Miller John L Routing cache for distributed hash tables
US8161095B2 (en) * 2007-03-12 2012-04-17 Microsoft Corporation Distributed routing table interface

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1536834A (zh) * 2003-04-08 2004-10-13 国家数字交换系统工程技术研究中心 因特网中构造对等网络及获取该网络中共享信息的方法
CN1612562A (zh) * 2003-10-28 2005-05-04 武汉烽火网络有限责任公司 用策略流实现不同因特网协议数据包转发的方法和设备
WO2006132728A2 (en) * 2005-06-02 2006-12-14 Motorola, Inc. An autonomous mode for a plurality of nested mobile networks

Also Published As

Publication number Publication date
WO2009085493A1 (en) 2009-07-09
US7987290B2 (en) 2011-07-26
EP2223471A1 (en) 2010-09-01
CN101904136A (zh) 2010-12-01
US20090164663A1 (en) 2009-06-25

Similar Documents

Publication Publication Date Title
CN101904136B (zh) 提供用于分布式路由表的安全模式的方法和系统
US11196573B2 (en) Secure de-centralized domain name system
US7068789B2 (en) Peer-to-peer name resolution protocol (PNRP) group security infrastructure and method
KR101260188B1 (ko) 피어투피어 네트워크에 대한 분산 해시 테이블에서의 보안 노드 식별자 할당
RU2419222C2 (ru) Защищенная мгновенная передача сообщений
US20100235641A1 (en) Security techniques for cooperative file distribution
US20070118879A1 (en) Security protocol model for ubiquitous networks
EP1282289A2 (en) Mechanism for trusted relationships in decentralised networks
Berket et al. PKI-based security for peer-to-peer information sharing
EP3528468B1 (en) Profile information sharing
JP2005303485A (ja) 暗号化通信のための鍵配付方法及びシステム
US20080137663A1 (en) Identifier verification method in peer-to-peer networks
US20180115520A1 (en) Dark virtual private networks and secure services
Kumar et al. Design of peer-to-peer protocol with sensible and secure IoT communication for future internet architecture
US11792186B2 (en) Secure peer-to-peer based communication sessions via network operating system in secure data network
Malik et al. Trust and reputation in vehicular networks: A smart contract-based approach
JP5012574B2 (ja) 共通鍵自動共有システム及び共通鍵自動共有方法
Kurt et al. D-LNBot: A Scalable, Cost-Free and Covert Hybrid Botnet on Bitcoin's Lightning Network
Palomar et al. Secure content access and replication in pure p2p networks
JP2006268574A (ja) 情報処理装置
Enge et al. An architectural framework for enabling secure decentralized P2P messaging using DIDComm and Bluetooth Low Energy
JP2005304093A (ja) 暗号化通信のための鍵配付方法及びシステム
Zhou et al. Be-dns: Blockchain-enabled decentralized name services and p2p communication protocol
Wacker et al. Towards an authentication service for peer-to-peer based massively multiuser virtual environments
JP2007184993A (ja) 暗号化通信のための鍵配付方法及びシステム

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
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150506

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20150506

Address after: Washington State

Patentee after: Micro soft technique license Co., Ltd

Address before: Washington State

Patentee before: Microsoft Corp.

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20140528

Termination date: 20181125

CF01 Termination of patent right due to non-payment of annual fee