基于HORSEI2的移动自组网安全QoS多播路由的建立方法

文档序号:7646768阅读:110来源:国知局
专利名称:基于HORSEI2的移动自组网安全QoS多播路由的建立方法
技术领域
本发明属于网络安全技术领域,是属于移动自组网的一种基于HORSEI2的移动自组网安全QoS多播路由的建立方法。
背景技术
移动通信网络可以分为两大类有基站支持和没有基站支持.前者包括现有GSM,CDMA,CDPD等网络;后者就是移动自组网。移动自组网是一组带有无线收发装置的移动节点组成的一个多跳的临时性的自治系统.在这种环境中,由于节点无线通信覆盖范围的有限性,需要借助中间节点进行分组转发到达信宿。它可以在没有可用的网络基础设施的情况下提供一种可用的通信支撑环境。
移动自组网是一种无线的没有中心基础设施支持的移动网络,网络中的节点均由移动主机构成。移动自组网最初应用于军事领域,它的研究起源于战场环境下分组无线网数据通信项目,该项目由DARPA资助,其后,又在1983年和1994年进行了抗毁可适应网络SURAN(SurvivableAdaptive Network)和全球移动信息系统Glomo(Global InformationSystem)项目的研究。由于无线通信和终端技术的不断发展,移动自组网在民用环境下也得到了发展,如需要在没有有线基础设施的地区进行临时通信时,可以很方便地通过构建移动自组网实现。在移动自组网中,当两个移动主机在彼此的通信覆盖范围内时,它们可以直接通信。但是由于移动主机的通信覆盖范围有限,如果两个相距较远的主机要进行通信,则需要通过它们之间的移动主机的转发才能实现。因此在移动自组网中,主机同时还是路由器,担负着发现路由和转发报文的工作,并且路由一般都由多跳组成,数据包通过多个主机的转发才能到达目的地。故移动自组网也被称为多跳无线网络。
移动自组网可以看作是移动通信和计算机网络的交叉。在移动自组网中,使用计算机网络的分组交换机制。通信的主机一般是便携式计算机、个人数字助理(PDA)等移动终端设备。移动自组网不同于目前因特网环境中的移动IP网络。在移动IP网络中,移动主机可以通过固定有线网络、无线链路和拨号线路等方式接入网络,而在移动自组网中只存在无线链路一种连接方式。在移动IP网络中,移动主机通过相邻的基站等有线设施的支持才能通信,在基站和基站(代理和代理)之间均为有线网络,仍然使用因特网的传统路由协议。而移动自组网没有这些设施的支持。此外,在移动IP网络中移动主机不具备路由功能,只是一个普通的通信终端。当移动主机从一个区移动到另一个区时并不改变网络拓扑结构,而移动自组网中移动主机的移动将会导致拓扑结构的改变。
多播是一种以单个目的地址为标识的一组主机为目的节点的数据报的传输。多播服务对于那些一对多传输的应用是十分有用的。多播路由策略能优化资源的使用,特别是在带宽和能源有限的移动自组网中。但是由于主机的移动性和无线信号的干扰,移动自组网中的多播比有线网络中的多播要复杂得多。
QoS(Quality of Service)路由是发现和维护满足给定资源QoS约束下的路径[48]。QoS约束指标一般有时延、时延抖动、带宽、丢包率和网络代价等等。
在移动自组网中,拓扑结构动态变化,无线信道带宽较窄,网络经常出现拥塞现象,不利于某些实时性网络应用程序的正常运行。基于QoS的路由协议比较适于在移动自组网中运行。有线环境下基于QoS的路由协议通常与某种资源预留机制(例如RSV P协议)配合使用,满足具有不同信息流的QoS需求。但在移动自组网环境中,由于其特性,难于实现这种较为精巧的控制策略,要达到的目标也是有所不同的。首先,有线环境下基于QoS的路由协议需要传播网络资源信息,进行资源预留操作,保留信息流的状态信息和可用的网络资源信息。这些开销会在自组网中占据大量的信道带宽、CPU处理能力和内存空间。其次,移动自组网中网络节点的任意移动可能会使得有关的网络资源发生较大的变化,保存的资源预留的有关状态无效,从而导致以较大协议开销形成的路由无效,并且可能触发更多的路由更新信息。最后,有线环境下的目标是选择相应的路由以保障具有QoS需求的信息流的传输,而移动自组网中的目标是在所选择路由存在的前提下,提供最有可能满足特定QoS需求的信息流的传输的路由。
移动自组网中的QoS路由相对于有线网络的QoS路由来说,由于带宽窄、处理能力弱、能源受限、无线信号干扰和节点移动等因素的影响,移动自组网的QoS路由更需要考虑开销小变化快的算法。
由于移动自组网的带宽较窄、处理能力较弱,故越来越多的基于移动自组网的多媒体应用对于多播和指定服务质量的需求与日俱增,以期能高效利用有限的带宽且满足服务质量要求,因此需要建立QoS多播路由来选择正确的路径。
已有很多学者提出了很有建树的适用于移动自组网QoS多播路由协议。传统的多播路由协议的设计基于“尽力而为”的数据传输模式,基于连通性来构造多播树。这样的多播树在资源短缺且有服务质量要求时是满足不了应用的需求的。而这些已提出的针对移动自组网的QoS多播路由协议都没有安全相关设置,隐含地相信所有参与通信的节点,而恶意节点进行伪造、篡改甚至瓦解数据包的交换或旁路正常路由的行为则极大地威胁了这种信任关系。因此可知构造适用于移动自组网的安全QoS多播路由是十分必要的。

发明内容
本发明的目的是采用HORSEI2密码机制为移动自组网的QoS多播路由设置认证机制,从而使得在QoS多播路由建立期间,路由请求报文和路由回应报文不会被未经授权的节点所修改、冒充和否认,达到安全路由的目的而提出一种占带宽少处理开销小的安全的基于HORSEI2的移动自组网安全QoS多播路由的建立方法。
为了实现上述目的,本发明的技术方案是由三个阶段组成一是加入安全QoS多播组;二是创建安全QoS多播树;三是加入安全QoS多播树,(1)需要网络中已有了合适的分布式访问控制和密钥管理机构,由这些访问控制和密钥管理机制负责多播安全组成员的出入管理和每个组成员节点的HORSEI2公钥的发放和更新,每个想发送/接收多播会话数据的节点都必须事先加入多播安全组;(2)安全QoS多播路由树的建立是由数据发送节点触发的,凡是想安全地以预定服务质量要求把数据发送到多播组的节点,若是第一次发送,都必须先创建安全QoS多播路由树;(3)凡是想加入QoS多播会话安全地以预定服务质量要求来接收数据的节点都必须加入安全QoS多播树;这种安全QoS多播树上的非树根节点与树根节点间的数据通路便称为安全QoS多播路由。
本发明中是使用验证签名的处理开销很小的类公钥机制-HORSEI2密码算法实现的。仿真结果表明,本发明能够有效地减少对路由报文的数字签名进行认证的所带来的处理开销和网络带宽消耗,为安全的QoS多播路由提供效率较高的数据完整性和来源真实性的可靠保证。


图1为本发明发送节点创建安全QoS多播树流程图。
图2为本发明加入安全QoS多播树流程图。
具体实施例方式
下面结合附图对本发明作进一步的描述。
1)本发明中所涉及的网络模型和QoS多播路由问题定义如下定义1一个网络可表示成一个加权图G=(V,E),其中V表示节点集,E表示连接节点的通信链路集。|V|和|E|分别表示该网络中的节点数和链路数。为不失一般性,只考虑这样的一类图,即在该类网络中,一对节点之间最多只有一条链路,链路旁的参数可用于描述该链路当前的状态。
定义2设p(s,t)表示从源节点s至端节点t的路径,T(s,M)表示多播树。s∈V为一棵多播树的源节点,M{V-{s}}为该多播树的端节点或叶节点集。
定义3设R为正实数集,R*为非负实数集。对于任意链路e∈E,可定义某些QoS特征值(metrics)延迟函数delay(e)E→R,代价函数cost(e)E→R,带宽函数bandwidth(e)E→R,延迟抖动函数delay-jitter(e)E→R。
定义4对于任一节点n∈V,也可定义某些QoS特征值(metrics)延迟函数delay(n)V→R,
代价函数cost(n)V→R,延迟抖动函数delay-jitter(n)E→R*,信包丢失函数packet_loss(n)V→R*.
定义5设T(s,M)表示一棵多播树,则有下列关系delay(p(s,t))=Σe∈p(s,t)delay(e)+Σn∈p(s,t)delay(n).]]>cost(T(s,M))=Σe∈T(s,M)cost(e)+Σn∈T(s,M)cost(n).]]>bandwidth(p(s,t))=min{bandwidth(e),e∈p(s,t)}delay-jitter(p(s,t))=Σe∈p(s,t)delay_jitter(e)Σn∈p(s,t)delay_jitter(n).]]>packet_loss(p(s,t))=1-Πn∈p(s,t)(1-packet_loss(n))]]>定义6QoS多播路由问题主要涉及以下元素网络G=(V,E);多播源节点s∈V;多播端节点集M{V-{s}};delay(·)∈R*;cost(·)∈R;bandwidth(·)∈R;packet_loss(·)∈R*.
定义7QoS多播路由问题是寻找一棵多播树T(s,M),它满足下列QoS约束,且使cost(T(s,M))最小。
(1)延迟约束delay(p(s,t))≤D;(2)带宽约束bandwidth(p(s,t))≥B;(3)延迟抖动约束delay_jitter(p(s,t))≤J;(4)包丢失约束packet_loss(p(s,t))≤L.
其中D是延迟约束,J是延迟抖动约束,B是带宽约束,L是包丢失约束。其中延迟和延迟抖动之间联系较为紧密,后者在一定程度上可反映前者的平稳性。延迟和抖动是可加性的,带宽是极值性的,包丢失率是乘积性的。
因为节点与链路具有等价性,所以本发明中只考虑链路的QoS约束。
2)加入安全QoS多播组网内不论是哪个节点请求加入安全多播组,发送者和接受者,都须经由网内访问控制机构(另设)审查其成员资格。
审查通过后,请求节点便会获得有密钥管理机构事先离线计算好的HORSEI2初始秘密密钥SK0和HORSEI2对应的hash链并将其存储至本节点内存,其公钥PK0及其hash中间环节都被分发给所有安全组成员。
密钥管理机构进行HORSEI2密钥生成的过程如下(1)设置整型参数l,k,t,满足klog2t≤H(·),k<t,l≤|H(·)|/2;其中,H(·)是一个安全单向hash函数。
(2)再产生t个l比特长的随机数s1,s2,...,st,用它们作为种子(也是私钥对集合)s(d,1),s(d,2),...,s(d,t)来构造长度为d的t个hash链,如下所示{s(d,1)→s(d-1,1)→s(d-2,1)→...→s(0,1)}={h0(s(d,1))→h1(s(d,1))→h2(s(d,1))→...→hd(s(d,1))};{s(d,2)→s(d-1,2)→s(d-2,2)→...→s(0,2)}={h0(s(d,2))→h1(s(d,2))→h2(s(d,2))→...→hd(s(d,2))};...
{s(d,t)→s(d-1,t)→s(d-2,t)→...→s(0,t)}={h0(s(d,t))→h1(s(d,t))→h2(s(d,t))→...→hd(s(d,t))};其中s(d-i,j)=Hi(s(d,j)),即s(i,j)=Hd-i(s(d,j)),(0≤i≤d,1≤j≤t)(3)将以上每个hash链分割成 个长度为 的子链,并在每两个子链的链接处设置一个中间hash环节(Intermediate HashJoint),其中第j条hash链中第r个中间hash环节的值为J(r,j)=H(s(r*d,,j)||PK(0,j))),]]>其中设置d,=int(d),]]>r=0,1,2,...,int(i/d’),...,(d’-1),当r=0,则J(0,j)=PK(0,j).
其中,PK(0,j)是与s(i,j)对应的第j条hash链的公钥。
(4)存储这t个hash链和中间hash环节(简称为IHJ)来作为一系列发送方密钥。因此产生的私钥对SK0和中间hash环节分别为SK0=(s1,s2,...,st)=(s(d-1,1),s(d-1,2),...s(d-1,t));IHJ=(J(1,j),J(2,j),...,J(d’-1,j)),(1≤j≤t).
(5)公钥PK0集合PK=(v1,v2,...,vt)=(s(0,1),s(0,2),...s(0,t))=(H(s(1,1)),H(s(1,2)),...,H(s(1,t)));3)创建安全QoS多播树考虑到安全性,假设只有安全组成员才能加入多播树,其流程如下所述
如果一个组成员ts想安全地发送信息给多播组成员,可在开始时初始化一个安全QoS多播会话,即创建一个安全的对服务质量敏感的多播树T(s,M),并且构建经过认证了的路由到会话的其他成员。为此,ts广播一个创建QoS多播树的声明给其邻居tv如下设置(1)ms,i=[CTreq,IDts,T(s,M),i,Bandwidth,B,Delay,D,Delay-jitter,J,...]; (3-1)(2)使h=Hash(ms,i); (3-2)其中,i表示这是ts发出的第i个信息包,B、D和J分别是要求的QoS约束值-带宽、延迟和延迟抖动。
(3)将h分成一系列每个长度为log2t位的子字符串h1,h2,...,hj,...,hk;(4)令ij=h1h2...hj...hk,以ij作为下标从SKi中选出一个元素作为签名,即σ=sij;---(3-3)]]>(5)ts→*{ms,i‖σs,i}. (3-4)当ts广播了上述信息后,若T(s,M)这个多播树已经创建过了,则ts的邻居会发出拒绝创建的信息“Ctnak”给ts,然后该组创建声明被取消了。否则若ts在经过一段特定的时间之后没有收到任何拒绝创建的回应信息就说明组内没有其他人创建了该安全多播组,则该安全多播组创建成功。每个组成员对签名σs,i进行验证。若验证通过,则邻居们便将该安全多播树的标识T(s,M)与ts的标识IDts一起记录在内存里。随后ts便开始以组长的身份向所有组成员广播“Group Hello”信息包。
4)加入安全QoS多播树如果一个组成员同时也是接收者的tu希望加入安全QoS多播会话,也就是想加入多播树T(s,M)和建立经过认证的安全路由到达别的会话组成员tv,则广播一个加入QoS多播树的请求,其操作如下(其中省略了对路由跳数的处理)(1)tumu,i=[JTreq,IDtu,T(s,M),,Bandwidth,B,Delay,D,Delay-jitter,J,...](2)其他操作同上节中式(3-2)(3-3),然后tu向邻居发出广播包tu→*{mu,i‖σu,i}.
2)当中继节点并且也是树上节点的tv收到这个请求信息以后,便对信息包进行完整性检查如下(1)tvh’=H(mu,i);(2)分裂h’,得到k个长度为log2t位的子串h1’,h2’,...,hj’,...,hk’转换hj成为整型数ij(1≤j≤k);以ij为下标,若对于每一个j,(1≤j≤k)都有H(s'ij)=s(i+1)j,]]>(当前面已收到s(i+1)j)或有J(r,j)=H(H(imodd,)(s'ij))||PK(0,j))]]>成立。
则验证通过,否则拒绝该信息包及其签名。
其中,J(r,j)=H(S(r*d,,j)||PK(0,j)),---(3-5)]]>d,=int(d),]]>r=0,1,2,...,int(i/d’),...,(d’-1), (3-6)当r=0,则J(0,j)=PK(0,j).
(3)接着tv将检查tu的QoS要求安全多播树能否满足。这个检查参考了文献[133]有关流程,在此我们添加了认证措施。
若(d(ts,*)+d(tu,tv)≤D)∧(dj(ts,*)+dj(tu,tv)≤J)∧(bw(tu,tv)≥B)成立,其中,d(ts,*)和dj(ts,*)分别是从源节点ts到所有沿路下游节点的延迟和延迟抖动的和。而bw(tu,tv),d(tu,tv)和dj(tu,tv)分别是tu和tv两节点间沿路的带宽、延迟和抖动。
则tv发出一个回应信息JTack给tu如下tv→tu{[JTack,IDtv,T(s,M),]‖σv,i};否则,再测若bw(tu,tv)<B则从T(s,M)上移去tu;否则,若(d(ts,*)+d(tu,tv)>D)∨(dj(ts,*)+dj(tu,tv)>J)则tv转发tu的请求给它的本地邻居并且为tu搜索和计算满足下列条件的新的路径。
否则,若(d(ts,tu))=min[d(s,*),D-d(tv,tu)])∧(dj(s,tv))=min[dj(s,*),J-dj(tv,tu)]);那么tv收下该加入QoS多播树的请求,并将此JTack报文转发给tu.
否则,tv发出拒绝报文JTnak给tutv→tu{[JTnak,IDtv,T(s,M),i]‖σv,i}.
(4)当tu收到后会检查tv的签名σv,i,通过后记下通向上游节点tv的端口,多播路由建立结束。
显然,报文“JTack”或“JTnak”由已有所要路由的中继节点tv发出能有效地减少网络代价。
本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。
权利要求
1.一种基于HORSEI2的移动自组网安全QoS多播路由的建立方法,其方法是每个多播会话发送者和接受者都须先经过访问控制机构检查后加入多播安全组,且获得HORSEI2私钥和公钥;每一个想在具备QoS保障的条件下,发送多播数据,创建一个新的安全多播会话的节点则创建安全QoS多播树;每一个想在具备QoS保障的条件下,加入安全多播会话,接收多播数据的节点则加入安全QoS多播树。
2.如权利要求1所述的基于HORSEI2的移动自组网安全QoS多播路由的建立方法,其特征在于所有的数据传输过程中,发送数据者需对欲发送的报文施加用HORSEI2密码机制产生的签名,接收数据者需对接收到的报文用发送者的公钥进行验证。
全文摘要
本发明涉及一种基于HORSEI2的移动自组网安全QoS多播路由的建立方法,其方法是每个多播会话发送者和接受者都须先经过访问控制机构检查后加入多播安全组,且获得HORSEI2私钥和公钥;每一个想在具备QoS保障的条件下,发送多播数据,创建一个新的安全多播会话的节点则创建安全QoS多播树;每一个想在具备QoS保障的条件下,加入安全多播会话,接收多播数据的节点则加入安全QoS多播树。以上所有的数据传输过程中,发送数据者需对欲发送的报文施加用HORSEI2密码机制产生的签名,接收数据者需对接收到的报文用发送者的公钥进行验证。这样,就能建立起具备安全认证机制和QoS保障的多播路由。
文档编号H04L9/30GK101060480SQ200710052369
公开日2007年10月24日 申请日期2007年6月4日 优先权日2007年6月4日
发明者杨铭熙, 李腊元 申请人:武汉理工大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1