通过网络的实时媒体同步的方法和系统的制作方法

文档序号:7940888阅读:265来源:国知局
专利名称:通过网络的实时媒体同步的方法和系统的制作方法
技术领域
本发明与电信有关,更具体地,与用于接近实时同步语音通信的方法和装置有关。相关技术的描述语音通信的当前状态具有缺乏活动性的缺点。不管自动交换、高带宽网络和技术 例如卫星、光纤、语音IP(VoIP)、无线和蜂窝网络如何,在人们如何使用电话方面有很少的 变化。人们仍然需要拿起电话,拨叫另一方,等待产生连接,并接着与被拨叫方进行全双工 同步会话。如果接收者不回答,则不产生连接,且不发生会话。如果接收者有语音邮件,最多可留下单向异步语音消息。然而,发送语音邮件的过 程繁琐且耗费时间。呼叫者需要等待另一端的电话停止响铃,转换到语音邮件系统,听语音 消息问候,并接着留下消息。当前的语音邮件系统对接收者也不方便。接收者必须拨代码 来访问其语音邮件,在一系列提示中导航(navigate),听队列中的任何早些时候的语音消 息,并接着最后听发送者的消息。一般语音邮件系统的另一缺点是不能组织语音消息或将语音消息永久地存档。使 用一些语音邮件系统,用户可保存消息,但在预定的一段时间之后它被自动删除并永远丢 失。当前语音邮件系统的又一问题是在可留下消息之前必须在呼叫者和语音邮件系 统之间产生连接。如果没有产生连接,则呼叫者无法留下消息。当前电话系统基于相对过于简单化的使用模式实时即时呼叫或无条理的语音邮 件消息,其一般在它们被听到之后删除。这些形式的语音通信没有捕获可使用语音通信获 得的实际功效,或没有利用网络速度的提升和现在可用的带宽。此外,如果电话网络有故障 或不可访问(例如,便携式电话用户在没有覆盖的区域内或电话线路由于糟糕的天气而有 故障),则不可发生通信。通常,基于电话的通信没有跟上基于文本的通信中的进步。即时消息(instant message)、电子邮件、传真、聊天组和将文本消息存档的能力对于基于文本的通信都是平常 的。除了语音邮件,少有现有的工具可管理语音消息和/或将语音消息存档。比较起来,当 前可用来管理电话通信的工具与文本通信比较是原始的。公司环境提供了在当前语音通信工具中的缺点的仅一个例子。当前没有综合方法 来将整个组织中的语音通信作为公司资产来进行管理。雇员通常不记录也持久地储存其电 话会话。大多数与商业有关的语音通信资产与讲话流失得一样快,而没有方法来以任何可 管理的形式管理或存储那些会话的内容。作为例证性的例子,考虑公司的销售经理。在忙碌的一天中,经理可能打很多电话,并通过电话与客户终结几个销售。没有组织、储存并随后取回这些会话的能力,经理就 没有方法来解决可能出现的潜在问题,例如恢复一个交易相对另一交易的条款,或驳斥就 以前对销售达成协议的条款进行争论的客户。如果这个经理有容易取回并复查会话的能 力,则这些类型的问题可容易和顺利地解决。当前的战术(tactical)无线电系统,例如军事、火警、警察、护理人员、援救队和第一出动人员所使用的那些系统也有很多缺点。大部分战术无线电通信必须通过消息发 送者和接收者之间的“即时”无线电连接出现。如果在双方之间没有无线电连接,则会没有 通信。如果发送者或接收者不可使用其无线电进行传送,或无线电电路连接不能建立,则 不能发送紧急消息。战术通信因此被几个基本问题困扰。没有方法来(i)保证消息的递 送;(ii)接收者回顾并听取没有被实时地听到的消息;(iii)在会话中控制参与者的间隔; (iv)在对即时会话缺乏信号完整性时使系统处理。如果没有即时听到消息,则它被遗失。 没有工具来使发送者或接收者管理、按优先顺序排列、存档和以后取回(即,时移)以前被 发送的会话消息。战术无线电通信系统的又一缺点是每个信道一次只有一个消息被发送。考虑大建 筑物火灾的例子,其中,多队消防员、警察和护理人员同时援救被困在建筑物中的受困者, 与火灾作斗争,给受困者提供医疗帮助,并控制旁观 者。如果每个队使用同一信道,则通信 可能变得拥挤和混乱。当多于一个的人同时传输时,传输变得“被压制(step on)”。此外 也没有方法来区分开高和低优先级消息。在燃烧的建筑物内与火灾作斗争或援救被困的受 困者的一队应有高于其它队例如控制旁观者的队的优先级。如果高优先级消息被较低优先 级消息压制,则它可能不仅妨碍重要的通信,而且可能危及建筑物内的消防员和受困者的 生命。对缺乏按优先顺序排列消息的能力的一个可能的解决方案是使用多个信道,其中 每队被分配一个不同的信道。然而该解决方案产生其自己的一组问题。消防队长如何在 任何时刻及时确定听哪个信道?如果多个队都在不同的信道上,他们彼此如何通信?如果 一个队要求紧急帮助,而正在听别的信道的其他队如何知道?虽然多个信道可减轻一些问 题,但也可能引起混乱,比使用单个信道的情况产生更多的问题。有效地按优先顺序排列消息、允许多个会话同时发生、实现消息的时移以保证发 送、或支持存档和储存会话用于以后的取回和复查的管理工具的缺乏都促成与战术无线电 相关的问题。在第一出动人员例如军事、警察和火警的情况下,有效的通信工具可能实际上 意味着生和死之间的差别,或任务的成功或失败。上面的燃烧的建筑物例子在说明当前战 术无线电通信的仅仅一些问题方面是有用的。对于军事、警察、第一出动人员和使用战术通 信的其他人存在类似的问题。使用基于分组的网络,通常使用的协议包括传输控制协议(TCP)和用户数据报协 议(UDP)。UDP提供快速发送数据的优点,但以完整性为代价。分组可能在运送中被漏掉, 且当试图在目的地尽快再现(render)数据时是不可行的。尽管有缺点,但由于其速度属 性,UDP是互联网协议语音(VoIP)传输的标准。另一方面,TCP确实保证完美数据(即,所 传输的数据的准确拷贝)的发送,但以等待时间为代价。所有分组被发送,而不管花费多长 时间。此延迟使TCP对用在“即时”电话呼叫上不实际。目前,没有这样一种同时提供TCP 和UDP的性能优点的已知协议,在这种协议中,可传输“足够好的”媒体,用于尽快再现媒体 的完美拷贝的最后发送。此外,不存在根据在网络上接收者的在场以及其在即时或时移模 式中再现数据的意图来确定应通过网络发送多少信息的协议。此外,在确定传输多少数据 中使用通常考虑的其它因素,例如网络等待时间、网络降质、分组丢失、分组损坏和总带宽 条件。然而,现有技术系统不考虑接收者的在场和意图。作为结果,默认的假定是,数据被 接收者实时地再现。当接收者不打算立即再现数据时,当不需要时,这些现有技术系统不必使用带宽,降低了网络的总性能。由于上述原因,电话、语音邮件和战术语音通信系统是不够的。因此需要改进语音和媒体通信以及管理系统和方法,并且改进通过基于分组的网络发送语音和其它媒体,其 中包括接近实时同步在发送和接收通信设备两者上的语音和其他媒体的存储,以及沿着两 个通信设备之间网络上每个中继的存储。

发明内容
本发明目的在于用于实时地逐步同步在网络的节点间所传输的媒体的被存储拷 贝的方法和系统。所述方法和系统包括从发送节点向接收节点逐步传输可用的附有索引的 媒体,其中分组大小和打包间隔足以实现附有索引的媒体的接近实时的再现,其中附有索 引的媒体的接近实时的再现为接收者提供即时复查被传输媒体的体验。在接收节点上逐步 接收所传输的附有索引的媒体,并且记录尚未在所述接收节点上被本地存储的任何附有索 引的媒体。所述方法和系统还包括实时地同步在所述网络上的两个通信设备之间的会话的 媒体。当在这两个通信设备中的任意一个上创建语音或其他媒体时,通过网络实时地同步 媒体的拷贝。所述方法和系统还包括优化的路由协议,所述路由协议简单地实现和减少网 络业务和延迟。附图的简要说明参考结合附图理解的下列描述可最好地理解本发明,这些附图示出本发明的特定 实施方式。

图1是本发明的通信和媒体管理系统的体系结构的图示。图2A和2B示出在本发明的通信和管理系统中的设备上运行的客户机的结构图。图3是在本发明的通信和管理系统中使用的服务器的结构图。图4A到4D示出在本发明的通信和管理系统中使用的数据有效载荷的各种实施方 式。图5是示出根据本发明通过共享IP网络传输的数据的图示。图6是示出根据本发明通过基于电路的网络传输的数据的图示。图7是示出根据本发明在蜂窝网络和互联网上传输的数据的图示。图8A到8F是示出本发明的通信和管理系统的存储和流(stream)功能的一系列 流程图。图9A到9C是示出有效载荷质量管理器(PQM)的操作的流程图,而图9D到9F是 示出数据质量管理器(DQM)的流程图,这两个管理器都被本发明的客户机和服务器使用。图10是示出了根据本发明接近实时地同步两个通信设备之间的会话的媒体的图
示ο图11是流程图,其示出了根据本发明实时地同步两个通信设备之间的附有索引 的媒体的序列。图12是根据本发明的分布式服务架构的例子。图13是根据本发明的分布式服务架构的另一个例子,其用于示出路由协议。图14是根据本发明的另一个分布式服务架构的另一个例子,其用于显示通过网 络在每个中继上的媒体的接近实时的同步。
图15A和15B是方框图,其示出用于运行本发明的客户机和服务器应用的硬件。应注意,在附图中相似的参考数字指相似的元件。特定实施方式的详细描述现在参考如在附图中示出的其中的各种实施方式来详细描述本发明。在下列描述 中,阐述了特定的细节,以便提供对本发明的彻底理解。然而对本领域技术人员应明显,本 发明可在不使用这里阐述的一些实现细节的情况下实践。还应理解,没有详细描述公知的 操作,以便不必使本发明不清楚。A.功能概沭
通信媒体管理方法和系统支持参与语音会话和/或使用各种媒体类型例如语音、 视频、文本、位置、传感器信息和其它数据管理多个同时会话的新模式。用户可通过向指定 的接收者发送语音消息来参与会话。根据偏好和优先级,接收者可实时地参与会话,或他们 可简单地被通知消息准备被取回。在后面的情况下,接收者通过复查并在方便时回答已记 录的消息在时移模式中参与会话。用户被授权在(i)给用户提供类似于标准全双工电话呼叫的体验的近似同步或 “即时”会话;或(ii)在一系列前后时间延迟的传输(即,时移模式)中进行通信。进一步 地,参与会话的用户可从即时模式无缝地转换到时移模式,并再次转换回来。这个属性也使 用户可能通过在每个会话的两个模式之间按优先顺序排列并变动来同时参与多个会话。使 用系统的两个人因此可彼此来回发送已记录的语音消息,并在方便时复查消息,或消息可 按它们本质上合并到即时同步语音会话的速率被发送。为了本申请的目的,这种新的通信 形式称为“Voxing”。当你“Vox”某人时,会话由被记录在多个位置上的一系列分立的已记录的消息 组成,这些位置可包括发送者的编码设备(例如电话或计算机)、在网络的多个传输中继 (hop)上的服务器以及接收者的再现设备。与标准电话呼叫或语音邮件不同,系统提供了下 列特征和优点(i)会话可在即时和时移之间转换,反之亦然;(ii)分立的会话消息在语义 上连接在一起并被存档;(iii)因为消息被记录并可用于以后取回,注意力可暂时从会话 转移,接着可以后在方便时复查会话;(iV)会话可暂停数秒、数分钟、数小时或甚至数天, 并可在停止的地方再次恢复;(ν)人可再加入进行中的会话并快速复查遗失的消息和跟上 (catch up)当前的消息(例如,即时消息);(vi)发生会话不需要如传统电话呼叫所要求 的专用电路;以及(vii)最后,为了发起会话,人可简单地开始传输到个人或组。如果另一 端上的一人或多人注意到他们正接收消息,他们有选择复查和实时地进会话的权利或在他 们选择之后的时间复查的权利。通信媒体管理系统也支持优化数据通过网络的传输的新模式。系统有效地管理有 效载荷到接收者的发送,当网络条件较不理想时,该接收者实时地参与会话。例如当网络 条件差时,系统有意降低用于传输到当被接收者接收时“足够好”以被再现的点的数据的质 量,允许会话的实时参与。系统也保证随着时间的过去消息的“准确”拷贝的最终发送。系 统和方法因此提供了速度和准确性两者的优点。通过在时间性和媒体质量之间进行折衷、 使用接收者是否打算立即实时地复查消息的在场和意图以及网络等待时间、网络降质、分 组丢失或损坏和/或当前带宽条件的衡量,来优化对网络带宽的利用。应注意,会话消息可只包含语音或包含语音、视频和其它数据,例如传感器信息。当复查消息时,取决于包含在消息中的媒体的类型,听取或在视觉上复查它们,或其组合。虽然到本申请的提交为止,大多数会话只是语音,但这里描述的通信系统和方法旨在广泛 地包括会话,该会话包括多媒体类型,例如语音和视频。公开了提供下列特征和功能中的一个或多个的改进的语音和其它媒体通信和管 理系统和方法i.使用户能够参与多种会话类型,包括即时电话呼叫、会议电话、语音消息、连续 或同时的通信;ii.使用户能够在即时模式或时移模式(语音消息)中复查会话消息;iii.使用户能够在同步“即时”模式和时移模式之间无缝地转换会话;iv.使用户能够参与会话,而不等待建立与另一参与者或网络的连接。该属性允许 用户开始会话,参与会话,并且即使在网络可不用时,在网络质量差时或其他参与者无空时 也复查以前接收到的时移的会话消息;v.使系统能够在发送方保存有效载荷数据,且在网络传输之后在所有接收方保存 媒体有效载荷数据;vi.使系统能够通过将消息按序连接在一起形成在语义上有意义的会话来组织消 息,其中每个消息可被识别并联系到给定会话中的给定参与者;vii.使用户能够使用一组用户控制的功能来管理每个会话,例如复查“即时”、暂 停或时移会话直到方便复查时,在各种模式和用于管理会话(例如存档、加标记、搜索和从 档案库取回)的方法中重放(例如,播放加快、跟上即时、跳到会话首部);viii.使系统能够管理在场数据并与所有会话参与者共享在场数据,包括在线状 态、关于在即时或时移模式中复查任何给定的消息的意图、对消息的当前关注、再现方法以 及发送方和接收方之间的网络条件;ix.使用户能够同时管理多个会话,其中(a) —个会话正在进行,而所有其它会话 暂停;(b)多个会话被连续再现,例如但不限于战术通信,或者(c)多个会话是活跃的并被 同时再现,例如在股票交易所或贸易场所中;χ.使用户能够储存所有的会话,且如果需要,持久地将它们存档在有形介质中,按 需要提供可被有组织地编索引、搜索、转录、翻译和/或复查的有用资源;xi.使系统能够使用消息的尽力交付模式,以用于尽快再现的“足够好”速率提供 实时呼叫功能(类似于UDP),以及通过从最初保存的完美拷贝(类似于TCP)请求任何遗失 或损坏的数据的重传来提供传输的消息的准确拷贝的被保证的最后发送;以及xii.使系统能够通过在时间性和媒体质量之间进行折衷、使用接收者的在场和意 图(即,在实时或在时移模式中复查媒体)以及网络等待时间、网络降质、分组丢失或损坏 和/或当前带宽条件的衡量,来优化对网络带宽的利用。在各种实施方式中,可实现上面列出的很多特征和功能中的一些或全部。然而应 理解,本发明的不同实施方式不需要合并上面列出的全部特征和功能。B.术语表在解释本发明的细节之前,定义在整个书面描述中使用的一些术语和缩略语是有 用的。术语的该术语表被按系统部件、媒体、媒体管理、人和会话管理组织成组。B. 1.系统部件
客户机客户机是通信系统中的用户应用程序,其包括用户接口、持久性数据存储 器和“Voxing”功能。用户与客户机应用程序进行交互作用,且客户机应用程序管理通过网 络传输或接收的所有通信(消息和信号)和有效载荷(媒体)转移。客户机支持对媒体的 编码(例如,语音、视频或其它数据内容的捕获)以及对媒体的再现,并支持对数据在网络 上的传输进行优化以及保护、加密和验证。客户机可由一个或多个用户使用(即,多租户)。设备运行客户机应用程序的物理设备。用户可在任何给定的时间点主动地登录 到单个设备或多个设备。在不同实施方式中,设备可为通用计算机、便携式计算设备、可编 程的电话、可编程的无线电装置或任何其它可编程的通信设备。服务器通信网络中的计算机节点。服务器负责通过网络和持久性存储器将在用户之间来回发送的消息按规定路线传送,还负责对媒体有效载荷进行存档。服务器提供对 数据在网络上的传输的优化以及路由、译码、保护、加密和验证。B. 2.媒体消息从一个用户到另一的通信的单个单位。每个消息由某种媒体例如语音或视 频组成。每个消息被分配某些属性,包括(i)发送消息的用户;(ii)它所属的会话;(iii) 可选的或用户创建的重要标记;(iv)时间戳;以及(ν)媒体有效载荷。媒体音频、视频、文本、位置、传感器读数例如温度、或其它数据。会话两个或多个用户之间在其设备上(被识别、持久地储存、分组并按优先顺序 排列)的一串消息。用户通常按需要使用其设备,通过在实时或在时移模式中复查消息或 创建并发送会话消息,来参与会话。当新消息被创建时,它们定义新的会话,或它们被添加 到现有的会话。会话首部由最近的扬声器编码的会话的最近的消息。它是用户在复查“即时”时 处于会话中的位置或人在使用“跳到即时”特征的情况下所跳到的位置。多会话管理系统或MCMS 作为客户应用程序的部分运行的应用程序,其使用户能 够使用各种媒体类型参与多个会话。使用MCMS应用程序,用户在多个会话中选择一个会话 作为当前的,其中只有当前会话的消息被再现。对于选定的当前会话,用户可从时移模式中 的一系列来回消息转换到接近同步的“即时”模式,类似于标准电话会话,并再次转换回来。 未选定的会话的消息处于暂停状态。如果其他人仍然参与那些会话,则与未选定的会话相 关的消息将累积。用户可选择性地在多个会话中转换当前会话,并复查选定的当前会话的 被累积的消息。连续多会话管理系统或MCMS-C 类似于MCMS,具有再现和使用户能够通过时移和 优先级分级系统来管理并参与连续多个会话的增加的特征,其由系统自动管理。MCMS-C应 用程序允许连续会话的消息按优先顺序被再现,与只再现当前选定的会话的消息的MCMS 相反。MCMS-C特别适用于下列情况连续会话的消息按优先顺序被再现很重要,和/或接 收所有消息,即使属于较低优先级会话的那些消息,比实时地接收消息更重要。MCMS-C可能 适合的情况的例子包括但不限于医院、出租车队管理或战术通信。同时多会话管理系统或MCMS-S 类似于MCMS,具有能够使用MCMS-S的增加的特 征,选择用于同时再现的多个会话,与只再现当前选定的会话的消息的MCMS不同。MCMS-S 特别适用于下列情况用户同时听多个会话,例如交易人听不同交易的多个经纪人并向其 中的一人或多人周期性地同时发送交易请求。MCMS-S也可适合于战术通信。
优先级系统用来确定当用户参与MCMS-C时接着再现哪个消息的机制。优先级由 系统自动管理。用户可设置默认的优先级,或可使用一组预定的系统优先级。在其中多于 一个的消息准备被同时再现的冲突的情况下,系统至少部分地根据优先级解决该冲突,以 确定什么消息要立即再现以及什么消息要时移。标记用户或系统可分配到会话或消息的一组属性,例如主题(公司名)、指令 (行动条款)、指示符(会话概要)、或人可能想要通过其来搜索或组织数据的任何其它标志。重要标记使发送者能够指定消息何时被再现的特殊消息属性,而不管其它优先 级设置如何。例如“紧急”重要标记将优先于其它优先级。该特征对战术系统很关键,虽然 任何系统可配置成使用或禁用该特征。分组能够通过计算机网络被按规定路由传送的二进制数据的任何单位。每个分 组由首部(元数据)和有效载荷(媒体数据)组成。包括标准分组协议,例如但不限于互 联网协议(IP)、EvDO、UMTS、或任何其它基于分组的无线电、光纤或有线网络。首部或分组首部描述分组的分组部分;关于有效载荷的元数据、其编码类型和 目的地。Vox分组使系统和方法能够进一步改进和优化消息、媒体和其它信令信息的发 送的专有分组。媒体有效载荷(或有效载荷)分组的实际媒体部分。B. 3.媒体管理时移延迟(TSD)在Vox分组的到达与分组在设备上再现之间的时间量。TSD必须 超过最小时移延迟。TSD —般由用户在接收到之后的某个时间选择复查会话消息时的行为确定。最小时移延迟(MTSD)被客户机强加以允许使用抖动(jitter)缓冲区技术来进 行抖动处理的时移延迟。这使系统延迟再现,直到足够数量的分组到达以产生可用的媒体 流。系统一般随着时间的过去适应性地调节MTSD,以补偿网络中的变化的条件。再现以适合于用户使用的形式(例如,语音、文本、图形显示、视频或其组合)将 媒体流发送到用户。混合一个或多个媒体流的再现。例如,来自会话的两个参与者的媒体流可在再现 时被混合,产生类似于多人同时讲话的会话的用户体验。编码转换由用户所产生的(例如,语音或视频)、或以其他方式在设备上引起 (例如GPS或其它传感器数据)的媒体、或将媒体转换成由客户机处理的数字数据的过程。自适应抖动缓冲区抖动缓冲区或去抖动缓冲区用于对分组交换网络引入的抖动 (即,序列分组之外的到达或分组的延迟的到达)计数,以便可没有中断地执行通过网络传 输的音频(或视频)信号的连续再现。数据在再现之前存储在缓冲区中,以允许媒体的合 理尺寸的缓冲区到达。媒体可在所有分组被接收之前被再现,为传播折衷选择质量。自适 应抖动缓冲区能够动态地改变其尺寸以优化延迟/质量折衷。持久性无限消息缓冲区(PIMB) :PIMB是指执行“即时”数据的去抖动以及存档数 据的存储和取回的、基于时间的媒体的存储的存储管理系统。PIMB还包括媒体的可能无限 和持久性存储的额外属性。PIMB在一些或所有参与者设备和/或服务器维持消息和会话的Vox分组的“准确”或完整拷贝。分组丢失补偿或隐蔽(PLC):在再现媒体流期间,PLC部件补偿遗失的分组,插入 结果以向复查者提供流。遗失的分组可被再现为无声,或来自相邻分组的信息可用于提供 插入的声音或图像。待使用的特定的方法将依赖于媒体、使用中的编解码器和其它通常已 知的参数。B. 4 人用户被授权使用系统的人。联系人系统对用户或非用户的记录。用户一般参与和其联系人列表上的成员的 会话。非用户是使用传统电话、无线电装置或启用其它非客户机12的设备来访问或使用系 统的用户。组多个联系人的联合。联系人可被选择性添加或从组中删除。当会话发生在组 中间时,组中的所有成员可以或可以不参加。信道一般用于战术通信系统。信道类似于组,因为它使多个联系人与信道关联。参与者被识别为会话的成员的人。可为用户或非用户参与者。B. 5.会话管理时移时移是当任何消息(如用户接收者所确定的)被接收之后,在任何时间播 放该消息的能力。通过时移,用户可复查消息(i)通过在MTSD之后立即再现来立即按需 请求;或(ii)依据用户的判断在复查消息的模式中时移;(iii)来自档案库,用于老的会话 的搜索、重建等;(iv)在延迟的一段时间之后适应需要被首先复查的其它较高优先级消息 (或会话)的复查;(ν)和/或如果必要使消息重复地被再次听到和理解。换句话说,时移 是用户在系统强加MTSD之后的任何时间再现消息的能力。复查听、观看、阅读或以其他方式观察消息中的媒体内容。复查可在接近同步的 实时的“即时模式”或时移模式中发生。意图(i)记录用户是希望尽快复查会话消息还是希望在时移模式中复查消息的 用户定义的属性;(ii)由用户的行为暗示;或⑴和(ii)的组合。注意力记录用户是否此刻复查给定会话的消息的用户属性。跟上即时(CTL)允许不在会话首部的用户更快地复查以前的消息以“跟上即 时”(即,会话首部)的再现模式。CTL特征可使用任何数量的跟上技术,例如消息的较快重 放、消息的媒体中的间隙的移除、犹豫虚词(hesitation particle)的移除等。当用户跟上 即时时,系统无缝地进入即时会话。这是例如在用户需要暂时将其注意力从会话移走但在 其返回时希望听到整个会话的情况下关于会议电话的非常有用的特征。跟上模式确定CTL过程如何跟上(即,重放加快、消除无声和犹豫虚词或其组 合)的用户配置或预先配置的模式。跳到即时(JTL)该特征允许用户从其当前位置跳到会话首部。当用户不想复查 其会话中的当前位置与会话首部之间的所有消息时,他们一般使用JTL特征。当实现JTL 特征时,用户略过任何中间消息,并开始再现在会话首部处的“即时”消息。MCMS参与者属性由用户定义的、或由系统从用户行为理解的、由管理员分配的、 或其组合的一组属性,这些属性定义意图、注意力、优先级和接收者对给定会话的再现偏 好。这些属性包括但不限于(i)当接收者希望再现会话消息时的意图。可能的意图值包括“现在”、“时移”、“跟上即时(CTL) ”、“暂停”和“从不”;(ii)跟上模式,其是确定CTL过 程应如何使接收者跟上即时(例如,播放加快、略过无声间隙或犹豫、或以正常速度播放) 的配置设置;(iii)时移延迟(TSD),其定义接收者在会话中的当前位置离会话首部多远, 以及(iv)消息相对于接收者的其它会话的优先级。C.系统结构参考图1,其示出了根据本发明的一个实施方式的电信和媒体管理系统的结构图。 系统10包括分别在设备13i到13n上运行的多个客户机12i到12n。设备13通过包括一个 或多个服务器16的通信服务网络14彼此通信。一个或多个网络IS1到18n设置成将多个 设备H1到13n耦合到通信服务网络14。在不同实施方式中,网络18可为公共交换电话网 络(PSTN)、基于例如CDMA或GSM的蜂窝网络、互联网、战术无线电网络、或任何其它通信网 络、或其组合。通信服务网络14是在各网络IS1到18n的顶部上的或以其他方式与各网络 IS1到18 进行通信的网络层。在不同实施方式中,网络层14是异类或同类的。客户机U1 到12n使用称为“Vox分组”的单独的消息单元彼此通信并与网络IS1到18n以及网络14上 的服务器16进行通信,这将在下面详细描述。P.客户机结构参考图2A和2B,其示出了在设备13上运行的客户机12的结构图。如图2A所示, 客户机12包括多会话管理系统(MCMS)应用程序20、再现和编码模块21、以及MCMS应用数 据库22。如图2B所示,客户机12还包括存储和流(SAS)模块24,其具有持久性无限消息 缓冲区(PIMB)读出器26、PIMB写入器28、PIMB数据库30、数据和网络质量(DNQS)存储器 32、以及媒体驱动器和编码器硬件34。MCMS应用程序20以及存储和流模块24分别通过消 息处理模块25a和25b彼此进行通信。客户机12还包括验证-加密-保护模块40和通信 协议模块44。模块40在将“Vox”分组传输到客户机12以及从客户机12接收“Vox”分组期间提 供验证、加密和保护服务。当在接收数据时传输数据并将Vox分组从本地分组去封装时,通 信协议模块44将Vox分组封装到底层网络18所使用的本地分组中,底层网络18连接到运 行客户机12的设备13。使用模块40和44,在客户机12之间提供多方端到端验证、加密和 保护。消息在网络IS1到18n和网络14中从第一发送设备13到第二接收设备13被验证、 加密和保护。D. 1. IMCMS 数据库数据库22储存并管理系统10中很多实体的持久性元数据,包括联系人和参与者、 会话和消息(即时和所储存的)、和默认优先级、以及关于服务器16的信息。此外,MCMS数 据库22储存用户会话、在场和状态的从一时刻到另一时刻的操作数据,以及与用户进行会 话的或用户联系人列表上的所有参与者的会话、在场和状态的从一时刻到另一时刻操作数 据。例如,对于会话和消息,数据库22记住状态信息,例如用户已经或未曾复查的会话的什 么消息、优先级、以及在其中客户机12是参与者的每个会话的跟上即时状态、所有参与者 的在场和状态、以及其它网络和其它系统管理数据。P. 1. 2MCMS 应用程序MCMS应用程序20使用各种媒体和数据类型(语音、视频、文本、位置、数据等)支 持参与会话和/或管理多个会话的不同Voxing模式。用户通过使用他们的启用客户机12的设备13将消息发送到指定的接收者,来参与会话。根据偏好和优先级,接收者可实时地 复查消息,或他们可仅仅被通知消息准备好被复查。用户可从一系列消息来回转换,这些消 息在时移模式(或语音消息)中或在接近同步的全双工会话(类似于标准“即时”电话呼 叫)中被复查并接着再次回到语音消息。MCMS应用程序20允许用户实时地控制与其最重 要会话的交互作用,而不遗失其它正在进行的会话中的任何消息。例如,MCMS应用程序20 通知来自会话的紧急或高优先级通信的用户他们目前不复查。MCMS应用程序20也使来自 所 有会话的所有消息被储存,用于以后取回,所以它们可在任何时间被复查。根据各种实施方式,存在MCMS应用程序20的几种不同的操作模式,包括连续 MCMS(MCMS-C)和同时MCMS (MCMS-S),其分别支持消息的连续和同时的再现。下面详细描述 这些实施方式中的每个。除非特别指出,术语“MCMS”通常用于表示MCMS应用程序20,其包 括前述不同的模式。MCMS应用程序20是包括很多模块和服务的多层结构。模块和服务包括MCMS数据 库模块20a、SAS服务模块20b、消息和信令服务模块20c、用户接口应用编程接口(API)20d、 用户接口模块20e、会话/消息管理服务20f、优先级服务20g、联系人服务20h、在场/状态 服务20i以及消息/信号服务20j。P. 1. 2. IMCMS 数据库樽块MCMS数据库模块20a是管理MCMS应用程序20访问MCMS数据库22所必需的所有 功能的服务模块。P. 1. 2. 2SAS 服各樽块SAS服务模块20b包括一组功能调用,其实现MCMS应用程序20和存储和流模块 24之间的通信和协调,且其分别通过消息处理模块25a和25b来回传递。当被用户调用和 /或被网络条件指示时,这组功能调用使MCMS应用程序20和存储和流模块24能够按需要 操作来实现各种Voxing功能。SAS服务模块20b所执行的一些功能包括维持和传递消息传 输和消息确认的状态、用于再现消息的指令、以及用户的状态和在场。P. 1. 2. 3消息和信令服务模块消息和信令服务模块20c在客户机12和服务器16上运行,并实现系统10的客户 机12和服务器16之间的通信。包括消息、数据和其它信号的该通信允许客户机12和系统 10跟踪并管理通信、网络状态、用户和用户状态。在客户机12和服务器16上运行的消息和 信令服务模块20c之间发送的消息和信号的类型包括例如用户的网络可用性、服务器16发 送到客户机12(可能包括“高水印(high water mark)")的消息的跟踪,这些消息确定是 否整个消息或消息的某个部分丢失(例如由“产生的”客户机创建的每会话每参与者的序 列号)、用户是否正讲话或复查给定会话的消息、用户相对于会话首部的位置、或参与者何 时不再复查会话实况。这些是在客户机12和服务器16上的消息和信令服务模块之间发送 的很多类型的消息和信号中的一些的实例,且决不应被解释为限制本发明。P. 1. 2. 4 用户接口 API用户接口 API 20d是界定一组功能调用的模块,这些调用定义用户接口模块20e 和MCMS应用程序20的底层服务之间的编程接口。用户接口 API 20d支持通用方法,例如 UI应用程序支持、以及用户接口操作MCMS应用程序20所必需的所有功能调用。在各种 实施方式中,用户接口 API 20d使客户机12能够支持各种用户接口和设备类型,例如基于Adobe Flash的和/或Microsoft Windows应用程序、蜂窝或移动电话设备、以载频驱动的 PSTN设备、语音用户接口(VUI)和物理无线电通信接口。在各种实施方式中,用户接口 API 20d既使高度灵活的也使高度受限的用户接口的设计能够支持MCMS应用程序20的功能。P. 1. 2. 5MCMS 用户接口樽块MCMS用户接口模块20e支持客户机12的音频和视频用户接口的操作和功能。用 户接口模块20e支持很多用户交互作用,并可使用各种交互作用介质例如图形用户接口屏 幕的阵列、音频/DTMF接口或设备13上的语音用户接口来实现,所有这些交互作用介质都 使用户能够与系统10进行交互作用。被支持的用户交互作用的部分列表例如包括功能登 录;管理、加入和监控会话;控制会话再现;管理优先级;以及请求复查被存档的会话。应注 意,该列表是示例性的,且决不应被解释为限制本发明。D. 1.2. 6会话/消息管理服各
会话/消息管理服务20f是定义管理数据结构和过程的一组功能的模块,其负责 管理并保留用户管理在会话的参与者之间传输和接收的媒体(例如,语音或视频内容消 息)的接收和复查所需要的所有信息。消息被组织成会话。运行应用程序12的设备13所 发送和接收的媒体可用于在被接收时立即复查。接收到的媒体也被记录,用于在时移模式 中复查、会话管理和归档目的。在可选的实施方式中,消息或会话可以可选地被暂时标记, 指定其期望的保留要求(例如,超出对立即再现的要求,一些消息将不被保留或储存)。在 又一实施方式中,媒体可以可选地被标记用于只在时移模式中复查,且不能在接收到时立 即被复查。对于用户的每个当前的或正在进行的会话,会话/消息管理服务20f进一步实现 在任何时间媒体到接收客户机12的发送,且接收客户机12无缝地使这些消息与适当的会 话相关,而不管接收者活动或不活动。使用会话/消息管理服务20f,所有会话实质上是异步的。如果两个用户主动地 参与给定会话,且在传输之间用户控制的延迟最小,则体验将是同步全双工会话之一,如同 当前的电话或VoIP会话一样。如果用户由于无论什么原因延迟其参与,则会话趋向于异步 语音(或其它媒体)消息体验。在可选实施方式中,会话可以可选地被标记为仅仅异步消 息或仅仅同步消息。在这些情况的任一个中,会话不能在两个模式之间移动,除非标记被重 置。在标记被重置之后,会话再次可在接近同步(即,即时或实时)和异步(即,时移或语 音消息)模式之间移动。会话/消息管理服务20f以逐步的方式处理消息的传输和接收。当传输时,媒体 可在消息被同时编码、储存和传输时产生。换句话说,消息的传输可与用户产生媒体同时出 现(即,当对其设备13讲话或产生视频时)。在接收侧上,消息的接收、储存和再现也都逐 步出现。消息不需要在它们可被再现之前被全部接收到。消息的再现可与消息被传送同时 出现,直到刚好达到MTSD。进一步地,服务20f也能够同时传输正在进行的消息并再现进入 的消息。服务20f的逐步性质允许用户参与即时会话,对会话的媒体同时储存和流式化,用 于以后取回和复查以及这里所述的其它功能。如果用户遗失早些时候的消息或卷入另一会话,通过会话/消息管理服务20f对 消息进行的时移,允许用户对会话“跟上即时”。该时移过程消除了用户向其整个组或信道 广播使消息重复的请求的需要。较老的消息可在任何时间以可能较高的速度重放,以节省时间。用户可容易在其消息中和各个消息内来回跳跃。复查过程可在消息-优先级基础上 配置成可能跳过较低优先级的消息。在一个实施方式中,会话/消息管理服务20f也由特定的参与者(讲话者)识别 消息,且默认地混合被同时发送(MCMS-S)的会话消息。在可选实施方式中,用户可分开复 查会话的不同参与的讲话者的传输。会话/消息管理服务20f进一步允许在被添加到活跃的或存档的会话的参与者中 间共享会话。在一个实施方式中,任何添加到会话的参与者被提供对会话的访问,并有取回 以前的会话消息用于复查的能力。在可选实施方式中,所添加的参与者被提供对只从新参 与者加入的点开始的会话消息的访问,而不是任何以前的会话消息。会话/消息管理服务20f也负责管理用于控制存储和流模块24所执行的所有再 现任务的功能。这些任务包括适合地对运行应用程序12的设备13再现媒体(例如,语音、 视频等)。这些再现任务包括但不限于混合消息(即,交迭的消息)的再现,以及根据用户 定义的标准的再现,例如播放加快、跟上即时、消除无声和移除犹豫虚词、频移、以及在多方 会话中将独立的增益控制应用于各个发送者的能力。
P. 1.2. 7优先级服各优先级服务20g是定义管理数据结构和过程的一组功能的模块,其负责管理并保 留用户管理用户所参与的连续会话(即,MCMS-C)的优先级所需的所有信息。当用户参与 多个连续的即时会话时,用户需要按优先顺序排列会话。当不同会话的消息准备同时再现 时产生问题。算法用于确定消息被再现的顺序,该顺序考虑待再现的消息的可用性和用户 设置的优先级。算法确定具有最高优先级的可用消息首先被再现,而任何同时可用的消息 被自动时移,恰好足以允许再现较高优先级的消息。当再现时间变得可获得时,系统将根据 用户的优先级自动再现时移的消息。P. 1.2. 8联系人服务联系人服务20h是定义管理数据结构和过程的一组功能的模块,其负责管理并保 留验证一个或多个联系人并使一个或多个联系人与会话相关联所需的所有信息。当作为与 多个联系人相关的会话的一部分发送消息时,所有的联系人都接收到该消息。D. 1. 2. 9在场/状态服务在场/状态服务20i是定义管理数据结构和过程的一组功能的模块,其负责管理 并共享在系统的某些用户和/或非用户之间的在场和状态信息。在各种实施方式中,为参 与客户机12的用户所参与的会话的所有用户和非用户、联系人列表中的所有用户和非用 户、或预定域内的用户(例如,公司或其它组织的成员)维持在场和状态信息。这些例子只 是例证性的,且不应被解释为限制性的。在场/状态服务模块20i可管理和共享关于用户 和/或非用户的任何限定组的在场和状态信息。在场/状态服务20i使用户能够监控其它用户的意图、注意力及其对任何给定会 话的时移延迟(即,他们对复查会话实况的消息落后到什么程度)的状态。在一个实施方 式中,提供了关于在场和状态数据的可用性的隐私控制。在场/状态模块20i进一步控制 使系统10能够发送与用户的行为和意图匹配的消息的数据。例如,用户可通过指定复查或 不复查会话实况的意图来指示其状态。作为响应,根据用户的意图再现的命令,在场/状态 服务20i发出使“即时”或时移的消息。此外,用户的意图被会话的其他参与者共享。服务20i也能够从用户的行为推断其它状态值。在场和状态信息也用于优化网络业务和带宽,如下面更详细描述的。D. 1. 2. 10消息/信号服各消息/信号服务20j是定义管理数据结构和过程的一组功能的模块,其负责使用 特殊的消息或可听音向系统10的用户发消息和发信号。特殊的消息或音可包括例如消息 是即时的还是时移的、消息来自于谁的指示、优先级以及其它因素的指示。消息/信号服务 20j进一步具有下列能力(i)发信号通知网络上的用户的在场或缺席,以及通知是否一个 或多个用户不再主动复查会话消息的能力;(ii)当其注意另一会话而根本不注意其设备 13时,“响铃”或以其他方式通知另一用户引起其注意;(iii)为当前不在网络18上的用户 留下消息,从而下次个人再次连接到网络18时立即复查该消息;(iv)产生警告发送者发送 消息没有被接收者接收到的可听到的或可见的反馈,产生消息被接收者接收时的确认,和/ 或指示消息何时被接收者听到的确认;以及(ν)实现优先级方案,其中可在会议或战术呼 叫时通知个人立即需要其注意力在呼叫上。该指示可传达接收者多级别紧急事件和某种确 认。P. 1. 2. 11再现和编码再现和编码模块21负责执行MCMS应用程序20的所有再现任务。这些任务包括 为运行应用程序12的设备13适当地再现媒体。P. 2存储和流樽块存储和流模块24支持下述很多功能和性能属性。使用存储和流模块24,消息传输本质上是“全双工的”,使任一方能够在任何时间 发送消息,即使当另一方也在发送消息时,或如果另一方没有空或以其他方式在使用中。存 储和流模块能够如在即时PSTN或VoIP呼叫中一样再现消息,或在时移消息模式中发送它 们。它能够优化传输并根据用户的愿望控制再现。存储和流模块24维持与底层网络18上的所有目标接收者(例如服务器16或其 它设备13)的连接性,管理所有消息、信号和媒体传输,并优化在网络18上的发送速度和带 宽利用以满足用户的即时性能要求,同时管理网络质量和能力。模块24适应并优化与底层 网络18的质量和能力相称的媒体发送。当可获得底层网络资源不充足时,所传输的媒体 流的质量可能被降低。当带宽变得可用时,所传输的媒体流的质量可能提高。除了对媒体 质量的折衷以外,存储和流功能可根据用户意图对在每个分组中传输的媒体的数量进行折 衷,以如下所述实时地再现数据。通过根据底层网络18的条件动态地控制媒体的发送速率,存储和流模块24被优 化以发送在接收时“足够好”再现的时间敏感的媒体,并为了存档目的通过请求丢失的、低 质量或损坏的分组的重传的后台过程,来保证媒体的准确或完整拷贝的最终发送。只要足 够的网络资源存在以满足最低媒体质量水平,该重传就不妨碍即时呼叫媒体的再现。系统 10的客户机12因此设计成在以相当大的可能等待时间为代价的媒体的准确或完整拷贝的 发送与媒体的快速发送之间填补性能缺口,但不保证完整性。在本申请的上下文中,术语 “足够好”意指媒体的质量足够,使得当它被再现时它是可理解的。“足够好”的概念因此是 主观的,且不应在绝对的意义上被解释。例如,足够好的某些媒体的质量水平可根据媒体的 类型、环境和其它因素变化。
存储和流模块24进一步持久地储存通过利用设备13产生的、或以其它方式使用 设备13发源的、或通过网络18从其它设备13和/或用户接收的所有媒体。将该媒体储存 在运行客户机12的设备13上有一些重要的优点(i)它使用户能够为另一方留下消息,即 使在发送者和/或接收者没有空或网络连通性差时。在不充足的带宽的情况下,消息将与 可有效地使用可用带宽一样快得被传输。在没有连通性的情况下,只要网络连通性变得可 用,就将消息排队用于传输,导致时移发送;(ii)用户能够暂停、重放、快进并对于正在进 行的会话跟上即时,以及取回和复查被存档的以前会话的消息;以及(iii)它实现在系统 10上的数据有效载荷的优化,并提高了相对网络带宽和可能不时地出现的连通性问题的系 统适应性。存储和流模块24还负责适当地混合消息以产生交迭的消息(由会话或背景噪声 中的讲话者的正常交迭产生),模拟实际会话,其中多方正在讲话;再现音频媒体的转录或 转换;根据很多用户定义的标准调节媒体的再现,该标准包括播放加快、消除口语词之间的 无声间隙、移除犹豫虚词、以及频移;以及在多方会话中将独立的增益控制应用于各个发送 者的能力;以及其它可能的再现选项。存储和流模块24管理其本身和MCMS之间的控制和信息消息。D. 2. 1持久件无限消息缓冲区(PIMB)持久性无限消息缓冲区或PIMB 30是用于其储存和取回的一组附有索引的(即附 有时间戳和顺序编号的)媒体有效载荷数据结构和系统。在一个实施方式中,PIMB 30中 的数据是任意持久性的,意味着它实质上永远可用或至少直到系统用完储存。各种保持速 率和策略可用于有效地利用存储资源。对PIMB 30的物理存储实现方法存在很多可能的实 现方法,包括但不限于RAM、闪存、硬盘驱动器、光学介质或其某种组合。PIMB 30在尺寸上 也是“无限的”,意味着可存储在PIMB 30中的数据的量并不内在地被限制。无需此限制与 数据一被再现就丢弃数据的现有抖动缓冲区技术比较。在一个特定的实施方式中,使用与 用于持久储存的硬盘驱动器连接的小和相对快的RAM高速缓冲存储器可实现PIMB 30。当 超过PIMB 30的物理储存容量时,数据保持在服务器16上(如下所述),用于以后按需取 回。诸如最近最少使用或先进先出的用户标准或置换算法用于控制储存在PIMB 30中的实 际数据和保持在服务器16上的或在任何时刻被存档的数据。PIMB 30进一步提供系统存储 器的属性和数据库的随机存取属性。任何数量的会话不管其持续时间或每个会话中消息的 数量如何,都可被储存并以后取回用于复查。此外,与会话消息相关的元数据例如其创作者 或其长度也可存储在PIMB 30中。在可选实施方式中,附有索引的媒体有效载荷和其它数 据可在指定的一段时间(例如30天)内被储存。一旦媒体的寿命超过指定的期限,有效载 荷和数据就被丢弃。在另一实施方式中,可根据包含有效载荷的消息的发送者和/或接收 者或与有效载荷相关的会话或消息的主题来丢弃有效载荷。在又一些其它实施方式中,有 效载荷和数据可被暂时标记,意味着超过对立即再现的要求,消息将不储存在PIMB30中。D. 2. 2数据和网络质量存储器数据和网络质量存储器(DNQS) 32是用于存储关于从PIMB 30读取或写到PIMB 30 的媒体有效载荷和Vox分组的信息的数据存储器。P. 2. 3PIMB 写入器PIMB写入器28为了两个基本目的将数据写到PIMB 30。PIMB写入器28写入来自运行客户机12 ( “编码接收”)的设备13上的媒体捕获设备(例如,麦克风或摄像机)的数 据。PIMB写入器28也将从其它客户机12通过网络18接收的数据写入PIMB 30中(“净 接收(Net Receive),,)。P. 2. 3. 1 编码接收为了从设备13捕获媒体,PIMB写入器28包括编码接收器28a和数据存储器28c。 当用户对着麦克风讲话或使用例如设备13产生视频图像时,硬件34接收原始音频和/或 视频信号并将其提供到编码接收器28a,编码接收器28a将信号编码成附有索引的媒体有 效载荷(此后有时简单地称为“有效载荷”)。数据存储器28c将有效载荷储存在PIMB 30 中。其它类型的媒体例如传感器数据以类似的方式转换成有效载荷。P. 2. 3. 2 净接收为了将通过网络18接收的媒体储存在PIMB 30中,PIMB写入器28的净接收功能 包括净接收器28d、数据缓冲器28e、数据存储器28f、数据质量管理器28g和网络质量管理 器28h。净接收器28d通过网络18接收Vox分组。数据缓冲器28e将接收到的Vox分组 置入其自己的适当序列中,并阻止进入的Vox分组的重现延迟至少最小时移延迟(MTSD)。 数据存储器28f将分组转换成附有索引的媒体有效载荷,并将附有索引的媒体有效载荷存 储在PIMB 30中。当有效载荷被储存时,数据质量管理器(DQM) 28g记录任何遗失或有缺陷 的分组。如果分组遗失或有缺陷,则DQM 28g安排对通过网络18重传的请求。发送设备通 过重发遗失或有缺陷的分组来回答。最终这些分组转换成附有索引的媒体有效载荷,并储 存在PIMB 30中。通过取回遗失或有缺陷的分组,发送者的消息的“准确”拷贝最终储存在 PIMB 30中。遗失和/或有缺陷的分组的重传不实时地延迟消息的再现,假定被发送的分 组具有“足够好”的质量和数量。如果不足的网络资源可用于支持新的“即时”数据以及重 传,则重传请求可被DQM 28g延迟。P. 2. 4PIMB 读出器PIMB读出器26为了两个基本目的从PIMB 30读取数据。当为本地客户机12再现 数据PIMB(“再现”)时,PIMB读出器26访问PIMB 30。当客户机12通过网络18传输数据 (“传输”)时,数据从PIMB 30被读取。D. 2. 4.1 再现为了在客户机12上再现消息,PIMB读出器26包括数据优先器26a、数据取回器 26b、分组损失补偿/内插器(PLC/内插器)26c、数据混合器26d和数据再现器26e。优先器 26a通过建立可能被再现的消息的有顺序队列,按优先顺序排列待再现的数据。它使用用户 配置的优先级用于再现连续的会话(MCMS-C)。此外,数据优先器利用媒体数据在由MTSD所 施加的限制内再现的可用性、用户的当前注意力、以及用户限定和暗示的意图。数据取回器 26b从PIMB 30取回按优先顺序排列的附有索引的媒体载荷。PLC/内插器26c使用已知的 分组损失补偿和内插算法对取回的有效载荷执行分组损失补偿和内插。要使用的特定方法 取决于使用中的媒体编解码器以及其它公知的参数。混合器26d用于将来自单个会话的多 个消息的数据流适当地混合在一起。例如,如果会话的两个或多个参与者同时讲话,则混合 器26d混合消息,产生两个参与者同时讲话的效应。在可选实施方式中,用户具有一次复查 来自一个参与者的多个流的选择。如果会话中只有一个参与者讲话,则混合器26d可只传 递单个消息流,而不执行任何混合。再现器26e从混合器模块26d获得数据,并将其转换成适合于硬件驱动器34的形式。硬件34接着根据媒体的类型驱动设备13的扬声器或视频 显示器,产生语音、视频或设备13上的某个其它可听得见和/或可看得见的通知。P. 2. 4. 2 传输为了准备用于通过网络18从客户机12传输的消息,PIMB读出器26包括数据优先 器26f、分组质量管理器(PQM) 26g、数据取回器26h、打包器26i、发送器26j和确认器26k。 数据优先器26f按优先顺序排列用于通过网络18传输的消息。使用与可用于传输的有效 载荷有关的MCMS参与者属性、网络连通性和带宽条件以及超出下一中继从而即时或时移 地再现的用户意图、且在一些实施方式中传输捆绑的可能优化,来确定优先级,在所述一些 实施方式中,到任何给定的下一网络中继的多个分组是可用的。按优先顺序排列的分组接 着使用PQM 26g被优化,这确保对即时消息的“足够好”数据质量的及时发送,同时最小化 实时带宽,如下面更详细描述的。数据取回器26h从PIMB 30取回适当的有效载荷。打包 器26i将有效载荷装配成Vox分组,其接着由发送器模块26j通过网络18发送。当接收者 接收到Vox分组时,确认通过网络18被发送回确认器26k,用于通知发送用户消息已到达其 目的地。D. 2. 5分组质量管理器PQM 26g具有几个优化目标(i)时间敏感的媒体的充分拷贝的及时发送(对于再 现“尽快从而足够好”);( )可用带宽的有效使用,意味着使用底层网络的最佳传输频率、 有效载荷质量和分组大小;以及(iii)当网络条件变化时动态地调节或改变传输频率、有 效载荷内容、有效载荷质量、分组大小等的能力。D. 2. 6网络质量管理器在网络传输的接收侧上是网络质量管理器28h (NQM)。NQM负责为将媒体发送到客 户机12的每个发送者观察网络性能的特定属性,将抖动、损失和吞吐量的期望值与其实际 值比较。这用于为每个发送者计算网络质量评级(NQR)。该NQR用于指示发送者空闲性和 接收设备的用户的会话活跃度。P. 2. 7数据质量管理器数据质量管理器28g通过观察分组损失、抖动和吞吐量,测量通过网络接收到的 数据的质量。DQM 28g为了三个目的使用这些测量(i)将接收报告发送回发送者;(ii)可 选地使用那些接收报告来请求某些数据的重传;以及(iii)使NQM 28h可利用这些测量。E.服务器结构参考图3,其为在服务器16上运行的应用程序78的结构图。应用程序78在很多 方面类似于客户机应用程序12,并包括MCMS服务器应用程序80、MCMS数据库82、存储和流 模块84、PIMB 85、数据和网络质量存储器(DNQS)86、管理在MCMS服务器应用程序80与存 储和流模块84之间来回的消息和信号的MCMS-SAS消息处理模块87a和87b、存档/取回器 88、和档案库89。应用程序78还包括验证-加密-保护模块40和通信协议模块44。MCMS服务器应用程序80是包括MCMS数据库模块20a、存储和流(SAS)模块20b、 消息/信令模块20c、会话/消息管理服务20f、优先级服务20g、联系人(包括用户和验证) 服务20h、在场/状态服务20i和消息/信号服务20的多层结构。应用程序78的前述模块 和服务类似或等同于与客户机12具有相似的参考数字的模块和服务,因此不在这里详细 描述,除了一个明显的例外。在各种实施方式中,MCMS服务器应用程序80以及存储和流模块84,包括MCMS数据库82,配置成在应用程序的一个实例中支持很多用户。所述一个实例 还可配置成支持多个域,其中每个域被定义为一组用户(即,公司或属于共同的组织的其 它用户组)。该结构允许服务器16上的每个应用程序78为多个用户(或域)服务,其中每 个用户(或域)对其他用户是不可见的。此划分被称为“多租用(multi-tenancy)”。服务器存储和流模块84执行净接收和传输的功能。对于净接收功能,模块84包 括净接收器28d、数据缓冲器28e、数据存储器28f、数据质量管理器(DQM) 28g和网络质量管 理器28h。对于传输功能,模块84包括数据优先器26f、分组优化器26g、数据取回器26h、 打包器26i、发送器26j和确认器26k。存储和流模块84的前述元件类似或等同于与客户 机12具有相似参考数字的模块和服务,因此不在这里详细描述。因为服务器16不直接与用户进行交互作用,不需要提供在客户机12的存储和流 模块24中设置的编码和再现功能。MCMS应用程序80当在服务器16上运行时不直接与用 户进行交互作用。因此,不需要用户接口和用户接口 API模块和服务20e和20d。
每个服务器16上的应用程序78可能为多个租户服务,意味着它为系统10的多个 用户服务。服务器应用程序78的PIMB 85因此明显较大,并用于存储多个用户的媒体有 效载荷,这与PIMB 30不同,PIMB 30用于只储存仅仅一个用户的所产生或接收到的有效载 荷。存储和流模块84的主要目的是接收客户机12所传输的消息并将消息传输到其它客户 机12。当消息被接收到时,它们储存在PIMB 85中并直接根据系统配置沿着到预期接收者 或到接收者的路径传输到网络层14的下一服务器16(即,下一“中继”)。存档取回器88 负责将储存在PIMB 85中的媒体有效载荷在档案库89中存档。当PIMB 85中的物理空间 用完时,PIMB 85中的媒体有效载荷移到档案库89,其为大容量存储设备。在各种实施方式 中,储存在PIMB 85中的有效载荷可根据用户定义的标准和/或任何已知的置换算法例如 先进先出(FIFO)或最近最少使用(LRU)被存档。应注意,为了简单起见在图1中只示出一 个服务器16。应理解,在实际实施方式中,多个服务器或“服务器群”可用于具有大量用户 的网络。术语“持久”和“无限”用于描述PIMB 30,且PIMB 85不应照字面被解释为绝对术 语。用户可能希望无限地储存被认为重要的一些消息。在其它情况下,例如两个朋友之间 的随意聊天,消息可在某个时间段之后被删除以节省空间。根据本发明的各种实施方式,可 使用由系统10设置的或由用户配置的不同的保留策略。词“无限”的使用指没有对PIMB强 加任何预设时间边界。这与当前的抖动缓冲器系统形成对照,其在媒体被再现之后丢弃它。 术语“持久”和“无限”因此应广泛地被解释为意指PIMB30和PIMB 85对时间范围和可存 储在其中的消息的数量没有内在限制。在持久性存储介质中给会话消息存档有很多优点。语音消息和其它媒体可按需要 被组织起来、编索引、搜索、转录、翻译和复查。语音以及其它媒体因此变成可由用户和组织 管理的资产。这些媒体资产对公司、第一出动人员、警察和火警部门以及军队具有价值。F. Vox协议和附有索引的媒体有效载荷如上所述,Vox协议由存储和流模块24使用来支持有效载荷传输、存储和优化的 所有方面。Vox分组是设计成封装在传输分组或网络18的底层技术的传输分组内部的有组 织的消息格式。该布置明显提高了系统10的灵活性。通过将Vox分组嵌入现有的传输分 组中,与定义“Voxing”应用程序的新传输层不同,系统10利用在现有电信基础设施上运行的基于当前分组的通信网络。因此不需要产生用于处理Vox分组的新网络结构,从而利用 这里所述的系统和方法的所有好处。参考图4A,其示出Vox分组95的一般格式结构。Vox分组95的格式包括用于类 型、子类型、长度和有效载荷的字段。Vox分组的不同类型包括验证、信令、媒体有效载荷、媒 体多路复用(一个消息)和媒体多路复用(多个消息)。子类型字段用于表示验证、信令或 媒体类型消息的不同类型。验证消息的可能的子类型包括用于关键字交换和验证所必需的 那些子类型。信令消息的可能的子类型包括注册、路由、消息建立和网络管理。媒体消息的 可能的子类型包括不同的编解码器类型和不同的有效载荷聚集技术。长度字段限定有效载 荷的总长度或大小。有效载荷字段包含分组95的媒体或实际有效载荷。参考图4B,其示出说明封装在网络18所使用的示例性协议中的Vox 分组95的图 示。在本例中,Vox分组95分别嵌入底层UDP、IP和以太网传输分组96中。以这种方式, Vox分组95可在网络18的底层UDP、IP和以太网层中传输。这是分组网络所使用的标准 协议封装技术。参考图4C,其示出说明封装在UDP、IP和以太网97中的媒体多路复用Vox分组95 的图示。在本例中,Vox分组95包括媒体类型字段、媒体子类型字段、长度字段、消息ID字 段、时间戳字段、序列ID字段和媒体有效载荷字段。参考图4D,其示出附有索引的媒体有效载荷98的格式。附有索引的媒体有效载荷 包括子类型字段、长度字段、消息标识符(ID)字段、时间戳字段、序列标识符(ID)字段和媒 体有效载荷的字段。Vox分组95封装到底层网络的传输分组中允许媒体、消息和会话每个都由多个属 性限定。当媒体在设备13上产生或以其他方式起源时,它一般是基于时间的,意指它随着 时间的过去以某种有意义的方式改变。例如当人参与会话时,他们讲的词集合在一起成为 句子或语句,其可随着时间的过去变化,且因而形成的数据(流和分组)将随着时间的过去 维持相同的变化。类似地,视频(与静止的照片不同)以及GPS或其它传感器数据将随着 时间的过去变化。不管类型或它如何起源,媒体被分割并置于多个Vox分组95的有效载荷 中。分组接着分别在传输和接收设备13处以流(即,流媒体)的形式被连续地储存、传输、 接收、储存并再现。因为每个分组95附有索引、附有时间戳并被给出序列标识符,单独分组 可被分割成消息。通过连续将单独的消息连接在一起,可构成会话。系统10的一个进一步的独特的方面是客户机12所产生的媒体有效载荷被储存在 多个位置。有效载荷不仅储存在产生设备13的PIMB 30中,而且储存在服务器16的PIMB 85和接收设备13的PIMB 30中。该基本特征使很多上述Voxing功能实现或变得可能,并 给系统10提供适应性和可操作性,即使当网络条件差时或当会话的参与者没有连接到网 络时。G.与底层电信协议的互操作性系统10预定在各种现有的通信网络18例如互联网、固定PSTN类型的电路网络以 及移动或蜂窝电话网络或其组合上运行或被分层。系统10围绕着在系统10中的不同客 户机12和服务器16之间移动很多小单位的信息(即,Vox分组)的概念而被设计。虽然 Vox分组可在大小上变化,根据其功能和有效载荷,它们对底层网络层都表现为相同类型的数据。在一个实施方式中,系统10为IPv4网络例如互联网而被设计和优化,但也可支持其 它类型的网络。为了该文件的目的,术语“IP”应被理解为意指IPv4、IPv6或互联网协议的 任何其它当前或未来的实现。参考图5,其示出在设备13上运行并通过共享的IP网络100与服务器16进行通 信的客户机12的图示。如所示,客户机12通过第一互联网服务器提供商A耦合到共享的 IP网络100,且服务器16通过第二互联网服务提供商B耦合到共享的IP网络100。在通 信期间,Vox分组95(在附图中被设计的“VP”)被封装在UDP/IP分组中,接着如本领域中 公知的在其它IP协议分组中交错(in terleave),并在整个共享的IP网络100中从客户机 12传输到服务器16,或反之亦然。如公知的,每个较低分组层封装直接在其上的层的整个 分组。分组也可在两个服务器16之间以类似的方式发送。消息通过共享的IP网络100从 启用一个客户机12的设备13发送到另一设备。在每个中继时,Vox分组95嵌入底层IP协 议中并被传输,直到它们达到目标目的地。图5的图示仅仅是示例性的,为了说明只示出连接到网络100的单个客户机12和 服务器16。在系统10的实际实施方式中,大量客户机12和一个或多个服务器16 —般连接 到共享的IP网络100。注意到客户机12和服务器16没有排它地使用IP网络100也是有 用的。在所示例子中,通过互联网提供商A耦合到网络100的HTTP客户机可使用HTTP服 务器来回发送分组,其通过第三互联网提供商C耦合到网络100。系统10不控制嵌入IP分 组中的VP横穿网络100的方式。更确切地,横穿并共享网络100的所有分组都根据底层共 享的IP网络100的标准程序这么做。参考图6,其示出基于“电路”的网络104,例如GSM移动电话网络。电路网络104 耦合在设备13上运行的客户机12和服务器16之间。一旦在客户机12和服务器16之间建 立电路,系统10就将Vox分组(Vpl、VP2、VP3、VP4、VP5等)分层到网络104所使用的底层 分组上,并在整个网络104中传输它们,产生“虚拟Vox”电路。Vox分组连续横穿电路网络 104,一般使用本领域中公知的用于通过电路网络传输数据的间隔或成帧数据。此外,分组 结构参数例如有效载荷大小和所包括的首部字段的数量可用于利用每个分组开销的缺乏, 并增加在整个网络104中的数据传输的速度和/或效率。应再次注意,为了简单起见,只有 单个客户机12和服务器16被示为连接到网络104。然而应理解,客户机12和服务器16之 间的额外的电路以及其它部件可同时通过网络104来建立。网络104因此不专用于Vox分 组的传输,而更确切地其可与其它类型的网络业务共享。参考图7,其示出说明与第一网络A相关的启用第一客户机12A的设备13A和与第 二网络B相关的启用第二客户机12B的设备13B之间的通信。网络A和B每个还分别包括 网关服务器16A和16B。网关服务器对16A和16B便于两个网络A和B之间的通信,允许 设备13A和13B彼此通信。在各种实施方式中,网络A和B每个可为任何类型的网络。例 如,每个网络A和/或B可为IP网络、电路类型的网络、或无线或蜂窝网络(SP,CDMA、GSM、 TDMA等)。横跨两个网络A和B的服务器16被认为是网关服务器,因为它们在两个网络之 间按规定路线传输业务或用作“门”。使用系统10,存在优化系统性能的几个底层网络交互作用考虑因素。这些考虑因 素包括例如解析Vox分组95将被发送到的底层地址、任何已发送的Vox分组的完整性、以 及可在整个给定网络或网络的组合上发送的单个消息的最大传输单元(MTU)的管理的因O目标客户机12的地址需要是已知的,以便底层网络将Vox分组95发送到正确的 位址。对于IPv4网络,该地址一般为IPv4地址,其为唯一地识别网络中的主机的32位数 字。对于其它联网技术,该地址可为某个其它类型的标识符。IP网络使用域名系统(DNS) 来将人可读的名称解析成IP地址,并使用地址解析协议(ARP)将IP地址解析成物理地址。 不管底层联网技术如何,系统10都使用上述或其它已知的编址方案以将Vox分组95发送 到正确的位置。如同几乎任何基于分组的通信系统一样,如果底层网络不能够发送其中封装有 Vox分组的分组,则所传输的Vox分组可能不被发送到其寄送的位置。大多数分组网络不通 知发送器何时丢下分组。相反,它们依赖于发送器和接收器来通知并补偿任何丢下的分组。 系统10设计成使用这些接收器接收报告消息以协调此分组丢失管理。如果底层网络能够 通知发送者丢失或丢下的分组,则系统10在其重传协议中利用该信息。
MTU的管理是确定可在整个网络中发送的最大传输单元(即,单个消息的最大大 小)。对于基于分组的网络,底层网络利用MTU。对于电路交换网络,MTU可为网络效率和性 能的可调参数。因此在大多数情况下,底层网络利用或确定可被有效地传输的Vox分组95 的最大大小。例如对于IP网络,如果有效载荷超过MTU,则分组可被分段,但遭受相当大的 性能损失。对于以太网网络上的IP,传输设备具有1518个字节的MTU,如以太网所实施的。 最大的IP分组必须为以太网首部留下空间。最大的UDP分组必须为IP和以太网首部留下 空间,且可例如在以太网上产生的最大Vox协议是以太网MTU(1518)-IP首部(20)_UDP首 部(8) = 1490个字节。因为Vox协议将具有其自己的首部,实际Vox媒体有效载荷将小于 以太网网络上的1490个字节。对于吉比特(Gigabit)以太网,MTU可大得多,但将使用类 似的规则确定。 在完全基于分组的网络中,有MTU的两个可能的值,本地链路MTU和路径MTU。确 定本地链路MTU产生有效地发送到本地网络接口的Vox分组的最大大小。路径MTU产生可 完整无损地一直发送到远程节点的Vox分组的最大大小。如果发送者通过以太网被连接, 则Vox分组可通过在途中具有较小的MTU的各种其它系统传递到接收者。到目的地的路径 上的较小MTU需要被发送者解析和知道。在IP世界中,存在用于发现称为“路径MTU发现” 的最小MTU的标准程序。对于其它类型的网络,可使用等效的程序。再次,因为系统10在 其它网络的顶部被分层,可使用上面MTU算法中的任何一个。H.操作流程图H. 1存储和流参考图8A到8F,提供了一系列流程图来示出分别在客户机12和服务器16上的 存储和流模块24和84的操作。图8A示出将消息传输到第二客户机122的第一客户机U1 的操作的序列。图8B和8C示出发送客户机U1上的PIMB写入器28和PIMB读出器28的 操作。图8D和8E示出接收客户机122上的PIMB写入器28和PIMB读出器26的操作。图 10F示出服务器16上的存储和流模块84的流程图。在图8A中,在设备U1上运行的客户机U1的用户发起待传输的媒体。媒体可用 很多不同的方法被发起于设备13,以便用户通过对着麦克风讲话而产生媒体或在其设备 13上产生视频内容。媒体也可由设备13通过接收传感器数据例如GPS信息或温度读数而被发起。无论媒体如何被发起,媒体都被PIMB写入器28 (框130)编码,PIMB写入器28将 媒体转换成附有索引的媒体有效载荷,并将其存储在客户机U1IWPIMB 30中(框132)。 客户机1上的P 1MB读出器26从P 1MB 30读出有效载荷,产生Vox分组,并通过网络18将 分组传输到接收客户机122 (框134)。沿着发送客户机U1和接收客户机122之间的路径的 每个服务器16将所传输的有效载荷存储在PIMB 85中,并将Vox分组传输到下一中继(框 133)。在接收客户机122,PIMB写入器28的净接收功能将Vox分组转换成附有索引的媒体 有效载荷(框136),并将有效载荷存储在客户机122的PIMB 30中(框138)。客户机122 上的PIMB读出器26的再现模块将从PIMB 30读取的有效载荷信息再现为适合于人使用的 介质例如音频或视频(框140)。下面关于图8B到8E更详细地描述这些步骤中的每个。在图8B中,详细提供了由PIMB写入器28执行的编码接收功能序列(图8A的步 骤130)。在初始步骤13(^中,运行客户机U1的设备13的使用产生待传输的媒体。如上 所述,可通过对着麦克风讲话、使用摄像机接收传感器数据或通过某种其它媒体产生部件 来产生媒体。在下一步骤1302中,编码接收器28a给媒体编码并产生附有索引的媒体有效 载荷(步骤1303),该有效载荷接着由数据存储器28c储存在PIMB 30中(步骤132)。在图8C中,详细提供了由客户机A上的PIMB读出器26执行的传输功能的序列 (图8A的步骤134)。在决策环131中,PIMB读出器26的传输功能连续检查以查看是否 待传输的附有索引的媒体有效载荷被写到PIMB 30中并可用于传输。如果这样的有效载荷 在PIMB 30中可用,则数据优先器26f使用MCMS参与者属性信息按优先顺序排列应首先被 发送的有效载荷,如在步骤1342中所示的。关于最高优先级有效载荷的信息被传递到运行 PQM的分组优化器模块26g(步骤1343),如下面关于图9A-9C更详细描述的。适当的有效 载荷接着由数据取回器26h从PIMB 30取回(步骤1344),并由打包器26i转换成Vox分组 95 (步骤1345)。Vox分组95接着通过网络18由发送器26 j发送到接收客户机122 (步骤 1346),接收客户机122发送回反映被接收到的分组的特性(损失、抖动、吞吐量)的接收报 告。这些接收报告给PQM提供计算给定的接收方的MABR所必需的信息。前述过程对每个 传输环重复,如从传输步骤到流程图的顶部的返回箭头所指示的。在上述实施方式中,媒体被编码、存储在PIMB 30中,并接着通过网络以串行方式 传输。在可选的实施方式中,被编码的媒体可储存在PIMB 30中,并通过网络并行地传输, 意味着两种功能实质上同时出现。在图8D中,示出了在接收客户机写入器28的净接收功能的序列(图 8A的步骤136)。在初始步骤136i中,净接收器28d通过网络18接收Vox分组95。数据存 储器28f将分组转换成附有索引的媒体有效载荷(步骤1363),这些有效载荷被储存在PIMB 30中(步骤1364)。当有效载荷被储存时,运行数据质量管理器(DQM)。DQM 28g检查遗失 或破坏的分组,确保所传输的数据的准确拷贝的最终存储,并将关于网络的条件的接收报 告发送到发送器。下面关于图9D到9F更详细地描述DQM28g的这些功能中的每个。在图8E中,示出了在接收客户机122上的PIMB读出器26的再现功能的序列(图 8A的步骤140)。在初始步骤HO1中,数据优先器26a按优先顺序排列待再现的附有索引的 媒体有效载荷,如由MCMS应用程序20使用MTSD信息以及包括用户意图和注意力状态的用 户状态和在场信息所确定的。优先的有效载荷接着由数据取回器26b从PIMB 30读取(步 骤1402)。PLC/内插器26c使用已知的分组损失补偿和内插算法,根据使用哪个编解码器,来对取回的有效载荷执行分组损失补偿和内插(步骤1403)。在下一步骤中,如果两个或多个参与者同时在同一会话中产生媒体(例如,都同时讲话),则混合器26d混合会话的多个 消息(步骤1404)。再现器26e从混合器26d再现数据流(步骤1405),为接收的用户产生 声音、视频或其它媒体(步骤1406)。在图8F中,示出了服务器16从网络18中的前一中继接收Vox分组,储存、存档并 传输Vox分组到下一中继的序列。在初始步骤中,服务器16执行PIMB写入器的净接收功 能(类似于图8D),以将接收到的数据的附有索引的媒体有效载荷存储在PIMB 85和档案库 89或服务器16中。服务器16也执行PIMB写入器的传输功能(类似于图8C),以将接收到 的分组转发到网络18上的下一中继上。以这种方式,由发送客户机U1产生的媒体的拷贝 被接收、存储并沿着到接收客户机122的路径的每个中继被发送。在前述实施方式中,接收到的附有索引的媒体的记录储存在服务器16的PIMB 91 中,并以串行方式传输到下一中继。在可选的实施方式中,接收到的附有索引的有效载荷可 储存在PIMB 91中,并实质上同时传输到下一中继。发送和接收设备13的PIMB 30上的媒 体的存储都考虑媒体的逐步传输和再现。在发送侧上,当正接收于发送设备上起源的媒体 时,它可通过网络被逐步发送。在各种实施方式中,在被编码的媒体存储在PIMB 30中之 前、之后或实质上相同的时间,可逐步传输该媒体(而不管它如何被发起)。在接收侧上,当 进入的媒体通过网络被接收时,它也可被逐步再现,假定用户选择在接近实时的模式中复 查媒体。在各种实施方式中,在进入的媒体存储在接收设备13的PIMB 30中之前、之后或 实质上相同的时间,可逐步传输该媒体。如果接收到的媒体将在时移模式中被复查,则媒体 从PIMB 30被取回(或如果在本地PIMB 30上被代替,则可能为服务器16上的PIMB 85), 用于以后在用户所指定的时间复查。在本申请的上下文中,术语“逐步的”或“逐步地”意味着被广泛地解释,且通常意 指根据数据的可用性连续处理数据流。例如,当媒体在设备13上产生或另被发起时,该媒 体的逐步编码、存储、打包和传输是连续的,只要媒体是可用的。当人讲话时,该媒体在人讲 话的持续时间内逐步或连续地被编码、存储、打包和传输。当人暂停或停止讲话时,没有媒 体要逐步处理。当人再次重新开始讲话时,媒体的逐步处理重新开始。在接收侧上,当媒体 被接收时(即,可用),媒体也被逐步处理。在媒体被接收时,它被连续地存储。当媒体在 接近实时的模式中时被接收到或在时移模式中从存储器接收时,它也将被继续再现。虽然 在语音的背景下提供了上面的解释,应理解,可按类似的方式逐步处理所有类型的媒体。此 夕卜,媒体的逐步处理不一定必须以索引的顺序被逐步处理。更确切地,媒体以其被接收的顺 序,或者通过使用其他索引方案被处理。如果在一个实施方式中不按索引顺序接收媒体,则 媒体以其被接收的顺序被逐步处理,并接着在PIMB 30中组织成附有索引的序列。在可选 的实施方式中,接收到的媒体可组织成其附有索引的序列,并接着被逐步再现。H. 2PQM操作流程图PQM 26g依赖于称为最大可用比特率(MABR)的度量,最大可用比特率是在发送和 接收节点对之间的实际传输容量或带宽(即,在给定时间点网络的容量的测量)的连续计 算的近似。当即时网络条件变化时,MABR被更新。在计算MABR中考虑网络吞吐量、分组损 失和抖动的有规律的测量。在可选实施方式中,也可根据一天的时刻、网络类型、其它条件 或参数人工设置或限制MABR。
PQM也考虑接收者的意图以优化时间敏感性的传输。如果⑴接收者的意图是“即 时”或在接近实时的模式中复查传输,或(ii)接收者希望立即复查由于某个原因当前没有 储存在其设备13上的消息(例如,消息以前储存在档案库89中),则传输被认为是时间敏 感的。接收者的意图可通过接收者的行为推断出,或接收者可设置或以其他方式指定其意 图。另一方面,如果接收者的意图是在时移模式中复查消息,则传输被认为不是时间敏感 的。接收者在即时或时移模式中复查传输的意图至少部分地限定传输的“时间性要求”。在 各种其它实施方式中,在限定传输的时间性要求时也可考虑例如传输的紧急性或优先级的 因素。在发送者和接收者对之间网络路径中的节点也需要关于接收者的意图状态一致。如果一个目标接收者指示时间性,意味着他们希望立即或即时复查传输,则在网络上沿着 发送者-接收者路径的所有中间节点需要有相同的时间性要求,而不管其他接收者的要求 如何。每个中间节点的时间性要求因此依赖于传输被发送到的接收节点。这种依赖性对于 网络传输路径中的目标节点有时称为“要求的联合”。PQM进一步考虑每个被调度的消息有效载荷传输的理想比特率或“IBR”。对于时 间敏感的传输,根据实质上实时或即时通信所需的打包率来计算IBR(在这里称为实时比 特率或RTBR)。例如对于语音,包含20毫秒的音频数据的每20毫秒分组的打包率被认为 是用于进行即时会话的可接受的IBR。以每秒千比特为单位的这样的系统的RTBR将是音 频有效载荷数据的1秒的大小加上将为传输而产生的所有网络首部的大小。对于视频媒体 或语音和视频的组合,RTBR可能实质上高于简单的语音。对于其它类型的媒体例如传感器 或GPS定位数据,RTBR可能低于语音的RTBR。对于非时间敏感的传输,IBR被设置到最大 效率比特率(MEBR)以优化网络上传输的使用或效率。通过将打包率调节到底层网络的最 大可能的值来计算MEBR。如果多个消息或有效载荷在发送和接收对之间被发送,则对传输 考虑综合IBR(AIBR)。对于每个发送和接收对,PQM通过在一系列传输环中发送数据来操作。每个发送 和接收对的传输环是独立的。在网络上的任何传输可能影响其它发送-接收对的MABR。因 此,优选地为所有接收者连续计算MABR。参考图9A到9C,示出了说明对单个发送和接收对的PQM的操作的序列。在图9A 中,示出了在确定单个发送和接收对之间的MABR中的步骤。在图9B中,示出了说明用于对 单个发送和接收对计算每个传输环的AIBR的步骤。在图9C中,示出了用于确定要在每个 环的发送和接收对之间传输的数据的数量的序列。在这三个图中示出的过程同时运行并彼 此进行交互作用,如下面更详细描述的。在图9A中,示出了用于为发送和接收对之间的网络接口计算MABR的流程图50。 在初始步骤SO1中,监控发送和接收对之间的网络接口。发送者周期性地接收报告,其包含 关于在步骤502中在接收方处的网络连接的状态的信息。报告包括关于数据吞吐量503、分 组损失504和抖动505的当前状态的信息,如由接收方在网络接口处观察到的。在步骤506 中,根据包含在报告中的这些观察资料在发送方计算MABR。通过监控或观察在这些报告中 的数据,根据发送和接收对之间的当前网络容量或条件来连续调节MABR值。当网络容量变 得对数据传输更有利时,MABR将增加。如果网络容量对传输变得较不利,MABR将减少,对 于不稳定的网络可能一直到减少零。这些报告类似于TCP网络中的节点产生的分组损失报告,但也额外地包括吞吐量和抖动信息。如果在发送和接收对之间有几个网络接口,则为每个接口计算MABR,对该接口接 收到接收报告。如果在网络上最近没有发送业务,或没有接收到接收报告,则MABR可能不 反映当前的网络条件。然而,因为当数据被传输时接收报告由接收方连续产生,发送方的 MABR度量将快速收敛到更精确的值。参考图9B,其示出说明用于为传输环计算AIBR的步骤的流程图52。在初始步骤 52i中,确定对于准备在当前环中的发送和接收对之间传输的媒体的消息(据此,我们意指 属于该消息的附有时间索引的媒体的部分)。接着建立对于媒体的消息的列表522。对于 列表中的每个消息523,考虑每个消息的时间敏感性或时间性要求524。如果特定的消息不 是时间敏感的,则IBR被设置到最大效率比特率(MEBR) 525。另一方面,如果消息是时间敏 感的,则IBR被设置到实时比特率(RTBR) 526。在下一步骤527中,以前为列表中的每个消 息计算的IBR被汇总在一起,产生传输环的综合理想比特率(AIBR) 528。如返回箭头所表示 的529,上述过程对发送和接收对之间的每个传输环重复。参考图9C,其示出说明用于确定要在每个传输环的发送和接收对之间传输的数据 率的序列的流程图54。在初始步骤51中,对于下次传输,比较MABR(如在图9A中计算的) 与AIBR(如在图9B中确定的)。如果MABR大于或等于AIBR,则被识别为准备好在环中传输的所有消息以IBR率被 打包542并传输543。另一方面,如果MABR小于AIBR,则应用一系列程序,使得PQM满足数据的充分拷贝 的及时发送、可用带宽的有效使用、和/或对有效载荷内容和质量、分组大小和传输率的调 节的其目标,以满足当前的网络条件。在初始步骤中,为时间敏感性复查列表中的消息544。如果没有时间敏感的消息, 则比特率减小到MABR545,且消息被传输543。如果列表包括时间敏感的消息,则为非时间敏感的消息分配的比特率减小546,直 到它满足MABR限制。如果将比特率一直减小到零不足以满足MABR,则这些非时间敏感的消 息从在环中待传输的消息的列表中被移除。如果比特率减小,使得它小于或等于MABR,则剩 余的消息被打包和传输543。如果非时间敏感的消息的移除不足以满足MABR,则使用另一程序,其涉及对剩余 的时间敏感的消息使用较低质量编解码器547。通过在传输环期间发送较少的比特来试图 尽快传输有效载荷数据。换句话说,通过降低有效载荷的质量,传输在给定的一段时间发送 较少的比特。在各种实施方式中,可使用不同的编解码器,每个编解码器具有不同比特率对 质量折衷。如果较低质量的编解码器的使用足够,意味着满足MABR限制,则消息被发送543。如果较低质量编解码器的使用不满足MABR,则时间敏感的消息的打包间隔增加548。对于该程序,首部与有效载荷比增加了,这降低了总比特率,但引入等待时间(即,在 传输到接收者的发送中的延迟)。如果该程序导致AIBR减小到小于或等于MABR,则传输发 生 543。如果在改变打包间隔之后,仍然不满足MABR,则比特率可逐渐降低到在MABR限制 内549。当比特率以这种方式降低时,时间敏感的消息以不足以维持即时会话的速率被发 送。因此,会话被强制脱离“即时”。如果网络出故障或条件非常差,则可能没有数据传输发生。再次,前述序列对发送和接收对之间的每个传输环重复541(|。如果在发送和接收对之间有多个网络接口,则对接收报告可用的每个接口执行关 于图9C描述的序列。在各种实施方式中,发送方可包括在多个接口中分配传输载荷的逻 辑。在不同的例子中,有效载荷可只在一个接口上发送,而在其它实施方式中,可使用一些 或全部接口。前述描述涉及系统10中的任何发送和接收对。在大部分情况下,发送和接收对将 分别包括客户机12、启用的设备13和服务器16、两个服务器16、服务器16和启用客户机 12的设备13,或甚至可能两个客户机12。如果发送节点同时向两个(或多个)接收节点传 输,则关于图9A-9C描述的上述序列对每个接收_发送对同时发生。H. 3DQM操作流稈图DQM 28g确定在客户机12接收到的数据是否被破坏或是否有遗失的分组。此外, 接收客户机12的DQM 28g产生接收报告,其被发送回网络上的传输节点。DQM 28g也运行 后台过程以确保所传输的数据的准确拷贝最终被接收和存储。下面分别在图9D到9F中描 述了这些功能。参考图9D,其示出说明用于检查遗失的和/或破坏的数据的DQM 28g的操作的流 程图。在初始步骤56i中,DQM 28g使用公知技术例如CRC或类似的完整性检查机制检查破 坏的分组。如果分组被破坏,则分组被视为遗失的562。DQM 28g接着确定任何分组是否是 遗失的563。如果在预定的一段时间之后没有接收到失序分组,则假定它为遗失的。DQM 28g 记录DNQS 32中任何破坏或遗失的分组564。另一方面,如果没有检测到破坏或遗失的分 组,则DQM 28确定是否为了节省带宽的目的,接收到的数据的质量被发送者故意降低565。 降低的质量被记录在DNQS 32中566。不管接收到的数据的质量是否降低,数据的接收信息 (例如,分组序列号、时间戳、和分组将被发送到的网络中下一节点的网络地址)被储存在 DNQS32中567。前述过程连续地重复,如到流程图的起始处的返回箭头所表示的。作为图9D中详述的过程的结果,关于未降质的分组的接收的信息、降低质量的分 组的缺陷以及遗失的分组都存储在DNQS 32中。当媒体被接收到时,DNQS 32维持关于媒 体的状态的最新消息。参考图9E,其示出说明DQM 28g的接收报告产生功能的操作的流程图。在初始步 骤中,DNQS 32被周期性地扫描SS1,以确定是否有接收报告需要被产生的任何媒体582。如 果答案是否定的,则上面的扫描过程重复。另一方面,如果媒体被识别出,则该过程确定媒 体是否是时间敏感的583,意味着用户打算复查媒体实况或用户希望立即复查没有储存在 其设备13上的媒体。如果不是时间敏感的,则接收者通知发送者将重传优先级(如下定义的)设置为低584。如果是时间敏感的,则考虑分组丢失的量585。如果分组丢失的量在可用质量范围 之外,则重传优先级被设置为高586。如上所述,如果分组丢失的量太大,则接收者可能不能 够在接收到媒体时复查媒体。如果质量在可接受的范围内,意味着传输的质量足以使其在 再现时可被理解,则用于发送接收报告的优先级被设置为低584。不管接收者是否在接收到 时复查,都发送接收报告587,DNQS 32被更新588,且网络质量管理器(NQM) 28h被更新589。 在步骤584定义的重传请求因此是以时间敏感性为条件的。在步骤586定义的重传请求是 以时间敏感性和质量为条件的。
重传优先级通知发送者的PQM 26g适当地按优先顺序排列需要重传的媒体的传 输率。例如,当重传优先级被设置为高时,则发送者的发送PQM26g应在任何新媒体之前发 送任何重传。如果优先级低,则PQM 26g应在任何新媒体之后发送重传的媒体。前述过程连续地重复,以便在媒体被接收到时产生接收报告。如果发送者没有以 及时的方式接收到接收报告,则发送者的PQM 26g将减小传输率,如果没有接收到接收报 告就最终停止传输。参考图9F,其示出说明用于请求遗失或降质的媒体的序列的流程图。在初始步骤 SO1中,周期性地扫描DNQS 32寻找遗失或降质的媒体602。如果没有遗失或降质的媒体,则 上面定义的扫描周期性地重复。如果在预定阈值的时间段之后失序分组没有到达,则媒体被认为是遗失的603。如 果分组在阈值之前到达,则不再认为它是遗失的。另一方面,如果在超过阈值之后,分组没 有到达,则它被认为是遗失的。由于遗失的分组,产生用于重传的低优先级的请求604,且请 求的时间被记录在DNQS32中605。该过程重复,直到接收到遗失的分组。当遗失的分组到 达且相应的媒体在PIMB 30中可用时,从DNQS 32移除媒体的遗失状态。因此,在步骤604 中定义的重传请求是以媒体是否被确定为遗失为条件的。如果被降质,则DQM 32确定媒体是否是即时会话的部分606。如果不是,进行对降 质的媒体的完全质量拷贝的请求607,完全质量的媒体被指定为遗失的608,并在DNQS 32记 录请求时间609。如果媒体是即时会话的部分,则不立即采取行动,以便保存网络带宽。当 会话转变到即时模式之外时,则执行步骤607到609以确保降质的媒体的完全质量(即,准 确的或完美的)拷贝最终被接收到。当数据在接收客户机12的PIMB 30中变得可用时,相 关媒体的降质状态从DQNS 32移除。在步骤607中定义的传输状态是以媒体是否被降质且 不是即时会话的部分为条件的。前述过程连续重复,如在60i从605和609到流程图的顶部的返回箭头表示的。通 过重复图9F中概述的过程,所有被传输的媒体的准确拷贝被储存在接收设备13的PIMB 30 中。以这种方式,在接收设备13保证被传输的媒体的准确拷贝的储存。I.用于语音通信的实时同步参考图10,所示为示出了会话的媒体的实时同步的图示,所述会话在使用了设备 13A的第一参与者和使用了设备13B的第二参与者之间进行。存储和流模块24的渐进特性 确保了当创建媒体时,会话媒体被逐步存储在设备13A或设备13B这二者上。在发送侧上, 当创建媒体时,操作PQM26g(图9A到9C)将使用发送设备13创建的任何媒体逐步传输和 存储在本地PIMB 30中。在接收设备13上,当媒体被接收和再现时,DQM 28g将任何被接 收到的媒体逐步存储在本地PIMB 30中。作为结果,当创建媒体时,会话的两个参与者都同 步该会话的媒体的拷贝。为清楚说明起见,图10仅仅显示了参与会话的两个设备13A和13B。应当理解的 是,无论会话中有多少参与者都可以实现媒体的实时同步。此外,为简化说明起见,图中的 网络14被显示为通用的网络云。再一次说明,应当理解的是,网络14可以包括一个或多个 服务器16,这里在13A和13B两个设备之间的每个媒介中继的PIMB 85以及存储和流模块 84存储会话的媒体的拷贝,并且使用设备13A和13B有选择地执行实时同步。参考图11,所示为示出了用于设备13A和设备13B之间的会话的媒体的接近实时的同步的序列的流程图。在这个例子中,假定设备A和设备B的用户参与了以接近实时模 式的会话。设备13A和13B可以直接地或通过一个或多个媒介服务器16 (未被示出)参与 会话。在发起会话(1102)后,设备13A和设备13B的用户每个都将典型地创建媒体。在 图的左侧,所示为用于同步设备13A的PIMB30的序列。在右侧,所示为用于同步设备13B 的PIMB30的序列。图示两侧的序列在本质上是相同的。在会话过程中,设备13A的用户将生成语音媒体(1104A)。当创建这个媒体时,如 上面关于图8B(1106A)所描述的,该媒体以附有索引的格式被编码和存储在设备13A的本 地 PIMB 30 中。
设备13B将所有被本地创建的语音媒体的状态通知设备13A,所述语音媒体是源 自与会话有关的设备13B(1108A)。在各种实施方式中,新媒体的通知可以采取各种不同的 形式。例如,通知可以发生在(i)当设备13B开始生成并且初次传输与会话有关的媒体时; ( )当设备13B登录时;(iii)每当与会话有关的媒体在设备13B上被创建,并且被传输到 设备13A时;(iv)当设备13B将使用与会话相关的设备13B所创建的所有媒体的状态周期 性地通知设备13A时;(ν)设备13A周期性地询问设备13B关于在设备13B上创建并存储 的媒体的状态,或者(vi)设备13B用同步更新消息通知设备13A这些媒体是正好先于媒体 的传输可用,还是与媒体的传输同时可用。在另一个实施方式中,(vii)会话媒体可以被存 储在设备13A和设备13B之间的一个或多个服务器16中继上。上面关于(i)到(vi)所描 述的各种通知可以发生在所述服务器16与设备13A和/或13B之间,而不是直接发生在设 备13A和13B之间。最后,这些通知可以含有⑴到(vii)的一些组合。当媒体被传输时 (如以上关于图8C所描述的),其被排序并加以时间戳,允许设备13A确定其已经接收哪个 媒体,以及其可能遗失哪个媒体。响应于通知,设备13A请求与会话相关的尚未在设备13A的PIMB 30中被存储的 所有语音媒体(1110A)。这是通过继以上面关于图8D描述的例行过程来完成的,包括如相 对于图9D到9F所描述的运行DQM 28g。依靠于条件,被请求的媒体可以是带有特定时间戳 或者在时间戳范围内的媒体。例如,如果设备A接收到的媒体小于之前所发送媒体的完整 拷贝,则请求仅仅识别需要补充的媒体,并使设备A上的媒体拷贝完整。可选择地,在进行 中的会话期间,请求可以不具有特定的结束点。作为代替,从设备A到设备B的请求是开放 式的,并且在新媒体被创建时,设备B发送该新媒体。作为响应,当与会话有关的新媒体被创建时,设备13B使用上面关于图8C描述的 序列,将所请求的媒体连同任何新媒体一起发送(1112A)。作为响应,设备13A将所有被接 收的媒体本地存储在其PIMB中。其结果是,当媒体在设备13B上被创建时,设备13A能够 维持会话的媒体的完整拷贝。当设备13B创建语音媒体时,序列1104B到1114B被实施。序列1104B到1114B 是对1104A到1114A的补充,并因此在此处不做详细描述。两个序列(1104A到1114A)和 (1104B到1114B)的最终结果是,当会话实时发生时,设备13A和设备13B两者每个都维持 会话的媒体的同步拷贝。即使当MABR小于AIBR时,在设备13A和13B上也会发生会话的媒体的同步。如 上面关于图9C所描述的,当MABR小于AIBR时,许多程序被实现以维持会话的“即时性”,其中包括仅仅传输时间敏感的媒体,使用较少比特来代表每单位时间上的媒体,增加打包间 隔,并且减小媒体被传输的速率以满足网络14上的条件。这些程序具有的优点是扩展了维 持会话即时性的能力,但这是以不传输原始编码时的媒体的准确或完整拷贝为代价的。其 结果是,虽然同步被维持,但在接收设备上得到的却是原始编码媒体的较不准确拷贝。在接 收设备上使用DQM(图9D到9F),将媒体的遗失、损坏和小于媒体全比特率版本的替代品最 终传输并存储在接收设备上。该补充程序最终导致设备13A和13B中会话的媒体的完整同 步。因此,在某些条件下,可能无法实时同步被传输媒体的完整或准确的拷贝。更确切地说, 同步可以是一个正在进行中的工作,其中仅当补充程序完成之后才能接收到媒体的完整拷 贝。虽然上面的说明是在语音会话的背景下被描述的,但应当理解的是,所述会话媒体可以含有任何媒体类型,除语音之外,还包括视频、GPS信息、或其他传感器数据。此外, 会话不一定必须只限于两个用户或参与者。无论有多少设备13参与了会话,都会发生会话 的媒体的接近实时的同步。J.分布式服各架构在上面的讨论中,网络基础设施14被表示为单个服务器16,其服务于启用多个客 户机12的设备13。在可选择的实施方式中,联网的基础设施为服务器16的分布式网络。参考图12,所示为根据本发明的分布式服务网络14的例子。该分布式网络14包 括多个服务器16。服务器16中的每一个都可以被配置成实现一个或多个与分布式网络相 关的功能。给定的服务器16可以被配置作为归属服务器(home server)、网关客户机服 务器、网关服务器、目录服务器、接入服务器、或其任何组合。无论特殊服务器16被配置成 执行多少功能,每个服务器16都共享如图3所示的架构,并且包括存储和流模块84和PIMB 85,其中可能有例外。即如果服务器16仅被配置为目录服务器,则不要求有存储和流模块 84 禾口 PIMB 85。每个用户可分配特定的服务器16作为他们的归属服务器。该归属服务器是在网 络14上存储用户会话中的每一个的媒体的地方。对于每个会话,被存储的媒体都包括由所 有参与者分担的媒体,其中包括用户分担的媒体。在一个实施方式中,归属设备13依靠众所周知的域名服务系统(DNS)来定位他们 的归属服务器16,以及定位其他用户的归属服务器16。在可选择的实施方式中,使用了轻 量级目录访问协议(LDAP)。对本领域中的技术人员而言应当明显的是,任何类型的网络目 录查询系统都可以用来定位归属服务器16。归属服务器16还管理和执行归属服务器迁移。归属服务器16通常位于网络14 拓扑中的一个便利位置,在那里用户可以正常地接入网络14。不管出于何种原因,如果用户 在一段时间内从网络拓扑中的不同位置接入网络14,则关于该用户的归属服务器16可以 被移动至在网络拓扑中对于该用户更加优化的另一个服务器16。当发生这种情况时,通过 网络14,用户持久存储的媒体从之前的归属服务器16被迁移到新的归属服务器16。在用 户移动后的预定时间段之后,这种迁移过程可以被自动发起,或者其能够被手动实现。例如图7中所示,网关服务器16是网络14和其他通信网络之间的网关。网关服 务器16横跨两个网络,并且当两个网络域之间按规定路线传输业务时,该网关服务器16负 责根据需要执行任何映射、代码转换、重新封装、采取保护措施、或者其他转换功能。例如当两个网络有不同的打包需要时,网关服务器16从一个网络所使用的格式中将分组以第二 网络所使用的格式重新打包,反之亦然。网关客户机服务器16在分布式服务架构14和启用非客户机12的通信设备1202 之间提供中间媒介。在网络14上,网关客户机服务器16代表设备1202执行下列项的功能 (i)MCMS应用20 (包括MCMS、并且可选地包括MCMS-S和/或MCMS-C)以及(ii)模块84和 PIMB 85的存储、流和持久存储操作。特别地,网关客户机服务器执行“PIMB读取器和再现” 功能(图8E)、“PIMB写入器净接收”功能(图8D)、“PIMB写入器编码接收”功能(图8B)、 以及“PIMB读取器传输”功能(图8C),这使得会话媒体被存储在服务器16的PIMB 85中, 所述服务器16代表启用非客户机12的设备1202。启用非客户机12的设备的例子可以包 括标准的座机或PSTN电话、移动或卫星电话、战术无线电装置、或者任何其他已知的传统 通信设备。另外,启用非客户机12的通信设备1202可以包括非传统的设备,其被特别地制 造为与网关客户机服务器16协同操作。关于网关客户机服务器的更多细节,可参看均在 2008年9月8号提交的序列号为12/206,537和12/206,548的美国申请,其每个的题目均 为"Telecommunication and Multimedia Management Method and Apparatus,,,此处出于 所有目的将这两者并入。
用户通过基础网络18连接到网络14的接入点被称为接入服务器16。对于用户 而言,该接入服务器16可以改变。例如,用户可以从网络14断开连接,移动到新的物理位 置,并随后通过不同的服务器16重新连接。用户的接入服务器16也可以从一个接入服务 器16迁移到另一个接入服务器。例如,当乘车旅行时,如果用户具有通过基础网络18的第 一节点到网络14的无线接入,则当用户移动到无线网络18的第一节点范围以外并进入无 线网络18的第二节点范围内时,可以改变接入服务器16。如果对于基础无线网络18的两 个节点来说,到网络14的接入点不同,则对于该用户接入服务器16将会改变。通过优化用 户和网络14上其他节点之间的通信,用户通过任意接入服务器16接入网络14的能力改进 了网络效率。目录服务器16提供关于网络12中其余部分的路由信息。当用户加入网络14时, 则接入服务器(i)通知目录服务器16该用户已经加入,并且(ii)将其自身识别为关于该 用户的接入服务器16。目录服务器16为所有连接到所述网络14的用户将(i)和(ii)连 同(iii)每个用户的归属服务器1202 —起整合到目录中。目录服务器16被不断地更新。 当用户加入或离开网络,或者当接入服务器16和/或关于用户的归属服务器16改变时,目 录被更新。以这种方式,目录总是能提供关于路由消息和其他网络业务的当前信息或最新 信息,所述其他网络业务在网络14的用户之间,或是在通过网关服务器16位于其他网络上 的用户之间。如果用户的归属服务器16和接入服务器16相同,则该服务器16持久存储由该 用户传输或接收的所有媒体。对于为了传输而由用户创建的媒体,以及对于发送给用户的 媒体,所述服务器16执行上面关于图8F所描述的功能,其中包括PQM(图9A到9C)以及 PQM(图9D到9F)的操作。以这种方式,由用户传输和接收的媒体的拷贝被持久存储在用户 的归属服务器16上。此外,任何小于完整拷贝或完全拷贝的、遗失或损坏的媒体拷贝最终 通过PQM 26g和DQM 28g的补充操作被接收。如果对于用户来说,接入服务器16不是归属服务器16,则被传输和接收的媒体至少被临时存储在接入服务器16上,这是使用了相对于图8F所描述的相同的操作,其中包括 PQM (图9A到9C)和PQM (图9D到9F)的操作。在一个实施方式中,媒体仅仅被存储在接入 服务器16上,直到确认了媒体被交付并且持久存储到用户的归属服务器16和设备13上为 止。在可选择的实施方式中,甚至当媒体的交付被确认之后,该媒体都会被持久存储在接入 服务器16和归属服务器16上。取决于应用和网络拓扑,在确认了媒体被交付到归属服务 器16和/或设备13上之后,可以使用不同的方案在接入服务器16上删除媒体。归属服务器16还负责在其档案库89中归档会话的媒体。媒体可以出于许多原因被归档,例如媒体被本地删除之后修复该媒体到设备13,或者在设备13上由用户验证之后 将媒体发送到新设备13。在图12所示的实施方式中,许多个启用客户机12的设备13通过各种接入、归属、 以及网关服务器16连接到网络14。此外,启用非客户机12的设备1202还通过网关客户 机服务器16连接到所述网络14。如上面所注意到的,每个服务器16可以实现上面所列出 功能中的一个或多个。例如,在设备13通过其归属服务器16连接到网络14的情况下,则 服务器执行双重角色,即为关于该设备的接入服务器和归属服务器。在设备13通过服务器 16而非其归属服务器16接入网络14的情况下,则关于该设备的接入服务器和归属服务器 16是不同的。在另外的其它情况下,归属服务器和/或接入服务器16还可以作为网关服 务器、网关客户机服务器以及和/或目录服务器运行。无论服务器16被配置成实现哪些功 能,当服务器16充当在网络14上用于传输消息的中继时,所述服务器16存储并且传输媒 体,如上面关于图8F所描述的,其中包括执行PQM(图9A到9C)和PQM(图9D到9F)的操 作(除了可能仅被配置作为目录服务器的服务器16)。无论执行了哪个功能或哪些功能,所 述服务器16中的每一个还是多客户共享的,这意味着它们每个都能够同时支持或服务于 多个用户。应当注意的是,服务器16的特定布置与图12中所描述和显示的功能或一些功能 都仅仅是示例性的,并且是出于图解说明的目的而被提供的。在真实的实施方式中,服务器 16的数目,由每个服务器16执行的一个或多个功能,以及分布式网络14的真实配置可以是 以近似无限多的变化数量来变化。在可选择的实施方式中,网络14可以被配置而不带有专用的目录服务器16。在这 些实施方式中,接入服务器16被配置成假定有目录或路由功能中的一些或全部。网络14 里的接入服务器16中的一些或全部可以被配置成维持路由表,其中包括“默认”路由,用于 对其他的接入服务器和归属服务器16以及用户进行定位并发送消息。在另一个实施方式中,对于其他的设备13或1202,启用客户机12的设备13可以 充当服务器16。例如,启用基于交通工具的客户机12的无线电设备13可以是关于该交通 工具驾驶者的客户机、以及关于附近所有无线电装置的服务器。在另一个例子中,计算机可 以不仅仅充当关于本地用户的客户机12,还可以作为关于启用其他客户机12的计算机的 服务器,所述计算机连接到本地网络。在另一些实施方式中,当到归属服务器16和/或目录服务器16的网络连接降质 或不可用时,接入服务器16可以提供到归属服务器16和/或目录服务器16的代理接入。 通过定位适当的归属服务器、其他接入服务器和启用客户机的设备13,并且映射启用客户 机的设备12与服务器16之间最有效的路径,接入服务器还提供当前优化的路由信息。
K.网络路由当会话发生在各种启用客户机12的设备13和/或启用非客户机12的设备1202 之间时,各个消息的典型传输是从一个或多个设备13和/或1202到一个或多个服务器16, 在分布式网络14上从服务器16到服务器16,然后再从服务器16到一个或多个设备13和 /或1202。以Vox分组95形式的消息横穿网络14,这些消息被嵌入由基础网络或一些基础 网络所使用的任何分组类型中。在各种实施方式中,基础网络可以依赖互联网协议(IP)、实 时协议(RTP)、或者任何其他的协议类型,以用于网络业务的传输。在在分布式架构14上路 由各个消息时,优选地使用在减小业务和延迟的同时维持了简单性的程序。参考图13,所示为简单的分布式网络14,其用于示出在本发明的一个实施方式中 所使用的路由程序。在这个实施方式中,网络14包括标签为“接入服务器1”和“接入服务 器2”的接入服务器16、启用客户机12的设备13ω到13⑸、许多归属服务器16、以及目录 服务器16。设备13ω到13⑷通过接入服务器1连接到所述网络14。设备13(5)通过接入 服务器2连接到所述网络14。归属服务器1、2和5分别是关于设备13ω、13⑵、和13(5)的 归属服务器16。设备13(3)和13⑷共享归属服务器16。也为第六设备13(6)提供第六归属 服务器16,在这个例子中,因为当前第六设备13(6)与网络14断开连接,所以故意未将其示 出ο当设备13ω发起与设备13⑵到13(6)的会话时,设备13ω向接入服务器1发送请 求,接入服务器注意到其已经与设备13⑵到13⑷连接。接入服务器1还从目录服务器16 请求设备13(5)和13(6)以及关于设备13ω到13(6)的归属服务器的状态。通过通知接入服 务器1设备13⑸通过接入服务器2在线并且设备13(6)不在线,目录服务器16响应。目录 服务器16还通知接入服务器1,关于参与者13ω、13⑵、13(3)到13⑷、13⑸和13(6)的归属服 务器分别是归属服务器1、2、3到4、5和6。当设备13ω发送与会话相关的消息时,这些消息被发送到接入服务器1。接下来, 这些消息被直接转发至设备13⑵到13⑷,这是因为这些设备都被连接到接入服务器1。另 夕卜,接入服务器1注意到剩余的传输目的地,特别是归属服务器5和6以及设备13⑸,具有 相同的下一中继,该中继为接入服务器2。因为所有这些目的地都共享相同的下一中继,所 以接入服务器1向接入服务器2发送每个消息的仅单个拷贝。然后这些消息由接入服务器 2发送到设备13⑸、归属服务器5和归属服务器6。归属服务器1到6中的每一个分别保存 关于设备13ω到13(6)的消息。当设备13(6)上线时,归属服务器6向设备13(6)转发消息, 使该设备能够接收会话的媒体。如果在网络14上,设备13⑸和13(6)具有不同的下一中继, 则将消息的仅单个拷贝发送到每个下一中继。由任何其他设备13⑵到13(6)所生成的消息 以与上面描述相类似的方式通过网络14被路由。上面所描述的路由程序提供了许多优势。通过经由相同接入服务器在由相同接入 服务器16所识别的设备13之间直接路由消息,减小了网络业务和延迟。对照向网络中共 享相同下一中继的多个接收者转发多个拷贝的方式,由于转发消息的仅单个拷贝,再次减 少了网络业务和延迟。通过将沿相同中继到多个接收者的消息传输合并为单个传输,并且 仅当有多个下一中继时才复制或“发散”消息,显著地减小了总网络业务和延迟。在可选择的实施方式中,接入服务器16可以被配置成允许通过相同的接入服务 器16连接到网络14的设备13直接相互通信。以这个实施方式,在两个(或更多)设备13之间直接发送的任何消息仍要被发送到公共接入服务器16,接下来该公共接入服务器16向关于相同设备13的归属服务器转发这些消息。这种布置提供了关于连接到相同接入服 务器16的设备13之间的通信在延迟方面的改善,但代价是增加了设备13和接入服务器16 这两者上的复杂度。因为所有消息仍必须被发送到接入服务器16,所以实质上加倍了网络 业务。L.分布式服各架构上的实时同步使用服务器16的一个优势是能够维持在分布式网络14上被传输的媒体的接近实 时同步。参考图14,所示为网络14的例子,该网络14被配置成在一个或多个网络18 (未 显示)的顶端。在这个例子中,两个启用客户机的设备13ω、13⑵和启用非客户机12的设 备1202通过网络14参与语音(并可选择地为其他媒体类型的)会话。网络14包括接入 服务器16ω和16(2),它们分别提供了关于设备13ω和13⑵的网络接入。启用非客户机12 的设备1202通过被配置成网络客户机的服务器16连接到网络14。另外,提供了目录服务 器16。也许除了可以有选择地包括模块84和ΡΙΜΒ85的目录服务器16之外,服务器16中 的每一个都包括存储和流模块84以及PIMB 85。当会话的消息在网络上的每个发送和接收对之间传输时,(关于设备13ω和13⑵ 的)存储和流模块24以及(关于服务器16中的每一个的)存储和流模块84运行按上面关 于图11所描述的序列。其结果是,会话的媒体被同步地存储在传统设备1202与设备13ω 和13⑵之间的网络14上的每个服务器16中继的PIMB 85中。所述媒体还被同步地存储 在设备13ω和13⑵的PIMB 30中。在一个实施方式中,媒体被同步并持久地存储在网络14上的每个服务器16中继 里。在一个可选择的实施方式中,在网络14上,会话的媒体被持久地仅存储在关于传统设 备1202的网关客户机服务器16上、和分别关于设备13ω和13⑵的归属服务器16ω和16⑵ 上,而不在接入服务器16ω和16⑵上。在后一个实施方式中,一旦确认了媒体已经被分别 持久地存储在归属服务器16ω和16⑵和/或设备13ω和13⑵上,则媒体不再被存储在接 入服务器16 ω和16⑵上。当媒体通过网络14从其源迁移到目的地时,该媒体在每个发送接收对之间被同 步。网络上的每个节点,包括启用客户机的设备13ω、13⑵和每个媒介服务器16,被“逐中 继地”同步。对照只同步发送和接收通信设备13ω和13(2),通过执行网络14上的每个发送 接收中继之间的媒体的同步,增加了在网络14上的媒体的弹性和冗余度。虽然网络14上的同步已经在语音会话的背景下被描述,但应当理解的是,所述会 话的媒体可以含有任何媒体类型,其中包括语音、视频、GPS信息、或其他传感器数据。此外, 会话不必如上面所描述的只限于三个参与者。无论有多少参与者,都会发生会话的媒体的 接近实时同步。而且媒体也没有必要在会话的背景下被传输。与会话无关的媒体能够在网 络14上被同步。最后,还应当理解的是,图14中所示出的特定网络配置只不过是说明性的, 其用于解释网络上的实时同步。该所示特定配置也不应被解释为以任何方式限制。应当注意的是,在上面关于图8Α到8F、图9Α到9F、和图10到14的讨论中,媒体 被描述为附有以基于时间的格式被索引。应当理解的是,附有时间索引的媒体是示例性的, 并且不应被解释为限制本发明。相反,可以使用任何索引格式,例如通过比特或字节序列索 弓丨、散列类型索引、二叉树类型索引、基于文件目录索引、或者其任何组合。所以术语“索引”应当被广泛地解释为覆盖任何索引方案。M.客户机和服各器硬件参考图15A,其示出说明用于储存并执行客户机应用程序12的设备13的硬件的结 构图140。硬件包括CPU 142、主存储器144和大容量存储器146。如在本领域中公知的, 客户机应用程序12被装入和储存在主存储器144和大容量存储器146中,并由CPU 142执 行。参考图15B,其示出说明用于储存并执行服务器应用程序78的服务器16 (或服务 器1202到1210中的任何一个)的硬件的结构图150。硬件包括CPU 152、主存储器154、大 容量存储器156和档案库89。如在本领域中公知的,服务器应用程序78被加载和储存在主 存储器154和大容量存储器156中,并由CPU 152执行。如上所述,一个或多个用户的附有 索引的媒体有效载荷储存在档案库89中。虽然为了方便,上面以单数形式描述了很多部件和过程,但本领域的技术人员应 认识到,多个部件和重复的过程也可用于实践这里所述的系统和方法的技术。进一步地,虽 然参考其中的特定实施方式特别示出和描述了本发明,但本领域技术人员应理解,在所公 开的实施方式的形式和细节中可进行变化,而不偏离本发明的实质或范围。例如,本发明的 实施方式用于各种部件,且不应被限制到上面提到的部件。因此,这意味着本发明应被解释 为包括落在本发明的实质和范围内的所有变形和等效形式。
权利要求
一种方法,用于逐步同步网络上的节点之间传输的媒体的存储拷贝,所述方法包括利用足以实现所述媒体的接近实时的再现的分组大小和打包间隔从发送节点向接收节点逐步传输可用媒体,其中所述媒体的所述接近实时的再现为接收者提供即时复查所传输的媒体的体验;在所述接收节点上逐步接收所传输的媒体;当所述媒体被逐步接收时,不断地记录尚未在所述接收节点上被本地存储的任何媒体;根据需要不断地生成关于尚未在所述接收节点上被本地存储的任何所记录的媒体的请求;响应所述请求,从所述发送节点向所述接收节点传输所记录的媒体;以及在所述发送节点和所述接收节点上存储所述媒体,使得所述发送节点和所述接收节点每个都同步时间媒体的拷贝。
2.如权利要求1所述的方法,还包括将可用于传输的所述媒体通知所述接收节点,其 中所述通知要么(i)先于所述传输发生,要么(ii)在本质上和所述传输同时发生。
3.如权利要求2所述的方法,其中将可用于传输的所述媒体的可用性通知所述接收节 点还包括下列步骤之一(i)从所述发送节点向所述接收节点传输所述可用媒体,由此,借助于所述传输所述通 知发生;( )当所述发送节点登录所述网络时;(iii)每当所述发送节点向所述接收节点发送媒体时;(iv)所述发送节点周期性地通知所述接收节点;(ν)所述接收节点周期性地询问所述发送节点关于将从所述发送节点传输到所述接收 节点的所述媒体的状态;(Vi)所述发送节点向所述接收节点发送同步更新消息;或者 (Vii)⑴到(Vi)的任何组合。
4.如前述权利要求中任一项所述的方法,还包括 在所述发送节点上创建媒体;当所述媒体被创建时,在所述发送节点上逐步编码所创建的媒体; 以索引格式来给所编码的媒体编索引;当编有索引的媒体被逐步传输到所述接收节点时,在所述发送节点以所述索引格式逐 步存储所编码的媒体。
5.如前述权利要求中任一项所述的方法,还包括在所述接收节点以所述索引格式存储所接收的媒体;并且,要么 (i)当所述媒体被逐步接收时,在所述接收节点上以接近实时再现模式逐步再现所述 媒体;要么( )通过再现来自存储器的所述编有索引的媒体,以由用户在所述接收节点上所定义 的任意时间,在所述接收节点上再现所述编有索引的媒体。
6.如前述权利要求中任一项所述的方法,其中所述发送节点或所述接收节点包括下列项中的一个通信设备,所述通信设备由下列项中的一个构成座机电话、无线电话、蜂窝 电话、卫星电话、计算机、无线电装置、服务器、卫星无线电装置、战术无线电装置或战术电 话。
7.如前述权利要求中任一项所述的方法,其中所述发送节点和所述接收节点两者之一 或两者都是所述网络上的服务器,所述服务器是在发起所述媒体的节点和所述接收者之间 的所述网络上的中继。
8.如权利要求7所述的方法,其中所述服务器可以被配置成作为下列项中的一个来执 行功能(i)接入服务器,所述接入服务器为一个或多个用户提供接入点以连接到所述网络;( )归属服务器,所述归属服务器用于一个或多个用户,并且所述归属服务器存储分 别与所述一个或多个用户有关的所述媒体;(iii)网关服务器,所述网关服务器横跨所述网络和第二网络,当在所述网络和所述第 二网络之间按规定路线传输业务时,所述网关服务器执行下列功能中的一个或多个映射、 代码转换、重新封装、和/或采取保护措施;(iv)网关客户机服务器,所述网关客户机服务器充当了用于通信设备的媒介,所述通 信设备连接到所述网络但不能存储所述媒体,所述网关客户机服务器代表所述通信设备来 存储所述媒体;(ν)目录服务器,所述目录服务器维持用于所述网络中的每个用户的归属服务器和接 入的目录;或者(vi)⑴到(ν)的任何组合。
9.如前述权利要求中任一项所述的方法,其中从所述发送节点向所述接收节点逐步传 输所述可用媒体还包括(i)定义传输环;( )确定在所定义的传输环期间可用于传输的所述媒体;(iii)查明在所述传输环期间在所述发送节点和所述接收节点之间的所述网络上的带宽;(ν)比较所述网络上的所查明的带宽和传输所述可用媒体所需的带宽;以及(vi)如果在所述传输环期间所查明的带宽足够,则传输所述可用媒体。
10.如权利要求9所述的方法,还包括(vii)确定在所述传输环期间所查明的带宽是否不足以传输所述可用媒体;(viii)生成所述可用媒体的减小的比特率表示;以及(iix)当在所述传输环期间所述网络上的所述可用带宽不足时,则传输所述可用媒体 的所述减小的比特率表示,由此,当所述网络上的所述可用带宽不足时,所述媒体的所述减小的比特率表示的所 述传输增强了所述媒体的交付的时间性,从而增加所述接收者在接收时复查所述媒体的能 力。
11.如权利要求10所述的方法,其中生成所述可用媒体的所述减小的比特率表示还包 括执行下列步骤中的一个或多个(a)当相对于原始编码时所述媒体的全比特率表示打包所述媒体的减小的比特率表示时,使用每媒体单位时间的较少比特;(b)调节用于打包所述媒体的所述减小的比特率表示的分组的所述打包间隔;以及 (C)调节用来打包所述媒体的所述减小的比特率表示的所述分组的传输速率。
12.如权利要求11所述的方法,还包括不断地定义传输环,并且根据需要为每个传输 环执行⑴到(iix)以及(a)到(C)。
13.如前述权利要求中任一项所述的方法,其中当所述媒体被逐步接收时不断地记录 尚未在所述接收节点上被本地存储的任何媒体还包括在所述接收节点上检查从所述发送节点接收的所述媒体;在所述接收节点上接收所述媒体时,记录所述媒体的遗失、损坏或减小的比特率表示;在所述接收节点上维持数据质量存储,用于所记录的媒体;以及 当在所述接收节点上接收所记录的媒体时,从所述数据质量存储移除所记录的媒体。
14.如权利要求13所述的方法,其中根据需要不断地生成关于尚未在所述接收节点上 被本地存储的任何所记录的媒体的请求还包括不断地扫描所述数据质量存储;不断地生成接收报告,所述接收报告包括关于重传所述数据质量存储中被记录的所述 媒体的请求;以及从所述接收节点向所述发送节点不断地传输所述接收报告。
15.一种方法,用于实时地同步通过网络所进行会话的语音媒体,所述方法包括当使用第一通信设备创建所述语音媒体时,在第一存储元件中逐步存储使用所述第一 通信设备所创建的语音媒体;通过所述网络向第二通信设备逐步传输使用所述第一通信设备创建的所述语音媒体;在所述第一存储元件中逐步接收和存储与所述会话有关的语音媒体,该语音媒体在所 述第二通信设备上生成,存储在与所述第二通信设备有关的第二存储元件,并且通过所述 网络从所述第二通信设备被传输到所述第一通信设备;查明与所述会话相关的存储在所述第二存储元件中而不是在所述第一存储元件中的 任何语音媒体;在所述第一通信设备上生成关于传输存储在所述第二存储元件中而不是在所述第一 存储元件中的所查明的语音媒体的一个或多个请求,并且向所述第二通信设备发送所述一 个或多个请求;以及响应于关于传输的所述请求,在所述第一存储元件中存储在所述第一通信设备上从所 述第二通信设备接收的所述语音媒体,由此,当关于传输尚未被存储在所述第一通信设备中的语音媒体的所述请求被满足 时,所述第一存储元件中的所述语音媒体与所述第二存储元件中的所述语音媒体被实时地 同步。
16.如权利要求15所述的方法,其中生成关于传输所查明的语音媒体的所述一个或多 个请求包括关于传输与所述会话有关的未来的语音媒体的进行中的请求,该未来的语音媒 体在所述第二通信设备上生成,并且被存储在所述第二存储元件中而不是在所述第一存储元件中。
17.如权利要求15或16中任一项所述的方法,其中在所述第一存储元件中的所述逐步 存储以及使用所述第一通信设备创建的所述语音媒体向所述第二通信设备的所述逐步传 输在以下序列中的一个内发生(i)在逐步传输所述语音媒体之前,在所述第一存储元件中逐步存储所述语音媒体;( )在所述第一存储元件中逐步存储所述语音媒体之前,逐步传输所述语音媒体;或者(iii)实质上在所述语音媒体被逐步存储在所述第一存储元件中的同时,逐步传输所 述语音媒体。
18.如权利要求15到17中任一项所述的方法,还包括或是(i)在所述第一通信设备上 或是(ii)在所述网络上的所述第一通信设备的远程位置,提供所述第一存储元件。
19.如权利要求15到18中任一项所述的方法,其中通过所述网络向第二通信设备逐步 传输使用所述第一通信设备创建的所述语音媒体还包括(i)定义传输环;( )在所定义的传输环期间,查明使用所述第一通信设备创建的可用语音媒体;(iii)在所定义的传输环期间,查明在所述网络上可用的有用比特率;(iv)确定在所述传输环期间,所查明的在所述网络上可用的有用比特率是否足以传输 在被原始编码时所查明的可用语音媒体的全比特率表示;并且要么(ν)如果所查明的可用比特率足够,则传输所述可用媒体的可用全比特率表示;要么(vi)当所查明的在所述网络上的可用比特率不足以传输所述可用语音媒体的全比特 率表示时,生成所述可用语音媒体的减少的比特率版本,所述可用语音媒体的所述减少的 比特率版本增强了所述第一通信设备和所述第二通信设备实时地参与所述会话的能力;以 及(vii)当在所述传输环期间所查明的在所述网络上可用的有用比特率不足时,则传输 所述可用语音媒体的所述减少的比特率版本。
20.如权利要求19所述的方法,还包括定义连续的传输环;以及执行(i)到(iii)并且要么(V)要么(Vi)以及(Vii),这依赖于所查明的在所述网络 上的有用比特率对于每个所定义的连续环分别是足够的还是不足的。
21.如权利要求19所述的方法,其中生成所述可用语音媒体的所述减小的比特率表示 包括当打包用于传输的所述可用语音媒体时使用(a) —个或多个编译码器设置,(b) —个 或多个不同的编译码器,(c)压缩算法;或者(d) (a)到(c)的任何组合。
22.如权利要求19所述的方法,其中生成所述可用语音媒体的所述减小的比特率表示 还包括执行下列步骤中的一个或多个(i)当相对于所述全比特率表示打包所述可用语音媒体的所述减小的比特率表示时, 使用每单位时间较少的比特;( )当传输所述可用语音媒体时,增加打包间隔;(iii)调节包含所述可用语音媒体的分组被传输的速率;或者(iv)(i)到(iii)的任何组合。
23.如权利要求15到22中任一项所述的方法,其中向所述第二通信设备逐步传输使用 所述第一通信设备创建的所述语音媒体还包括当所述媒体被创建时,查明使用所述第一通信设备创建的所述语音媒体是时间敏感的 还是非时间敏感的,所述语音媒体的时间敏感性被查明为(i)如果所述第二通信设备的用户具有在接收时立即逐步再现所述语音媒体的意图, 则是时间敏感的;或者( )如果所述第二通信设备的用户的意图是不想在接收时立即再现所述语音媒体,则 是非时间敏感的。
24.如权利要求23所述的方法,还包括(iii)使用第一传输技术向所述第二通信设备逐步传输被查明为非时间敏感的所述语 音媒体,所述第一传输技术依赖于具有第一打包间隔的分组;或者(iv)使用第二传输技术向所述第二通信设备逐步传输被查明为时间敏感的所述语音 媒体,所述第二传输技术依赖于具有第二打包间隔的分组,这里所述第一打包间隔大于所 述第二打包间隔。
25.如权利要求23或24中任一项所述的方法,其中所述第二通信设备的意图要么是由 所述第二通信设备的用户声明的意图,要么是从所述第二通信设备的用户的行为中推断出 的隐含意图。
26.如权利要求15到25中任一项所述的方法,其中查明与所述会话相关的存储在所述 第二存储元件而不是在所述第一存储元件中的任何语音媒体还包括(i)在所述第一通信设备上维持数据质量存储;以及( )在所述数据质量存储中记录所述语音媒体的任何遗失、损坏或减少的比特率版 本,所述语音媒体使用所述第二通信设备被创建,并且通过所述网络被传输到所述第一通 信设备。
27.如权利要求26所述的方法,在所述第一通信设备上生成关于传输存储在所述第二 存储元件中而不是在所述第一存储元件中的所查明的语音媒体的一个或多个请求,并且向 所述第二通信设备发送所述一个或多个请求还包括( )生成关于传输在所述数据质量存储中记录的任何语音媒体的一个或多个请求;以及(iii)当关于传输的相应的一个或多个请求被满足时,移除关于所述数据质量存储中 所记录的所述语音媒体的记录。
28.如权利要求27所述的方法,其中响应关于传输的所述请求,在所述第一存储元件 中存储在所述第一通信设备上从所述第二通信设备接收的所述媒体还包括(iv)响应于一个或多个传输,在所述第一存储元件中存储所传输的语音媒体;以及 (ν)重复(i)到(iv),直到由所述第二通信设备生成的并存储在所述第二存储元件中的所述语音媒体的完整拷贝被接收并被存储在所述第一存储元件中为止,其中所述完整拷 贝是所述语音媒体在所述第二通信设备上被原始编码时的所述语音媒体的全比特率表示。
29.如权利要求15到28中任一项所述的方法,还包括通过以下步骤,以时移模式有选 择地在所述第一通信设备上再现所述会话的所述语音媒体选择所述会话的之前的时间点;在所述会话期间,从所述第一存储元件取回对应于所选择的之前的时间点的所述会话 的所述媒体;以及逐步再现从所述会话的所选择的之前的时间点开始的所取回的媒体。
30.如权利要求15到29中任一项所述的方法,其中所述第一通信设备包括下列项中的 一个座机电话、无线电话、蜂窝电话、卫星电话、计算机、无线电装置、服务器、卫星无线电 装置、战术无线电装置或战术电话。
31.一种方法,包括将在网络上的第一接入服务器与发送者相关联;在所述第一接入服务器上从所述发送者逐步接收语音消息,所述语音消息旨在通过所 述网络交付给一个或多个接收者;在所述第一接入服务器上查明所述网络上的分别与所述一个或多个接收者有关的一 个或多个接入服务器,一旦所述语音消息通过所述网络被分别交付到所述一个或多个接入 服务器,所述一个或多个接入服务器中的每一个负责分别向所述一个或多个接收者交付所 述语音消息;通过所述网络经由以下步骤从所述第一接入服务器向所述一个或多个接入服务器逐 步交付所述语音消息(a)在所述第一接入服务器上查明被要求分别向与所述一个或多个接收者有关的所述 一个或多个接入服务器交付所述语音消息的所述网络上的下一个中继或下一些中继;(b)无论所述消息是否通过所查明的下一个中继或下一些中继中的任意一个被分别交 付给多于一个的接收者,都向所查明的下一个中继或下一些中继逐步传输所述语音消息的 仅单个拷贝;(c)在所述第一接入服务器上存储所述语音消息的所述拷贝;以及(d)在所查明的下一个中继或下一些中继中的每一个上重复地执行下列步骤,直到所 述语音消息被交付到所有的所述一个或多个接入服务器上(i)在所述中继上存储所述语音消息的所述拷贝;( )查明被要求分别向与所述一个或多个接收者有关的所述一个或多个接入服务器 交付所述语音消息的所述下一个中继或下一些中继;以及(iii)无论所述消息是否通过所查明的下一个中继或下一些中继中的任意一个被分别 交付给多于一个的接收者,都向所查明的下一个中继或下一些中继逐步传输所述语音消息 的仅单个拷贝;配置所述一个或多个接入服务器以在接收时存储所述语音消息的所述拷贝,并且向所 述一个或多个接收者逐步传输所述语音消息,因此所述一个或多个接收者可以实时地复查 所述语音消息;以及在所述网络上执行所述语音消息的所存储的拷贝的实时同步。
32.如权利要求31所述的方法,还包括在所述第一接入服务器上查明所述网络上分别与所述一个或多个接收者有关的一个 或多个归属服务器,所述一个或多个归属服务器中的每一个负责为所述一个或多个接收者 分别存储所述语音消息;通过所述网络经由以下步骤,从所述第一接入服务器向所述一个或多个归属服务器逐步交付所述语音消息(e)在所述第一接入服务器上查明被要求分别向与所述一个或多个接收者有关的所述 一个或多个接入服务器交付所述语音消息的所述网络上的下一个中继或下一些中继;(f)无论所述消息是否通过所查明的下一个中继或下一些中继中的任意一个被分别交 付给多于一个的归属服务器,都向所查明的下一个中继或下一些中继逐步传输所述语音消 息的仅单个拷贝;(g)在所述第一接入服务器上存储所述语音消息的所述拷贝;以及(h)在所查明的下一个中继或下一些中继中的每一个上重复地执行下列步骤,直到所 述语音消息被交付到所有的所述一个或多个归属服务器上(i)在所述中继上存储所述语音消息的所述拷贝;( )查明被要求向所述一个或多个接入归属服务器交付所述语音消息的所述下一个 中继或下一些中继;以及(iii)无论所述消息是否被交付给多于一个的归属服务器,都向所查明的下一个中继 或下一些中继逐步传输所述语音消息的仅单个拷贝;配置所述一个或多个归属服务器以在接收时存储所述语音消息的所述拷贝,以及 在所述网络上执行所述一个或多个归属服务器上的所述语音消息的所存储的拷贝和 所存储的所述语音消息的其他拷贝的实时同步。
33.如权利要求31或32所述的方法,还包括,在确认向所述一个或多个接收者和/或 所述一个或多个归属服务器分别交付所述语音消息之后,删除所述语音消息的所存储的拷 贝,所述语音消息的所存储的拷贝存储在所述接入服务器和包括所述一个或多个接入服务 器的所查明的下一个中继或下一些中继中的每一个。
34.如权利要求31到33中任一项所述的方法,其中所查明的一个或多个中继中的每一 个都是由所述网络上的发送和接收节点对定义的。
35.如权利要求34所述的方法,其中每一对中的各个发送或接收节点都是由下列设备 类型中的一个组成的(i)发送通信设备,所述发送通信设备由所述发送者使用;( )接收通信设备,所述接收通信设备由所述一个或多个接收者中的一个使用;(iii)接入服务器设备;(iv)归属服务器设备;或者 (ν)所述网络上的服务器。
36.如权利要求31所述的方法,其中为每个发送和接收节点对,在所述网络上执行所 述语音消息的所存储的拷贝的同步包括下列步骤在所述发送节点上存储所述语音消息;在所述发送节点上生成向所述接收节点通知所述语音消息的通知; 在所述接收节点上生成请求与尚未在所述接收节点上被本地存储的所述语音消息有 关的所有语音媒体的请求;响应于所述请求而向所述接收节点传输所请求的语音媒体;以及 在所述接收节点上存储所请求的语音媒体,以使得所述发送节点和所述接收节点同步 所述语音消息的拷贝。
37.如权利要求36所述的方法,其中生成向所述接收节点通知所述语音消息的通知还 包括下列步骤之一(i)从所述发送节点向所述接收节点传输所述语音消息,由此,借助于所述传输所述通 知发生;( )当所述发送节点登录所述网络时;(iii)每当所述发送节点向所述接收节点发送与所述语音消息有关的语音媒体时;(iv)所述发送节点周期性地通知所述接收节点;(ν)所述接收节点周期性地询问所述发送节点关于将从所述发送节点传输到所述接收 节点的所述语音媒体的状态;(vi)所述发送节点向所述接收节点发送同步更新消息;或者(vii)⑴到(vi)的任何组合。
38.如权利要求36所述的方法,其中在所述接收节点上生成请求与尚未在所述接收节 点上被本地存储的所述语音消息有关的所有语音媒体的请求还包括在所述接收节点上维持数据质量存储;检查在所述接收节点上从所述发送节点接收的所述语音消息的所述语音媒体;当在所述接收节点上接收所述语音消息的所述语音媒体时,记录所述语音媒体的遗 失、损坏和/或减小的比特率表示;扫描所述数据质量存储;以及生成接收报告,所述接收报告包括关于传输在所述数据质量存储中记录的所述语音媒 体的请求。
39.如权利要求31到38中任一项所述的方法,还包括当所述语音消息分别从所述一个或多个接入服务器逐步传输到所述一个或多个接收 者时,在一个或多个接收通信设备上存储所述语音消息;以及通过从存储器分别取回和再现所述语音消息,使得在所述一个或多个接收通信设备存 储所述语音消息之后,所述一个或多个接收者每次都能够在任意时间点上再现所述语音消 肩、ο
40.如权利要求31到39中任一项所述的方法,其中所述网络包括一个或多个服务 器,所述网络的所述一个或多个服务器每个都被配置成执行下列服务器功能中的一个或多 个(i)接入服务器,所述接入服务器为一个或多个用户提供接入点以连接到所述网络;( )归属服务器,所述归属服务器用于一个或多个用户,所述归属服务器存储分别与 所述一个或多个用户有关的所述语音消息;(iii)网关服务器,所述网关服务器横跨所述网络和第二网络,当在所述网络和所述第 二网络之间按规定路线传输业务时,所述网关服务器执行下列功能中的一个或多个映射、 代码转换、重新封装、和/或采取保护措施;(iv)网关客户机服务器,所述网关客户机服务器充当用于通信设备的媒介,所述通信 设备连接到所述网络但不能存储所述语音消息,所述网关客户机服务器代表所述通信设备 来存储所述语音消息;(ν)目录服务器,所述目录服务器维持用于所述网络中的每个用户的归属服务器和接入的目录;或者(Vi)⑴到(ν)的任何组合。
41.如权利要求31到40中任一项所述的方法,其中为每下一个中继逐步传输所述语音 消息的仅单个拷贝还包括以下步骤,其中每个中继都由发送节点和接收节点对定义(i)在所述发送节点上定义传输环;( )在所述发送节点上确定在所定义的传输环期间可用于传输的所述语音消息的语 音媒体;(iii)查明所述传输环期间在所述发送节点和所述接收节点之间的所述网络上的带宽;(ν)比较在所述发送节点和所述接收节点之间的所述网络上的所查明的带宽和传输可 用语音媒体所需的带宽;以及(Vi)如果在所述传输环期间所查明的带宽足够,则向所述接收节点传输所述可用语音 媒体。
42.如权利要求41所述的方法,还包括(vii)确定在所述传输环期间,在所述发送节点和所述接收节点之间的所述网络上的 所查明的带宽是否不足以传输所述可用语音媒体;(viii)生成所述可用语音媒体的减小的比特率表示;以及(iix)当在所述传输环期间所述网络上的可用带宽不足时,则向所述接收节点传输所 述可用语音媒体的所述减小的比特率表示,由此,当所述网络上的所述可用带宽另外不足以支持实时复查所述语音媒体时,所述 语音媒体的所述减小的比特率表示的所述传输增强了所述语音消息的交付的时间性,从而 增加所述一个或多个接收者在接收时实时复查所述语音媒体的能力。
43.如权利要求41或42所述的方法,其中生成所述可用语音媒体的所述减小的比特率 表示还包括执行下列步骤中的一个或多个(a)当相对于原始编码时所述语音媒体的全比特率表示打包所述语音媒体的所述减小 的比特率表示时,使用每媒体单位时间的较少比特;(b)调节用于打包所述语音媒体的所述减小的比特率表示的分组的打包间隔;(c)调节用来打包所述语音媒体的所述减小的比特率表示的所述分组的传输速率;或者(d)(a)到(c)的任何组合。
44.如权利要求43所述的方法,还包括不断地定义传输环,并且根据需要为每个传输 环执行⑴到(iix)以及(a)到⑷。
45.如权利要求31所述的方法,还包括查明在所述网络上用于从第一节点向所述一个或多个接收者节点交付所述媒体的一 个或多个中继,其中所述一个或多个中继中的每一个都是通过所述网络上的发送-接收节 点对定义的;以及在由一个或多个所查明的中继定义的所述发送-接收节点对之间执行(a)到(e),使得 一个或多个发送节点和接收节点中的每一个每个都同步所述媒体的拷贝。
46.如权利要求31到45任一项所述的方法,其中所述发送者和所述一个或多个接收者每个都使用通信设备,以创建和发送所述语音消息,所述通信设备由下列项中的一个构成 座机电话、无线电话、蜂窝电话、卫星电话、计算机、无线电装置、服务器、卫星无线电装置、 战术无线电装置或战术电话。
47.如前述权利要求任一项所述的方法,其中除了语音之外,所述媒体还可以包括下列 媒体类型中的一个或多个语音、视频、静态图片、文本、传感器数据、位置或GPS信息、无线 电信号、或其组合。
48.如前述权利要求中任一项所述的方法,其中使用下列索引方案中的一个来给所述 媒体编索引(i)基于时间索引; ( )基于比特或字节索引;(iii)散列类型索引;(iv)二叉树类型索引;(ν)基于文件目录索引;或者 (vi)⑴到(ν)的任何组合。
49.一种系统,用于逐步同步网络上的节点之间传输的媒体的存储拷贝,所述系统包括位于发送节点的发送器,所述发送器配置成,利用足以实现所述媒体的接近实时的再 现的分组大小和打包间隔从所述发送节点向接收节点逐步传输可用媒体,其中所述媒体的 所述接近的实时再现为接收者提供即时复查所传输的媒体的体验;位于所述接收节点的接收器,所述接收器配置成,在所述接收节点上逐步接收所传输 的媒体,并且当所述媒体被逐步接收时,不断地记录任何尚未在所述接收节点上被本地存 储的媒体;位于所述接收节点的请求生成器,所述请求生成器配置成,根据需要不断地生成关于 尚未在所述接收节点上被本地存储的任何所记录的媒体的请求;所述发送器还配置成,响应于所述请求从所述发送节点向所述接收节点传输所记录的 媒体;以及分别位于所述发送节点和所述接收节点上的第一存储元件和第二存储元件,所述存储 元件中的每一个都配置成,在所述发送节点和所述接收节点上存储所述媒体,使得所述发 送节点和所述接收节点每个都分别同步所述媒体的拷贝。
50.如权利要求49所述的系统,所述系统还包括位于所述发送节点上的通知元件,所 述通知元件配置成,将可用于传输的所述媒体通知所述接收节点,所述通知要么(i)先于 所述传输发生,要么(ii)在本质上和所述传输同时发生。
51.如权利要求49到50中任一项所述的系统,其中所述通知元件配置成,通过下列步 骤之一将可用于传输的所述媒体的可用性通知所述接收节点(i)从所述发送节点向所述接收节点传输所述可用媒体,由此,借助于所述传输,所述 通知发生;( )当所述发送节点登录所述网络时;(iii)每当所述发送节点向所述接收节点发送媒体时;(iv)所述发送节点周期性地通知所述接收节点;(ν)所述接收节点周期性地询问所述发送节点关于将从所述发送节点传输到所述接收 节点的所述媒体的状态;(Vi)所述发送节点向所述接收节点发送同步更新消息;或者 (Vii)⑴到(Vi)的任何组合。
52.如权利要求49到51中任一项所述的系统,所述系统还包括编码器,该编码器用 于当所述媒体被创建时在所述发送节点上逐步编码所创建的媒体;索引元件,所述索引元件配置成以索引格式来给所编码的媒体编索引;以及 第一存储元件,所述第一存储元件还配置成,当编有索引的媒体被逐步传输到所述接 收节点时,在所述发送节点以所述索引格式逐步存储所编码的媒体。
53.如权利要求49到52中任一项所述的系统,其中所述接收节点还包括再现元件,所 述再现元件配置成要么(i)当所述媒体被逐步接收时,在所述接收节点上以接近实时再现模式逐步再现所传 输的媒体;要么( )通过再现来自第二存储元件的所述媒体,在由用户在所述接收节点上所定义的任 意时间,在所述接收节点上再现所述媒体。
54.如权利要求49到53中任一项所述的系统,其中所述发送节点和所述接收节点两者 之一或两者都是通信设备,所述通信设备由下列项中的一个构成座机电话,无线电话、蜂 窝电话、卫星电话、计算机、无线电装置、服务器、卫星无线电装置、战术无线电装置或战术 电话。
55.如权利要求中49到54中任一项所述的系统,其中所述发送节点和所述接收节点两 者之一或两者都是所述网络上的服务器,所述服务器是在发起所述媒体的节点和所述接收 者之间的所述网络上的中继。
56.如权利要求55所述的系统,其中所述服务器作为下列项中的一个来执行功能 (i)接入服务器,所述接入服务器为一个或多个用户提供接入点以连接到所述网络; ( )归属服务器,所述归属服务器用于一个或多个用户,并且所述归属服务器存储分别与所述一个或多个用户有关的所述媒体;(iii)网关服务器,所述网关服务器横跨所述网络和第二网络,当在所述网络和所述第 二网络之间按规定路线传输业务时,所述网关服务器执行下列功能中的一个或多个映射、 代码转换、重新封装、和/或采取保护措施;(iν)网关客户机服务器,所述网关客户机服务器充当了用于通信设备的媒介,所述通 信设备连接到所述网络但不能存储所述媒体,所述网关客户机服务器代表所述通信设备来 存储所述媒体;(ν)目录服务器,所述目录服务器维持用于所述网络中的每个用户的归属服务器和接 入的目录;或者(vi)⑴到(ν)的任何组合。
57.如权利要求49到56中任一项所述的系统,其中所述发送器还被配置成通过以下步 骤从所述发送节点向所述接收节点逐步传输所述可用媒体(i)定义传输环;( )确定在所定义的传输环期间可用于传输的所述媒体;(iii)查明在所述传输环期间在所述发送节点和所述接收节点之间的所述网络上的带宽;(ν)比较所述网络上的所查明的带宽和传输所述可用媒体所需的带宽;以及 (Vi)如果在所述传输环期间所查明的带宽足够,则传输所述可用媒体。
58.如权利要求57所述的系统,其中所述发送器还被配置成从所述发送节点向所述接 收节点逐步传输所述可用媒体(vii)确定在所述传输环期间所查明的带宽是否不足以传输所述可用媒体;(viii)生成所述可用媒体的减小的比特率表示;以及(iix)当在所述传输环期间所述网络上的所述可用带宽不足时,则传输所述可用媒体 的所述减小的比特率表示,由此,当所述网络上的所述可用带宽不足时,所述媒体的所述减小的比特率表示的所 述传输增强了所述媒体的交付的时间性,从而增加所述接收者在接收时复查所述媒体的能 力。
59.如权利要求56或58所述的方法,其中所述发送器还被配置成通过执行下列步骤中 的一个或多个来生成所述可用媒体的所述减小的比特率表示(a)当相对于原始编码时所述媒体的全比特率表示打包所述媒体的所述减小的比特率 表示时,使用每媒体单位时间的较少比特;(b)调节用于打包所述媒体的所述减小的比特率表示的分组的所述打包间隔;以及(c)调节用来打包所述媒体的所述减小的比特率表示的所述分组的传输速率。
60.如权利要求59所述的系统,其中所述发送器还被配置成不断地定义传输环,并且 根据需要为每个传输环执行⑴到(iix)以及(a)到(C)。
61.如权利要求49到60中任一项所述的系统,其中在所述接收节点的所述接收器还通 过以下步骤被配置成当所述媒体被逐步接收时不断地记录尚未在所述接收节点上被本地 存储的任何媒体在所述接收节点上检查从所述发送节点接收的所述媒体;在所述接收节点上接收所述媒体时,记录所述媒体的遗失、损坏或减小的比特率表示;在所述接收节点上维持数据质量存储,用于所记录的媒体;以及 当在所述接收节点上接收所记录的媒体时,从所述数据质量存储移除所记录的媒体。
62.如权利要求61所述的系统,其中在所述接收节点的所述接收器还通过以下步骤被 配置成根据需要不断地生成关于尚未在所述接收节点上被本地存储的任何所记录的媒体 的请求不断地扫描所述数据质量存储;不断地生成接收报告,所述接收报告包括关于重传所述数据质量存储中被记录的所述 媒体的请求;以及从所述接收节点向所述发送节点不断地传输所述接收报告。
63.如权利要求49到62中任一项所述的系统,所述系统还包括 第一通信设备,所述第一通信设备配置成生成所述媒体;第二通信设备,所述第二通信设备配置成在由所述第一通信设备生成的所述媒体被交付到所述第二通信设备之后再现所述媒体;网络,所述网络耦合在所述第一通信设备和所述第二通信设备之间,所述网络包括一 个或多个中继,所述中继配置成从所述第一通信设备向所述第二通信设备交付所述媒体,其中所述一个或多个中继中的每一个都是由权利要求1中所述的所述发送节点和接 收节点对定义的,并且所述一个或多个中继的所述发送节点和接收节点同步编有索引的媒 体的拷贝。
64.如权利要求63所述的系统,其中所述一个或多个中继中的每一个的各个所述发送 节点和接收节点是由下列项中的一个组成配置成生成所述媒体的通信设备,配置成再现 所述媒体的通信设备,或者所述网络上的服务器。
65.一种第一通信设备,所述第一通信设备配置成实时同步网络上所进行的会话的所 述语音媒体,所述第一通信设备包括第一存储元件,所述第一存储元件配置成当使用所述通信设备创建所述语音媒体时, 逐步存储使用所述第一通信设备创建的语音媒体;传输元件,所述传输元件配置成通过所述网络,向第二通信设备逐步传输使用所述第 一通信设备创建的所述语音媒体;接收器,所述接收器配置成在所述第一存储元件中逐步 接收和存储与所述会话相关的语音媒体,该语音媒体在所述第二通信设备上生成,存储在 与所述第二通信设备有关的第二存储元件,并且通过所述网络从所述第二通信设备被传输 到所述第一通信设备;媒体查明元件,所述媒体查明元件配置成查明与所述会话有关的存储在所述第二存储 元件中而不是在所述第一存储元件中的任何语音媒体;以及请求生成器,所述请求生成器配置成向所述第二通信设备发送关于传输存储在所述 第二存储元件中而不是在所述存储元件中的所查明的语音媒体的一个或多个请求;所述接收器还配置成,响应于关于传输的所述请求,在所述存储元件存储在所述第一 通信设备上从所述第二通信设备接收的所述媒体,由此,当关于传输尚未被存储在所述通信设备中的语音媒体的所述请求被满足时,所 述第一存储元件中的所述语音媒体与所述第二存储元件中的所述语音媒体被实时同步。
66.如权利要求65所述的第一通信设备,其中所述请求生成器元件还配置成生成关于 传输所查明的语音媒体的所述一个或多个请求,所述请求包括关于传输与所述会话有关的 未来的语音媒体的进行中的请求,该未来的语音媒体在所述第二通信设备上生成,并且被 存储在所述第二存储元件中而不是在所述第一存储元件中。
67.如权利要求65或66所述的第一通信设备,其中所述第一存储元件和所述传输元件 还被配置成协同地进行以下步骤(i)在逐步传输所述语音媒体之前,在所述存储元件中逐步存储所述语音媒体; ( )在所述存储元件中逐步存储所述语音媒体之前,逐步传输所述语音媒体;或者 (iii)实质上在所述语音媒体被逐步存储在所述第一存储元件中的同时逐步传输所述 语音媒体。
68.如权利要求65到67中任一项所述的第一通信设备,其中,通过以下步骤,所述传输 元件通过所述网络向所述第二通信设备逐步传输使用所述第一通信设备创建的所述语音 媒体(i)定义传输环;( )在所定义的传输环期间,查明使用所述通信设备创建的可用语音媒体;(iii)在所定义的传输环期间,查明在所述网络上可用的有用比特率;(iv)确定在所述传输环期间,所查明的在所述网络上可用的有用比特率是否足以传输 在被原始编码时所查明的可用语音媒体的全比特率表示;并且要么(ν)如果所查明的可用比特率足够,则传输所述可用媒体的可用全比特率表示;要么(vi)当所查明的在所述网络上的可用比特率不足以传输所述可用语音媒体的全比特 率表示时,生成所述可用语音媒体的减少的比特率版本,所述可用语音媒体的所述减少的 比特率版本增强了所述第一通信设备和所述第二通信设备实时地参与所述会话的能力;以 及(vii)当在所述传输环期间所查明的在所述网络上可用的有用比特率不足时,则传输 所述可用语音媒体的所述减少的比特率版本。
69.如权利要求68所述的第一通信设备,其中,还通过以下步骤,所述传输元件通过所 述网络向第二通信设备逐步传输使用所述第一通信设备创建的所述语音媒体定义连续的传输环;以及执行(i)到(iii)并且要么(V)要么(Vi)以及(Vii),这依赖于所查明的在所述网络 上的有用比特率对于每个所定义的连续环分别是足够的还是不足的。
70.如权利要求68所述的第一通信设备,其中所述传输元件还配置成通过执行以下步 骤中的一个或多个,生成所述可用语音媒体的所述减少的比特率版本(i)当相对于所述全比特率表示打包所述可用语音媒体的所述减小的比特率表示时, 使用每单位时间较少的比特;( )当传输所述可用语音媒体时,增加打包间隔;(iii)调节包含所述可用语音媒体的分组被传输的速率;或者(iv)(i)到(iii)的任何组合。
71.如权利要求65到70中任一项所述的第一通信设备,其中所述第一通信设备还包括 媒体敏感度查明元件,所述媒体敏感度查明元件配置成查明使用所述第一通信设备创建的 所述语音媒体是时间敏感的还是非时间敏感的,所述媒体敏感度查明元件查明所述语音媒 体的敏感度为(i)如果所述第二通信设备的用户具有在接收时立即逐步再现所述语音媒体的意图, 则是时间敏感的;或者( )如果所述第二通信设备的用户的意图是不想在接收时立即再现所述语音媒体,则 是非时间敏感的。
72.如权利要求71所述的第一通信设备,其中所述媒体敏感度查明元件和所述第一传 输元件协同,以(iii)使用第一传输技术向所述第二通信设备逐步传输被查明为非时间敏感的所述语 音媒体,所述第一传输技术依赖于具有第一打包间隔的分组;或者(iv)使用第二传输技术向所述第二通信设备逐步传输被查明为时间敏感的所述语音 媒体,所述第二传输技术依赖于具有第二打包间隔的分组,这里所述第一打包间隔大于所 述第二打包间隔。
73.如权利要求65到72中任一项所述的第一通信设备,其中所述第一通信设备还包 括数据质量存储,所述数据质量存储配置成记录与所述会话有关的所述语音媒体的任何遗 失、损坏或减少的比特率版本,所述语音媒体使用所述第二通信设备被创建并且被传输到 所述第一通信设备。
74.如权利要求73所述的第一通信设备,其中所述媒体查明元件被配置成通过不断地 复查在所述数据质量存储中被记录的所述语音媒体,查明与所述会话有关的存储在所述第 二存储元件中而不是在所述第一存储元件中的任何语音媒体。
75.如权利要求74所述的第一通信设备,其中所述请求生成器还被配置成生成关于传 输在所述数据质量存储中被记录的所查明的语音媒体的一个或多个请求,并且向所述第二 通信设备发送所述一个或多个请求。
76.如权利要求75所述的第一通信设备,其中所述数据质量存储还被配置成当关于传 输的相应的一个或多个请求被满足时,移除关于所述数据质量存储中所记录的所述语音媒 体的记录。
77.如权利要求65到76中任一项所述的第一通信设备,还包括再现元件,所述再现元 件配置成在任意延迟之后,通过从所述存储元件重新获得所述语音媒体,有选择地再现所 述会话的所述语音媒体,其中所述任意延迟是由所述第一通信设备的用户定义的。
78.一种网络,包括多个服务器,所述多个服务器通过多个网络连接被互相连接;第一服务器,所述第一服务器在多个服务器之中,所述第一服务器为语音消息的发送 者提供到所述网络的接入,所述第一服务器配置成接收来自从所述发送者的并意图用于一 个或多个接收者的所述语音消息;以及一个或多个第二服务器,所述一个或多个第二服务器在所述多个服务器之中,所述一 个或多个第二服务器为所述一个或多个接收者分别提供到所述网络的接入;其中所述第一服务器和在所述第一服务器和所述一个或多个第二服务器之间的任何 媒介服务器中继每个都被配置成(i)存储所述语音消息的拷贝;(ii)查明在所述网络中的 下一个服务器中继或下一些服务器中继,以从所述发送者向为所述一个或多个接收者分别 提供到所述网络的接入的所述一个或多个第二服务器交付所述语音消息;以及(iii)向所 述网络中被查明的下一个服务器中继或下一些服务器中继逐步传输所述语音消息的仅单 个拷贝,无论所述语音消息是否通过所查明的下一个服务器中继或下一些服务器中继中的 任何一个而被交付到多于一个的接收者;以及多个同步元件,所述多个同步元件分别设置在所述第一服务器以及在所述第一服务器 和所述一个或多个第二服务器之间的所述媒介服务器中继上,所述多个同步元件配置成协 同操作以同步存储在所述服务器中的所述语音消息的所有拷贝。
79.如权利要求78所述的网络,其中所述网络上的每个中继都是由所述网络上的发送 和接收节点对定义的,并且每个发送和接收节点对被配置成通过以下步骤逐步传输所述语 音消息的仅单个拷贝(i)在所述发送节点上定义传输环;( )确定在所定义的传输环期间可用于传输的所述语音消息的语音媒体;(iii)查明 所述传输环期间在所述发送节点和所述接收节点之间的所述网络连接上的带宽;(ν)比较在所述发送节点和所述接收节点之间的所查明的所述网络连接上的带宽与传 输可用语音媒体所需的带宽;以及(Vi)如果在所述传输环期间所查明的带宽足够,则向所述接收节点传输所述可用语音 媒体。
80.如权利要求79所述的网络,其中每个发送和接收节点对被配置成还通过以下步骤 逐步传输所述语音消息的仅单个拷贝(vii)确定在所述传输环期间在所述发送节点和所述接收节点之间的所查明的所述网 络连接上的带宽是否不足以传输所述可用语音媒体;(Viii)生成所述可用语音媒体的减小的比特率表示;以及(iix)当在所述传输环期间所述网络连接上的可用带宽不足时,则向所述接收节点传 输所述可用语音媒体的所述减小的比特率表示,由此,当所述网络上的所述可用带宽另外不足以支持实时复查所述语音媒体时,传输 所述语音媒体的所述减小的比特率表示增强了所述语音消息的交付的时间性,从而增加所 述一个或多个接收者在接收时实时复查所述语音媒体的能力。
81.如权利要求80所述的网络,其中所述发送节点被配置成通过执行下列项中的一个 或多个来生成所述可用语音媒体的所述减小的比特率表示(a)当相对于原始编码时所述语音媒体的全比特率表示打包所述语音媒体的所述减小 的比特率表示时,使用每媒体单位时间的较少比特;(b)调节用于打包所述语音媒体的所述减小的比特率表示的分组的打包间隔;(c)调节用来打包所述语音媒体的所述减小的比特率表示的所述分组的传输速率;或者(d)(a)到(c)的任何组合。
82.如权利要求81所述的网络,其中每个发送和接收节点对被配置成,还通过不断地 定义传输环并且根据需要为每个传输环执行(i)到(iix)以及(a)到(d),来逐步传输所述 语音消息的仅单个拷贝。
83.如权利要求78所述的网络,其中在所述发送者和所述一个或多个接收者之间的所 述网络上的每个中继是由所述网络上的发送和接收节点对定义的,其中每个发送和接收节 点对的同步元件通过以下步骤被配置成同步所述语音消息的它们各自的拷贝在所述发送节点上存储所述语音消息;在所述发送节点上生成向所述接收节点通知所述语音消息的通知; 在所述接收节点上生成请求与尚未在所述接收节点上被本地存储的所述语音消息有 关的所有语音媒体的请求;响应于所述请求而向所述接收节点传输所请求的语音媒体;以及 在所述接收节点上存储所请求的语音媒体,以使得所述发送节点和所述接收节点同步 所述语音消息的拷贝。
84.如权利要求83所述的网络,其中生成将所述语音消息通知所述接收节点的通知还 包括满足下列步骤之一(i)从所述发送节点向所述接收节点传输所述语音媒体,由此,借助于所述传输所述通 知发生;(ii)当所述发送节点登录所述网络时;(iii)每当所述发送节点向所述接收节点发送与所述语音消息有关的语音媒体时;(iv)所述发送节点周期性地通知所述接收节点;(ν)所述接收节点周期性地询问所述发送节点关于将从所述发送节点传输到所述接收 节点的与所述语音消息有关的所述媒体的状态;(Vi)所述发送节点向所述接收节点发送同步更新消息;或者 (Vii)⑴到(Vi)的任何组合。
85.如权利要求83所述的网络,其中在所述接收节点上生成请求与尚未在所述接收节 点上被本地存储的所述语音消息有关的所有语音媒体的请求还包括在所述接收节点上维持数据质量存储;检查在所述接收节点上从所述发送节点接收的所述语音消息的所述语音媒体; 当在所述接收节点上接收所述语音消息的所述语音媒体时,记录所述语音媒体的遗 失、损坏和/或减小的比特率表示; 扫描所述数据质量存储;以及生成接收报告,所述接收报告包括关于重传在所述数据质量存储中记录的所述语音媒 体的请求。
86.如权利要求78到85中任一项所述的网络,其中所述网络上的多个服务器中的每一 个都被配置成执行下列服务器功能中的一个或多个(i)接入服务器,所述接入服务器为一个或多个用户提供接入点以连接到所述网络; ( )归属服务器,所述归属服务器用于一个或多个用户,并且所述归属服务器存储分 别与所述一个或多个用户有关的所述媒体;(iii)网关服务器,所述网关服务器横跨所述网络和第二网络,当在所述网络和所述第 二网络之间按规定路线传输业务时,所述网关服务器执行下列功能中的一个或多个映射、 代码转换、重新封装、和/或采取保护措施;(iν)网关客户机服务器,所述网关客户机服务器充当了用于通信设备的媒介,所述通 信设备连接到所述网络但不能存储所述媒体,所述网关客户机服务器代表所述通信设备来 存储所述媒体;(ν)目录服务器,所述目录服务器维持用于所述网络中的每个用户的归属服务器和接 入的目录;或者(vi)⑴到(ν)的任何组合。
87.如权利要求49到86中任一项所述的装置,其中除了语音之外,所述媒体还包括下 列媒体类型中的一个或多个视频、音频、静态图片、文本、传感器数据、位置或GPS信息、无 线电信号、或其组合。
88.如权利要求49到87中任一项所述的装置,其中所述通信设备包括下列项中的一 个座机电话、无线电话、蜂窝电话、卫星电话、计算机、无线电装置、服务器、卫星无线电装 置、战术无线电装置或战术电话。
89.如权利要求49到88中任一项所述的装置,其中使用下列索引方案中的一个来给所 述媒体编索引(i)基于时间索引;(ii)基于比特或字节索引;(iii)散列类型索引;(iv)二叉树类型索引;(ν)基于文件目录索引;或者 (Vi)⑴到(ν)的任何组合。
全文摘要
用于实时地逐步同步网络上的节点之间所传输的媒体的被存储拷贝的方法和系统。所述方法和系统包括从发送节点向接收节点逐步传输可用的附有索引的媒体,其中分组大小和打包间隔足以实现接近实时地再现附有索引的媒体,其中附有索引的媒体的接近实时的再现为接收者提供即时复查被传输媒体的体验。在接收节点上逐步接收附有索引的被传输媒体,并且记录尚未在所述接收节点上被本地存储的附有索引的任何媒体。所述方法和系统还包括,通过从发送节点请求遗失的媒体,实时地同步在所述网络上的两个通信设备之间的会话的媒体。当在这两个通信设备中的任意一个上创建语音或其他媒体时,可在网络上实时地同步媒体的拷贝。所述方法和系统还包括优化的路由协议,所述路由协议简单地用来实现和减少网络业务和延迟。
文档编号H04L12/58GK101828375SQ200880112159
公开日2010年9月8日 申请日期2008年10月17日 优先权日2007年10月19日
发明者托马斯·E·凯蒂斯, 玛丽·G·潘塔加, 詹姆士·T·潘塔加, 马修·J·兰尼 申请人:莱贝尔沃克斯有限责任公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1