CN114499920A - 一种基于动态标签的源和路径验证机制 - Google Patents
一种基于动态标签的源和路径验证机制 Download PDFInfo
- Publication number
- CN114499920A CN114499920A CN202111322118.2A CN202111322118A CN114499920A CN 114499920 A CN114499920 A CN 114499920A CN 202111322118 A CN202111322118 A CN 202111322118A CN 114499920 A CN114499920 A CN 114499920A
- Authority
- CN
- China
- Prior art keywords
- node
- source
- verification
- path
- label
- 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.)
- Granted
Links
- 238000012795 verification Methods 0.000 title claims abstract description 164
- 230000007246 mechanism Effects 0.000 title claims abstract description 32
- 238000004891 communication Methods 0.000 claims abstract description 27
- 238000001914 filtration Methods 0.000 claims abstract description 8
- 230000005540 biological transmission Effects 0.000 claims description 58
- 238000000034 method Methods 0.000 claims description 12
- 238000010200 validation analysis Methods 0.000 claims description 4
- 238000004364 calculation method Methods 0.000 abstract description 5
- 238000007726 management method Methods 0.000 description 17
- 238000010586 diagram Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 5
- 230000006399 behavior Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 101100322581 Caenorhabditis elegans add-1 gene Proteins 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000012550 audit Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000005284 excitation Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000013439 planning Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
- H04L63/126—Applying verification of the received information the source of the received data
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提出一种基于动态标签的源和路径验证机制,通过基于源和目的用户节点驱动的验证策略协商和源端嵌入验证指令至数据包头,满足源和目的用户节点的动态路径验证需求;基于动态标签和每个数据包头固定字段信息,路由设备为每个数据包生成验证码,提升验证可靠性,并通过源用户节点、中间节点路由设备、目的用户节点在同一个验证码字段进行验证和过滤,节省通信开销;且本发明通过预置动态标签,只需要少量的标签存储,同时中间路由设备直接使用标签生成验证码,降低路由设备计算开销。
Description
技术领域
本发明涉及计算机网络技术领域,涉及对网络传输路径上路由节点传输行为验证,尤其涉及一种基于动态标签的源和路径验证机制。
背景技术
互联网具有“核心简单,边缘复杂”的特点,导致其传输路径节点行为不可信,从而带来路由劫持、流量窃听等安全问题。互联网源和目的节点之间的可靠可信通信依赖于源和目的节点与中间路由节点之间的相互信任,而互联网初始架构设计中关于中间路由节点身份真实性验证的缺失,为路径欺骗提供了有利条件。攻击者可以改变数据包传输路径,实施传输路径篡改、流量窃听等攻击,只要最终将数据包转交给目的端路由节点,目的端就无法对数据包实际传输路径进行审计、监督和追踪。对数据包传输路径验证缺失造成网络通信业务的真实性和可审计性方面的缺陷。
在网络数据传输过程中,验证会话数据包实际转发路径是否与路径策略一致,是确保网络协议安全可信执行的基础问题。针对上述数据包转发的路径真实性检验问题,以及数据包源的验证问题,现有的研究工作主要是基于期望路径信息生成数据包验证结构,即对该会话的预定路径策略进行认证,判断该数据包是否合法,以及是否按照预定路径被正确发送到目的端。
由于一个管理域(一个或多个自治域构成)可以视为一个信任共同体,源和路径验证机制主要以管理域为粒度实现域间源和路径验证。现有的基于验证码的域间源和路径验证技术主要有:OPT、ICING、EPIC、PPV、MASK,但是在验证开销、通信开销、支持增量部署、保护部署者不被伪造方面存在着一些问题。例如ICING和OPT、EPIC存在验证和通信开销高,部署激励低,PPV和MASK采用了随机概率验证的方式,降低了通信开销,但需要多个数据包才能确定验证路径,Atomos采用了非对称加密实现定长的验证码,降低了通信开销,但用于生成及验证的验证码计算开销较大,且攻击者容易伪造验证码。
发明内容
本发明的目的在于克服现有技术中存在的大规模网络域间通信时源和路径验证计算和通信开销大、可靠性低的问题,提出一种基于动态标签的源和路径验证机制,可以解决现有技术实现对路由节点传输行为验证过程,特别适用于用户使用域间路由节点进行数据传输时的源和路径验证。
为此,本发明的第一个目的在于提出一种基于动态标签的源和路径验证机制,包括:
管理域下的用户节点进行数据通信时,源用户节点向管理域的控制服务器发送标签分发请求,并接收控制服务器发送的数据通信传输路径上所有节点路由设备的标签信息;
源用户节点将发往目的用户节点的通信数据和验证码打包形成数据包,沿传输路径发送数据包;
沿传输路径上的节点路由设备依次接收数据包,对验证码进行解析验证,验证通过后转发数据包至传输路径上的下一节点路由设备,依序发送直至目的用户节点。
其中,控制服务器配置路由设备信息模块和标签分发模块;其中,
路由设备信息模块用于存储路由设备信息;包括管理域内节点路由设备的设备标识,以及与相邻节点路由设备的连接关系;
标签分发模块用于从路由设备信息模块获取节点路由设备标识id,并根据节点路由设备标识id,向节点路由设备下发动态标签。
其中,标签分发模块维护节点路由设备的设备标识对应的动态标签,并下发至节点路由设备;其中,不同节点路由设备的动态标签以节点路由设备上一跳相邻节点路由设备和标签指示符(indicator)进行区分,使用时隙编号作为标签指示符的组成部分,对源和路径验证,不同时隙、不同节点路由设备具有不同的动态标签。
其中,管理域的节点路由设备配置标签预置模块及源和路径验证模块;其中,
标签预置模块用于接收和存储标签分发模块分发的动态标签;
源和路径验证模块用于路由设备标识对比、验证码添加、数据包过滤、验证码更新操作;
源和路径验证模块进行源和路径验证时,第一跳的节点路由设备验证源用户节点的验证码;传输路径途经的节点路由设备之间逐跳验证路由设备验证码,进行路径验证;最后一跳的目的用户节点验证由目的用户节点动态标签生成的验证码,完成源与路径的验证。其中,标签信息包含控制服务器为传输路径上全部节点路由设备分发的动态标签及源与目的用户节点通信的会话标签。
其中,源和路径验证是基于时间片进行;将源与目的用户节点通信的会话标签tagsd与当前时间片epoch字段组合得到验证码N,表示为公式(1):
其中,MAC(.)为验证码生成方式;采用以tag为密钥的AES加密,或包含tag的SIPHASH 验证码生成算法;
源用户节点根据N确定时间片的对应的数据包数量,每个时间片基础的数据包数量为 M个,M_ADD为N对M做取模运算,最后得到该时间片数据包数量为N+M_ADD个;
源用户初始化数据包的数据包头,根据数据包头为目的用户节点设置验证码,如公式 (2)所示:
其中,flag字段表明是源或路径验证的数据包,epoch字段为当前的时间片编号,seq 为序列号,indicator为当前时隙,id1...idn为路径上的节点路由设备标识,payload为数据包负载或部分负载,H(.)表示哈希运算。
其中,对每个数据包,源用户节点为传输路径上第一跳节点生成masksrc字段,表示为公式(3):
masksrc=MACtag(cstpkt||idi-1||idi) (3)
其中,cstpkt为初始化的数据包头的固定字段,包括flag字段、epoch字段、seq字段、路径上的节点路由设备标识及marksd字段;
从源用户节点起,沿传输路径第一跳传输至第一节点路由设备后,第一节点路由设备根据公式(3)计算验证码,验证正确后依据公式(4)进行路径验证码添加:
更新路径验证码字段,向下一跳i+1传送;
传输路径上的节点路由设备根据公式(4)计算markr,与数据包头中的markr进行对比,相同则合法,并为下一跳生成及添加验证码markr;不同则过滤对应数据包;依序进行验证;
最后一跳,从传输路径上的第n节点路由设备传输至目的用户节点时,目的用户节点接收第一个数据包后,向控制服务器请求本次传输路径上最后一跳节点的动态标签以及本次会话的会话标签。
其中,目的用户节点为每个会话保持两个计数器sCounter和fCounter;其中,sCounter 用于记录一个时间片成功的数据包总量,fCounter用于记录该时间片失败的数据包总量,根据包头信息和动态标签,按公式(2)计算marksd,公式(3)计算marksrc,2个验证码均正确,sCounter加1,否则过滤该数据包,且fCounter加1。
其中,一个时间片结束后,目的用户节点根据公式(1)计算相应时间片内的数据包量,验证相应时间片传输数据包总量是否符合传输策略,即对所有sCounter的总量Ts,减去fCounter的总量Tf,是否满足:
(M+M_ADD)*θl<Ts-Tf<(M+M_ADD)*θh (5)
其中θh、θl为表示上下限的阈值,M+M_ADD为数据包总量。
其中,源和路径验证通过后,目的用户节点向源用户节点发送确认信息包;为区分数据包和确认信息包,在flag字段最低位设置为1表示确认信息包,置0表示数据包。
区别于现有技术,本发明的基于动态标签的源和路径验证机制,通过基于源和目的用户节点驱动的验证策略协商和源端嵌入验证指令至数据包头,满足源和目的用户节点的动态路径验证需求;基于动态标签和每个数据包头固定字段信息,路由设备为每个数据包生成验证码,提升验证可靠性,并通过源用户节点、中间节点路由设备、目的用户节点在同一个验证码字段进行验证和过滤,节省通信开销;且本发明通过预置动态标签,只需要少量的标签存储,同时中间路由设备直接使用标签生成验证码,降低路由设备计算开销。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为本发明提供的一种基于动态标签的源和路径验证机制的流程示意图。
图2为本发明提供的一种基于动态标签的源和路径验证机制的管理域控制服务器和节点路由设备设置的模块结构示意图。
图3为本发明提供的一种基于动态标签的源和路径验证机制中动态标签的存储结构示意图。
图4为本发明提供的一种基于动态标签的源和路径验证机制中数据包头的结构示意图。
图5为本发明提供的一种基于动态标签的源和路径验证机制中源用户节点初始化数据包头的流程示意图。
图6为本发明提供的一种基于动态标签的源和路径验证机制中源和路径验证机制中用户节点与节点路由设备的连接拓扑图。
图7为本发明提供的一种基于动态标签的源和路径验证机制中验证机制的流程示意图。
图8为本发明提供的一种基于动态标签的源和路径验证机制中节点路由设备路径验证数据包处理流程示意图。
图9为为本发明提供的一种基于动态标签的源和路径验证机制中目的用户节点的路径验证流程示意图。
具体实施方式
下面详细描述本发明的实施例,实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
下面参考附图描述本发明实施例的一种基于动态标签的源和路径验证机制。
图1为本发明实施例所提供的一种基于动态标签的源和路径验证机制的流程示意图。该验证机制包括:
步骤101:管理域下的用户节点进行数据通信时,源用户节点向管理域的控制服务器发送标签分发请求,并接收控制服务器发送的数据通信传输路径上所有节点路由设备的标签信息。
管理域由一个或多个自治域构成,管理域内设置控制服务器和节点路由设备,控制管理器配置路由设备信息模块和标签分发模块,每一节点路由设备配置标签预置模块及源和路径验证模块,以对管理域内的用户节点进行统筹管理。如图2所示。
路由设备信息模块用于存储路由设备信息;包括管理域内节点路由设备的设备标识,以及与相邻节点路由设备的连接关系;
标签分发模块用于从路由设备信息模块获取节点路由设备标识id,并根据节点路由设备标识id,向节点路由设备下发动态标签;
标签预置模块用于接收和存储标签分发模块分发的动态标签;
源和路径验证模块用于路由设备标识对比、验证码添加、数据包过滤、验证码更新操作。
在本发明中,用户节点的类型可为主机或路由设备;源用户节点是数据通信的通信需求方,目的用户节点为数据通信的通信对象。
标签分发模块维护节点路由设备的设备标识对应的动态标签,并下发至节点路由设备;其中,不同节点路由设备的动态标签以节点路由设备上一跳相邻节点路由设备和标签指示符(indicator)进行区分,使用时隙编号作为标签指示符的组成部分,对源用户节点和路径验证,不同时隙、不同节点路由设备具有不同的动态标签。
在源用户节点与目的用户节点建立通信并发送数据包时,源用户节点向标签分发模块发送信息,请求本次通信的传输路径上所有节点路由设备的动态标签信息,标签信息包含控制服务器为传输路径上全部节点路由设备分发的动态标签、节点路由设备标识及源与目的用户节点通信的会话标签。其中,动态标签的存储结构如图3所示。动态标签是实现源和路径验证的基础,本发明从标签预置模块接收和存储节点自身的动态标签,并根据邻居路由设备标识、时隙存储。
在本实施例中,标签分发模块根据传输路径上的节点路由设备信息,仅向源用户节点发送传输路径上第一跳节点的用户验证标签。
步骤102:源用户节点将发往目的用户节点的通信数据和验证码打包形成数据包,沿传输路径发送数据包。
源用户节点接收动态标签信息后,基于动态标签信息对待发送的数据包的数据包头进行初始化。构建如图4所示的数据包头。每个动态标签对应一个节点路由设备标识和标识符(indicator);其中,在flag字段表明这是一个主机或路径验证的数据包,epoch字段为当前的时间片编号,seq为序列号(从0开始,最大值为M+M_ADD-1),indicator为当前时隙;时隙仅为本实施例指示选择动态标签的一种方式,也可以采用别的标识符形式,比如会话信息,即源、目的IP地址和路径信息的哈希等,采用时隙作为标识符的方式,每个路由器仅需要存储少量(2个时隙)动态标签,时隙可以分钟为单位进行更新。
全网保持粗略的同步,因为路由设备会存储两个indicator以上的动态标签,比如由于没有完全同步的原因,源用户还在时隙200,而别的源用户处于时隙201,由于路由设备同时存储了两个时隙对应的标签,仍然不影响取出正确的标签(路由设备存储的时隙数越多,存储空间越大,对同步要求越低)。
源用户节点初始化数据包头流程如图5所示,本发明源和路径验证是基于时间片进行;源和目的需要协商每个时间片有多少数据包,每个路由节点在该时间片中的验证概率,本发明无需源和目的用户通过会话协商,而是直接将源与目的用户节点通信的会话标签tagsd与当前时间片epoch字段组合得到验证码N,表示为公式(1):
其中,MAC(.)为验证码生成方式;采用以tag为密钥的AES加密,或包含tag的SIPHASH 验证码生成算法;
示例的,设每个时间片的基准数量为M,取N对M取模,得到一个数值M_ADD,M+M_ADD即为当前时间片的数据包数量。这样,目的用户节点可以从所在管理域控制服务器得到tagsd,计算出同样的M+M_ADD。通过这样的方式,目的用户可以验证本时间片的数据包数量是否符合要求,重放攻击、故意丢弃数据包等恶意行为就能被目的用户发现。
源用户节点根据N确定时间片的对应的数据包数量,初始化数据包的数据包头,根据数据包头为目的用户节点设置验证码,如公式(2)所示:
其中,flag字段表明是源或路径验证的数据包,epoch字段为当前的时间片编号,seq 为序列号,indicator为当前时隙,id1...idn为路径上的节点路由设备标识,payload为数据包负载或部分负载,H(.)表示哈希运算。marksd在本实施例中对应的长度为32bit。
发送数据包并进入步骤103。
步骤103:沿传输路径上的节点路由设备依次接收数据包,对验证码进行解析验证,验证通过后转发数据包至传输路径上的下一节点路由设备,依序发送直至目的用户节点。
源和路径验证模块进行源和路径验证时,第一跳的节点路由设备验证源用户节点的验证码;传输路径途经的节点路由设备之间逐跳验证路由设备验证码,进行路径验证;最后一跳的目的用户节点验证基于会话标签生成的验证码,完成源与路径的验证。
如图6示出本发明源和路径验证机制中用户节点与节点路由设备的连接拓扑图。图示 H1和H2分别为源用户节点和目的用户节点,形成的传输路径为H1-R1-R2-R3-R4-H2。需要说明的是,本发明的节点路由设备均为管理域的入口节点路由设备,R1与R2之间可能存在别的路由设备,作为管理域间验证,R2仅判断与自身相连的上一跳是否与R1在同一个域即可视同与R1连接。
源和路径的验证流程如图7所示,当源用户节点为主机时,验证的目的用户节点也为主机,源用户节点为节点路由设备时,验证的目的用户节点也为节点路由设备。相对应的验证方式为主机验证和路由设备验证方式,通过数据包头的flag标志区分。
主机验证:如图6,源节点为H1,目的节点为H2,传输路径路由节点为“R1-R2-R3-R4”,源节点H1向本域控制服务器请求R1的源和目的用户节点验证的标签uTag;
路由设备验证:源节点为R1,目的节点为R4,传输路径路由节点为R2,R3,源节点R1向本域控制服务器请求R2的路由设备验证标签rTag。
以上标签在会话前已由控制服务器下发。路由设备具备根据标签计算验证码的能力。
此外,控制服务器还分发一个源和目的用户本次会话的标签(以下称为会话标签或 tagsd)到源用户,用于本次会话。这样,源用户节点就有了传输路径上第一跳节点和目的节点的动态标签。
节点路由设备路径验证数据包处理流程如图8所示。对每个数据包,源用户节点为传输路径上第一跳节点生成marksrc字段,表示为公式(3):
marksrc=MACtag(cstpkt||idi-1||idi) (3)
其中,cstpkt为初始化的数据包头的固定字段,包括flag字段、epoch字段、seq字段、路径上的节点路由设备标识及marksd字段,这些字段在传输过程中保持不变;idi-1为上一跳设备标识(对第一跳节点,该位置置零),idi为本跳设备标识。
需要注意的是,对主机验证,动态标签为第一跳的uTag;对路由设备验证,动态标签为第一跳的rTag。这两种验证方式新增数据包头的区别在于:(1)初始化包头flag字段时,第一位置1表示路由设备验证,置0表示主机验证。(2)嵌入包头的indicator可以通过二进制首位区分,考虑到路由设备作为用户时,更换标签的时间可能短于主机作为用户时,因此将两种标签区别对待,使得它们拥有各自的更改时隙,比如路由设备验证标签rTag 3 分钟更新一次,而主机验证标签uTag 1分钟更新一次。
更新完marksd和marksrc后,源用户节点发送数据包,并增加seq,准备下一个数据包。当seq到达最大值(M+M_ADD-1)时,进入下一个epoch。
从源用户节点起,沿传输路径第一跳传输至第一节点路由设备后,第一节点路由设备根据公式(3)计算验证码,验证正确后依据公式(4)进行路径验证码添加:
更新路径验证码字段,向下一跳i+1传送;
传输路径上的节点路由设备根据公式(4)计算markr,与数据包头中的markr进行对比,相同则合法,不同则过滤对应数据包;依序进行验证;
最后一跳,从传输路径上的第n节点路由设备传输至目的用户节点时,目的用户节点接收第一个数据包后,向控制服务器请求本次传输路径上最后一跳节点的动态标签以及本次会话的会话标签。
在本发明的其他实施例中,目的用户节点为每个会话保持两个计数器sCounter和fCounter;其中,sCounter用于记录一个时间片成功的数据包总量,fCounter用于记录该时间片失败的数据包总量,根据包头信息和动态标签,按公式(2)计算marksd,公式(3) 计算marksrc,2个验证码均正确,sCounter加1,否则过滤该数据包,且fCounter加1。
如图9所示,一个时间片结束后,目的用户节点根据公式(1)计算相应时间片内的数据包量,验证相应时间片传输数据包总量是否符合传输策略,即对所有sCounter的总量Ts,减去fCounter的总量Tf,是否满足:
(M+M_ADD)*θl<Ts-Tf<(M+M_ADD)*θh (5)
其中θh、θl为表示上下限的阈值,M+M_ADD为数据包总量。
源和路径验证通过后,目的用户节点向源用户节点发送确认信息包;为区分数据包和确认信息包,在flag字段最低位设置为1表示确认信息包,置0表示数据包。
本发明具体进行源和目的验证的实施例如下所示:
如图6中,源用户节点为H1,目的用户节点为H2,传输路径为R1-R2-R3-R4。
每个时间片的基准数据包数量设置为2000,数据包总量上下限阈值θl=95%,θh=105%。
R1,R2,R3,R4所在管理域控制服务器标签分发模块已向R1,R2,R3,R4下发该路径上的动态标签(R1,R4作为第一跳和最后一跳,为主机验证标签,R2,R3为节点路由设备验证标签),当前的indicator为200和201。
R1,R2,R3,R4接收动态标签并存储:
1)主机验证标签
对应时隙200的主机验证标签为uTag1_0_200,uTag2_1_200,uTag3_2_200,uTag4_3_200,对应时隙201的主机验证标签为uTag1_0_201,uTag2_1_201,uTag3_2_201,uTag4_3_201。以R1为例,本次会话使用2个主机验证标签,uTag1_0_200和uTag1_0_201,表示这是该路径的第一跳,上一跳为0,对应时隙为200和201。
2)节点路由设备验证标签
R1存储R2,R2存储R3,R3存储R4的节点路由设备验证标签,用于相邻节点路由设备验证。
源用户节点规划路径为“R1-R2-R3-R4”,采用主机验证方式,得到R1对应200的标签为uTag11_0_200,对应201的标签为uTag1_0_201,以及源和目的用于会话的标签tagsd。
源用户节点初始化包头:将flag第一位置0,表示主机验证,其余flag字段保留,置0。 epoch字段从0开始,至255又循环至0。
源用户节点根据公式(1)计算得到M+M_ADD,seq的值为从0至M+M_ADD-1,设计算得到M_ADD为1000,则M+M_ADD为3000,seq取值为0-2999,到了2999后增加 epoch,进入下一个epoch,seq又从0开始。
源用户节点按公式(2)计算marksd,按公式(3)计算marksrc,并将两个32bit字段嵌入数据包头,发送该数据包。
节点路由设备R1为第一跳,按图8所示流程完成操作:
节点路由设备R1的源和路径验证模块首先从路径信息判断自身所属节点路由设备是第一跳,节点路由设备按公式(3)计算marksrc,如验证通过,则根据公式(4)更新markr为节点路由设备验证码字段,执行更新操作后向R2传输。不通过时过滤数据包。
节点路由设备R2的源和路径验证模块首先判断自己是中间路由节点,路由设备按公式(4)计算markr验证码,验证通过后根据公式(4)为R3制作一个验证码,执行更新操作后向R3传输。不通过时过滤数据包。R3和R2的操作与R2一致。
节点路由设备R4的源和路径验证模块首先判断判断自身所属节点路由设备是最后一跳节点,按公式(4)计算markr验证码,验证通过后根据公式(3)为目的用户节点生成验证码,执行更新操作后向目的节点传输。不通过时过滤数据包。
需要说明的是,所有过滤操作都可以在路由设备保存一个计数器,向本管理域上报,但并不是强制要求。
如图8所示,目的用户H2收到第一个数据包后向控制服务器请求本次传输路径上最后一跳节点的动态标签信息,得到R4对应200的主机验证标签为uTag4_3_200,对应201的主机验证标签为uTag4_3_201,以及源和目的用于会话的标签tagsd。
对每个数据包,H2按公式(2)计算marksd,按公式(3)计算markd,2个验证码均正确,对应的计数器sCounter加1。其中一个以上出现错误,则对应的计数器fCounter加1。
一个时间片结束后,目的用户节点H2根据公式(1)得到该时间片内的传输策略(总的数据包量为3000),验证本时间片传输数据包总量是否符合传输策略。
设各路由设备sCounter值为2979,fCounter值为0,总量上下限为3000*0.95=2850, 3000*1.05=3150,数据包数量符合要求。
该时间片数据包通过验证,H2向H1发一个ACK,即将flag最低位置1,其余包头字段与普通数据包一致,使用tagsd加密一个成功标志作为数据包的负载,向源端发送。
H2清空上一epoch数据,继续验证下一epoch数据包。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (10)
1.一种基于动态标签的源和路径验证机制,其特征在于,包括:
管理域下的用户节点进行数据通信时,源用户节点向所述管理域的控制服务器发送标签分发请求,并接收所述控制服务器发送的数据通信传输路径上所有节点路由设备的标签信息;
所述源用户节点将发往目的用户节点的通信数据和基于所述标签信息和数据包头生成的验证码打包形成数据包,沿传输路径发送所述数据包;
沿所述传输路径上的节点路由设备依次接收数据包,对验证码进行解析验证,验证通过后转发数据包至传输路径上的下一节点路由设备,依序发送直至所述目的用户节点。
2.根据权利要求1所述的基于动态标签的源和路径验证机制,其特征在于,所述控制服务器配置路由设备信息模块和标签分发模块;其中,
所述路由设备信息模块用于存储路由设备信息;包括管理域内节点路由设备的设备标识,以及与相邻节点路由设备的连接关系;
所述标签分发模块用于从路由设备信息模块获取节点路由设备标识id,并根据所述节点路由设备标识id,向节点路由设备下发动态标签。
3.根据权利要求2所述的基于动态标签的源和路径验证机制,其特征在于,所述标签分发模块维护所述节点路由设备的设备标识对应的动态标签,并下发至所述节点路由设备;其中,不同节点路由设备的动态标签以节点路由设备上一跳相邻节点路由设备和标签指示符(indicator)进行区分,使用时隙编号作为所述标签指示符的组成部分,对源用户节点和路径验证,不同时隙、不同节点路由设备具有不同的动态标签。
4.根据权利要求1所述的基于动态标签的源和路径验证机制,其特征在于,所述管理域的节点路由设备配置标签预置模块及源和路径验证模块;其中,
所述标签预置模块用于接收和存储所述标签分发模块分发的动态标签;
所述源和路径验证模块用于路由设备标识对比、验证码添加、数据包过滤、验证码更新操作;
所述源和路径验证模块进行源和路径验证时,第一跳的节点路由设备验证源用户节点的验证码;传输路径途经的节点路由设备之间逐跳验证路由设备验证码,进行路径验证;最后一跳的目的用户节点验证由目的用户节点动态标签生成的验证码,完成源与路径的验证。
5.根据权利要求1所述的基于动态标签的源和路径验证机制,其特征在于,所述标签信息包含所述控制服务器为传输路径上全部节点路由设备分发的动态标签及源与目的用户节点通信的会话标签。
6.根据权利要求5所述的基于动态标签的源和路径验证机制,其特征在于,源和路径验证是基于时间片进行;将源与目的用户节点通信的会话标签tagsd与当前时间片epoch字段计算得到验证码N,表示为公式(1):
其中,MAC(.)为验证码生成方式;采用以tag为密钥的AES加密,或包含tag的SIPHASH验证码生成算法;
源用户节点根据N确定该时间片对应的数据包数量:每个时间片基础的数据包数量为M个,M_ADD为N对M做取模运算,最后得到该时间片数据包数量为N+M_ADD个;
源用户初始化数据包的数据包头,根据数据包头为目的用户节点设置验证码,如公式(2)所示:
其中,flag字段表明是源或路径验证的数据包,epoch字段为当前的时间片编号,seq为序列号,indicator为当前时隙,id1...idn为路径上的节点路由设备标识,payload为数据包负载或部分负载,H(.)表示哈希运算。
7.根据权利要求6所述的基于动态标签的源和路径验证机制,其特征在于,对每个数据包,源用户节点为传输路径上第一跳节点生成marksrc字段,表示为公式(3):
marksrc=MACtag(cstpkt||idi-1||idi) (3)
其中,cstpkt为初始化的数据包头的固定字段,包括flag字段、epoch字段、seq字段、路径上的节点路由设备标识及marksd字段;
从源用户节点起,沿传输路径第一跳传输至第一节点路由设备后,第一路由节点设备根据公式(3)计算验证码,验证正确后依据公式(4)进行路径验证码添加:
更新路径验证码字段,向下一跳i+1传送;
传输路径上的节点路由设备根据公式(4)计算markr,与数据包头中的markr进行对比,相同则合法,并为下一跳生成及添加验证码markr;不同则过滤对应数据包;依序进行验证;
最后一跳,从传输路径上的第n节点路由设备传输至目的用户节点时,目的用户节点接收第一个数据包后,向控制服务器请求本次传输路径上最后一跳节点的动态标签以及本次会话的会话标签。
8.根据权利要求7所述的基于动态标签的源和路径验证机制,其特征在于,对每个数据包,目的用户节点为每个会话保持两个计数器sCounter和fCounter;其中,sCounter用于记录一个时间片成功的数据包总量,fCounter用于记录该时间片失败的数据包总量,根据包头信息和动态标签,按公式(2)计算marksd,公式(3)计算marksrc,2个验证码均正确,sCounter加1,否则过滤该数据包,且fCounter加1。
9.根据权利要求8所述的基于动态标签的源和路径验证机制,其特征在于,一个时间片结束后,目的用户节点根据公式(1)计算相应时间片内的数据包量,验证相应时间片传输数据包总量是否符合传输策略,即对所有sCounter的总量Ts,减去fCounter的总量Tf,是否满足:
(M+M_ADD)*θl<Ts-Tf<(M+M_ADD)*θh (5)
其中θh、θl为表示上下限的阈值,M+M_ADD为数据包总量。
10.根据权利要求7所述的基于动态标签的源和路径验证机制,其特征在于,源和路径验证通过后,目的用户节点向源用户节点发送确认信息包;为区分数据包和确认信息包,在flag字段最低位设置为1表示确认信息包,置0表示数据包。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111322118.2A CN114499920B (zh) | 2021-11-09 | 2021-11-09 | 一种基于动态标签的源和路径验证机制 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111322118.2A CN114499920B (zh) | 2021-11-09 | 2021-11-09 | 一种基于动态标签的源和路径验证机制 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114499920A true CN114499920A (zh) | 2022-05-13 |
CN114499920B CN114499920B (zh) | 2022-12-06 |
Family
ID=81492642
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111322118.2A Active CN114499920B (zh) | 2021-11-09 | 2021-11-09 | 一种基于动态标签的源和路径验证机制 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114499920B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115720147A (zh) * | 2022-09-30 | 2023-02-28 | 西安交通大学 | 一种支持路径隐藏的路径验证方法、系统和存储介质 |
WO2023232071A1 (zh) * | 2022-06-01 | 2023-12-07 | 华为技术有限公司 | 一种源地址验证的方法、网络设备及通信系统 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103918307A (zh) * | 2011-11-03 | 2014-07-09 | 高通股份有限公司 | 基于递送路径变化的分组排序 |
CN105847034A (zh) * | 2016-03-16 | 2016-08-10 | 清华大学 | 源验证和路径认证方法及装置 |
CN110213242A (zh) * | 2019-05-09 | 2019-09-06 | 浙江大学 | 一种多路路由背景下的高效路径验证方法 |
CN111541696A (zh) * | 2020-04-24 | 2020-08-14 | 清华大学 | 随机认证嵌入的快速源和路径验证方法 |
CN111541611A (zh) * | 2020-04-24 | 2020-08-14 | 清华大学 | 基于认证分片可重组的动态路径验证方法 |
US20210099464A1 (en) * | 2019-09-30 | 2021-04-01 | International Business Machines Corporation | Network transmission path verification |
CN113329007A (zh) * | 2021-05-26 | 2021-08-31 | 首都师范大学 | IPv6传输路径分段认证方法以及装置 |
CN113507473A (zh) * | 2021-07-13 | 2021-10-15 | 浙江大学 | 一种基于聚合认证的高效网络路径认证方法 |
-
2021
- 2021-11-09 CN CN202111322118.2A patent/CN114499920B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103918307A (zh) * | 2011-11-03 | 2014-07-09 | 高通股份有限公司 | 基于递送路径变化的分组排序 |
CN105847034A (zh) * | 2016-03-16 | 2016-08-10 | 清华大学 | 源验证和路径认证方法及装置 |
CN110213242A (zh) * | 2019-05-09 | 2019-09-06 | 浙江大学 | 一种多路路由背景下的高效路径验证方法 |
US20210099464A1 (en) * | 2019-09-30 | 2021-04-01 | International Business Machines Corporation | Network transmission path verification |
CN111541696A (zh) * | 2020-04-24 | 2020-08-14 | 清华大学 | 随机认证嵌入的快速源和路径验证方法 |
CN111541611A (zh) * | 2020-04-24 | 2020-08-14 | 清华大学 | 基于认证分片可重组的动态路径验证方法 |
CN113329007A (zh) * | 2021-05-26 | 2021-08-31 | 首都师范大学 | IPv6传输路径分段认证方法以及装置 |
CN113507473A (zh) * | 2021-07-13 | 2021-10-15 | 浙江大学 | 一种基于聚合认证的高效网络路径认证方法 |
Non-Patent Citations (4)
Title |
---|
BO WU: "Enabling Efficient Source and Path Verification via Probabilistic Packet Marking", 《 2018 IEEE/ACM 26TH INTERNATIONAL SYMPOSIUM ON QUALITY OF SERVICE (IWQOS)》 * |
JIQIANG XIA: "SRCV: A Source Routing based Consistency Verification Mechanism in SDN", 《2021 3RD INTERNATIONAL CONFERENCE ON ADVANCES IN COMPUTER TECHNOLOGY, INFORMATION SCIENCE AND COMMUNICATION (CTISC)》 * |
SONGTAO FU: "MASK: Practical Source and Path Verification based on Multi-AS-Key", 《2021 IEEE/ACM 29TH INTERNATIONAL SYMPOSIUM ON QUALITY OF SERVICE (IWQOS)》 * |
荆一楠等: "一种无日志的快速DDoS攻击路径追踪算法", 《小型微型计算机系统》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023232071A1 (zh) * | 2022-06-01 | 2023-12-07 | 华为技术有限公司 | 一种源地址验证的方法、网络设备及通信系统 |
CN115720147A (zh) * | 2022-09-30 | 2023-02-28 | 西安交通大学 | 一种支持路径隐藏的路径验证方法、系统和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114499920B (zh) | 2022-12-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Murphy et al. | OSPF with digital signatures | |
Murphy et al. | Digital signature protection of the OSPF routing protocol | |
CN101536395B (zh) | 人类输入安全码 | |
US20060077908A1 (en) | Method for generating and authenticating address automatically in IPv6-based internet and data structure thereof | |
CN114499920B (zh) | 一种基于动态标签的源和路径验证机制 | |
CN105847034B (zh) | 源验证和路径认证方法及装置 | |
US6425004B1 (en) | Detecting and locating a misbehaving device in a network domain | |
US8843751B2 (en) | IP address delegation | |
EP2329621B1 (en) | Key distribution to a set of routers | |
JP6484519B2 (ja) | ゲートウェイ装置およびその制御方法 | |
US8312263B2 (en) | System and method for installing trust anchors in an endpoint | |
US9628454B2 (en) | Signalling delegation in a moving network | |
CN113329007B (zh) | IPv6传输路径分段认证方法以及装置 | |
CN111726368B (zh) | 一种基于SRv6的域间源地址验证的方法 | |
CN107342964B (zh) | 一种报文解析方法及设备 | |
CN108599939A (zh) | 一种认证方法和装置 | |
CN102668450B (zh) | 基于身份的网络策略实现方法 | |
CN114389835A (zh) | 一种IPv6选项显式源地址加密安全验证网关及验证方法 | |
JP4222403B2 (ja) | 不正端末推定システム、不正端末推定装置及び通信端末装置 | |
CN113395247A (zh) | 一种防止对SRv6 HMAC校验进行重放攻击的方法和设备 | |
CN113507434B (zh) | 一种通信网络中的数据安全传输方法、节点和系统 | |
CN114710316B (zh) | 带内遥测数据验证方法及白盒交换机 | |
CN101394275B (zh) | 一种实现路由安全的方法、系统及设备 | |
WO2022174739A1 (zh) | 报文发送方法、签名信息的生成方法及设备 | |
CN114666039B (zh) | 基于量子密码网络的rfid群组标签认证系统及方法 |
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 |