一种支持小业务的流量处理电路及方法

文档序号:8397990阅读:360来源:国知局
一种支持小业务的流量处理电路及方法
【技术领域】
[0001]本发明属于计算机通信技术,涉及一种支持小业务的流量处理电路及方法。
【背景技术】
[0002]在网络检测系统中,需要对网络中捕获到的各种业务流进行统计分析,业务流量具有动态变化的特征,流量网络呈现出“大象和老鼠”的关系,即网络中大部分的业务流占据了很少的流量,而少部分的业务流占据了大部分流量。尤其对于高速链路实时监控时,由于检测系统的存储能力有限,往往会丢失小流量业务(称为小业务)的数据,严重影响网络统计特性的分析,如业务流大小分布、数据包长度分布等。

【发明内容】

[0003]本发明的目的是:提供一种支持小业务的流量处理电路及方法,解决现有技术中小业务的流量数据丢失进而影响网络通缉特性分析的问题。
[0004]本发明的技术方案是:
[0005]一种支持小业务的流量处理电路,其特殊之处在于,
[0006]所述支持小业务的流量处理电路包括寄存器访问接口、N个业务流管理器、业务流调度器、链表存储器管理器、出队控制器以及入队控制器;
[0007]所述链表存储器管理器包括入队状态机、出队状态机、业务流链表存储器、业务流头尾指针存储器以及空闲流头尾指针寄存器;
[0008]所述业务流管理器包括计时器、帧计数器、配置寄存器、译码器以及存储器释放控制器;
[0009]所述寄存器访问接口的输出端接入业务流管理器中的配置寄存器;
[0010]所述入队控制器的输出端分别接入业务流管理器的译码器、帧计数器和链表存储器管理器的入队状态机;
[0011]N个业务流管理器的计时器将各自的调度请求发送给业务流调度器;业务流调度器根据N个业务流管理器的优先级调度出一个请求,把调度完成信号及获得调度的业务流的ID号输出给链表存储器管理器的出队状态机;
[0012]出队状态机的输出端接入业务流管理器的帧计数器;
[0013]出队控制器分别与业务流调度器和链表存储器管理器的出队状态机连接;出队控制器输出端还连接至计时器用于启动计时器;
[0014]存储器释放控制器受计时器和帧计数器控制输出使能或禁止信号给入队状态机;
[0015]业务流链表存储器、业务流头尾指针存储器以及空闲流头尾指针寄存器均受出队状态机和入队状态机的控制;
[0016]配置寄存器配置计时器的最大值。
[0017]上述业务流调度器是一组多路选择器。
[0018]上述业务流链表存储器和业务流头尾指针存储器均由双端口存储器构成。
[0019]一种支持小业务的流量处理方法,其特殊之处在于,包括如下步骤:
[0020]I】系统上电复位后,处理器通过寄存器访问接口对N个业务流管理器内部的配置寄存器进行初始化,设置相邻两次数据帧提交的最小时间间隔,并使计时器和帧计数器清零;
[0021]上电复位后,业务流头尾指针存储器自动载入初始化值;业务流头尾指针存储器用于存储N个业务流队列的头指针和尾指针;
[0022]2】对入队控制器接收到某个ID的业务流的第一帧数据的处理:
[0023]2.1】入队控制器把该帧数据的控制字发送给业务流管理器中的译码器和链表存储器管理器的入队状态机,控制字包括该帧所在业务流的ID号,入队控制器输出入队请求信号给入队状态机;
[0024]2.2】业务流管理器的译码器根据入队控制器提供的所在业务流的ID号从N个业务流管理器中选出当前数据帧对应的业务流管理器;
[0025]同时,链表存储器管理器的入队状态机根据入队控制器提供的数据的控制字和入队控制器输出的入队请求信号进行入队操作,入队完成后,入队状态机通知当前数据帧对应的业务流管理器中的帧计数器加一;
[0026]2.3】当前帧对应的业务流管理器的计时器向业务流调度器发出调度请求;
[0027]2.4】当调度请求被业务流调度器调度成功后,业务流调度器向出队控制器发送指示信号,同时向出队状态机发送调度成功的业务流的ID号及调度完成指示信号,出队状态机控制出队控制器完成出队操作,出队完成后,出队状态机通知当前数据帧对应的业务流管理器中的帧计数器减一,同时出队控制器启动计时器;
[0028]3】入队控制器等待新帧到来;
[0029]4】如果入队控制器接收到新帧,依次执行步骤2.1】、2.2】、4.1】和2.4】,重复步骤31;
[0030]步骤4.1】:当计时器计时到步骤I所配置的最小时间间隔且该业务流管理器内部的帧计数器不为O时,计时器向业务调度器发送调度请求;同时存储器释放控制器使能,即该帧数据发送后,会释放所占用的链表存储器空间;
[0031]当计时器计时到步骤I所配置的最小时间间隔且该业务流管理器内部的帧计数器为O时,但若该ID号的业务流已经发送过一帧数据后,计时器开始计时,当计时到步骤I所配置的最小时间间隔,计时器向业务调度器发送调度请求;同时存储器释放控制器禁止,即该帧数据发送后,不会释放所占用的链表存储器空间,并在下一次计时超过最小时间间隔时,重复发送该帧数据。
[0032]上述步骤2.2】中入队状态机控制完成入队操作的具体过程是:
[0033]2.21】当链表存储器管理器的入队状态机检测到入队控制器输出的入队请求信号有效时,将来自入队控制器的当前入队业务流的ID号,作为业务流头尾指针存储器的地址读业务流头尾指针存储器,获取该业务流队列的尾指针;
[0034]2.22】入队状态机将步骤2.21】中获取的该业务流队列的尾指针作为业务流链表存储器的地址,将空闲流头指针及入队的数据帧的控制字写入业务流链表存储器;然后,将入队的数据帧对应的业务流管理器内部的帧计数器加I ;
[0035]2.23】入队状态机将步骤2.21】中入队的业务流队列的ID号作为地址,向业务流头尾指针存储器写入空闲流头指针;同时,用空闲流头指针作为业务流链表存储器的地址读业务流链表存储器;
[0036]2.24】入队状态机用步骤2.23】中从业务流链表存储器读出的数据更新空闲流头指针,入队完成。
[0037]上述步骤2.4】中,出队状态机控制完成出队操作的具体过程是:
[0038]2.41】当链表存储器管理器的出队状态机根据业务流调度器输入的业务流的ID号作为业务流头尾指针存储器的地址读业务流头尾指针存储器,获取该业务流队列的头指针;
[0039]2.42】出队状态机将步骤2.41】获得的头指针作为业务流链表存储器的地址去读业务流链表存储器,读出要出队的数据帧的控制字;
[0040]2.43】出队状态机将步骤2.42】读出的控制字输出给出队控制器发送;
[0041]2.44】出队状态机根据当前调度到的业务流的业务流管理器内部的存储器释放控制器使能或禁止来决定是否要释放业务流链表存储器,如果要释放,则继续步骤2.45】,否贝1J,直接进入空闲状态;
[0042]2.45】出队状态机将该业务流队列的头指针更新为步骤2.41】读出的头指针,同时该业务流对应的业务流管理器内部的帧计数器减I ;
[0043]2.46】出队状态机用刚出队的业务流队列的头指针更新空闲流尾指针,出队完成。
[0044]本发明的优点是:
[0045]通用性好:本发明适用于以太网、FC、1394等网络,可以方便的应用到这些网络的实时数据采集分析系统中。
[0046]易于扩展:该电路对小业务流
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1