媒体接入控制安全协议报文传输方法和相关装置转让专利

申请号 : CN201810967160.1

文献号 : CN110858822A

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 胡俊理

申请人 : 北京华为数字技术有限公司

摘要 :

提供了一种媒体接入控制安全协议报文传输方法和相关装置。其中,该方法包括:第一网络设备识别原始报文的第一优先级,并在所述原始报文对应的媒体接入安全协议MACsec报文中设置优先级字段,所述原始报文包括多个类型数据,每个类型数据对应各自的优先级;所述第一网络设备向第二网络设备发送所述MACsec报文,以使所述第二网络设备根据所述优先级字段进行映射,得到映射后的第二优先级,并根据所述第二优先级进行调度或转发所述MACsec报文。通过在MACsec报文中设置优先级字段,可以实现在传输过程中,中间设备能够识别MACsec报文的优先级,保证重要报文得到高优先级调度并不被丢弃。

权利要求 :

1.一种媒体接入控制安全协议报文传输方法,其特征在于,包括:

第一网络设备识别原始报文的第一优先级,并在所述原始报文对应的媒体接入安全协议MACsec报文中设置优先级字段,所述原始报文包括多个类型数据,每个类型数据对应各自的优先级;

所述第一网络设备向第二网络设备发送所述MACsec报文,以使所述第二网络设备根据所述优先级字段进行映射,得到映射后的第二优先级,并根据所述第二优先级进行调度或转发所述MACsec报文。

2.如权利要求1所述的方法,其特征在于,所述第一网络设备在所述MACsec报文中设置优先级字段,包括:所述第一网络设备在所述MACsec报文中的安全标签SecTAG中设置所述优先级字段。

3.如权利要求1或2所述的方法,其特征在于,所述方法还包括:

所述第一网络设备将所述SecTAG中的版本version字段设置为1。

4.如权利要求1所述的方法,其特征在于,所述原始报文的第一优先级包括:虚拟局域网VLAN优先级,或者互联网协议IP优先级,或者多协议标签交换MPLS优先级。

5.如权利要求4所述的方法,其特征在于,所述VLAN优先级包括802.1P字段,所述IP优先级包括差分服务代码点DSCP字段,所述MPLS优先级包括试验EXP字段。

6.一种媒体接入控制安全协议报文传输方法,其特征在于,包括:

第二网络设备接收第一网络设备发送的媒体接入安全协议MACsec报文,所述MACsec报文设置有优先级字段,所述优先级字段为所述第一网络设备在识别出所述MACsec报文对应的原始报文的第一优先级后设置的字段,其中,所述原始报文包括多个类型数据,每个类型数据对应各自的优先级;

所述第二网络设备根据所述优先级字段进行映射,得到映射后的第二优先级,并根据所述第二优先级调度或转发所述MACsec报文。

7.如权利要求6所述的方法,其特征在于,所述MACsec报文设置有优先级字段,包括:所述MACsec报文中的安全标签SecTAG中设置有所述优先级字段。

8.如权利要求6或7所述的方法,其特征在于,所述方法还包括:

所述SecTAG中的版本version字段被所述第一网络设备设置为1。

9.如权利要求6所述的方法,其特征在于,所述原始报文的第一优先级包括:虚拟局域网VLAN优先级,或者互联网协议IP优先级,或者多协议标签交换MPLS优先级。

10.如权利要求9所述的方法,其特征在于,所述VLAN优先级包括802.1P字段,所述IP优先级包括差分服务代码点DSCP字段,所述MPLS优先级包括试验EXP字段。

11.一种第一网络设备,其特征在于,包括:

识别模块,用于识别原始报文的第一优先级;

设置模块,用于在所述原始报文对应的媒体接入安全协议MACsec报文中设置优先级字段,所述原始报文包括多个类型数据,每个类型数据对应各自的优先级;

发送模块,用于向第二网络设备发送所述MACsec报文,以使所述第二网络设备根据所述优先级字段进行映射,得到映射后的第二优先级,并根据所述原始优先级进行调度或转发所述MACsec报文。

12.如权利要求11所述的第一网络设备,其特征在于,所述设置模块还用于,在所述MACsec报文中的安全标签SecTAG中设置优先级字段。

13.如权利要求11或12所述的第一网络设备,其特征在于,所述设置模块还用于,将所述SecTAG中的版本version字段设置为1。

14.如权利要求11所述的第一网络设备,其特征在于,所述原始报文的第一优先级包括:虚拟局域网VLAN优先级,或者互联网协议IP优先级,或者多协议标签交换MPLS优先级。

15.如权利要求14所述的第一网络设备,其特征在于,所述VLAN优先级包括802.1P字段,所述IP优先级包括差分服务代码点DSCP字段,所述MPLS优先级包括试验EXP字段。

16.一种第二网络设备,其特征在于,包括:

接收模块,用于接收第一网络设备发送的媒体接入安全协议MACsec报文,所述MACsec报文设置有优先级字段,所述优先级字段为所述第一网络设备在识别出所述MACsec报文对应的原始报文的第一优先级后设置的字段,其中,所述原始报文包括多个类型数据,每个类型数据对应各自的优先级;

映射模块,用于根据所述优先级字段进行映射,得到映射后的第二优先级;

调度转发模块,用于根据所述第二优先级调度或转发所述MACsec报文。

17.如权利要求16所述的第二网络设备,其特征在于,所述MACsec报文中的安全标签SecTAG中设置有所述优先级字段。

18.如权利要求16或17所述的第二网络设备,其特征在于,所述SecTAG中的版本version字段被设置为1。

19.如权利要求16所述的第二网络设备,其特征在于,所述原始报文的第一优先级包括:虚拟局域网VLAN优先级,或者互联网协议IP优先级,或者多协议标签交换MPLS优先级。

20.如权利要求19所述的第二网络设备,其特征在于,所述VLAN优先级包括802.1P字段,所述IP优先级包括差分服务代码点DSCP字段,所述MPLS优先级包括试验EXP字段。

21.一种第一网络设备,其特征在于,所述第一网络设备包括:处理器、存储器和收发器,其中:所述处理器、所述存储器和所述收发器相互连接,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行如权利要求1至5任意一项所述的方法。

22.一种第二网络设备,其特征在于,所述第二网络设备包括:处理器、存储器和收发器,其中:所述处理器、所述存储器和所述收发器相互连接,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行如权利要求6至10任意一项所述的方法。

23.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时,使所述处理器执行如权利要求1至10任意一项所述的方法。

说明书 :

媒体接入控制安全协议报文传输方法和相关装置

技术领域

[0001] 本申请涉及通信技术领域,尤其涉及一种媒体接入控制安全协议(Media Access Control Security,MACsec)报文传输方法和相关装置。

背景技术

[0002] 媒体接入控制安全协议(Media Access Control Security,MACsec)定义了基于IEEE802局域网络的数据安全通信方法。MACsec可为用户提供安全的MAC层数据发送和接收服务,包括用户数据加密(Confidentiality)、数据帧完整性检查(Data Integrity)、数据源真实性校验(Data Origin Authenticity)及重放保护(Replay protection)等。
[0003] 服务质量(Quality of Service,QoS)是各种存在服务供需关系的场合中普遍存在的概念,它用来评估服务方满足服务需求的能力。在数据传输网络中,例如有:支持为用户提供专用带宽、减少报文的丢失率、管理和避免网络拥塞、调控网络的流量和设置报文的优先级等。
[0004] 现有技术中,MACsec是针对以太网(Ethernet)数据进行加密,会针对发送设备发送的报文数据进行加密,例如数据报文和协议报文,但是加密后的报文中的媒体接入控制安全标签(Media Access Control TAG,MAC TAG)字段中并未有QoS优先级字段,导致中间链路无法感知MACsec封装的业务原始优先级,在中间链路上拥塞情况下,MACsec数据报文或某些重要的路由器协议或者检测协议等被丢弃。

发明内容

[0005] 本申请提供了一种媒体接入控制安全协议(MACsec)报文传输方法和相关装置,能够实现原始报文的优先级映射到MACsec报文的优先级字段中,可以保证在网络拥塞的情况下,重要报文在网络传输中得到高优先级调度并不被丢弃。
[0006] 第一方面,提供了一种MACsec报文传输方法,所述方法包括:
[0007] 第一网络设备识别原始报文的第一优先级,并在所述原始报文对应的媒体接入安全协议MACsec报文中设置优先级字段,所述原始报文包括多个类型数据,每个类型数据对应各自的优先级;
[0008] 所述第一网络设备向第二网络设备发送所述MACsec报文,以使所述第二网络设备根据所述优先级字段进行映射,得到映射后的第二优先级,并根据所述第二优先级进行调度或转发所述MACsec报文。
[0009] 实施本申请实施例,第一网络设备在向第二网络设备发送MACsec报文之前,先对原始报文的第一优先级进行识别,在识别后对该原始报文的优先级进行映射得到优先级字段并将其设置在该原始报文对应的MACsec报文中,然后将该MACsec报文发送给第二网络设备以使第二网络设备可以根据该优先级字段进行再次映射,得到映射后的第二优先级,并根据第二优先级进行调度和转发,可以保证在网络拥塞的情况下,重要报文(优先级高的报文)在网络传输中得到高优先级调度并不被丢弃。
[0010] 在一种可选的实现方式中,所述第一网络设备在所述MACsec报文中设置优先级字段,包括:
[0011] 所述第一网络设备在所述MACsec报文中的安全标签SecTAG中设置所述优先级字段。
[0012] 实施本申请实施例,第一网络设备可以在SecTAG字段中增加优先级字段,用于标识该MACsec报文的优先级,能够使得第二网络设备轻易识别获取到该优先级字段。
[0013] 在一种可选的实现方式中,所述方法还包括:
[0014] 所述第一网络设备将所述SecTAG中的版本version字段设置为1。
[0015] 实施本申请实施例,第一网络设备在设置了优先级字段后,还需要将该SecTAG中的version字段设置为1,由于在现有协议版本中,version字段的值固定为0,所以通过将其设置为1,可以实现协议版本的兼容和扩展。
[0016] 在一种可选的实现方式中,所述原始报文的第一优先级包括:虚拟局域网VLAN优先级,或者互联网协议IP优先级,或者多协议标签交换MPLS优先级。
[0017] 实施本申请实施例,第一网络设备可以识别出原始报文的多个优先级,并可以根据该原始报文的多个优先级设置不同的优先级字段,使其具有对应的关系。
[0018] 在一种可选的实现方式中,所述VLAN优先级包括802.1P字段,所述IP优先级包括差分服务代码点DSCP字段,所述MPLS优先级包括试验EXP字段。
[0019] 实施本申请实施例,第一网络设备可以通过识别出报文中具体字段的值,进而识别出该报文的原始优先级。
[0020] 第二方面,提供了一种MACsec报文传输方法,包括:
[0021] 第二网络设备接收第一网络设备发送的媒体接入安全协议MACsec报文,所述MACsec报文设置有优先级字段,所述优先级字段为所述第一网络设备在识别出所述MACsec报文对应的原始报文的第一优先级后设置的字段,其中,所述原始报文包括多个类型数据,每个类型数据对应各自的优先级;
[0022] 所述第二网络设备根据所述优先级字段进行映射,得到映射后的第二优先级,并根据所述第二优先级调度或转发所述MACsec报文。
[0023] 在一种可选的实现方式中,所述MACsec报文设置有优先级字段,包括:
[0024] 所述MACsec报文中的安全标签SecTAG中设置有所述优先级字段。
[0025] 在一种可选的实现方式中,所述方法还包括:
[0026] 所述SecTAG中的版本version字段被所述第一网络设备设置为1。
[0027] 在一种可选的实现方式中,所述原始报文的第一优先级包括:虚拟局域网VLAN优先级,或者互联网协议IP优先级,或者多协议标签交换MPLS优先级。
[0028] 在一种可选的实现方式中,所述VLAN优先级包括802.1P字段,所述IP优先级包括差分服务代码点DSCP字段,所述MPLS优先级包括试验EXP字段。
[0029] 实施本申请实施例,第二网络设备接收第一网络设备发送的MACsec报文,通过对MACsec报文中的SecTAG中的优先级字段进行映射,得到映射后的第二优先级,然后根据该第二优先级调度或转发该MACsec报文,可以保证在网络拥塞的情况下,重要报文(优先级高的报文)在网络传输中得到高优先级调度并不被丢弃。
[0030] 第三方面,提供了一种第一网络设备,所述第一网络设备包括:
[0031] 识别模块,用于识别原始报文的第一优先级;
[0032] 设置模块,用于在所述原始报文对应的媒体接入安全协议MACsec报文中设置优先级字段,所述原始报文包括多个类型数据,每个类型数据对应各自的优先级;
[0033] 发送模块,用于向第二网络设备发送所述MACsec报文,以使所述第二网络设备根据所述优先级字段进行映射,得到映射后的第二优先级,并根据所述原始优先级进行调度或转发所述MACsec报文。
[0034] 在一种可选的实现方式中,所述设置模块还用于,在所述MACsec报文中的安全标签SecTAG中设置优先级字段。
[0035] 在一种可选的实现方式中,所述设置模块还用于,将所述SecTAG中的版本version字段设置为1。
[0036] 在一种可选的实现方式中,所述原始报文的优先级包括:虚拟局域网VLAN优先级,或者互联网协议IP优先级,或者多协议标签交换MPLS优先级。
[0037] 在一种可选的实现方式中,所述VLAN优先级包括802.1P字段,所述IP优先级包括差分服务代码点DSCP字段,所述MPLS优先级包括试验EXP字段。
[0038] 第四方面,提供了一种第二网络设备,所述第二网络设备包括:
[0039] 接收模块,用于接收第一网络设备发送的媒体接入安全协议MACsec报文,所述MACsec报文设置有优先级字段,所述优先级字段为所述第一网络设备在识别出所述MACsec报文对应的原始报文的第一优先级后设置的字段,其中,所述原始报文包括多个类型数据,每个类型数据对应各自的优先级;
[0040] 映射模块,用于根据所述优先级字段进行映射,得到映射后的第二优先级;
[0041] 调度转发模块,用于根据所述第二优先级调度或转发所述MACsec报文。
[0042] 在一种可选的实现方式中,所述MACsec报文中的安全标签SecTAG中设置有所述优先级字段。
[0043] 在一种可选的实现方式中,所述SecTAG中的版本version字段被设置为1。
[0044] 在一种可选的实现方式中,所述原始报文的第一优先级包括:虚拟局域网VLAN优先级,或者互联网协议IP优先级,或者多协议标签交换MPLS优先级。
[0045] 在一种可选的实现方式中,所述VLAN优先级包括802.1P字段,所述IP优先级包括差分服务代码点DSCP字段,所述MPLS优先级包括试验EXP字段。
[0046] 第五方面,提供了一种第一网络设备,所述第一网络设备包括:处理器、存储器和收发器,其中:
[0047] 所述处理器、所述存储器和所述收发器相互连接,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行第一方面或第一方面任意一个可选的实现方式所述的方法。
[0048] 第六方面,提供了一种第二网络设备,所述第二网络设备包括:处理器、存储器和收发器,其中:
[0049] 所述处理器、所述存储器和所述收发器相互连接,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行第二方面或第二方面任意一个可选的实现方式所述的方法。
[0050] 第七方面,本申请提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,所述指令可以由处理电路上的一个或多个处理器执行。当其在计算机上运行时,使得计算机执行上述第一方面或第一方面中任意一个可选的实现方式所描述的方法。
[0051] 第八方面,本申请提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,所述指令可以由处理电路上的一个或多个处理器执行。当其在计算机上运行时,使得计算机执行上述第二方面或第二方面中任意一个可选的实现方式所描述的方法。
[0052] 实施本申请实施例,第一网络设备在向第二网络设备发送MACsec报文之前,先对原始报文的第一优先级进行识别,在识别后对该原始报文的优先级进行映射得到优先级字段并将其设置在该原始报文对应的MACsec报文中,然后将该MACsec报文发送给第二网络设备以使第二网络设备可以根据该优先级字段进行再次映射,得到映射后的第二优先级,并根据第二优先级进行调度和转发。可以保证在网络拥塞的情况下,重要报文(优先级高的报文)在网络传输中得到高优先级调度并不被丢弃。

附图说明

[0053] 图1为本申请实施例提供的一种加密技术的模型示意图;
[0054] 图2为本申请实施例提供的一种原始报文封装格式的示意图;
[0055] 图3为本申请实施例提供的一种MACsec加密报文封装格式的示意图;
[0056] 图4为本申请实施例提供的一种MACsec报文传输网络场景示意图;
[0057] 图5为本申请实施例提供的一种媒体接入控制安全协议报文传输方法的流程示意图;
[0058] 图6A为本申请实施例提供的一种设置优先级字段前的SecTAG格式示意图;
[0059] 图6B为本申请实施例提供的一种设置优先级字段后的SecTAG格式示意图;
[0060] 图7为本申请实施例提供的一种MACsec报文传输示意图;
[0061] 图8为本申请实施例提供的一种中间报文封装格式示意图;
[0062] 图9为本申请实施例提供的另一种MACsec报文传输示意图;
[0063] 图10为本申请实施例提供的另一种中间报文封装格式示意图;
[0064] 图11为本申请实施例提供的一种第一网络设备的结构示意图;
[0065] 图12为本申请实施例提供的一种第二网络设备的结构示意图;
[0066] 图13为本申请实施例提供的另一种第一网络设备的结构示意图;
[0067] 图14为本申请实施例提供的另一种第二网络设备的结构示意图。

具体实施方式

[0068] 首先结合图1-图4介绍本申请实施例涉及的相关技术知识。
[0069] 数据加密技术就是对信息进行重新编码,从而隐藏信息内容,使非法用户无法获取真实信息。加密型网络安全技术的基本思想是不依赖于网络中数据通道的安全性来实现网络系统的安全,而且通过对网络数据的加密来保障网络的安全可靠性。参见图1,是一种加密技术的模型示意图。发送设备结合加密密钥通过加密算法将明文数据转换为密文数据,密文数据在网络中经过传输到达接收设备,接收设备结合解密密钥通过解密算法将密文数据转换为明文数据。
[0070] 媒体接入控制安全协议(Media Access Control Security,MACsec)将安全保护集合到有线以太网中,通过识别局域网上的非授权站点,阻止来自它们的通信,保证网络的持续运行。MACsec利用密码技术认证数据的起源,保护信息的完整性并提供重放保护和保密性,通过确保数据帧确实来自声称发送它的站点,MACsec可以确保减少对2层协议的攻击。
[0071] 媒体接入控制安全密钥协商协议(Media Access Control Security Agreement protocol,MKA)用于对MACsec数据加密密钥,MKA报文不会被加密,而对于其它的以太网(Ethernet)数据,MACsec都会对其进行加密得到MACsec加密报文。参见图2,是一种原始报文封装格式的示意图。原始报文包括目的地址(Destination Address,DA),源地址(Source Address,SA),虚拟局域网(Virtual Local Area Network,VLAN)标识,以太网类型,用户数据和循环冗余校验值(Frame Check Sequence,FCS)。其中,VLAN标识字段、以太网类型字段和用户数据一起构成了媒体接入控制服务数据单元(MAC Service Data Unit,MSDU),目的地址和源地址都是MAC地址。参见图3,是一种MACsec加密报文封装格式的示意图。MACsec加密报文包括目的地址,源地址,帧类型标识(Sec TAG),加密数据,报文完整性校验值(Integrity Check Value,ICV)和循环冗余校验值(Frame Check Sequence,FCS)。其中,帧类型指示,加密数据和报文完整性校验值一起构成了媒体接入控制协议数据单元(MAC Protocol Data Unit,MPDU),目的地址和源地址都是MAC地址。值得说明的是,在无线网络安全中,MSDU经过分帧,添加报文完整性校验值,加密,添加MAC头部后得到MPDU。
[0072] 本申请的技术方案可以应用于各种通信系统中,例如WLAN网络,IoT网络,还可以应用于车联网网络,还可以应用于其他网络等,本申请并不具体限定。举例来说,本申请的应用场景可以是基于第二层交换技术的VLAN网络,或者是基于第三层路由技术的IP网络,或者是结合第二层交换技术和第三层路由技术的多协议标签交换(Multiprotocol Label Switching,MPLS)网络,或者是基于第二层交换技术或第三层路由技术的其它网络。
[0073] 参见图4,图4是一种MACsec报文传输网络场景示意图。该网络架构包括发送设备、传输网络和接收设备,其中传输网络包括一个或多个传输设备。发送设备对原始报文进行加密封装,并将加密后的报文发送给传输网络中的传输设备,加密报文经过传输网络的传输后到达接收设备,接收设备将该加密报文进行解密得到原始报文。
[0074] 本申请实施例涉及的发送设备、接收设备或传输设备可以是交换机、路由器或网络适配器等。此外,还可以是任意一种具有无线收发功能的设备或可设置于该设备的芯片,该设备包括但不限于:演进型节点B(evolved Node B,eNB)、无线网络控制器(radio network controller,RNC)、节点B(Node B,NB)、基站控制器(base station controller,BSC)、基站收发台(base transceiver station,BTS)、家庭基站(例如,home evolved NodeB,或home Node B,HNB)、基带单元(base band Unit,BBU),无线保真(wireless fidelity,WIFI)系统中的接入点(access point,AP)、无线中继节点、无线回传节点、传输点(transmission point,TP)或者发送接收点(transmission and reception point,TRP)等,还可以为5G,如,NR,系统中的gNB,或,传输点(TRP或TP),5G系统中的基站的一个或一组(包括多个天线面板)天线面板,或者,还可以为构成gNB或传输点的网络节点,如基带单元(BBU),或,分布式单元(distributed unit,DU)等。
[0075] 本申请提供一种媒体接入控制安全协议报文传输方法,可以根据原始报文的优先级,设置其对应的加密报文的优先级字段,使中间传输网络设备能够根据该优先级字段进行调度和转发该加密报文,保证重要报文,即优先级较高的报文在网络拥塞的情况下得到高优先级的调度和转发,并且不被丢弃。
[0076] 下面结合附图详细介绍本申请实施例的方法及相关装置。需要说明的是,本申请实施例的展示顺序仅代表实施例的先后顺序,并不代表实施例所提供的技术方案的优劣。
[0077] 请参见图5,图5为本申请实施例提供的一种媒体接入控制安全协议报文传输方法的流程示意图。如图5所示,该方法包括但不限于以下步骤:
[0078] S501:第一网络设备向第二网络设备发送MACsec报文。
[0079] 具体地,第一网络设备或第二网络设备可以是交换机,或者是路由器,或者是网络适配器等,本申请对此不做限定。
[0080] 具体地,第一网络设备在向第一网络设备发送MACsec报文之前,第一网络设备需要先识别出原始报文的第一优先级,在识别之后对原始报文进行加密处理,得到加密后的MACsec报文,并在该MACsec报文中设置优先级字段。
[0081] 进一步地,原始报文中可以包括一个或者多个类型的数据,每个类型的数据都对应各自的原始优先级,即第一优先级可以是任意一个类型的数据对应的原始优先级。
[0082] 需要说明的是,第一网络设备和第一优先级只是为了与后续涉及到的第二网络设备和第二优先级进行区分,并没有其它特殊含义。
[0083] 在一种可能的实现方式中,所述第一网络设备在所述MACsec报文中设置优先级字段,包括:所述第一网络设备在所述MACsec报文中的安全标签SecTAG中设置所述优先级字段。
[0084] 具体地,第一网络设备在MACsec报文中设置优先级字段时,为了保证第二网络设备能够准确快速的获取到优先级字段,减少第一网络设备与第二网络设备之间交互的复杂性,故选择在SecTAG中进行设置。
[0085] 参见图6A,是一种设置优先级字段前的SecTAG格式示意图。在该SecTAG字段中包括以太网数据帧声明类型字段(Ether  Type)、标记控制元素字段(TAG Control Information,TCI)、协议号字段(Agreement No,AN)、短长度字段(Short Length,SL)、包序号字段(Packet Number,PN)和安全通道标识字段(Secure Channel Identification,SCI)。其中,Ether Type占用两个字节,由0x88E5标记识别,TCI和AN一起占用一个字节,AN占用两个比特,用于声明其协议类型和安全协议的密钥,以及下一个数据包号,TCI在AN之前,占用6个比特,其中包括版本号(Version)、终端站(End Station,ES)、安全通道(Secure Channel,SC)、安全通道广播(Secure Channel Broadcast)、加密(Encryption)和文本变更(Changed Text),各占用一个比特。SL占用一个字节,仅有最后四个比特有效,如果其数值小于15,则用于标识用户数据的长度,否则置为0,PN占用4个字节,是单调递增且全局唯一的正整数,用于标识一个合法的数据帧序列号,以及用于重放保护,每一个访问者将维护一个PN,取值为一个整数,初始值为一个定值。SCI是一个可选的字段,占用8个字节,用于标识安全通道。
[0086] 进一步地,在不改变现有字段的基础上,在SecTAG中增加一个优先级字段,该优先级字段是由原始报文中的第一优先级经过映射得到的字段。
[0087] 可选的,原始报文中的第一优先级可以是VLAN优先级,或者是互联网协议(Internet Protocol,IP)优先级,或者是多协议标签交换(Multiple Protocol Label Switching,MPLS)优先级。
[0088] 需要说明的是,新增加的优先级字段可以是根据需要进行设置其所占的字节数,例如可以是一个字节,或者是两个字节,或者是其它字节数。此外,该优先级字段位置可以在SecTAG末尾,或者TCI之后的任意位置。对于该优先级的字节数设置以及位置设置,本申请对此不做限定。
[0089] 参见图6B,是一种设置优先级字段后的SecTAG格式示意图。在该SecTAG字段中包括以太网数据帧声明类型字段、TCI字段、AN字段、SL字段、PN字段、SCI字段和优先级字段。与设置前的SecTAG相比,仅仅是在SCI字段之后增加了1字节的优先级字段,其它字段的长度以及含义等没有发生改变。可以理解,该优先级字段可以根据原始报文中的第一优先级,按照业务要求以及网络规划灵活设置,其在SecTAG中所占的字节数以及位置也可以灵活调整,即该优先级所占字节数也可以不是1比特,可以是其它值,其位置也可以不在SecTAG的末尾,可以在TCI之后的任意位置。
[0090] 在一种可能的实现方式中,所述方法还包括:所述第一网络设备将所述SecTAG中的版本version字段设置为1。
[0091] 具体地,在现有的协议版本中,TCI中的版本号字段被设置为0,且是固定不变的。由于现在在SecTAG中增加了优先级字段,所以为了区分之前现有的协议版本,故将version的值设置为1,此外,通过将其设置为1后,也能够保证在后续版本更替的时候,本申请仍具有适用性,可以做到版本兼容。
[0092] 在一种可能的实现方式中,所述VLAN优先级包括802.1P字段,所述IP优先级包括差分服务代码点DSCP字段,所述MPLS优先级包括试验EXP字段。
[0093] 具体地,第一网络设备在识别原始报文的优先级时是通过识别报文中的优先级字段,从而识别出原始报文的优先级。对于VLAN的优先级,主要是识别其中的802.1P字段,802.1P协议头包括一个3位优先级字段,该字段将数据包分组为各种流量种类,最高优先级为7,应用于关键性网络流量,例如路由选择信息协议(Routing Information Protocol,RIP)和开放最短路径优先(Open Shortest Path First,OSPF)协议的路由表更新。优先级6和5主要用于延迟敏感应用程序,例如交互式视频和语音,优先级4到1只要用于受控负载应用程序,例如流式多媒体和关键性业务流量,优先级0是缺省值,并在没有设置其它优先级值的情况下自动启用。
[0094] 对于IP的优先级,主要是识别报文中的差分服务代码点(Differentiated Services Code Point,DSCP)字段,IP分组报头中包括一个6位优先级字段,使用的是服务类型(Type Of Service,TOS)字节。DSCP优先级值有64个,0优先级最低,63优先级最高。
[0095] 对于MPLS的优先级,主要是识别报文中的试验(EXP)字段。在MPLS中,数据传输发生在标签交换路径(Label Switching Router,LSP)上,标签是一个长度固定、只具有本地意义的短标识符,用于唯一标识一个分组所属的转发等价类(Forwarding Equivalence Classes,FEC),标签字段由报文的头部所携带,不包含拓扑信息,只具有局部意义,其长度为4个字节,共有4个域,分别为标签值字段(Label)、保留试验字段(EXP)、栈底标识(S)和生存时间字段(Time To Live,TTL)。Label占用20比特,用于转发的指针。EXP占用3比特,可以包括8个优先级,用于对MPLS的优先级进行标识,数字越大,优先级越高。S占用1比特,其值为1时表明为最低层标签。TTL占用8比特,用于表示数据包在网络上生存多久,每通过一个路由器,该值减1,当该值为0时,其对应的数据包将被丢弃。
[0096] 需要说明的是,MAC服务由点对点或者全连通的局域网提供。在服务请求后,就会有相应的服务操作执行,每一个参与安全MAC服务的端口,都包含有MAC安全密钥协议实体(KaY)和MAC安全实体(SecY)。每一个KaY都会监测到同一局域网内其它的KaY,它们相互鉴别、授权,在MAC安全实体的站点间创建并保持可靠的帧传送和接收。
[0097] 安全连通联合(CA)为实现MACsec提供了网络连接的基础,每一个CA都由安全通道(Secure Channel,SC)支持,SC通过系统中使用对称加密算法,保证了帧的安全传送。每一个SC由一系列相互重叠的安全联合(SA)组成,每一个SA使用一个新的安全协议密钥(Security Agreement Key,SAK)来保证以太网操作的安全性。每一个SC都需要具有很强的稳定性,能够不中断的持续保持,而SAK需要定期更新,以防密钥被攻破,此外,MACsec只允许一个密钥对有限个数据进行加密,SecY可以采用默认的密码体系高级加密标准(Advanced Encryption Standard,AES)来保证数据的安全,也可以采用其它完备定义的加密系统。
[0098] 第一网络设备利用保护模块对数据进行加密,将加密后的数据与安全协议密钥,数据包号,安全通道标识,源地址和目的地址一起输入加密模块,得到完整性校验值,并将该完整性校验值添加至加密报文后,发送给第二网络设备。
[0099] S502:第二网络设备接收第一网络设备发送的MACsec报文,根据该MACsec报文中的优先级字段进行映射,得到映射后的第二优先级,并根据该第二优先级进行调度或转发该MACsec报文。
[0100] 具体地,第二网络设备在接收到MACsec报文之后,从帧头中获取协议号,安全通道标识和数据包号,并获得安全协议的密钥,根据获得的这些信息与源地址和目的地址一起计算得到完整性校验值,将该计算得到的完整性校验值与保存在帧中的完整性校验值进行比较,如果匹配,第二网络设备处理该帧,如果不匹配,则按照预设策略进行处理,比如丢弃该帧。
[0101] 进一步地,第二网络设备在接收到该MACsec报文之后,从SecTAG字段中获取到该MACsec报文的优先级字段,从而获取到该MACsec报文对应的原始报文的第一优先级,第二网络设备根据该优先级字段进行再次映射得到第二优先级。
[0102] 需要说明的是,第二网络设备可以根据网络规划的不同对该优先级字段进行映射得到第二优先级,第二优先级可以是VLAN优先级,或者是IP优先级,或者是MPLS优先级。可以理解,第二优先级可以和第一优先级一致,也可以不一致。
[0103] 具体地,若该MACsec报文需要经过MPLS网络到达接收设备,则第二网络设备可以将该优先级字段映射得到MPLS优先级,这样,在穿越MPLS网络时,MPLS网络中的其它网络设备就可以根据MPLS优先级进行调度和转发该MACsec报文,保证不被丢弃。类似的,若该MACsec报文需要经过VLAN网络或IP网络到达接收设备,则第二网络设备可以将该优先级字段映射得到VLAN优先级或IP优先级,在穿越VLAN网络或IP网络时,VLAN网络或IP网络中的其它网络设备就可以根据VLAN优先级或IP优先级进行调度和转发该MACsec报文。
[0104] 参见图7,是本申请实施例提供的一种MACsec报文传输示意图。如图7所示,第一网络设备通过MPLS网络与第二网络设备进行通信。通信是双向的,即第一网络设备可以是发送端设备,第二网络设备是接收端设备,或者是第一网络设备是接收端设备,第二网络设备是发送端设备。以第一网络设备为发送端设备,第二网络设备为接收端设备为例进行说明。该第一网络设备可以是用户边缘设备(Customer Edge,CE),第一网络设备将原始报文进行加密后得到MACsec报文,并将该MACsec报文发送给MPLS网络中的第一边缘设备,该第一边缘设备可以是标签边缘路由器(Label Edge Router,LER),第一边缘设备可以根据该MACsec报文中的优先级字段在本设备内部做优先级调度,然后对该优先级字段进行再次映射,得到EXP字段的值,第一边缘设备将该MACsec报文添加标签字段信息时,将得到的EXP字段的值也添加于标签字段中,作为MPLS优先级,然后转发该添加了标签字段的报文,即向MPLS转发设备发送该添加了标签字段的报文,MPLS转发设备可以是标签交换路由器(Label Switching Router,LSR)。MPLS转发设备接收到添加了标签字段的报文后,根据其中的EXP字段,对该报文所承载的业务采取预先设定的服务策略,进行内部优先级调度并向第二边缘设备发送该添加了标签字段的报文,第二边缘设备在接收到该该添加了标签字段的报文后,将该标签字段进行去除,将去除后的报文发送给第二网络设备,第二网络设备接收第二边缘设备发送的去除标签字段后的报文,完成整个MACsec报文的传输。
[0105] 参见图8,是本申请实施例提供的一种中间报文封装格式示意图。如图8所示,在原MACsec报文的基础上,增加了新的目的MAC地址和源MAC地址,以及MPLS标签字段和业务区分字段(VC),最上层的目的MAC地址是发往下一个转发设备的MAC地址,源MAC地址是本转发设备的MAC地址,MPLS标签字段中包括EXP字段,用于标识该报文的MPLS优先级,VC主要是用于标识区分具体是哪一个业务。至于后续的字段信息,与MACsec报文中的一样,并没有发生变化,即只是对MACsec报文外层进行了再次封装,对于MACsec报文报文本身并没有进行改变。
[0106] 需要说明的是,MPLS网络中可以包含不止一个LSR和LER,MACsec在MPLS网络中通过的路劲称为标签交换路径(Label Switching Path,LSP),MACsec报文在添加了标签字段后,沿着一系列由LSR构成的LSP传送,该LSP可以是静态的,也可以是动态的,静态LSP由管理员手工配置,动态LSP则由路由协议和标签发布协议动态产生。
[0107] 可以看出,MPLS网络中的边缘设备通过将MACsec报文中的优先级字段映射为EXP字段,可以实现添加了标签字段的MACsec报文在通过MPLS网络时,在MPLS转发设备做内部优先级调度,而且MPLS转发设备也可以根据该EXP字段进行有差别的转发,保证服务质量,保证重要报文在MPLS网络中传输得到高优先级调度并不被丢弃。
[0108] 参见图9,是本申请实施例提供的另一种MACsec报文传输示意图。如图9所示,第一网络设备通过VLAN网络与第二网络设备进行通信。该通信过程仍是双向的,以第一网络设备为发送端,第二网络设备为接收端为例进行说明。第一网络设备将原始报文加密后得到MACsec报文,并将该MACsec报文发送给VLAN网络中的第一VLAN转发设备,该第一VLAN转发设备根据该MACsec报文中的优先级字段在本设备内部做优先级调度,然后对该优先级字段进行再次映射,得到802.1P字段的值,第一VLAN转发设备将该MACsec报文添加VLAN优先级字段时,将得到的802.1P字段的值也添加于VLAN字段中,作为VLAN优先级,然后向第二VLAN转发设备发送该添加了VLAN字段的报文,第二VLAN转发设备接收到该添加了VLAN字段的报文后,向第二网络设备发送该报文,完成MACsec报文的传输,或者是第二VLAN转发设备根据其中的802.1P字段,对该报文采取预先设定的服务策略,进行内部优先级调度并向下一个VLAN转发设备发送该添加了VLAN字段的报文,下一个VLAN转发设备向第二网络设备发送该报文,完成MACsec报文的传输。
[0109] 参见图10,是本申请实施例提供的另一种中间报文封装格式示意图。如图10所示,在原MACsec报文的基础上,增加了VLAN字段,该VLAN字段位于SecTAG字段之前,该VLAN字段中包括802.1P字段,用于标识该报文的VLAN优先级,其它字段没有发生变化,即只是在MACsec报文中增加了一个VLAN字段,对于MACsec报文本身并没有进行改变。
[0110] 需要说明的是,VLAN网络中可以包含不止一个第一VLAN转发设备和第二VLAN转发设备。
[0111] 可以看出,VLAN网络中的第一VLAN转发设备通过将MACsec报文中的优先级字段映射为802.1P字段,可以实现MACsec报文在通过VLAN网络时,在第一VLAN转发设备和第二VLAN转发设备内部做优先级调度,而且第一VLAN转发设备和第二VLAN转发设备也可以根据该802.1P字段进行有差别的转发,保证服务质量,保证重要报文在VLAN网络中传输得到高优先级调度并不被丢弃。
[0112] 值得说明的是,若该MACsec报文需要经过IP网络到达接收设备,则IP网络中的第一IP转发设备接收第一网络设备发送的MACsec报文,根据该MACsec报文中的优先级字段在本设备内部做优先级调度,然后对该优先级字段进行再次映射,得到DSCP字段的值,第一IP转发设备将该MACsec报文添加IP优先级字段时,将得到的DSCP字段的值也添加于IP字段中,作为IP优先级,然后向第二IP转发设备发送该添加了DSCP字段的报文,第二IP转发设备根据其中的DSCP字段,对该报文采取预先设定的服务策略,进行内部优先级调度并向下一个IP转发设备发送该添加了DSCP字段的报文,直至最后一个IP转发设备向第二网络设备发送给报文,完成MACsec报文的传输。
[0113] 进一步地,需要说明的是,MACsec报文在IP网络中传输时,其格式会发生变化,主要是每经过一个转发设备的转发后,其报文中的目的地址和源地址都会不一样,而且所有的转发设备都需要分析IP头并知道整个网络的所有路由。
[0114] 为了便于更好地实施本申请实施例的上述方案,相应地,下面还提供用于配合实施上述方案的相关装置。
[0115] 参见图11,图11为本申请实施例提供的一种第一网络设备的结构示意图,该第一网络设备100至少包括:识别模块110、设置模块120和发送模块130;其中:
[0116] 识别模块110,用于识别原始报文的第一优先级;
[0117] 设置模块120,用于在所述原始报文对应的媒体接入安全协议MACsec报文中设置优先级字段,所述原始报文包括多个类型数据,每个类型数据对应各自的优先级;
[0118] 发送模块130,用于向第二网络设备发送所述MACsec报文,以使所述第二网络设备根据所述优先级字段进行映射,得到映射后的第二优先级,并根据所述原始优先级进行调度或转发所述MACsec报文。
[0119] 需要说明的是,本申请实施例中的各个功能模块还可以根据上述方法实施例中的方法具体实现,在此不再赘述。
[0120] 实施本申请实施例,第一网络设备在向第二网络设备发送MACsec报文之前,先对原始报文的第一优先级进行识别,在识别后对该原始报文的优先级进行映射得到优先级字段并将其设置在该原始报文对应的MACsec报文中,然后将该MACsec报文发送给第二网络设备以使第二网络设备可以根据该优先级字段进行再次映射,得到映射后的第二优先级,并根据第二优先级进行调度和转发,可以保证在网络拥塞的情况下,重要报文(优先级高的报文)在网络传输中得到高优先级调度并不被丢弃。
[0121] 参见图12,图12为本申请实施例提供的一种第二网络设备的结构示意图,该第二网络设备200至少包括:接收模块210、映射模块220和调度转发模块230;其中:
[0122] 接收模块210,用于接收第一网络设备发送的媒体接入安全协议MACsec报文,所述MACsec报文设置有优先级字段,所述优先级字段为所述第一网络设备在识别出所述MACsec报文对应的原始报文的第一优先级后设置的字段,其中,所述原始报文包括多个类型数据,每个类型数据对应各自的优先级;
[0123] 映射模块220,用于根据所述优先级字段进行映射,得到映射后的第二优先级;
[0124] 调度转发模块230,用于根据所述第二优先级调度或转发所述MACsec报文。
[0125] 需要说明的是,本申请实施例中的各个功能模块还可以根据上述方法实施例中的方法具体实现,在此不再赘述。
[0126] 上述各个模块可以为软件模块,第一网络设备和第二网络设备执行代码实现各自的软件模块。
[0127] 实施本申请实施例,第二网络设备接收第一网络设备发送的MACsec报文,通过对MACsec报文中的SecTAG中的优先级字段进行映射,得到映射后的第二优先级,然后根据该第二优先级调度或转发该MACsec报文,可以保证在网络拥塞的情况下,重要报文(优先级高的报文)在网络传输中得到高优先级调度并不被丢弃。
[0128] 参见图13,图13为本申请实施例提供的另一种第一网络设备300。该第一网络设备300至少包括:处理器310、存储器320和收发器330,该处理器310、存储器320和收发器330通过总线340相互连接。
[0129] 存储器320包括但不限于是随机存取存储器(Random Access Memory,RAM)、只读存储器(Read-Only Memory,ROM)或可擦除可编程只读存储器(Erasable Programmable Read-Only Mmory,EPROM或者快闪存储器),该存储器320用于存储相关指令及数据。
[0130] 该收发器330可以包括一个接收器和一个发送器,例如,无线射频模块,以下描述的处理器310接收或者发送某个消息,具体可以理解为该处理器310通过该收发器330来接收或者发送。
[0131] 处理器310可以是一个或多个中央处理器(Central Processing Unit,CPU),在处理器310是一个CPU的情况下,该CPU可以是单核CPU,也可以是多核CPU。
[0132] 该通信装置300中的处理器310用于读取该存储器320中存储的程序代码,执行以下操作:
[0133] 处理器310识别原始报文的第一优先级,并在所述原始报文对应的媒体接入安全协议MACsec报文中设置优先级字段,所述原始报文包括多个类型数据,每个类型数据对应各自的优先级;
[0134] 处理器310通过收发器330向第二网络设备发送MACsec报文,以使所述第二网络设备根据所述优先级字段进行映射,得到映射后的第二优先级,并根据所述第二优先级进行调度或转发所述MACsec报文。
[0135] 基于该实施方式,可以保证在网络拥塞的情况下,重要报文(优先级高的报文)在网络传输中得到高优先级调度并不被丢弃。
[0136] 参见图14,图14为本申请实施例提供的另一种第二网络设备400。该第二网络设备400至少包括:处理器410、存储器420和收发器430,该处理器410、存储器420和收发器430通过总线440相互连接。
[0137] 存储器420包括但不限于是随机存取存储器(Random Access Memory,RAM)、只读存储器(Read-Only Memory,ROM)或可擦除可编程只读存储器(Erasable Programmable Read-Only Mmory,EPROM或者快闪存储器),该存储器420用于存储相关指令及数据。
[0138] 该收发器430可以包括一个接收器和一个发送器,例如,无线射频模块,以下描述的处理器410接收或者发送某个消息,具体可以理解为该处理器410通过该收发器430来接收或者发送。
[0139] 处理器410可以是一个或多个中央处理器(Central Processing Unit,CPU),在处理器410是一个CPU的情况下,该CPU可以是单核CPU,也可以是多核CPU。
[0140] 该通信装置400中的处理器410用于读取该存储器420中存储的程序代码,执行以下操作:
[0141] 处理器410通过收发器430接收第一网络设备发送的媒体接入安全协议MACsec报文,所述MACsec报文设置有优先级字段,所述优先级字段为所述第一网络设备在识别出所述MACsec报文对应的原始报文的第一优先级后设置的字段,其中,所述原始报文包括多个类型数据,每个类型数据对应各自的优先级。
[0142] 处理器410根据所述优先级字段进行映射,得到映射后的第二优先级。
[0143] 处理器410通过收发器430调度或转发所述MACsec报文。
[0144] 基于该实施方式,可以保证在网络拥塞的情况下,重要报文(优先级高的报文)在网络传输中得到高优先级调度并不被丢弃。
[0145] 本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机或处理器上运行时,使得计算机或处理器执行上述任一个MACsec报文传输方法中的一个或多个步骤。上述装置的各组成模块如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在所述计算机可读取存储介质中。
[0146] 上述计算机可读存储介质可以是前述任一实施例所述的第一网络设备或第二网络设备的内部存储单元,例如第一网络设备或第二网络设备的硬盘或内存。上述计算机可读存储介质也可以是上述第一网络设备或第二网络设备的外部存储设备,例如上述第一网络设备或第二网络设备上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,上述计算机可读存储介质还可以既包括上述第一网络设备或第二网络设备的内部存储单元也包括外部存储设备。上述计算机可读存储介质用于存储上述计算机程序以及上述第一网络设备或第二网络设备所需的其他程序和数据。上述计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。
[0147] 本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,可通过计算机程序来指令相关的硬件来完成,该的程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可存储程序代码的介质。
[0148] 本申请实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。
[0149] 本申请实施例装置中的模块可以根据实际需要进行合并、划分和删减。
[0150] 以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。