CN101507229B - 使用触发表达式的网络节点优化 - Google Patents
使用触发表达式的网络节点优化 Download PDFInfo
- Publication number
- CN101507229B CN101507229B CN2006800557555A CN200680055755A CN101507229B CN 101507229 B CN101507229 B CN 101507229B CN 2006800557555 A CN2006800557555 A CN 2006800557555A CN 200680055755 A CN200680055755 A CN 200680055755A CN 101507229 B CN101507229 B CN 101507229B
- Authority
- CN
- China
- Prior art keywords
- value
- context source
- context
- expression formula
- expression
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
- H04L41/5041—Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the time relationship between creation and deployment of a service
- H04L41/5051—Service on demand, e.g. definition and deployment of services in real time
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/30—Profiles
- H04L67/306—User profiles
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06315—Needs-based resource requirements planning or analysis
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Mobile Radio Communication Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
用于在通信网络(1)中提供服务的方法和配置为执行该服务的服务节点(10)。服务节点(10)配置为从服务接收和评估请求,请求包括具有多个元素的表达式。每个元素涉及源于一个或多个上下文源(B,D,E)的数据,这些源可例如使用上下文源代理(B′,D′,E′)将数据提供到服务节点(10)。每个上下文源(B,D,E)使用基于请求的机制或基于事件触发的机制来更新其相关联数据。选择多个元素之一,并且选定元素评估为假时,将选定元素切换到触发模式。如果选定元素评估为真,则询问又一元素。
Description
技术领域
本发明涉及用于在通信网络中提供服务的方法,其中服务包括评估包括表达式的请求,表达式是多个元素的函数(例如,布尔函数),每个元素涉及源于通信网络中可用的一个或多个上下文源的数据。另一方面,本发明涉及用于通信网络的服务节点。
背景技术
目前,在上下文源提供信息到通信网络中的请求者时,这通过基于事件触发或基于请求的机制完成。一些服务要求评估一个或多个上下文源的值的表达式。每次评估要询问上下文源。这可在服务节点与该上下文源或这些上下文源之间造成不可接受的通信量。
A.K Dey的文献“提供用于建立上下文-已知应用的架构支持(Providing architectural support for building context-aware applications)”中公开了用于在交互应用的上下文中评估表达式的方法。公开了上下文工具箱,其允许设计上下文已知的计算应用。
欧洲专利申请EP-A-1 526 457描述了带有由用户输入的规则集合的上下文已知运行的***。在评估之前需要询问所有上下文源。
发明内容
本发明致力于为提供涉及多个上下文源的服务的通信网络提供网络性能改进。
根据本发明,提供了根据上面定义的前序的方法,其中,一个或多个上下文源的每个源使用基于请求的机制或基于事件触发的机制来更新其相关联数据,方法包括询问多个元素的一个选定元素,如果基于接收到的选定元素值而可能将表达式评估为第一值,则将选定元素切换到触发模式,并且如果基于接收到的选定元素值而将表达式评估为第二值,则继续询问多个元素中的又一元素。这样,通过只在表达式的元素之一被评估为真时进一步评估表达式而可更有效地使用网络资源。
在又一实施例中,方法还包括基于表达式和上下文源的权重确定上下文源的顺序(order),上下文源的权重是用于向一个或多个上下文源评估表达式的币值和所使用网络资源的函数,并且其中选定元素是最低顺序的上下文源,并且多个元素中的又一元素是下一最低顺序的上下文源。通过先处理最低权重上下文源,以最低的总成本执行表达式的评估。
在又一实施例中,表达式是布尔函数,来自每个上下文源的数据为真或假。这允许服务快速估计表达式。在备选实施例中,来自上下文源的数据是数值,并且表达式包括上下文源的值的函数。此函数例如包括数值与预定范围(源E介于2与6之间,大于4等的值)的比较。这允许更轻松地与上下文源接口,因为上下文源可能已经在网络中存在或可用,但只提供数值。
函数在又一实施例中可包括一个或多个上下文源的值的数学运算评估。数学运算可以是简单的加法,但也可允许更复杂的数学函数。涉及两个或更多个上下文源的数据值的数学运算评估可涉及根据实际值和数学运算来设置触发阈值。
在又一实施例中,来自每个上下文源的数据可也具有值“未知”。方法可还配置为处理上下文源返回的值“未知”,例如,根据评估的表达式种类(例如,布尔“与”或“或”函数)。在甚至又一实施例中,方法还包括在值是“未知”时为相应上下文源值使用最新获得的值。在两个实施例中,与服务有关的效率(例如,网络资源的使用和货币成本)得到进一步的改进。
在又一实施例中,多个上下文源中每个源的数据存储在服务可直接访问的相关联代理服务器中。代理服务器或代理的使用可便于使数据可用于网络中的应用,并且对这些数据提供更快的访问。
在甚至又一实施例中,子表达式由多个父表达式使用,并且在相关联请求被同时接收时,用于评估子表达式的权重在多个父表达式之间共享。这提供了为网络中的服务改进效率的又一机会。
另一方面,本发明涉及用于在通信网络中提供服务的通信网络的服务节点,其中,服务节点配置为接收和评估请求,请求包括作为多个元素函数的表达式,每个元素涉及源于一个或多个上下文源的数据,服务节点在操作中可连接到一个或多个上下文源,其中,服务节点还配置为执行如本发明任何实施例所述的方法。为此,服务节点可进一步包括用于评估表达式的规则解释器。此外,服务节点可还包括用于与一个或多个上下文源接口的上下文信息收集器。在甚至又一实施例中,上下文信息收集器可包括用于一个或多个上下文源中每个上下文源的上下文源代理以便存储与每个相应上下文源相关联的数据。在上下文源根据基于请求的机制操作时,上下文源从服务节点接收其值的请求,并且将向服务节点回复当前值。在上下文源根据基于触发的机制操作时,上下文源从服务节点接收事件请求。每次上下文源的值更改时,上下文源将事件和当前值发送到服务节点。服务节点(或相关联的上下文源代理)存储来自上下文的最新接收值,并且来自服务的上下文源值的任何请求将不会产生到上下文源的请求,而是将存储的最新值提供到服务。
一起借助于本发明中所述的优化,取决于不同上下文源的服务的所需资源将降到最低而不会在等待时间和成本方面损害所需性能。
附图说明
下面将使用多个示范实施例,参照附图更详细地论述本发明,其中
图1示出允许表达式评估的网络示意图;
图2示出实现本发明实施例的网络示意图;
图3示出其中根据本发明实施例执行表达式评估的网络示意图;
图4示出表达式评估的改进前实现的顺序图;
图5示出根据本发明实施例的表达式评估实现的顺序图;
图6示出根据本发明又一实施例的表达式评估实现的顺序图;
图7示出根据本发明又一实施例的表达式评估实现的顺序图;
图8示出其中一个表达式由多个父表达式共享的网络示意图;
图9示出根据本发明又一实施例的表达式评估实现的顺序图;以及
图10示出根据其中应用共享的本发明又一实施例的表达式评估实现的顺序图;以及
图11示出使用本发明实施例在通信网络中又一可能方案的示意图。
具体实施方式
本发明可在诸如蜂窝电信网络等任何类型的通信网络结构中应用和实现。下面描述的各种方法实施例可在现有网络硬件组件之一中或在根据需要与网络1中其它节点和/或组件接口的单独服务节点中实现。
本发明的基本概念在图1所示的网络结构表示中示出。此处只示出了理解本发明所需的元素。服务或应用可使用网络1获得取决于多个元素的表达式A的评估。实际上下文源B、D和E(提供有关上下文信息的数据)可位于网络1外,但能够与网络1通信。例如,网络1可包括提供在网络1中上下文源信息的上下文源代理(或上下文源代理服务器)B′、D′和E′。
在上下文源B、D和E之间存在某种关系式或表达式A和C,视来自它们的数据而定,图1所示的网络1可表示任何种类服务。来自应用或服务的请求取决于表达式A的评估。在图1所示的情况中,表达式A取决于两个元素,即,另一表达式C(中间表达式)和上下文源B的值。如图1所示,表达式C取决于上下文源D、E的值。
在本发明的实施例中,也可使用其它表达式。虽然上面所示的表达式A包括又一表达式(表达式C),但也可设想不存在中间表达式,即,要评估的表达式A直接取决于来自一个或多个上下文源B、D、E的信息(数据)。此外,在实现某些网络服务时,更复杂的表达式可能是必需的,例如,包括多个中间表达式。
图2示出了电信网络中本发明的一种可能实现。同样地,上下文源B、D和E示为位于网络1外。请求者11(例如,在用户操作的移动电话中执行的应用)可发送请求到服务节点10,该服务节点10可以是网络1的一部分,或者如图2所示,连接到网络1。服务节点10包括通过网络1连接到上下文源B、D、E的上下文信息收集器15和连接到上下文源信息收集器15和请求者11的规则解释器16。网络1形成来自物理上下文源B、D、E的信息的传输设施。物理上下文源位于服务节点10外,但通过其相应代理B′、D′、E′而在服务节点10内表示。图2所示功能可实现为软件程序,装载在例如以服务节点10形式已知的处理装置上或网络1中另一已经存在的处理装置上。上下文源代理B′、D′和E′可实现为上下文信息收集器15的一部分。(由图2的请求(规则A)示出的)请求由请求者11投递(post)到规则解释器16。这种情况下,请求涉及评估表达式规则A,该规则如相对于图1所示是基于三个上下文源B、D和E。规则与上下文源之间的关系已经相对于上面的图1概括示出。在规则A评估为真时,请求者11通过规则解释器16收到通知。为具有尽可能准确的上下文信息,上下文源代理B′、D′、E′可通过基于事件触发的机制、基于请求的机制或两者的组合进行更新。此外,代理可编程为定期更新信息。
为具有尽可能准确的上下文信息,上下文源B、D、E将通过基于事件触发和基于请求的机制组合来更新请求者11。这意味着上下文源B、D、E或上下文源代理B′、D′、E′可使其更新机制适应当前需要。
根据本发明实施例,使用的机制可基于可能从网络1或在网络1中可用的以下一个或多个参数或标准进行更新:
·向选定上下文源的请求发生频率;
·与选定上下文源相关联的事件发生频率;
·请求的成本或权重(即,用于询问上下文源的币值和使用的网络资源的函数);
·事件的成本或权重(即,用于处理来自上下文源的事件的币值和使用的网络资源的函数);
·与其它上下文源的关系以及请求者是否确实需要该值。
上下文源B、D、E的值可相当易变或不易变。这极大取决于上下文源B、D、E的类型。例如,用于某个人的日历上下文源(例如,指示某个人是否在会议中)可能最多大约每小时发生更改,而该人的位置在移动时可能每秒发生更改。
请求的成本示出是关于特定上下文源B、D、E的单个值请求的实际成本。这可以是用于图2中请求者11的成本,或用于服务节点10(更具体地说,规则解释器16)的成本。成本由根据网络资源(=N)和货币=()确定的权重值表示:权重=f(N,)
用于本方法实施例的请求实际总成本(第一成本值)表示如下:
成本请求=频率请求*权重请求
其中,频率请求是请求发生的频率,并且权重请求是用于选定上下文源B、D、E的单个值请求的上面定义的成本。请求发生的频率可从历史数据得出,但也可确定为估计值或用于将来的计划值。
用于本方法实施例的事件的实际总成本(例如,上下文源的值更改)或第二成本值表示如下:
成本事件=成本触发+(频率事件*权重事件)
其中,频率事件是事件发生的频率,并且权重事件是用于选定上下文源B、D、E的单个事件的上面定义的成本。成本触发是涉及基于事件触发的机制的另外成本。同样地,事件发生的频率可从历史数据得出,但也可确定为估计值或用于将来的计划值。
在备选实施例中,确定事件的实际总成本时忽略了因子成本触发。
默认情况下,为每个上下文源代理B′、D′、E′关闭触发以便在实际请求进入(即,全部在使用基于请求的机制进行更新)前不消耗任何资源(即,金钱和网络资源)。
上下文源代理B′、D′、E′将在第一成本值(成本请求)大于第一切换值,例如第二成本值(成本事件)时决定转入触发模式。
上下文源代理B′、D′、E′在触发模式中并由于值更改而被触发,并且上下文源代理没有待决请求时,上下文源代理将在第二成本值(成本事件)大于第二切换值,例如,第一成本值(成本请求)时决定关闭触发。
这样,上下文源更新机制适应为事件进行触发和/或等待实际请求是否成本更高的实际情况。
在上述内容中,上下文源代理B′、D′、E′配置为评估成本比较,例如,作为服务节点10的上下文信息收集器15的功能(参见图2)。然而,此功能也可在能够与上下文源B、D、E通信的***其它部分中提供,如上下文源B、D、E本身、规则解释器16或请求者11。
此外,在上述实施例中,成本值基于历史信息计算得出。然而,其它相关数据也可使用,如估计的数据或计划(将来)的数据。此外,成本评估可只基于请求和事件发生的频率,即,在触发模式与请求模式之间的切换只基于发生频率的评估而进行。
一种滞后机制将防止在成本事件与成本请求差不多时的“闪烁效应”(在请求与触发模式之间持续切换)。这可通过将滞后δ值加上与未使用的更新机制相关联的成本,或者通过从与实际使用的更新机制相关联的成本减去滞后δ值而轻松实现。在上述实施例中,滞后δ值可加上第一切换值、第二切换值或第一与第二两个切换值。
在网络层,有若干可能的优化机制。第一优化机制是基于布尔值触发。网络中的任何节点(表达式)可启动触发机制,该机制将在该节点之后使用上述机制的任何节点上开始触发。在一个实施例中,第一触发将设置在最便宜(最低权重)的上下文源代理(E′)上。
在上下文源代理E′变为真时,下一最低权重上下文源代理(上下文源代理D′)将设为触发模式。在上下文源代理D′未激发(fire)时,上下文源代理E′将再次设为请求模式。在上下文源代理D′激发(D的值=真)时,触发再次设置在上下文源代理E′上。上下文源代理E′激发(E的值=真)时,表达式C将激发,并且触发将设置在上下文源代理B′上。上下文源代理B′为假时,表达式C将设为请求模式。如图3示意图中所示,这也将传播到上下文源代理D′和E′。
上下文源代理B′上的触发激发(B的值=真)时,触发再次设置在表达式C上并传播到上下文源D′和E′。上下文源D和E上的值仍为真时,上下文源代理D′和E′上的触发将激发并促使表达式C激发(=真)。最终表达式A将在上下文源A仍为真时激发。
从上述内容中可看到,到基于事件触发的机制的切换可为任一存在的上下文源完成,但也可为中间表达式(在上述示例中,表达式C)完成。
上述实施例也可使用顺序图描述,图4、图5和图6中为根据本发明的多个实施例示出了这些顺序图。对于这些示例,为上下文源B和C具有值假时触发设置在表达式A上(由图4、图5和图6中的1:设置触发(真)示出)的特定情况,使用了图1(上述)的方案情况。表达式如下所示:A=B & C。
在图4以示意图方式示出的改进前实现中,将设置用于上下文源B和C两者的触发(由图4中的顺序2-4和5-7示出),并且表达式A的评估将等待至上下文源B和C均为真。仅在上下文源B和表达式C的上下文均为真(由图4中的顺序8、9和10、11示出)时,用于表达式A的触发机制将生成事件12,并且表达式A将被评估为真。
在根据本发明实施例的第一优化实现中,其顺序图在图5中示出。这种情况下,触发机制只为一个上下文源(在图5中上下文源代理B′,顺序2、3、4)开启,并且等待此上下文源代理B′返回值真。发生这种情况(图5中的顺序5-6)时,表达式A的下一元素(即,表达式C)切换到触发模式(图5中的顺序7-9),并且仅在此上下文源变为真(图5中的顺序10、11)时,用于表达式A的触发机制将生成事件12,并且表达式A将被评估为真。
在图6中示出其顺序图的根据本发明又一实施例的第二优化实现中,触发机制只为表达式A的最便宜元素(即,其要评估的权重最低的表达式A的元素)打开。这种情况下,这是中间表达式C。如图6所示,为元素C激活触发(顺序2-4),并且评估进一步等待此元素源返回值真(这由图6中的顺序5-6示出)。只有那样,表达式A的下一最便宜元素(即,上下文源B)会切换到基于事件的触发机制(顺序7-9)。在此上下文源B由于其值更改为真(图6中的顺序10)而生成事件时,这传递到表达式A的评估(上下文源B的事件,顺序11),表达式A随后生成表达式A已评估为真(图6的顺序12)的事件。
在本发明的第二实施例组中,优化机制使用基于事件的触发机制,其中触发阈值基于值范围,例如,整数值范围。此优化考虑了上下文源B、D、E的实际值只在某些值范围内受请求者11关注,并且将因此影响触发频率的实际情况。因此,相应上下文源B、D、E生成的事件数量降到最低,因而改进了网络和其它资源的使用效率。
图7的顺序图更详细示出此方案的示例:
步骤1-6:
收到对表达式A的请求。上下文源B收到对其值的请求并返回1。为表达式A设置触发(在为真时),并因此为上下文源B设置触发(B>1)。
步骤7-9:
上下文源B变得比1更高(B=2),从上下文源B生成事件(7),并因此将请求(9)发送到表达式C。
步骤10-14:
对表达式C的输入请求使表达式C请求上下文源D(=1)和E(=5)的值。表达式C评估为假,并发送响应假到表达式A。
步骤15-19:
为表达式C设置触发(在为真时),并且因此为上下文源E设置触发(E<=3),这是因为上下文源E比上下文源D成本更低(参见上述实施例)。
步骤20-26:
上下文源E变为3,并且事件(21)发送到表达式C。表达式C请求上下文源D的值(D=1),并且表达式C评估为真(C=4)并发送响应(=真)到表达式A。
步骤27-29:
表达式A请求上下文源B的值(B=2),并且表达式A评估为真并发送真事件(29)到请求者11。
步骤30-32:
上下文源B在表达式A请求时设为请求模式。
步骤33-37:
上下文源E由于值更改而得到事件,并发送事件到表达式C。由于不存在对表达式C的请求,因此,上下文源将被设回请求模式。
如上面示例所示,触发阈值可由请求节点(表达式A或C)根据当前情况设置。
在又一示例中,C同样是上下文源D和E的函数,并且下面的表达式可以被评估:A=(C>10),C=D+E。在此情况下,在上下文源D和E的值之和大于某个常数值(C>10)时,表达式A评估为真。上下文源D和E最初均被评估以便计算表达式C的值。随后,可确定什么值转化可能使表达式C评估为真,并且在上下文源D和E上分担结果条件。这意味着完成对上下文源D的实际值(=d)的请求。仅在上下文源D的值将使表达式C返回小于10的值时,才对上下文源E请求其实际值(=e)。上下文源D和E(或上下文源代理D′和E′)上的触发阈值将根据对表达式C的所需值而被均分。触发值要选择为使得D′或E′到达触发值的时间尽可能地长。上下文源代理D′和E′上的触发之一激发时,上下文源代理D′和E′上的触发将被调整。阈值触发在此示例中计算如下:
在此示例中,阈值触发计算如下:
上下文源代理E′在值7上激发(即,生成事件)时,用于两个上下文源代理的触发阈值调整如下:
上下文源代理D′在值4上激发时,这立即使表达式C上的触发激发,并且发送到表达式A的事件(值=11)将使表达式A变为真。触发随后被消除。
如在下面的乘法示例中所示,上面的实施例示例也可使用其它数学函数。
假设有以下表达式A:(D*E<10).在此情况下,上下文源代理D′和E′上的触发值将计算如下:
对于每种数学函数,可形成触发阈值的对应设置,这将导致在事件生成前尽可能长的时间。
在又一方案中,示出了在给定有关表达式值或上下文源值的另外条件的范围时,可能实现进一步优化。我们假设表达式A存在,它是B和C之和。B和C可以是上下文源或表达式。此外,我们假设在C上的另外条件存在,C将大于5。此条件可以是使用C的一些其它表达式的结果,或者是因为上下文源C的特征,或者是因为C依赖的上下文源和表达式的特征和条件。此外,我们假设触发已在A上设为在A的值一旦大于12时便报告。我们假设B的当前值为10,并且C的当前值为6。根据前面所述方法,用于B和C的阈值可计算得出。用于B的阈值将为8,并且用于C的阈值将为4。然而,C已经具有大于5的条件。因此,用于C的阈值4过于低。一旦C小于5,或者C无法变得小于5,C的值便已经被报告。因此,由A上的条件产生的触发阈值无法在B与C之间被均分,而因为只要和等于A的阈值,用于B和C的阈值任何组合都有效,所以C应只具有已经给出的阈值5,这使得B的阈值为7而不是8。现在B将只在它变得小于7时发送事件,这应比它变得小于8时更迟。对于C,阈值仍然是原来的阈值5,因此,C仍将在C小于5时发送事件。因此,由于此优化,通常在发送事件前将需要更多时间,而决不是更少时间。这意味着使用此优化时,更少的事件将被发送,并且因此成本将通过此优化被降低。
从上面的示例可看到,使用范围将可能在上下文源代理上设置更准确的触发值,这将产生更少的事件。
在又一实施例中,可能性被用于利用存在的多个父元素,其共享到子元素(上下文源或中间表达式)的请求。可设想到,如图8所示,上面的实施例和示例的表达式C(子表达式)由表达式A和另一表达式X(父表达式)共享。表达式A与图1和图3实施例中相同,然而,相关联上下文源权重不同(成本(B)=4,成本(D)=10和成本(E)=1)。在从各个相关联请求者11同时收到评估表达式A和表达式X的请求时,用于评估表达式C的权重可在两个父表达式A与X之间共享。这可在确定要先询问哪个上下文源时产生不同的评估结果:在图8所示的情况下,可看到上下文源E要先询问(由标记“请求”的箭头示出),而不同于先询问上下文源B的上述情况。
此外,关于请求数量,共享来自上下文源的信息的本发明实施例提供了比改进前解决方案更佳的解决方案。在图9和图10中,为最不优化情况给出了用于图8示例的顺序图,即,上下文源B和E为真,并且上下文源D为假的情况。
图9以示意图方式示出最低权重最早实现的改进前版本的顺序图,在该版本中,未将有不止一个父元素(请求者#1、请求者#2)寻找相同信息的实际情况考虑在内。请求者#1向上下文源B发出请求(顺序1-3),因为这是表达式A的最低权重元素(4对6)。请求者#2向表达式C发出直接请求。此请求将在步骤5-9中被进一步向上下文源E和D发出(先到E,因为此上下文源具有两个元素的最低权重)。结果是表达式C评估为假,这在步骤9会报告回请求者2。最后,在表达式C中评估上下文源B为真时,将再次形成从表达式A到表达式C的请求(步骤10)。表达式C的评估值已经知道(=假),这传播回表达式A并最终到请求者#1。
在本发明实施例中,将成本共享考虑在内。这在图10的顺序图中示出。为请求者#1和请求者#2两者评估表达式C,并且表达式C的评估结果为假,无需再次询问上下文源B,这已是众所周知。请求的总数量及因此结果事件的数量在此情况下低于图9改进前实现。
在图11中,示出了用于提供取决于不止一个上下文源数据的服务的可能网络体系结构的又一说明性示例。在此示例中,有连接到GPRS/UMTS网络1的两个请求者11a(卡洛尔)和11b(鲍勃)。GPRS/UMTS网络1连接到服务节点10,该节点配置为提供例如在服务节点10中实现为应用17的最佳通信方式(OCM)服务。服务节点10还包括配置为与多个上下文源接口的上下文信息收集器(CIC)15。
卡洛尔和鲍勃预订了最佳通信方式服务,并定义了在特定情况下具有关于最佳通信方式的首选项的配置文件。这些首选项由OCM服务17存储在例如数据库(未示出)中。这意味着在卡洛尔尝试与鲍勃通信时,鲍勃的配置文件用于依据向卡洛尔呈现的通信方式列表做出决定。
卡洛尔在她的车中,并在尝试和在会议中工作的鲍勃取得联系。鲍勃在其配置文件中定义了他在会议中时可通过即时消息传递、短消息或话音邮件和他取得联系。卡洛尔在她的配置文件中定义了她在驾车时只可使用话音通信。
卡洛尔从联系人列表中选择鲍勃。OCM服务17通过CIC15从卡洛尔和鲍勃两者中获取适用的上下文。OCM服务17发现由于卡洛尔和鲍勃的上下文原因,此时此刻没有可用的通信方式,并通过话音消息向卡洛尔呈现了此发现(经GPRS/UTMS网络1)。OCM服务17也为卡洛尔提供了一旦鲍勃变得可用时便联系她的选择。卡洛尔决定一旦鲍勃变得可用她想通过话音呼叫联系鲍勃。
一旦鲍勃的会议结束,他的上下文便会更改,这样,通过话音可和他联系。OCM服务17决定联系卡洛尔,并且卡洛尔可决定呼叫鲍勃。以下上下文源在此方案中适用:
日历信息(鲍勃):确定例如在会议中;
角色(卡洛尔):确定在车中的情况;
位置(卡洛尔):确定速度。
各种方法实施例也可在此示例中使用,即,基于评估OCM服务17使用的表达式的成本,确定要先询问哪个上下文源。
如在上面实施例和描述中使用的表达式和中间表达式是布尔元素的函数,具有为真或假的值。在其它实施例中,元素也可包括从上下文源B、D、E获得的数值的函数,例如,以检查上下文源的值是否在某个范围内。在实际的网络实现中,一些上下文源可在值不可用时通过值“未知”做出响应,例如,在手机关机,或者GPS***不输送任何信息的情况下。在大多数应用中,这将产生例外代码,该代码将导致服务不可用。
在又一实施例中,提供未知值的上下文源的此可能性可用于进一步改进网络的效率或降低成本。在第一变型中,将以下考虑在内:在布尔值真和假之后,上下文源B、D、E可提供值未知作为询问的响应。视要评估的(中间)表达式而定,这可得出不必为该请求询问任何其它上下文源的决定,从而降低网络数据业务和询问成本。
在第一示例中,同样地,使用了图1的表达式A和C:在上下文源D和E均返回值真时,中间表达式C为真,并且在上下文源B和中间表达式C均返回值真时,表达式A为真。假设上下文源E不可用,则中间表达式C的值取决于上下文源D的值。毕竟,在上下文源D返回假时,中间表达式C也将评估为假,但如果上下文源D的值为真或未知,则中间表达式C的值是未知。如果中间表达式C的值为假,则无需继续询问上下文源B或E的值,这节省了网络资源。如果中间表达式C的值未知,则必须询问上下文源B。
下表将此情况概括如下
与 | E=真 | E=假 | E=未知 |
D=真 | C=真 | C=假 | C=未知 |
D=假 | C=假 | C=假 | C=假 |
D=未知 | C=未知 | C=假 | C=未知 |
通过本发明,可自动捕获在未知行和列(=粗体)中的假情况,这是以前未注意的额外优化。
在下一示例中,在布尔“或”表达式的情况下查看此实施例的结果。假设表达式A和表达式C均是布尔或表达式,在上下文源或子表达式至少之一为真时返回真,则相同的逻辑适用。在上下文源D未知时,则服务将仍要求上下文源E提供其值。假设上下文源E为真,则上下文源D未知无关紧要。毕竟,在上下文源之一为真时,表达式C也产生真。因此,让表达式C返回真的条件得到满足,并且无需浪费其它网络资源。下表给出了返回值的概述(上述情况可映射在粗体条目上):
或 | E=真 | E=假 | E=未知 |
D=真 | C=真 | C=真 | C=真 |
D=假 | C=真 | C=假 | C=未知 |
D=未知 | C=真 | C=未知 | C=未知 |
通过本发明,可自动捕获在未知行和列(=粗体)中的真情况,这是以前未注意的额外优化。
在又一变型中,首先就相应值的可用性询问上下文源B、D、E。仅在上下文源未返回未知时才将要求上下文源提供其值,在使用布尔的情况下是真或假,或者在使用整数范围值的情况下是值本身。
如果上下文源B、D、E确实返回未知,则从上一请求获得的最新值可用作表达式A或C的输入。
在此实施例的示例中,对于布尔值,每个表达式和上下文源包含两个选项:可用性和最新。可用性由可用和真或可用和假两个选择组成。上下文源值未知时,服务可查看获得的最新值(最新),该值也可以为真或假。这样,未知值不再是一个问题。未知值由在可用性为假时的两种情况表示。可用性取决于子元素(表达式或上下文源)的最新和可用性值。假设表达式C=A & B。则表达式C的可用性取决于元素A和B的最新和可用性,如下所示:
可用性(C)=(可用性(A) & 可用性(B))
|(可用性(A) & 不是最新(A)))
|(可用性(B) & 不是最新(B)))
在表述上,如果元素A和B已知,则表达式C已知(这种情况下,表达式C的值是布尔与(A & B)的值,或者如果元素A可用并且为假(这种情况下表达式C的值为假),或者如果元素B可用并且为假(这种情况下,表达式C的值为假)。
最新值最初可设为真或假。一旦上下文源或表达式变为已知,正确的值便将被设置。只要可用性为假,则最新的值便不应使用。
上述实施例和示例无意限制本申请保护的范围,该范围如由随附权利要求中所述的特性定义。
Claims (22)
1.一种用于在通信网络中提供服务的方法,其中所述服务包括评估包括表达式(A)的请求,所述表达式是多个元素的函数,每个元素涉及源于在所述通信网络中可用的一个或多个上下文源(B,D,E)的数据,或者涉及中间表达式,
其中所述一个或多个上下文源(B,D,E)中的每个上下文源使用基于请求的机制或基于事件触发的机制来更新其相关联数据,
所述方法包括:
询问所述多个元素中的一个选定元素,
如果基于接收到的所述选定元素的值而可能将表达式(A)评估为第一值,则将所述选定元素切换到触发模式,以及
如果基于接收到的所述选定元素的值而将表达式(A)评估为第二值,则继续询问所述多个元素中的又一元素。
2.如权利要求1所述的方法,所述方法还包括
基于所述表达式和上下文源(B,D,E)的权重,确定上下文源(B,D,E)的顺序,上下文源(B,D,E)的权重是用于向所述一个或多个上下文源(B,D,E)评估所述表达式的币值和使用的网络资源的函数,以及其中所述选定元素是最低顺序的上下文源(B,D,E),并且所述多个元素中的又一元素是下一最低顺序的上下文源(B,D,E)。
3.如权利要求1-2任一项所述的方法,其中所述表达式是布尔函数,所述中间表达式具有布尔值或者来自每个所述上下文源(B,D,E)的数据为真或假。
4.如权利要求1-2任一项所述的方法,其中所述中间表达式具有数值或者来自所述上下文源(B,D,E)的数据是数值,并且所述表达式包括所述中间表达式的值或者所述上下文源(B,D,E)的值的函数。
5.如权利要求3所述的方法,其中所述中间表达式是数值表达式,所述中间表达式的值与预定范围比较以提供布尔结果。
6.如权利要求3所述的方法,其中涉及来自两个或更多个上下文源(B,D,E)的布尔值的数学运算的评估包括根据实际布尔值和所述数学运算设置每个所述上下文源(B,D,E)的触发阈值。
7.如权利要求4所述的方法,其中涉及来自两个或更多个上下文源(B,D,E)的数值的数学运算的评估包括根据实际值和所述数学运算设置每个所述上下文源(B,D,E)的触发阈值。
8.如权利要求1-2任一项所述的方法,其中来自每个所述上下文源(B,D,E)的所述数据能够还具有值“未知”。
9.如权利要求8所述的方法,其中所述方法还包括如果相应上下文源值是“未知”,则为所述相应上下文源值使用最新获得的值。
10.如权利要求1-2任一项所述的方法,其中所述多个上下文源(B,D,E)中每个上下文源的数据存储在所述服务可访问的相关联代理服务器(B′,D′,E′)中。
11.如权利要求1-2任一项所述的方法,其中子表达式由多个父表达式使用,并且在相关联请求被同时接收时,用于评估所述子表达式的权重在所述多个父表达式之间共享。
12.一种用于在通信网络中提供服务的装置,其中所述服务包括评估包括表达式(A)的请求,所述表达式是多个元素的函数,每个元素涉及源于在所述通信网络中可用的一个或多个上下文源(B,D,E)的数据,或者涉及中间表达式,
其中所述一个或多个上下文源(B,D,E)中的每个上下文源使用基于请求的机制或基于事件触发的机制来更新其相关联数据,
所述装置包括:
用于询问所述多个元素中的一个选定元素的部件,
用于如果基于接收到的所述选定元素的值而可能将表达式(A)评估为第一值,则将所述选定元素切换到触发模式的部件,以及
用于如果基于接收到的所述选定元素的值而将表达式(A)评估为第二值,则继续询问所述多个元素中的又一元素的部件。
13.如权利要求12所述的装置,所述装置还包括
用于基于所述表达式和上下文源(B,D,E)的权重,确定上下文源(B,D,E)的顺序的部件,上下文源(B,D,E)的权重是用于向所述一个或多个上下文源(B,D,E)评估所述表达式的币值和使用的网络资源的函数,以及其中所述选定元素是最低顺序的上下文源(B,D,E),并且所述多个元素中的又一元素是下一最低顺序的上下文源(B,D,E)。
14.如权利要求12-13任一项所述的装置,其中所述表达式是布尔函数,所述中间表达式具有布尔值或者来自每个所述上下文源(B,D,E)的数据为真或假。
15.如权利要求12-13任一项所述的装置,其中所述中间表达式具有数值或者来自所述上下文源(B,D,E)的数据是数值,并且所述表达式包括所述中间表达式的值或者所述上下文源(B,D,E)的值的函数。
16.如权利要求14所述的装置,其中所述中间表达式是数值表达式,所述中间表达式的值与预定范围比较以提供布尔结果。
17.如权利要求14所述的装置,其中涉及来自两个或更多个上下文源(B,D,E)的布尔值的数学运算的评估包括根据实际布尔值和所述数学运算设置每个所述上下文源(B,D,E)的触发阈值。
18.如权利要求15所述的装置,其中涉及来自两个或更多个上下文源(B,D,E)的数值的数学运算的评估包括根据实际值和所述数学运算设置每个所述上下文源(B,D,E)的触发阈值。
19.如权利要求12-13任一项所述的装置,其中来自每个所述上下文源(B,D,E)的所述数据能够还具有值“未知”。
20.如权利要求19所述的装置,其中所述装置还包括用于如果相应上下文源值是“未知”,则为所述相应上下文源值使用最新获得的值的部件。
21.如权利要求12-13任一项所述的装置,其中所述多个上下文源(B,D,E)中每个上下文源的数据存储在所述服务可访问的相关联代理服务器(B′,D′,E′)中。
22.如权利要求12-13任一项所述的装置,其中子表达式由多个父表达式使用,并且在相关联请求被同时接收时,用于评估所述子表达式的权重在所述多个父表达式之间共享。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/NL2006/050221 WO2008030083A1 (en) | 2006-09-05 | 2006-09-05 | Network node optimization with triggered expressions |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101507229A CN101507229A (zh) | 2009-08-12 |
CN101507229B true CN101507229B (zh) | 2012-06-20 |
Family
ID=37813509
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2006800557555A Expired - Fee Related CN101507229B (zh) | 2006-09-05 | 2006-09-05 | 使用触发表达式的网络节点优化 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20100220613A1 (zh) |
EP (1) | EP2060089B1 (zh) |
CN (1) | CN101507229B (zh) |
WO (1) | WO2008030083A1 (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8661074B2 (en) * | 2006-09-05 | 2014-02-25 | Telefonaktiebolaget Lm Ericsson (Publ) | Adaptive choice for context source request |
US8595722B2 (en) * | 2010-10-14 | 2013-11-26 | International Business Machines Corporation | Preprovisioning virtual machines based on request frequency and current network configuration |
US9552239B2 (en) * | 2013-08-09 | 2017-01-24 | Oracle International Corporation | Using sub-processes across business processes in different composites |
CN107153678A (zh) * | 2017-04-18 | 2017-09-12 | 北京思特奇信息技术股份有限公司 | 一种短信提醒的触发方法及装置 |
US11683331B2 (en) * | 2020-11-23 | 2023-06-20 | Juniper Networks, Inc. | Trust scoring of network entities in networks |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6801223B1 (en) * | 1998-12-18 | 2004-10-05 | Tangis Corporation | Managing interactions between computer users' context models |
US6295447B1 (en) * | 1998-12-31 | 2001-09-25 | Ericsson Inc. | Method and system for enabling the control of execution of features in a telecommunications network |
US7565403B2 (en) * | 2000-03-16 | 2009-07-21 | Microsoft Corporation | Use of a bulk-email filter within a system for classifying messages for urgency or importance |
EP1298527A1 (en) * | 2001-09-28 | 2003-04-02 | Sony International (Europe) GmbH | A system for automatically creating a context information providing configuration |
US7487234B2 (en) * | 2002-09-17 | 2009-02-03 | International Business Machines Corporation | Context conflict resolution and automatic context source maintenance |
US7080142B2 (en) * | 2002-09-20 | 2006-07-18 | Hewlett-Packard Development Company, L.P. | Extensible computer management rule engine |
US6917975B2 (en) * | 2003-02-14 | 2005-07-12 | Bea Systems, Inc. | Method for role and resource policy management |
EP1526457B1 (en) * | 2003-10-22 | 2013-03-13 | Sony Deutschland GmbH | Context-aware automatic service discovery and execution engine in mobile ad-hoc networks |
US7313552B2 (en) * | 2004-03-19 | 2007-12-25 | Sybase, Inc. | Boolean network rule engine |
KR100641238B1 (ko) * | 2004-07-09 | 2006-11-02 | 엘지전자 주식회사 | 장치 관리 시스템 및 그 시스템에서의 장치관리 명령스케줄링 방법 |
US8570880B2 (en) * | 2004-08-05 | 2013-10-29 | Qualcomm Incorporated | Method and apparatus for receiving broadcast in a wireless multiple-access communications system |
-
2006
- 2006-09-05 WO PCT/NL2006/050221 patent/WO2008030083A1/en active Application Filing
- 2006-09-05 US US12/439,990 patent/US20100220613A1/en not_active Abandoned
- 2006-09-05 CN CN2006800557555A patent/CN101507229B/zh not_active Expired - Fee Related
- 2006-09-05 EP EP06783967.0A patent/EP2060089B1/en not_active Not-in-force
Also Published As
Publication number | Publication date |
---|---|
US20100220613A1 (en) | 2010-09-02 |
CN101507229A (zh) | 2009-08-12 |
EP2060089B1 (en) | 2017-11-08 |
WO2008030083A1 (en) | 2008-03-13 |
EP2060089A1 (en) | 2009-05-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1769341B1 (en) | Virtual user interface for multiple user devices | |
EP2087658B1 (en) | Methods and systems for community-wide information exchange via individual communications terminals | |
US20080270305A1 (en) | Validation of queue tickets in wireless communications terminals by near-field communicatons with ticket machines | |
CN101507229B (zh) | 使用触发表达式的网络节点优化 | |
EP1579711A2 (en) | Method of tracking mobile station location | |
CN103035058A (zh) | 银行排队信息处理***及处理方法 | |
CN113112116B (zh) | 订单分配方法、装置及服务器 | |
KR100813398B1 (ko) | 휴대용 정보통신 단말기 및 통합 메시징 시스템을 이용한모바일 오피스 시스템 및 그 구현 방법 | |
JP4220394B2 (ja) | 電子的フォームを記入するための移動端末及びプロバイダ | |
CN105631728A (zh) | 一种基于网络购票的提示方法及*** | |
JP2005516545A5 (zh) | ||
CN101866507A (zh) | 基于手机短信的预约排队*** | |
US8315612B2 (en) | Terminal device, communication processing method and phone-book management method | |
WO2011152740A1 (en) | A dynamic queuing management system | |
CN101507230B (zh) | 用于上下文源请求的适应性选择 | |
CN112037023A (zh) | 一种银行网点管理方法和相关装置 | |
US8306206B2 (en) | Callback system, transmitting terminal, telephone relay server, callback method and callback program | |
KR100434647B1 (ko) | 네트워크 상에서의 연락처 정보 제공 방법 및 장치 | |
KR20200102698A (ko) | 콜 서비스 예약 시스템 및 방법 | |
KR20110116368A (ko) | 스마트폰을 이용한 대리운전 서비스 제공방법 | |
CN102333302A (zh) | 基于校验信息来提供联系人信息的方法 | |
JP2006178525A (ja) | 予約システム、予約プログラム、および予約システム運営方法 | |
EP4222453A1 (en) | Apparatus and methods for controlling the arrival of consumers and/or parcels | |
JP2007049429A (ja) | 通信端末情報変更システムおよびコンピュータ | |
KR101068501B1 (ko) | 이동 단말을 통한 도서 관리 시스템 및 그 방법 |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20120620 Termination date: 20190905 |