终端设备、系统、连接管理服务器及控制终端设备的方法

文档序号:7744188阅读:114来源:国知局
专利名称:终端设备、系统、连接管理服务器及控制终端设备的方法
技术领域
本发明涉及一种终端设备,该终端设备被配置成与另一终端设备进行通信。
背景技术
已经广泛公知了 NAT(网络地址转换)路由器。该NAT路由器被插入在因特网 和本地网络之间。NAT路由器执行用于在全局地址(全局IP地址和端口号)和本地地址 (本地IP地址和端口号)之间转换地址的处理。例如,为了执行在属于第一本地网络的第 一终端设备和属于第二本地网络的第二终端设备之间的数据通信,通常使用第一终端设备 的全局地址和第二终端设备的全局地址。在该情况下,指配给第一本地网络的第一 NAT路 由器对在第一终端设备和因特网(即,第二终端设备)之间通信的数据的地址进行转换。 指配给第二本地网络的第二 NAT路由器也对在第二终端设备和因特网(即,第一终端设 备)之间通信的数据的地址进行转换。例如,JP-A-2004-304711、JP-A-2006-140903以及 JP-A-2008-16932公开了在终端设备对之间的数据通信。

发明内容
随着属于本地网络的终端设备的数目的增加,NAT路由器上的处理负载变得更大。 本专利说明书提供了使得能够减少NAT路由器上的处理负载的技术。根据本发明的第一方面,提供了一种第二终端设备,该第二终端设备用在包括连 接管理服务器、第一终端设备和该第二终端设备的系统中,所述第二终端设备包括本地地 址获得单元,该本地地址获得单元被配置成,如果第一终端设备的第一全局IP地址与第二 终端设备的第二全局IP地址匹配,则从连接管理服务器获得第一终端设备的第一本地IP 地址和第一认证信息,在所述连接管理服务中登记了第一本地IP地址和第一认证信息;确 定单元,该确定单元被配置成,通过使用所获得的第一认证信息来确定第二终端设备通过 使用第一本地IP地址能够与之进行通信的第一特定终端设备是否是第一终端设备;以及 目标数据通信单元,该目标数据通信单元被配置成,如果确定单元确定了第一特定终端设 备是第一终端设备,则通过使用第一本地IP地址来与第一终端设备进行第一数据的通信。根据本发明的第二方面,提供了一种系统,该系统包括连接管理服务器、第一终端 设备以及根据第一方面的第二终端设备。根据本发明的第三方面,提供了一种连接管理服务器,该连接管理服务器用在包 括该连接管理服务器、第一终端设备和第二终端设备的系统中,所述连接管理服务器包括 服务器侧存储控制单元,该服务器侧存储控制单元被配置成将第一终端设备的第一全局IP 地址、第一本地IP地址和第一认证信息彼此关联地保持在服务器侧存储单元中;服务器侧接收单元,该服务器侧接收单元被配置成接收连接请求,该连接请求由第二终端设备发射 到作为目的地的第一终端设备,并且包括第二终端设备的第二全局IP地址;服务器侧确定 单元,该服务器侧确定单元被配置成确定保持在服务器侧存储单元中的第一终端设备的第 一全局IP地址是否与包括在连接请求中的第二终端设备的第二全局IP地址匹配;以及服 务器侧发射单元,该服务器侧发射单元被配置成,如果服务器侧确定单元确定了第一全局 IP地址与第二全局IP地址匹配,则将保持在服务器侧存储单元中的第一终端设备的第一 本地IP地址和第一认证信息发射到第二终端设备。根据本发 明的第四方面,提供了一种第二终端设备,该第二终端设备用在包括连 接管理服务器、第一终端设备和该第二终端设备的系统中,所述第二终端设备包括本地地 址获得单元,该本地地址获得单元被配置成,从连接管理服务器获得第一本地IP地址,在 该连接管理服务器中登记了第一终端设备的第一本地IP地址;第一目标数据通信单元,该 第一目标数据通信单元被配置成,如果第一终端设备的第一全局IP地址与第二终端设备 的第二全局IP地址匹配,则通过使用所获得的第一本地IP地址来与第一终端设备进行第 一数据的通信;以及第二目标数据通信单元,该第二目标数据通信单元被配置成,如果第一 终端设备的第一全局IP地址不与第二终端设备的第二全局IP地址匹配,则通过使用第一 终端设备的第一全局IP地址来与第一终端设备进行第二数据的通信。


图1示出了根据本发明的实施例的电话网络系统;图2示出了根据本发明的实施例的SIP服务器;图3示出了根据本发明的实施例的第一终端设备;图4示出了根据本发明的实施例的第二终端设备;图5示出了用于将信息登记在SIP服务器中的处理的序列图;图6示出了用于通过使用本地地址来执行通信的处理的序列图;图7示出了用于通过使用本地地址来再次执行通信的处理的序列图;图8示出了 SIP服务器的邀请接收处理的流程图;图9示出了终端设备的邀请传输处理的流程图;图10示出了续图9的流程图;图11示出了续图9的流程图;以及图12示出了终端的邀请接收处理的流程图。
具体实施例方式终端设备对中的一个的全局IP地址可以匹配另一个终端设备的全局IP地址。在 该情况下,该终端设备对可能将属于同一本地网络。属于同一网络的终端设备对能够通过 使用全局地址来执行目标数据(换言之,要发射的数据)的数据通信,并且还能够通过使用 本地地址来执行数据通信。在前一种情况下,NAT路由器必须执行地址转换处理。同时,在 后一种情况下,没有要求进行地址转换处理。因此,可以在不涉及NAT路由器的情况下发射 目标数据。在本实施例中,当终端设备对属于同一本地网络时,可以通过在不涉及NAT路由 器的情况下实现目标数据传输来减少NAT路由器上的处理负载。
结合实施例描述的技术的一个涉及第二终端设备,该第二终端设备用在包括连接 管理服务器、第一终端设备和该第二终端设备的系统中。第二终端设备包括本地地址获得 单元、确定单元、以及目标数据通信单元。如果第一终端设备的第一全局IP地址匹配第二 终端设备的第二全局IP地址,则本地地址获得单元从连接管理服务器获得第一终端设备 的第一本地IP地址和第一认证信息,在该连接管理服务器中登记了第一本地IP地址和第 一认证信息。可以由第二终端设备或者由另一设备(例如,连接管理服务器)来确定是否 使第一全局IP地址和第二全局IP地址匹配。通过使用已经获得的第一认证信息,确定单元确定第二终端设备能够通过使用第 一本地IP地址来与之通信的第一特定终端设备是否是目标第一终端设备。如果确定单元 确定了第一特定终端设备是目标第一终端设备,则目标数据通信单元被配置成,通过使用 第一本地IP地址来与第一终端设备进行目标第一数据的通信。如这里所使用的,术语“通 信”可以包 括接收和/或发射操作。短语“通过使用第一本地IP地址来与第一终端设备进 行目标第一数据的通信”还能够被转换成另一短语“通过使用第一本地IP地址来在第一终 端设备和第二终端设备之间建立通信会话”。短语“建立通信会话”还能够被转换成另一短 语“进行要求进行目标数据的通信(发射和/或接收)的至少一个命令的通信(发射和/ 或接收)”。如果第一终端设备的第一全局IP地址匹配第二终端设备的第二全局IP地址,则 第二终端设备通过上述配置来从连接管理服务器获得第一终端设备的第一本地IP地址和 第一认证信息。即使第二终端设备通过使用已经获得的第一本地IP地址来执行通信,与目 标第一终端设备的通信也可能失败。例如,尽管第一本地IP地址在过去被指配给第一终 端设备并且被登记在连接管理服务中,但是该第一终端设备当前可能被指配了另一本地IP 地址。根据这样的可能性,第二终端设备通过使用第一认证信息来确定是否确实能够通过 使用第一本地IP地址来与第一终端设备进行通信。如果获得了肯定的确定结果,则第二终 端设备通过使用第一本地IP地址来与第一终端设备进行第一数据的通信。当第一终端设 备和第二终端设备属于同一本地网络时,该技术使得第二终端设备能够在不涉及NAT路由 器的情况下与第一终端设备进行目标数据(第一数据)的通信。因此,能够减少NAT路由 器上的处理负载。第二终端设备可以进一步包括全局地址获得单元,该全局地址获得单元被配置 成获得第一终端设备的第一全局IP地址和端口号的集合。在该情况下,如果确定单元确 定了第一特定终端设备不是目标第一终端设备,则目标数据通信单元通过使用第一全局IP 地址和端口号的集合来与第一终端设备进行第二数据的通信。因此,当无法通过使用第一 本地IP地址来与第一终端设备执行通信时,该配置使得能够通过使用第一终端设备的第 一全局IP地址和端口号的集合来与第一终端设备进行通信。第二终端设备可以进一步包括第一质询数据通信单元,该第一质询数据通信单 元被配置成,将第一质询数据发射到第一特定终端设备,并且接收响应于第一质询数据的 第一响应数据。通过加密第一质询数据来生成该第一响应数据,并且由第一特定终端设备 来发射该第一响应数据。第一认证信息可以包括第一终端设备的第一公共密钥。在该情况 下,确定单元通过第一公共密钥来解密第一响应数据,从而生成第一解密数据。如果第一解 密数据匹配第一质询数据,则确定单元确定该特定第一终端设备是目标第一终端设备。因此,该配置使得能够可靠地确定特定第一终端设备是否是目标第一终端设备。 如果第一质询数据通信单元没有接收到第一响应数据,则确定单元可以确定该特 定第一终端设备不是目标第一终端设备。第二终端设备可以进一步包括存储控制单元,该存储控制单元被配置成在完成 第一数据的通信之后将第一本地IP地址保持在存储单元中。短语“在完成第一数据的通 信之后将第一本地IP地址保持在存储单元中”是指,使存储单元至少在完成第一数据的通 信之后的时段中保持第一本地IP地址。因此,该短语可以意指,在从完成第一数据通信之 前的时段到完成数据通信之后的时段期间可以持续地保持第一本地IP地址。该短语还能 够被转换成另一短语“在完成第一数据的通信之后紧接着使存储单元保持第一本地IP地 址”。短语“在完成第一数据的通信之后”可以被转换成另一短语“在断开用于进行第一数 据的通信的通信会话之后”。当在完成第一数据的通信之后应当与第一终端设备进行第三 数据的通信时,目标数据通信单元可以通过再次使用保持在存储单元中的第一本地IP地 址来与第一终端设备进行第三数据的通信。该配置使得第二终端设备能够在不涉及NAT路 由器的情况下与第一终端设备进行目标数据(第三数据)的通信。例如,存储控制单元可 以保持第一本地IP地址,直到在完成第一数据的通信之后经过了预定时段,或者直到在完 成第一数据的通信之后发起了与除了第一终端设备之外的终端设备的另一数据通信。例如,在完成第一数据的通信之后,第一终端设备可以被指配代替第一本地IP地 址的另一本地IP地址。根据这样的可能性,还可以采用下述配置。特定地,存储控制单元可 以进一步将第一认证信息保持在存储单元中。当在完成第一数据的通信之后应当执行与第 一终端设备的第三数据的通信时,确定单元可以通过使用保持在存储单元中的第一认证信 息来确定第二终端设备能够通过使用保持在存储单元中的第一本地IP地址来与之进行通 信的特定第二终端设备是否是目标第一终端设备。如果确定单元确定了特定的第二终端设 备是目标第一终端设备,则目标数据通信单元可以通过再次使用保持在存储单元中的第一 本地IP地址来与第一终端设备进行第三数据的通信。该配置使得在应当进行第三数据的 通信时,第二终端设备能够通过利用第一认证信息来确定是否确实能够通过使用第一本地 IP地址来执行与第一终端设备的通信。如果获得了肯定的确定结果,则能够在不涉及NAT 路由器的情况下在第一终端设备和第二终端设备之间建立第三数据的通信。存储控制单元可以将第一本地IP地址持续地保持在存储单元中达预定的时间 段。例如,存储控制单元可以在经过了预定的时段之后删除第一本地IP地址。当应当与第 一终端设备进行第三数据的通信时,如果第一本地IP地址被保持在存储单元中,则目标数 据通信单元可以通过再次使用保持在存储单元中的第一本地IP地址来与第一终端设备进 行第三数据的通信。可以存在下述情况,在该情况中,在完成第一数据的通信之后,响应于来自第一终 端设备的请求,应当在第一终端设备和第二终端设备之间再次执行数据通信。即使在该情 况下,只要通过使用本地IP地址来在第一终端设备和第二终端设备之间执行通信,就能够 进一步减少NAT路由器上的处理负载。为了实现该操作,终端设备可以进一步包括下述配 置。特定地,第二终端设备可以进一步包括公共密钥发射单元和第二质询数据通信单元。 如果确定单元确定了特定第一终端设备是目标第一终端设备,则公共密钥发射单元可以将 第二终端设备的第二公共密钥发射到第一终端设备。第二质询数据通信单元可以被配置成接收由第一终端设备发射到作为目的地的第二终端设备的第二本地IP地址的第二质 询数据;使用第二终端设备的秘密密钥来加密第二质询数据,以便于生成第二响应数据; 以及将第二响应数据发射到第一终端设备。如果第二解密数据匹配第二质询数据,则目标 数据通信单元可以通过使用第二本地IP地址来与第一终端设备进行第四数据的通信。该 第二解密数据是第一终端设备通过使用第二公共密钥来解密第二响应数据所生成的数据。 该配置使得第一终端设备能够通过使用第二公共密钥来确定当应当进行第四数据的通信 时是否确实能够通过使用第二本地IP地址来与第二终端设备进行通信。如果获得了肯定 的确定结果,则能够在不涉及NAT路由器的情况下在第一终端设备和第二终端设备之间进 行第四数据的通信。包括 连接管理服务器、第一终端设备以及第二终端设备的系统也是新颖的和实用 的。用于实现第二终端设备控制方法的计算机程序也是新颖的和实用的。连接管理服务器也是新颖的和实用的。能够如下表达连接管理服务器。连接管理 服务器包括服务器侧存储控制单元、服务器侧接收单元、服务器侧确定单元、以及服务器 侧发射单元。服务器侧存储控制单元被配置成,将第一终端设备的第一全局IP地址、第一 本地IP地址、以及第一认证信息彼此关联地保持在服务器侧存储单元中。服务器侧接收单 元接收连接请求,该连接请求由第二终端设备发射到作为目的地的第一终端设备,并且包 括第二终端设备的第二全局IP地址。服务器侧确定单元被配置成,确定保持在服务器侧存 储单元中的第一终端设备的第一全局IP地址是否匹配包括在连接请求中的第二终端设备 的第二全局IP地址。如果服务器侧确定单元确定了第一全局IP地址匹配第二全局IP地 址,则服务器侧发射单元将保持在服务器侧存储单元中的第一终端设备的第一本地IP地 址和第一认证信息发射到第二终端设备。使用连接管理服务器使得能够实现该系统。服务器侧存储控制单元可以提前将第二终端设备的第二全局IP地址保持在服务 器侧存储单元中。在该情况下,包括在从第二终端设备发射的连接请求中的第二终端设备 的第二全局IP地址应当匹配保持在服务器侧存储单元中的第二终端设备的第二全局IP地 址。因此,服务器侧确定单元可以确定第一终端设备的第一全局IP地址是否匹配保持在服 务器侧存储单元中的第二终端设备的第二全局IP地址。即使在该情况下,该确定也基本上 等同于“确定保持在服务器侧存储单元中的第一终端设备的第一全局IP地址是否匹配包 括在连接请求中的第二终端设备的第二全局IP地址”。连接管理服务器可以进一步包括服务器侧传送单元,该服务器侧传送单元被配 置成,如果服务器侧确定单元确定了第一全局IP地址不匹配第二全局IP地址,则将连接请 求传送到第一终端设备。该配置使得第一终端设备和第二终端设备能够通过使用全局IP 地址来进行目标数据的通信。结合本说明书描述的技术还可以被表达为下述的第二终端设备。该第二终端设备 具有这样的技术特征使得当第一终端设备和第二终端设备属于同一本地网络时,在不涉及 NAT路由器的情况下来进行目标数据的通信。第二终端设备包括本地地址获得单元、第一 目标数据通信单元以及第二目标数据通信单元。本地地址获得单元被配置成,从其中登记 了第一终端设备的第一本地IP地址的连接管理服务器获得第一本地IP地址。如果第一终 端设备的第一全局IP地址匹配第二终端设备的第二全局IP地址,则第一目标数据通信单 元通过使用已经获得的第一本地IP地址来与第一终端设备进行目标第一数据的通信。如果第一终端设备的第一全局IP地址不匹配第二终端设备的第二全局IP地址,则第二目标 数据通信单元通过使用第一终端设备的第一全局IP地址来与第一终端设备进行第二数据 的通信。用于实现第二终端设备的控制方法和计算机程序也是新颖的和实用的。在下文中提到了结合以下提供的实施例描述的其它技术。(1)如果第一终端设备的第一全局IP地址不匹配第二终端设备的第二全局IP地 址,则目标数据通信单元能够通过使用第一终端设备的第一全局IP地址和端口号的集合 来与第一终端设备进行通信。(2)如果确定单元确定了第二特定终端设备不是目标第一终端设备,则目标数据 通信单元可以通过使用第一终端设备的第一全局IP地址和端口号的集合来与第一终端设 备进行第三数据的通信。
(3)如果当应当与第一终端设备进行第三数据的通信时,第一本地IP地址没有被 保持在存储单元中,则目标数据通信单元可以通过使用第一终端设备的第一全局IP地址 和端口号的集合来与第一终端设备进行第三数据的通信。(4)服务器侧存储控制单元可以将多个终端设备的每一个的标识信息(例如, SIPURI)、全局IP地址、本地IP地址以及认证信息保持在服务器侧存储单元中。如果接收 到包括源的全局IP地址和关于目的地的标识信息的连接请求,则服务器侧确定单元可以 确定包括在连接请求中的源的全局IP地址是否匹配与包括在连接请求中的关于目的地的 标识信息相关联的全局IP地址。(系统配置)现在通过参考附图来描述实施例。如图1中所示,电话网络系统2具有因特网4、 SIP (会话发起协议)服务器10、STUN(通过NAT的UDP简单穿越)服务器40、多个本地网 络50和150等等。SIP服务器10、STUN服务器40、多个本地网络50和150等被连接到因 特网4。(SIP服务器10的配置)SIP服务器10包括控制单元12、网络接口 14、程序存储器区域16、以及登记数据 存储器区域18。控制单元12根据存储在程序存储器区域16中的程序来执行处理。将网络 接口 14连接到因特网4。程序存储器区域16存储要由控制单元12执行的程序。程序存储 器区域16还可以存储从程序存储介质安装的程序或者从因特网4下载的程序等等。登记数据存储器区域18存储登记数据20和22。登记数据20是关于第一终端设 备60的数据,并且登记数据22是关于第二终端设备100的数据。每一个登记数据20和22 的集合都包括彼此关联的SIPURI30和全局IP+端口 32。SIPURI 30是指配给利用SIP的 每个终端设备的唯一的URI。在本实施例中,第一终端设备60被指配了 SIPURI "sip:tli server, com”。第二终端设备100也被指配了如第一终端设备60的SIPURI。全局IP+端口 32指定全局IP地址和全局端口号的集合。例如,第一终端设备60 被指配了全局IP地址Gl和全局端口号GPl的集合。在下面的描述中全局IP地址Gl和全 局端口号的集合也被称为“全局地址”。尽管稍后详细地描述,但是第二终端设备100属于 与第一终端设备60所属于的相同的本地网络50。因此第二终端设备100的全局IP地址 Gl与第一终端设备60的全局IP地址Gl相同。然而,第二终端设备100的全局端口号GP2 不同于第一终端设备60的全局端口号GP1。同时,第三终端设备160属于不同于本地网络50的另一本地网络150。因此,第三终端设备160的全局IP地址G2不同于第一和第二终 端设备60和100的全局IP地址Gl。将全局端口号GP3指配给第三终端设备160。本地IP+端口 34指定本地IP地址和本地端口号的集合。例如,第一终端设备60被指配了本地IP地址Ll和本地端口号LPl的集合。在下面的描述中,本地IP地址和本地 端口号的集合有时被称为“本地地址”。本地地址还被指配给第二终端设备100和第三终端 设备160的每一个。与全局IP地址相反,即使多个终端设备属于单个本地网络,终端设备 的本地IP地址也互不相同。因此,第一终端设备60的本地IP地址Ll不同于第二终端设 备100的本地IP地址L2。利用公共密钥36来解码稍后要描述的加密的响应码。终端设备60、100以及160 分别具有相互不同的公共密钥K1、K2和Κ3。标记38表示终端设备是否具有通过使用本地 地址来建立RTP (实时传输协议)通信会话的功能。在下文中该功能被称为“本地通信功 能”。如果标记38是处于“开”位置中,则是指终端设备具有本地通信功能。在实施例中, 终端设备60、100和160的每一个都具有本地通信功能。 (STUN服务器40的配置)STUN服务器40接收从本地网络50和150中的终端设备发射的查询命令。STUN 服务器40分析查询命令,从而获得查询命令的源(例如,第一终端设备60)的全局IP地址 和全局端口号的集合(即,全局地址)。STUN服务器40将全局地址发射到查询命令的源。 查询命令的源从而能够确定指配给源本身的全局地址。(本地网络50的配置)如图1中所示,通过第一 NAT路由器52将本地网络50连接到因特网4。将第一 NAT路由器52连接到因特网4以及LAN 54。通过连接到LAN 54的终端设备(多个)来配 置本地网络50。在实施例中,将第一终端设备60和第二终端设备100连接到LAN 54。第一 NAT路由器52执行被称为NAT的地址转换处理。第一 NAT路由器52将从本 地网络50发射的数据发射到因特网4。在从本地网络50发射的数据中,将本地IP地址和 本地端口号的第一集合用作源。在该场合下,第一 NAT路由器52将作为源的第一集合转换 成全局IP地址和全局端口号的第二集合。相反地,如果在将第二集合用作目标时从因特网 4发射数据,则第一 NAT路由器52将作为目标的第二集合转换成第一集合。(第一终端设备60的配置)如图3中所示,第一终端设备60具有控制单元62、网络接口 64、麦克风66、扬声 器68、存储单元70等等。尽管没有示出,但是在第一终端设备60中还提供显示单元、操作 单元等等。控制单元62依照存储在存储单元70中的程序来执行处理。将网络接口 64连 接到LAN54。第一终端设备60的用户能够通过利用麦克风66和扬声器68来执行电话通信 (音频数据通信)。存储单元70包括多个存储器区域72至92。全局IP+端口存储器区域72存储指 配给第一终端设备60的全局地址(G1+GP1)。本地IP+端口存储器区域74存储指配给第一 终端设备60的本地地址(L1+LP1)。密钥存储器区域76存储第一终端设备60的秘密密钥 Jl和公共密钥Kl。SIPURI存储器区域78存储指配给第一终端设备60的SIPURI (sip:tli server, com)。通信信息存储器区域80存储通信信息82。通信信息82是关于过去已经对 其执行了本地通信功能的另一端上的通信方的信息。该通信信息82与SIPURI 84、全局IP+端口 86以及公共密钥88的集合相对应。在图3中所示的示例中,通信信息82是关于第二 终端设备100的信息。这意味着第一终端设备60过去执行了与作为另一端上的通信方的 第二终端设备100的通信。程序存储器区域90存储要由控制单元62执行的程序。程序存 储器区域90还可以存储从程序存储介质安装的程序或者从因特网4下载的程序等等。存 储器区域92存储除了要被存储在存储区域72至90的信息之外的信息。稍后描述要存储 在存储器区域92中的信息的详细情况。(第二终端设备100的配置)如图4中所示,类似于 第一终端设备60,第二终端设备100包括部件102、104、 106、108和110。存储单元110的存储器区域112至132也类似于第一终端设备60。将关 于第二终端设备100的信息存储在各个存储器区域112、114、116和118中。例如,密钥存 储器区域116的附图标记J2指示第二终端设备100的密钥。在图4中所示的示例中,属于 通信信息存储器区域120的通信信息122与关于第一终端设备60的信息124、126和128 相对应。(本地网络ΙδΟ的配置)如图1中所示,通过第二 NAT路由器152将本地网络150连接到因特网4。将第二 NAT路由器152连接到因特网4以及LAN 154。本地网络150由连接到LAN 154的各个终 端设备组成。在本实施例中,将第三终端设备160连接到LAN 154。第三终端设备160具有 类似于第一和第二终端设备60和100的配置。(登记处理的简要概述)接下来描述由各个设备10、40、60以及100执行的处理的详细情况。首先,现在参 考图5来描述第一终端设备60通过其将信息登记在SIP服务器10中的处理的详细情况。第一终端设备60的存储器区域92 (参见图3)保持STUN服务器40的地址。第一 终端设备60将查询命令200发射到作为目的地的STUN服务器40的地址。查询命令200 包括第一终端设备60的本地地址L1+LP1。通过图5中省略的第一 NAT路由器52将查询命 令200发射到STUN服务器40。第一 NAT路由器52将包括在查询命令200中的本地地址 L1+LP1转换成全局地址G1+GP1。STUN服务器40接收查询命令200。STUN服务器40分析查询命令200,从而指定 包括在查询命令200中的全局地址G1+GP1。STUN服务器40将包括全局地址G1+GP1的响 应202发射到第一终端设备60。第一终端设备60接收响应202。第一终端设备60将包括在响应202中的全局地 址G1+GP1存储在全局IP+端口存储器区域72 (参见图3)中(即,更新存储在存储器区域 72中的数据)。第一终端设备60的存储器区域92保持SIP服务器10的地址。第一终端 设备60将登记命令210发射到作为目的地的SIP服务器10的地址。登记命令210包括 SIPURI、全局地址G1+GP1、本地地址L1+LP1、公共密钥Kl以及示出与第一终端设备60的本 地通信功能相兼容的标记212。SIP服务器10接收登记命令210。SIP服务器10将“200好”(2000K)信号214发 射到第一终端设备60。SIP服务器10将包括在登记命令210中的各种数据集合存储在登 记数据存储器区域18(参见图2)中。从而登记如图2中所示的登记数据20。第一终端设备60定期地执行图5中所示的处理。因此第一终端设备60能够获得指配给其本身的最新的全局地址。SIP服务器10能够获得关于第一终端设备60的最新的 登记数据20。第二和第三终端设备100和160也如第一终端设备60定期地执行图5中所 示的处理。因此,SIP服务器10也能够获得关于第二和第三终端设备100和160的最新的 登记数据22和24。(邀请传输处理的简要概述)接下来参考图6来描述第二终端设备100通过其将邀请命令发射到第一终端设备 60的处理。第二终端设备100的用户能够通过操作第二终端设备100的(附图中省略的) 操作单元来输入第一终端设备60的SIPURI。从而第二终端设备100发起图6中所示的处
理。 第二终端设备100的存储器区域132 (参见图4)保持SIP服务器10的地址。第 二终端设备100将邀请命令220发射到作为目的地的SIP服务器10的地址。邀请命令220 包括用作目的地的第一终端设备60的SIPURI、关于用作源的第二终端设备100的SIPURI 信息、第二终端设备100的全局地址G1+GP2以及示出与本地通信功能相兼容的标记222。SIP服务器10接收邀请命令220。SIP服务器10通过参考登记数据存储器区域 18 (参见图2)来识别与包括在邀请命令220中的目的地的SIPURI (第一终端设备60的 SIPURI)相关联的全局IP地址G1。接下来,SIP服务器10执行用于确定在识别的全局IP 地址Gl和包括在邀请命令220中的源的全局IP地址Gl之间是否存在匹配的确定处理 (S4)。如果在两个全局IP地址之间存在匹配,则SIP服务器10通过参考登记数据存储器 区域18 (参见图2)来识别与第一终端设备60的SIPURI相关联的本地地址L1+LP1和公共 密钥Kl。SIP服务器10将包括由此识别的本地地址L1+LP1和识别的公共密钥Kl的识别响 应224发射到第二终端设备100。识别响应224还包括示出可与本地通信功能相兼容的标 记226。同时,如果在两个全局IP地址之间不存在匹配,则SIP服务器10将邀请命令228 传送到第一终端设备60。邀请命令228包括与邀请命令220类似的详细情况。第二终端设备100接收识别响应224。第二终端设备100将邀请命令230发射到 作为目的地的包括在识别响应224中的第一终端设备60的本地地址L1+LP1。由于邀请命 令230被寻址到本地地址L1+LP1,所以命令不会通过第一 NAT路由器52。邀请命令230包 括第二终端设备100的SIPURI、第二终端设备100的本地地址L2+LP2、示出邀请命令与本 地通信功能相兼容的标记232、以及质询码234。第一终端设备60接收邀请命令230。从而第一终端设备60能够发觉指向第一终 端设备的进入的呼叫的到达。例如,第一终端设备60输出预定的声音,或者使预定的光照 亮。下文中的这些操作被称为呼叫请求通知。用户能够实现由于执行呼叫请求通知而导致 的电话呼叫的始发。如果用户在执行呼叫请求通知的中间执行呼叫始发操作(例如,操纵 钩键),则第一终端设备60执行响应码生成处理(S6)。第一终端设备60通过利用第一终 端设备本身的秘密密钥Jl (参见图3中所示的密钥存储器区域76)来加密包括在邀请命令 230中的质询码234,从而生成响应码240。接下来,第一终端设备60将“200好”命令236 发射到作为目的地的包括在邀请命令230中的本地地址L2+LP2。由于“200好”命令236 的目的地是本地地址L2+LP2,所以命令不通过第一 NAT路由器52。“200好”命令236包括 响应码240和示出“200好”命令236与本地通信功能相兼容的标记238。第二终端设备100接收“200好”命令236。第二终端设备100通过利用包括在识别响应224中的公共密钥Kl来解密包括在“200好”命令236中的响应码240,从而生成解 密数据。第二终端设备100执行用于确定在质询码234和解密数据之间是否存在匹配的确 定处理(S8)。如果在两个数据集合之间存在匹配,则第二终端设备100将ACK命令242发射 到作为目的地的本地地址L1+LP1。由于ACK命令242的指向是本地地址L1+LP1,所以ACK 命令不通过第一 NAT路由器52。ACK命令242包括示出ACK命令与本地通信功能相兼容的 标记244和第二终端设备100的公共密钥K2(参见图4中所示的密钥存储器区域116)。第一终端设备60接收ACK命令242。第一终端设备60执行用于将与第二终端设备100的公共密钥Κ2相关联的SIPURI、本地地址L2+LP2、通信信息82 (参见图3)存储在 通信信息存储器区域80中的存储处理(SlO)。如果第一终端设备60接收到ACK命令242, 则在第一终端设备60和第二终端设备100之间建立RTP通信会话。通过由此建立的RTP 通信会话,在将本地地址L1+LP1或者本地地址L2+LP2取作源或者目的地时,并且在将剩余 的本地地址取作源和目的地中剩余的一个时,执行数据传输。特定地,在不涉及第一 NAT路 由器52的情况下执行数据通信。第一终端设备60执行音频数据通信处理(S12)。特定地, 第一终端设备60从扬声器68输出从第二终端设备100接收到的音频数据,并且将通过麦 克风66输入的音频数据发射到第二终端设备100。第二终端设备100还以相同的方式来执 行音频数据通信处理(S14)。由于建立了 RTP通信会话,所以能够执行第一终端设备60和第二终端设备100之 间的电话通信。图6示出了其中第二终端设备100将邀请命令发射到第一终端设备60的 示例。即使第一终端设备60将邀请命令发射到第二终端设备100,与图6中所示的实施 例的情况一样也建立RTP通信会话,在RTP通话期间,在将本地地址L1+LP1或者本地地址 L2+LP2取作源或者目的地时,并且将剩余的本地地址取作源和目的地中剩余的一个时,执 行数据传输。如果第二终端设备100 (或者第一终端设备60)将邀请命令发射到第三终端 设备160,则SIP服务器10通过确定处理S4来做出否定确定。此理由是第三终端设备160 被指配了不同于第二终端设备100的全局IP地址G2。在该情况下,在第二终端设备100和 第三终端设备160之间建立RTP通信会话,在RTP通信会话期间,在将全局IP地址G1+GP2 或者全局IP地址G2+GP3取作源或者目的地时,并且在将剩余的全局IP地址取作源和目的 地中剩余的一个时,执行数据传输。接下来描述在断开在图6中建立的RTP通信会话之后(即,在完成电话通信之 后),第一终端设备60通过其将邀请命令发射到第二终端设备100的处理。图7示出了处 理的序列图。第一终端设备60的用户能够通过操纵第一终端设备60的操作单元(附图中 省略)来输入第二终端设备100的SIPURI。第一终端设备60从而发起图7中所示的处理。第一终端设备60确定包括由用户输入的第二终端设备100的SIPURI的通信信息 82 (参见图3)是否被存储在通信信息存储器区域80中。如果呈现肯定确定,则第一终端设 备60将邀请命令250发射到作为目的地的包括在通信信息82中的本地地址L2+LP2。邀请 命令250不通过第一 NAT路由器52。邀请命令250包括第二终端设备100的SIPURI、第一 终端设备60的本地地址L1+LP1、示出邀请命令与本地通信功能相兼容的标记252、以及质 询码254。第二终端设备100接收邀请命令250。第二终端设备100执行呼叫请求通知(例 如,输出预定的声音)。如果用户在执行呼叫请求通知的过程中执行呼叫发起操作,则第二终端设备100执行响应码生成处理(S16)。第二终端设备100通过利用第二终端设备本身 的秘密密钥J2(参见图4)来特定地加密包括在邀请命令250中的质询码254,从而生成响 应码260。然后,第二终端设备100将“200好”命令256发射到作为目的地的包括在邀请 命令250中的本地地址L1+LP1。"200好”命令256不通过第一 NAT路由器52。“200好”命 令256包括响应码260和示出“200好”命令256与本地通信功能相兼容的标记258。第一终端设备60接收“200好”命令256。第一终端设备60通过利用包括在通信 信息82中的公共密钥K2来解密包括在“200好”命令256中的响应码260,从而生成解密 数据。然后,第一终端设备60执行用于确定在质询码254和解密数据之间是否存在匹配的 确定处理(S18)。如果在两个数据集合之间存在匹配,则第一终端设备60将ACK命令262 发射到作为目的地的本地地址L2+LP2。ACK命令262不通过第一 NAT路由器52。ACK命令 262包括示出ACK命令与本地通信功能相兼容的标记264和第一终端设备60的公共密钥 Kl0 第二终端设备100接收ACK命令262。第二终端设备100执行存储处理,用于在通 信信息存储器区域120中存储与第一终端设备60的公共密钥Kl相关联的SIPURI、本地地 址L1+LP1、通信信息122(参见图4) (S20)。在已经发射了图6中的ACK命令242之后,第 二终端设备100还将通信信息122存储在通信信息存储器区域120中。当接收到ACK命令 262时,第二终端设备100在第一终端设备60和第二终端设备100之间建立RTP通信会话。 即使在RTP通信会话中,也在将本地地址L1+LP1或者本地地址L2+LP2取作源或者目的地 时,并且在将剩余的本地地址取作源和目的地中剩余一个时,执行数据传输。特定地,在不 涉及第一 NAT路由器52的情况下执行数据通信。第一终端设备60和第二终端设备100执 行音频数据通信处理(S22和S24)。(SIP服务器的邀请命令接收处理)接下来参考图8来详细描述由SIP服务器10的控制单元12 (参见图2)所执行的 处理。图8中所示的处理由控制单元12来执行,并且通过接收邀请命令(例如,图6中所 示的邀请命令220)来触发。控制单元12确定包括在接收到的邀请命令中的目的地的SIPURI (例如,包括在图 6中所示的邀请命令220中的“sip:tl@server. com")是否被登记在登记数据存储器区域 18(参见图2)中(S30)。如果选择了否,则控制单元12将错误响应发射到接收到的邀请命 令的源(S32)。在该情况下,邀请命令接收处理结束。同时,如果在S30中选择了是,则控制单元12确定接收到的邀请命令是否包括示 出邀请命令与本地通信功能相兼容的标记(例如,图6中所示的标记222) (S34)。如果选择 了否,则处理前进到S42。相反地,如果选择了是,则处理前进到S36。通过参考登记数据存 储器区域18,在S36中,控制单元12确定与包括在接收到的邀请命令中的目的地的SIPURI 相关联的标记38 (参见图2)是否处于“开”位置中。如果选择了否,则处理前进到S42。如 果选择了是,则处理前进到S38。在S38中,通过参考登记数据存储器区域18,控制单元12识别与包括在接收到的 邀请命令中的目的地的SIPURI相关联的全局IP地址(例如,G1)。然后,控制单元12确定 在由此识别的全局IP地址和包括在接收到的邀请命令中的源的全局地址(例如,包括在图 6中的邀请命令220中的Gl)之间是否存在匹配。如果选择了否,则处理前进到S42。相反地,如果选择了是,则处理前进到S40。
在S40中,通过参考登记数据存储器区域18,控制单元12识别与包括在接收到的 邀请命令中的目的地的SIPURI相关联的本地地址(例如,L1+LP1)和公共密钥(例如,K1)。 然后,控制单元12将包括由此识别的本地地址和公共密钥的识别响应(例如,图6中所示 的识别响应224)发射到接收到的邀请命令的源。在该情况下,邀请接收处理结束。在S42中,控制单元12通过参考登记数据存储器区域18来识别与包括在接收到 的邀请命令中的目的地的SIPURI相关联的全局IP地址(例如,G1+GP1)。然后,控制单元 12将邀请命令传送到作为目的地的由此识别的全局地址。尽管图8中省略了后续处理,但 是如果接收到作为对由此传送的邀请命令的答复的“200好”命令,则控制单元12将“200 好”命令传送到邀请命令的源。此外,如果接收到作为由此传送的“200好”命令的答复的 ACK时,控制单元12将ACK命令传送到邀请命令的目的地。将“200好”命令和ACK命令发 射(传送)到作为目的地的全局地址。(终端设备的邀请命令发射处理)接下来详细描述由第二终端设备100的控制单元102 (参见图4)执行的处理。第 一终端设备60的控制单元62和第三终端设备的控制单元(附图中省略)执行与第二终端 设备100的控制单元102类似的处理。首先参考图9至图11来描述由控制单元102执行 的邀请发射处理。通过由用户执行邀请命令的目的地的SIPURI的输入来触发图9至图11 中所示的处理。控制单元102确定由用户输入的包括目的地的SIPURI的通信信息是否被存储在 通信信息存储器区域120 (参见图4)中(S60)。如果选择了是,则处理前进到图11中所示 的S120。如果选择了否,则处理前进到S62。在S62中,控制单元102向SIP服务器10发 射邀请命令,该邀请命令包括示出邀请命令与本地通信功能相兼容的标记(参见图6中所 示的标记222)。控制单元102监视作为对在S62中发射的邀请命令的答复的错误响应的接收 (S64)。如果选择了是,则控制单元102使未示出的显示单元显示错误(S66)。在该情况下, 邀请命令传输处理结束。控制单元102监视作为对在S62中发射的邀请命令的答复的“200好”命令的接 收(S68)。如果选择了是,则控制单元102将ACK命令发射到SIP服务器10 (S70)。因此, 在邀请命令的目的地和第二终端设备100之间建立RTP通信会话。如前所述,通过SIP服 务器10来发射为了建立RTP通信会话而发射的命令(邀请命令、“200好”命令和ACK命 令)。在该情况下,通过使用邀请命令的目的地和第二终端设备100的全局地址来发射这些 命令。因此,建立了 RTP通信会话,在RTP通信会话期间,在将邀请命令的目的地的全局地 址或者第二终端设备100的全局地址取作目的地或者源时,并且在将剩余的一个取作源或 者目的地时,执行数据传输。控制单元102通过利用由此建立的RTP通信会话来执行音频 数据传输(S72)。在该情况下,通过第一 NAT路由器52来执行音频数据传输。控制单元102监视作为对在S62中发射的邀请命令的答复的识别响应的接收 (S74)。如果选择了是,则控制单元102随机地获得数值,从而生成质询码。然后,控制单元 102将邀请命令发射到作为目的地的包括在识别响应中的本地地址(S76)。邀请命令包括 SIPURI、示出邀请命令与本地通信功能相兼容的标记(图6中所示的标记232)、质询码以及第二终端设备100的本地地址L2+LP2。在完成与S76有关的处理之后,处理前进到图10 中所示的S90。控制单元102监视作为对在图9中所示的S76中发射的邀请命令的答复的错误响 应的接收(S90)。在S90中,控制单元102还监视从在S76中发射邀请命令以来经过的预定 时间段。如果在S90中选择了是,则处理前进到S92。控制单元102向SIP服务器10发射不包括示出邀请命令与本地通信功能相兼容 的标记的邀请命令(包括除了标记之外的与图9中所示的S62中发射的邀请命令相类似的 详细情况)(S92)。控制单元102监视作为对在S92中发射的邀请命令的答复的错误响应的 接收(S94)。如果选择了是,则控制单元102前进到图9中所示的S66,并且使显示单元指 示错误。控制单元102还监视作为对在S92中发射的邀请命令的答复的正在接收的“200 好”命令(S96)。如果选择了是,则控制单元102前进到图9中所示的S70,并且将ACK命令 发射到SIP服务器10。控制单元102监视作为对在图9中所示的S76中发射的邀 请命令的答复的“200 好”命令的接收(S98)。如果选择了是,则控制单元102通过利用包括在图9中所示的S74 中接收到的识别响应中的公共密钥来解密包括在S98中接收到的“200好”命令中的响应 码,从而生成解密数据(S100)。控制单元102确定在解密数据和图9中所示的S76中发射 的质询码之间是否存在匹配(S102)。如果选择了否,则控制单元102前进到S92,其中,向 SIP服务器10发射不包括示出邀请命令与本地通信功能相兼容的标记的邀请命令。同时,如果在S102中选择了是,则控制单元102将包括第二终端设备100的公共 密钥K2的ACK命令发射到作为目的地的包括在图9中所示的S74中接收到的识别响应中 的本地地址(S104)。然后,控制单元102将用户输入的目的地的SIPURI、包括在图9中所 示的S74中接收到的识别响应中的本地地址、以及包括其本身的识别响应的公共密钥的通 信信息存储在通信信息存储器区域120 (参见图4)中(S106)。由于在S104中发射ACK命 令,所以在邀请命令的目的地和第二终端设备100之间建立RTP通信会话。如果通过使用 本地地址来发射邀请命令、“200好”命令以及ACK命令,则因此建立RTP通信会话,在RTP 通信会话期间,在将邀请命令的目的地的本地地址或者第二终端设备100的本地地址取作 目的地或者源时,并且在将剩余的一个取作源或者目的地时,执行数据传输。控制单元102 通过利用由此建立的RTP通信会话来执行音频数据传输(S108)。在该情况下,在不涉及第 一 NAT路由器52的情况下执行音频数据传输。如前所述,如果在图9中所示的S60中选择了是[如果由用户输入的目的地的 SIPURI被存储在通信信息存储器区域120(参见图4)中],则处理前进到图11中所示的 S120。在S120中,控制单元102通过参考通信信息存储器区域120来识别与用户输入的目 的地的SIPURI相关联的本地地址。控制单元102生成质询码。然后,控制单元102将邀请 命令发射到作为目的地的由此识别的本地地址。邀请命令包括SIPURI、示出与本地通信功 能相兼容的标记、质询码以及第二终端设备100的本地地址L2+LP2。控制单元102监视作为对在S120中发射的邀请命令的答复的错误响应的接收 (S122)。在S122中,控制单元102还监视从在S120中发射邀请命令以来经过的预定时间 段。如果在S122中选择了是,则控制单元102前进到图9中所示的S62,其中,向SIP服务 器10发射包括示出与本地通信功能的兼容性的标记的邀请命令。
控制单元102监视作为对在S120中发射的邀请命令的答复的“200好”命令的接 收(S124)。如果选择了是,则控制单元102通过利用包括用户输入的目的地的SIPURI的通 信信息的公共密钥(例如,Kl)来解密包括在S124中接收到的“200好”命令中的响应码, 从而生成解密数据(S126)。控制单元102确定在解密数据和S120中发射的质询码之间是 否存在匹配(S128)。如果选择了否,则控制单元102前进到图9中所示的S62,其中,向SIP 服务器10发射包括示出邀请命令与本地通信功能相兼容的标记的邀请命令。同时,如果在S128中选择了是,则控制单元102将包括第二终端设备100的公共 密钥K2的ACK命令发射到作为目的地的在S120中识别的本地地址(与用户输入的目的地 的SIPURI相关联的本地地址)(S130)。由于在S130中传输ACK命令,所以在邀请命令的目 的地和第二终端设备100之间建立RTP通信会话。在RTP通信会话期间,在将邀请命令的 目的地的本地地址或者第二终端设备100的本地地址取作目的地或者源时,并且在将剩余 的本地地址取作源和目的地中剩余的一个时,执行数据通信。控制单元102通过利用由此 建立的RTP通信会话来执行音频数据传输(S132)。在该情况下,在不涉及第一 NAT路由器 52的情况下,执行音频数据通信。
(终端设备的邀请命令接收处理)接下来参考图12来描述由第二终端设备100的控制单元102执行的邀请命令接 收处理。通过接收邀请命令来触发图12中所示的处理。控制单元102确定接收到的邀请命令是否包括示出邀请命令可与本地通信功能 相兼容的标记和质询码(S150)。特定地,例如,由于第一终端设备60执行与图9中所示的 S76或者图11中所示的S120有关的处理,所以控制单元102确定是否接收被发射到作为目 的地的第二终端设备的本地地址L2+LP2的邀请命令。如果选择了是,则处理前进到S162。 相反地,如果选择了否,则处理前进到S152。在S152中,控制单元102确定是否由SIP服务器10发射了所接收到的邀请命令。 如果选择了否,则控制单元102将错误响应发射到接收到的邀请命令的源(S154)。在该情 况下,邀请命令接收处理结束。尽管在流程图中没有示出,但是如果在S152中选择了是,则控制单元102执行通 信请求通知。如果用户已经执行了呼叫发起操作,则控制单元102将“200好”命令发射到 SIP服务器10(S156)。由SIP服务器10来向邀请命令的源(例如,第三终端设备160)传送 由此发射的“200好”命令。邀请命令的源将ACK命令发射到SIP服务器10 (参见图9中所 示的S70)。SIP服务器10将由此发射的ACK命令传送到第二终端设备100。第二终端设备 100接收ACK命令(S158)。因此在邀请命令的源和第二终端设备100之间建立RTP通信会 话。在RTP通信会话期间,在将邀请命令的源的全局地址或者第二终端设备100的全局地 址取作目的地或者源时,并且在将剩余的全局地址取作源和目的地中剩余的一个时,执行 数据通信。控制单元102通过利用由此建立的RTP通信会话来执行音频数据通信(S160)。 在该情况下,通过第一 NAT路由器52来执行音频数据通信。尽管在流程图中没有示出,但是如果在S150中选择了是,则控制单元102执行通 信请求通知。如果用户已经执行了呼叫发起操作,则控制单元102通过利用秘密密钥J2 (参 见图4)来加密包括在接收到的邀请命令中的质询码,从而生成响应码(S162)。由此接收 到的邀请命令包括邀请命令的源(例如,第一终端设备60)的本地地址。控制单元102将包括S162中生成的响应码的“200好”命令发射到作为目的地的邀请命令的源的本地地 址(S164)。因此,邀请命令的源将包括源本身的公共密钥的ACK命令发射到第二终端设备 100 (参见图10中所示的S104和图11中所示的S130)。第二终端设备100接收ACK命令 (S166)。然后,控制单元102将邀请命令的源(例如,第一终端设备60)的SIPURI、邀请命 令的源的本地地址以及与包括在S166中接收到的ACK命令中的公共密钥相关联的通信信 息存储在通信信息存储器区域120中(S168)。如果在S166中接收到ACK命令,则在邀请命 令的源和第二终端设备100之间建立RTP通信会话。在RTP通信会话期间,在将邀请命令 的源的本地地址或者第二终端设备100的本地地址取作目的地或者源时,并且在将剩余的 本地地址取作源或者目的地中剩余的一个时,执行数据通信。控制单元102通过利用由此 建立的RTP通信会话来执行音频数据通信(S170)。在该情况下,在不涉及第一 NAT路由器 52的情况下执行音频数据通信。(终端设备的通信信息管理处理)接下来描述由控制单元102执行的通信信息管理处理(附图中省略了流程图)。控制单元102结合存储在通信信息存储器区域120中的各条通信信息(例如,通信信息122) 来管理从存储通信信息以来已经经过的时间。如果存在其经过的时间已经到达预定时间的 通信信息,则控制单元102从通信信息存储器区域120中删除通信信息。这使得能够防止 存储单元110的剩余的存储器空间的浪费的消耗,这可能是以其它方式由多条通信信息被 持续地存储在通信信息存储器区域120中所造成的。已经详细地描述了本实施例的电话网络系统2。根据本实施例,如果在第一终端设 备60的全局IP地址Gl和第二终端设备100的全局IP地址Gl之间存在匹配,则第二终端 设备100从SIP服务器10获得第一终端设备60的本地地址L1+LP1和公共密钥Kl。为了确 定是否确实可以与第一终端设备60建立通信,如果通过利用由此获得的本地地址L1+LP1 来执行通信,则第二终端设备100通过利用获得的公共密钥Kl来执行质询认证(图10中 的S102)。如果成功执行了质询认证,则第二终端设备100将ACK命令发射到作为目的地的 获得的本地地址L1+LP1 (图10中的S104)。因此建立了 RTP通信会话。在由此建立的RTP 通信会话期间,第一终端设备60和第二终端设备100通过使用其各自的本地地址L1+LP1 和L2+LP2来执行音频数据传输。能够在不涉及第一 NAT路由器52的情况下执行音频数据 通信。因此,能够减少第一 NAT路由器52上的处理负载。此外,能够在不涉及第一 NAT路 由器52的情况下执行通信;因此,能够减小在第一终端设备60和第二终端设备100之间建 立的通信的延迟(换言之,能够加速终端之间的通信)。根据本实施例,如果在第一终端设备60的全局IP地址Gl和第二终端设备100的 全局IP地址Gl之间存在匹配,则SIP服务器10无需执行用于传送“200好”命令和ACK命 令的处理。还能够减少SIP服务器10上的处理负载。即使在第一终端设备60的全局IP地址和第二终端设备100的第二局球IP地址 之间不存在匹配,SIP服务器10也将从第二终端设备100发射的邀请命令传送到第一终端 设备60。通过SIP服务器10来在第一终端设备60和第二终端设备100之间交换“200好” 命令和ACK命令(图9中的S68和S70)。即使质询认证已经以失败结束,也由SIP服务器 10来发射邀请命令、“200好”命令以及ACK命令(图10中所示的S92和S96以及图9中所示的S70)。因此建立了 RTP通信会话。在由此建立的RTP通信会话期间,第一终端设备 60和第二终端设备100能够通过使用它们各自的全局地址来交换音频数据通信。如果通过利用它们各自的本地地址L1+LP1和L2+LP2来进行通信,则第一终端设 备60和第二终端设备100存储关于它们的另一端上的各方(参见图3和图4)的通信信 息82和122。继续保留通信信息82和122达预定的时间段。例如,如果用户命令再次执 行与第一终端设备60的通信,则第二终端设备100能够通过利用通信信息122 (通过利用 本地地址L1+LP1)来执行与第一终端设备60的通信。类似地,如果用户命令再次执行与第 二终端设备100的通信,则第一终端设备60能够通过利用通信信息82 (通过利用本地地址 L2+LP2)来交换与第二终端设备100的通信。可以进一步减小在第一 NAT路由器52上的处 理负载。在该情况下,因为通信根本没有涉及SIP服务器10 (甚至邀请命令没有被发射到 SIP服务器),所以SIP服务器10无需执行处理。如果成功执行了质询认证,则第二终端 设备100将包括其公共密钥K2的ACK命令 发射到第一终端设备60 (图10中所示的S104)。因此,如果用户指示再次执行与第二终端 设备100的通信,则第一终端设备60能够通过利用公共密钥K2来执行质询认证。从前述中能够看出,本实施例的第一终端设备60、第二终端设备100以及SIP服务 器10分别与第一终端设备、第二终端设备以及连接管理服务器相对应。图9中示出的S74 中执行的用于接收识别响应的处理与由本地地址获得单元执行的处理相对应。在图10中 所示的S90和S98以及图11中所示的S120和S124中执行的用于监视响应的接收的处理、 图10中所示的SlOO和图11中所示的S126中的用于解密响应码的处理、以及与图10中所 示的S102和图11中所示的S128有关的用于将解密数据与质询数据作比较的处理与由确 定单元执行的处理相对应。在图10中所示的S108中执行的用于通过使用本地地址来执行 音频数据通信的处理与由目标数据通信单元(第一目标数据通信单元)执行的用于通过使 用第一本地IP地址来进行第一数据的通信的处理相对应。在图10中所示的S96中执行的用于从SIP服务器10接收“200好”命令的处理与 由全局地址获得单元执行的处理相对应。在图9中所示的S72中执行的用于通过使用全局 地址来执行音频数据通信的处理与由目标数据通信单元(第二目标数据通信单元)执行的 用于通过使用第一全局IP地址来进行第二数据的通信的处理相对应。图9中所示的S76 中用于发射质询码以及图10中所示的S98中用于接收“200好”命令的处理还与第一质询 数据通信单元执行的处理相对应。图10中所示的S106中的用于存储通信信息的处理与由 存储控制单元执行的处理相对应。在图10中所示的S132中执行的用于通过使用本地地址 来执行音频数据通信的处理与由目标数据通信单元执行的用于通过使用第一本地IP地址 来再次进行第三数据的通信的处理相对应。在图10中所示的S104中执行的用于发射包括公共密钥的ACK命令的处理与由 公共密钥发射单元执行的处理相对应。图12中所示的S150中的用于接收质询码的处理、 S162中的用于生成响应码的处理、以及S164中的用于发射响应码的处理与由第二质询数 据通信单元执行的处理相对应。图12中所示的S170中的用于通过使用本地地址来执行音 频数据通信的处理与用于由目标数据通信单元执行的通过使用第二本地IP地址来执行第 四数据的通信的处理相对应。图2中所示的控制单元还与服务器侧存储控制单元、服务器 侧确定单元、服务器侧发射单元、以及服务器侧传送单元相对应,并且登记数据存储单元18与服务器侧存储单元相对应。尽管目前为止已经详细描述了本发明的特定实施例,但是实施例仅仅是说明,并 且不限制权利要求的范围。权利要求中所描述的技术包括上述特定实施例的各种修改和变 化。下面提供了实施例的示例性修改。(1)结合实施例描述的技术还能够适用于除了电话通信之外的通信系统。例如,该 技术可以适用于传真数据通信系统以及视频数据和音频数据的通信系统。(2) SIP服务器10和STUN服务器40可以被组装成单个单元。此外,结合实施例描 述的其它的两个或者更多的设备(例如,第一 NAT路由器52和STUN服务器40)也可以被 组装成单个单元。
(3)在实施例中,如果第二终端设备100将邀请命令发射到第三终端设备160,则 SIP服务器10确定在第二终端设备100的全局IP地址Gl和第三终端设备160的全局IP 地址G2之间不存在匹配。在该情况下,SIP服务器10传送邀请命令。还通过SIP服务器 10来发射“200好”命令和ACK命令。作为该模式的替代,SIP服务器10还能够将第三终 端设备160的全局地址G2+GP3发射到第二终端设备100。第二终端设备100还能够将邀 请命令发射到作为目的地的第三终端设备160的全局地址G2+GP3。特定地,第二终端设备 100还能够在不涉及SIP服务器10的情况下将邀请命令发射到第三终端设备160。在该情 况下,还能够在不涉及SIP服务器10的情况下发射“200好”命令和ACK命令。本修改使得 能够减少SIP服务器10上的处理负载。(4)在以上实施例中,终端设备60、100和160发送关于它们自己的全局地址的 STUN服务器40查询。然而,终端设备60、100和160可以通过利用UPnP来发送关于它们自 己的全局地址的NAT路由器52和152查询。结合说明书和附图描述的技术要素应当单独地或者以组合来呈现技术实用性,并 且不限于结合如提交的权利要求描述的组合。结合说明书或者附图例示的技术应当同时达 到多个目的,并且达到目的中的一个就引起技术实用性的呈现。
权利要求
一种第二终端设备,所述第二终端设备用在包括连接管理服务器、第一终端设备和所述第二终端设备的系统中,所述第二终端设备包括本地地址获得单元,所述本地地址获得单元被配置成,如果所述第一终端设备的第一全局IP地址与所述第二终端设备的第二全局IP地址匹配,则从所述连接管理服务器获得所述第一终端设备的第一本地IP地址和第一认证信息,在所述连接管理服务器中登记了所述第一本地IP地址和所述第一认证信息;确定单元,所述确定单元被配置成,通过使用所获得的第一认证信息来确定所述第二终端设备通过使用所述第一本地IP地址能够与之进行通信的第一特定终端设备是否是所述第一终端设备;以及目标数据通信单元,所述目标数据通信单元被配置成,如果所述确定单元确定了所述第一特定终端设备是所述第一终端设备,则通过使用所述第一本地IP地址来与所述第一终端设备进行第一数据的通信。
2.根据权利要求1所述的第二终端设备,进一步包括 全局地址获得单元,所述全局地址获得单元被配置成获得所述第一终端设备的所述第 一全局IP地址和端口号的集合,其中,如果所述确定单元确定了所述第一特定终端设备不是所述第一终端设备,则所 述目标数据通信单元通过使用所述第一全局IP地址和所述端口号的所述集合来与所述第 一终端设备进行第二数据的通信。
3.根据权利要求1所述的第二终端设备,进一步包括第一质询数据通信单元,所述第一质询数据通信单元被配置成,将第一质询数据发射 到所述第一特定终端设备并且接收由所述第一特定终端设备响应于所述第一质询数据而 发射的第一响应数据,所述第一响应数据是通过加密所述第一质询数据而被生成的,其中,所述第一认证信息包括所述第一终端设备的第一公共密钥,并且其中,所述确定单元使用所述第一公共密钥来解密所述第一响应数据从而生成第一解 密数据,并且如果所述第一解密数据与所述第一质询数据匹配,则所述确定单元确定所述 特定第一终端设备是所述第一终端设备。
4.根据权利要求3所述的第二终端设备,其中,如果所述第一质询数据通信单元没有 接收到所述第一响应数据,则所述确定单元确定所述特定第一终端设备不是所述第一终端 设备。
5.根据权利要求1所述的第二终端设备,进一步包括存储控制单元,所述存储控制单元被配置成将所述第一本地IP地址保持在存储单元中,其中,当在完成所述第一数据的通信之后要与所述第一终端设备进行第三数据的通信 时,所述目标数据通信单元通过再次使用保持在所述存储单元中的所述第一本地IP地址 来与所述第一终端设备进行所述第三数据的通信。
6.根据权利要求5所述的第二终端设备,其中,所述存储控制单元进一步将所述第一认证信息保持在所述存储单元中,其中,当在完成所述第一数据的通信之后要与所述第一终端设备进行所述第三数据的 通信时,所述确定单元通过使用保持在所述存储单元中的所述第一认证信息来确定所述第二终端设备通过使用保持在所述存储单元中的所述第一本地IP地址能够与之进行通信的 特定第二终端设备是否是所述第一终端设备,并且其中,如果所述确定单元确定了所述特定第二终端设备是所述第一终端设备,则所述 目标数据通信单元通过再次使用保持在所述存储单元中的所述第一本地IP地址来与所述 第一终端设备进行所述第三数据的通信。
7.根据权利要求1所述的第二终端设备,进一步包括公共密钥发射单元,所述公共密钥发射单元被配置成,如果所述确定单元确定了所述 特定第一终端设备是所述第一终端设备,则将所述第二终端设备的第二公共密钥发射到所 述第一终端设备;以及第二质询数据通信单元,所述第二质询数据通信单元被配置成 接收第二质询数据,所述第二质询数据由所述第一终端设备发射到作为目的地的所述 第二终端设备的第二本地IP地址;使用所述第二终端设备的秘密密钥来加密所述第二质询数据从而生成第二响应数据;以及将所述第二响应数据发射到所述第一终端设备,其中,如果第二解密数据与所述第二质询数据匹配,则所述目标数据通信单元通过使 用所述第二本地IP地址来与所述第一终端设备进行第四数据的通信,其中,由所述第一终 端设备通过使用所述第二公共密钥来解密所述第二响应数据而生成所述第二解密数据。
8.一种系统,包括 连接管理服务器; 第一终端设备;以及根据权利要求1至7中的任何一项所述的第二终端设备。
9.一种连接管理服务器,所述连接管理服务器用在包括所述连接管理服务器、第一终 端设备和第二终端设备的系统中,所述连接管理服务器包括服务器侧存储控制单元,所述服务器侧存储控制单元被配置成将所述第一终端设备的 第一全局IP地址、第一本地IP地址和第一认证信息彼此关联地保持在服务器侧存储单元 中;服务器侧接收单元,所述服务器侧接收单元被配置成接收连接请求,所述连接请求由 所述第二终端设备发射到作为目的地的所述第一终端设备,并且包括所述第二终端设备的 第二全局IP地址;服务器侧确定单元,所述服务器侧确定单元被配置成确定保持在所述服务器侧存储单 元中的所述第一终端设备的所述第一全局IP地址是否与包括在所述连接请求中的所述第 二终端设备的所述第二全局IP地址匹配;以及服务器侧发射单元,所述服务器侧发射单元被配置成,如果所述服务器侧确定单元确 定了所述第一全局IP地址与所述第二全局IP地址匹配,则将保持在所述服务器侧存储单 元中的所述第一终端设备的所述第一 IP地址和所述第一认证信息发射到所述第二终端设 备。
10.根据权利要求9所述的服务器,进一步包括服务器侧传送单元,所述服务器侧传送 单元被配置成,如果所述服务器侧确定单元确定了所述第一全局IP地址不与所述第二全局IP地址匹配,则将所述连接请求传送到所述第一终端设备。
11.一种用于控制第二终端设备的方法,所述第二终端设备用在包括连接管理服务器、 第一终端设备和所述第二终端设备的系统中,所述方法包括如果所述第一终端设备的第一全局IP地址与所述第二终端设备的第二全局IP地址匹 配,则从所述连接管理服务器获得所述第一终端设备的第一本地IP地址和第一认证信息, 在所述连接管理服务器中登记了所述第一本地IP地址和所述第一认证信息;通过使用所获得的第一认证信息来确定所述第二终端设备通过使用所述第一本地IP 地址能够与之进行通信的第一特定终端设备是否是所述第一终端设备;以及如果确定了所述第一特定终端设备是所述第一终端设备,则通过使用所述第一本地IP 地址来与所述第一终端设备进行第一数据的通信。
12.—种第二终端设备,所述第二终端设备用在包括连接管理服务器、第一终端设备和 所述第二终端设备的系统中,所述第二终端设备包括本地地址获得单元,所述本地地址获得单元被配置成从所述连接管理服务器获得第 一本地IP地址,在所述连接管理服务器中登记了所述第一终端设备的所述第一本地IP地 址;第一目标数据通信单元,所述第一目标数据通信单元被配置成,如果所述第一终端设 备的第一全局IP地址与所述第二终端设备的第二全局IP地址匹配,则通过使用所获得的 第一本地IP地址来与所述第一终端设备进行第一数据的通信;以及第二目标数据通信单元,所述第二目标数据通信单元被配置成,如果所述第一终端设 备的所述第一全局IP地址不与所述第二终端设备的所述第二全局IP地址匹配,则通过使 用所述第一终端设备的所述第一全局IP地址来与所述第一终端设备进行第二数据的通fn °
全文摘要
本发明涉及终端设备、系统、连接管理服务器及控制终端设备的方法。一种第二终端设备用在包括连接管理服务器、第一终端设备和第二终端设备的系统中。该第二终端设备包括本地地址获得单元,其被配置成,如果第一全局IP地址匹配第二全局IP地址,则从连接管理服务器获得第一终端设备的第一本地IP地址和第一认证信息;确定单元,其被配置成,通过使用所获得的第一认证信息来确定第二终端设备通过使用第一本地IP地址与之进行通信的第一特定终端设备是否是第一终端设备;及目标数据通信单元,其被配置成,如果确定该第一特定终端设备是第一终端设备,则通过使用第一本地IP地址与第一终端设备进行第一数据的通信。
文档编号H04L29/12GK101867624SQ20101012965
公开日2010年10月20日 申请日期2010年3月8日 优先权日2009年3月6日
发明者工藤康博 申请人:兄弟工业株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1