首页> 中国专利> 使用会话边界控制器管理虚拟专用网络内以及之间的流量

使用会话边界控制器管理虚拟专用网络内以及之间的流量

摘要

描述了用于管理流量的方法和设备。来自虚拟专用网络(VPN)的源的流量被接收。该流量被引向指定用于接收来自该VPN的流量的虚拟接口。该虚拟接口被配置为将流量和唯一标识会话边界控制器(SBC)的VPN的标识符相关联。SBC可以利用标识符来判定该流量的源和目的地是否在同一VPN中。

著录项

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2011-08-31

    授权

    授权

  • 2009-05-27

    实质审查的生效

    实质审查的生效

  • 2009-04-01

    公开

    公开

说明书

相关申请

本申请与由M.Khouderchah等人于______提交的名称为“利用会话 边界控制器管理虚拟专用网络内以及之间的流量”、代理人编号为 No.CSCO-13125、序列号为________并且被转让给本申请的受让人的美国专 利申请有关,这里通过引用将其全部内容并入。

技术领域

本发明的实施例涉及通信网络,尤其涉及虚拟专用网络。

背景技术

虚拟专用网络(VPN)是专用通信网络的例子。VPN利用诸如因特网 之类的共享或公共网络基础设施来仿效专用的因特网协议(IP)网络。一 种类型的VPN通过配置网络设备(例如,交换机和路由器)在公共网络 上建立专用的加密“隧道”以保护VPN流量不被公共访问来实现。

VPN可以包含若干虚拟局域网(VLAN)。VLAN由计算机或类似设 备的网络组成,这些设备表现为好像它们被连接在同一本地线路上,但实 际上它们可能在不同的地方(例如,在不同建筑物里,或者甚至在不同城 市)。因此,虽然这些设备被远距离分开,但是这些设备却可以是同一 VPN的一部分。利用根据例如IEEE 802.1Q所指定的VLAN标签可以将诸 如计算机或基于IP的语音(VoIP)电话标识为特定VLAN的成员。

会话边界控制器(SBC)被用来在VoIP通信网络中提供服务和执行 策略。例如,SBC可以被用来使得可以进行去往或者来自VPN的VoIP呼 叫,从VPN到公共交换电话网络(PSTN)的VoIP呼叫,或者利用不同 VoIP协议的电话之间的VoIP呼叫。

SBC可以为多个VPN服务,为其中每一个实行不同的服务以及执行 不同的策略。此外,SBC所实行的服务和执行的策略可以依赖于流量是否 会保持在VPN内部。因此,识别呼叫方和被呼叫方是否是同一VPN的成 员并且如果是,是哪一个VPN的成员是很重要的。

现在,VLAN标签被用来关联流量和特定VPN。每一个SBC被配置 具有用于将VLAN标签映射到VPN用户标识符(ID)的映射表。映射表 是必要的,因为VLAN标签不是全球唯一的,因此多个SBC可能具有与 同一个VPN用户相关联的不同VLAN标签。利用映射表,SBC可以判定 呼叫方和被呼叫方是否属于同一VPN。

传统方法存在的问题在于:在VoIP网络的SBC的每一个上建立和更 新映射表需要付出努力。本发明针对这个问题提出了一种新颖的解决方 案。

附图说明

被并入并且形成本说明书的一部分的附图示出了本发明的实施例,并 且与描述一起用来解释本发明的原理。

图1是根据本发明的实施例可以在其中实施的网络的框图。图2A是 根据本发明的一个实施例的网络设备的框图。

图2B示出了通过图2A中的网络设备的流量流的示例。

图3A示出了通过图2A中的网络设备的流量流的另一示例。

图3B是示出根据本发明的一个实施例的在会话边界控制器之间发送 流量的流程的框图。

图4是根据本发明的实施例用于在会话边界控制器的接口处管理流量 的方法的流程图。

图5是根据本发明的实施例用于在网络中管理流量的方法的流程图。

具体实施方式

在下面对本发明的详细描述中,为了提供对本发明的透彻理解,阐明 了许多具体细节。但是,本领域的技术人员将会认识到可以不用上述特定 细节或者使用其等同细节来实现本发明。在其它实例中,在不会使本发明 的各方面模糊时,没有详细描述众所周知的方法、过程、元件和电路。

随后的详细描述的一些部分按照对可以在计算机存储器上执行的数据 位的操作的过程、步骤、逻辑块、处理和其它符号表示来提出。这些描述 和表示是数据处理领域的技术人员用来向该领域的其他技术人员最有效地 表达他们的工作的实质内容的手段。这里的过程、计算机执行步骤、逻辑 块、处理等一般被设计为能导致所需要结果的步骤或指令的自洽(self- consistent)序列。这些步骤是需要对物理量进行物理操作的步骤。通常, 虽然不一定,但这些量采用能够在计算机系统中被存储、转换、组合、比 较以及其它操作的电或磁信号的形式。主要为了公共使用的原因将这些信 号当作位、值、元素、符号、字符、术语、数字等等已被多次证明是很方 便的。

但是,应当知道,所有这些以及类似术语是与适当的物理量相关联 的,并且仅仅是应用于这些量的方便标签。除非特别声明,否则从下面的 描述中明显应当认识到整个本发明中的讨论所使用的诸如“接收”、“接 入”、“指引”、“关联”、“嵌入”、“转发”等术语涉及到计算机系 统或类似的电子计算设备的动作和处理,所述计算机系统或类似的电子计 算设备对计算机系统的寄存器和存储器中以物理(电子)量表示的数据进 行操作并转换为在计算机系统的存储器或寄存器或其它信息存储、传输或 显示设备中的同样以物理量表示的其它数据。

图1是示出了根据本发明的实施例可以在其中实施的网络的一些元件 的框图。图1中的示例示出了第一设备118和第二设备128,它们每一个 都链接到诸如因特网的共享或公共网络102。在一个实施例中,设备118 和128是允许用户拨打基于因特网协议的语音(VoIP)呼叫的设备。虽然 本发明是在VoIP设备之间的呼叫的上下文下进行讨论的,但本发明并不 限于此。通常来说,流量发生在设备118和128之间,并且该流量包含媒 体数据(例如,语音和/或视频数据),还可以包含信令信息。

设备118可以是一个VLAN的成员,而设备128可以是另一个VLAN 的成员。但是,本发明并不限于特定的网络结构,如VLAN,也不限于特 定的传输功能或标准。即,设备之间的连接可以使用例如异步传输模式 (ATM)、传输控制协议/因特网协议(TCP/IP)、同步光网络 (SONET)、帧中继(FR)协议或者任何其它信号或连接格式来完成。

在图1的示例中,第一供应商边缘(PE)路由器114和第一用户边缘 (CE)路由器116被链接到第一VoIP设备118,并且第二PE路由器124 和第二CE路由器126被链接到第二VoIP设备128。PE路由器通常是作为 一个网络服务供应商(如因特网服务供应商)和其它网络服务供应商之间 的接口的路由器。CE路由器通常是作为用户网络和服务供应商网络之间 的接口的路由器。PE路由器可能不知道它正处理的流量的类型。CE路由 器可以被用来向使用专用IP寻址的专用网络(如VPN)转发流量。

网络102可以包含任意数量的网络路由设备。可以在任何路由器上实 现一个或多个会话边界控制器(SBC)。或者,可以在耦合到路由器的单 独的设备上实现一个或多个SBC。在一个实施例中,SBC用硬件实现作为 例如线路卡。在另一实施例中,SBC用软件实现。也可以使用硬件与软件 的组合。下面将结合附图进一步描述SBC。

继续参考图1,来自设备中的一个设备(如设备118)的流量在路由 到另一设备(如设备128)时可能遇到一个或多个SBC。这里存在至少两 种特别感兴趣讨论的情形:1)设备118和128是同一VPN的成员的情 形;和2)设备118和128是不同VPN的成员的情形。在任一种情形中, SBC判定设备118和128是否是同一VPN的成员是很重要的。识别设备 118和128是哪一个VPN的成员也可能是很重要的。

例如,由SBC执行的服务或策略可能依赖于设备118和128是否是同 一VPN的成员。如果SBC判定设备118和128不是同一VPN的成员,则 SBC可能执行某些服务或策略。另一方面,如果SBC判定设备118和128 是同一VPN的成员,SBC可能执行一组不同的服务或策略。在一些实例 中,可能不需要由SBC执行的服务或策略,并且因此可以旁路SBC。旁 路SBC可以减少处理开销并缩短通信路径。

例如,考虑这样的SBC,该SBC提供协议转换服务以使得能够在使 用不同VoIP协议的两个网络或设备之间进行通话。如果呼叫方和被呼叫 方使用相同的VoIP协议,则不需要该SBC的协议转换服务。如果不需要 其它的由SBC执行的服务或策略,那么呼叫流量可以旁路该SBC。

在一个实施例中,呼叫流量包含信号流部分和媒体流部分两者。信号 流包括例如用于基于信令协议进行呼叫控制功能的信息,上述信令协议例 如但不限于会话发起协议(SIP)、国际电信联盟(ITU)标准H.323或 H.248或媒体网关控制协议(MGCP)。媒体流包括例如音频(语音)和/ 或视频数据,例如但不限于用于语音或视频编解码器的RTP(实时协议) 或RTCP(实时控制协议)流。信号和媒体流是相互独立的。一般地,信 号流在媒体流之前—信号流用于在呼叫方和被呼叫方之间建立连接,并且 一旦建立起连接,媒体流就可以开始。

因此,为了使上述讨论更加具体,SBC可以接收并作用于与特定呼叫 相关联的信号流,而与呼叫相关联的媒体流可以被引向(通过)该SBC或 者可以旁路该SBC。通常来说,即是呼叫的信号流将总是通过SBC,而呼 叫的媒体流可以旁路或不旁路该SBC。

再次考虑上述提供协议转换服务以使得能够在使用不同VoIP协议的 两个网络或设备之间进行通话的SBC的示例。如果呼叫方和被呼叫方使用 相同的VoIP协议,则不需要该SBC的协议转换服务。如果不需要其它的 由SBC执行的服务或策略,尽管与呼叫相关联的信号流将通过该SBC, 但与呼叫相关联的媒体流可以旁路该SBC。

一般地,实现媒体流旁路SBC被称为“VPN优化”或者“媒体优 化”,并且在这里通常被称为“优化”。更具体地,在一些实施例中,优 化意味着当流量保持在VPN内时,SBC不修改SIP、MGCP、H.323或 H.248信令的会话描述部分,以强制RTP或RTCP流量通过SBC。正如即 将看到的,也可以对VPN内的某些子网进行优化,而不优化其它子网。

图2A是示出了根据本发明的一个实施例的通过网络设备(如路由器 200)的流量的流的框图。在图2A的示例中,在路由器200上实现SBC 230。如上所述,替代地,可以在耦合到路由器200的另一设备上实现 SBC 230,并且SBC 230可以用硬件、软件或者硬件和软件的组合来实 现。

根据本发明的实施例,SBC 230被配置有若干“虚拟接口”(VI), 例如第一VI 232和第二VI 234。该VI 232和VI 234也被称为服务虚拟接 口。一般来说,虚拟接口是接收和评估流量的通信路径上的点。更一般 地,虚拟接口是具有下述功能(但不限于下述功能)的元件。

在配置虚拟接口时,VI 232与特定VPN(例如VPN1)相关联,而VI 234与另一VPN(例如VPN2)相关联。因此,所有带有指定到VI 232的 目的地前缀的来自VPN1的流量都被引向VI 232。其它带有不同目的地前 缀的VPN1流量按惯例被路由,不经过VI 232。类似地,所有带有指定到 VI 234的目的地前缀的来自VPN2的流量都被引向VI 234。

根据本发明的实施例,通过将唯一的VPN标识符(ID)与虚拟接口 相关联而使虚拟接口和VPN彼此相关联。在一个实施例中,唯一VPN标 识符是根据RFC2 685指定的全球唯一“VPN-ID”。在另一实施例中,唯 一VPN标识符是“VRF-名称”(路由器使用的VPN路由和转发名称)。 在另一实施例中,使用了VPN-ID和VRF-名称两者。

VPN-ID适合(唯一的)用于自治系统(AS)间的流量和AS内部的 流量,而VRF-名称适合(唯一的)用于AS内部的流量。一般地,自治系 统是可能处于一个实体(例如运营商或因特网服务供应商)控制下的IP网 络和路由器的集合,其代表针对因特网的公共路由策略。“AS内部”涉 及例如特定运营商或供应商网络内部的流量,而“AS之间”涉及例如跨 越运营商/供应商网络的流量。

值得注意的是,通过使用唯一VPN标识符(例如,VPN-ID和/或 VRF-名称)来标识VPN,以及通过配置虚拟接口使其自动地将其接收到 的流量与该唯一VPN标识符相关联,可以取消通常用来映射VLAN标签 到用户ID的映射表。另外,因为呼叫流量202可以分为信号流204和媒 体流206,所以VPN-ID可以被嵌入信号流204和/或被外部控制协议(例 如,基于ITU H.248的协议)使用,以从媒体和信令块两者中(例如,在 “软交换”中)取消映射表。

在一个实施例中,虚拟接口只从单个VPN(VPN到VI的一对一映 射)接收流量。在另一实施例中,虚拟接口从不止一个VPN(VPN到VI 的多对一映射)接收流量。在后者的实施例中,虚拟接口可以被配置为将 目的地前缀的特定子网或IP地址(子网)映射到特定VPN。因此,虚拟 接口可以通过查看例如与到来的流量相关联的子网来区分来自一个VPN 流量和来自另一个VPN的流量。VPN可以接收来自任意数量的虚拟接口 的流量。

参考图1和2A,在一个实施例中,呼叫流量202在路由器200的输入 接口210处被接收。例如,呼叫流量202的源可以是设备118,目的地可 以是设备128。

在一个实施例中,路由器200基于信号流204中的信息执行第3层 (L3)查找。“第3层”涉及到众所周知的OSI(开放系统互连)模型的 网络层。L3查找识别出呼叫流量202被引向的适当虚拟接口。在图2A的 示例中,呼叫流量202正被从VPN1中的设备118发送,因此L3查找将 VI 232标识作为适当虚拟接口。因此,呼叫流量202(具体地,信号流 204)通过交换结构220被路由到VI 232。

继续参考图1和2A,一旦信号流204被路由到适当的虚拟接口(在图 2A的示例中为VI 232),SBC 230还检查来自VI 232的OSI第4-7层 (其它信令信息)以识别呼叫流量202的目的地。基于信令信息,以及 SBC 230上的虚拟接口和本地策略,呼叫流量202被引向适当输出接口 240。在一个实施例中,SBC 230将与VI 232相关联的VPN标识符(例 如,VPN-ID和/或VRF-名称)嵌入信令信息中(例如,嵌入信号流204 中),并且还可以根据输出接口配置修改信令信息。

总之,在一个实施例中,路由器200中(或耦合到其上)的SBC 230 被配置具有分别属于VPN1和VPN2的虚拟接口232和234。VI 232和234 中的每一个被配置具有诸如VPN-ID和/或VRF-名称之类的唯一VPN标识 符。SBC 230自动将唯一用于SBC 230的虚拟接口与各自的唯一VPN标识 符相关联,所述唯一VPN标识符在网络内部是唯一的(在VPN-ID的情况 中)或者在自治系统内部是唯一的(在VRF-名称的情况中)。当流量从 特定VPN被路由到SBC 230时,该流量被路由到与该VPN相关联的特定 虚拟接口,并以这种方式虚拟接口唯一地识别出VPN用户。因此,SBC 230可在无需将VLAN标签映射到VPN的情况中得知VPN。

在一个实施例中,SBC 230将唯一VPN标识符嵌入到呼叫流量202的 信号流204中。本质上,呼叫流量202由唯一VPN标识符标记。因此, SBC 230下游的其它SBC以及SBC 230下游的其它网络元件(如软交换 机)可以得知作为呼叫流量202的源的VPN。

唯一VPN标识符可以作为cookie被嵌入信号部分204中。可以利用 其它机制将唯一VPN标识符包括在呼叫流量202中。例如,诸如(但不 限于)SIP、ITU H.323、ITU H.248和MGCP之类的各种信令协议包括信 号流204中存在的可用的或可以被修改以包括唯一VPN标识符的字段。

图2B示出流量从一个VPN(如VPN1)到另一个VPN(如VPN2) 的示例。在此示例中,到达VI 232(其与VPN1相关联)的呼叫流量202 由SBC 230处理,并随后经由VI 234(其与VPN2相关联)被引向适当的 输出接口240。

在一个实施例中,SBC 230执行适当的与媒体相关的服务或者执行适 当的策略。除了这里已经提到的示例,与媒体相关的服务的示例包括但不 限于转换编码、网络地址转换(NAT)、加密、VPN间连接和双音多频 (DTMF)检测。

图3A示出可以执行媒体或VPN优化的示例,其中,可能不需要与媒 体相关的服务,并且媒体流206可以旁路SBC 230。在本实施例中,VI 232判定呼叫流量202的源和目的地是否在同一VPN中。SBC 230作出强 制媒体流206通过该SBC或者使媒体流206旁路该SBC的决定(在任一 种情况中,信号流204不会旁路该SBC)。

在图3A的示例中,VI 232与包含呼叫流量202的源(设备118)的 VPN1相关联。在一个实施例中,如果呼叫流量202的目的地也在VPN1 中(即,如果设备128也在VPN1中),则执行VPN/媒体优化。具体 地,在一个实施例中,如果呼叫流量202(具体地,信号流204)的源和 目的地都在VPN1(VI 232)中,则VI 232不会将流量(具体地,媒体流 206)引向SBC 230;而是,流量(具体地,媒体流206)会旁路SBC 230。正如上面提到的,在一个实施例中,优化意味着当流量保持在VPN 内部时,SBC 230不对SIP、MGCP、H.323或H.248信令的会话描述部分 进行修改以强制RTP或RTCP流量通过SBC。

继续图3A的示例,在一个实施例中,如果呼叫流量202的目的地不 在VPN1中,则VPN/媒体优化被旁路。因此,媒体流206被引向SBC 230,该SBC 230执行适当的与媒体相关的服务或者执行适当的策略,例 如在前面所提到的那些。

图3B是示出根据本发明的一个实施例的信令流量在两个会话边界控 制器230和340之间的流程的框图。SBC 230和340可能在相同的网络设 备上或在不同设备上。

正如前面所描述的,虚拟接口232被配置在SBC 230上,而另一虚拟 接口341被配置在SBC 340上。在本实施例中,呼叫流量202的信号流 204(图3A)在VI 232被接收。在本实施例中,在SBC 230(VI 232)作 出关于VPN或媒体优化的决定前,与呼叫流量202相关联的唯一VPN标 识符被嵌入被转发到VI 340的信号流204中。因此,信令信息通过网络被 路由到正确的目的地,并且一旦进行了连接,媒体流206就开始了(例 如,呼叫方开始讲话)。在一个实施例中,SBC 340(VI 341)作出关于 是否执行优化的决定,并利用信号350将该决定传送给VI 232。

依赖于在SBC 230和SBC 340上所配置的策略,可以在开始媒体流 206之前通过修改信号流204来控制媒体流206。如果认为需要VPN/媒体 优化,则媒体流206旁路SBC 230和340两者。然而,如果不需要VPN/ 媒体优化,则媒体流206通过SBC 230和340两者中的一个。

总之,如果呼叫流量的源和目的地被终止于服务相同VPN的不同 SBC,则SBC中的任一个可以执行优化。如果流量在到达下游SBC(例 如,SBC 340)前经过一个或多个实体(例如,软交换机或SIP代理), 那么被嵌入流量的信号部分的唯一VPN标识符将通过这些实体,以使得 下游SBC(例如,SBC 340)可以得知呼叫的源,可以判定源和目的地是 否在同一VPN中,并且可以作出关于优化的决定。

图4是根据本发明实施例的用于管理会话边界控制器的虚拟接口处的 流量的方法的流程图400。参考图2A,流程图400在一个实施例中可以按 照存储在计算机可读存储器单元260中并且由智能网络设备或计算机系统 (例如,路由器200)中的中央处理器250执行的软件程序指令来实现。 在一个实施例中,流程图400的方法由图2A中的SBC 230实现。

在图4的方框410中,在一个实施例中,虚拟接口在SBC中被配置并 与唯一标识符相关联。更具体地,虚拟接口与特定的VPN相关联并将从 该VPN接收所有流量。注意,这不排除来自该VPN的、被路由到其它虚 拟接口的流量,也不排除来自其它VPNs的、被路由到该虚拟接口的流 量。在后者的情形中,SBC被配置用于对来自一个VPN的流量与来自另 一个VPN的流量进行区分。在一个实施例中,唯一标识符是每一个RFC 2685的VPN-ID,而在另一个实施例中,唯一标识符是VRF-名称。

在方框420中,虚拟接口接收来自VPN中的源的流量。在一个实施 例中,流量包括信号部分和媒体部分,其中信号部分和媒体部分是独立 的。在另一个实施例中,流量与VoIP呼叫相关联。

在方框430中,虚拟接口将流量与唯一标识符相关联。因此,虚拟接 口识别出流量的源处于上面结合方框410提到的VPN中。

在方框440中,在一个实施例中,唯一标识符被嵌入流量的信号部 分。流量的实例的信号部分可以被转发到另一网络元件,可以是另一个 SBC。

在方框450中,唯一标识符被用来判定流量的源和流量的目的地是否 在同一VPN中。基于判定的结果,并且基于适当策略,流量的媒体部分 被引向SBC或者将旁路SBC。如前面所描述的,是否旁路SBC的决定可 由下游SBC作出并被传送回上游SBC。

图5是根据本发明实施例的用于管理网络中的流量的方法的流程图 500。参考图3A,流程图500在一个实施例中可以按照存储在计算机可读 存储器单元260中并且由智能网络设备或计算机系统(例如,路由器 200)中的中央处理器250执行的软件程序指令来实现。在一个实施例 中,流程图500的方法由图3A和3B中的SBC 230实现;在另一实施例 中,流程图500的方法由图3B中的SBC 340执行。

在图5的方框510中,在SBC处接收流量的信号部分,更具体地,在 SBC的虚拟接口处接收。流量在从VPN中的源到达目的地的路由中。在 一个实施例中,与VPN相关联的唯一标识符被嵌入信号部分。

在方框520中,在信号部分提供的唯一标识符被用来判定流量的源和 目的地是否在同一VPN中。

在方框530中,在一个实施例中,如果目的地和源不在同一VPN 中,则流量的实例的媒体部分被引向SBC。

在方框540中,在一个实施例中,如果目的地和源在同一VPN中, 则流量的实例的媒体部分旁路SBC。

回到方框520,如上所提到的,关于源和目的地是否在同一VPN中的 判定可以由一个SBC作出并且被传送到另一SBC。同样,SBC中的任一 个可以接收媒体部分以进行处理。

虽然分别在图4和图5的流程图400和500中公开了具体的步骤,但 是这些步骤是示例性的。即,本发明的实施例可以很好地适用于执行各种 其它(另外的)步骤或者在流程图400和500中叙述的步骤的各种变体。 流程图400和500中的步骤可以以与所提出的顺序不同的其它顺序执行, 并且并不一定要执行流程图400和500中的所有步骤。

总之,根据本发明的实施例提供了一种用于配置SBC以使得SBC可 以得知VPN而无需映射表的复杂性和开销的友好的解决方案。

本发明的实施例被如此描述。虽然已经以特定实施例描述了本发明, 但是应当认识到,本发明不应被解释为受到这些实施例的限制,而应根据 下面的权利要求书进行解释。

去获取专利,查看全文>

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号