CN111385278A - 一种报文转发方法及装置 - Google Patents
一种报文转发方法及装置 Download PDFInfo
- Publication number
- CN111385278A CN111385278A CN201811652773.2A CN201811652773A CN111385278A CN 111385278 A CN111385278 A CN 111385278A CN 201811652773 A CN201811652773 A CN 201811652773A CN 111385278 A CN111385278 A CN 111385278A
- Authority
- CN
- China
- Prior art keywords
- authentication
- message
- forwarding
- value
- algorithm
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
-
- 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/08—Network architectures or network communication protocols for network security for authentication of entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请实施例提供一种报文转发方法及装置,涉及通信领域,在数据网络中报文转发时实现高安全性的逐段路径鉴权。具体包括:通过安全通道,接收第一鉴权参数及鉴权算法;接收第一报文,第一报文包括每个鉴权位置的第一鉴权值;将第一鉴权参数以及每个鉴权位置的鉴权参考信息,进行上述鉴权算法,得到每个鉴权位置的第二鉴权值;若每个鉴权位置的第二鉴权值与各自的第一鉴权值相同,将第一报文转发。本申请用于转发报文。
Description
技术领域
本申请涉及通信领域,尤其涉及一种报文转发方法及装置。
背景技术
信息化时代,数据网络中的信息传递尤为重要,报文从源端经过转发设备的转发到达目的端,完成传输。例如,通信网络或者计算机网络中传输报文实现信息传递。
主流转发设备如路由器、交换机或者软件转发设备,采用控制面和转发面分离的架构,由控制面实现转发表项的生成下发,由转发面按照转发表项逐跳转发报文。在报文传输过程中的安全性,关系到整个网络的性能,因此,报文转发时的鉴权环节必不可少。当前,转发设备的控制面有成熟的鉴权方法,转发面有端到端的加密、鉴权方法(例如互联网协议安全性(internet protocol security,IPSEC)鉴权)。
在报文转发过程中,非法节点伪装成合法的转发设备,通过抓包等方式获取到合法节点间通信的地址、报文格式等,发送格式相同的报文(非法报文)到合法节点与其他转发设备通信,以攻击数据网络。而端到端的鉴权方式,导致合法的转发节点无法识别非法报文,只能到最终业务节点通过业务来识别非法报文,攻击流量较大时将消耗大量带宽,造成业务节点的负荷增加。因此,逐段路径的鉴权方法急需应用于数据网络,以提高网络安全。
但是,若将当前端到端的鉴权方法,如IPSEC加密鉴权、接入键标识(Access KeyIDentity,AK)/安全接入键(Secret Access key,SK)鉴权等应用于转发节点进行逐段路径鉴权,非法节点无需获知报文内容,通过抓包发送相同的报文,依然对数据网络造成攻击。因此,实现安全性高的逐段路径鉴权成为亟待解决的问题。
发明内容
本申请实施例提供一种报文转发方法、装置及系统,在数据网络中报文转发时实现高安全性的逐段路径鉴权。
为达到上述目的,本申请的实施例采用如下技术方案:
本申请的第一方面,提供一种报文转发方法,应用于转发设备,该方法可以包括:通过安全通道,接收第一鉴权参数及鉴权算法;接收第一报文,第一报文包括一个或多个鉴权位置的第一鉴权值;将第一鉴权参数以及每个鉴权位置的鉴权参考信息,进行上述鉴权算法,得到每个鉴权位置的第二鉴权值;若每个鉴权位置的第二鉴权值与各自的第一鉴权值相同,将第一报文转发。
通过本申请提供的报文转发方法,鉴权参数和鉴权算法通过安全通道集中配置,每个转发设备按照本申请提供的报文转发方法,根据接收的鉴权参数和鉴权算法对接收的报文进行鉴权,实现报文转发时的逐段路径鉴权。由于通过安全通道集中配置鉴权参数和鉴权算法,非法设备无法抓包获取鉴权参数和鉴权算法,提高了鉴权的安全性。并且,集中配置的方式可以不断更新鉴权参数,提高鉴权的安全性,并且更新过程简单易行,即使路由节点增加或者变更,集中控制的架构都可以快速配置。
其中,鉴权位置是指报文鉴权过程中的鉴权次数,并不是指示一个具体位置。一个鉴权位置是指全局共知的一次鉴权,每个鉴权位置具有各自的鉴权参考信息,且不同鉴权位置的鉴权参考信息内容不同,可以根据实际需求配置一个或多个鉴权位置。当配置的鉴权位置越多,鉴权的安全性越高,但是实现也将复杂。
需要说明的是,每个鉴权位置的第二鉴权值与各自第一鉴权值相同,是指每个鉴权位置的第二鉴权值与该鉴权位置的第一鉴权值相同。此处描述的各自,其前后的内容对属于同一个鉴权位置,也就是说,一个鉴权位置的第二鉴权值与该鉴权位置的第一鉴权值进行对比。后续内容对此不再一一说明。
结合第一方面,在一种可能的实现方式中,为了避免报文传输过程中鉴权参数更新导致的鉴权不成功,可以将满足预设条件的鉴权参数保存为鉴权参数集合用于鉴权。本申请提供的报文转发的方法还可以包括:若存在一个或多个鉴权位置的第二鉴权值与各自的第一鉴权值不同,判断鉴权参数集合中是否存在第二鉴权参数;其中,鉴权参数集合中包括在第一鉴权参数之前接收的一个或多个满足预设条件的鉴权参数;第二鉴权参数与每个鉴权位置的鉴权参考信息进行鉴权算法的第三鉴权值与各自的第一鉴权值相同;若鉴权参数集合中存在第二鉴权参数,将第一报文中每个鉴权位置的第一鉴权值替换为各自的第三鉴权值后转发;若鉴权参数集合中不存在第二鉴权参数,将第一报文丢弃。
其中,鉴权参数集合中包括集中配置的一个或多个鉴权参数,目的是在报文传输过程中若鉴权参数更新,则可以采用新旧鉴权参数均可以成功鉴权。当鉴权参数集合中包括第二鉴权参数时,说明第一报文采用旧的鉴权参数加密,则通过鉴权并更新鉴权值用于后续节点进行鉴权。当鉴权参数集合中不包括第二鉴权参数时,说明第一报文鉴权失败确认为非法报文,将其丢弃。
结合第一方面或上述任一种可能的实现方式,在另一种可能的实现方式中,预设条件可以包括:第一鉴权参数的前N个鉴权参数;N大于或等于1。其中,第一鉴权参数的前N个鉴权参数,是指从第一鉴权参数的前一个鉴权参数,按照接收顺序从后往前数的N个鉴权参数。通过预设条件,将一个或多个旧的鉴权参数保留,以便于更新鉴权参数阶段传输的报文能够正确鉴权。
结合第一方面或上述任一种可能的实现方式,在另一种可能的实现方式中,预设条件可以包括:接收时间在接收第一鉴权参数之前预设时长内。通过预设条件,将一个或多个旧的鉴权参数保留,以便于新旧鉴权参数阶段传输的报文能够正确鉴权。
结合第一方面或上述任一种可能的实现方式,在另一种可能的实现方式中,在一些特殊场景中,并不存在新旧鉴权参数过渡阶段的缓冲,在这些场景中,若存在一个或多个鉴权位置的第二鉴权值与各自的第一鉴权值不同,即可确定鉴权失败判断第一报文为非法报文。该特殊场景可以包括故障后的下发鉴权参数,包括转发设备故障后的请求下发,或者,安全控制装置故障后的主动下发。因此,当存在一个或多个鉴权位置的第二鉴权值与各自的第一鉴权值不同时,可以先判断是否为特殊场景,若是特殊场景,则确定鉴权失败判断第一报文为非法报文直接丢弃,若判断不是特殊场景,则执行判断鉴权参数集合中是否存在第二鉴权参数。这样一来,加快了鉴权参数的时效,增加了非法设备碰撞获取鉴权值的难度,更进一步提高了鉴权的安全性。
结合第一方面或上述任一种可能的实现方式,在另一种可能的实现方式中,本申请提供的报文转发方法还包括:转发设备发生故障时,在故障恢复后,转发设备请求获取最新的鉴权参数,用于准确鉴权。请求获取最新的鉴权参数可以通过发送请求信息的方式实现。
在一种可能的实现中,转发设备中控制面与转发面分离,当控制面故障且恢复后,控制面请求安全控制装置发送当前最新的鉴权参数;当转发面故障且恢复后,转发面请求控制面发送当前最新的鉴权参数。
在一种可能的实现中,转发设备中控制面与转发面未分离,转发设备内部配置逻辑模块与安全控制装置通信,当转发设备故障且恢复后,转发设备通过逻辑模块安全控制装置发送当前最新的鉴权参数。
结合第一方面或上述任一种可能的实现方式,在另一种可能的实现方式中,为了提高鉴权安全性,当新的鉴权参数下发即启动,可以不考虑新旧鉴权参数的过渡,本申请提供的报文转发方法还可以包括:若存在一个或多个鉴权位置的第二鉴权值与各自的第一鉴权值不同,将第一报文丢弃。
结合第一方面或上述任一种可能的实现方式,在另一种可能的实现方式中,鉴权参数可以包括:密钥,或者,随机数,或者,盐值。鉴权参数即用于鉴权的参考值,本申请实施例对鉴权参数的实际内容不进行具体限定。鉴权参数可以由安全控制装置生成,也可以由管理员向安全控制装置输入。
结合第一方面或上述任一种可能的实现方式,在另一种可能的实现方式中,鉴权算法可以包括:加密哈希HASH算法,或者,非加密HASH算法。鉴权算法可以由安全控制装置生成,也可以由管理员向安全控制装置输入。
需要说明的是,在进行报文转发时,可以保持鉴权算法不变,只是不断更新鉴权参数,也可以鉴权参数和鉴权算法均不断更新,本申请对此不进行具体限定。
结合第一方面或上述任一种可能的实现方式,在另一种可能的实现方式中,鉴权参考信息可以包括下述信息中一项或多项:第一报文的源地址、第一报文的目的地址、递增序列号、第一报文中数据的部分或全部、一个或多个其他鉴权位置的第二鉴权值。
一种可能的实现中,不同鉴权位置的鉴权参考信息可以包括第一报文中数据的不同部分。
另一种可能的实现中,不同鉴权位置的鉴权参考信息可以包括第一报文中数据的同一部分,以及一个或多个其他鉴权位置的第二鉴权值。
其中,递增序列号为报文中携带的一个简单递增的字段,本申请对递增序列号的内容不进行具体限定。
结合第一方面或上述任一种可能的实现方式,在另一种可能的实现方式中,若执行本申请的报文转发方法的转发设备作为报文转发路径上的第一个转发设备时,本申请提供的方法还可以包括:从源设备接收第二报文;将第一鉴权参数以及每个鉴权位置的鉴权参考信息,分别进行鉴权算法的鉴权值填入第二报文;将填写了鉴权值的第二报文转发。后续转发节点即可按照本申请提供的报文转发方法对第二报文进行逐段路径鉴权。
结合第一方面或上述任一种可能的实现方式,在另一种可能的实现方式中,若执行本申请的报文转发方法的转发设备作为报文转发路径上的最后一个转发设备时,将第一报文转发可以包括:将第一报文中的鉴权报文头剥离后转发至业务模块,实现数据处理。
结合第一方面或上述任一种可能的实现方式,在另一种可能的实现方式中,安全通道可以包括IPSEC通道,或者,传输层安全性协议(transport layer security,TLS)通道,或者其他,本申请对此不进行具体限定。
需要说明的是,本申请中描述的将报文转发,是指根据路由表项查找下一跳转发,对于路由表项的内容、获取以及查找转发过程,本文不再一一赘述。
本申请的第二方面,提供另一种报文转发方法,应用于安全控制装置,该方法可以包括:获取当前周期的鉴权参数,不同周期的鉴权参数不同;获取当前周期的鉴权算法;使用安全通道,向控制的每个转发设备发送当前周期的鉴权参数以及鉴权算法,用于转发设备转发报文。
通过本申请提供的报文转发方法,安全控制装置通过安全通道集中配置鉴权参数和鉴权算法,每个转发设备在转发报文时根据配置的鉴权参数及鉴权算法进行鉴权,实现报文转发时的逐段路径鉴权。由于通过安全通道集中配置鉴权参数和鉴权算法,非法设备无法抓包获取鉴权参数和鉴权算法,提高了鉴权的安全性。并且,集中配置的方式可以不断更新鉴权参数,提高鉴权的安全性,并且更新过程简单易行,即使路由节点增加或者变更,集中控制的架构都可以快速配置。
需要说明的是,安全控制装置可以在每个周期执行该方法,也可以在发生故障且故障恢复重启后执行该方法,本申请对于该方法的执行条件不进行具体限定。本文所称周期的时长,可以根据实际需求配置,本申请对此不进行具体限定。
结合第二方面,在一种可能的实现方式中,鉴权参数可以包括:密钥,或者,随机数,或者,盐值。
结合第二方面或上述任一种可能的实现方式,在一种可能的实现方式中,鉴权算法可以包括:加密HASH算法,或者,非加密HASH算法。通过使用非加密HASH算法,降低鉴权时的性能消耗。
结合第二方面或上述任一种可能的实现方式,在一种可能的实现方式中,获取当前周期的鉴权参数,可以包括:生成当前周期的鉴权参数;或者,通过安全通道,接收管理员输入的当前周期的鉴权参数。
结合第二方面或上述任一种可能的实现方式,在一种可能的实现方式中,本申请提供的报文转发方法还可以包括:接收第一转发设备发送的请求消息,该请求消息用于请求最新的鉴权参数,第一转发设备为安全控制装置控制的任一转发设备;通过安全通道,向第一转发设备发送最新的鉴权参数。
本申请的第三方面,提供一种报文转发装置,包括:接收单元、处理单元以及发送单元。其中,接收单元用于,通过安全通道,接收第一鉴权参数及鉴权算法;接收单元还用于,接收第一报文,第一报文包括一个或多个鉴权位置的第一鉴权值;处理单元用于,将接收单元接收的第一鉴权参数,以及每个鉴权位置的鉴权参考信息,进行鉴权算法,得到每个鉴权位置的第二鉴权值;处理单元还用于,判断每个鉴权位置的第二鉴权值与各自的第一鉴权值是否相同;所述发送单元用于,若处理单元判断每个鉴权位置的第二鉴权值与各自的第一鉴权值相同,将第一报文转发。
通过本申请提供的报文转发装置,鉴权参数和鉴权算法通过安全通道集中配置,每个转发设备按照本申请提供的报文转发方法,根据接收的鉴权参数和鉴权算法对接收的报文进行鉴权,实现报文转发时的逐段路径鉴权。由于通过安全通道集中配置鉴权参数和鉴权算法,非法设备无法抓包获取鉴权参数和鉴权算法,提高了鉴权的安全性。并且,集中配置的方式可以不断更新鉴权参数,提高鉴权的安全性,并且更新过程简单易行,即使路由节点增加或者变更,集中控制的架构都可以快速配置。
需要说明的是,本申请第三方面提供的报文转发装置,用于实现上述第一方面以及第一方面中任一种可能的实现方式提供的报文转发方法,因此,本申请第三方面提供的报文转发装置的具体实现,可以参照上述第一方面以及第一方面中任一种可能的实现方式提供的报文转发方法的具体实现,此处不再进行赘述。
本申请的第四方面,提供另一种报文转发装置,包括:获取单元及发送单元;其中,获取单元,用于获取当前周期的鉴权参数,不同周期的鉴权参数不同;获取单元还用于,获取鉴权算法;发送单元,用于使用安全通道,向控制的每个转发设备发送获取单元获取的当前周期鉴权参数及鉴权算法,用于每个转发设备转发报文。
通过本申请提供的报文转发装置,安全控制装置通过安全通道集中配置鉴权参数和鉴权算法,每个转发设备在转发报文时根据配置的鉴权参数及鉴权算法进行鉴权,实现报文转发时的逐段路径鉴权。由于通过安全通道集中配置鉴权参数和鉴权算法,非法设备无法抓包获取鉴权参数和鉴权算法,提高了鉴权的安全性。并且,集中配置的方式可以不断更新鉴权参数,提高鉴权的安全性,并且更新过程简单易行,即使路由节点增加或者变更,集中控制的架构都可以快速配置。
需要说明的是,本申请第四方面提供的报文转发装置,用于实现上述第二方面以及第二方面中任一种可能的实现方式提供的报文转发方法,因此,本申请第四方面提供的报文转发装置的具体实现,可以参照上述第二方面以及第二方面中任一种可能的实现方式提供的报文转发方法的具体实现,此处不再进行赘述。
本申请的第五方面,本申请提供了一种报文转发装置,该报文转发装置可以实现上述方法示例中的转发设备的功能,所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个上述功能相应的模块。该一种报文转发装置可以以芯片的产品形态存在。
结合第五方面,在一种可能的实现方式中,该报文转发装置的结构中包括处理器和收发器,该处理器被配置为支持该报文转发装置执行上述方法中相应的功能。该收发器用于支持该报文转发装置与其他设备之间的通信。该报文转发装置还可以包括存储器,该存储器用于与处理器耦合,其保存该报文转发装置必要的程序指令和数据。
本申请的第六方面,本申请提供了一种报文转发装置,该报文转发装置可以实现上述方法示例中的安全控制装置的功能,所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个上述功能相应的模块。该一种报文转发装置可以以芯片的产品形态存在。
结合第六方面,在一种可能的实现方式中,该报文转发装置的结构中包括处理器和收发器,该处理器被配置为支持该报文转发装置执行上述方法中相应的功能。该收发器用于支持该报文转发装置与其他设备之间的通信。该报文转发装置还可以包括存储器,该存储器用于与处理器耦合,其保存该报文转发装置必要的程序指令和数据。
本申请的第七方面,提供一种转发设备,该转发设备包括执行上述第一方面或第一方面的任一种可能的实现方式提供的报文转发方法的报文转发装置。
本申请的第八方面,提供一种安全控制装置,该安全控制装置包括执行上述第二方面或第二方面的任一种可能的实现方式提供的报文转发方法的报文转发装置。
本申请的第九方面,提供一种报文转发系统,包括安全控制装置,以及一个或多个转发设备。
本申请的第十方面,提供了一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行上述任一方面或任一种可能的实现方式提供的报文转发方法。
本申请的第十一方面,提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一方面或任一种可能的实现方式提供的报文转发方法。
其中,需要说明的是,上述各个方面中的任意一个方面的各种可能的实现方式,在方案不矛盾的前提下,均可以进行组合。
附图说明
图1为现有技术提供的一种数据网络的架构示意图;
图1a为本申请实施例提供的一种数据网络的架构示意图;
图2为本申请实施例提供的一种转发设备的结构示意图;
图3为本申请实施例提供的一种安全控制装置的结构示意图;
图4为本申请实施例提供的一种报文转发方法的流程示意图;
图5为本申请实施例提供的一种报文格式示意图;
图6为本申请实施例提供的一种报文转发装置的结构示意图;
图7为本申请实施例提供的另一种报文转发装置的结构示意图;
图8为本申请实施例提供的再一种报文转发装置的结构示意图;
图9为本申请实施例提供的又一种报文转发装置的结构示意图。
具体实施方式
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”和“第四”等是用于区别不同对象,而不是用于限定特定顺序。
在本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
在本申请实施例中描述的A、B、C中的一项或多项,用于表示下述概念:A,或者B,或者C,或者A和B,或者,A和C,或者,B和C,或者,A、B以及C.
本申请提出一种报文转发方法及装置,在数据网络中报文转发时实现高安全性的逐段路径鉴权,其基本原理是:部署安全控制装置,由安全控制装置向转接设备配置鉴权参数以及鉴权算法,并不断更新鉴权参数,避免非法主机抓包或碰撞的方式获取鉴权参考信息进行伪装,提高了报文转发的安全性。
本申请提供的报文转发方法,应用于如图1所示的数据网络10中,数据网络10可以为通信网络,也可以为计算机网络,本申请对数据网络的类型不进行具体限定。如图1所示,数据网络10中包括:发送设备101、一个或多个转发设备102、接收设备103以及转发控制设备104。
其中,转发控制设备104根据实际需求配置路由表(也可以称之为转发表项),路由表中包括了传输路径中每一跳的具体指示,用于转发设备102转发报文。发送设备101通过传输路径向接收设备103发送报文,该传输路径上包括一个或多个转发设备102,具体的传输路径由路由表中体现,转发设备102查询路由表获取下一跳即可转发报文。
需要说明的是,数据网络10包括的各个设备的数量以及具体架构,可以根据实际需求配置,本申请实施例对于数据网络10的规模及具体架构均不进行限定。
需要说明的是,本申请中描述的转发设备,可以为路由器或者交换机或者其他,本申请对于转发设备的实际形态不进行具体限定。
如图1a所示,在图1示意的数据网络10中,部署安全控制装置105,用于向转接设备配置鉴权参数以及鉴权算法。安全控制装置105,通过安全通道与其控制的至少一个转发设备102连接,向转发设备102配置鉴权参数以及鉴权算法。
一种可能的实现中,如图1a所示,安全控制装置105与网络管理员中间使用安全通道通信。
一种可能的实现中,安全控制装置105可以与转发控制设备104分别部署(图1a示意),安全控制装置105可以部署在转发控制设备104中作为功能单元(图中未示意),本申请对于安全控制装置105的部署方式不进行具体限定。
下面结合附图,对本申请的实施例进行具体阐述。
一方面,本申请实施例提供一种转发设备20。图2示出的是与本申请各实施例相关的一种转发设备20。如图2所示,转发设备20可以包括处理器201、存储器202以及收发器203。
下面结合图2对转发设备20的各个构成部件进行具体的介绍:
其中,存储器202可以是易失性存储器(volatile memory),例如随机存取存储器(random-access memory,RAM);或者非易失性存储器(non-volatile memory),例如只读存储器(read-only memory,ROM),快闪存储器(flash memory),硬盘(hard disk drive,HDD)或固态硬盘(solid-state drive,SSD);或者上述种类的存储器的组合,用于存储可实现本申请方法的程序代码、配置文件、路由表。
处理器201是转发设备20的控制中心,可以是一个中央处理器(centralprocessing unit,CPU),也可以是特定集成电路(application specific integratedcircuit,ASIC),或者是被配置成实施本申请实施例的一个或多个集成电路,例如:一个或多个微处理器(digital singnal processor,DSP),或,一个或者多个现场可编程门阵列(field programmable gate array,FPGA)。
收发器203用于与其他设备之间通信以及数据传输。
一种可能的实现中,转发设备20可以配置为控制面和转发面分离(图2中未示出),由控制面生成路由表、接收用于鉴权的鉴权参数以及鉴权算法,并将路由表、鉴权参数以及鉴权算法发送至转发面,由转发面进行鉴权及报文转发。
一种可能的实现中,转发设备20也可以控制面和转发面不分离,此时,转发设备20可以配置逻辑模块,用于接收用于鉴权的鉴权参数以及鉴权算法。
具体的,处理器21通过运行或执行存储在存储器202内的软件程序和/或模块,以及调用存储在存储器202内的数据,执行如下功能:
通过安全通道,接收第一鉴权参数及鉴权算法,并存储到存储器202中;接收第一报文,第一报文包括一个或多个鉴权位置的第一鉴权值;将第一鉴权参数以及每个鉴权位置的鉴权参考信息,进行鉴权算法,得到每个鉴权位置的第二鉴权值;若每个鉴权位置的第二鉴权值与各自的第一鉴权值相同,将第一报文按照路由表转发。
另一方面,本申请实施例提供一种安全控制装置30。该安全控制装置30可以部署在图1示意的数据网络10中的转发控制设备104中,作为转发控制设备104的功能模块或者,该安全控制装置30也可以独立部署,本申请实施例对于安全控制装置30在部署位置不进行具体限定。安全控制装置30用于控制转发设备,向转发设备集中配置鉴权参数及鉴权算法;安全控制装置30还用于向控制的转发设备不断更新鉴权参数。
图3示出的是与本申请各实施例相关的一种安全控制装置30。如图3所示,安全控制装置30可以包括:处理器301、存储器302、收发器303。
下面结合图3对安全控制装置30的各个构成部件进行具体的介绍:
存储器302,可以是易失性存储器(volatile memory),例如RAM;或者non-volatile memory,例如只读存储器(read-only memory,ROM),快闪存储器(flashmemory),HDD或SSD;或者上述种类的存储器的组合,用于存储可实现本申请方法的程序代码、以及配置文件。
处理器301是安全控制装置30的控制中心,可以是一个CPU,也可以是ASIC,或者是被配置成实施本申请实施例的一个或多个集成电路,例如:一个或多个DSP,或,一个或者多个FPGA。处理器301可以通过运行或执行存储在存储器302内的软件程序和/或模块,以及调用存储在存储器302内的数据,执行安全控制装置30的各种功能。
收发器303用于安全控制装置30与其他单元进行交互。示例性的,收发器303可以为安全控制装置30的收发端口。
具体的,处理器301通过运行或执行存储在存储器302内的软件程序和/或模块,以及调用存储在存储器302内的数据,执行如下功能:
获取当前周期的鉴权参数,不同周期的鉴权参数不同;获取当前周期的鉴权算法;使用安全通道,通过收发器303向控制的每个转发设备发送当前周期的鉴权参数以及鉴权算法,用于转发设备转发报文。
再一方面,本申请实施例提供一种报文转发方法,如图4所示,该方法可以包括:
S401、安全控制装置获取当前周期的鉴权参数,不同周期的鉴权参数不同。
一种可能的实现中,安全控制装置可以周期性的执行S401,该周期可以是一个时间段,也可以是一个报文传输阶段或者其他,本申请实施例对于该周期的长短不进行具体限定。
另一种可能的实现中,安全控制装置也可以在自身发生故障恢复之后执行S401。
当然,安全控制装置还可以在其他时机执行S401,本申请实施例对于安全控制装置执行S401的触发条件不进行具体限定。
需要说明的是,当前周期的鉴权参数是指最新的鉴权参数,若鉴权参数不变,则当前周期的鉴权参数表示固定的鉴权参数,若鉴权参数为不断更新的参数,则当前周期的鉴权参数指执行S401时最后一次更新的鉴权参数,因此,当前周期并不是限定S401周期性的执行。
其中,鉴权参数用于转发设备进行鉴权,凡是可以用于鉴权的参数,均可以作为本文描述的鉴权参数,本申请实施例对于鉴权参数的类型不进行具体限定。
示例性的,鉴权参数可以包括:密钥,或者,随机数,或者,盐值。当然,鉴权参数还可以为其他类型的参数,此处不再一一赘述,上述示例也不构成具体限定。
一种可能的实现中,安全控制装置获取当前周期的鉴权参数,可以实现为:生成当前周期的鉴权参数。本申请实施例对于安全控制装置生成鉴权参数的具体方案不进行限定。例如,安全控制装置可以随机生成鉴权参数。
一种可能的实现中,安全控制装置获取当前周期的鉴权参数,可以实现为:通过安全通道,接收管理员输入的当前周期的鉴权参数。安全控制装置向网络管理员提供交互界面,管理员可以在交互界面中输入鉴权参数,或者,管理员也可以在交互界面周期性的输入鉴权参数,以使得安全控制装置获取鉴权参数。
S402、安全控制装置获取鉴权算法。
可选的,鉴权算法可以包括:加密HASH算法,或者,非加密HASH算法。HASH算法也可以称之为散列算法。其中,加密HASH算法安全性高但性能消耗大,非加密HASH算法安全性低但节约性能,可以根据实际场景灵活选择鉴权算法的类型,本申请实施例对此不进行具体限定。进一步的,可以通过不断更新鉴权参数,以弥补非加密HASH算法的安全性不足。
示例性的,加密HASH算法可以包括摘要算法(message digest algorithm,MD)5、安全散列算法(secure Hash algorithm,SHA)512、SHA1等。非加密HASH算法可以包括murmurHASH3、循环冗余校验(cyclic redundancy check,CRC)32等。
一种可能的实现中,对于一个数据网络可以采用固定的鉴权算法,那么安全控制装置可以仅执行一次S402即可。
另一种可能的实现中,在一个数据网络中,可以不断更换鉴权算法,那么安全控制装置需多次执行S402获取最新的鉴权算法。
需要说明的是,当S402也为周期性执行时,S402和S401的可以同时进行,也可以分别进行,只需要在S403中向转发设备发送当前获取到的最新的鉴权参数及鉴权算法即可。
一种可能的实现中,安全控制装置在S402中,自动选择一种鉴权算法。本申请实施例对于选择方法,以及备选的鉴权算法的类型以及数量均不进行具体限定。例如,可以预先配置鉴权算法库,安全控制装置在S402在其中自行选择。
一种可能的实现中,安全控制装置获取鉴权算法,可以实现为:通过安全通道,接收管理员输入的鉴权算法。安全控制装置向网络管理员提供交互界面,管理员可以在交互界面中输入鉴权算法,或者,管理员也可以在交互界面周期性的输入鉴权算法,以使得安全控制装置获取鉴权算法。
S403、安全控制装置使用安全通道,向控制的每个转发设备发送当前周期鉴权参数及鉴权算法。
具体的,安全控制装置在执行完S401和S402后,即执行S403,将S401中获取的鉴权参数和S402中获取的鉴权算法,发送给其控制的每个转发设备,用于每个转发设备在转发报文时,按照最新的鉴权参数及鉴权算法进行鉴权。
其中,安全通道是指非法节点无法获取信息的通道,本申请对于安全通道的类型不进行限定。例如,安全通道可以为IPSEC通道或者TLS通道或者其他。
需要说明的是,由于安全控制装置控制的每个转发设备执行的操作完全相同,后续内容以一个转发设备执行本申请的方案为例进行描述,不再一一赘述,该转发设备为安全控制装置控制的任一个转发设备。
S404、转发设备通过安全通道,接收第一鉴权参数及鉴权算法。
其中,第一鉴权参数为S403中安全控制装置发送的当前周期的鉴权参数。该转发设备为安全控制装置控制的任一转发设备。该转发设备可以为报文转发路径的中间转发设备,也可以为转发路径中的第一个转发设备,或者也可以为最后一个转发设备,本申请实施例对此不进行具体限定。
具体的,转发设备在S404中接收第一鉴权参数及鉴权算法之后,向集中转发装置发送响应信息,集中转发设备再通知启用第一鉴权参数及鉴权算法,之后,转发设备在接收到报文时,则按照第一鉴权参数及鉴权算法进行鉴权。
一种可能的实现中,该转发设备可以为报文的转发路径的中间节点,则转发节点执行S405至S411对报文进行鉴权。
另一种可能的实现中,该转发设备可以为报文的转发路径的第一个转发设备,则转发设备执行S412至S414对报文进行鉴权。
S405、转发设备接收第一报文,第一报文包括一个或多个鉴权位置的第一鉴权值。
需要说明的是,第一报文为转发设备接收的众多报文中任一个,由于转发设备对于每个报文处理方式相同,此处仅以第一报文为例进行说明,并不是具体限定。
其中,鉴权位置是指报文鉴权过程中的鉴权次数,并不是指示一个具体位置。一个鉴权位置是指全局共知的一次鉴权,每个鉴权位置具有各自的鉴权参考信息,且不同鉴权位置的鉴权参考信息内容不同,可以根据实际需求配置一个或多个鉴权位置。当配置的鉴权位置越多,鉴权的安全性越高,但是实现也将复杂。
具体的,第一报文包括一个或多个鉴权位置的第一鉴权值,说明该转发设备为转发路径的中间节点,每个鉴权位置的第一鉴权值为第一报文的转发路径中,该转发设备之前的转发设备写入的字段。该转发设备执行S406对第一报文进行鉴权。
具体的,每个鉴权位置的第一鉴权值可以包括在第一报文中的鉴权报文头中,鉴权报文头在第一报文中的位置,可以根据实际需求配置,本申请实施例对此不进行具体限定。
示例性的,鉴权报文头在第一报文中传输层头后面,以避免由于中间设备不支持鉴权而引起报文丢弃。
如图5所示,示意了一种报文的内部结构,报文包括互联网协议(internetprotocol,IP)头+用户数据报协议(user datagram protocol,UDP)头、鉴权报文头以及数据部分。鉴权报文头中包括鉴权相关信息信息(鉴权版本号、保留字段、鉴权头长度、鉴权的数据长度以及后续协议)以及每个鉴权位置的鉴权值。当然,图5只是通过举例的方式对报文的内部结构进行说明,并不是对报文结构的具体限定。
S406、转发设备将第一鉴权参数以及每个鉴权位置的鉴权参考信息,进行鉴权算法,得到每个鉴权位置的第二鉴权值。
其中,鉴权参考信息为配置的用于进行鉴权的参考量,可以根据实际需求配置鉴权参考信息的内容,本申请实施例对此不进行具体限定。
例如,鉴权参考信息包括下述信息中一项或多项:第一报文的源地址、第一报文的目的地址、递增序列号、第一报文中数据的部分或全部、一个或多个其他鉴权位置的第二鉴权值。当然,鉴权参考信息还可以包括其他内容。
具体的,不同的鉴权位置可以配置不同的鉴权参考信息,本申请实施例对此不进行具体限定。
一种可能的实现中,不同鉴权位置的鉴权参考信息可以包括第一报文中数据的不同部分。
另一种可能的实现中,不同鉴权位置的鉴权参考信息可以包括第一报文中数据的同一部分,以及其他一个或多个鉴权位置的第二鉴权值。
其中,递增序列号为报文中携带的一个简单递增的字段,本申请对递增序列号的内容不进行具体限定。
示例1,假设配置了3个鉴权位置,记录为鉴权位置1、鉴权位置2、鉴权位置3;再假设鉴权位置1的鉴权参考信息为A,鉴权位置2的鉴权参考信息为B,鉴权位置3的鉴权参考信息为C。转发设备接收到第一报文,第一报文中包括第一鉴权参数,以及鉴权位置1的第一鉴权值X、鉴权位置2的第一鉴权值Y、鉴权位置3的第一鉴权值Z。转发设备将第一鉴权参数与A进行鉴权算法,得到鉴权位置1的第二鉴权值R,将第一鉴权参数与B进行鉴权算法,得到鉴权位置2的第二鉴权值S,将第一鉴权参数与C进行鉴权算法,得到鉴权位置3的第二鉴权值T。
示例2,假设配置了3个鉴权位置,记录为鉴权位置4、鉴权位置5、鉴权位置6;再假设鉴权位置4的鉴权参考信息为J,鉴权位置5的鉴权参考信息为鉴权位置4的第二鉴权值,鉴权位置6的鉴权参考信息为鉴权位置4的第二鉴权值和鉴权位置5的第二鉴权值。转发设备接收到第一报文,第一报文中包括第一鉴权参数,以及鉴权位置4的第一鉴权值7、鉴权位置5的第一鉴权值8、鉴权位置6的第一鉴权值9。转发设备将第一鉴权参数与J进行鉴权算法,得到鉴权位置4的第二鉴权值U,将第一鉴权参数与U进行鉴权算法,得到鉴权位置5的第二鉴权值V,将第一鉴权参数与U、V进行鉴权算法,得到鉴权位置6的第二鉴权值W。
需要说明的是,上述示例只是通过举例的方式对S406的过程进行说明,并不构成具体限定。
S407、转发设备判断每个鉴权位置的第二鉴权值与各自的第一鉴权值是否相同。
需要说明的是,每个鉴权位置的第二鉴权值与各自第一鉴权值相同,是指每个鉴权位置的第二鉴权值与该鉴权位置的第一鉴权值相同。此处描述的各自,其前后的内容对属于同一个鉴权位置,也就是说,一个鉴权位置的第二鉴权值与该鉴权位置的第一鉴权值进行对比。后续内容对此不再一一说明。
示例性的,对应S406中的示意1,在S407中,判断每个鉴权位置的第二鉴权值与各自第一鉴权值相同,是指:判断X与R是否相同,Y与S是否相同,Z与Q是否相同。同理,每个鉴权位置的第二鉴权值与各自第一鉴权值相同,是指:X与R相同,Y与S相同,Z与Q相同。
示例性的,对应S406中的示意2,在S407中,判断每个鉴权位置的第二鉴权值与各自第一鉴权值相同,是指:判断7与U是否相同,8与V是否相同,9与W是否相同。同理,每个鉴权位置的第二鉴权值与各自第一鉴权值相同,是指:7与U相同,8与V相同,9与W相同。
在S407中,若判断每个鉴权位置的第二鉴权值与各自的第一鉴权值相同,执行S408。
一种可能的实现中,在S407中若判断存在一个或多个鉴权位置的第二鉴权值与各自的第一鉴权值不同,确定第一报文鉴权失败为非法报文,执行S409将第一报文丢弃。
另一种可能的实现中,在S407中若判断存在一个或多个鉴权位置的第二鉴权值与各自的第一鉴权值不同,执行S410至S411判断旧的鉴权参数是否可以成功鉴权,以避免新旧鉴权参数过渡导致的误判。
需要说明的是,可以根据实际情况配置或者选择在S407中若判断存在一个或多个鉴权位置的第二鉴权值与各自的第一鉴权值不同时后续的执行方案,本申请实施例对此不进行具体限定。
示例性的,鉴权参数的更新周期较长,或者,报文的转发路径较短,数据网络中不繁忙,经评估不会出现在报文传输过程中更新鉴权参数的情况,可以配置在S407中若判断存在一个或多个鉴权位置的第二鉴权值与各自的第一鉴权值不同时直接执行S409直接丢弃第一报文。
示例性的,经评估可能会出现在报文传输过程中更新鉴权参数的情况,为了避免误判,可以配置在S407中若判断存在一个或多个鉴权位置的第二鉴权值与各自的第一鉴权值不同时执行S410至S411判断旧的鉴权参数是否可以成功鉴权。
示例性的,在一些特殊场景中,并不存在新旧鉴权参数过渡阶段的缓冲,在这些场景中,若存在一个或多个鉴权位置的第二鉴权值与各自的第一鉴权值不同,即可确定鉴权失败判断第一报文为非法报文。该特殊场景可以包括故障后的下发鉴权参数,包括转发设备故障后的请求下发,或者,安全控制装置故障后的主动下发。因此,当S407中判断存在一个或多个鉴权位置的第二鉴权值与各自的第一鉴权值不同时,可以先判断是否为特殊场景,若是特殊场景,则确定鉴权失败判断第一报文为非法报文执行S409直接丢弃,若判断不是特殊场景,则执行S410至S411判断鉴权参数集合中是否存在第二鉴权参数。
S408、转发设备将第一报文转发。
具体的,在S408中,转发设备查询路由表中下一跳的信息,根据该信息将第一报文向下一跳设备转发,本申请不再赘述转发过程。
S409、转发设备将第一报文丢弃。
S410、转发设备判断鉴权参数集合中是否存在第二鉴权参数。
其中,鉴权参数集合中包括在第一鉴权参数之前接收的一个或多个满足预设条件的鉴权参数。第二鉴权参数与每个鉴权位置的鉴权参考信息进行鉴权算法的第三鉴权值与各自的第一鉴权值相同。
一种可能的实现中,预设条件可以包括:第一鉴权参数的前N个鉴权参数;N大于或等于1。其中,第一鉴权参数的前N个鉴权参数,是指从第一鉴权参数的前一个鉴权参数,按照接收顺序从后往前数的N个鉴权参数。
示例性的,鉴权参数集合包括第一鉴权参数的前一个鉴权参数,即N等于1。也就是说,转发设备保存了最新的鉴权参数以及前一个鉴权参数。
另一种可能的实现中,预设条件可以包括:接收时间在接收第一鉴权参数之前预设时长内。预设时长的取值,可以根据实际需求配置,本申请实施例对此不进行具体限定。
进一步的,本申请实施例提供的方法还可以包括:转发设备将鉴权参数集合中不满足预设条件的鉴权参数删除。
具体的,S410中判断鉴权参数集合中是否存在第二鉴权参数具体可以替代为:转发设备将鉴权参数集合中每个鉴权参数,分别与每个鉴权位置的鉴权参考信息进行鉴权算法,得到鉴权参数集合中每个鉴权参数在每个鉴权位置的第三鉴权值,判断是否存在哪个鉴权参数在每个鉴权位置的第三鉴权值与各自的第一鉴权值相同。若存在,则表示存在第二鉴权参数,否则,不存在第二鉴权参数。
若S410中判断鉴权参数集合中存在第二鉴权参数,说明在第一报文的转发过程中,执行S411;若S410中判断鉴权参数集合中不存在第二鉴权参数,说明第一报文鉴权失败,确定为非法报文,执行S409将第一报文丢弃。
S411、将第一报文中的每个鉴权位置的第一鉴权值替换为第三鉴权值后转发。
具体的,在S411中,转发设备查询路由表中下一跳的信息,根据该信息将第一报文向下一跳设备转发,本申请不再赘述转发过程。
若转发设备为报文转发路径中第一个转发设备,本申请实施例提供的报文转发方法还可以包括S412及S414。
S412、转发设备接收第二报文。
具体的,第二报文是由发送源设备向该转发设备发送的原始报文。
S413、转发设备将第一鉴权参数以及每个鉴权位置的鉴权参考信息,进行鉴权算法的鉴权值填入第二报文。
具体的,在S413中,转发设备将鉴权值填入第二报文的鉴权报文头中。
S414、转发设备将填写了鉴权值的第二报文转发。
具体的,在S414中,转发设备查询路由表中下一跳的信息,根据该信息将第一报文向下一跳设备转发,本申请不再赘述转发过程。
需要说明的是,S405至S411的过程,与S412至S414的过程为并列的过程,根据转发设备在报文转发路径中的位置决定执行哪个过程。
进一步可选的,当转发设备发生故障,在故障恢复后,需主动请求获取最新的鉴权参数,以保证鉴权准确度,如图5所示,本申请实施例提供的报文转发方法还可以包括S415至S417。
S415、转发设备在故障恢复后,向安全控制装置发送请求消息,用于请求获取最新的鉴权参数。
一种可能的实现中,转发设备为控制面与转发面分离的架构,S415中转发设备在故障恢复后,向安全控制装置发送请求消息,包括:转发设备的控制面在故障恢复后,向安全控制装置发送请求消息。
一种可能的实现中,转发设备为控制面与转发面分离的架构,当转发设备的转发面故障恢复后,转发面向控制面请求最新的鉴权参数即可,为设备内部交互,不再赘述。
一种可能的实现中,转发设备为控制面与转发面未分离的架构,S415中转发设备在故障恢复后,向安全控制装置发送请求消息,包括:转发设备在故障恢复后,通过转发设备中与安全控制装置通信的逻辑模块,向安全控制装置发送请求消息。
S416、安全控制装置接收转发设备发送的请求消息。
S417、安全控制装置通过安全通道,向转发设备发送最新的鉴权参数。
具体的,安全控制装置中包括了最新的鉴权参数,在S417中可直接通过安全通道,向发送请求消息的转发设备发送最新的鉴权参数。
当然,若鉴权算法也不断更新,S415至S417的过程中还需要请求最新的鉴权算法,此处不再进行赘述。
通过本申请提供的报文转发方法,鉴权参数和鉴权算法通过安全通道集中配置,每个转发设备按照本申请提供的报文转发方法,根据接收的鉴权参数和鉴权算法对接收的报文进行鉴权,实现报文转发时的逐段路径鉴权。由于通过安全通道集中配置鉴权参数和鉴权算法,非法设备无法抓包获取鉴权参数和鉴权算法,提高了鉴权的安全性。并且,集中配置的方式可以不断更新鉴权参数,提高鉴权的安全性,并且更新过程简单易行,即使路由节点增加或者变更,集中控制的架构都可以快速配置。
需要说明的是,由于数据网络部署需要时间,可能存在报文转发路径中包括不支持逐段路径鉴权的转发设备,即不支持本申请提供的报文转发方法的转发设备,这一类转发设备在接收到报文时,可以直接转发。
上述主要从各个网元之间交互的角度对本申请实施例提供的方案进行了介绍。可以理解的是,上述转发设备、安全控制装置为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。将转发设备、安全控制装置中实现上述报文转发方法的功能单元,称之为报文转发装置。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例可以根据上述方法示例对报文转发装置进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
在采用对应各个功能划分各个功能模块的情况下,图6示出了上述实施例中所涉及的转发设备中部署的报文转发装置60的一种可能的结构示意图。该报文转发装置60可以为转发设备本身,也可以为转发设备中的功能模块或者芯片。如图6所示,报文转发装置60可以包括:接收单元601、处理单元602、发送单元603。接收单元601用于执行图4中的过程S404、S405;处理单元602用于执行图4中的过程S406、S407、S409、S410、S411;发送模块603用于执行图4中的过程S408、S411、S415。其中,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。
在采用集成的单元的情况下,图7示出了上述实施例中所涉及的报文转发装置70的一种可能的结构示意图。报文转发装置70可以包括:处理模块701、通信模块702。处理模块701用于对报文转发装置70的动作进行控制管理。例如,处理模块701用于执行图4中的过程S406、S407、S409、S410、S411;通信模块702用于执行图4中的过程S404、S405、S408、S411、S415。报文转发装置70还可以包括存储模块703,用于存储报文转发装置70的程序代码和数据。
其中,处理模块701可以为图2所示的转发设备20的实体结构中的处理器201,可以是处理器或控制器。例如可以是CPU,通用处理器,DSP,ASIC,FPGA或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器701也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等等。通信模块702可以为图2所示的转发设备20的实体结构中的收发器203,通信模块702可以是通信端口,或者可以是收发器、收发电路或通信接口等。或者,上述通信接口可以通过上述具有收发功能的元件,实现与其他设备的通信。上述具有收发功能的元件可以由天线和/或射频装置实现。存储模块703可以是图2所示的转发设备20的实体结构中的存储器202。
当处理模块701为处理器,通信模块702为收发器,存储模块703为存储器时,本申请实施例图7所涉及的报文转发装置70可以为图2所示的转发设备20。
如前述,本申请实施例提供的报文转发装置60或报文转发装置70可以用于实施上述本申请各实施例实现的方法中转发设备的功能,为了便于说明,仅示出了与本申请实施例相关的部分,具体技术细节未揭示的,请参照本申请各实施例。
在采用对应各个功能划分各个功能模块的情况下,图8示出了上述实施例中所涉及的安全控制装置中部署的报文转发装置80的一种可能的结构示意图。该报文转发装置80可以为安全控制装置本身,也可以为安全控制装置中的功能模块或者芯片。如图8所示,报文转发装置80可以包括:获取单元801、发送单元802。获取单元801用于执行图4中的过程S401、S402;发送模块802用于执行图4中的过程S403、S417。其中,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。
进一步的,如图8所示,报文转发装置80还可以包括接收单元803,用于执行图4中的过程S416。
在采用集成的单元的情况下,图9示出了上述实施例中所涉及的安全控制装置中部署的报文转发装置90的一种可能的结构示意图。该报文转发装置90可以为安全控制装置本身,也可以为安全控制装置中的功能模块或者芯片。报文转发装置90可以包括:处理模块901、通信模块902。处理模块901用于对报文转发装置90的动作进行控制管理。例如,处理模块901用于执行图4中的过程S401、S402;通信模块902用于执行图4中的过程S403、S416、S417。报文转发装置90还可以包括存储模块903,用于存储报文转发装置90的程序代码和数据。
其中,处理模块901可以为图3所示的安全控制装置30的实体结构中的处理器301,可以是处理器或控制器。例如可以是CPU,通用处理器,DSP,ASIC,FPGA或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器901也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等等。通信模块902可以为图3所示的安全控制装置30的实体结构中的收发器303,通信模块902可以是通信端口,或者可以是收发器、收发电路或通信接口等。或者,上述通信接口可以通过上述具有收发功能的元件,实现与其他设备的通信。上述具有收发功能的元件可以由天线和/或射频装置实现。存储模块903可以是图3所示的安全控制装置30的实体结构中的存储器302。
当处理模块901为处理器,通信模块902为收发器,存储模块903为存储器时,本申请实施例图9所涉及的报文转发装置90可以为图3所示的安全控制装置30。
如前述,本申请实施例提供的报文转发装置80或报文转发装置90可以用于实施上述本申请各实施例实现的方法中安全控制装置的功能,为了便于说明,仅示出了与本申请实施例相关的部分,具体技术细节未揭示的,请参照本申请各实施例。
作为本实施例的另一种形式,提供一种计算机可读存储介质,其上存储有指令,该指令被执行时执行上述方法实施例中的报文转发方法。
作为本实施例的另一种形式,提供一种包含指令的计算机程序产品,该指令被执行时执行上述方法实施例中的报文转发方法。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本申请所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理包括,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (29)
1.一种报文转发方法,其特征在于,包括:
通过安全通道,接收第一鉴权参数及鉴权算法;
接收第一报文,所述第一报文包括一个或多个鉴权位置的第一鉴权值;
将所述第一鉴权参数以及每个所述鉴权位置的鉴权参考信息,进行所述鉴权算法,得到每个所述鉴权位置的第二鉴权值;
若每个所述鉴权位置的所述第二鉴权值与各自的所述第一鉴权值相同,将所述第一报文转发。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若存在一个或多个鉴权位置的所述第二鉴权值与各自的所述第一鉴权值不同,判断鉴权参数集合中是否存在第二鉴权参数;其中,所述鉴权参数集合中包括在所述第一鉴权参数之前接收的一个或多个满足预设条件的鉴权参数;所述第二鉴权参数与每个所述鉴权位置的所述鉴权参考信息进行所述鉴权算法的第三鉴权值,与各自的所述第一鉴权值相同;
若所述鉴权参数集合中存在所述第二鉴权参数,将所述第一报文中每个所述鉴权位置的所述第一鉴权值替换为各自的所述第三鉴权值后转发;
若所述鉴权参数集合中不存在所述第二鉴权参数,将所述第一报文丢弃。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若存在一个或多个鉴权位置的所述第二鉴权值与各自的所述第一鉴权值不同,将所述第一报文丢弃。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述鉴权参数包括:
密钥,或者,随机数,或者,盐值。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述鉴权算法包括:
加密哈希HASH算法,或者,非加密HASH算法。
6.根据权利要求1-5任一项所述的方法,其特征在于,所述鉴权参考信息包括下述信息中一项或多项:所述第一报文的源地址、所述第一报文的目的地址、递增序列号、所述第一报文中数据的部分或全部、一个或多个其他鉴权位置的第二鉴权值。
7.根据权利要求1-6任一项所述的方法,其特征在于,所述方法还包括:
接收第二报文;
将所述第一鉴权参数以及每个所述鉴权位置的所述鉴权参考信息,进行所述鉴权算法的鉴权值填写到所述第二报文;
将填写了鉴权值的所述第二报文转发。
8.根据权利要求1-7任一项所述的方法,其特征在于,所述方法还包括:故障恢复后,请求获取最新的鉴权参数。
9.一种报文转发方法,其特征在于,包括:
获取当前周期的鉴权参数,不同周期的鉴权参数不同;
获取鉴权算法;
使用安全通道,向控制的每个转发设备发送所述当前周期鉴权参数及所述鉴权算法,用于所述每个转发设备转发报文。
10.根据权利要求9所述的方法,其特征在于,所述鉴权参数包括:
密钥,或者,随机数,或者,盐值。
11.根据权利要求9或10所述的方法,其特征在于,所述鉴权算法包括:
加密哈希HASH算法,或者,非加密HASH算法。
12.根据权利要求9-11任一项所述的方法,其特征在于,所述获取当前周期的鉴权参数,包括:
生成所述当前周期的鉴权参数;
或者,
通过安全通道,接收管理员输入的所述当前周期的鉴权参数。
13.根据权利要求9-12任一项所述的方法,其特征在于,所述方法还包括:
接收第一转发设备发送的请求消息,所述请求消息用于请求最新的鉴权参数,所述第一转发设备为控制的任一转发设备;
通过安全通道,向所述第一转发设备发送所述最新的鉴权参数。
14.一种报文转发装置,其特征在于,包括:接收单元、处理单元以及发送单元;其中,
所述接收单元用于,通过安全通道,接收第一鉴权参数及鉴权算法;
所述接收单元还用于,接收第一报文,所述第一报文包括一个或多个鉴权位置的第一鉴权值;
所述处理单元用于,将所述接收单元接收的所述第一鉴权参数,以及每个所述鉴权位置的鉴权参考信息,进行所述鉴权算法,得到每个所述鉴权位置的第二鉴权值;
所述处理单元还用于,判断每个所述鉴权位置的所述第二鉴权值与各自的所述第一鉴权值是否相同;
所述发送单元用于,若所述处理单元判断每个所述鉴权位置的所述第二鉴权值与各自的所述第一鉴权值相同,将所述第一报文转发。
15.根据权利要求14所述的装置,其特征在于,
所述处理单元还用于:若存在一个或多个鉴权位置的所述第二鉴权值与各自的所述第一鉴权值不同,判断鉴权参数集合中是否存在第二鉴权参数;其中,所述鉴权参数集合中包括在所述第一鉴权参数之前接收的一个或多个满足预设条件的鉴权参数;所述第二鉴权参数与每个所述鉴权位置的所述鉴权参考信息进行所述鉴权算法的第三鉴权值,与各自的所述第一鉴权值相同;若所述鉴权参数集合中存在所述第二鉴权参数,将所述第一报文中每个所述鉴权位置的所述第一鉴权值替换为各自的所述第三鉴权值;
所述发送单元还用于,将包括所述第三鉴权值的所述第一报文转发;
所述处理单元还用于:若所述鉴权参数集合中不存在所述第二鉴权参数,将所述第一报文丢弃。
16.根据权利要求14所述的装置,其特征在于,所述处理单元还用于:
若存在一个或多个鉴权位置的所述第二鉴权值与各自的所述第一鉴权值不同,将所述第一报文丢弃。
17.根据权利要求14-16任一项所述的装置,其特征在于,所述鉴权参数包括:
密钥,或者,随机数,或者,盐值。
18.根据权利要求14-17任一项所述的装置,其特征在于,所述鉴权算法包括:
加密哈希HASH算法,或者,非加密HASH算法。
19.根据权利要求14-18任一项所述的装置,其特征在于,所述鉴权参考信息包括下述信息中一项或多项:所述第一报文的源地址、所述第一报文的目的地址、递增序列号、所述第一报文中数据的部分或全部、一个或多个其他鉴权位置的第二鉴权值。
20.根据权利要求14-19任一项所述的装置,其特征在于,
所述接收单元还用于:接收第二报文;
所述处理单元还用于,将所述第一鉴权参数以及每个所述鉴权位置的所述鉴权参考信息,进行所述鉴权算法的鉴权值填写到所述第二报文;
所述发送单元还用于,将填写了鉴权值的所述第二报文转发。
21.根据权利要求14-20任一项所述的装置,其特征在于,所述处理单元还用于:故障恢复后,请求获取最新的鉴权参数。
22.一种报文转发装置,其特征在于,包括:
获取单元,用于获取当前周期的鉴权参数,不同周期的鉴权参数不同;
所述获取单元还用于,获取鉴权算法;
发送单元,用于使用安全通道,向控制的每个转发设备发送所述获取单元获取的所述当前周期鉴权参数及所述鉴权算法,用于所述每个转发设备转发报文。
23.根据权利要求22所述的装置,其特征在于,所述鉴权参数包括:
密钥,或者,随机数,或者,盐值。
24.根据权利要求22或23所述的装置,其特征在于,所述鉴权算法包括:
加密哈希HASH算法,或者,非加密HASH算法。
25.根据权利要求22-24任一项所述的装置,其特征在于,所述处理单元具体用于:
生成所述当前周期的鉴权参数;
或者,
通过所述接收单元,从安全通道接收管理员输入的所述当前周期的鉴权参数。
26.根据权利要求22-25任一项所述的装置,其特征在于,
所述接收单元还用于接收第一转发设备发送的请求消息,所述请求消息用于请求最新的鉴权参数,所述第一转发设备为控制的任一转发设备;
所述处理单元还用于,通过所述发送单元,采用安全通道,向所述第一转发设备发送所述最新的鉴权参数。
27.一种报文转发装置,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的程序,其特征在于,所述处理器执行所述程序时实现权利要求1-13中任一项所述的报文转发方法。
28.一种计算机可读存储介质,其特征在于,包括指令,当其在计算机上运行时,使得计算机执行如权利要求1-13任一项所述的报文转发方法。
29.一种计算机程序产品,其特征在于,包括指令,当其在计算机上运行时,使得计算机执行如权利要求1-13任一项所述的报文转发方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811652773.2A CN111385278B (zh) | 2018-12-29 | 2018-12-29 | 一种报文转发方法及装置 |
PCT/CN2019/119295 WO2020134711A1 (zh) | 2018-12-29 | 2019-11-18 | 一种报文转发方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811652773.2A CN111385278B (zh) | 2018-12-29 | 2018-12-29 | 一种报文转发方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111385278A true CN111385278A (zh) | 2020-07-07 |
CN111385278B CN111385278B (zh) | 2021-11-30 |
Family
ID=71129668
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811652773.2A Active CN111385278B (zh) | 2018-12-29 | 2018-12-29 | 一种报文转发方法及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN111385278B (zh) |
WO (1) | WO2020134711A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111770118A (zh) * | 2020-09-01 | 2020-10-13 | 华芯生物科技(武汉)有限公司 | 一种检测设备的数据传输方法 |
WO2024012100A1 (zh) * | 2022-07-11 | 2024-01-18 | 中兴通讯股份有限公司 | 访问控制方法、电子设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101808097A (zh) * | 2010-03-25 | 2010-08-18 | 杭州华三通信技术有限公司 | 一种防arp攻击方法和设备 |
CN103237020A (zh) * | 2013-04-07 | 2013-08-07 | 杭州华三通信技术有限公司 | 避免状态机被攻击的方法及服务器、交换机 |
CN103746770A (zh) * | 2013-12-20 | 2014-04-23 | 浙江工业大学 | 基于消息认证码和概率密钥分发的防污染网络编码方法 |
EP2869511A1 (en) * | 2013-10-31 | 2015-05-06 | Palo Alto Research Center Incorporated | Hash-based forwarding of packets with hierarchically structured variable-length identifiers over ethernet |
CN108632197A (zh) * | 2017-03-15 | 2018-10-09 | 华为技术有限公司 | 一种内容验证方法及设备 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014034119A1 (en) * | 2012-08-30 | 2014-03-06 | Nec Corporation | Access control system, access control method, and program |
CN106209835B (zh) * | 2016-07-08 | 2019-11-22 | 北京众享比特科技有限公司 | 对等网络通讯系统和方法 |
CN108200078B (zh) * | 2018-01-18 | 2021-01-05 | 中国建设银行股份有限公司 | 签名认证工具的下载安装方法及终端设备 |
-
2018
- 2018-12-29 CN CN201811652773.2A patent/CN111385278B/zh active Active
-
2019
- 2019-11-18 WO PCT/CN2019/119295 patent/WO2020134711A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101808097A (zh) * | 2010-03-25 | 2010-08-18 | 杭州华三通信技术有限公司 | 一种防arp攻击方法和设备 |
CN103237020A (zh) * | 2013-04-07 | 2013-08-07 | 杭州华三通信技术有限公司 | 避免状态机被攻击的方法及服务器、交换机 |
EP2869511A1 (en) * | 2013-10-31 | 2015-05-06 | Palo Alto Research Center Incorporated | Hash-based forwarding of packets with hierarchically structured variable-length identifiers over ethernet |
CN103746770A (zh) * | 2013-12-20 | 2014-04-23 | 浙江工业大学 | 基于消息认证码和概率密钥分发的防污染网络编码方法 |
CN108632197A (zh) * | 2017-03-15 | 2018-10-09 | 华为技术有限公司 | 一种内容验证方法及设备 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111770118A (zh) * | 2020-09-01 | 2020-10-13 | 华芯生物科技(武汉)有限公司 | 一种检测设备的数据传输方法 |
WO2024012100A1 (zh) * | 2022-07-11 | 2024-01-18 | 中兴通讯股份有限公司 | 访问控制方法、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111385278B (zh) | 2021-11-30 |
WO2020134711A1 (zh) | 2020-07-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11792046B2 (en) | Method for generating forwarding information, controller, and service forwarding entity | |
US20180139191A1 (en) | Method, Device, and System for Processing VXLAN Packet | |
US10277564B2 (en) | Light-weight key update mechanism with blacklisting based on secret sharing algorithm in wireless sensor networks | |
US10148573B2 (en) | Packet processing method, node, and system | |
US11115391B2 (en) | Securing end-to-end virtual machine traffic | |
CN114402574A (zh) | 用于提供多租户软件定义的广域网(sd-wan)节点的方法、系统和计算机可读介质 | |
CN106878199B (zh) | 一种接入信息的配置方法和装置 | |
US11637771B2 (en) | Technologies for managing network traffic through heterogeneous networks | |
EP3142303A1 (en) | Network control method and apparatus | |
EP3179687B1 (en) | Network flow information statistics method and apparatus | |
WO2019137554A1 (zh) | 一种保证环网协议运行安全的方法及装置 | |
JP7430224B2 (ja) | パケット処理方法およびゲートウェイ・デバイス | |
CN111385278B (zh) | 一种报文转发方法及装置 | |
EP4270867A1 (en) | Secure communication method, apparatus, and system for dc interconnection | |
WO2017157318A1 (zh) | 链路发现方法及装置 | |
US20230007022A1 (en) | Method and Device for Preventing Replay Attack on Srv6 HMAC Verification | |
US10951520B2 (en) | SDN, method for forwarding packet by SDN, and apparatus | |
US20180262473A1 (en) | Encrypted data packet | |
CN112566123A (zh) | 一种确定异常网络节点的方法及装置 | |
US9819571B2 (en) | Control apparatus and method for supplying switch with entry | |
US11122346B1 (en) | Attestation in optical transport network environments | |
CN114567450A (zh) | 一种协议报文处理方法及装置 | |
EP4221078A1 (en) | Packet processing method and apparatus | |
US11012427B2 (en) | RSA trusted networks: RSA packet frames for advanced networking switches | |
CN109120417B (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 |