(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-12-25
(45)【発行日】2024-01-09
(54)【発明の名称】サービス要求の処理方法及び関連装置
(51)【国際特許分類】
H04W 48/14 20090101AFI20231226BHJP
H04W 76/12 20180101ALI20231226BHJP
H04W 92/14 20090101ALI20231226BHJP
H04L 45/76 20220101ALI20231226BHJP
【FI】
H04W48/14
H04W76/12
H04W92/14
H04L45/76
(21)【出願番号】P 2021554633
(86)(22)【出願日】2020-07-07
(86)【国際出願番号】 CN2020100596
(87)【国際公開番号】W WO2021017771
(87)【国際公開日】2021-02-04
【審査請求日】2021-09-10
(31)【優先権主張番号】201910709171.4
(32)【優先日】2019-08-01
(33)【優先権主張国・地域又は機関】CN
【前置審査】
(73)【特許権者】
【識別番号】514187420
【氏名又は名称】テンセント・テクノロジー・(シェンジェン)・カンパニー・リミテッド
(74)【代理人】
【識別番号】100107766
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】ジャン,ジュオユン
【審査官】齋藤 浩兵
(56)【参考文献】
【文献】特表2018-518927(JP,A)
【文献】特開2010-050719(JP,A)
【文献】Tencent, Nokia, Huawei, HiSilicon,,SCP Function Update[online],3GPP TSG SA WG2 #133 S2-1906645,2019年05月17日,Internet<URL:https://www.3gpp.org/ftp/tsg_sa/WG2_Arch/TSGS2_133_Reno/Docs/S2-1906645.zip>
【文献】T-Mobile USA, Nokia, Nokia Shanghai Bell, Huawei, HiSilicon, Verizon, AT & T,Adding UDR NF Group ID association functionality[online],3GPP TSG SA WG2 #133 S2-1906803,2019年05月17日,Internet<URL:https://www.3gpp.org/ftp/tsg_sa/WG2_Arch/TSGS2_133_Reno/Docs/S2-1906803.zip>
【文献】ZTE,Request-Response service interaction alternative[online],3GPP TSG SA WG2 #132 S2-1903795,2019年04月12日,Internet<URL:https://www.3gpp.org/ftp/tsg_sa/WG2_Arch/TSGS2_132_XiAn/Docs/S2-1903795.zip>
【文献】Ericsson,PCF selection for multiple PDU Sessions to the same DNN and S-NSSAI[online],3GPP TSG SA WG2 #133 S2-1905350,2019年05月17日,Internet<URL:https://www.3gpp.org/ftp/tsg_sa/WG2_Arch/TSGS2_133_Reno/Docs/S2-1905350.zip>
【文献】Huawei, HiSilicon,eSBA SMF and PCF selection-option 2[online],3GPP TSG SA WG2 #134 S2-1908120,2019年06月28日,Internet<URL:https://www.3gpp.org/ftp/tsg_sa/WG2_Arch/TSGS2_134_Sapporo/Docs/S2-1908120.zip>
(58)【調査した分野】(Int.Cl.,DB名)
H04L 45/76
H04W 4/00-99/00
3GPP TSG RAN WG1-4
SA WG1-4
CT WG1,4
(57)【特許請求の範囲】
【請求項1】
サービスプロキシ装置により実行される、サービス要求の処理方法であって、
サービスコンシューマにより送信されたサービス要求を受信するステップであって、前記サービス要求は、複数の
異なるサービスプロデューサタイプを含む、ステップと、
前記サービス要求に基づいて、前記複数の
異なるサービスプロデューサタイプにそれぞれ対応するサービスプロデューサインスタンスを取得するステップと、
前記複数の
異なるサービスプロデューサタイプに
それぞれ対応するサービスプロデューサインスタンスのアクセスシーケンスを決定するステップと、
前記複数の
異なるサービスプロデューサタイプに
それぞれ対応するサービスプロデューサインスタンスが前記アクセスシーケンスに従って前記サービス要求を処理するように制御するステップと、を含み、
前記複数の異なるサービスプロデューサタイプにそれぞれ対応するサービスプロデューサインスタンスのアクセスシーケンスを決定するステップは、
前記サービス要求における順序指示情報に基づいて、前記複数の異なるサービスプロデューサタイプの並び替え順序を決定するステップと、
前記複数の異なるサービスプロデューサタイプの並び替え順序を、前記複数の異なるサービスプロデューサタイプにそれぞれ対応するサービスプロデューサインスタンスのアクセスシーケンスとするステップと、を含み、
前記複数の
異なるサービスプロデューサタイプは、セッション管理機能又はポリシー制御機能の異なるサービスタイプを含む、方法。
【請求項2】
前記複数の
異なるサービスプロデューサタイプに
それぞれ対応するサービスプロデューサインスタンスが前記アクセスシーケンスに従って前記サービス要求を処理するように制御するステップは、
前記アクセスシーケンスに従って、前記アクセスシーケンスにおける最初のサービスプロデューサインスタンスに前記サービス要求を送信するステップであって、ターゲットサービスプロデューサインスタンスがサービス要求の処理を完了した後にサービスコンシューマとして送信した新しいサービス要求が受信された場合、アクセスすべきシーケンスにおける最初のサービスプロデューサインスタンスに前記新しいサービス要求を転送し、前記ターゲットサービスプロデューサインスタンスは、前記複数の
異なるサービスプロデューサタイプに
それぞれ対応するサービスプロデューサインスタンスのうちの1つである、ステップ、を含む、請求項1に記載の方法。
【請求項3】
前記ターゲットサービスプロデューサインスタンスがサービス要求の処理を完了した後にサービスコンシューマとして送信した新しいサービス要求は、前記アクセスシーケンスにおける前記ターゲットサービスプロデューサインスタンスの後に位置するサービスプロデューサインスタンスの情報、及び前記アクセスすべきシーケンスを含み、
前記アクセスすべきシーケンスにおける最初のサービスプロデューサインスタンスにより転送された前記新しいサービス要求は、前記アクセスすべきシーケンスにおける最初のサービスプロデューサインスタンスの後に位置するサービスプロデューサインスタンスの情報、及び前記アクセスすべきシーケンスを含む、請求項2に記載の方法。
【請求項4】
前記複数の
異なるサービスプロデューサタイプに
それぞれ対応するサービスプロデューサインスタンスが前記アクセスシーケンスに従ってサービス要求を処理するように制御するステップは、
前記アクセスシーケンスに従って、前記アクセスシーケンスにおける最初のサービスプロデューサインスタンスに前記サービス要求及び前記アクセスシーケンスを送信するステップであって、前記アクセスシーケンスにおけるサービスプロデューサインスタンスは、サービス応答メッセージが順次返される前に、前記アクセスシーケンスにおける全てのサービスプロデューサインスタンスによる処理が完了するまで、前記サービス要求の処理を完了した後に、新しいサービス要求を処理させるようにサービスコンシューマとして該新しいサービス要求を次のサービスプロデューサインスタンスに送信する、ステップ、を含む、請求項1乃至3の何れかに記載の方法。
【請求項5】
前記サービス要求に基づいて前記複数の
異なるサービスプロデューサタイプにそれぞれ対応するサービスプロデューサインスタンスを取得するステップは、
前記複数の
異なるサービスプロデューサタイプに基づいて、指定装置にサービス発見要求を送信するステップと、
前記サービス発見要求に基づいて前記指定装置により返されたサービスプロデューサインスタンスリストを受信するステップと、
前記サービスプロデューサインスタンスリストから、前記複数の
異なるサービスプロデューサタイプに
それぞれ対応するサービスプロデューサインスタンスを選択するステップと、を含む、請求項1乃至4の何れかに記載の方法。
【請求項6】
前記複数の
異なるサービスプロデューサタイプに基づいて指定装置にサービス発見要求を送信する前に、
履歴サービス発見結果に、前記複数の
異なるサービスプロデューサタイプに対応し、且つ前記サービス要求におけるパラメータ情報を満たすサービスプロデューサインスタンスが記憶されているか否かを検出するステップと、
記憶されている場合、前記履歴サービス発見結果から、前記複数の
異なるサービスプロデューサタイプに対応し、且つ前記サービス要求におけるパラメータ情報を満たすサービスプロデューサインスタンスを取得するステップと、
記憶されていない場合、前記複数の
異なるサービスプロデューサタイプに基づいて前記指定装置にサービス発見要求を送信するステップを実行するステップと、をさらに含む、請求項5に記載の方法。
【請求項7】
前記履歴サービス発見結果について有効時間が設定されており、
前記履歴サービス発見結果に、前記複数の
異なるサービスプロデューサタイプに対応し、且つ前記サービス要求におけるパラメータ情報を満たすサービスプロデューサインスタンスが記憶されている場合、前記方法は、
前記履歴サービス発見結果が有効時間を超えているか否かを判断するステップと、
前記履歴サービス発見結果が有効時間を超えている場合、前記複数の
異なるサービスプロデューサタイプに基づいて前記指定装置にサービス発見要求を送信するステップを実行するステップと、
前記履歴サービス発見結果が有効時間を超えていない場合、前記履歴サービス発見結果から、前記複数の
異なるサービスプロデューサタイプに対応し、且つ前記サービス要求におけるパラメータ情報を満たすサービスプロデューサインスタンスを取得するステップを実行するステップと、をさらに含む、請求項6に記載の方法。
【請求項8】
サービス要求の処理装置であって、
サービスコンシューマにより送信されたサービス要求を受信する受信モジュールであって、前記サービス要求は、複数の
異なるサービスプロデューサタイプを含む、受信モジュールと、
前記サービス要求に基づいて、前記複数の
異なるサービスプロデューサタイプにそれぞれ対応するサービスプロデューサインスタンスを取得する取得モジュールと、
前記複数の
異なるサービスプロデューサタイプに
それぞれ対応するサービスプロデューサインスタンスのアクセスシーケンスを決定する決定モジュールと、
前記複数の
異なるサービスプロデューサタイプに
それぞれ対応するサービスプロデューサインスタンスが前記アクセスシーケンスに従って前記サービス要求を処理するように制御する制御モジュールと、を含み、
前記決定モジュールは、
前記サービス要求における順序指示情報に基づいて、前記複数の異なるサービスプロデューサタイプの並び替え順序を決定し、
前記複数の異なるサービスプロデューサタイプの並び替え順序を、前記複数の異なるサービスプロデューサタイプにそれぞれ対応するサービスプロデューサインスタンスのアクセスシーケンスとし、
前記複数の
異なるサービスプロデューサタイプは、セッション管理機能又はポリシー制御機能の異なるサービスタイプを含む、装置。
【請求項9】
プロセッサと、通信インターフェースと、メモリと、通信バスと、を含むサーバであって、
前記プロセッサ、前記通信インターフェース及び前記メモリは、前記通信バスを介して互いに通信を行い、前記通信インターフェースは、通信モジュールのインターフェースであり、
前記メモリは、プログラムコードを記憶し、前記プロセッサに前記プログラムコードを伝送し、
前記プロセッサは、前記メモリにおけるプログラムコードの命令を呼び出して、請求項1乃至
7の何れかに記載の方法を実
行する、サーバ。
【請求項10】
コンピュータプログラムが記憶されている記憶媒体であって、前記コンピュータプログラムは、請求項1乃至
7の何れかに記載の方法を実
行するために使用される、記憶媒体。
【請求項11】
命令を含むコンピュータプログラムであって、コンピュータにより実行される際に、前記コンピュータに、請求項1乃至
7の何れかに記載の方法を実行さ
せる、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、2019年8月1日に出願した出願番号が201910709171.4であり、発明の名称が「サービス要求の処理方法、装置」である中国特許出願に基づく優先権を主張し、その全ての内容を参照により本発明に援用する。
【0002】
本発明は、通信技術分野に関し、具体的には、サービス要求の処理に関する。
【背景技術】
【0003】
現在、3GPP R16のeSBAサブジェクトでは、サービス通信プロキシ(Service Communication Proxy:SCP)の概念が提案されている。サービス間の通信メッセージは、SCPを介して転送され、一方、SCPは、プロキシ発見(Proxy Discovery)を行ってもよく、ネットワークリポジトリ機能(Network Repository Function:NRF)にサービスプロキシ発見要求を送信し、サービスのプロデューサリストを検出し、該リストからサービスプロデューサを選択する。
【発明の概要】
【0004】
本発明の1つの目的は、複数のサービスプロデューサタイプに対応するサービスプロデューサインスタンスによる同時発見メカニズムを実現し、サービス処理の効率を向上させることができるサービス要求の処理方法及び関連装置を提供することである。
【0005】
本発明の実施例の1つの態様では、サービスプロキシ装置により実行される、サービス要求の処理方法であって、サービスコンシューマにより送信されたサービス要求を受信するステップであって、前記サービス要求は、複数のサービスプロデューサタイプを含む、ステップと、前記サービス要求に基づいて、前記複数のサービスプロデューサタイプにそれぞれ対応するサービスプロデューサインスタンスを取得するステップと、前記複数のサービスプロデューサタイプに対応するサービスプロデューサインスタンスのアクセスシーケンスを決定するステップと、前記複数のサービスプロデューサタイプに対応するサービスプロデューサインスタンスが前記アクセスシーケンスに従って前記サービス要求を処理するように制御するステップと、を含む、方法を提供する。
【0006】
本発明の実施例のもう1つの態様では、サービスプロデューサインスタンスにより実行される、サービス要求の処理方法であって、サービス要求を受信するステップであって、前記サービス要求は、アクセスすべきサービスプロデューサインスタンスの情報、及び前記アクセスすべきサービスプロデューサインスタンスのアクセスシーケンスを含む、ステップと、前記サービス要求を処理するステップと、サービスプロキシ装置が前記アクセスシーケンスに従って次のサービスプロデューサインスタンスに新しいサービス要求を送信するように、前記サービス要求を処理した後に、サービスコンシューマとして前記サービスプロキシ装置に前記新しいサービス要求を送信し、或いは、次のサービスプロデューサが新しいサービス要求を処理するように、前記サービス要求を処理した後に、サービスコンシューマとして前記アクセスシーケンスにおける次のサービスプロデューサインスタンスに前記新しいサービス要求を送信するステップと、を含む、方法を提供する。
【0007】
本発明の実施例のもう1つの態様では、サービス要求の処理装置であって、サービスコンシューマにより送信されたサービス要求を受信する受信モジュールであって、前記サービス要求は、複数のサービスプロデューサタイプを含む、受信モジュールと、前記サービス要求に基づいて、前記複数のサービスプロデューサタイプにそれぞれ対応するサービスプロデューサインスタンスを取得する取得モジュールと、前記複数のサービスプロデューサタイプに対応するサービスプロデューサインスタンスのアクセスシーケンスを決定する決定モジュールと、前記複数のサービスプロデューサタイプに対応するサービスプロデューサインスタンスが前記アクセスシーケンスに従って前記サービス要求を処理するように制御する制御モジュールと、を含む、装置を提供する。
【0008】
本発明の実施例のもう1つの態様では、サービス要求の処理装置であって、サービス要求を受信する受信モジュールであって、前記サービス要求は、アクセスすべきサービスプロデューサインスタンスの情報、及び前記アクセスすべきサービスプロデューサインスタンスのアクセスシーケンスを含む、受信モジュールと、前記サービス要求に応答する応答モジュールと、サービスプロキシ装置が前記アクセスシーケンスに従って次のサービスプロデューサインスタンスに新しいサービス要求を送信するように、前記サービス要求に応答した後に、サービスコンシューマとして前記サービスプロキシ装置に前記新しいサービス要求を送信し、或いは、次のサービスプロデューサが新しいサービス要求を処理するように、前記サービス要求に応答した後に、サービスコンシューマとして前記アクセスシーケンスにおける次のサービスプロデューサインスタンスに前記新しいサービス要求を送信する送信モジュールと、を含む、装置を提供する。
【0009】
本発明の実施例のもう1つの態様では、プロセッサと、通信インターフェースと、メモリと、通信バスと、を含むサーバであって、前記プロセッサ、前記通信インターフェース及び前記メモリは、前記通信バスを介して互いに通信を行い、前記通信インターフェースは、通信モジュールのインターフェースであり、前記メモリは、プログラムコードを記憶し、前記プロセッサに前記プログラムコードを伝送し、前記プロセッサは、前記メモリにおけるプログラムコードの命令を呼び出して、上記の態様の方法を実行する、サーバを提供する。
【0010】
本発明の実施例のもう1つの態様では、コンピュータプログラムが記憶されている記憶媒体であって、前記コンピュータプログラムは、上記の態様の方法を実行するために使用される、記憶媒体を提供する。
【0011】
本発明の実施例のもう1つの態様では、命令を含むコンピュータプログラムプロダクトであって、コンピュータにより実行される際に、前記コンピュータに、上記の態様の方法を実行させる、コンピュータプログラムプロダクトを提供する。
【0012】
本発明の実施例に係る技術は、以下の有利な効果を有してもよい。
【0013】
サービスコンシューマにより送信されたサービス要求に含まれる複数のサービスプロデューサタイプに対応するサービスプロデューサインスタンスを一括的に取得し、該複数のサービスプロデューサタイプに対応するサービスプロデューサインスタンスのアクセスシーケンスを決定し、アクセスシーケンスに従って該複数のサービスプロデューサタイプに対応するサービスプロデューサインスタンスがサービス要求を処理するように制御することで、サービス発見メカニズムの強化を実現し、サービス発見の要求の回数を減らし、サービス要求の処理効率を向上させることができる。
【0014】
本発明の他の特徴及び利点は、以下の詳細な説明を通じて明らかになり、或いは本発明の実装により部分的に学習される。
【0015】
なお、以上の一般的に説明及び以下の詳細な説明は、単なる例示的なものであり、本発明を制限するものではない。
【図面の簡単な説明】
【0016】
ここでの図面は、明細書に含まれ、且つ本明細書の一部を構成し、本発明に一致する実施例を示し、明細書と共に本発明の原理を解釈するために使用される。なお、以下の説明における図面は、単なる本発明の幾つかの実施例であり、当業者にとって、創造的な作業を行うことなく、これらの図面に基づいて他の図面を得ることができる。
【
図1】本発明の1つの実施例に係るサービス要求の処理方法が適用されるシステム構成を示す図である。
【
図2】本発明の1つの実施例に係るサービス要求の処理方法を示すフローチャートである。
【
図3】本発明の1つの実施例に係るサービスプロデューサインスタンスの取得を示すフローチャートである。
【
図4】本発明のもう1つの実施例に係るサービスプロデューサインスタンスの取得を示すフローチャートである。
【
図5】本発明の1つの実施例に係るサービス要求の処理方法を示すフローチャートである。
【
図6】本発明の1つの実施例に係るサービス要求の処理方法を示すインタラクティブなフローチャートである。
【
図7】本発明のもう1つの実施例に係るサービス要求の処理方法を示すインタラクティブなフローチャートである。
【
図8】本発明の1つの実施例に係るSMFの応用シナリオに適用されるサービス要求の処理方法を示すインタラクティブなフローチャートである。
【
図9】本発明の1つの実施例に係るPCFの応用シナリオに適用されるサービス要求の処理方法を示すインタラクティブなフローチャートである。
【
図10】本発明の1つの実施例に係るサービス要求の処理装置を示すブロック図である。
【
図11】本発明の1つの実施例に係る電子機器のコンピュータシステムの構成を示す概略図である。
【発明を実施するための形態】
【0017】
以下は、図面を参照しながら例示的な実施形態を説明する。なお、例示的な実施形態は、様々な形態で実施されてもよく、本明細書に記載の例に限定されない。一方、これらの例示的な実施形態により、本発明の説明がより包括的、且つ完全になり、当業者が例示的な実施形態の思想を完全に理解できる。図面は、単に本発明の概略図であり、必ずしも一定の縮尺で描かれるものではない。図面における同一の符号は、同一又は類似の部材を示すため、それらの繰り返しの説明を省略する。
【0018】
さらに、説明される特徴、構造又は特性は、1つ又は複数の例示的な実施形態において任意の適切な方法で組み合わせられてもよい。以下の説明では、本発明の例示的な実施形態を十分に理解するために、多くの特定の詳細が提供される。一方、当業者は、本発明の技術的手段を実施する際に、該特定の詳細の1つ又は複数を省略してもよいし、他の方法、構成要素、ステップなどを採用してもよい。他の場合は、本発明の各態様を明確にするために、公知の構造、方法、実装又は操作を詳細に示し、或いは説明していない。
【0019】
図面に示されているブロック図は、機能的エンティティであり、必ずしも物理的又は論理的に独立したエンティティに対応するものではない。これらの機能的エンティティは、ソフトウェアの形で実装されてもよいし、1つ又は複数のハードウェアモジュール又は集積回路に実装されてもよいし、或いは異なるネットワーク及び/又はプロセッサ装置及び/又はマイクロコントローラ装置に実装されてもよい。
【0020】
以下、
図1を参照しながら、本発明の1つの実施例に係るサービス要求の処理方法が適用されるシステム構成を説明する。
【0021】
図1に示すように、本発明が適用されるシステム構成は、サービスコンシューマ(Service Consumer)101、サービスプロキシ装置102、サービスプロデューサインスタンス(Service Producer Instance)103及び指定装置104を含んでもよい。サービスコンシューマ101は、サービス要求を送信する装置であり、サーバ、スマートフォン、タブレットコンピュータ、ポータブルコンピュータ、デスクトップコンピュータなどのユーザ端末であってもよい。サービスプロキシ装置102は、例えばSCPなどのサービス要求を受信する装置である。サービスプロキシ装置102は、該サービス要求をサービスプロデューサインスタンス103に転送してもよい。サービスプロデューサインスタンス103は、サービス要求に応答し、応答結果をサービスコンシューマ101に返す。
【0022】
サービスコンシューマ101は、サービスの発見及び選択を直接行わない。サービスコンシューマ101は、サービス要求を送信する際に、必要なパラメータをサービスプロキシ装置102に送信する。サービスプロキシ装置102は、間接通信におけるメッセージ転送及びプロキシサービス発見の機能を有し、本発明の実施例におけるサービス要求の処理方法の実行主体である。サービスプロキシ装置102は、サービスコンシューマ101とサービスプロデューサインスタンス103との間に挿入され、サービス発見のために指定装置104にサービス発見要求を送信し、サービス応答のためにサービス要求をサービスプロデューサインスタンスに転送する役割を果たす。なお、サービスプロデューサインスタンス103がサービス要求を処理した後、サービスプロキシ装置102は、さらに、サービスプロデューサインスタンス103により送信された応答結果を受信し、応答結果をサービスコンシューマ101に返す。
【0023】
指定装置104は、サービスプロキシ装置102と通信を行う。サービスプロキシ装置102は、サービス発見要求メッセージを指定装置104に送信し、サービス発見の結果を取得する。
【0024】
なお、
図1におけるサービスコンシューマ101、サービスプロキシ装置102、サービスプロデューサインスタンス103及び指定装置104の数は、単なる一例である。実装の必要性に応じて、任意の数のサービスコンシューマ101、サービスプロキシ装置102、サービスプロデューサインスタンス103及び指定装置104を有してもよい。
【0025】
本発明の1つの実施例では、サービス要求の処理方法を提供する。
【0026】
図2に示すように、該方法は、以下のステップを含む。
【0027】
S210において、サービスコンシューマにより送信されたサービス要求を受信する。該サービス要求は、複数のサービスプロデューサタイプを含む。
【0028】
S220において、該サービス要求に基づいて、該複数のサービスプロデューサタイプにそれぞれ対応するサービスプロデューサインスタンスを取得する。
【0029】
S230において、該複数のサービスプロデューサタイプに対応するサービスプロデューサインスタンスのアクセスシーケンスを決定する。
【0030】
S240において、該複数のサービスプロデューサタイプに対応するサービスプロデューサインスタンスが該アクセスシーケンスに従って該サービス要求を処理するように制御する。
【0031】
以下は、これらのステップを詳細に説明する。
【0032】
S210において、サービスコンシューマにより送信されたサービス要求を受信する。該サービス要求は、複数のサービスプロデューサタイプを含む。
【0033】
サービスコンシューマにより送信されたサービス要求は、属性情報を含んでもよい。該属性情報は、事前に設定された属性に対応してもよい。サービス要求に属性情報が含まれている場合、サービス要求における属性情報に基づいて、サービス要求のタイプを決定してもよく、即ち、サービス要求に含まれる各サービスプロデューサのサービスタイプを決定してもよい。本発明におけるこれらのサービスタイプは、サービスプロデューサのタイプとして表されてもよい。
【0034】
S220において、該サービスプロデューサタイプにそれぞれ対応するサービスプロデューサインスタンスを取得する際に、サービスプロデューサタイプにそれぞれ対応する複数のサービスプロデューサインスタンスを直接取得してもよいし、サービス要求に含まれる各サービスプロデューサタイプに対応するサービスプロデューサインスタンスのリストを取得してもよい。各サービスプロデューサタイプについて、1つのサービスプロデューサインスタンスのリストが発見されて返され、該サービスプロデューサインスタンスのリストには、サービス要求におけるパラメータ条件を満たす該サービスタイプのサービスプロデューサインスタンスが含まれる。
【0035】
サービスプロデューサインスタンスを取得する方法は、指定装置にサービス発見要求を送信してもよいし、履歴サービス発見結果から直接取得してもよいが、これらの例に限定されない。
【0036】
なお、サービス要求に基づいて取得されたサービスプロデューサタイプに対応するサービスプロデューサインスタンスは、サービスプロデューサタイプ名と一致し、且つサービス要求におけるパラメータ情報を満たすサービスプロデューサインスタンスである。
【0037】
1つの好ましい態様では、
図3に示すように、S220は、具体的に以下のステップを含む。
【0038】
S2201において、該複数のサービスプロデューサタイプに基づいて、指定装置にサービス発見要求を送信する。
【0039】
S2202において、該サービス発見要求に基づいて該指定装置により返されたサービスプロデューサインスタンスリストを受信する。
【0040】
S2203において、該サービスプロデューサインスタンスリストから、該複数のサービスプロデューサタイプに対応するサービスプロデューサインスタンスを選択する。
【0041】
S2201において、指定装置は、受信されたサービス発見要求におけるサービスプロデューサタイプ及び選択パラメータに基づいて、全てのサービスプロデューサタイプを満たすサービスプロデューサインスタンスのリストを発見してもよい。
【0042】
S2202において、指定装置は、サービスプロデューサインスタンスリストを生成した後、サービスプロキシ装置にサービス発見結果、即ち各サービスプロデューサタイプに対応するサービスプロデューサインスタンスリストを返す。各サービスプロデューサタイプは、1つのサービスプロデューサインスタンスリストに対応する。
【0043】
S2203において、指定装置からサービスプロデューサインスタンスリストを取得した後、ランダム選択又は他の選択方法により、各サービスプロデューサタイプに対応するサービスプロデューサインスタンスリストから、該サービスプロデューサタイプに対応するサービスプロデューサインスタンを選択してもよい。
【0044】
1つの好ましい態様では、サービス要求を受信した後、指定装置にサービス発見要求を送信する前、即ちS2201の前に、サービスプロキシ装置は、対応するサービスプロデューサインスタンスが履歴発見結果に記憶されているか否かを検出してもよい。履歴発見結果からサービスプロデューサインスタンスを取得することで、サービス発見要求を再度実行することを回避し、計算リソースの浪費を回避できる。また、履歴検出結果から直接サービスプロデューサインスタンスを取得することで、サービス要求の処理時間を節約することができる。
【0045】
該態様では、
図4に示すように、S220は、以下のステップを含む。
【0046】
S2201’において、履歴サービス発見結果に、該複数のサービスプロデューサタイプに対応し、且つ該サービス要求におけるパラメータ情報を満たすサービスプロデューサインスタンスが記憶されているか否かを検出する。
【0047】
記憶されている場合、S2202’を実行し、記憶されていない場合、S2203’を実行する。
【0048】
S2202’において、該履歴サービス発見結果から、該複数のサービスプロデューサタイプに対応し、且つサービス要求におけるパラメータ情報を満たすサービスプロデューサインスタンスを取得する。
【0049】
S2203’において、S2201を実行する。
【0050】
S2201’において、履歴サービス発見結果は、現在のサービス要求の前のサービスアクセスにおいて指定装置にサービス発見要求を送信することによって取得された情報である。該情報は、サービスプロキシ装置に記憶される。後続のサービス要求に含まれるサービスプロデューサの選択パラメータが前の検出結果と一致する場合、指定装置にサービス発見を行わせることなく、前に保存されたサービス発見結果を直接使用することで、計算リソースを節約することができる。
【0051】
1つの好ましい態様では、該履歴サービス発見結果について有効時間が設定されている。該履歴サービス発見結果に、該複数のサービスプロデューサタイプに対応し、且つ該サービス要求におけるパラメータ情報を満たすサービスプロデューサインスタンスが記憶されている場合、該方法は、以下のステップをさらに含む。
【0052】
該履歴サービス発見結果が有効時間を超えているか否かを判断する。
【0053】
該履歴サービス発見結果が有効時間を超えている場合、ステップS2201を実行する。
【0054】
該履歴サービス発見結果が有効時間を超えていない場合、ステップS2202’を実行する。
【0055】
好ましくは、該サービス発見結果には有効時間が含まれ、サービス発見結果が該時間内にのみ有効であることを示す。該時間を超えている場合、該サービス発見結果は無効になる。履歴サービス発見結果に、各サービスプロデューサタイプに対応し、且つサービス要求におけるパラメータ情報を満たすサービスプロデューサインスタンスが記憶されている場合、履歴サービス発見結果が有効時間を超えているか否かをさらに判断する。有効時間を超えている場合、該サービス発見結果を無効にし、サービスプロキシ装置は、依然として、サービス要求に含まれる各サービスプロデューサタイプ及びサービス要求に含まれるパラメータ情報に基づいて、指定装置にサービス発見要求を送信し、また、サービスプロキシ装置は、無効なサービス発見結果を削除する。
【0056】
この態様では、有効な時間を設定し、無効なサービス発見結果を削除することで、履歴サービス発見データの正確性を確保することができると共に、古いデータがメモリ空間を占有することを回避し、記憶空間を節約し、履歴サービス検出データへのアクセス速度を向上させることができる。
【0057】
指定装置にサービス発見を要求する前に、履歴サービス発見結果に、それぞれの該サービスプロデューサタイプに対応し、且つ該サービス要求におけるパラメータ情報を満たすサービスプロデューサインスタンスが含まれるか否かを検出する。サービス要求におけるサービスプロデューサタイプに基づいて選択パラメータを満たす履歴サービス発見結果からそれに対応するサービスプロデューサインスタンスを直接取得することで、検索時間が短く、アクセス速度が速い。
【0058】
S230において、該複数のサービスプロデューサタイプに対応するサービスプロデューサインスタンスのアクセスシーケンスを決定する。
【0059】
アクセスすべきサービスプロデューサインスタンスが複数ある場合、各サービスプロデューサタイプに対応するサービスプロデューサインスタンスのリストから、該タイプの1つのサービスプロデューサインスタンスを選択する。各サービスプロデューサタイプに対応するインスタンスは、特定のアクセスシーケンスに従ってサービス要求のアクセスを行う。
【0060】
1つの好ましい態様では、S230は、具体的に以下のステップを含む。
【0061】
該サービス要求における順序指示情報に基づいて、該複数のサービスプロデューサタイプの並び替え順序を決定する。
【0062】
該複数のサービスプロデューサタイプの並び替え順序を、該複数のサービスプロデューサタイプに対応するサービスプロデューサインスタンスのアクセスシーケンスとする。
【0063】
この態様では、サービスコンシューマにより送信されるサービス要求には、順序指示情報を含み、該順序指示情報は、サービス要求における各サービスプロデューサタイプの並び替え順序、即ち、各サービスプロデューサタイプに対応するサービスプロデューサインスタンスのアクセス順序を指示する。該アクセスシーケンスは、少なくとも直列シーケンスを含み、直列シーケンスは、各サービスプロデューサインスタンスが順次アクセスされることを示す。
【0064】
好ましくは、該アクセスシーケンスは、並列シーケンスを含んでもよい。並列シーケンスは、各サービスプロデューサインスタンスが同時にアクセスされ、順番の要求がないことを示す。アクセスシーケンスが並列シーケンスである場合、サービスプロキシ装置は、処理のために、並列シーケンスにおける複数のサービスプロデューサインスタンスにサービス要求を転送する。複数のサービスプロデューサインスタンスが処理を行った後、サービスコンシューマにサービス応答メッセージを返す。
【0065】
なお、本発明の実施例は、主に、直列シーケンスに従ってサービスプロデューサインスタンスによるサービス要求の処理を制御する。
【0066】
例えば、サービスコンシューマにより送信されるサービス要求に3つのサービスプロデューサタイプA、B、及びCが含まれる場合、該サービス要求に含まれる順序指示情報に基づいて、3つのサービスプロデューサタイプの並び替え順序がA、B、Cであり、即ちAが1番目のサービスプロデューサタイプであり、Bが2番目のサービスプロデューサタイプであり、Cが3番目のサービスプロデューサタイプであると決定する。
【0067】
各サービスプロデューサタイプの並び替え順序が決定された後、該並び替え順序を対応するサービスプロデューサインスタンスのアクセスシーケンスとして直接使用してもよい。上記のサービスコンシューマにより送信されたサービス要求に含まれる3つのサービスプロデューサタイプA、B、Cがサービスプロデューサインスタンスa、b、cにそれぞれ対応する場合、3つのサービスプロデューサインスタンスa、b、cのアクセスシーケンスはa、b、cである。即ち、aは1番目にアクセスされるサービスプロデューサインスタンスであり、bは2番目にアクセスされるサービスプロデューサインスタンスであり、cは3番目にアクセスされるサービスプロデューサインスタンスである。
【0068】
該アクセスシーケンスに従って、最後から2番目のサービスプロデューサがサービス要求を処理した後、最後のサービスプロデューサにサービス要求を送信して処理させる。該サービス要求にサービスプロデューサインスタンスが1つしかないため、該サービス要求にアクセスシーケンスを含める必要がない。
【0069】
S240において、該複数のサービスプロデューサタイプに対応するサービスプロデューサインスタンスが該アクセスシーケンスに従って該サービス要求を処理するように制御する。
【0070】
S240において、各サービスプロデューサインスタンスのアクセスシーケンスが決定された後、該アクセスシーケンスに従って順次アクセスし、サービス要求を処理してもよい。
【0071】
1つの好ましい態様では、S240は、具体的に以下のステップを含む。
【0072】
該アクセスシーケンスに従って、該アクセスシーケンスにおける最初のサービスプロデューサインスタンスに該サービス要求を送信する。ここで、ターゲットサービスプロデューサインスタンスがサービス要求の処理を完了した後にサービスコンシューマとして送信した新しいサービスが受信された場合、アクセスすべきシーケンスにおける最初のサービスプロデューサインスタンスに該新しいサービス要求を転送する。ここで、該ターゲットサービスプロデューサインスタンスは、該複数のサービスプロデューサタイプに対応するサービスプロデューサインスタンスのうちの1つである。
【0073】
この態様では、任意のサービスプロデューサインスタンスがサービス要求を処理した後、サービスコンシューマとして、サービスプロキシ装置に新しいサービス要求を送信する。サービスプロキシ装置は、該新しいサービス要求を受信した後、アクセスすべきシーケンスにおける最初のサービスプロデューサインスタンスへ新しいサービス要求を転送する。
【0074】
アクセスすべきシーケンスとは、サービス要求を受信していないサービスプロデューサインスタンスのアクセスシーケンスを意味する。なお、アクセスすべきシーケンスにおけるサービスプロデューサインスタンスは、既にサービス要求の処理を完了したサービスプロデューサインスタンスを含まない。アクセスすべきシーケンスにおける最初のサービスプロデューサインスタンスは、アクセスすべきシーケンス内に位置する1番目のサービスプロデューサインスタンスを意味する。
【0075】
例えば、サービスコンシューマにより送信されるサービス要求に3つのサービスプロデューサタイプA、B、Cが含まれ、3つのサービスプロデューサタイプA、B、Cがサービスプロデューサインスタンスa、b、cにそれぞれ対応し、且つアクセスシーケンスがa、b、cである場合、以下のステップを行う。サービスプロキシ装置は、第1のサービスプロデューサインスタンスaにサービス要求を送信する。第1のサービスプロデューサインスタンスaは、サービス要求を処理した後、サービスコンシューマとしてサービスプロキシ装置に新しいサービス要求を送信する。サービスプロキシ装置は、第1のサービスプロデューサインスタンスaによりサービスコンシューマとして送信された新しいサービス要求を受信した後、アクセスすべきシーケンスにおける1番目のサービスプロデューサインスタンス、即ち第2のサービスプロデューサインスタンスbに該新しいサービス要求を転送する。第2のサービスプロデューサインスタンスbは、第1のサービスプロデューサインスタンスaによりサービスコンシューマとして送信された新しいサービス要求を処理し、該サービス要求を処理した後、サービスコンシューマとしてサービスプロキシ装置に新しいサービス要求を送信する。サービスプロキシ装置は、第2のサービスプロデューサインスタンスbによりサービスコンシューマとして送信された新しいサービス要求を受信した後、第3のサービスプロデューサインスタンスcに該新しいサービス要求を転送する。第3のサービスプロデューサインスタンスcは、第2のサービスプロデューサインスタンスbによりサービスコンシューマとして送信された新しいサービス要求を処理する。アクセスシーケンスにおける最後のサービスプロデューサインスタンスcは、サービス要求を処理した後に、第2のサービスプロデューサインスタンスbにサービス応答メッセージを返す。第2のサービスプロデューサインスタンスbは、第1のサービスプロデューサインスタンスaに応答メッセージを送信する。第1のサービスプロデューサインスタンスaは、サービスコンシューマに応答メッセージを送信する。
【0076】
1つの好ましい態様では、該ターゲットサービスプロデューサインスタンスがサービス要求の処理を完了した後にサービスコンシューマとして送信した新しいサービスは、該アクセスシーケンスにおける該ターゲットサービスプロデューサインスタンスの後に位置するサービスプロデューサインスタンスの情報、及び該アクセスすべきシーケンスを含む。
【0077】
該アクセスすべきシーケンスにおける最初のサービスプロデューサインスタンスにより転送された該新しいサービス要求は、該アクセスすべきシーケンスにおける最初のサービスプロデューサインスタンスの後に位置するサービスプロデューサインスタンスの情報、及び該アクセスすべきシーケンスを含む。
【0078】
この態様では、ターゲットサービスプロデューサインスタンスがサービス要求の処理を完了した後にサービスコンシューマとして送信した新しいサービスは、該アクセスシーケンスにおけるターゲットサービスプロデューサインスタンスの後に位置するサービスプロデューサインスタンスの情報、及びアクセスすべきシーケンスを含み、アクセスすべきシーケンスは、該ターゲットサービスプロデューサインスタンスの後のサービスプロデューサインスタンスのアクセスシーケンスである。
【0079】
アクセスすべきシーケンスにおける最初のサービスプロデューサインスタンスにより転送された該新しいサービス要求は、該アクセスすべきシーケンスにおける最初のサービスプロデューサインスタンスの後に位置するサービスプロデューサインスタンスの情報、及びアクセスすべきシーケンスを含む。例えば、サービスプロキシ装置により第1のサービスプロデューサインスタンスaに送信されるサービス要求は、第2のサービスプロデューサインスタンスb及び第3のサービスプロデューサインスタンスcの情報、並びに第2のサービスプロデューサインスタンスb及び第3のサービスプロデューサインスタンスcのアクセスシーケンスを含む。第1のサービスプロデューサインスタンスaは、サービス要求を処理した後、サービスコンシューマとしてサービスプロキシ装置に新しいサービス要求を送信する。該新しいサービス要求は、第2のサービスプロデューサインスタンスb及び第3のサービスプロデューサインスタンスcの情報、並びに第2のサービスプロデューサインスタンスb及び第3のサービスプロデューサインスタンスcのアクセスシーケンスを含む。第2のサービスプロデューサインスタンスbがサービス要求を処理した後、サービスコンシューマとしてサービスプロキシ装置に新しいサービス要求を送信する。該新しいサービス要求は、第3のサービスプロデューサインスタンスcの情報を含む。該サービス要求にサービスプロデューサインスタンスcが1つしかなく、1つサービスプロデューサインスタンスについて順番がないため、該サービス要求にアクセスすべきシーケンスを含める必要がない。
【0080】
サービスプロキシ装置により受信された、第1のサービスプロデューサインスタンスaによりサービスコンシューマとして送信された新しいサービス要求は、第2のサービスプロデューサインスタンスb及び第3のサービスプロデューサインスタンスcの情報、並びに第2のサービスプロデューサインスタンスb及び第3のサービスプロデューサインスタンスcのアクセスシーケンスを含む。サービスプロキシ装置により受信された、第2のサービスプロデューサインスタンスbによりサービスコンシューマとして送信された新しいサービス要求は、第3のサービスプロデューサインスタンスcの情報を含む。該サービス要求にサービスプロデューサインスタンスcが1つしかなく、1つのサービスプロデューサインスタンスについて順番がないため、該サービス要求にアクセスすべきシーケンスを含める必要がない。
【0081】
1つの好ましい態様では、S240は、具体的に以下のステップを含む。
【0082】
該アクセスシーケンスに従って、該アクセスシーケンスにおける最初のサービスプロデューサインスタンスに該サービス要求及び該アクセスシーケンスを送信する。ここで、該アクセスシーケンスにおけるサービスプロデューサインスタンスは、サービス応答メッセージが順次返される前に、該アクセスシーケンスにおける全てのサービスプロデューサインスタンスによる処理が完了するまで、該サービス要求の処理を完了した後に、新しいサービス要求を処理させるようにサービスコンシューマとして該新しいサービス要求を次のサービスプロデューサインスタンスに送信する。
【0083】
この態様では、各サービスプロデューサインスタンスが直接通信を行う場合、任意のサービスプロデューサインスタンスは、サービス要求への応答を完了した後に、アクセスシーケンスにおける全てのサービスプロデューサインスタンスによる処理が完了するまで、アクセスシーケンスに従って、新しいサービス要求を処理させるようにサービスコンシューマとして該新しいサービス要求を次のサービスプロデューサインスタンスに送信してもよい。その後、サービス応答メッセージを順次返す。
【0084】
例えば、サービスコンシューマにより送信されるサービス要求に3つのサービスプロデューサタイプA、B、Cが含まれ、3つのサービスプロデューサタイプA、B、Cがサービスプロデューサインスタンスa、b、cに対応し、且つアクセスシーケンスがa、b、cである場合、以下のステップを行う。サービスプロキシ装置は、第1のサービスプロデューサインスタンスaにサービス要求を送信する。第1のサービスプロデューサインスタンスaは、サービス要求を処理した後、サービスコンシューマとして第2のサービスプロデューサインスタンスbに新しいサービス要求を送信する。第2のサービスプロデューサインスタンスbは、第1のサービスプロデューサインスタンスaによりサービスコンシューマとして送信された新しいサービス要求を処理し、該サービス要求を処理した後にサービスコンシューマとして第3のサービスプロデューサインスタンスcに新しいサービス要求を送信する。アクセスシーケンスにおける最後のサービスプロデューサインスタンスcは、サービス要求を処理した後、第2のサービスプロデューサインスタンスbにサービス応答メッセージを返す。第2のサービスプロデューサインスタンスbは、第1のサービスプロデューサインスタンスaに応答メッセージを送信する。第1のサービスプロデューサインスタンスaは、サービスコンシューマに応答メッセージを送信する。
【0085】
この態様の利点として、サービスプロキシ装置間で接続及び通信を行う必要がなく、サービスプロデューサインスタンス間でサービス要求を直接転送することができるため、サービス要求の転送時間を節約し、サービス要求の処理効率を向上させることができる。
【0086】
本開示の1つの実施例では、サービス要求の処理方法を提供する。該方法は、任意のサービスプロデューサインスタンス103により実行される。
【0087】
図5に示すように、該方法は、以下のステップを含む。
【0088】
S510において、サービス要求を受信する。該サービス要求は、アクセスすべきサービスプロデューサインスタンスの情報、及び該アクセスすべきサービスプロデューサインスタンスのアクセスシーケンスを含む。
【0089】
S520において、該サービス要求を処理する。
【0090】
S530において、サービスプロキシ装置が該アクセスシーケンスに従って次のサービスプロデューサインスタンスに新しいサービス要求を送信するように、該サービス要求を処理した後に、サービスコンシューマとして該サービスプロキシ装置に該新しいサービス要求を送信し、或いは、次のサービスプロデューサが新しいサービス要求を処理するように、該サービス要求を処理した後に、サービスコンシューマとして該アクセスシーケンスにおける次のサービスプロデューサインスタンスに該新しいサービス要求を送信する。
【0091】
S510において、サービス要求には、複数のサービスプロデューサタイプに加えて、アクセスすべきサービスプロデューサインスタンスの情報及びアクセスシーケンスが含まれる。
【0092】
アクセスすべきサービスプロデューサインスタンスとは、サービス要求を受信していないサービスプロデューサインスタンスを意味する。サービス要求を既に受信しており、且つサービス要求の処理をまだ開始していないサービスプロデューサインスタンスは、アクセスすべきサービスプロデューサインスタンスではないと見なされる。
【0093】
S530において、2つの好ましい態様がある。
【0094】
1番目の態様では、現在のサービスプロデューサインスタンスがサービス要求の処理を完了した後、サービスコンシューマとしてサービスプロキシ装置に新しいサービス要求を送信し、該サービス要求にはアクセスすべきサービスプロデューサインスタンスの情報及びアクセスすべきシーケンスが含まれ、サービスプロキシ装置が受信された新しいサービス要求で搬送された情報に基づいてアクセスすべきシーケンスにおける最初のサービスプロデューサインスタンスに新しいサービス要求を転送してもよい。
【0095】
2番目の態様では、サービスプロデューサインスタンス間で直接通信が可能な場合、現在のサービスプロデューサインスタンスがサービス要求の処理を完了した後、サービスコンシューマとして次のサービスプロデューサインスタンスに新しいサービス要求を送信する。
【0096】
図6は、本発明の1つの実施例に係るサービス要求の処理方法を示すインタラクティブなフローチャートである。
【0097】
なお、
図6における第1のサービスプロデューサインスタンス、第2のサービスプロデューサインスタンス、及び第3のサービスプロデューサインスタンスにおける「第1」、「第2」、「第3」は、単にサービスプロデューサインスタンスのアクセス順序のみを表し、サービスプロデューサインスタンスの数は単なる例示的なものである。実装の必要に応じて、任意の数のサービスプロデューサインスタンスを含んでもよい。
【0098】
S610において、サービスコンシューマ101は、サービスプロキシ装置102にサービス要求を送信する。該サービス要求に複数のサービスタイプが含まれている場合、サービスタイプの順序はサービスアクセスの順序と同一である。例えば、該サービス要求は、第1のサービスプロデューサインスタンス103’のサービスタイプ、第2のサービスプロデューサインスタンス103’’のサービスタイプ、及び第3のサービスプロデューサインスタンス103’’’のサービスタイプを含む。このように、該サービス要求は、まず、第1のサービスプロデューサインスタンス103’に送信され、第1のサービスプロデューサインスタンスがサービス要求を処理した後、次に、処理のために第2のサービスプロデューサインスタンス103’’に送信され、第2のサービスプロデューサインスタンスがサービス要求を処理した後、処理のために第3のサービスプロデューサインスタンス103’’’に送信される。
【0099】
S620において、サービスプロキシ装置102は、該サービス要求を受信した後、指定装置104にサービス発見要求を送信する。該サービス発見要求は、複数のサービスタイプを含む。指定装置104は、全てのサービスタイプを満たすサービスプロデューサインスタンスのリストを返し、サービスプロキシ装置102は、第1のサービスプロデューサインスタンス103’、第2のサービスプロデューサインスタンス103’’、及び第3のサービスプロデューサインスタンス103’’’を選択する。
【0100】
S630において、サービスプロキシ装置102は、サービスプロデューサインスタンスのアクセスシーケンスに従って、まず、第1のサービスプロデューサインスタンス103’にサービス要求を送信し、該サービス要求には、サービスプロキシ装置102により選択された第2のサービスプロデューサインスタンス103’’の情報及び第3のサービスプロデューサインスタンス103’’’の情報が搬送されている。
【0101】
S640において、第1のサービスプロデューサインスタンス103’は、サービス要求を処理した後、サービスコンシューマとしてサービスプロキシ装置102に新しいサービス要求を送信し、該新しいサービス要求には、第2のサービスプロデューサインスタンス103’’の情報及び第3のサービスプロデューサインスタンス103’’’の情報、並びに第2のサービスプロデューサインスタンス103’’及び第3のサービスプロデューサインスタンス103’’’のアクセスシーケンスが搬送されている。
【0102】
S650において、サービスプロキシ装置102は、アクセスすべきシーケンスに従って、第1のサービスプロデューサインスタンス103’によりサービスコンシューマとして送信された新しいサービス要求を第2のサービスプロデューサインスタンス103’’に転送する。第2のサービスプロデューサインスタンス103’’は、第1のサービスプロデューサインスタンス103’によりサービスコンシューマとして送信された新しいサービス要求を処理する。該新しいサービス要求には、第3のサービスプロデューサインスタンス103’’’の情報が搬送されている。
【0103】
S660において、第2のサービスプロデューサインスタンス103’’は、サービス要求を処理した後、サービスコンシューマとしてサービスプロキシ装置102に新しいサービス要求を送信し、該新しいサービス要求には、第3のサービスプロデューサインスタンス103’’’の情報が搬送されている。
【0104】
S670において、サービスプロキシ装置102は、アクセスすべきシーケンスに従って、第2のサービスプロデューサインスタンス103’’によりサービスコンシューマとして送信された新しいサービス要求を第3のサービスプロデューサインスタンス103’’’に転送する。第3のサービスプロデューサインスタンス103’’’は、第2のサービスプロデューサインスタンス103’’によりサービスコンシューマとして送信された新しいサービス要求を処理する。
【0105】
図7に示すサービス要求の処理方法のインタラクティブなプロセスでは、S710~S730は、
図6におけるS610~S630と同様であるため、その説明を省略する。
【0106】
S740において、第1のサービスプロデューサインスタンス103’は、第2のサービスプロデューサインスタンス103’’と直接通信することができる。従って、第1のサービスプロデューサインスタンス103’は、サービス要求を処理した後、サービスコンシューマとして、第2のサービスプロデューサインスタンス103’’に新しいサービス要求を直接送信する。
【0107】
S750において、第2のサービスプロデューサインスタンス103’’は、第3のサービスプロデューサインスタンス103’’’と直接通信することができる。従って、第2のサービスプロデューサインスタンス103’’は、サービス要求を処理した後、サービスコンシューマとして、第3のサービスプロデューサインスタンス103’’’に新しいサービス要求を直接送信する。
【0108】
図8は、本発明の1つの実施例に係るSMFの応用シナリオに適用されるサービス要求の処理方法を示すインタラクティブなフローチャートである。
【0109】
5Gコアネットワークでは、様々なタイプのコントロールプレーンのネットワークエレメントを様々なタイプのネットワーク機能(Network Function:NF)と見なしてもよい。各NFには1つ以上のNF serviceが含まれてもよい。既存のコアネットワークプロセスでは、ネットワークエレメントNF間の呼び出しは、NF serviceの呼び出しにより表される。5Gコアネットワークホームのホームローミングシナリオにおいてセッション管理機能(Session Management Function:SMF)により選択された応用シナリオでは、サービスコンシューマ101は、アクセス及びモビリティ管理機能(Access and Mobility Management Function:AMF)である。S810において、AMFは、サービスプロキシ装置102にサービス要求を送信し、サービス要求は、V-SMF及びH-SMFのサービスタイプ、並びに順序指示情報を含む。S820において、サービスプロキシ装置102は、サービス要求に従って指定装置104にサービス発見要求を送信する。指定装置104は、サービス発見要求に応答し、サービスプロキシ装置102に全てのサービスタイプを満たすサービスプロデューサインスタンスのリストを返す。サービスプロキシ装置102は、V-SMF及びH-SMFインスタンスを選択し、選択されたV-SMF及びH-SMFインスタンスのアクセスシーケンスに従ってサービス要求を順次送信する。S830において、サービスプロキシ装置102は、アクセスシーケンスに従って、まず、V-SMFインスタンスにサービス要求を送信し、送信されたサービス要求は、H-SMFインスタンスの情報を含む。S840において、V-SMFインスタンスは、処理を完了した後、サービスコンシューマとして、サービスプロキシ装置102に新しいサービス要求を送信し、該新しいサービス要求は、H-SMFインスタンスの情報を含む。S850において、サービスプロキシ装置102は、V-SMFインスタンスによりサービスコンシューマとして送信された新しいサービス要求のメッセージを受信した後、H-SMFインスタンスに新しいサービス要求を送信する。
【0110】
図9は、本発明の1つの実施例に係るPCFの応用シナリオに適用されるサービス要求の処理方法を示すインタラクティブなフローチャートである。
【0111】
5Gコアネットワークのホームローミングシナリオにおいてポリシー制御機能(Policy Control Function:PCF)により選択された応用シナリオでは、サービスコンシューマ101は、NFである。NFが訪問V-PCFとホームH-PCFの両方を選択する必要がある場合、V-PCF及びH-PCFは、サービスプロデューサインスタンス103である。S910において、NFは、サービスプロキシ装置102にサービス要求を送信し、サービス要求は、V-PCF及びH-PCFのサービスタイプ、並びに順序指示情報を含む。S920において、サービスプロキシ装置102は、サービス要求に従って指定装置104にサービス発見要求を送信する。指定装置104は、サービス発見要求に応答し、サービスプロキシ装置102に全てのサービスタイプを満たすサービスプロデューサインスタンスのリストを返す。サービスプロキシ装置102は、V-PCF及びH-PCFインスタンスを選択し、選択されたV-PCF及びH-PCFインスタンスのアクセスシーケンスに従ってサービス要求を順次送信する。S930において、サービスプロキシ装置102は、アクセスシーケンスに従って、まず、V-PCFインスタンスにサービス要求を送信し、送信されたサービス要求は、H-PCFインスタンスの情報を含む。S940において、V-PCFインスタンスは、処理を完了した後、サービスコンシューマとして、サービスプロキシ装置102に新しいサービス要求を送信し、該新しいサービス要求は、H-PCFインスタンスの情報を含む。S950において、サービスプロキシ装置102は、V-PCFインスタンスによりサービスコンシューマとして送信された新しいサービス要求のメッセージを受信した後、H-PCFインスタンスに新しいサービス要求を送信する。
【0112】
図10に示すように、本発明の1つの実施例では、サービス要求の処理装置を提供する。本発明の装置の実施例に開示されていない詳細について、上記のサービス要求の処理方法の実施例を参照してもよい。ここで、該装置は、以下のモジュールを含む。
【0113】
受信モジュール1010は、サービスコンシューマにより送信されたサービス要求を受信する。該サービス要求は、複数のサービスプロデューサタイプを含む。
【0114】
取得モジュール1020は、該サービス要求に基づいて、該複数のサービスプロデューサタイプにそれぞれ対応するサービスプロデューサインスタンスを取得する。
【0115】
決定モジュール1030は、該複数のサービスプロデューサタイプに対応するサービスプロデューサインスタンスのアクセスシーケンスを決定する。
【0116】
制御モジュール1040は、該複数のサービスプロデューサタイプに対応するサービスプロデューサインスタンスが該アクセスシーケンスに従って該サービス要求を処理するように制御する。
【0117】
1つの態様では、制御モジュール1040は、該アクセスシーケンスに従って、該アクセスシーケンスにおける最初のサービスプロデューサインスタンスに該サービス要求を送信する。ここで、ターゲットサービスプロデューサインスタンスがサービス要求の処理を完了した後にサービスコンシューマとして送信した新しいサービスが受信された場合、アクセスすべきシーケンスにおける最初のサービスプロデューサインスタンスに該新しいサービス要求を転送し、該ターゲットサービスプロデューサインスタンスは、該複数のサービスプロデューサタイプに対応するサービスプロデューサインスタンスのうちの1つである。
【0118】
1つの態様では、該ターゲットサービスプロデューサインスタンスがサービス要求の処理を完了した後にサービスコンシューマとして送信した新しいサービスは、該アクセスシーケンスにおける該ターゲットサービスプロデューサインスタンスの後に位置するサービスプロデューサインスタンスの情報、及び該アクセスすべきシーケンスを含む。該アクセスすべきシーケンスにおける最初のサービスプロデューサインスタンスにより転送された該新しいサービス要求は、該アクセスすべきシーケンスにおける最初のサービスプロデューサインスタンスの後に位置するサービスプロデューサインスタンスの情報、及び該アクセスすべきシーケンスを含む。
【0119】
1つの態様では、制御モジュール1040は、該アクセスシーケンスに従って、該アクセスシーケンスにおける最初のサービスプロデューサインスタンスに該サービス要求及び該アクセスシーケンスを送信する。ここで、該アクセスシーケンスにおけるサービスプロデューサインスタンスは、サービス応答メッセージが順次返される前に、該アクセスシーケンスにおける全てのサービスプロデューサインスタンスによる処理が完了するまで、該サービス要求の処理を完了した後に、新しいサービス要求を処理させるようにサービスコンシューマとして該新しいサービス要求を次のサービスプロデューサインスタンスに送信する。
【0120】
1つの態様では、取得モジュール1020は、以下の各部を含む。
【0121】
送信部は、該複数のサービスプロデューサタイプに基づいて、指定装置にサービス発見要求を送信する。
【0122】
受信部は、該サービス発見要求に基づいて該指定装置により返されたサービスプロデューサインスタンスリストを受信する。
【0123】
選択部は、該サービスプロデューサインスタンスリストから、該複数のサービスプロデューサタイプに対応するサービスプロデューサインスタンスを選択する。
【0124】
1つの態様では、取得モジュール1020は、履歴サービス発見結果に、該複数のサービスプロデューサタイプに対応し、且つ該サービス要求におけるパラメータ情報を満たすサービスプロデューサインスタンスが記憶されているか否かを検出し、記憶されている場合、該履歴サービス発見結果から、該複数のサービスプロデューサタイプに対応し、且つ該サービス要求におけるパラメータ情報を満たすサービスプロデューサインスタンスを取得し、記憶されていない場合、該複数のサービスプロデューサタイプに基づいて該指定装置にサービス発見要求を送信する。
【0125】
1つの態様では、該履歴サービス発見結果について有効時間が設定されている。該履歴サービス発見結果に、該複数のサービスプロデューサタイプに対応し、且つ該サービス要求におけるパラメータ情報を満たすサービスプロデューサインスタンスが記憶されている場合、取得モジュール1020は、該履歴サービス発見結果が有効時間を超えているか否かを判断し、該履歴サービス発見結果が有効時間を超えている場合、該複数のサービスプロデューサタイプに基づいて該指定装置にサービス発見要求を送信し、該履歴サービス発見結果が有効時間を超えていない場合、該履歴サービス発見結果から、該複数のサービスプロデューサタイプに対応し、且つ該サービス要求におけるパラメータ情報を満たすサービスプロデューサインスタンスを取得する。
【0126】
1つの態様では、決定モジュール1030は、該サービス要求における順序指示情報に基づいて、該複数のサービスプロデューサタイプの並び替え順序を決定し、該複数のサービスプロデューサタイプの並び替え順序を、該複数のサービスプロデューサタイプに対応するサービスプロデューサインスタンスのアクセスシーケンスとする。
【0127】
本発明の1つの実施例では、サービス要求の処理装置をさらに提供する。該装置は、以下のモジュールを含む。
【0128】
受信モジュールは、サービス要求を受信する。該サービス要求は、アクセスすべきサービスプロデューサインスタンスの情報、及び該アクセスすべきサービスプロデューサインスタンスのアクセスシーケンスを含む。
【0129】
応答モジュールは、該サービス要求に応答する。
【0130】
送信モジュールは、サービスプロキシ装置が該アクセスシーケンスに従って次のサービスプロデューサインスタンスに新しいサービス要求を送信するように、該サービス要求に応答した後に、サービスコンシューマとして該サービスプロキシ装置に該新しいサービス要求を送信し、或いは、次のサービスプロデューサが新しいサービス要求を処理するように、該サービス要求に応答した後に、サービスコンシューマとして該アクセスシーケンスにおける次のサービスプロデューサインスタンスに該新しいサービス要求を送信する。
【0131】
以下は、
図11を参照しながら本発明の実施例に係るサーバ101を説明する。
図11に示すサーバ101は、単なる一例であり、本発明の実施例の機能及び使用範囲を制限するものではない。
【0132】
図11に示すように、サーバ101は、汎用コンピューティング装置の形態で表されている。サーバ101の構成要素は、少なくとも1つの処理部1110、少なくとも1つの記憶部1120、及び異なるシステム構成要素(記憶部1120及び処理部1110を含む)を接続するバス1130を含んでもよいが、これらに限定されない。ここで、記憶部にはプログラムコードが記憶され、該プログラムコードが処理部1110により実行されることができるため、処理部1110は、本明細書の上記の例示的な方法の説明部分に記載された様々な例示的な方法を実行する。例えば、処理部1110は、
図2に示す各ステップを実行してもよい。
【0133】
記憶部1120は、例えばランダムアクセスメモリ(RAM)11201及び/又はキャッシュメモリ11202などの揮発性記憶部の形態の読み取り可能な媒体を含んでもよく、読み取り専用メモリ(ROM)11203をさらに含んでもよい。
【0134】
記憶部1120は、1組(少なくとも1つ)のプログラムモジュール11205を有するプログラム/ユーティリティツール11204を含んでもよい。該プログラムモジュール11205は、オペレーティングシステム、1つ又は複数のアプリケーションプログラム、他のプログラムモジュール及びプログラムデータを含むが、これらに限定されない。これらの例のそれぞれ又は幾つかの組み合わせには、ネットワーク環境の実装を含む場合がある。
【0135】
バス1130は、幾つかのタイプのバス構造のうちの1つ又は複数として表されてもよく、記憶部バス又は記憶部コントローラ、周辺バス、グラフィックスアクセラレーションポート、処理部、又は複数のバスの中の任意のバス構造を使用するローカルエリアを含む。
【0136】
サービスプロキシ装置102は、1つ又は複数の外部装置700(キーボード、ポインティング装置、ブルートゥース装置など)と通信することができ、また、ユーザにサービスプロキシ装置102とインタラクションを行わせる可能な1つ又は複数の装置と通信することもでき、且つ/或いは、サービスプロキシ装置102に1つ又は複数の他のコンピューティング装置と通信させる可能な任意の装置(例えば、ルータ、モデムなど)と通信することができる。このような通信は、入力/出力(I/O)インターフェース1150を介して行われてもよい。また、サービスプロキシ装置102は、ネットワークアダプタ1160を介して、1つ又は複数のネットワーク(例えば、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、及び/又は例えばインターネットなどのパブリックネットワーク)と通信することができる。図に示すように、ネットワークアダプタ1160は、バス1130を介してサービスプロキシ装置102の他のモジュールと通信する。なお、図示されていないが、サービスプロキシ装置102は、他のハードウェア及び/又はソフトウェアモジュールと組み合わせて使用されてもよく、該他のハードウェア及び/又はソフトウェアモジュールは、マイクロコード、装置ドライバ、冗長処理部、外部ディスクドライブアレイ、RAIDシステム、テープドライブ、及びデータバックアップ記憶システムなどを含むが、これらに限定されない。
【0137】
以上の実施形態の説明を通じて、当業者は、本明細書で説明される例示的な実施形態がソフトウェアにより実施されてもよいし、ソフトウェアを必要なハードウェアと組み合わせることにより実施されてもよいことを容易に理解することができる。従って、本発明の実施形態に係る技術的手段は、ソフトウェアプロダクトの形態で表されてもよく、該ソフトウェアプロダクトは、不揮発性記憶媒体(CD-ROM、USBディスク、モバイルハードディスクなどであってもよい)又はネットワークに記憶されてもよく、コンピューティング装置(パーソナルコンピュータ、サーバ、端末装置、又はネットワーク装置などであってもよい)に本発明の実施形態に係る方法を実行させるための幾つかの命令を含む。
【0138】
また、本発明の実施例は、コンピュータプログラムが記憶されている記憶媒体をさらに提供し、該コンピュータプログラムは、上記の実施例に係る方法を実行するために使用される。
【0139】
本発明の実施例は、命令を含むコンピュータプログラムプロダクトをさらに提供し、コンピュータにより実行される際に、該コンピュータに、上記の実施例に係る方法を実行させる。
【0140】
プログラムプロダクトは、1つ又は複数の読み取り可能な媒体の任意の組み合わせを使用してもよい。読み取り可能な媒体は、読み取り可能な信号媒体又は読み取り可能な記憶媒体であってもよい。読み取り可能な記憶媒体は、例えば、電気的、磁気的、光学的、電磁気的、赤外線、若しくは半導体のシステム、装置、又はデバイス、又は上記の何れかの組み合わせであってもよいが、これらに限定されない。読み取り可能な記憶媒体のより具体的な例(網羅的ではないリスト)は、1つ又は複数のワイヤの電気的接続、ポータブルディスク、ハードディスク、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、消去可能タイプのプログラミング可能な読み取り専用メモリ(EPROM又はフラッシュメモリ)、光ファイバ、ポータブルコンパクトディスク読み取り専用メモリ(CD-ROM)、光ストレージデバイス、磁気ストレージデバイス、又は上記の任意の適切な組み合わせを含む。
【0141】
コンピュータ読み取り可能な信号媒体は、ベースバンドでのデータ信号、又は搬送波の一部として伝搬されるデータ信号を含んでもよく、読み取り可能なプログラムコードを搬送する。この伝搬されるデータ信号は、電磁信号、光信号、又は前述の任意の適切な組み合わせなどの様々な形態を採用してもよいが、これらに限定されない。読み取り可能な信号媒体は、読み取り可能な記憶媒体以外の任意の読み取り可能な媒体であってよく、該読み取り可能な媒体は、命令実行システム、装置、又はデバイスにより使用され、或いはそれらと組み合わせて使用するためのプログラムを送信、伝播、或いは送信してもよい。
【0142】
読み取り可能な媒体に含まれるプログラムコードは、無線、有線、光ケーブル、RFなどの任意の適切な媒体、又は前述の任意の適切な組み合わせにより送信されてもよいが、これらに限定されない。
【0143】
本発明の動作を実行するために使用されるプログラムコードは、1つ又は複数のプログラミング言語の任意の組み合わせで記述されてもよい。プログラミング言語は、Java、C++などのオブジェクト指向のプログラミング言語を含んでもよいし、「C」言語又は同様のプログラミング言語などの従来の手続型プログラミング言語を含んでもよい。プログラムコードは、完全にユーザのコンピューティングデバイス上で実行されてもよいし、部分的にユーザのデバイス上で実行されてもよいし、独立したソフトウェアパケットとして実行されてもよいし、部分的にユーザのデバイス上で実行され、且つ部分的にリモートコンピューティングデバイス上で実行されてもよいし、完全にリモートコンピューティングデバイス又はサーバ上で実行されてもよい。リモートコンピューティングデバイスの場合、リモートコンピューティングデバイスは、ローカルエリアネットワーク(LAN)又はワイドエリアネットワーク(WAN)を含む任意の種類のネットワークを介してユーザコンピューティングデバイスに接続されてもよいし、外部コンピューティングデバイスに接続されてもよい(例えば、インターネットサービスプロバイダーを使用してインターネットを介して接続する)。
【0144】
なお、以上は、動作を実行するためのデバイスの幾つかのモジュール又はユニットを詳細に説明しているが、このような分割は必須ではない。実際には、本発明の実施形態に応じて、上記の2つ以上のモジュール又はユニットの特徴及び機能は、1つのモジュール又はユニットに具体化されてもよい。逆に、上記のモジュール又はユニットの特徴及び機能は、具体化される複数のモジュール又はユニットにさらに分割してもよい。
【0145】
さらに、本発明に係る方法の様々なステップは、図面において特定の順序で記載されているが、これは、これらのステップが特定の順序で実行されなければならないこと、又は示された全てのステップが実行されなければならないことを必要としておらず、或いは暗示しない。望ましい結果を達成するために、追加的又は代替的に、幾つかのステップが省略されてもよく、複数のステップが実行のために1つのステップに結合されてもよいし、且つ/或いは1つのステップが実行のために複数のステップに分割されてもよい。
【0146】
以上の実施形態の説明を通じて、当業者は、本明細書で説明される例示的な実施形態がソフトウェアにより実施されてもよいし、ソフトウェアを必要なハードウェアと組み合わせることにより実施されてもよいことを容易に理解することができる。従って、本発明の実施形態に係る技術的手段は、ソフトウェアプロダクトの形態で表されてもよく、該ソフトウェアプロダクトは、不揮発性記憶媒体(CD-ROM、USBディスク、モバイルハードディスクなどであってもよい)又はネットワークに記憶されてもよく、コンピューティング装置(パーソナルコンピュータ、サーバ、端末装置、又はネットワーク装置などであってもよい)に本発明の実施形態に係る方法を実行させるための幾つかの命令を含む。
【0147】
当業者は、本発明の説明を検討し、本明細書に適用される本発明を実施した後、本発明の他の実施形態を容易に考えることができる。本発明は、本発明の任意の変形例、用途、又は適応な変更をカバーすることを目的としている。これらの変形例、用途、又は適応な変更は、本発明の一般原則に従い、本発明に適用されない本技術分野の一般的な知識又は慣習的な技術的手段を含む。明細書及び実施形態は、単に例示的なものであり、本発明の範囲及び主旨は、添付の特許請求の範囲により特定される。