System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种基于SeND的内核与协议栈的交互方法及装置制造方法及图纸_技高网

一种基于SeND的内核与协议栈的交互方法及装置制造方法及图纸

技术编号:43685739 阅读:14 留言:0更新日期:2024-12-18 21:05
本申请提供了一种基于SeND的内核与协议栈的交互方法及装置,属于通信技术领域。该方法中内核当接收到ICMPv6SeND报文之后,基于预设验证规则,确定ICMPv6SeND报文是否为组装验证报文;其中,预设验证规则用于识别ICMPv6SeND报文是否携带SeND选项字段;若是,将组装验证报文封装得到校验消息,以将校验消息发送至协议栈;根据来自协议栈的校验结果,匹配相应的处理策略,以根据处理策略对组装验证报文进行处理。从而解决对目前ICMPv6SeND报文处理效率低下,报文量大时容易导致内核与协议栈的消息队列阻塞的问题,提升用户使用体验。

【技术实现步骤摘要】

本申请涉及通信,尤其涉及一种基于send的内核与协议栈的交互方法及装置。


技术介绍

1、send(secure neighbor discovery,安全邻居发现)是一种用于ipv6(internetprotocol version 6,互联网协议第6版)网络中邻居发现和地址解析的安全协议。它旨在提高ipv6网络的安全性,特别是防止地址欺骗和邻居发现协议的各种攻击。icmpv6(internet control message protocol version 6,互联网控制信息协议版本六)依赖send机制的报文为icmpv6 send报文。

2、专利技术人发现,目前设备在接收到icmpv6 send报文时,通常要由内核对部分报文内的选项字段option进行单独地消息组装,随后由协议栈完成校验,并返回组装校验结果消息至内核。该种方式导致报文处理效率低下,且在同时面临大量报文时,易使内核与协议栈的消息队列阻塞,影响通信功能正常运行,给用户带来不友好的体验。


技术实现思路

1、本申请实施例提供了一种基于send的内核与协议栈的交互方法及装置,用于解决目前icmpv6 send报文处理效率低下,报文量大时容易导致内核与协议栈的消息队列阻塞,影响用户使用体验。

2、一方面,本申请实施例提供了一种基于send的内核与协议栈的交互方法,该方法包括:

3、内核当接收到icmpv6 send报文之后,基于预设验证规则,确定所述icmpv6 send报文是否为组装验证报文;其中,所述预设验证规则用于识别所述icmpv6 send报文是否携带send选项字段;

4、若是,将所述组装验证报文封装得到校验消息,以将所述校验消息发送至协议栈;

5、根据来自所述协议栈的校验结果,匹配相应的处理策略,以根据所述处理策略对所述组装验证报文进行处理。

6、在本申请的一种实现方式中,所述send选项字段为与send的安全机制相关的选项,至少包括timestamp option、nonce option、cga option、rsa option。

7、在本申请的一种实现方式中,将所述组装验证报文封装得到校验消息,以将所述校验消息发送至协议栈之前,所述方法还包括:

8、内核对所述timestamp option及所述nonce option进行校验;

9、在校验结果为通过的情况下,将所述组装验证报文进行封装处理;

10、否则,根据所述处理策略对所述组装验证报文进行处理。

11、在本申请的一种实现方式中,所述处理策略至少包括结束流程、内核回复报文。

12、在本申请的一种实现方式中,将所述组装验证报文封装得到校验消息,以将所述校验消息发送至协议栈,具体包括:

13、确定所述组装验证报文对应的send选项字段数量;

14、根据所述send选项字段数量,确定可变长度options列表及封装头部,并将各所述send选项字段添加至所述可变长度options列表;

15、根据所述封装头部及添加字段后的所述可变长度options列表,进行封装得到所述校验消息,以将所述校验消息发送至协议栈。

16、另一方面,本申请实施例还提供了一种基于send的内核与协议栈的交互装置,所述装置包括:

17、确定模块,用于内核当接收到icmpv6 send报文之后,基于预设验证规则,确定所述icmpv6 send报文是否为组装验证报文;其中,所述预设验证规则用于识别所述icmpv6send报文是否携带send选项字段;

18、封装模块,用于若是,将所述组装验证报文封装得到校验消息,以将所述校验消息发送至协议栈;

19、匹配模块,用于根据来自所述协议栈的校验结果,匹配相应的处理策略,以根据所述处理策略对所述组装验证报文进行处理。

20、在本申请的一种实现方式中,所述send选项字段为与send的安全机制相关的选项,至少包括timestamp option、nonce option、cga option、rsa option。

21、在本申请的一种实现方式中,将所述组装验证报文封装得到校验消息,以将所述校验消息发送至协议栈之前,所述装置还包括:

22、校验模块,用于内核对所述timestamp option及所述nonce option进行校验;

23、所述封装模块,在校验结果为通过的情况下,将所述组装验证报文进行封装处理;

24、处理模块,用于否则,根据所述处理策略对所述组装验证报文进行处理。

25、在本申请的一种实现方式中,所述处理策略至少包括结束流程、内核回复报文。

26、在本申请的一种实现方式中,所述封装模块,具体用于:

27、确定所述组装验证报文对应的send选项字段数量;

28、根据所述send选项字段数量,确定可变长度options列表及封装头部,并将各所述send选项字段添加至所述可变长度options列表;

29、根据所述封装头部及添加字段后的所述可变长度options列表,进行封装得到所述校验消息,以将所述校验消息发送至协议栈。

30、本申请与现有技术相比,其显著效果如下:

31、通过上述技术方案,无需针对每一个option单独封装消息发往协议栈校验,每份报文只封装一个消息,极大地减少了对于消息队列的占用,保证内核与协议栈之间消息队列的正常运行。进而提高了对icmpv6 send报文处理效率,在报文量大时仍能够保障内核与协议栈消息队列畅通,提高用户的使用体验。

本文档来自技高网...

【技术保护点】

1.一种基于SeND的内核与协议栈的交互方法,其特征在于,所述方法包括:

2.根据权利要求1所述的一种基于SeND的内核与协议栈的交互方法,其特征在于,所述SeND选项字段为与SeND的安全机制相关的选项,至少包括Timestamp option、Nonceoption、CGA option、RSA option。

3.根据权利要求2所述的一种基于SeND的内核与协议栈的交互方法,其特征在于,将所述组装验证报文封装得到校验消息,以将所述校验消息发送至协议栈之前,所述方法还包括:

4.根据权利要求3所述的一种基于SeND的内核与协议栈的交互方法,其特征在于,所述处理策略至少包括结束流程、内核回复报文。

5.根据权利要求1所述的一种基于SeND的内核与协议栈的交互方法,其特征在于,将所述组装验证报文封装得到校验消息,以将所述校验消息发送至协议栈,具体包括:

6.一种基于SeND的内核与协议栈的交互装置,其特征在于,所述装置包括:

7.根据权利要求1所述的一种基于SeND的内核与协议栈的交互装置,其特征在于,所述SeND选项字段为与SeND的安全机制相关的选项,至少包括Timestamp option、Nonceoption、CGA option、RSA option。

8.根据权利要求7所述的一种基于SeND的内核与协议栈的交互方法,其特征在于,将所述组装验证报文封装得到校验消息,以将所述校验消息发送至协议栈之前,所述装置还包括:

9.根据权利要求8所述的一种基于SeND的内核与协议栈的交互方法,其特征在于,所述处理策略至少包括结束流程、内核回复报文。

10.根据权利要求1所述的一种基于SeND的内核与协议栈的交互方法,其特征在于,所述封装模块,具体用于:

...

【技术特征摘要】

1.一种基于send的内核与协议栈的交互方法,其特征在于,所述方法包括:

2.根据权利要求1所述的一种基于send的内核与协议栈的交互方法,其特征在于,所述send选项字段为与send的安全机制相关的选项,至少包括timestamp option、nonceoption、cga option、rsa option。

3.根据权利要求2所述的一种基于send的内核与协议栈的交互方法,其特征在于,将所述组装验证报文封装得到校验消息,以将所述校验消息发送至协议栈之前,所述方法还包括:

4.根据权利要求3所述的一种基于send的内核与协议栈的交互方法,其特征在于,所述处理策略至少包括结束流程、内核回复报文。

5.根据权利要求1所述的一种基于send的内核与协议栈的交互方法,其特征在于,将所述组装验证报文封装得到校验消息,以将所述校验消息发送至...

【专利技术属性】
技术研发人员:王佳成
申请(专利权)人:浪潮网络科技山东有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1