数据包发送方法、 数据包获取方法及装置 技术领域 本发明实施例涉及通信技术领域, 尤其涉及一种数据包发送方法、 数据包获取方 法及装置。
背景技术 ParlayX 网关 (ParlayX Gateway, 以下简称为 : ParlayX GW) 将运营商的网络能 力、 业务能力和运营支撑能力用 ParlayX 网络服务器 (ParlayX WebServices) 接口向业务 提供商设备开放 ; 其中业务提供商设备包括服务提供商 (Service Provider, 以下简称为 : SP) 或内容提供商 (Content Provider, 以下简称为 : CP), 以下以 SP/CP 表示业务提供商 设备。ParlayX Web Services 接口是在因特网上广泛使用的简单对象访问协议 (Simple Object AccessProtocol, 简称为 : SOAP) 之上定义的, 由此, ParlayX Web Services 接口 可以被不具备电信专业知识的 IT 开发人员快速掌握, 从而使得 SP/CP 快速、 灵活的使用 ParlayX 接口进行第三方 (3rd-party) 业务的开发。其中, ParlayX WebServices 接口是由 PARLAY 论坛组织统一定义的。
现有技术中, SP/CP 与用户之间通过 ParlayX GW 相互发送数据包。 SP/CP 可以主动 发送应用到点 (Application to Point, 以下简称为 : A2P) 消息给用户, 用户接收到该 A2P 消息后, 会返回该 A2P 消息对应的消息递送报告, ParlayX GW 将该消息递送报告发送给 SP/ CP ; 用户也可以通过 ParlayX GW 主动发送点到应用 (Point to Application, 以下简称为 : P2A) 消息给 SP/CP。
其中, 在 ParlayX GW 向 SP/CP 发送消息递送报告或 P2A 消息时, 可以有两种模式 : 一为 ParlayX GW 主动向 SP/CP 发送的模式 ; 另一为 SP/CP 主动向 ParlayX GW 获取的模式。
在 ParlayX GW 主动向 SP/CP 发送的模式下, ParlayX GW 在接收到用户发送的消 息递送报告或 P2A 消息后, ParlayX GW 主动将该消息递送报告或 P2A 消息发送给 SP/CP ; 如 果 ParlayX GW 在发送消息递送报告或 P2A 消息给 SP/CP 时, 由于网络原因导致消息发送中 断, 则 ParlayX GW 会丢弃当前所发送的消息递送报告或 P2A 消息, 从而导致 SP/CP 无法获 得该消息递送报告或 P2A 消息。
在 SP/CP 主动向 ParlayX GW 获取的模式下, 当 SP/CP 在主动获取消息递送报告或 P2A 消息时, ParlayX GW 去查找先前为该 SP/CP 所缓存的所有消息递送报告或 P2A 消息, 并 获取这些消息递送报告或 P2A 消息, 然后删除缓存中的这些消息递送报告或 P2A 消息, 再将 这些消息递送报告或 P2A 消息发送给 SP/CP, 在发送过程中, 如果由于网络原因导致消息递 送报告或 P2A 消息中途发送失败, 由于 ParlayX GW 中已经删除了这些缓存的消息递送报告 或 P2A 消息, 等网络恢复后, SP/CP 也无法获取上述传送失败的消息递送报告或 P2A 消息。
由上述可知, 当 ParlayX GW 和 SP/CP 之间的网络出现异常时, 现有技术无法保证 在 ParlayX GW 和 SP/CP 之间数据包传送的可靠性, 尤其当重要的消息递送报告或用户发送 的 P2A 消息丢失时, 会导致用户无法使用业务, 从而引起用户对运营商的投诉。
发明内容 本发明实施例提供了一种数据包发送方法、 数据包获取方法及装置, 用以当网关 设备和业务提供商设备之间的网络出现异常时, 保证数据包发送的成功率, 提高在网关设 备和业务提供商设备之间传送数据包的可靠性。
本发明实施例提供一种数据包发送方法, 包括 :
接收用户设备发送的数据包后, 将所述数据包发送给对应的业务提供商设备, 并 在所述数据包发送失败后, 根据重发指示标识将所述数据包存储到重发队列中等待重发。
本发明实施例提供一种数据包获取方法, 包括 :
向网关设备发送重发指示标识, 所述重发指示标识用于指示所述网关设备在向业 务提供商设备发送数据包失败后、 将所述数据包存储到重发队列中等待重发 ;
接收所述网关设备发送的数据包, 并在所述数据包接收失败后, 再接收所述网关 设备根据所述重发指示标识重新发送的所述数据包。
本发明实施例提供另一种数据包发送方法, 包括 :
接收用户设备发送的数据包后, 接收业务提供商设备发送的请求获取所述数据包 的获取请求, 所述获取请求包括用于指示在向所述业务提供商设备返回所述数据包失败 后, 将所述数据包存储到缓存队列中、 并等待根据所述业务提供商设备发送的重新获取请 求返回所述数据包的缓存指示标识 ;
根据所述获取请求向所述业务提供商设备发送所述数据包, 并在所述数据包发送 失败后, 根据所述缓存指示标识将所述数据包存储到缓存队列中等待所述业务提供商设备 的重新获取。
本发明实施例提供另一种数据包获取方法, 包括 :
在网关设备接收到用户设备发送的数据包后, 向所述网关设备发送请求获取所述 数据包的获取请求, 所述获取请求包括用于指示所述网关设备在向业务提供商设备返回所 述数据包失败后, 将所述数据包存储到缓存队列中、 并等待根据所述业务提供商设备发送 的重新获取请求返回所述数据包的缓存指示标识 ;
接收所述网关设备发送的所述数据包, 若所述数据包接收失败, 则向所述网关设 备发送所述重新获取请求, 接收所述网关设备根据所述缓存指示标识重新发送的所述数据 包。
本发明实施例提供一种网关设备, 包括 :
第一接收模块, 用于接收用户设备发送的数据包 ;
第一发送模块, 用于将所述数据包发送给对应的业务提供商设备 ;
第一处理模块, 用于在所述第一发送模块发送所述数据包失败后, 根据重发指示 标识将所述数据包存储到重发队列中等待重发。
本发明实施例提供一种业务提供商设备, 包括 :
标识发送模块, 用于向网关设备发送重发指示标识, 所述重发指示标识用于指示 所述网关设备在向所述业务提供商设备发送数据包失败后、 将所述数据包存储到重发队列 中等待重发 ;
第三接收模块, 用于接收所述网关设备发送的数据包, 并在所述数据包接收失败 后, 再接收所述网关设备根据所述重发指示标识重新发送的所述数据包。
本发明实施例提供另一种网关设备, 包括 :
第二接收模块, 用于接收用户设备发送的数据包后, 接收业务提供商设备发送的 请求获取所述数据包的获取请求, 所述获取请求包括用于指示在向所述业务提供商设备返 回所述数据包失败后, 将所述数据包存储到缓存队列中、 并等待根据所述业务提供商设备 发送的重新获取请求返回所述数据包的缓存指示标识 ;
第二发送模块, 用于根据所述第二接收模块接收到的所述获取请求向所述业务提 供商设备发送所述数据包 ;
第二处理模块, 用于在所述第二发送模块发送所述数据包失败后, 根据所述缓存 指示标识将所述数据包存储到缓存队列中等待所述业务提供商设备的重新获取。
本发明实施例提供另一种业务提供商设备, 包括 :
第四接收模块, 用于接收所述网关设备发送的所述数据包 ;
第一获取模块, 用于在所述网关设备接收到用户设备发送的数据包后, 向所述网 关设备发送请求获取所述数据包的获取请求, 并在所述第四接收模块接收所述数据包失败 后, 向所述网关设备发送重新获取请求 ; 所述获取请求包括用于指示所述网关设备在向所 述第四接收模块返回所述数据包失败后, 将所述数据包存储到缓存队列中、 并等待根据所 述第一获取模块发送的重新获取请求返回所述数据包的缓存指示标识。 本发明实施例提供的数据包发送方法、 数据包获取方法及装置, 网关设备在向业 务提供商设备发送数据包发生失败后, 可以根据预先设置的重发指示标识或缓存指示标 识, 将发送失败的数据包进行缓存, 并进行重发以保证数据包发送的成功率, 提高网关设备 和业务提供商设备之间数据包传送的可靠性, 提高了业务服务质量。
附图说明
图 1 为本发明数据包发送方法实施例一的步骤流程图 ; 图 2 为本发明数据包获取方法实施例一的步骤流程图 ; 图 3 为本发明消息递送报告传送方法实施例一的信令流程图 ; 图 4 为本发明第二业务消息传送方法实施例一的信令流程图 ; 图 5 为本发明数据包发送方法实施例二的步骤流程图 ; 图 6 为本发明数据包获取方法实施例二的步骤流程图 ; 图 7 为本发明消息递送报告传送方法实施例二的信令流程图 ; 图 8 为本发明第二业务消息传送方法实施例二的信令流程图 ; 图 9 为本发明网关设备实施例一的结构示意图 ; 图 10 为本发明网关设备实施例二的结构示意图 ; 图 11 为本发明业务提供商设备实施例一的结构示意图 ; 图 12 为本发明网关设备实施例三的结构示意图 ; 图 13 为本发明网关设备实施例四的结构示意图 ; 图 14 为本发明业务提供商设备实施例二的结构示意图。具体实施方式
下面结合附图和具体实施例进一步说明本发明实施例的技术方案。在网络系统中, 业务提供商设备与用户设备之间可以通过网关设备相互发送数据 包。例如 : SP/CP 与用户设备之间发送数据可以分为以下两种场景 : 一为 SP/CP 主动发送 A2P 消息给用户设备 ; 二为用户设备主动发送 P2A 消息给 SP/CP。其中, 本发明实施例中的 业务提供商设备可以表示服务提供商 (Service Provider, 简称为 : SP), 也可以表示内容提 供商 (Content Provider, 简称为 : CP), 本发明实施例中将业务提供商设备表示为 SP/CP ; 本发明实施例中的网关设备以 ParlayX GW 为例进行说明, 但是并不限于 ParlayX GW ; 本发 明实施例中的第一业务消息以 A2P 消息为例进行说明, 第二业务消息以 P2A 消息为例进行 说明。
ParlayX GW 向 SP/CP 发送数据包的模式, 可以分为以下两种 : 一为 ParlayX GW 主 动向 SP/CP 发送数据包的模式 ; 另一为 SP/CP 主动向 ParlayXGW 获取数据包的模式。
ParlayX GW 主动向 SP/CP 发送数据包的模式 :
在 SP/CP 主动发送 A2P 消息给用户设备的场景中, 用户设备接收到该 A2P 消息后, 会将该 A2P 消息对应的消息递送报告 (delivery report) 返回给 ParlayX GW, ParlayX GW 主动将该消息递送报告发送给 SP/CP ;
在用户设备主动发送 P2A 消息给 SP/CP 的场景中, ParlayX GW 将接收到的用户设 备发送的 P2A 消息, 主动发送给 SP/CP。
SP/CP 主动向 ParlayX GW 获取数据包的模式 :
在 SP/CP 主动发送 A2P 消息给用户设备的场景中, 用户设备接收到该 A2P 消息后, 会将该 A2P 消息对应的消息递送报告返回给 ParlayX GW, ParlayX GW 等待 SP/CP 发出主动 获取该消息递送报告的获取请求后, 将该消息递送报告发送给 SP/CP ;
在用户设备主动发送 P2A 消息给 SP/CP 的场景中, ParlayX GW 接收到用户设备发 送的 P2A 消息后, 等待 SP/CP 发出主动获取该 P2A 消息的获取请求后, 将该 P2A 消息发送给 SP/CP。
图 1 为本发明数据包发送方法实施例一的步骤流程图, 本实施例描述的数据包发 送方法是在 ParlayX GW 主动向 SP/CP 发送数据包的模式下, 以 ParlayX GW 为主体, 向 SP/ CP 发送数据包的方法。如图 1 所示, 该方法实施例包括 :
步骤 101、 接收用户设备发送的数据包。
ParlayX GW 接收到用户设备发送的数据包 ; 其中, 在 SP/CP 主动发送 A2P 消息给 用户设备的场景中, 该数据包可以为用户设备通过网元设备发送的消息递送报告, 该消息 递送报告与 SP/CP 向用户设备发送的 A2P 消息对应 ; 在用户设备主动发送 P2A 消息给 SP/ CP 的场景中, 该数据包可以为用户设备通过网元设备发送给 SP/CP 的 P2A 消息。
步骤 102、 将数据包发送给对应的 SP/CP。
ParlayX GW 根据 SP/CP 注册的通知地址向 SP/CP 发送数据包。该 SP/CP 的通知地 址, 可以是在 SP/CP 发送的 A2P 消息中携带的, 也可以是 SP/CP 在进行数据包传送之前, 在 ParlayX GW 中注册的。
步骤 103、 在步骤 102 中的数据包发送失败后, 根据重发指示标识将该数据包存储 到重发队列中等待重发。
其 中, ParlayX GW 通 过 TCP 服 务 器 与 SP/CP 进 行 数 据 传 送, 当 SP/CP 接 收 到 ParlayX GW 发送的数据包后, SP/CP 或 TCP 服务器会向 ParlayX GW 返回发送成功的响应 ; 若SP/CP 接收数据包发生失败时, SP/CP 或 TCP 服务器会向 ParlayX GW 返回发送失败的响应, 或者 SP/CP 或 TCP 服务器不向 ParlayX GW 返回响应。当 ParlayX GW 接收到 SP/CP 或 TCP 服务器返回的发送失败的响应时, 或者当 ParlayX GW 在一定的时间内没有收到 SP/CP 或 TCP 服务器返回的响应时, ParlayX GW 判断出该数据包发送失败, 然后 ParlayXGW 根据重发 指示标识将该数据包存储到重发队列中等待重发, 当到达预设的重发时间间隔后, ParlayX GW 将存储在重发队列中的数据包重新发送给 SP/CP。
该重发指示标识可以由 SP/CP 预先设置在 A2P 消息中, 通过向 ParlayXGW 发送 A2P 消息, 将重发指示标识发送给 ParlayX GW ; 该重发指示标识也可以由 SP/CP 预先设置 在 SP/CP 的通知地址中, 通过向 ParlayX GW 注册 SP/CP 的通知地址, 将重发指示标识发送 给 ParlayX GW ; 该重发指示标识还可以是预先在 ParlayX GW 中设置的。 该重发指示标识表 示, 当 ParlayX GW 向 SP/CP 发送数据包失败后, ParlayX GW 需要将发送失败的数据包进行 存储, 并且重新发送该数据包, 以保证 ParlayX GW 和 SP/CP 之间数据包传送的可靠性。当 ParlayX GW 接收到重发指示标识后, 会根据重发指示标识对发送失败的数据包进行重发。
本发明实施例提供的数据包发送方法, 网关设备在向业务提供商设备发送数据包 发生失败后, 可以根据预先设置的重发指示标识, 将发送失败的数据包进行缓存, 并进行重 发以保证数据包发送的成功率, 提高网关设备和业务提供商设备之间数据包传送的可靠 性, 提高了业务服务质量。 图 2 为本发明数据包获取方法实施例一的步骤流程图, 本实施例描述的数据包获 取方法是在 ParlayX GW 主动向 SP/CP 发送数据包的模式下, 以 SP/CP 为主体, 向 ParlayX GW 获取数据包的方法。如图 2 所示, 该方法实施例包括 :
步骤 201、 向 ParlayX GW 发送重发指示标识, 该重发指示标识用于指示 ParlayX GW 在向 SP/CP 发送数据包失败后、 将该数据包存储到重发队列中等待重发。
其中, 该重发指示标识可以由 SP/CP 预先设置在 A2P 消息中, SP/CP 通过向 ParlayX GW 发送 A2P 消息, 将重发指示标识发送给 ParlayX GW ; 该重发指示标识也可以由 SP/CP 预 先设置在 SP/CP 的通知地址中, SP/CP 通过向 ParlayX GW 注册 SP/CP 的通知地址, 将重发 指示标识发送给 ParlayX GW。
该重发指示标识表示, 当 SP/CP 从 ParlayX GW 接收数据包失败后, ParlayX GW 需 要将发送失败的数据包进行存储, 并且重新发送该数据包, 以使 SP/CP 能重新接收数据包, 保证 ParlayX GW 和 SP/CP 之间数据包传送的可靠性 ; 当 ParlayX GW 接收到重发指示标识 后, 会根据重发指示标识对发送失败的数据包进行重发。
步骤 202、 接收 ParlayX GW 发送的数据包。
SP/CP 接收 ParlayX GW 发送的数据包, 该数据包是 ParlayX GW 从用户设备接收到 后, 主动发送给 SP/CP 的 ; 其中, 在 SP/CP 主动发送 A2P 消息给用户设备的场景中, 该数据包 可以为用户设备通过网元设备发送的消息递送报告, 该消息递送报告与 SP/CP 向用户设备 发送的 A2P 消息对应 ; 在用户设备主动发送 P2A 消息给 SP/CP 的场景中, 该数据包可以为用 户设备通过网元设备发送给 SP/CP 的 P2A 消息。
步骤 203、 在步骤 202 中的数据包接收失败后, 再接收 ParlayX GW 根据重发指示标 识重新发送的数据包。
其中, 当 ParlayX GW 接收到 SP/CP 或 TCP 服务器返回的发送失败的响应时, 或者
当 ParlayX GW 在一定的时间内没有收到 SP/CP 或 TCP 服务器返回的响应时, ParlayX GW 判 断出 SP/CP 接收该数据包发生失败, 然后 ParlayXGW 根据重发指示标识向 SP/CP 重新发送 该数据包, 以使 SP/CP 在数据包接收失败后, 可以重新接收到 ParlayX GW 根据重发指示标 识重新发送的该数据包。
本发明实施例提供的数据包获取方法, 业务提供商设备在接收网关设备发送的数 据包发生失败后, 可以重新接收网关设备根据预先设置的重发指示标识重新发送的数据 包, 以保证数据包接收的成功率, 提高网关设备和业务提供商设备之间数据包传送的可靠 性, 提高了业务服务质量。
下面根据 SP/CP 与用户设备之间传送消息的不同场景, 分别描述数据包在网关设 备和业务提供商设备之间的传送过程。
图 3 为本发明消息递送报告传送方法实施例一的信令流程图, 本实施例描述的消 息递送报告传送方法是在 ParlayX GW 主动向 SP/CP 发送数据包的模式下, SP/CP 主动发送 A2P 消息给用户设备的场景中, 消息递送报告在 ParlayX GW 与 SP/CP 之间传送的过程。如 图 3 所示, 该方法包括 :
步 骤 301、 SP/CP 调 用 ParlayX GW 中 的 发 送 短 信 (“SendSms” )或彩信 (“SendMessage” ) 等接口, 主动将 A2P 消息发送到 ParlayX GW。 该 A2P 消息中包括返回指示标识和重发指示标识。该返回指示标识用于指示 ParlayX GW 将接收的用户设备返回的消息递送报告主动返回给 SP/CP ; 例如 : 本实施例中 该返回指示标识可以为 “receiptRequest” 参数, 其中, “receiptRequest” 参数包括 SP/CP 的通知地址。 “receiptRequest” 参数表示, 当用户设备通过网元设备返回 A2P 消息对应的 消息递送报告时, ParlayX GW 需要根据 “receiptRequest” 参数中的 SP/CP 的通知地址, 主 动将该消息递送报告发送给 SP/CP。该重发指示标识用于指示 ParlayX GW 在向 SP/CP 返 回该消息递送报告失败后, 将该消息递送报告存储到重发队列中等待重发 ; 重发指示标识 可以包括以下参数中的任意一个或其组合 : 最大发送次数、 重发间隔时间和最大缓存时间。 该 A2P 消息可以为 SP/CP 发送给用户设备的 A2P 消息。
步骤 302、 ParlayX GW 进行业务逻辑处理, 然后通过网元设备 ( 图中未示出 ) 将 SP/CP 发送的 A2P 消息发送给用户设备。网元设备可以为 SMSC、 MMSC 或 WAPGW 等, ParlayX GW 可以通过网元设备向用户设备发送数据, 用户设备也可以通过网元设备向 ParlayX GW 发送数据, 本实施例中以 SMSC/MMSC 来表示网元设备。
步 骤 303、 用 户 设 备 通 过 SMSC/MMSC, 将 A2P 消 息 对 应 的 消 息 递 送 报 告 发 送 给 ParlayX GW。
步骤 304、 ParlayX GW 根据 A2P 消息中的返回指示标识, 判断出需要主动将消息递 送报告发送给 SP/CP, 然后 ParlayX GW 根据 SP/CP 的通知地址, 将消息递送报告发送给 SP/ CP。
步骤 305、 在 ParlayX GW 发送给 SP/CP 的消息递送报告发送失败时, ParlayX GW 根据重发指示标识, 把发送失败的消息递送报告存储到重发队列中等待重发。
其中, 当 ParlayX GW 接收到 SP/CP 或 TCP 服务器返回的发送失败的响应时, 或者 当 ParlayX GW 在一定的时间内没有收到 SP/CP 或 TCP 服务器返回的响应时, ParlayX GW 判 断出该数据包发送失败。
步骤 306、 当到达了重发指示标识中设定的重发间隔时间后, ParlayX GW 将存储在 重发队列中的消息递送报告重新发送给 SP/CP, 直到该消息递送报告发送成功。例如 : 重发 间隔时间设定为 5 秒, 则在消息递送报告发送失败 5 秒后, ParlayX GW 重新发送该消息递 送报告。
在本实施例中, 当 ParlayX GW 发送给 SP/CP 的消息递送报告发送成功后, 该消息 递送报告传送流程结束。
其中, 在本发明实施例中, 还可以包括以下操作步骤 :
在重发消息递送报告成功后, 或重发次数达到最大发送次数后, 或重发时间达到 最大缓存时间后, 或者上述任意情况的组合同时满足后, ParlayX GW 删除重发队列中存储 的该消息递送报告。 最大发送次数和最大缓存时间可以是在重发指示标识中包含的 ; 例如 : 最大发送次数为 10 次, 最大缓存时间为 24 小时 ; 则在向 SP/CP 重发过 10 次后, 或者该消息 递送报告已经在重发队列中存储了 24 小时后, ParlayX GW 将该消息递送报告删除。
若重发队列中存储的消息递送报告的数量达到阈值, 则 ParlayX GW 将重发队列中 的消息递送报告从重发队列持久化存储到存储设备中, 或 ParlayXGW 删除重发队列中的部 分或全部消息递送报告。在 ParlayX GW 删除重发队列中的部分消息递送报告时, 可以根据 消息递送报告存储到重发队列的时间顺序来删除, 例如 : 将最先存储到重发队列中的一部 分消息递送报告删除。 本发明实施例提供的消息递送报告传送方法, 网关设备在向业务提供商设备发送 消息递送报告发生失败后, 可以根据预先设置的重发指示标识, 将发送失败的消息递送报 告进行缓存, 并进行重发以保证消息递送报告发送的成功率, 提高网关设备和业务提供商 设备之间消息递送报告传送的可靠性, 提高了业务服务质量。
图 4 为本发明第二业务消息传送方法实施例一的信令流程图, 本实施例描述的第 二业务消息传送方法是在 ParlayX GW 主动向 SP/CP 发送数据包的模式下, 用户设备主动发 送 P2A 消息给 SP/CP 的场景中, P2A 消息在 ParlayXGW 与 SP/CP 之间传送的过程。如图 4 所 示, 该方法包括 :
步 骤 401、 SP/CP 调 用 ParlayX GW 的 通 知 管 理 接 口, 注 册 SP/CP 的 通 知 地 址 ( 例如 : 短信的通知管理接口是 : “SmsNotificationManager” , 彩信的通知管理接口是 : “MessageNotificationManager” ), 并且向 ParlayX GW 发送重发指示标识。SP/CP 预先向 ParlayX GW 注册 SP/CP 的通知地址, 就表示, 当 ParlayX GW 收到用户设备通过 SMSC/MMSC 发送的 P2A 消息时, ParlayXGW 需要主动将该 P2A 消息发送给 SP/CP。
该重发指示标识用于指示 ParlayX GW 在向 SP/CP 发送 P2A 消息失败后, 将 P2A 消 息存储到重发队列中等待重发。重发指示标识可以包括以下参数中的任意一个或其组合 : 最大发送次数、 重发间隔时间和最大缓存时间。
ParlayX GW 接收到 SP/CP 的通知地址时获知, 当接收到用户设备发送的 P2A 消息 时, ParlayX GW 要主动将该 P2A 消息发送给 SP/CP。
步骤 402、 用户设备通过 SMSC/MMSC( 图中未示出 ), 将 P2A 消息发送给 ParlayX GW。
步骤 403、 ParlayX GW 进行逻辑处理, 即根据 SP/CP 预先注册的 SP/CP 的通知地址 可知, 需要主动将 P2A 消息发送给 SP/CP, 然后 ParlayX GW 根据 SP/CP 的通知地址, 将 P2A
消息发送给 SP/CP。
步骤 404、 在 ParlayX GW 发送给 SP/CP 的 P2A 消息发送失败时, ParlayX
GW 根据重发指示标识, 把发送失败的 P2A 消息存储到重发队列中等待重发。
其中, 当 ParlayX GW 接收到 SP/CP 或 TCP 服务器返回的发送失败的响应时, 或者 当 ParlayX GW 在一定的时间内没有收到 SP/CP 或 TCP 服务器返回的响应时, ParlayX GW 判 断出该数据包发送失败。
步骤 405、 当到达了重发指示标识中设定的重发间隔时间后, ParlayX GW 将存储 在重发队列中的 P2A 消息重新发送给 SP/CP, 直到该 P2A 消息发送成功。例如 : 重发间隔时 间设定为 5 秒, 则在 ParlayX GW 判断出 P2A 消息发送失败 5 秒后, ParlayX GW 重新发送该 P2A 消息。
在本实施例中, 当 ParlayX GW 发送给 SP/CP 的 P2A 消息发送成功后, 该 P2A 消息 传送流程结束。
其中, 在本发明实施例中, 还可以包括以下操作步骤 :
在重发 P2A 消息成功后, 或重发次数达到最大发送次数后, 或重发时间达到最大 缓存时间后, 或者上述任意情况的组合同时满足后, ParlayX GW 删除重发队列中存储的该 P2A 消息。 最大发送次数和最大缓存时间可以是在重发指示标识中包含的 ; 例如 : 最大发送 次数为 10 次, 最大缓存时间为 24 小时 ; 则在向 SP/CP 重发过 10 次后, 或者该 P2A 消息已经 在重发队列中存储了 24 小时后, ParlayX GW 将该 P2A 消息删除。
若重发队列中存储的 P2A 消息的数量达到阈值, 则 ParlayX GW 将重发队列中的 P2A 消息从重发队列持久化存储到存储设备中, 或 ParlayX GW 删除重发队列中的部分或全 部 P2A 消息。在 ParlayX GW 删除重发队列中的部分 P2A 消息时, 可以根据 P2A 消息存储到 重发队列的时间顺序来删除, 例如 : 将最先存储到重发队列中的一部分 P2A 消息删除。
本发明实施例提供的第二业务消息传送方法, 网关设备在向业务提供商设备发送 第二业务消息发生失败后, 可以根据预先设置的重发指示标识, 将发送失败的第二业务消 息进行缓存, 并进行重发以保证第二业务消息发送的成功率, 提高网关设备和业务提供商 设备之间第二业务消息传送的可靠性, 提高了业务服务质量。
图 5 为本发明数据包发送方法实施例二的步骤流程图, 本实施例描述的数据包发 送方法是在 SP/CP 主动向 ParlayX GW 获取数据包的模式下, 以 ParlayX GW 为主体, 向 SP/ CP 发送数据包的方法。如图 5 所示, 该方法实施例包括 :
步骤 501、 接收用户设备发送的数据包。
ParlayX GW 接收到用户设备发送的数据包 ; 其中, 在 SP/CP 主动发送 A2P 消息给用 户设备的场景中, 该数据包可以为用户设备通过 SMSC/MMSC 发送的消息递送报告, 该消息 递送报告与 SP/CP 向用户设备发送的 A2P 消息对应 ; 在用户设备主动发送 P2A 消息给 SP/ CP 的场景中, 该数据包可以为用户设备通过 SMSC/MMSC 发送给 SP/CP 的 P2A 消息。
步骤 502、 接收 SP/CP 发送的请求获取该数据包的获取请求。
ParlayX GW 接收 SP/CP 发送获取请求, 该获取请求用于请求获取 ParlayXGW 接收 到的用户设备发送的数据包。该获取请求中可以包括缓存指示标识, 该缓存指示标识可以 由 SP/CP 预先设置在 SP/CP 向 ParlayX GW 发送的获取请求中, 通过向 ParlayX GW 发送获 取请求, 将缓存指示标识发送给 ParlayXGW ; 该缓存指示标识还可以是预先在 ParlayX GW中设置的。该缓存指示标识表示, 当 ParlayX GW 向 SP/CP 发送数据包失败后, ParlayX GW 需要将发送失败的数据包存储到缓存队列中, 以等待 SP/CP 的重新获取, 用以保证 ParlayX GW 和 SP/CP 之间数据包传送的可靠性。
步骤 503、 根据获取请求向 SP/CP 发送数据包。
ParlayX GW 根据 SP/CP 发送的获取请求向 SP/CP 发送数据包。
步骤 504、 在步骤 503 中的数据包发送失败后, 根据缓存指示标识将该数据包存储 到缓存队列中等待 SP/CP 的重新获取。
其中, 判断数据包发送失败的流程参见本发明数据包发送方法实施例一中的描 述, 在此不再赘述。 在步骤 503 中的数据包发送失败后, ParlayX GW 根据缓存指示标识将该 数据包存储到缓存队列中等待 SP/CP 的重新获取, 当 SP/CP 重新发送获取请求时, ParlayX GW 将存储在缓存队列中的数据包重新发送给 SP/CP。
本发明实施例提供的数据包发送方法, 网关设备在向业务提供商设备发送数据包 发生失败后, 可以根据预先设置的缓存指示标识, 将发送失败的数据包存储到缓存队列中, 等待当业务提供商设备重新获取时进行重发, 以保证数据包发送的成功率, 提高网关设备 和业务提供商设备之间数据包传送的可靠性, 提高了业务服务质量。
图 6 为本发明数据包获取方法实施例二的步骤流程图, 本实施例描述的数据包 获取方法是在 SP/CP 主动向 ParlayX GW 获取数据包的模式下, 以 SP/CP 为主体, 主动向 ParlayX GW 获取数据包的方法。如图 6 所示, 该方法实施例包括 :
步骤 601、 在 ParlayX GW 接收到用户设备发送的数据包后, 向 ParlayXGW 发送请求 获取该数据包的获取请求。
其中, 在 SP/CP 主动发送 A2P 消息给用户设备的场景中, 该数据包可以为用户设备 通过 SMSC/MMSC 发送的消息递送报告, 该消息递送报告与 SP/CP 向用户设备发送的 A2P 消 息对应 ; 在用户设备主动发送 P2A 消息给 SP/CP 的场景中, 该数据包可以为用户设备通过 SMSC/MMSC 发送给 SP/CP 的 P2A 消息。
SP/CP 向 ParlayX GW 发送请求获取数据包的获取请求可以分为以下两种情况 : 一、 在 SP/CP 主动发送 A2P 消息给用户设备的场景中, 当 SP/CP 通过 ParlayX GW 向用户设 备发送一个 A2P 消息时, ParlayX GW 会返回一个消息 ID 给 SP/CP, SP/CP 可以用该消息 ID 来主动获取该 A2P 消息对应的消息递送报告 ; 二、 在用户设备主动发送 P2A 消息给 SP/CP 的 场景中, SP/CP 可以定期向 ParlayX GW 发送轮询消息, 该消息中携带该 SP/CP 的接入码, 以 向 ParlayX GW 获取用户设备发送的 P2A 消息。
该获取请求中可以包括缓存指示标识, 该缓存指示标识可以由 SP/CP 预先设置在 SP/CP 向 ParlayX GW 发送的获取请求中, 通过向 ParlayX GW 发送获取请求, 将缓存指示标 识发送给 ParlayX GW ; 该缓存指示标识还可以是预先在 ParlayX GW 中设置的。该缓存指 示标识表示, 当 ParlayX GW 向 SP/CP 发送数据包失败后, ParlayX GW 需要将发送失败的数 据包存储到缓存队列中, 以等待 SP/CP 的重新获取, 用以保证 ParlayX GW 和 SP/CP 之间数 据包传送的可靠性。
步骤 602、 接收 ParlayX GW 发送的数据包。
SP/CP 接收 ParlayX GW 根据获取请求发送的数据包。
步骤 603、 在步骤 602 中的数据包接收失败后, 向 ParlayX GW 发送重新获取请求。其中, 判断数据包接收失败的流程参见本发明数据包获取方法实施例一中的描 述, 在此不再赘述。在步骤 602 中的数据包接收失败后, SP/CP 向 ParlayX GW 发送重新获 取请求。
步骤 604、 接收 ParlayX GW 根据缓存指示标识重新发送的数据包。
SP/CP 重新接收 ParlayX GW 根据缓存指示标识和重新获取请求重新发送的数据 包。
本发明实施例提供的数据包获取方法, 业务提供商设备在接收网关设备发送的数 据包发生失败后, 可以重新请求获取网关设备根据预先设置的缓存指示标识存储的发送失 败的数据包, 以保证数据包接收的成功率, 提高网关设备和业务提供商设备之间数据包传 送的可靠性, 提高了业务服务质量。
下面根据 SP/CP 与用户设备之间传送消息的不同场景, 分别描述数据包在网关设 备和业务提供商设备之间的传送过程。
图 7 为本发明消息递送报告传送方法实施例二的信令流程图, 本实施例描述的消 息递送报告传送方法是在 SP/CP 主动向 ParlayX GW 获取数据包的模式下, SP/CP 主动发送 A2P 消息给用户设备的场景中, 消息递送报告在 ParlayX GW 与 SP/CP 之间传送的过程。如 图 7 所示, 该方法包括 : 步 骤 701、 SP/CP 调 用 ParlayX GW 中 的 发 送 短 信 (“SendSms” )或彩信 (“SendMessage” ) 等接口, 将 A2P 消息发送到 ParlayX GW。
A2P 消息中没有携带返回指示标识 (“receiptRequest” 参数 ), 即当 ParlayXGW 检测到 A2P 消息中没有携带 “receiptRequest” 参数时, 就判断出 SP/CP 会主动获取该 A2P 消息对应的消息递送报告。
步骤 702、 ParlayX GW 进行逻辑处理, 然后通过 SMSC/MMSC( 图中未示出 ), 将 SP/ CP 发送的 A2P 消息发送给用户设备。
步 骤 703、 用 户 设 备 通 过 SMSC/MMSC, 将 A2P 消 息 对 应 的 消 息 递 送 报 告 发 送 给 ParlayX GW。
步骤 704、 ParlayX GW 根据 A2P 消息中没有携带返回指示标识, 判断出需要将该消 息递送报告进行缓存, 以等待 SP/CP 主动来获取 ; 然后 ParlayX GW 将接收到的消息递送报 告进行缓存, 等待 SP/CP 的主动获取。
步 骤 705、 SP/CP 主 动 向 ParlayX GW 发 送 携 带 业 务 提 供 商 的 通 知 地 址 的 获 取 请 求, 即 SP/CP 调 用 ParlayX GW 的 获 取 递 送 报 告 方 法 来 获 取 业 务 提 供 商 所 发 的 A2P 消息对应的递送报告, 例如 : ParlayX 2.1 协议中所定义的短信递送获取方法是 : “getSmsDeliveryStatus” , 彩信递送报告获取方法是 : “getMessageDeliveryStatus” 。
该获取请求包括缓存指示标识, 该缓存指示标识用于指示 ParlayX GW 在向 SP/CP 返回消息递送报告失败后, 将该消息递送报告存储到缓存队列中、 并等待根据 SP/CP 发送 的重新获取请求返回该消息递送报告。
该缓存指示标识包括最大缓存时间和 / 或允许获取次数。
步骤 706、 ParlayX GW 根据获取请求中的 SP/CP 的通知地址, 将缓存的消息递送报 告发送给 SP/CP。
步骤 707、 在 ParlayX GW 发送给 SP/CP 的消息递送报告发送失败时, ParlayX GW 根
据缓存指示标识, 把发送失败的消息递送报告存储到缓存队列中等待 SP/CP 的重新获取。
其中, 当 ParlayX GW 接收到 SP/CP 或 TCP 服务器返回的发送失败的响应时, 或者 当 ParlayX GW 在一定的时间内没有收到 SP/CP 或 TCP 服务器返回的响应时, ParlayX GW 判 断出该数据包发送失败。
步骤 708、 SP/CP 发送重新获取请求。
步骤 709、 ParlayX GW 根据 SP/CP 发送的重新获取请求, 从缓存队列中提取该消息 递送报告, 并根据 SP/CP 的通知地址, 将该消息递送报告发送给 SP/CP, 直到该消息递送报 告发送成功。
在本实施例中, 当 ParlayX GW 发送给 SP/CP 的消息递送报告发送成功后, 该消息 递送报告传送流程结束。
其中, 在本发明实施例中, 还可以包括以下操作步骤 : 在重发消息递送报告成功 后, 或到达最大缓存时间后, 或到达允许获取次数后, 或者上述任意情况的组合同时满足 后, ParlayX GW 删除缓存队列中存储的该消息递送报告。最大缓存时间和允许获取次数可 以是在缓存指示标识中包含的 ; 例如 : 最大缓存时间为 24 小时, 允许获取次数为 10 次 ; 则 在该消息递送报告已经在重发队列中存储了 24 小时后, 或者 SP/CP 已经发送过 10 次获取 请求后, ParlayX GW 将该消息递送报告删除。 若缓存队列中存储的消息递送报告的数量达到阈值, 则 ParlayX GW 将缓存队列中 的消息递送报告从缓存队列持久化存储到存储设备中, 或 ParlayXGW 删除缓存队列中的部 分或全部消息递送报告。在 ParlayX GW 删除缓存队列中的部分消息递送报告时, 可以根据 消息递送报告存储到缓存队列的时间顺序来删除, 例如 : 将最先存储到缓存队列中的一部 分消息递送报告删除。
本发明实施例提供的消息递送报告传送方法, 网关设备在向业务提供商设备发送 消息递送报告发生失败后, 可以根据预先设置的缓存指示标识, 将发送失败的消息递送报 告存储到缓存队列中, 等待当业务提供商设备重新获取时进行重发, 以保证消息递送报告 发送的成功率, 提高网关设备和业务提供商设备之间消息递送报告传送的可靠性。
图 8 为本发明第二业务消息传送方法实施例二的信令流程图, 本实施例描述的第 二业务消息传送方法是在 SP/CP 主动向 ParlayX GW 获取数据包的模式下, 用户设备主动发 送 P2A 消息给 SP/CP 的场景中, P2A 消息在 ParlayXGW 与 SP/CP 之间传送的过程。如图 8 所 示, 该方法包括 :
步骤 801、 用户设备通过 SMSC/MMSC( 图中未示出 ), 将 P2A 消息发送给 SP/CP。
步骤 802、 ParlayX GW 将接收到的 P2A 消息进行缓存。
由于 SP/CP 预先没有在 ParlayX GW 注册 SP/CP 的通知地址, ParlayX GW 可以判 断出 SP/CP 会主动获取该 P2A 消息, 于是在接收到 P2A 消息后, ParlayXGW 将该 P2A 消息进 行缓存, 等待 SP/CP 的主动获取。
步 骤 803、 SP/CP 主 动 向 ParlayX GW 发 送 携 带 SP/CP 的 通 知 地 址 的 获 取 请 求, 即 SP/CP 调 用 ParlayX GW 对 应 的 消 息 的 获 取 方 法 获 取 用 户 所 发 的 消 息, 如: ParlayX 2.1 协 议 中 定 义 的 短 信 获 取 方 法 是 : “getReceivedSms” , 彩信获取方法是 : “getReceivedMessages” 。
该获取请求还包括缓存指示标识, 该缓存指示标识用于指示 ParlayX GW 在向 SP/
CP 返回 P2A 消息失败后, 将该 P2A 消息存储到缓存队列中、 并等待根据 SP/CP 发送的重新获 取请求返回 P2A 消息。
该缓存指示标识包括最大缓存时间和 / 或允许获取次数。
步骤 804、 ParlayX GW 根据获取请求中的 SP/CP 的通知地址, 将缓存的 P2A 消息发 送给 SP/CP。
步骤 805、 在 ParlayX GW 发送给 SP/CP 的 P2A 消息发送失败时, ParlayX
GW 根据缓存指示标识, 把发送失败的 P2A 消息存储到缓存队列中等待 SP/CP 的重 新获取。
其中, 当 ParlayX GW 接收到 SP/CP 或 TCP 服务器返回的发送失败的响应时, 或者 当 ParlayX GW 在一定的时间内没有收到 SP/CP 或 TCP 服务器返回的响应时, ParlayX GW 判 断出该数据包发送失败,
步骤 806、 SP/CP 发送重新获取请求。
步骤 807、 ParlayX GW 根据 SP/CP 发送的重新获取请求, 从缓存队列中提取该 P2A 消息, 并根据 SP/CP 的通知地址, 将该 P2A 消息发送给 SP/CP, 直到该 P2A 消息发送成功。
在本实施例中, 当 ParlayX GW 发送给 SP/CP 的 P2A 消息发送成功后, 该 P2A 消息 传送流程结束。
其中, 在本发明实施例中, 还可以包括以下操作步骤 :
在重发 P2A 消息成功后, 或到达最大缓存时间后, 或到达允许获取次数后, 或者上 述任意情况的组合同时满足后, ParlayX GW 删除缓存队列中存储的该 P2A 消息。最大缓存 时间和允许获取次数可以是在缓存指示标识中包含的 ; 例如 : 最大缓存时间为 24 小时, 允 许获取次数为 10 次 ; 则在该 P2A 消息已经在重发队列中存储了 24 小时后, 或者 SP/CP 已经 发送过 10 次获取请求后, ParlayX GW 将该 P2A 消息删除。
若缓存队列中存储的 P2A 消息的数量达到阈值, 则 ParlayX GW 将缓存队列中的 P2A 消息从缓存队列持久化存储到存储设备中, 或 ParlayX GW 删除缓存队列中的部分或全 部 P2A 消息。在 ParlayX GW 删除缓存队列中的部分 P2A 消息时, 可以根据 P2A 消息存储到 缓存队列的时间顺序来删除, 例如 : 将最先存储到缓存队列中的一部分 P2A 消息删除。
本发明实施例提供的第二业务消息传送方法, 网关设备在向业务提供商设备发送 第二业务消息发生失败后, 可以根据预先设置的缓存指示标识, 将发送失败的第二业务消 息存储到缓存队列中, 等待当业务提供商设备重新获取时进行重发, 以保证第二业务消息 发送的成功率, 提高网关设备和业务提供商设备之间第二业务消息传送的可靠性。
需要说明的是 : 在本发明提供的各个实施例中, 通过设置重发指示标识或缓存指 示标识, 可以在 ParlayX GW 和 SP/CP 之间数据包传送失败时进行重发或缓存, 保证了数据 包的可靠传送 ; 由此用户可以根据需求, 对不同重要性的数据包采取不同的措施, 例如 : 对 一些比较重要的数据包, 通过重发指示标识或缓存指示标识设置传送过程中的重发或缓存 功能, 并且根据数据包的重要程度不同, 设置不同的重发次数或最大缓存时间 ; 而对一些不 重要的数据包, 则不设置传送过程中的重发或缓存功能, 从而在提高 ParlayX GW 和 SP/CP 之间数据包传输可靠性的同时, 也尽量减少重发或缓存对 ParlayXGW 性能的影响。
本领域普通技术人员可以理解 : 实现上述方法实施例的全部或部分步骤可以通过 程序指令相关的硬件来完成, 前述的程序可以存储于一计算机可读取存储介质中, 该程序在执行时, 执行包括上述方法实施例的步骤 ; 而前述的存储介质包括 : ROM、 RAM、 磁碟或者 光盘等各种可以存储程序代码的介质。
图 9 为本发明网关设备实施例一的结构示意图, 如图 9 所示, 该网关设备包括 : 第 一接收模块 91, 第一发送模块 93 和第一处理模块 95。
第一接收模块 91 用于接收用户设备发送的数据包。第一发送模块 93 用于将数据 包发送给对应的业务提供商设备。第一处理模块 95 用于在第一发送模块 93 发送数据包失 败后, 根据重发指示标识将该数据包存储到重发队列中等待重发。
第一接收模块 91 接收到用户设备发送的数据包 ; 第一发送模块 93 根据 SP/CP 注 册的通知地址, 将第一接收模块 91 接收到的用户设备发送的数据包, 发送给对应的 SP/CP ; 在第一发送模块 93 向 SP/CP 发送数据包发生失败时, 第一处理模块 95 根据重发指示标识 将发送失败的数据包存储在重发队列中, 当到达预设的重发时间间隔后, 第一处理模块 95 重新将该数据包发送给 SP/CP。
本发明网关设备实施例中各个模块的工作原理和工作流程参见本发明图 1 到图 4 所示实施例中的描述, 在此不再赘述。
本发明实施例提供的网关设备, 在向业务提供商设备发送数据包发生失败后, 可 以根据预先设置的重发指示标识, 将发送失败的数据包进行缓存, 并进行重发以保证数据 包发送的成功率, 提高网关设备和业务提供商设备之间数据包传送的可靠性, 提高了业务 服务质量。
图 10 为本发明网关设备实施例二的结构示意图, 如图 10 所示, 在本发明网关设备 实施例一的基础上, 该网关设备除了包括第一接收模块 91、 第一发送模块 93 和第一处理模 块 95 以外, 还包括第一删除模块 97 和第一持久化存储模块 99。
具体的, 第一处理模块 95 可以包括 : 消息重发队列 951 和重发控制子模块 953。 消 息重发队列 951 用于在数据包发送失败后, 缓存该数据包。重发控制子模块 953 用于根据 重发指示标识对消息重发队列 951 中的数据包进行重发控制。其中重发指示标识可以包括 以下参数中的任意一个或其组合 : 最大发送次数、 重发间隔时间和最大缓存时间。
在第一发送模块 93 向 SP/CP 发送数据包发生失败后, 消息重发队列 951 根据重发 指示标识存储发送失败的数据包, 当到达预设的重发时间间隔后, 重发控制子模块 953 将 消息重发队列 951 中的数据包重新发送给 SP/CP。
第一删除模块 97 用于在重发数据包成功后, 或重发次数达到最大发送次数后, 或 重发时间达到最大缓存时间后, 删除消息重发队列 951 中的数据包。
第一持久化存储模块 99 用于若消息重发队列 951 中的数据包的数量达到阈值, 则 将消息重发队列 951 中的数据包从消息重发队列 951 持久化存储到存储设备中, 或删除消 息重发队列 951 的部分或全部数据包。
本发明网关设备实施例中各个模块的工作原理和工作流程参见本发明图 1 到图 4 所示实施例中的描述, 在此不再赘述。
本发明实施例提供的网关设备, 在向业务提供商设备发送数据包发生失败后, 可 以根据预先设置的重发指示标识, 将发送失败的数据包进行缓存, 并进行重发以保证数据 包发送的成功率, 提高网关设备和业务提供商设备之间数据包传送的可靠性, 提高了业务 服务质量。图 11 为本发明业务提供商设备实施例一的结构示意图, 如图 11 所示, 该业务提供 商设备包括 : 标识发送模块 1101 和第三接收模块 1103。
标识发送模块 1101 用于向网关设备发送重发指示标识, 重发指示标识用于指示 网关设备在向业务提供商设备发送数据包失败后、 将数据包存储到重发队列中等待重发。
第三接收模块 1103 用于接收网关设备发送的数据包, 并在该数据包接收失败后, 再接收网关设备根据重发指示标识重新发送的该数据包。
通过向 ParlayX GW 发送 A2P 消息, 或者通过向 ParlayX GW 注册 SP/CP 的通知地 址, 标识发送模块 1101 向 ParlayX GW 发送重发指示标识 ; 第三接收模块 1103 接收 ParlayX GW 发送的数据包, 该数据包是 ParlayX GW 从用户设备接收到后, 主动发送给 SP/CP 的 ; 在 接收数据包发生失败时, 第三接收模块 1103 再接收 ParlayX GW 根据重发指示标识重新发 送的数据包。
本发明业务提供商设备实施例中各个模块的工作原理和工作流程参见本发明图 1 到图 4 所示实施例中的描述, 在此不再赘述。
本发明实施例提供的业务提供商设备, 在接收网关设备发送的数据包发生失败 后, 可以重新接收网关设备根据预先设置的重发指示标识重新发送的数据包, 以保证数据 包接收的成功率, 提高网关设备和业务提供商设备之间数据包传送的可靠性, 提高了业务 服务质量。
本发明实施例提供了一种网络系统, 该网络系统包括如图 9 或图 10 所示的网关设 备和如图 11 所示的业务提供商设备。
本发明网络系统实施例中各个模块的工作原理和工作流程参见本发明图 1 到图 4 所示实施例中的描述, 在此不再赘述。
本发明实施例提供的网络系统, 网关设备在向业务提供商设备发送数据包发生失 败后, 可以根据预先设置的重发指示标识, 将发送失败的数据包进行缓存, 并进行重发以保 证数据包发送的成功率, 提高网关设备和业务提供商设备之间数据包传送的可靠性, 提高 了业务服务质量。
图 12 为本发明网关设备实施例三的结构示意图, 如图 12 所示, 该网关设备包括 : 第二接收模块 1201、 第二发送模块 1203 和第二处理模块 1205。
第二接收模块 1201 用于接收用户设备发送的数据包后, 接收业务提供商设备发 送的请求获取该数据包的获取请求 ; 该获取请求种包括缓存指示标识, 该缓存指示标识用 于指示第二处理模块 1205 在第二发送模块 1203 向业务提供商设备返回数据包失败后, 将 该数据包存储到缓存队列中、 并等待根据业务提供商设备发送的重新获取请求返回该数据 包。第二发送模块 1203 用于根据第二接收模块 1201 接收到的获取请求向业务提供商设备 发送数据包。第二处理模块 1205 用于在第二发送模块 1203 发送该数据包失败后, 根据缓 存指示标识将该数据包存储到缓存队列中等待业务提供商设备的重新获取。
第二接收模块 1201 接收用户设备发送的数据包后, 接收 SP/CP 发送的请求获取该 数据包的获取请求 ; 第二发送模块 1203 根据第二接收模块 1201 接收的获取请求向 SP/CP 发送数据包 ; 在第二发送模块 1203 发送数据包发生失败后, 第二处理模块 1205 根据缓存指 示标识将该数据包存储到缓存队列中等待 SP/CP 的重新获取, 当 SP/CP 重新发送获取请求 时, 第二处理模块 1205 将存储在缓存队列中的数据包重新发送给 SP/CP。本发明网关实施例中各个模块的工作原理和工作流程参见本发明图 5 到图 8 所示 实施例中的描述, 在此不再赘述。
本发明实施例提供的网关设备, 在向业务提供商设备发送数据包发生失败后, 可 以根据预先设置的缓存指示标识, 将发送失败的数据包存储到缓存队列中, 等待当业务提 供商设备重新获取时进行重发, 以保证数据包发送的成功率, 提高网关设备和业务提供商 设备之间数据包传送的可靠性, 提高了业务服务质量。
图 13 为本发明网关设备实施例四的结构示意图, 如图 13 所示, 在本发明网关设备 实施例三的基础上, 该网关设备除了包括第二接收模块 1201、 第二发送模块 1203 和第二处 理模块 1205 以外, 还包括第二删除模块 1207 和第二持久化存储模块 1209。
第二删除模块 1207 用于在重发数据包成功后, 或到达最大缓存时间或到达允许 获取次数后, 删除缓存队列中的数据包。
第二持久化存储模块 1209 用于若缓存队列中的数据包的数量达到阈值, 则将缓 存队列中的数据包从缓存队列持久化存储到存储设备中, 或删除缓存队列中的部分或全部 数据包。
本发明网关设备实施例中各个模块的工作原理和工作流程参见本发明图 5 到图 8 所示实施例中的描述, 在此不再赘述。
本发明实施例提供的网关设备, 在向业务提供商设备发送数据包发生失败后, 可 以根据预先设置的缓存指示标识, 将发送失败的数据包存储到缓存队列中, 等待当业务提 供商设备重新获取时进行重发, 以保证数据包发送的成功率, 提高网关设备和业务提供商 设备之间数据包传送的可靠性, 提高了业务服务质量。
图 14 为本发明业务提供商设备实施例二的结构示意图, 如图 14 所示, 该业务提供 商设备包括 : 第四接收模块 1401 和第一获取模块 1403。
第四接收模块 1401 用于接收网关设备发送的数据包。
第一获取模块 1403 用于在网关设备接收到用户设备发送的数据包后, 向网关设 备发送请求获取该数据包的获取请求, 并在第四接收模块 1401 接收数据包失败后, 向网关 设备发送重新获取请求 ; 该获取请求包括缓存指示标识, 该缓存指示标识用于指示网关设 备在向第四接收模块 1401 返回该数据包失败后, 将该数据包存储到缓存队列中、 并等待根 据第一获取模块 1403 发送的重新获取请求返回该数据包。
在 ParlayX GW 接收到用户设备发送的数据包后, 第一获取模块 1403 向 ParlayX GW 发送请求获取该数据包的获取请求 ; ParlayX GW 根据第一获取模块 1403 发送的获取请 求向第四接收模块 1401 发送数据包 ; 在第四接收模块 1401 接收 ParlayX GW 发送的数据包 失败后, 第一获取模块 1403 向 ParlayXGW 发送重新获取请求 ; 第四接收模块 1401 重新接收 ParlayX GW 根据缓存指示标识和重新获取请求重新发送的数据包。
本发明业务提供商设备实施例中各个模块的工作原理和工作流程参见本发明图 5 到图 8 所示实施例中的描述, 在此不再赘述。
本发明实施例提供的业务提供商设备, 在接收网关设备发送的数据包发生失败 后, 可以重新请求获取网关设备根据预先设置的缓存指示标识存储的发送失败的数据包, 以保证数据包接收的成功率, 提高网关设备和业务提供商设备之间数据包传送的可靠性, 提高了业务服务质量。本发明实施例还提供了另一种网络系统, 该网络系统包括如图 12 或图 13 所示的 网关设备和如图 14 所示的业务提供商设备。
本发明网络系统实施例中各个模块的工作原理和工作流程参见本发明图 5 到图 8 所示实施例中的描述, 在此不再赘述。
本发明实施例提供的网络系统, 网关设备在向业务提供商设备发送数据包发生失 败后, 可以根据预先设置的缓存指示标识, 将发送失败的数据包存储到缓存队列中, 等待当 业务提供商设备重新获取时进行重发, 以保证数据包发送的成功率, 提高网关设备和业务 提供商设备之间数据包传送的可靠性, 提高了业务服务质量。
最后应说明的是 : 以上实施例仅用以说明本发明的技术方案, 而非对其限制 ; 尽 管参照前述实施例对本发明进行了详细的说明, 本领域的普通技术人员应当理解 : 其依然 可以对前述各实施例所记载的技术方案进行修改, 或者对其中部分技术特征进行等同替 换; 而这些修改或者替换, 并不使相应技术方案的本质脱离本发明各实施例技术方案的精 神和范围。