CN102752221A - 应用于l2tp组网中的数据报文负载分担方法和装置 - Google Patents

应用于l2tp组网中的数据报文负载分担方法和装置 Download PDF

Info

Publication number
CN102752221A
CN102752221A CN2012102555195A CN201210255519A CN102752221A CN 102752221 A CN102752221 A CN 102752221A CN 2012102555195 A CN2012102555195 A CN 2012102555195A CN 201210255519 A CN201210255519 A CN 201210255519A CN 102752221 A CN102752221 A CN 102752221A
Authority
CN
China
Prior art keywords
l2tp
tunnel
sub
address
lac
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2012102555195A
Other languages
English (en)
Other versions
CN102752221B (zh
Inventor
乔辉
蒋益群
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
New H3C Information Technologies Co Ltd
Original Assignee
Hangzhou H3C Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou H3C Technologies Co Ltd filed Critical Hangzhou H3C Technologies Co Ltd
Priority to CN201210255519.5A priority Critical patent/CN102752221B/zh
Publication of CN102752221A publication Critical patent/CN102752221A/zh
Application granted granted Critical
Publication of CN102752221B publication Critical patent/CN102752221B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请提供了应用于L2TP组网中的数据报文负载分担方法和装置。该方法包括:LAC根据到L2TP主隧道的目的IP地址的路由数量,与LNS建立隶属于所述L2TP主隧道的L2TP子隧道,为各个L2TP子隧道分配隧道源IP地址和隧道目的IP地址,并依次将本LAC与LNS之间的L2TP会话Session分别复用在建立的L2TP子隧道;LAC接收到任一L2TP Session中的数据报文时,确定该L2TP Session复用的L2TP子隧道,对该数据报文封装公网IP头并进行转发,以避免部分链路负载过重引起的拥塞,封装的公网IP头包含该L2TP Session复用的L2TP子隧道的隧道源IP地址和目的IP地址。

Description

应用于L2TP组网中的数据报文负载分担方法和装置
技术领域
本申请涉及网络通信技术,特别涉及应用于二层隧道协议(L2TP:Layer2Tunneling Protocol)中的数据报文负载分担方法和装置。
背景技术
虚拟专用拨号网络(VPDN:Virtual Private Dial-up Network)利用公共网网络的拨号功能接入公共网络,实现虚拟专用网,为远端用户与私有企业网之间提供了一种经济而有效的点到点连接方式。
L2TP是目前使用最为广泛的VPDN隧道协议,其用于构建虚拟专用网络。该构造的虚拟专用网络的典型组网如图1所示,主要包括:远端设备、L2TP访问集中器(LAC:L2TP Access Concentrator)和网络服务器(LNS:L2TP Network Server)。其中,远端设备是要接入Intranet网络的远端用户设备或分支结构,通常是一个用户主机或私有分支网络的一台路由设备。LAC是具有点对点(PPP)端系统和L2TP处理能力的设备,通常是当地网络服务提供商(ISP)的网络接入服务器(NAS),为PPP端设备提供接入服务,其位于远端设备和LNS之间,用于在LNS和远端设备之间传递信息包。LNS既是PPP端设备,又是L2TP协议的服务器端,通常作为一个Intranet网络的边缘设备。
在图1所示的组网中,LAC与LNS通过在公网中建立L2TP隧道连接,以实现远端设备接入Intranet。其中,L2TP隧道的建立有三种典型模式:一种是NAS发起的隧道连接,一种是用户发起的VPN连接,一种是LAC发起的。本发明主要涉及LAC发起的隧道连接,该LAC发起隧道连接的模式又简称为LAC-Auto-Initiated。
在LAC和LNS之间通过LAC-Auto-Initiated建立L2TP隧道连接后,LAC和LNS之间需要建立L2TP会话(Session),如图2所示,L2TP Session的建立是一个三次握手的过程,首先,LAC通过与LNS之间建立的L2TP隧道传递会话建立请求(ICRQ:Incoming-Call-Request)至LNS,LNS收到ICRQ后,通过与LAC之间建立的L2TP隧道向LAC返回针对ICRQ的应答(ICRP:Incoming-Call-Reply),LAC收到ICRP后,再通过与LNS之间建立的L2TP隧道向LNS返回确认(ICCN:Incoming-Call-Connected)。至此,L2TP Session建立成功。
在L2TP VPN组网中,LAC与LNS之间可以建立多个L2TP Session,该多个L2TP共用LAC与LNS之间建立的一条L2TP隧道。但是,这样会导致LAC针对所有L2TP Session的数据报文封装的公网IP头相同,其中,该公网IP头主要包括:L2TP隧道源地址等。由于所有L2TP Session的数据报文封装相同的公网IP头,则在现有的链路负载分担机制中,按照哈希(HASH)算法对数据报文的公网IP头进行HASH运算来选择链路时,会将所有L2TPSession的数据报文分担至同一链路上进行传输,导致链路的负载过重,同时其他链路被浪费。
发明内容
本申请提供了应用于L2TP组网中的数据报文负载分担方法和装置,以避免所有L2TP Session的数据报文分担至同一链路上进行传输所带来的技术问题。
本申请提供的技术方案包括:
一种应用于L2TP组网中的数据报文负载分担方法,所述L2TP组网包括终端、LAC和LNS;该方法包括:
LAC根据到L2TP主隧道的目的IP地址的路由数量,与LNS建立隶属于所述L2TP主隧道的L2TP子隧道;
LAC为各个L2TP子隧道分配隧道源IP地址和隧道目的IP地址,其中,不同的L2TP子隧道分配不同的隧道源IP地址;
在终端的触发下,LAC与LNS之间建立L2TP会话Session时,LAC依次将本LAC与LNS之间的L2TP Session分别复用在建立的L2TP子隧道,并记录每一L2TP Session与其复用的L2TP子隧道之间的对应关系;
LAC接收到任一L2TP Session中的数据报文时,从记录的对应关系中确定该L2TP Session对应的L2TP子隧道,对该数据报文封装公网IP头并进行转发,封装的公网IP头包含该L2TP Session对应的L2TP子隧道的隧道源IP地址和目的IP地址。
一种网络接入装置,所述网络接入装置应用于L2TP组网中的LAC,包括:
L2TP子隧道处理单元,用于根据到L2TP主隧道的目的IP地址的路由数量,与LNS建立隶属于所述L2TP主隧道的L2TP子隧道;
分配单元,用于为所述L2TP子隧道处理单元建立的各个L2TP子隧道分配隧道源IP地址和目的IP地址,其中,不同的L2TP子隧道分配不同的隧道源IP地址;
L2TP会话Session处理单元,用于在终端的触发下与LNS之间建立L2TPSession时,依次将自身LAC与LNS之间的L2TP Session分别复用在已建立的L2TP子隧道,并记录每一L2TP Session与其复用的L2TP子隧道之间的对应关系;
报文转发单元,用于接收到任一L2TP Session中的数据报文时,从所述L2TP会话处理单元记录的对应关系中确定该L2TP Session对应的L2TP子隧道,对该数据报文封装公网IP头并进行转发,封装的公网IP头包含该L2TP Session对应的L2TP子隧道的隧道源IP地址和目的IP地址。
由以上技术方案可以看出,本发明中,LAC根据到L2TP主隧道的目的IP地址的路由数量,与LNS建立隶属于所述L2TP主隧道的L2TP子隧道,为各个L2TP子隧道分配隧道源IP地址和目的IP地址,其中,不同的L2TP子隧道分配不同的隧道源IP地址,并依次将本LAC与LNS之间的L2TPSession复用在已建立的L2TP子隧道,如此,LAC接收到任一L2TP Session中的数据报文时,确定该L2TP Session所复用的L2TP子隧道,对该数据报文封装包含该L2TP Session所复用的L2TP子隧道的隧道源IP地址和目的IP地址的公网IP头并进行转发,由于不同L2TP子隧道的隧道源IP地址不同,因此,可以得到不同L2TP Session的数据报文封装不同的公网IP头,这应用在现有的链路负载分担机制中,按照HASH算法对数据报文的公网IP头进行HASH运算来选择链路时,会将不同L2TP Session的数据报文分担至不同链路上进行传输,从而有效避免了部分链路负载过重引起的拥塞,合理利用了链路带宽,有效提高了链路利用率。
附图说明
图1为现有L2TP VPN组网示意图;
图2为现有L2TP Session建立示意图;
图3为本发明实施例提供的方法流程图;
图4为本发明实施例提供的L2TP报文头的格式;
图5为本发明实施例提供的LAC通过链表形式记录L2TP Session与其复用的L2TP子隧道之间的对应关系示意图;
图6为本发明实施例提供的网络接入装置结构图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。
本发明实施例提供的方法包括了图3所示的流程:
参见图3,图3为本发明实施例提供的方法流程图。如图3所示,该流程可包括以下步骤:
步骤301,LAC和LNS之间建立L2TP隧道。
本发明中,LAC和LNS之间可通过LAC-Auto-Initiated的模式建立L2TP隧道。
步骤302,LAC在本地路由表中查找到达L2TP隧道的目的IP地址的路由。
本发明中,LAC学习路由的方式与现有技术中的路由学习方式类似,这里不再赘述。
本步骤302中,L2TP隧道的目的IP地址具体为LAC所连接的LNS的IP地址。
另外,优选地,以下为便于和后续的L2TP子隧道区分,可将本步骤302中的L2TP隧道称为L2TP主隧道。
步骤303,LAC利用查找到的路由的数量,与LNS建立隶属于所述L2TP主隧道的L2TP子隧道。
本步骤303中,LAC与LNS建立L2TP子隧道的方式可与现有按照LAC-Auto-Initiated模式建立L2TP隧道的方式类似,只不过需要说明的是,在LAC与LNS建立L2TP子隧道的过程中,LAC向LNS发送的L2TP报文的报文头(简称L2TP报文头)携带了该建立的L2TP子隧道的标识(ID)和所述L2TP主隧道的标识,用于告知LNS当前建立的L2TP子隧道为哪一个子隧道,以及当前建立的L2TP子隧道隶属的L2TP主隧道,以便LNS后续根据该告知的结果进行L2TP报文的过滤。
参见图4,图4示出了上述L2TP报文头的格式。图4示出的L2TP报文头格式相比于现有L2TP报文头格式,只有隧道标识字段发生了改变,而其他字段没有发生改变,因此,这里重点描述隧道标识字段。在图4中,隧道标识字段的前12位(bit)用于填写L2TP主隧道标识,剩余的4bit用于填写L2TP子隧道标识。
这里,基于隧道标识字段中仅利用4bit填写L2TP子隧道的标识,则可以限定上述建立的L2TP子隧道的最大数目不能超过15。需要说明的是,上述图4中隧道标识字段利用4bit填写L2TP子隧道只是一种举例,并非限定本发明,其可根据实际需求进行扩展,但是,不管是否需要扩展该填写L2TP子隧道的字段,由于字段的限制,会使得LAC与LNS之间建立的隶属于所述L2TP主隧道的L2TP子隧道都存在一个最大数目P。
基于此,上述LAC利用查找到的路由的数量,与LNS建立隶属于所述L2TP主隧道的L2TP子隧道包括:
LAC在查找到的路由为两条以上等价路由时,比较该等价路由的数目N与允许本LAC与LNS之间建立的隶属于所述L2TP主隧道的L2TP子隧道的最大数目P,如果前者小于等于后者,则与LNS建立N条隶属于所述L2TP主隧道的L2TP子隧道,如果前者大于后者,则仅与LNS建立P条隶属于所述L2TP主隧道的L2TP子隧道;比如,假如P取值为15,则本发明中,在查找到的等价路由数目N小于等于15时,LAC与LNS之间建立的N条L2TP子隧道,而在查找到的等价路由数目N大于15时,LAC与LNS之间最多仅建立15条L2TP子隧道;
LAC在查找到的路由为一条路由时,与LNS建立预设值M条L2TP子隧道。优选地,本发明中,M大于等于2,但小于LAC与LNS之间建立的隶属于所述L2TP主隧道的L2TP子隧道的最大数目P比如15。作为本发明实施例的一个扩展,如果LAC查找到的路由仅为一条路由,则可结束本发明流程。
步骤304,LAC为建立的各个L2TP子隧道分配隧道源IP地址和目的IP地址。
本发明中,不同的L2TP子隧道分配不同的隧道源IP地址,但,隧道目的IP地址可以相同,也可以不同,下面通过以下两种方式对隧道目的IP地址相同和不同两种情况下如何实现步骤304进行具体描述:
第一种方式:
本方式要求每一L2TP子隧道的目的IP地址与所述L2TP主隧道的目的IP地址相同,基于此,LAC可直接将L2TP主隧道的目的IP地址分配给每一L2TP子隧道,作为每一L2TP子隧道的目的IP地址;至于L2TP子隧道的隧道源IP地址,本方式下,所述LAC可根据所述L2TP主隧道的源IP地址为每一L2TP子隧道分配源IP地址,具体为:假设L2TP主隧道源IP地址为:*.*.*.a,则L2TP子隧道的源IP地址通过以下算法得到:
L2TP子隧道的源IP地址=*.*.*.|a-128|+X;
其中,X为可变地址,其用于保证在情况1下不同L2TP子隧道的源IP地址不同,比如,在计算第一个L2TP子隧道的源IP地址时,X取值为0.0.0.1;而在计算第二个L2TP子隧道的源IP地址时,X取值与之前的任一取值均不同,比如为0.0.1.0,依次类推,直至得到所有L2TP子隧道的源IP地址。
至此,完成了第一种方式下LAC为建立的各个L2TP子隧道分配不同的隧道源IP地址和目的IP地址的操作。
第二种方式:
本方式下,要求每一L2TP子隧道的目的IP地址均与所述的L2TP主隧道的目的IP地址不同,基于此,本方式下,针对每一L2TP子隧道,LAC通过本LAC与LNS之间已建立的任一L2TP Session动态从LNS上的IP地址池(IP pool)中获取两个空闲的IP地址,并分配给该L2TP子隧道,分别作为隧道源IP地址和目的IP地址。这里,空闲的IP地址为未被任一L2TP主隧道或子隧道占用的IP地址。
至此,完成了第二种方式下LAC为建立的各个L2TP子隧道分配隧道源IP地址和目的IP地址的操作。
需要说明的是,在上述两种方式下,为了保证LAC为每一L2TP子隧道分配的隧道源IP地址和目的IP地址的可用性,LAC可将为每一L2TP子隧道分配的隧道源IP地址和目的IP地址携带在免费地址解析协议(ARP)报文中发布,以验证为每一L2TP子隧道分配的隧道源IP地址和目的IP地址的可用性,具体验证方式可与现有验证免费ARP的方式类似,不再赘述。
步骤305,在终端的触发下,LAC与LNS之间建立L2TP Session时,LAC依次将本LAC与LNS之间的L2TPSession分别复用在已建立的L2TP子隧道,并记录每一L2TP Session与其复用的L2TP子隧道之间的对应关系。
本发明中,终端的触发可为PPP连接请求。
另外,本步骤305中,LAC依次将本LAC与LNS之间的L2TPSession分别复用在已建立的L2TP子隧道具体可为:
步骤1,为已建立的L2TP子隧道分配序号,比如,已建立的L2TP子隧道的数目为N,为该N条L2TP子隧道分配的序号依次为0至N-1;
步骤2,LAC针对本LAC与LNS之间待建立的每一L2TP Session,将本LAC与LNS之间已建立的L2TP Session的数目与1相加得到一运算结果,将该待建立的L2TP Session复用在序号与所述运算结果与N相除得到的余数对应的L2TP子隧道。
具体地,步骤2可通过以下算法实现:
Sub Tunnel ID=sum{L2TP Session}%sum{subTunnel};
其中,Sub Tunnel ID表示当前待建立的L2TP Session所复用的L2TP子隧道的序号;sum{L2TP Session}表示LAC与LNS之间已建立的L2TP Session的数目与1相加得到的运算结果,sum{subTunnel}表示LAC与LNS之间已建立的L2TP子隧道的数目比如为N。
比如,LAC针对与LNS之间待建立的第一个L2TP Session,sum{L2TPSession}=1,基于此,按照上述算法则可以得到,Sub Tunnel ID=1,这表示LAC会将该待建立的第一个L2TP Session复用在第一个L2TP子隧道的L2TP子隧道上,依次类推,能够实现LAC与LNS之间的所有L2TP Session并非集中复用在同一L2TP隧道,而是分散在不同的L2TP隧道。
需要说明的是,上述依次将LAC与LNS之间建立的L2TP Session复用在已建立的L2TP子隧道的具体实现方式只是一种实施例,并非限定本发明,其也可以采用其他方式将LAC与LNS之间的L2TP Session复用在L2TP子隧道,比如,针对LAC与LNS之间待建立的每一L2TP Session,将该L2TPSession复用在以下任一L2TP子隧道上:与已建立的上一个L2TP Session所复用的L2TP子隧道不同的任一L2TP子隧道。
在LAC确定将本LAC与LNS之间待建立的L2TP Session比如L2TPSesion1复用在哪一L2TP子隧道后,LAC可告知给LNS,其中,该告知可由LAC在上述L2TP Session1的建立过程中通过用于建立L2TP Session1的L2TP报文(该L2TP报文采用图4所示的L2TP报文头格式)告知给LNS。
另外,本步骤305中,LAC可通过链表形式记录每一L2TP Session与其复用的L2TP子隧道之间的对应关系,具体如图5所示。在图5中,SessionID_Cx表示L2TP Session的会话标识,subTunnelID_1至subTunnelID_N表示L2TP子隧道。
至此,完成步骤305的描述。
步骤306,LAC接收到任一L2TP Session中的数据报文时,从记录的对应关系中确定该L2TP Session对应的L2TP子隧道,对该数据报文封装公网IP头并进行转发,所述公网IP头包含:该L2TP Session对应的L2TP子隧道的隧道源IP地址和目的IP地址。
本步骤306中,还进一步对数据报文封装UDP头,L2TP头等,只不过这些封装为现有技术,不再赘述。
优选地,本步骤306中,对报文进行转发具体实现时可为:利用封装的公网IP头并按照负载分担方式将封装后的数据报文分担至对应路由进行转发。其中,该利用封装的公网IP头并按照负载分担方式将封装后的数据报文分担至对应路由进行转发具体可为:对封装的公网IP头进行HASH运算,根据HASH算法从上述查找到的N条等价路由中选择与该运算结果对应的路由,利用被选的路由转发封装了所述公网IP头的报文。
由于不同L2TP子隧道的隧道源IP地址不同,因此,可以得到不同L2TPSession的数据报文封装不同的公网IP头,进而也可以得到不同公网IP头进行HASH运算时得到的运算结果也就不同,因此,根据HASH算法就能实现不同L2TP Session中的数据报文会被负载分担到不同的路由上进行转发,从而有效避免了部分链路负载过重引起的拥塞,合理利用了链路带宽。
至此,完成图3所示流程。
从图3所示的流程可以看出,本发明能够在多L2TP Session的情况下,能够使得不同L2TP Session中的数据报文会被负载分担到不同的路由上进行转发,从而有效避免了部分链路负载过重引起的拥塞,合理利用了链路带宽,有效提高了链路利用率。
需要说明的是,本发明中,LAC到L2TP主隧道目的IP地址的等价路由数目可根据组网需求发生变化,其中,当等价路由数目减少时,可不执行任何操作,而当等价路由数目增加时,还需要在LAC与LNS之间增加L2TP子隧道,只是在增加L2TP子隧道时,需要保证LAC与LNS之间的L2TP子隧道不要超过最大数目P比如15,而如果LAC与LNS之间的L2TP子隧道已达到最大数目P比如15,则即使等价路由数目如何增加,LAC与LNS之间也不再建立新的L2TP子隧道。
还有,本发明中,如果LAC与LNS之间的L2TP主隧道断掉(down),则LAC或者LNS可在检测出L2TP主隧道down时,向对端发出拆除通知(StopCCN),该拆除通知可为采用了图4所示L2TP报文头格式的L2TP报文,但是,此时的L2TP报文头格式中隧道标识字段中用于填写L2TP子隧道标识的字段须全为0,以表示此时需要清除隶属于该down的L2TP主隧道的所有L2TP子隧道。
以上对本发明提供的方法进行了分析,下面对本发明提供的网络接入装置进行描述:
参见图6,图6为本发明实施例提供的网络接入装置结构图。本发明中,所述网络接入装置应用于L2TP中的LAC,如图6所示,所述网络接入装置包括:
L2TP子隧道处理单元,用于根据到L2TP主隧道的目的IP地址的路由数量,与LNS建立隶属于所述L2TP主隧道的L2TP子隧道;
分配单元,用于为所述L2TP子隧道处理单元建立的各个L2TP子隧道分配隧道源IP地址和目的IP地址,其中,不同的L2TP子隧道分配不同的隧道源IP地址;
L2TP会话处理单元,用于在终端的触发下与LNS之间建立L2TP会话Session时,依次将自身LAC与LNS之间的L2TP Session分别复用在已建立的L2TP子隧道,并记录每一L2TP Session与其复用的L2TP子隧道之间的对应关系;
报文转发单元,用于接收到任一L2TP Session中的数据报文时,从所述L2TP会话处理单元记录的对应关系中确定该L2TP Session对应的L2TP子隧道,对该数据报文封装公网IP头并进行转发,封装的公网IP头包含该L2TP Session对应的L2TP子隧道的隧道源IP地址和目的IP地址。
本发明中,所述L2TP子隧道处理单根据到L2TP主隧道的目的IP地址的路由数量,与LNS建立隶属于所述L2TP主隧道的L2TP子隧道包括:
在到L2TP主隧道的目的IP地址的路由为两条以上等价路由时,比较该等价路由的数目N与允许自身LAC与LNS之间建立的隶属于所述L2TP主隧道的L2TP子隧道的最大数目P,如果前者小于等于后者,则与LNS建立N条隶属于所述L2TP主隧道的L2TP子隧道,如果前者大于后者,则仅与LNS建立P条隶属于所述L2TP主隧道的L2TP子隧道;
在到L2TP主隧道的目的IP地址的路由为一条路由时,与LNS建立预设值M条L2TP子隧道,M大于等于2,且小于P。
本发明中,所述分配单元通过以下步骤为各个L2TP子隧道分配隧道源IP地址和目的IP地址:
如果每一L2TP子隧道的目的IP地址与所述L2TP主隧道的目的IP地址相同,则直接将L2TP主隧道的目的IP地址分配给每一L2TP子隧道,作为每一L2TP子隧道的目的IP地址,并按照以下算法得到每一L2TP子隧道的源IP地址:L2TP子隧道的源IP地址=*.*.*.|a-128|+X;其中,L2TP主隧道源IP地址为:*.*.*.a,X为可变地址,用于保证不同L2TP子隧道的源IP地址不同;
如果每一L2TP子隧道的目的IP地址均与所述的L2TP主隧道的目的IP地址不同,则针对每一L2TP子隧道,动态从LNS上的IP地址池中获取两个空闲的IP地址,并分配给该L2TP子隧道,分别作为隧道源IP地址和目的IP地址。
优选地,本发明中,所述L2TP子隧道处理单元进一步在到L2TP主隧道的目的IP地址的等价路由数目增加到大于已建立的隶属于所述L2TP主隧道的L2TP子隧道数目时,在不超过自身LAC与LNS之间允许建立的隶属于所述L2TP主隧道的L2TP子隧道最大数目P下,在自身LAC与LNS之间增加隶属于所述L2TP主隧道的L2TP子隧道。
本发明中,如图6所示,所述网络接入装置进一步包括:
控制单元,用于在检测出自身LAC与LNS之间的所述L2TP主隧道断掉时,向LNS发出拆除通知,以控制拆除隶属于所述L2TP主隧道的所有L2TP子隧道;或者,
接收LNS在检测出所述L2TP主隧道断掉时发出的拆除通知,并控制拆除隶属于所述L2TP主隧道的所有L2TP子隧道。
至此,完成图6所示的网络接入装置的结构描述。
由以上技术方案可以看出,本发明中,LAC根据到L2TP主隧道的目的IP地址的路由数量,与LNS建立隶属于所述L2TP主隧道的L2TP子隧道,为各个L2TP子隧道分配隧道源IP地址和目的IP地址,其中,不同的L2TP子隧道分配不同的隧道源IP地址,并依次将本LAC与LNS之间的L2TPSession复用在已建立的L2TP子隧道,如此,LAC接收到任一L2TP Session中的数据报文时,确定该L2TP Session所复用的L2TP子隧道,对该数据报文封装包含该L2TP Session所复用的L2TP子隧道的隧道源IP地址和目的IP地址的公网IP头并进行转发,由于不同L2TP子隧道的隧道源IP地址不同,因此,可以得到不同L2TP Session的数据报文封装不同的公网IP头,这应用在现有的链路负载分担机制中,按照HASH算法对数据报文的公网IP头进行HASH运算来选择链路时,会将不同L2TP Session的数据报文分担至不同链路上进行传输,从而有效避免了部分链路负载过重引起的拥塞,合理利用了链路带宽,有效提高了链路利用率。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

Claims (10)

1.一种应用于二层隧道协议L2TP组网中的数据报文负载分担方法,所述L2TP组网包括终端、访问集中器LAC和二层隧道网络服务器LNS;其特征在于,该方法包括:
LAC根据到L2TP主隧道的目的IP地址的路由数量,与LNS建立隶属于所述L2TP主隧道的L2TP子隧道;
LAC为各个L2TP子隧道分配隧道源IP地址和隧道目的IP地址,其中,不同的L2TP子隧道分配不同的隧道源IP地址;
在终端的触发下,LAC与LNS之间建立L2TP会话Session时,LAC依次将本LAC与LNS之间的L2TP Session分别复用在建立的L2TP子隧道,并记录每一L2TP Session与其复用的L2TP子隧道之间的对应关系;
LAC接收到任一L2TP Session中的数据报文时,从记录的对应关系中确定该L2TP Session对应的L2TP子隧道,对该数据报文封装公网IP头并进行转发,封装的公网IP头包含该L2TP Session对应的L2TP子隧道的隧道源IP地址和目的IP地址。
2.根据权利要求1所述的方法,其特征在于,所述LAC根据到L2TP主隧道的目的IP地址的路由数量,与LNS建立隶属于所述L2TP主隧道的L2TP子隧道包括:
LAC在到L2TP主隧道的目的IP地址的路由为两条以上等价路由时,比较该等价路由的数目N与允许本LAC与LNS之间建立的隶属于所述L2TP主隧道的L2TP子隧道的最大数目P,如果前者小于等于后者,则与LNS建立N条隶属于所述L2TP主隧道的L2TP子隧道,如果前者大于后者,则仅与LNS建立P条隶属于所述L2TP主隧道的L2TP子隧道;
LAC在到L2TP主隧道的目的IP地址的路由为一条路由时,与LNS建立预设值M条L2TP子隧道,M大于等于2,且小于P。
3.根据权利要求1所述的方法,其特征在于,LAC为各个L2TP子隧道分配隧道源IP地址和目的IP地址包括:
如果各个L2TP子隧道的目的IP地址与所述L2TP主隧道的目的IP地址相同,则LAC直接将L2TP主隧道的目的IP地址分配给每一L2TP子隧道,作为每一L2TP子隧道的目的IP地址,并按照以下算法得到每一L2TP子隧道的源IP地址:L2TP子隧道的源IP地址=*.*.*.|a-128|+X;其中,L2TP主隧道源IP地址为:*.*.*.a,X为可变地址,用于保证不同L2TP子隧道的源IP地址不同;
如果各个L2TP子隧道的目的IP地址均与所述的L2TP主隧道的目的IP地址不同,则针对每一L2TP子隧道,LAC动态从LNS上的IP地址池中获取两个空闲的IP地址,并分配给该L2TP子隧道,分别作为隧道源IP地址和目的IP地址。
4.根据权利要求1至3任一所述的方法,其特征在于,该方法进一步包括:
LAC在到L2TP主隧道的目的IP地址的等价路由数目增加到大于已建立的隶属于所述L2TP主隧道的L2TP子隧道数目时,在不超过本LAC与LNS之间允许建立的隶属于所述L2TP主隧道的L2TP子隧道最大数目P下,在本LAC与LNS之间增加隶属于所述L2TP主隧道的L2TP子隧道。
5.根据权利要求1至3任一所述的方法,其特征在于,该方法进一步包括:
LAC或者LNS在检测出所述L2TP主隧道断掉时,向对端发出拆除通知,以拆除隶属于所述L2TP主隧道的所有L2TP子隧道。
6.一种网络接入装置,所述网络接入装置应用于二层隧道协议L2TP组网中的访问集中器LAC,其特征在于,所述网络接入装置包括:
L2TP子隧道处理单元,用于根据到L2TP主隧道的目的IP地址的路由数量,与LNS建立隶属于所述L2TP主隧道的L2TP子隧道;
分配单元,用于为所述L2TP子隧道处理单元建立的各个L2TP子隧道分配隧道源IP地址和目的IP地址,其中,不同的L2TP子隧道分配不同的隧道源IP地址;
L2TP会话Session处理单元,用于在终端的触发下与LNS之间建立L2TPSession时,依次将自身LAC与LNS之间的L2TP Session分别复用在已建立的L2TP子隧道,并记录每一L2TP Session与其复用的L2TP子隧道之间的对应关系;
报文转发单元,用于接收到任一L2TP Session中的数据报文时,从所述L2TP会话处理单元记录的对应关系中确定该L2TP Session对应的L2TP子隧道,对该数据报文封装公网IP头并进行转发,封装的公网IP头包含该L2TP Session对应的L2TP子隧道的隧道源IP地址和目的IP地址。
7.根据权利要求6所述的网络接入装置,其特征在于,所述L2TP子隧道处理单根据到L2TP主隧道的目的IP地址的路由数量,与LNS建立隶属于所述L2TP主隧道的L2TP子隧道包括:
在到L2TP主隧道的目的IP地址的路由为两条以上等价路由时,比较该等价路由的数目N与允许自身LAC与LNS之间建立的隶属于所述L2TP主隧道的L2TP子隧道的最大数目P,如果前者小于等于后者,则与LNS建立N条隶属于所述L2TP主隧道的L2TP子隧道,如果前者大于后者,则仅与LNS建立P条隶属于所述L2TP主隧道的L2TP子隧道;
在到L2TP主隧道的目的IP地址的路由为一条路由时,与LNS建立预设值M条L2TP子隧道,M大于等于2,且小于P。
8.根据权利要求6所述的网络接入装置,其特征在于,所述分配单元通过以下步骤为各个L2TP子隧道分配隧道源IP地址和目的IP地址:
如果每一L2TP子隧道的目的IP地址与所述L2TP主隧道的目的IP地址相同,则直接将L2TP主隧道的目的IP地址分配给每一L2TP子隧道,作为每一L2TP子隧道的目的IP地址,并按照以下算法得到每一L2TP子隧道的源IP地址:L2TP子隧道的源IP地址=*.*.*.|a-128|+X;其中,L2TP主隧道源IP地址为:*.*.*.a,X为可变地址,用于保证不同L2TP子隧道的源IP地址不同;
如果每一L2TP子隧道的目的IP地址均与所述的L2TP主隧道的目的IP地址不同,则针对每一L2TP子隧道,动态从LNS上的IP地址池中获取两个空闲的IP地址,并分配给该L2TP子隧道,分别作为隧道源IP地址和目的IP地址。
9.根据权利要求6至8任一所述的网络接入装置,其特征在于,所述L2TP子隧道处理单元进一步在到L2TP主隧道的目的IP地址的等价路由数目增加到大于已建立的隶属于所述L2TP主隧道的L2TP子隧道数目时,在不超过自身LAC与LNS之间允许建立的隶属于所述L2TP主隧道的L2TP子隧道最大数目P下,在自身LAC与LNS之间增加隶属于所述L2TP主隧道的L2TP子隧道。
10.根据权利要求6至8任一所述的网络接入装置,其特征在于,所述网络接入装置进一步包括:
控制单元,用于在检测出自身LAC与LNS之间的所述L2TP主隧道断掉时,向LNS发出拆除通知,以控制拆除隶属于所述L2TP主隧道的所有L2TP子隧道;或者,
接收LNS在检测出所述L2TP主隧道断掉时发出的拆除通知,并控制拆除隶属于所述L2TP主隧道的所有L2TP子隧道。
CN201210255519.5A 2012-07-23 2012-07-23 应用于l2tp组网中的数据报文负载分担方法和装置 Active CN102752221B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210255519.5A CN102752221B (zh) 2012-07-23 2012-07-23 应用于l2tp组网中的数据报文负载分担方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210255519.5A CN102752221B (zh) 2012-07-23 2012-07-23 应用于l2tp组网中的数据报文负载分担方法和装置

Publications (2)

Publication Number Publication Date
CN102752221A true CN102752221A (zh) 2012-10-24
CN102752221B CN102752221B (zh) 2014-12-10

Family

ID=47032125

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210255519.5A Active CN102752221B (zh) 2012-07-23 2012-07-23 应用于l2tp组网中的数据报文负载分担方法和装置

Country Status (1)

Country Link
CN (1) CN102752221B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104158756A (zh) * 2014-08-12 2014-11-19 浙江宇视科技有限公司 一种集群系统对报文进行负载分担的方法和系统
CN104579995A (zh) * 2013-10-12 2015-04-29 郑州冰川网络技术有限公司 一种多链路保持会话的方法
CN106130926A (zh) * 2016-08-30 2016-11-16 杭州迪普科技有限公司 一种报文的处理方法及装置
CN108111385A (zh) * 2017-12-28 2018-06-01 新华三技术有限公司 报文转发方法和装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1630251A (zh) * 2003-12-16 2005-06-22 华为技术有限公司 在通信网络中实现隧道负载均衡的方法
CN1825831A (zh) * 2005-02-22 2006-08-30 日立通讯技术株式会社 数据包中继装置和通信频带控制方法
CN101056257A (zh) * 2006-04-14 2007-10-17 中兴通讯股份有限公司 实现链路聚合和保护倒换的方法及系统
US7489700B2 (en) * 2002-11-20 2009-02-10 Hitachi Communication Technologies, Ltd. Virtual access router
CN101426004A (zh) * 2007-10-29 2009-05-06 华为技术有限公司 三层会话的接入方法、系统及设备

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7489700B2 (en) * 2002-11-20 2009-02-10 Hitachi Communication Technologies, Ltd. Virtual access router
CN1630251A (zh) * 2003-12-16 2005-06-22 华为技术有限公司 在通信网络中实现隧道负载均衡的方法
CN1825831A (zh) * 2005-02-22 2006-08-30 日立通讯技术株式会社 数据包中继装置和通信频带控制方法
CN101056257A (zh) * 2006-04-14 2007-10-17 中兴通讯股份有限公司 实现链路聚合和保护倒换的方法及系统
CN101426004A (zh) * 2007-10-29 2009-05-06 华为技术有限公司 三层会话的接入方法、系统及设备

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104579995A (zh) * 2013-10-12 2015-04-29 郑州冰川网络技术有限公司 一种多链路保持会话的方法
CN104158756A (zh) * 2014-08-12 2014-11-19 浙江宇视科技有限公司 一种集群系统对报文进行负载分担的方法和系统
CN104158756B (zh) * 2014-08-12 2017-08-15 浙江宇视科技有限公司 一种集群系统对报文进行负载分担的方法和系统
CN106130926A (zh) * 2016-08-30 2016-11-16 杭州迪普科技有限公司 一种报文的处理方法及装置
CN106130926B (zh) * 2016-08-30 2019-07-05 杭州迪普科技股份有限公司 一种报文的处理方法及装置
CN108111385A (zh) * 2017-12-28 2018-06-01 新华三技术有限公司 报文转发方法和装置
CN108111385B (zh) * 2017-12-28 2021-04-27 新华三技术有限公司 报文转发方法和装置

Also Published As

Publication number Publication date
CN102752221B (zh) 2014-12-10

Similar Documents

Publication Publication Date Title
CN107770026B (zh) 租户网络数据传输方法、租户网络系统和相关设备
US20130173788A1 (en) Network access apparatus
CN110290093A (zh) Sd-wan网络架构及组网方法、报文转发方法
KR101694223B1 (ko) 패킷을 전송하는 방법, 라우팅 브리지, 및 시스템
CN1863121A (zh) 二层隧道协议网络服务器及其隧道建立方法
CN108063716B (zh) 用于以太虚拟专用网的方法和设备
CN103856398A (zh) 物理链路的虚拟干线化
CN105917620A (zh) 网络中的l4至l7流量的多路径配设
CN100514929C (zh) 一种虚拟专用局域网的报文转发方法及装置
CN101001264B (zh) L1vpn地址分配的方法、装置、网络边沿设备和编址服务器
CN102752221B (zh) 应用于l2tp组网中的数据报文负载分担方法和装置
CN103139075B (zh) 一种报文传输方法和设备
CN112822037B (zh) 一种安全资源池的流量编排方法及系统
CN101355505A (zh) 一种报文的转发方法、装置和系统
CN108512755B (zh) 一种路由信息的学习方法及装置
CN101499951B (zh) 隧道配置方法、虚拟接入节点、虚拟边缘节点以及系统
CN103905284A (zh) 一种基于evi网络的流量负载分担方法和设备
EP2868070A1 (en) Method and a network node, for use in a data center, for routing an ipv4 packet over an ipv6 network
CN104580029A (zh) 地址分配方法及装置
CN104158756B (zh) 一种集群系统对报文进行负载分担的方法和系统
CN103095508A (zh) 业务访问方法和边缘设备
CN103368806A (zh) 数据流的处理方法和系统以及设备
CN105493454B (zh) 用于实现双活接入trill园区边缘的方法和设备
CN102437957B (zh) 一种多协议标签交换的相交环处理方法及装置
CN1874302A (zh) 一种建立端到端伪线仿真的多跳伪线的方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CP03 Change of name, title or address

Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No.

Patentee after: NEW H3C TECHNOLOGIES Co.,Ltd.

Address before: 310053 Hangzhou hi tech Industrial Development Zone, Zhejiang province science and Technology Industrial Park, No. 310 and No. six road, HUAWEI, Hangzhou production base

Patentee before: HANGZHOU H3C TECHNOLOGIES Co.,Ltd.

CP03 Change of name, title or address
TR01 Transfer of patent right

Effective date of registration: 20230615

Address after: 310052 11th Floor, 466 Changhe Road, Binjiang District, Hangzhou City, Zhejiang Province

Patentee after: H3C INFORMATION TECHNOLOGY Co.,Ltd.

Address before: 310052 Changhe Road, Binjiang District, Hangzhou, Zhejiang Province, No. 466

Patentee before: NEW H3C TECHNOLOGIES Co.,Ltd.

TR01 Transfer of patent right