CN1540921A - 分配用于多方应用层会话的资格信息 - Google Patents
分配用于多方应用层会话的资格信息 Download PDFInfo
- Publication number
- CN1540921A CN1540921A CNA2004100351362A CN200410035136A CN1540921A CN 1540921 A CN1540921 A CN 1540921A CN A2004100351362 A CNA2004100351362 A CN A2004100351362A CN 200410035136 A CN200410035136 A CN 200410035136A CN 1540921 A CN1540921 A CN 1540921A
- Authority
- CN
- China
- Prior art keywords
- computer system
- link
- action
- computer
- application layer
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/1813—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast for computer conferences, e.g. chat rooms
- H04L12/1818—Conference organisation arrangements, e.g. handling schedules, setting up parameters needed by nodes to attend a conference, booking network resources, notifying involved parties
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F16—ENGINEERING ELEMENTS AND UNITS; GENERAL MEASURES FOR PRODUCING AND MAINTAINING EFFECTIVE FUNCTIONING OF MACHINES OR INSTALLATIONS; THERMAL INSULATION IN GENERAL
- F16L—PIPES; JOINTS OR FITTINGS FOR PIPES; SUPPORTS FOR PIPES, CABLES OR PROTECTIVE TUBING; MEANS FOR THERMAL INSULATION IN GENERAL
- F16L19/00—Joints in which sealing surfaces are pressed together by means of a member, e.g. a swivel nut, screwed on or into one of the joint parts
- F16L19/06—Joints in which sealing surfaces are pressed together by means of a member, e.g. a swivel nut, screwed on or into one of the joint parts in which radial clamping is obtained by wedging action on non-deformed pipe ends
- F16L19/061—Joints in which sealing surfaces are pressed together by means of a member, e.g. a swivel nut, screwed on or into one of the joint parts in which radial clamping is obtained by wedging action on non-deformed pipe ends a pressure ring being arranged between the clamping ring and the threaded member or the connecting member
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F16—ENGINEERING ELEMENTS AND UNITS; GENERAL MEASURES FOR PRODUCING AND MAINTAINING EFFECTIVE FUNCTIONING OF MACHINES OR INSTALLATIONS; THERMAL INSULATION IN GENERAL
- F16L—PIPES; JOINTS OR FITTINGS FOR PIPES; SUPPORTS FOR PIPES, CABLES OR PROTECTIVE TUBING; MEANS FOR THERMAL INSULATION IN GENERAL
- F16L33/00—Arrangements for connecting hoses to rigid members; Rigid hose connectors, i.e. single members engaging both hoses
- F16L33/22—Arrangements for connecting hoses to rigid members; Rigid hose connectors, i.e. single members engaging both hoses with means not mentioned in the preceding groups for gripping the hose between inner and outer parts
- F16L33/223—Arrangements for connecting hoses to rigid members; Rigid hose connectors, i.e. single members engaging both hoses with means not mentioned in the preceding groups for gripping the hose between inner and outer parts the sealing surfaces being pressed together by means of a member, e.g. a swivel nut, screwed on or into one of the joint parts
- F16L33/224—Arrangements for connecting hoses to rigid members; Rigid hose connectors, i.e. single members engaging both hoses with means not mentioned in the preceding groups for gripping the hose between inner and outer parts the sealing surfaces being pressed together by means of a member, e.g. a swivel nut, screwed on or into one of the joint parts a clamping ring being arranged between the threaded member and the connecting member
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/1813—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast for computer conferences, e.g. chat rooms
- H04L12/1822—Conducting the conference, e.g. admission, detection, selection or grouping of participants, correlating users to one or more conference sessions, prioritising transmission
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/40—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/185—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with management of multicast group membership
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Computer Security & Cryptography (AREA)
- Mechanical Engineering (AREA)
- Computer And Data Communications (AREA)
- Information Transfer Between Computers (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Telephonic Communication Services (AREA)
- Investigating Or Analysing Biological Materials (AREA)
- Multi Processors (AREA)
Abstract
参与计算机***参与多方会议会话的资格信息通过和一个或多个相邻计算机***间歇地交换链路数据库而被分配。链路数据库包括一个或多个链路状态记录,每个链路状态记录标识参与计算机***和被逻辑地链接到参与计算机***上的相邻计算机***的列表。当新的计算机***加入或参与计算机***离开多方会话时,这个加入或离开的变化被反映到相应的相邻计算机***的链路数据库中。当相邻计算机***交换链路数据库时,变化最终被传播到所有参与计算机***。因此,参与计算机***连续地过渡到稳定状态,稳定状态中每个参与计算机***知道其他参与计算机***和与其他参与计算机***有关的逻辑链路。
Description
发明的技术领域
本发明涉及计算机网络,尤其涉及分配用于多方应用层会话的资格信息。
背景和相关领域
计算机网络通过使得一个计算机或设备(在下文中两者都被称为“计算***”)使用电子报文经由网络与另一个计算***通信来增强我们通信和访问信息的能力。当在计算***之间传输电子报文时,电子报文常常经过对电子报文中的数据执行操作的协议栈(如,分组化、路由、流量程控制)。开放***互连(OSI)模型是用于完成协议栈的连网框架的一个例子。
开放***互连模型将用于将电子报文传输的操作分开为7个不同“层”中,每层被指定来完成数据传输进程中的某些操作。虽然协议栈能潜在地实现每层,但是许多协议栈仅仅实现用于通过网络传输数据的选择性的层。当数据从计算***处发出时,它在应用层处始发并被向下传递到中间低层,然后到网络上。当数据从网络处被接收时它进入物理层并被向上传递至中间高层,然后最终到达应用层。应用层,是最高层,负责支持应用和终端用户处理,例如,电子会议软件。
协议栈的低层的功能一般从应用层中被抽取出来。即,应用层数据通过低层被传输至应用层和从应用层传输来,而不需要向应用层暴露其低层的功能。抽取可以使它对于不同计算***处的许多应用层处理来说好象应用层处理是直接被相互连接的(当事实上在相应的协议栈中的低层将数据作为在应用层处理之间传输的数据来处理)。因此,在两个应用层处理之间的通信可被看作逻辑连接而不管使通信容易的底层物理网络。
通常,当计算***要相互通信时,计算***先建立通信会话。这可包括在多个不同计算***处的应用层处理建立多方应用层会话,例如,多方会议会话。为建立多方会议会话,在每个计算***处的会议应用程序相互逻辑地连接起来。逻辑连接一般导致计算***被配置成逻辑层次结构的结构,如,T.120会议会话。
被逻辑连接的会议应用然后选择控制计算***作为逻辑层次结构的根。逻辑层次结构中的其他计算***可以是叶计算***(在逻辑层次结构中没有其他计算***在它们下面的计算***)或中间计算***(在逻辑层次结构中根计算***和叶计算***之间的计算***)。控制计算***使得在逻辑层次结构中其他计算***之间的会议数据的传输容易。每个中间和叶计算***维持用于向根计算***发送会议数据和从根计算***接收会议数据的(与逻辑连接相关的)链路信息。同样地,控制计算***维持用于向中间计算***和叶计算***发送会议数据和从中间计算***和叶计算***接收会议数据的链路信息。
一般而言,会议数据在逻辑层次结构的一个分支中的中间或叶计算***处始发。中间或叶计算***沿逻辑层次结构向上将会议数据传输到控制计算***。控制计算***然后沿逻辑层次结构向下将会议数据传输到逻辑层次结构中的所有中间和叶计算***。因此,在一般的会议会话期间,所有会议数据流过控制计算***。
然而,逻辑层次结构的一个分支中的中间或叶计算***一般不直接与逻辑层次结构的任何其他分支中的中间或叶计算***通信。因此,逻辑层次结构的一个分支中的中间和叶计算***即使有的话也极少需要维持用于逻辑层次结构的其他分支中的中间和叶计算***的链路信息。因为所有会议数据流过控制计算***,中间或叶计算***的故障不影响向包括失效计算***的相应分支以外的计算***的会议数据的传输。因此,当中间或叶计算***失效时,会议数据仍可向其他分支中的计算***传输。
在逻辑层次结构中不幸的是,控制根计算***的故障可在多方会议会话的会议数据的传输上有显著不良影响。当控制根计算***失效时,逻辑层次结构中的其他计算***过渡到选举模式。在选举模式期间,会议数据的传输被挂起,而其他计算***试图选举出新的控制根计算***。
一般被实现来选举出新的根控制计算***的选举算法可以相当复杂,并且需要几秒的数量级来完成。因为在选举期间没有数据被传输,在选举算法执行期间用户体验被显著降级。也可能是其他计算***起初就不同意将被选举为根控制计算***的计算***。所以,选举算法可被执行许多次,持续直至合适的选举结果达成。这可以加长选举处理并进一步使用户体验降级。还有,也可能是合适的选举结果没有达成(如,选举算法不能自动选举出新的控制计算***)。因此,需要***管理员的技能来重置多方会议会话和/或选择新的控制根计算***。
当多方会议会话的计算***在选举模式中时,也可防止另外的计算***加入多方会议会话。可给予在选举模式期间试图加入多方会议会话的用户计算***一个多方会议会话不存在的假指示。这可以导致即使多方会议会话已建立并且会议数据随后继续被传输(一旦新控制根计算***被选举出来),用户终止进一步连接至多方会议会话的努力的结果。因此用于分配多方应用层会话的资格信息的***、方法、计算程序产品,以及数据结构是有利的。
发明的概述
本领域当前情况的上述问题由本发明的原理来克服,发明针对用于分配多方应用层会话的资格信息的方法、***、计算机程序产品、以及数据结构。多方应用层会话,如,多方会议会话,包括许多参与计算机***。多个不同网络技术(如,以太网、令牌环、802.11等)可将不同参与计算机***物理地连接至多方会议会话上。在每个参与计算机***处的会议应用被相互逻辑地链路起来(如,会议应用链路被从物理连接中抽取),导致一逻辑图,如,层次结构的树。可能是一个参与计算机***处的会议应用被逻辑地链接到多个其他参与计算机***处的会议应用。
通过向参与多方会议会话的邀请计算机***发送一个问候报文,加入计算机***可试图加入多方会议会话(或向多方会议会话表示它仍是激活的)。邀请计算机***接收问候报文并且更新邀请方链路数据库以指明邀请计算机***被逻辑地链接到加入计算机***。邀请方计算机***向加入计算机***发送更新的邀请方链路数据库。更新的邀请方链路数据库至少包括指明邀请计算机***被逻辑地链路至加入计算机***的邀请方链路状态记录。当邀请计算机***已参与多方会议会话时,邀请方链路数据库可包括其他参与计算机***的链路状态记录。
链路状态记录至少包括计算机***标识符、时间标记以及相邻计算机***的逻辑链路的列表。因此,当加入计算机***加入多方会议会话时,加入计算机***可接收包括其他参与计算机***和连接其他参与计算机***的逻辑链路的链路数据库。因此,当一个参与计算机***失效时,其他参与计算机***可更容易地从失效中恢复,并且多方会议会话可继续而不明显降低用户体验。
加入计算机***接收更新的邀请方的链路数据库,并且用来自于邀请方链路数据库的链路状态记录潜在地更新加入方链路数据库。更新加入方链路数据库可包括将加入方链路数据库中的时间标记和接收到的邀请方链路数据库中的时间标记相比较。当接收到的邀请方链路数据库中的链路状态记录是最新的,加入方链路数据库可被来自于接收到的邀请方链路数据库中的链路状态记录更新。当加入方链路数据库没有参与计算机***的链路状态记录时,来自于接收到的邀请方链路数据库的相应的链路状态记录被用来更新加入方链路数据库。
合适时,加入计算机***也***(或更新)加入方链路数据库中的加入方链路状态记录以表示加入计算机***被逻辑地链接到邀请计算机***。加入计算机***向邀请计算机***发送加入方链路状态记录。邀请计算机***可向其他参与计算机***转发接收方链路状态记录(还有更新的邀请方链路数据库)。因此,参与计算机***连续地向稳定状态过渡,稳定状态中每个参与计算机***知道其他参与计算机***和与其他参与计算机***相关的逻辑链路。
在一些实施例中,修复计算机***检测到链路数据不再从相邻计算机***处(如,被表示为被逻辑地链接到修复方链路状态记录中的修复计算机***的参与计算机***)被接收。因此,修复计算机***将相邻计算机***从相邻计算机***(如,被包含在修复方链路状态记录中的)的修复计算机***列表中删除,并且将相邻计算机***链路状态记录从修复方链路数据库中删除。根据修复方链路数据库中的链路数据,修复计算机***标识逻辑上不能达到的参与计算机***的列表。为了修复多方会议会话,修复计算机***试图加入至少一个逻辑上不能达到的参与计算机***。
发明的其他特征和优点将在随后描述中被公布,阅读描述或从发明的实践中,部分的其他特征和优点将显而易见。通过后附权利要求书中特别指出的方法和组合,可实现和获得发明的特征和优点。阅读下列描述和后附权利要求书,将更清楚本发明的这些和其他特征,或通过下文中所公布的发明的实践来了解本发明的这些和其他特征。
附图概述
为了描述可获得上述和发明的其他优点和特征的方式,将通过参照附图中所说明的发明的特定实施例来描绘以上简述的发明的更特定的描述。要理解的是,这些附图仅仅描绘了发明的典型实施例,并且不因此被认为是发明范围的限制,通过附图的使用将更具体和详细描述和解释发明,图中:
图1说明了用于本发明原理的合适的操作环境。
图2A说明了依据本发明的原理的使得便于加入多方会议会话的网络结构的例子。
图2B说明了依据本发明的原理的使得便于修复多方会议会话的网络结构的例子。
图3说明了用于加入多方会议会话的方法的举例的流程图。
图4说明了用于修复多方会议会话的方法的举例的流程图。
较佳实施方式的详细描述
本发明的原理提供了分发用于多方应用层会话的资格信息。在多方会议会话中的参与计算机***间歇地向其他参与计算机***发送心跳报文来验证先前在参与计算机***之间建立的逻辑链路。同样地,加入计算机***可向参与计算机***发送问候报文(实际上是将加入计算机***介绍给邀请计算机***的心跳报文)以试图加入多方会议会话。为响应接收到问候报文,参与计算机***向发送问候报文的计算机***(参与的或加入的)返回一个或多个链路状态记录。发送问候报文的计算机***可使用返回的一个或多个链路状态记录来更新参与计算机***的链路数据库。每个链路状态记录包括标识参与计算机***的计算机***标识符、时间标记、以及参与计算机***的相邻计算机***的列表。
在一些实施方式中,修复计算机***检测到链路数据不再从相邻计算机***处被接收(如,没有链路状态记录被接收以响应心跳报文)。为响应检测到链路数据不再被接收,修复计算机***将与相邻计算机***有关的链路数据从修复方链路数据库中删除。加入计算机***试图通过连接至至少一个逻辑上不能达到的参与计算机***来修复多方会议会话。当逻辑链路被建立时,修复方数据库可被传播到其他参与计算机***。因此,参与计算机***连续地过渡到稳定状态,在稳定状态中每个参与计算机***知道其他参与计算机***之间的逻辑链路。
本发明范围中的实施例包括用于携带或具有存储在其上的计算机可执行指令或数据结构的计算机可读媒体。这样的计算机可读媒体可以是任何可获得的媒体,媒体可被通用或专用计算机***访问。作为例子,而非限制,这样的计算机可读媒体可包括诸如RAM、ROM、EPROM、CD-ROM或其他光盘存储、磁盘存储或其他磁存储设备的物理存储媒体,或任何其他以计算机可执行指令、计算机可读指令或数据结构的形式存在的被用来携带或存储所需程序码装置的,以及可被通用或专用计算机***访问的媒体。
当信息经由网络或其他通信连接(或者是硬连线的、无线的,或者是硬连线的或无线的组合)被传输或提供给计算机***时,该连接可被适当地看作是计算机可读媒体。因此,任何这样的连接被适当地称作计算机可读媒体。上述的组合也应被包括在计算机可读媒体的范围内。计算机可执行或计算机可读指令包括,例如,使得通用计算机***或专用计算机***完成某些功能或功能组的指令和数据。计算机可执行或计算机可读指令可以是,例如,二进制、诸如汇编语言的中间格式指令,或甚至源码。
在这个描述和下列权利要求中,“计算机***”被定义为一个或多个软件模块、一个或多个硬件模块、或其组合,它们共同工作来完成电子数据上的操作。例如,计算机***的定义包括个人计算机的硬件组件、以及软件模块,如个人计算机的操作***。模块的物理布局不重要。计算机***可包括经由网络耦合的一个或多个计算机。同样地,计算机***可包括单个物理设备(如,移动电话或个人数字助理PDA),其中内部模块(如存储器和处理机)一起工作来完成对电子数据的操作。
在这个描述和下列权利要求中,“逻辑通信链路”被定义为使得在两个诸如计算机***或模块的实体之间的电子数据的传输成为可能的任何通信路径。两个实体之间的通信路径的实际物理表示不重要并且可随时间改变,如,当路由路径被改变时。逻辑通信链路可包括***总线的部分、局域网、广域网、因特网,及其组合,或便于电子数据的传输的任何其他路径的部分。逻辑通信链路被定义成包括硬连线链路、无线链路、或硬连线链路和无线链路的组合。逻辑通信链路也可包括为使得数据部分对于实现本发明原理的组件来说是可访问的、对部分数据调整或格式化的软件或硬件模块(如代理服务***、路由器、网关等等)。
在这个描述和下列权利要求中,“模式”被定义为在多个计算机***之间的共享词汇的表示,它使得多个计算机***能够根据所表达的共享词汇来处理文档。例如,可扩展标记语言(“XML”)模式可定义和描述使用由XML模式语言的模式构造的一类XML文档。这些模式构造可被用来约束和文档化数据类型、元素以其内容、属性及其数值、实体及其内容、以及标注的含义、使用以及关系,如在XML文档中使用的。因此,可访问XML模式的任何计算机***可依据XML模式处理XML文档。还有,可访问XML模式的任何计算机***可编辑或修改被也可访问XML模式的其他计算机***使用的XML文档。
模式被定义成包括“文档类型定义”(“DTD”),如,以“.dtd”扩展名结尾的DTD文件。模式也可被定义成包括万维网协会(“W3C”)XML模式,如,以“.xsd”扩展名结尾的XML模式文件。然而,用于特定DTD或XML模式的实际文件扩展名是不重要的。模式可被用来实际定义包括逻辑、二进制、八进制、十进制、十六进制、整数、浮点、字符、字符串、用户定义数据类型的任何数据类型,以及用来定义数据结构的这些数据类型的组合。XML元素、属性、以及属性值可由在模式中定义的数据类型来表达。在这个定义和下列权利要求中,“基于模式”指的是由
表示在计算机***标识符字段中表示的参与计算机***生成表示链路状态记录的数据结构的时间的时间标记字段。
48.存储在一个或多个计算机可读媒体上的表示链路状数据库的数据结构,其特征在于,数据结构还包括:
表示标识发送链路状态数据库的参与计算机***的计算机***标识符的计算机***标识符字段,参与计算机***参与多方应用层会话;
表示答复间隔值的答复间隔字段,答复间隔字段被用作答复门限的基础,答复门限表明在检测到链路数据不再从相邻计算机***处被接收到之前,计算机***标识符字段中表示的参与计算机***将等候发送链路数据库的响应多长时间;以及
表示其他参与计算机***和计算机***标识符字段中表示的计算机***一起参与多方应用层会话的一个或多个链路状态记录的链路状态记录字段。
49.存储在一个或多个计算机可读媒体上的表示定义用于从链路数据库中传输链路数据的格式的模式的数据结构,其特征在于,数据结构还包括:
定义标识将从链路数据库中传输链路数据的计算机***的格式的来源字段;
定义表示被用作答复门限基础的答复间隔的格式的间隔字段,答复门限表明在检测到链路数据不再从相邻计算机***处被接收到之前,根据在来源字段中定义的标识格式标识的计算机***将等侯对发送链路数据的响应多长时间;以及
定义表示一个或多个计算机***具有将依据来源字段中定义的标识格式标识的计算机***被传输的链路数据的格式的节点类型字段。
50.如权利要求49所述,存储在一个或多个计算机可读媒体上的表示定义用于从链路数据库中传输链路数据的格式的模式的数据结构,其特征在于,节点类型字段包括:
定义标识计算机***具有将依据在源字段中定义的标识格式标识的计算机***被传输的链路数据的节点格式的节点uri字段;
定义表示与依据在节点uri字段中定义的节点标识格式定义的计算机***有关的元数据的格式的名字字段;以及
定义表示被逻辑地链路至依据节点uri字段中的计节点uri字段格式定义的计算机***的一个或多个计算机***的格式的链路类型字段。
51.如权利要求49所述,存储在一个或多个计算机可读媒体上的表示定义用于从链路数据库传输链路数据的格式的模式的数据结构,其特征在于,链路类型字段包括:音数据的设备,整体地放置在一起或分开。为了接收所提供的音频输出信号,音频***也可被耦合到音频输出接口130。
计算机***100包括处理单元120,它考虑复杂的和灵活的通用处理能力。处理单元120执行被设计来完成计算机***100特征的,包括本发明特征的,计算机可执行指令。处理单元120被耦合到***总线110上,***总线也互连各种各样其他***组件,包括***存储器140。
***存储器140一般表示种类繁多的易失和/或非易失存储器,并且也可包括以前所讨论的存储器类型。然而,计算机***100中所用的特定类型的存储器对本发明来说是不重要的。包含一个或多个程序模块的程序码装置可被存储在***存储器140中。一个或多个程序模块可包括操作***141、一个或多个应用程序142、其他程序模块143以及程序数据144。
计算机***100也包括用于从磁硬盘139读取或写入的磁硬盘驱动器127。磁硬盘驱动器127通过大容量存储器接口160被连接至***总线110。磁硬盘驱动器127和磁硬盘139向计算机***100提供计算机可执行指令、数据结构、程序模块和其他数据的非易失存储。例如,磁硬盘139可存储一个或多个包括操作***144、应用程序142、其他程序模块143以及程序数据144的程序模块。
计算机***100可连接至网络,如,办公室范围网或企业范围网、内联网、和/或因特网。计算机***100经由这样的网络可与外部源,如,远程计算机***和/或远程数据库,交换数据。
计算机***100包括网络接口180,通过该接口计算机***100从外部源接收数据,和/或向外部源发送数据。如图1所示,网络接口180使得经由逻辑通信链路182和远程计算机***183的数据交换容易。逻辑通信链路182表示网络的部分,并且远程计算机***183代表网络的节点。例如,远程计算机***183可以是试图加入计算机***100的加入计算机***。另一方面,远程计算机***183可以是计算机***100试图加入的邀请计算机***。
同样地,计算机***100包括串行口接口190,通过该接口计算机***100从外部源接收数据,和/或向外部源发送数据。串行口接口190经由逻辑通信链路159被耦合到调制解调器191,通过逻辑通信链路159计算机***100从外部源接收数据,和/或向外部源发送数据。如图1所示,串行口接口190和调制解调器191使得经由逻辑通信链路192和远程计算机***193的数据交换容易。逻辑通信链路192表示网络的一部分,并且远程计算机***193代表网络的一个节点。例如,远程计算机***193可以是试图加入计算机***100的加入计算机***。另一方面,远程计算机***193可以是计算机***100试图加入的邀请计算机***。
虽然图1表示用于本发明的合适的操作环境,本发明原理可在能够完成本发明原理的任何***中被使用,必要时具有适当的修改。图1所示的环境仅仅是说明性的,并且决不表示种类繁多的环境的甚至一小部分,本发明原理可在此环境中被实现。
依据本发明,链路数据处理模块、以及相关数据,包括链路数据库、链路状态记录、计算机***标识符、时间标记、相邻列表、元数据、以及模式,可被存储在与计算机***100相关的任何计算机可读媒体上并被从与计算机100相关的任何计算机可读媒体中访问。例如,部分这样的模块和部分相关程序数据可被包含在操作***141、应用程序142、程序模块143和/或程序数据144中,用于在***存储器140中的存储。
当大容量存储设备,如,磁硬盘139,被耦合到计算机***100上时,这样的模块和相关程序数据也可被存储到大容量存储设备上。在联网的环境中,有关计算机***100的描述的程序模块,或其部分,可被存储在远程存储器存储设备中,例如,与远程计算机***183和/或远程计算机***193有关的***存储器、和/或大容量存储设备。这样的模块的执行可被在如前所述的分布式环境中完成。
图2说明了举例的多方会议会话200的网络结构。为了清楚,多方会议会话200被表示为逻辑图。逻辑图表示将参与多方会议会话200的参与计算机***之间的基础物理连接抽取。还有,尽管没有清楚地描述,参与计算机***之间的基础物理连接可以是实际任何网络技术的连接(如,令牌环、以太网、IEEE802.11、数字用户线(“DSL”)、异步传送模式(“ATM”)、综合业务数字网(“ISDN”)、以及电缆数据服务接口规范(“DOCSIS”))。每个参与计算机***可被物理地、不同地连接至多方会议会话200。
参与多方会议会话200的是计算机***202、203、204、207和208(在下文中称为“参与计算机***”)。参与计算机***通过相应的逻辑通信链路211至214以及相应的逻辑通信链路216至219(在下文中简称为“链路”)被链接。在多方会议会话200中描述的每条链路与始发计算机***和目标计算机***相联系。没有箭头的链路的一端表明链路的起始端,而有箭头的链路的一端表明链路的终止端。例如,链路216在计算机***203处始发,并且在计算机***207处终止。
有可能的是在参与计算机***之间的基础物理连接根据数据流的方向变化。因此计算机***可以被多重链接以表示数据流的不同方向。例如,用于从计算机***203到计算机***202的数据路径的基础物理连接(链路212)与从计算机***202到计算机***203的数据路径的基础物理连接(链路211)可以是不同的。在多方会议会话200中的每个参与计算机***可包括包含一个或多个链路状态记录的链路数据库以及处理包含在和/或来自于链路状态数据库的链路数据的链路数据处理模块。链路数据可包括表明计算机***是多方应用层会话的成员以及是多方应用层会话的成员的计算机***如何被连接的资格控制信息。
多方会议会话200可以是实时会议会话。因此,会议数据、如,音频和视频数据,可以在参与计算机***之间被传输。会议数据的传输可以发生使得在每个参与计算机***处的会议参与者可听到和/或看见所有其他会议参与者在干什么。例如,会议数据可被一个参与计算机***处的会议应用检测到,并且被传输到其他参与计算机***处的相应的会议应用用于在其他参与计算机***处重现。
参与计算机***可不时地向其他参与计算机***发送心跳报文以验证以前建立的链路仍然存在。为响应接收到心跳报文,发送参与计算机***可向接收参与计算机***发送一发送方链路数据库。接收参与计算机***将发送方链路数据中的时间标记(或版本数字)与接收方链路数据中的时间标记(或版本数字)相比较。当比较的结果是合适的话,接收计算机***用来自于发送方链路数据库的链路状态记录来更新接收方链路数据库。因此,参与计算机***连续地向稳定状态过渡,在稳定状态中每个参与计算机***知道其他参与计算机***以及与其他计算机***有关的所有链路。
链路数据库可包括每个参与计算机***的链路状态记录。例如,表1逻辑地表示用于多方会议会话200中的参与计算机***的链路数据库的例子:
计算机*** | 版本 | 相邻 |
202 | 4 | 203 |
203 | 3 | 202,204,207 |
204 | 1 | 203 |
207 | 5 | 203,208 |
208 | 1 | 207 |
表1
由表1表示的链路数据库可以是在加入计算机***206试图加入多方会议会话200之前,多方会议会话200中每个参与计算机***处的链路数据库(如链路数据库238)。表1的每行表示参与计算机***的链路状态记录。例如,计算机***207的行表明版本数字“5”以及计算机***207具有至计算机***203(链路217)和至计算机***208的链路(链路218)。
链路状态记录可以是用来维持参与计算机***的链路数据的数据结构。例如,参与多方会议会话200的每个参与计算机***可以与相应的链路状态记录联系起来。链路状态记录实际上可以是具有任何格式。然而,下列是表示链路状态记录的举例的链路数据结构:
1.Link_State_Record
2.{
3. Computer System Identifier Field,
4. Computer System Metadata Field,
5. Neighbour List Field,
6. Timestamp Field,
7.}
举例的链路数据结构的行3是表示标识参与计算机***的计算机***标识符的“计算机***标识符字段”。计算机***标识符值可包括,例如,网络地址(如,互连网协议(“IP”)地址)或统一资源标识符(“URI”)(如,统一资源***“URL”))。举例的链路数据结构的行4是表示用来描述行3中标识的参与计算机***的元数据的“计算机***元数据字段”。元数据值可包括,例如,用于引用在行3中标识的参与计算机***的描述性名字。
举例的链路数据结构的行5是表示用于行3中标识的参与计算机***的相邻计算机***列表。相邻列表值可包括,例如,标识被连接到行3中标识的参与计算机***的其他参与计算机***的多个计算机***标识符。举例的链路数据结构的行6是表示行3中标识的参与计算机***生成举例的链路数据结构的时间。时间标记值可包括,例如,绝对时间值(如12;05PM)、差分时间值(如5分钟)、版本数字(如1、2、3等)、或索引值。索引值实际上可以是任何数据类型,如,串、字符、整型、浮点、或甚至用户定义的数据类型。
有可能的是参与多方会议会话200的计算机***公布一个或多个可被加入计算机***用来试图加入多方会议会话200的入口点(如,计算机***地址和路由信息)。例如,计算机***208可公布可被用来连接至计算机***208的相关IP地址。还有,根据与计算机***208相关的网络组件,计算机***208可公布至计算机***208的合适路由数据的路由信息。入口点和路由信息可被公布在位于处理链路数据的应用层(如会议应用)之下的协议栈的低层(如,网络层和/或传输层)。因此,在参与计算机***交换链路数据以建立逻辑链路之前,低层连接数据(如,网络层数据和/或传输层数据)可被计算机***交换。计算机***可通过发送和接收低层协议(如,IP,传输控制协议(“TCP”)、用户数据报协议(“UDP”)等等)的电子报文(如,分组、帧等等)来交换低层连接数据。
低层连接数据的交换可包括参与计算机***和请求加入多方会议会话200的加入计算机***交换安全信息。安全信息可包括用于验证参与计算机***以及验证加入计算机***的公钥。例如,群公钥可被提供给加入计算机***来验证参与计算机***。加入计算机***公钥、名称、以及会话标识符可用群公钥来签名。群公钥签名使得参与计算机***能够加入计算机***试图加入多方会议会话200时对它验证和授权。在一些实施方式中,邀请计算机***的公钥被用来签名加入计算机***公钥、名字、以及会话标识符。
图3说明了用于加入多方会议会话的方法300的流程图。方法300将关于图2A中描绘的计算机***来描述。
方法300包括发送问候报文的动作(动作301)。动作301可包括加入计算机***向邀请计算机***发送问候报文。例如,如图2A所述,加入计算机***206向计算机***208发送问候报文222。问候报文实际上是向参与多方应用层会话的计算机***介绍未被连接的加入计算机***的心跳报文。例如,问候报文222可向计算机***208介绍加入计算机***206,并且可包括加入多方会议会话200的请求。方法300包括接收问候报文的动作(动作305)。动作305可包括邀请计算机***接收来自于加入计算机***的问候报文。例如,如图2A所述,计算机***208接收来自于加入计算机***206的问候报文222。
方法300包括更新邀请方链路数据库的动作(动作306)。动作306可包括更新邀请方链路数据库以表明邀请计算机***被链接到加入计算机***上。邀请方链路数据库可被更新以响应接收到问候报文。例如,为响应接收到问候报文222,链路数据处理模块248可更新链路数据库238以表明计算机***208被链接至加入计算机***206。
更新链路数据库238可包括将计算机***标识符值增加到合适的相邻列表上(如,包含在与计算机***208对应的链路状态记录中的相邻列表)以表明加入计算机***206是计算机***208的一个相邻。更新链路状态记录也可包括改变时间标记字段的时间标记值,如,通过增加版本数字,以表明链路状态记录被改变。在一些实施方式中,参与计算机***仅仅被允许更新具有标识参与计算机***的计算机***标识符字段值的链路状态记录。因此,当链路状态记录在另一个参与计算机***处被接收时,包含在链路状态记录中的链路数据是准确的将有更多的机会。
方法300包括发送更新的邀请方链路数据库的动作(动作307)。动作307可包括邀请计算机***向加入计算机***发送更新的邀请方链路数据库。邀请方链路数据库至少包括表明邀请计算机***被链接至加入计算机***的链路状态记录。例如,计算机***208在更新了链路数据库238之后向计算机***208发送链路数据库238以表明计算机***208被链接至加入计算机***206上。在一些实施方式中,同步报文被用来传输来自于更新的链路数据库的数据。
应该理解的是本发明不限制于使用任何特定传输协议和格式的报文传输。然而,可用来完成本发明原理的举例的协议被称为简单对象访问协议(“SOAP”)。来自于链路数据库238的链路数据可被包括在SOAP报文中,SOAP报文使用任何数量的低层协议,如,超文本传输协议(“HTTP”)或直接因特网报文封装作为传输。下列表示包含在SOAP包封的报头和/或本体中的以表示包括来自于链路数据库238的链路数据的同步报文的第一个举例的XML指令。
1.<Sync from=“soap://address_208”interval=“3”>
2. <Node uri=“soap://address_202”name=“Node 202”version=“4”>
3. <Link uri=“soap://address_203”>
4. </Node>
5. <Node uri=“soap://address_203”name=“Node 203”version=“3”>
6. <Link uri=“soap://address_202”>
7. <Link uri=“soap://address_204”>
8. <Link uri=“soap://address_207”>
9. </Node>
10. <Node uri=“soap://address_204”name=“Node 204”version=“1”>
11. <Link uri=“soap://address_203”>
12. </Node>
13. <Node uri=“soap://address_207”name=“Node 207”version=“5”>
14. <Link uri=“soap://address_203”>
15. <Link uri=“soap://address_208”>
16. </Node>
17. <Node uri=“soap://address 208”name=“Node 208”version=“1”>
18. <Link uri=“soap://address_207”>
19. </Node>
20. </Sync>
第一个举例的XML指令中的元素(如,在<Sync>和</Sync>之间)可包括一个或多个自由格式的XML文件。同样地,第一个举例的XML指令中的元素可包括依据加入多方会议会话200的计算机***可访问的XML模式所定义的一个或多个XML文档。当模式(如,XML模式)被用来约束数据结构(如,XML数据结构)中的数据类型的含义时,定义链路数据如何被表示将有更大的灵活性。
第一个举例的XML指令表示加入多方会议会话200的计算机***的链路状态记录。第一个举例的XML指令的第一行表明所包含的链路状态记录被从计算机***208处发送(由所包含的URI表明),并且接收链路状态记录的计算机***(如,加入计算机***206)应在因特网信息包搜寻协议间隔3中应答。因特网信息包搜寻协议间隔可以是任何单位,如,毫秒、秒或分钟。在基于因特网信息包搜寻协议间隔的特定门限内计算机***208不能接收来自于接收计算机***的响应是链路数据不再从接收计算机***处被接收的一种指示。
每个链路状态记录(如,在行2-4、行5-9、行10-12、行13-16以及行17-19)由相应的“节点”标记(如,在<Node>和(/Node)之间)表示。一定数目的名值对可被用来表示包含在链路状态记录中的链路数据。例如,行14处的名值对表示“uri”属性和“soap://address_207”的相应的uri属性值。值soap://address_207是标识计算机***207的统一资源标识符(“URI”)(如,在计算机***标识符字段中所表示的)。因此,将被发送至计算机***207的链路数据可被发送到URI soap://address_207。行14处的另一个名值对表示Node 207”“name”属性和”相应的名字属性值。值Node207是计算机***207的描述名(如,在计算机***元数据字段中所表示的)。因此,当涉及计算机***207时,描述名Node 207可被使用。
行14处的另一个名值对表示“version”属性和相应的版本属性值“5”。值5是计算机***207的链路状态记录的版本(如,在时间标记字段中所表示的)。当计算机***更新相应的链路状态记录时,计算机***可改变版本属性值(如,通过增加版本属性值)来区分更新链路状态记录和以前的链路状态记录。因此,当计算机***接收更新的链路数据,如,链路数据库238时,接收计算机***可将当前链路状态记录的版本数字和接收到的链路状态记录的版本数字相比较以决定最新的链路状态记录。当链路数据库238中的链路状态记录比接收计算机***处的链路状态更加新时,接收计算机***处的链路数据库被更新以将最新链路状态记录包括在内。
行14表示从计算机***207至计算机***203的链路(链路217),行15处的名值对表示“uri”属性和相应的uri属性值“soap://address_203”。因此,为了向计算机***203发送链路数据,计算机***207可向URI soap://address_203发送链路数据。行15表示从计算机***207至计算机***208的链路(链路218),行16处的名值对表示“uri”属性和相应的uri属性值“soap://address_208”。因此,为了向计算机***208发送链路数据,计算机***207可向URI soap://address_208发送链路数据。行14和15可在相邻列表字段中被共同表示。
其他节点标记的属性以及属性值(在行2-4、行5-9、行10-12、以及行17-19处)表示相应参与计算机***202、203、204和208的类似的链路数据。在一些实施方式中,第一个举例的XML指令被包含在SOAP包封的报头中,而应用数据(如,会议数据)被包含在SOAP包封的本体部分中。因此,链路数据的更新可以是和会议数据一起传输而不需要生成单独的电子报文。
在一些实施方式中,问候报文(如,与在动作301和305中使用的相似)或其他心跳报文采用同步报文的形式。因此,在试图加入多方应用层会话或重新建立与多方应用层会话的连接时,加入计算机***或参与计算机***可向邀请计算机***或其他参与计算机***提供链路状态数据。接收以同步报文形式存在的问候或心跳报文的计算机***可更新相应的链路数据库以将包含在同步报文中链路状态数据包括在内。当加入计算机***已经和其他计算机***连接时(如,当两个多方应用层会话将被相互连接时),这可以特别有利。
在一些其他实施方式中,问候报文或其他心跳报文是不包括任何节点标记的SOAP报文。下列表示可被包括在SOAP的报头和/或本体内的以表示问候或心跳报文的第二个举例的指令:
1. <Sync from=“soap://address_204”interval=“2”>
2. </Sync>
在第二个举例的XML指令中的同步标记中所表示的数据可以与包括链路状态数据(如,一个或多个节点标记)的同步报文(如在第一个举例的XML指令)中所表示的数据是同样的格式。因此,同样的模式可用来约束问候报文、心跳报文、以及同步报文中的数据类型的含义。这促进了问候报文、心跳报文以及同步报文的有效处理。行1处,第二个举例的XML指令表明(由所包括的URI)它们被从计算机***204处发送并且接收第二个举例的XML指令的计算机***应在因特网信息包搜寻协议间隔2内应答。
回到图3,方法300包括接收邀请方链路数据库的动作(动作302)。动作302包括加入计算机***接收来自于邀请计算机***的邀请方链路数据库。例如,加入计算机***206可接收来自于计算机***208的链路数据库。
方法300包括更新加入方链路数据库的动作(动作303)。动作303可包括更新加入方链路数据库以至少表明加入计算机***被链接到邀请计算机***。例如,链路数据处理模块246可更新链路数据库236以将表明加入计算机***206被链接到计算机***208的链路状态记录据包括在内。依据合适的时间标记值,链路数据处理模块236也可更新链路数据库236以将来自于链路数据库238的其他链路状态记录包括在内。因此,加入计算机***206知道多方会议会话200中的其他参与计算机***以及它们相应的链路。
方法300包括发送更新的加入方链路状态记录的动作(动作304)。动作304可包括加入计算机***向邀请计算机***发送更新的加入方链路状态记录。加入方链路状态记录可向邀请计算机***表明加入计算机***被链接到邀请计算机***。例如,加入计算机***206可向计算机***208发送链路状态记录224。链路状态记录224可向计算机***208表明加入计算机***206被链接至计算机***208。
方法300包括接收加入方链路状态记录的动作(动作308)。动作308可包括邀请计算机***接收来自于加入计算机***的加入方链路状态记录。例如,计算机***208可接收来自于加入计算机***206的链路状态记录224。链路处理模块248可更新链路数据库238以将链路状态记录224包括在内。加入计算机***206现在被看作是参与计算机***。
计算机***208然后可向其他链路的参与计算机***(如计算机***207)发送更新的链路数据库238。这些其他计算机***然后向多方会议会话200中的其他参与计算机***(如计算机***203、202和204)进一步传播(如,通过传输合适的同步报文)更新的链路数据库238。所以,在一个参与计算机***处的链路数据中的变化最终漫流到其他参与计算机***处。因此,多方会议会话200连续地过渡到稳定状态使得每个参与计算机***知道其他参与计算机***以及与其他参与计算机***有关的相应的链路。
参与计算机***可不时地试图重新加入多方会议会话200或向多方会议会话200中的其他计算机***提供存活性。因此,方法300可在两个参与计算机***之间被重复。在一些实施方式中,发送计算机***向接收计算机***发送发送方同步报文,或,如果没有发送方链路数据更新,则向接收计算机***发送发送方心跳报文。发送计算机***也向接收计算机***表明发送方答复门限值。心跳报文可包括标识参与计算机***的URI和因特网信息包搜寻协议间隔。
接收方计算机***接收发送方同步报文或发送方心跳报文,并且通过向发送计算机***发送接收方同步报文或,如果没有接收方链路数据更新,则发送接收方心跳报文来响应。接收方计算机***也向发送计算机***表明接收方答复门限值。当发送计算机***在发送方答复门限值内接收接收方同步报文或心跳报文时,发送计算机***将接收计算机***看作是“存活的”。同样,发送计算机***通过再次发送发送方同步报文或发送方心跳报文(以及表明另一个发送方答复门限值)以响应接收方同步报文或心跳报文。当接收计算机***在接收方答复门限值内接收发送方同步报文或发送方心跳报文时,接收计算机***将发送计算机***看作是“存活的”。
多方会议会话中的每个参与计算机***可以相同的方式与其他参与计算机***交换同步报文和心跳报文。例如,计算机***203可与计算机***202、204和207的每个交换包含链路数据的同步报文。因此,在一个参与计算机***处更新的链路数据被传播到(如通过传输合适的同步报文)其他参与计算机***。例如,表明加入计算机***206已加入多方会议会话200的链路数据被从计算机***208处传播至计算机***207,至计算机***203等等。所以,在多方会议会话的任何期间,在参与计算机***之间可能有一个或多个同步报文以及一个或多个心跳报文在被传输。
有可能的是,在多方会议会话的期间,参与计算机***离开多方会议会话或失效,或参与计算机***之间的链路失效。任何这些事件可导致一个参与计算机***不能接收来自于其他参与计算机***的链路数据(如在特定的门限内),图2B说明了在计算机***207失效后的多方会议会话200。用虚线描述计算机***207以展示来自于计算机***207的链路数据没有在计算机***203和208(先前相邻计算机***)处被接收。同样,在图2B中描述的是连接加入计算机***206和计算机***208的链路235和236。这表明加入计算机***206是参与计算机***。
图4是用于修复多方会议会话的方法400的流程图。方法400将关于图2B中描绘的计算机***来描述。方法400包括检测链路数据不再从相邻计算机***处被接收到的动作(动作401)。动作401可包括修复检测到链路数据不再从相邻计算机***处被接收的计算机***。例如,在图2B中计算机***203和计算机***208都可检测到链路数据不再从计算机***207(计算机***203和计算机***208的相邻列表中的计算机***)处被接收到。当答复计时器期满时,可得到检测链路数据不再被接收的结果。例如,计算机***203可向计算机***207发送下列第二个举例的XML指令:
1. <Sync from=“soap://address_203”interval=“4”>
2. .
3. .
4. </Sync>
第二个举例的XML指令的行1表明第二个举例的XML指令被从与计算机***203有关的URI处发送。行1还表明由行2-4垂直省略号表示的一个或多个链路状态记录有“4”的答复间隔。当计算机***203在由答复间隔来计算的明确规定的门限内没有接收到来自于计算机***207的答复时,计算机***203检测到来自于计算机***207的链路数据没有被接收到。明确规定的门限可以是,例如,答复间隔与两的乘积。这使得一个间隔用于第二个举例的XML指令的从计算机***203传播到计算机***207,一个间隔用于答复链路数据(例,链路数据库)从计算机***207传播到计算机***203。
方法400包括将相邻计算机***从相邻计算机***的修复计算机***的列表中删除的动作(动作402)。方法400也包括将相邻计算机***的链路状态记录从修复方链路数据库中删除的动作(动作403)。例如,当链路处理模块243检测到链路数据不再从计算机***207处被接收时,链路处理模块243可更新链路数据库233以删除对计算机***207的引用。同样地,当链路处理模块248检测到链路数据不再从计算机***207处被接收时,链路处理模块248可更新链路数据库238以删除对计算机***207的引用。因此,在计算机***207失效后,合适更新的链路数据库233和238可由表2表示:
计算机*** | 版本 | 相邻 |
202 | 6 | 203 |
203 | 7 | 202,204 |
204 | 3 | 203 |
206 | 9 | 208 |
208 | 2 | 206 |
方法400包括依据修复方链路数据库中的链路状态记录标识逻辑上不能达到的计算机***的列表的动作(动作404)。如图2B所述,在计算机***207失效后,加入计算机***206和计算机***208不再被链接到计算机***203。因此,计算机***203可将计算机***206和208标识为逻辑上不能达到的。同样地,计算机***208可将计算机***202、203和204标识为逻辑上不能达到的。
方法400包括试图加入至少一个逻辑上不能达到的计算机***的动作(动作405)。例如,计算机***203可向计算机***208发送问候报文,计算机***208可用链路数据库238应答,并且计算机***203还可用链路数据库233(所有由链路数据244共同表示)应答。因此,链路数据库233和238可相继被更新以表明计算机***203和计算机***208是相邻。来自于链路数据库236和238的更新的链路数据然后可被传播到多方会议会话200中的其他参与计算机***。
在一些实施方式中,修复计算机***试图建立至多条逻辑上不能达到的计算机***或甚至每条逻辑上不能达到的计算机***的链路。在图2B中,计算机***203可试图建立至计算机***208和加入计算机***206的链路。同样地,计算机***203可试图建立至计算机***202、计算机***203和计算机***204的链路。在加入先前逻辑上不能达到的计算机***之后,在先前逻辑上不能达到的计算机***处的链路数据可表明与其他逻辑上不能达到计算机***的连接性。所以,尽管参与计算机***可试图建立至每个逻辑上不能达到的计算机***的链路,通过参与计算机***加入其他先前逻辑上不能达到的计算机***,一些逻辑上不能达到的计算机***可变成可达到的。当逻辑上不能达到的计算机***变成可达到的时,参与计算机***可避免试图加入逻辑上不能达到的计算机***(因为链路数据将被从其他加入的计算机***传播到参与计算机***)。这可导致在多方会议会话200中的参与计算机***之间的链路的“Web”的结果。
依据下列举例的XML模式,由多方会议会话200中的参与计算机***交换的链路数据可被定义为:
1. <?xml version=”1.0”encoding=”utf-8”?>
2.<xs:schema id=”MembershipSync”
xmlns:xs=http://www.w3.org/2001/XMLschema>
3.
4.<xs:element name=”Sync”type=”SyncType”/>
5.
6.<xs:complexType name=”SyncType”>
7.<xs:sequence>
8. <xs:element name=”Node”type=”NodeType”/>
9. minOccurs=”0”
10. maxOccurs=”unbounded”/>
11. </xs:sequence>
12. <xs:arrtibute name=”from”type=”xs:anyURI”use=”required”/>
13. <xs:arrtibute name=”interval”type=”xs:short”
14.</xs:complexType>
15.
16.<xs:complexType name=”NodeType”>
17.<xs:sequence>
18. <xs:element name=”Link”type=”LinkType”
19. minOccurs=”0”
20. maxOccurs=”unbounded”/>
21.</xs:sequence>
22.<xs:arrtibute name=”uri”type=”xs:anyURI”use=”required”/>
23.<xs:arrtibute name=”name”type=”xs:string”use=”required”/>
24.</xs:complexType>
25.
26.<xs:complexType name=”LinkType”>
27.<xs:arrtibute name=”uri”type=”xs:anyURI”use=”required”/>
28.</xs:complexType>
29.
30.</xs:schema>
行6-14定义“SyncType”数据类型的“Sync“元素。特别是,行7-11定义了SyncType数据类型以将“NodeType”数据类型的零个或多个“Node”元素包括在内,行12定义了SyncType数据类型以将URI数据类型的“from”属性包括在内,以及行13定义了SyncType数据类型以将短整型数据类型的“interval”属性包括在内。
行16-24还定义NodeType数据类型。特别是,行17-21定义了NodeType数据类型以将“LinkType”数据类型的零个或多个“Link”元素包括在内,行22定义了NodeType数据类型以将URI数据类型的“uri”属性包括在内,以及行23定义了NodeType数据类型以将串数据类型的“name”属性包括在内。
行26-28还定义LinkType数据类型。特别是,行27定义了LinkType数据类型以将URI数据类型的uri属性包括在内。
多方会议会话200中的每个参与计算机***可访问举例的XML模式。因此,多方会议会话200中所包括的每个计算机***可依据举例的XML模式处理链路数据。
本发明可在其他特定形式中体现而不脱离其精神和必要特性。所描述的实施方式从所有方面考虑都仅仅是说明性的及非限制性的。本发明的范围由后附权利要求书指明,而不是以上描述。所有改变,在权利要求书的等效技术方案的含义和范围之内的,也可包括在发明的范围内。
Claims (51)
1.在至少包括邀请计算机***的多方应用层会话中,邀请计算机***可联网连接到加入计算机***使得加入计算机***和邀请计算机***可通过传输电子报文来通信,加入方应用层在加入计算机***处处理以加入多方应用层会话的方法,其特征在于,该方法包括:
向邀请计算机***发送问候报文的动作;
接收来自于邀请计算机***的邀请方链路数据库的动作,邀请方链路数据库包括指示了邀请计算机***被逻辑地链接到加入计算机***的邀请方链路状态记录;
更新加入方链路数据库以至少表明加入计算机***被逻辑地链路至邀请计算机***来响应接收到邀请方链路数据库的动作;以及
向邀请计算机***发送更新的加入方链路状态记录的动作,更新的加入方链路状态记录表示了加入计算机***被逻辑地链路至邀请计算机***。
2.如权利要求1所述的方法,其特征在于,它还包括:
加入方低协议层,在协议栈中位于加入方应用层处理之下,在发送问候报文之前接收来自于相应的邀请方低协议层的安全信息的动作,安全信息用于和多方应用层会话一起验证。
3.如权利要求1所述的方法,其特征在于,它还包括:
加入方低协议层,在协议栈中位于加入方应用层处理之下,在发送问候报文之前接收来自于相应的邀请方低协议层的进入点的动作,进入点用于连接至邀请方计算机***以交换低层连接数据。
4.如权利要求1所述的方法,其特征在于,发送问候报文的动作包括发送包含一个或多个链路状态记录的同步报文的动作。
5.如权利要求1所述的方法,其特征在于,接收邀请方链路数据库的动作包括接收一个或多个链路状态记录的动作,每个链路状态记录表明参与多方应用层会话的计算机***之间的一条或多条逻辑链路。
6.如权利要求1所述的方法,其特征在于,接收邀请方链路数据库的动作包括接收基于模式的邀请方链路数据库的动作。
7.如权利要求6所述的方法,其特征在于,接收基于模式的邀请方链路数据库的动作包括接收依据XML模式定义的XML指令的动作。
8.如权利要求1所述的方法,其特征在于,更新加入方链路数据库的动作包括将邀请方计算机***添加到加入计算机***的相邻列表中的动作。
9.如权利要求1所述的方法,其特征在于,更新加入方链路数据库的动作包括用从邀请计算机***接收到的链路状态记录的更新版本代替加入链路数据库中的链路状态记录的当前版本的动作。
10.如权利要求1所述的方法,其特征在于,更新加入方链路数据库的动作包括表明加入方应用层处理被逻辑地连接到相应的邀请方应用层处理使得加入方应用层处理和邀请方应用层处理可交换会议数据的动作。
11.如权利要求1所述的方法,其特征在于,向邀请计算机***发送更新的加入方链路状态记录的动作包括发送基于模式的链路状态记录的动作。
12.如权利要求11所述的方法,其特征在于,发送基于模式的链路状态记录的动作包括发送依据XML模式定义的XML链路状态记录的动作。
13.如权利要求1所述的方法,其特征在于,它还包括:
接收包含表明邀请计算机***是加入计算机***的相邻的链路状态记录的第二个更新的邀请方链路数据库的动作。
14.如权利要求1所述的方法,其特征在于,在加入方计算机***发送问候报文之前,加入计算机***和邀请计算机***都是多方应用层会话中的参与计算机***。
15.如权利要求1所述的方法,其特征在于,多方应用层会话是多方会议会话。
16.在至少包括邀请计算机***的多方应用层会话中,邀请计算机***可联网连接到加入计算机***使得加入计算机***和邀请计算机***可通过传输电子报文来通信,邀请方应用层在邀请计算机***处处理以邀请加入计算机***加入多方应用层会话的方法,其特征在于,该方法包括:
接收来自于加入计算机***的问候报文的动作;
更新邀请方链路数据库以表明邀请计算机***被逻辑地链路至加入计算机来响应接收到问候报文的动作;
向加入计算机***发送更新的邀请方链路数据库的动作;更新的邀请方链路数据库至少包括表明邀请计算机***被逻辑地链路至加入计算机***的邀请方链路状态记录;以及
接收来自于加入计算机***的加入方链路状态记录的动作,加入方链路状态记录表明邀请计算机***被逻辑地链路至加入计算机***。
17.如权利要求16所述的方法,其特征在于,它还包括:
邀请方低协议层,在协议栈中位于邀请方应用层处理之下,在接收问候报文之前向相应的加入方低协议层发送安全信息的动作,安全信息用于和多方应用层会话一起验证。
18.如权利要求16所述的方法,其特征在于,它还包括:
邀请方低协议层,在协议栈中位于邀请方应用层处理之下,在接收问候报文之前向相应的加入方低协议层公布进入点的动作,安全进入点用于连接至加入方计算机***以交换低层连接数据。
19.如权利要求16所述的方法,其特征在于,接收来自于加入计算机***的问候报文的动作包括在明确规定的门限内接收问候报文的动作,该明确规定的门限从先前发送至加入计算机***的答复间隔中被计算出来。
20.如权利要求16所述的方法,其特征在于,接收来自于加入计算机***的问候报文的动作包括接收包含一个或多个链路状态记录的同步报文的动作。
21.如权利要求16所述的方法,其特征在于,更新邀请方链路数据库的动作包括将加入计算机***添加到与邀请计算机***相对应的相邻列表中的动作。
22.如权利要求16所述的方法,其特征在于,更新邀请方链路数据库的动作包括表明邀请方应用层处理被逻辑地连接到相应的加入方应用层处理使得邀请方应用层处理和加入方应用层处理可交换会议数据的动作。
23.如权利要求16所述的方法,其特征在于,向加入计算机***发送更新的邀请方链路数据库的动作包括发送一个或多个链路状态记录的动作,每个链路状态记录表明多方应用层会话的计算机***之间的一条或多条逻辑链路。
24.如权利要求16所述的方法,其特征在于,向加入计算机***发送更新的邀请方链路数据库的动作包括发送基于模式的邀请方链路数据库的动作。
25.如权利要求16所述的方法,其特征在于,发送基于模式的邀请方链路数据库的动作包括发送依据XML模式定义的XML指令的动作。
26.如权利要求16所述的方法,其特征在于,接收加入方链路状态记录的动作包括接收基于模式的链路状态记录的动作。
27.如权利要求26所述的方法,其特征在于,接收基于模式的链路状态记录的动作包括接收依据XML模式定义的XML链路状态记录的动作。
28.如权利要求16所述的方法,其特征在于,它还包括:
进一步更新邀请方链路数据库以将加入方链路状态记录包括在内的动作。
29.如权利要求28所述的方法,其特征在于,它还包括:
向包含在邀请计算机***的相邻列表中的至少一个计算机***发送进一步更新的邀请方链路数据库使得加入方链路状态记录被传播到参与多方应用层会话的其他计算机***的动作。
30.如权利要求16所述的方法,其特征在于,在邀请方计算机***接收到问候报文之前,邀请计算机***和接收计算机***都是多方应用层会话中的参与计算机***。
31.如权利要求16所述的方法,其特征在于,多方应用层会话是多方会议会话。
32.在具有包含修复计算机***和相邻计算机***的多个可网络连接的参与计算机***的多方应用层会话中,相邻计算机***是在修复计算机***的相邻列表中的,用于在修复计算机***处应用层处理以启动多方应用层会话的修复的方法,其特征在于,它包括:
检测链路数据不再从相邻计算机***处被接收到的动作;
将相邻计算机***从修复计算机***相邻列表中删除的动作;
将相邻计算机***的链路状态记录从修复方链路数据库中删除的动作
根据修复方链路数据库中剩余的链路状态记录标识逻辑上不能达到的参与计算机***的列表的动作;以及
为了修复多方会话,试图加入至少一个逻辑上不能达到的参与计算机的动作。
33.如权利要求32所述的方法,其特征在于,检测链路数据不再从相邻计算机***处被接收到的动作包括答复计时器期满的动作。
34.如权利要求32所述的方法,其特征在于,检测链路数据不再从相邻计算机***处被接收到的动作包括在明确规定的响应间隔内没有收到心跳报文的动作。
35.如权利要求32所述的方法,其特征在于,根据修复方链路数据库中的链路状态记录标识辑上不能达到的参与计算机***的列表的动作包括标识一参与计算机***是不能通过对包含在修复方链路数据库中的链路的任何组合而达到的动作。
36.如权利要求32所述的方法,其特征在于,为了修复多方会话试图加入至少一个逻辑上不能达到的参与计算机***的动作包括向逻辑上不能达到的参与计算机***发送问候报文的动作。
37.如权利要求32所述的方法,其特征在于,为了修复多方会话试图加入至少一个逻辑上不能达到的参与计算机***的动作包括试图加入在逻辑上不能达到的参与计算机***的列表中被标识的每个逻辑上不能达到的参与计算机***的动作。
38.在多方应用层会话中使用的计算机程序产品包括至少一个邀请计算机***,邀请计算机***可网络连接至加入计算机***使得加入计算机***和邀请计算机***可通过传输电子报文来通信,用于完成在加入计算机***处加入方应用层处理以加入多方应用层会话的方法的计算机程序产品,其特征在于,它包括计算机可执行的指令存储在其上的一个或多个计算机可读媒体,当被处理机执行时,使得加入计算机***完成下列:
向邀请计算机***发送问候报文;
接收来自于邀请计算机***的邀请方链路数据库,邀请方链路数据库包括表明邀请计算机***被逻辑地链接到加入计算机***的邀请方链路状态记录;
更新加入方链路数据库以至少表明加入计算机***被逻辑地链接到邀请计算机***以响应接收到邀请方链路数据库;以及
向邀请计算机***发送更新的加入方链路状态记录,更新的加入方链路状态记录表明加入计算机***被逻辑地链路至邀请计算机***。
39.如权利要求38所述的计算机程序产品,其特征在于,一个或多个计算机可读媒体是物理媒体。
40.在多方应用层会话中使用的计算机程序产品包括至少一个邀请计算机***,邀请计算机***可网络连接至加入计算机***使得加入计算机***和邀请计算机***可通过传输电子报文来通信,用于完成在邀请计算机***处邀请方应用层处理以邀请加入计算机***加入多方应用层会话的方法的计算机程序产品,其特征在于,它包括计算机可执行的指令存储在其上的一个或多个计算机可读媒体,当被处理机执行时,使得加入计算机***完成下列:
接收来自于加入计算机***的问候报文;
更新邀请方链路数据库以表明邀请计算机***被逻辑地链路至加入计算机***以响应接收到问候报文;
向加入计算机***发送更新的邀请方链路数据库,更新邀请方链路数据库至少包括表明邀请计算机***被逻辑地链接到加入计算机***的邀请方链路状态记录;以及
接收来自于加入计算机***的加入方链路状态记录,加入方链路状态记录表明加入计算机***被逻辑地链接到邀请计算机***。
41.如权利要求40所述的计算机程序产品,其特征在于,一个或多个计算机可读媒体是物理媒体。
42.在多方应用层会话中使用的计算机程序产品具有包括修复计算机***和相邻计算机***的多个可网络连接的参与计算机***,相邻计算机***是在修复计算机***的相邻列表中的,用于完成应用层在修复计算机***处处理以启动多方应用层会话的修复的方法的计算机程序产品,其特征在于,它包括计算机可执行指令存储在其上的一个或多个计算机可读媒体,当被处理机执行时,使得加入计算机***完成下列:
检测链路数据不再从相邻计算机***处被接收;
将相邻计算机***从修复计算机***的相邻列表中删除;
将相邻计算机***的链路状态记录从修复方链路数据库中删除;
根据包含在修复方链路数据库中的剩余链路状态记录标识逻辑上不能达到的参与计算机***列表;以及
为了修复多方会话试图加入至少一个逻辑上不能达到的参与计算机。
43.如权利要求42所述的计算机程序产品,其特征在于,一个或多个计算机可读媒体是物理媒体。
44.存储在一个或多个计算机可读媒体上的用于表示链路状态记录的数据结构,其特征在于,它包括下列:
表示标识参与多方应用层会话的参与计算机***的计算机***标识符的计算机***标识符字段;以及
表示被逻辑地链接到在计算机***标识符字段中标识的参与计算机***的一个或多个相邻计算机***的列表的相邻列表字段。
45.如权利要求44所述的存储在一个或多个计算机可读媒体上的表示链路状态记录的数据结构,其特征在于,相邻列表字段包括:
一个或多个相邻计算机***标识符字段,每个相邻计算机***标识符字段表示用于标识相邻计算机***被逻辑地链接到在计算机***标识符字段中表示的参与计算机***的相邻计算机***标识符。
46.如权利要求44所述的存储在一个或多个计算机可读媒体上的表示链路状态记录的数据结构,其特征在于,数据结构还包括:
表示用来描述在计算机***标识符字段中表示的参与计算机***的元数据的计算机***元数据字段。
47.如权利要求44所述的存储在一个或多个计算机可读媒体上的表示链路状态记录的数据结构,其特征在于,数据结构还包括:
表示在计算机***标识符字段中表示的参与计算机***生成表示链路状态记录的数据结构的时间的时间标记字段。
48.存储在一个或多个计算机可读媒体上的表示链路状数据库的数据结构,其特征在于,数据结构还包括:
表示标识发送链路状态数据库的参与计算机***的计算机***标识符的计算机***标识符字段,参与计算机***参与多方应用层会话;
表示答复间隔值的答复间隔字段,答复间隔字段被用作答复门限的基础,答复门限表明在检测到链路数据不再从相邻计算机***处被接收到之前,计算机***标识符字段中表示的参与计算机***将等候发送链路数据库的响应多长时间;以及
表示其他参与计算机***和计算机***标识符字段中表示的计算机***一起参与多方应用层会话的一个或多个链路状态记录的链路状态记录字段。
49.存储在一个或多个计算机可读媒体上的表示定义用于从链路数据库中传输链路数据的格式的模式的数据结构,其特征在于,数据结构还包括:
定义标识将从链路数据库中传输链路数据的计算机***的格式的来源字段;
定义表示被用作答复门限基础的答复间隔的格式的间隔字段,答复门限表明在检测到链路数据不再从相邻计算机***处被接收到之前,根据在来源字段中定义的标识格式标识的计算机***将等侯对发送链路数据的响应多长时间;以及
定义表示一个或多个计算机***具有将依据来源字段中定义的标识格式标识的计算机***被传输的链路数据的格式的节点类型字段。
50.如权利要求49所述,存储在一个或多个计算机可读媒体上的表示定义用于从链路数据库中传输链路数据的格式的模式的数据结构,其特征在于,节点类型字段包括:
定义标识计算机***具有将依据在源字段中定义的标识格式标识的计算机***被传输的链路数据的节点格式的节点uri字段;
定义表示与依据在节点uri字段中定义的节点标识格式定义的计算机***有关的元数据的格式的名字字段;以及
定义表示被逻辑地链路至依据节点uri字段中的计节点uri字段格式定义的计算机***的一个或多个计算机***的格式的链路类型字段。
51.如权利要求49所述,存储在一个或多个计算机可读媒体上的表示定义用于从链路数据库传输链路数据的格式的模式的数据结构,其特征在于,链路类型字段包括:
定义标识被逻辑地链路至依据节点uri字段中的节点uri字段格式定义的计算机***的计算机***的格式的链路uri字段。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/420,986 | 2003-04-22 | ||
US10/420,986 US8103753B2 (en) | 2003-04-22 | 2003-04-22 | Distributing membership information for multi-party application layer sessions |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200810184324XA Division CN101431426B (zh) | 2003-04-22 | 2004-04-22 | 分配用于多方应用层会话的资格信息 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1540921A true CN1540921A (zh) | 2004-10-27 |
CN100454818C CN100454818C (zh) | 2009-01-21 |
Family
ID=32962418
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2004100351362A Expired - Fee Related CN100454818C (zh) | 2003-04-22 | 2004-04-22 | 分配用于多方应用层会话的资格信息 |
CN200810184324XA Expired - Fee Related CN101431426B (zh) | 2003-04-22 | 2004-04-22 | 分配用于多方应用层会话的资格信息 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200810184324XA Expired - Fee Related CN101431426B (zh) | 2003-04-22 | 2004-04-22 | 分配用于多方应用层会话的资格信息 |
Country Status (7)
Country | Link |
---|---|
US (1) | US8103753B2 (zh) |
EP (2) | EP1562351B1 (zh) |
JP (1) | JP4494852B2 (zh) |
KR (1) | KR20040091589A (zh) |
CN (2) | CN100454818C (zh) |
AT (2) | ATE350856T1 (zh) |
DE (2) | DE602004004060T2 (zh) |
Families Citing this family (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7844733B2 (en) * | 2003-12-19 | 2010-11-30 | Solace Systems, Inc. | Content router with multiple forwarding elements instantiated on hardware entities |
US7512125B2 (en) * | 2003-12-19 | 2009-03-31 | Solace Systems, Inc. | Coding of routing protocol messages in markup language |
US7617300B2 (en) * | 2004-03-12 | 2009-11-10 | Microsoft Corporation | Node matching in a dynamic, decentralized environment |
US7557707B2 (en) * | 2004-09-01 | 2009-07-07 | Microsoft Corporation | RFID enabled information systems utilizing a business application |
US7295116B2 (en) * | 2004-09-01 | 2007-11-13 | Microsoft Corporation | Architecture, programming model and API'S |
US8098158B2 (en) * | 2004-09-01 | 2012-01-17 | Microsoft Corporation | RFID server internals design |
US8217756B2 (en) * | 2004-09-01 | 2012-07-10 | Microsoft Corporation | Rule-based filtering and alerting |
US7204409B2 (en) * | 2004-09-01 | 2007-04-17 | Microsoft Corporation | Reader application markup language schema |
US7944355B2 (en) * | 2004-09-01 | 2011-05-17 | Microsoft Corporation | Security techniques in the RFID framework |
US7701341B2 (en) * | 2004-09-01 | 2010-04-20 | Microsoft Corporation | Device service provider interface |
CN100596075C (zh) * | 2005-03-31 | 2010-03-24 | 株式会社日立制作所 | 利用广播组播服务实现多方会议服务的方法和设备 |
US7899170B2 (en) * | 2005-04-28 | 2011-03-01 | Apple Inc. | Multi-participant conference setup |
US7378966B2 (en) * | 2006-01-04 | 2008-05-27 | Microsoft Corporation | RFID device groups |
US7756747B2 (en) * | 2006-03-10 | 2010-07-13 | Microsoft Corporation | RFID business process-decoupling of design and deployment time activities |
US8207822B2 (en) * | 2006-06-15 | 2012-06-26 | Microsoft Corporation | Support for batching of events, and shredding of batched events in the RFID infrastructure platform |
US7675418B2 (en) * | 2006-06-15 | 2010-03-09 | Microsoft Corporation | Synchronous command model for RFID-enabling applications |
US20080001711A1 (en) * | 2006-06-15 | 2008-01-03 | Microsoft Corporation | Reliability of execution for device provider implementations |
US7956724B2 (en) * | 2006-06-15 | 2011-06-07 | Microsoft Corporation | Support for reliable end to end messaging of tags in an RFID infrastructure |
US7868738B2 (en) * | 2006-06-15 | 2011-01-11 | Microsoft Corporation | Device simulator framework for an RFID infrastructure |
US7593970B2 (en) * | 2006-09-08 | 2009-09-22 | Honda Motor Co., Ltd. | Data receiving system, data broadcasting system, data receiving method and data broadcasting method |
US20080174404A1 (en) * | 2007-01-23 | 2008-07-24 | Microsoft Corporation | Dynamic updates in rfid manager |
US8245219B2 (en) * | 2007-01-25 | 2012-08-14 | Microsoft Corporation | Standardized mechanism for firmware upgrades of RFID devices |
US8266168B2 (en) * | 2008-04-24 | 2012-09-11 | Lexisnexis Risk & Information Analytics Group Inc. | Database systems and methods for linking records and entity representations with sufficiently high confidence |
GB2460897A (en) | 2008-06-18 | 2009-12-23 | Skype Ltd | Authorising and adding a user to a conference event by determining if a set up request received from the user is associated with the conference event |
GB2460896A (en) * | 2008-06-18 | 2009-12-23 | Skype Ltd | Indicating the participation status of members in a conference or group communication event |
US11308282B2 (en) | 2018-12-21 | 2022-04-19 | Capital One Services, Llc | Systems and methods for determining document compatibility |
US20200202274A1 (en) | 2018-12-21 | 2020-06-25 | Capital One Services, Llc | Systems and methods for maintaining contract adherence |
Family Cites Families (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5729532A (en) * | 1995-05-26 | 1998-03-17 | Lucent Technologies Inc. | Selective participation in a multimedia communication conference call |
US5805578A (en) | 1995-10-27 | 1998-09-08 | International Business Machines Corporation | Automatic reconfiguration of multipoint communication channels |
US5684800A (en) * | 1995-11-15 | 1997-11-04 | Cabletron Systems, Inc. | Method for establishing restricted broadcast groups in a switched network |
US6856627B2 (en) * | 1999-01-15 | 2005-02-15 | Cisco Technology, Inc. | Method for routing information over a network |
US6530032B1 (en) | 1999-09-23 | 2003-03-04 | Nortel Networks Limited | Network fault recovery method and apparatus |
US6578086B1 (en) * | 1999-09-27 | 2003-06-10 | Nortel Networks Limited | Dynamically managing the topology of a data network |
US7327683B2 (en) * | 2000-03-16 | 2008-02-05 | Sri International | Method and apparatus for disseminating topology information and for discovering new neighboring nodes |
US7437449B1 (en) * | 2000-08-15 | 2008-10-14 | Nortel Networks Limited | System, device, and method for managing service level agreements in an optical communication system |
US7310335B1 (en) * | 2000-09-06 | 2007-12-18 | Nokia Networks | Multicast routing in ad-hoc networks |
US7058016B1 (en) * | 2000-10-12 | 2006-06-06 | Cisco Technology, Inc. | Method and system for accelerating route calculation in link state routing protocols |
US7120681B2 (en) * | 2001-01-30 | 2006-10-10 | International Business Machines Corporation | Cluster control in network systems |
US7006456B2 (en) | 2001-02-02 | 2006-02-28 | Nortel Networks Limited | Method and apparatus for packet-based media communication |
JP3762749B2 (ja) * | 2001-04-19 | 2006-04-05 | 富士通株式会社 | リストレーション・プロテクション方法及び装置 |
WO2002087172A1 (en) * | 2001-04-20 | 2002-10-31 | Motorola, Inc. | Protocol and structure for self-organizing network |
JP2002335283A (ja) * | 2001-05-11 | 2002-11-22 | Hitachi Software Eng Co Ltd | 同報通信方法およびシステム |
CN1392717A (zh) * | 2001-06-14 | 2003-01-22 | 英保达股份有限公司 | 多通道语音会议装置及方法 |
CN1394068A (zh) * | 2001-06-29 | 2003-01-29 | 康鹏 | 实现电话-电脑-电话的网络电话 |
US7254111B2 (en) * | 2001-10-05 | 2007-08-07 | Samsung Electronics Co., Ltd. | Routing coordination protocol for a massively parallel router architecture |
CN1309266C (zh) * | 2002-06-06 | 2007-04-04 | 摩托罗拉公司(在特拉华州注册的公司) | 用于自组织通信网络中的移动节点的协议和结构 |
US7613772B2 (en) * | 2002-07-25 | 2009-11-03 | Colligo Networks, Inc. | Method for context based discovery and filtering of portable collaborative networks |
KR100433556B1 (ko) * | 2002-08-08 | 2004-05-31 | 삼성전자주식회사 | 애드혹 네트워크상의 링크 상태 동기화 방법, 장치 및데이터구조 |
US7248579B1 (en) * | 2002-10-15 | 2007-07-24 | Cisco Technology, Inc. | System and method for providing a link state database (LSDB) snapshot for neighbor synchronization |
US7546380B2 (en) * | 2002-10-28 | 2009-06-09 | Cisco Technology, Inc. | RPF multi-party reliable transport |
US8036139B2 (en) * | 2002-10-28 | 2011-10-11 | Cisco Technology, Inc. | Internal BGP downloader |
US7596625B2 (en) * | 2003-01-27 | 2009-09-29 | Microsoft Corporation | Peer-to-peer grouping interfaces and methods |
-
2003
- 2003-04-22 US US10/420,986 patent/US8103753B2/en not_active Expired - Fee Related
-
2004
- 2004-04-15 DE DE602004004060T patent/DE602004004060T2/de not_active Expired - Lifetime
- 2004-04-15 EP EP05010248A patent/EP1562351B1/en not_active Expired - Lifetime
- 2004-04-15 AT AT05010248T patent/ATE350856T1/de not_active IP Right Cessation
- 2004-04-15 DE DE602004004601T patent/DE602004004601T2/de not_active Expired - Lifetime
- 2004-04-15 EP EP04009009A patent/EP1471711B1/en not_active Expired - Lifetime
- 2004-04-15 AT AT04009009T patent/ATE353517T1/de not_active IP Right Cessation
- 2004-04-19 JP JP2004123561A patent/JP4494852B2/ja not_active Expired - Fee Related
- 2004-04-21 KR KR1020040027580A patent/KR20040091589A/ko not_active Application Discontinuation
- 2004-04-22 CN CNB2004100351362A patent/CN100454818C/zh not_active Expired - Fee Related
- 2004-04-22 CN CN200810184324XA patent/CN101431426B/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US20040215667A1 (en) | 2004-10-28 |
EP1562351A2 (en) | 2005-08-10 |
CN101431426A (zh) | 2009-05-13 |
EP1471711A3 (en) | 2005-07-13 |
KR20040091589A (ko) | 2004-10-28 |
DE602004004601D1 (de) | 2007-03-22 |
US8103753B2 (en) | 2012-01-24 |
EP1562351B1 (en) | 2007-01-03 |
JP2004328731A (ja) | 2004-11-18 |
DE602004004060D1 (de) | 2007-02-15 |
EP1562351A3 (en) | 2005-10-05 |
CN100454818C (zh) | 2009-01-21 |
JP4494852B2 (ja) | 2010-06-30 |
DE602004004601T2 (de) | 2007-11-08 |
CN101431426B (zh) | 2011-01-26 |
EP1471711A2 (en) | 2004-10-27 |
EP1471711B1 (en) | 2007-02-07 |
DE602004004060T2 (de) | 2007-06-06 |
ATE350856T1 (de) | 2007-01-15 |
ATE353517T1 (de) | 2007-02-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1540921A (zh) | 分配用于多方应用层会话的资格信息 | |
CN1171427C (zh) | 在使用话路启动协议(sip)的综合电信网中用于提供增值业务(vas)的***和方法 | |
CN1703690B (zh) | 用于会议控制中成员资格管理的侧信道 | |
CN1799217B (zh) | 授权用户加入会议的***和方法 | |
CN1231028C (zh) | 在不同网络的匿名用户之间智能建立会话的分布式*** | |
US7683923B2 (en) | Videoconference system and a management method thereof | |
CN101924843B (zh) | 利用语音消息***的主叫识别 | |
US9497314B2 (en) | Mining data for services | |
CN1674577A (zh) | 路由器及sip服务器 | |
CN1574840A (zh) | 对等名称解析电信协议及在此使用的消息格式数据结构 | |
CN1698328A (zh) | 通信网络数据的递归性查询 | |
CN1618203A (zh) | 视频会议带宽选择机制 | |
CN1902881A (zh) | 提供即时消息接发和存在服务的通信*** | |
US20090201824A1 (en) | Estimating endpoint performance in unified communication systems | |
CN1649423A (zh) | 电子信息发送 | |
CN1661962A (zh) | 信息处理设备、信息处理方法、和计算机程序 | |
CN1773926A (zh) | 联系信息管理装置和联系信息管理方法 | |
US8223765B2 (en) | Method and system for processing multicast in unicast-based VoIP system | |
CN104239403B (zh) | 一种基于云计算的协同采编辅助*** | |
US20110019570A1 (en) | Estimating endpoint performance in unified communication systems | |
CN101742011B (zh) | 一种跨网络电话域的合法监听方法和*** | |
US20130060856A1 (en) | Social proxy and protocol gateway | |
CN1859394A (zh) | Sip通信网络中和媒体服务器交互的方法 | |
CN1992752A (zh) | 一种实现网络设备运行维护的***、方法及网络设备 | |
US20060036590A1 (en) | System and method for documenting a multi-media conversation |
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 | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20090121 Termination date: 20130422 |