主权项 |
一种体域网网络系统节点数据传输冲突判断与处理方法,其特征在于包括下列步骤:(1)确定系统内各终端节点工作时间的冲突确定各终端节点工作周期,所有终端节点周期的最大值作为系统周期,这里记为T0;若系统中存在两点或两点以上的工作时间不满足:TsmP≠TsnQ其中 <mrow> <mi>P</mi> <mo>=</mo> <mn>1,2,3</mn> <mo>,</mo> <mo>.</mo> <mo>.</mo> <mo>.</mo> <mo>,</mo> <mfrac> <msub> <mi>T</mi> <mn>0</mn> </msub> <msub> <mi>T</mi> <mi>sm</mi> </msub> </mfrac> <mo>,</mo> </mrow> <mrow> <mi>Q</mi> <mo>=</mo> <mn>1,2,3</mn> <mo>,</mo> <mo>.</mo> <mo>.</mo> <mo>.</mo> <mo>,</mo> <mfrac> <msub> <mi>T</mi> <mn>0</mn> </msub> <msub> <mi>T</mi> <mi>sn</mi> </msub> </mfrac> <mo>,</mo> </mrow>Tsm和Tsn为任意点M和点N的工作时间间隔,此时终端节点M和点N的工作时间发生冲突,系统需要对系统工作开始时间进行重新分配;(2)改变终端节点工作周期,增加终端节点发生次数通过步骤(1)确定发生冲突后,将各终端节点的工作间隔的取值范围拓宽为: <mrow> <mn>0</mn> <mo><</mo> <msubsup> <mi>N</mi> <mi>k</mi> <mo>′</mo> </msubsup> <mo>≤</mo> <mfrac> <msub> <mi>T</mi> <mn>0</mn> </msub> <msub> <mi>T</mi> <mi>sk</mi> </msub> </mfrac> </mrow>其中N′k为第k个节点的发生次数,Tsk为该节点的工作时间间隔,对工作次数做如上拓展后其工作周期重新计算为: <mrow> <msubsup> <mi>T</mi> <mi>sk</mi> <mo>′</mo> </msubsup> <mo>=</mo> <mfrac> <msub> <mi>T</mi> <mn>0</mn> </msub> <msubsup> <mi>N</mi> <mi>k</mi> <mo>′</mo> </msubsup> </mfrac> </mrow>其中T′sk为更改发生次数N′k后的节点工作周期。在两个节点的工作开始时间发生冲突时,假设分别为节点m和n,发生冲突时分别发生P次和Q次,则:TsmP=TsnQ其中Tsm和Tsn为终端节点M和N的工作时间间隔,此时采取的策略是通过增加发生冲突节点m和n在系统周期T0中发生的次数以避免冲突,增加的次数分别为Rm,Rn,其值应满足:T′sm(Nm+Rm)=T0T′sn(Nn+Rn)=T0这里假设N′m=Nm+Rm,N′n=Nn+Rn,其值应满足: <mrow> <mn>0</mn> <mo><</mo> <msubsup> <mi>N</mi> <mi>m</mi> <mo>′</mo> </msubsup> <mo>≤</mo> <mfrac> <msub> <mi>T</mi> <mn>0</mn> </msub> <msubsup> <mi>T</mi> <mi>sm</mi> <mo>′</mo> </msubsup> </mfrac> </mrow> <mrow> <mn>0</mn> <mo><</mo> <msubsup> <mi>N</mi> <mi>n</mi> <mo>′</mo> </msubsup> <mo>≤</mo> <mfrac> <msub> <mi>T</mi> <mn>0</mn> </msub> <msubsup> <mi>T</mi> <mi>sn</mi> <mo>′</mo> </msubsup> </mfrac> </mrow>并且:T'smP1≠TkQ1T'snP2≠TkQ2其中T'sm和T'sn为增加系统周期内终端节点发生次数后的终端节点发生间隔,Tk为任一节点周期,P1、P2、Q1和Q2为节点发生次数: <mfenced open='' close=''> <mtable> <mtr> <mtd> <msub> <mi>P</mi> <mn>1</mn> </msub> <mo>,</mo> <msub> <mi>P</mi> <mn>2</mn> </msub> <mo>=</mo> <mn>1,2,3</mn> <mo>,</mo> <mo>.</mo> <mo>.</mo> <mo>.</mo> <mo>,</mo> <mfrac> <msub> <mi>T</mi> <mn>0</mn> </msub> <msubsup> <mi>T</mi> <mi>sm</mi> <mo>′</mo> </msubsup> </mfrac> <mo>,</mo> </mtd> </mtr> <mtr> <mtd> <msub> <mi>Q</mi> <mn>1</mn> </msub> <mo>,</mo> <msub> <mi>Q</mi> <mn>2</mn> </msub> <mo>=</mo> <mn>1,2,3</mn> <mo>,</mo> <mo>.</mo> <mo>.</mo> <mo>.</mo> <mo>,</mo> <mfrac> <msub> <mi>T</mi> <mn>0</mn> </msub> <msubsup> <mi>T</mi> <mi>sn</mi> <mo>′</mo> </msubsup> </mfrac> <mo>.</mo> </mtd> </mtr> </mtable> </mfenced>(3)按照能量消耗最小原则解决节点间冲突问题对于Rm和Rn的取值应同时使△E最小:△E=E′‑E=Em(Nm+Rm)+En(Nn+Rn)‑EmNm‑EnNn=EmRm+EnRn其中△E为增加系统一个周期内终端节点发生次数后的能量增加量,Rm和Rn为节点M和N增加的发生次数,这里将两节点的能量分别定义为En和Em,假设En<Em,发生冲突时通过增加节点在一个周期内的发生次数改变节点的周期,以达到改变节点发生时间,从而达到避免冲突的目的,若系统中存在多个终端节点发生工作时间的冲突,则应按照消耗能量E对节点进行排序,并从小到大依次对冲突进行处理,设两节点的增加次数分别为Rm和Rn,则Rm和Rn的取值应遵照如下顺序,对计算结果进行重新分配,以使能耗增加最小:Rm=iRn=k‑i‑1其中:k=2,3,4,……,i=0,1,2,……,k‑1,这里对于每个k值都应对i进行遍历取值。 |