[发明专利]一种瞬间大规模网络连接的处理方法在审

专利信息
申请号: 201410257163.8 申请日: 2014-06-11
公开(公告)号: CN104796395A 公开(公告)日: 2015-07-22
发明(设计)人: 胡平 申请(专利权)人: 合肥星服信息科技有限责任公司
主分类号: H04L29/06 分类号: H04L29/06
代理公司: 暂无信息 代理人: 暂无信息
地址: 230051 安徽省合肥市包河*** 国省代码: 安徽;34
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 瞬间 大规模 网络 连接 处理 方法
【说明书】:

技术领域

发明属于信息技术领域网络技术的一个优化方案,提出一种采用独立缓冲池设计,高效可靠的解决瞬间大规模网络连接时造成的数据紊乱的网络问题。

背景技术

目前,在建立TCP网络连接时,如果有多个客户端连接同一个服务器,那么该服务器必须能够区分这些客户端,采用fork机制,在有新的作业时才fork出一个新的执行线程,然后继续监听。当有浪涌式的数据连接时,将使得大量TCP连接无法建立或数据丢失。主要原因有:

1、由于操作系统对一个端口同时处理的连接数进行了限制,超过这个限制时,将使得TCP连接无法建立。

2、新产生的线程负责从缓冲池读取客户端的数据,读取结束后,其他线程继续操作。由于缓冲池读取时间的限制,当有大量的连接请求,并发送数据时,缓冲池难以满足要求,同时还会造成连接数据的丢失。

目前的解决方法是:

修改系统配置文件:修改操作系统对一个端口同时处理的连接数,可以解决连接数不足的问题;

采用完成端口:完成端口模型是迄今为止最为复杂的—种I/O模型。完成端口模型要求我们创建一个Win32完成端口对象,通过指定数量的线程对重叠I/O请求进行管理。以便为已经完成的重叠I/O请求提供服务。当—个应用程序同时需要管理为数众多的套接字,那么采用这种模型,往往可以达到最佳的系统性能,然而不幸的是,该模型只适用于微软的操作系统。

发明内容

本发明的一个目的在于为每一个新生成的线程动态创建缓冲池,并动态回收,从而保证瞬间出现大规模连接时,每个连接都能正常通讯的方法。在连接失效时能及时清理。本方法不局限于微软操作系统,在Unix、Linux和苹果操作系统都可以使用。

所述方法包括如下步骤:

1、在服务端建立缓冲池动态数组并初始化;

2、服务器对指定的端口进行监听,接收客户端发过来的连接请求,通过三次握手,建立TCP连接;

3、为每一个TCP连接指定一个缓冲池,并建立连接句柄和缓冲池的对应关系;

4、数据传输结束,或意外中断后,根据连接句柄和缓冲池的对应关系,回收相应的缓冲池供其他连接使用。

 

附图说明

图1是服务器的初始化流程图

图2是服务器通讯过程中缓冲池调度逻辑和回收流程图。

具体实施方式

本发明的基于瞬间大规模网络连接的处理方法主要用于在当某个应用程序需要同时管理成百上千个套接字,并能从其读取数据时的情况。特别适用于同时处理多客户端的服务器应用,为服务器的稳定、及时响应提供了一种高效的处理方法。

为了实现该网络优化方法,首先需要初始化连接缓冲区数组,初始化数组的大小根据业务需要设定一个初始值。当服务器建立新的连接时,会从数组中按顺序找到一个空闲的缓冲区,记录下这个空闲缓冲区和连接套接字的对应关系。这样就为每一个连接建立了一个独立的缓冲区,保证了缓冲区数据传输的准确和及时被取走。大大提高了数据传输的效率。当连接超时无数据或失效时,系统自动回收缓冲区,并移除套接字和缓冲区的对应关系表。

 

具体流程如下:

1、在步骤101中,服务器进行初始化工作,获取主机地址和端口以及发送和接收数据的编码。

2、在步骤102中,初始化会话哈希表,用于存放以后的连接的会话内容。

3、在步骤103中,初始化缓冲区数组以及和套接字对应关系表。

4、在步骤104中,服务器绑定主机地址和端口。

5、在步骤105中,服务器开始监听端口。

6、在步骤201中,服务器接收到一个客户端的连接请求并建立连接。

7、在步骤202中,服务器保存连接会话到哈希表中。

8、在步骤203中,服务器查找空闲的缓冲区,如果没有找到,就会在缓冲区数组中扩展一个新的缓冲区,并建立缓冲区和套接字的对应关系。

9、在步骤204中,服务器利用获得的缓冲区为新建的连接存放数据。由于每个连接的缓冲区都是独立的,尽管有很多线程同时传输数据,这些传输通道之间可以并行高效处理数据,无须等待,也不会发生传输错误的情况。

10、在步骤205中,如果连接的数据传输结束后,在指定的时间内未再收到新的报文,服务器将断开连接,释放缓冲区并移除缓冲区和套接字的对应关系,在缓冲区数组上就产生了一个空闲的缓冲区位,当有新的连接时,将会使用这个缓冲区。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于合肥星服信息科技有限责任公司,未经合肥星服信息科技有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201410257163.8/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top