CN111541646A - 一种增强密码机安全服务接入能力的方法 - Google Patents
一种增强密码机安全服务接入能力的方法 Download PDFInfo
- Publication number
- CN111541646A CN111541646A CN202010215461.6A CN202010215461A CN111541646A CN 111541646 A CN111541646 A CN 111541646A CN 202010215461 A CN202010215461 A CN 202010215461A CN 111541646 A CN111541646 A CN 111541646A
- Authority
- CN
- China
- Prior art keywords
- service
- cryptographic
- machine
- working
- thread
- 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.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
-
- 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
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/141—Setup of application sessions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明涉及信息安全密码技术领域,本发明公开了一种增强密码机安全服务接入能力的方法,主控进程创建并监控多个工作进程,工作进程绑定到若干个CPU核上,每个CPU核需驻留N个工作进程,其中N≥2;工作进程创建并管理服务线程池,由服务线程池中的服务线程实现业务指令报文解析与处理;工作进程配备共享资源,由进程所属服务线程池中的多个服务线程共享使用,并实现与其他工作进程之间的资源隔离。本发明通过引入工作进程多核绑定、服务线程池以及密码运算统一调度技术,大幅提升密码机的安全服务接入能力,即使在高并发业务接入场景下,密码机的密码运算性能不损失,充分利用了密码机的硬件平台资源,本发明能快速适配到不同的密码机硬件平台。
Description
技术领域
本发明涉及信息安全密码技术领域,尤其涉及一种增强密码机安全服务接入能力的方法。
背景技术
密码技术是信息安全的技术基础,密码机是密码技术安全应用的基础和信息化安全的核心。随着我国信息化产业高速全面发展,作为信息安全基础核心的密码设备,一直通过不断升级硬件平台提供更强性能的密码业务服务,也面临着越来越高的业务服务并发接入要求。
传统的密码机安全服务并发接入通常采用多进程方式,为每个接入的业务服务创建一个专用服务进程,完成报文收发、解析和密码运算,实现密码业务指令的快速处理。当业务服务接入数量大幅增长时,服务进程的创建将占用大量CPU和内存资源;同时,由于进程数量过大,当大量进程同时进行指令处理时,大部分的CPU资源将被消耗于进程上下文切换,导致密码机的密码服务性能急剧下降,不能充分发挥密码机的安全服务性能,造成硬件资源的极大浪费。
发明内容
为了解决上述问题,为了解决密码机在上述业务服务高并发接入场景下存在的性能陡降和资源浪费问题,进一步提升密码机的并发接入服务性能,本发明提出一种增强密码机安全服务接入能力的方法,其技术方案如下:
主控进程创建并监控多个工作进程,所述工作进程绑定到若干个CPU核上,每个CPU核需驻留N个所述工作进程,其中N≥2;所述工作进程创建并管理服务线程池,由所述服务线程池中的服务线程实现业务指令报文解析与处理;所述工作进程配备共享资源,由进程所属服务线程池中的多个服务线程共享使用,并实现与其他工作进程之间的资源隔离。
进一步的,所述工作进程采用基于多路IO复用技术的事件驱动架构,能够以较低的资源需求高效处理数以万计的TCP并发网络连接。
进一步的,所述工作进程的数量根据密码机所使用硬件平台的CPU核数进行设定,其数量至少是所述CPU核数的两倍,并均衡地绑定到各个CPU核上。
进一步的,所述服务线程采用线程池的方式以避免密码机线程或进程过多造成性能下降,所述服务线程池中服务线程的数量根据密码机所使用的密码卡的并发处理能力确定,以充分利用密码卡的密码运算性能。
进一步的,所述服务线程使用密码运算统一调度模块与密码卡进行交互,所述密码运算统一调度模块提供了抽象的密码卡应用接口,能够屏蔽不同密码卡之间的接口使用差异。
进一步的,当密码卡数量多于1张时,所述密码运算统一调度模块根据指定的调度策略选择密码卡执行密码运算,最大限度利用所有密码卡的性能。
进一步的,本发明的方法具体包括以下步骤:
步骤1:密码机创建主控制进程;所述主控制进程启动后,依次进行所有密码卡初始化及功能检查、***参数优化、网络参数优化和网络服务创建;
步骤2:所述主控制进程创建设定数量的工作进程并将其绑定到相应的CPU核;所述工作进程启动后,依次创建服务共享资源和设定数量的服务线程;
步骤3:所述工作进程接收业务***的TCP网络连接请求,并在该连接上接收业务***的密码服务请求报文;
步骤4:所述工作进程从服务线程池中选出负载最轻的线程,由该线程解析请求报文、调用密码卡进行密码运算并向业务***返回响应报文。
进一步的,所述步骤2中:所述服务线程池中线程数量根据密码机所使用密码卡的并发处理能力确定,以充分利用密码卡的运算性能。
进一步的,所述步骤4中:服务线程池中各线程的负载由工作进程根据该线程事务队列中事务的权重和数量加权计算得到。
本发明的有益效果在于:通过引入工作进程多核绑定、服务线程池以及密码运算统一调度技术,大幅提升密码机的安全服务接入能力;即使在高并发业务接入场景下,密码机的密码运算性能不损失,充分利用了密码机的硬件平台资源;根据CPU核数和密码卡性能确定出工作进程和服务线程的数量,本发明能快速适配到不同的密码机硬件平台。
附图说明
本发明将通过例子并参照附图的方式说明,其中:
图1为本发明所述增强密码服务接入能力的应用示意图;
图2为本发明业务请求报文的完整处理流程示意图。
具体实施方式
为了对本发明的技术特征、目的和效果有更加清楚的理解,现说明本发明的具体实施方式。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明,即所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
本实施例提供了一种增强密码机安全服务接入能力的方法,主控进程创建并监控多个工作进程,工作进程绑定到若干个CPU核上,每个CPU核需驻留N个工作进程,其中N≥2;工作进程创建并管理服务线程池,由服务线程池中的服务线程实现业务指令报文解析与处理;工作进程配备共享资源,由进程所属服务线程池中的多个服务线程共享使用,并实现与其他工作进程之间的资源隔离。
在本发明的一个优选实施例中,工作进程采用基于多路IO复用技术的事件驱动架构,能够以较低的资源需求高效处理数以万计的TCP并发网络连接。工作进程的数量根据密码机所使用硬件平台的CPU核数进行设定,其数量至少是CPU核数的两倍,并均衡地绑定到各个CPU核上。
在本发明的一个优选实施例中,服务线程采用线程池的方式以避免密码机线程或进程过多造成性能下降,服务线程池中服务线程的数量根据密码机所使用的密码卡的并发处理能力确定,以充分利用密码卡的密码运算性能。
在本发明的一个优选实施例中,服务线程使用密码运算统一调度模块与密码卡进行交互,密码运算统一调度模块提供了抽象的密码卡应用接口,能够屏蔽不同密码卡之间的接口使用差异。当密码卡数量多于1张(1~M,M小于等于PCI-E插槽数量)时,密码运算统一调度模块根据指定的调度策略选择密码卡执行密码运算,最大限度利用所有密码卡的性能。
在本发明的一个优选实施例中,该方法具体包括以下步骤:
步骤1:密码机创建主控制进程;主控制进程启动后,依次进行所有密码卡初始化及功能检查、***参数优化、网络参数优化和网络服务创建;
步骤2:主控制进程创建设定数量的工作进程并将其绑定到相应的CPU核;工作进程启动后,依次创建服务共享资源和设定数量的服务线程;
步骤3:工作进程接收业务***的TCP网络连接请求,并在该连接上接收业务***的密码服务请求报文;
步骤4:工作进程从服务线程池中选出负载最轻的线程,由该线程解析请求报文、调用密码卡进行密码运算并向业务***返回响应报文。
步骤2中:服务线程池中线程数量根据密码机所使用密码卡的并发处理能力确定,以充分利用密码卡的运算性能。
步骤4中:服务线程池中各线程的负载由工作进程根据该线程事务队列中事务的权重和数量加权计算得到。
在本发明的一个优选实施例中,如图1所示,采用增强密码机服务接入能力的方法后,密码机内部的逻辑实体包括:主控制进程(MP)、绑定到CPU和的工作进程(WP)、工作进程内部的服务线程(ST)池、工作进程内部的服务共享资源(SR)、密码卡统一调度模块(HSMSCHD)以及多张密码卡。其中,MP主要负责监控所有的WP,WP主要负责接收来自业务***的大量密码服务连接和数据请求,ST主要负责调用HSMSCHD处理密码服务请求,HSMSCHD负责将所有对密码运算请求均衡地分配到各个密码卡上,以充分利用密码卡的性能。
在本发明的一个优选实施例中,如图2所示,由业务***发起的密码服务请求报文处理步骤如下:
步骤1、业务***将密码服务请求通过TCP网络连接发送到密码机;
步骤2、工作进程接收请求报文,在服务线程池中选择负载最轻的服务线程,将请求报文组装成事件添加到服务线程的事件队列并通知该线程有新事件到达;
步骤3、服务线程解析请求报文,调用密码卡统一接口进行指定的密码运算;
步骤4、密码卡统一接口将选择负载最轻的密码卡进行密码运算,并将结果返回给服务线程;
步骤5、服务线程将密码运算的结果组装成密码服务响应报文,并将报文直接发送给业务***;
步骤6、业务***接收并处理密码服务响应报文,完成本次密码服务请求报文处理流程。
在密码机的工作状态下,服务线程被唤醒后将从事件队列中取出事件并处理直至队列为空,此后再次进入休眠状态以降低对CPU资源的消耗。
工作进程负责处理所有业务***的网络连接请求,接收已建立网络连接上的请求报文,选择线程池中负载最轻的服务线程,将请求报文组装成事件添加到服务线程的事件队列并通知该线程有新事件到达。
以上所述仅是本发明的优选实施方式,应当理解本发明并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、修改和环境,并能够在本文所述构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离本发明的精神和范围,则都应在本发明所附权利要求的保护范围内。
Claims (9)
1.一种增强密码机安全服务接入能力的方法,其特征在于,主控进程创建并监控多个工作进程,所述工作进程绑定到若干个CPU核上,每个CPU核需驻留N个所述工作进程,其中N≥2;所述工作进程创建并管理服务线程池,由所述服务线程池中的服务线程实现业务指令报文解析与处理;所述工作进程配备共享资源,由进程所属服务线程池中的多个服务线程共享使用,并实现与其他工作进程之间的资源隔离。
2.根据权利要求1所述的一种增强密码机安全服务接入能力的方法,其特征在于,所述工作进程采用基于多路IO复用技术的事件驱动架构,能够以较低的资源需求高效处理数以万计的TCP并发网络连接。
3.根据权利要求1所述的一种增强密码机安全服务接入能力的方法,其特征在于,所述工作进程的数量根据密码机所使用硬件平台的CPU核数进行设定,其数量至少是所述CPU核数的两倍,并均衡地绑定到各个CPU核上。
4.根据权利要求1所述的一种增强密码机安全服务接入能力的方法,其特征在于,所述服务线程采用线程池的方式以避免密码机线程或进程过多造成性能下降,所述服务线程池中服务线程的数量根据密码机所使用的密码卡的并发处理能力确定,以充分利用密码卡的密码运算性能。
5.根据权利要求1所述的一种增强密码机安全服务接入能力的方法,其特征在于,所述服务线程使用密码运算统一调度模块与密码卡进行交互,所述密码运算统一调度模块提供了抽象的密码卡应用接口,能够屏蔽不同密码卡之间的接口使用差异。
6.根据权利要求5所述的一种增强密码机安全服务接入能力的方法,其特征在于,当密码卡数量多于1张时,所述密码运算统一调度模块根据指定的调度策略选择密码卡执行密码运算,最大限度利用所有密码卡的性能。
7.根据权利要求1所述的一种增强密码机安全服务接入能力的方法,其特征在于,具体包括以下步骤:
步骤1:密码机创建主控制进程;所述主控制进程启动后,依次进行所有密码卡初始化及功能检查、***参数优化、网络参数优化和网络服务创建;
步骤2:所述主控制进程创建设定数量的工作进程并将其绑定到相应的CPU核;所述工作进程启动后,依次创建服务共享资源和设定数量的服务线程;
步骤3:所述工作进程接收业务***的TCP网络连接请求,并在该连接上接收业务***的密码服务请求报文;
步骤4:所述工作进程从服务线程池中选出负载最轻的线程,由该线程解析请求报文、调用密码卡进行密码运算并向业务***返回响应报文。
8.根据权利要求7所述的一种增强密码机安全服务接入能力的方法,其特征在于,所述步骤2中:所述服务线程池中线程数量根据密码机所使用密码卡的并发处理能力确定,以充分利用密码卡的运算性能。
9.根据权利要求7所述的一种增强密码机安全服务接入能力的方法,其特征在于,所述步骤4中:服务线程池中各线程的负载由工作进程根据该线程事务队列中事务的权重和数量加权计算得到。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010215461.6A CN111541646A (zh) | 2020-03-24 | 2020-03-24 | 一种增强密码机安全服务接入能力的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010215461.6A CN111541646A (zh) | 2020-03-24 | 2020-03-24 | 一种增强密码机安全服务接入能力的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111541646A true CN111541646A (zh) | 2020-08-14 |
Family
ID=71979922
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010215461.6A Pending CN111541646A (zh) | 2020-03-24 | 2020-03-24 | 一种增强密码机安全服务接入能力的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111541646A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113873029A (zh) * | 2021-09-24 | 2021-12-31 | 奇安信科技集团股份有限公司 | 密码服务监控方法、服务器、密码机、***和存储介质 |
CN114741169A (zh) * | 2022-03-30 | 2022-07-12 | 天津大学 | 负荷聚合公共服务平台异构密码计算服务多任务调度算法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102023888A (zh) * | 2010-11-04 | 2011-04-20 | 北京曙光天演信息技术有限公司 | 一种基于多加密卡的虚拟设备 |
CN104750543A (zh) * | 2013-12-26 | 2015-07-01 | 杭州华为数字技术有限公司 | 线程创建方法、业务请求处理方法及相关设备 |
CN106453564A (zh) * | 2016-10-18 | 2017-02-22 | 北京京东尚科信息技术有限公司 | 弹性云分布式海量请求处理的方法、装置及*** |
US20170192779A1 (en) * | 2009-01-16 | 2017-07-06 | Imagination Technologies Limited | Scheduling execution of instructions on a processor having multiple hardware threads with different execution resources |
CN110096355A (zh) * | 2018-01-29 | 2019-08-06 | 阿里巴巴集团控股有限公司 | 一种共享资源分配方法、装置和设备 |
-
2020
- 2020-03-24 CN CN202010215461.6A patent/CN111541646A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170192779A1 (en) * | 2009-01-16 | 2017-07-06 | Imagination Technologies Limited | Scheduling execution of instructions on a processor having multiple hardware threads with different execution resources |
CN102023888A (zh) * | 2010-11-04 | 2011-04-20 | 北京曙光天演信息技术有限公司 | 一种基于多加密卡的虚拟设备 |
CN104750543A (zh) * | 2013-12-26 | 2015-07-01 | 杭州华为数字技术有限公司 | 线程创建方法、业务请求处理方法及相关设备 |
CN106453564A (zh) * | 2016-10-18 | 2017-02-22 | 北京京东尚科信息技术有限公司 | 弹性云分布式海量请求处理的方法、装置及*** |
CN110096355A (zh) * | 2018-01-29 | 2019-08-06 | 阿里巴巴集团控股有限公司 | 一种共享资源分配方法、装置和设备 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113873029A (zh) * | 2021-09-24 | 2021-12-31 | 奇安信科技集团股份有限公司 | 密码服务监控方法、服务器、密码机、***和存储介质 |
CN113873029B (zh) * | 2021-09-24 | 2023-12-12 | 奇安信科技集团股份有限公司 | 密码服务监控方法、服务器、密码机、***和存储介质 |
CN114741169A (zh) * | 2022-03-30 | 2022-07-12 | 天津大学 | 负荷聚合公共服务平台异构密码计算服务多任务调度算法 |
CN114741169B (zh) * | 2022-03-30 | 2024-02-13 | 天津大学 | 负荷聚合公共服务平台异构密码计算服务多任务调度方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111459665A (zh) | 一种分布式边缘计算***及分布式边缘计算方法 | |
CN111427751B (zh) | 基于异步处理机制对业务进行处理的方法及*** | |
CN109445944A (zh) | 一种基于dpdk的网络数据采集处理***及其方法 | |
CN102508718A (zh) | 一种虚拟机负载均衡方法和装置 | |
CN110795254A (zh) | 一种基于php处理高并发io的方法 | |
CN102855218A (zh) | 数据处理***、方法及装置 | |
CN111078436A (zh) | 数据处理的方法、装置、设备及存储介质 | |
CN111541646A (zh) | 一种增强密码机安全服务接入能力的方法 | |
CN111722944B (zh) | 一种基于nio的airt-ros通信方法及*** | |
CN114625533A (zh) | 分布式任务调度方法、装置、电子设备及存储介质 | |
CN112035255A (zh) | 线程池资源管理任务处理方法、装置、设备及存储介质 | |
CN104572286A (zh) | 一种基于分布式内存集群的任务调度方法 | |
CN108628677B (zh) | 分布式任务处理***、方法和装置 | |
CN113051049B (zh) | 任务调度***、方法、电子设备及可读存储介质 | |
CN112395062A (zh) | 任务处理方法、装置、设备及计算机可读存储介质 | |
CN112486912A (zh) | 一种文件转换***、方法、电子设备及存储介质 | |
CN112214299A (zh) | 多核处理器及其任务调度方法和装置 | |
CN116719623A (zh) | 作业调度方法、作业结果处理方法及其装置 | |
CN101349975B (zh) | 一种在嵌入式操作***上实现中断底半部机制的方法及装置 | |
CN104184685A (zh) | 数据中心资源分配方法、装置及*** | |
CN111190731A (zh) | 基于权重的集群任务调度*** | |
CN100426241C (zh) | 一种面向服务体系结构中消息层软中断处理方法 | |
CN113419842B (zh) | 一种基于JavaScript构建边缘计算微服务的方法、装置 | |
CN113821174B (zh) | 存储处理方法、装置、网卡设备及存储介质 | |
CN112579257B (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200814 |
|
RJ01 | Rejection of invention patent application after publication |