CN107257327A - 一种高并发ssl会话管理方法 - Google Patents
一种高并发ssl会话管理方法 Download PDFInfo
- Publication number
- CN107257327A CN107257327A CN201710380964.7A CN201710380964A CN107257327A CN 107257327 A CN107257327 A CN 107257327A CN 201710380964 A CN201710380964 A CN 201710380964A CN 107257327 A CN107257327 A CN 107257327A
- Authority
- CN
- China
- Prior art keywords
- ssl
- session
- port
- dst
- src
- 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
Classifications
-
- 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
-
- 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/16—Implementing security features at a particular protocol layer
-
- 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/30—Network architectures or network communication protocols for network security for supporting lawful interception, monitoring or retaining of communications or communication related information
-
- 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/04—Protocols for data compression, e.g. ROHC
-
- 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/06—Notations for structuring of protocol data, e.g. abstract syntax notation one [ASN.1]
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)
- Technology Law (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明提供一种高并发SSL会话管理方法,包括以下步骤:通过压缩协议会话对象数据字段,采用五元组唯一表示会话结构,精简SSL会话对象结构的步骤;通过大散列表来高效管理SSL会话对象结构的步骤;通过使用定时器触发机制,对SSL会话定时的步骤。本发明能够高效地管理海量并发SSL会话,满足对高并发SSL会话测试的需求。
Description
技术领域
本发明涉及SSL协议产品性能测试领域,尤其涉及一种高并发SSL会话管理方法。
背景技术
近年来,网络的飞速发展给人们带来便利的同时也带来了一系列安全隐患。由于传统的TCP/IP协议族在设计时并没有考虑到安全问题,网络中的信息基本采取非加密形式进行传输,因此传输中的信息可能遭受各种各样的攻击,比如信息失窃、信息篡改、未授权访问等,网络信息安全的重要性和紧迫性日益突出。
为了保证网络信息进行安全的传输,网络安全协议应运而生。目前网络安全协议主要有SSL、STT和SET。其中,SSL协议是由网景公司研究制定的网络安全传输协议,它通过建立一条安全的网络传输通道,以为数据提供完整性、机密性和身份认证等多方面的安全保护。像个人电子邮件、网上银行、电子商务网站等对安全需求高的信息传输过程,都是基于SSL协议的。SSL协议已经成为互联网上安全通信的工业标准,并被广泛应用于互联网和互联网的客户端和服务器产品中。由于SSL安全协议保护的信息都具有极高的安全性要求,为了了解SSL协议产品是否具有协议设计时声称的安全功能,就需要对SSL协议产品进行测试。
SSL录属于会话层,处于应用层和传输层之间。SSL协议作为一种安全的数据交换协议,它已经在网络中得到了非常广泛的应用,如应用于HTTP、FTP、Telnet、SMTP、POP3等应用服务的安全保障上,同时大量基于深度数据包检测(DPI,DeepPacketInspection)技术的***也支持SSL协议。但是伴随着安全性能的提高而来的是传输性能的下滑,大量频繁的SSL连接访问会导致重负载下的SSL服务器性能急剧下降,甚至导致服务器崩溃。由于加密解密SSL数据是一个非常耗费CPU资源的任务,SSL数据检测使DPI***遇到很大的性能问题。
为了了解基于SSL协议产品提供的网络服务的性能,以确定其产品所提供服务的质量,我们就需要一定的方法或者标准对其产品进行性能测试。生成SSL会话是SSL协议产品性能测试的关键,如何自动化高效管理高并发SSL会话是SSL协议产品性能测试需要解决的关键问题。
发明内容
本发明的目的在于提供一种自动化高效的高并发SSL会话管理方法,实现对百万级别并发SSL会话的高效管理,满足对高并发SSL会话性能测试的需求。
本发明提供了一种高并发SSL会话管理方法,包括以下步骤:通过压缩协议会话对象数据字段,精简SSL会话对象结构的步骤;通过大散列表来高效管理SSL会话对象结构的步骤;通过使用定时器触发机制,对SSL会话定时的步骤。
精简SSL会话对象结构的步骤具体为:
将网络中的每个SSL客户端或者服务端用SSL会话结构表示;
将所有会话采用标准的五元组<type,src_ip,src_port,dst_ip,dst_port>进行唯一表示;
判断流量场景,对于双臂流量场景,采用一对会话对象分别表示SSL客户端和服务端;对于单臂流量场景,采用一个会话对象表示;
用ssl_state、tcp_state、type、src_ip、src_port、dst_ip、dst_port、SSL_PCB、TCP_PCB、输入输出缓存队列、会话定时器表示会话基本结构,所述的ssl_state、tcp_state为基于有限状态自动机实现的协议状态自动机;所述的type标定该会话对象类类型,默认为ssl类型;所述的src_ip、src_port、dst_ip、dst_port分别表示源地址、源端口、目的地址、目的端口;所述的SSL_PCB和TCP_PCB用以保存协议的控制和管理数据;所述的输入输出缓存队列分别保存该会话的流量输入和输出分组队列;所述的会话定时器用于所述会话对象上的流量事件定时。
通过大散列表来高效管理SSL会话对象结构的步骤具体为:
通过五元组计算散列表的hash值,计算公式如下:
key=hash(type,src_ip,src_port,dst_ip,dst_port)=(type+src_ip+src_port+dst_ip+dst_port)%
将hash值定位到链表头部,如果链表头为空,则说明不存在相应会话,如果非空,则循环判断此链表中会话五元组,以找到需要的会话。
通过使用定时器触发机制,对SSL会话定时的步骤具体为:
给会话安装TCP重传定时器、延迟ACK定时器、保活定时器、TIME_WAIT定时器中的一种,等到定时器到期触发下一个动作的执行。
本发明的有益效果是本发明通过精简SSL会话结构,减小了协议会话对象内存开销,提高了SSL协议并发会话量,通过大散列表来管理SSL会话对象结构,大幅度降低了会话对象查找开销和会话访问冲突,从而支持海量会话对象的并发访问,提高***SSL并发会话性能,另外,相比循环等待触发,通过安装会话定时器,能够实现对SSL会话高效、灵活的管理,满足了对高并发SSL会话测试的需求。
附图说明
图1是本发明高并发SSL会话管理方法流程图;
图2为本发明高并发SSL会话管理方法实施过程中SSL会话结构示意图;
图3为本发明高并发SSL会话管理方法实施过程中基于散列表的SSL会话管理设计图;
图4为本发明高并发SSL会话管理方法实施过程中SSL会话触发机制示意图。
具体实施方式
具体实施方式一:结合图1来说明,本实施方式是一种高并发SSL会话管理方法,包括以下步骤:通过压缩协议会话对象数据字段,精简SSL会话对象结构的步骤;通过大散列表来高效管理SSL会话对象结构的步骤;通过使用定时器触发机制,对SSL会话定时的步骤。
具体实施方式二:本实施方式是对具体实施方式一的进一步限定,所述的通过压缩协议会话对象数据字段,精简SSL会话对象结构的步骤为:
将网络中的每个SSL客户端或者服务端用SSL会话结构表示;
将所有会话采用标准的五元组<type,src_ip,src_port,dst_ip,dst_port>进行唯一表示;
判断流量场景,对于双臂流量场景,采用一对会话对象分别表示SSL客户端和服务端;对于单臂流量场景,采用一个会话对象表示;
用ssl_state、tcp_state、type、src_ip、src_port、dst_ip、dst_port、SSL_PCB、TCP_PCB、输入输出缓存队列、会话定时器表示会话基本结构,所述的ssl_state、tcp_state为基于有限状态自动机实现的协议状态自动机;所述的type标定该会话对象类类型,默认为ssl类型;所述的src_ip、src_port、dst_ip、dst_port分别表示源地址、源端口、目的地址、目的端口;所述的SSL_PCB和TCP_PCB用以保存协议的控制和管理数据;所述的输入输出缓存队列分别保存该会话的流量输入和输出分组队列;所述的会话定时器用于所述会话对象上的流量事件定时。
具体实施方式三:本实施方式是对具体实施方式二的进一步限定,所述的通过大散列表来高效管理SSL会话对象结构的步骤为:
通过五元组计算散列表的hash值,计算公式如下:
key=hash(type,src_ip,src_port,dst_ip,dst_port)=(type+src_ip+src_port+dst_ip+dst_port)%
将hash值定位到链表头部,如果链表头为空,则说明不存在相应会话,如果非空,则循环判断此链表中会话五元组,以找到需要的会话。
具体实施方式四:本实施方式是对具体实施方式一至三的进一步限定,所述的通过使用定时器触发机制,对SSL会话定时的步骤为:
给会话安装TCP重传定时器、延迟ACK定时器、保活定时器、TIME_WAIT定时器中的一种,等到定时器到期触发下一个动作的执行。
以上所述,仅为本发明的具体实施方式,本发明的保护范围并不局限于此,对于本领域普通技术人员来说,可以根据上述说明不加创造性地进行改进或变换,而所有这些改进和变换都应属于本发明所附权利要求的保护范围。
Claims (4)
1.一种高并发SSL会话管理方法,其特征在于,包括以下步骤:通过压缩协议会话对象数据字段,精简SSL会话对象结构的步骤;通过大散列表来高效管理SSL会话对象结构的步骤;通过使用定时器触发机制,对SSL会话定时的步骤。
2.根据权利要求1所述的一种高并发SSL会话管理方法,其特征在于,所述的通过压缩协议会话对象数据字段,精简SSL会话对象结构的步骤为:
将网络中的每个SSL客户端或者服务端用SSL会话结构表示;
将所有会话采用标准的五元组<type,src_ip,src_port,dst_ip,dst_port>进行唯一表示;
判断流量场景,对于双臂流量场景,采用一对会话对象分别表示SSL客户端和服务端;对于单臂流量场景,采用一个会话对象表示;
用ssl_state、tcp_state、type、src_ip、src_port、dst_ip、dst_port、SSL_PCB、TCP_PCB、输入输出缓存队列、会话定时器表示会话基本结构,所述的ssl_state、tcp_state为基于有限状态自动机实现的协议状态自动机;所述的type标定该会话对象类类型,默认为ssl类型;所述的src_ip、src_port、dst_ip、dst_port分别表示源地址、源端口、目的地址、目的端口;所述的SSL_PCB和TCP_PCB用以保存协议的控制和管理数据;所述的输入输出缓存队列分别保存该会话的流量输入和输出分组队列;所述的会话定时器用于所述会话对象上的流量事件定时。
3.根据权利要求2所述的一种高并发SSL会话管理方法,其特征在于,所述的通过大散列表来高效管理SSL会话对象结构的步骤为:
通过五元组计算散列表的hash值,计算公式如下:
key=hash(type,src_ip,src_port,dst_ip,dst_port)=(type+src_ip+src_port+dst_ip+dst_port)%
将hash值定位到链表头部,如果链表头为空,则说明不存在相应会话,如果非空,则循环判断此链表中会话五元组,以找到需要的会话。
4.根据权利要求1至3所述的一种高并发SSL会话管理方法,其特征在于,所述的通过使用定时器触发机制,对SSL会话定时的步骤为:
给会话安装TCP重传定时器、延迟ACK定时器、保活定时器、TIME_WAIT定时器中的一种,等到定时器到期触发下一个动作的执行。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710380964.7A CN107257327B (zh) | 2017-05-25 | 2017-05-25 | 一种高并发ssl会话管理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710380964.7A CN107257327B (zh) | 2017-05-25 | 2017-05-25 | 一种高并发ssl会话管理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107257327A true CN107257327A (zh) | 2017-10-17 |
CN107257327B CN107257327B (zh) | 2020-12-29 |
Family
ID=60027444
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710380964.7A Active CN107257327B (zh) | 2017-05-25 | 2017-05-25 | 一种高并发ssl会话管理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107257327B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7447777B1 (en) * | 2002-02-11 | 2008-11-04 | Extreme Networks | Switching system |
CN102185723A (zh) * | 2011-05-27 | 2011-09-14 | 杭州迪普科技有限公司 | 一种会话管理方法及装置 |
US8326839B2 (en) * | 2009-11-09 | 2012-12-04 | Oracle International Corporation | Efficient file access in a large repository using a two-level cache |
CN105338095A (zh) * | 2015-11-17 | 2016-02-17 | 中国建设银行股份有限公司 | 一种会话数据处理方法和装置 |
CN105359486A (zh) * | 2013-05-03 | 2016-02-24 | 思杰***有限公司 | 使用代理安全访问资源 |
CN106209775A (zh) * | 2016-06-24 | 2016-12-07 | 深圳信息职业技术学院 | 一种ssl加密网络流的应用类型识别方法与装置 |
CN106341417A (zh) * | 2016-09-30 | 2017-01-18 | 贵州白山云科技有限公司 | 一种基于内容分发网络的https加速方法和*** |
-
2017
- 2017-05-25 CN CN201710380964.7A patent/CN107257327B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7447777B1 (en) * | 2002-02-11 | 2008-11-04 | Extreme Networks | Switching system |
US8326839B2 (en) * | 2009-11-09 | 2012-12-04 | Oracle International Corporation | Efficient file access in a large repository using a two-level cache |
CN102185723A (zh) * | 2011-05-27 | 2011-09-14 | 杭州迪普科技有限公司 | 一种会话管理方法及装置 |
CN105359486A (zh) * | 2013-05-03 | 2016-02-24 | 思杰***有限公司 | 使用代理安全访问资源 |
CN105338095A (zh) * | 2015-11-17 | 2016-02-17 | 中国建设银行股份有限公司 | 一种会话数据处理方法和装置 |
CN106209775A (zh) * | 2016-06-24 | 2016-12-07 | 深圳信息职业技术学院 | 一种ssl加密网络流的应用类型识别方法与装置 |
CN106341417A (zh) * | 2016-09-30 | 2017-01-18 | 贵州白山云科技有限公司 | 一种基于内容分发网络的https加速方法和*** |
Non-Patent Citations (2)
Title |
---|
PRATIK GUHA SARKAR ET AL: "ATTACKS ON SSL A COMPREHENSIVE STUDY OF BEAST, CRIME, TIME, BREACH, LUCKY 13 & RC4 BIASES", 《ISEC PARTNERS》 * |
段明等: "SSL 协议的哈希函数碰撞攻击与防范", 《技术研究》 * |
Also Published As
Publication number | Publication date |
---|---|
CN107257327B (zh) | 2020-12-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11050786B2 (en) | Coordinated detection and differentiation of denial of service attacks | |
US10284526B2 (en) | Efficient SSL/TLS proxy | |
US11683401B2 (en) | Correlating packets in communications networks | |
Król et al. | Rice: Remote method invocation in icn | |
CN108243143B (zh) | 一种基于web代理的网闸穿透方法及*** | |
US10498618B2 (en) | Attributing network address translation device processed traffic to individual hosts | |
US12034710B2 (en) | Efficient SSL/TLS proxy | |
Mehic et al. | Whispering through DDoS attack | |
Koch et al. | Securing HTTP/3 Web Architecture in the Cloud | |
Gad et al. | Hierarchical events for efficient distributed network analysis and surveillance | |
CN107257327A (zh) | 一种高并发ssl会话管理方法 | |
JP5147819B2 (ja) | コンピュータネットワークシステムのアプリケーションレイヤ保護方法及び装置 | |
JP2013062753A (ja) | プロキシ装置及びネットワークシステム | |
US10505971B1 (en) | Protecting local network devices against attacks from remote network devices | |
CN106341344B (zh) | 一种多通道流程的流分类方法和装置 | |
Belkhode et al. | UDP-Based Multi-Stream Communication Protocol Using NS2 | |
Vishnoi et al. | Detection of TCP/IP Covert Channel based on Naïve-Bayesian Classifier | |
Kim et al. | Extracting real IP address used to connect to P2P messenger using ARIT agent |
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 |