开头所提及的、与转换网络地址的网络节点关联的问题在下面首先不参照附图地借助应用情形来阐述,该应用情形特别是与面向分组的语音通信或VoIP(Voice over IP)一同出现。该示例性的应用情形此外通常不能理解为对于本发明的应用的限制。因此,所涉及的网络元素根据情况也称为通信终端设备或者通信伙伴,而不会将本发明限制为网络元素的该构型。
对于一般的多媒体通信的、面向分组的语音通信或视频通信,常常使用SIP协议(会话初始协议)。其为一种用于建立在多个通信端点之间的通信会话的协议。SIP在IETF(因特网工程任务组)的文献RFC 3261(Request for Comment)中被详细说明,并且被使用以确定相应的参加通信的通信端点并且建立通信会话。
实际的通信数据交换通过会话描述协议(SDP)和实时传输协议(RTP)进行。SDP的任务是协商在通信端点之间要使用的解码、传输协议等等。RTP最后确定在通信端点之间的“净荷”或实际通信数据或有用数据的交换。术语“有用数据”或“净荷”在此指数据分组的数据,这些数据通常不包含其他的对于该通信会话必需的控制信息或协议信息。
如果面向分组的语音通信超出相应的网络区域进行,即在被设置在本地网络区域另一边的通信端点参与的情况下,在使用SIP时出现多个问题,以下将对这些问题进行简要概述。
对于两个端点之间的通信数据的交换,在RTP的应用中规定了数据流借助UDP协议(用户数据报协议)来传输。为了传输通信数据而使用的UDP端口被动态分配,这使得将SIP结合防火墙、NAT路由器或者NAT“盒子(Boxes)”(以下称为转换网络地址的网络节点)的使用变得困难,因为大多数转换网络地址的网络节点不能将动态分配的UDP端口分配给信令连接。
为了绕开该问题,例如使用STUN(NAT的UDP简单穿越)协议,该协议能够实现沿着要建立的通信区段识别转换网络地址的网络节点,并且可以克服通过转换网络地址的网络节点预先给定的、在本地网络区域和处于该本地网络区域另一边的通信端点之间的界限。
相应的方法借助图1来阐述。图1示出了网络元素CLT,其通过转换网络地址的网络节点NAT与服务器SRV相连。服务器SRV(仅仅或尤其)是设计用于在服务器侧处理STUN协议,并且在下面也称为STUN服务器。按照STUN协议的消息交换例如包括由网络元素CLT出发的第一连接请求BRQ1,该连接请求在网络节点NAT中终止并且以第二连接请求BRQ2的形式发送给服务器SRV。服务器SRV相应地发送第一连接确认BRP1,该连接确认在网络节点NAT上终止,并且以第二连接确认BRP2的形式传送给网络元素CLT。消息在网络元素上“终止”在此理解为:相应的消息在相应的网络元素上结束,即在那里被分析,并且由相应的网络元素新组织一个“传递(weitergereichte)”消息。
以下所基于的是,网络元素CLT具有本地有效的源网络地址X或本地有效的端口号x。源网络地址和网络元素CLT的端口号的组合以标志X:x的形式使用在第一连接请求BRQ1的报头或者消息头条目中。
作为第一连接请求BRQ1的目标网络地址或目标端口号(通常也称为“目的(Destination)”),输入标志P:p形式的、服务器SRV的相应组合。设计为目标的服务器于是通过网络地址P或者通过端口号p标识。
网络节点NAT接收第一连接请求BRQ1,并且关于源网络地址X及关于原端口x进行网络地址转换,并且将连接请求以第二连接请求BRQ2的形式穿过本地网络的边界转发给服务器SRV。
改变后的连接请求消息BRQ2的特征在于,原始的源网络地址X被改变后的源网络地址A替代了。改变后的源网络地址A在此相应于网络节点的网络地址。上述内容类似地适用于改变为a的端口号。
在转发连接请求BRQ1的过程中,网络节点NAT保留所谓的“针孔(Pin Hole)”,其中连接被以所使用的网络地址或所使用的端口的预定(Vormerkung)来注明。
在这种情况中,该连接以相应的常见标记来表示:(X,x)<-->(A,a)。该连接导致每个进入的、带有目标地址A:a的数据分组被传送给具有网络地址X:x的网络元素CLT,反之,在离开的数据分组中,发送器地址X:x被改变为A:a。这种连接的持续时间通常在网络节点NAT方面被限制并且可以在需要时以周期间隔被更新。
服务器SRV以第一连接确认消息BRP1应答,该第一连接确认消息以上述方式借助网络地址转换以第二连接确认BRP2形式被传送给网络元素CLT。
如果网络元素CLT用于面向分组的语音通信,则在网络元素CLT上施加的、用于运行的SIP应用现在可以将外部有效的网络地址发送给(未示出的)SIP代理服务器。
以下进一步参照图1的功能单元阐述至本地网络区域之外的网络元素的通信建立。
图2示出了图1中已公开的网络节点以及图1中已公开的服务器SRV。与根据图1的实施例不同,那里的网络元素CLT并不直接与网络节点NAT通信。在该图2的实施例中,替代地设置了通过通信设备CLT连接的第一通信终端设备PHA。通信设备CLT具有与图1中公开的网络元素CLT相同的参考标记,以便表达通信设备CLT替代第一通信终端设备PHA接管确定的功能,这些功能在图1的实施例中必须通过那里的网络元素CLT本身来实施。
第一通信终端设备PHA是任意的网络元素,为了借助通信环境来描述本发明,以下用不能理解为限制的方式作为出发点的是,第一通信终端设备PHA实施为VoIP通信终端设备。相应地,通信设备CLT被设计用于面向分组的交换和多个(未示出的)面向分组地通信的通信终端设备的管理。通信设备CLT通常与多个网络节点连接,其中在附图中出于概观的原因仅仅示出了第一网络节点NAT。出于概观的原因,未示出网络节点NAT的其他可能的连接,例如引导至因特网服务提供商(ISP)以及其他(未示出的)在其他网络区域中的网络节点的连接。
网络节点NAT以图1中已公开的方式与STUN服务器SRV相连。网络节点NAT此外与第二通信终端设备PHB相连,针对第一通信终端设备PHA所述的内容基本上适用于第二通信终端设备PHB的技术构型。特别地,第二通信终端设备PHB能够以类似的方式通过通信设备CLT与网络节点NAT相连。然而这对于进一步的方法描述无关,因此在附图中,通信设备CLT在第二通信终端设备PHB侧用虚线示出。在图2的下部区域中示出的流程图由此不涉及虚线示出的通信设备CLT,而是涉及服务器SRV。
以下将参照图2的下半部中的被交换消息的流程图。
在基于第一通信终端设备PHA的通信建立的设立过程中,由该第一通信终端设备PHA将邀请消息202“Invite”发送给通信设备CLT。通信设备CLT现在在网络节点NAT加入的情况下引入连接请求,该连接请求伴随着消息204、206、208、210,这些消息基本上与图1中公开的连接请求消息或连接确认消息BRQ1、BRQ2、BRP1、BRP2相同。
在网络节点NAT方面进行连接之后,通信设备CLT发送修改后的邀请消息212给网络节点NAT。修改后的邀请消息与由第一通信终端设备PHA发送的邀请消息202的区别在于,在修改后的邀请消息212中,包含了关于有用数据连接的、通过连接而定义的相应的“公开的”网络地址。在网络节点NAT上获得的邀请消息212在进行通常的网络地址转换之后,以再次修改后的邀请消息214的形式发送给所规定的目标、即第二通信终端设备PHB。建立通信的另一过程基本上相应于SIP协议的规定,在此过程中,其可选的其他(未示出的)消息被交换。
为了通过第二通信终端设备PHB确认连接建立已经就绪,由该第二通信终端设备PHB发送确认消息216,该确认消息,在通过网络节点NAT的相应地址转换之后,以修改后的确认消息218的形式由网络节点NAT转发给通信设备CLT。随后,确认消息220由通信设备CLT传送给第一通信终端设备PHA,于是现在所有针对在通信会话中交换有用数据的前提条件都被满足。第一通信终端设备PHH现在与第二通信终端设备PHB双向交换有用数据PLD,这些有用数据在图中通过多个双箭头示出。
为了简化,图2中仅仅假设第一通信终端设备PHA的外部通信伙伴具有第二通信终端设备PHB的构型。对于带有超过一个至全球数据网络的接入和/或带有至多个SIP提供商的多个接入和/或通过多于一个网络节点NAT的通信环境的实际情况,替代地得到如下状况:其中通信终端设备PHA或其起管理作用的通信设备CLT必须适用多于一个公开的网络地址,以便通过不同的网络区域或不同的网络节点NAT与多个外部的通信终端设备通信。
根据本发明的STUN客户管理现在在主要通过通信设备CLT形成的通信基础结构内设置了:确定不同的公开网络地址并且将其存储在相应的连接条目中。这种确定并非如目前常用的那样以根据情况的(situativen)方式、即以专门(ad hoc)方式进行,而是事先并且由此能够以简单的方式采用。在此,该确定可能在周期性的时刻重复,以便在受危及的连接结束之前再次修复它。通过这种方式,对于每个外部的通信终端设备PHB,在引入通信的时刻直接已知:对于相应的网络节点NAT的内部通信终端设备PHA的哪些外部的网络地址或哪些外部的端口号被通知给相应的外部通信终端设备PHB。
图3示出了连接表中的多个连接条目的组合。连接表在第一列1中具有通信系统-外部网络元素的标识。在该实施例中,通信系统-外部网络元素或者通信终端设备通过其呼叫号码表明特征。在连接表的第一列1中,示例性地给出了呼叫号码31488和4711。
在第二列2中,对于相应的连接条目31488和4711记录了在自有的网络区域内或在自有的通信系统内有效的网络地址或IP地址。
相应地,在第三列3中记录了对于第一网络运营商或ISP有效的外部网络地址,以及在第四列4中记录了对于第二网络运营商有效的外部网络地址。
最后,在列5和6中设置了其他的网络地址,其例如寻址替代的网络运营商。
图4示出了通信系统CN,其包括通信设备CLT,多个通信终端设备连接到该通信设备CLT上。在附图中又仅仅示例性示出了第一通信终端设备PHA。为了连接其他的(没有参考标记并作为“云”示出的)通信系统,设置了第一、第二和第三转换网络地址的网络节点NAT1、NAT2、NAT3,其中所述其他的通信系统在目前实施形式的语音应用中称为通信系统外部。
在朝向第一通信系统外部的通信伙伴PHB1的方向上示出了通过第三网络节点NAT3的连接。通过替代的ISP的可选的另一连接通过第二网络节点NAT2示出。在朝向第二通信系统外部的通信伙伴PHB2的方向上示出了通过第二网络节点NAT2的连接。在朝向第三通信系统外部的通信伙伴PHB3的方向上示出了通过第一网络节点NAT1以及通过在通信系统外部的通信伙伴PHB3的通信系统一方的另一网络节点NAT4的连接。另外的服务器SRV1、SRV2、SRV3被分配给相应的外部通信系统。
借助根据本发明的用于管理通信连接的装置,现在可能以通信设备内部的“呼叫处理(Call Processing)”或“特征处理(Feature Processing)”的形式来确定向通信系统外部的通信终端设备的通信建立方向的选择。对于通过使用SIP协议建立从第一通信终端设备PHA至外部的通信伙伴、例如通信系统外部的通信伙伴PHB3的呼叫,基于在通信设备CLT内部的功率特征或“特征(Feature)”来选择相应的方向,在涉及连接条目的情况下该方向针对该外部的通信伙伴被选出。
借助本发明的装置,由此得到另一优点,即使对于其他的功率特征如最小成本路由、呼叫许可控制、通过特征数字选出呼叫方向等等,也可能实现该方向裁决。通过方向裁决,由此也确定了相应的网络节点NAT1、NAT2、NAT3,其中呼叫通过这些网络节点被引导。在此,所属的外部网络地址的选择是隐含的。根据本发明的用于管理通信连接的方法在此对于要进行呼叫的通信用户承担相应的选择。
可以理解的是,其他实施形式使用替代的NAT技术,而不会影响本发明思想的精神。这也包括对于所提及的STUN的替代的协议。例如也可以使用因特网连接建立(ICE)或通过Relay方式穿越NAT(TURN)的协议。