本发明属于移动机会网络领域,涉及到利用节点移动实现消息副本转发的路由激励机制,具体涉及基于市场供需关系的具有副本数约束的机会路由方法。
背景技术:
近年来,越来越多的机会网络路由协议被提出。根据消息的副本数量可以分为单副本路由和多副本路由。在多副本路由中,每当节点间接触时就复制(可能是以一定概率复制或部分复制)消息到对方节点,故网络中存在多个节点携带该消息的副本。多副本路由技术以增加资源消耗为代价,提高消息发送率,降低传输时延。多副本路由技术在密集网络或高移动性网络中的表现明显好于其它类型的路由技术,因为在这类网络中普遍存在的节点间接触机会有利于消息扩散。典型的多副本路由协议有MRP、MV、Spray and Wait、PROPHET、MaxProp等。
在概率估计路由协议(Probabilistic Routing Protocol using History of Encounters and Transitivity,PROPHET)中,每个节点维护一张与任何其他节点成功通信的预测交付概率表。当两节点相遇,通过交换各自的预测交付概率表,各节点更新自己概率表中与其他节点成功通信的概率。当对方节点与信息目的节点的预测交付概率高于自身与目的节点的预测交付概率时,该节点才会向对方节点传输信息。
大多数的已有的机会路由协议都是假设所有节点都是愿意参与合作的,但是在机会网络中,存在一个现实的问题,就是移动节点的资源有限。例如节点的内存空间,电量,转发能力,以及一些其他的因素,都会导致节点倾向于自私而拒绝为其他的节点转发数据,这样的节点称为自私节点。自私节点的参与使得网络的整个性能严重受损,为此,节点间的协作和激励机制就显得尤为重要。为了激励节点合作,提高机会网络的总体性能,必须提出一种有效的激励机制促进节点为其他节点转发数据。
在Chachulski等人提出的机会路由协议MORE(MAC-independent opportunistic routing protocol)中,就是假设没有节点自私性,并且中间节点真实的提交传输损失概率情况下执行的,如果节点提交了一个比真实传输损失概率小 的值,那么它的传输负载就会降低,整个网络的性能也会随之下降。
为解决上述问题,本发明提出了一类基于市场供需关系的具有副本数约束的机会路由方法,其特点在于:根据市场供需关系确定动态确定转发的副本数量以及中继节点获得的收益。该方法从理论上被证明是激励相容的,从而可以激励自私且理性的中继节点采取真实的策略。
技术实现要素:
本发明的目的是提供基于市场供需关系的具有副本数约束的机会路由方法,解决在存在自私节点的机会网络中如何选择中继节点,如何确定转发的副本数量,如何确定副本单位价格以及如何计算支付数额的问题。
本发明相对于目前的激励方法,首次采用了市场供需关系来确定转发副本的单位价格和转发副本数量。本发明提出了两种基于市场供需关系的机会网络多副本路由方法,分别称为单中继分发方法和多中继路由方法。在单中继分发方法中,源节点每次仅选择一个中继节点作为转发对象,适用于节点移动模式具有相似性的网络中;而在多中继路由方法中,源节点每次可选择多个中继节点作为转发对象,适用于节点移动模式多样的网络中。本发明所述基于市场供需关系的具有副本数约束的机会路由方法是激励相容的。
本发明的技术解决方案是:
源节点拥有消息,并且至少需要将该消息的H个副本分发至中继节点中。源节点此时在一跳范围内广播消息副本分发请求,收到该请求的邻居节点反回最长等待时间,源节点根据接收到的等待时间,计算副本单位价格、确定中继节点、计算分发副本数量、计算支付数额。源节点通知中继节点,然后中继节点等待约定的时间,完成副本传输。源节点支付报酬给中继节点。
本发明专利所述基于市场供需关系的具有副本数约束的机会路由方法包含单中继分发方法和多中继路由方法。
本发明的技术解决方案中单中继分发方法的步骤如下:
步骤201:源节点在一跳范围内广播消息副本分发请求;
步骤202:设接收到该请求的节点集合为N。对任意候选中继节点i∈N,返 回一个二元组(idi,ti)到源节点,其中idi为该节点的标识,ti为该节点的最长停留时间;
步骤203:源节点收到候选中继节点i∈N的返回后,在所有候选中继节点中选择提供最大ti且TID中不存在该候选中继节点的标识的节点作为中继节点;
步骤204:源节点保存所有idi,i∈N至历史分发记录表TID中;
步骤205:源节点计算中继节点i的副本单位价格p(ti),分发副本数量L和支付给中继节点i的数额pi;
步骤206:源节点和中继节点之间接触ti时间,完成L个副本分发,源节点向中继节点支付报酬pi;
步骤207:若L≥H,则转步骤208,否则转步骤209;
步骤208:删除源节点自身保存的消息,清空TID,结束;
步骤209:令H=H-L,转步骤201。
在步骤205中,源节点计算副本单位价格p(ti),分发副本数量L,支付给中继节点i的数额的步骤如下:
步骤301:源节点分发副本数量D和中继节点接收副本数量S由市场供需关系决定,其中D=α-βp,S=a+bp,α,β,a,b为常数,α>a,β>0,b>0;
步骤302:令S=D,求得市场均衡价格
步骤303:市场价格的变化率与剩余需求成正比,即其中k为正常数。化简得到其中λ=(b+β)k;
步骤304:解步骤303中的微分方程,设初始值为p0,且p0<pe,得到p(t)=pe+(p0-pe)e-λt;
步骤305:对于给定ti,副本单位价格为
步骤306:源节点计算分发副本数量
步骤307:支付给中继节点i的数额
本发明的技术解决方案中多中继路由方法的步骤如下:
步骤401:令集合源节点在一跳范围内广播消息副本分发请求;
步骤402:设接收到该请求的节点集合为N。对任意候选中继节点i∈N,返回一个二元组(idi,ti)到源节点,其中idi为该节点的标识,ti为该节点的最长停留时间;
步骤403:源节点收到候选中继节点i∈N的返回后,在所有候选中继节点中选择提供最大ti且TID中不存在该候选中继节点的标识的节点作为中继节点,将i存入集合W;
步骤404:源节点计算副本单位价格分发副本数量Lt和支付给中继节点i的数额pi;
步骤405:重复步骤403-步骤404,直到Lt≥H或W=N;
步骤406:源节点和中继节点i,i∈W之间接触ti时间,完成Li个副本分发,源节点向中继节点支付报酬pi;
步骤407:若Lt≥H,则转步骤408;否则,转步骤409;
步骤408:删除源节点自身保存的消息,清空TID,结束;
步骤409:源节点保存所有idi,i∈N至历史分发记录表TID中;
步骤410:令H=H-Lt,转步骤401。
在步骤404中,副本单位价格
在步骤404中,分发副本数量
在步骤404中,支付给中继节点i的数额
在步骤406中,
有益效果
基于市场供需关系的具有副本数约束的机会路由方法,可用于存在自私节点的间歇性移动自组网、机会网络、移动社交网络中消息副本的分发,从而形成一类市场化定价的副本分发方法。本发明具有以下两个显著的优点:
1.本发明所提单中继副本分发方法和多中继副本分发方法都是有利的,即源节点的效用总是大于等于零的。
(1)在单中继副本分发方法中,定义源节点的效用为:
当ti=0,u0=0。当ti>0,此时u0=(r-p(ti))(a+bp(ti)),由于r≥pe,而p(t)=pe+(p0-pe)e-λt是随t单调递增函数,且有p(t→∞)=pe,因此得到r>p(ti),即u0>0。综上,源节点的效用总是大于等于零。
(2)在多中继副本分发方法中,定义源节点的效用为:
当ti=0,u0=0。当ti>0,此时由于r≥pe,而是随单调递增函数,且有 因此得到即u0>0。综上,源节点的效用总是大于等于零。
2.本发明所提单中继副本分发方法和多中继副本分发方法是激励相容的,即满足个人理性和真实性。
(1)在单中继副本分发方法中,定义中继节点i的效用为:
其中g为分发副本的单位成本。
首先证明个人理性,即中继节点i的效用总是大于等于零,当ti=0,ui=0。当ti>0,ui=(p(ti)-g)(a+bp(ti)),当p(ti)取最小值时,ui取得最小值。由于p(ti)在ti>0时是关于ti的单调递增函数,当ti=1时,p(ti)=pe+(p0-pe)e-λ取得最小值。由于0<g≤pe+(p0-pe)e-λ,可知ui≥0,因此单中继副本分发方法是个人理性的。
下面证明真实性。考虑如下两种情况:
情况1:节点i不是中继节点,则ui=0。若降低最大等待时间,节点i仍不能成为中继节点,ui=0。
情况2:节点i是中继节点,则有ui=(p(ti)-g)(a+bp(ti)),当ti≥1时,该函数是关于ti的单调递增函数,因此,降低最大等待时间,将使得ui减小。
由于单中继副本分发方法在分发副本时需要接触节点提交的最大等待时间,若实际不能等待所提交的最大等待时间,则节点的支付数额为零,效用将降低。
因此,单中继副本分发方法是真实的。综上,单中继副本分发方法是激励相容的。
(2)在多中继副本分发方法中,定义中继节点i的效用为:
其中g为分发副本的单位成本。
首先证明个人理性,即中继节点i的效用总是大于等于零,当ti=0,ui=0。当ti>0,只需要满足即可。由于在ti>0时是关于的单调递增函数,当时, 取得最小值。由于0<g≤pe+(p0-pe)e-λ,可知ui≥0,因此单中继副本分发方法是个人理性的。
下面证明真实性。考虑如下两种情况:
情况1:节点i不是中继节点,则ui=0。若降低最大等待时间,节点i仍不能成为中继节点,ui=0。
情况2:节点i是中继节点,则有当ti≥1时,若其他候选中继节点提交的最大等待时间不变,该函数是关于ti的单调递增函数,因此,降低最大等待时间,将使得ui减小。
由于多中继副本分发方法在分发副本时需要接触节点提交的最大等待时间,若实际不能等待所提交的最大等待时间,则节点的支付数额为零,效用将降低。
因此,多中继副本分发方法是真实的。综上,多中继副本分发方法是激励相容的。
附图说明
图1是源节点和候选中继节点的交互过程图;
图2是单中继副本分发方法流程图;
图3是单中继副本分发方法中源节点计算副本单位价格p(ti),分发副本数量L,支付给中继节点i的数额的流程图;
图4是多中继副本分发方法流程图。
具体实施方式
名词说明:
源节点:拥有消息并打算将将该消息的副本分发给其他节点的节点;
候选中继节点:在源节点发出分发请求时,在源节点一跳范围内并提交了返回信息的节点;
中继节点:接收副本的节点。
下面结合附图及实施例对本发明作进一步的说明。
源节点拥有消息,并且至少需要将该消息的H个副本分发至中继节点中。在一次副本分发中,源节点此时在一跳范围内广播消息副本分发请求,收到该请求的邻居节点反回最长等待时间,源节点根据接收到的等待时间,计算副本单位价格、确定中继节点、计算分发副本数量、计算支付数额。源节点通知中继节点,然后中继节点等待约定的时间,完成副本传输。源节点支付报酬给中继节点。实施流程如图1所示。
本发明专利所述基于市场供需关系的具有副本数约束的机会路由方法包含单中继分发方法和多中继路由方法。
本发明的技术解决方案中单中继分发方法,实施流程如图2所示,具体步骤如下:
步骤201:源节点在一跳范围内广播消息副本分发请求;
步骤202:设接收到该请求的节点集合为N。对任意候选中继节点i∈N,返回一个二元组(idi,ti)到源节点,其中idi为该节点的标识,ti为该节点的最长停留时间;
步骤203:源节点收到候选中继节点i∈N的返回后,在所有候选中继节点中选择提供最大ti且TID中不存在该候选中继节点的标识的节点作为中继节点;
步骤204:源节点保存所有idi,i∈N至历史分发记录表TID中;
步骤205:源节点计算中继节点i的副本单位价格p(ti),分发副本数量L和支付给中继节点i的数额pi;
步骤206:源节点和中继节点之间接触ti时间,完成L个副本分发,源节点向中继节点支付报酬pi;
步骤207:若L≥H,则转步骤208,否则转步骤209;
步骤208:删除源节点自身保存的消息,清空TID,结束;
步骤209:令H=H-L,转步骤201。
在步骤205中,源节点计算副本单位价格p(ti),分发副本数量L,支付给中继节点i的数额的实施流程如图3所示,具体步骤如下:
步骤301:源节点分发副本数量D和中继节点接收副本数量S由市场供需关系决定,其中D=α-βp,S=a+bp,α,β,a,b为常数,α>a,β>0,b>0;
步骤302:令S=D,求得市场均衡价格
步骤303:市场价格的变化率与剩余需求成正比,即其中k为正常数。化简得到其中λ=(b+β)k;
步骤304:解步骤303中的微分方程,设初始值为p0,且p0<pe,得到p(t)=pe+(p0-pe)e-λt;
步骤305:对于给定ti,副本单位价格为
步骤306:源节点计算分发副本数量
步骤307:支付给中继节点i的数额
本发明的技术解决方案中多中继路由方法的实施流程如图4所示,具体步骤如下:
步骤401:令集合源节点在一跳范围内广播消息副本分发请求;
步骤402:设接收到该请求的节点集合为N。对任意候选中继节点i∈N,返 回一个二元组(idi,ti)到源节点,其中idi为该节点的标识,ti为该节点的最长停留时间;
步骤403:源节点收到候选中继节点i∈N的返回后,在所有候选中继节点中选择提供最大ti且TID中不存在该候选中继节点的标识的节点作为中继节点,将i存入集合W;
步骤404:源节点计算副本单位价格分发副本数量Lt和支付给中继节点i的数额pi;
步骤405:重复步骤403-步骤404,直到Lt≥H或W=N;
步骤406:源节点和中继节点i,i∈W之间接触ti时间,完成Li个副本分发,源节点向中继节点支付报酬pi;
步骤407:若Lt≥H,则转步骤408;否则,转步骤409;
步骤408:删除源节点自身保存的消息,清空TID,结束;
步骤409:源节点保存所有idi,i∈N至历史分发记录表TID中;
步骤410:令H=H-Lt,转步骤401。
在步骤404中,副本单位价格
在步骤404中,分发副本数量
在步骤404中,支付给中继节点i的数额
在步骤406中,