用于使用自组织网状网络来参加服务或活动的方法和装置的制作方法

文档序号:7912189阅读:129来源:国知局
专利名称:用于使用自组织网状网络来参加服务或活动的方法和装置的制作方法
用于使用自组织网状网络来参加服务或活动的方法和装置相关申请本申请要求享有于2009年5月四日提交的、标题为“Method and Apparatus for Engaging in a Service or Activity Using an Ad-Hoc Mesh Network,,的第 12/475, 430 号美国专利申请的优先权,其整体通过引用包含于此。
背景技术
无线(例如蜂窝)服务提供商和设备制造商不断受到例如通过提供有吸引力的网络服务、应用和内容来向消费者传递价值和便利的挑战。一个开发领域是使用设备到设备通信网络和设备以自动确定关于本地环境的信息和上下文(context)。然而与功率消耗、信令开销、安全和隐私有关的技术挑战已经阻碍了这种开发。

发明内容
因此需要一种用于提供在本地环境中使用信息和关联上下文的服务或者活动的方式。根据一个实施例,一种方法包括通过在自组织(ad-hoc)网状网络上发送包括查询的匿名洪泛消息来发现本地服务。该方法还包括通过自组织网状网络从邻近无线节点接收答复。答复包括与发现的本地服务有关的指示符或者数据。根据另一实施例,一种装置包括至少一个处理器和包括计算机程序代码的至少一个存储器,至少一个存储器和计算机程序代码被配置成与至少一个处理器一起使装置通过在自组织网状网络上发送包括查询的匿名洪泛消息来发现本地服务。还使装置通过自组织网状网络从邻近无线节点接收答复。答复包括与发现的本地服务有关的指示符或者数据。根据另一实施例,一种计算机可读存储介质,承载有一个或者多个指令的一个或者多个序列,一个或者多个指令在由一个或者多个处理器执行时使装置通过在自组织网状网络上发送包括查询的匿名洪泛消息来发现本地服务。还使装置通过自组织网状网络从邻近无线节点接收答复。答复包括与发现的本地服务有关的指示符或者数据。根据另一实施例,一种装置,包括用于通过在自组织网状网络上发送包括查询的匿名洪泛消息来发现本地服务的装置。该装置还包括用于通过自组织网状网络从邻近无线节点接收答复的装置。答复包括与发现的本地服务有关的指示符或者数据。根据另一实施例,一种方法包括通过自组织网状网络接收洪泛消息,洪泛消息包括用于发现本地服务的查询。该方法还包括启动发送对洪泛消息的答复。答复包括与发现的本地服务有关的指示符或者数据。根据另一实施例,一种装置包括至少一个处理器和包括计算机程序代码的至少一个存储器,至少一个存储器和计算机程序代码被配置成与至少一个处理器一起使装置通过自组织网状网络接收洪泛消息,洪泛消息包括用于发现本地服务的查询。还使该装置启动发送对洪泛消息的答复。答复包括与发现的本地服务有关的指示符或者数据。根据另一实施例,一种计算机可读存储介质,承载有一个或者多个指令的一个或者多个序列,一个或者多个指令在由一个或者多个处理器执行时使装置通过自组织网状网络接收洪泛消息,洪泛消息包括用于发现本地服务的查询。还使该装置启动发送对洪泛消息的答复。答复包括与发现的本地服务有关的指示符或者数据。根据又一实施例,一种装置包括用于通过自组织网状网络接收洪泛消息的装置, 洪泛消息包括用于发现本地服务的查询。该装置还包括用于启动发送对洪泛消息的答复的装置。答复包括与发现的本地服务有关的指示符或者数据。仅仅通过示例描述多个特定实施例和实现(包括为了实现本发明而设想的最佳实施方式),根据下文具体描述容易清楚本发明的更多其他方面、特征和优点。本发明也能够有其他不同实施例并且可以在各种明显方面上修改其若干细节而均未脱离本发明的精神和范围。因而附图和描述将视为在性质上为示例而非限制。


在附图的以下各图中通过示例而非通过限制的方式来图示
具体实施例方式图1是根据一个示例实施例的能够使用自组织网状网络来参加服务或者活动的通信系统的图示;图2A是根据一个示例实施例的包括认知服务模块的无线节点的部件图示;图2B-图2E是根据各种示例实施例的认知服务模块的部件的图示;图2F是根据一个示例实施例的网络层消息报头的数据结构的图示;图2G是描绘根据一个示例实施例的设备到设备无线电层的功率节省方案的图示;图3A-图3D是根据各种示例实施例的用于通过自组织网状网络对社区和社区成员进行定位的过程的流程图;图4是根据一个示例实施例的用于设置社区的状态以改变社区或者社区成员可见性的过程的流程图;图5A是图示根据一个示例实施例的在查询节点中使用的消息和过程序列的梯形图;图5B是图示根据一个示例实施例的在答复节点中使用的消息和过程序列的梯形图;图6A-图6B是根据各种示例实施例的在通过自组织网状网络对社区进行定位的过程中使用的用户界面的图;图7A-图7B是根据各种示例实施例的用于使用洪泛消息来找到本地服务的过程的流程图;图8是根据一个示例实施例的提供用于收集体验、信息和内容的服务的过程的流程图;图9是根据一个示例实施例的提供有目标的广告的服务的过程的流程图;图10是根据一个示例实施例的提供用于基于上下文信息确定位置的服务的过程的流程图;图11是根据一个示例实施例的提供用于基于声音确定位置的服务的过程的流程图12是根据一个示例实施例的提供服务或者活动介入的过程的流程图;图13是可以用来实施本发明一个实施例的硬件的图示;图14是可以用来实施本发明一个实施例的芯片组的图示;以及图15是可以用来实施本发明一个实施例的移动台(例如手机)的图示。
具体实施例方式公开一种用于使用自组织网状网络来参加服务或者活动的方法和装置。在下文描述中,为了解释的目的而阐述诸多具体细节以便提供对本发明实施例的透彻理解。然而本领域技术人员将清楚无这些具体细节或者用等效布置也可以实现本发明的实施例。在其他实例中,以框图形式示出公知结构和设备以免不必要地使本发明的实施例难以理解。如这里所用,术语“认知信息”是指任何关于本地环境以及在本地环境内的用户和通信设备的信息和/或上下文。举例而言,认知信息可以用来支持用于创建社交网络、确定在场、确定与设备关联的上下文、广告、搜索信息等的应用。虽然这里关于通过自组织网状网络对社区进行定位来描述各种示例实施例,但是可以设想可以在任何类型的通信系统或者网络内使用这里描述的方法。图1是根据一个示例实施例的能够使用自组织网状网络来参加服务或者活动的通信系统的图示。信息和上下文包括如下“认知信息”,该认知信息向通信设备比喻性地配备“无线电眼和耳”以在本地环境中连续收集信息并且与其他设备交换信息。然而开发用于提供认知信息的系统带来重要技术挑战,特别是在创建用于共享认知信息、定位和组织认知信息的网络、形成用于共享认知信息的社区、管理持续参加共享认知信息的设备的功率消耗、开发用于利用认知信息的应用、维护共享认知信息的用户的隐私和匿名以及防止非所需消息(例如垃圾消息)在网络上泛滥的这些领域中。如图1中所示,系统100包括一个或者多个无线节点lOla-lOln,该无线节点可选地具有通过运营商A 105或者运营商B 107而与通信网络103的连接性。无线节点 IOla-IOln为任何类型的移动终端、便携终端或者固定终端,包括移动手机、个人计算机、 站、单元、设备、多媒体写字板、因特网节点、通信、个人数字助理(PDA)、无线电可读标记 (例如近场通信(NFC)标记、射频标识(RFID)标记),或者其任何组合。还可以设想无线节点IOla-IOln可以支持与用户的任何类型的接口(比如“可佩带”电路等)。在示例实施例中,无线节点IOla-IOln形成用于共享认知信息的自组织网状网络109。自组织网状网络109例如是使用近程无线电技术(例如无线局域网(WLAN)或者蓝牙 (Bluetooth ))创建的无连接和无服务的设备到设备网络(例如移动自组织网络(MANET))。在自组织网状网络109内,每个无线节点101可以移动并且在任何数目的其他无线节点101的通信范围内。因而在任何特定无线节点101的通信范围内的无线节点 IOla-IOln集合是暂时性的并且可以随着无线节点IOla-IOln移动位置而改变。如先前讨论的那样,开发用于提供认知信息的通信系统和网络的服务提供商和设备制造商面临诸多技术挑战。例如针对连接性(例如经由网际协议(IP)的连接性)而设计当前自组织无线电(例如WLAN和蓝牙⑧)。然而在“常通”环境(比如自组织网状网络 109)中,由于功率使用和可伸缩性问题,让大量无线节点IOla-IOln(例如移动手机设备) 例如通过IP来相互“连接”延长的时间段并不实际。具体而言,在大型自组织网络中的多跳连接通常需要大量控制信令和功率并且可能快速耗尽移动设备的电池。另外,可伸缩性可能是个问题,因为当前自组织无线电通常受限于其在任何给定时间可以支持的连接数目和有关信令。当前自组织无线电的另一缺点在于它们未充分保护用户的隐私,因为它们通过与用户的设备关联的固定网络地址(例如介质访问控制(MAC)地址)而暴露用户的身份。为了解决这些问题,系统100创建用于以无连接方式共享认知信息的自组织网状网络109。如这里所用,术语“无连接”是指节点(例如无线节点101a)能够发送并且所有周围节点IOla-IOln能够接收认知信息而无需发送任何在先控制信令。例如通过WLAN自组织使用传送控制协议/IP(TC/IP)来发送认知信息不是无连接的,因为用来建立TCP连接的在发送节点与接收节点之间存在双向TCP控制信令。例如在由无线节点IOla-IOln交换的小型匿名消息中自动提供认知信息而无需用户干预。如这里所用,术语“匿名”意味着不可能根据消息推断发送方的真实身份,除非(例如用户或者用户授权的另一实体)在消息中有意包括真实身份。认知信息的交换作为从无线节点101到在广播无线节点101的无线电范围内的邻近无线节点101的广播消息(即洪泛消息)而出现。在邻近无线节点101接收广播消息时,每个接收无线节点101又可以向其他邻近无线节点101重新广播消息。以这一方式,原先广播的消息在整个自组织网状网络109内传播。在示例实施例中,诸如距离、 位置、时间等标准可以用来限制传播的范围。不同于传统系统,这样的消息仅用于携带认知信息而并非用于在两个无线节点 (例如无线节点IOla和IOlb)之间传送内容(例如文件或者包含语音、视频等的媒体)。代替地,消息仅包含指向内容的指示符或者少量数据(例如在场或者上下文信息)以使通过自组织网状网络109传送的数据业务最少。无线节点IOla-IOln然后可以使用其他通信渠道(例如通过通信网络103经由IP)来访问内容。此外,系统100还消除与用于路由建立和维护的传统方法(例如基于连接的通信协议)关联的问题,比如在移动设备移动时维护和移交连接,以及需要用于在移动设备数目多或者密度高的环境中维护连接的高级网络资源。例如无线节点101出现于网络/从网络消失这样的事件在自组织网状网络109中并未生成任何控制信令。类似地,系统100仅在需要时创建路由信息以将对查询的答复路由回到查询节点。通过仅使用查询消息来生成路由信息(即无控制信令用于创建路由信息)。 在完成查询和随后答复过程之后遗忘路由。换言之,系统100的查询/答复过程为答复提供路由以按需提供认知信息而不是从一个节点101向另一节点推送认知信息。在示例实施例中,散播认知信息的推送(例如通过自组织网状网络109发布信息)和拉取(例如向自组织网状网络109的其他节点IOla-IOln查询信息)模式均是可能的。在某些实施例中, 可以设想可以使用拉取操作模式而不是推送模式以帮助抑制潜在垃圾消息。另外,系统100对通过自组织网状网络109通信的无线节点101的功率消耗进行优化,以实现常通操作而未严重影响无线节点101的电池寿命。例如通过仅利用短的认知消息、通过消除对任何路由维护信令的需要、通过运用使重复消息的发送和接收最少的过程以及通过支持每个无线节点101内使用的近程设备到设备无线电的高效休眠方案(为认知信息网络的典型低延时要求所允许),系统100可以潜在地为每个无线设备101在移动设备中的电池充电之间提供数以百计的连续工作小时(例如400小时以上)。系统100可以视为移动设备之间的“神经系统”,其中移动设备(“神经元”)连续交换小型消息(“神经冲动”)以便向移动设备的用户带来关于用户环境的认知。
系统100还支持开发基于认知信息的新服务和应用(例如社交联网应用、基于位置的应用、用于确定在场的应用、用于确定上下文的应用、广告应用或者其他本地服务或者应用)。具体而言,针对本地环境的认知信息的连续和即时性质支持有吸引力的新服务。例如认知信息可以与移动设备(例如无线节点IOla-IOln)中的越来越多可用的存储和计算能力组合以创建本地语义网,由此通过自组织网状网络109内的无线节点101来自动创建和搜索本地认知信息。如这里所用,术语“语义网”是指如下系统,在该系统中系统内的节点101可理解与系统共享的信息和消息。注意,使用系统100来建立这样的本地语义网克服阻碍开发全球语义网的两大问题(1)缺少用于大规模提供语义内容的机制,以及(2)缺少用于帮助用户找到语义网中的信息的语义认知搜索引擎。系统100也可以用于协同上下文计算、发布指向信息或者内容的指示符、搜索限定社区内的好友、找出正在发生什么以及什么样的人在用户周围、使环境意识到用户以及其他类似应用。下文是用于基于认知信息的应用的示例使用案例场景。在第一使用案例中,认知信息向用户通告附近的人或者场所。例如用户正在游览新镇,此时无线节点IOla向用户通告“Mlvatore,您的好友David在附近”。用户然后可以安排会见^lvatore以获得新镇中的游览点推荐。在另一例子中,用户在不熟悉的附近地区内寻找好饭馆。基于认知信息的应用可以呈现口味与用户相同的本地饭馆的列表,其按照目前在饭馆就餐的人数排序。可以基于包含人们口味的匿名信息的查询和答复来收集这样的列表。在第二使用案例中,应用使用认知信息以发现用户附近的事件。例如在用户经过公园时,无线节点IOla基于在附近设备之间交换的消息向用户通知“在Tea Garden公园有日本文化节;您的Kabuki社区的五个成员在场Zen、Mi、XiaJal0和Chris”。用户然后可以决定出席文化节。在第三使用案例中,应用使用认知信息来提供基于位置或者基于上下文的服务。 例如无线节点IOla无定位能力、但是基于来自其他附近无线节点101的匿名认知信息知道它在杂货店内。设想杂货店也可以将节点101放置于店内以提供这种上下文信息,其有可能与其他店铺特有信息(比如店铺的网页地址)相结合。无线节点IOla然后基于用户在杂货店内的位置提醒用户“记住购买洗碗机清洁剂”。认知信息也可以是来自具有定位能力的邻近无线节点101的物理位置信息。与具有这种能力的邻近节点共享定位信息可以使不具有这种能力的节点101能够提供导航服务。在另一例子中,一群人正在出席会议。会议邀请包括在会议出席者的移动节点101 中存储的用于该特定会议的标识代码(例如标识代码可以存储于日历数据中)。使用在本发明中阐述的原理,节点101可以在出席会议之时通过自组织网状网络109来交换会议标识代码。比较用户的无线设备101中交换的标识代码可以例如确认用户是否确实列席与标识代码对应的会议。这种准确的社交上下文知识可以例如用来使服务或者应用行为适应用户。在第四使用案例中,应用提供对迅速改变并且非常特定于本地环境的本地信息的搜索。本地信息经常未到达传统因特网搜索引擎。例如用户购买音乐会的入场券、但是在最后一分钟发现用户不能出席。用户向用户的无线节点101的认知服务模块111中存储字符串“在地点Y的音乐X的入场券可用”。结果,在数个街区距离内的、搜索入场券的附近无线节点IOla通过在多跳自组织网状网络109上发送具有字符串“音乐会X的入场券”的查询消息,将接收作为自动答复的用户的入场券可用性信息。在第五使用案例中,应用支持以本地为目标的广告。例如接近本地新鲜水果市场打烊时间。商家决定通过自组织网状网络109发布广告“苹果当日收市前半价”这样的广告。住在市场附近的用户可收到广告。在另一例子中,用户在无线节点IOla上浏览针对新打印机的广告。在浏览活动中,附属于广告的代码存储于认知服务模块111中。在搜索和找到这样的代码时,附近电子设备店向用户发送九折销售打印机的邀约。在第六使用案例中,应用基于与用户关联的认知信息自动创建活动日志。例如应用将用户会见的人与诸如何时、何地、上下文等其他认知信息一起记录。用户然后在步行于街上之时遇到某个人。此人看起来面熟,但是用户未回想起该人士的姓名或者用户如何认识该人士的。运行此应用的无线节点IOla报告该人士的姓名为David并且用户是于一年前在伦敦的英式足球赛上见到他的。在第七使用案例中,应用提供通过自组织网状网络109启动局部讨论线程和群聊的能力。例如足球队的支持者通过自组织网状网络109形成社区,其中社区成员可以发送仅该特定球队的球迷俱乐部社区成员才可以接收和读取的短文本消息(例如尺寸小到足以通过自组织网状网络109直接发送)。图2A是根据一个示例实施例的包括认知服务模块的无线节点的部件的图示。结合图2B-图2E描述图2A,这些图是根据各种示例实施例的认知服务模块的部件的图示。如图2A所示,无线节点101包括用于在自组织网状网络109内共享认知信息的一个或者多个部件。设想这些部件的功能可以组合于一个或者多个部件中或者由等效功能的其他部件执行。在这一实施例中,无线节点101包括如下应用201,该应用使用认知信息以提供各种服务和功能,包括社交联网、基于位置的服务、在场信息、上下文确定、广告功能等。应用201 可以与认知服务模块111交互以获得或者共享认知信息。举例而言,认知服务模块111包括三层认识层203、社区层205和网络层207。认识层203是用于共享认知信息的最高控制层。如图2B中所示,认识层203包括控制逻辑 221和项目储存器223。控制逻辑221例如提供用于通过自组织网状网络109创建、发布、 查询和接收认知信息的逻辑。控制逻辑221可以在项目储存器223中存储它创建或者接收的信息。设想项目储存器223可以具有足够大小以存储在可配置的时间段(例如日、月或者年)内流过无线节点101的信息的全部或者部分。在示例实施例中,控制逻辑221支持通过启动向自组织网状网络109内的邻近无线节点101洪泛查询或者信息来查询和散播认知信息。例如在接收到查询时,在本地邻域中的具有所查询的信息的无线节点101自动答复查询节点。在示例实施例中,答复信息也自动存储于该传播答复经过的每个无线节点101的项目储存器223中。另外,在某些情况下,对查询的答复可能造成返回指向与查询相关的具体内容的指示符而不是内容本身(例如当具体内容尺寸很大时)。设想如果内容相对小(例如数十字节的信息),则答复可以直接包含内容。通过使用指示符,系统100使流过自组织网状网络109的数据业务量最少。用户然后可以经由更合适的通信协议(例如IP)和或通信手段(例如基础设施网络)经由指示符(例如统一资源定位符(URL)地址、IP地址)来访问内容。接收指示符(例如IP地址)可以自动触发使用例如与指示符关联的通信协议来传送内容。在广播或者发布信息的情况下,所发布的信息传播经过的任何无线节点101可以在无线节点101的项目储存器223 中存储信息。在其他示例实施例中,也可以通过洪泛认知消息来直接发布认知信息。这种用于散播认知信息的推送模式可以用来支持自组织网状网络109上的一些应用(例如广告或者群聊)。认识到隐私和匿名可能为系统100的用户所关注。因而,控制逻辑221提供用于保证隐私和匿名的机制。例如控制逻辑221可以在邻近无线节点的数目少时防止发送私人信息以防止推断出身份的可能性。如这里所用,术语“私人信息”指代与用户直接有关的信息,例如用户的习惯、口味或者偏好(音乐偏好、喜欢的饭馆等)。控制逻辑221也可以定期广播假目标(decoy)查询和答复以使跟踪各体无线节点 101更为困难。由于外界观察者不知道与社区关联的认证密钥,所以观察者不能区分有效消息与虚构消息。因而通过观察假目标消息,观察者可能在没有私有社区时检测到存在私有社区。此外,控制逻辑221让用户能够限定用于传入信息的过滤器(例如过滤广告)以及这些过滤器将如何工作(例如完全忽略信息、转发信息但是不存储等)。还可以设想用户可以指引控制逻辑221以控制用户在自组织网状网络109上的可见性(例如不可见、仅对某个社区或者其他用户可见)以维护隐私。作为另一种用于保护隐私的机制,如下文关于社区层205描述的那样,控制逻辑221可以与社区层205交互以匿名化具体消息和对应标识符。由于系统100的目标之一在于提供一种用于匿名散布认知信息的机制,所以认识到非所需或者非请求的消息(例如垃圾消息)可能成为问题。为了解决这一问题,控制逻辑 221可以例如从认知服务模块111的更低系统层获得关于业务负荷和当前平均功率消耗的信息。如果业务负荷为中等或者高(意味着与系统100有关的功率消耗也为中等或者高) 则可以针对控制逻辑221发送洪泛消息的频率来设置约束。也可以设想邻近对等节点101 可以被配置成不转发源于节点101的任何洪泛消息从而忽略这样的消息约束。认识层203与社区层205 —起提供如下应用编程接口(API) 225,该API用于使得应用201能够访问控制逻辑221和项目储存器223的功能。在示例实施例中,API 225使得应用开发者能够具有对与通过自组织网状网络109共享的认知信息有关的功能的统一且容易的访问。设想API 225可扩展成适应任何设计成访问或者使用认知信息的应用。在各种节点101中的应用无需相同或者相互兼容。这些应用正确使用API以能够在周围节点 101中发布和搜索认知信息就足够了。认识层203还具有与社区层205的连接性。社区层205控制在自组织网状网络 109内的无线节点101的社区的形成和分类。举例而言,用户可以创建任何数目的社区以共享认知信息。设想社区可以是对等社区(例如任何无线节点101可以加入)、个人社区 (例如无线节点101仅被邀请才可以加入),或者由在本地邻域中的所有节点构成的开放本地社区。在示例实施例中,在自组织网状网络109内的无线节点101之间穿越的消息属于这三个社区类型之一。社区可以是私有(消息被加密)或者公共的(未使用加密)。在示例实施例中,在社区中的成员资格和状态影响无线节点101如何共享认知信息(至于社区成员资格的更多细节,参见关于图2G的讨论)。另外,可以针对任何目的或者持续时间创建社区(例如持久工作社区、持久好友社区、仅在音乐会期间延续的音乐会参与者的临时社区)。如图2C中所示,社区层205包括社区控制模块Ml、社区目录243和加密/解密模块M5。社区控制模块241提供用于创建、加入、管理(例如更新成员资格、配置设置和偏好、设置隐私策略)以及删除社区的逻辑。模块241也提供API 225的部分。在示例实施例中,社区控制模块Ml向每个社区分配用于在自组织网状网络109 内使用的唯一社区标识编号(CID)。控制模块241也可以生成与CID关联的认证密钥K,该认证密钥用于例如认证希望加入社区的用户或者认证针对社区的消息。例如无线节点101 可以通过向其他无线节点101传送与社区关联的CID和认证密钥来邀请另一无线节点101 加入社区。设想可以使用近程无线电或者使用另一安全机制(例如短消息服务(SMS)或者电子邮件)来传送CID和对应的认证密钥。注意,对等社区和个人社区均使用CID和对应的K,而开放本地社区可以使用预定CID值(例如零)或者根本不使用CID。为了保证隐私(如上文讨论的那样),社区控制模块241与加密/解密模块M5交互以在将CID包括在自组织网状网络109上的消息中时对CID进行匿名化。例如无线节点 101可以使用与特定社区关联的匿名化CID(例如别名)而不是实际CID,以将查询指引向该社区。在示例实施例中,多个匿名化CID可以用来代表单个社区。以这一方式,更难以通过监视自组织网状网络109内的业务来标识与特定社区对应的查询。从外界观察者的角度来看,匿名化CID看似随机。此外,加密/解密模块245可以使用例如根据与CID关联的认证密钥K定期导出的临时密钥来对消息数据进行加密或者解密。这些措施阻碍无认证密钥的局外人发现CID。举例而言,社区层205向它从认识层203接收的消息中插入特殊报头。 特殊报头例如包含与消息相关的社区对应的匿名化社区标识符的列表。图2D是根据一个示例实施例的社区成员资格和状态对共享认知信息的影响的状态图。如图2D中所示,无线节点101就在自组织网状网络109内的社区中的成员资格而言可以处于两个状态(例如未加入状态251和已加入状态253)中任一。无线节点101的应用201例如发出加入或者离开社区以在未加入状态251与已加入状态253之间转变的命令 255。当无线节点101就社区而言处于未接入状态251时,无线节点101不具有关于社区的信息(例如CID和关联认证密钥K)并且不能访问针对该社区的消息。当无线节点101处于已加入状态253时,社区层205接收与社区关联的CID并且可能接收与社区关联的一个或者多个认证密钥。在一个实施例中,当社区中的成员资格按照邀请或者以别的方式受到约束时(例如当社区为个人社区或者私有社区时),提供认证密钥。因而,社区层205将能够对传出的社区特有消息进行加密和对传入的社区特有消息进行解密。当无线节点101处于已加入状态253时,无线节点101也可以处于不活跃状态257 或者活跃状态259。为了在不活跃状态257与活跃259之间转变,应用201可以经由应用编程接口 225发出激活或者去激活已加入状态253的命令沈1。当无线节点101处于不活跃状态257时,即使它是社区的成员,社区层205仍然放弃消息。在某些实施例中,无线节点 101也可以在处于不活跃状态257之时对社区的其他成员不可见。例如,无线节点101可以在它临时不想接收信息或者与社区共享信息时进入不活跃状态257。当无线节点101处于活跃状态259时,社区层205如对于私有社区而言通常的那样加密和解密社区消息并且支持用于公共社区(例如对成员资格无约束的社区)的所有传出和传入的社区特有消息。在活跃状态259内,无线节点101也可以处于不可见状态263或者可见状态沈5。为了在不可见状态沈3与可见状态265之间转变,应用201发出设置可见或者不可见状态的命令沈7。当处于不可见状态263时,社区的其他成员不能查询与无线节点101关联的社区特有标识(例如用户别名)。例如在不可见状态263中,社区层205继续接收和发送社区消息而它的身份不为其他社区成员所知。当处于可见状态沈5时,社区的其他成员可以查询无线节点101的身份。在各种实施例中,社区层205的社区目录243例如维护关于用户已经加入的社区的信息。这样的信息至少包含社区标识(CID)。此外,它还可以包含所加入的社区的公共和 /或私有认证密钥(K)以及用于每个社区的匿名化社区标识符的列表。社区控制模块Ml 可以定期重新计算匿名化CID的列表。举例而言,社区层205向它从认识层203接收的消息中插入报头。报头例如包含对消息相关的社区进行标识的匿名化社区标识符的列表。设想可以保留特殊个人社区以用于跟踪在用户之间创建的新联结或者关系。例如考虑用户A首次遇到用户B并且想要在与每个用户对应的移动设备之间创建无线电联结。 在一个实施例中,用户A可以通过向用户B传送(例如通过使用安全传送机制)用户A的个人“新联结”社区的CID和公共K来启动创建与用户B的这一联结。类似地,用户B可以给予用户A与用户B的“新联结”社区对应的相似证书。一旦交换证书并且已经创建联结, 用户A可以通过搜索用户A的“新联结”社区的成员以在自组织网状网络109上找到用户 B。换而言之,利用简单搜索单个社区,用户A可以在用户A的本地邻域中搜索用户A已经与之创建联结的所有人员。这要求可以在社区目录243中存储大量社区CID和K。同样,必须提供对社区目录的有效查找。有诸多用于这种高效查找的现有良好解决方案。随着用户创建新联结,存储于用户的社区目录M3中的社区CID和K的数目可能增长很大。因而为了支持对大量社区的有效搜索,社区层205可以生成用于启动搜索的特殊社区搜索消息。例如特殊社区搜索消息至少部分地包含与待搜索的社区对应的匿名化社区标识符的列表。为了保护隐私,社区层205可以生成用于每个社区搜索消息的一组新的匿名化社区标识符。如果社区层205在接收搜索消息的任何邻近节点101中找到与任何匿名化社区标识符的匹配,则社区层205生成如下答复消息,该答复消息可以包含用户在该社区中的别名或者其他社区特有信息。可以用社区的加密密钥来对答复消息加密。如图2C中所示,社区层205具有与上方的认识层203和下方的网络层207的连接性。网络层207管理对接收的洪泛消息的重新广播和对无线节点101接收的单播(通常为答复)消息的路由。图2E描绘另外根据一个示例实施例的网络层207的部件的图示。网络层207包括网络控制模块271、路由表273、邻居表275、消息标识(MID)表277和消息表 279。网络控制模块271通过管理和更新路由表273、邻居表275、MID表277和消息表279 来指引对消息和信息的广播。在某些实施例中,网络控制模块271还可以通过定期改变与无线节点101关联的网络层标识来辅助保护用户的隐私和匿名。注意,在查询之间做出网络层标识的这种改变不会引起针对答复的路由问题,因为路由信息由自组织网状网络109 中的每个查询重新创建。在示例实施例中,网络层207可以向它从社区层205接收的消息中插入如下报头, 该报头用于例如指引对所接收的消息的洪泛和路由。关于图2F讨论这一网络层消息报头 281的结构。图2F是根据一个示例实施例的网络层消息报头的数据结构的图。如图所示, 消息报头281包含以下字段(I)TX字段观2,用于标识上一个发送节点101的发送器节点ID(NID) ; O) SRC字段观3,用于标识始发该消息的节点101的源节点ID ; (3) DST字段沘4, 用于标识单播(答复)消息的预期接收方的目的地源ID(例如在消息为洪泛消息时向这一字段赋予零值)J4)MSN字段观5,用于标识源节点所分配的消息序列编号;以及(5)跳计数字段观6,其由发送消息的每个节点101递增一。在某些实施例中,消息报头281还可以包含以下可选字段(6)地理限制字段观7,用于指明消息将要传播的物理范围(例如地理限制字段观7可以包含源节点的地理位置和从该位置起的最大洪泛半径);(7)时间限制字段288 (例如时间限制字段288可以包含在消息变得过时并且应当被丢弃时的时间);以及 (8)上下文限制字段观9,该字段限定如下上下文,在该上下文以外将不传播消息(例如与特定音乐会有关的消息将不延伸到音乐会场以外)。回到图2E,网络层207也包含路由表273。在示例实施例中,路由表273包含始发无线节点101的节点标识编号(NID)(例如源NID)和消息的上一个已知发送器的NID的列表。路由表的目的在于支持将答复消息(例如单播消息)路由回到通过洪泛消息始发该查询的查询节点。在消息通过自组织网状网络109传播时,接收消息的每个后续无线节点101 向路由表添加上一个发送器的NID以记录朝向源节点的下一跳邻居。在路由表中将源节点标记为目的地节点(DST)。还记录消息的消息序列编号。网络控制模块271协调对路由表 273的更新。如表1中所示,路由表273列出了目的地NID、与已经重新广播消息的无线节点101关联的发送器NID和消息的MSN。
权利要求
1.一种方法,包括通过在自组织网状网络上发送包括查询的匿名洪泛消息来发现本地服务;以及从邻近无线节点接收答复,其中所述答复包括与所述发现的本地服务有关的指示符或者数据。
2.根据权利要求1所述的方法,其中所述本地服务为位置指示数据。
3.根据权利要求1和2中的任一权利要求所述的方法,其中所述本地服务是对本地事件的指示。
4.根据权利要求1-3中的任一权利要求所述的方法,其中所述本地服务是对与所述查询匹配的本地信息的指示。
5.根据权利要求1-4中的任一权利要求所述的方法,还包括 生成所述洪泛消息以包括一个或者多个匿名化社区标识符,其中所述一个或者多个匿名化社区标识符指定所述洪泛消息所针对的相应社区。
6.一种装置,包括 至少一个处理器;以及至少一个存储器,包括用于一个或者多个程序的计算机程序代码, 所述至少一个存储器和所述计算机程序代码被配置成与所述至少一个处理器一起使得所述装置至少执行以下操作通过在自组织网状网络上发送包括查询的匿名洪泛消息来发现本地服务;以及从邻近无线节点接收答复,其中所述答复包括与所述发现的本地服务有关的指示符或者数据。
7.根据权利要求6所述的装置,其中所述本地服务为位置指示数据。
8.根据权利要求6和7中的任一权利要求所述的装置,其中所述本地服务是对本地事件的指示。
9.根据权利要求6-8中的任一权利要求所述的装置,其中所述本地服务是对与所述查询匹配的本地信息的指示。
10.根据权利要求6-9中的任一权利要求所述的装置,其中还使所述装置 生成所述洪泛消息以包括一个或者多个匿名化社区标识符,其中所述一个或者多个匿名化社区标识符指定所述洪泛消息所针对的相应社区。
11.根据权利要求6-10中的任一权利要求所述的装置,其中所述装置为移动电话,所述移动电话还包括用户接口电路和用户接口软件,配置成协助用户通过使用显示器来控制所述移动电话的至少一些功能并且配置成对用户输入做出响应;以及显示器和显示电路,配置成显示所述移动电话的用户接口的至少部分,所述显示器和显示电路被配置成协助用户控制所述移动电话的至少一些功能。
12.根据权利要求11所述的装置,其中所述移动电话包括用于所述自组织网状网络上的设备到设备通信的无线电设备。
13.一种计算机可读存储介质,承载有一个或者多个指令的一个或者多个序列,所述一个或者多个指令在由一个或者多个处理器执行时使装置至少执行以下步骤通过在自组织网状网络上发送包括查询的匿名洪泛消息来发现本地服务;以及从邻近无线节点接收答复,其中所述答复包括与所述发现的本地服务有关的指示符或者数据。
14.根据权利要求13所述的计算机可读存储介质,其中所述本地服务为位置指示数据。
15.根据权利要求13和14中的任一权利要求所述的计算机可读存储介质,其中所述本地服务是对本地事件的指示。
16.根据权利要求13-15中的任一权利要求所述的计算机可读存储介质,其中所述本地服务是对与所述查询匹配的本地信息的指示。
17.根据权利要求13-16中的任一权利要求所述的计算机可读存储介质,其中所述装置被进一步使得执行生成所述洪泛消息以包括一个或者多个匿名化社区标识符,其中所述一个或者多个匿名化社区标识符指定所述洪泛消息所针对的相应社区。
18.一种装置,包括用于通过在自组织网状网络上发送包括查询的匿名洪泛消息来发现本地服务的装置;以及用于从邻近无线节点接收答复的装置,其中所述答复包括与所述发现的本地服务有关的指示符或者数据。
19.根据权利要求18所述的装置,其中所述本地服务为位置指示数据。
20.根据权利要求18和19中的任一权利要求所述的装置,其中所述本地服务是对本地事件的指示。
21.根据权利要求18-20中的任一权利要求所述的装置,其中所述本地服务是对与所述查询匹配的本地信息的指示。
22.根据权利要求18-21中的任一权利要求所述的装置,还包括用手生成所述洪泛消息以包括一个或者多个匿名化社区标识符的装置, 其中所述一个或者多个匿名化社区标识符指定所述洪泛消息所针对的相应社区。
23.根据权利要求18-22中的任一权利要求所述的装置,其中所述装置为移动电话,所述移动电话还包括用户接口电路和用户接口软件,配置成协助用户通过使用显示器来控制所述移动电话的至少一些功能并且配置成对用户输入做出响应;以及显示器和显示电路,配置成显示所述移动电话的用户接口的至少部分,所述显示器和显示电路被配置成协助用户控制所述移动电话的至少一些功能。
24.根据权利要求23所述的装置,其中所述移动电话包括用于所述自组织网状网络上的设备到设备通信的无线电设备。
25.一种方法,包括协助访问至少一个接口,所述至少一个接口被配置成允许访问至少一个服务,所述至少一个服务被配置成至少执行根据权利要求1-5中的任一权利要求所述的方法的步骤。
26.一种计算机程序产品,包括一个或者多个指令的一个或者多个序列,所述一个或者多个指令在由一个或者多个处理器执行时使装置至少执行根据权利要求1-5中的任一权利要求所述的方法的步骤。
27.一种方法,包括通过自组织网状网络接收洪泛消息,所述洪泛消息包括用于发现本地服务的查询;以及启动发送对所述洪泛消息的答复,其中所述答复包括与所述发现的本地服务有关的指示符或者数据。
28.根据权利要求27所述的方法,还包括通过比较存储于答复无线节点中的一组匿名化社区标识符与所述洪泛消息中包括的一个或者多个匿名化社区标识符来过滤所述洪泛消息,其中所述自组织网络中的答复无线节点包含与所述无线节点所属的每个社区分别对应的一组匿名化社区标识符。
29.根据权利要求27和观中的任一权利要求所述的方法,还包括确定无线节点是否包含或者有权访问与所述发现的本地服务相关的信息;以及基于所述确定来启动发送所述答复, 其中所述答复中的个人信息被匿名化。
30.根据权利要求27-29中的任一权利要求所述的方法,其中所述本地服务是位置指示数据、对位置事件的指示、对与所述查询匹配的本地信息的指示或者其组合。
31.一种装置,包括 至少一个处理器;以及至少一个存储器,包括用于一个或者多个程序的计算机程序代码, 所述至少一个存储器和所述计算机程序代码被配置成与所述至少一个处理器一起使所述装置至少执行以下操作通过自组织网状网络接收洪泛消息,所述洪泛消息包括用于发现本地服务的查询;以及启动发送对所述洪泛消息的答复,其中所述答复包括与所述发现的本地服务有关的指示符或者数据。
32.根据权利要求31所述的装置,其中还使所述装置通过比较存储于答复无线节点中的一组匿名化社区标识符与所述洪泛消息中包括的一个或者多个匿名化社区标识符来过滤所述洪泛消息,其中所述自组织网络中的答复无线节点包含与所述无线节点所属的每个社区分别对应的一组匿名化社区标识符。
33.根据权利要求31和32中的任一权利要求所述的装置,其中还使所述装置 确定无线节点是否包含或者有权访问与所述发现的本地服务相关的信息;以及基于所述确定来启动发送所述答复。
34.根据权利要求31-33中的任一权利要求所述的装置,其中所述本地服务是位置指示数据、对位置事件的指示、对与所述查询匹配的本地信息的指示或者其组合。
35.根据权利要求31-34中的任一权利要求所述的装置,其中所述装置为移动电话,所述移动电话还包括用户接口电路和用户接口软件,配置成协助用户通过使用显示器来控制所述移动电话的至少一些功能并且配置成对用户输入做出响应;以及显示器和显示电路,配置成显示所述移动电话的用户接口的至少部分,所述显示器和显示电路被配置成协助用户控制所述移动电话的至少一些功能。
36.根据权利要求35所述的装置,其中所述移动电话包括用于所述自组织网状网络上的设备到设备通信的无线电设备。
37.一种装置,包括用于通过自组织网状网络接收洪泛消息的装置,所述洪泛消息包括用于发现本地服务的查询;以及用于启动发送对所述洪泛消息的答复的装置,其中所述答复包括与所述发现的本地服务有关的指示符或者数据。
38.根据权利要求37所述的装置,还包括用于通过比较存储于答复无线节点中的一组匿名化社区标识符与所述洪泛消息中包括的一个或者多个匿名化社区标识符来过滤所述洪泛消息的装置,其中所述自组织网络中的答复无线节点包含与所述无线节点所属的每个社区分别对应的一组匿名化社区标识符。
39.根据权利要求37-38所述的装置,还包括用于确定无线节点是否包含或者有权访问与所述发现的本地服务相关的信息的装置;以及用于基于所述确定来启动发送所述答复的装置,其中所述答复中的个人信息被匿名化。
40.根据权利要求37-39所述的装置,其中所述本地服务是位置指示数据、对位置事件的指示、对与所述查询匹配的本地信息的指示或者其组合。
41.根据权利要求37-40中的任一权利要求所述的装置,其中所述装置为移动电话,所述移动电话还包括用户接口电路和用户接口软件,配置成协助用户通过使用显示器来控制所述移动电话的至少一些功能并且配置成对用户输入做出响应;以及显示器和显示电路,配置成显示所述移动电话的用户接口的至少部分,所述显示器和显示电路被配置成协助用户控制所述移动电话的至少一些功能。
42.根据权利要求41所述的装置,其中所述移动电话包括用于所述自组织网状网络上的设备到设备通信的无线电设备。
43.一种方法,包括协助访问至少一个接口,所述至少一个接口被配置成允许访问至少一个服务,所述至少一个服务被配置成执行根据权利要求27-30中的任一权利要求所述的方法的步骤。
44.一种计算机程序产品,包括一个或者多个指令的一个或者多个序列,所述一个或者多个指令在由一个或者多个处理器执行时使装置至少执行根据权利要求27-30中的任一权利要求所述的方法的步骤。
全文摘要
本发明提供一种用于通过自组织网状网络发现本地服务的方式。通过自组织网状网络发送包括查询的匿名洪泛消息来发现本地服务。无线节点通过自组织网状网络、利用与发现的本地服务有关的指示符或者数据来答复洪泛消息。
文档编号H04L12/58GK102461221SQ201080029285
公开日2012年5月16日 申请日期2010年5月29日 优先权日2009年5月29日
发明者K·J·莱帕南, M·T·蒂鲁南, M·卡斯林, M·蒂罗南, S·维尔塔南 申请人:诺基亚公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1