CN102685214A - 用于对等混合通信的系统和方法 - Google Patents

用于对等混合通信的系统和方法 Download PDF

Info

Publication number
CN102685214A
CN102685214A CN2012101124182A CN201210112418A CN102685214A CN 102685214 A CN102685214 A CN 102685214A CN 2012101124182 A CN2012101124182 A CN 2012101124182A CN 201210112418 A CN201210112418 A CN 201210112418A CN 102685214 A CN102685214 A CN 102685214A
Authority
CN
China
Prior art keywords
end points
access server
message
request
server
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2012101124182A
Other languages
English (en)
Other versions
CN102685214B (zh
Inventor
斯瓦库马尔·拉维库马尔
萨提什·冈达巴苏拉
拉米什库马尔·拉维库马尔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Damaka Inc
Original Assignee
Damaka Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Damaka Inc filed Critical Damaka Inc
Publication of CN102685214A publication Critical patent/CN102685214A/zh
Application granted granted Critical
Publication of CN102685214B publication Critical patent/CN102685214B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/54Organization of routing tables
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies

Abstract

公开了一种用于对等通信的改进系统和方法。在一个示例中,该方法包括在认证过程期间由第一端点从接入服务器接收简档和路由表。简档将第二端点识别为第一端点具有与其通信的许可的端点。路由表包含第一端点直接与第二端点进行通信所需的地址信息。第一端点使用该地址信息将通知消息直接发送到第二端点,以向第二端点通知第一端点在线。

Description

用于对等混合通信的系统和方法
本申请是2005年3月29日提交的发明名称为“用于对等混合通信的系统和方法”的中国专利申请200580026102.X的分案申请。
背景技术
目前的基于分组的通信网络一般可分为对等网络和客户机/服务器网络。传统的对等网络支持各端点之间的直接通信,而不使用中间设备(如,主机或服务器)。每个端点可使用存储在每个端点上的凭证和地址信息直接对其它端点发起请求并对来自其它端点的请求作出响应。然而,由于传统的对等网络将整个网络的端点信息(如,地址和凭证)分布并存储在各不安全端点上,所以这种网络固有地具有增加的安全风险。尽管客户机/服务器模型通过将凭证和地址信息本地化地存储在服务器上来解决对等模型中固有的安全问题,但是客户机/服务器网络的缺点在于服务器可能不能充分地支持试图与其通信的客户机的数量。由于所有的通信(甚至两个客户机之间的通信)必须经过服务器,所以服务器可能很快变成系统的瓶颈。
因此,需要一种解决这些问题的系统和方法。
附图说明
图1是混合对等系统的一个实施例的简化网络示图。
图2a示出可用在图1的系统内的接入服务器架构的一个实施例。
图2b示出可用在图1的系统内的端点架构的一个实施例。
图2c示出图2b的端点架构内的、可用于蜂窝网络连接的组件的一个实施例。
图2d示出传统软交换机配置以及两个端点。
图2e示出传统软交换机配置以及三个端点和媒体桥。
图2f示出具有两个端点的本公开内容的一个实施例,每个端点都包括软交换机。
图2g示出具有三个端点的本公开内容的一个实施例,每个端点都包括软交换机。
图3a是示出当发起呼叫时图2b的各组件的交互的顺序图。
图3b是示出当接收呼叫时图2b的各组件的交互的顺序图。
图4是示出对图1的端点进行认证并且该端点与另一端点进行通信的示例性过程的顺序图。
图5是示出图1的端点确定另一端点的状态的示例性过程的顺序图。
图6是示出图1的接入服务器帮助一端点建立与另一端点的通信的示例性过程的顺序图。
图7是示出图1的端点请求将其添加到当前在线的另一端点的好友列表中的示例性过程的顺序图。
图8是示出图1的端点请求将其添加到当前离线的另一端点的好友列表中的示例性过程的顺序图。
图9是示出图1的端点在它要离线之前请求将其添加到当前也离线的另一端点的好友列表中的示例性过程的顺序图。
图10是示出图1的端点可将语音邮件发送到在线的另一端点的示例性过程的顺序图。
图11是示出图1的端点可将语音邮件发送到离线的另一端点的示例性过程的顺序图。
图12是对等系统的另一实施例的简化示图,该对等系统耦合到该对等系统外部的目的地。
图13是示出图12的端点可直接与对等系统外部的目的地联系的示例性过程的顺序图。
图14是端点可下载并使用路由表的方法的一个实施例的流程图。
图15是示出外部设备可与图12的对等系统内的端点建立联系的示例性过程的顺序图。
图16是端点可提供交互式语音应答功能的方法的一个实施例的流程图。
图17是可在端点上提供搭线窃听(wiretap)功能的方法的一个实施例的流程图。
图18是示出端点可将数据流传输到一个或多个其它端点的示例性过程的顺序图。
图19是示出端点可与一个或多个好友端点进行私人交易的示例性过程的顺序图。
图20是示出端点可与一个或多个其它端点进行公共交易的示例性过程的顺序图。
图21是示出端点可与其它端点建立会议电话的示例性过程的顺序图。
具体实施方式
本公开旨在一种用于对等混合通信的系统和方法。应该理解,以下公开提供了许多不同的实施例或示例。为了简化本公开,以下只描述了组件和布置的特定示例。当然,这些仅仅是示例,而并不旨在限制。另外,本公开可能在各示例中重复参考标号和/或字母。该重复是为了简化和清晰的目的,其本身并不表示所讨论的各实施例和/或配置之间的关系。
参考图1,示出了对等混合系统100的一个实施例。系统100包括接入服务器102,接入服务器102经由分组网络108耦合到端点104和106。使用预先定义的且可公开获得的(即,非专有的)通信标准或协议(如,由互联网工程任务组(IETF)或国际电信联盟-电信标准部门(ITU-T)定义的那些通信标准或协议)来实现接入服务器102、端点104和端点106之间的通信。例如,信令通信(如,会话建立、管理和拆除)可使用诸如会话启始协议(SIP)的协议,而实际数据业务量可使用诸如实时传输协议(RTP)的协议来进行通信。如将在以下示例中所看见的,标准通信协议的使用使得端点104和106能够与使用相同标准的任何设备通信。通信可包括,但是不限于,语音呼叫、即时消息、音频和视频、电子邮件和任何其它类型的资源传送,在所述任何其它类型的资源传送中,资源表示任何数字数据。在以下描述中,媒体业务量通常基于用户数据报协议(UDP),而认证基于传输控制协议/互联网协议(TCP/IP)。然而,应该理解,这些用于示例的目的,并且除了UDP和TCP/IP之外还可使用其它协议,或者可使用其它协议代替UDP和TCP/IP。
接入服务器102、端点104和端点106之间的连接可包括有线和/或无线通信信道。在以下描述中,应该理解,术语“直接”是指在端点104和106之间或者在任一端点和接入服务器之间的一个或多个通信信道中不存在端点或接入服务器。因此,即使其它设备(如,路由器、防火墙和其它网络元件)位于接入服务器102、端点104和106之间,它们也是直接连接。另外,与端点、位置或服务的连接可能是基于预订的,即,仅当端点具有当前的预订时,该端点才能进行接入。此外,以下描述可能互换地使用术语“用户”和“端点”,但是应该理解,“用户”可使用多个端点中的任何一个端点。因此,如果端点登录到网络,则应该理解,用户正经由该端点登录,并且该端点表示在网络上使用该用户身份的用户。
接入服务器102存储用户的简档信息、对当前哪个用户在线进行跟踪的会话表,以及将端点地址与每个在线用户匹配的路由表。简档信息包括每个用户的“好友列表”,其识别事先被同意与该用户通信的其它用户(“好友”)。当用户登录时,好友列表上的在线用户将显现,随后登录的好友将直接通知该用户他们在线(如相对于图4所描述的)。接入服务器102将相关的简档信息和路由表提供给端点104和106中的每一个,以使得这些端点可相互直接通信。因此,在本实施例中,接入服务器102的一个功能是用作为了使一端点与其它端点进行通信而由该端点所需的信息的存储位置,并用作用于请求、语音邮件等的临时存储位置,如随后将更详细地描述的。
另外参考图2a,示出了图1的接入服务器102的架构200的一个实施例。架构200包括可由硬件和/或软件提供、并可组合到单个硬件平台中或分布在多个硬件平台之间的功能。为了例示的目的,将以下示例中的接入服务器描述为单个设备,但是应该理解,该术语等同地应用于其中存在赋予接入服务器的至少一部分功能的任何类型的环境(包括分布式环境)。
在本示例中,该架构包括web服务202(如,基于由XML、SOAP、.NET、MONO提供的功能),web服务器204(使用,例如,Apache或IIS),和用于存储和检索路由表208的数据库206(使用,例如,mySQL或SQLServer),简档210以及一个或多个会话表212。STUN(UDP对NAT(网络地址转换)的简单穿越)服务器214的功能也出现在该架构200中。如已知的,STUN为用于帮助处于NAT防火墙或路由器后面的设备进行它们的分组路由的协议。架构200还可包括重定向服务器216,用于处理在系统100外部发起的请求。可将STUN服务器214和重定向服务器216中的一个或两个合并到接入服务器102中,或者STUN服务器214和重定向服务器216中的一个或两个可以是单机设备。在本实施例中,服务器204和重定向服务器216都与数据库206耦合。
参考图2b,示出了图1的端点104(其可与端点106相似或相同)的架构250的一个实施例。应该理解,术语“端点”可指具有所描述的功能中的一些或所有功能的许多不同的设备,包括计算机、VoIP电话、个人数字助理、蜂窝电话或具有IP栈(基于其可运行所需协议)的任何其它设备。架构250包括位于图形用户界面(GUI)254和操作系统256之间的端点引擎252。GUI 254向端点引擎252提供用户访问,而操作系统256提供如本领域的技术人员已知的底层功能。
端点引擎252可包括支持执行端点104的操作所需的功能的多个组件和层。例如,端点引擎252包括软交换机258、管理层260、加密/解密模块262、特征层264、协议层266、声音至文本引擎268、文本至声音引擎270、语言转换引擎272、网络外连接模块274、来自其它网络的连接模块276、包括p商务代理和p商务中介的p商务(如,对等商务)引擎278,和蜂窝网络接口模块280。
这些组件/层的每个可进一步分为多个模块。例如,软交换机258包括呼叫控制模块、即时消息(IM)控制模块、资源控制模块、CALEA(对法律实施法案的通信协助)代理、媒体控制模块、对等控制模块、信令代理、传真控制模块和路由模块。
管理层260包括以下模块:存在(如,网络存在)模块、对等管理(检测对等端和向对等端通知在线)模块、防火墙管理(导航和管理)模块、媒体管理模块、资源管理模块、简档管理模块、认证模块、漫游模块、传真管理模块,和媒体播放/记录管理模块。
加密/解密模块262提供对输出分组的加密和对输入分组的解密。在本示例中,加密/解密模块262在源而不是网络处提供应用级加密。然而,应该理解,在一些实施例中,加密/解密模块262可在网络处提供加密。
特征层264提供对各种特征的支持,所述各种特征诸如语音、视频、IM、数据、语音邮件、文件传输、文件共享、类5特征、短消息服务(SMS)、交互式语音应答(IVR)、传真和其它资源。协议层266包括端点所支持的协议,包括SIP、HTTP、HTTPS、STUN、RTP、SRTP和ICMP。应该理解,这些仅是示例,并且可支持更少或更多的协议。
声音至文本引擎268将由端点(如,经由麦克风或网络)接收的声音转换为文本,文本至声音引擎270将由端点接收的文本转换为声音(如,经由扬声器输出),语言转换引擎272可被配置为将入站或出站信息(文本或声音)从一种语言转换为另一种语言。网络外连接引擎274可用于处理端点和外部设备之间的连接(如相对于图12描述的),来自其它网络的连接模块276处理来自外部设备的呼入连接尝试。蜂窝网络接口模块280可用于与无线网络交互。
另外参考图2c,更详细地示出了蜂窝网络接口模块280。虽然没有显示在图2b中,但是端点架构250的软交换机258包括用于与蜂窝网络接口模块280通信的蜂窝网络接口。另外,蜂窝网络接口模块280包括各种组件,诸如呼叫控制模块、信令代理、媒体管理器、协议栈和设备接口。应该指出,在一些实施例中,这些组件可对应于端点架构250内的层,并且可将这些组件直接合并到端点架构中。
参考图2d,示出了传统软交换机架构以及两个端点282和284,两个端点282和284中的任何一个都不包括软交换机。在本示例中,外部软交换机286保持与端点282的第一信令支线(leg)(点划线)和与端点284的第二信令支线(点划线)。软交换机286链接这两个支线,以在端点282和284之间传送信令信息。可经由媒体网关287在端点282和284之间传送媒体业务量(实线)。
另外参考图2e,示出了图2d的传统软交换机架构以及第三端点288,第三端点288也不包括软交换机。这样外部软交换机286保持与端点288的第三信令支线(点划线)。在本示例中,正在进行会议电话。然而,由于没有端点包括软交换机,所以对于媒体业务量,需要与每个端点连接的媒体桥290。因此,每个端点最多同时具有两个连接——与用于信令的软交换机的一个连接,与用于媒体业务量的媒体桥的另一个连接。
参考图2f,在一个实施例中,与图2d和2e的传统架构不同,两个端点(如,图1的端点104和106)分别包括软交换机(如,图2b的软交换机258)。每个端点都能够建立和保持与另一端点的信令和媒体业务量连接(都是虚拟和物理支线)。因此,由于该模型使用分布式软交换方法来处理端点之间的直接通信,所以不需要外部软交换机。
另外参考图2g,示出了端点104和106与另一端点292,端点292也包含软交换机。在该示例中,通过作为主机的端点104进行会议电话。为了实现这个,包括在端点104中的软交换机使得端点104能够支持与端点292的直接信令和媒体业务量连接。端点104然后可将媒体业务量从端点106转发到端点292和从端点292转发到端点106。因此,端点104可支持与多个端点的多个连接,并且如图2f,不需要外部软交换机。
再次参考图2b,在操作中,软交换机258使用由底层提供的功能来处理与其它端点和接入服务器102的连接并处理端点104所需要的服务。例如,如以下相对于图3a和3b更详细地描述的,呼入和呼出呼叫可利用端点架构250内的多个组件。
参考图3a,顺序图300示出了端点104可使用架构250的各个组件发起对端点106的呼叫的示例性过程。在步骤302之前,用户(未显示)经由GUI 254发起呼叫。在步骤302中,GUI 254将消息传送到(软交换机258的)呼叫控制模块以进行呼叫。呼叫控制模块在步骤304中与对等控制模块(软交换机258)联系,对等控制模块检测对等端(如果还没有进行检测),进入路由信息的路由表(软交换机258),并执行类似的操作。应该理解,没有示出所有的交互。例如,对等控制模块可利用(管理层260的)对等管理模块来进行对等检测。呼叫控制模块然后在步骤306中识别该呼叫的路由,并在步骤308中将消息发送到(协议层266的)SIP协议层以进行呼叫。在步骤310中,(使用加密/解密模块262)对出站消息进行加密,在步骤312中,经由OS 256将该消息发送到网络。
在发送消息之后并且在接收到响应之前,呼叫控制模块在步骤314中指示媒体控制模块(软交换机258)建立所需的近端媒体。媒体控制模块在步骤316中将该指示传送到(管理层260的)媒体管理器,媒体管理器处理近端媒体的建立。
另外参考图3b,在步骤352中,端点106接收端点104在步骤312中发送的消息(图3a),并将该消息从OS传送到SIP协议层。在步骤354中对该消息进行解密,在步骤356中,将呼叫提供给呼叫控制模块。呼叫控制模块在步骤358中将呼入呼叫通知给GUI,在步骤360中GUI接收识别(如,用户)是接受该呼叫还是拒绝该呼叫的输入。在本示例中,在步骤362中,接受呼叫,GUI将接受传送到呼叫控制模块。呼叫控制模块在步骤364中与对等控制模块联系,对等控制模块在步骤366中识别对呼叫端点的路由并将该路由返回给呼叫控制模块。在步骤368和370中,呼叫控制模块通知SIP协议层呼叫已被接受并且使用加密/解密模块对消息进行加密。然后在步骤372中经由OS将接受消息发送到网络。
在本示例中,在呼叫控制模块将接受消息传送到SIP协议层之后,可能进行其它步骤以使端点106为呼叫做准备。例如,呼叫控制模块在步骤374中指示媒体控制模块建立近端媒体,媒体控制模块在步骤376中指示媒体管理器开始监听呼入的媒体。呼叫控制模块还指示媒体控制模块建立远端媒体(步骤378),媒体控制模块在步骤380中指示媒体管理器开始发送音频。
返回到图3a,OS接收由端点106发送(步骤372)的消息,在步骤318中将其传送到SIP协议层,并在步骤320中对其进行解密。在步骤322中将(表明呼叫已被接受的)消息传送到呼叫控制模块,并在步骤324中将其从呼叫控制模块传送到GUI。呼叫控制模块然后在步骤326中指示媒体控制模块建立远端媒体,媒体控制模块在步骤328中指示媒体管理器开始发送音频。
以下附图是示出接入服务器102可与端点104和106通信的各示例性功能和操作的顺序图。应该理解,这些示图不是穷举的,并且为了使所描述的方面清晰,可能从这些示图中去除了各步骤。
参考图4(并使用作为示例的端点104),顺序图400示出了端点104可通过接入服务器102进行认证然后与端点106进行通信的示例性过程。如将描述的,在认证之后,端点104和106之间的所有通信(信令和媒体业务量)直接发生,而无需接入服务器102的任何干涉。在本示例中,应该理解,在该顺序开始时没有任一端点在线,并且端点104和106是“好友”。如上所述,好友是事先都已同意相互通信的端点。
在步骤402中,端点104将注册和/或认证请求消息发送到接入服务器102。如果端点104没有通过接入服务器102注册,则接入服务器将接收该注册请求(如,用户ID、密码和电子邮件地址),并将创建该端点的简档(未显示)。然后将用户ID和密码用于在随后的登录期间对端点104进行认证。应该理解,用户ID和密码可使得用户能够从任何端点认证,而不是仅从端点104认证。
一经认证,接入服务器102就更新驻存于服务器上的会话表,以指示当前与端点104相关联的用户ID在线。接入服务器102还检索与端点104当前使用的用户ID相关联的好友列表,并使用会话表识别好友中的哪些在线(如果有的话)。当端点106当前离线时,好友列表将反映该状态。接入服务器102然后在步骤404中将简档信息(如,好友列表)和路由表发送到端点104。路由表包含好友列表的在线成员的地址信息。应该理解,步骤402和404表示建立连接和断开连接,该连接是在端点104接收到简档信息和路由表之后断开的。
在步骤406和408中,端点106和接入服务器102重复如针对端点104所描述的步骤402和404。然而,由于当端点106被认证时,端点104在线,所以发送给端点106的简档信息将反映端点104的在线状态,并且路由表将识别如何直接与端点104联系。因此,在步骤410中,端点106将消息直接发送到端点104以通知端点104端点106现在在线。这还向端点104提供了与端点106直接通信所需的地址信息。在步骤412中,可在端点104和106之间直接建立一个或多个通信会话。
参考图5,顺序图500示出了对端点(如,端点104)进行认证的示例性过程。另外,在认证之后,端点104可确定它是否可与端点106通信。在本示例中,当顺序开始时,端点106在线。
在步骤502中,端点104将请求发送到图2的STUN服务器214。如已知的,STUN服务器确定设备(端点104位于其后面的设备(即,防火墙、路由器等))所使用的出站IP地址(如,外部地址)、外部端口和NAT类型。NAT类型可以是,例如,全锥形(cone)、受限锥形、端口受限锥形或对称。由于这些是本领域已知的,所以这里将不对其进行更详细的描述。STUN服务器214在步骤504中将STUN响应与所收集的关于端点104的信息一起发送回端点104。
在步骤506中,端点104将认证请求发送到接入服务器102。该请求包含从STUN服务器214接收的关于端点104的信息。在步骤508中,接入服务器102通过将相关简档和路由表发送到端点104来对该请求作出响应。简档包含每个在线好友的外部IP地址、端口和NAT类型。
在步骤510中,端点104发送消息以通知端点106它的在线状态(当端点106已在线时),在步骤512中,端点104等待响应。在其间没有从端点106接收到响应的超时时间段到时之后,端点104将端点106的状态从“在线”(如由下载的简档信息所表明的)变为“不可到达”。在可视的好友列表上可使用与每个好友相关联的图标的颜色表明好友的状态。例如,当登录时,可用蓝色图标表示在线好友,可用红色图标表示离线好友。如果接收到对于一好友的通知消息的响应,则表示该好友的图标可从蓝色变为绿色,以表示好友的在线状态。如果没有接收到响应,则图标保持蓝色以表明好友是不可到达的。虽然没有显示,但是在步骤514之后从端点106发送并由端点104接收的消息将表明端点106现在是可到达的并将使端点104将端点106的状态变为在线。类似地,如果端点104随后将消息发送到端点106并接收到响应,则端点104将端点106的状态变为在线。
应该理解,另外的实施例可实现另选的NAT穿越技术。例如,可使用单个净荷技术,在单个净荷技术中,使用TCP/IP分组来穿越UDP受限的防火墙或路由器。另一示例包括双净荷的使用,在双净荷中,将UDP分组插入到TCP/IP分组中。此外,应该理解,可使用除STUN之外的协议。例如,可使用诸如互联网连接建立(ICE)或使用中继NAT的穿越(TURN)这样的协议。
参考图6,顺序图600示出了接入服务器102可帮助端点104建立与端点106(为好友)的通信的示例性过程。在提供帮助之后,接入服务器102不再参与,这些端点可直接通信。在本示例中,端点106在NAT设备后面,只有当端点106已发送出消息时,NAT设备才让消息进入(向着端点106)。除非绕过该过程,否则端点104将不能够与端点106连接。例如,端点104将不能通知端点106它现在在线。
在步骤602中,端点106将请求发送到图2的STUN服务器214。如前所述,STUN服务器确定端点106的出站IP地址、外部端口和NAT类型。STUN服务器214在步骤604中将STUN响应与收集的关于端点106的信息一起发送回端点106。在步骤606中,端点106将认证请求发送到接入服务器102。该请求包含从STUN服务器214接收的关于端点106的信息。在步骤608中,接入服务器102通过将相关简档和路由表发送到端点106来对该请求作出响应。在本示例中,接入服务器102将与端点106相关联的NAT类型识别为在允许输入进站分组之前要求发送出站分组的类型。因此,接入服务器102指示端点106将定期的消息发送到接入服务器102以建立和保持通过NAT设备的针孔(pinhole)。例如,端点106可在NAT设备的超时时间段之前发送消息以重置超时时间段。以这种方式,可不确定地使针孔保持打开。
在步骤612和614中,端点104将STUN请求发送到STUN服务器214,STUN服务器如前所述作出响应。在步骤616中,端点104将认证请求发送到接入服务器102。接入服务器102检索端点104的好友列表,并将端点106识别为与将阻止来自端点104的通信的NAT类型相关联。因此,在步骤618中,接入服务器102将帮助消息发送到端点106。该帮助消息指示端点106将一消息发送给端点104,该消息为端点104打开NAT设备中的针孔。为了安全目的,由于接入服务器102具有端点104的STUN信息,所以可将端点106所打开的针孔具体地限制于与该STUN信息相关联的端点。此外,接入服务器102对于不在端点106的好友列表上的端点,不请求这样的针孔。
接入服务器104在步骤620中将简档和路由表发送到端点104。在步骤622中,端点106将消息(如,ping分组)发送到端点104。端点104然后可对该消息作出响应,并通知端点106它现在在线。如果端点106没有在预定义的时间段内接收到来自端点104的回复,则它可关闭针孔(这可简单地通过不发送另一消息并使针孔超时来发生)。因此,可使用帮助消息来克服由NAT设备所引起的困难,然后所述两个端点之间的通信可在无需接入服务器102的干涉的情况下发生。
参考图7,顺序图700示出了端点106可请求将其添加到端点104的好友列表中的示例性过程。在本示例中,端点104和106在整个过程期间都保持在线。
在步骤702中,端点104如前所述将注册和/或认证请求消息发送到接入服务器102。一经认证,接入服务器102就更新驻存在服务器上的会话表以表明当前与端点104相关联的用户ID在线。接入服务器102还检索与端点104当前使用的用户ID相关联的好友列表,并使用会话表来识别好友中的哪些在线(如果有的话)。由于端点106当前不在好友列表上,所以它将不出现。接入服务器102然后在步骤704中将简档信息和路由表发送到端点104。
在步骤706和708中,端点106和接入服务器102重复如针对端点104描述的步骤702和704。由于端点104和106不是好友,所以由接入服务器102发送到端点106的简档信息将不包括端点104。
在步骤710中,端点106将请求将其添加到端点104的好友列表中的消息发送到接入服务器102。接入服务器102在步骤712中确定端点104在线(如,使用会话表),并在步骤714中将端点104的地址发送到端点106。在步骤716中,端点106将请求将端点106添加到端点104的好友列表中的消息直接发送到端点104。端点104在步骤718中对端点106作出许可或拒绝的响应,端点104还在步骤720中用该响应更新接入服务器102。例如,如果响应准予许可,则端点104通知接入服务器102,以使得接入服务器可修改两个端点的简档以反映新的关系。应该理解,可采用各种其它动作。例如,如果端点104拒绝请求,则接入服务器102可不对端点106(对于端点104)的另一请求作出响应,直到已过去某一时间段。
应该理解,可针对好友列表执行许多不同的操作。例如,可删除、阻止/不阻止好友,可更新好友状态,并且可更新好友简档。对于阻止/不阻止,以及状态和简档更新,首先由请求该动作的端点(如,端点104)将消息发送到接入服务器102。在接入服务器102进行更新之后,端点104将消息发送到受该动作影响的对等端(如,端点106)。
可如下处理好友删除。如果端点104的用户想删除好友列表上的当前与在线端点106相关联的联系,则端点104将首先通知接入服务器102正在删除该好友。接入服务器102然后更新这两个用户的简档,使得任一方的好友列表都不将另一用户显示为好友。应该指出,在该实例中,一个用户的单方动作将改变另一用户的简档。端点104然后可将消息直接发送到端点106以实时地从端点106的好友列表中去除该好友(端点104的用户)。因此,即使端点106上的用户在线,也将从端点106的好友列表中去除端点104的用户。
参考图8,顺序图800示出了端点106可请求将其添加到端点104的好友列表中的示例性过程。在本示例中,端点104一直不在线,直到端点106进行了其请求之后。
在步骤802中,端点106如前所述将注册和/或认证请求消息发送到接入服务器102。一经认证,接入服务器102就更新驻存在服务器上的会话表以表明当前与端点106相关联的用户ID在线。接入服务器102还检索与端点106当前使用的用户ID相关联的好友列表,并使用会话表识别好友中的哪些在线(如果有的话)。接入服务器102然后在步骤804中将简档信息和路由表发送到端点106。
在步骤806中,端点106将请求将其添加到端点104的好友列表中的消息发送到接入服务器102。接入服务器102在步骤808中确定端点104离线,并在步骤810中临时存储请求消息。在步骤812和814中,端点104和接入服务器102重复如对端点106所描述的步骤802和804。然而,当接入服务器102将简档信息和路由表发送到端点104时,它还发送端点106的请求(包括端点106的地址信息)。
在步骤816中,端点104直接对端点106作出许可或拒绝的响应。端点104然后在步骤818中用响应的结果更新接入服务器102,并且还指示接入服务器删除临时存储的请求。
参考图9,顺序图900示出了端点106可请求将其添加到端点104的好友列表中的示例性过程。在本示例中,端点104一直不在线,直到端点106已进行其请求之后,并且端点106不在线地接收端点104的响应。
在步骤902中,端点106如前所述将注册和/或认证请求消息发送到接入服务器。一经认证,接入服务器102就更新驻存于服务器上的会话表以表明当前与端点106相关的用户ID在线。接入服务器102还检索与端点106当前使用的用户ID相关联的好友列表,并使用会话表识别好友中的哪些在线(如果有的话)。接入服务器102然后在步骤904中将简档信息和路由表发送到端点106。
在步骤906中,端点106将请求将其添加到端点104的好友列表中的消息发送到接入服务器102。接入服务器102在步骤908中确定端点104离线,并在步骤910中临时存储请求消息。在步骤912中,端点106通知接入服务器102它要离线。
在步骤914和916中,端点104和接入服务器102重复如前面针对端点106所述的步骤902和904。然而,当接入服务器102将简档信息和路由表发送到端点104时,它还发送端点106的请求。端点104在步骤918中将其响应发送到接入服务器102,并且还指示接入服务器删除临时存储的请求。在端点106的下一认证过程之后,它的简档信息将包括作为好友的端点104(假设端点104准予许可)。
参考图10,顺序图1000示出了端点106可存储端点104的语音邮件的示例性过程。在本示例中,端点106在线,但是其无法进行呼叫。
在步骤1002中,端点104将请求在两个端点之间建立呼叫的呼叫请求消息发送到端点106。在步骤1004中,端点106以表明它忙碌并且不能进行呼叫的消息作出响应。在步骤1006中,在记录语音邮件(未显示)之后,端点104将语音邮件发送到接入服务器102,接入服务器102在步骤1008中临时存储语音邮件。随后,在步骤1012中将语音邮件发送到端点106之前,端点104在步骤1010中将消息(如,消息等待指示符(MWI))发送到端点106。端点106在步骤1014中接收语音邮件(如,在结束前一呼叫之后),并在步骤1016中指示接入服务器102以删除临时存储的语音邮件。应该理解,端点106可对语音邮件执行许多不同的动作,包括保存、转发、答复等。
参考图11,顺序图1100示出了端点106可从端点104接收语音邮件的示例性过程。在本示例中,当记录并发送语音邮件时,端点106离线。在步骤1102中,端点104确定端点106离线。如前所述,可基于以下事实作出这样的确定,即,当端点104被认证时端点106不在线(如由来自接入服务器102的简档信息所表明的),并且自此还没有登录(如相对于图4所描述的将此通知给端点104)。由于端点106离线,所以端点104在步骤1104中将记录的语音邮件发送到接入服务器102,接入服务器102在步骤1106中临时存储该语音邮件。端点106如前所述在步骤1108中通过接入服务器102进行认证,接入服务器在步骤1110中将相关的简档信息和路由表发送到端点106。除了在认证之后正常发送到端点106的信息之外,接入服务器102发送诸如消息等待指示符的消息,以向端点106通知所存储的语音邮件。在步骤1112和1114中,端点106检索记录的语音邮件,并指示接入点102从服务器中删除该语音邮件。
参考图12,在另一实施例中,将图1的系统100示出为构成更大系统1200的一部分的“本地(home)系统”。该本地系统包括已通过接入服务器102注册的所有端点。除了本地系统100之外,示出了若干外部(相对于本地系统100而言)设备,包括外部端点1202(如,支持SIP的端点,诸如SIP电话、计算机、个人数字助理、家电,或者商务或住宅的自动控制系统)。另外的外部设备包括都与PSTN 1208耦合的网关1204和IPPBX 1206。网关1204还耦合到蜂窝网络1210,蜂窝网络1210包括无线电接入网络、核心网和其它蜂窝网络组件(未显示)。在本示例中,网关1204和IPPBX 1206都包括使得它们能够直接与基于SIP的端点104和106进行通信的非专有接口(如,SIP接口)。应该理解,系统1200的各部分可包括有线和/或无线接口和组件。
接入服务器102使用用户提供的凭证对本地系统100内的端点104和106进行认证(如前所述)。如下,通信可直接在端点104、106和本地系统100外部的设备之间发生。接入服务器102用作路由表存储器。如前所述,路由表包含端点104、106与本地网络100内的好友进行连接所需的信息。在本示例中,该路由表(或另一路由表)还包含端点104、106与外部设备连接所需的信息。与外部设备、位置或服务的连接可以是基于预订的,即,特定端点的路由表仅具有关于该端点当前预订的外部设备的地址信息。例如,与端点104相关联的简档可具有表示是否对该端点预订了诸如PSTN呼叫计划的服务的标志。
参考图13,顺序图1300示出了端点104可直接与图12的系统1200内的外部端点1202联系的示例性过程。端点1202在线,端点104具有与端点1202联系的权限(如,预订)。虽然本示例将SIP用于信令并将RTP用于媒体业务量,但是应该理解,可使用其它协议。
在步骤1302中,端点104如前所述将认证请求消息发送到接入服务器102。在认证之后,接入服务器102在步骤1304中将简档信息和路由表发送到端点104。在端点104已被认证之后,该端点的用户对端点1202发起呼叫(如,VoIP呼叫)。在步骤1306中,端点104对由用户键入的数执行数字收集和分析。由于端点104包含路由表和软交换机,所以该端点能够直接对端点1202进行识别并发起呼叫。
在步骤1308中,端点104和106建立呼叫。例如,端点104可将SIP INVITE消息直接发送到端点1202。端点104必须提供端点1202所需要的任何凭证。端点1202用200OK消息作出响应,端点104用ACK消息作出响应。端点104和1202然后可使用RTP会话进行VoIP呼叫(步骤1310)。在RTP会话完成之后,在步骤1312中进行呼叫拆除。因此,如在前面的本地系统100中的端点之间的示例中所描述的,在认证期间下载简档和路由表之后,端点104直接与端点1202(或网关1204或IPPBX 1206)联系,而无需接入服务器102的干涉。
可以以与端点1202相同的方式与另一外部端点1212联系,尽管将需要通过网关1204和蜂窝网络1210对该通信进行路由。与对于端点1202一样,端点104可直接与端点1212联系,而无需接入服务器102的干涉。
参考图14,方法1400示出了利用接入服务器102的路由表进行外部通信的一个可能的事件顺序。该方法从步骤1402开始于端点(如,端点104)通过接入服务器102进行认证时。端点104在步骤1404中依赖于如下因素来下载一个或多个路由表,这些因素诸如端点104是否预订了相关服务(如,是否允许端点104对本地网络外部进行呼叫)。以原始数据格式下载路由表,并且端点104在步骤1406中处理该原始数据以在步骤1408中生成最佳路由规则。此时,端点104可使用这些路由规则来与其它端点通信。
可在接入服务器102上改变路由表。例如,将新的服务区或新的预订选项变成可接入的。然而,除非端点104注销并返回,否则该端点将不会知道这些改变。因此,接入服务器102在步骤1410中将改变已发生的通知发送到路由表。在步骤1412中,端点104确定是否对于端点上的路由表进行了改变。例如,如果端点104正好登录上来,则它可具有更新的路由表。另选的或另外的,该通知可能并不表明哪些路由表已改变,并且端点104将需要确定它所使用的路由表中的任一个是否已改变。
如果路由表已改变,则端点104在步骤1414中确定该改变较大还是较小。如果改变很大,则该方法返回到步骤1404,在步骤1404中,下载路由表。如果改变很小,则该方法继续到步骤1416,在步骤1416中,端点104更新其路由表(如,端点104仅下载已改变的信息)。应该理解,可能需要一些处理来为新信息插入到现存的路由规则中作准备。
如果要对外部设备发起呼叫(步骤1418),则端点104在步骤1420中确定该呼叫是否与其路由规则匹配。如果匹配,则端点104在步骤1422中使用这些路由规则来将该呼叫路由到合适的网关或端点。如果不匹配,则端点104没有充足的信息对呼叫进行路由(步骤1424)并结束呼叫过程。
参考图15,顺序图1500示出了外部端点1202可使用SIP消息传送来尝试建立与图12的系统1200内的端点104的联系的示例性过程。在步骤1502中,端点1202将SIP INVITE消息发送到重定向服务器(如,图2a的重定向服务器216)。重定向服务器216在步骤1504中访问数据库(如,图2a的数据库206),并获得端点104的联系信息。该信息还可包括端点104所需要的凭证(如,用户名和密码)。如果需要凭证,则重定向服务器216在步骤1506中将请求凭证的消息发送到端点1202。端点1202在步骤1508中通过将包含这些凭证的SIPINVITE发送到重定向服务器216来对该凭证请求作出响应。重定向服务器216然后在步骤1510中将重定向消息与关于端点104的地址信息一起发送到端点1202。在步骤1512中,端点1202然后可利用SIPINVITE消息直接与端点104联系。如果端点104不可获得(如,离线),则重定向服务器216可将端点104不可获得的消息发送到端点1202。
再次参考图12,在本示例中,本地系统100包括资源服务器1214。虽然资源服务器1214可以是接入服务器102的一部分,但是为了例示的目的,将其分离为独立的服务器。为了识别访问权利和类似的问题,接入服务器102和资源服务器1214可相互通信(未显示)。资源服务器1214存储各资源并将各资源分发给端点104和106。如前所述,资源表示任何类型的数字数据。在操作中,端点(如,端点104)可将资源存储在资源服务器1214上以备端点106以后检索,或者可将资源直接传送到端点106。此外,资源服务器1214可将资源分发给端点106以及其它端点。以这种方式,资源服务器1214可用作临时或永久存储器。在一些实施例中,资源服务器1214可基于端点104和106提供的凭证来限制访问。例如,如果端点104仅具有对于某些资源的凭证,则资源服务器可限制该端点对这些资源的访问。端点和资源服务器之间的通信可如以上相对于两个端点所描述的那样直接发生。
应该理解,可使用上述端点和/或接入服务器来实现许多不同的方法。以下作为示例描述各方法,但是应该理解,许多其它方法或方法的变型也是可以的。
在一个实施例中,可实现端口旋转方法,该方法允许改变/旋转用于监听通信的端口以提供增强的安全性。旋转可在端口操作的空闲时间期间发生。例如,当检测到空闲时间时,选择随机的未使用端口。随后,端点向接入服务器通知新的路由信息,并将对等通知发送到所有在线的好友以通知它们端口/路由信息的改变。
在另一实施例中,可通过端点进行无线呼叫。例如,可实现这样的方法,该方法允许从对等混合系统中的端点直接到3G或者任何类似的无线网络的直接接口(如,使用图2b的蜂窝网络接口280)。当激活端点时,无线模块向无线网络通知它的存在。此时,可将呼叫发送到无线网络和从无线网络接收呼叫。端点还可将呼叫从无线端桥接到网络的IP端。例如,如果端点经由无线接口从无线电话接收到呼叫,则该端点的用户可选择将呼叫路由到网络的IP端上的任何好友端点。该桥接功能为端点的另一能力。类似地,可将在IP端接收的呼叫桥接到无线端。
参考图16,在另一实施例中,可与交互式语音应答(IVR)(如,由图2b的特征层264提供的IVR支持)一起使用方法1600,以当开启自动出席时自动地处理呼叫。自动出席提供这样的功能,即,当用户忙碌或没有出席参与呼叫或其它形式的通信时,允许用户执行其它任务。方法1600可代表用户自动地终止呼叫,并执行如由用户所定义的其它任务(如,留下消息或将消息路由到另一目的地)。
在本示例中,当端点(如,端点104)接收到呼叫时,方法1600从步骤1602开始。在步骤1604中,确定是否激活了自动出席(如,IVR功能是否开启)。如果没有激活自动出席,则该方法继续到步骤1606,在步骤1606中,正常地处理呼叫。如果激活自动出席,则在步骤1608中接受呼叫并开始IVR功能。在步骤1610中,连接呼叫。
参考图17,在又一实施例中,方法1700可用于在端点(如,端点104)上提供搭线窃听功能。例如可由图2b的软交换机258的CALEA代理提供这样的功能。该方法从步骤1702开始于端点104进行呼叫或接收到呼叫时。如果如在步骤1704中所确定的,端点正被窃听,则该方法将继续到步骤1706,在步骤1706中,将呼叫的开始记入日志。方法1700然后继续到步骤1708,在步骤1708中,建立该呼叫。如果端点没有被窃听,则该方法跳过步骤1706并直接进行到步骤1708。在步骤1710中,确定是否要捕捉与呼叫相关联的媒体。如果要捕捉,则在步骤1712中捕捉媒体并将其安全地流传输到指定的执法机构。该方法然后继续到步骤1714,在步骤1714中,在结束呼叫之后进行呼叫拆除。如果不捕捉媒体,则该方法直接从步骤1710进行到步骤1714。在步骤1718中,将呼叫的结束记入日志(如果如在步骤1716中所确定的,搭线窃听被激活),在步骤1720中,端点104返回到空闲状态。在本示例中,当捕捉到日志信息时,还可将该日志信息安全地流传输到执法机构。
在另一实施例中,漫游(Find me Follow me)方法可用于为对等混合环境中的端点同时提供多个会话。可在多个位置中对端点进行签到,以使其接入所提供的服务并以对等方式与作为好友的其它端点直接通信。在该方法中,当一个端点试图联系他/她的好友时,如果该好友在多个位置被签到,则发起方好友将消息送出到该好友的所有签到的位置。当端点从多个签到位置中的任何一个作出响应时,丢弃对其它端点的请求,并且与已接受通信请求的端点继续进行通信。
参考图18,在又一实施例中,顺序图1800示出了端点104可实时地一次或同时将数据流传输到一个或多个其它好友端点106和292(图2g)的示例性过程。分别在步骤1802和1804中,发起端点(如,端点104)将对数据流的请求发送到端点106和292。接收到该请求的端点可用接受或拒绝该请求的消息作出响应(步骤1806和1808)。一旦该请求被接受(如在步骤1810中所示),就将数据流送出到已接受对该数据流的请求的所有好友(步骤1812和1814)。在终止端点106和292上,用户选择可进行数据流的处理以使用该数据的应用。应该理解,端点可自动地选择一些应用以用于识别或预定义的数据类型。然后相关端点处理这些流(步骤1816和1818)。分别在步骤1820和1822中,端点104将终止流的请求送出到端点106和292。端点106和292分别在步骤1824和1826中停止它们的处理。
在另一实施例中,一种用于智能IMTM(如由Richardson,TX的Damaka,Inc.开发)或增强型IM的方法可用于通过实时采用文本至声音识别系统将发送到端点和由端点接收的文本数据转换为声音。可从网络或本地地接收文本数据,以转换为用于播放的声音/语音信号。例如可通过图2b的文本到声音引擎270提供这样的功能。
在另一实施例中,一种方法通过实时采用声音到文本系统将发送到端点和由端点接收的声音/语音数据转换为文本形式。可从网络或本地地接收声音/语音数据,以用于转换为由用户处理的文本数据。例如可通过图2b的声音至文本引擎268提供这样的功能。
在一个实施例中,一种方法可用于对正由端点发送/接收的文本数据提供校正服务(如,拼写检查)。在另一实施例中,一种方法可提供这样的功能,即,允许用户经由搜索引擎搜索万维网或互联网以找到与由端点发送/接收的文本数据相关的附加信息。在又一实施例中,一种方法可提供使用一个或多个语言转换引擎(如,图2b的语言转换引擎272)对由端点发送/接收的文本数据执行语言转换的功能。
在又一实施例中,一种方法可提供使得能够在端点上对由端点接收的文本数据建档以备以后检索的功能。例如,数据库(如,SQL)引擎可用于存储由端点从好友接收的数据并对其编索引以备快速检索。然后可使用标准的查询接口来存储/检索显示给用户的数据。
在另一实施例中,一种方法可用于提供SMS功能。例如可通过图2b的特征层264的SMS特征提供这样的功能。例如,当端点登录到网络时,可与路由表一起下载SMS表。如果端点具有移动设置,则端点可能能够直接经由SMS功能进行通信。
参考图19,在另一实施例中,顺序图1900示出了端点104可向由端点106和292(图2g)表示的好友发起私人交易(如,销售报价或开始拍卖过程)的示例性过程。分别在步骤1902和1904中,端点104将包含销售一个或多个商品的报价的消息发送到端点106和292。分别在步骤1906和1908中,端点106和292可返回接受或拒绝报价或进行还价的消息。在步骤1910中,端点104的用户可回顾接收的消息并接受一个,拒绝两个,用附加的还价对所述一个或两个进行答复等。该过程(报价、答复、回顾)可一直继续,直到最终接受或拒绝该报价。在本示例中,由于交互在好友之间发生,所以实际的财务交易可能不以电子形式进行。
参考图20,在又一实施例中,顺序图2000示出了端点104可发起公共交易(如,报价或开始拍卖过程)的示例性过程。在步骤2002中,端点104将投递销售品的消息发送到接入服务器102。该消息包含这样的信息,诸如待售商品的描述、拍卖的开始价格和开始/结束日期。在步骤2004中,端点106(在本示例中它不是好友)从服务器获得销售信息。获得的信息包括端点104的“替代ID”和相关联的地址信息。可分配给端点104以专用于销售的替代ID使得端点106能够直接与端点104联系,而无需获得端点104的用户的实际ID。因此,当销售结束时,端点106将不再能够与端点104联系。
在步骤2006中,端点106利用投标将消息直接发送到端点104。在步骤2008中,端点104利用该投标和投标者信息更新接入服务器上的信息。虽然没有显示,但是好友端点也可对所投递的商品投标。在步骤2010中,端点104的用户回顾投标,选择赢家(如果赢家存在),并直接通知赢家(步骤2012)。在步骤2014中,处理销售交易。在本示例中,由于交易可在不是好友的多方之间发生,所以可经由结算所的第三方实现交易。然而,如果好友赢得销售,则多方可恢复到私人交易。另外,应该理解,任何方(无论他们是否是好友)可如期望地安排交易。在一些实施例中,该过程可包括直接或间接通知未决投标的有关方,向有关方通知接受/拒绝投标等。销售者还可接受任何期望的投标(如,不仅是最高投标),并且可随时结束投标。如果当投标发生时端点离线(如,如果当发送步骤2006的消息时端点104离线或者如果当发送步骤2012的消息时端点106离线),则如前所述,当端点登录时,可在认证期间下载消息。
参考图21,在又一实施例中,顺序图2100示出了端点104可发起与其它端点(如,端点106和1202,在本示例中,端点106和1202都为端点104的好友)的会议电话的示例性过程。应该指出,端点106和1202可以相互是好友或者相互不是好友。分别在步骤2102和2104中,端点104将加入会议电话的请求发送到端点106和1202。端点106和1202分别在步骤2106和2108中通过接受或拒绝该请求作出响应。在本示例中,端点106和1202接受请求(如由步骤2110所示的)。
端点104然后可分别在步骤2112和2114中将媒体(如,文本或语音信息)发送到端点106和1202。端点104在步骤2116中接收呼入的媒体(如,来自端点106),并在步骤2118中将该呼入媒体发送到端点1202。在本示例中,不是组播该信息,而是由端点104通过使用与每个端点的分离对等连接来主持会议电话。由于端点106和1202经由端点104在会议电话中连接并且不直接相互通信,所以端点106和1202不必为好友。因此,本示例中的端点104可具有与会议电话相关联的两个路由条目:端点106的一个路由条目和端点1202的另一路由条目。在其它实施例中,也可使用组播将数据从端点104传输到端点106和1202。
应该理解,相对于图21描述的过程可应用于其它场景。例如,端点104可用作多玩家游戏的主机。然后可由端点将到来的数据分发给与所主控的游戏相关联的其它端点。
尽管前面的描述显示和描述了一个或多个实施例,但是本领域的技术人员应该理解,在不脱离本公开的精神和范围的情况下,可进行形式和细节上的各种改变。例如,可组合或者进一步分割在特定顺序图内示出的各步骤。另外,可将在一个示图中描述的步骤合并到另一示图中。例如,可将图5的STUN请求/响应步骤合并到没有显示该过程的示图中。此外,可由硬件和/或软件提供描述的功能,并且可将描述的功能分布或组合到单个平台中。另外,可以以不同于所例示的方式来实现特定示例中描述的功能,但是该功能仍然包含于本公开内容内。因此,应该以宽泛的方式与本公开内容一致地解释权利要求。

Claims (28)

1.一种用于在使用非专有协议的对等网络中建立和保持第一端点和第二端点之间的通信会话的计算机实现方法,该方法包括:
在认证过程期间由第一端点从接入服务器检索简档和路由表,其中,所述简档将第二端点识别为第一端点具有与其通信的许可的端点,所述路由表包含使第一端点直接与第二端点通信所需的地址信息;和
使用所述地址信息将通知消息从第一端点直接发送到第二端点,以向第二端点通知第一端点在线。
2.如权利要求1所述的方法,还包括:
使用所述地址信息将请求消息从第一端点直接发送到第二端点,以请求建立通信会话;
由第一端点直接从第二端点接收响应消息;和
如果响应消息授予许可,则第一端点直接与第二端点建立通信会话,其中,所有的信令和媒体业务量消息被直接从第一端点发送到第二端点和从第二端点发送到第一端点。
3.如权利要求1或2所述的方法,还包括:
基于所述简档识别第二端点是否在线;和
仅当第二端点在线时,才发送所述通知消息。
4.如权利要求1、2或3所述的方法,还包括:
在认证过程之前,将STUN(UDP对NAT(网络地址转换)的简单穿越)请求从第一端点发送到STUN服务器;和
在认证过程期间,使用响应于STUN请求而从STUN服务器接收的信息。
5.如权利要求4所述的方法,还包括:
由接入服务器确定第二端点是在将阻止它接收由第一端点发起的消息的设备后面;
指示第二端点将消息定期性地发送到接入服务器,以保持经过所述设备的第一通信信道;和
在将简档和路由表发送到第一端点之前,指示第二端点经由第一通信信道将消息发送到第一端点,以为第一端点打开经过所述设备的第二通信信道,其中,第一端点的通知消息可通过第二通信信道穿越所述设备到达第二端点。
6.如权利要求5所述的方法,其中,如果在预定时间段内没有接收到第一端点的通知消息,则第二端点关闭第二通信信道。
7.如权利要求1、2、3、4、5或6所述的方法,还包括:
等待从第二端点发送的响应于所述通知消息的响应消息;和
如果在预定时间段内没有接收到响应消息,则在第一端点处修改第二端点的状态以反映无响应。
8.如权利要求1、2、3、4、5、6或7所述的方法,还包括:
使用所述地址信息将请求消息从第一端点直接发送到第二端点,以请求建立语音呼叫;
由第一端点直接从第二端点接收响应消息,其中,所述响应消息指示第二端点当前不能接受请求;
在第一端点处记录语音邮件;和
发送所述语音邮件以存储在第二端点和接入服务器两者上。
9.如权利要求8所述的方法,还包括:
在第二端点接收所述语音邮件;和
将用于从接入服务器删除所述语音邮件的指示从第二端点发送到接入服务器。
10.如权利要求1所述的方法,还包括:
由第一端点确定第二端点当前在线;
在第一端点处记录语音邮件;
发送所述语音邮件以存储在接入服务器上;
在第二端点的认证过程期间,由第二端点从接入服务器接收消息等待指示符;和
由第二端点从接入服务器检索所述语音邮件。
11.如权利要求1所述的方法,还包括:
将指示第一端点不再具有与第二端点通信的许可的删除消息从第二端点发送到接入服务器;
在接入服务器上更新第一端点的简档以反映没有许可;
将指示第一端点不再具有与第二端点通信的许可的删除消息从第二端点直接发送到第一端点;和
当接收到所述删除消息时,实时删除存储在第一端点处的与第二端点相应的信息。
12.一种用于建立和保持第一端点和第二端点之间的关系的计算机实现方法,该方法包括:
将请求第二端点的联系信息的请求消息从第一端点发送到接入服务器;
由接入服务器确定第二端点是在线还是离线;
如果第二端点在线,则由第一端点从接入服务器接收所述联系信息;
将请求将第一端点添加到与第二端点相关联的好友列表中的请求消息从第一端点直接发送到第二端点;
由第一端点直接从第二端点接收接受或拒绝所述请求的响应消息;和
将用于通知接入服务器所述请求是被接受还是被拒绝的消息从第二端点发送到接入服务器。
13.如权利要求12所述的方法,还包括:如果所述请求被接受,则更新与第一端点和第二端点中的每个相关联的简档信息以反映所述关系。
14.如权利要求12所述的方法,还包括:
如果第二端点离线,则存储从第一端点发送到接入服务器的请求消息;
在第二端点的认证过程期间,将所述请求消息从接入服务器发送到第二端点,其中,所述认证过程指示第二端点即将在线;
将是接受还是拒绝所述请求的响应消息从第二端点直接发送到第一端点;和
将用于通知接入服务器结果是被接受还是被拒绝的消息从第二端点发送到接入服务器。
15.如权利要求12所述的方法,还包括:
如果第二端点离线,则存储从第一端点发送到接入服务器的请求消息;
当第二端点即将在线时,由接入服务器确定第一端点离线;
在第二端点的认证过程期间,将请求消息从接入服务器发送到第二端点;和
将接受或拒绝所述请求的响应消息从第二端点发送到接入服务器。
16.一种用于对等通信的系统,该系统包括:
接入服务器,耦合到基于分组的通信网络;
第一端点,经由所述通信网络耦合到接入服务器;和
第二端点,经由通信网络耦合到接入服务器和第一端点,所述第二端点具有这样的软交换机,该软交换机被配置为使用先前从接入服务器获得的路由信息直接与第一端点建立通信信道,其中,第一端点和第二端点之间的信令和媒体业务量通信使用非专有协议并且不经过接入服务器。
17.如权利要求16所述的系统,其中,第一端点和第二端点之间的信令通信使用会话启始协议(SIP),并且其中,媒体业务量通信使用实时传输协议(RTP)。
18.如权利要求16或17所述的系统,其中,接入服务器包括:
web服务层,被配置为向第一端点和第二端点提供web服务;
web服务器层,被配置为支持web服务层;和
数据库层,被配置为存储和管理以下内容:
至少一个会话表,识别第一端点和第二端点是否在线;
第一简档和第二简档,分别用于第一端点和第二端点,其中,每个简档识别这样的其它端点,与该简档相关联的端点具有与所述其他端点通信的许可;和
第一路由表和第二路由表,分别用于第一端点和第二端点,其中,每个路由表包含与该路由表相关联的端点与该端点的简档中的其它端点直接通信所需的地址信息。
19.如权利要求16、17或18所述的系统,其中,第二端点还包括端点引擎,所述端点引擎具有以下组件:
软交换机;
管理层,可访问软交换机,并被配置为管理由第二端点提供的多个服务;
特征层,可访问管理层和软交换机,并被配置为支持对于提供由管理层管理的服务而言所需的功能;和
协议层,被配置为提供用于支持由特征层提供的功能和与第一端点的通信的多个协议。
20.如权利要求16、17、18或19所述的系统,其中,接入服务器、第一端点和第二端点形成本地网络,并且其中,所述系统还包括该本地网络外部的至少一个设备。
21.如权利要求20所述的系统,其中,在发起与第一端点或第二端点的联系之前,所述外部设备必须通过接入服务器进行注册。
22.如权利要求20所述的系统,其中,第二端点被配置为使用软交换机与所述外部设备直接连接,并且其中,第二端点必须在建立连接的同时提供所述外部设备所请求的凭证。
23.一种直接在两个端点之间通信的系统,该系统包括:
第一端点,耦合到第一通信网络;
接入服务器,耦合到第二通信网络;和
第二端点,分别经由第一通信网络和第二通信网络耦合到第一端点和接入服务器,所述第二端点具有这样的软交换机,该软交换机被配置为使用先前从接入服务器获得的路由信息直接与第一端点建立通信信道,其中,第一端点和第二端点之间的信令和媒体业务量通信使用非专有协议并且不经过接入服务器。
24.如权利要求23所述的系统,其中,第一通信网络为公共交换电话网络(PSTN)。
25.如权利要求23所述的系统,其中,第一通信网络为蜂窝网络。
26.如权利要求23、24或25所述的系统,其中,当接入服务器对第二端点进行认证时,以路由表的形式从接入服务器获得路由信息。
27.如权利要求23、24、25或26所述的系统,还包括重定向服务器,其被配置为从指向第二端点的第一端点接收请求,并向第一端点提供第二端点的地址信息,其中,第一端点可在不涉及接入服务器的情况下与第二端点联系。
28.如权利要求27所述的系统,其中,重定向服务器被配置为在向第一端点提供第二端点的地址信息之前执行第一端点的认证。
CN201210112418.2A 2004-06-29 2005-03-29 用于对等混合通信的系统和方法 Expired - Fee Related CN102685214B (zh)

Applications Claiming Priority (8)

Application Number Priority Date Filing Date Title
US58353604P 2004-06-29 2004-06-29
US60/583,536 2004-06-29
US62818304P 2004-11-15 2004-11-15
US60/628,183 2004-11-15
US62829104P 2004-11-17 2004-11-17
US60/628,291 2004-11-17
US11/081,068 US7656870B2 (en) 2004-06-29 2005-03-15 System and method for peer-to-peer hybrid communications
US11/081,068 2005-03-15

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN200580026102XA Division CN101044735B (zh) 2004-06-29 2005-03-29 用于对等混合通信的系统和方法

Publications (2)

Publication Number Publication Date
CN102685214A true CN102685214A (zh) 2012-09-19
CN102685214B CN102685214B (zh) 2015-05-20

Family

ID=35505633

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201210112418.2A Expired - Fee Related CN102685214B (zh) 2004-06-29 2005-03-29 用于对等混合通信的系统和方法
CN200580026102XA Expired - Fee Related CN101044735B (zh) 2004-06-29 2005-03-29 用于对等混合通信的系统和方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN200580026102XA Expired - Fee Related CN101044735B (zh) 2004-06-29 2005-03-29 用于对等混合通信的系统和方法

Country Status (8)

Country Link
US (2) US7656870B2 (zh)
EP (2) EP2574001B1 (zh)
JP (3) JP4681697B2 (zh)
CN (2) CN102685214B (zh)
AU (1) AU2005264013B2 (zh)
CA (1) CA2571754C (zh)
MX (1) MX2007000141A (zh)
WO (1) WO2006008589A1 (zh)

Families Citing this family (101)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7680065B2 (en) * 2005-01-18 2010-03-16 Cisco Technology, Inc. System and method for routing information packets
GB0408868D0 (en) 2004-04-21 2004-05-26 Level 5 Networks Ltd Checking data integrity
US7570636B2 (en) 2004-06-29 2009-08-04 Damaka, Inc. System and method for traversing a NAT device for peer-to-peer hybrid communications
US7623516B2 (en) 2004-06-29 2009-11-24 Damaka, Inc. System and method for deterministic routing in a peer-to-peer hybrid communications network
US20060206310A1 (en) * 2004-06-29 2006-09-14 Damaka, Inc. System and method for natural language processing in a peer-to-peer hybrid communications network
US7623476B2 (en) * 2004-06-29 2009-11-24 Damaka, Inc. System and method for conferencing in a peer-to-peer hybrid communications network
US7656870B2 (en) 2004-06-29 2010-02-02 Damaka, Inc. System and method for peer-to-peer hybrid communications
US20060095365A1 (en) * 2004-06-29 2006-05-04 Damaka, Inc. System and method for conducting an auction in a peer-to peer network
US7933260B2 (en) 2004-06-29 2011-04-26 Damaka, Inc. System and method for routing and communicating in a heterogeneous network environment
US8437307B2 (en) 2007-09-03 2013-05-07 Damaka, Inc. Device and method for maintaining a communication session during a network transition
US8050272B2 (en) 2004-06-29 2011-11-01 Damaka, Inc. System and method for concurrent sessions in a peer-to-peer hybrid communications network
US8009586B2 (en) 2004-06-29 2011-08-30 Damaka, Inc. System and method for data transfer in a peer-to peer hybrid communication network
US7778187B2 (en) 2004-06-29 2010-08-17 Damaka, Inc. System and method for dynamic stability in a peer-to-peer hybrid communications network
US7706401B2 (en) * 2004-08-13 2010-04-27 Verizon Business Global Llc Method and system for providing interdomain traversal in support of packetized voice transmissions
JP4377786B2 (ja) * 2004-09-22 2009-12-02 パナソニック株式会社 電化機器、サーバ装置、携帯端末、通信システム、通信方法、及びプログラム
GB0506403D0 (en) * 2005-03-30 2005-05-04 Level 5 Networks Ltd Routing tables
GB0505300D0 (en) 2005-03-15 2005-04-20 Level 5 Networks Ltd Transmitting data
EP3217285B1 (en) 2005-03-10 2021-04-28 Xilinx, Inc. Transmitting data
US20060215690A1 (en) * 2005-03-28 2006-09-28 Canon Development Americas, Inc. Leveraging real-time communications for device discovery
US7894807B1 (en) * 2005-03-30 2011-02-22 Openwave Systems Inc. System and method for routing a wireless connection in a hybrid network
US20060259632A1 (en) * 2005-05-13 2006-11-16 Yahoo! Inc. Redirection and invitation for accessing an online service
US7587502B2 (en) * 2005-05-13 2009-09-08 Yahoo! Inc. Enabling rent/buy redirection in invitation to an online service
US20060258461A1 (en) * 2005-05-13 2006-11-16 Yahoo! Inc. Detecting interaction with an online service
US7515549B2 (en) * 2005-06-07 2009-04-07 Cisco Technology, Inc. Managing devices across NAT boundaries
US7706371B1 (en) * 2005-07-07 2010-04-27 Cisco Technology, Inc. Domain based routing for managing devices operating behind a network address translator
US20070022289A1 (en) * 2005-07-20 2007-01-25 Mci, Inc. Method and system for providing secure credential storage to support interdomain traversal
US7734710B2 (en) * 2005-09-22 2010-06-08 Avaya Inc. Presence-based hybrid peer-to-peer communications
US7603474B2 (en) 2005-10-05 2009-10-13 Microsoft Corporation Efficient endpoint matching using a header-to-bit conversion table
GB0600417D0 (en) 2006-01-10 2006-02-15 Level 5 Networks Inc Virtualisation support
US7849144B2 (en) * 2006-01-13 2010-12-07 Cisco Technology, Inc. Server-initiated language translation of an instant message based on identifying language attributes of sending and receiving users
DE102006004025A1 (de) * 2006-01-27 2007-08-09 Siemens Ag Verfahren zur Übermittlung einer Nachricht, Netzwerkknoten und Netzwerk
EP1841170B1 (fr) * 2006-03-30 2010-10-13 Alcatel Lucent Apprentissage du délai d'expiration d'une association d'adresses au sein d'un dispositif de traduction d'adresses pour serveur de signalisation SIP
WO2008006214A1 (en) * 2006-07-13 2008-01-17 Mobivox Inc. Methods and systems for selecting a buddy from a buddy list and for placing call to a buddy
KR20080035818A (ko) * 2006-10-20 2008-04-24 삼성전자주식회사 이동통신 시스템에서 패킷 데이터 감청을 위한 장치 및 방법
GB2443889A (en) 2006-11-20 2008-05-21 Skype Ltd Method and system for anonymous communication
GB0623621D0 (en) * 2006-11-27 2007-01-03 Skype Ltd Communication system
GB0623622D0 (en) * 2006-11-27 2007-01-03 Skype Ltd Communication system
US20080151912A1 (en) * 2006-12-22 2008-06-26 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for providing a secure transmission of packet data for a user equipment
JP4411332B2 (ja) * 2007-03-20 2010-02-10 パナソニック株式会社 Ip通信装置及びip通信システム並びにこれらのip通信方法
US8656017B2 (en) * 2007-05-16 2014-02-18 Microsoft Corporation Peer-to-peer collaboration system with edge routing
DE102007028640A1 (de) * 2007-06-21 2008-12-24 Siemens Enterprise Communications Gmbh & Co. Kg Verfahren, Endgerät und Sprachspeicher zum Speichern von Sprachnachrichten in einem Kommunikationsnetz
WO2009043016A2 (en) 2007-09-28 2009-04-02 Damaka, Inc. System and method for transitioning a communication session between networks that are not commonly controlled
US8094812B1 (en) 2007-09-28 2012-01-10 Juniper Networks, Inc. Updating stored passwords
US7720083B2 (en) * 2007-09-28 2010-05-18 Microsoft Corporation Intelligent routing in a hybrid peer-to-peer system
JP2009089183A (ja) * 2007-10-01 2009-04-23 Brother Ind Ltd 情報処理装置及び情報処理プログラム
WO2009070718A1 (en) * 2007-11-28 2009-06-04 Damaka, Inc. System and method for endpoint handoff in a hybrid peer-to-peer networking environment
EP2071809A1 (en) * 2007-12-13 2009-06-17 Alcatel Lucent Method of establishing a connection in a peer-to-peer network with network address translation (NAT)
US20090281833A1 (en) * 2008-05-09 2009-11-12 Tele Video Md, Inc. System and method for secure multi-party medical conferencing
CN102027726B (zh) * 2008-05-22 2014-01-15 艾利森电话股份有限公司 用于控制数据分组的路由的方法和设备
US9700791B2 (en) * 2008-08-14 2017-07-11 Valve Corporation Overlaying interactive video game play with real-time chat sessions with game switching
US8924567B1 (en) * 2008-08-29 2014-12-30 Avaya Inc. SIP service wrap
US7962627B2 (en) * 2008-12-04 2011-06-14 Microsoft Corporation Peer-to-peer network address translator (NAT) traversal techniques
US8301879B2 (en) * 2009-01-26 2012-10-30 Microsoft Corporation Conversation rights management
US9213776B1 (en) 2009-07-17 2015-12-15 Open Invention Network, Llc Method and system for searching network resources to locate content
US20110082941A1 (en) * 2009-10-06 2011-04-07 Electronics And Telecommunications Research Institute Method of providing direct communication in internet protocol network
US9614905B2 (en) 2009-10-20 2017-04-04 Avaya Inc. Determination of persona information availability and delivery on peer-to-peer networks
US8874785B2 (en) 2010-02-15 2014-10-28 Damaka, Inc. System and method for signaling and data tunneling in a peer-to-peer environment
US8725895B2 (en) 2010-02-15 2014-05-13 Damaka, Inc. NAT traversal by concurrently probing multiple candidates
US8892646B2 (en) * 2010-08-25 2014-11-18 Damaka, Inc. System and method for shared session appearance in a hybrid peer-to-peer environment
US8689307B2 (en) 2010-03-19 2014-04-01 Damaka, Inc. System and method for providing a virtual peer-to-peer environment
US9043488B2 (en) 2010-03-29 2015-05-26 Damaka, Inc. System and method for session sweeping between devices
US8725880B2 (en) * 2010-04-07 2014-05-13 Apple, Inc. Establishing online communication sessions between client computing devices
US9191416B2 (en) 2010-04-16 2015-11-17 Damaka, Inc. System and method for providing enterprise voice call continuity
US8352563B2 (en) 2010-04-29 2013-01-08 Damaka, Inc. System and method for peer-to-peer media routing using a third party instant messaging system for signaling
US8446900B2 (en) 2010-06-18 2013-05-21 Damaka, Inc. System and method for transferring a call between endpoints in a hybrid peer-to-peer network
US8611540B2 (en) * 2010-06-23 2013-12-17 Damaka, Inc. System and method for secure messaging in a hybrid peer-to-peer network
US8468010B2 (en) 2010-09-24 2013-06-18 Damaka, Inc. System and method for language translation in a hybrid peer-to-peer environment
US8743781B2 (en) * 2010-10-11 2014-06-03 Damaka, Inc. System and method for a reverse invitation in a hybrid peer-to-peer environment
US9218628B2 (en) * 2011-01-24 2015-12-22 Beet, Llc Method and system for generating behavior profiles for device members of a network
US10231283B2 (en) * 2011-03-14 2019-03-12 Microsoft Technology Licensing, Llc Roaming groups in a peer-to-peer network
US8683567B2 (en) 2011-03-31 2014-03-25 Belkin International, Inc. Method of distributing information regarding one or more electrical devices and system for the same
US8407314B2 (en) 2011-04-04 2013-03-26 Damaka, Inc. System and method for sharing unsupported document types between communication devices
US8694587B2 (en) 2011-05-17 2014-04-08 Damaka, Inc. System and method for transferring a call bridge between communication devices
CN102868710B (zh) * 2011-07-05 2018-03-30 中兴通讯股份有限公司 一种对等网中消息交互的方法及装置、系统
US8478890B2 (en) 2011-07-15 2013-07-02 Damaka, Inc. System and method for reliable virtual bi-directional data stream communications with single socket point-to-multipoint capability
KR101807520B1 (ko) 2011-07-19 2017-12-11 삼성전자주식회사 이동 통신 시스템에서 인증 기반의 인핸스드 어드레스 북 서비스를 제공하기 위한 장치 및 방법
CN102291333A (zh) * 2011-09-26 2011-12-21 袁明 一种基于分布式信息交换装置进行通信的系统及其方法
KR101613747B1 (ko) 2011-12-21 2016-04-20 에릭슨엘지엔터프라이즈 주식회사 메시지 인증 방법 및 그를 위한 ip-pbx 시스템
CN103227746B (zh) * 2012-01-31 2018-03-27 珠海德百祺科技有限公司 数据通信方法及系统
WO2013154556A1 (en) * 2012-04-11 2013-10-17 Empire Technology Development Llc Data center access and management settings transfer
CN103840953B (zh) * 2012-11-21 2017-10-31 中兴通讯股份有限公司 远程日志实时获取方法及系统
US9992021B1 (en) 2013-03-14 2018-06-05 GoTenna, Inc. System and method for private and point-to-point communication between computing devices
US9282172B2 (en) * 2013-05-10 2016-03-08 Blackberry Limited System and method for relaying data based on a modified reliable transport protocol
US9027032B2 (en) 2013-07-16 2015-05-05 Damaka, Inc. System and method for providing additional functionality to existing software in an integrated manner
US8970660B1 (en) * 2013-10-11 2015-03-03 Edifire LLC Methods and systems for authentication in secure media-based conferencing
US9357016B2 (en) 2013-10-18 2016-05-31 Damaka, Inc. System and method for virtual parallel resource management
EP3075132B1 (en) 2013-11-27 2021-08-18 Telefonaktiebolaget LM Ericsson (publ) Hybrid rtp payload format
US10361927B2 (en) 2014-01-14 2019-07-23 International Business Machines Corporation Managing risk in multi-node automation of endpoint management
CA2956617A1 (en) 2014-08-05 2016-02-11 Damaka, Inc. System and method for providing unified communications and collaboration (ucc) connectivity between incompatible systems
CN104967572B (zh) * 2015-06-05 2019-04-12 小米科技有限责任公司 网络访问方法、装置及设备
KR102234210B1 (ko) * 2015-07-24 2021-03-30 현대자동차주식회사 이더넷 기반의 네트워크를 위한 보안 방법
US11354881B2 (en) 2015-07-27 2022-06-07 United Launch Alliance, L.L.C. System and method to enable the application of optical tracking techniques for generating dynamic quantities of interest with alias protection
US9852330B1 (en) 2015-07-27 2017-12-26 United Launch Alliance, L.L.C. System and method to enable the application of optical tracking techniques for generating dynamic quantities of interest with alias protection
CN105245586B (zh) * 2015-09-28 2018-10-23 深圳竹信科技有限公司 一种公私网点对点通信方法及系统
KR102381377B1 (ko) * 2015-10-07 2022-03-31 삼성전자주식회사 통신 시스템에서 프로파일을 원격으로 제공하는 방법 및 장치
US10091025B2 (en) 2016-03-31 2018-10-02 Damaka, Inc. System and method for enabling use of a single user identifier across incompatible networks for UCC functionality
CN110419199B (zh) * 2017-03-08 2020-12-15 华为技术有限公司 使用主动式最短路径的sdn中的扁平化l3路由
US10313514B1 (en) 2018-02-21 2019-06-04 Plantronics, Inc. Device registry for mediating communication sessions
US11276159B1 (en) 2018-05-15 2022-03-15 United Launch Alliance, L.L.C. System and method for rocket engine health monitoring using digital image correlation (DIC)
US11902343B1 (en) 2021-04-19 2024-02-13 Damaka, Inc. System and method for highly scalable browser-based audio/video conferencing
US11770584B1 (en) 2021-05-23 2023-09-26 Damaka, Inc. System and method for optimizing video communications based on device capabilities

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1197567A (zh) * 1995-09-25 1998-10-28 声讯网络公司 点到点因特网协议
US20020150110A1 (en) * 2000-04-09 2002-10-17 Lead I P Systems Ltd. End to end network communication
WO2003079635A1 (en) * 2002-03-15 2003-09-25 International Business Machines Corporation Secured and access controlled peer-to-peer resource sharing method and apparatus
US20040034776A1 (en) * 2002-08-14 2004-02-19 Microsoft Corporation Authenticating peer-to-peer connections

Family Cites Families (123)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5442637A (en) 1992-10-15 1995-08-15 At&T Corp. Reducing the complexities of the transmission control protocol for a high-speed networking environment
FI94814C (fi) 1993-11-30 1995-10-25 Nokia Telecommunications Oy Menetelmä kehysvälitysverkon ylikuormitustilanteiden hallitsemiseksi sekä kehysvälitysverkon tilaajasolmu
DE69533328T2 (de) 1994-08-30 2005-02-10 Kokusai Denshin Denwa Co., Ltd. Beglaubigungseinrichtung
US6031818A (en) 1997-03-19 2000-02-29 Lucent Technologies Inc. Error correction system for packet switching networks
US6343067B1 (en) 1997-08-29 2002-01-29 Intel Corporation Method and apparatus for failure and recovery in a computer network
US6760307B2 (en) 1997-08-29 2004-07-06 Intel Corporation Method and apparatus for controlling the flow of data between servers using optimistic transmitter
US6473425B1 (en) 1997-10-02 2002-10-29 Sun Microsystems, Inc. Mechanism for dispatching packets via a telecommunications network
US6006253A (en) 1997-10-31 1999-12-21 Intel Corporation Method and apparatus to provide a backchannel for receiver terminals in a loosely-coupled conference
US6741691B1 (en) 1998-02-19 2004-05-25 Swisscom Mobile Ag Call-back method for telecommunications and devices adapted accordingly
US6963555B1 (en) 1998-02-20 2005-11-08 Gte Mobilnet Service Corporation Method and system for authorization, routing, and delivery of transmissions
US6141687A (en) 1998-05-08 2000-10-31 Cisco Technology, Inc. Using an authentication server to obtain dial-out information on a network
GB2337611A (en) 1998-05-20 1999-11-24 Sharp Kk Multilingual document retrieval system
US6622165B1 (en) 1998-09-11 2003-09-16 Lv Partners, L.P. Method and apparatus for allowing a remote site to interact with an intermediate database to facilitate access to the remote site
US7249085B1 (en) 1999-03-31 2007-07-24 Ariba, Inc. Method and system for conducting electronic auctions with multi-parameter price equalization bidding
US6219638B1 (en) 1998-11-03 2001-04-17 International Business Machines Corporation Telephone messaging and editing system
US7080158B1 (en) 1999-02-09 2006-07-18 Nortel Networks Limited Network caching using resource redirection
WO2000072285A1 (en) 1999-05-24 2000-11-30 Heat-Timer Corporation Electronic message delivery system utilizable in the monitoring oe remote equipment and method of same
US6584505B1 (en) 1999-07-08 2003-06-24 Microsoft Corporation Authenticating access to a network server without communicating login information through the network server
US6640241B1 (en) * 1999-07-19 2003-10-28 Groove Networks, Inc. Method and apparatus for activity-based collaboration by a computer system equipped with a communications manager
US6311150B1 (en) 1999-09-03 2001-10-30 International Business Machines Corporation Method and system for hierarchical natural language understanding
US7457279B1 (en) 1999-09-10 2008-11-25 Vertical Communications Acquisition Corp. Method, system, and computer program product for managing routing servers and services
US7272649B1 (en) 1999-09-30 2007-09-18 Cisco Technology, Inc. Automatic hardware failure detection and recovery for distributed max sessions server
US7117526B1 (en) 1999-10-22 2006-10-03 Nomadix, Inc. Method and apparatus for establishing dynamic tunnel access sessions in a communication network
US6940826B1 (en) 1999-12-30 2005-09-06 Nortel Networks Limited Apparatus and method for packet-based media communications
US6574668B1 (en) 2000-01-25 2003-06-03 Cirrus Logic, Inc. Retransmission scheme in wireless computer networks
US6760580B2 (en) * 2000-03-06 2004-07-06 America Online, Incorporated Facilitating instant messaging outside of user-defined buddy group in a wireless and non-wireless environment
US6714793B1 (en) * 2000-03-06 2004-03-30 America Online, Inc. Method and system for instant messaging across cellular networks and a public data network
US6826613B1 (en) 2000-03-15 2004-11-30 3Com Corporation Virtually addressing storage devices through a switch
US6766373B1 (en) 2000-05-31 2004-07-20 International Business Machines Corporation Dynamic, seamless switching of a network session from one connection route to another
US7056217B1 (en) * 2000-05-31 2006-06-06 Nintendo Co., Ltd. Messaging service for video game systems with buddy list that displays game being played
CA2418330A1 (en) * 2000-07-18 2002-01-24 Homework911.Com, Inc. Interactive online learning with student-to-tutor matching
FI110297B (fi) * 2000-08-21 2002-12-31 Mikko Kalervo Vaeaenaenen Lyhytäänisanomajärjestelmä, -menetelmä ja -päätelaite
US6674852B1 (en) 2000-08-31 2004-01-06 Cisco Technology, Inc. Call management implemented using call routing engine
US7461024B2 (en) 2000-09-27 2008-12-02 Montgomery Rob R Bidder-side auction dynamic pricing agent, system, method and computer program product
US6999932B1 (en) 2000-10-10 2006-02-14 Intel Corporation Language independent voice-based search system
US20020083012A1 (en) 2000-11-16 2002-06-27 Steve Bush Method and system for account management
US7680738B2 (en) 2000-11-22 2010-03-16 American Express Travel Related Services Company, Inc. System and method for executing cash payments via a computer network
US20020080719A1 (en) 2000-12-22 2002-06-27 Stefan Parkvall Scheduling transmission of data over a transmission channel based on signal quality of a receive channel
US6704301B2 (en) 2000-12-29 2004-03-09 Tropos Networks, Inc. Method and apparatus to provide a routing protocol for wireless devices
WO2002057917A2 (en) 2001-01-22 2002-07-25 Sun Microsystems, Inc. Peer-to-peer network computing platform
US20030115251A1 (en) 2001-02-23 2003-06-19 Fredrickson Jason A. Peer data protocol
AU2002241198A1 (en) * 2001-03-14 2002-09-24 Nokia Corporation Separation of instant messaging user and client identities
US8744835B2 (en) 2001-03-16 2014-06-03 Meaningful Machines Llc Content conversion method and apparatus
US6996531B2 (en) 2001-03-30 2006-02-07 Comverse Ltd. Automated database assistance using a telephone for a speech based or text based multimedia communication mode
US20020141404A1 (en) * 2001-04-03 2002-10-03 Michael Wengrovitz Call routing using information in session initiation protocol messages
WO2002091692A1 (en) 2001-04-13 2002-11-14 Girard Gregory D Ditributed edge switching system for voice-over-packet multiservice network
US7353252B1 (en) 2001-05-16 2008-04-01 Sigma Design System for electronic file collaboration among multiple users using peer-to-peer network topology
US20020178087A1 (en) 2001-05-25 2002-11-28 Henderson Greg S. Internet-based instant messaging hybrid peer-to-peer distributed electronic commerce system and method
US6704406B1 (en) 2001-05-29 2004-03-09 Cisco Technology, Inc. Automated route plan generation
JP3788281B2 (ja) 2001-07-09 2006-06-21 日本電気株式会社 セッション確立方法
EP1423796A1 (en) * 2001-08-09 2004-06-02 Gigamedia Access Corporation Hybrid system architecture for secure peer-to-peer-communication
US7392173B2 (en) 2001-09-06 2008-06-24 International Business Machines Corporation Method and system of presenting a document to a user
US7304985B2 (en) 2001-09-24 2007-12-04 Marvin L Sojka Multimedia communication management system with line status notification for key switch emulation
US20030061481A1 (en) 2001-09-26 2003-03-27 David Levine Secure broadcast system and method
US7512652B1 (en) * 2001-09-28 2009-03-31 Aol Llc, A Delaware Limited Liability Company Passive personalization of buddy lists
US20030078858A1 (en) 2001-10-19 2003-04-24 Angelopoulos Tom A. System and methods for peer-to-peer electronic commerce
US7139263B2 (en) 2001-10-19 2006-11-21 Sentito Networks, Inc. Voice over IP architecture
EP1445896A4 (en) * 2001-11-13 2006-05-17 Matsushita Electric Ind Co Ltd SUPPLIER CONNECTION SYSTEM, PACKET DATA EXCHANGE SYSTEM, DNS SERVER, PACKET DATA EXCHANGE METHOD, AND COMPUTER PROGRAM
US7330435B2 (en) 2001-11-29 2008-02-12 Iptivia, Inc. Method and system for topology construction and path identification in a routing domain operated according to a link state routing protocol
US7184415B2 (en) 2001-12-07 2007-02-27 Telefonaktiebolaget Lm Ericsson (Publ) Service access system and method in a telecommunications network
US20030110047A1 (en) 2001-12-11 2003-06-12 International Business Machines Corporation Automatic auction bid cancellation method and system
US20030126213A1 (en) * 2002-01-02 2003-07-03 International Business Machines Corporation Establishing direct instant messaging communication between wireless devices
US20030135569A1 (en) 2002-01-15 2003-07-17 Khakoo Shabbir A. Method and apparatus for delivering messages based on user presence, preference or location
US7412374B1 (en) 2002-01-30 2008-08-12 Novell, Inc. Method to dynamically determine a user's language for a network
JP2003229882A (ja) * 2002-02-06 2003-08-15 Megafusion Corp 双方向接続システム、アドレス管理サーバおよび方法
US7272377B2 (en) 2002-02-07 2007-09-18 At&T Corp. System and method of ubiquitous language translation for wireless devices
US6850769B2 (en) 2002-02-14 2005-02-01 Qualcomm Incorporated Method and apparatus for adaptive measurement of round-trip time in ARQ protocols and using the same for controlling flow of data in a communication system
GB0204056D0 (en) 2002-02-21 2002-04-10 Mitel Knowledge Corp Voice activated language translation
US20030163525A1 (en) * 2002-02-22 2003-08-28 International Business Machines Corporation Ink instant messaging with active message annotation
JP3682439B2 (ja) * 2002-03-22 2005-08-10 株式会社ジャストシステム データ通信システム及び方法、サーバ装置、クライアント装置、並びにプログラム
EP1495625B1 (en) 2002-04-02 2011-09-28 Verizon Business Global LLC Providing of presence information to a telephony services system
JP3964719B2 (ja) * 2002-04-09 2007-08-22 日本電信電話株式会社 プレゼンス情報バックアップサービス提供方法及びそのシステム並びに情報要求プログラム及び該プログラムを記録した媒体
JP4027713B2 (ja) 2002-05-13 2007-12-26 シャープ株式会社 無線通信システム、そのシステムに用いられる通信装置、携帯端末、通信方法、コンピュータにその方法を実現させるプログラムおよびそのプログラムを記録した記録媒体
US20030217171A1 (en) 2002-05-17 2003-11-20 Von Stuermer Wolfgang R. Self-replicating and self-installing software apparatus
JP2003345689A (ja) * 2002-05-23 2003-12-05 Shuichi Nakai 情報処理装置および方法、並びにプログラム
JP2005535269A (ja) * 2002-07-30 2005-11-17 ライブデバイセズリミテッド 通信開始方法,システム,認可ポータル,クライアント装置およびサーバ装置
US20040039781A1 (en) 2002-08-16 2004-02-26 Lavallee David Anthony Peer-to-peer content sharing method and system
US8166533B2 (en) 2002-08-17 2012-04-24 Rockstar Bidco Lp Method for providing media communication across firewalls
US20050246193A1 (en) 2002-08-30 2005-11-03 Navio Systems, Inc. Methods and apparatus for enabling transaction relating to digital assets
US20040044517A1 (en) 2002-08-30 2004-03-04 Robert Palmquist Translation system
WO2004023263A2 (en) 2002-09-09 2004-03-18 Netrake Corporation System for allowing network traffic through firewalls
US7333500B2 (en) 2002-09-24 2008-02-19 Nortel Networks Limited Methods for discovering network address and port translators
JP4304593B2 (ja) 2002-11-01 2009-07-29 ソニー株式会社 情報処理システム、情報処理装置および方法、並びにプログラム
US6999575B1 (en) 2002-11-13 2006-02-14 At&T Corp. Method for providing a preferential routing and billing arrangement for a call placed between a calling party and a called party
JP4045936B2 (ja) 2002-11-26 2008-02-13 株式会社日立製作所 アドレス変換装置
US7515569B2 (en) 2002-11-27 2009-04-07 Agere Systems, Inc. Access control for wireless systems
TW200412101A (en) 2002-12-23 2004-07-01 Shaw-Hwa Hwang Directly peer-to peer transmission protocol between two virtual network
US9363709B2 (en) 2002-12-24 2016-06-07 Samrat Vasisht Method, system and device for automatically configuring a communications network
US7899932B2 (en) 2003-01-15 2011-03-01 Panasonic Corporation Relayed network address translator (NAT) traversal
US8392173B2 (en) 2003-02-10 2013-03-05 At&T Intellectual Property I, L.P. Message translations
EP1609075A4 (en) 2003-02-10 2006-11-02 Raindance Comm Inc METHOD AND DEVICES FOR AUTOMATICALLY ADDING A MEDIA COMPONENT TO A MULTIMEDIA COLLABORATION SESSION MADE
US7774495B2 (en) 2003-02-13 2010-08-10 Oracle America, Inc, Infrastructure for accessing a peer-to-peer network environment
US7013155B1 (en) * 2003-04-03 2006-03-14 Core Mobility, Inc. Delivery of an instant voice message in a wireless network using the SMS protocol
US7724671B2 (en) 2003-05-13 2010-05-25 Intel-Tel, Inc. Architecture for resource management in a telecommunications network
US20040249953A1 (en) * 2003-05-14 2004-12-09 Microsoft Corporation Peer-to-peer instant messaging
US20040267527A1 (en) 2003-06-25 2004-12-30 International Business Machines Corporation Voice-to-text reduction for real time IM/chat/SMS
US20050008024A1 (en) 2003-06-27 2005-01-13 Marconi Communications, Inc. Gateway and method
US7149971B2 (en) 2003-06-30 2006-12-12 American Megatrends, Inc. Method, apparatus, and system for providing multi-language character strings within a computer
US7398295B2 (en) 2003-06-30 2008-07-08 Microsoft Corporation Virtual lobby for data conferencing
US20050050227A1 (en) 2003-07-03 2005-03-03 Cascade Basic Research Corp. Method and system for peer-to-peer directory services
AU2004301258B2 (en) 2003-07-16 2007-04-26 Microsoft Technology Licensing, Llc Peer-to-peer telephone system and method
US7257837B2 (en) 2003-07-26 2007-08-14 Innomedia Pte Firewall penetration system and method for real time media communications
AU2004273914C1 (en) 2003-09-18 2009-04-02 Turbine, Inc. System and method for controlling access to a massively multiplayer on-line role-playing game
US7464272B2 (en) 2003-09-25 2008-12-09 Microsoft Corporation Server control of peer to peer communications
US7870199B2 (en) 2003-10-06 2011-01-11 Aol Inc. System and method for seamlessly bringing external services into instant messaging session
EP1678951B1 (en) 2003-10-08 2018-04-11 Cisco Technology, Inc. System and method for performing distributed video conferencing
US7715413B2 (en) 2003-10-23 2010-05-11 Emerj, Inc. Multi-network exchange system for telephony applications
JP2005136553A (ja) 2003-10-29 2005-05-26 Matsushita Electric Ind Co Ltd 移動体通信端末及び通信管理装置
US7353255B2 (en) 2003-10-30 2008-04-01 International Business Machines Corporation System and apparatus for geographically distributed VoIP conference service with enhanced QoS
US20050105524A1 (en) 2003-11-17 2005-05-19 Hughes Electronics Corporation System and method for provisioning of route information in a meshed communications network
JP3626491B1 (ja) 2003-12-26 2005-03-09 株式会社ドワンゴ メッセンジャーサービスシステムおよびその制御方法、ならびにメッセンジャーサーバおよびその制御プログラム
US7457874B2 (en) 2004-02-20 2008-11-25 Microsoft Corporation Architecture for controlling access to a service by concurrent clients
US20050195802A1 (en) 2004-02-20 2005-09-08 Klein Mark D. Dynamically routing telephone calls
WO2005079635A1 (en) 2004-02-20 2005-09-01 Chun Haeng Cho Bowl for flower arrangement equipped with anion-generating function
US20050254440A1 (en) 2004-05-05 2005-11-17 Sorrell John D Private multimedia network
US8050272B2 (en) 2004-06-29 2011-11-01 Damaka, Inc. System and method for concurrent sessions in a peer-to-peer hybrid communications network
US7778187B2 (en) * 2004-06-29 2010-08-17 Damaka, Inc. System and method for dynamic stability in a peer-to-peer hybrid communications network
US7656870B2 (en) 2004-06-29 2010-02-02 Damaka, Inc. System and method for peer-to-peer hybrid communications
US7543064B2 (en) * 2004-09-30 2009-06-02 Logitech Europe S.A. Multiplayer peer-to-peer connection across firewalls and network address translators using a single local port on the local host
US7664516B2 (en) 2004-12-27 2010-02-16 Aztec Systems, Inc. Method and system for peer-to-peer advertising between mobile communication devices
JPWO2006075677A1 (ja) 2005-01-17 2008-08-07 シャープ株式会社 通信ネットワーク制御システム
WO2006125454A1 (en) 2005-05-23 2006-11-30 Telefonaktiebolaget L.M. Ericsson (Publ.) Traffic diversion in an ethernet-based access network
JP4887682B2 (ja) 2005-08-05 2012-02-29 日本電気株式会社 通信システム、鍵管理・配信サーバ、端末装置及びそれらに用いるデータ通信方法並びにそのプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1197567A (zh) * 1995-09-25 1998-10-28 声讯网络公司 点到点因特网协议
US20020150110A1 (en) * 2000-04-09 2002-10-17 Lead I P Systems Ltd. End to end network communication
WO2003079635A1 (en) * 2002-03-15 2003-09-25 International Business Machines Corporation Secured and access controlled peer-to-peer resource sharing method and apparatus
US20040034776A1 (en) * 2002-08-14 2004-02-19 Microsoft Corporation Authenticating peer-to-peer connections

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
ELLEN ISAACS ETC.: ""Hubbub: A sound-enhanced mobile instant messenger that supports awareness and opportunistic interactions"", 《PROCEEDINGS OF THE SIGCHI CONFERENCE ON HUMAN FACTORS IN COMPUTING SYSTEMS》 *

Also Published As

Publication number Publication date
JP2011103121A (ja) 2011-05-26
US8000325B2 (en) 2011-08-16
WO2006008589A1 (en) 2006-01-26
EP2574001A1 (en) 2013-03-27
CA2571754C (en) 2012-08-21
CN102685214B (zh) 2015-05-20
CA2571754A1 (en) 2006-01-26
CN101044735B (zh) 2012-06-20
MX2007000141A (es) 2009-04-15
JP5735016B2 (ja) 2015-06-17
CN101044735A (zh) 2007-09-26
JP2008505580A (ja) 2008-02-21
JP2013118668A (ja) 2013-06-13
AU2005264013B2 (en) 2010-05-27
US20090296606A1 (en) 2009-12-03
JP4681697B2 (ja) 2011-05-11
EP1766919B1 (en) 2012-12-05
US20050286519A1 (en) 2005-12-29
US7656870B2 (en) 2010-02-02
EP1766919A1 (en) 2007-03-28
JP5221625B2 (ja) 2013-06-26
AU2005264013A1 (en) 2006-01-26
EP2574001B1 (en) 2018-07-25

Similar Documents

Publication Publication Date Title
CN101044735B (zh) 用于对等混合通信的系统和方法
US9432412B2 (en) System and method for routing and communicating in a heterogeneous network environment
US9497181B2 (en) System and method for concurrent sessions in a peer-to-peer hybrid communications network
US7623476B2 (en) System and method for conferencing in a peer-to-peer hybrid communications network
US9172703B2 (en) System and method for peer-to-peer hybrid communications
US20060206310A1 (en) System and method for natural language processing in a peer-to-peer hybrid communications network
US20060095365A1 (en) System and method for conducting an auction in a peer-to peer network
US20110276700A1 (en) System and method for peer-to-peer endpoint messaging

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20150520

Termination date: 20200329