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

文档序号:8397990阅读:来源:国知局
的重发延时可以根据应用需要灵活配置,另外,业务流管理器数量和业务流头尾指针存储器容量可以根据业务流数量灵活调整,业务流链表存储器可以根据不同协议的帧长范围扩展,调度器中的多路选择器可以根据业务流的数量及方便物理实现的合理选取。
[0047]灵活高效:该电路占用系统资源少、设计简单,便于物理实现,具备较高的使用灵活性。
【附图说明】
[0048]图1是本发明网络检测系统中的一种业务流的处理电路的工作原理图。
【具体实施方式】
[0049]本发明对小业务流捕获到的帧以原有流量特征重复提交,在小业务断流后,保持了小业务流的流量特征,并使用链表存储器管理方式实现了业务流数据的高效利用和动态管理。有效提高了网络检测系统的存储效能,防止了小业务流的丢失,保证了对高速网络小业务流的实时监控,以及对网络中所有业务流分布特征的准确分析。
[0050]本发明一种支持小业务的流量处理电路如图1所示,包括寄存器访问接口、N个业务流管理器、业务流调度器、链表存储器管理器、出队控制器以及入队控制器;
[0051]所述链表存储器管理器包括入队状态机、出队状态机、业务流链表存储器、业务流头尾指针存储器以及空闲流头尾指针寄存器;
[0052]所述业务流管理器包括计时器、帧计数器、配置寄存器、译码器以及存储器释放控制器;
[0053]所述寄存器访问接口的输出端接入业务流管理器中的配置寄存器;
[0054]所述入队控制器的输出端分别接入业务流管理器的译码器、帧计数器和链表存储器管理器的入队状态机;
[0055]N个业务流管理器的计时器将各自的调度请求发送给业务流调度器;业务流调度器根据N个业务流管理器的优先级调度出一个请求,把调度完成信号及获得调度的业务流的ID号输出给链表存储器管理器的出队状态机;
[0056]出队状态机的输出端接入业务流管理器的帧计数器;
[0057]出队控制器分别与业务流调度器和链表存储器管理器的出队状态机连接;出队控制器输出端还连接至计时器用于启动计时器;
[0058]存储器释放控制器受计时器和帧计数器控制输出使能或禁止信号给入队状态机;
[0059]业务流链表存储器、业务流头尾指针存储器以及空闲流头尾指针寄存器均受出队状态机和入队状态机的控制;
[0060]配置寄存器配置计时器的最大值。
[0061]上述业务流调度器是一组多路选择器。
[0062]上述业务流链表存储器和业务流头尾指针存储器均由双端口存储器构成。
[0063]一种支持小业务的流量处理方法,包括如下步骤:
[0064]I】系统上电复位后,处理器通过寄存器访问接口对N个业务流管理器内部的配置寄存器进行初始化,设置相邻两次数据帧提交的最小时间间隔,并使计时器和帧计数器清零;
[0065]上电复位后,业务流头尾指针存储器自动载入初始化值;业务流头尾指针存储器用于存储N个业务流队列的头指针和尾指针;业务流头尾指针存储器的O号地址表示业务流O所在队列的头尾指针,上电复位初始值是0,0 ;1号地址表示业务流I所在队列的头尾指针,上电复位初始值是1,I ;N号地址表示业务流N所在队列的头尾指针,上电复位初始值是N,N ;2号至N-1号地址依此类推;空闲流的头尾指针寄存器,上电复位初始值分别是N+l,M,其中M表示业务流链表存储器的所能存储的控制字的数目;
[0066]2】对入队控制器接收到某个ID的业务流的第一帧数据的处理:
[0067]2.1】入队控制器把该帧数据的控制字发送给业务流管理器中的译码器和链表存储器管理器的入队状态机,控制字包括该帧所在业务流的ID号,入队控制器输出入队请求信号给入队状态机;
[0068]2.2】业务流管理器的译码器根据入队控制器提供的所在业务流的ID号从N个业务流管理器中选出当前数据帧对应的业务流管理器;
[0069]同时,链表存储器管理器的入队状态机根据入队控制器提供的数据的控制字和入队控制器输出的入队请求信号进行入队操作,入队完成后,入队状态机通知当前数据帧对应的业务流管理器中的帧计数器加一;
[0070]2.3】当前帧对应的业务流管理器的计时器向业务流调度器发出调度请求;
[0071]2.4】当调度请求被业务流调度器调度成功后,业务流调度器向出队控制器发送指示信号,同时向出队状态机发送调度成功的业务流的ID号及调度完成指示信号,出队状态机控制出队控制器完成出队操作,出队完成后,出队状态机通知当前数据帧对应的业务流管理器中的帧计数器减一,同时出队控制器启动计时器;
[0072]3】入队控制器等待新帧到来;
[0073]4】如果入队控制器接收到新帧,依次执行步骤2.1】、2.2】、4.1】和2.4】,重复步骤31;
[0074]步骤4.1】:当计时器计时到步骤I所配置的最小时间间隔且该业务流管理器内部的帧计数器不为O时,计时器向业务调度器发送调度请求;同时存储器释放控制器使能,即该帧数据发送后,会释放所占用的链表存储器空间;
[0075]当计时器计时到步骤I所配置的最小时间间隔且该业务流管理器内部的帧计数器为O时,但若该ID号的业务流已经发送过一帧数据后,为了保证小业务流的分布特征能被反馈到的分析系统中,计时器开始计时,当计时到步骤I所配置的最小时间间隔,计时器向业务调度器发送调度请求;同时存储器释放控制器禁止,即该帧数据发送后,不会释放所占用的链表存储器空间,并在下一次计时超过最小时间间隔时,重复发送该帧数据。
[0076]在该业务流中,若发送若干旧帧后有新帧到来,则新帧入队后,帧计数器加1,并等待出队控制器发送完该旧帧后,计时器对新帧重新开始计时,同时存储器释放控制器使能,即该旧帧数据发送后,会释放所占用的链表存储器空间。旧帧是指被重复发送的帧。
[0077]上述步骤2.2】中入队状态机控制完成入队操作的具体过程是:
[0078]2.21】当链表存储器管理器的入队状态机检测到入队控制器输出的入队请求信号有效时,将来自入队控制器的当前入队业务流的ID号,作为业务流头尾指针存储器的地址读业务流头尾指针存储器,获取该业务流队列的尾指针;
[0079]2.22】入队状态机将步骤2.21】中获取的该业务流队列的尾指针作为业务流链表存储器的地址,将空闲流头指针及入队的数据帧的控制字写入业务流链表存储器;然后,将入队的数据帧对应的业务流管理器内部的帧计数器加I ;
[0080]2.23】入队状态机将步骤2.21】中入队的业务流队列的ID号作为地址,向业务流头尾指针存储器写入空闲流头指针;同时,用空闲流头指针作为业务流链表存储器的地址读业务流链表存储器;
[0081]2.24】入队状态机用步骤2.23】中从业务流链表存储器读出的数据更新空闲流头指针,入队完成。
[0082]上述步骤2.4】中,出队状态机控制完成出队操作的具体过程是:
[0083]2.41】当链表存储器管理器的出队状态机根据业务流调度器输入的业务流的ID号作为业务流头尾指针存储器的地址读业务流头尾指针存储器,获取该业务流队列的头指针;
[0084]2.42】出队状态机将步骤2.41】获得的头指针作为业务流链表存储器的地址去读业务流链表存储器,读出要出队的数据帧的控制字;
[0085]2.43】出队状态机将步骤2.42】读出的控制字输出给出队控制器发送;
[0086]2.44】出队状态机根据当前调度到的业务流的业务流管理器
当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1