一种实现二层隧道协议隧道转换的方法

文档序号:7696762阅读:220来源:国知局
专利名称:一种实现二层隧道协议隧道转换的方法
技术领域
本发明涉及网络通信报文转发技术,更具体的说,是一种实现二层隧道协 议隧道转换(LTS, L2TP Tunnel Switching )的方法。
背景技术
随着网络的高速发展,各种网络业务也不断涌现,其中,虚拟私人网(VPN) 技术逐渐成为各个企业关注的焦点。
二层隧道协议(L2TP, Layer 2 Tunneling Protocol)是VPN业务的一种实 现方式,L2TP主要由隧道发起端(LAC)和隧道终结端(LNS)两部分实现, 根据协议可在LAC和LNS间建立二层隧道,通过用户数据报协议(UDP, User Datagram Protocol)方式在隧道封装并转发点到点协议(PPP, Point-to-Point Protocol)报文,PPP报文到LNS后解封装并终结PPP。
而随着L2TP业务的不断增长,业务的要求也越来越复杂,需要实现L2TP 隧道的延长或者中继,甚至汇聚,即LTS。隧道转换集群(TSA, Tunnel Switching Aggregator)是实现LTS的设备,其上同时具有LNS和LAC的功能,既可以 接受L2TP隧道的接入请求,又能发起对应该L2TP隧道的连接请求,从而实现 隧道中继、延长或者汇聚。
目前静态LTS的实现方法,在转发过程中,需查询两张表才能获取包括远 端LNS的隧道标识(Tunnel ID )、会话标识(Session ID )、 IP地址或LAC的 Tu皿el ID、 Session ID、 IP地址的转发信息,转发报文,具体为通过查询一 张表确定需要运行LTS服务后,解析L2TP报文的PPP字段,并根据解析所得 的信息,查询另一张L2TP转发表,获取转发信息,这样,两次查询转发表, 以及解析L2TP报文的PPP字段,占用较多TSA资源,影响了设备性能,进而减緩了报文转发的速率。
且目前静态LTS的实现方法,在TSA上对应于每一个用户运行两个PPP 状态机,这些PPP状态机占用大量系统资源,也影响了报文转发的速率。

发明内容
有鉴于此,本发明的主要目的在于提供一种实现二层隧道协议隧道转换的 方法,减少静态隧道转换所占用TSA的资源,进而提高报文转发速率。 为达到上述目的,本发明的技术方案是这样实现的
一种实现二层隧道协议隧道转换的方法,建立隧道发起端LAC-隧道转换集 群TSA隧道及会话,建立TSA-隧道终结端LNS隧道及会话,生成 LAC-TSA-LNS方向的转发表和LNS-TSA-LAC方向的转发表;该方法包括以 下步骤
TSA接收到LAC发向本地的二层隧道协议L2TP报文,分析该L2TP报文 的L2TP字段,得到报文的隧道信息,
根据所得到的隧道信息查找LAC-TSA-LNS方向的转发表,记录所找出的 转发表中的转发信息,该转发表中的转发信息包括远端LNS的IP地址,
剥离所接收到的L2TP报文的L2TP报头,利用所记录的转发信息,构建新 的L2TP字段、用户数据报协议UDP字段和IP字段并封装报文,根据所述远 端LNS的IP地址查找TSA-LNS隧道,转发所述纟艮文至所述远端LNS;或者,
TSA接收到远端LNS发向本地的L2TP报文,分析该L2TP报文的L2TP 字段,得到报文的隧道信息,
根据所得到的隧道信息查找LNS-TSA-LAC方向的转发表,记录所查找到 的转发表中的转发信息,该转发表中的转发信息包括LAC的IP地址,
剥离所接收到的L2TP报文的L2TP报头,利用所记录的转发信息,构建新 的L2TP字段、UDP字段和IP字段并封装报文,根据所述LAC的IP地址查找 LAC-TSA隧道,转发所述^^艮文至所述LAC。
进一步地,所述根据所得到的隧道信息查找LAC-TSA-LNS方向的转发表后进一步包括根据所查找到的转发表的校验位,确定该转发表有效。
进一步地,所述冲艮据所得到的隧道信息查找LNS-TSA-LAC方向的转发表
后进一步包括根据所查找到的转发表的校验位,确定该转发表有效。
进一步地,所述4艮据所得到的隧道信息查找LAC-TSA-LNS方向的转发表
具体包括找出索引与所得到的报文的隧道信息相同的LAC-TSA-LNS方向的
转发表。
进一 步地,冲艮据所得到的隧道信息查找LNS-TS A-LAC方向的转发表具体 包括找出索引与所得到的报文的隧道信息相同的LAC-TSA-LNS方向的转发表。
进一步地,所述建立LAC-TSA隧道及会话,建立TSA-LNS隧道及会话具 体包括步骤
LAC向TSA发起隧道建立请求;TSA接受请求并与LAC建立LAC-TSA 隧道及会话;
TSA向远端LNS发起隧道建立请求;远端LNS接受请求并与TSA建立 TSA-LNS隧道和会i舌。
进一步地,该方法进一步包括所述TSA上分别对应于所述LAC和远端 LNS的点到点协议PPP状态机处于关闭状态。
本发明所4是供的一种实现二层隧道协议隧道转换的方法,具有以下的优点 和特点
1、 在转发LAC或远端LNS发向TSA的L2TP报文时,均只查找一次转发 表即可取得转发信息,减少了静态LTS过程中,查找转发表所占用TSA的资源, 进而提高了报文转发速率。
2、 所述TSA上对应于所述LAC和远端LNS的PPP状态机在静态LTS过 程中处于关闭状态,节省了大量系统资源,加快了报文转发的速率。


图1为本发明实现二层隧道协议隧道转换的方法的实现流程图。
具体实施例方式
本发明实现二层隧道协议隧道转换的方法的实现流程如图l所示,包括以
下步骤
步骤101:建立LAC-TSA隧道及会话,建立TSA-LNS隧道及会话,下发 一张LAC-TSA-LNS方向的转发表和一张LNS-TSA-LAC方向的转发表;所述 转发表在LAC- TSA隧道及会话、TSA- LNS隧道及会话均建立后下发,包括转 发信息;
具体包括以下步骤
LAC向TSA发起隧道建立请求;TSA接受请求并与LAC建立LAC-TSA 隧道及会话,所述TSA通过TSA-LNS才莫块接受i青求并与LAC建立LAC-TSA 隧道及会话,
TSA向远端LNS发起隧道建立请求;远端LNS接受请求并与TSA建立 TSA-LNS隧道和会话,所述TSA通过TSA-LAC模块向远端LNS发起隧道建 立请求,
生成LAC-TSA-LNS方向的转发表和LNS-TSA-LAC方向的转发表,所述 转发表中包括转发信息;
LAC-TSA-LNS方向的转发表中的转发信息包括LAC-TSA隧道及会话的 Tunnel ID、 Session ID, TSA-LNS隧道及会话的Tunnel ID、 Session ID,以及远 端LNS的IP地址;LNS-TSA-LAC方向的转发表中的转发信息包括TSA-LNS 隧道及会话的Tunnel ID、 Session ID, LAC-TSA隧道及会话的Tunnel ID、 Session ID,以及LAC的IP地址。
其中,所述LAC-TSA-LNS方向的转发表中的所述远端LNS的IP地址作 为目的地址,根据该远端LNS的IP地址将所述LAC发送至TSA的L2TP报文 通过TSA-LNS隧道转发至该远端LNS;所述LNS-TSA-LAC方向的转发表中 的所述LAC的IP地址作为目的地址,才艮据该LAC的IP地址将所述远端LNS 发送至TSA的L2TP才艮文通过LAC-TSA隧道转发至该LAC;ID、 Session ID为该转发表的索引;所述LNS-TSA-LAC方向的转发表中的 TSA-LNS隧道及会话的Tunnel ID、 Session ID为该转发表的索引。
步骤102a: TSA接收到LAC通过LAC-TSA隧道发向本地的L2TP报文。
步骤103a: TSA分析所接收到L2TP报文的L2TP字段,得到报文的隧道 4言息,即Tunnel ID和Session ID。
步骤104a: TSA找出索引与所得到的l艮文的Tunnel ID和Session ID相同 的LAC-TSA-LNS方向的转发表。
步骤105a: TSA根据所查找到的转发表的校验位,判断该转发表是否有效, 如果转发表的校验位标志转发表有效,执行步骤106al;如果转发表的校验位 标志转发表无效,则执行步骤106a2;所述转发表的校验位标志转发表有效/无 效,LAC-TSA隧道及会话和TSA-LNS隧道及会话均正常时,转发表有效,LAC 或远端LNS任一方断开与TSA的链接,则转发表无效。
步骤106al: TSA记录所查找到的转发表中的转发信息,该转发表中的转 发信息包括LAC-TSA隧道及会话的Tunnel ID、 Session ID, TSA-LNS隧道及 会话的Tunnel ID、 Session ID,以及远端LNS的IP地址。
步骤106a2: TSA丟弃所接收到的L2TP报文,结束本流程。
步骤107a: TSA剥离所接收到的L2TP报文的L2TP报头,利用所记录的 转发信息中的TSA-LNS隧道及会话的Tunnel ID、 Session ID构建新的L2TP字 段、UDP端口号构建新的UDP字段、远端LNS的IP构建新的IP字段并封装 L2TP报文;所述UDP端口号为UDP协议默认的端口号或设置的UDP端口号, 如果为协议默认的端口号,在转发表的转发信息中不包括UDP端口号空置,如 果为设置的UDP端口号,转发表的转发信息中包括所设置的UDP端口号。
步骤108a: TSA根据所述远端LNS的IP地址查找TSA-LNS隧道,并通 过所查找到的TSA-LNS隧道转发所封装的L2TP报文至该远端LNS,结束本流 程。
步骤102b: TSA接收到远端LNS通过TSA- LNS隧道发向本地的L2TP报文。
步骤103b: TSA分析所接收到的L2TP报文的L2TP字段,得到报文的隧 道信息,即Tunnel ID和Session ID。
步骤104b: TSA找出索引与所得到的报文的Tunnel ID和Session ID相同 的LNS-TSA-LAC方向的转发表。
步骤105b: TSA根据所查找到的转发表的校验位,判断该转发表是否有效, 如果转发表的校验位标志转发表有效,执行步骤106bl;如果转发表的校验位 标志转发表无效时,执行步骤106b2;所述转发表的校验位标志转发表有效/转 发表无效,LAC-TSA隧道及会话和TSA-LNS隧道及会话均正常时,转发表有 效,LAC或远端LNS任一方断开与TSA的链接,则转发表无效。
步骤106bl: TSA记录所查找到的转发表中的转发信息,该转发表中的转 发信息包括TSA-LNS隧道及会话的Tunnel ID、 Session ID, LAC-TSA隧道及 会话的Tunnel ID、 Session ID,以及LAC的IP地址。
步骤106b2: TSA丢弃所接收到的L2TP报文,结束本流程。
步骤107b: TSA剥离所接收到的L2TP报文的L2TP报头,利用所记录的 转发信息中的LAC-TSA隧道及会话的Tunnel ID、 Session ID构建新的L2TP字 段、UDP端口号构建新的UDP字段、LAC的IP构建新的IP字段并封装报文; 所述UDP端口号为UDP协议默认的端口号或设置的UDP端口号,如果为协议 默认的端口号,在转发表的转发信息中不包括UDP端口号空置,如果为设置的 UDP端口号,转发表的转发信息中包括所设置的UDP端口号。
步骤108b: TSA才艮据所述LAC的IP地址查找LAC-TSA隧道,并通过所 查找到的LAC-TSA隧道转发所封装的L2TP报文至该LAC,结束本流程。
在执行步骤101、步骤102a ~步骤108a和步骤102b ~步骤108b的过程中, 所述TSA上对应于所述LAC和远端LNS的PPP状态才几处于关闭状态,节省了 大量系统资源,加快了报文转发的速率。
接收并转发LAC发向本地的二层隧道协议L2TP报文时,执行步骤102a ~ 步骤108a;接收并转发远端LNS发发向本地的二层隧道协议L2TP报文时,执行步骤102b ~步骤108b;步骤102a ~步骤108a或步骤102b ~步骤108b均经 过一次查找转发表即取得了转发信息,减少了静态LTS过程中,查找转发表所 占用TSA的资源,进而提高了报文转发速率。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
权利要求
1、一种实现二层隧道协议隧道转换的方法,其特征在于,建立隧道发起端LAC-隧道转换集群TSA隧道及会话,建立TSA-隧道终结端LNS隧道及会话,生成LAC-TSA-LNS方向的转发表和LNS-TSA-LAC方向的转发表;该方法包括以下步骤TSA接收到LAC发向本地的二层隧道协议L2TP报文,分析该L2TP报文的L2TP字段,得到报文的隧道信息,根据所得到的隧道信息查找LAC-TSA-LNS方向的转发表,记录所找出的转发表中的转发信息,该转发表中的转发信息包括远端LNS的IP地址,剥离所接收到的L2TP报文的L2TP报头,利用所记录的转发信息,构建新的L2TP字段、用户数据报协议UDP字段和IP字段并封装报文,根据所述远端LNS的IP地址查找TSA-LNS隧道,转发所述报文至所述远端LNS;或者,TSA接收到远端LNS发向本地的L2TP报文,分析该L2TP报文的L2TP字段,得到报文的隧道信息,根据所得到的隧道信息查找LNS-TSA-LAC方向的转发表,记录所查找到的转发表中的转发信息,该转发表中的转发信息包括LAC的IP地址,剥离所接收到的L2TP报文的L2TP报头,利用所记录的转发信息,构建新的L2TP字段、UDP字段和IP字段并封装报文,根据所述LAC的IP地址查找LAC-TSA隧道,转发所述报文至所述LAC。
2、 根据权利要求1所述的实现二层隧道协议隧道转换的方法,其特征在于, 所述根据所得到的隧道信息查找LAC-TSA-LNS方向的转发表后进一步包括 根据所查找到的转发表的校验位,确定该转发表有效。
3、 根据权利要求1所述的实现二层隧道协议隧道转换的方法,其特征在于, 所述根据所得到的隧道信息查找LNS-TSA-LAC方向的转发表后进一步包括 根据所查找到的转发表的校验位,确定该转发表有效。
4、 根据权利要求l、 2或3所述的实现二层隧道协议隧道转换的方法,其特征在于,所述根据所得到的隧道信息查找LAC-TSA-LNS方向的转发表具体 包括找出索引与所得到的报文的隧道信息相同的LAC-TSA-LNS方向的转发 表。
5、 根据权利要求l、 2或3所述的实现二层隧道协议隧道转换的方法,其 特征在于,根据所得到的隧道信息查找LNS-TSA-LAC方向的转发表具体包括 找出索引与所得到的报文的隧道信息相同的LAC-TSA-LNS方向的转发表。
6、 根据权利要求l、 2或3所述实现二层隧道协议隧道转换的方法,其特 征在于,所述建立LAC-TSA隧道及会话,建立TSA-LNS隧道及会话具体包括 步骤LAC向TSA发起隧道建立请求;TSA接受请求并与LAC建立LAC-TSA 隧道及会话;TSA向远端LNS发起隧道建立请求;远端LNS接受请求并与TSA建立 TSA-LNS隧道和会话。
7、 根据权利要求l、 2或3所述实现二层隧道协议隧道转换的方法,其特 征在于,该方法进一步包括所述TSA上分别对应于所述LAC和远端LNS的 点到点协i义PPP状态机处于关闭状态。
全文摘要
本发明公开了一种实现二层隧道协议隧道转换的方法,该方法通过建立隧道发起端LAC-隧道转换集群TSA隧道及会话,建立TSA-隧道终结端LNS隧道及会话,下发包括转发信息的LAC-TSA-LNS方向的转发表和LNS-TSA-LAC方向的转发表,使在转发LAC或远端LNS发向TSA的L2TP报文时,均只查找一次转发表即可取得转发信息。采用本发明所述的方法,能够减少静态隧道转换所占用TSA的资源,进而提高报文转发速率。
文档编号H04L12/56GK101304387SQ20081012576
公开日2008年11月12日 申请日期2008年6月18日 优先权日2008年6月18日
发明者刘小威, 可 张 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1