使用网络发起的数据服务技术推送内容给终端的系统和方法本申请是于2005年3月3日提交的、题为“使用网络发起的数据服务
技术推送内容给终端的系统和方法”的中国专利申请200580001281.1的分
案申请。
技术领域
本发明通常涉及推送内容给终端的系统和方法,更具体的,涉及使用网
络发起的数据会话技术以及会话发起协议(SIP)两者推送内容给终端。
发明背景
现代通信纪元引起了有线和无线网络的极大扩展。由于消费需求的刺激,
计算机网络、电视网络以及电话网络经历了空前的技术扩展。无线和移动联
网技术解决了相关的消费需求,同时提供了更加灵活以及迅速的信息传送。
当前和未来的联网技术继续促进信息传输的便利性以及对用户的便利
性。本地、地区以及诸如互联网的全球网络的激增有益于传送大量信息到社
会。扩展这些联网技术从而日益包括无线和移动技术。通过这些网络,可将
信息下载到桌面系统、无线系统、移动系统等。例如,可通过互联网获得的
信息现在可被下载到移动无线单元上,诸如蜂窝电话、个人数字助理(PDA),
膝上型计算机等。
通常被称为2G无线服务的第二代无线服务是基于电路交换技术的当前
无线服务。在这方面,诸如全球移动通信系统(GSM)的2G系统使用无线
技术用于第一代移动技术之上的改进的质量以及更宽的服务范围。通常被称
为3G无线服务的第三代无线服务指的是在终端和网络之间通过采用新的基
于分组的传输方法来确保容量、速度以及效率提升的一组数字技术。3G设
备和网络的用户能访问诸如视频点播、视频会议、快速网页访问以及文件传
输的多媒体服务。现有和未来的服务是,并将继续是由网络服务运营商提供
的,这些运营商使得服务和应用通过网络可用于移动设备用户。
当前可用于传输信息的一种特定服务特征是“推送”特征(也称作
“通知”特征或“警告”特征)。在典型的客户/服务器模式中,客户向
服务器请求服务或信息,然后服务器用传输信息来响应客户。这通常被
称为“拉取(pull)”技术,其中客户从服务器拉取信息。例如,在客户
设备输入统一资源定位符(URL),然后将输入发送到服务器以检索相关
信息是拉取事务。
相反,“推送”技术通常是指一个装置传输信息到一个或多个设备而
无需先前的用户动作。因此,在服务器传输信息之前不存在来自客户的
明确请求,因此推送技术实际上包括服务器发起的事务处理。推送技术
可以和多种协议以及通信技术一起使用。例如,某些代表性的推送技术
包括短消息服务(SMS),无线应用协议(WAP)推送,多媒体消息传递服
务(MMS),会话发起协议(SIP)以及其他的。
虽然传统的推送技术足以推送内容到客户,但这样的技术有某些缺
点。考虑一个包括、连接到、或关联到诸如通用分组无线服务(GPRS)
网络的移动网络的专用网络。在此情形中,例如移动终端跨越该移动网
络通信的客户例如根据“拉取”技术通常能够发起一个跨越位于客户和
服务器之间的网络地址翻译器(NAT)与服务器的通信会话(例如SIP通
信会话)。正如应当理解的,NAT能够翻译客户的专用IP地址为服务器
可识别的公共IP地址。然而例如根据“推送”技术,服务器通常不能发
起和客户的跨越NAT的类似通信会话。在这点上,专有和蜂窝网络内的
客户通常缺少例如固定IP地址的静态和公共标识,这样,服务器通常不
能识别到NAT的期望客户。
移动网络通常因为某些原因以防止服务器发起和相应客户的SIP通
信会话的方式来配置。首先,根据网络拓扑,即使不存在跨越该网络的
IP-业务,网络内允许到客户的IP连接会消耗非期望数量的资源,或降
低网络性能。其次,在网络中,正如在许多专用网络中一样,可以存在
比可用IP-地址多的客户。这样,网络可包括NAT、动态分配的IP地址
和/或专用IP地址。第三,许多网络的安全性需求以及策略要求防止不
同的IP-业务进入网络。这样的情形通常导致NAT的使用,特别是当移
动网络包括相关的防火墙/网关时。
为克服NAT的缺点,允许服务器根据“推送”技术发起和客户的通
信会话,能配置网络从而每个客户具有唯一固定的IP地址,这些地址都
被输入到相应域名系统(DNS)服务器中。还能配置网络的NAT以及任意
安全组件(例如防火墙/网关等),以允许服务器发起和客户的通信会话,
并允许路由业务到和来自分配给客户的IP地址。此外,例如,当该客户
连接到网络时,能分配和网络内每个客户IP连接所需的网络技术特定的
资源。
然而这种允许服务器推送内容给客户的技术忽略了导致NAT组件使
用的公共网络的限制。即,这种技术忽略了可用公共IP地址的限制。同
样,这种技术忽略了NAT组件与提供安全性功能的防火墙/网关通信的能
力。因此,期望设计一种在使用网络发起通信会话技术的移动或专用网
络中能够允许服务器推送内容给客户、并且考虑公共网络有限的地址空
间、维持对相应网络的防火墙和/或网关功能的系统。
发明概要
根据上述背景,本发明的实施例提供一种使用网络发起数据会话技
术推送内容到终端,典型是具有相关专用IP地址的移动终端的改进系统
和方法。和推送内容到终端的传统技术相比,本发明实施例允许从跨公
共网络与终端正对的网络节点与该终端建立网络发起的数据会话。更具
体的,本发明的实施例允许网络节点以考虑可用公共IP地址有限数目、
并维持到包括终端的移动网络的防火墙和/或网关功能的方式建立和终端
的网络发起数据会话。
根据本发明的一个方面,提供一种推送内容到位于移动网络或专用
网络的终端的系统。该系统包括诸如会话发起协议(SIP)代理的网络节
点,该节点跨公共网络与包括终端的网络正对。该网络节点能代表终端
预订推送服务,从而该网络节点也能根据该推送服务接收推送内容。此
后,网络节点能建立与终端的网络发起数据会话。例如,该网络节点能
独立于公共网络发送触发器给终端,借此触发终端向该网络节点注册并
建立网络发起数据会话。响应于该网络发起数据会话,网络节点能进一
步注册该终端,从而该终端能根据注册接收推送内容。
更具体的,该网络节点能接收推送内容,并此后将推送内容存储在
缓冲器中。在这种实例中,网络节点能从缓冲器发送推送内容给终端。
可替换地,网络节点能注册该终端,从而终端能根据注册预订推送服务。
在这种实例中,终端能根据终端预订的推送服务接收推送内容。
网络节点能跨越公共网络从终端接收注册消息,借此跨越公共网络
识别终端并注册该终端。例如,网络节点能通过位于网络节点和终端之
间的网络地址翻译器(NAT)和/或防火墙(FW)接收来自终端的注册消
息。在这种实例中,网络节点能以独立于NAT和/或FW的方式建立网络
发起数据会话。网络节点此外或可替换地还能注册终端,从而终端能根
据该终端跨越公共网络的标识接收推送内容。
根据本发明的另一方面,提供一种终端以及推送内容到终端的方法。
因此,本发明的实施例提供一种使用网络发起的数据会话技术推送内容
给终端的改进的系统和方法。本发明的实施例允许终端(即终端节点)
预订推送服务,并且此后从推送服务接收内容,无需附加的或许多附加
的公共IP地址。本发明的实施例进一步允许网络节点建立和终端的网络
发起的数据会话,而不用排除否则例如由FW提供给包括该终端的移动网
络的防火墙和/或网关功能。因此,本发明实施例的系统和方法解决了现
有技术中的问题,并提供了额外的优点。
附图简要说明
上述是对本发明的概要说明,现在将参考附随附图,这些附图不必
按比例描画,其中:
图1是根据本发明一个实施例的通信系统的示意性框图,包括公共
网络和移动网络,其中始发节点和终端(terminating)节点直接或间接地
双向耦合到它们;
图2是根据本发明实施例的用作SIP客户的实体的示意框图;
图3是根据本发明实施例的用作SIP客户的移动站的示意框图;
图4A是更详细说明根据本发明一个实施例的推送内容给终端的方法
的控制流程图;
图4B是更详细说明根据本发明另一个实施例的推送内容给终端的方
法的控制流程图。
发明详细说明
下面参考附随附图详细说明本发明,其中附图内显示了本发明的优
选实施例。然而本发明可以不同形式体现,不应当被认为限制于在此说
明的实施例;相反,提供这些实施例从而该公开能够详尽和完整,并向
本领域技术人员充分表明本发明范围。相同数字指的是相同元件。
参考图1,提供了将获益于本发明的一种系统类型。本发明实施例
的系统和方法将主要结合移动通信应用进行说明。然而应当理解,本发
明实施例的系统和方法能结合多种其他应用进行使用,这些应用可以是
在移动通信工业之内和外的。
如图所示,系统10包括公共网络12,诸如类似互联网的公共互联
网协议(IP)网络。该公共网络包括多个网络节点,每个通常都包括诸
如服务器计算机、个人计算机、膝上型计算机等的处理元件。更具体的,
该公共网络可包括一个或多个网络节点,网络节点包括固定终端14,每
个终端都能在公共网络内或跨越公共网络通信。公共网络12的网络节点
还可包括诸如会话发起协议(SIP)代理的代理16。虽然没有显示,公
共网络的网络节点还可包括SIP注册器(registrar)。关于这点,注册器
可在SIP代理内实现,这是本领域技术人员公知的。正如能够理解的,
诸如SIP的呼叫模型提供了涉及多媒体会话的应用层信令协议(参见例
如IETF请求评议文件RFC 3261,名称为SIP:Session Initiation
Protocol,2002年6月,在此引用其全部而将其内容引入)。因此SIP代
理能接收并转发SIP信令消息,例如到和/或来自包括用作始发节点20
的固定终端的网络节点的SIP信令消息,正如在下面详细说明的。公共
网络还可包括一个或多个域名系统(DNS)服务器18。在这一点上,每
个网络节点通常具有唯一IP地址,该地址具有相关的通常更易于调用的
主机DNS名称。然后DNS服务器能将主机DNS名称转换成为相关IP地址,
从而网络业务可被路由到适当的网络节点。
除了公共网络12之外,系统10包括一个或多个专用网络24,例如
局域网络(LAN)。每个专用网络类似公共网络,能包括多个网络节点。
还是与公共网络12一样,每个专用网络的网络节点可包括一个或多个DNS
服务器26。和前面的类似,专用网络的DNS服务器能将主机DNS名称转
换成为相关IP地址,从而网络业务可被路由到适当的公共或网络节点。
专用网络还可包括一个或多个网络节点,这些节点包括移动终端32,每
个终端都能在专用网络内或跨越专用网络进行通信。终端32例如可包括
移动电话、便携式数字助理(PDA)、寻呼机、膝上型计算机、智能卡、
以及其它类型电子系统。
为促进终端32对专用网络的访问,专用网络24可包括一个或多个
无线接入点(AP)(未示出),每个都耦合到一个或多个终端。在这一点
上,AP可包括配置用于根据诸如例如射频(RF)、蓝牙(BT)、红外(IrDA)
或任意数目的不同有线和/或无线联网技术,包括LAN和/或WLAN技术的
技术与终端通信的接入点。还是与公共网络类似,专用网络可包括始发
节点20,将在下面详细说明该节点。如下所述,专用网络可包括终端节
点36,它能和始发节点通信。如下所述,专用网络的一个或多个终端能
用作始发节点或终端节点。
为促进公共网络12的网络节点和专用网络24的网络节点之间的通
信,每个专用网络可进一步包括相互连接公共网络和专用网络的网络地
址翻译器(NAT)。正如在背景部分所解释的,每个NAT能将来自公共网
络的公共IP地址转换成为相应专用网络的网络节点的专用IP地址,反
之亦然,从而用于公共网络和相应专用网络之间的通信。正如能够理解
的,NAT还能包括应用层网关(ALG)(未示出),它能转换嵌在例如应用
协议数据单元(PDU)内的IP地址。此外,NAT还包括用于相应专用网
络的防火墙和/或网关或与之相关联。如图所示,然后,将包括防火墙/
网关或与之相关联的NAT显示为NAT/FW28。
系统10还可包括一个或多个移动或蜂窝网络30。蜂窝网络可包括
多个不同移动网络中的一个或多个。在这一点上,蜂窝网络可包括第一
代(1G)、第二代(2G)、2.5G和/或第三代(3G)蜂窝网络中的任一个,
和/或能根据本发明实施例运行的蜂窝网络中的任一个。例如,每个蜂窝
网络可包括GSM(全球移动通信系统),IS-136(时分多址-TDMA),IS-95
(码分多址-CDMA),或EDGE(增强数据GSM环境)网络。可替换地,蜂
窝网络的一个或多个可包括GPRS(通用无线分组服务)或基于GPRS的
网络(例如通用移动通信系统-UMTS)。
和公共以及专用网络12、24类似,蜂窝网络30还包括一个或多个
网络节点。在这一点上,每个蜂窝网络的网络节点可以包括能在相应蜂
窝网络内和/或跨越该蜂窝网络通信的一个或多个移动终端32。如下所
述,移动终端的一个或多个能用作始发节点20,例如以和公共以及专用
网络的始发节点相同的方式。此外,还是如下所述,移动终端的一个或
多个能用作终端节点38,如上和下文中所述的,它能通过SIP代理16
根据SIP和始发节点通信。
在蜂窝网络30内,网络节点还能包括一个或多个网络信令支持节
点,诸如一个或多个SGSN(信令GPRS支持节点)38,以及一个或多个
诸如一个或多个GGSN(网关GPRS支持节点)40的网关支持节点。例如,
网络节点可包括一个或多个SGSN和一个或多个GGSN,如在3G合作项目
(3GPP)多个规范中描述的。正如本领域技术人员能够理解的,SGSN能
向和从移动终端32路由通信,并当终端参与和此种网络节点的通信会话
时,还能提供到其他网络节点的连接。另一方面,GGSN能互连蜂窝网络
和专用网络24。在这一点上,GGSN能执行传统的网关动作,正如已知的。
应当注意到虽然蜂窝网络可以包括SGSN和GGSN,但是蜂窝网络还可包
括用于其它类型蜂窝网络的类似运行的网络节点。
现在参考图2,它显示了根据本发明一个实施例,在公共网络12,
专用网络24或蜂窝网络30内能够用作网络节点(例如SIP代理16,始
发节点20,NAT/FW28,终端节点36,SGSN38,GGSN40等)的实体的框图。
虽然显示为独立的实体,但是在某些实施例中,一个或多个实体能支持
逻辑分离但共存在该实体内的一个或多个网络节点。例如,单个实体能
支持逻辑分离但共存的始发节点和SIP代理。同样,例如如上所述,单
个实体能支持逻辑分离但共存的NAT和防火墙/网关。
如图所示,能用作网络节点的实体通常可包括连接到存储器44的控
制器42、处理器等。控制器还可连接到至少一个接口46或其他用于发
射和/或接收数据、内容等的装置。存储器可包括易失和/或非易失存储
器,通常存储数据、内容等。例如,存储器通常存储软件应用、指令等,
用于控制器执行根据本发明实施例的和实体操作相关的步骤。同样例如,
存储器通常存储从网络节点传输的或由网络节点接收的内容。
图3显示了根据本发明实施例的能用作移动终端32因而也能用作始
发节点20或终端节点36的移动站的功能框图。应当理解,显示以及后
面说明的移动站仅仅是举例了能受益于本发明的一种类型移动站,因此
不应当将其用于限制本发明的范围。虽然显示了移动站的若干实施例并
在下文中作为例子说明,其它类型移动站,例如便携式数字助理(PDA)、
寻呼机、膝上型计算机以及其它类型语音和文本通信系统,能容易地采
用本发明。
移动站包括发射机48,接收机50,以及提供信号给发射机和接收机
并从它们接收信号的控制器52。这些信号包括根据所用蜂窝系统空中接
口标准的信令信息,以及用户语音和/或用户生成的数据。在这一点上,
移动站能用一种或多种空中接口标准、通信协议、调制类型、和接入类
型运行。更具体地,移动终端能根据多种1G,2G,2.5G和/或3G通信协
议等的任一种运行。例如,移动站能根据2G无线通信协议IS-136(TDMA),
GSM,和IS-95(CDMA)运行。同样,例如,移动站能根据2.5G无线通信协
议GPRS,增强型数据GSM环境(EDGE)等运行。某些窄带AMPS(NAMPS)
以及TACS的移动站也能受益于本发明的实施例,双模或更高模式的移动
站(例如数字/模拟或TDMA/CDMA/模拟电话)也应当可以受益于本发明
的实施例。
应当理解,控制器52包括实现移动站音频和逻辑功能所需的电路。
例如,控制器可包括数字信号处理器设备,微处理器设备,以及多个模
拟到数字转换器,数字到模拟转换器,以及其他支持电路。移动站的控
制和信号处理功能根据它们各自的能力在这些设备之间分配。因此控制
器还包括在调制和发射之前卷积编码以及交织消息和数据的功能。控制
器还可包括内部语音编码器(VC)52A,并可包括内部数据调制解调器(DM)
52B。此外,控制器还能包括运行一种或多种可能存储在存储器中的软件
应用的功能。
移动站还包括用户接口,该接口包含通用的耳机或扬声器54,振铃
器56,麦克风60,显示器62,以及用户输入接口,所有这些都耦合到
控制器52。允许移动站接收数据的用户输入接口可包括任意数目的允许
移动站接收数据的设备,例如键盘64,触摸屏(未示出)或其他输入设
备。在包括键盘的实施例中,键盘包括传统的数字(0-9)以及相关按键
(#,*),以及用于操作移动站的其他按键。
虽然没有显示,但是移动站还可进一步包括IrDA收发机或其他本地
数据传输设备,从而可以和其他设备共享和/或从其它设备获得数据,这
些设备例如是其他移动站、汽车导航系统、个人计算机、打印机、包括
条形码的打印材料等。还可根据多种不同技术提供数据共享,以及数据
的远程共享。例如,移动站可包括能和其他射频收发机共享数据和/或具
有射频识别(RFID)转发器(transponder)标签的RF收发机,正如本领域
技术人员已知的。此外,或可替换地,移动站可使用蓝牙特殊兴趣组开
发的BT无线技术来共享数据。进一步的,移动站能根据多种不同有线和
/或无线联网技术中的任一种共享数据,包括LAN和/或WLAN技术。
移动站还可包括存储器,例如用户身份模块(SIM)66,可更换用户
身份模块(R-UIM)等,该模块通常存储涉及移动用户的信息元素。除了
SIM,移动站还包括其他存储器。关于此点,移动站能包括易失性存储器
68以及其他非易失性存储器70,这些存储器可被嵌入和/或拆除。例如,
其他非易失性存储器可包括嵌入式或可拆除的多媒体存储卡(MMC)、索
尼公司制造的记忆棒、EEPROM、闪存、硬盘等。存储器可以存储移动站
用于实现移动站功能的任意数目的信息以及数据。例如,存储器可以存
储诸如国际移动设备标识(IMEI)代码,国际移动用户标识(IMSI)代
码,移动站综合服务数字网络(MSISDN)代码等能唯一识别移动站的标
识符。存储器还能存储诸如发送到始发节点20或从始发节点20接收的
内容。
正如在背景部分所提及的,允许始发节点20推送内容给诸如移动终
端的终端节点36的传统技术忽略了类似公共网络12(例如互联网)的
公共域的限制,其中导致了NAT/FW28的使用,从而将公共网络和相应专
用网络24互联。即,这种技术忽略了可用公共IP地址的限制。同样,
这种技术忽略了NAP/FW给相应专用网络提供防火墙和/或网关功能的能
力。因此,本发明实施例提供了一种推送内容给终端节点的改进的系统
和方法,其中终端节点驻留在专用或蜂窝(即移动网络)中。更具体的,
本发明的实施例提供了一种允许始发节点使用考虑公共域有限地址空间
的网络发起数据会话技术来推送内容给终端节点的系统和方法。此外,
该系统和方法能,但是无需,允许始发节点推送内容给终端节点,同时
维持对移动网络的防火墙和/或网关功能。如下所述,始发节点发起和包
括蜂窝网络30内的终端的终端节点的通信。然而应当理解,终端节点可
替换地可包括专用网络的网络节点,同时不背离本发明的精神和范围。
正如本领域技术人员公知的,SIP是能建立、修改以及终止多媒体
会话或呼叫的应用层控制协议。SIP是基于文本的,使用以UTF-8编码
吞吐量的ISO 10646。该消息的语法类似HTTP,除了SIP能使用用户数
据报协议(UDP)或传输控制协议(TCP)承载事务之外。SIP消息通常
可表征为请求或响应,它能遵循以下文献中的格式创建,该文献为互联
网工程任务组(IETF)请求评议文件RFC 822,名称是:Standard for the
Format of ARPA Internet Text Messages,1982年8月,在此通过引用
其全部来引入其内容。
通常,涉及SIP会话的实体包括用户代理(例如始发节点20,终端
节点36等),SIP代理16,注册器以及位置服务。用户代理可用作发起
SIP请求的客户(UAC)。用户代理还可用作当接收到SIP请求时联系用
户,并代表用户发回响应的服务器(UAS)。如上所述的,SIP代理包括
能同时用作客户和服务器的中间实体。关于这方面,SIP代理能在将SIP
请求转发给其他服务器之前解释并修改SIP请求。如所示的,注册器可
在SIP代理内实现,接受用户注册(例如注册(REGISTER)消息),并通
过位置服务使得该信息可用,也能在SIP代理内实现。然后位置服务包
括SIP代理用于获得关于终端节点可能位置的信息的元件。
SIP消息通常包括开始行,一个或多个头部字段,空行(回车换行-
CRLF)以及可选主体。通常,SIP消息的开始行指示该消息是请求(例
如邀请(INVITE)、ACK、选项(OPTIONS)、BYE、取消(CANCEL)、注册
(REGISTER)、参看(REFER)等)还是响应(例如100信息的
(Informational),200成功,300重定向,400客户错误,500服务器错
误,600全程失败等)。消息头部可包括多个头部,指示例如源(“From:”),
目的地(“To:”),呼叫标识符(“Call-ID:”),消息顺序(“Cseq:”),联
系(“Contact:”),事务路径(“Via:),长度(“Content-Length:”)以
及如果在消息中携带,还包括主体的内容(“Content-Type:”)。另一方
面,消息主体可包括任意数目的不同类型数据,对数据的解释通常依赖
于消息类型。通常,主体内容可包含在诸如会话描述协议(SDP)、文本
或可扩展标记语言(XML)脚本的特定格式之后的会话描述。关于这方面,
“Content-Type”头部字段给出消息主体的媒体类型。如果主体被编码,
这样的编码通常在“Content-Encoding”头部字段内指示,以及主体长
度通常在“Content-Length”头部字段内给出。
SIP寻址的实体可包括通过支持此种用户的SIP代理16访问的用户,
其中这些用户可用SIP统一资源定位符(URL)识别。通常,SIP URL可
在SIP消息内使用,以指示例如发起者(From),开始行内的当前目的地
(请求URL),以及SIP请求的最终接收者(To)。正如能够理解的,URL
可采取诸如userhost的形式,其中“user”通常识别用户(例如用户
名称,电话号码等),而“host”识别支持该用户的SIP代理(例如域名、
IP地址等)。关于这方面,SIP URL可被用于根据DNS服务器18的域名
到IP地址的转换来定位用户,特别是当URL包括相应SIP代理的域名时。
关于这方面,发起者能查询包括目的地地址的DNS服务器,该目的地地
址包括SIP代理的域名。
如上所述,系统10可包括始发节点20和终端节点36。通常,终端
节点能预订始发节点的推送服务,例如SIP推送服务,从而始发节点之
后能经支持终端节点的SIP代理16推送内容到终端节点。正如本领域技
术人员已知的,SIP代理能转发来自始发节点的SIP信令消息到终端节
点,反之亦然。然而,和传统SIP通信技术相比,当从始发节点来看终
端节点位于NAT/FW 28之后时,当始发节点期望发起和终端节点的SIP
通信会话时,SIP代理不能跨越NAT/FW识别终端节点。更具体的,例如,
当NAT/FW不再维护用于终端节点的翻译表输入项,或SIP代理不再维护
用于公共IP地址的注册以及由NAT/FW分配给终端节点的端口时,SIP
代理不能识别终端节点。
根据本发明的实施例,然后终端节点能命令SIP代理16代表终端节
点预订始发节点20的推送服务。然后始发节点能够提供推送服务给代表
终端节点的SIP代理。SIP代理进而又能使用网络发起的数据会话技术
与终端节点跨越NAT/FW28通信,以传送推送内容给终端节点。SIP代理
能使用多种不同的与终端节点的网络发起数据会话中的任意一种,借此
发起和终端节点的通信,从而SIP代理能发送推送内容给终端节点。例
如,SIP代理能使用根据第三代合作项目2(3GPP)规范3GPP2 S.P0090,
名称是:Network-initiated Data Session(NIDS)的网络发起数据会话
技术,其内容通过引用其全部而被引入。
在另一个例子中,SIP代理16能独立于公共和专用网络12,24发
送非基于IP的触发器给终端节点,借此命令终端节点向SIP代理重新注
册,例如跨越NAT/FW28。关于此,SIP代理能发送短消息服务(SMS)消
息,增强的消息服务(EMS)消息,多媒体消息服务(MMS)消息或无线
应用协议(WAP)推送触发器到终端节点。响应该触发器,终端节点能向
SIP代理重新注册,从而SIP代理之后能跨越NAT/FW和终端节点通信。
更具体的,响应触发器,终端节点可通过NAT/FW向SIP代理注册,从而
NAT/FW分配公共IP地址给终端节点,从而SIP代理能注册包括分配的
公共IP地址的终端节点。如上所述,SIP代理能根据SIP实现注册器,
从而执行注册器功能,例如注册终端节点。这样,如在此所述的,应当
理解SIP代理能包括实现相应注册器以便例如注册和/或重新注册终端节
点的SIP代理。
为允许SIP代理16发送非基于IP的触发器给终端节点36,SIP代
理能独立于公共和专用网络12,24的IP通信信道,并因此在独立于
NAT/FW28的通信信道上识别终端节点。例如,SIP代理能识别MSISDN或
和终端节点相关的其他全局标识符。然后根据MSISDN,SIP代理能发送
SMS,EMS,MMS或WAP推送触发器给终端节点。关于此,SIP代理能以多
种不同方式中的任一种识别终端节点的非基于IP的标识符。在一个有利
的实施例中,终端节点在SIP代理从始发节点20接收用于终端节点的推
送内容之前向SIP代理注册。因为终端节点向SIP代理注册,终端节点
能在IP通信信道之外发送终端节点的标识符(例如MSISDN)给SIP代
理。关于这种网络发起的数据会话技术的更多信息,参见2004年3月10
日申请的美国专利申请10/797765,名称是:System and Method for
Establishing a Session Initiation Protocol Communication Session
with a Mobile Terminal,该内容在此通过引用其全部而被引入。作为
另一种网络发起的数据会话技术的例子,参见2004年3月10日申请的
美国专利申请10/797529,名称是:System and Method for Establishing
an Internet Protocol Connection wi th a Terminating Network Node,
该内容在此通过引用其全部也被引入。
现在参考图4A和4B,它们显示了根据本发明实施例的推送内容到
终端节点36的方法的例子。为了显示在图4A和4B中的例子的目的,考
虑具有专用IP地址,能由用户以及主机域名识别的终端节点。同样,考
虑具有MSISDN的终端节点。此外,例如考虑每个都具有公共IP地址的
始发节点20和SIP代理16。此外,考虑能被分配IP地址池中一个或多
个IP地址的NAT/FW28。
如图4A所示,终端节点36能通过经相应NAT/FW28发送SIP参看
(REFER)消息给SIP代理命令SIP代理16代表终端节点预订始发节点20
的推送服务。正如本领域技术人员能够理解的,SIP参看消息可被终端
节点用于请求SIP代理参看在REFER消息中识别的资源(即始发节点的
推送服务),并允许通知终端节点该参看请求的结果。关于SIP参看技术
的更多信息可参见IETF请求评议文献RFC 3515,名称是:The Session
Initiation Protocol(SIP)Refer Method,2003年4月,该内容在此通
过引用其全部也被引入。
SIP参看消息可包括任意数目的信息,诸如上面所描述的。例如,SIP
参看消息的头部字段可包括识别终端节点36专用IP地址的源。头部字
段还能包括例如识别SIP代理16公共IP地址的目的地,以及识别终端
节点用户和域名的联系。此外,头部字段能在参看头部字段(”Refer-To”)
中识别始发节点20,该参看头部字段还能识别始发节点的推送服务,并
命令SIP代理预订(即,方法=预订(SUBSCRIBE))推送服务。
响应SIP参看消息,NAT/FW28能创建用于终端节点的将终端节点专
用IP地址和公共IP地址相关联的新的转换表项。然而,如果NAT/FW当
前具有用于分配有公共IP地址的终端节点的转换表项,NAT/FW能够查
询用于终端节点的转换表项。除了创建新的转换表项之外,为允许中间
节点和NAT/FW之间的通信,如果期望,NAT/FW能添加允许来自NAT/FW
的通信以及到SIP代理16的通信的新防火墙(FW)过滤器。虽然在此没
有描述,根据本发明实施例发送和/或接收的消息还可以包括开放的通信
端口。在这种情形中,NAT/FW能创建进一步包括相同或另一个通信端口
的转换表项,并进一步以考虑这些通信端口的方式运行。
在创建了新的转换表项之后,或查询现有转换表项之后,NAT/FW28
可将SIP参看消息头部字段内的终端节点36的专用IP地址转换成为由
NAT/FW分配给终端节点的公共IP地址。同样,根据NAT/FW的ALG的操
作,可以翻译识别终端节点用户和域名的联系,以识别分配给该终端节
点的公共IP地址。然后,在转换了SIP参看消息的地址之后,NAT/即
能传送转换后的SIP参看消息给SIP代理16。
当接收到转换后的SIP参看消息时,SIP代理16能通过经NAT/FW28
返回诸如202(已接受(ACCEPTED))消息的接受给终端节点36来接受该
SIP参看消息。关于此,202(已接受)消息可通过由NAT/FW分配给终
端节点的公共IP地址识别终端节点。当接收到202(已接受)消息,然
后,NAT/FW能将分配的公共IP地址转换成为终端节点的专用IP地址。
NAT/FW然后转发202(已接受)消息给终端节点。
同样,因为SIP参看消息请求SIP代理16代表终端节点36输入预
订,SIP代理能创建用于终端节点参看请求的SIP预订。在创建预订之
后,SIP代理然后能返回SIP通知(NOTIFY)消息(即通知(参看))给终端
节点,借此通知终端节点SIP代理已创建了用于终端节点参看请求的预
订。正如之前一样,通过将SIP通知消息定址到分配给终端节点的公共
IP地址,SIP代理能经NAT/FW28发送SIP通知消息给终端节点。NAT/FW
进而又能将分配给终端节点的公共IP地址转换成为终端节点的专用IP
地址,并将SIP通知消息转发给终端节点。然后,响应SIP通知消息,
终端节点能经NAT/FW发送SIP通知的确认,诸如200(OK)消息给SIP
代理,NAT/FW能将终端节点的专用IP地址转换成为由NAT/FW分配给终
端节点的公共IP地址。
同样当接收到SIP参看消息时,SIP代理16能根据SIP参看消息通
过代表终端节点36预订始发节点20的推送服务来处理SIP参看消息。
在这一点上,SIP代理能发送SIP预订(SUBSCRIBE)消息给始发节点,
借此预订始发节点的推送服务。SIP预订消息能包括任意的多种不同信
息,但根据SIP参看消息,识别在SIP参看消息中标识的推送服务。此
外,因为SIP代理代表终端节点预订推送服务,SIP预订消息通常识别SIP
代理,与终端节点相对。
当接收到SIP预订消息时,始发节点20能通过诸如返回200(OK)
消息给SIP代理16来确认SIP预订消息的接收。此外,始发节点会创建
用于SIP代理的推送服务预订。在创建预订之后,始发节点返回SIP通
知消息(即通知(预订))给SIP代理,借此通知SIP代理始发节点已经
创建了用于SIP代理的始发节点推送服务预订。当接收到SIP通知消息
时,SIP代理根据参看预订能通知终端节点36成功预订。关于此,SIP
代理能经NAT/FW28发送SIP通知消息(即通知(参看))给终端节点,正
如之前一样,是通过将该SIP通知消息定址到分配给终端节点的公共IP
地址来进行的。正如之前的,NAT/FW能将分配给终端节点的公共IP地
址转换成为终端节点的专用IP地址。此外,终端节点能经NAT/FW发送
200(OK)消息给SIP代理。
在SIP代理16成功代表终端节点36预订始发节点20的推送服务之
后的一个或多个时间点,终端节点能经SIP代理并根据推送服务从始发
节点接收推送内容。关于此,根据推送服务预订,始发节点能发送SIP
通知消息(即通知(包括内容(INC.COTNTENT))给SIP代理,并包括推送
内容。正如之前一样,当接收到SIP通知消息时,SIP代理能返回200(OK)
消息给始发节点。同样,当接收到推送内容时,SIP代理能根据SIP代
理为终端节点输入的参看预订经NAT/FW28转发推送内容给终端节点36。
然而在不同情形中,诸如在“使用期限(time-to-live)”时间周期
之后,NAT/FW28可能会删除用于终端节点36的翻译表项。此外或可替
换地,例如,SIP代理16可能会停止维护终端节点的注册项,包括由NAT/FW
分配给终端节点的公共IP地址。此外,终端节点会从SIP代理撤销注册,
此后进入“空闲”操作状态。在这种情形中,正如能够理解的,SIP代
理不能跨越NAT/FW识别终端节点,从而不能借此经NAT/FW转发推送内
容给终端节点。
根据本发明的实施例,然而,当接收到推送内容时,SIP代理16能
缓存来自始发节点20的推送内容,例如缓存到SIP代理的存储器中(例
如存储器44)。此后,SIP代理能建立和终端节点36的网络发起的数据
会话。例如,SIP代理16能根据终端节点的非基于IP的标识符,例如
MSISDN,发送非基于IP的触发器给终端节点。该非基于IP的触发器进
而又能命令终端节点向SIP代理重新注册。例如,SIP代理能跨越蜂窝
网络30,独立于公共和专用网络12,24并因此独立于NAT/FW发送SMS
消息、EMS消息、MMS消息或WAP推送触发器给终端节点。
响应SIP代理16建立与终端节点36的网络发起的数据会话,终端
节点能向SIP代理重新注册,从而NAT/FW28能再次分配公共IP地址和
通信端口给终端节点,并且SIP代理能更新自己的终端节点注册项。更
具体的,例如,一旦终端节点接收到触发器,终端节点能经各自NAT/FW
发送SIP注册(REGISTER)消息给SIP代理。响应S IP注册消息,NAT/Fw
可以再次创建用于终端节点的新的转换表项,将终端节点的专用IP地址
和公共IP地址相关联。
在创建新的转换表项之后,NAT/FW28能将终端节点36在SIP注册
消息内的专用IP地址转换成为由NAT/FW分配给终端节点的公共IP地
址。然后,NAT/FW能传送转换后的SIP注册消息给SIP代理16用于注
册。当接收到转换后的注册消息,SIP代理能更新用于终端节点的先前
的注册项。然后,SIP代理能确认注册项的接收和创建/更新。正如之前
一样,例如,SIP代理能经NAT/FW28发送200(OK)消息给终端节点。
在重新注册终端节点36之后,SIP代理16能经NAT/FW28转发推送
内容给终端节点,例如在SIP消息内。对于发送此种消息的技术的更多
信息,参见IETF请求评议文件RFC3428,名称是:Session Initiation
Frotocol(SIP)Extension for Instant Messaging,2002年12月,其
内容通过引用其全部而被引入。关于此,从SIP代理,NAT/FW能根据分
配的终端节点的公共IP地址(被识别为推送内容的目的地),接收推送
内容并查询用于终端节点的转换表项。然后NAT/FW将推送内容目的地从
分配的公共IP地址转换成为终端节点的专用IP地址。在转换了推送内
容目的地之后,NAT/FW能根据终端节点的专用IP地址将推送内容转发
到终端节点。然后,虽然没有显示,但终端节点能例如通过经NAT/FW发
送200(OK)消息给SIP代理来确认推送内容的接收。
代替SIP代理16在缓存器中存储推送内容,以及转发推送内容给终
端节点36,终端节点能如此配置,从而在向SIP代理重新注册之后,终
端节点预订推送服务,借此接收推送内容。关于此,参考图4B显示的根
据本发明另一个实施例的推送内容到终端节点的方法的一部分。如图4B
所示,正如之前一样,在SIP代理成功代表终端节点预订始发节点20的
推送服务之后,始发节点能发送包括根据推送服务的推送内容的SIP通
知消息(即通知(包括内容))给SIP代理。正如之前一样,响应SIP通
知消息,SIP代理能返回200(OK)消息给始发节点。此后,SIP代理可
以建立与终端节点的网络发起的数据会话,例如通过发送非基于IP的触
发器给终端节点来进行。然后,和之前一样,终端节点能够经NAT/FW28
向SIP代理重新注册,从而NAT/FW能再次分配公共IP地址以及通信端
口给终端节点,SIP代理能更新自身的用于终端节点的注册项。
在向SIP代理16重新注册之后,终端节点36能预订始发节点20的
推送服务,从而终端节点能从始发节点接收推送服务,而非如图4A所示
的从SIP代理的缓存器接收推送服务。关于此,通过配置终端节点,命
令SIP代理代表终端节点预订推送服务,然后在SIP代理接收推送内容
之后预订推送服务,终端节点仅需在始发节点根据推送服务发送推送内
容的时间周期期间才占用网络资源。
如图所示,终端节点36能通过经NAT/FW28和SIP代理16发送SIP
预订消息给始发节点20来预订推送服务,如图4B所示。更具体的,终
端节点能如之前一样发送识别始发节点推送服务以及识别终端节点,通
常是识别终端节点的专用IP地址,的SIP预订消息。NAT/FW然后能接
收SIP预订消息,查询用于终端节点的转换表项,此后将SIP预订消息
内的终端节点的专用IP地址转换成为由NAT/FW分配给终端节点的公共
IP地址。在将终端节点专用IP地址转换成为分配的公共IP地址之后,
NAT/FW28能转发SIP预订消息给SIP代理。SIP代理进而又能转发SIP
预订消息给始发节点。
当接收到SIP预订消息时,如之前一样,始发节点20例如通过经SIP
代理16和NAT/FW28返回200(OK)消息给终端节点36来确认SIP预订
消息的接收,NAT/FW28将终端节点的专用IP地址转换成为分配给终端
节点的公共IP地址。此外,始发节点能为终端节点创建推送服务预订。
在为终端节点创建推送服务预订之后,始发节点能经SIP代理和NAT/FW
发送SIP通知消息给终端节点。如之前一样,SIP通知消息能包括根据
推送服务预订的推送内容。关于此,SIP通知消息能包括由SIP代理在SIP
代理建立与终端节点的网络发起数据服务之前接收的相同的SIP通知消
息,虽然该SIP通知消息现在经SIP代理和将终端节点识别为消息目的
地的NAT/FW由终端节点接收。当接收到包括推送内容的SIP通知消息时,
终端节点然后能经NAT/FW和SIP代理返回200(OK)消息给始发节点。
如在此所述的,从始发节点20来看,终端节点36位于NAT/FW28之
后。然而应当理解,终端节点可位于防火墙/网关之后,而没有NAT在终
端节点和始发节点之间。在此情形中,本发明实施例能允许在其中否则
该通信会受FW限制的情形中,始发节点发起和终端节点的通信,借此维
持对包括该终端的网络的防火墙和/或网关功能。
例如,正如本领域技术人员能理解的,包括用于专用/公共地址翻译
的NAT的系统10通常是根据IP版本4(IPv4)通信的网络。然而应当
理解,该系统或系统一部分能可替换地被配置成根据IP版本6(IPv6)
通信,该版本支持比IPv4更长的IP地址。关于此,因为IPv6支持比IPv4
更长的IP地址,专用网络的一个或多个可无需NAT来执行地址/端口翻
译。在此情形中,系统可以不包括NAT或NAT/FW,而是包括对相关专用
网络能用作安全机制的防火墙/网关(FW),例如以和上述相同的方式。
系统然后能如上运行,虽然终端节点能具有相关的公共IPv6地址。这样,
始发节点和终端节点之间的通信源或通信目的地能够识别终端节点公共
的IPv6地址,并且无需从公共IPv4地址到专用IPv4地址的翻译来进行
传递,反之亦然,否则它们识别分配的由NAT翻译成为专用IPv4地址的
终端节点的公共IPv4地址。
受益于上述相关说明以及相关附图给出的教导,本发明所属技术领
域的技术人员能够想到本发明的多种修改以及其他实施例。因此,应当
理解,本发明不限于公开的特定实施例,修改和其他实施例都预定被包
括在附随权利要求的范围内。虽然在此采用特定术语,但是在一般以及
描述性的意义上使用它们,而非限制目的。