CN101741916B - 自组织网络中可靠的服务发现和服务选择方法 - Google Patents

自组织网络中可靠的服务发现和服务选择方法 Download PDF

Info

Publication number
CN101741916B
CN101741916B CN200810202722A CN200810202722A CN101741916B CN 101741916 B CN101741916 B CN 101741916B CN 200810202722 A CN200810202722 A CN 200810202722A CN 200810202722 A CN200810202722 A CN 200810202722A CN 101741916 B CN101741916 B CN 101741916B
Authority
CN
China
Prior art keywords
node
service
srep
pet
bag
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
CN200810202722A
Other languages
English (en)
Other versions
CN101741916A (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.)
Fudan University
Original Assignee
Fudan University
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 Fudan University filed Critical Fudan University
Priority to CN200810202722A priority Critical patent/CN101741916B/zh
Publication of CN101741916A publication Critical patent/CN101741916A/zh
Application granted granted Critical
Publication of CN101741916B publication Critical patent/CN101741916B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本发明涉及一种无线自组织网络环境中可靠的服务发现和服务选择方法,分为可靠的服务发现和可靠的服务选择两个部分。可靠的服务发现包括发送服务请求、响应服务请求、处理服务回复包三个阶段,可靠的服务选择包括选择能量符合要求的节点、选择路径到期时间PET符合要求的节点、选择跳数最小的节点三个阶段。本发明能够从自组织网络中选择相对稳定可靠的服务,并且能够很好地适应自组织网络的网络拓扑多变和节点能量有限的特点。

Description

自组织网络中可靠的服务发现和服务选择方法
技术领域
本发明属于自组织网络和服务计算的交叉技术领域,具体涉及到一种在自组织网络中可靠的服务发现和服务选择方法。
背景技术
随着网络技术的飞速发展,用户的需求已从最初的信息共享逐渐发展为如何利用其它Web站点提供的功能。相应地,服务科学作为有效进行功能调用的学科被提出。服务是一种部署在网络上的、自包含的、模块化的应用程序,它可以在网络中描述、发布、查找以及调用。服务的提出实现了对各种设备或平台上的任何硬件或软件实体可以提供给其他设备访问的资源或功能的一种抽象。
自组织网络是一种不需要固定基础结构、在移动或固定环境下可以快速部署的无线网络。网络中的节点利用自身的无线收发设备交换信息,当相互之间不在彼此的通信范围内时,可以借助其他中间节点中继来实现多跳通信。
无线自组织网络中由于网络拓扑结构的不断变化和网络连接的不稳定性,服务执行失败经常发生。于是服务请求节点常常需要重新发起服务请求,从而浪费了节点能量,增加了服务的响应时间,并且节点的能量通常是有限的,而对于网络中节点请求的服务,可能存在多个服务提供节点。综合上面的因素,如何发现和选择一个可靠的服务,最大限度的降低服务执行失效的可能性,是非常重要的。针对以上问题,本发明提出了一种在自组织网络中可靠的服务发现和选择方法。
发明内容
本发明的目的在于针对自组织网络的网络拓扑动态变化、节点能量有限等特点,提出了一种可靠的服务发现和服务选择方法,以保证找到网络中相对可靠的服务提供节点。
本发明的目的通过下述方法和步骤实现:
首先对一些基本概念和符号进行定义:
服务请求节点(request source):服务的需求方和请求方,发起服务发现过程以获取所需服务的位置等信息。
TSREQ、TSREP:TSREQ表示服务请求节点发送SREQ包的时间,TSREP表示表示服务应答节点发送SREP的时间。如图1所示,对于节点A和B之间的链接而言,TA-SREQ表示节点A发送SREQ的时间;TB-SREP表示节点B发送SREP的时间。由于传送SREQ的时间很短,我们可以近似地认为节点A发送SREQ包的时间和节点B接收SREQ包的时间为同一时间。同样地,我们也近似地认为节点B发送SREP的时间和节点A接收SREP的时间为同一时间。
LN-SREQ、LN-SREP:LN-SREQ表示节点N在收到SREQ时刻在网络中的位置,LN-SREP表示节点N在收到SREP时刻在网络中的位置。如图1所示,LA-SREQ和LA-SREP表示节点A在TA-SREQ和TA-SREP时刻在网络中的位置,LB-SREQ和LB-SREP表示节点B在TB-SREQ和TB-SREP时刻在网络中的位置,它们可以通过地理定位系统(如GPS系统)得到。
链接到期时间(Link expiration time,LET):由于无线自组织网络节点是在不断移动的,两个连接的节点在经过一段时间后会变得无法连接,LET指当前连接的链路断裂的时间点,即当前通信的节点变得无法通信的时间节点。
路径到期时间(Path expiration time,PET):它是整个路径到期的时间,其值为SREQ在转发过程中整个路径上LET的最小值。因为在SREQ转发的过程中,一个链路的断裂就意味着整条链路的断裂,故PEL取整个路径上LET的最小值。
服务请求包(Service request packet,SREQ):服务请求节点在请求一个服务时构造的包的类型。它包含request source,broadcast ID,pre node,request service,hop count。
broadcast ID:广播编号,它和request source一起唯一确定一个SREQ包。
pre node:用于记录发送该SREQ包的前置节点,以便在找到服务后按原路返回。
request service:请求服务的服务信息。
hop count:跳数信息,它记录该SREQ包到服务请求节点的跳数。
服务回复包(Service reply packet,SREP):当网络中节点收到服务请求包后,如果能够提供所需的服务,向服务请求节点发送的包的类型,告诉服务请求节点该节点能够提供它所需要的服务。SREP包含request source,broadcast ID,provider information,service information,hop count,LN-SREQ,LN-SREP,PET。
provider information:服务提供节点的节点信息,包括该节点的能量信息。
service information:服务提供节点上的服务信息,包括服务执行时间,服务调用入口。
前向路由缓存(forward route cache):节点在收到SREQ后在前向路由缓存中缓存相关路由信息,供节点收到SREP后计算LET时使用。缓存信息包含如下broadcast ID,request source,pre-node,TSREQ,LN-SREQ
返向路由缓存(reversed route cache):节点在收到SREP后在返向路由缓存中缓存相关路由信息,节点在进行服务执行时根据返向路由缓存中的节点信息获得路由信息。该缓存信息包含request service,provider information,PET,next node。
next node:相应SREP包的发送节点。
本发明提出的可靠服务发现和选择方法包括服务发现和服务选择两个部分,下面分别介绍这两个部分。
可靠的服务发现包括发送服务请求、响应服务请求、处理服务回复包三个阶段。
各步骤具体如下:
(1)发送服务请求。
当节点需要一个服务时,发起一个服务发现请求,然后在前向路由缓存该节点发送SREQ的时间和在网络中的位置,接着向它周围的节点发送该SREQ包。
(2)响应服务请求。
网络中节点在收到SREQ包后首先在本节点的前向路由缓存中缓存相关路由信息,缓存下来的路由信息在计算SREP包中的LET时会使用到。
然后在自己提供的服务列表中查找匹配的服务,如果没有找到说明自己没有能力提供该服务,那么将SREQ包中hop信息加1后向周围节点转发该SREQ包。
如果找到,则说明本节点有能力提供该服务。为了在后面计算LET时获得不同的时间和位置信息,该节点稍微等待一小段时间,然后构造服务回复包SREP,SREP根据前向路由缓存中的pre-node返回。
(3)处理服务回复包
网络中节点在收到SREP后,检查本节点是不是服务请求节点,如果不是服务请求节点,则对SREP进行如下处理:
a.根据SREP包中节点的位置信息和相应的时间信息以及前向路由缓存中缓存的相关路由信息计算LET。
LET的计算方法为:
如图1所示,对于节点A和B之间的链接而言,通过矢量计算得到节点A和B在TA-SREQ时刻的距离D1=|LB-SREQ-LA-SREQ|,用相同的方法,通过矢量计算得到节点A和B在TB-SREP时刻的距离D2=|LB-SREP-LA-SREP|,于是可以得到从TA-SREQ时刻到TB-SREP时刻两个节点间距离的变化。通过计算可以得到A节点和B节点间变化的速率,即v=(D2-D1)/(TB-SREP-TA-SREQ).于是LET=(R-D2)/v+TB-SREP。R表示网络中节点能够传输的半径,它表示网络中节点能够传输的范围。
b.如果LET比SREP中PET小,则更新PET,将PET的值更新为LET的值。
c.在返向路由缓存中缓存相关路由信息。节点在执行服务时根据返向路由缓存中的节点信息获得路由信息。
d.根据前向路由缓存中缓存的相关路由信息转发SREP给前置节点。
如果是服务请求节点,对SREP进行如下处理:
a.根据SREP包中的节点的位置信息和相应的时间信息以及之前缓存的相关路由信息计算LET。
b.如果LET比PET小,则更新PET,将PET的值更新为LET的值。
c.在返向路由缓存中缓存相关路由信息,该缓存信息如前所述。
可靠的服务选择是指从找到的服务提供节点中选择出可靠的节点作为服务提供节点的过程,它包括选择能量符合要求的节点、选择PET符合要求的节点、选择跳数最小的节点三个阶段。
各步骤具体如下:
1.选择能量符合要求的节点
服务请求节点从返回的SREP中可以得到服务提供节点的剩余能量信息,并将其与执行该服务所需要的能量进行比较,筛选出能够提供服务执行所需要能量的节点作为服务候选节点。如果经过筛选后的节点数量等于0,则表示本次服务发现失败;如果等于1,则将该节点作为服务提供节点;如果大于1,则转而进行步骤二的选择。
2.选择PET符合要求的节点
服务请求节点将计算得到的PET与该服务的执行时间及服务发现时间之和进行比较,筛选出PET大于服务执行时间及服务发现时间之和的节点作为服务候选节点。经过筛选后如果节点数量等于0,则选择步骤一中PET最大的节点作为服务提供节点;如果等于1,则将该节点作为服务提供节点;如果大于1,则转而进行步骤三的选择。
3.选择跳数最小的节点
服务请求节点从返回的SREP中可以得到服务提供节点的跳数信息,选择跳数最小的节点作为服务提供节点。如果跳数最小的节点有多个,则比较它们的PET,选择PET最大的节点作为服务提供节点。
附图说明
图1是两个不同时刻节点A、B的位置图。
图2是会议应用场景,描述了网络节点构成,以及节点的角色等信息。
具体实施方案
以下结合具体的实施例,对本发明做进一步的阐述。实施例仅用于对本发明做说明而不是对本发明的限制。
实施例:
本实施例以会议应用场景中的复印服务为例来详细介绍本发明的具体实施方式,应用场景如图2所示,其中SP1、SP2是服务提供者,它们提供打印服务,而网络中节点N1提供打印服务,节点SR是服务请求者,它需要复印服务。
本发明提出的可靠服务发现和选择方法包括服务发现和服务选择两个部分,服务发现的步骤如下:
(1)发送服务请求。
节点SR需要一个复印服务,产生一个服务发现请求SREQ包,请求周围节点的复印服务,然后在前向路由缓存中缓存TSREQ(SR)和LSREQ(SR)b并向它周围的节点N1发送了SREQ包。
(2)响应服务请求。
节点N1收到节点SR发来的SREQ包后首先在本节点的前向路由缓存中缓存相关路由信息,记录下节点N1收到SREQ时刻的时间信息TN1-SREQ及节点N1在网络中的位置信息LN1-SREQ。然后在自己提供的服务列表中查找匹配的服务,发现本节点无法提供复印服务,则将SREQ包中hop信息加1后向周围节点SP1和SP2转发该SREQ包。
节点SP1收到节点N1发来的SREQ包后首先在本节点的前向路由缓存中缓存相关路由信息,记录下节点SP1收到SREQ时刻的时间信息及节点SP1在网络中的位置信息。然后在自己提供的服务列表中查找匹配的服务,发现本节点可以提供复印服务,那么稍微等待一小段时间,然后构造服务回复包SREP,SREP中包含节点SP1收到SREQ时在网络中的位置信息LSP1-SREQ和节点SP1发送SREP时刻在网络中的位置信息LSP1-SREP,最后向N1节点发送服务回复包SREPSP1
节点SP2收到节点N2发来的SREQ包后首先在本节点的前向路由缓存中缓存相关路由信息,记录下节点SP2收到SREQ时刻的时间信息及节点SP2在网络中的位置信息。然后在自己提供的服务列表中查找匹配的服务,发现本节点可以提供复印服务,那么稍微等待一小段时间,然后构造服务回复包SREP,SREP中包含节点SP2收到SREQ时在网络中的位置信息LSP2-SREQ和节点SP2发送SREP时刻在网络中的位置信息LSP2-SREP。后向N1节点发送服务回复包SREPSP2
(3)处理服务回复包
节点N1收到节点SP1发来的服务回复包SREPSP1后,检查本节点得到节点N1不是服务请求节点,于是对SREPSP1进行如下处理:
a.根据SREPSP1包中节点SP1的位置信息和相应的时间信息以及前向路由缓存中节点N1缓存的位置信息和相应的时间信息计算LETN1-SP1,计算的方法如前所述,假设此时得到的LETN1-SP1值为8时20分。
b.由于SREPSP1中PET初值为无穷大,于是更新PET,将PET的值更新为LETN1-SP1的值8时20分。
c.在节点N1的返向路由缓存中缓存相关路由信息,记录下提供如提供服务节点SP1的节点信息、发送该SREP包的后置节点为SP1节点等相关信息。
d.根据前向路由缓存中缓存的路由信息向节点SR转发该SREPSP1包。
节点N1收到节点SP2发来的服务回复包SREPSP2后,检查本节点得到节点N1不是服务请求节点,于是对SREPSP2进行如下处理:
a.根据SREPSP2包中节点SP2的位置信息和相应的时间信息以及前向路由缓存中节点N1缓存的位置信息和相应的时间信息计算LETN1-SP2,计算的方法如前所述,假设此时得到的LETN1-SP2值为8时40分。
b.由于SREPSP2中PET初值为无穷大,于是更新PET,将PET的值更新为LETN1-SP2的值8时40分。
c.在节点N1的返向路由缓存中缓存相关路由信息,记录下提供如提供服务节点SP2的节点信息、发送该SREP包的后置节点为SP2节点等相关信息。
d.根据前向路由缓存中缓存的路由信息向节点SR转发该SREPSP2包。
节点SR收到节点N1发来的服务回复包SREPSP1后,检查本节点得到节点SR是服务请求节点,于是对SREPSP1进行如下处理:
a.根据SREPSP1包中节点N1的位置信息和相应的时间信息以及前向路由缓存中节点SR缓存的位置信息和相应的时间信息计算LETSR-N1,计算的方法如前所述,假设此时得到的LETSR-N1值为8时45分。
b.由于LETSR-N1比PET大,则不更新PET。
c.在返向路由缓存中缓存相关路由信息,该缓存信息如前所述。
节点SR收到节点N1发来的服务回复包SREPSP2后,检查本节点得到节点SR是服务请求节点,于是对SREPSP2进行如下处理:
a.根据SREPSP2包中节点N1的位置信息和相应的时间信息以及前向路由缓存中节点SR缓存的位置信息和相应的时间信息计算LETSR-N1,计算的方法如前所述,假设此时得到的LETSR-N1值为8时45分。
b.由于LETSR-N1比PET大,则不更新PET。
c.在返向路由缓存中缓存相关路由信息,该缓存信息如前所述。
服务选择的步骤如下:
(1)选择能量符合要求的节点
服务请求节点SR从返回的SREP中可以得到服务提供节点的剩余能量信息,这里假设节点SP1和节点SP2的剩余能量能够满足执行该服务所需要的能量,那么转而进行步骤二的选择。
(2)选择PET符合要求的节点
服务请求节点SR将计算得到的PET与该服务的执行时间与服务发现时间之和进行比较,这里假设该服务的执行时间与服务发现时间之和为20分钟,而当前时间为8时15分。即PET的值必须大于8时35分,由于收到的SREPSP1包中的PET值为8时20分,收到的SREPSP2包中的PET值为8时40分,只有节点SP2符合要求,于是将节点SP2作为该服务的服务提供节点。

Claims (1)

1.一种无线自组织网络环境中可靠的服务发现和服务选择方法,由可靠的服务发现和可靠的服务选择两个部分组成,其特征在于所述可靠的服务发现包括发送服务请求、响应服务请求、处理服务回复包三个阶段,可靠的服务选择包括选择能量符合要求的节点、选择路径到期时间符合要求的节点、选择跳数最小的节点三个阶段;
所述的服务发现的三个阶段其步骤具体如下:
①发送服务请求
当节点需要一个服务时,发起一个服务发现请求,然后在前向路由缓存该节点发送SREQ的时间和在网络中的位置,接着向它周围的节点发送该服务请求包SREQ包;
②响应服务请求
网络中节点在收到SREQ包后首先在本节点的前向路由缓存中缓存相关路由信息,然后在自己提供的服务列表中查找匹配的服务,如果没有找到说明自己没有能力提供该服务,那么将SREQ包中hop信息加1后向周围节点转发该SREQ包;如果找到,则说明本节点有能力提供该服务,该节点稍微等待一小段时间,然后构造服务回复包SREP,SREP根据前向路由缓存中的pre-node返回;
③处理服务回复包
网络中节点在收到SREP后,检查本节点是不是服务请求节点,如果不是服务请求节点,则对SREP进行如下处理:
a.根据SREP包中节点的位置信息和相应的时间信息以及前向路由缓存中缓存的相关路由信息计算链路到期时间LET(Link Expiration Time);
b.如果LET比SREP中路径到期时间PET(Path Expiration Time)小,则更新PET,将PET的值更新为LET的值;
c.在返向路由缓存中缓存相关路由信息;
d.根据前向路由缓存中缓存的相关路由信息转发SREP给前置节点;
如果是服务请求节点,对SREP进行如下处理:
a.根据SREP包中的节点的位置信息和相应的时间信息以及之前缓存的相关 路由信息计算LET;
b.如果LET比PET小,则更新PET,将PET的值更新为LET的值;
c.在返向路由缓存中缓存相关路由信息;
所述的可靠的服务选择方法其三个阶段具体步骤如下:
(1)选择能量符合要求的节点
服务请求节点从返回的SREP中得到服务提供节点的剩余能量信息,并将其与执行该服务所需要的能量进行比较,筛选出能够提供服务执行所需要能量的节点作为服务候选节点:如果经过筛选后的节点数量等于0,则表示本次服务发现失败;如果等于1,则将该节点作为服务提供节点;如果大于1,则转而进行步骤(2)的选择;
(2)选择PET符合要求的节点
服务请求节点将计算得到的PET与该服务的执行时间及服务发现时间之和进行比较,筛选出PET大于服务执行时间及服务发现时间之和的节点作为服务候选节点;经过筛选后如果节点数量等于0,则选择步骤(1)中PET最大的节点作为服务提供节点;如果等于1,则将该节点作为服务提供节点;如果大于1,则转而进行步骤(3)的选择;
(3)选择跳数最小的节点
服务请求节点从返回的SREP中得到服务提供节点的跳数信息,选择跳数最小的节点作为服务提供节点;如果跳数最小的节点有多个,则比较它们的PET,选择PET最大的节点作为服务提供节点。 
CN200810202722A 2008-11-14 2008-11-14 自组织网络中可靠的服务发现和服务选择方法 Expired - Fee Related CN101741916B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200810202722A CN101741916B (zh) 2008-11-14 2008-11-14 自组织网络中可靠的服务发现和服务选择方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200810202722A CN101741916B (zh) 2008-11-14 2008-11-14 自组织网络中可靠的服务发现和服务选择方法

Publications (2)

Publication Number Publication Date
CN101741916A CN101741916A (zh) 2010-06-16
CN101741916B true CN101741916B (zh) 2012-10-24

Family

ID=42464799

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200810202722A Expired - Fee Related CN101741916B (zh) 2008-11-14 2008-11-14 自组织网络中可靠的服务发现和服务选择方法

Country Status (1)

Country Link
CN (1) CN101741916B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013178863A1 (en) * 2012-05-28 2013-12-05 Nokia Corporation A method, a server and a computer program for local discovery
EP3745812A1 (en) * 2013-01-28 2020-12-02 Sony Corporation Wireless communication apparatus, communication system, wireless communication apparatus control method, and program
CN104540199B (zh) * 2015-01-26 2018-07-06 中国科学院微电子研究所 无线传感器网络的服务选择方法及系统
CN105554705A (zh) * 2015-12-25 2016-05-04 湖北文理学院 一种基于路由和位置感知的ad hoc网络服务系统
WO2022067560A1 (zh) * 2020-09-29 2022-04-07 西门子股份公司 协同工作方法和系统、移动机器人、计算设备和存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101242431A (zh) * 2008-01-21 2008-08-13 北京航空航天大学 基于跨层的移动Ad Hoc网络服务发现方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101242431A (zh) * 2008-01-21 2008-08-13 北京航空航天大学 基于跨层的移动Ad Hoc网络服务发现方法

Also Published As

Publication number Publication date
CN101741916A (zh) 2010-06-16

Similar Documents

Publication Publication Date Title
JP4800067B2 (ja) 通信ノード及びルーティング方法
RU2628334C2 (ru) Выбор маршрута в беспроводных сетях
AU2004237633B2 (en) Route discovery device and method in a mobile ad-hoc network
US8203990B2 (en) Wireless-communication system, wireless-communication device, wireless-communication method, and program
EP1393507B1 (en) Wireless distributed communications network
CN100576809C (zh) 大规模动态异构混合无线自组织网络中的接入及路由计算方法
CN101741916B (zh) 自组织网络中可靠的服务发现和服务选择方法
CN101779437A (zh) 在通信网络中进行移动性管理和高效信息检索的方法、仪器和系统
CN103108371A (zh) 单天线多信道认知无线传感器网络路由控制方法
US8576800B2 (en) Method and apparatus for distributing data to a mobile device using plural access points
US20050157749A1 (en) System and method for communication with an external network in an IPv6 MANET network
CN101459949B (zh) 路由建立方法
WO2023045143A1 (zh) 一种基于时间脉冲源的混合路由协议的实现方法
Cheng et al. Adaptive lookup protocol for two-tier VANET/P2P information retrieval services
CN101232458B (zh) 一种基于maodv协议的多路径扩展方法
Salem et al. Cache discovery policies of MANET
Farahmand et al. Performance of vehicular delay‐tolerant networks with relay nodes
CN101325542A (zh) 域间pce能力信息的获取方法、pce及能力获取装置
CN101741917B (zh) 一种在无线自组织网络中自适应的服务发现方法
Pham et al. Geographical awareness hybrid routing protocol in mobile ad hoc networks
CN101409905A (zh) 一种基于任播方式的移动多跳分组无线网络路由方法
Badal et al. A energy efficient approach to DSR based routing protocol for ad hoc network
CN101163106B (zh) 一种在无线自组织网络中组合服务的执行方法
Groba Synchronising service compositions in dynamic ad hoc environments
WO2006010331A1 (fr) Procede de communication d'un terminal mobile

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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20121024

Termination date: 20151114

EXPY Termination of patent right or utility model