CN113038587B - 拒绝服务攻击下基于滤波器的传感器网络时钟同步方法 - Google Patents

拒绝服务攻击下基于滤波器的传感器网络时钟同步方法 Download PDF

Info

Publication number
CN113038587B
CN113038587B CN202110249360.5A CN202110249360A CN113038587B CN 113038587 B CN113038587 B CN 113038587B CN 202110249360 A CN202110249360 A CN 202110249360A CN 113038587 B CN113038587 B CN 113038587B
Authority
CN
China
Prior art keywords
clock
node
slope
software
reading
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.)
Active
Application number
CN202110249360.5A
Other languages
English (en)
Other versions
CN113038587A (zh
Inventor
张亚
张绪新
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Southeast University
Original Assignee
Southeast University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Southeast University filed Critical Southeast University
Priority to CN202110249360.5A priority Critical patent/CN113038587B/zh
Publication of CN113038587A publication Critical patent/CN113038587A/zh
Application granted granted Critical
Publication of CN113038587B publication Critical patent/CN113038587B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W56/00Synchronisation arrangements
    • H04W56/003Arrangements to increase tolerance to errors in transmission or reception timing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W56/00Synchronisation arrangements
    • H04W56/004Synchronisation arrangements compensating for timing error of reception due to propagation delay
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

本发明拒绝服务攻击下基于滤波器的传感器网络时钟同步方法,包括如下步骤:a)确定传输周期;对参数进行初始化;b)邻居节点周期地发送并接收邻居的信息;c)如果节点信道没有受到拒绝服务攻击,则更新相对时钟斜率的估计值;计算斜率补偿参数和中间估计变量;进行时钟读数补偿,更新软件时钟读数;d)如果受到了攻击,则相对时钟斜率估计值和斜率补偿参数保持不变;估计邻居节点的软件时钟并用于进行时钟读数补偿;e)重复上述步骤b)‑d)直到结束。通过对拒绝服务攻击下普通时钟同步方法与本发明算法的仿真实验比较,结果表明本发明能够在保证同步精度和收敛速度的前提下,显著地抵御攻击对时钟同步的影响,从而实现网络攻击下安全稳定的时钟同步。

Description

拒绝服务攻击下基于滤波器的传感器网络时钟同步方法
技术领域
本发明属于传感器网络技术领域,具体涉及一种拒绝服务攻击下基于滤波器的传感器网络时钟同步方法。
背景技术
无线传感器网络是一种分布式传感网络,它集成了无线通信、信息处理和传感器等新兴技术,在信息测量、传输和处理方面提供了很多便利。灵活、可靠的特点使无线传感器网络广泛应用于智能家居、医疗卫生、环境监测以及军事等领域。因此,传感器网络正在越来越多的场合发挥着作用,逐渐成为信息技术的重要组成部分。
在无线传感器网络获得广泛应用、受到各界认可的同时,其发展也受到了一些因素的制约,时钟同步问题就是制约因素之一。无线传感器网络是一种常见的分布式系统,不同的进程在不同的机器上运行。网络中的每一个节点都有自带的晶体震荡器,振荡器通过计时给节点提供一个硬件时间。不同振荡器性质不尽相同,工作频率和起始时间很难保持一致,导致了节点之间硬件时间不同,会影响整个网络系统的正常功能。在传感器网络中,所有节点需要协同工作共同完成一系列复杂的传感任务,因此各个节点必须维持相同的时间。除此之外,数据压缩和融合、多节点协作、传感器调度等新应用的实现,也都以时钟同步为前提。因此要使无线传感器网络发挥正常的功能,就必须设计相应的时钟同步方案,保证传感器网络的时钟同步。
目前无线传感器网络的时钟同步技术主要可以分为以下几种方案:1.RBS(Referencing Broadcast Synchronization)算法。RBS算法中,参考节点周期性地广播自己的时钟信息,其他节点收到参考节点的信息后,利用最小二乘的思想来减小同步误差。RBS算法采用发送者-接收者模式进行同步,容易引入传输时延从而影响同步精度。2.TPSN(Time-sync Protocol for Sensor Networks)算法。与RBS算法不同,TPSN算法通过双向传递信息来克服传输时延。它采用了层次化的网络结构,在进行时钟同步时,每一层的所有传感器节点与其上一层中的一个节点进行同步,从而实现网络中所有节点的同步。3.FTSP(Flooding Time Synchronization Protocol)算法。FTSP算法是基于发送端-接收端模式。发送者在发送消息时连续标记多个时间戳。接受者根据标记的时间戳来估计中断等待时间,并对接收的时间戳进行补偿,从而获得精确的同步点。虽然其精度比TPSN算法要低,但是它具有速度快、能耗小的优点。4.基于一致性的时钟同步方法。这类算法主要分为两大类。第一类是平均值一致性同步方法,即ATS(Average Time Synchronization)算法。ATS算法是典型的基于协同控制理论的分布式时钟同步协议。其主要思想是网络中的节点根据自己的硬件时钟周期性地广播自己的时钟信息,收到时钟的节点利用时钟的线性性质把自己和邻居节点的平均时钟斜率和偏移作为参考时钟来进行时钟斜率和偏移的补偿。ATS以平均值一致性的理论为基础,保证了虚拟时钟参数可以指数收敛,从而实现整个网络的时钟同步。另外一类是基于最大(最小)值一致性的算法,如MTS(Maximum TimeSynchronization)算法。最大(最小)值一致性算法最终实现的效果是,网络中其他节点的时间与最快(最慢)的时间保持一致。基于一致性的时钟同步方法不依赖于特定的网络拓扑结构,能够有效地克服网络节点故障和拓扑变化的情况,极大地提高了时钟同步协议的鲁棒性和可扩展性。
在不考虑拒绝服务攻击和虚假数据注入等网络攻击的情况下,上面提到的方案大部分能取得较高的时钟同步精度。然而,传感器网络常常部署在恶劣无监督的环境下,无论是硬件还是软件都容易受到各式各样恶意的网络攻击。攻击者可以通过多种方式破坏传感器网络的时钟同步,甚至导致网络的崩溃。一旦考虑网络攻击,高精度的时钟同步就难以保证,甚至会因为发散导致时钟同步的失败。因此,研究网络攻击下无线传感器网络的时钟同步具有重要的意义。
本发明所作的主要贡献在于提出了一种拒绝服务攻击下的传感器网络时钟同步策略,设计了基于滤波器的时钟同步方法。通过实验验证了该算法不仅能够有效抵御拒绝服务攻击,确保网络攻击下的同步精度,而且能够保证一定的收敛速度,具有一定的实际意义。
发明内容
无线传感器网络中,每个节点都有晶体振荡器,工作在固定的频率。振荡器的计时读数就是硬件时间。用i表示网络中的第i个传感器节点,Hi(t)表示节点i的硬件时间,Hi(t)与真实时间t之间满足线性关系,可以表示为:
Hi(t)=αit+βi (1)
其中αi被称为硬件时钟斜率,βi是硬件时钟偏移。αi和βi的大小是由振荡器自身的性质所决定的。
由于工艺条件的限制和工作环境的影响,不同节点的振荡器工作频率和起始时间也会不同。时钟斜率和偏移的不同,带来的结果是各个节点之间硬件时间不同。αi和βi是由振荡器性质决定的,不能人为设置,因此要实现时钟同步需要在硬件时间的基础上引入另外一个时间概念——软件时间Si(t)。考虑分布式线性更新方案,每个节点i基于自己和邻居节点j的时钟信息周期性地更新自己的软件时钟读数:
Figure GDA0003918313940000031
其中,Gi(·)是一个仅依赖于节点i及其邻居节点j的线性函数,也就是说,节点i的软件时钟读数只与自己和邻居节点的时钟有关。
Figure GDA0003918313940000032
是节点i的斜率补偿参数,通过计算
Figure GDA0003918313940000033
可以补偿节点i与邻居节点之间硬件斜率的误差。
无线传感器网络中节点的硬件时间是无法改变的,因此时钟同步的任务是实现任意两个节点之间软件时间的同步。对于网络中的任意一个节点i,确定合适的斜率补偿参数
Figure GDA0003918313940000034
使得网络中任意节点i和节点j都满足:
Si(t)=Sj(t) (3)
即:
Figure GDA0003918313940000035
其中k表示循环次数,tk表示第k次更新时刻的真实时间。
传感器网络中,数据的发送、传输和接收都需要时间,不可避免地会产生传输时延。在周期传输机制下,节点i在其本地时钟Hi(tk)时收到来自节点j在其本地时钟为Hj(t′k)时发送的信息,表示为:
Hj(t′k)=Hi(tk)-θj(tk)=αitkij(tk) (5)
θj(tk)是传输时延,其概率密度函数fθ(x)满足下式:
Figure GDA0003918313940000036
其中,a和b是常数。a≥0,并且b≤T,T是传输周期。无线传感器网络的时延θj(tk)是有界的,可以取a到b之间的任意值。
另外,传感器网络易受到各种恶意的网络攻击,往往会造成数据的丢失或者篡改。其中,拒绝服务攻击可以通过干扰信道阻塞数据的传输,导致资源不可用。
本专利的目标是设计一种时钟同步方法,使得传感器网络中的节点在随机地受到拒绝服务攻击从而节点的所有接收信道随机中断的情况下仍然能够实现稳定的时钟同步,满足性能指标(3)和(4)的要求。
基于上述设计目标,本发明提出了一种拒绝服务攻击下基于滤波器的传感器网络时钟同步方法,实施的具体步骤如下:
a)确定传感器网络的拓扑结构G,根据网络拓扑的度矩阵D(G)计算系统矩阵B0及其最小的特征根λ2bn,从而得到保证系统稳定收敛的传输周期T。
系统矩阵B0的计算公式为:
Figure GDA0003918313940000041
其中,
Figure GDA0003918313940000042
D(G)ij表示矩阵D(G)的第i行、第j列元素,i,j∈{1,2,…,n},n表示网络中传感器节点的个数。di是节点i邻居节点的数量,Ni是节点i邻居节点的集合。如果节点i能接收到j的信息,则j∈Ni。On表示维数为n的零矩阵,In表示维数为n的单位矩阵,γ>0表示衡量新信息所占的比重。
Figure GDA0003918313940000043
Figure GDA0003918313940000044
是节点i在第k次更新得到的相对邻居节点j的相对斜率的估计值。
为了保证系统的稳定收敛以及时钟同步的误差趋向于0,T的选取应满足
Figure GDA0003918313940000045
初始化节点的相对时钟斜率估计值
Figure GDA0003918313940000046
斜率补偿参数
Figure GDA0003918313940000047
中间估计变量ωi(0)以及软件时钟Si(0)等中间参数。
b)网络中的任意节点j在其本地软件时钟达到kT时向每个邻居节点i发送信息,包括相对时钟斜率
Figure GDA0003918313940000048
估计值斜率补偿参数
Figure GDA0003918313940000049
中间估计变量ωj(tk-1)、软件时钟Sj(tk)、硬件时钟Hj(tk);同时,接收邻居节点发送的时钟信息。
按如下方法判断信道是否受到攻击:如果节点i在第k个循环周期内成功接收到了来自邻居节点的信息,则节点i的接收信道在该循环周期没有受到拒绝服务攻击;如果节点i在该周期内没有接收到来自邻居节点的信息,则节点接收信道在该循环周期受到拒绝服务攻击。
c)分别在有攻击和无攻击的两种情况下更新节点的相对时钟斜率估计值
Figure GDA00039183139400000410
相对斜率估计是时钟斜率补偿的基础,也是时钟同步的基础。
如果没有受到攻击,首先计算中间变量βij(tk),在此基础上更新相对斜率估计值。相对斜率估计值
Figure GDA00039183139400000411
的更新公式为:
Figure GDA0003918313940000051
其中,中间变量
Figure GDA0003918313940000052
Figure GDA0003918313940000053
表示节点i收到节点j在其本地时钟到达kT时向i传输的信息时的真实时间,sk表示节点i在kT之前最近成功接收到节点j在skT时传输的信息,
Figure GDA0003918313940000054
表示节点i收到节点j在其本地时钟到达skT时向i传输的信息时的真实时间,
Figure GDA0003918313940000055
Figure GDA0003918313940000056
分别为节点i在
Figure GDA0003918313940000057
Figure GDA0003918313940000058
的硬件时钟读数。
如果受到攻击,则相对斜率估计值保持上一刻的值不变,即:
Figure GDA0003918313940000059
d)在相对时钟斜率估计的基础上,计算斜率补偿参数
Figure GDA00039183139400000510
进行时钟斜率补偿。时钟斜率补偿能将时钟斜率的误差限制在一定范围内,保证同步的长期可靠性,是时钟同步的前提。
如果没有受到攻击,首先更新斜率补偿参数
Figure GDA00039183139400000511
在此基础上计算中间估计变量ωi(tk)。斜率补偿参数的更新公式:
Figure GDA00039183139400000512
其中,
Figure GDA00039183139400000513
如果受到攻击,则斜率补偿参数
Figure GDA00039183139400000514
和中间估计变量ωi(tk)保持上一刻的值不变,即:
Figure GDA00039183139400000515
e)时钟斜率补偿可以将时钟斜率的误差限制在一定范围内,接下来是软件时钟读数补偿。通过时钟读数补偿,尽可能地减少各个节点的软件时钟误差,达到时钟同步的目标。
如果没有受到攻击,节点的软件时钟读数更新为:
Figure GDA00039183139400000516
如果受到攻击,首先根据上一步的软件时钟参数和硬件时钟估计邻居节点j的软件时钟:
Figure GDA00039183139400000517
同时赋值
Figure GDA00039183139400000518
然后利用估计的邻居节点的软件时钟进行软件时钟读数补偿:
Figure GDA0003918313940000061
无论节点是否受到攻击,在两次更新之间,节点的软件时钟读数按照下面的公式动态更新:
Figure GDA0003918313940000062
f)重复上述步骤b)-e)直到时钟同步结束。
在本发明中,关于节点的时钟斜率补偿和时钟读数补偿是基于滤波器的算法,是完全分布式的,能够在保证时钟同步的准确度和收敛速度的同时,有效消除拒绝服务攻击对时钟同步的影响。
本发明的有益效果在于:本发明提出了拒绝服务攻击下基于滤波器的传感器网络时钟同步方法,主要包括相对时钟斜率估计、时钟斜率补偿以及软件时钟读数补偿三个部分。该算法能够在具有传输时延和受到拒绝服务攻击的情况下,分布式地、自主地进行节点之间的时钟同步,使得网络中所有节点具有相同的软件时钟读数。通过对普通的基于滤波器的时钟同步方法以及本发明提出算法的实验比较,结果表明该所提出的算法能够在保证收敛速度的情况下,显著抵抗拒绝服务攻击对系统的影响,从而实现网络攻击下的时钟同步的目的。
附图说明
图1为两节点之间的数据交换过程图;
展示了两个节点之间发送和接收数据的过程中是如何产生时延的。
图2为网络节点拓扑图;
绘制了实验中所选用的无线传感器网络的拓扑结构。网络中包含10个节点,编号如图所示,方便进行系统矩阵的计算。
图3为相对斜率估计误差图;
绘制了没有受到攻击时相对时钟斜率估计值随采样时间变化的散点图。其中,实线是本发明所提出的算法下相对斜率估计值的变化情况,虚线是相对时钟斜率的真实值。
图4为两个节点时钟同步误差对比图;
绘制了两种算法下两个节点在受到拒绝服务攻击时进行时钟同步的同步误差随采样时间变化的关系。其中,实线为普通时钟同步方法下同步误差随采样时间的变化关系,虚线对应本发明所提出的算法下同步误差随时间的变化关系。
图5为多个节点时钟同步误差对比图;
绘制了两种算法下图2所示的传感器网络在受到拒绝服务攻击时进行时钟同步的同步误差随采样时间的变化关系。其中,实线为普通时钟同步方法下同步误差随采样时间的变化关系,虚线对应本发明所提出的算法下同步误差随时间的变化关系。
图6为算法流程图;
为拒绝服务攻击下基于滤波器的传感器网络时钟同步方法的流程图。
具体实施方式
下面结合具体的实例以及实验结果附图对本发明提出的拒绝服务攻击下基于滤波器的传感器网络时钟同步方法进行进一步的详细描述。
无线传感器网络中,每个节点都有晶体振荡器,工作在固定的频率。振荡器的计时读数就是硬件时间。用i表示网络中的第i个传感器节点,Hi(t)表示节点i的硬件时间,Hi(t)与真实时间t之间满足线性关系,可以表示为:
Hi(t)=αit+βi
其中αi被称为硬件时钟斜率,βi是硬件时钟偏移。αi和βi的大小是由振荡器自身的性质所决定的。
由于工艺条件的限制和工作环境的影响,不同节点的振荡器工作频率和起始时间也会不同。时钟斜率和偏移的不同,带来的结果是各个节点之间硬件时间不同。αi和βi是由振荡器性质决定的,不能人为设置,因此要实现时钟同步需要在硬件时间的基础上引入另外一个时间概念——软件时间Si(t)。考虑分布式线性更新方案,每个节点i基于自己和邻居节点j的时钟信息周期性地更新自己的软件时钟读数:
Figure GDA0003918313940000071
其中,Gi(·)是一个仅依赖于节点i及其邻居节点j的线性函数,也就是说,节点i的软件时钟读数只与自己和邻居节点的时钟有关。
Figure GDA0003918313940000072
是节点i的斜率补偿参数,通过计算
Figure GDA0003918313940000073
可以补偿节点i与邻居节点之间硬件斜率的误差。
无线传感器网络中节点的硬件时间是无法改变的,因此时钟同步的任务是实现任意两个节点之间软件时间的同步。对于网络中的任意一个节点i,确定合适的斜率补偿参数
Figure GDA0003918313940000074
使得网络中任意节点i和节点j都满足:
Si(t)=Sj(t)
即:
Figure GDA0003918313940000081
其中k表示循环次数,tk表示第k次更新时刻的真实时间。
传感器网络中,数据的发送、传输和接收都需要时间,不可避免地会产生传输时延。在周期传输机制下,节点i在其本地时钟Hi(tk)时收到来自节点j在其本地时钟为Hj(t′k)时发送的信息,表示为:
Hj(t′k)=Hi(tk)-θj(tk)=αitkij(tk)
θj(tk)是传输时延,其概率密度函数fθ(x)满足下式:
Figure GDA0003918313940000082
其中,a和b是常数。a≥0,并且b≤T,T是传输周期。无线传感器网络的时延θj(tk)是有界的,可以取a到b之间的任意值。
另外,传感器网络易受到各种恶意的网络攻击,往往会造成数据的丢失或者篡改。其中,拒绝服务攻击可以通过干扰信道阻塞数据的传输,导致资源不可用。
本专利的目标是设计一种时钟同步方法,使得传感器网络中的节点在随机地受到拒绝服务攻击从而节点的所有接收信道随机中断的情况下仍然能够实现稳定的时钟同步,满足性能指标(3)和(4)的要求。
基于上述设计目标,本发明提出了一种拒绝服务攻击下基于滤波器的传感器网络时钟同步方法,实施的具体步骤如下:
a)确定传感器网络的拓扑结构G,根据网络拓扑的度矩阵D(G)计算系统矩阵B0及其最小的特征根λ2bn,从而得到保证系统稳定收敛的传输周期T。
系统矩阵B0的计算公式为:
Figure GDA0003918313940000083
其中,
Figure GDA0003918313940000084
D(G)ij表示矩阵D(G)的第i行、第j列元素,i,j∈{1,2,…,n},n表示网络中传感器节点的个数。di是节点i邻居节点的数量,Ni是节点i邻居节点的集合。如果节点i能接收到j的信息,则j∈Ni。On表示维数为n的零矩阵,In表示维数为n的单位矩阵,γ>0表示衡量新信息所占的比重。
Figure GDA0003918313940000091
Figure GDA0003918313940000092
是节点i在第k次更新得到的相对邻居节点j的相对斜率的估计值。
为了保证系统的稳定收敛以及时钟同步的误差趋向于0,T的选取应满足
Figure GDA0003918313940000093
初始化节点的相对时钟斜率估计值
Figure GDA0003918313940000094
斜率补偿参数
Figure GDA0003918313940000095
中间估计变量ωi(0)以及软件时钟Si(0)等中间参数。
b)网络中的任意节点j在其本地软件时钟达到kT时向每个邻居节点i发送信息,包括相对时钟斜率
Figure GDA0003918313940000096
估计值斜率补偿参数
Figure GDA0003918313940000097
中间估计变量ωj(tk-1)和软件时钟Sj(tk)、硬件时钟Hj(tk);同时,接收邻居节点发送的时钟信息。
按如下方法判断信道是否受到攻击:如果节点i在第k个循环周期内成功接收到了来自邻居节点的信息,则节点i的接收信道在该循环周期没有受到拒绝服务攻击;如果节点i在该周期内没有接收到来自邻居节点的信息,则节点接收信道在该循环周期受到拒绝服务攻击。
c)分别在有攻击和无攻击的两种情况下更新节点的相对时钟斜率估计值
Figure GDA0003918313940000098
相对斜率估计是时钟斜率补偿的基础,也是时钟同步的基础。
如果没有受到攻击,首先计算中间变量βij(tk),在此基础上更新相对斜率估计值。相对斜率估计值
Figure GDA0003918313940000099
的更新公式为:
Figure GDA00039183139400000910
其中,中间变量
Figure GDA00039183139400000911
Figure GDA00039183139400000912
表示节点i收到节点j在其本地时钟到达kT时向i传输的信息时的真实时间,sk表示节点i在kT之前最近成功接收到节点j在skT时传输的信息,
Figure GDA00039183139400000913
表示节点i收到节点j在其本地时钟到达skT时向i传输的信息时的真实时间,
Figure GDA00039183139400000914
Figure GDA00039183139400000915
分别为节点i在
Figure GDA00039183139400000916
Figure GDA00039183139400000917
的硬件时钟读数。
如果受到攻击,则相对斜率估计值保持上一刻的值不变,即:
Figure GDA00039183139400000918
d)在相对时钟斜率估计的基础上,计算斜率补偿参数
Figure GDA0003918313940000101
进行时钟斜率补偿。时钟斜率补偿能将时钟斜率的误差限制在一定范围内,保证同步的长期可靠性,是时钟同步的前提。
如果没有受到攻击,首先更新斜率补偿参数
Figure GDA0003918313940000102
在此基础上计算中间估计变量ωi(tk)。斜率补偿参数的更新公式:
Figure GDA0003918313940000103
其中,
Figure GDA0003918313940000104
如果受到攻击,则斜率补偿参数
Figure GDA0003918313940000105
和中间估计变量ωi(tk)保持上一刻的值不变,即:
Figure GDA0003918313940000106
e)时钟斜率补偿可以将时钟斜率的误差限制在一定范围内,接下来是软件时钟读数补偿。通过时钟读数补偿,尽可能地减少各个节点的软件时钟误差,达到时钟同步的目标。
如果没有受到攻击,节点的软件时钟读数更新为:
Figure GDA0003918313940000107
如果受到攻击,首先根据上一步的软件时钟参数和硬件时钟估计邻居节点j的软件时钟:
Figure GDA0003918313940000108
同时赋值
Figure GDA0003918313940000109
然后利用估计的邻居节点的软件时钟进行软件时钟读数补偿:
Figure GDA00039183139400001010
无论节点是否受到攻击,在两次更新之间,节点的软件时钟读数按照下面的公式动态更新:
Figure GDA00039183139400001011
f)重复上述步骤b)-e)直到时钟同步结束。
在本发明中,关于节点的时钟斜率补偿和时钟读数补偿是基于滤波器的算法,是完全分布式的,能够在保证时钟同步的准确度和收敛速度的同时,有效消除拒绝服务攻击对时钟同步的影响。
实施例
1)参数设置
由于石英晶体震荡器的典型误差为10ppm到100ppm,对应着10到100毫秒。因此,对于传感器网络中任意节点i,硬件时钟斜率αi的取值范围为[0.9999,1.0001],硬件时钟偏移βi的取值范围为[0,0.0002]。噪声模型的范围参数a,b取值分别为0和0.0001。拒绝服务攻击造成的数据丢失率为20%。
2)初始化
对于网络中的任意节点i,初始化其相对时钟斜率估计值
Figure GDA0003918313940000111
斜率补偿参数
Figure GDA0003918313940000112
中间估计变量ωi(0)=0以及软件时钟Si(0)=Hi(0)。根据图2所示的网络拓扑结构及相关定义得到网络的次数矩阵D(G)、连通性矩阵A(G)以及拉普拉斯矩阵L(G),计算系统矩阵B0,得到λ2bn≈-4,设置传输周期T=0.1s。
3)数据包发送和接收
第k个采样时刻(k>0),每个节点i,i=1,2,…N,将自身信息包括斜率补偿参数
Figure GDA0003918313940000113
中间估计变量ωi(tk)、硬件时钟Hi(tk)和软件时钟Si(tk)发送给邻居节点,同时接收邻居节点j∈Ni发送的信息包括斜率补偿参数
Figure GDA0003918313940000114
中间估计变量ωj(tk)、硬件时钟Hj(tk)以及软件时钟Sj(tk)。
4)相对斜率估计
每个采样时刻,节点i利用接收到的邻居节点j的信息,更新节点的相对斜率估计值
Figure GDA0003918313940000115
相对斜率估计是时钟斜率补偿的基础,也是时钟同步的基础。在未受到攻击的情况下,按照公式(8)更新相对斜率估计值
Figure GDA0003918313940000116
受到攻击的情况下,相对斜率估计值
Figure GDA0003918313940000117
保持上一刻的值不变,即式(9)。相对斜率估计的误差如图3所示。
5)时钟斜率补偿
在相对斜率估计的基础上,计算斜率补偿参数
Figure GDA0003918313940000118
进行时钟斜率补偿,目的是将时钟斜率的误差限制在一定范围内。如果没有受到拒绝服务攻击,按照公式(10)进行时钟斜率补偿;如果受到了攻击,则时钟补偿参数
Figure GDA0003918313940000119
保持上一刻的值,即公式(11)所示。
6)时钟读数补偿
时钟同步的最后一步是进行时钟读数补偿。没有受到攻击时,按照公式(12)所示与邻居节点之间进行时钟读数补偿。如果受到了攻击,首先通过上一刻收到的邻居节点的时钟信息,根据公式(13)对邻居节点的时钟读数进行预测,然后通过公式(14)用估计值进行时钟读数补偿。另外,两次采样时刻之间,节点i的时钟读数按照公式(15)进行动态更新。图4展示了两个节点下,普通的基于滤波器的时钟同步方法与本发明提出的拒绝服务攻击下的时钟同步方法的同步误差对比,图5则绘制了图2所示的网络拓扑下,两种算法的性能对比。
7)重复上述步骤3)—6)。
具体算法流程如图6所示。

Claims (2)

1.拒绝服务攻击下基于滤波器的传感器网络时钟同步方法,其特征在于,具体步骤如下:
a)根据无线传感器网络的拓扑结构计算网络的度矩阵;计算网络的系统矩阵及其最小特征值,从而确定传输周期;对各节点的相对斜率估计值、斜率补偿参数、中间估计变量以及软件时钟读数进行初始化;
b)每个节点按照固定的传输周期在本地时钟到达传输周期整数倍时发送自己当前的相对时钟斜率的估计值、斜率补偿参数、中间估计变量、软件时钟读数和硬件时钟给所有邻居节点;同时,接收邻居节点发送的信息;通过在一个更新周期内是否接收到邻居的信息判断节点接收信道是否受到拒绝服务攻击;
c)如果节点没有受到拒绝服务攻击,则首先按照基于滤波器的算法利用节点这一步接收信息时的硬件时钟和这步之前最近接收到该邻居节点信息时的硬件时钟差、以及上一步的相对斜率估计值更新相对时钟斜率的估计值;根据节点上一步的斜率补偿参数和这步之前最近接收到的所有邻居的相对时钟斜率估计值更新斜率补偿参数;根据节点上一步的中间估计变量和这步之前最近接收到的所有邻居节点的斜率补偿参数更新中间估计变量;按照与所有邻居节点软件时钟读数取平均计算该更新时刻的软件时钟读数;在两次更新之间,节点利用时钟斜率补偿参数和硬件时钟读数更新节点软件时钟读数;
d)如果节点受到了拒绝服务攻击,那么,相对时钟斜率估计值、中间估计变量和斜率补偿参数保持不变;根据上一步更新时刻邻居的软件时钟信息、相对时钟斜率估计值和本地硬件时钟计算邻居节点这一步更新时刻的软件时钟估计值,同时赋值邻居节点的软件时钟为该估计值;按照节点这一步软件时钟读数与所有邻居节点软件时钟取平均计算该更新时刻的软件时钟读数;在两次更新之间,节点利用时钟斜率补偿参数和硬件时钟读数更新节点软件时钟读数;
e)重复上述步骤b)-d)直到时钟同步结束;
步骤a)中传输周期T的具体确定方式为:
Figure FDA0003918313930000011
其中,λ2bn是系统矩阵B0的最小特征根;系统矩阵B0的计算公式为:
Figure FDA0003918313930000012
G表示传感器网络的拓扑结构,D(G)代表拓扑的度矩阵,具体表示为
Figure FDA0003918313930000013
D(G)ij表示矩阵D(G)的第i行、第j列元素,i,j∈{1,2,…,n},n表示网络中传感器节点的个数;di是节点i邻居节点的数量,Ni是节点i邻居节点的集合;如果节点i能接收到j的信息,则j∈Ni;On表示维数为n的零矩阵,In表示维数为n的单位矩阵,γ>0表示衡量新信息所占的比重;
Figure FDA0003918313930000021
Figure FDA0003918313930000022
是节点i在第k次更新得到的相对邻居节点j的相对斜率的估计值,k≥0,tk表示节点i第k次更新时的真实时间;
步骤b)中节点的传输周期固定且满足步骤a)中的条件,每个节点j在其本地时钟到达kT时向其所有邻居传输信息
Figure FDA0003918313930000023
ωj(tk-1),
Figure FDA0003918313930000024
Sj(tk),Hj(tk),其中,
Figure FDA0003918313930000025
为相对时钟斜率、
Figure FDA0003918313930000026
为估计值斜率补偿参数、ωj(tk-1)为中间估计变量、Sj(tk)为软件时钟、Hj(tk)为硬件时钟;按如下方法判断节点是否受到攻击:如果节点i在该周期内成功接收到了来自邻居节点的信息,则节点i的接收信道在该传输周期没有受到拒绝服务攻击;如果节点i在该周期内没有接收到来自邻居节点的信息,则节点在该传输周期受到拒绝服务攻击;
步骤c)的具体做法依次包括三步:相对时钟斜率估计、时钟斜率补偿、软件时钟读数补偿;
相对斜率估计值
Figure FDA0003918313930000027
的更新设计为:
Figure FDA0003918313930000028
其中,
Figure FDA0003918313930000029
是中间参数,T是传输周期,k是循环次数,
Figure FDA00039183139300000210
表示节点i收到节点j在其本地时钟到达kT时向i传输的信息时的真实时间,sk表示节点i在kT之前最近成功接收到节点j在skT时传输的信息,
Figure FDA00039183139300000211
表示节点i收到节点j在其本地时钟到达skT时向i传输的信息时的真实时间,
Figure FDA00039183139300000212
Figure FDA00039183139300000213
分别为节点i在
Figure FDA00039183139300000214
Figure FDA00039183139300000215
的硬件时钟读数;
节点i的时钟斜率补偿参数
Figure FDA00039183139300000216
和中间估计变量ωi的更新设计为:
Figure FDA00039183139300000217
其中,
Figure FDA00039183139300000218
tk时刻软件时钟读数Si的补偿设计为:
Figure FDA0003918313930000031
在两次更新之间,节点的软件时钟读数按照下面的公式动态更新:
Figure FDA0003918313930000032
步骤d)的具体做法是:
相对斜率估计值
Figure FDA0003918313930000033
斜率补偿参数
Figure FDA0003918313930000034
和中间估计变量ωi(tk)保持上一刻的值不变,即:
Figure FDA0003918313930000035
ωi(tk)=ωi(tk-1);
节点i用邻居上一步的软件时钟信息估计邻居节点j这一步的软件时钟值
Figure FDA0003918313930000036
Figure FDA0003918313930000037
同时赋值
Figure FDA0003918313930000038
用邻居节点的软件时钟值Sj(tk)进行软件时钟读数补偿:
Figure FDA0003918313930000039
在两次更新之间,节点的软件时钟读数按照下面的公式动态更新:
Figure FDA00039183139300000310
2.按权利要求1所述的拒绝服务攻击下基于滤波器的传感器网络时钟同步方法,其特征在于:关于节点的时钟斜率补偿和时钟读数补偿是基于滤波器的算法,是完全分布式的。
CN202110249360.5A 2021-03-08 2021-03-08 拒绝服务攻击下基于滤波器的传感器网络时钟同步方法 Active CN113038587B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110249360.5A CN113038587B (zh) 2021-03-08 2021-03-08 拒绝服务攻击下基于滤波器的传感器网络时钟同步方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110249360.5A CN113038587B (zh) 2021-03-08 2021-03-08 拒绝服务攻击下基于滤波器的传感器网络时钟同步方法

Publications (2)

Publication Number Publication Date
CN113038587A CN113038587A (zh) 2021-06-25
CN113038587B true CN113038587B (zh) 2022-12-20

Family

ID=76467003

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110249360.5A Active CN113038587B (zh) 2021-03-08 2021-03-08 拒绝服务攻击下基于滤波器的传感器网络时钟同步方法

Country Status (1)

Country Link
CN (1) CN113038587B (zh)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103281772B (zh) * 2013-04-23 2016-05-25 中国科学院计算技术研究所 一种无线传感器网络的时间同步方法及系统
CN106792714A (zh) * 2017-03-02 2017-05-31 重庆邮电大学 一种针对WSN中Sybil攻击的安全时间同步方法
CN110505683B (zh) * 2019-09-23 2021-06-08 重庆邮电大学 一种面向平均一致性时钟同步的频率偏移估计方法
CN111385825B (zh) * 2020-02-26 2023-04-11 中国民航大学 一种无线传感器网络快速收敛的一致性时间同步方法

Also Published As

Publication number Publication date
CN113038587A (zh) 2021-06-25

Similar Documents

Publication Publication Date Title
He et al. Accurate clock synchronization in wireless sensor networks with bounded noise
CN103281772B (zh) 一种无线传感器网络的时间同步方法及系统
Yang et al. Environment-aware clock skew estimation and synchronization for wireless sensor networks
Jia et al. Distributed clock synchronization based on intelligent clustering in local area industrial IoT systems
He et al. Time synchronization for random mobile sensor networks
Mi et al. Event-triggered MPC design for distributed systems with network communications
CN113038587B (zh) 拒绝服务攻击下基于滤波器的传感器网络时钟同步方法
Gu et al. Improved clock parameters tracking and ranging method based on two-way timing stamps exchange mechanism
Aissaoua et al. A distributed consensus-based clock synchronization protocol for wireless sensor networks
Duan et al. Sensor scheduling design for complex networks under a distributed state estimation framework
CN111812970B (zh) 一种基于ieee1588协议的双补偿时钟同步方法
CN114423073B (zh) 基于事件触发的平均一致性时间同步方法
CN107426748B (zh) 一种无线网络控制系统中多传感器估计性能方法
CN114598611B (zh) 面向二集值fir系统事件驱动辨识的输入设计方法及系统
He et al. Distributed time synchronization under bounded noise in wireless sensor networks
Hulede et al. Distributed network time synchronization: Social learning versus consensus
Shenoy et al. Swarm-Sync: A distributed global time synchronization framework for swarm robotic systems
Niu et al. Consensus tracking-based clock synchronization for the Internet of Things
CN109068385A (zh) 一种具有容错性的水下无线网络时间同步方法
Guo et al. Design of distributed network clock-synchronization for swarm uav
CN114024524A (zh) 分布式异步一致性滤波方法、电子设备及计算机存储介质
Liao et al. DiSync: Accurate distributed clock synchronization in mobile ad-hoc networks from noisy difference measurements
Wang et al. Compensation strategy for distributed tracking in wireless sensor networks with packet losses
Wang et al. A Simple Event-Based Average Consensus Clock Synchronization Scheme in Industrial Wireless Sensor Networks Under Communication Delays
CN116709496A (zh) 基于事件触发和低通滤波的平均一致性同步方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant