一种基于信令传输的tcp长连接的实现方法及装置的制造方法

文档序号:9730128阅读:956来源:国知局
一种基于信令传输的tcp长连接的实现方法及装置的制造方法
【技术领域】
[0001] 本发明涉及通信技术领域,尤其涉及一种基于信令传输的TCP长连接的实现方法 及装置。
【背景技术】
[0002] 信令传输场景是一个非常特殊的TCP (Transmission Control Protocol,传输控 制协议)连接场景,它具有超高连接数和超低网络传输的特点。MCP (Main control, Cache, Proxy) ++是MCP框架的C++语言版本,是一种高性能网络编程框架,它根据epoll模型维护 TCP的连接。
[0003] 然而经过测试,现有的MCP++框架为每个TCP长连接耗费约0. 5邸内存。算上 内核态的消耗,单个TCP长连接消耗约3. 5邸内存。根据巧oil的实现,在64位环境下, epoll在内核中需要为每个fd(文件描述符)消耗leOBytes的内存。并且,根据linux内 核2. 6. 32.43中对TCP协议找的实现,内核为每个应用层中打开的socket (套接字)维 护st;ructsocket_alloc数据结构,它包含struct socket和structinode结构,分别对应 socket在tcp中的表示和vfs中的inode数据结构。在网络层中,还需要struct sock数 据结构来表示socket。对于TCP每个连接收发的数据,使用S化uctsk_buff来记录收发 数据信息,并从内核中分配相应的空间来存放数据。存放数据的内核空间的分配单位是 page。当TCP连接的数据接收和发送完成后,sk_buff和数据page也相应的释放。在无数 据收发时,内核中不会消耗额外的内存空间。因此,内核中socket相关的内存消耗都是描 述socket的数据结构。相关的数据结构都是从内核的si油高速缓冲区中申请和释放的。 通过查看系统的slab信息,可W计算得出socket相关数据结构(包括巧oil)内核态的消 耗为2. 7邸(包括巧oil的消耗)。再加上si油数据结构对齐造成的额外开销,socket相 关数据结构总共消耗3邸。W"TCP"数据结构为例:每个si油的size = 768032邸/964004 =8邸,每个si油存储5个对象,每个对象1. 44邸,则每个si油因为对齐而浪费的空间是 8邸-1. 44巧=0. 8邸。对应每个对象浪费0. 8邸/5 = 0. 16邸。W此推算,上述si油结构总 共浪费的空间如表1所示。
[0004] 表1SLAB结构总共浪费的空间
[0005]
[0006] 此外,当某个socket有数据发送时候,在struct sock中有"struct page*sk_ sn血sg_page"变量指向额外的一个page,用来作为发送缓存,只有当该sock关闭的时候 才释放该page。经过测试证明,进程打开的socket无数据发送时,单个socket消耗3邸; 有数据发送时,额外消耗4邸。送样一来内核中为每个socket连接需要消耗的内存空间为 3邸+4邸=7邸。
[0007] 海量TCP长连接通常数W万计(20000 W上),结合上述测试结果不难发现,当数W 万计的TCP长连接并发时,现有的MCP++框架为处理送些连接将会产生巨大的内核态内存 消耗,而基于TCP长连接的特性,处理的最终结果将只能是服务器若机。因此,现有的MCP++ 在处理TCP长连接过程中所产生的内核态内存消耗巨大,无法实现海量TCP长连接。

【发明内容】

[0008] 有鉴于此,本发明提供一种基于信令传输的TCP长连接的实现方法及装置,可减 少处理TCP长连接而产生的内核态内存消耗,实现信令传输场景下的海量TCP长连接。
[0009] 本发明实施例提供的基于信令传输的TCP长连接的实现方法,包括:获取服务器 的标识信息,查询预置的配置参数数据库,获取与所述标识信息对应的目标参数,所述目标 参数用于减小处理TCP长连接而产生的内核态内存消耗;根据所述目标参数,对所述服务 器进行系统内核的参数配置;根据配置结果监听TCP长连接请求,对监听到的TCP长连接请 求进行处理,并将处理结果返回给对端。
[0010] 本发明实施例提供的基于信令传输的TCP长连接的实现装置,包括:获取模块,用 于获取服务器的标识信息,查询预置的配置参数数据库,获取与所述标识信息对应的目标 参数,所述目标参数用于减小处理TCP长连接而产生的内核态内存消耗;配置模块,用于根 据所述获取模块获取的所述目标参数,对所述服务器进行系统内核的参数配置;处理模块, 用于根据所述配置模块的配置结果监听TCP长连接请求,对监听到的TCP长连接请求进行 处理,并将处理结果返回给对端。
[0011] 本发明实施例提供的基于信令传输的TCP长连接的实现方法及装置,通过采用获 取与服务器的型号对应的用于减小处理TCP长连接而产生的内核态内存消耗的目标参数, 并根据该目标参数对该服务器进行系统内核的参数配置,然后根据配置结果处理TCP长连 接送样优化参数的方式,可W较小的成本代价达到减小处理TCP长连接而产生的内核态内 存消耗的技术效果,从而实现信令传输场景下的海量TCP长连接。
[0012] 为让本发明的上述和其他目的、特征和优点能更明显易懂,下文特举较佳实施例, 并配合所附图式,作详细说明如下。
【附图说明】
[0013] 图1为本发明实施例提供的基于信令传输的TCP长连接的实现方法及装置的应用 环境图;
[0014] 图2示出了一种服务器的结构示意图;
[0015] 图3为本发明第一实施例提供的基于信令传输的TCP长连接的实现方法的流程示 意图;
[0016] 图4为本发明第二实施例提供的基于信令传输的TCP长连接的实现方法的流程示 意图;
[0017] 图5为本发明第Η实施例提供的基于信令传输的TCP长连接的实现装置的结构示 意图;
[0018] 图6为本发明第四实施例提供的基于信令传输的TCP长连接的实现装置的结构示 意图。
【具体实施方式】
[0019] 为更进一步阐述本发明为实现预定发明目的所采取的技术手段及功效,W下结合 附图及较佳实施例,对依据本发明的【具体实施方式】、结构、特征及其功效,详细说明如后。
[0020] 图1为本发明实施例提供的基于信令传输的TCP长连接的实现方法及装置的应用 环境图。如图3所示,客户端100、服务器200位于有线或无线网络中,通过该有线网络或无 线网络,客户端100与服务器200进行数据交互。
[0021] 其中,客户端100可W包括支持网络功能的:智能手机、平板电脑、电子书阅读器、 MP3播放器(Moving Pierre Experts Group Audio Layer III,动态影像专家压缩标准音 频层面 3)、MP4 (Moving Pic1:ure Experts Group Audio Layer IV,动态影像专家压缩标准 音频层面4)播放器、膝上型便携计算机、车载电脑、可穿戴设备、台式计算机、机顶盒、智能 电视、一体机等等。
[0022] 上述的有线网络可W但不限于包括;采用同轴电缆、双绞线或光纤来连接的计 算机网络。上述的无线网络可W使用各种通信标准、协议及技术,包括但并不限于全球 移动通信系统(Global System for Mobile Communication, GSM)、增强型移动通信技术 巧nhanced Data GSM linvironment,邸GE),宽带码分多址技术(wideband code division multiple access, W-CDMA),码分多址技术(Code division access, CDMA)、时分多址技 术(time division multiple access, TDMA),藍牙,无线保真技术(Wireless, Fidelity, WiFi)(如美国电气和电子工程师协会标准IE邸802. 11a,IE邸802. 1化,I邸E802. llg和/ 或 IE邸802. lln)、网络电话(Voice over internet protocol, VoIP)、全球微波互联接入 (Worldwide Interoper油ility for Microwave Access,Wi-Max)、其他用于邮件、即时通讯 及短消息的协议,W及任何其他合适的通讯协议,甚至可包括郝些当前仍未被开发出来的 协议。
[0
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1