[发明专利]一种基于事件驱动的高效数据加密转发方法及装置在审
申请号: | 202210098842.X | 申请日: | 2022-01-24 |
公开(公告)号: | CN114500052A | 公开(公告)日: | 2022-05-13 |
发明(设计)人: | 邓进;王晔;郭靓;韦小刚;郑卫波;刘行;殷鑫鹏;纪元;金倩倩;姜涛;田鹏飞;鲍俊丞 | 申请(专利权)人: | 南京南瑞信息通信科技有限公司 |
主分类号: | H04L9/40 | 分类号: | H04L9/40 |
代理公司: | 南京纵横知识产权代理有限公司 32224 | 代理人: | 董建林 |
地址: | 210003 *** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 事件 驱动 高效 数据 加密 转发 方法 装置 | ||
本发明公开了一种基于事件驱动的高效数据加密转发方法及装置,所述方法包括建立本端与客户端、服务端之间的网络连接,通过异步方式调用加密卡,以初始状态监听每个连接和加密卡的读事件;当客户端连接可读时,从客户端读取数据并尝试写入数据到加密卡输入队列;当加密卡可写时,将未成功写入的客户端数据写入到加密卡输入队列;当加密卡可读时,从加密卡输出队列读取数据并尝试发送给服务端;当服务端连接可写时,将未成功发送的数据发送到服务端,完成整个客户端数据到服务端的转发过程,本发明确保程序运行不阻塞不空转,高效完成数据加解密和数据转发过程。
技术领域
本发明涉及一种基于事件驱动的高效数据加密转发方法及装置,属于数据传输技术领域。
背景技术
在物联网环境中,海量物联终端需要与后端服务器进行通信,为验证物联终端身份,并保证传输数据的安全性,一般通过加密网关等装置进行终端身份验证和数据加密传输,这要求加密网关具有高并发、高吞吐的特性。在处理网络请求时,一般有如下几种模型:
1)多线程模型,该模型对于每一个连接创建一个线程处理。在海量物联终端的背景下,该模型需要创建大量的线程,线程切换将是一笔很大的开销。
2)线程池模型,该模型一般创建一个线程接收任务,并将任务加入队列,若干个工作线程从队列中取任务执行。该模型存取任务都需要加锁,且接收任务的线程可能会成为整个系统的瓶颈。
3)多进/线程独立监听模型,该模型使用Linux内核提供的REUSEPORT特性,多进/线程同时监听同一个端口,且每个进/线程的监听独立。该模型避免了“惊群”现象的发生,可以最大限度的利用多核处理器的优势,现代网络程序一般采用该模型进行网络连接的处理。但该模型存在进/线程数量变化时数据包会按新的进/线程数重新分配的问题。
加密网关需要进行大量的数据加解密运算,在同步加密卡调用模式下,会造成程序等待加解密运算结果的情形,不利于处理器的利用。
物联终端一般通过无线网络进行通信,且终端性能一般不高,势必会导致加密网关两侧网络收发速度不匹配问题。对于此问题,一般可以采用如下方法处理。方法一,循环等待数据发送结束,但该方式会阻塞线程,不能及时处理其他已经就绪的连接;方法二,缓存数据,等待下次发送,该方法在存在大量慢连接时,会消耗大量内存。
发明内容
本发明的目的在于克服现有技术中的不足,提供一种基于事件驱动的高效数据加密转发方法及装置,确保程序运行不阻塞不空转,高效完成数据加解密和数据转发过程。
为达到上述目的,本发明是采用下述技术方案实现的:
第一方面,本发明提供了一种基于事件驱动的高效数据加密转发方法及装置,包括:
建立本端与客户端、服务端之间的网络连接,通过异步方式调用加密卡,以初始状态监听每个连接和加密卡的读事件;
当客户端连接可读时,从客户端读取数据并尝试写入数据到加密卡输入队列;
当加密卡可写时,将未成功写入的客户端数据写入到加密卡输入队列;
当加密卡可读时,从加密卡输出队列读取数据并尝试发送给服务端;
当服务端连接可写时,将未成功发送的数据发送到服务端,完成整个客户端数据到服务端的转发过程。
进一步的,所述当客户端连接可读时,从客户端读取数据并尝试写入数据到加密卡输入队列,包括:
如果写入失败,开始监听加密卡读写,等待下次写入加密卡;
判断客户端连接是否存在未发送数据,如果存在,监听客户端连接写,否则不监听客户端连接写。
进一步的,还包括:在客户端数据成功发送到服务端前,不监听客户端连接读。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京南瑞信息通信科技有限公司,未经南京南瑞信息通信科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210098842.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种动物实验室空气循环装置及方法
- 下一篇:一种银饰加工用圆片成型装置