一种检测报文量的方法、装置和系统的制作方法

文档序号:7750343阅读:145来源:国知局
专利名称:一种检测报文量的方法、装置和系统的制作方法
技术领域
本发明涉及数据通信技术领域,特别涉及一种检测报文量的方法、装置和系统。
背景技术
网络处理器接收报文后,该报文一般要经过多个业务处理过程,为了跟踪报文处 理过程以便调试,当接收后的报文被发送到某个业务进行处理时,网络处理器通过I/0(In/ Out,输入输出)访问点对该业务对应的外部设备中计数地址对应的存储空间内保存的报 文量数据进行数值更改,以表示该报文已经过该业务的处理。比如,当报文进入URPF(Unicast Reverse Path Forwarding,单播逆向路径转发) 业务进行处理时,通过I/O访问点读取该业务对应的外部设备中计数地址对应的存储空间 内保存的数据,然后对该数据进行数值+1处理,最后再写入到计数地址对应的存储空间 内。网络处理器只能通过I/O访问点访问外部设备,但是每个I/O访问点同时能够访 问的外部设备个数是有限的。按照现有的计数方式,正常的业务处理需要访问外部设备,对报文进行计数操作 也需要访问外部设备,两者同时进行时,很有可能导致需要访问的外部设备超出I/O访问 点能够访问的范围,从而影响业务处理的效果,并且增加了对业务处理的编码难度,降低了 业务处理的性能。

发明内容
本发明实施例提供了一种检测报文量的方法、装置和系统,可以有效的避免需要 访问的外部设备超出I/O访问点能够访问的范围,进而在不影响业务处理效果的情况下, 较好的实现检测报文量的计数功能。本发明实施例提供了一种检测报文量的方法,该方法包括处理报文时,对处理报文的业务对应的业务标识位进行标识;选择访问点,通过所述访问点访问的外部设备的数量小于访问量上限;通过所述访问点,根据所述业务标识位的标识,在所述业务对应的外部设备的计 数地址对应的存储空间中进行计数。本发明实施例提供了一种检测报文量的装置,包括标识模块,用于处理报文时,对处理报文的业务对应的业务标识位进行标识;选择模块,用于选择访问点,通过所述访问点访问的外部设备的数量小于访问量 上限;处理模块,用于通过所述访问点,根据所述业务标识位的标识,在所述业务对应的 外部设备的计数地址对应的存储空间中进行计数。本发明实施例提供了一种检测报文量的系统,包括网络处理器和存储报文量数 据的外部设备;
所述网络处理器,用于处理报文时,对处理报文的业务对应的业务标识位进行标识;选择访问点,通过所述访问点访问的外部设备的数量小于访问量上限;通过所述访问 点,根据所述业务标识位的标识,在所述业务对应的外部设备的计数地址对应的存储空间 中进行计数。本发明实施例提供的检测报文量的方法、装置和系统,用于处理报文时,处理报文 时,对处理报文的业务对应的业务标识位进行标识;选择访问点,通过所述访问点访问的外 部设备的数量小于访问量上限;通过所述访问点,根据所述业务标识位的标识,在所述业务 对应的外部设备的计数地址对应的存储空间中进行计数。本发明实施例提供的检测报文量 的方法、装置和系统,在访问点空闲时进行计数操作,有效的避免需要访问的外部设备超出 I/O访问点能够访问的范围,这样在业务正常进行的情况下,较好的实现检测报文量的计数 功能。


图1为本发明实施例中检测报文量的方法流程示意图;图2为本发明另一实施例中检测报文量的方法流程示意图;图3为本发明实施例中检测报文量的装置结构示意图;图4为本发明实施例中检测报文量的系统结构示意图。
具体实施例方式下面结合各个附图对本发明实施例技术方案的主要实现原理具体实施方式
及其 对应能够达到的有益效果进行详细地阐述。网络处理器接收到报文后,对该报文进行处理,其处理过程需要经过多个业务流 程,为了跟踪报文处理过程以便调试,可以通过访问点更改相应业务的报文量数据,通过报 文量数据的数值表示报文已经过该业务的处理,例如对数值进行加一操作。其中,业务的报 文量数据一般保存在寄存器等具有存储功能的外部设备的计数地址对应的存储空间中。然而,通过访问点同时访问的外部设备的数量是有限的,若每个访问点可以同时 访问2个外部设备,业务处理报文时需要访问2次外部设备,实现计数操作时需要访问1次 外部设备,这样就导致一个访问点需要同时访问的外部设备数量超出访问点能够访问的数 量的上限。针对此问题,如图1所示,本发明实施例提供了一种检测报文量的方法,该方法包 括以下步骤步骤101、处理报文时,对处理报文的业务对应的业务标识位进行标识;具体的,处理报文前,将处理报文的业务对应的业务标识位中的数值初始化为0 ; 处理报文时,将处理报文的业务对应的业务标识位中的数值置为1 ;检测到业务标识位中 的数值不为0时,确定业务标识位中的数值与初始化后的数值相比已更改,进而确定报文 已被处理。步骤102、选择访问点,通过所述访问点访问的外部设备的数量小于访问量上限;具体的,获取通过访问点正在访问的外部设备的数量,将该数量与预置的上限值 进行比较,若数量小于所述预置的上限值,选择所述访问点作为访问外部设备的访问点。例如,访问点的访问量上限为3,即可以同时访问3个外部设备,通过访问点正在访问的外部 设备的数量为2,则可以通过该访问点访问外部设备。当然,在选择访问点时也可以根据用 户预先设置的相关配置参数来确定。除此之外,还需要通过检测业务标识位判断是否需要访问外部设备进行计数操 作。该业务标识位可以在业务对应的代码文件中进行定义或修改,并保存在网络处理器内 具有存储功能的区域。检测业务标识位时可以依次检测处理报文的各个业务对应的业务标 识位,或随机进行检测,步骤103、通过所述访问点,根据所述业务标识位的标识,在所述业务对应的外部 设备的计数地址对应的存储空间中进行计数。具体的,检测到业务标识位中的数值不为0时,确定业务标识位中的数值与初始 化后的数值相比已更改,其中,业务标识位中的数值在报文进入业务进行处理前,被初始化 为0,在报文被所述业务处理时,被置为1。该业务标识位中的数值的更改意味着该报文经 过了此业务的处理。然后,通过访问点获取该业务在外部设备的计数地址,读取计数地址对 应的存储空间中存储的报文量数据,并对报文量数据进行加一操作,将更改后的报文量数 据再写入计数地址对应的存储空间内。其中,获取该业务在外部设备的计数地址的过程可 以为获取该业务标识对应的业务,根据该业务获取所述业务在外部设备的计数地址;或 者根据该业务标识与所述计数地址的直接映射关系,获取该计数地址。而且,一个业务对应 一个计数地址,多个业务对应的各个技术地址可以位于一个外部设备中,也可以位于不同 的外部设备中。在进行计数操作时,可以实时计数,也可以定时批量计数。通过外部设备中计数地址对应的存储空间内存储的报文量数据可以检测报文是 否经过某个业务的处理。需要说明的是,当通过访问点正在访问的外部设备的数量已达到 访问点的访问量上限时,可以依次检测下一个访问点的访问量情况,或者同时检测多个访 问点的访问量情况,选择检测该多个访问点时,可以按照用户设定的规则进行选择,或者随 机进行选择。由于本领域的普通技术人员通过现有技术能够实现该访问点的选择,在此不 再赘述。而且可以先检测处理报文的业务对应的业务标识位,再检测通过访问点正在访问 的外部设备的数量是否小于该访问点的访问量上限。从以上的描述中,可以看出通过本发明实施例提供的方法,在访问点空闲时进行 计数操作,有效的避免需要访问的外部设备超出I/O访问点能够访问的范围,这样在业务 正常进行的情况下,较好的实现检测报文量的计数功能。下面通过另一实施例对本发明提供的一种检测报文量的方法进行详细说明,如图 2所示,该方法包括以下步骤步骤201、选择访问点,获取通过该访问点正在访问的外部设备的数量;选择访问 点时,可以按照访问点的位置顺序依次选择,也可以按照预定的规则进行选择,或随机选择。步骤202、判断该访问点是否达到访问上限;具体的,将通过该访问点正在访问的 外部设备的数量与该访问点的访问上限作比较,若小于访问上限,则说明可以通过该访问 点访问外部设备,执行步骤203 ;否则,返回步骤201选择另一个访问点。当然,在选择访问点时也可以根据用户预先设置的相关配置参数来确定。步骤203、检测处理报文的业务对应的业务标识位中的数值是否更改;若已更改,执行步骤204,否则,无动作。具体的,该业务标识位可以在业务对应的代码文件中进行定义或修改,并保存在 网络处理器内具有存储功能的区域。检测到业务标识位中的数值不为0时,确定业务标识 位中的数值与初始化后的数值相比已更改。其中,业务标识位中的数值在报文进入业务进 行处理前,被初始化为0,在报文被所述业务处理时,被置为1。检测业务标识位时可以依次 检测处理报文的各个业务对应的业务标识位,或随机进行检测。 上述步骤在实际执行时,可以先检测处理报文的业务对应的业务标识位中的数值 是否更改,再检测通过访问点正在访问的外部设备的数量是否小于该访问点的访问量上 限。步骤204、通过该访问点读取该业务在外部设备的计数地址对应的存储空间中存 储的报文量数据;具体的,获取该业务在外部设备的计数地址的过程可以为获取该业务标识对应 的业务,根据该业务获取所述业务在外部设备的计数地址;或者根据该业务标识与所述计 数地址的直接映射关系,获取该计数地址。然后,读取该计数地址对应的存储空间内中存储 的报文量数据。步骤205、对读取的报文量数据进行计算处理;具体的,可以对该报文量数据进行 加一操作,或者其他可以达到计数效果的计算操作。步骤206、将计算处理后的报文量数据写入计数地址对应的存储空间内。具体的, 写入该计算处理后的报文量数据时可以覆盖原报文量数据,也可以不覆盖原报文量数据。通过外部设备中计数地址对应的存储空间内存储的报文量数据可以检测报文是 否经过某个业务的处理。需要说明的是,当通过访问点正在访问的外部设备的数量已达到 访问点的访问量上限时,可以依次检测下一个访问点的访问量情况,或者同时检测多个访 问点的访问量情况,选择检测该多个访问点时,可以按照用户设定的规则进行选择,或者随 机进行选择。由于本领域的普通技术人员通过现有技术能够实现该访问点的选择,在此不 再赘述。而且,一个业务对应一个计数地址,多个业务对应的各个技术地址可以位于一个外 部设备中,也可以位于不同的外部设备中。在进行计数操作时,可以实时计数,也可以定时 批量计数。从以上的描述中,可以看出通过本发明实施例提供的方法,在访问点空闲时进行 计数操作,有效的避免需要访问的外部设备超出I/O访问点能够访问的范围,这样在业务 正常进行的情况下,较好的实现检测报文量的计数功能。相应的,本发明实施例还提供了一种检测报文量的装置,如图3所示,包括标识模块301,用于处理报文时,对处理报文的业务对应的业务标识位进行标识;选择模块302,用于选择访问点,通过所述访问点访问的外部设备的数量小于访问
量上限;处理模块303,用于通过所述访问点,根据所述业务标识位的标识,在所述业务对 应的外部设备的计数地址对应的存储空间中进行计数。较佳的,在本发明另一实施例中,标识模块301具体用于用于处理报文前,将所述 处理报文的业务对应的业务标识位中的数值初始化为0 ;处理所述报文时,将所述处理报 文的业务对应的业务标识位中的数值置为1。
较佳的,在本发明另一实施例中,选择模块302可以包括数量获取子模块,用于获取通过访问点访问的外部设备的数量;比较子模块,用于将所述数量与预置的上限值进行比较,若所述数量小于所述预 置的上限值,选择所述访问点作为访问外部设备的访问点。较佳的,在本发明另一实施例中,处理模块303可以包括获取子模块,用于获取所述业务标识对应的业务,根据所述业务获取所述业务在 外部设备的计数地址;或者根据所述业务标识与所述计数地址的直接映射关系,获取所述 计数地址;读取子模块,用于读取所述计数地址对应的存储空间中存储的报文量数据;计算子模块,用于对所述报文量数据进行加一操作;写入子模块,用于将更改后的报文量数据写入所述计数地址对应的存储空间。从以上的描述中,可以看出,根据本发明实施例提出的装置,在访问点空闲时进行 计数操作,有效的避免需要访问的外部设备超出I/O访问点能够访问的范围,这样在业务 正常进行的情况下,较好的实现检测报文量的计数功能。相应的,本发明实施例还提供了一种检测报文量的系统,如图4所示,包括网络 处理器401和存储报文量数据的外部设备402 ;其中,该网络处理器401,用于处理报文时,对处理报文的业务对应的业务标识位 进行标识;选择访问点,通过所述访问点访问的外部设备的数量小于访问量上限;通过所 述访问点,根据所述业务标识位的标识,在所述业务对应的外部设备的计数地址对应的存 储空间中进行计数。从以上的描述中,可以看出,根据本发明实施例提出的方法、装置和系统,在访问 点空闲时进行计数操作,有效的避免需要访问的外部设备超出I/O访问点能够访问的范 围,这样在业务正常进行的情况下,较好的实现检测报文量的计数功能。显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精 神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围 之内,则本发明也意图包含这些改动和变型在内。
权利要求
一种检测报文量的方法,其特征在于,该方法包括处理报文时,对处理报文的业务对应的业务标识位进行标识;选择访问点,通过所述访问点访问的外部设备的数量小于访问量上限;通过所述访问点,根据所述业务标识位的标识,在所述业务对应的外部设备的计数地址对应的存储空间中进行计数。
2.如权利要求1所述的方法,其特征在于,所述处理报文时,对处理报文的业务对应的 业务标识位进行标识,包括处理报文前,将所述处理报文的业务对应的业务标识位中的数值初始化为O ; 处理所述报文时,将所述处理报文的业务对应的业务标识位中的数值置为1 ; 检测到所述业务标识位中的数值不为O时,确定所述业务标识位中的数值与初始化后 的数值相比已更改,进而确定报文已被处理。
3.如权利要求1所述的方法,其特征在于,所述选择正在访问的外部设备的数量小于 访问量上限的访问点,包括获取通过访问点访问的外部设备的数量;将所述数量与预置的上限值进行比较,若所述数量小于所述预置的上限值,选择所述 访问点作为访问外部设备的访问点。
4.如权利要求1所述的方法,其特征在于,所述在所述业务对应的外部设备的计数地 址对应的存储空间中进行计数,包括获取所述业务在外部设备的计数地址;读取所述计数地址对应的存储空间中存储的报文量数据;对所述报文量数据进行加一操作;将更改后的报文量数据写入所述计数地址对应的存储空间。
5.如权利要求4所述的方法,其特征在于,所述获取所述业务在外部设备的计数地址, 包括获取所述业务标识对应的业务,根据所述业务获取所述业务在外部设备的计数地址;或者根据所述业务标识与所述计数地址的直接映射关系,获取所述计数地址。
6.一种检测报文量的装置,其特征在于,包括标识模块,用于处理报文时,对处理报文的业务对应的业务标识位进行标识; 选择模块,用于选择访问点,通过所述访问点访问的外部设备的数量小于访问量上限;处理模块,用于通过所述访问点,根据所述业务标识位的标识,在所述业务对应的外部 设备的计数地址对应的存储空间中进行计数。
7.如权利要求6所述的装置,其特征在于,所述标识模块,具体用于处理报文前,将所 述处理报文的业务对应的业务标识位中的数值初始化为O ;处理所述报文时,将所述处理 报文的业务对应的业务标识位中的数值置为1。
8.如权利要求6所述的装置,其特征在于,所述选择模块,包括 数量获取子模块,用于获取通过访问点访问的外部设备的数量;比较子模块,用于将所述数量与预置的上限值进行比较,若所述数量小于所述预置的上限值,选择所述访问点作为访问外部设备的访问点。
9.如权利要求6所述的装置,其特征在于,所述处理模块模块,包括获取子模块,用于获取所述业务标识对应的业务,根据所述业务获取所述业务在外部 设备的计数地址;或者根据所述业务标识与所述计数地址的直接映射关系,获取所述计数 地址;读取子模块,用于读取所述计数地址对应的存储空间中存储的报文量数据; 计算子模块,用于对所述报文量数据进行加一操作;写入子模块,用于将更改后的报文量数据写入所述计数地址对应的存储空间。
10.一种检测报文量的系统,包括网络处理器和存储报文量数据的外部设备,其特征 在于,所述网络处理器,用于处理报文时,对处理报文的业务对应的业务标识位进行标识;选 择访问点,通过所述访问点访问的外部设备的数量小于访问量上限;通过所述访问点,根据 所述业务标识位的标识,在所述业务对应的外部设备的计数地址对应的存储空间中进行计数。
全文摘要
本发明实施例涉及数据通信领域技术,特别涉及一种检测报文量的方法、装置和系统,该方法包括处理报文时,对处理报文的业务对应的业务标识位进行标识;选择访问点,通过所述访问点访问的外部设备的数量小于访问量上限;通过所述访问点,根据所述业务标识位的标识,在所述业务对应的外部设备的计数地址对应的存储空间中进行计数。通过本发明实施例提供的方法、装置和系统,在访问点空闲时进行计数操作,有效的避免需要访问的外部设备超出I/O访问点能够访问的范围,这样在业务正常进行的情况下,较好的实现检测报文量的计数功能。
文档编号H04L12/26GK101854276SQ20101018844
公开日2010年10月6日 申请日期2010年5月28日 优先权日2010年5月28日
发明者徐春松 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1