[发明专利]一种维护TCP流表结构和乱序缓冲区的方法有效
申请号: | 201010598434.8 | 申请日: | 2010-12-17 |
公开(公告)号: | CN102147766A | 公开(公告)日: | 2011-08-10 |
发明(设计)人: | 纪奎;窦晓光;刘朝辉;刘兴奎;张英文;李静 | 申请(专利权)人: | 曙光信息产业股份有限公司 |
主分类号: | G06F12/02 | 分类号: | G06F12/02 |
代理公司: | 北京安博达知识产权代理有限公司 11271 | 代理人: | 徐国文 |
地址: | 300384 天津西青区华苑*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 维护 tcp 结构 缓冲区 方法 | ||
技术领域
本发明涉及内存管理领域,具体涉及一种维护TCP流表结构和乱序缓冲区的方法。
背景技术
计算机软件在当今社会得到了越来越广泛的应用,一方面,计算机软件正在被应用于越来越多的领域当中;另一方面,计算机软件的用户也由原来的专业的计算机工程师,转变为现在的不同知识水平的广大用户。这就要求10计算机软件功能强大,但简单易用,这种要求直接导致计算机软件规模变大,复杂度增加,使得用户在应用计算机软件时,软件错误的发生率增加,其中,最主要、最常见的错误就是软件在进行内存访问时引起的错误。这种错误总体表现为两种形式:一种是读写地址引用错误;另一种是读写权限违反许可,这两种错误统称为非法内存访问。目前,非法内存访问会导致严重的不良后巧果:非法读内存,会引起数据引用出错,导致系统混乱;非法写内存,会破坏内存中的正常数据,严重时,还会导致系统瘫痪
板卡设计中,内存空间大小有限,增加内存空间相应也增加了成本,合理使用内存变得很重要。目前存在的连接管理系统中,将内存作为单表结构使用,每个结点存储一个连接信息,需要几十字节,某些结点不被使用,造成内存空间浪费严重。本系统使用双表结构,第一个表只记录连接信息表的地址信息,地址只需要几个字节,即便结点不被使用,空间浪费显然减少了10倍之多。
发明内容
本发明提供了一种维护TCP流表结构和乱序缓冲区的方法,步骤如下:
A、根据内存空间大小和用途,将记录连接信息的空间地址存入连接地址池中,将记录乱序连接信息的地址存入乱序缓冲区地址池中;
B、系统初始化后,从连接地址池和乱序缓冲区地址池中读出2K个地址分别存入两个先进先出缓冲区队列。
C、新建连接时,从连接地址队列中取出一个可用地址,并将连接信息写入该地址指向的缓冲区;
D、如果连接乱序,从乱序缓冲区队列中取出一个可用地址,将该地址和乱序连接信息提交乱序重排模块进行处理。
E、连接断开时,将分配给该TCP连接的连接地址和乱序缓冲区地址回收到接收释放地址缓冲区队列中。
F、检查可用地址队列快空信号和释放地址队列的快满信号,如果可用地址队列快空,从地址池中取地址,如果释放地址队列快满,回收地址到地址池中。
本发明充分利用内存空间,不导致浪费,只要用完就释放,可以被其他连接使用。
附图说明
图1为本发明原理图
具体实施方式
A、根据内存空间大小和用途,将记录连接信息的空间地址存入连接地址池中,将记录乱序连接信息的地址存入乱序缓冲区地址池中;
B、系统初始化后,从连接地址池和乱序缓冲区地址池中读出2K个地址分别存入两个先进先出缓冲区队列。
C、新建连接时,从连接地址队列中取出一个可用地址,并将连接信息写入该地址指向的缓冲区;
D、如果连接乱序,从乱序缓冲区队列中取出一个可用地址,将该地址和乱序连接信息提交乱序重排模块进行处理。
E、连接断开时,将分配给该TCP连接的连接地址和乱序缓冲区地址回收到接收释放地址缓冲区队列中。
F、检查可用地址队列快空信号和释放地址队列的快满信号,如果可用地址队列快空,从地址池中取地址,如果释放地址队列快满,回收地址到地址池中。
充分利用内存空间,不导致浪费,只要用完就释放,可以被其他连接使用。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于曙光信息产业股份有限公司,未经曙光信息产业股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010598434.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种用于蓝相液晶显示装置的像素驱动电路
- 下一篇:一种阵列基板和显示面板