通信方法及装置

文档序号:1908210 发布日期:2021-11-30 浏览:13次 >En<

阅读说明:本技术 通信方法及装置 (Communication method and device ) 是由 张庆军 于 2021-07-12 设计创作,主要内容包括:本申请提供一种通信方法及装置,该方法应用于应用于第一接口板,所述第一接口板处于第一框内,所述第一接口板内设置第一令牌桶,所述方法包括:接收第一业务报文;根据所述第一业务报文,判断所述第一令牌桶内是否存在满足转发所述第一业务报文的第一数量个令牌;若满足,则转发所述第一业务报文,并从所述第一令牌桶中扣除所述第一数量个令牌;向第二接口板发送第一通知消息,所述第一通知消息包括第一值,所述第一值表示所述第一数量个令牌,以使得所述第二接口板从所述第二接口板内设置的第二令牌桶中扣除所述第一数量个令牌;其中,所述第二接口板处于第二框内。(The application provides a communication method and a device, the method is applied to a first interface board, the first interface board is positioned in a first frame, a first token bucket is arranged in the first interface board, and the method comprises the following steps: receiving a first service message; judging whether a first token bucket has a first number of tokens which meet the requirement of forwarding the first service message or not according to the first service message; if yes, forwarding the first service message, and deducting the first number of tokens from the first token bucket; sending a first notification message to a second interface board, wherein the first notification message includes a first value, and the first value represents the first number of tokens, so that the second interface board deducts the first number of tokens from a second token bucket arranged in the second interface board; wherein the second interface board is in the second frame.)

通信方法及装置

技术领域

本申请涉及通信技术领域,尤其涉及一种通信方法及装置。

背景技术

对于网络业务,影响服务质量(QoS)的因素包括传输的带宽、传送的时延、数据的丢包率等。在网络中,可以通过保证传输的带宽、降低传送的时延、降低数据的丢包率以及时延抖动等措施提高服务质量。

由于网络资源是有限的,在保证某类业务的服务质量的同时,可能就会损害其它业务的服务质量。因此,网络管理者需要根据各种业务的特点来对网络资源进行合理的规划和分配,从而使网络资源得到高效利用。

为了使有限的网络资源能够更好地发挥效用,更好地为更多的用户服务,需对用户的流量加以限制。流量监管、流量整形和限速可以实现流量的速率限制功能,而要实现此功能则需对通过网络设备的流量进行度量。一般采用令牌桶(Token Bucket)对流量进行度量。

令牌桶可看作是一个存放一定数量令牌的容器。软件系统按设定的速度向桶中放置令牌,当桶中令牌满时,多出的令牌溢出,桶中令牌不再增加。

在用令牌桶评估流量规格时,是以令牌桶中的令牌数量是否足够满足数据报文的转发为依据的。如果桶中存在足够的令牌且满足数据报文的转发,则称该数据报文所在的流量遵守或符合规格,否则称为不符合或超标。

流量监管是指对流量进行控制,通过监督进入网络的流量速率,对超出部分的流量进行“惩罚”,使进入的流量被限制在一个合理的范围之内,以保护网络资源和运营商的利益。例如,可限制HTTP报文不能占用50%以上的网络带宽。如果确定流量超出规格,流量监管可选择丢弃超规格报文,或重新配置超规格报文的优先级。

目前,如图1所示,图1为现有聚合口中成员口转发业务报文示意图。在图1中,聚合口包括两个成员口,两个成员口分别在两块接口板中,每个接口板中均设置一令牌桶。若在聚合口上实现流量监管,则将导致实际流量是预期监管的多倍。其中,虚线范围表示聚合口是由跨板成员口聚合而成,成员口1中的业务报文和成员口2中的业务报文分别在各自接口板中实现令牌桶限速,但是,业务流量将是限速流量的2倍。

为了解决上述业务流量超过限速流量的缺陷,在实际应用中,将聚合口中各成员口的全部业务报文均透传至一块接口板已实现令牌桶限速。如图2所示,图2为现有聚合口中各成员口的全部业务报文均透传至一块接口板示意图。在图2中,成员口2中设置一令牌桶,成员口1中的业务报文均透传至成员口2处,经令牌桶限速后,将符合规格的业务报文再透传至成员口1,由成员口1转发。

但是,上述将各成员口的全部业务报文透传至一块接口板实现令牌桶限速的方式也带来下述缺陷:1)接口板间用于透传业务报文的通道的带宽较小,当需要透传的成员口的业务流量大于接口板间透传通道的带宽时,业务流量被大量丢弃;2)接口板间相互透传业务报文对CPU的消耗较多,影响CPU的工作效率。

发明内容

有鉴于此,本申请提供了一种通信方法及装置,用以解决现有接口板间相互透传业务报文的过程中,导致业务报文被大量丢弃以及影响CPU的工作效率的问题。

第一方面,本申请提供了一种通信方法,所述方法应用于第一接口板,所述第一接口板处于第一框内,所述第一接口板内设置第一令牌桶,所述方法包括:

接收第一业务报文;

根据所述第一业务报文,判断所述第一令牌桶内是否存在满足转发所述第一业务报文的第一数量个令牌;

若满足,则转发所述第一业务报文,并从所述第一令牌桶中扣除所述第一数量个令牌;

向第二接口板发送第一通知消息,所述第一通知消息包括第一值,所述第一值表示所述第一数量个令牌,以使得所述第二接口板从所述第二接口板内设置的第二令牌桶中扣除所述第一数量个令牌;

其中,所述第二接口板处于第二框内。

第二方面,本申请提供了一种通信装置,所述装置应用于第一接口板,所述第一接口板处于第一框内,所述第一接口板内设置第一令牌桶,所述装置包括:

接收单元,用于接收第一业务报文;

第一判断单元,用于根据所述第一业务报文,判断所述第一令牌桶内是否存在满足转发所述第一业务报文的第一数量个令牌;

发送单元,用于若满足,则转发所述第一业务报文,并从所述第一令牌桶中扣除所述第一数量个令牌;

所述发送单元还用于,向第二接口板发送第一通知消息,所述第一通知消息包括第一值,所述第一值表示所述第一数量个令牌,以使得所述第二接口板从所述第二接口板内设置的第二令牌桶中扣除所述第一数量个令牌;

其中,所述第二接口板处于第二框内。

第三方面,本申请提供了一种网络设备,包括处理器和机器可读存储介质,机器可读存储介质存储有能够被处理器执行的机器可执行指令,处理器被机器可执行指令促使执行本申请第一方面所提供的方法。

因此,通过应用本申请提供的通信方法及装置,第一接口板接收第一业务报文;根据第一业务报文,第一接口板判断第一令牌桶内是否存在满足转发第一业务报文的第一数量个令牌;若满足,则第一接口板转发第一业务报文,并从第一令牌桶中扣除第一数量个令牌;第一接口板向第二接口板发送第一通知消息,该第一通知消息包括第一值,第一值表示第一数量个令牌,以使得第二接口板从第二接口板内设置的第二令牌桶中扣除第一数量个令牌;其中,第二接口板处于第二框内。

如此,处于不同框内的接口板间仅相互传递自身扣除的令牌数,而不再相互透传业务报文,解决了现有接口板间相互透传业务报文的过程中,导致业务报文被大量丢弃以及影响CPU的工作效率的问题。提高了令牌桶处理性能,同时,减少了CPU的消耗和框间通信的压力。

附图说明

图1为现有聚合口中成员口转发业务报文示意图;

图2为现有聚合口中各成员口的全部业务报文均透传至一块接口板示意图;

图3为本申请实施例提供的通信方法的流程图;

图4为本申请实施例提供的接口板间相互发送通知消息示意图;

图5为本申请实施例提供的通信装置结构图;

图6为本申请实施例提供的网络设备硬件结构体。

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施例并不代表与本申请相一致的所有实施例。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。

在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相对应的列出项目的任何或所有可能组合。

应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。

下面对本申请实施例提供的检测方法进行详细地说明。参见图3,图3为本申请实施例提供的通信方法的流程图。该方法应用于主板,本申请实施例提供的通信方法可包括如下所示步骤。

步骤310、接收第一业务报文。

具体地,第一接口板接收业务流量,例如,接收第一业务报文。

在本申请实施例中,第一接口板处于第一框内,第一接口板内设置第一令牌桶。

第一接口板包括第一接口,该第一接口可为聚合口中已选中的成员口。该聚合口还包括其他已选中的成员口,例如第二接口。该第二接口处于第二接口板中,第二接口板处于第二框内。

可以理解的是,聚合口具有限速带宽(例如,10M),聚合口中各成员口的限度带宽继承该聚合口的限速带宽,即,各成员口的限速带宽也为10M。各成员口所在接口板的限速带宽也即为各成员口的限速带宽。

进一步地,第一接口接收第一业务报文。

步骤320、根据所述第一业务报文,判断所述第一令牌桶内是否存在满足转发所述第一业务报文的第一数量个令牌。

具体地,根据步骤310的描述,第一接口板接收到第一业务报文后,判断第一令牌桶内是否存在满足转发第一业务报文的第一数量个令牌。

如果存在,则执行步骤330;如果未存在,则说明此时第一令牌桶中的令牌数量不足,第一接口板丢弃该第一业务报文。

步骤330、若满足,则转发所述第一业务报文,并从所述第一令牌桶中扣除所述第一数量个令牌。

具体地,根据步骤320的描述,若第一令牌桶内存在满足转发第一业务报文的第一数量个令牌,则第一接口板转发第一业务报文,并从第一令牌桶中扣除第一数量个令牌。

步骤340、向第二接口板发送第一通知消息,所述第一通知消息包括第一值,所述第一值表示所述第一数量个令牌,以使得所述第二接口板从所述第二接口板内设置的第二令牌桶中扣除所述第一数量个令牌。

具体地,根据步骤340的描述,第一接口板从第一令牌桶中扣除第一数量个令牌之后,第一接口板生成第一通知消息,该第一通知消息包括第一值,第一值表示第一数量个令牌。

第一接口板向第二接口板发送第一通知消息。第二接口板接收到第一通知消息后,从中获取第一值。第二接口板从自身设置的第二令牌桶中扣除第一数量个令牌。

进一步地,在本申请实施例中,第二接口板处于第二框内,第二接口板内设置第二令牌桶。第一接口板与第二接口板之间已建立一令牌桶通道,该令牌桶通道用于接口板之间相互发送本板当前消耗的令牌数。

如图4所示,图4为本申请实施例提供的接口板间相互发送通知消息示意图。在图4中,每个接口板内均设置一令牌桶,且令牌桶的容量相同并具有相同的投放令牌的投放速率。接口板间以建立令牌桶通道,用于传递包括本板当前消耗的令牌数的通知消息。

在本申请实施例中,投放速率不大于接口板的限速带宽。例如,每个接口板的限速带宽相同均为10M,则令牌桶的投放速率不大于接口板的限速带宽,即投放速率最大为10M。

更进一步地,在本申请实施例中,根据预设的投放速率,第一接口板向第一令牌桶中投放令牌。

因此,通过应用本申请提供的通信方法及装置,第一接口板接收第一业务报文;根据第一业务报文,第一接口板判断第一令牌桶内是否存在满足转发第一业务报文的第一数量个令牌;若满足,则第一接口板转发第一业务报文,并从第一令牌桶中扣除第一数量个令牌;第一接口板向第二接口板发送第一通知消息,该第一通知消息包括第一值,第一值表示第一数量个令牌,以使得第二接口板从第二接口板内设置的第二令牌桶中扣除第一数量个令牌;其中,第二接口板处于第二框内。

如此,处于不同框内的接口板间仅相互传递自身扣除的令牌数,而不再相互透传业务报文,解决了现有接口板间相互透传业务报文的过程中,导致业务报文被大量丢弃以及影响CPU的工作效率的问题。提高了令牌桶处理性能,同时,减少了CPU的消耗和框间通信的压力。

可选地,在本申请实施例中,还包括第一接口板接收第二接口板发送的第二通知消息的过程。

具体地,第二接口板接收业务流量,例如,接收第二业务报文。进一步地,第二接口接收第二业务报文。

第二接口板接收到第二业务报文后,判断第二令牌桶内是否存在满足转发第二业务报文的第二数量个令牌。如果未存在,则说明此时第二令牌桶中的令牌数量不足,第二接口板丢弃该第二业务报文。

如果第二令牌桶内存在满足转发第二业务报文的第二数量个令牌,则第二接口板转发第二业务报文,并从第二令牌桶中扣除第二数量个令牌。

第二接口板从第二令牌桶中扣除第二数量个令牌之后,第二接口板生成第二通知消息,该第二通知消息包括第二值,第二值表示第二数量个令牌。

第二接口板向第一接口板发送第二通知消息。第一接口板接收到第二通知消息后,从中获取第二值。

根据第二数量个令牌,第一接口板从第一令牌桶中扣除第二数量个令牌。

在本申请实施例中,聚合口中的各成员口(在聚合组中已选中的各成员口)处于不同接口板时,一成员口所在接口板内令牌桶减令牌,同时,也将另一成员口所在接口板内令牌桶中减去同样的令牌,如此可保证不管业务流量经过不同成员口所在接口板,均能保证聚合口的限速带宽。

可选地,在本申请步骤340之前,还包括第一接口板判断是否接收过其他接口板发送的通知消息,并根据判断结果决定是否发送第一通知消息的过程。

具体地,第一接口板判断是否已接收到第二接口板发送的第三通知消息,该第三通知消息包括第三值,第三值表示第三数量个令牌。

若第一接口板接收到第三通知消息且根据第三数量个令牌从第一令牌桶中扣除第三数量个令牌,则第一接口板向第二接口板发送第一通知消息。

若第一接口板未接收到第三通知消息,则第一接口板不向第二接口板发送第一通知消息。

在本申请实施例中,若仅有第一接口板内存在业务流量,而第二接口板内未存在业务流量,则将会造成第二接口板内令牌桶盲目地扣除令牌,如此扣除令牌的方式是没有意义的。因此,通过前述判断过程,若第一接口板内令牌桶存在令牌消耗且本板内令牌桶未扣除过其他接口板转发业务报文时的令牌,则第一接口板令牌消耗后也不再向其他接口板发送通知消息,避免无意义的扣除令牌的方式。

可选地,在本申请实施例步骤340之前,还包括第一接口板在预设时间段内判断是否接收过其他接口板发送的通知消息,并根据判断结果决定是否发送第一通知消息的过程。

具体地,在预设时间段内,第一接口板判断是否已接收到第二接口板发送的第四通知消息,该第四通知消息包括第四值,第四值表示第四数量个令牌。

在本申请实施例中,预设时间段以毫秒为基准,配置的时间段值越小,对业务流量越灵敏。一般可将预设时间段设置为50ms。

若在预设时间段结束前接收到第四通知消息且根据第四数量个令牌从第一令牌桶中扣除第四数量个令牌,则第一接口板向第二接口板发送第一通知消息。

若在预设时间段内或者在预设时间段结束时未接收到第四通知消息,则第一接口板不向第二接口板发送第一通知消息。

在本申请实施例中,接口板可能存在业务流量断续的场景。若第一接口板内业务流量断续,而第二接口板内业务流量保持稳定,则将会造成第一接口板内令牌桶盲目地扣除令牌,如此扣除令牌的方式也是没有意义的。

因此,通过将预设时间段与判断过程结合,若预设时间段结束,第一接口板均为接收到其他接口板发送的通知消息,则第一接口板也不再向其他接口板发送通知消息,除非后续其他接口板再发送通知消息时,唤醒第一接口板向其他其他接口板发送通知消息。该预设时间段越短,对业务流量越敏感,反之,对业务流量越不敏感。

基于同一发明构思,本申请实施例还提供了与通信方法对应的通信装置。参见图5,图5为本申请实施例提供的通信装置结构图。所述装置应用于第一接口板,所述第一接口板处于第一框内,所述第一接口板内设置第一令牌桶,所述装置包括:

接收单元510,用于接收第一业务报文;

第一判断单元520,用于根据所述第一业务报文,判断所述第一令牌桶内是否存在满足转发所述第一业务报文的第一数量个令牌;

发送单元530,用于若满足,则转发所述第一业务报文,并从所述第一令牌桶中扣除所述第一数量个令牌;

所述发送单元530还用于,向第二接口板发送第一通知消息,所述第一通知消息包括第一值,所述第一值表示所述第一数量个令牌,以使得所述第二接口板从所述第二接口板内设置的第二令牌桶中扣除所述第一数量个令牌;

其中,所述第二接口板处于第二框内。

可选地,所述接收单元510还用于,接收所述第二接口板发送的第二通知消息,所述第二通知消息包括第二值,所述第二值表示第二数量个令牌;

所述装置还包括:扣除单元(图中未示出),用于根据所述第二数量个令牌,从所述第一令牌桶中扣除所述第二数量个令牌;

其中,所述第二数量个令牌为所述第二接口板接收到第二业务报文后,判断所述第二令牌桶内是否存在满足转发所述第二业务报文的令牌后得到。

可选地,所述装置还包括:第二判断单元(图中未示出),用于判断是否已接收到所述第二接口板发送的第三通知消息,所述第三通知消息包括第三值,所述第三值表示第三数量个令牌;

所述发送单元530还用于,若接收到所述第三通知消息且根据所述第三数量个令牌从所述第一令牌桶中扣除所述第三数量个令牌,则向所述第二接口板发送所述第一通知消息;

所述发送单元530还用于,若未接收到所述第三通知消息,则不向所述第二接口板发送所述第一通知消息。

可选地,所述装置还包括:第三判断单元(图中未示出),用于在预设时间段内,判断是否已接收到所述第二接口板发送的第四通知消息,所述第四通知消息包括第四值,所述第四值表示第四数量个令牌;

所述发送单元530还用于,若在所述预设时间段结束前接收到所述第四通知消息且根据所述第四数量个令牌从所述第一令牌桶中扣除所述第四数量个令牌,则向所述第二接口板发送所述第一通知消息;

所述发送单元530还用于,若在所述预设时间段内或者在所述预设时间段结束时未接收到所述第四通知消息,则不向所述第二接口板发送所述第一通知消息。

可选地,所述装置还包括:投放单元(图中未示出),用于根据预设的投放速率,向所述第一令牌桶中投放令牌;

其中,所述投放速率不大于所述第一接口板的限速带宽。

因此,通过应用本申请提供的通信装置,第一接口板接收第一业务报文;根据第一业务报文,第一接口板判断第一令牌桶内是否存在满足转发第一业务报文的第一数量个令牌;若满足,则第一接口板转发第一业务报文,并从第一令牌桶中扣除第一数量个令牌;第一接口板向第二接口板发送第一通知消息,该第一通知消息包括第一值,第一值表示第一数量个令牌,以使得第二接口板从第二接口板内设置的第二令牌桶中扣除第一数量个令牌;其中,第二接口板处于第二框内。

如此,处于不同框内的接口板间仅相互传递自身扣除的令牌数,而不再相互透传业务报文,解决了现有接口板间相互透传业务报文的过程中,导致业务报文被大量丢弃以及影响CPU的工作效率的问题。提高了令牌桶处理性能,同时,减少了CPU的消耗和框间通信的压力。

基于同一发明构思,本申请实施例还提供了一种网络设备,如图6所示,包括处理器610、收发器620和机器可读存储介质630,机器可读存储介质630存储有能够被处理器610执行的机器可执行指令,处理器610被机器可执行指令促使执行本申请实施例所提供的通信方法。前述图5所示的检测装置,可采用如图6所示的网络设备硬件结构实现。

上述计算机可读存储介质630可以包括随机存取存储器(英文:Random AccessMemory,简称:RAM),也可以包括非易失性存储器(英文:Non-volatile Memory,简称:NVM),例如至少一个磁盘存储器。可选的,计算机可读存储介质630还可以是至少一个位于远离前述处理器610的存储装置。

上述处理器610可以是通用处理器,包括中央处理器(英文:Central ProcessingUnit,简称:CPU)、网络处理器(英文:Network Processor,简称:NP)等;还可以是数字信号处理器(英文:Digital Signal Processor,简称:DSP)、专用集成电路(英文:ApplicationSpecific Integrated Circuit,简称:ASIC)、现场可编程门阵列(英文:Field-Programmable Gate Array,简称:FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。

本申请实施例中,处理器610通过读取机器可读存储介质630中存储的机器可执行指令,被机器可执行指令促使能够实现处理器610自身以及调用收发器620执行前述本申请实施例描述的通信方法。

另外,本申请实施例提供了一种机器可读存储介质630,机器可读存储介质630存储有机器可执行指令,在被处理器610调用和执行时,机器可执行指令促使处理器610自身以及调用收发器620执行前述本申请实施例描述的通信方法。

上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。

对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

对于通信装置以及机器可读存储介质实施例而言,由于其涉及的方法内容基本相似于前述的方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。

15页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种通用与专用混合流量控制方法、计算机设备和存储介质

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!