WANG WEI (CN)
HAO ZHENWU (CN)
MENG YU (CN)
TAO QUANJUN (CN)
WANG WEI (CN)
HAO ZHENWU (CN)
MENG YU (CN)
CN101079759A | 2007-11-28 | |||
CN101848444A | 2010-09-29 | |||
CN101399768A | 2009-04-01 |
北京派特恩知识产权代理事务所(普通合伙) (CN)
权利要求书 1、 一种实现会话中数据迁移的方法, 其特征在于: 原节点通知新节点终端的会话状态, 所述原节点保留所述终端的业务 控制权; 所述新节点根据所述会话状态, 转发所述终端的后续消息给所述原节 点; 所述原节点或者所述新节点在会话结束时更新所述会话状态。 2、 如权利要求 1所述的方法, 其特征在于, 所述原节点在收到所述终端会话邀请消息时, 或者, 所述原节点在收 到所述新节点的加入请求消息, 或者所述原节点向所述新节点发送离开请 求消息时, 所述原节点通知所述新节点所述终端的会话状态。 3、 如权利要求 1所述的方法, 其特征在于, 所述会话状态包括: 所述 原节点的地址信息和 /或所述终端会话状态指示信息; 其中,所述地址信息指所述原节点的 IP地址信息或节点标识 Node-ID。 4、 如权利要求 3所述的方法, 其特征在于, 所述新节点根据所述会话 状态, 转发所述终端的后续消息给所述原节点具体为: 所述新节点收到所述终端的后续消息, 根据所述终端会话状态指示信 息, 判断所述终端的会话在数据迁移时正处于建立或者通讯中, 并且尚未 结束, 则根据所述会话状态中的所述原节点的地址信息, 转发所述终端后 续消息给所述原节点。 5、 如权利要求 3所述的方法, 其特征在于, 所述新节点根据所述会话 状态, 转发所述终端的后续消息给所述原节点具体为: 所述新节点收到所述会话状态后, 则判断出所述终端的会话在数据迁 移时正处于建立或者通讯中, 并且尚未结束; 当所述新节点收到终端的后 续消息后, 根据所述会话状态中的所述原节点的地址信息, 转发所述终端 后续消息给所述原节点。 6、 如权利要求 1所述的方法, 其特征在于, 原节点通知所述新节点所 述终端的会话状态包括: 所述原节点在所述终端的业务数据中标记所述会话状态, 随业务数据 迁移到所述新节点。 7、 如权利要求 6所述的方法, 其特征在于, 所述新节点判断所述终端业务数据中是否有标记所述会话状态, 若有, 则把所述终端的后续消息转发给所述原节点。 8、 如权利要求 1所述的方法, 其特征在于, 所述原节点或者所述新节 点在会话结束时更新所述会话状态包括: 所述原节点收到所述终端或者所述终端的对端的释放消息时 , 所述原 节点释放所述会话, 通知所述新节点更新所述会话状态; 或者, 所述原节点在定时器 T1超时时, 释放所述会话, 通知所述新节点更新 所述会话状态; 或者, 所述新节点在定时器 T2超时时, 更新所述会话状态。 9、 如权利要求 8所述的方法, 其特征在于, 所述定时器 T1 由所述原 节点在会话建立或者数据转移时设置, 所述 T1时长由运营商策略制定; 所述定时器 T2由所述新节点在收到数据迁移时设置, 所述 T2时长由 运营商策略制定, 或者, 由所述原节点设置并标记在所述终端的业务数据 中, 随业务数据迁移到所述新节点。 10、 一种实现会话中数据迁移的节点, 其特征在于, 节点通知新节点终端的会话状态, 所述节点保留所述终端的业务控制 权; 所述节点根据所述新节点转发来的所述终端的后续消息 , 继续处理所 述终端的会话; 所述节点在会话结束时更新所述会话状态, 或者通知所述新节点更新 所述会话状态。 11、 如权利要求 10所述的节点, 其特征在于, 所述节点在收到所述终 端会话邀请消息时, 或者, 所述节点在收到所述新节点的加入请求消息, 或者所述节点向所述新节点发送离开请求消息时, 所述节点通知所述新节 点所述终端的会话状态。 12、 如权利要求 10所述的节点, 其特征在于, 所述节点通知所述新节 点所述终端的会话状态具体指: 所述节点在所述终端的业务数据中标记所述会话状态, 随业务数据迁 移到所述新节点。 13、 如权利要求 10所述的节点, 其特征在于, 所述节点在会话结束时 更新所述会话状态, 或者通知所述新节点更新所述会话状态具体指: 所述节点收到所述终端或者所述终端的对端的释放消息时, 所述节点 释放所述会话, 通知所述新节点更新所述会话状态; 或者, 所述节点在定时器 T1超时时, 释放所述会话, 通知所述新节点更新所 述会话状态。 14、 一种实现会话中数据迁移的节点, 其特征在于, 节点收到原节点通知的终端的会话状态后, 根据所述会话状态, 转发 所述终端的后续消息给所述原节点, 并在会话结束时更新所述会话状态。 15、 如权利要求 14所述的节点, 其特征在于, 所述节点根据所述会话 状态, 转发所述终端的后续消息给所述原节点具体指: 所述节点收到所述终端的后续消息, 根据所述会话状态中的原节点地 址信息转发所述终端后续消息给所述原节点。 16、 如权利要求 14所述的节点, 其特征在于, 所述节点在会话结束时 更新所述会话状态包括: 所述节点在收到所述原节点通知时, 或者在定时器 T2超时时, 更新所 述会话状态。 |
本发明涉及通讯领域, 尤其是涉及一种 P2P网络中数据迁移的方法和 节点 背景技术
P2P, 是英文 Peer-to-Peer的缩写, 中译为对等互联或点对点技术。 目 前 P2P在文件交换、 分布式计算、 服务共享等方面已经充分显示出了其强 大的技术优势,但是 P2P的应用主要还是集中在 Internet应用中, 在传统电 信网络中尚未大规模应用。 考虑到目前以及将来电信网络中, 会话控制的 主流是 SIP (会话初始化)协议, 因此, 将 P2P技术引入到电信网中去, 必 须能保证 SIP协议在 P2P网络中的应用, 同时需要能够运行各类典型业务。
基于以上考虑, 目前业界的很多机构都在致力于研究如何将 P2P技术 引入到电信网络中来, 图 1 是现有研究中得到大多数研究者与研究机构认 同的一种 P2P核心网架构示意图, 其中:
101表示 P2P叠加网, 它由各类担负不同角色的对等体(本发明中也 称 为节点)组成的一张逻辑网络;
102是 P2P叠加网中的对等节点, 为 P2P叠加网中的基本组成部分, 是能够给同一 P2P叠加网中其它节点提供存储和传送服务的节 点;
103是非 P2P终端设备, 为接入到 P2P叠加网的不支持任何 P2P协议, 仅支持 SIP协议的终端设备;
104是 P2P终端设备, 为接入到 P2P叠加网中的既支持 P2P协议, 也 支持 IP协议的终端设备; 考虑到一般终端设备, 特别是手持终端设备的能 力较弱, 所以很多情况下的实际部署, P2P终端设备也仅仅作为 P2P客户 端接入到 P2P叠加网中来, 并不承担存储、 传送等服务器;
105为 103、 104等终端设备的接入节点, 考虑到电信营运的需要, 包 括 P2P终端与非 P2P终端都必须通过就近的接入节点接入到 P2P叠加网中, 当该接入节点作为非 P2P终端的接入节点时, 同时作为代理节点, 负责将 非 P2P终端所采用的 SIP协议与 P2P叠加网内部路由 SIP所采用协议的转 换, 而当该节点作为 P2P终端的接入节点时, 仅需要对消息进行中继。
图 2是一个新的对等节点加入到叠加网的业务流 图, 图中加入节点 指的是准备新加入叠加网络的节点, 准入节点为当前资源负责节点, 登记 节点主要负责分配节点的 Node ID。 当加入节点首次加入到叠加网络时, 首 先它通过 HTTP 协议向登记节点获取它配置数据, 如网络为它分配的 Node-ID, 证书以及相关邻接节点路由表信息。 加入节点后续根据邻接节点 路由表向它准入节点发送加入请求, 不同 DHT算法, 则计算准入节点的方 式不一样, 本发明以 Chord算法为例, 准入节点为加入节点的 Node-ID在 Chord 环中的下一跳。 准入节点收到加入节点加入请求, 把所存储的 Resource ID小于加入节点的资源迁移到加入节点, 并通知它邻接表中的邻 接节点资源已迁移到新的节点。 具体步驟包括如下:
201. 加入节点首次加入 Overlay叠加网络, 加入节点通过 HTTP协议 向网络中登记节点发送附着请求消息, 消息中标记加入节点的 IP地址;
202. 登记节点为加入节点分配一个 128位空间的 Node-ID, 向加入节 点返回附着应答消息, 消息中标记 Overlay网络中的 Bootstrap节点地址列 表, 其中 Bootstrap主要为加入节点提供 Overlay网络的入口地址;
203. 加入节点通过 Overlay网络向准入节点发送加入请求消息, 加入 节点首次加入网络的时候,触发 Attach流程,通过 Bootstrap找到准入节点;
204. 准入节点允许节点接入, 返回加入请求应答消息;
205. 准入节点向加入节点发送存储数据请求消息, 消息标记根据 DHT 算法需要新节点负责的数据, 以 Chord 算法为例, 准入节点把所存储的
Resource ID小于加入节点的资源迁移到加入节点;
206. 加入节点获取成功后返回应答消息给准入节点 ;
207 - 208. 准入节点向它邻接节点发送路由表更新请求消 息,通知它邻 接表中的邻接节点指示资源已迁移到新的节点 。
图 3是 SIP终端通过代理节点接入到 P2P叠加网络中来并发起呼叫的 流程。 具体包括如下步驟:
301. SIP终端 1向 P2P叠加网络的代理节点发送 SIP会话邀请消息(也 称会话初始消息), 消息中携带主叫公共用户身份标识 PUI和目的地址信息 或者号码信息;
302. 代理节点根据 DHT算法对消息中主叫 PUI进行哈希生成 Resource ID, 并以此为目标地址, 在 Overlay网络通过 RELOAD协议寻址主叫 SIP 终端 1的负责节点, 寻找完毕, 可能会通过 RELOAD协议 Attach过程建立 代理节点和负责节点之间的 IP连接,并把负责节点的 IP地址信息上传给代 理节点的 SIP业务层;
303. 代理节点 SIP业务层,根据 302步驟获取的负责节点 IP地址信息, 向负责节点发送 SIP会话邀请消息;
304.负责节点把收到的会话发送给对端节点, 发送前负责节点可能根 据 DHT算法, 通过 RELOAD层找到对端节点, 并建立之间的 IP连接, 获 取对端 IP地址信息, 并传递给负责节点的 SIP业务层;
305.负责节点 SIP业务层,根据 304步驟获取的对端节点 IP地址信息, 向对端节点发送 SIP会话邀请消息;
306 - 308. 对端节点接受这次会话, 原路径返回 200 OK应答消息。 图 4描述的是会话过程中, P2P网络发生节点加入,导致数据迁移的场 景。 具体包括如下步驟: 401. SIP终端 1通过 P2P网络与对端节点正在建立会话;
402.新加入节点向原节点发送加入请求消息;
403.按照现有技术, 原节点会执行数据迁移过程,把相关的数据迁 移到 新的节点。 迁移过程同图 2描述。
当会话过程中发起数据迁移, 由于会话过程中原服务节点在会话过程 中产生一些与会话相关的临时变量和动态数据 可能没有通过 RELOAD层进 行备份, 当数据迁移到新加入节点, 可能会使这些数据的丟失, 最终影响 到数据迁移过程中正在建立和通讯的会话。 发明内容
本发明要解决的技术问题是, 提供一种 P2P 网络会话过程中的数据迁 移方法和节点, 使正在会话过程中的会话业务控制权仍保留在 原节点, 直 到会话结束, 从而避免数据迁移对会话的影响。
本发明提供一种实现会话中数据迁移的方法。 原节点通知新节点终端 的会话状态, 原节点保留终端的业务控制权; 新节点根据会话状态, 转发 终端的后续消息给原节点; 原节点或者新节点在会话结束时更新会话状态 。
进一步地, 原节点在收到终端会话邀请消息时, 或者, 原节点在收到 新节点的加入请求消息, 或者原节点向新节点发送离开请求消息时, 原节 点通知新节点所述终端的会话状态。
进一步地, 会话状态包括: 原节点的地址信息和 /或终端会话状态指示 信息。 其中, 地址信息指原节点的 IP地址信息或节点标识 Node-ID。
进一步地, 新点根据会话状态, 转发终端的后续消息给原节点具体为: 新节点收到终端的后续消息, 根据终端会话状态指示信息, 判断终端的会 话在数据迁移时正处于建立或者通讯中, 并且尚未结束, 则根据会话状态 中的原点的地址信息, 转发终端后续消息给所原节点。
或者, 新节点收到会话状态后, 则认为终端的会话在数据迁移时正处 于建立或者通讯中, 并且尚未结束; 当所述新节点收到终端的后续消息后, 根据会话状态中的原节点的地址信息, 转发终端后续消息给原节点。
进一步地, 原节点通知所述新节点所述终端的会话状态包 括: 原节点 在终端的业务数据中标记会话状态, 随业务数据迁移到新节点。
进一步地, 当新节点发现终端业务数据中没有标记会话状 态, 则不把 终端的后续消息转发给原节点。
进一步地, 原节点或者新节点在会话结束时更新会话状态 包括: 原节 点收到终端或者终端的对端的释放消息时, 原节点释放所述会话, 通知新 节点更新会话状态; 或者, 原节点在定时器 T1超时时, 释放所述会话, 通 知新节点更新会话状态; 或者,新节点在定时器 T2超时时,更新会话状态。
进一步地, 定时器 T1 由原节点在会话建立或者数据转移时设置, T1 时长由运营商策略制定。 定时器 T2由新节点在收到数据迁移时设置, 所述 T2时长由运营商策略制定, 或者, 由原节点设置并标记在终端的业务数据 中, 随业务数据迁移到新节点。
本发明还提供一种实现会话中数据迁移的节点 。 该节点通知新节点终 端的会话状态, 该节点保留终端的业务控制权; 该节点根据新节点转发来 的终端的后续消息, 继续处理终端的会话; 该节点在会话结束时更新会话 状态, 或者通知新节点更新会话状态。
进一步地, 该节点在收到终端会话邀请消息时, 或者, 节点在收到新 节点的加入请求消息, 或者节点向新节点发送离开请求消息时, 该节点通 知新节点终端的会话状态。
进一步地, 该节点通知新节点终端的会话状态可以是在终 端的业务数 据中标记所述会话状态, 随业务数据迁移到所述新节点。
进一步地, 该节点在会话结束时更新会话状态, 或者通知新节点更新 会话状态可以是: 该节点收到终端或者终端的对端的释放消息时 , 节点释 放所述会话, 通知新节点更新会话状态; 或者, 节点在定时器 T1超时时, 释放会话, 通知新节点更新所述会话状态。
本发明还提供一种实现会话中数据迁移的节点 。 该节点收到原节点通 知的终端的会话状态后, 根据会话状态, 转发终端的后续消息给原节点, 并在会话结束时更新会话状态。
进一步地, 该节点根据会话状态, 转发终端的后续消息给原节点具体 指: 该节点收到终端的后续消息, 根据会话状态中的原节点地址信息转发 终端后续消息给所述原节点。
进一步地, 该节点在会话结束时更新会话状态包括: 该节点在收到所 述原节点通知时, 或者在定时器 T2超时时, 更新所述会话状态。
通过本发明提供的 P2P网络会话过程中的数据迁移方法和节点, 使正 在会话过程中的会话业务控制权仍保留在原节 点, 直到会话结束, 从而避 免数据迁移对会话的影响。 附图说明
图 1 为 P2P核心网系统架构示意图;
图 1为现有技术中新的对等节点加入到 P2P叠加网的业务流程图; 图 3为现有技术中 SIP终端接入到 P2P叠加网络中并发起呼叫的流程 图;
图 4为现有技术中数据迁移的流程图;
图 5为本发明实施例新节点加入时的流程图;
图 6为本发明实施例原节点退出时的流程图;
图 7为本发明实施例新节点将消息转发给原节点 理的流程图; 图 8为本发明实施例 T2定时器超时后的处理流程图;
图 9为本发明实施例 T1定时器超时后的处理流程图。 具体实施方式
下面通过几个实施例, 对本发明进一步详细描述。
图 5是本发明实施例一, 描述的场景 P2P网络 SIP终端与对端正在会 话建立或者通讯过程中, 新节点加入, 原负责 SIP终端服务节点, 即原节 点把所述终端的业务数据迁移到新节点, 原节点继续保持所述终端的会话 控制, 直到会话结束, 其具体流程说明如下所示:
501. SIP终端 1通过代理节点接入到 P2P网络, 并通过 P2P网络正在 与对端节点建立会话或者会话已经建立正在通 讯过程, 具体细节可以参考 图 3流程。
502.原节点在收到 SIP终端 1建立会话的时候,通知新节点终端的会话 状态。
通知的方法可以是, 原节点向 SIP终端业务数据区添加会话状态, 并 通过数据迁移, 将该会话状态一并迁移给新节点。
会话状态包括原节点的地址信息。 另外还可以包括会话状态指示信息。 地址信息可以是原节点的 Node - ID,或者是原节点的 IP地址信息。会 话状态指示信息设置为 Semi-Active状态, 来表示会话未结束。
当新节点判断是否存在会话状态, 或者, 根据会话状态指示信息来判 断判终端的会话是否在数据迁移时正处于建立 或者通讯中, 并且尚未结束。
例如, 原节点及新节点采用会话状态包括地址信息加 会话状态指示信 息的方法。 则原节点将会话状态通知给新节点后, 新节点根据会话状态指 示信息判断得出数据迁移时正处于建立或者通 讯中尚未结束, 则将终端的 后续消息转给原节点。
再例如, 原节点及新节点采用会话状态仅包括地址信息 的方法。 则原 节点将会话状态通知给新节点后, 新节点收到会话状态则认为有必要将终 端的后续消息转给原节点。 另外, 会话状态还可以包括由原节点设置 Tl定时器, 定时器时长由运 营策略制定。 会话状态还可以包括由原节点或者新节点设置 T2定时器。 T1 和 T2定时器用于指示新节点在定时器超时后,清 或者修改会话状态指示 为 Idle状态。
需要注意的是, 502步驟也可以发生在 503步驟或 504步驟或 505步驟 之后, 本专利这里不作限制。 若 502 步驟的通知过程采用在数据区添加会 话状态的方法, 则 502步驟在 505步驟之前完成即可。
503. 新节点加入到 P2P叠加网, 向原节点发送加入请求消息。
504. 原节点允许新节点加入, 向新节点返回应答消息。
505. 原节点执行数据迁移过程, 详细步驟参见图 2流程。
506. 原节点保留会话状态指示信息为 Semi- Active会话的业务控制权。 507a - 507b. 原节点收到 SIP终端 1释放和对端释放呼叫的释放消息, 原节点释放呼叫。
508. 更新会话状态。
若会话状态中包含了会话状态指示信息, 则向新节点清除或者修改会 话状态指示信息为 Idle状态。 可以通过 RELOAD协议中的 Store命令, 目 的地址为 SIP终端 1的 Resource ID。
若会话状态中未包含会话状态指示信息, 则更新会话状态, 如通过删 除地址信息, 来使新节点不再将终端的后续消息转发至原节 点。
图 6是本发明实施例二, 描述的场景 P2P网络 SIP终端与对端节点正 在会话建立或者通讯过程中, 原节点发起退出请求, 原负责 SIP终端服务 节点把所述终端的业务数据迁移到新节点, 原节点继续保持所述终端的会 话控制, 直到会话结束, 其具体流程说明如下所示:
601 - 602 同 501-502,且通知方法、会话状态的内容定义等也 与图 5 实施例中所述相同。 603. 原节点准备退出 P2P网络, 原节点向即将代替它的新节点发送退 出请求消息。
604. 新节点收到原节点的退出请求消息, 向负责节点返回退出应答请 求应答消息。
605.原节点执行数据迁移过程。
606-607同 506-507。
608同 508。
当原节点中所有会话都结束的时候, 原节点才真正退出 P2P网络。 图 7是本发明实施例三, 描述的场景 P2P网络 SIP终端与对端节点正 在会话建立或者通讯过程中, 新节点数据迁移完毕后, 收到来自 SIP终端 1 的消息或者发往 SIP终端 1 的消息, 新节点根据会话状态, 把消息转发给 原节点处理, 具体步驟包括如下:
701. SIP终端 1与对端节点正在建立会话或者通讯过程中, 新节点加 入到 P2P网络, 原节点把 SIP终端 1的业务数据迁移到新节点。
702. 新节点收到网络中间节点来自 SIP终端 1或者发向 SIP终端 1的 SIP消息。
703. 新节点根据会话状态, 进行 704步驟。
若原节点向 SIP终端业务数据区添加会话状态, 并通过数据迁移, 将 该会话状态一并迁移给新节点, 则在 703步驟中, 新节点根据 SIP终端 1 业务数据中的会话状态进行 704步。
根据会话状态进行判断的具体方式与图 5实施例中所描述的相同。
704. 新节点把收到的消息转发给原节点。
图 8描述的场景 P2P网络 SIP终端与对端节点正在会话建立或者通讯 过程中, 新节点数据迁移完毕后, 在 T2定时器超时时, 新节点更新会话状 态, 具体步驟包括如下: 801·同 701。
802. 新节点判断 T2定时器超时, 更新会话状态。 具体方法可以是, 新节点通过 RELOAD协议中的 Store命令把当前会话状态指示信息修改为 Idle, 或者清除会话状态。
T2定时器由新节点在收到数据迁移时建立, T2定时器时长由运营商策 略制定或者由原节点告知, 告知方法可以是:
T2定时器时长由原节点制定, 存放在 SIP终端 1的业务数据中, 在数 据迁移时, 从原节点迁移到新节点。
图 9描述的场景 P2P网络 SIP终端与对端节点正在会话建立或者通讯 过程中, 新节点数据迁移完毕后, 在 T1定时器超时时, 原节点释放呼叫, 并清除或者更改会话状态指示, 具体步驟包括如下:
901.同 801。
902. 原节点判断 T1定时器超时。
903. 原节点释放 SIP终端 1的会话。
904. 通知新节点更新会话状态。
可以是, 通知新节点清除或修改会话状态指示, 具体方法可以新节点 通过 RELOAD协议中的 Store命令把当前会话状态指示修改为 Idle或者清 除会话状态。
T1定时器由原节点在会话建立时, 或者数据转移时建立, T1定时器时 长由运营商策略制定。
本发明还提供一种会话中数据迁移的节点。 当该节点是原节点时, 具 有以下特征:
该节点通知新节点终端的会话状态, 该节点保留所述终端的业务控制 权; 该节点根据新节点转发来的终端的后续消息, 继续处理终端的会话; 该节点在会话结束时更新会话状态, 或者通知新节点更新会话状态。 其中 会话状态的定义与前述方法实施例中相同。
特别的, 该节点在收到终端会话邀请消息时, 或者, 在收到新节点的 加入请求消息, 或者该节点向新节点发送离开请求消息时, 该节点通知新 节点所述终端的会话状态。
特别的, 该节点通知新节点会话状态的方法可以是在所 述终端的业务 数据中标记会话状态, 随业务数据迁移到新节点。
该节点在会话结束时更新会话状态, 或者通知新节点更新会话状态可 以是: 该节点收到所述终端或者所述终端的对端的释 放消息时, 释放所述 会话, 并通知所述新节点更新所述会话状态。 或者, 该节点在定时器 T1超 时时, 释放所述会话, 通知所述新节点更新所述会话状态。 其中定时器 T1 的定义与前述方法实施例中相同。
另外, 当该节点是新节点时, 具有以下特征:
该节点收到原节点通知的终端的会话状态后, 根据会话状态, 转发终 端的后续消息给原节点, 并在会话结束时更新会话状态。
其中, 所述节点收到所述终端的后续消息, 根据会话状态, 判断所述 终端的会话在数据迁移时正处于建立或者通讯 中, 并且尚未结束, 则根据 会话状态中的原节点地址信息转发所述终端后 续消息给原节点。
该节点根据原节点通知,或者在定时器 T2超时时,更新所述会话状态。 当然, 本发明还可有其他多种实施例, 在不背离本发明精神及其实质 的情况下, 熟悉本领域的技术人员当可根据本发明作出各 种相应的改变和 变形, 但这些相应的改变和变形都应属于本发明所附 的权利要求的保护范 围。
Next Patent: INNOVATIVE TENT TOP MODULE