1.一种基于全IP无线传感器网络的医疗实时监控系统,其特征在于,所述全IP无线传感器网络包括三类节点:网关节点,固定节点以及用于病人携带的移动节点;其中网关节点与IPv6互联网的接入路由器连接,网关节点与固定节点具有路由转发功能,移动节点不具有路由转发功能;一个网关节点与一个以上固定节点构建成一个树状结构,作为网关树,网关树的根节点为网关节点,中间节点及叶子节点为固定节点;所有网关树构建成路由骨干网,移动节点通过路由骨干网与IPv6互联网通信,与移动节点直接通信的网关树中的固定节点作为该移动节点的关联节点,同一时刻,一个移动节点只有一个关联节点;与同一个接入路由器连接的所有网关树构建成全IP无线传感器网络的子网;
所述全IP无线传感器网络覆盖于医院大楼,医院大楼的每一层布置一个网关节点和一个以上固定节点形成网关树,整个医院大楼中所有网关节点通过一个接入路由器连接到互联网,形成一个子网;移动节点与网关树的一个固定节点进行关联,从而实现与IPv6互联网的通信;
固定节点和移动节点为传感器节点;
全IP无线传感器网络的节点的IPv6地址由两个部分组成:第一部分是全局路由前缀,一个全IP无线传感器网络中所有节点的IPv6地址的全局路由前缀都相同;第二部分为节点ID,节点ID唯一标识全IP无线传感器网络中的一个传感器节点;网关节点与传感器节点的节点ID是链路地址;网关节点的IPv6地址预先设置;
固定节点的IPv6地址的节点ID有效位长度与其所处网关树中的深度值成正比;
当固定节点X启动后,通过加入网关树获取IPv6地址,固定节点X获取IPv6地址的过程描述如下:步骤101:开始;
步骤102:固定节点X广播固定节点地址请求消息;
步骤103:已获取IPv6地址的邻居网关节点或固定节点收到固定节点地址请求消息后,判断自己是否有可分配地址空间,如果是,进行步骤105,否则进行步骤104;
步骤104:已获取IPv6地址的邻居网关节点或固定节点放弃地址请求消息,进行步骤
109;
步骤105:已获取IPv6地址的邻居网关节点或固定节点向固定节点X返回一个固定节点地址响应消息,消息负载为分配的节点ID和深度值;
步骤106:固定节点X选择深度值最小的邻居网关节点或者固定节点作为父节点并向父节点返回一个固定节点地址确认消息,消息负载为分配的节点ID,同时将父节点分配的节点ID与父节点的全局路由前缀相结合,形成自己的IPv6地址;
步骤107:父节点收到固定节点X返回的固定节点地址确认消息后,将分配给固定节点X的节点ID标记为已分配状态;
步骤108:固定节点X加入网关树并获取IPv6地址;
步骤109:结束。
2.根据权利要求1所述的基于全IP无线传感器网络的医疗实时监控系统,其特征在于,所述IPv6互联网的接入路由器以及网关树中的固定节点保存一个关联表,关联表包括两个域:移动节点域和关联节点域,移动节点域记录移动节点的链路地址和IPv6地址,关联节点域记录移动节点的关联节点的链路地址;
移动节点Y启动后,通过下述过程获取家乡地址以及关联节点:
步骤201:开始;
步骤202:移动节点Y广播请求移动节点地址请求消息;
步骤203:已获取IPv6地址的邻居网关节点或固定节点或移动节点收到移动节点地址请求消息后,判断自己是否有可分配地址空间,如果是,进行步骤205,否则进行步骤204;
步骤204:已获取IPv6地址的邻居网关节点或固定节点或移动节点放弃移动节点地址请求消息,进行步骤213;
步骤205:已获取IPv6地址的邻居网关节点或固定节点或移动消息向移动节点Y返回一个移动节点地址响应消息,消息负载为分配的节点ID以及节点类型;
步骤206:移动节点Y查看移动节点地址响应消息中的节点ID,向节点ID有效位长度最小的节点F返回移动节点地址确认消息,负载内容为分配的节点,然后将节点ID与节点F的全局路由前缀相结合,形成自己的IPv6地址;
步骤207:判断节点F是否为网关节点或者固定节点,如果是,进行步骤208,否则进行步骤210;
步骤208:移动节点Y则将节点F作为关联节点;
步骤209:节点F收到移动节点Y返回的移动节点地址确认消息后,将分配给移动节点Y的节点ID标记为已分配状态,并在关联表中增加一条表项,移动节点域为移动节点Y的链路地址,关联节点域为节点F的链路地址,进行步骤213;
步骤210:移动节点向信号最强的邻居网关节点或固定节点发送一个关联请求消息;
步骤211:邻居网关节点或固定节点收到移动节点Y的关联请求消息后,在关联表中增加一条表项,移动节点域为移动节点Y的链路地址,关联节点域为邻居网关节点或固定节点的链路地址,然后向移动节点Y返回一个关联响应消息;
步骤212:移动节点Y收到邻居网关节点或固定节点的关联响应消息后,将邻居网关节点或固定节点设置为自己的关联节点;
步骤213:结束。
3.根据权利要求2所述的基于全IP无线传感器网络的医疗实时监控系统,其特征在于,固定节点或者移动节点获取IPv6地址后,定期广播信标帧;
固定节点接收到邻居节点发送的信标帧后,采用定位算法获取与邻居节点的距离以及角度;
移动节点的关联节点通过检测与移动节点之间的距离来判断移动节点是否要离开自己的通信范围;如果关联节点检测到移动节点即将离开自己的通信范围,则选择与移动节点距离最近的邻居网关节点或者邻居固定节点作为移动节点的下一个关联节点,如果有两个以上邻居网关节点或者邻居固定节点与移动节点的距离最小,则选择与移动节点角度最小的邻居网关节点或者固定节点作为移动节点的下一个关联节点。
4.根据权利要求3所述的基于全IP无线传感器网络的医疗实时监控系统,其特征在于,如果移动节点X的当前关联节点为固定节点S1,当固定节点S1检测到移动节点X即将离开自己的通信范围时,固定节点S1选择与移动节点X距离最近的固定节点S2作为移动节点X的下一个关联节点;
如果固定节点S1和固定节点S2属于相同的子网,那么固定节点S1进行如下移动切换操作:步骤301:开始;
步骤302:固定节点S1向父节点发送更新消息,负载为移动节点X的IPv6地址和固定节点S2的链路地址,同时向固定节点S2发送一个新节点消息,其内容为移动节点X的IPv6地址,同时删除关联表中移动节点X的表项;
步骤303:父节点收到更新消息后,查看固定节点S2是否为子孙节点,如果是,进行步骤305,否则进行步骤304;
步骤304:父节点删除关联表中移动节点X的表项,同时将更新消息转发给父节点的父节点,进行步骤303;
步骤305:父节点查看关联表中是否有移动节点X的表项,如果是,进行步骤306,否则进行步骤307;
步骤306:父节点将移动节点X表项中的关联节点域更新为固定节点S2,进行步骤
308;
步骤307:父节点在关联表中添加移动节点X的表项,关联节点域为固定节点S2;
步骤308:固定节点S2接收到固定节点S1发送的新节点消息以及移动节点X的信标帧后,固定节点S2在关联表中增加一条移动节点X的表项,关联节点域为自己的链路地址,同时向固定节点S1返回一个新节点确认消息,负载为移动节点X的IPv6地址;
步骤309:固定节点S1收到固定节点S2返回的新节点响应消息后,将目的地址为移动节点X的数据消息发送给固定节点S2;
步骤310:固定节点S2收到目的地址为移动节点X的数据消息后,将数据消息转发给移动节点X,移动节点X从固定节点S2收到数据消息后,将固定节点S2作为新的关联节点;
步骤311:结束;
病人在一个子网内移动时,通过上述移动切换过程保持通信的连续性。
5.根据权利要求3所述的基于全IP无线传感器网络的医疗实时监控系统,其特征在于,如果移动节点X的关联节点为固定节点S1,当固定节点S1检测到移动节点X即将离开自己的通信范围时,固定节点S1选择与移动节点X距离最近的固定节点S2作为下一个关联节点;
如果固定节点S1和S2属于不同的子网,固定节点S1所在子网的接入路由器为AR1,固定节点S2所在子网的接入路由器为AR2,那么固定节点S1进行如下移动切换操作:步骤401:开始;
步骤402:固定节点S1向固定节点S2发送一个新节点消息,负载为移动节点X的IPv6地址,同时删除关联表中移动节点X的表项;
步骤403:固定节点S2接收到固定节点S1发送的新节点消息以及移动节点X的信标帧后,在关联表中增加移动节点X的表项,关联节点域为固定节点S2的链路地址,并向固定节点S1返回一个新节点确认消息,负载为移动节点X的IPv6地址,同时向接入路由器AR2发送更新消息,消息负载为移动节点X的IPv6地址;
步骤404:接入路由器AR2收到更新消息后,在关联表中增加移动节点X的表项,关联节点域为固定节点S2的链路地址;
步骤405:固定节点S1收到固定节点S2返回的新节点确认消息后,将目的地址为移动节点X的数据消息发送给固定节点S2;
步骤406:固定节点S2收到目的地址为移动节点X的数据消息后,将数据帧转发给移动节点X,移动节点X从固定节点S2收到数据消息后,将固定节点S2作为新的关联节点;
步骤407:结束;
上述过程中,如果移动节点X与固定节点S2的全局路由前缀不同,接入路由器AR2还需要通知移动节点X获取家乡地址的子网的接入路由器将移动节点X所在子网的接入路由器从接入路由器AR1更新为接入路由器AR2。
6.根据权利要求5所述的基于全IP无线传感器网络的医疗实时监控系统,其特征在于,数据帧由链路层头部和适配层头部封装,链路层头部包括源链路地址和目的链路地址,源链路地址为转发数据消息的节点的链路地址,目的链路地址为下一跳节点的链路地址,适配层头部包括目的地址和最终地址。
7.根据权利要求6所述的基于全IP无线传感器网络的医疗实时监控系统,其特征在于,医生使用IPv6互联网节点N获取携带在病人身上的移动节点X采集的数据的过程为:步骤501:开始;
步骤502:IPv6互联网节点N发送一条获取移动节点X采集信息的请求数据消息,该数据消息在IPv6网络中进行路由,最后到达与移动节点X家乡子网的接入路由器AR1;
步骤503:接入路由器AR1判断移动节点X所在外部子网的接入路由器是否为接入路由器AR1,如果是,进行步骤505,否则进行步骤504;
步骤504:接入路由器AR1将数据消息转发到移动节点所在外部子网的接入路由器AR2;
步骤505:接入路由器AR1或者AR2收到请求数据消息后,用适配层头部封装数据包,其中最终地址设置为移动节点X的IPv6地址,目的地址设置为移动节点X的关联节点的链路地址,然后将数据消息发送到移动节点X的关联节点所在树状分支的下一跳节点;
步骤506:下一跳节点收到数据消息后,判断在关联表中是否移动节点X的表项,如果是,进行步骤507,否则进行步骤508;
步骤507:下一跳节点用移动节点X表项中关联节点域值更新适配层头部中的目的地址值;
步骤508:判断下一跳节点是否为X的关联节点,如果是,进行步骤510,否则进行步骤
509;
步骤509:将数据消息发送到移动节点X的关联节点所在分支的下一跳节点,进行步骤
506;
步骤510:移动节点X的关联节点收到数据帧后,将数据消息发送给移动节点X;
步骤511:移动节点X收到数据消息后,将采集的信息封装成数据响应消息,数据响应消息不包含适配层头部,然后将响应数据消息发送给关联节点;
步骤512:关联节点收到数据消息后,根据网关树逐层向上发送响应数据消息直到到达接入路由器AR1或接入路由器AR2;
步骤513:接入路由器AR1或接入路由器AR2将数据消息中的响应信息封装为IPv6响应数据包,并发送到IPv6互联网上,最终该数据包按照IPv6路由方式到达源IPv6互联网节点N;
步骤514:结束。
8.根据权利要求6或7所述的基于全IP无线传感器网络的医疗实时监控系统,其特征在于,当移动节点X检测到采集的数据超过移动节点X内部自身设定的阈值时,则向IPv6互联网节点N发送报警信息,具体过程为:步骤601:开始;
步骤602:移动节点X向IPv6互联网节点N发送报警消息,负载为超于阈值的数据和关联节点的IPv6地址,然后将报警消息发送到移动节点X的关联节点;
步骤603:关联节点收到报警消息后,根据网关树逐层向上发送报警消息直到到达接入路由器AR1步骤604:接入路由器AR1将报警消息中的报警信息封装为IPv6数据包,将其发送到IPv6互联网上,然后改数据包按照IPv6路由方式到达目的IPv6互联网节点N;
步骤605:目的IPv6互联网节点N收到报警数据包后,根据移动节点X关联节点的IPv6地址获取患者所在位置信息;
步骤606:结束。