专利名称:通过一系列边界网关的网际协议多媒体载体路径最优化的方法和装置的制作方法
技术领域:
本发明涉及一种通过因特网多媒体子系统(IMS)网络中的一系列边界网关进行 载体路径最优化的方法和装置。更具体地说,本发明涉及一种使用替代会话描述协议(SDP) 参数来标识通过网际协议(IP)领域(realm)的备选端到端媒体路径的方法和装置。
背景技术:
虽然本发明具体涉及IP多媒体载体路径最优化并且因此将具体参考其进行描 述,但是将理解,本发明可用于其他领域和应用。例如,本发明可用于多种数据传输系统和 方法中,包括用于其他利用SDP和SDP提议/应答(offer/answer)模型的系统和方法。此 方法和系统将允许基于会话启动协议(SIP)的网络绕过一个或多个否则将包括在媒体路 径中的边界网关。 作为背景,基于IMS/SIP的网络是支持多种类型的用户设备的基于网际协议的网 络。此用户设备使用基于网际协议的话音传输(VoIP)和其他方法来跨IP网络在实时应用 中传输数据和话音。基于SIP的网络呼叫具有呼叫信令路径和载体路径。呼叫信令路径处 理用于建立、连接和处理呼叫的呼叫控制数据。载体路径是在其上进行对话的话音数据连 接并且在本发明中也称为多媒体会话路径或媒体路径。 在IMS和其他基于SIP的网络中,边界网关部署在由每个网络限定的IP领域之 间。在IP领域之内,可以使用公共IP地址空间从每一个IP端点到达每一个其他IP端点。 边界网关通过将对IP端点的访问限于IP领域之内来为IP领域提供安全性。多媒体会话 路径可沿端到端媒体路径遍历任意数量的IP领域。当边界网关可访问该路径上的附加IP 领域时,可有机会创建较短的媒体路径。但是,当前没有适当的系统来标识和访问潜在对该 会话可用的较短的媒体路径。 因此,业内需要一种允许边界网关旁路的过程。业内还需要边界网关旁路过程除 了单个端到端会话描述协议(SDP)提议/应答事务以外,无需附加的信令消息并且在会话 IP端点中无需新的过程。业内还需要使得边界网关能够保护性地管理安全性并聚合所有会 话的带宽使用。最后,业内需要提供一种最优化过程,其将縮短载体路径的路线,由此释放 边界网关的资源、减小通过IP网络的载体业务,以及最小化端到端延迟,从而改进服务质 量(QoS)。 本发明构想了一种解决上述困难和其他问题的新的和改进的系统和方法。
发明内容
提供了一种通过一系列边界网关的载体路径最优化的系统和方法。本发明允许应 用层网关(ALG)将额外的连接性信息附加到可被路径上的其他ALG识别的SDP消息。这允 许标识媒体路径上的无关边界网关并替换SDP消息中的连接性信息以绕过这些无关的边 界网关。本发明还将使用精确的SDP参数替换过程来标识备选媒体路径,所述过程又将准确地构建新的最优化的端到端媒体路径。 在本发明的一个方面中,所述方法包括接收会话描述协议提议,其包括先前已遍 历的网际协议领域的列表;基于未指定的信令准则来确定媒体路径的下一网际协议领域; 以及如果所述下一网际协议领域在所述先前已遍历的网际协议领域的列表之上,则绕过至 少一个与当前和先前遍历的网际协议领域关联的边界网关。 根据本发明的另一个方面,所述方法包括将在网络地址端口转换器之后的主机 视为似乎该主机在其自己的网际协议领域内。
根据本发明的另一个方面,所述方法包括接收会话描述协议提议,其包括先前已
遍历的网际协议领域的列表;至少部分地基于会话描述协议参数来确定入站媒体路径的网
际协议领域;以及如果所述入站媒体路径的网际协议领域在所述先前已遍历的网际协议领
域的列表之上,则绕过至少一个与先前遍历的网际协议领域关联的边界网关。 根据本发明的另一个方面,所述方法包括实施从所述先前已遍历的领域的列表
移除网际协议领域的一个或多个实例的安全策略。 根据本发明的另一个方面,所述方法还包括所述先前已遍历的网际协议领域的 列表包括领域标识符以便区分各领域。 根据本发明的另一个方面,所述方法包括所述会话描述协议提议包括完全限定 域名作为媒体路径连接信息。 根据本发明的另一个方面,所述方法包括所述会话描述协议提议包括网际协议 地址作为媒体路径连接信息。 根据本发明的另一个方面,所述方法包括所述会话描述协议提议包括传输协议
端口号信息。 根据本发明的另一个方面,所述方法包括提供每个网际协议领域专用的算法以
使能检验与先前已遍历的网际协议领域的每个实例有关的信息的完整性。
根据本发明的另一个方面,所述方法包括所述算法实现密码签名。 根据本发明的另一个方面,所述方法包括如果所述下一网际协议领域不在所述
先前已遍历的网际协议领域的列表之上,则将与所转发的会话描述协议提议关联的网际协
议领域添加到所述先前已遍历的网际协议领域的列表。 根据本发明的另一个方面,所述方法包括如果入站会话描述协议提议的网际协 议领域不在先前已遍历的要转发的网际协议领域的列表之上,则将与所述入站会话描述协 议提议关联的网际协议领域添加到所述先前已遍历的网际协议领域的列表。
根据本发明的另一个方面,用于标识端到端媒体路径的系统和网际协议多媒体子 系统包括实例列表,其包括标识会话描述协议消息必须遍历以便建立呼叫的网际协议领 域的信息;应用级网关,其配置为接收具有媒体路径连接信息和端口信息的会话描述协 议提议;确定所述媒体路径可遍历的下一网际协议领域;以及如果所述媒体路径可遍历的 下一网际协议领域在已遍历的网际协议领域的实例的列表之上,则替换所述媒体路径连接 信息和端口信息以促进边界网关旁路。 根据本发明的另一个方面,所述系统包括要在所述媒体路径上遍历的网际协议领 域的连接信息和传输协议端口号。 根据本发明的另一个方面,所述系统包括与网际协议领域遍历关联的信息包括网际协议地址。 根据本发明的另一个方面,所述系统包括由所述应用级网关控制的边界网关,其 中所述边界网关被配置为限制来自所述网际协议领域之外的网际协议端点的访问。
根据本发明的另一个方面,所述系统包括经由防火墙限制访问。
根据本发明的另一个方面,所述系统包括经由网络地址端口转换器限制访问。
根据本发明的另一个方面,所述系统包括出于安全目的,网际协议领域遍历未包 括在所述先前已遍历的网际协议领域的列表上。 根据本发明的另一个方面,一种方法包括建立实例列表,其代表媒体路径可遍历 的网际协议领域;接收具有媒体路径连接信息和端口信息的会话描述协议提议;确定所述 媒体路径可遍历的下一网际协议领域;针对所述媒体路径可遍历的下一网际协议领域检查 所述实例列表;以及如果所述媒体路径可遍历的下一网际协议领域在所述实例列表之上, 则替换所述SDP提议中的连接信息和端口信息以便绕过至少一个边界网关。
根据本发明的另一个方面,所述方法包括如果所述媒体路径可遍历的下一网际 协议领域在所述实例列表上出现的次数多于一次,则选择根据其替换所述会话描述协议提 议中的连接信息和端口信息的最早的实例。 根据本发明的另一个方面,所述方法包括实现迂回工作(workaround)过程,以 便操纵信令以保持网络元素不在所述媒体路径中实现旁路过程。 根据本发明的另一个方面,所述方法包括接收具有有效网际协议地址作为连接 信息的会话描述协议应答;重新调用先前应用于对应转发的会话描述协议提议的会话描述 协议参数替换;以及操纵所述会话描述协议应答中的参数以便建立绕过一个或多个边界网 关的端到端媒体路径。 根据本发明的另一个方面,所述方法包括接收具有未指定的地址作为连接信息 的会话描述协议应答;重新调用先前应用于对应转发的会话描述协议提议的会话描述协议 参数替换;判定所述会话描述协议应答中的已遍历网际协议领域信息是否匹配与所述边界 网关的入站侧或出站侧关联的网际协议领域;以及操纵所述会话描述协议应答中的参数以 便建立绕过一个或多个边界网关的端到端媒体路径。
当前描述的实施例存在于设备的各部分以及方法的各步骤的构建、排列以及组合 之中,由此如在以下更完整地说明的、如权利要求中具体指出的以及如附图所示出的,实现 了所构想的目标,这些附图是 图1示出了包括多个用户代理、多个ALG、多个边界网关以及多个IP领域的总体通 信网络系统的一部分; 图2是示出根据本发明的方法的一个实施例的流程图;以及
图3是示出根据本发明的方法的另一个实施例的流程图。
具体实施例方式
现在参考附图,其中所述展示只是为了例示所公开的实施例并且并非为了限制所 公开的实施例。图l提供了本发明可结合在其中的系统的总体视图。示出了通信基础结构A。通信基础结构A包括第一用户代理101,第二用户代理131,四个ALG 103、109、115和 121,四个边界网关105、 111、 117和123,家庭网关129,以及六个IP领域107、 113、 119、 125、 127和133。应理解,这只是表示通信网络基础结构的一个实施例。本发明可结合到多种通 信网络配置中。 在如下更详细讨论的操作中,当前描述的实施例涉及通过绕过边界网关进行IP 多媒体载体路径最优化。本发明描述了一种解决方案,其使用协作网络元素的系统以便确 定何时可绕过边界网关以实现更高效的媒体流。基于使用SDP消息传送的协议的网络(例 如基于SIP的第三代合作伙伴项目(3GPP)的IMS)可结合本发明。 仍参考图l,通信基础结构A包括一个或多个IMS网络135和其他网络,后者包含 多个网络元素。所述系统还包括两个关联的VoIP电话137、 139。 VoIP电话137、 139与包 含上述网络元素的MS 135通信。所有上述网络元素都进行通信以便连接VoIP电话137、 139之间的话音路径。 此通信网络基础结构A可包括其他网络元素,例如其他交换机和网关。此通信网
络还可包括诸如蜂窝网络、VoIP网络、互联网、内联网之类的其他网络。 继续图l,此实施例包括两个VoIP电话137、139。但是,可以代之以除VoIP电话
以外的其他用户设备。用户设备的其他实例包括但不限于无线多媒体电话、移动电话、有线
电话、膝上型计算机、WiFi电话、WiMax电话等。这些设备是用于通过兼容线路进行通信的
典型用户设备。 VoIP电话137、139可以与用户代理共置也可以与之分离。在多数情况下,所述电 话的固有IP能力将允许共置模型。当它们分离时,用户代理101、 131通常与到其他网络 (如公共交换电话网络(PSTN))的信令网关共置。在此情况下,电话137、 139经由PSTN连 接到信令网关。 在本发明中,可通过到IMS 135的用户设备137或139处理呼叫。图1示出了 IP 端点UA1101和UA2131之间的典型呼叫配置。SIP信令经由至少一个ALG和各种其他未示 出的SIP服务器在UA之间传送。实时传输协议(RTP)多媒体流经由边界网关105、111、 117、 123和可选地经由与UA1101和UA2131之一或两者关联的家庭网关(RG) 129在用户代 理101、131之间传送。每个边界网关由其对应的ALG控制。图1中的IP领域107、113、119、 125、 127和133与多媒体会话路径的每个段关联。边界网关105、 111、 117、 123和家庭网关 129用作对应IP领域的IP端点和接入点。每个边界网关可至少访问两个对应的IP领域。
IMS 135和其他SIP网络可选择在由每个网络限定的IP领域之间部署边界网关。 在IP领域之内,可使用公共IP地址空间从每一个IP端点到达任何其他IP端点。每个边 界网关典型地提供了防火墙或网络地址端口转换器(NAPT)以将对IP端点的访问限制在领 域之内。应用层网关(ALG)控制每个边界网关以便根据需要为每个SDP媒体线路分配新的 IP地址和传输协议端口 ,以及更新每个所转发的SDP提议和SDP应答中的SDP连接和端口 信息以有效地将边界网关插入端到端多媒体会话路径。 多媒体会话路径可遍历会话IP端点之间的任意数量的IP领域。只要媒体路径中 的每个边界网关没有到媒体路径上的IP领域的连接(除了其两个直接相连的IP领域以 外),就无法选择优化媒体路径。但是如果路径上的任何边界网关的任一 IP端点可访问路 径上的附加IP领域,则存在较短的媒体路径。 一系列实现此处的过程的ALG(其中每个ALG
6可确定其互连的IP领域内的媒体路径上的实体的IP地址和端口信息)将能够以最少数量 的边界网关建立多媒体会话路径,而不损害与路径上的边界网关关联的任何访问控制。如 果信令路径上的一个或多个ALG未实现所述过程,则仍会发生边界网关旁路,但是某些潜 在的可被绕过的边界网关会仍处于媒体路径中。此扩展也可与建立同一 IP领域内的IP端 点之间的直接媒体路径的托管式NAPT遍历方案一起工作。 RFC 3264描述了 SDP提议/应答模型,其允许SIP网络为多媒体会话建立端到端 媒体路径。本发明描述了 SDP扩展属性以及对用于转发SDP提议和SDP应答的ALG过程的 某些扩展。路径上的ALG根据需要在单个端到端SDP提议/应答事务内操纵SDP以使能使 用最少的边界网关建立端到端媒体路径。SDP扩展属性描述了路径上作为绕过路径上的一 个或多个边界网关的候选者的每个IP领域的媒体连接和端口信息。
本发明描述了对ALG方法到NAPT遍历的扩展和优化。 本发明中的边界网关旁路过程无需部署STUN服务器、不需要除了单个端到端SDP 提议/应答事务所需以外的附加信令、不需要用户代理支持新的过程、允许边界网关将访 问限于已知的IP源地址,以及允许边界网关以可预测的方式管理所有会话的聚合带宽使 用。 由于此扩展未引入媒体路径的端到端连接性检查,所以其利用IP领域的准确提 供。 由于本发明中的过程包括以密码方式验证来自每个IP领域的候选者连接和端口 信息的选项,所以在某些情况下,它们可在信令通过非受信网络或不受限制的因特网时使用。 操作概述 图l示出了端点用户代理(UA)1与UA2之间的典型呼叫配置,其中SIP信令经由至 少一个ALG (示出了四个ALG)和其他未示出的SIP服务器在UA之间传送,并且RTP多媒体 流经由BG并可能经由与每个UA关联的RG(仅示出一个RG与UA2关联)在UA之间传送。 每个边界网关(BG)由其对应的ALG控制。图中的R1、R2等表示与多媒体会话路径的每个 段关联的IP领域。 经由端到端SDP提议/应答交换建立UA之间的多媒体会话路径,其中每个ALG可
选择根据正常的ALG过程修改与SDP中的每个媒体线路关联的连接和端口信息,以便将其
BG插入媒体路径。每个ALG还可以可选地执行以下过程以确定何时可绕过一个或多个BG
和/或RG,以及修改所转发的SDP消息以在媒体路径中实施对应修改以绕过BG。 边界网关旁路过程假设架构中的任何实体都未使用交互连接性建立(ICE),尽管
混合过程是可能的。 假设UA通过根据RFC 4566和RFC 3264提供每个媒体线路的标准连接和端口信 息来参与标准的SDP提议/应答协商。如果必要,ALG可使用在RFC 3605中定义的rtcp属 性来标识未使用预期默认值的RTCP端口 。 可在ALG内实现边界网关旁路算法。除了与每个媒体线路关联的连接和端口信息 以外。所述算法对SDP提议/应答协商的任何方面都没有影响。 本发明定义了 SDP扩展属性"已遍历的领域",其提供了已在信令路径上遍历的先 前IP领域的连接和端口信息。已遍历的领域的每个实例具有实例号、领域标识符、连接和端口数据,以及可选的密码签名,后者使用每个IP领域专用的算法来计算以便确保已遍历 的领域数据的完整性。 要指出的是,可以以与每个SDP提议/应答事务相同的方式(如下所述,根据需要 重新分配和取消分配BG)处理会话内的每个SDP提议/应答事务中的连接和端口信息,以 便适应与会话IP端点关联的IP领域内的任何潜在更改。
IP领域考虑事项 对于本说明书中的过程,除了使用术语"领域"用于摘要验证以夕卜,术语"IP领域"
具有特定的含义。IP领域具有两个目的1)确定一种专用手段,借助该手段,共享专用信息 的网络实体可检验经由中间物传送的数据保持未被更改;以及2)确定何时可经由完全互
连的公共IP地址空间从一个网络实体到达另一个网络实体。 以下在本发明中定义的已遍历的领域扩展属性的语法清楚地描述了使用安全证 书实现目的1)的手段。 如下所述,存在许多适合目的2)的网络配置。 例如,在RG/NAPT之后的专用局域网上的住所内的所有主机都可被视为在其自己 的IP领域内,如IP领域6132的情况那样。从网络内的ALG提供托管NAPT遍历的运营商 可确定每个此类住所的单独IP领域,并且提供安全框架以例如当同一住所内的主机参与 经由外部网络内的SIP服务器建立的端到端会话时,确保可在所述主机之间直接提供媒体 路径,从而绕过否则使用正常的ALG过程将分配的数量可能相当多的BG。
—个非常类似的实例是当存在使用具有一个或多个到外部网络的NAPT的专用IP 地址空间的专用企业网络时。如同住所的情况一样,同样的原理也适用。提供托管NAPT遍 历的ALG创建企业的IP领域,将来自企业IP领域的适当IP地址与选定的标识符关联,以 及寻找绕过网络中的BG的机会。未与NAPT关联的会话IP端点也可被直接连接到网络中 的ALG。可向这些连接到可彼此到达的ALG的会话IP端点分配IP领域。
—旦媒体路径进入使用ALG隔离访问并与对等网络隔离的网络,与到可在所述网 络内相互到达的BG的媒体连接关联的所有地址都可被视为另一 IP领域的一部分。只要 ALG在先前跃点遍历此类IP领域之后将SDP提议转发回该IP领域,就有机会绕过在"循环 返回(loop back)"该IP领域时遍历的所有BG。 两个互连的网络可使ALG/BG经由因特网上的IPSEC关联直接相连。可以存在所 创建的一个或多个IP领域,它们只是为了标识这些有限连接性选项。由于经由这些IP领 域绕过BG的机会有限,所以网络可选择保持这些IP领域未被标识并可选择不转发与这些 IP领域关联的已遍历的领域信息。 可从开放互联网到达的IP地址将与预定的IP领域"IN"关联。 这些只是IP领域的几个实例。由于未使用连接性检查来检验可达性,所以IP领
域可被规定为正确标识彼此可达的IP地址。网络可提供其他手段来检验其限定的IP领域
内的IP端点之间的可达性。 ALG过程 本节中的ALG过程单独应用于每个SDP消息中的每个媒体线路,并且单独应用于 每个SDP提议/应答事务。
SDP提议的ALG处理
现在参考图2,其是示出根据本发明的一个实施例的流程图。通常,在此实例中,所 述方法在ALG中发生,但是应理解,此方法可在各种硬件和/或软件配置中发生。
当ALG接收到来自UA或另一 ALG的SDP提议时(步骤201),其首先确定媒体路径 的下一个段的IP领域(步骤203和205)。例如,在图1中,如果UAllOl向UA2131发起SDP 提议,则ALG1103的下一 IP领域是R2113, ALG2109的下一 IP领域是R3119,并且ALG4121 的下一 IP领域是R5127。由于ALG4正在管理RG 129到R6133的遍历,所以不适合绕过 BG4123,除非两个媒体路径IP端点在同一 IP领域R6133内,以便绕过媒体路径内的所有BG 禾口 RG。 ALG检查由所接收SDP提议中的媒体线路的已遍历的领域实例表示的所有先前已 遍历的IP领域(步骤207)。如果所接收的SDP提议中的连接信息的IP领域匹配任一先 前已遍历的IP领域,则ALG可绕过一个或多个BG,但不能绕过其控制的BG。 ALG可选择最 早的匹配IP领域并确定可通过将先前的IP领域直接连接到BG来绕过的BG的数量(步骤 209)。 ALG然后判定在其控制下的BG是否可访问与所转发的SDP提议中的连接信息关 联的下一 IP领域,以及是否可访问与所接收的SDP提议中的先前已遍历的领域实例关联的 IP领域(步骤211)。在此情况下,ALG可绕过一个或多个BG,包括其所控制的BG。 ALG应 选择可从BG访问的最早IP领域,并通过将来自此最早IP领域的连接和端口信息替换到所 转发的SDP提议中来确定可绕过的BG数(步骤213)。 ALG然后可选择以下四种情况之一,具体取决于适用性和本地策略(步骤215)。最
常见的本地策略将是选择绕过最大数量的BG的情况。在情况3和4中,ALG可通过从所转
发的SDP提议移除所有已遍历的领域实例来发信号通知其并不愿意被绕过。 1.绕过受控BG和一个或多个先前BG。 2.绕过受控BG。 3.绕过先前BG。 4.不绕过BG。 SDP提议情况1 :绕过受控BG和先前BG 在情况1中,ALG确定对于所接收的SDP提议中的媒体线路存在这样的已遍历的 领域实例其未对应于该媒体线路的当前IP领域,但是确实匹配要用于所转发的SDP提议 中的媒体线路的IP领域。ALG可使用来自与下一 IP领域关联的最早已遍历的领域实例的 连接和端口信息来替换SDP提议中的媒体线路的连接和端口信息,可在用于填充出站连接 和端口数据的实例之后删除遍历的每一个已遍历的领域实例,以及可转发修改后的SDP提 议(步骤217、219和221)。 情况1的一个实例(使用图1作为参考)是在从UA1的方向接收到SDP提议时, ALG3确定R4125和R1107是同一 IP领域的实例。ALG3将来自UA1的连接和端口信息替换 到出站SDP提议中并在转发前从SDP删除R2113和R3119的已遍历的领域实例。在完成端 到端SDP提议/应答事务之后,媒体路径将绕过BG1105、BG2111以及BG3117。
SDP提议情况2 :绕过受控BG 在情况2(绕过受控BG)中,ALG确定可从由所接收SDP提议中的媒体线路的IP连 接和端口信息表示的当前IP领域来访问下一 IP领域。如果存在与所接收SDP提议中的媒体线路关联的当前IP领域的已遍历的领域实例,则ALG可不加更改地转发所接收的SDP提 议。否则,ALG可从入站SDP提议中的媒体线路的连接和端口信息构建新的已遍历的领域 实例,并且可在转发之前将此已遍历的领域实例添加到SDP提议(步骤217-221)。
对于情况2,所接收的SDP提议通常将包括当前IP领域的已遍历的领域实例,除非 先前ALG不支持BG旁路过程。添加此缺失信息提供了更多机会来执行BG旁路。
SDP提议情况3 :绕过先前BG 在情况3中,ALG确定在其控制下的BG可访问下一 IP领域以及可访问与所接收 SDP提议中的媒体线路的先前已遍历的领域实例关联的IP领域(即,未对应于该媒体线路 的连接和端口信息的已遍历的领域实例)两者。ALG可使用来自可从BG访问的最早已遍 历的领域实例的连接和端口信息作为BG朝向所接收SDP提议的源的一侧的远程连接和端 口信息。ALG可使用其BG朝向所转发SDP提议的接收方一侧的连接和端口信息来替换SDP 提议中的媒体线路的连接和端口信息,可从SDP应答删除在可从BG访问的最早已遍历的领 域实例之后遍历的每一个已遍历的领域实例,可向SDP提议添加与修改后的SDP提议中的 媒体线路的连接和端口信息关联的IP领域的已遍历的领域实例,以及可转发修改后的SDP 提议(步骤217、219和221)。 情况3的一个实例(使用图1作为参考)是在从UA1的方向接收到SDP提议时, ALG4121确定BG4123可访问R2113。 ALG4121将其BG连接和端口信息替换到SDP提议中, 将来自R2113的已遍历的领域实例的连接和端口信息用作BG4123的UA1101侧的远程连 接和端口信息,从SDP提议删除R3119和R4125的已遍历的领域实例,以及在转发之前添 加R5127的已遍历的领域实例。在端到端SDP提议/应答事务完成之后,媒体路径将绕过 BG2111和BG3123。
SDP提议情况4 :不绕过BG 在情况4中,ALG不绕过BG。如果不存在与所接收SDP提议中的媒体线路关联的 当前IP领域的已遍历的领域实例,则ALG可从入站SDP提议中的媒体线路的连接和端口 信息来构建新的已遍历的领域实例,并且可将此已遍历的领域实例添加到要转发的SDP提 议。ALG将使用来自其BG朝向所转发SDP提议的接收方一侧的连接和端口信息来替换SDP 提议中的媒体线路的连接和端口信息(步骤217)。 ALG还可添加与所转发SDP提议中的媒 体线路的连接和端口信息关联的IP领域的已遍历的领域实例,并转发修改后的SDP提议 (步骤219、221)。 如果ALG在朝向所接收SDP提议的源的一侧上未执行托管NAPT遍历,则ALG将使 用来自入站SDP提议的连接和端口信息作为BG朝向所接收SDP提议的源的一侧的远程连 接和端口信息。如果ALG在朝向所接收SDP提议的源的一侧上执行托管NAPT遍历,则ALG/ BG可经由锁存或其他未指定的技术发现RG 129的IP地址。除了在出站SDP提议中插入已 遍历的领域实例(多个)以外,情况4对应于标准的ALG行为。
SDP应答的ALG处理 现在参考图3,其是本发明的另一实施例。所述方法在转发SDP提议之后开始(步
骤221,图2)。应指出的是,SDP应答的处理可与SDP提议的处理相同。但是,这并非在所
有情况下都是理想的,因为媒体可能不会在两个方向上沿同一路径向下流动。 ALG可保存与其选择四种情况中的哪种情况来处理BG旁路有关的信息。ALG在处理对应SDP应答中使用此信息(步骤303),但是存在要考虑的附加子情况,因为下游ALG也 可绕过已遍历的BG,并且路径中的其他ALG可能支持也可能不支持BG旁路过程。要指出的 是,SDP提议中的每个已遍历的IP领域(由已遍历的领域实例表示)最多存在一个到达其 最终目的地的已标识实例。ALG利用此事实来正确处理SDP应答。未标识的实例表示所失 去的BG旁路机会。 为了帮助在处理SDP应答时区分附加子情况,ALG可在所转发SDP应答中的媒体 线路的连接信息中插入以下之一 (步骤305) :1)对应IP领域的有效IP地址,或2)未指定 的地址。对于IPv4,未指定的地址为"0. 0. 0. 0",以及对于IPv6,未指定的地址为"0: :0"。
当有效IP地址的IP领域匹配先前接收的SDP提议中的媒体线路的连接信息的IP 领域时,ALG可在所转发SDP应答中的媒体线路的连接信息中提供该IP地址(步骤305)。 否贝U, ALG可包括未指定的地址以表明接收ALG将从SDP应答中的已遍历的领域实例(如 果存在)提取连接和端口信息(步骤309)。
当接收到SDP应答时,ALG可考虑以下子情况 a. ALG所接收的SDP应答中的媒体线路的连接和端口信息对于其IP领域"有效"。 此IP领域匹配与ALG所转发的SDP提议中的对应媒体线路的连接和端口信息关联的IP领 域(步骤307)。 b. ALG所接收的SDP应答中的媒体线路的连接信息是"未指定的地址"。SDP提议 中的已遍历的领域实例匹配与ALG "转发的"SDP提议中的对应媒体线路的连接和端口信息 关联的IP领域(步骤311)。只有在发送SDP应答的ALG不兼容BG旁路过程的情况下此情 况才适用。兼容的ALG会将这种情况转换为子情况a。 c. ALG所接收的SDP应答中的媒体线路的连接信息是"未指定的地址"。SDP应答 中的已遍历的领域实例匹配与ALG "接收的"SDP提议中的对应媒体线路的连接和端口信息 关联的IP领域(步骤313)。 d. ALG所接收的SDP应答中的媒体线路的连接信息是"未指定的地址"。SDP应答 中的已遍历的领域实例不匹配与ALG "接收的"SDP提议中的对应媒体线路的连接和端口信 息关联的IP领域,并且不匹配与ALG "转发的"SDP提议中的对应媒体线路的连接和端口信 息关联的IP领域(步骤315)。
SDP应答子情况a :有效连接信息 在子情况a中,ALG接收SDP应答中的媒体线路的连接信息,后者对应于ALG的IP 领域中的有效IP地址。ALG的行为取决于在其转发SDP提议时选择何种SDP提议情况(步 骤317禾P 319): *在情况1中,由于ALG在转发SDP提议时绕过其BG和至少一个先前BG,所以ALG 可转发包含未指定的地址的SDP应答以发信号通知将绕过接收SDP应答的ALG。 ALG可从 入站SDP应答中的媒体线路的连接和端口信息构建新的已遍历的领域实例,可将此已遍历 的领域实例添加到SDP应答,替换任何其他可在SDP提议中出现的已遍历的领域实例,可使 用未指定的地址替换SDP应答中的媒体线路的连接信息,以及可转发修改后的SDP提议。
在情况2中,由于ALG已绕过其BG并且SDP提议中没有其他BG,所以ALG可不 加更改地转发所接收的SDP应答。
在情况3中,由于ALG已绕过SDP提议中的至少一个先前BG,但未绕过其自己的BG,所以转发的SDP应答将包含未指定的地址以发信号通知将绕过接收SDP应答的ALG。 ALG可从BG朝向所接收SDP提议的源的一侧的本地连接和端口信息构建新的已遍历的领域 实例,可将此已遍历的领域实例添加到SDP应答,可使用未指定的地址替换SDP应答中的媒 体线路的连接信息,以及可转发修改后的SDP应答。
在情况4中,由于ALG未绕过任何BG,所以ALG可使用其BG朝向所接收SDP提 议的源的一侧的本地连接和端口信息来替换SDP应答中的媒体线路的连接和端口信息,并 可转发修改后的SDP应答。 此外,当受控BG保持已分配时,如具有子情况a的情况3和情况4中那样,如果 ALG未在朝向SDP应答的一侧上执行托管NAPT遍历,则ALG可使用来自入站SDP应答的连 接和端口信息作为BG朝向所接收SDP应答的源的一侧的远程连接和端口信息。如果ALG 在朝向所接收SDP应答的源的一侧上执行托管NAPT遍历,则ALG/BG可经由锁存或其他未 指定的技术发现RG的IP地址。
SDP应答子情况b :匹配所转发的SDP提议 在子情况b中,ALG接收SDP应答中的媒体线路的连接信息中的未指定地址。SDP 应答中的已遍历的领域实例匹配与ALG "转发的"SDP提议中的对应媒体线路的连接和端口 信息关联的IP领域。ALG的行为取决于在其转发SDP提议时选择何种SDP提议情况(步骤 317禾P 319): 在情况1中,由于ALG在转发SDP提议时绕过其BG和至少一个先前BG,所以尚 未到达匹配IP领域,ALG可不加更改地转发SDP应答。
在情况2中,由于ALG已绕过其BG并且SDP提议中没有其他BG,所以所接收的 SDP应答中的已遍历的领域实例也匹配与ALG "接收的"SDP提议中的对应媒体线路的连接 和端口信息关联的IP领域。ALG可使用来自所接收的SDP应答中的已遍历的领域实例的连 接和端口信息替换SDP应答中的媒体线路的连接和端口信息,可从SDP应答删除已遍历的 领域实例,以及可转发修改后的SDP提议。
在情况3中,由于ALG已绕过SDP提议中的至少一个先前BG,但未绕过其自己 的BG,所以转发的SDP应答将包含未指定的地址以发信号通知将绕过接收SDP应答的ALG。 ALG可使用从BG朝向所接收SDP提议的源的一侧的本地连接和端口信息构建的新的已遍历 的领域实例替换SDP应答中的媒体线路的已遍历的领域实例,可保留SDP应答中的媒体线 路的连接信息内的未指定地址,以及可转发修改后的SDP应答。
在情况4中,由于ALG未绕过任何BG,所以ALG可使用其BG朝向所接收SDP提 议的源的一侧的本地连接和端口信息来替换SDP应答中的媒体线路的连接和端口信息,可 从SDP应答删除已遍历的领域实例,并可转发修改后的SDP应答。此夕卜,当受控BG保持已分配时,如具有子情况b的情况3和情况4中那样,ALG可 使用来自所接收SDP应答中的已遍历的领域实例的连接和端口信息作为BG朝向所接收SDP 应答的源的一侧的远程连接和端口信息。
SDP应答子情况c :匹配所接收的SDP提议 在子情况c中,ALG接收SDP应答中的媒体线路的连接信息中的未指定地址。SDP 应答中的已遍历的领域实例匹配与ALG "接收的"SDP提议中的对应媒体线路的连接和端口 信息关联的IP领域。ALG在所有情况下都绕过其BG。 ALG的行为取决于在其转发SDP提议时选择何种SDP提议情况(步骤317和319): 在情况1中,由于ALG在转发SDP提议时绕过其BG和至少一个先前BG,所以尚
未到达匹配IP领域,ALG可不加更改地转发SDP应答,如情况1的子情况b中那样。
在情况2中,由于ALG已绕过其BG并且SDP提议中没有其他BG,所以转发的SDP
应答应包含有效的连接信息。ALG可执行与情况2的子情况b相同的过程。
在情况3中,由于ALG已绕过SDP提议中的至少一个先前BG,但在处理SDP提议
时未绕过其自己的BG,所以其现在将发信号通知所转发的SDP应答绕过其自己的BG。 ALG
可不加更改地转发SDP应答。 *在情况4中,由于ALG在处理SDP提议时未绕过任何BG,所以其现在将发信号通 知所转发的SDP应答绕过其自己的BG。 ALG可使用来自所接收SDP应答中的媒体线路的已 遍历的领域实例的连接和端口信息来替换SDP应答中的媒体线路的连接和端口信息,可从 SDP应答删除已遍历的领域实例,并可转发修改后的SDP应答。
SDP应答子情况d :无匹配 在子情况d中,ALG接收SDP应答中的媒体线路的连接信息中的未指定地址。SDP 应答中的已遍历的领域实例不匹配与ALG "接收的"SDP提议中的对应媒体线路的连接和端 口信息关联的IP领域,并且不匹配与ALG "转发的"SDP提议中的对应媒体线路的连接和端 口信息关联的IP领域。ALG在所有情况下都绕过其BG和至少一个先前BG。 ALG的行为取 决于在其转发SDP提议时选择何种SDP提议情况(步骤317和319): *在情况1中,尚未到达匹配IP领域,所以ALG可不加更改地转发SDP应答,如情 况l的子情况b中那样。
在情况2中,尚未到达匹配IP领域,所以ALG可不加更改地转发SDP应答。
在情况3中,由于ALG已绕过SDP提议中的至少一个先前BG,但在处理SDP提议 时未绕过其自己的BG,所以其现在将发信号通知所转发的SDP应答绕过其自己的BG。 ALG 可不加更改地转发SDP应答,如情况3的子情况c中那样。 *在情况4中,由于ALG在处理SDP提议时未绕过任何BG,所以其现在将发信号通 知所转发的SDP应答绕过其自己的BG。 ALG可不加更改地转发SDP应答。
来自用户代理的未指定地址的特殊处理 如果发起SDP提议的UA在连接信息内包含未指定地址,则未指定地址可与UA的 IP领域关联。ALG在转发具有未指定地址的SDP提议时可遵循情况l,其中将理解,对于每 一个IP领域,SDP提议都包含具有未指定地址的隐含的已遍历的领域实例。此过程的最终 结果是如果初始SDP提议中存在未指定地址,则每一个ALG都将转发未指定地址。如果所 接收的SDP应答包含有效IP地址,则使用子情况a的第一 ALG会将其转换成未指定地址, 并且使用子情况d的后续ALG将在所转发SDP应答中包括未指定地址。由于此过程不支持 使用"黑洞"地址(后者可在SIP第三方呼叫控制(3pcc)过程中用于发现做出应答的UA的 连接信息),所以这些过程的适用性存在某些限制,尽管建议的3pcc过程都不依赖于使用 "黑洞"地址。 如果发起SDP应答的UA在连接信息内包含未指定地址,则处理SDP应答的ALG过 程保持不变,结果是如果在转发SDP提议时分配任何BG,则它们将都被释放。将理解,对于 未知IP领域,没有显式已遍历的领域实例的每一个SDP应答都将包含一个隐含的已遍历的领域实例。因此子情况d始终适用。 要注意的是,如果初始SDP提议或初始SDP应答在连接信息内包含未指定地址,则 可以没有媒体流,直到使用来自用户代理IP领域的实际IP地址执行后续SDP提议/应答 事务为止。 关于非兼容ALG的假设 当将不兼容这些过程的ALG包括在具有兼容ALG的端到端信令路径中时,在此的 过程做出以下假设 假设1 :非兼容ALG可具有以下两种行为之一 a.当接收在连接信息内具有未指定地址的SDP消息时,非兼容ALG在转发的SDP 消息中保留未指定地址。此外,其可不加更改地转发所接收的已遍历的领域属性,或可在转 发之前从SDP消息删除已遍历的领域属性。 如果ALG转发已遍历的领域属性,则大多数的BG绕过机会将仍可用并且将正确地 应用所述过程。如果ALG从SDP删除所有已遍历的领域属性(因为它们是未知的),则ALG 将停留在路径中并且某些BG绕过机会将不可用,但是所述过程将正确地建立端到端媒体 路径。 b.当接收在连接信息内具有未指定地址的SDP消息时,ALG分配BG(如果尚未分 配)并将未指定地址转换成所转发到的IP领域中的有效IP地址。ALG从所转发的SDP消 息删除所有已遍历的领域属性。 如果ALG转换未指定地址并转发已遍历的领域属性,则所述过程会无法建立媒体 路径。毗接已知为违反假设"lb"的非兼容ALG的ALG可通过操纵信令以将非兼容ALG保 留在媒体路径中来实现迂回工作,尽管这将丧失大量的BG绕过机会。 为了将相邻ALG保留在路径中,兼容ALG从详细过程选择适用的情况或子情况,后 者将确保在所有目的地为相邻ALG的SDP消息中提供实际连接信息,以及删除SDP消息中 目的地为相邻ALG或来自相邻ALG的所有已遍历的领域属性。 假设2 :非兼容ALG将不会终止其BG中不存在媒体流的会话。ALG将隐含地接受 可绕过其BG。毗接已知为违反此假设的非兼容ALG的ALG可通过操纵信令以将非兼容ALG 保留在媒体路径中来实现迂回工作,尽管这将丧失大量的BG绕过机会。
已遍历的领域属性 已遍历的领域属性仅是媒体级属性。其包含潜在可用于绕过已分配BG的先前已 遍历的领域的IP领域标识符和IP地址。 此属性编码关于每个已遍历的领域实例的主要信息遍历领域的顺序,领域身份, 其IP地址、端口和传输协议,以及安全证书〈领域号 > :是1与256之间的正整数,其标识了在转发SDP提议期间遍历此已遍 历的领域实例的顺序(与同一SDP提议中的媒体线路的其他已遍历的领域实例相比)。其 可以以1开始并且可在将新的已遍历的领域实例插入SDP提议时递增1 (与媒体线路的最 高已有领域号相比)。在SDP应答中可忽略领域号,因为SDP应答中应只有一个已遍历的领 域实例。〈领域 > :标识了一组共享公共IP寻址方案的可相互到达的IP端点。每个领域还 为使用领域的已遍历的领域实例的所有主机定义了保护域,以帮助确保每个属性实例中的其余信息的完整性。可从开放互联网到达的公共IP地址可与无需证书的特殊领域"IN"关 联。希望确保其领域(多个)的已遍历的领域实例信息的完整性的ALG的运营商可坚持以 下原则来创建其服务器的领域字符串1)领域字符串可以是全球唯一的。2)领域字符串应 表示可被呈现给用户的人工可读的标识符。〈传输〉指示已遍历的领域实例的传输协议。本发明仅定义了UDP。但是,提供 了扩展性以允许与这些过程一起使用未来的传输协议,如传输控制协议(TCP)或数据报拥 塞控制协议(DCCP)。〈连接地址 > :从RFC 4566获得。其是与已遍历的领域实例关联的IP地址,允许 IPv4地址、IPv6地址以及FQDN。应使用IP地址,但是可使用FQDN代替IP地址。
〈端口 > :也从RFC 4566获得。其是与已遍历的领域实例关联的传输协议端口号。
〈rtcp端口 >和〈rtcp地址 > :一起在语义上等价于RFC 3605中定义的rtcp属 性。它们在已遍历的领域实例用于RTP流并且RTCP不大于同一 IP地址处的RTP流的端口 时,可选地编码RTCP端口和IP地址信息。〈证书值> :是针对属性的其他内容和其他机密数据计算的数字签名。与领域关联 的保护域的机构可选择消息摘要5(MD5)或其他算法来计算证书。为了额外的安全性,扩展 属性(如用于摘要的不重性和不透明)可用于将针对一个SDP消息中的属性计算的证书链 接到在SIP对话内使用的先前SDP提议和SDP应答。只有保护域内的服务器才需要检验属 性内容的完整性。 由于已遍历的领域属性的实例只能由对应IP领域中的受信节点使用,所以IP领 域可选择将加密版本的连接地址和端口信息放置在已遍历的领域属性的扩展参数内,而将 哑值放置在连接地址和端口字段内。 这些各种网络元素的实现取决于如何使用系统。这些功能可由某些或全部网络元 素彼此结合或单独地执行并且可使用各种硬件配置和/或软件技术来实现。此方法只是列 举了所建议系统的几个实施例并且当前可存在变型。但是,这并非旨在限制权利要求,而是 显示关于可如何使用所述方法和系统的某些实施例。 上述描述只是公开了所要求保护的发明的特定实施例并且并非旨在限制所要求 保护的发明的特定实施例。因此,本发明并不仅限于上述实施例。相反,将认识到,本领域 技术人员可构想落入本发明的范围之内的备选实施例。
权利要求
一种使用替代会话描述协议参数来标识通过网际协议领域的备选端到端媒体路径的方法,所述方法包括接收包括先前已遍历的网际协议领域的列表的消息;至少部分地基于会话启动协议信令信息来确定媒体路径的下一网际协议领域;如果所述下一网际协议领域在所述先前已遍历的网际协议领域的列表之上,则绕过至少一个与所述先前已遍历的网际协议领域关联的边界网关。
2. 根据权利要求1的方法,还包括将在网络地址端口转换器之后的主机视为似乎该 主机在其自己的网际协议领域内。
3. 根据权利要求1的方法,还包括实施从所述先前已遍历的领域的列表移除网际协 议领域的一个或多个实例的安全过程。
4. 根据权利要求l的方法,其中所述先前已遍历的网际协议领域的列表包括领域标识 符以便区分各领域。
5. 根据权利要求1的方法,还包括为了所述先前已遍历的网际协议领域的列表的完 整性而提供每个网际协议领域专用的算法。
6. 根据权利要求8的方法,其中所述算法包括密码签名。
7. 根据权利要求1的方法,其中所述会话描述协议参数在提议消息中并且所述方法还 包括接收带有会话描述协议参数的会话描述协议应答; 重新调用所述提议消息中的所述会话描述协议参数;以及操纵所述会话描述协议应答中的所述会话描述协议参数以便建立绕过一个或多个边 界网关的端到端媒体路径。
8. —种用于标识网际协议多媒体子系统中的最佳端到端媒体路径的系统,所述系统包括实例列表,其包括标识媒体路径所遍历以便建立呼叫的网际协议领域的信息; 应用级网关,其配置为接收具有连接和端口信息的会话描述协议提议/应答;确定所 述会话描述协议提议/应答可遍历的下一网际协议领域;检查所述实例列表;以及如果所 述媒体路径可遍历的所述下一网际协议领域在所述实例列表之上,则替换所述连接和端口 信息以促进边界网关旁路。
9. 根据权利要求ll的系统,其中所述标识网际协议领域的信息包括网际协议地址。
10. 根据权利要求11的系统,还包括由所述应用级网关控制的边界网关,其中所述边 界网关被配置为限制对与所述网际协议领域关联的端点的访问。
全文摘要
公开了一种使用替代会话描述协议参数来标识通过网际协议领域的备选端到端媒体路径的方法。所述方法包括接收会话描述协议提议,其包括先前已遍历的网际协议领域的列表。所述方法然后基于未指定的信令准则来确定媒体路径的下一网际协议领域。最后,所述方法包括如果要遍历的下一网际协议领域在所述先前已遍历的网际协议领域的列表之上,则绕过至少一个与当前和先前遍历的网际协议领域关联的边界网关。实现用于标识最佳端到端媒体路径的方法的系统和网际协议多媒体子系统包括网际协议领域实例列表;应用级网关,其配置为接收具有连接和端口信息的会话描述协议提议;以及一过程,用于确定如果所述媒体路径可遍历的下一网际协议领域在所述实例列表之上,则替换媒体路径连接和端口信息以促进边界网关旁路。
文档编号H04L29/12GK101730998SQ200880023239
公开日2010年6月9日 申请日期2008年7月1日 优先权日2007年7月6日
发明者R·P·艾吉扎克 申请人:朗讯科技公司