CN1774893B - 会话端点管理协议 - Google Patents
会话端点管理协议 Download PDFInfo
- Publication number
- CN1774893B CN1774893B CN200480010352.XA CN200480010352A CN1774893B CN 1774893 B CN1774893 B CN 1774893B CN 200480010352 A CN200480010352 A CN 200480010352A CN 1774893 B CN1774893 B CN 1774893B
- Authority
- CN
- China
- Prior art keywords
- session
- node
- equipment
- local device
- local
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/18—Self-organising networks, e.g. ad-hoc networks or sensor networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/45—Network directories; Name-to-address mapping
- H04L61/4541—Directories for service discovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/04—Protocols specially adapted for terminals or networks with limited capabilities; specially adapted for terminal portability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
-
- 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/24—Negotiation of communication capabilities
-
- 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/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/322—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
- H04L69/327—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the session layer [OSI layer 5]
-
- 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/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/322—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
- H04L69/329—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Mobile Radio Communication Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
一个用于在Ad-Hoc网络环境中扩展会话端点的协议,首先执行设备发现以确定在其覆盖区域内的本地设备和这些设备的能力。然后,这些本地设备与端点设备交换会话描述。如果当前会话可以由这些本地设备之一来支持,则响应来自用户的命令,该端点设备传送会话端点到该本地设备,并且该端点设备在该会话中充当该本地设备的代理。可选地,如果该本地设备具有到达通信节点的路径,该路径独立于通过该端点设备的路径,该本地设备沿着该路径建立会话,然后通知该端点节点结束其会话。
Description
技术领域
本发明涉及Ad-Hoc(自组织)网络,尤其涉及一种用于在Ad-Hoc网络环境中控制会话端点的协议。
背景技术
伴随着计算机技术的性能提高和成本降低,无线通信技术的新发展已经使以前过于昂贵或体积过大的无线计算应用能够使用在便携设备上。很多这种应用可以内置在通常称为移动Ad-Hoc(自组织)网络互连(MANET)的网络结构上。Ad-Hoc网络通过使用具有可变连接性的移动计算节点群来动态形成。为了高效运行,需要这些网络在各节点中包括路由功能。由于这些设备的短距离特性,设备之间的通信信道可以横跨在它的源和目的地之间的几个中间节点。因为每次横跨被称作一个“跳跃”,所以这些网络称为多跳网络。
通过在节点中执行路由功能,如果一个中间节点不再是网络的一部分,则这些网络允许快速重建在两个连接节点之间的路径。例如,如果由于用于多个跳跃之一的设备不能再与群内的其它节点通信,从而在通信节点之间的路径消失,则可以快速建立不依赖该失去的节点的辅助路径。
已经定义了许多可用的协议以实现Ad-Hoc网络互连。这些协议包括Ad-Hoc按需距离矢量(AODV)路由协议、动态源路由协议、最佳链路状态路由协议和基于反向路径拓扑广播路由协议。所有这些协议都在由因特网工程工作小组(ITEF)的移动Ad-Hoc网络工作组维护的网站上有描述。
迄今为止,移动性管理主要涉及两个问题:切换管理和位置管理。切换管理涉及当移动节点运动时维持在该移动节点与移动网络中的通信节点之间的有效会话。当移动节点离开其当前基站的覆盖区域并进入新基站的覆盖区域时,在当前基站和新基站之间的切换保持会话有效。通过诸如RFC 2002中所描述的移动IP协议这样的现有协议来解决该问题。
位置管理涉及当没有进行有效通信时在网络中定位移动节点的问题。这是需要的,例如,当网络收到一个针对该移动节点的呼入时。为了解决这个问题,网络寻找具有包括该移动节点的覆盖区域的基站。位置管理问题已经在IETF协议中解决,例如上面所参考的移动IP协议。
发明概述
本发明体现为一个协议,该协议用于在一个Ad-Hoc网络环境中管理会话端点。使用依照本发明的协议的端点设备识别在其覆盖区域内的本地设备,并可选择地与这些设备交换设备能力。然后这些本地设备与该端点设备交换会话描述。如果这些本地设备之一可以支持当前会话,则该端点设备可以将该会话的端点移动到该本地设备。然后,先前的端点设备充当该本地设备的代理。
根据本发明的一个方面,该会话被复制到该本地设备,以便该本地设备在该会话中重复该端点设备的动作。
根据本发明的另一个方面,该会话被拆分以便该会话的各部分被发往给各个不同的本地设备。
根据本发明的又一个方面,在多个本地设备中共享的拆分会话被合并成为单个会话。
根据本发明的另一方面,该端点设备收到寻址到该本地节点的呼入会话,并将会话端点移至该本地节点以完成呼入会话。
根据本发明的另一方面,来自该本地设备的呼出会话使该端点设备产生会话,然后将该会话从该端点设备移动到该本地设备。
附图说明
根据以下结合附图的详细说明能够最好的理解本发明。在此强调的是,根据惯例,附图的各个部件不是依比例画出的。相反,为了清楚起见任意扩大或缩小该各个部件的尺寸。附图中包括以下各图:
图1(现有技术)是因特网协议(IP)网络的方框图,其包括无线局域网(WLAN)和用来描述本发明运行的环境的移动设备。
图2和图3是图1所示的用来描述本发明运行的具有Ad-Hoc网络扩展的IP网络的方框图。
图4是用来描述本发明运行的流程图。
图5是数据结构图,用来描述本发明适用的协议栈的可能配置。
图6A、6B、6C、6D、6E、6F和6G是用于描述路由最优化的网络节点示意图。
图7A、7B、7C和7D是用来描述根据本协议的移动操作的网络节点示意图。
图8A、8B、8C和8D是用来描述根据本协议的复制操作的网络节点示意图。
图9A、9B、9C、9D、9E、9F、9G、9H、9I和9J是用来描述根据本协议的拆分操作的网络节点示意图。
图10A、10B、10C、10D、10E、10F、10G、10H、10I和10J是用来描述根据本协议的合并操作的网络节点示意图。
图11A、11B、11C和11D是用来描述根据本协议的呼入会话操作的网络节点示意图。
图12A、12B、12C和12D是用来描述根据本发明的呼出会话操作的网络节点示意图。
详细说明
本发明体现为在Ad-Hoc网络中管理会话端点的协议。通过操控会话的端点,该协议允许用户取得设备独立通信;用户可以从特定环境中的可用设备群里选取最好的一个或多个设备来处理会话数据。本协议包括六个操作:移动、复制、拆分、合并、呼入会话和呼出会话。该协议不影响在会话中使用的下层传输协议,也不会影响其它任何可用于会话的协议。本协议的一些部分可以利用其它的协议来实现,例如蓝牙设备发现协议或者互联网会话描述协议(SDP),这两个协议在下面描述,示范性的协议可以在七层开放系统互连(OSI)模型中的会话层中或会话层之上实现。
图1是包括节点104、106、108和110的IP网络102的方框图。
在这里作为主网络的该网络可以是有线的或者无线的。该主网络还包括接入点112,通过该接入点无线设备114,例如,具有视频能力的无线电话可以与该网络通信。在下面所描述的例子中,视频服务器100也连接到网络102,作为移动电话114的通信节点。在这个例子中,在移动电话114和视频服务器100之间建立会话。视频服务器100提供由移动电话114所请求的视频节目。为了请求和提供该节目,在通信节点100和网络节点104之间建立连接101,并且分别建立到达节点106、108和接入点112的连接105、107和111。接入点112具有与移动电话114的无线连接113。在视频服务器100和移动电话114之间所建立的会话将电话114作为其主端点。
下面的内容描述通过协议可用的允许操控会话的端点的几个操作。根据本发明的协议,可以在Ad-Hoc网络中建立一或多个辅助端点以便发送到电话114的视频节目可以在更合适的设备上显示,以便视频节目可以送到一个设备,而音频节目发送到另一设备,或者以便不能自己连接到网络112的移动Ad-Hoc网络设备(未示出)可以利用网络102通过移动节点114接收或者发起会话。
该协议的一个基本操作移动会话的端点。例如,在图2中,移动节点114位于与图1中不同的位置,但保持与接入点112的连接113。在它的新位置上,也具有无线数据连接(未示出)的电视机116位于电话114的覆盖区域内。由于电视机116是更适合用于观看视频节目的设备,所以用户可能想将视频信号从电话114传输到电视机116。这是可以实现的,例如,通过将会话端点从电话移到电视机并且将电话114配置成为电视机116的代理。然而,在这可以实现之前,需要电话114和电视机116互相发现对方并交换会话信息以决定电视机是否支持来自电话的数据。
参照图4的流程图来说明将会话从电话114扩展到电视机116的过程。在本发明的该示例性实施例中,电话114和电视机116都定期地执行设备发现步骤410,以确定哪些设备在它们各自的覆盖区域内。在该例子中,电话114利用设备发现协议发现了电视机116。例如,该协议可以与定义用于蓝牙无线通信标准的设备发现协议相同。或者,可以使用其它的设备发现技术。例如,每个设备可以维护包含全部有关信息的设备描述符,并响应于来自另一设备的请求广播该描述符。或者,代替发送请求,每个设备可以仅定期发送描述符并监听其它设备所发送的描述符以确定在其覆盖区域内的设备属性。按照这些协议,设备发现也可以包括设备能力交换。
如果在步骤410中所执行的设备发现没有包括设备能力交换,如步骤412所示,需要设备交换它们能力。在设备能力交换,例如,每个设备可以发送有关自身的信息,例如其显示尺寸、媒体编码器/解码器(编解码器)和带宽。该交换在端点和被发现设备的至少一些之间传递一或多个分组,以便当前端点节点,例如电话机114,能够发现在其覆盖区域内的其它设备的能力。
如下面所描述的,如果可以在步骤420,即下面所述的控制信令和会话描述协商步骤中,获取由设备能力交换所获得的信息,则如虚线的替换路径411所示的,可以跳过设备能力交换步骤412。
在本发明的示例性实施例中,每个无线设备可以定期广播设备发现请求分组。当在覆盖区域内的每个设备收到该请求时,它与请求设备同步,并发送包含自身信息的发现响应到该请求设备。在图2所示的例子中,当电话114发送设备发现请求分组时,电视机116接收该分组,同步与该电话的通信,并建立与该电话的链路115(如图3所示),然后发送与自身有关的信息到该电话114。该请求设备在一个内部表中记录响应于设备发现请求它所收到的信息,该内部表包含在其覆盖范围内的所有设备的列表及其能力。
在蓝牙系统中,设备发现是一种单向通信。每个设备独立于其它设备发现在其自己覆盖区域中的设备。这样,在图2所示的例子中,在电话114发现电视机116之后(或之前)的某个时间,电视机116发现在其覆盖区域内的电话114和任何其它设备。这样,在步骤410之后,电话114在其本地设备列表中具有该电视机,反之亦然。如上面描述的,设备能力交换可以是设备发现步骤的一部分,可以在单独步骤412中执行或者如替换路径411所示的可以不需要,如果它是作为设备发现步骤410的一部分被执行或者如果来自设备能力交换的信息可以在如下所述的控制信令和会话描述协商步骤420的过程期间获得。
会话发现步骤414允许每个设备取得在其覆盖区域内的设备正在参与的任何会话的描述。这在步骤412中实现,其中每个设备请求已在其上登记的每一个设备的当前会话信息。根据本发明,每个设备保存例如由会话描述协议(SDP)所规定的会话描述。该协议是一个互联网标准,并描述在请求注解(RFC)2327中。该标准定义了由设备保存的会话描述符,描述了其当前在多跳链路中作为端点或传送节点参与的所有会话。虽然本发明被描述为利用SDP以提供会话描述,但是使用其它协议在会话描述符中保存会话特定信息是可以想象。本发明的示例性实施例通过使两个通信设备交换它们的会话描述符来实现会话发现。
然而,如图4中的虚连线413所示,会话发现步骤414是可选的。正如设备能力信息一样,可以在如下所述的控制信令和会话描述协商步骤420中获得会话描述。
在步骤414、步骤412或步骤410之后,如果相应的会话发现步骤414和/或设备能力交换步骤412被跳过,则执行用户请求会话扩展的步骤416。如下面所描述的,可以反应性地从移动节点114中、或者预先从移动节点114和本地节点116中或者从没有参与该事务处理的另一节点(未示出)中请求该扩展。在步骤416之后,如果用户不请求该扩展,则在步骤418中结束操作。虽然本发明描述了用户请求会话扩展,但用户的软件代理自动进行该请求是可以想象的。
如果在步骤416用户请求了会话端点扩展,则控制转移到步骤420,其中控制信令出现在移动节点114和本地节点116之间。该步骤在移动节点114和本地节点116之间建立连接,然后交换会话描述。控制信令和会话描述协商是如下所述的会话端点管理协议(SEMP)。当连接被建立时控制信号出现,而当交换会话描述时会话协商产生。
在移动节点收到会话描述之后,它配置自身以接收并适当的处理移动节点提供的数据。例如,如果所传输的分组表示MPEG-2的数据流,则电视机116可以配置其自身以将所接收的分组传到MPEG-2传送解码器。
在步骤420之后,图4所示的过程执行步骤422,其将端点从移动节点114扩展或者移动到本地节点116。紧接在扩展端点之后,移动节点114在步骤424配置其自身作为本地节点的代理,以便在步骤426其将从通信节点100接收的数据传递到本地节点,但是同时对通信节点表现为会话端点。
需要注意,上面所述的端点移动操作不是迁移端点,而是通过主端点来定义辅助端点。参考图3中所示的例子,通信节点100继续将电话114视为端点。在将电视机116建立为辅助端点之后,电话机114充当电视机的代理,经由已同步的连接113,将它从通信节点100中接收的全部数据发送到电视机116。
如上所述,可以反应性地(reactively)或预先(proactively)发起端点移动操作。反应性的扩展的例子可以是当用户进入房间在移动电话114上观看视频内容时。当看到电视机时,用户反应性地命令电话114将会话端点扩展到电视机。例如通过按电话键盘上的按键或者电话显示屏上的触摸敏感区域可以做到这。该反应性步骤对应于图4中的步骤416。
预先发起端点扩展的例子可以如下所述来给出。在步骤414中交换会话描述之后,如果电视机116发现电话114参与显示视频数据的会话,则电视机116可以预先显示一个消息给用户,询问会话是否应当从电话移到电视机。如上面所述地,用户对该提示的响应是步骤416的结果。代替电视机预先显示菜单,可以响应于来自用户的迁移会话的命令来显示菜单。这样允许用户确认该命令。
在Ad-Hoc网络中既不是电话114也不是电视机116的设备也可以发起端点移动操作。例如,如果用户有一个在ad-hoc网络中配置为节点的个人数字助手(PDA)(未示出),则该PDA可用于直接使电话114和电视机116扩展为会话端点,或者询问用户会话是否应当从电话114扩展到电视机116。如果用户决定扩展会话,则该PDA可以发起如上所述的控制信令和会话描述协商步骤420。
如上所述的,体现本发明的协议可以实现为根据OSI网络模型所定义的应用层的一部分。图5显示一个示范性的协议栈,该协议栈举例说明了在Echo Nettm网络510、蓝牙网络512或IP网络514中怎样实现本协议。Echo Net和蓝牙都定义了传输协议,并且没有显示在图5中。示范性的IP网络使用用户数据报协议(UDP)515作为其传输协议。UDP是一个互联网标准,并描述在RFC 768中。在IP网络中,传输层也可以包括设备发现或设备能力交换(DD/DCE)协议516,其能够用来实现通用即插即用(UPnP)。
根据本发明的会话端点管理协议517作为在设备的应用层内的软件,在协议栈内位于这些传输协议的任何一个之上。应用层也可以包括如上所述的会话描述交换(SDE)协议522和/或会话描述协议(SDP)518。在协议栈中其它的应用程序520存在于本发明程序之上的应用层中。虽然没有示出,但是实现会话端点管理协议的软件包括合适的应用程序接口(API)以允许应用层中的其它程序520访问会话端点管理软件的各个部分是可以想象的。作为在OSI模型的应用层中实现会话端点管理过程的替代方法,当会话层不同于应用层时在会话层中实现该软件是可以想象的。
当被扩展的会话全部位于端点节点114内时,也可以使用本发明。,例如在具有处理器和转换器的设备中可以出现这种情况,其中数据从处理器发送到转换器。即使不存在正式的会话,也可以把从处理器向转换器发送数据看作逻辑会话。利用该模型,可以把处理器看作逻辑通信节点,而把转换器看作逻辑端点。例如,如果图2中所示的节点114是一个具有无线能力的便携式视频游戏机,则它可以被看作是一个自我包含的逻辑会话,该逻辑会话包括逻辑通信节点(即执行视频游戏机软件的处理器)和逻辑端点(即视频游戏机的显示器)。进入房间的用户,想在电视机116上显示视频游戏,同时继续使用视频游戏机键盘来玩游戏。根据本发明,节点114能够移动其端点以传送分组到电视机,以便游戏可以在电视机而不是视频游戏机显示器上显示。即使没有真实的会话存在,如上面描述的,移动节点114仍然可以产生会话描述,并传送它到本地节点116,然后开始传送会话数据到本地节点116进行处理。
在本发明的一个示例性实施例中,在Ad-Hoc网络内的每个设备都可以根据会话端点管理协议(SEMP)发起操作。发起方可以与本地会话有关或者无关。在示例性SEMP协议中定义了六个操作:移动、复制、拆分、合并、呼入会话和呼出会话。
移动操作可以用来改变端点设备。该操作是上面所描述的端点扩展操作,并且使用户在他的/她的继续会话的环境中选取最适当的设备。
当用户想要使用多个端点设备用于一个会话时,可以使用复制操作。该操作允许他人或设备加入现有的会话。在上述例子中,复制操作允许用户继续在电话114上观看视频节目,同时它也显示在电视机116上。
拆分操作可以用来将一个现有会话端点分成到两个以上的设备。在该操作中,单个会话被分成两个拆分的会话。虽然该操作将会话端点移动到其它多个设备,但它允许该拆分的会话之一留在最初的设备上。在上述例子中,除电视机116之外,如果在移动电话114的覆盖范围之内存在有音频系统(未示出),则电话114可以拆分会话以便电视机变成用于视频数据的辅助端点,同时音频系统变成用于音频数据的辅助端点。
合并操作可以用来将设备上的两个拆分的会话端点合并为单个设备的单个端点。合并操作也用来将两个独立的会话端点合并到单个设备上。在上述例子中,如果会话被拆分以便电视机116成为用于视频数据的辅助端点,以及音频系统成为用于音频数据的辅助端点,则合并操作可以用来将音频会话转移到电视机116,以便它处理会话的音频与视频数据。
没有连接到另一网络(例如IP网络102)的设备可以使用呼入会话操作,以拾取在IP网络之上传输的会话(例如电话呼叫)。因为该设备没有连接到网络102,所以它不能直接接收该呼叫。在示例性实施例中,来自网络102的呼入呼叫可以通知在诸如移动电话114这样的不可以连接到网络102但可以经由Ad-Hoc网络与其它设备通信的设备的覆盖区域内的每个设备。
发起在其没有直接连接的网络(例如IP网络102)上的会话(例如电话呼叫)的设备可以使用呼出会话操作。通过经由Ad-Hoc网络连接到直接连接该网络的设备,在Ad-Hoc网络中的每个设备都可以发起呼出会话操作。
在提供这些操作的每一个的详细描述之前,描述SEMP协议的总体格式是有用的。SEMP消息可以是从客户端到服务器的请求,或者从服务器到客户端的响应。如上面所引用的,SEMP消息格式类似于SIP的格式。两个消息类型都包括起始行、一或多个报头字段、表示报头字段末尾的空行、以及可选的消息主体。该信息结构如表1中所示。
表1
通用-消息=起始行
*消息-报头
CRLF
*[消息-主体]
起始行=请求行|状态行
在这个例子中,起始行、每个消息-报头行、以及空行都由回车换行序列(CRLF)来结束。注意当没有消息主体时,发送空行(即,CRLF)。
通过具有用于起始行的请求行来区分示例性会话端点管理协议中的请求。请求行包含方法名称、请求端点ID、以及由单个空格(SP)符隔开的协议版本。
请求行以CRLF结束。在该示例性协议中,除了行结束的CRLF序列外,不允许出现CR或者LF。在该单元的任何一个中都不允许线性空格(LWS)。请求行的格式如表2所示。
表2
请求行=方法SP请求端点ID SP SEMP版本CRLF
方法:该示范性SEMP定义了七个方法:1)用于交换信息的信息、2)移动、3)复制、4)拆分、5)合并、6)用于操作会话端点的连接、以及7)用于终止本地会话的结束。
请求端点ID:请求端点ID字段是端点设备识别符。该识别符表示该请求正在寻址的设备。在示例性实施例中,设备的IP地址用作请求端点ID。
SEMP版本:请求和响应消息都包括表示兼容要求的SEMP版本。为了与规范一致,两个设备之间的SEMP消息需要包括可兼容的SEMP版本,例如″SEMP/1.0″。
SEMP响应通过具有状态行作为它们的起始行来区分请求。状态行由协议版本、数字状态码及其相关的文本短语组成,其中每个单元由单个SP字符分开。除了最后的CRLF序列外,不允许存在CR或者LF。SEMP响应的结构如表3所示。
表3
状态行=SEMP版本SP状态码SP原因短语CRLF
状态码:状态码是3位整数结果码,其表示试图理解和满足请求的结果。
原因短语:原因短语打算给出该状态码的短文本描述。
状态码打算用于自动设备,而原因短语则是打算用于人类用户。客户端不需要检验或者显示该原因短语。
状态码的第一位数字定义响应类别。最后两位数字没有任何分类作用。因此,具有在200和299之间的状态码的任何响应都称为″2xx响应″,具有在400和499之间的状态码的任何响应都称为″4xx响应″,等等。如表4所示,SEMP/1.0对第一位允许有三种值。
表4
2xx:成功--表示动作被成功地接收、理解、和接受;
4xx:客户端错误--请求包含错误语法或不能在服务器上执行;
5xx:服务器错误--服务器不能完成明显合法的请求;
示范性的SEMP报头字段在语法和语义上都类似于SIP报头字段。SEMP也规定在逗号分隔的列表中具有相同的字段名和数值的多个报头字段能合并为一个报头字段。特别地,具有按照表5中所示的形式的语法的任何SEMP报头都允许将相同名称的报头字段合在一个逗号分隔的列表中。
表5
报头=“报头名称”HCOLON报头值*(逗号报头值)
该示例性报头遵循与RFC 2822的2.2部分中所给出的描述SIP的报头格式相同的通用报头格式。每个报头字段由后面跟着一个冒号(″:″)的字段名和字段值组成。
用于消息报头的格式语法允许在冒号两边使用任意数量的空格;然而,实现希望避免在字段名和冒号之间的空格,并且在冒号和字段值之间使用单个空格(SP)。可以被接受的句法的例子如表6所示。
表6
内容长度:1024
内容长度:1024
内容长度:1024
内容长度:1024
当表6所示的所有格式都有效和等效时,最后的条目是优先格式。
具有不同字段名的报头字段的相对次序并不重要。多个报头实现被期望能够处理每行单值或逗号分隔数值格式的任意组合中的相同名称的多个报头字段列。
在该示范性协议中,为字段名称定义了报头字段值的格式。其可以为TEXT-UTF8八位字节的不透明序列,或者是空格、记号、分隔符和引用字符串的组合。如表7所示,许多现有的报头字段都坚持数值后跟着分号分隔的参数名称序列、参数值对的通用格式。
表7
字段名:字段值*(;参数名称=参数值)
在该示范性实施例中,即使任意数量的参数对可以附着于报头字段值,期望任何给定的参数名称只出现一次。
示范性SEMP也提供一种机制来以缩写的形式表示通用报头字段名。当消息变的太大以致无法承载在可用于其的传输上时,这就有用了。下面描述这些压缩格式。压缩格式可以在任何时候替代报头字段名的长格式,没有改变消息的语义。在该示例性实施例中,在相同的消息内,报头字段名可以以长和短的两者形式出现。
所有SEMP消息,请求或响应,都可以包含消息主体。如果内容数目报头表示存在多个主体,则该示范性SEMP允许消息包含多个主体。
在该示例性实施例中,内容类型报头字段表示消息主体的互联网媒体类型。如果该主体已经进行诸如压缩这样的任何的编码,则其由内容编码报头字段来指示,否则,省略内容编码。如果合适,则消息主体的字符集表示为内容类型报头字段值的一部分。
SEMP消息可以包含二进制主体或者主体类型。当发送方没有明确指定字符集参数时,定义“文本”类型的媒体子类型以具有默认字符集值“UTF-8”。
内容长度报头字段规定以字节为单位的主体长度。用于示范性SEMP的报头字段的内容在下面描述。
内容数目报头字段用来表示消息具有多个主体。如果消息只有一个主体,则该报头字段可以省略。
如上面描述的,参考表2,SEMP定义若干“方法”以管理会话端点。这些方法与使用协议所执行的操作相一致并且用于SEMP请求行中,以及表示响应SEMP请求所采取的动作。在下面所提供的示例性实施例的描述中,按照它们的方法名(即信息(INFO)、移动(MOVE)、复制(COPY)、拆分(SPLIT)、合并(MERGE)、连接(CONNECT)和结束(TERMINATE))来参阅SEMP消息。
SEMP信息(SEMP_INFO)消息用来交换信息。可以交换的信息包括会话描述、主端点相关内容和会话相关内容。在该示例性实施例中,该消息包括信息类型(Info-Type)和信息状态(Info-State)报头字段。信息类型字段表示诸如由该消息所携带的会话描述、主端点相关内容和会话相关内容这样的信息。信息状态字段值可以是″询问″或者″指示″。在询问状态中,节点请求从另一节点请求信息,并接收具有作为答复的该请求的信息的响应消息。在指示状态中,节点提供信息给另一节点,并可以在响应消息中接收该另一节点将被或者不被支持的指示。如果其它的协议可用于系统中,则该消息不是必需的。
SEMP移动(SEMP_MOVE)消息用于将会话端点移动到另一节点。在上面已经详细描述了该操作。在该示例性实施例中,该消息包括用于该移动操作的指定源节点和目的节点的从报头字段和到报头字段。源节点或者目的节点都可以发起该消息,而且在Ad-Hoc网络中的其它节点也可以发起该消息。
SEMP复制(SEMP_COPY)消息用于复制会话在另一节点上。该示范性消息包括指定当前会话端点和会话将被复制到的辅助端点的从报头字段和到报头字段。该复制操作中涉及的每个节点以及在Ad-Hoc网络中的其它节点都可以发起该消息。
SEMP拆分(SEMP_SPLIT)消息用于将单个现有的会话端点拆分到两个或多个设备。该示范消息包括从报头字段和到报头字段。任何节点都可以发起该消息。
SEMP合并(SEMP_MERGE)消息用于将两个设备上的两个拆分的会话合并在单个设备上的单个会话。在该示例性实施例中,该消息包括从报头字段和到报头字段。Ad-Hoc网络中的任何节点都可以发起该消息。
SEMP连接(SEMP_CONNECT)消息用于通知Ad-Hoc网络中的节点有呼入呼叫,或者让另一节点进行呼出呼叫。
SEMP结束(SEMP_TERMINATE)消息用于结束设备之间的Ad-Hoc本地会话,并释放分配给单个或者拆分的会话的资源。该消息可以用来结束主端点和与主端点有关的会话。在该示例性实施例中,该消息包括结束目标报头字段。Ad-Hoc网络中的任何节点都可以发起该消息。
下面在表8中描述用于该示范性SEMP协议的报头字段以及它们的压缩格式。
表8
信息类型
信息类型报头字段识别SEMP信息消息的用途,因为它用于会话描述交换、主端点相关内容交换和会话相关内容传送。
信息状态
信息状态报头字段显示SEMP信息消息的状态。该字段可以有″询问″或″指示″值。
会话ID
会话ID报头字段唯一地识别特定的会话。第一主端点分配该识别符用于任意的SEMP操作。会话ID报头字段的压缩格式为i。
主端点
主端点报头字段保存该主端点的地址。主端点报头字段的压缩格式是p。
前一节点
前一节点报头字段示出前一节点的地址,也就是,执行数据的应用级转发的节点。如下所述,该字段可以用来路由优化。
从
从报头字段保存发送SEMP消息的节点地址。从报头字段的压缩格式为f。
到
到报头字段保存SEMP消息的目的地地址。该值识别接收该消息的节点。到报头字段的压缩格式为t。
结束目标
结束目标报头字段保存其会话被结束的节点的地址。
内容长度
内容长度报头字段表示消息主体的大小。该大小作为八位字节的十进位数被发送到接收方。应用程序需要使用该字段以表示将要传送的消息主体的大小,不考虑实体的媒体类型。在该示例性实施例中,消息主体的大小不包括分隔报头字段和消息主体的CRLF。对于该字段任何大于或等于零的内容长度都是有效值。如果消息中不存在主体,则内容长度报头字段的值为零。如果消息中存在多个主体,则内容长度报头字段值的次序与主体次序相同。该报头的压缩格式为1。
内容类型
内容类型报头字段表示发送给接收方的消息主体的媒体类型。只要消息具有主体,则内容类型报头字段就存在。该报头字段的压缩格式为c。
内容数目
内容数目报头字段表示包括在发送给接收方的消息中的消息主体的数量。应用程序需要使用该字段来表示将要传送的消息主体的数量。如果消息包含多于一个消息主体,则就存在内容数目报头字段。主体之间没有分隔符。内容长度报头字段可用于分隔。该报头字段的压缩格式为n。
由通信节点称作端点的节点被称为主端点。当会话有效时,主端点从来不该变。为了将主端点改变到另一设备,需要建立新的会话,像SIP这样的会话建立协议可以用于建立新的会话。在主端点改变过程中,将要成为下一个主端点的新设备必须与当前主端点交换主端点相关内容(PEC)。大多数SEMP消息包括主端点地址。因此参与会话中涉及的每个节点都能与主端点进行通信。
PEC是描述Ad-Hoc网络中的会话状态的信息。该示范性SEMP不定义PEC的内容。主端点具有PEC,并且当建立新会话以改变主端点时,该PEC被发往新的主端点。
在Ad Hoc网络中的任一节点试图与通信节点建立新会话之前,需要交换PEC。虽然PEC的使用不限于SEMP,但是SEMP信息消息可以用来传送PEC。
该示范性SEMP管理每个端点的逻辑操作。然而,它不影响Ad-Hoc网络中的设备之间的消息路由。例如,在移动操作之后,应用层将主端点接收的任何数据转发到辅助端点。为了处理该转发,在主端点和辅助端点之间需要具有路由器。然而在逻辑上,辅助端点直接连接主端点。因为其仅与该逻辑连接有关,所以即使当Ad-Hoc网络包括路由优化机制,该示范性SEMP也进行操作。
图6A到6H示出了根据本发明的路由优化的两个例子。图6A到6G示出了在Ad Hoc网络中的四个设备A、B、C和D。在该例子中,设备A是主端点(PE)。在图6A中,通过定义设备B作为辅助端点(SE),已经执行了按照该示范性SEMP的移动操作来移动会话端点。在设备A和B之间建立了本地会话,并且,设备A在应用层仅传送会话数据到设备B。需要注意,设备A,在Ad-Hoc网络中节点B的前一节点,不工作为路由器。在图6B中,从图6A所示的配置开始,设备B试图将会话端点移到设备C。虽然消息从设备B发到设备C,但包括路由功能的设备C知道它可以从设备A直接接入会话。在该例子中,不响应来自设备B的移动消息,设备C从该消息中读取前一节点字段,将节点A识别为在其覆盖区域内的节点,并发送一个移动消息给节点A,以请求节点A将会话移动到节点C而不是节点B。从而,由于由于路由优化机制的缘故,本地会话没有建立在设备B和C之间,而是建立在设备A和C之间。在图6C中,根据图6B中所示的配置,设备C试图将该本地会话传送给设备D。考虑用于执行该操作的两个方案是有用的。如果设备B或设备C能充当路由器,则设备D在逻辑上可以建立到设备A的本地会话。如果设备B和C都不能充当路由器,则会话从设备C移动到设备D,其中,设备C,设备D的前一节点,向设备D执行会话数据的应用级转发。
图6D到6G中示出了另一路由优化例子。这些图示出了在个人区域网络(PAN)内的四个节点。在图6D中,主端点、节点A和节点B分别向下一节点执行应用级转发。在图6D中,节点C尝试将本地会话移动到节点D。如图6D到6G中所示的,节点D位于节点A、B和C的覆盖区域之内。来自节点C的SEMP移动消息在其前一节点字段中包括其前一节点即节点B的相关信息。从而,当节点D接收到该移动消息时,它知道其位于节点B的覆盖区域之内并且路由优化是可用的。利用该信息,如图6E中所示的,节点D发送移动消息给节点B,以请求B将其会话移动到节点D。节点B答复一个包括其前一节点(即节点A)的身份的应答(ACK)消息。当节点D接收到该ACK时,节点D知道其位于节点A的覆盖区域之内并且进一步的路由优化是可用的。这样,如图6F中所示的,节点D发送移动消息给节点A。最后,如图6G中所示的,在节点A和D之间建立本地会话,并且完成路由优化。
图6H举例说明上面所述的示范性SEMP的进一步便于路由优化的扩展。该图示出了利用该示范性SEMP移动操作所创建的Ad Hoc网络。节点P是连接到通信节点CN的主端点。节点S1、S2、S3、...、SN是利用该SEMP移动操作所创建的各辅助端点。在图6H中所示出的例子中,有n+1个辅助端点,从而该节点序列中的n+1个节点定义了Ad-Hoc网络。节点Sn+1,该序列中的最后节点,是该会话的实际端点。
如上所述,节点Sn只能知道主端点(从主端点字段中)和节点Sn-1(从前一节点字段中),并能利用移动消息该信息发送给节点Sn+1。因此,即使在节点P与节点Sn-2之间的节点序列中的其它节点之一,例如节点1,位于节点Sn+1的覆盖区域之内,节点Sn+1也不能发起移动操作,因为它没有其它节点的任何相关信息。
这可以使用示范性SEMP协议的扩展来解决。根据该扩展,只要移动操作被请求,将要成为序列中新的最后节点的节点发出后向查询分组(例如SEMP_ROUTE_OPT分组)给该节点序列,该节点序列定义了由重复的移动操作所产生的Ad Hoc网络。在这个例子中,节点Sn+1发送SEMP_ROUTE_OPT消息给节点Sn。在接收该分组之后,Sn将其转发给节点Sn-1。最后,该后向查询分组到达主端点。该后向查询分组包含节点信息,例如媒体接入(MAC)层地址。该信息使节点能够优化路由。例如,如果节点S1和S3,但不是节点S2,在节点Sn+1的覆盖区域之内。当节点S3接收到SEMP_ROUTE_OPT消息时,它切断从Sn到Sn+1的路径,并且同时其直接发送SEMP移动消息给节点Sn+1。建立更有效的路径。作为该新的移动操作的结果,节点Sn+1发出SEMP_ROUTE_OPT消息。因为节点S3这时处于与节点Sn+1直接通信中,所以SEMP_ROUTE_OPT分组经由节点S3和S2发送给节点S1。当节点S1接收到SEMP_ROUTE_OPT消息时,它切断从节点Sn+1到节点S3的路径,同时其直接发送SEMP移动消息给节点Sn+1。从而,建立起更有效的路径。
该示范性会话端点管理协议能处理多种会话,并是″会话不可知论者″。然而,有些会话使用会话的历史数据。该历史数据在这里称作会话相关内容。例如,假设会话是用于下载文件的文件传送协议(ftp)会话。如果在下载过程的中间应用移动操作,则该下载的文件的前半部分保留在先前的设备中,并且仅该文件的后半部分输出到新设备。在这个例子中,该文件就是会话相关内容,并且,为了使该会话移动操作有意义,需要通过会话相关内容传送协议将该文件的前半部分发送给该新设备。当该示范性SEMP不包括会话相关内容传送协议时,使用一个或多个SEMP信息消息来传送该会话相关内容是可以想象的。
图7、8、9、10、11和12举例说明了每个SEMP操作中的消息交换事务处理。为了简化描述,假设每个请求消息都接收到肯定的响应。
移动
图7A到7D示出了SEMP移动操作的例子。在这些图中,节点S是源节点,节点D是目的节点。因此,会话端点从节点S移动或扩展到节点D。节点O位于Ad Hoc网络内,其没有参与该实际操作(即,既不是源节点也不是目的节点)。然而,节点O能发送一个发起该操作的消息。在图7A中,节点S发起移动操作。如图7A中所示的,节点S发送移动消息给节点D,节点D答复以响应消息(即,ACK消息)。在图7B中,节点O是发起方,请求节点S扩展其会话到节点D。节点O首先发送移动消息给节点S。接下来,节点S发送移动消息给节点D。节点D使用ACK消息响应节点S,然后节点S使用ACK消息响应节点O。图7C举例说明了节点D是发起方的场景,而图7D举例说明了节点O是发起方但将移动消息发送给节点D而不是节点S的另一场景。
复制
图8A到8D示出了根据本发明的SEMP复制操作的例子。在这些图中,节点S是复制操作的源节点,而节点D是目的节点。因此,会话端点被从节点S复制到节点D。当复制操作完成时,节点S和D都是会话端点。节点S是主端点(或者来自先前SEMP操作的辅助端点),而节点D是辅助端点,镜像在节点S上的会话处理。节点O是在Ad Hoc网络内没有参与该实际操作的节点。然而,它能发送一个发起该操作的消息。在图8A中,节点S发起复制操作。在这个例子中,节点S发送给节点D一个复制消息,而节点D答复一个ACK响应消息。在图8B中,节点O是发起方,并且它首先发送消息给节点S。在节点S接收到复制消息之后,它就发送消息到节点D。节点D使用ACK消息来响应,然后节点S使用ACK消息来响应节点O。在图8C中,节点D是发起方。在图8D中,节点O再次是发起方,但是它发送消息给节点D,以便节点D能从节点S请求复制操作。拆分
图9A到9J示出了根据本发明的SEMP拆分操作的例子。在该图中,节点S是拆分操作的源节点,而节点D1和D2分别为该操作的目的节点。例如,节点S可以是图3中所示的移动电话114,节点D1可以是电视机116,而节点D2可以是音频系统(未示出)。在图9A所示的例子中,会话端点被从节点S拆分到节点D1和D2。在图3所示的例子的相关内容中,在该拆分操作中,该会话的正在电话114的屏幕上显示的视频部分被传送给电视机116,而该会话的音频部分被传送给音频系统。在图9B、9D、9F、9H和9J所示的例子中,节点O是在Ad Hoc网络内没有参与该实际操作但能发送一个发起该操作的拆分消息的节点。
在图9A中,节点S是拆分操作的发起方。节点S分别发送拆分消息给节点D1和D2。在图9A所示的例子中,节点D1和D2答复ACK响应消息。除了节点O是发起方并且其首先发送拆分消息给节点S以外,图9B表示图9A中所示的相同操作。该消息表示会话端点S将在节点D1和D2之间拆分其会话。在接收到拆分消息之后,节点S发送消息给节点D1和D2。节点D1和D2响应各自的ACK消息给节点S,然后节点S响应ACK消息给节点O。在图9C中,节点S是发起方。节点S发送拆分消息给节点D1,然后节点D1发送拆分消息给节点D2。在图9C所示的配置中节点D1和D2可以互换。
除了节点O是发起方以外,图9D表示与图9C相同的操作。在这个例子中,节点O首先发送消息给节点S,然后该操作按照参考图9C所描述的来进行。
在图9E中,节点D1是发起方,它首先发送拆分消息到节点S。接下来,节点S发送拆分消息到节点D2。节点D2响应ACK消息给节点S,节点S响应ACK消息给节点D1,然后开始从节点S到节点D1和D2的拆分会话数据传送。在图9F中,节点O是发起方,除此以外该操作与图9E中的操作相同。在图9G中,节点D1是发起方,并且它首先发送拆分消息到节点D2。节点D2通过发送拆分消息给节点S来响应。节点S响应ACK消息给节点D2,然后节点D2响应ACK消息给节点D1。在该第二ACK消息之后,可以开始从节点S到节点D1和D2的数据传送。除了节点O是发起方外,图9H和图9G相同。在图9I中,节点D1是拆分操作的发起方。节点D1发送拆分消息到节点S和D2。节点S和D2用ACK响应消息答复节点D1。虽然未示出,但在图9I中节点D1和D2可以互换。除了节点O是发起方外,图9J与图9I相同。
合并
图10A到10J示出了根据本发明的SEMP合并操作的例子。合并操作是拆分操作的反操作;它将两个会话合成单个会话。利用上面参考拆分操作所描述的例子,合并操作可以将发送给音频系统(未示出)的音频会话和发送给电视机116的视频会话合并成发送给移动电话114的单个会话。在该图中,节点S1和S2是合并操作的源节点,而节点D是该操作的目的节点。因此,会话端点被从节点S1和S2合并到节点D。此外,节点O是Ad Hoc网络内没有作为源节点或者目的节点参与合并操作的节点。然而,节点O能发送一个发起合并操作的消息。
在图10A中,节点D是合并操作的发起方。节点D发送各合并消息到节点S1和S2。在这个例子中,节点S1和S2随后发送各自的ACK答复响应消息到节点D。一旦节点D接收到ACK答复消息,就可以开始该合并数据的传送。除了节点O是发起方并且其首先发送合并消息给节点D以外,图10B与图10A相同。在图10C中,节点D是发起方。节点D发送合并消息到节点S1,然后节点S1发送合并消息到节点S2。节点S2使用ACK消息来响应节点S1,而节点S1使用ACK消息来响应节点D。
在节点D接收到ACK消息之后,可以开始该合并数据的传输。在这个例子中,除了发送其会话数据到节点D之外,节点S1还作为节点S2发送到节点D的会话数据的代理。除了节点O是发起方外,图10D与图10C相同。在图10E中,节点S1是发起方。它发送合并消息到节点D,然后节点D发送合并消息到节点S2。除了节点是O发起方外,图10F与图10E相同。在图10G中,节点S1再次是发起方,但是它发送合并消息到节点S2。然后节点S2发送合并消息给节点D。除了节点O是发起方外,图10H与图10G相同。在图10I中,节点S1通过发送各自的合并消息到节点D和S2来发起合并操作。节点S和D2用各自的ACK响应消息来答复节点D1。在图10I中节点S1和S2互换是可以想象的。除了节点O是发起方外,图10J表示与图10I所示的操作相同的操作。
呼入会话
图11A到11D示出了根据本发明的SEMP呼入会话操作的例子。在这些图中,节点P是主端点。节点D1和D2是不能作为主端点的设备,例如,因为他们不位于与主端点节点P相同的网络中。在上面的例子中,节点114是IP网络102和形成有电视机116的Ad-Hoc网络两者的成员。在这个例子中,电视机116不能接收来自网络102的呼入呼叫。但是,电话机114可以接收该呼入呼叫。SEMP协议的这个操作允许电话114作为电视机116的代理接收呼入呼叫。更具体地,呼入会话操作使不是主端点的辅助设备允许该主端点代表该辅助设备拾取会话。在Ad-Hoc网络中主端点的存在使在其覆盖区域中的设备能够接收呼入会话,即使这些设备不位于会话所建立的网络中。在该示例性实施例中,该拾取的会话立即通过移动操作从主端点移动到辅助端点。但是,这些设备位于也包括主端点节点的个人区域网络(PAN)中。
在图11A中,节点P接收呼入会话。然后,节点P向在其覆盖区域内的所有设备广播一个连接消息。在覆盖区域范围之内的节点D1和D2接收该连接消息。节点D1使用ACK响应消息来答复节点P,使得节点P拾取会话。在图11中,节点P再次接收到呼入会话,并向在其覆盖区域内的所有设备广播一个连接消息。如第一个例子所示的,节点D1用ACK响应消息来答复。然后,节点D1立即向P发送移动消息(如上所述),以将会话端点从节点P移动到节点D1。在这些例子中,节点D2或者不响应或者用否定回答(NAK)消息来响应。在图11C中,节点P接收呼入会话,并向在其覆盖区域内的全部设备广播一个连接消息。节点D1再次用ACK响应消息来答复。然而,在这个例子中,节点D1不想参与会话,相反,想要节点D2参与会话。这样,节点D1立即发送移动消息到节点P,使节点P将会话端点移动到节点D2。然后节点P发送移动消息到节点D2。在图11D中,节点P再次接收到呼入会话。节点P再次向在其覆盖区域内的所有设备广播一个连接消息。节点D1答复ACK响应消息。然后,节点D1立即发送一个移动消息到节点D2,以使节点D2从节点P请求会话端点。因此,节点D2发送一个移动消息到节点P。
呼出会话
图12A到12D示出了根据本发明的SEMP呼出会话的例子。如图11A到11D中一样,在图12A到12D中,节点P是一个主端点。节点D1和D2是不能做为主端点的设备。尽管如此,节点D1想要在节点P所连接的网络上发起一个会话。例如,该示范性SEMP呼出会话操作允许一个位于与连接到该网络的设备相同的PAN中的设备在该网络上发起会话。在主端点覆盖区域内的每个设备能发起该操作,即使发起设备自身不参与会话。在这些例子中,节点P发起会话,然后,使用移动操作将已建立的会话从主端点移动到辅助设备。
在图12A中,节点P是呼出会话的发起方。节点D1向节点P发送一个连接消息,以使节点P与位于Ad Hoc网络外的节点建立会话。节点P使用ACK响应消息来答复节点D1,然后,建立所请求的会话。在图12B中,节点P再次是呼出会话的发起方。节点D1发送一个连接消息到节点P,以使它与位于Ad Hoc网络外的节点建立会话。然后,节点P使用ACK响应消息来答复节点D1,并且随后节点P建立所请求的会话。节点D1立即发送一个移动消息到节点P,以使节点P将该建立的会话的会话端点移动到节点D1。在图12C中,节点P再次是呼出会话的发起方。节点D1再次发送一个连接消息到节点P,以使其与位于Ad Hoc网络外的节点建立会话。节点P使用ACK响应消息来答复节点D1。然后,节点P建立所请求的会话。然而,在这个例子中,节点D1想要使节点D2作为会话端点。因此,节点D1立即发送一个移动消息到节点P,以使节点P将会话端点移动到节点D2。这样,如上面所描述的,节点P发送一个移动消息到节点D2,以将节点D2建立为辅助端点。在图12D中,节点P在是呼出会话的发起方。节点D1向节点P发送一个连接消息,以与位于Ad Hoc网络外的节点建立会话。节点P向节点D1答复ACK响应消息,建立所请求的会话。节点D1立即发送一个移动消息到节点D2,以从节点P获取会话端点。相应地,节点D2发送一个移动消息到节点P。
虽然按照示例性实施例来描述本发明,但是如上所描述的在权利要求的范围内实现本发明是可以想象的。
Claims (16)
1.一种用于在包括第一设备和多个本地设备的Ad-Hoc网络环境中,以及在包括通信节点和所述第一设备的主网络环境中管理会话端点的方法,所述方法包括步骤:
在所述通信节点和所述第一设备之间建立因特网协议即IP会话的步骤,所述第一设备为IP会话的主端点;
所述第一设备发现至少一个本地设备的身份的步骤;
从所述至少一个本地设备接收了移动消息的本地设备对所述第一设备发送所述移动消息,所述接收了移动消息的本地设备作为所述IP会话的辅助端点与所述第一设备之间建立本地会话的步骤,所述移动消息包括用于识别所述第一设备的主端点识别符;
所述第一设备通过所述本地会话将从所述通信节点发送到所述第一设备的所述IP会话的分组,转发到所述接收了移动消息的本地设备的步骤。
2.如权利要求1所述的方法,所述发现所述至少一个本地设备的身份的步骤包括按照预定的设备发现协议来执行设备发现操作的步骤。
3.如权利要求1所述的方法,所述发现所述至少一个本地设备的身份的步骤进一步包括以下步骤:
通过所述第一设备发送请求设备能力数据的设备信息消息;以及
响应于所述设备信息消息,所述至少一个本地设备,向所述第一设备发送包括所述至少一个本地设备的能力数据的进一步设备信息消息。
4.如权利要求1所述的方法进一步包括,通过所述第一设备向所述至少一个本地设备发送描述在所述第一设备和所述通信节点之间的所述IP会话的会话描述信息消息的步骤。
5.如权利要求1所述的方法,响应于由所述接收了移动消息的本地设备从用户接收的命令,所述接收了移动消息的本地设备执行接收并处理所述会话数据的步骤。
6.如权利要求1所述的方法,响应于由所述接收了移动消息的本地设备从所述第一设备接收的命令,所述接收了移动消息的本地设备执行接收并处理所述会话数据的步骤。
7.一种用于在包括第一设备和多个本地设备的Ad-Hoc网络环境中,以及在包括通信节点和所述第一设备的主网络环境中管理会话端点的方法,所述方法包括以下步骤:
在所述通信节点和所述第一设备之间建立因特网协议即IP会话的步骤,所述第一设备为IP会话的主端点;
从至少一个本地设备对所述Ad-Hoc网络中的多个本地设备发送信息消息,以从所述Ad-Hoc网络中的多个本地设备中的至少一个本地设备请求信息或者向所述Ad-Hoc网络中的多个本地设备中的至少一个本地设备提供信息的步骤;
从所述IP会话的作为当前的辅助端点的本地设备接收了移动消息的本地设备对所述第一设备发送所述移动消息,所述接收了移动消息的本地设备作为所述IP会话的辅助端点建立所述接收了移动消息的本地设备与所述第一装置之间的本地会话的步骤,所述移动消息包括用于识别所述第一设备的主端点识别符;
所述第一设备通过所述本地会话将从所述通信节点发送到所述第一设备的所述IP会话的分组,转发到所述接收了移动消息的本地设备的步骤。
8.如权利要求7所述的方法,
所述信息消息包括:
信息状态识别符,用于表示所述消息是正请求信息还是正提供信息;
信息类型识别符,用于识别正被请求或正被提供的信息的类型;以及
内容信息,其包含由所述信息消息提供的全部信息;并且所述移动消息还包括:
从识别符,用于识别所述多个本地设备中发送所述消息的设备;以及
到识别符,用于识别所述多个本地设备中接收所述消息的另一设备。
9.如权利要求7所述的方法,进一步包括:
通过所述接收了移动消息的本地设备向所述Ad-Hoc网络中的多个本地设备发送复制消息,使所述多个本地设备中的与接收了移动消息的本地设备不同的本地设备为另一个辅助端点,并且通过所述另一个辅助端点与所述接收了移动消息的本地设备之间所建立的本地会话转发所述IP会话的分组。
10.如权利要求7所述的方法,所述IP会话包括多个部分并且所述方法进一步包括:
通过所述接收了所述移动消息的本地设备发送拆分消息,使所述多个本地设备中的某一设备和另一设备为所述IP会话的各个不同部分的辅助端点。
11.如权利要求10所述的方法,进一步包括:
通过所述接收了所述移动消息的本地设备发送合并消息,将所述多个本地设备的所述某一和另一设备中建立的拆分IP会话合并,使所述接收了所述移动消息的本地设备为辅助端点。
12.如权利要求7所述的方法,进一步包括:
通过所述接收了所述移动消息的本地设备向所述第一设备发送连接消息,通知所述第一设备有呼出会话,以便通过所述第一设备与所述通信节点发起呼出会话。
13.如权利要求7或者12所述的方法,进一步包括:
通过所述接收了所述移动消息的本地设备向所述第一设备发送结束消息;
响应于所述结束消息,所述第一设备结束与所述接收了所述移动消息的本地设备之间的所述本地会话。
14.一个用于管理第一设备中的逻辑IP会话的端点的方法,以有选择性地将所述端点扩展到位于所述第一设备的覆盖区域内的多个本地设备,所述方法包含步骤:
通过所述第一设备,发现至少一个本地设备的身份的步骤;
从所述至少一个本地设备接收了移动消息的本地设备对所述第一设备发送所述移动消息,所述接收了移动消息的本地设备作为所述逻辑IP会话的辅助端点与所述第一设备之间建立本地会话的步骤,所述移动消息包括用于识别所述第一装置的主端点识别符;并且
所述第一设备,通过所述本地会话将从作为所述逻辑IP会话的源的通信节点所接收的所述逻辑IP会话的分组发送到所述接收了移动消息的本地设备的步骤。
15.如权利要求14所述的方法,所述发现所述至少一个本地设备的身份的步骤包括按照设备发现协议来执行设备发现操作的步骤。
16.如权利要求14所述的方法,所述发现所述至少一个本地设备的身份的步骤进一步包括从所述至少一个本地设备发送设备能力信息消息给所述第一设备的步骤。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/414,370 | 2003-04-15 | ||
US10/414,370 US7539759B2 (en) | 2003-04-15 | 2003-04-15 | Session endpoint management protocol |
PCT/US2004/011536 WO2004093410A2 (en) | 2003-04-15 | 2004-04-15 | Session endpoint management protocol |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210147795XA Division CN102858030A (zh) | 2003-04-15 | 2004-04-15 | 会话端点管理协议 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1774893A CN1774893A (zh) | 2006-05-17 |
CN1774893B true CN1774893B (zh) | 2012-06-27 |
Family
ID=33158688
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200480010352.XA Expired - Fee Related CN1774893B (zh) | 2003-04-15 | 2004-04-15 | 会话端点管理协议 |
CN201210147795XA Pending CN102858030A (zh) | 2003-04-15 | 2004-04-15 | 会话端点管理协议 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210147795XA Pending CN102858030A (zh) | 2003-04-15 | 2004-04-15 | 会话端点管理协议 |
Country Status (6)
Country | Link |
---|---|
US (1) | US7539759B2 (zh) |
EP (1) | EP1614263B1 (zh) |
JP (1) | JP2006524024A (zh) |
CN (2) | CN1774893B (zh) |
DE (1) | DE602004024666D1 (zh) |
WO (1) | WO2004093410A2 (zh) |
Families Citing this family (53)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7512689B2 (en) * | 2003-07-02 | 2009-03-31 | Intel Corporation | Plug and play networking architecture with enhanced scalability and reliability |
US20060064720A1 (en) * | 2004-04-30 | 2006-03-23 | Vulcan Inc. | Controlling one or more media devices |
US20060031880A1 (en) * | 2004-04-30 | 2006-02-09 | Vulcan Inc. | Time-based graphical user interface for television program information |
US7962623B2 (en) * | 2004-06-30 | 2011-06-14 | Microsoft Corporation | Sustaining session connections |
US20060064492A1 (en) * | 2004-09-17 | 2006-03-23 | Siemens Information And Communication Mobile, Llc | Systems and methods for smart communication |
US20060153198A1 (en) * | 2005-01-10 | 2006-07-13 | Siemens Communications, Inc. | Systems and methods for uninterrupted communication sessions |
JP4743200B2 (ja) * | 2005-01-25 | 2011-08-10 | パナソニック株式会社 | 通信端末、端末切替システムおよび端末切替方法 |
US8837528B2 (en) * | 2005-02-25 | 2014-09-16 | Sony Computer Entertainment America Llc | Data distribution by proxy |
KR101059668B1 (ko) * | 2005-03-05 | 2011-08-25 | 인텔 코오퍼레이션 | 오퍼레이팅 시스템 독립 환경에서의 비동기식 네트워크 스택 동작 |
US20060253782A1 (en) * | 2005-04-01 | 2006-11-09 | Vulcan Inc. | Interface for manipulating multimedia playlists |
US20060258342A1 (en) * | 2005-04-21 | 2006-11-16 | Kenny Fok | Methods and apparatus for providing wireless device-centric control of an external computing device |
US7630406B2 (en) * | 2005-11-04 | 2009-12-08 | Intel Corporation | Methods and apparatus for providing a delayed attack protection system for network traffic |
US20070115931A1 (en) * | 2005-11-18 | 2007-05-24 | Anderson David J | Inter-server multimodal user communications |
US20070118656A1 (en) * | 2005-11-18 | 2007-05-24 | Anderson David J | Inter-server multimodal network communications |
US20070168520A1 (en) * | 2006-01-13 | 2007-07-19 | Matsushita Electric Industrial Co., Ltd. | Network layer end-point transfer |
US9037850B2 (en) * | 2006-03-17 | 2015-05-19 | Sandisk Il Ltd. | Session handover between terminals |
NO325083B1 (no) * | 2006-07-07 | 2008-01-28 | Tandberg Telecom As | Fremgangsmate og system for etablering av en videokonferansesamtale mellom et fjernt og et lokalt endepunkt |
US20080086550A1 (en) * | 2006-10-06 | 2008-04-10 | Cingular Wireless Ii, Llc | Integration of data between devices |
US8331294B2 (en) * | 2007-07-20 | 2012-12-11 | Broadcom Corporation | Method and system for managing information among personalized and shared resources with a personalized portable device |
US8442015B2 (en) * | 2007-07-20 | 2013-05-14 | Broadcom Corporation | Method and system for an atomizing function of a mobile device |
FI120994B (fi) * | 2007-07-17 | 2010-05-31 | Teliasonera Ab | Menetelmiä informaation vaihtamiseksi |
US8345591B2 (en) * | 2007-07-20 | 2013-01-01 | Broadcom Corporation | Method and system for utilizing plurality of physical layers to retain quality of service in a wireless device during a communication session |
US7992184B2 (en) * | 2007-09-18 | 2011-08-02 | Sony Corporation | Hardware module for adding functionality to television using mechanical and wireless links |
JP5194673B2 (ja) | 2007-09-26 | 2013-05-08 | 株式会社日立製作所 | 携帯端末、及び情報の送受信方法 |
US8463913B2 (en) * | 2007-09-29 | 2013-06-11 | Research In Motion Limited | System and method of responding to a request in a network environment including IMS |
EP2218242B1 (en) | 2007-10-27 | 2019-09-11 | BlackBerry Limited | Content disposition system and method for processing message content in a distributed environment |
CN101849386B (zh) * | 2007-11-01 | 2013-09-04 | Lg电子株式会社 | 在无线网状网络中建立对等链路的过程和支持该过程的无线站 |
US20090125813A1 (en) * | 2007-11-09 | 2009-05-14 | Zhongnan Shen | Method and system for processing multiple dialog sessions in parallel |
US20090234967A1 (en) * | 2008-03-17 | 2009-09-17 | Nokia Corporation | Method, system, and apparatus for transferring P2P file distribution tasks between devices |
US9237086B2 (en) * | 2008-05-30 | 2016-01-12 | Genband Us Llc | Methods and apparatus for network traffic distribution based on random number values |
JP5347403B2 (ja) * | 2008-09-22 | 2013-11-20 | ソニー株式会社 | 情報処理装置および方法、プログラム、並びに、情報処理システム |
US8369281B2 (en) | 2008-11-24 | 2013-02-05 | At&T Intellectual Property I, L.P. | Cell-to-WiFi switcher |
US9578105B2 (en) * | 2008-12-17 | 2017-02-21 | Verizon Patent And Licensing Inc. | Device optimized transmission and reception for multi-mode, multi-media communications |
US8396960B2 (en) * | 2009-05-08 | 2013-03-12 | Canon Kabushiki Kaisha | Efficient network utilization using multiple physical interfaces |
US8811903B2 (en) | 2009-05-28 | 2014-08-19 | Microsoft Corporation | Spectrum assignment for networks over white spaces and other portions of the spectrum |
US9226339B2 (en) | 2009-12-03 | 2015-12-29 | Qualcomm Incorporated | Method and apparatus for cooperative multifunctional communication in a wireless communication system |
US8099479B2 (en) * | 2009-12-15 | 2012-01-17 | Intel Corporation | Distributed mesh network |
US8406694B2 (en) | 2010-06-11 | 2013-03-26 | Microsoft Corporation | Channel discovery protocol |
US8661141B2 (en) * | 2010-06-18 | 2014-02-25 | Qualcomm Incorporated | Managing a client application session based on a status of a local wireless connection between primary and secondary communication terminals |
US8375139B2 (en) * | 2010-06-28 | 2013-02-12 | Canon Kabushiki Kaisha | Network streaming over multiple data communication channels using content feedback information |
CN102244916A (zh) * | 2011-07-29 | 2011-11-16 | 电信科学技术研究院 | 一种会话管理的控制方法和设备 |
US9531787B2 (en) * | 2011-09-30 | 2016-12-27 | Oracle International Corporation | System and method for managing and monitoring information using endpoint pairs |
US9026666B2 (en) | 2012-02-14 | 2015-05-05 | Avaya Inc. | Communication session cloning using barcodes |
US9479345B2 (en) * | 2012-02-14 | 2016-10-25 | Avaya Inc. | Fixed mobile convergence for audio and web conference sessions using barcodes |
WO2015139026A2 (en) | 2014-03-14 | 2015-09-17 | Go Tenna Inc. | System and method for digital communication between computing devices |
US10091252B2 (en) | 2015-04-10 | 2018-10-02 | Microsoft Technology Licensing, Llc | Endpoint control for a communication session |
US10880198B2 (en) * | 2015-05-08 | 2020-12-29 | Qualcomm Incorporated | Aggregating targeted and exploration queries |
KR102449533B1 (ko) * | 2015-05-28 | 2022-10-04 | 삼성전자주식회사 | 전자 장치 및 전자 장치에서 어플리케이션의 실행을 제어하는 방법 |
US10419583B2 (en) * | 2015-11-10 | 2019-09-17 | Bang & Olufsen A/S | System and method for initiating content streaming |
US10944669B1 (en) | 2018-02-09 | 2021-03-09 | GoTenna, Inc. | System and method for efficient network-wide broadcast in a multi-hop wireless network using packet echos |
WO2020023909A1 (en) | 2018-07-27 | 2020-01-30 | GoTenna, Inc. | Vine™: zero-control routing using data packet inspection for wireless mesh networks |
US11082344B2 (en) | 2019-03-08 | 2021-08-03 | GoTenna, Inc. | Method for utilization-based traffic throttling in a wireless mesh network |
CN116248535B (zh) * | 2023-02-01 | 2024-07-02 | 永中软件股份有限公司 | 通讯交流的脉络展示方法、计算机装置、计算机可读介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1372425A (zh) * | 2001-02-19 | 2002-10-02 | 阿尔卡塔尔公司 | 处理呼叫的方法,对应的无线移动终端和计算机程序 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6134433A (en) * | 1996-12-09 | 2000-10-17 | Telefonaktiebolaget L M Ericsson (Publ) | System and method of forwarding data calls in a radio telecommunications network |
US6304556B1 (en) | 1998-08-24 | 2001-10-16 | Cornell Research Foundation, Inc. | Routing and mobility management protocols for ad-hoc networks |
JP3252806B2 (ja) * | 1998-08-28 | 2002-02-04 | 日本電気株式会社 | 携帯電話機 |
EP1107512A1 (en) | 1999-12-03 | 2001-06-13 | Sony International (Europe) GmbH | Communication device and software for operating multimedia applications |
AU2001281832A1 (en) | 2000-07-03 | 2002-01-14 | Telefonaktiebolaget Lm Ericsson (Publ) | A method of controlling a display device and an electronic accessory device for controlling a display device |
US7031288B2 (en) | 2000-09-12 | 2006-04-18 | Sri International | Reduced-overhead protocol for discovering new neighbor nodes and detecting the loss of existing neighbor nodes in a network |
TW532040B (en) | 2000-10-20 | 2003-05-11 | Koninkl Philips Electronics Nv | Method and system for transferring a communication session |
DE10118188B4 (de) | 2001-04-11 | 2004-03-11 | Siemens Ag | Verfahren zum Leiten von Daten in einem mobilen Kommunikationsnetz und Kommunikationsnetz-Vorrichtung zum Duchführen eines solchen Verfahrens |
WO2002089441A1 (en) | 2001-05-01 | 2002-11-07 | Meta4Hand Inc. | Wireless network computing |
US7042879B2 (en) * | 2001-11-02 | 2006-05-09 | General Instrument Corporation | Method and apparatus for transferring a communication session |
US7370353B2 (en) * | 2001-11-05 | 2008-05-06 | Cisco Technology, Inc. | System and method for managing dynamic network sessions |
US20030188010A1 (en) * | 2002-03-27 | 2003-10-02 | Imran Raza | Peer to peer mixed media messaging |
US6927727B2 (en) * | 2003-01-21 | 2005-08-09 | Monica Cleghorn | Internet protocol based 911 system |
-
2003
- 2003-04-15 US US10/414,370 patent/US7539759B2/en not_active Expired - Fee Related
-
2004
- 2004-04-15 CN CN200480010352.XA patent/CN1774893B/zh not_active Expired - Fee Related
- 2004-04-15 EP EP04750123A patent/EP1614263B1/en not_active Expired - Lifetime
- 2004-04-15 JP JP2006510043A patent/JP2006524024A/ja not_active Withdrawn
- 2004-04-15 WO PCT/US2004/011536 patent/WO2004093410A2/en active Application Filing
- 2004-04-15 CN CN201210147795XA patent/CN102858030A/zh active Pending
- 2004-04-15 DE DE602004024666T patent/DE602004024666D1/de not_active Expired - Lifetime
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1372425A (zh) * | 2001-02-19 | 2002-10-02 | 阿尔卡塔尔公司 | 处理呼叫的方法,对应的无线移动终端和计算机程序 |
Also Published As
Publication number | Publication date |
---|---|
US7539759B2 (en) | 2009-05-26 |
CN1774893A (zh) | 2006-05-17 |
JP2006524024A (ja) | 2006-10-19 |
DE602004024666D1 (de) | 2010-01-28 |
CN102858030A (zh) | 2013-01-02 |
US20040210657A1 (en) | 2004-10-21 |
WO2004093410A2 (en) | 2004-10-28 |
EP1614263A2 (en) | 2006-01-11 |
EP1614263B1 (en) | 2009-12-16 |
WO2004093410A3 (en) | 2005-01-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1774893B (zh) | 会话端点管理协议 | |
CN100448319C (zh) | 与移动通信系统中ip会话的重新定位相关的优化信息传送 | |
CA2377616C (en) | A method and apparatus for routing data in a communication device | |
US20050135286A1 (en) | Wireless extended proximity networks: systems, methods and program products | |
EP1891798B1 (en) | System, network entity, terminal, method, and computer program product for presence publication | |
JP3524285B2 (ja) | 通信装置及びその通信方法 | |
JP2005051754A (ja) | 無線パーソナルエリアネットワークにおけるリモートサービスの利用可能性を判定する距離アウェアサービスディスカバリメカニズム | |
US20040203385A1 (en) | Session endpoint management method for ad-hoc networks | |
JP3864142B2 (ja) | ローミングターミナルを伴うショートレンジrfネットワーク | |
JP2009508434A (ja) | 制御一時的モバイルネットワーク | |
CN101682618A (zh) | 一种在分布式散列表中提供和保持实时最新数据的节点和方法 | |
WO2008119177A1 (en) | Session mobility between communicating devices | |
JP6477489B2 (ja) | 中継装置、音声通信システム、プログラムおよび中継方法 | |
US8018899B2 (en) | Handoff system and method between different kinds of devices, SIP server and operational method of SIP server | |
KR20040044216A (ko) | 통신단말기간의 피어투피어 방식의 서비스를 위한 확장에스아이피를 이용한 티씨피/아이피 세션 설정 방법 | |
JP2002064562A (ja) | 通信コネクション確立方法 | |
US20100197312A1 (en) | Wireless Telephone System, Relay Device, and Wireless Telephone Device | |
US20050091379A1 (en) | Method and system for initiating session using session initiation protocol under mobile IPv6 | |
Knutson et al. | Dynamic autonomous transport selection in heterogeneous wireless environments | |
EP1705841A1 (en) | Network topology generation method and node | |
WO2024004078A1 (ja) | 負荷分散装置、負荷分散システム、負荷分散方法、および、負荷分散プログラム | |
JP2006238113A (ja) | パケット転送方法、ルータ装置、および端末装置 | |
US20060047854A1 (en) | Active node, and contents transfer system and method using the active node | |
Gioacchino Cascella | Reconfigurable Application Networks through Peer Discovery and Handovers | |
JP3551901B2 (ja) | 携帯情報端末用の情報転送方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20120627 Termination date: 20200415 |
|
CF01 | Termination of patent right due to non-payment of annual fee |