首页> 中国专利> 通信流控方法、LNS及LAC

通信流控方法、LNS及LAC

摘要

本发明实施例提供一种通信流控方法、LNS及LAC。当所述LNS接收到LAC发送的会话建立请求时,比较当前的协商并发量与当前的会话流控限值。若此时当前的协商并发量超过当前的会话流控限值,则所述LNS向所述LAC发送会话流控请求,以便所述LAC根据所述会话流控请求调整向所述LNS发送会话建立请求的策略。通过LNS与LAC之间的配合调控LNS与LAC之间的会话协商量。进而有效避免了会话协商量超过LNS的处理性能之后,大量重传报文在调控LNS与LAC之间的隧道中反复传送。降低网络的负载,提高会话协商效率。

著录项

  • 公开/公告号CN107196867A

    专利类型发明专利

  • 公开/公告日2017-09-22

    原文格式PDF

  • 申请/专利权人 迈普通信技术股份有限公司;

    申请/专利号CN201710630083.6

  • 发明设计人 汪佐;

    申请日2017-07-28

  • 分类号

  • 代理机构北京超凡志成知识产权代理事务所(普通合伙);

  • 代理人唐维虎

  • 地址 610000 四川省成都市高新区九兴大道16号

  • 入库时间 2023-06-19 03:20:27

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-10-18

    授权

    授权

  • 2017-10-24

    实质审查的生效 IPC(主分类):H04L12/801 申请日:20170728

    实质审查的生效

  • 2017-09-22

    公开

    公开

说明书

技术领域

本发明涉及数据通信领域,具体而言,涉及一种通信流控方法、LNS及LAC。

背景技术

随着数据通信技术的发展,二层隧道协议(Layer 2Tunneling Protocol,简称L2TP)被普遍使用和认识,尤其在第三代移动通信技术的到来,使L2TP协议得到了更广泛的应用。L2TP典型组网包括客户端、L2TP访问集中(L2TPAccess Concentrator,简称LAC)和L2TP网络服务器(L2TPNetworkServer,简称LNS)。LAC是在客户端和LNS之间传递数据的设备。

但是,L2TP的协商模式中,通常是一个隧道对应多个会话或多个隧道对应多个会话,同时每个会话的建立都需要对应隧道交换大量的会话协商报文,以致当LNS接收到的会话协商量超过LNS的处理性能。大量的重传报文、CDN报文、STOPCCN报文、PPP的重传报文通过隧道在网络中发送,让本身负载较重的网络负载加重,从而形成雪崩效应,导致会话协商反复震荡。

应对上述问题,通常采用不断提高LNS的处理性能。但这样的处理方法,一方面成本较高,另一方面在即使提高LNS的处理性能也跟不上数据通信量的增长速度。

发明内容

为了克服现有技术中的上述不足,本发明实施例提供一种通信流控方法、LNS及LAC,通过LNS与LAC之间的配合调整会话协商并发量,提高协商效率,减轻网络的负载。

本发明实施例提供了一种通信流控方法,所述方法应用于与至少一个二层隧道协议访问集中器LAC通信的二层隧道协议网络服务器LNS,所述方法包括:

接收所述LAC发送的会话建立请求;

由所述会话建立请求触发查询当前的协商并发量及当前的会话流控限值;

比较所述协商并发量及所述会话流控限值;

当所述协商并发量大于所述会话流控限值,生成对应的会话流控请求;

将所述会话流控请求发送至所述LAC,以使所述LAC根据所述会话流控请求调整所述会话建立请求的发送策略。

本发明实施例还提供了一种通信流控方法,所述方法应用于与二层隧道协议网络服务器LNS通信的二层隧道协议访问集中器LAC,所述方法包括:

响应请求会话的指令,查询是否获得由所述LNS在当前的协商并发量大于当前的会话流控限值时,根据所述会话流控限值及当前的负载参数生成的会话流控请求;

在获得所述会话流控请求后,根据所述会话流控请求调整向所述LNS发送会话建立请求的策略;

在未获得所述会话流控请求时,根据所述请求会话的指令,向所述LNS发送所述会话建立请求。

本发明实施例还提供了一种二层隧道协议网络服务器LNS,所述LNS与至少一个二层隧道协议访问集中器LAC通信,所述LNS包括接收模块、第一查询模块、比较模块、生成模块及第一发送模块。其中,接收模块,用于接收所述LAC发送的会话建立请求;第一查询模块,用于由所述会话建立请求触发查询当前的协商并发量及当前的会话流控限值;比较模块,用于比较所述协商并发量及所述会话流控限值;生成模块,用于当所述协商并发量大于所述会话流控限值,生成对应的会话流控请求;第一发送模块,用于将所述会话流控请求发送至所述LAC,以使所述LAC根据所述会话流控请求调整所述会话建立请求的发送策略。

本发明实施例还提供了一种二层隧道协议访问集中器LAC,所述LAC与二层隧道协议网络服务器LNS通信,所述LAC包括:第二查询模块、调控模块及第二发送模块。其中,第二查询模块,用于响应请求会话的指令,查询是否获得由所述LNS在当前的协商并发量大于当前的会话流控限值时,根据所述会话流控限值及当前的负载参数生成的会话流控请求;调控模块,用于在获得所述会话流控请求后,根据所述会话流控请求调整向所述LNS发送会话建立请求的策略;第二发送模块,用于在未获得所述会话流控请求时,根据所述请求会话的指令,向所述LNS发送所述会话建立请求。

相对于现有技术而言,本发明具有以下有益效果:

本发明提供的一种通信流控方法、LNS及LAC。通过比较当前的协商并发量与当前的会话流控限值,判断是否向所述LAC发送对应的会话流控请求。以便所述LAC根据所述会话流控请求调整向所述LNS发送会话建立请求的策略。从而使LNS与LAC配合调控LNS与LAC之间的会话协商量。避免了会话协商量超过LNS的处理性能之后,大量重传报文在调控LNS与LAC之间的隧道中反复传送。有效的降低网络的负载,减少网络资源浪费,提高大量会话协商效率。

为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1为本发明较佳实施例的应用环境示意图。

图2示出了本发明第一实施例提供的通信流控方法的流程图之一。

图3是本发明第一实施例提供的图2所示的步骤S140的子步骤流程图。

图4示出了本发明第一实施例提供的通信流控方法的流程图之二。

图5示出了本发明第二实施例提供的通信流控方法的流程图。

图6是本发明第二实施例提供的图5所示的步骤S140的子步骤流程图。

图7示出了本发明较佳实施例提供的LNS的功能模块框图。

图8示出了本发明较佳实施例提供的LAC的功能模块框图。

图9为图8示出的LAC中的调控模块的功能子模块示意图。

图标:100-LNS;110-接收模块;120-第一查询模块;130-比较模块;140-生成模块;150-第一发送模块;160-获取模块;170-调整模块;200-LAC;210-第二查询模块;220-调控模块;221-延时控制子模块;222-步进控制子模块;223-总量控制子模块;230-第二发送模块。

具体实施方式

下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

请参考图1,图1为本发明实施例的应用环境示意图。所述LNS100与所述LAC200之间基于L2TP进行数据交互。LAC200向客户端提供一个接入LNS100的接入汇聚口,客户端可以通过接入LAC200(例如,拨号接入LAC200),利用LAC200与所述LNS100之间的隧道,实现与LNS100的之间的数据通信。

本发明提出了会话流控限值的概念,所述会话流控限值可以是所述LNS100所能同时处理的协商总量的最大值。所述会话流控限值的取值可以是1-N之间的任意整数,需要说明的是,N为根据经验预设定的值。其中,所述会话流控限值初始化状态的值为预设定的一个数值。在LNS100运行的过程中被所述LNS100动态更新。

第一实施例

请参考图2,图2为本发明第一实施例提供的通信流控方法的流程图之一。所述方法应用于与至少一个LAC200通信的LNS100。下面对通信流控方法的具体流程进行详细阐述。

步骤S110,接收所述LAC200发送的会话建立请求。

在本实施例中,所述LAC200在与LNS100之间隧道建立之后,所述LAC200可以根据接入LAC200的客户端的请求,向对应的所述LNS100发送会话建立请求,以请求与所述LNS100进行会话协商。可选地,所述会话建立请求可以是ICRQ报文。

步骤S120,由所述会话建立请求触发查询当前的协商并发量及当前的会话流控限值。

在本实施例中,协商并发量可以是所述LNS100正在处理的协商总数量。可选地,协商并发量包括会话协商并发量及PPP协商并发量。需要说明的是,LNS100若响应接收到会话建立请求,首先进行对应的会话协商(例如,生成一个virtual-access口,把虚拟模板口的配置刷到virtual-access口);并在会话协商成功之后,再进行PPP协商(例如,在virtual-access口上开始PPP协议的协商)。当PPP协商成功后,所述会话建立请求对应的协商才算完成。在此过程中,LNS100动态地更新会话协商并发量及PPP协商并发量,例如,完成一个会话协商则将会话协商并发量减一,新建立一个会话协商则将会话协商并发量加一。本实施例中,所述LNS100由接收到会话建立请求触发,查询当前的会话协商并发量、PPP协商并发量及当前的会话流控限值。

步骤S130,比较所述协商并发量及所述会话流控限值。

在本实施例中,将会话协商并发量及PPP协商并发量的总量与所述会话流控限值进行比较。若所述协商并发量大于所述会话流控限值,流程进入步骤S140;若所述协商并发量未超过所述会话流控限值,则所述LNS100响应所述会话建立请求,启动对应的会话协商。

步骤S140,生成对应的会话流控请求。

在本实施例中,会话流控请求可以是携带流控参数属性值对(AttributeValuePair,AVP)的CDN报文。可选地,流控参数可以是,但不限于是延时流控参数、延迟步进流控参数及请求总量流控参数之中的任意一种或者多种的组合。

请参照图3,可选地,步骤S140包括子步骤S141及子步骤S142。

子步骤S141,根据所述会话流控限值,结合当前的负载参数,获取对应的流控参数。

在本实施例中,获取LNS100当前的负载参数。负载参数可以是评估LNS100当前的处理能力的参数,可选地,负载参数可以包括LNS100的当前CPU使用情况及LNS100的当前内存使用情况。本实施例中,所述LNS100中预先存储有会话流控限值、负载参数与流控参数之间的对应关系。根据当前的会话流控限值,结合当前的负载参数匹配出对应的流控参数。

子步骤S142,根据所述流控参数及所述会话流控限值,生成所述会话流控请求。

在本实施例中,根据匹配出的对应的所述流控参数,生成所述会话流控请求。例如,根据匹配出的对应的所述流控参数生成对应AVP信息,将所述AVP信息封装进所述CND报文中,生成会话流控请求。

步骤S150,将所述会话流控请求发送至所述LAC200。

在本实施例,将生成的会话流控请求发送至LAC200,用以提醒LAC200本次会话建立请求失败,并让所述LAC200根据所述会话流控请求调整向LNS100发送所述会话建立请求的策略。下面通过举例对所述LAC200根据所述会话流控请求调整向LNS100发送所述会话建立请求的策略进行说明。

本实施例中,当所述会话流控请求中包括延时流控参数时,在所述延时流控参数对应的延迟时间之后发送所述会话建立请求,例如,延迟时间为5s,则LAC200在接收到会话流控请求5s之后,重新开始向LNS100发送会话建立请求。当所述会话流控请求中包括延迟步进流控参数时,根据所述延迟步进流控参数控制向所述LNS100发送的所述会话建立请求的步进时长,例如,延迟步进流控参数对应的步进时长为5s,则LAC200每隔5s向LNS100发送会话建立请求。当所述会话流控请求中包括请求总量流控参数时,根据所述请求总量流控参数控制单位步进内向所述LNS100发送的所述会话建立请求的总量,例如,会话建立请求的总量为100条,则LAC200每个单位步进时间内向LNS100发送的会话建立请求的总量不超过100条。当会话流控请求包括延时流控参数及延迟步进流控参数,则LAC200在及接收到会话流控请求开始停止向对应的所述LNS100发送会话建立请求,直到时间超过所述延迟时间之后,按照所述步进时长为间隔向所述LNS100发送会话建立请求。当会话流控请求包括延时流控参数、延迟步进流控参数及请求总量流控参数,则LAC200在及接收到会话流控请求开始停止向对应的所述LNS100发送会话建立请求,直到时间超过所述延迟时间之后,按照所述步进时长为间隔向所述LNS100发送会话建立请求,且每次单位步进内发送的会话建立请求不超过请求总量流控参数。当会话流控请求包括延迟步进流控参数及请求总量流控参数,则LAC200在及接收到会话流控请求开始按照对应的所述步进时长为间隔向所述LNS100发送会话建立请求,且每次单位步进内发送的会话建立请求不超过请求总量流控参数。

请参照图4,图4是本发明第一实施例提供的通信流控方法的步骤流程图之二。所述方法在步骤S130之后还包括:步骤S160及步骤S170。需要说明的是,步骤S140与步骤S160之间的顺序在此不做限定,例如,当所述协商并发量大于所述会话流控限值,流程可以同时进入步骤S140与步骤S160,也可以先进入步骤S140,再进入步骤S160,还可以是先进入步骤S160,再进入步骤S140。

步骤S160,获取当前的负载参数。

在本实施例中,可以是分别获取当前的CPU使用参数及当前的内存使用参数。

步骤S170,根据当前的所述负载参数,调整当前的会话流控限值。

在本实施例中,根据LNS100当前的处理能力及当前需要正在处理的协商量,利用预设置的算法,获取当前最佳的会话流控限制,以替换当前的会话流控限制,实现对当前的会话流控限值的调整。可选地,可以是根据所述当前的CPU使用参数及所述当前的内存使用参数,结合当前的所述协商并发量,对当前的会话流控限值进行调整。

第二实施例

请参照图5,图5为本发明第二实施例提供的通信流控方法的流程图。所述通信流控方法应用于LAC200。下面对上述通信流控方法的具体流程进行详细阐述。

步骤S210,响应请求会话的指令,查询是否已获得会话流控请求。

在本实施例中,当客户端需要借助所述LAC200与LNS100进行数据通信时,需向接入的所述LAC200发送请求与对应的LNS100会话的指令至LAC200。需要说明的是,所述会话流控请求由所述LNS100生成。可选地,当所述LNS100的当前的协商并发量大于当前的会话流控限值时,所述LNS100根据所述会话流控限值及当前的负载参数生成的会话流控请求。若已获得所述会话流控请求,流程进入步骤S220;若未获得所述会话流控请求,流程进入步骤S230。

步骤S220,根据所述会话流控请求调整向所述LNS100发送会话建立请求的策略。

在本实施例中,所述会话流控请求中的流控参数调整向对应的所述LNS100发送所述会话建立请求的策略。流控参数可以包括延时流控参数、延迟步进流控参数及请求总量流控参数之中的任意一种或者多种的组合。

请参照图6,可选地,所述步骤S220包括子步骤S221、子步骤S222及子步骤S223。

步骤S221,当所述会话流控请求中包括延时流控参数时,在所述延时流控参数对应的延迟时间之后发送所述会话建立请求。

步骤S222,当所述会话流控请求中包括延迟步进流控参数时,根据所述延迟步进流控参数控制向所述LNS100发送的所述会话建立请求的步进时长。

步骤S223,当所述会话流控请求中包括请求总量流控参数时,根据所述请求总量流控参数控制单位步进内向所述LNS100发送的所述会话建立请求的总量。

步骤S230,根据所述请求会话的指令,向所述LNS100发送所述会话建立请求。

第三实施例

请参照图7,图7是本发明较佳实施例提供的LNS100的功能模块框图。所述LNS100包括:接收模块110、第一查询模块120、比较模块130、生成模块140、第一发送模块150、获取模块160及调整模块170。

接收模块110,用于接收所述LAC200发送的会话建立请求。

在本实施例中,所述接收模块110用于执行图2中的步骤S110,关于所述接收模块110的具体描述可以参照步骤S110的描述。

第一查询模块120,用于由所述会话建立请求触发查询当前的协商并发量及当前的会话流控限值。

在本实施例中,所述第一查询模块120用于执行图2中的步骤S120,关于所述第一查询模块120的具体描述可以参照步骤S120的描述。

比较模块130,用于比较所述协商并发量及所述会话流控限值。

在本实施例中,所述比较模块130用于执行图2中的步骤S130,关于所述比较模块130的具体描述可以参照步骤S130的描述。

生成模块140,用于当所述协商并发量大于所述会话流控限值,生成对应的会话流控请求。

在本实施例中,所述生成模块140用于执行图2中的步骤S140、图3中的子步骤S141及图3中的子步骤S142,关于所述生成模块140的具体描述可以参照步骤S140、子步骤S141及子步骤S142的描述。

第一发送模块150,用于将所述会话流控请求发送至所述LAC200,以使所述LAC200根据所述会话流控请求调整所述会话建立请求的发送策略。

在本实施例中,所述第一发送模块150用于执行图2中的步骤S150,关于所述第一发送模块150的具体描述可以参照步骤S150的描述。

获取模块160,用于获取当前的负载参数。

在本实施例中,所述获取模块160用于执行图4中的步骤S160,关于所述获取模块160的具体描述可以参照步骤S160的描述。

调整模块170,用于根据当前的所述负载参数,调整当前的会话流控限值。

在本实施例中,所述调整模块170用于执行图4中的步骤S170,关于所述调整模块170的具体描述可以参照步骤S170的描述。

第四实施例

请参照图8,图8是本发明较佳实施例提供的LAC200的功能模块框图。所述LAC200包括:第二查询模块210、调控模块220及第二发送模块230。

第二查询模块210,用于响应请求会话的指令,查询是否获得会话流控请求。

在本实施例中,会话流控请求可以是所述LNS100在当前的协商并发量大于当前的会话流控限值时,根据所述会话流控限值及当前的负载参数生成的报文。所述第二查询模块210用于执行图5中的步骤S210,关于所述第二查询模块210的具体描述可以参照步骤S210的描述。

调控模块220,用于在获得所述会话流控请求后,根据所述会话流控请求调整向所述LNS100发送会话建立请求的策略。

在本实施例中,所述调控模块220用于执行图5中的步骤S220,关于所述调控模块220的具体描述可以参照步骤S220的描述。

可选地,如图9所示,调控模块220还可以包括以下功能子模块:

延时控制子模块221,用于当所述会话流控请求中包括延时流控参数时,在所述延时流控参数对应的延迟时间之后发送所述会话建立请求。

在本实施例中,所述延时控制子模块221用于执行图6中的子步骤S221,关于所述延时控制子模块221的具体描述可以参照子步骤S221的描述。

步进控制子模块222,用于当所述会话流控请求中包括延迟步进流控参数时,根据所述延迟步进流控参数控制向所述LNS100发送的所述会话建立请求的步进时长。

在本实施例中,所述步进控制子模块222用于执行图6中的子步骤S222,关于所述步进控制子模块222的具体描述可以参照子步骤S222的描述。

总量控制子模块223,用于当所述会话流控请求中包括请求总量流控参数时,根据所述请求总量流控参数控制单位步进内向所述LNS100发送的所述会话建立请求的总量。

在本实施例中,所述总量控制子模块223用于执行图6中的子步骤S223,关于所述总量控制子模块223的具体描述可以参照子步骤S223的描述。

第二发送模块230,用于在未获得所述会话流控请求时,根据所述请求会话的指令,向所述LNS100发送所述会话建立请求。

在本实施例中,所述第二发送模块230用于执行图5中的步骤S230,关于所述第二发送模块230的具体描述可以参照步骤S230的描述。

综上所述,本发明提供的一种通信流控方法、LNS及LAC。通过比较当前的协商并发量与当前的会话流控限值,判断是否向所述LAC发送对应的会话流控请求。以便所述LAC根据所述会话流控请求调整向所述LNS发送会话建立请求的策略。从而使LNS与LAC配合调控LNS与LAC之间的会话协商量。避免了会话协商量超过LNS的处理性能之后,大量重传报文在调控LNS与LAC之间的隧道中反复传送。有效的降低网络的负载,减少网络资源浪费,提高大量会话协商效率。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号