(57)【要約】【課題】フローを制御するための方法と装置が開示されている。【解決手段】上記方法の１つの具体的な実施形態では、分散システムにおける複数のフロー制御ノードのノード識別子と分散システムによって制御される少なくとも１種類のリソースのリソース識別子を取得することと、複数のノード識別子と少なくとも１つのリソース識別子に基づいて、分散システムにおける少なくとも１種類のリソースを制御するための少なくとも１つのフロー制御ノードがリソース制御ノードであることが確定されることと、少なくとも１種類のリソースの割り当てクォータを取得することと、少なくとも１つの割り当てクォータを対応するリソースを制御するリソース制御ノードに送信することにより、リソース制御ノードが分散システムにおけるフロー制御ノードに対して制御クォータを確定することと、を含む。この実施形態は、複数の種類のリソースに対するフロー制御を実現することができる。【選択図】図２
2020135848.tif 000002
【特許請求の範囲】
【請求項１】
複数のフロー制御ノードを含む分散システムにおける管理ノードに適用されるフローを制御するための方法であって、
分散システムにおける複数のフロー制御ノードのノード識別子と分散システムによって制御される少なくとも１種類のリソースのリソース識別子を取得することと、
複数のノード識別子と少なくとも１つのリソース識別子に基づいて、分散システムにおける前記少なくとも１種類のリソースを制御するための少なくとも１つのフロー制御ノードがリソース制御ノードであることが確定されることと、
前記少なくとも１種類のリソースの割り当てクォータを取得することと、
少なくとも１つの割り当てクォータを対応するリソースを制御するリソース制御ノードに送信することにより、リソース制御ノードが分散システムにおけるフロー制御ノードに対して制御クォータを確定することと、
を含むフローを制御するための方法。
【請求項２】
前記分散システムにおける複数のフロー制御ノードのノード識別子を取得することは、
ノード数変更メッセージを受信したことに応答して、分散システムにおける複数のフロー制御ノードのノード識別子を取得することを含む、
請求項１に記載の方法。
【請求項３】
負荷不均衡メッセージを受信したことに応答して、前記負荷不均衡メッセージに含まれるリソース識別子を確定することと、
分散システムにおける複数のフロー制御ノードが確定されたリソース識別子に対して示すリソースの使用クォータを取得することと、
取得された使用クォータを確定されたリソース識別子が示すリソースを制御するリソース制御ノードに送信することにより、リソース制御ノードが制御クォータを調整することと、
をさらに含む請求項１に記載の方法。
【請求項４】
管理ノードと複数のフロー制御ノードを含む分散システムにおける、複数のフロー制御ノードのうち少なくとも１種類のリソースを制御するためのフロー制御ノードであるリソース制御ノードに適用されるフローを制御するための方法であって、
リソース識別子及び対応する割り当てクォータを受信することと、
分散システムにおけるフロー制御ノードの第１の数及びノード識別子を取得することと、
前記割り当てクォータ及び前記第１の数に基づいて、分散システムにおけるフロー制御ノードの制御クォータを確定することと、
前記リソース識別子、分散システムにおけるフロー制御ノードのノード識別子および制御クォータに基づいて、リソース制御データを生成することと、
生成されたリソース制御データを少なくとも１つのフロー制御ノードに同期させることと、
を含むフローを制御するための方法。
【請求項５】
分散システムにおけるフロー制御ノードによるリソースの使用クォータを受信したことに応答して、受信した使用クォータおよびフロー制御ノードの制御クォータに基づいて、分散システムにおけるフロー制御ノードの制御クォータを調整することと、
前記リソース識別子、分散システムにおけるフロー制御ノードのノード識別子および調整された制御クォータに基づいて、更新されたリソース制御データを生成することと、
をさらに含む請求項４に記載の方法。
【請求項６】
リソース制御データのデータバージョン番号を生成することをさらに含み、
前記生成されたリソース制御データを少なくとも１つのフロー制御ノードに同期させることは、
生成されたリソース制御データおよびデータバージョン番号を少なくとも１つのフロー制御ノードに同期させることを含む、
請求項４または５に記載の方法。
【請求項７】
リソース制御データおよびデータバージョン番号を受信することと、
受信したリソース制御データおよびデータバージョン番号をローカルに記憶することにより、要求を受信したときにデータバージョン番号に基づいて最新バージョンのリソース制御データを確定し、最新バージョンのリソース制御データに基づいて要求を処理することと、
をさらに含む請求項６に記載の方法。
【請求項８】
前記生成されたリソース制御データを少なくとも１つのノードに同期させることは、
予め設定されたデータブロック長さに応じて、生成されたリソース制御データを少なくとも１つのデータブロックに分割することと、
前記少なくとも１つのデータブロックにおけるデータブロックのチェックサムを計算することにより、チェックサムリストを得ることと、
前記チェックサムリストを前記少なくとも１つのフロー制御ノードに送信することにより、前記少なくとも１つのフロー制御ノードが前記チェックサムリストに基づいて増分データを確定することと、
前記増分データを前記少なくとも１つのフロー制御ノードに送信することにより、同期を完了することと、
を含む、
請求項４に記載の方法。
【請求項９】
複数のフロー制御ノードを含む分散システムにおける管理ノードに配置されるフローを制御するための装置であって、
分散システムにおける複数のフロー制御ノードのノード識別子と分散システムによって制御される少なくとも１種類のリソースのリソース識別子を取得するように構成された第１の取得ユニットと、
複数のノード識別子と少なくとも１つのリソース識別子に基づいて、分散システムにおける前記少なくとも１種類のリソースを制御するための少なくとも１つのフロー制御ノードがリソース制御ノードであることが確定されるように構成された制御ノード確定ユニットと、
前記少なくとも１種類のリソースの割り当てクォータを取得するように構成された第２の取得ユニットことと、
少なくとも１つの割り当てクォータを対応するリソースを制御するリソース制御ノードに送信することにより、リソース制御ノードが分散システムにおけるフロー制御ノードに対して制御クォータを確定するように構成された第１の情報送信ユニットと、
を含むフローを制御するための装置。
【請求項１０】
前記第１の取得ユニットは、さらに、ノード数変更メッセージを受信したことに応答して、分散システムにおける複数のフロー制御ノードのノード識別子を取得するように構成される、
請求項９に記載の装置。
【請求項１１】
負荷不均衡メッセージを受信したことに応答して、前記負荷不均衡メッセージに含まれるリソース識別子を確定するように構成されたリソース識別子確定ユニットと、
分散システムにおける複数のフロー制御ノードが確定されたリソース識別子に対して示すリソースの使用クォータを取得するように構成された使用クォータ取得ユニットと、
取得された使用クォータを確定されたリソース識別子が示すリソースを制御するリソース制御ノードに送信することにより、リソース制御ノードが制御クォータを調整するように構成された第２の情報送信ユニットと、
をさらに含む請求項９に記載の装置。
【請求項１２】
管理ノードと複数のフロー制御ノードを含む分散システムにおける、複数のフロー制御ノードのうち少なくとも１種類のリソースを制御するためのフロー制御ノードであるリソース制御ノードに配置されるフローを制御するための装置であって、
リソース識別子及び対応する割り当てクォータを受信するように構成された第１の受信ユニットと、
分散システムにおけるフロー制御ノードの第１の数及びノード識別子を取得するように構成された第３の取得ユニットと、
前記割り当てクォータ及び前記第１の数に基づいて、分散システムにおけるフロー制御ノードの制御クォータを確定するように構成された制御クォータ確定ユニットと、
前記リソース識別子、分散システムにおけるフロー制御ノードのノード識別子および制御クォータに基づいて、リソース制御データを生成するように構成された制御データ生成ユニットと、
生成されたリソース制御データを少なくとも１つのフロー制御ノードに同期させるように構成された制御データ同期ユニットと、
を含むフローを制御するための装置。
【請求項１３】
分散システムにおけるフロー制御ノードによるリソースの使用クォータを受信したことに応答して、受信した使用クォータおよびフロー制御ノードの制御クォータに基づいて、分散システムにおけるフロー制御ノードの制御クォータを調整するように構成された制御クォータ調整ユニットと、
前記リソース識別子、分散システムにおけるフロー制御ノードのノード識別子および調整された制御クォータに基づいて、更新されたリソース制御データを生成するように構成された制御データ更新ユニットと、
をさらに含む請求項１２に記載の装置。
【請求項１４】
リソース制御データのデータバージョン番号を生成するように構成されたバージョン番号生成ユニットをさらに含み、
前記制御データ同期ユニットは、さらに、生成されたリソース制御データおよびデータバージョン番号を少なくとも１つのフロー制御ノードに同期させるように構成される、
請求項１２または１３に記載の装置。
【請求項１５】
リソース制御データおよびデータバージョン番号を受信するように構成された第２の受信ユニットと、
受信したリソース制御データおよびデータバージョン番号をローカルに記憶することにより、要求を受信したときにデータバージョン番号に基づいて最新バージョンのリソース制御データを確定し、最新バージョンのリソース制御データに基づいて要求を処理するように構成された記憶ユニットと、
をさらに含む請求項１４に記載の装置。
【請求項１６】
前記制御データ同期ユニットは、さらに、
予め設定されたデータブロック長さに応じて、生成されたリソース制御データを少なくとも１つのデータブロックに分割し、
前記少なくとも１つのデータブロックにおけるデータブロックのチェックサムを計算することにより、チェックサムリストを得て、
前記チェックサムリストを前記少なくとも１つのフロー制御ノードに送信することにより、前記少なくとも１つのフロー制御ノードが前記チェックサムリストに基づいて増分データを確定し、
前記増分データを前記少なくとも１つのフロー制御ノードに送信することにより、同期を完了するように構成される、
請求項１２に記載の装置。
【請求項１７】
１つ以上のプロセッサと、
１つ以上のプログラムが記憶された記憶装置と、
を含み、
前記１つ以上のプログラムが前記１つ以上のプロセッサによって実行されるとき、請求項１から３のいずれか１項に記載の方法を前記１つ以上のプロセッサに実現させる、
サーバー。
【請求項１８】
１つ以上のプロセッサと、
１つ以上のプログラムが記憶された記憶装置と、
を含み、
前記１つ以上のプログラムが前記１つ以上のプロセッサによって実行されるとき、請求項４から８のいずれか１項に記載の方法を前記１つ以上のプロセッサに実現させる、
サーバー。
【請求項１９】
コンピュータプログラムが記憶されたコンピュータ可読記憶媒体であって、
前記コンピュータプログラムがプロセッサによって実行されるとき、請求項１から３のいずれか１項に記載の方法を実現する、
コンピュータ可読記憶媒体。
【請求項２０】
コンピュータプログラムが記憶されたコンピュータ可読記憶媒体であって、
前記コンピュータプログラムがプロセッサによって実行されるとき、請求項４から８のいずれか１項に記載の方法を実現する、
コンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施例は、コンピュータ技術の分野に関し、具体的にはフローを制御するための方法と装置に関する。
【背景技術】
【０００２】
ネットワーク通信において、限られたネットワークリソースの効果をより発揮させ、ユーザからのバーストトラフィックがネットワークを混雑させることを防止するために、ユーザトラフィックを制御する必要がある。リソースの有効利用を達成し、リソースの利用率を向上させるために、多対一の分散ネットワーク環境に対して、合理的なフロー制御方案が緊急に必要である。
【発明の概要】
【課題を解決するための手段】
【０００３】
本発明の実施例は、フローを制御するための方法と装置を提案する。
【０００４】
第１態様において、複数のフロー制御ノードを含む分散システムにおける管理ノードに適用されるフローを制御するための方法であって、分散システムにおける複数のフロー制御ノードのノード識別子と分散システムによって制御される少なくとも１種類のリソースのリソース識別子を取得することと、複数のノード識別子と少なくとも１つのリソース識別子に基づいて、分散システムにおける前記少なくとも１種類のリソースを制御するための少なくとも１つのフロー制御ノードがリソース制御ノードであることが確定されることと、前記少なくとも１種類のリソースの割り当てクォータを取得することと、少なくとも１つの割り当てクォータを対応するリソースを制御するリソース制御ノードに送信することにより、リソース制御ノードが分散システムにおけるフロー制御ノードに対して制御クォータを確定することと、を含むフローを制御するための方法を提供する。
【０００５】
幾つかの実施例において、前記分散システムにおける複数のフロー制御ノードのノード識別子を取得することは、ノード数変更メッセージを受信したことに応答して、分散システムにおける複数のフロー制御ノードのノード識別子を取得することを含む。
【０００６】
幾つかの実施例において、負荷不均衡メッセージを受信したことに応答して、前記負荷不均衡メッセージに含まれるリソース識別子を確定することと、分散システムにおける複数のフロー制御ノードが確定されたリソース識別子に対して示すリソースの使用クォータを取得することと、取得された使用クォータを確定されたリソース識別子が示すリソースを制御するリソース制御ノードに送信することにより、リソース制御ノードが制御クォータを調整することと、をさらに含む。
【０００７】
第２態様において、管理ノードと複数のフロー制御ノードを含む分散システムにおける、複数のフロー制御ノードのうち少なくとも１種類のリソースを制御するためのフロー制御ノードであるリソース制御ノードに適用されるフローを制御するための方法であって、リソース識別子及び対応する割り当てクォータを受信することと、分散システムにおけるフロー制御ノードの第１の数及びノード識別子を取得することと、前記割り当てクォータ及び前記第１の数に基づいて、分散システムにおけるフロー制御ノードの制御クォータを確定することと、前記リソース識別子、分散システムにおけるフロー制御ノードのノード識別子および制御クォータに基づいて、リソース制御データを生成することと、生成されたリソース制御データを少なくとも１つのフロー制御ノードに同期させることと、を含むフローを制御するための方法を提供する。
【０００８】
幾つかの実施例において、分散システムにおけるフロー制御ノードによるリソースの使用クォータを受信したことに応答して、受信した使用クォータおよびフロー制御ノードの制御クォータに基づいて、分散システムにおけるフロー制御ノードの制御クォータを調整することと、前記リソース識別子、分散システムにおけるフロー制御ノードのノード識別子および調整された制御クォータに基づいて、更新されたリソース制御データを生成することと、をさらに含む。
【０００９】
幾つかの実施例において、リソース制御データのデータバージョン番号を生成することをさらに含み、前記生成されたリソース制御データを少なくとも１つのフロー制御ノードに同期させることは、生成されたリソース制御データおよびデータバージョン番号を少なくとも１つのフロー制御ノードに同期させることを含む。
【００１０】
幾つかの実施例において、リソース制御データおよびデータバージョン番号を受信することと、受信したリソース制御データおよびデータバージョン番号をローカルに記憶することにより、要求を受信したときにデータバージョン番号に基づいて最新バージョンのリソース制御データを確定し、最新バージョンのリソース制御データに基づいて要求を処理することと、をさらに含む。
【００１１】
幾つかの実施例において、前記生成されたリソース制御データを少なくとも１つのノードに同期させることは、予め設定されたデータブロック長さに応じて、生成されたリソース制御データを少なくとも１つのデータブロックに分割することと、前記少なくとも１つのデータブロックにおけるデータブロックのチェックサムを計算することにより、チェックサムリストを得ることと、前記チェックサムリストを前記少なくとも１つのフロー制御ノードに送信することにより、前記少なくとも１つのフロー制御ノードが前記チェックサムリストに基づいて増分データを確定することと、前記増分データを前記少なくとも１つのフロー制御ノードに送信することにより、同期を完了することと、を含む。
【００１２】
第３態様において、複数のフロー制御ノードを含む分散システムにおける管理ノードに配置されるフローを制御するための装置であって、分散システムにおける複数のフロー制御ノードのノード識別子と分散システムによって制御される少なくとも１種類のリソースのリソース識別子を取得するように構成された第１の取得ユニットと、複数のノード識別子と少なくとも１つのリソース識別子に基づいて、分散システムにおける前記少なくとも１種類のリソースを制御するための少なくとも１つのフロー制御ノードがリソース制御ノードであることが確定されるように構成された制御ノード確定ユニットと、前記少なくとも１種類のリソースの割り当てクォータを取得するように構成された第２の取得ユニットことと、少なくとも１つの割り当てクォータを対応するリソースを制御するリソース制御ノードに送信することにより、リソース制御ノードが分散システムにおけるフロー制御ノードに対して制御クォータを確定するように構成された第１の情報送信ユニットと、を含むフローを制御するための装置を提供する。
【００１３】
幾つかの実施例において、前記第１の取得ユニットは、さらに、ノード数変更メッセージを受信したことに応答して、分散システムにおける複数のフロー制御ノードのノード識別子を取得するように構成される
【００１４】
幾つかの実施例において、負荷不均衡メッセージを受信したことに応答して、前記負荷不均衡メッセージに含まれるリソース識別子を確定するように構成されたリソース識別子確定ユニットと、分散システムにおける複数のフロー制御ノードが確定されたリソース識別子に対して示すリソースの使用クォータを取得するように構成された使用クォータ取得ユニットと、取得された使用クォータを確定されたリソース識別子が示すリソースを制御するリソース制御ノードに送信することにより、リソース制御ノードが制御クォータを調整するように構成された第２の情報送信ユニットと、をさらに含む。
【００１５】
第４態様において、管理ノードと複数のフロー制御ノードを含む分散システムにおける、複数のフロー制御ノードのうち少なくとも１種類のリソースを制御するためのフロー制御ノードであるリソース制御ノードに配置されるフローを制御するための装置であって、リソース識別子及び対応する割り当てクォータを受信するように構成された第１の受信ユニットと、分散システムにおけるフロー制御ノードの第１の数及びノード識別子を取得するように構成された第３の取得ユニットと、前記割り当てクォータ及び前記第１の数に基づいて、分散システムにおけるフロー制御ノードの制御クォータを確定するように構成された制御クォータ確定ユニットと、前記リソース識別子、分散システムにおけるフロー制御ノードのノード識別子および制御クォータに基づいて、リソース制御データを生成するように構成された制御データ生成ユニットと、生成されたリソース制御データを少なくとも１つのフロー制御ノードに同期させるように構成された制御データ同期ユニットと、を含むフローを制御するための装置を提供する。
【００１６】
幾つかの実施例において、分散システムにおけるフロー制御ノードによるリソースの使用クォータを受信したことに応答して、受信した使用クォータおよびフロー制御ノードの制御クォータに基づいて、分散システムにおけるフロー制御ノードの制御クォータを調整するように構成された制御クォータ調整ユニットと、前記リソース識別子、分散システムにおけるフロー制御ノードのノード識別子および調整された制御クォータに基づいて、更新されたリソース制御データを生成するように構成された制御データ更新ユニットと、をさらに含む。
【００１７】
幾つかの実施例において、リソース制御データのデータバージョン番号を生成するように構成されたバージョン番号生成ユニットをさらに含み、前記制御データ同期ユニットは、さらに、生成されたリソース制御データおよびデータバージョン番号を少なくとも１つのフロー制御ノードに同期させるように構成される。
【００１８】
幾つかの実施例において、リソース制御データおよびデータバージョン番号を受信するように構成された第２の受信ユニットと、受信したリソース制御データおよびデータバージョン番号をローカルに記憶することにより、要求を受信したときにデータバージョン番号に基づいて最新バージョンのリソース制御データを確定し、最新バージョンのリソース制御データに基づいて要求を処理するように構成された記憶ユニットと、をさらに含む。
【００１９】
幾つかの実施例において、前記制御データ同期ユニットは、さらに、予め設定されたデータブロック長さに応じて、生成されたリソース制御データを少なくとも１つのデータブロックに分割し、前記少なくとも１つのデータブロックにおけるデータブロックのチェックサムを計算することにより、チェックサムリストを得て、前記チェックサムリストを前記少なくとも１つのフロー制御ノードに送信することにより、前記少なくとも１つのフロー制御ノードが前記チェックサムリストに基づいて増分データを確定し、前記増分データを前記少なくとも１つのフロー制御ノードに送信することにより、同期を完了するように構成される。
【００２０】
第５態様において、１つ以上のプロセッサと、１つ以上のプログラムが記憶された記憶装置と、を含み、前記１つ以上のプログラムが前記１つ以上のプロセッサによって実行されるとき、第１態様のいずれか１つに記載の方法を前記１つ以上のプロセッサに実現させる、サーバーを提供する。
【００２１】
第６態様において、１つ以上のプロセッサと、１つ以上のプログラムが記憶された記憶装置と、を含み、前記１つ以上のプログラムが前記１つ以上のプロセッサによって実行されるとき、第２態様のいずれか１つに記載の方法を前記１つ以上のプロセッサに実現させる、サーバーを提供する。
【００２２】
第７態様において、コンピュータプログラムが記憶されたコンピュータ可読媒体であって、前記コンピュータプログラムがプロセッサによって実行されるとき、第１態様のいずれか１つに記載の方法を実現する、コンピュータ可読媒体を提供する。
【００２３】
第８態様において、コンピュータプログラムが記憶されたコンピュータ可読媒体であって、前記コンピュータプログラムがプロセッサによって実行されるとき、第２態様のいずれか１つに記載の方法を実現する、コンピュータ可読媒体を提供する。
【００２４】
本発明の上記実施例によるフローを制御するための方法と装置は、管理ノードに対し、まず分散システムにおける各フロー制御ノードのノード識別子と各リソースのリソース識別子を取得することができる。次に、各ノード識別子と各リソース識別子に基づいて、各リソースを制御するための各フロー制御ノードがリソース制御ノードであることが確定される。この後、各リソースの割り当てクォータを取得する。最後に、各割り当てクォータを各リソース制御ノードに送信することにより、リソース制御ノードが分散システムにおける各フロー制御ノードに対して制御クォータを確定する。分散システムにおけるリソース制御ノードに対し、まずリソース識別子及び対応する割り当てクォータを受信することができる。次に、分散システムにおける各フロー制御ノードの第１の数及びノード識別子を取得する。この後、割り当てクォータ及び第１の数に基づいて、各フロー制御ノードの制御クォータを確定する。ちなみに、リソース識別子、各フロー制御ノードのノード識別子および各制御クォータに基づいて、リソース制御データを生成する。最後に、生成されたリソース制御データを少なくとも１つのフロー制御ノードに同期させる。本実施例により、複数の種類のリソースに対するフロー制御を実現することができる。
【００２５】
本発明のその他の特徴、目的および利点をより明確にするために、以下の図面を参照してなされた非限定的な実施例の詳細な説明を参照する。
【図面の簡単な説明】
【００２６】
【図１】本発明の一実施例が適用され得る例示的なシステムアーキテクチャ図である。
【図２】本発明に係るフローを制御するための方法の一実施例のフローチャートである。
【図３】本発明に係るフローを制御するための方法の一適用状況の概略図である。
【図４】本発明に係るフローを制御するための方法の別の一実施例のフローチャートである。
【図５】本発明に係るフローを制御するための方法のさらに別の一実施例のフローチャートである。
【図６】本発明に係るフローを制御するための装置の一実施例の概略構造図である。
【図７】本発明に係るフローを制御するための装置の別の一実施例の概略構造図である。
【図８】本発明の実施例を実現するためのサーバーのコンピュータシステムの概略構造図である。
【発明を実施するための形態】
【００２７】
以下、図面及び実施例を参照して本発明についてより詳細に説明する。ここで説明された具体的な実施例は、関連する発明を説明するためだけのものであり、この発明を制限するものではないことを理解できる。なお、説明を容易にするために、図面には関連する発明に関連する部分のみを示している。
【００２８】
なお、矛盾しない場合には、本発明の実施例及び実施例における特徴が互いに組み合わせることができる。以下、図面を参照して、実施例に合わせて本発明を詳細に説明する。
【００２９】
図１には、本発明が適用され得る、フローを制御するための方法又はフローを制御するための装置の実施例の例示的なシステムアーキテクチャ１００が示されている。
【００３０】
図１に示すように、システムアーキテクチャ１００は分散システムであってもよく、管理ノード１０１とフロー制御ノード１０２〜１０９を含むことができる。各ノード間はネットワーク１０４を介して通信可能である。ネットワーク１０４は、例えば有線、無線通信リンク、または光ファイバケーブルなどの様々な接続タイプを含むことができる。分散システムは、少なくとも１種類のリソースに対してフロー制御を行うことができ、ここでのリソースとは、ネットワーク、帯域幅、メモリなどのコンピューティングリソースを指す。
【００３１】
管理ノード１０１は、フロー制御ノード１０２〜１０９のうち各リソースをフロー制御するノードがリソース制御ノードであることを確定することができる。１つのリソース制御ノードは、少なくとも１種類のリソースをフロー制御する。リソース制御ノードは、フロー制御ノード１０２〜１０９のうちの１つ以上であることを理解することができる。リソース制御ノード自身は、リソースの管理者であり、またリソースの消費者でもある。
【００３２】
リソース制御ノードは、フロー制御ノード１０２〜１０９にリソースの制御クォータを割り当てることにより、各フロー制御ノード１０２〜１０９が自身の制御クォータに応じて要求を処理することができる。リソース制御ノードは、制御クォータを他のフロー制御ノードに割り当てることができ、他のリソース制御ノードによって割り当てられた制御クォータを受信することもできる。
【００３３】
ユーザは、端末装置（未図示）を使用して分散システムにおけるノード１０２〜１０９とインタラクティブすることにより、メッセージなどを送受信することができる。端末装置には、例えばウェブブラウザアプリケーション、ショッピングアプリケーション、検索アプリケーション、即時通信ツール、メールクライアント、社交プラットフォームソフトウェアなどの様々なクライアントアプリケーションがインストールされることができる。
【００３４】
管理ノード１０１は、各フロー制御ノード１０２〜１０９を管理するノードであってもよく、各フロー制御ノード１０２〜１０９のうちのリソース制御ノードに各種メッセージを送信することにより、リソース制御ノードに制御クォータを確定させることができる。
【００３５】
なお、分散システムにおける各ノードは、ハードウェアでもソフトウェアでもよい。
【００３６】
本発明の図２に示す実施例によるフローを制御するための方法は、一般に、分散システムにおける管理ノード１０１によって実行され、図４に示す実施例によるフローを制御するための方法は、一般に、分散システムにおけるリソース制御ノードによって実行される。相応的に、図６に示すフローを制御するための装置は、一般に、管理ノード１０１に配置され、図７に示すフローを制御するための装置は、一般に、リソース制御ノードに配置される。
【００３７】
図１の管理ノードおよびフロー制御ノードの数は単なる例示であることを理解すべきである。必要に応じて、任意の数の管理ノードおよびフロー制御ノードを備えることができる。
【００３８】
続けて図２を参照すると、本発明によるフローを制御するための方法の一実施例のフロー２００が示されている。本実施例のフローを制御するための方法は、分散システムにおける管理ノードに適用することができる。上記分散システムは複数のフロー制御ノードをさらに含むことができ、複数のフロー制御ノードはリソースを制御するための少なくとも１つのリソース制御ノードをさらに含むことができる。当該方法は、以下のステップを含む。
【００３９】
ステップ２０１において、分散システムにおける複数のフロー制御ノードのノード識別子と分散システムによって制御される少なくとも１種類のリソースのリソース識別子を取得する。
【００４０】
本実施例において、フローを制御するための方法の実行主体（例えば、図１に示される管理ノード１０１）は、有線接続または無線接続によって分散システムにおける複数のフロー制御ノードのノード識別子と分散システムによって制御される少なくとも１種類のリソースのリソース識別子を取得することができる。上記複数のフロー制御ノードは、分散システムにおけるフロー制御ノード（例えば、図１に示されるフロー制御ノード１０２〜１０９）であってもよく、上記リソースは、帯域幅、データベース、ディスクなどの様々なコンピューティングリソースであってもよい。管理ノードは、各フロー制御ノードのノード識別子と各リソースのリソース識別子をローカルから取得することができる。または、管理ノードは、各フロー制御ノードのノード識別子と各リソースのリソース識別子を他のデバイスから取得することができる。
【００４１】
なお、上記無線接続が、３Ｇ/４Ｇ接続、ＷｉＦｉ接続、Ｂｌｕｅｔｏｏｔｈ（登録商標）接続、ＷｉＭＡＸ（登録商標）接続、Ｚｉｇｂｅｅ（登録商標）接続、ＵＷＢ（ｕｌｔｒａ ｗｉｄｅｂａｎｄ）接続、および他の現在知られているまたは将来開発されている無線接続を含むことができるが、これらに限定されない。
【００４２】
本実施例のいくつかの選択可能な実施形態において、管理ノードは、予め設定された時間間隔で分散システムにおける複数のフロー制御ノードのノード識別子と分散システムによって制御される少なくとも１種類のリソースのリソース識別子を取得することができる。
【００４３】
本実施例のいくつかの選択可能な実施形態において、管理ノードは、ノード数変更メッセージを受信するたびに、分散システムにおける複数のフロー制御ノードのノード識別子を取得することができる。
【００４４】
本実施形態において、ノード数変更メッセージは、管理ノード、分散システムにおけるフロー制御ノードの数(すなわち、トポロジ構造)が変化したことを提示するために用いられる。分散システムのトポロジ構造の変化に適時に応答するために、管理ノードは、ノード数変更メッセージを受信した時に、分散システムにおける複数のフロー制御ノードのノード識別子を能動的に取得することができる。このようにして、リソース制御ノードは、各フロー制御ノードの制御クォータを再確定することにより、新たに追加されたノードがフロー制御できないか、または削除されたノードが相変わらず制御クォータを占有していることを避けることができる。
【００４５】
ステップ２０２において、複数のノード識別子と少なくとも１つのリソース識別子に基づいて、分散システムにおける少なくとも１種類のリソースを制御するための少なくとも１つのフロー制御ノードがリソース制御ノードであることが確定される。
【００４６】
本実施例において、管理ノードは、各ノード識別子と各リソース識別子を取得した後、各リソース識別子に少なくとも１つのノード識別子を割り当てることができる。このようにして、リソース識別子とノード識別子との対応関係を確定することができ、これにより、各リソースを制御するフロー制御ノードを確定することができる。ここで、リソースを制御するためのフロー制御ノードをリソース制御ノードと呼ぶ。
【００４７】
本実施例のいくつかの選択可能な実施形態において、管理ノードは、ノード識別子とリソース識別子をランダムにマッチングし、１つのノード識別子を１つのリソース識別子に対応させることができる。このようにして、１つのリソース制御ノードが１種類のリソースを制御することを実現できる
【００４８】
本実施例のいくつかの選択可能な実施形態において、管理ノードは、ノード識別子とリソース識別子をそれぞれハッシュ計算することができる。次に、ハッシュ値が同じノード識別子がリソース識別子に関連付けられる。このようにして、ハッシュ計算に対する迅速的な確定によって、あるリソースのリソース制御ノードを制御することができる。
【００４９】
分散システムにおけるフロー制御ノードの数が変化すると、リソース制御ノードとリソースとの対応関係も変化する可能性があることが理解できる。
【００５０】
ステップ２０３において、少なくとも１種類のリソースの割り当てクォータを取得する。
【００５１】
本実施例において、管理ノードは、各リソースの割り当てクォータを取得することもできる。管理ノードは、様々な方法で割り当てクォータを取得することができ、例えば、管理ノードは、プロファイルを解析することによって、各リソースの割り当てクォータを確定することができる。または、管理ノードは、ユーザが端末を介して入力する各リソースの割り当てクォータを受信することができる。割り当てクォータは、分散システムにおけるその種類のリソースのフロー制御の総クォータを示すものである。
【００５２】
ステップ２０４において、少なくとも１つの割り当てクォータを対応するリソースを制御するリソース制御ノードに送信することにより、リソース制御ノードが分散システムにおけるフロー制御ノードに対して制御クォータを確定する。
【００５３】
管理ノードは、各リソースの割り当てクォータを取得した後、割り当てクォータをその種類のリソースを制御するリソース制御ノードに送信することができる。リソース制御ノードは、割り当てクォータを受信した後、分散システムにおける各フロー制御ノードに対して制御クォータを確定することができる。制御クォータは、フロー制御ノードがフロー制御を行う際のクォータを示すために用いられ、受信した要求によって消費されるフローの合計が制御クォータより大きい場合、処理要求を拒否することができる。
【００５４】
本実施例のいくつかの選択可能な実施形態において、上記方法は、図２に示されていない以下のステップをさらに含むことができる。すなわち、負荷不均衡メッセージを受信したことに応答して、負荷不均衡メッセージに含まれるリソース識別子を確定するステップと、分散システムにおける複数のフロー制御ノードが確定されたリソース識別子に対して示すリソースの使用クォータを取得するステップと、取得された使用クォータをリソース識別子が示すリソースを制御するリソース制御ノードに送信することにより、リソース制御ノードが制御クォータを調整するステップとを含む。
【００５５】
本実施形態において、管理ノードは負荷不均衡メッセージを受信することもでき、負荷不均衡メッセージは、あるリソースの制御クォータの設定が不合理であることを管理ノードに提示するために用いられる。上記負荷不均衡メッセージにはリソース識別子が含まれている。分散システムにおいて、あるフロー制御ノードのリソースに対する使用クォータが制御クォータに等しい場合があり、あるフロー制御ノードのリソースに対する使用クォータが制御クォータよりも遥かに小さい場合もある。使用クォータとは、フロー制御ノードによって使用されたリソースのクォータである。このとき、負荷不均衡の場合がある。各フロー制御ノードの制御クォータを適切に調整すべきである。調整の目的は、使用クォータが大きいフロー制御ノードの制御クォータをより大きくし、使用クォータが小さいフロー制御ノードの制御クォータをより小さくすることにある。
【００５６】
管理ノードは、負荷不均衡メッセージを受信した後、まず、負荷不均衡メッセージに含まれるリソース識別子を確定することができる。次に、分散システムにおける複数のフロー制御ノードの上記リソース識別子が示すリソースに対する使用クォータを取得する。管理ノードが各使用クォータを対応するリソースを制御するリソース制御ノードに送信することにより、リソース制御ノードが各使用クォータに基づいて、確定された制御クォータを調整することができる。
【００５７】
続けて図３を参照すると、図３は、本発明に係るフローを制御するための方法の一適用状況の概略図である。図３の適用状況では、管理ノード３０１は、まず各分散システムにおける複数のフロー制御ノードのノード識別子３０２〜３０９を取得する。次に、分散システムによって制御されるリソースのリソース識別子３１１〜３１４を取得する。管理ノード３０１は、各フロー制御ノードのうち各リソースを制御するためのリソース制御ノードがそれぞれ３０２、３０４、３０５、３０７であることを確定する。ここで、フロー制御ノード３０２はリソース３１１を制御し、フロー制御ノード３０４はリソース３１２を制御し、フロー制御ノード３０５はリソース３１３を制御し、フロー制御ノード３０７はリソース３１４を制御する。この後、管理ノード３０１は、各リソースの割り当てクォータを取得する。最後に、管理ノード３０１は、リソース３１１の割り当てクォータをフロー制御ノード３０２に送信し、リソース３１２の割り当てクォータをフロー制御ノード３０４に送信し、リソース３１３の割り当てクォータをフロー制御ノード３０５に送信し、リソース３１４の割り当てクォータをフロー制御ノード３０７に送信する。各リソース制御ノード３０２、３０４、３０５、３０７は、割り当てクォータを受信した後、各リソース制御ノード３０２〜３０９に対して制御クォータを確定する。
【００５８】
本発明の上記実施例によるフローを制御するための方法は、まず分散システムにおける各フロー制御ノードのノード識別子と各リソースのリソース識別子を取得することができる。次に、各ノード識別子と各リソース識別子に基づいて、各リソースを制御するための各フロー制御ノードがリソース制御ノードであることが確定される。この後、各リソースの割り当てクォータを取得する。最後に、各割り当てクォータを各リソース制御ノードに送信することにより、リソース制御ノードが分散システムにおける各フロー制御ノードに対して制御クォータを確定する。本実施例の方法は、各リソースに対してリソース制御ノードを確定することにより、複数の種類のリソースをフロー制御することを実現できる。
【００５９】
続けて図４を参照すると、本発明によるフローを制御するための方法の別の一実施例のフロー４００が示されている。本実施例のフローを制御するための方法は、分散システムにおけるリソース制御ノードに適用することができ、本実施例は、リソース制御ノードをリソース制御者として説明するものである。分散システムは、管理ノードと複数のフロー制御ノードを含むことができる。ここで、リソース制御ノードは、フロー制御ノードのうちリソースを制御するためのノードである。図４に示すように、本実施例の方法は、以下のステップを含む。
【００６０】
ステップ４０１において、リソース識別子及び対応する割り当てクォータを受信する。
【００６１】
本実施例において、フローを制御するための方法の実行主体（例えば、分散システムにおけるリソース制御ノード）は、有線接続または無線接続によって管理ノードからリソース識別子及び対応する割り当てクォータを受信する。ここで、リソース識別子は、リソース制御ノードが制御する必要があるリソースを表すために使用され、割り当てクォータは、分散システムにおけるその種類のリソースに対する制御の総クォータを示すために使用される。
【００６２】
ステップ４０２において、分散システムにおけるフロー制御ノードの第１の数及びノード識別子を取得する。
【００６３】
リソース制御ノードは、さらに、分散システムにおけるフロー制御ノードの第１の数及び各フロー制御ノードのノード識別子を取得することができる。具体的に、リソース制御ノードは、管理ノードから第１の数とノード識別子を取得することができる。
【００６４】
ステップ４０３において、割り当てクォータ及び第１の数に基づいて、分散システムにおけるフロー制御ノードの制御クォータを確定する。
【００６５】
リソース制御ノードは、割り当てクォータ及び第１の数を取得した後、分散システムにおける各フロー制御ノードの制御クォータを確定することができる。具体的に、リソース制御ノードは、割り当てクォータと第１の数との比を各フロー制御ノードの制御クォータとすることができる。
【００６６】
本実施例のいくつかの選択可能な実施形態において、リソース制御ノードは、上記制御クォータに基づいて、時間の長さが異なる制御クォータを生成してもよい。例えば、リソース制御ノードは、１秒分の制御クォータ、１時間分の制御クォータ、1日分の制御クォータまたはＮ日分の制御クォータを生成することができ、これにより、異なる次元のフロー制御を実現できる。
【００６７】
ステップ４０４において、リソース識別子、分散システムにおけるフロー制御ノードのノード識別子および制御クォータに基づいて、リソース制御データを生成する。
【００６８】
各フロー制御ノードの制御クォータを確定した後、リソース制御ノードは、リソース識別子、分散システムにおけるフロー制御ノードのノード識別子に応じて、リソース制御データを生成する。上記リソース制御データは、各フロー制御ノードがリソース識別子に対して示すリソースの制御クォータを含むリストであってもよい。
【００６９】
本実施例のいくつかの選択可能な実施形態において、リソース制御ノードは、リソース制御データを生成すると同時に、またはその後に、リソース制御データのデータバージョン番号を生成してもよい。データバージョン番号は、リソース制御データの生成時間または有効性などを表すために使用されてもよい。各流量制御ノードは、リソース制御データに基づいてフローを制御する場合、最新バージョンのリソース制御データを基準としていることが理解できる。
【００７０】
ステップ４０５において、生成されたリソース制御データを少なくとも１つのフロー制御ノードに同期させる。
【００７１】
リソース制御ノードは、生成されたリソース制御データを少なくとも１つのフロー制御ノードに同期させることができる。具体的に、リソース制御ノードは、ゴシップアルゴリズムに基づいて、リソース制御データを他のフロー制御ノードに引き続き同期させることができる。すなわち、リソース制御ノードは、取得したリソース制御データを通信接続された３つのフロー制御ノードに直接に送信することができる。次に、リソース制御データを受信した３つのフロー制御ノードは、リソース制御データを、送信者を除く他の３つのフロー制御ノードに送信し続けることができる。これにより、分散システムにおけるリソース制御データの伝播を実現することができ、同時にネットワークストームを避けることができる。ゴシップアルゴリズムは、反エントロピーアルゴリズムとも呼ばれ、１つの境界ネットワークにおいて、各ノードが他のノードとランダムに通信し、乱雑な通信を経て、最終的には全てのノードの状態が一致することを特徴とする。
【００７２】
本実施例のいくつかの選択可能な実施形態において、上記方法は、図４に示されていない以下のステップをさらに含むことができる。すなわち、分散システムにおけるフロー制御ノードによるリソースの使用クォータを受信したことに応答して、受信した使用クォータおよびフロー制御ノードの制御クォータに基づいて、分散システムにおけるフロー制御ノードの制御クォータを調整するステップと、リソース識別子、分散システムにおけるフロー制御ノードのノード識別子および調整された制御クォータに基づいて、更新されたリソース制御データを生成するステップとを含む。
【００７３】
本実施形態において、リソース制御ノードは、管理ノードから分散システムにおける各フロー制御ノードによるリソースの使用クォータを受信することができる。各使用クォータを受信した後、各フロー制御ノードの制御クォータに応じて、分散システムにおける各フロー制御ノードの制御クォータを調整することができる。具体的に、リソース制御ノードは、まず各フロー制御ノードの使用クォータと制御クォータに基づいて、各フロー制御ノードによるリソースの使用率を計算することができる。次に、使用率を第１のプリセット閾値、第２のプリセット閾値と比較し、使用率が第１のプリセット閾値より小さいフロー制御ノードの制御クォータを低くしたり、使用率が第２のプリセット閾値より高いフロー制御ノードの制御クォータを高くしたりする。例として、予め設定された少なくとも１つの閾値は、３０％と７０％を含むことができる。使用率が３０％より小さい場合、当該フロー制御ノードの制御クォータを低くする。使用率が７０％より高い場合、当該フロー制御ノードの制御クォータを高くする。
【００７４】
制御クォータを調整した後、リソース制御ノードは、リソース識別子、分散システムにおける各フロー制御ノードのノード識別子および調整された制御クォータに基づいて、更新されたリソース制御データを生成することができる。リソース制御ノードは、更新されたリソース制御データを少なくとも１つのフロー制御ノードに同期させることができる。
【００７５】
本実施例のいくつかの選択可能な実施形態において、リソース制御ノードは、図４に示されていない予め設定されたデータブロック長さに応じて、生成されたリソース制御データを少なくとも１つのデータブロックに分割するステップと、少なくとも１つのデータブロックにおけるデータブロックのチェックサムを計算することにより、第１のチェックサムリストを得るステップと、第１のチェックサムリストを少なくとも１つのフロー制御ノードに送信することにより、少なくとも１つのフロー制御ノードが第１のチェックサムリストに基づいて増分データを確定するステップと、増分データを少なくとも１つのフロー制御ノードに送信することにより、同期を完了するステップとによって、リソース制御データの同期を実施してもよい。
【００７６】
本実施形態において、リソース制御ノードは、生成されたリソース制御データを少なくとも１つのデータブロックに分割することができる。各データブロックの長さは、予め設定されたデータブロック長さに等しい。次に、リソース制御ノードは、各データブロックのチェックサムを計算することにより、チェックサムリストを得ることができる。チェックサムリストは、リソース制御データよりもはるかに小さい複数のチェックサムを含むリストである。したがって、リソース制御ノードは、チェックサムリストを他のフロー制御ノードに送信することにより、データ送信効率を向上させることができる。他のフロー制御ノードは、チェックサムリストを受信した後、それ自体と比較したリソース制御ノードの増分データを確定することができる。リソース制御ノードは、増分データを他のフロー制御ノードに送信するだけで同期を完了することができる。本実現方式は、リソース制御データを他のフロー制御ノードに送信する必要がなく、増分データを他のフロー制御ノードに送信するだけで同期効率を向上させることができる。
【００７７】
他のフロー制御ノードも、当該実現方式によってリソース制御データを他のフロー制御ノードに同期させることができることが理解できる。
【００７８】
本発明の上記実施例によるフローを制御するための方法は、まずリソース識別子及び対応する割り当てクォータを受信することができる。次に、分散システムにおける各フロー制御ノードの第１の数及びノード識別子を取得する。この後、割り当てクォータ及び第１の数に基づいて、各フロー制御ノードの制御クォータを確定する。ちなみに、リソース識別子、各フロー制御ノードのノード識別子および各制御クォータに基づいて、リソース制御データを生成する。最後に、生成されたリソース制御データを少なくとも１つのフロー制御ノードに同期させる。本実施例の方法、リソースに対するフロー制御を実現することができる。
【００７９】
続けて図５を参照すると、本発明に係るフローを制御するための方法のさらに別の一実施例のフロー５００が示されている。本実施例のフローを制御するための方法は、分散システムにおけるリソース制御ノードに適用することができる。分散システムは、管理ノードと複数のフロー制御ノードを含むことができる。ここで、リソース制御ノードは、フロー制御ノードのうちリソースを制御するためのノードである。本実施例は、リソース制御ノードをリソース使用者として説明するものであり、本実施例の方法は、分散システムにおけるフロー制御ノードにも適用することができることが理解できる。図５に示すように、本実施例のフローを制御するための方法は、以下のステップを含む。
【００８０】
ステップ５０１において、リソース制御データ及びデータバージョン番号を受信する。
【００８１】
本実施例において、フローを制御するための方法の実行主体（例えば、リソース制御ノードまたはフロー制御ノード）は、リソース制御データ及びデータバージョン番号を受信することができる。上記リソース制御データ及びデータバージョン番号は、リソース制御ノードによって送信されてもよいし、他のフロー制御ノードによって送信されてもよい。上記リソース制御データは、リソース識別子、分散システムにおけるフロー制御ノードのノード識別子及び制御クォータを含むことができる。データバージョン番号は、リソース制御データの生成時間または有効性などを表すために使用されてもよい。
【００８２】
ステップ５０２において、受信したリソース制御データおよびデータバージョン番号をローカルに記憶することにより、要求を受信したときにデータバージョン番号に基づいて最新バージョンのリソース制御データを確定し、最新バージョンのリソース制御データに基づいて要求を処理する。
【００８３】
リソース制御ノードは、リソース制御データおよびデータバージョン番号を受信した後、受信した情報をローカルに記憶することができる。このようにして、リソース制御ノードは、要求を受信したときにデータバージョン番号に基づいて最新バージョンのリソース制御データを確定し、最新バージョンのリソース制御データに基づいて要求を処理することができる。
【００８４】
本実施例のいくつかの選択可能な実施形態において、ノードＡとノードＢを例として説明し、ノードＡは、チェックサムリストをノードＢに送信する。ノードＢは、図５に示されていないチェックサムリストを受信した後、予め設定されたデータブロック長さに応じて、チェックサムをポーリング計算するステップによって、リソース制御データの受信を実現することができる。ここで、データブロック長さが１２８であることを例として説明する。ポーリングとは、ノードＢがまずデータブロック０〜１２７のチェックサムを計算することである。次に、得られたチェックサムをチェックサムリストにおける各チェックサムとマッチングする。マッチしない場合、ノードＢは、データブロック１〜１２８のチェックサムを計算し、再び得られたチェックサムをチェックサムリストにおける各チェックサムをマッチングすることができる。マッチしない場合、ノードＢによって算出されたデータブロック（たとえば、１００〜２２７）のチェックサムがチェックサムリストにおける１つのチェックサムにマッチするまで、データブロック２〜１２９のチェックサムを計算する。マッチした場合、このデータブロック（１００〜２２７）は変更されていないということである。次に、終了するまで、データブロック２２８〜３５５のチェックサムを計算し続ける。これにより、ノードＡとノードＢとの間の増分データを確定することができる。ノードＢは、上記増分データのチェックサムをさらに計算することにより、増分データのチェックサムリストを得ることができる。この後、ノードＢは、増分データのチェックサムリストをノードＡに送信する。ノードＡは、増分データのチェックサムリストに基づいて、ノードＢに対するノードＡの増分データを確定することができる。最後に、ノードＡは、増分データをノードＢに送信することにより、リソース制御データの同期を実現する。
【００８５】
本発明の上述実施例によるフローを制御するための方法は、最新バージョンのリソース制御データに基づいてフローを制御でき、同時に複数のフロー制御ノード間のデータ同期効率を向上する。
【００８６】
さらに図６を参照し、上記の各図面に示す方法の実現として、本発明はフローを制御するための装置の一実施例を提供する。当該装置の実施例は、図２に示す方法実施例に対応し、当該装置を具体的に様々な電子機器に適用できる。
【００８７】
図６に示すように、本実施例のフローを制御するための装置６００は、分散システムにおける管理ノードに配置され、分散システムは複数のフロー制御ノードをさらに含む。装置６００は、第１の取得ユニット６０１と、制御ノード確定ユニット６０２と、第２の取得ユニット６０３と、第１の情報送信ユニット６０４とを含む。
【００８８】
第１の取得ユニット６０１は、分散システムにおける複数のフロー制御ノードのノード識別子と分散システムによって制御される少なくとも１種類のリソースのリソース識別子を取得するように構成される。
【００８９】
制御ノード確定ユニット６０２は、複数のノード識別子と少なくとも１つのリソース識別子に基づいて、分散システムにおける少なくとも１種類のリソースを制御するための少なくとも１つのフロー制御ノードがリソース制御ノードであることが確定されるように構成される。
【００９０】
第２の取得ユニット６０３は、少なくとも１種類のリソースの割り当てクォータを取得するように構成される。
【００９１】
第１の情報送信ユニット６０４は、少なくとも１つの割り当てクォータを対応するリソースを制御するリソース制御ノードに送信することにより、リソース制御ノードが分散システムにおけるフロー制御ノードに対して制御クォータを確定するように構成される。
【００９２】
本実施例のいくつかの選択可能な実施形態において、第１の取得ユニット６０１は、さらに、ノード数変更メッセージを受信したことに応答して、分散システムにおける複数のフロー制御ノードのノード識別子を取得するように構成される。
【００９３】
本実施例のいくつかの選択可能な実施形態において、装置６００は、図６に示されていないリソース識別子確定ユニットと、使用クォータ取得ユニットと、第２の情報送信ユニットとをさらに含む。
【００９４】
リソース識別子確定ユニットは、負荷不均衡メッセージを受信したことに応答して、負荷不均衡メッセージに含まれるリソース識別子を確定するように構成される。
【００９５】
使用クォータ取得ユニットは、分散システムにおける複数のフロー制御ノードが確定されたリソース識別子に対して示すリソースの使用クォータを取得するように構成される。
【００９６】
第２の情報送信ユニットは、取得された使用クォータを確定されたリソース識別子が示すリソースを制御するリソース制御ノードに送信することにより、リソース制御ノードが制御クォータを調整するように構成される。
【００９７】
本発明の上記実施例によるフローを制御するための装置は、まず分散システムにおける各ノードのノード識別子と各リソースのリソース識別子を取得することができる。次に、各ノード識別子と各リソース識別子に基づいて、各リソースを制御するための各ノードがリソース制御ノードであることが確定される。この後、各リソースの割り当てクォータを取得する。最後に、各割り当てクォータを各リソース制御ノードに送信することにより、リソース制御ノードが分散システムにおける各ノードに対して制御クォータを確定する。各リソースに対してリソース制御ノードを確定することにより、複数の種類のリソースに対するフロー制御を実現できる。
【００９８】
フローを制御するための装置６００に記載されたユニット６０１〜ユニット６０４は、それぞれ図２を参照して説明した方法における各ステップに対応することが理解すべきである。したがって、フローを制御するための方法について以上で説明した操作および特徴は、装置６００およびそれに含まれるユニットにも同様に適用され、ここでは繰り返して説明しない。
【００９９】
続けて図７を参照すると、本発明によるフローを制御するための装置の別の一実施例の概略構造図が示されている。図７示すように、本実施例のフローを制御するための装置７００は、分散システムにおけるリソース制御ノードに配置されることができ、分散システムは管理ノードと複数のフロー制御ノードを含み、リソース制御ノードは複数のフロー制御ノードのうち少なくとも１種類のリソースを制御するためのフロー制御ノードである。装置６００は、第１の受信ユニット７０１と、第３の取得ユニット７０２と、制御クォータ確定ユニット７０３と、制御データ生成ユニット７０４と、制御データ同期ユニット７０５とを含む。
【０１００】
第１の受信ユニット７０１は、リソース識別子及び対応する割り当てクォータを受信するように構成される。
【０１０１】
第３の取得ユニット７０２は、分散システムにおけるフロー制御ノードの第１の数及びノード識別子を取得するように構成される。
【０１０２】
制御クォータ確定ユニット７０３は、割り当てクォータ及び第１の数に基づいて、分散システムにおけるフロー制御ノードの制御クォータを確定するように構成される。
【０１０３】
制御データ生成ユニット７０４は、リソース識別子、分散システムにおけるフロー制御ノードのノード識別子および制御クォータに基づいて、リソース制御データを生成するように構成される。
【０１０４】
制御データ同期ユニット７０５は、生成されたリソース制御データを少なくとも１つのフロー制御ノードに同期させるように構成される。
【０１０５】
本実施例のいくつかの選択可能な実施形態において、装置７００は、図７に示されていない制御クォータ調整ユニットと制御データ更新ユニットとをさらに含む。
【０１０６】
制御クォータ調整ユニットは、分散システムにおけるフロー制御ノードによるリソースの使用クォータを受信したことに応答して、受信した使用クォータおよびフロー制御ノードの制御クォータに基づいて、分散システムにおけるフロー制御ノードの制御クォータを調整するように構成される。
【０１０７】
制御データ更新ユニットは、前記リソース識別子、分散システムにおけるフロー制御ノードのノード識別子および調整された制御クォータに基づいて、更新されたリソース制御データを生成するように構成される。
【０１０８】
本実施例のいくつかの選択可能な実施形態において、装置７００は、図７に示されていないリソース制御データのデータバージョン番号を生成するように構成されたバージョン番号生成ユニットをさらに含む。上記制御データ同期ユニット７０５は、さらに、生成されたリソース制御データおよびデータバージョン番号を少なくとも１つのフロー制御ノードに同期させるように構成される
【０１０９】
本実施例のいくつかの選択可能な実施形態において、装置７００は、図７に示されていない第２の受信ユニットと記憶ユニットとをさらに含む。
【０１１０】
第２の受信ユニットは、リソース制御データおよびデータバージョン番号を受信するように構成される。
【０１１１】
記憶ユニットは、受信したリソース制御データおよびデータバージョン番号をローカルに記憶することにより、要求を受信したときにデータバージョン番号に基づいて最新バージョンのリソース制御データを確定し、最新バージョンのリソース制御データに基づいて要求を処理するように構成される。
【０１１２】
本実施例のいくつかの選択可能な実施形態において、上記制御データ同期ユニットは、さらに、予め設定されたデータブロック長さに応じて、生成されたリソース制御データを少なくとも１つのデータブロックに分割し、少なくとも１つのデータブロックにおけるデータブロックのチェックサムを計算することにより、チェックサムリストを得て、チェックサムリストを少なくとも１つのフロー制御ノードに送信することにより、少なくとも１つのフロー制御ノードがチェックサムリストに基づいて増分データを確定し、増分データを少なくとも１つのフロー制御ノードに送信することにより、同期を完了するように構成される。
【０１１３】
本発明の上記実施例によるフローを制御するための装置は、まずリソース識別子及び対応する割り当てクォータを受信することができる。次に、分散システムにおける各フロー制御ノードの第１の数及びノード識別子を取得する。この後、割り当てクォータ及び第１の数に基づいて、各フロー制御ノードの制御クォータを確定する。ちなみに、リソース識別子、各フロー制御ノードのノード識別子および各制御クォータに基づいて、リソース制御データを生成する。最後に、生成されたリソース制御データを少なくとも１つのフロー制御ノードに同期させる。本実施例の装置、リソースに対するフロー制御を実現することができる。
【０１１４】
フローを制御するための装置７００に記載されたユニット７０１〜ユニット７０５は、それぞれ図４を参照して説明した方法における各ステップに対応することが理解すべきである。したがって、フローを制御するための方法について以上で説明した操作および特徴は、装置７００およびそれに含まれるユニットにも同様に適用され、ここでは繰り返して説明しない。
【０１１５】
以下、図８を参照し、本発明の実施例を実現するための電子機器（例えば図１の管理ノードまたはフロー制御ノード）８００の概略構造図が示されている。図８に示した電子機器は一例であり、本発明の実施例の機能と使用範囲を限定するものではない。
【０１１６】
図８に示すように、電子機器８００は、読み出し専用メモリ（ＲＯＭ）８０２に記憶されているプログラムまたは記憶部８０８からランダムアクセスメモリ（ＲＡＭ）８０３にロードされたプログラムに従って各種の適切な動作と処理を行うことができる処理装置（例えば中央処理装置、グラフィックスプロセッサなど）８０１を含むことができる。ＲＡＭ８０３には、電子機器８００の操作に必要な様々なプログラムとデータが記憶されている。処理装置８０１、ＲＯＭ８０２、およびＲＡＭ８０３は、バス８０４によって相互に接続されている。入力/出力(Ｉ/Ｏ)インターフェース８０５もバス８０４に接続されている。
【０１１７】
通常、Ｉ/Ｏインターフェース８０５には、例えばタッチスクリーン、タッチパネル、キーボード、マウス、カメラ、マイク、加速度計、ジャイロなどを含む入力装置８０６と、例えば液晶ディスプレイ（ＬＣＤ）、スピーカー、振動器などを含む出力装置８０７と、例えばテープ、ハードディスクなどを含む記憶装置８０８と、通信装置８０９とが接続されている。通信装置８０９は、データを交換するために電子機器８００が他の機器と無線通信または有線通信することを許可できる。図６は、様々な装置を有する電子機器８００を示しているが、図示されたすべての装置を実施または備えることが要求されないことを理解されたい。代わりに、より多くまたはより少ない装置を実施または備えることができる。図８に示した各ブロックは、１つの装置を表してもよく、必要に応じて複数の装置を表してもよい。
【０１１８】
特に、本発明の実施例によると、上記のフローチャートを参照して説明されたプロセスは、コンピュータソフトウェアのプログラムとして実現されることができる。例えば、本発明の実施例は、コンピュータ可読媒体に担持されたコンピュータプログラムを含むコンピュータプログラム製品を含み、当該コンピュータプログラムは、フローチャートに示された方法を実行するためのプログラムコードを含む。このような実施例では、このコンピュータプログラムは、通信装置６０９を介してネットワークからダウンロードされてインストールされ、または記憶装置６０８からインストールされ、またはＲＯＭ６０２からインストールされることができる。このコンピュータプログラムが処理装置６０１によって実行されるときに、本発明の実施例の方法で限定された上記の機能を実行する。なお、本発明の実施例に記載のコンピュータ可読媒体は、コンピュータ可読信号媒体、あるいはコンピュータ可読記憶媒体、または上記の両方の任意の組合せであってもよい。コンピュータ可読記憶媒体は、例えば、電気、磁気、光、電磁気、赤外線、あるいは半導体のシステム、装置またはデバイス、あるいは上記の任意の組合せであってもよいが、これらに限らない。コンピュータ可読記憶媒体のより具体的な例には、１本以上のワイヤによる電気的接続、携帯型コンピュータディスク、ハードディスク、ランダムアクセスメモリ（ＲＡＭ）、読み出し専用メモリ（ＲＯＭ）、消去可能プログラマブル読み取り専用メモリ（ＥＰＲＯＭまたはフラッシュメモリ）、光ファイバ、コンパクトディスク読み取り専用メモリ（ＣＤ-ＲＯＭ）、光記憶装置、磁気記憶装置、または上記の任意の組み合わせが含まれるが、これらに限らない。本発明の実施例では、コンピュータ可読記憶媒体は、プログラムを含むかまたは記憶する任意の有形の媒体であることができ、このプログラムは、指令実行システム、装置またはデバイスによって使用され、またはそれらと組み合わせて使用されることができる。本発明の実施例では、コンピュータが読み取り可能な信号媒体は、コンピュータが読み取り可能なプログラムコードを担持した、ベースバンド内でまたは搬送波の一部として伝播されるデータ信号を含んでもよい。このような伝播されたデータ信号は、多種の形式を採用でき、電磁気信号、光信号、または上記の任意の適切な組み合わせを含むが、これらに限らない。コンピュータが読み取り可能な信号媒体は、コンピュータ可読記憶媒体以外のいかなるコンピュータ可読媒体であってもよく、このコンピュータ可読信号媒体は、指令実行システム、装置またはデバイスによって使用され、またはそれらと組み合わせて使用されるためのプログラムを送信、伝播または伝送することができる。コンピュータ可読媒体に含まれるプログラムコードは、任意の適切な媒体で伝送されることができ、ワイヤ、光ファイバケーブル、ＲＦ（無線周波数）など、または上記の任意の適切な組み合わせを含むが、これらに限らない。
【０１１９】
上記コンピュータ可読媒体は、上記電子機器に含まれてもよく、個別に存在しこの電子機器に組み込まれなくてもよい。上記のコンピュータ可読媒体は、１つ以上のプログラムを担持し、上記の１つ以上のプログラムが当該電子機器によって実行されたとき、当該電子機器は、分散システムにおける複数のフロー制御ノードのノード識別子と分散システムによって制御される少なくとも１種類のリソースのリソース識別子を取得し、複数のノード識別子と少なくとも１つのリソース識別子に基づいて、分散システムにおける前記少なくとも１種類のリソースを制御するための少なくとも１つのフロー制御ノードがリソース制御ノードであることが確定され、前記少なくとも１種類のリソースの割り当てクォータを取得し、少なくとも１つの割り当てクォータを対応するリソースを制御するリソース制御ノードに送信することにより、リソース制御ノードが分散システムにおけるフロー制御ノードに対して制御クォータを確定する。または、リソース識別子及び対応する割り当てクォータを受信し、分散システムにおけるフロー制御ノードの第１の数及びノード識別子を取得し、割り当てクォータ及び第１の数に基づいて、分散システムにおけるフロー制御ノードの制御クォータを確定し、リソース識別子、分散システムにおけるフロー制御ノードのノード識別子および制御クォータに基づいて、リソース制御データを生成し、生成されたリソース制御データを少なくとも１つのフロー制御ノードに同期させる。
【０１２０】
本発明の実施例の操作を実行するためのコンピュータプログラムコードを、１以上のプログラミング言語またはそれらの組み合わせで書くことができ、前記プログラミング言語には、Ｊａｖａ（登録商標）、Ｓｍａｌｌｔａｌｋ、Ｃ＋＋などのオブジェクト指向プログラミング言語を含み、さらに「Ｃ」言語または同様のプログラミング言語などの従来の手続き型プログラミング言語も含まれる。プログラムコードは、完全にユーザのコンピュータ上で、部分的にユーザのコンピュータ上、１つの単独のソフトウェアパッケージとして、部分的にユーザのコンピュータ上かつ部分的にリモートコンピュータ上で、あるいは完全に遠隔コンピュータまたはサーバー上で実行されることができる。遠隔コンピュータに関する場合には、遠隔コンピュータは、ローカルエリアネットワーク（ＬＡＮ）または広域ネットワーク（ＷＡＮ）を含む任意の種類のネットワークを介してユーザのコンピュータに接続されることができ、または、外部のコンピュータに接続されることができる（例えばインターネットサービスプロバイダを利用してインターネットを介して接続する）。
【０１２１】
図の中のフローチャートおよびブロック図には、本発明の様々な実施例によるシステム、方法とコンピュータプログラム製品の実現可能なアーキテクチャ、機能、および操作が示されている。この点で、フローチャート又はブロック図の各ブロックは、１つのモジュール、プログラミングのセグメント、またはコードの一部を代表でき、当該モジュール、プログラミングのセグメント、またはコードの一部は、所定のロジック機能を実現するための１つ以上の実行可能指令を含む。また、いくつかの代替の実施例では、ブロックに示されている機能は、図面に示された順序と異なる順序で発生してもよいことに留意されたい。例えば、連続して示す２つのブロックは実際に並行して実行されてもよく、それらは係る機能に応じて時に逆の順序で実行されてもよい。ブロック図および／またはフローチャートの各ブロック、およびブロック図および／またはフローチャートのブロックの組み合わせは、特定の機能または操作を実行する専用のハードウェアによるシステムによって実現されてもよく、または専用ハードウェアとコンピュータ指令の組み合わせによって実現されてもよいことにも留意されたい。
【０１２２】
本発明の実施例に係るユニットは、ソフトウェアによって実現されてもよく、ハードウェアによって実現されてもよい。説明されたユニットは、プロセッサに設置されてもよく、例えば、「第１の取得ユニットと、制御ノード確定ユニットと、第２の取得ユニットと、第１の情報送信ユニットとを含むプロセッサである」と記載してもよい。または、「第１の受信ユニットと、第３の取得ユニットと、制御クォータ確定ユニットと、制御データ生成ユニットと、制御データ同期ユニットとを含むプロセッサである」と記載してもよい。ここで、これらのユニットの名は、ある場合にはそのユニット自体を限定しなくて、例えば、第１の取得ユニットを「分散システムにおける複数のフロー制御ノードのノード識別子と分散システムによって制御される少なくとも１種類のリソースのリソース識別子を取得するユニット」と記載してもよい。
【０１２３】
上記の説明は、本発明の好ましい実施例および応用された技術の原理の説明にすぎない。本発明の実施例に係る発明の範囲が、上記の技術的特徴を組み合わせて得られた技術案に限定されず、同時に上記の発明の概念から逸脱しない場合に、上記の技術的特徴またはこれと同等の技術的特徴を任意に組み合わせて得られた他の技術案を含むべきであることを当業者は理解すべきである。例えば、上述の特徴が本発明において開示されているもの（しかしこれに限らず）と類似した機能を有する技術的特徴と相互に入れ替わって形成された技術案が挙げられる。
【符号の説明】
【０１２４】
１００  システムアーキテクチャ
１０１  管理ノード
１０２  フロー制御ノード
１０３  フロー制御ノード
１０４  フロー制御ノード
１０５  フロー制御ノード
１０６  フロー制御ノード
１０７  フロー制御ノード
１０８  フロー制御ノード
１０９  フロー制御ノード
３０１  管理ノード
３０２  リソース制御ノード
３０４  リソース制御ノード
３０５  リソース制御ノード
３０７  リソース制御ノード
６００  フローを制御するための装置
６０１  第１の取得ユニット
６０２  制御ノード確定ユニット
６０３  第２の取得ユニット
６０４  第１の情報送信ユニット
７００  フローを制御するための装置
７０１  第１の受信ユニット
７０２  第３の取得ユニット
７０３  制御クォータ確定ユニット
７０４  制御データ生成ユニット
７０５  制御データ同期ユニット
８０１  処理装置
８０２  読み出し専用メモリ（ＲＯＭ）
８０３  ランダムアクセスメモリ（ＲＡＭ）
８０４  バス
８０５  入出力（Ｉ／Ｏ）インターフェース
８０６  入力装置
８０７  出力装置
８０８  記憶装置
８０９  通信装置
【図１】
2020135848.tif 000003
【図２】
2020135848.tif 000004
【図３】
2020135848.tif 000005
【図４】
2020135848.tif 000006
【図５】
2020135848.tif 000007
【図６】
2020135848.tif 000008
【図７】
2020135848.tif 000009
【図８】
2020135848.tif 000010
【手続補正書】
【提出日】令和2年3月17日(2020.3.17)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数のフロー制御ノードを含む分散システムにおける管理ノードに適用されるフローを制御するための方法であって、
分散システムにおける複数のフロー制御ノードのノード識別子と分散システムによって制御される少なくとも１種類のリソースのリソース識別子を取得することと、
複数のノード識別子と少なくとも１つのリソース識別子に基づいて、分散システムにおける前記少なくとも１種類のリソースを制御するための少なくとも１つのフロー制御ノードがリソース制御ノードであることが確定されることと、
前記少なくとも１種類のリソースの割り当てクォータを取得することと、
少なくとも１つの割り当てクォータを対応するリソースを制御するリソース制御ノードに送信することにより、リソース制御ノードが分散システムにおけるフロー制御ノードに対して制御クォータを確定することと、
を含むフローを制御するための方法。
【請求項２】
前記分散システムにおける複数のフロー制御ノードのノード識別子を取得することは、
ノード数変更メッセージを受信したことに応答して、分散システムにおける複数のフロー制御ノードのノード識別子を取得することを含む、
請求項１に記載の方法。
【請求項３】
負荷不均衡メッセージを受信したことに応答して、前記負荷不均衡メッセージに含まれるリソース識別子を確定することと、
分散システムにおける複数のフロー制御ノードが確定されたリソース識別子に対して示すリソースの使用クォータを取得することと、
取得された使用クォータを確定されたリソース識別子が示すリソースを制御するリソース制御ノードに送信することにより、リソース制御ノードが制御クォータを調整することと、
をさらに含む請求項１に記載の方法。
【請求項４】
管理ノードと複数のフロー制御ノードを含む分散システムにおける、複数のフロー制御ノードのうち少なくとも１種類のリソースを制御するためのフロー制御ノードであるリソース制御ノードに適用されるフローを制御するための方法であって、
リソース識別子及び対応する割り当てクォータを受信することと、
分散システムにおけるフロー制御ノードの第１の数及びノード識別子を取得することと、
前記割り当てクォータ及び前記第１の数に基づいて、分散システムにおけるフロー制御ノードの制御クォータを確定することと、
前記リソース識別子、分散システムにおけるフロー制御ノードのノード識別子および制御クォータに基づいて、リソース制御データを生成することと、
生成されたリソース制御データを少なくとも１つのフロー制御ノードに同期させることと、
を含むフローを制御するための方法。
【請求項５】
分散システムにおけるフロー制御ノードによるリソースの使用クォータを受信したことに応答して、受信した使用クォータおよびフロー制御ノードの制御クォータに基づいて、分散システムにおけるフロー制御ノードの制御クォータを調整することと、
前記リソース識別子、分散システムにおけるフロー制御ノードのノード識別子および調整された制御クォータに基づいて、更新されたリソース制御データを生成することと、
をさらに含む請求項４に記載の方法。
【請求項６】
リソース制御データのデータバージョン番号を生成することをさらに含み、
前記生成されたリソース制御データを少なくとも１つのフロー制御ノードに同期させることは、
生成されたリソース制御データおよびデータバージョン番号を少なくとも１つのフロー制御ノードに同期させることを含む、
請求項４または５に記載の方法。
【請求項７】
リソース制御データおよびデータバージョン番号を受信することと、
受信したリソース制御データおよびデータバージョン番号をローカルに記憶することにより、要求を受信したときにデータバージョン番号に基づいて最新バージョンのリソース制御データを確定し、最新バージョンのリソース制御データに基づいて要求を処理することと、
をさらに含む請求項６に記載の方法。
【請求項８】
前記生成されたリソース制御データを少なくとも１つのノードに同期させることは、
予め設定されたデータブロック長さに応じて、生成されたリソース制御データを少なくとも１つのデータブロックに分割することと、
前記少なくとも１つのデータブロックにおけるデータブロックのチェックサムを計算することにより、チェックサムリストを得ることと、
前記チェックサムリストを前記少なくとも１つのフロー制御ノードに送信することにより、前記少なくとも１つのフロー制御ノードが前記チェックサムリストに基づいて増分データを確定することと、
前記増分データを前記少なくとも１つのフロー制御ノードに送信することにより、同期を完了することと、
を含む、
請求項４に記載の方法。
【請求項９】
複数のフロー制御ノードを含む分散システムにおける管理ノードに配置されるフローを制御するための装置であって、
分散システムにおける複数のフロー制御ノードのノード識別子と分散システムによって制御される少なくとも１種類のリソースのリソース識別子を取得するように構成された第１の取得ユニットと、
複数のノード識別子と少なくとも１つのリソース識別子に基づいて、分散システムにおける前記少なくとも１種類のリソースを制御するための少なくとも１つのフロー制御ノードがリソース制御ノードであることが確定されるように構成された制御ノード確定ユニットと、
前記少なくとも１種類のリソースの割り当てクォータを取得するように構成された第２の取得ユニットことと、
少なくとも１つの割り当てクォータを対応するリソースを制御するリソース制御ノードに送信することにより、リソース制御ノードが分散システムにおけるフロー制御ノードに対して制御クォータを確定するように構成された第１の情報送信ユニットと、
を含むフローを制御するための装置。
【請求項１０】
前記第１の取得ユニットは、さらに、ノード数変更メッセージを受信したことに応答して、分散システムにおける複数のフロー制御ノードのノード識別子を取得するように構成される、
請求項９に記載の装置。
【請求項１１】
負荷不均衡メッセージを受信したことに応答して、前記負荷不均衡メッセージに含まれるリソース識別子を確定するように構成されたリソース識別子確定ユニットと、
分散システムにおける複数のフロー制御ノードが確定されたリソース識別子に対して示すリソースの使用クォータを取得するように構成された使用クォータ取得ユニットと、
取得された使用クォータを確定されたリソース識別子が示すリソースを制御するリソース制御ノードに送信することにより、リソース制御ノードが制御クォータを調整するように構成された第２の情報送信ユニットと、
をさらに含む請求項９に記載の装置。
【請求項１２】
管理ノードと複数のフロー制御ノードを含む分散システムにおける、複数のフロー制御ノードのうち少なくとも１種類のリソースを制御するためのフロー制御ノードであるリソース制御ノードに配置されるフローを制御するための装置であって、
リソース識別子及び対応する割り当てクォータを受信するように構成された第１の受信ユニットと、
分散システムにおけるフロー制御ノードの第１の数及びノード識別子を取得するように構成された第３の取得ユニットと、
前記割り当てクォータ及び前記第１の数に基づいて、分散システムにおけるフロー制御ノードの制御クォータを確定するように構成された制御クォータ確定ユニットと、
前記リソース識別子、分散システムにおけるフロー制御ノードのノード識別子および制御クォータに基づいて、リソース制御データを生成するように構成された制御データ生成ユニットと、
生成されたリソース制御データを少なくとも１つのフロー制御ノードに同期させるように構成された制御データ同期ユニットと、
を含むフローを制御するための装置。
【請求項１３】
分散システムにおけるフロー制御ノードによるリソースの使用クォータを受信したことに応答して、受信した使用クォータおよびフロー制御ノードの制御クォータに基づいて、分散システムにおけるフロー制御ノードの制御クォータを調整するように構成された制御クォータ調整ユニットと、
前記リソース識別子、分散システムにおけるフロー制御ノードのノード識別子および調整された制御クォータに基づいて、更新されたリソース制御データを生成するように構成された制御データ更新ユニットと、
をさらに含む請求項１２に記載の装置。
【請求項１４】
リソース制御データのデータバージョン番号を生成するように構成されたバージョン番号生成ユニットをさらに含み、
前記制御データ同期ユニットは、さらに、生成されたリソース制御データおよびデータバージョン番号を少なくとも１つのフロー制御ノードに同期させるように構成される、
請求項１２または１３に記載の装置。
【請求項１５】
リソース制御データおよびデータバージョン番号を受信するように構成された第２の受信ユニットと、
受信したリソース制御データおよびデータバージョン番号をローカルに記憶することにより、要求を受信したときにデータバージョン番号に基づいて最新バージョンのリソース制御データを確定し、最新バージョンのリソース制御データに基づいて要求を処理するように構成された記憶ユニットと、
をさらに含む請求項１４に記載の装置。
【請求項１６】
前記制御データ同期ユニットは、さらに、
予め設定されたデータブロック長さに応じて、生成されたリソース制御データを少なくとも１つのデータブロックに分割し、
前記少なくとも１つのデータブロックにおけるデータブロックのチェックサムを計算することにより、チェックサムリストを得て、
前記チェックサムリストを前記少なくとも１つのフロー制御ノードに送信することにより、前記少なくとも１つのフロー制御ノードが前記チェックサムリストに基づいて増分データを確定し、
前記増分データを前記少なくとも１つのフロー制御ノードに送信することにより、同期を完了するように構成される、
請求項１２に記載の装置。
【請求項１７】
１つ以上のプロセッサと、
１つ以上のプログラムが記憶された記憶装置と、
を含み、
前記１つ以上のプログラムが前記１つ以上のプロセッサによって実行されるとき、請求項１から３のいずれか１項に記載の方法を前記１つ以上のプロセッサに実現させる、
サーバー。
【請求項１８】
１つ以上のプロセッサと、
１つ以上のプログラムが記憶された記憶装置と、
を含み、
前記１つ以上のプログラムが前記１つ以上のプロセッサによって実行されるとき、請求項４から８のいずれか１項に記載の方法を前記１つ以上のプロセッサに実現させる、
サーバー。
【請求項１９】
コンピュータプログラムが記憶されたコンピュータ可読記憶媒体であって、
前記コンピュータプログラムがプロセッサによって実行されるとき、請求項１から３のいずれか１項に記載の方法を実現する、
コンピュータ可読記憶媒体。
【請求項２０】
コンピュータプログラムが記憶されたコンピュータ可読記憶媒体であって、
前記コンピュータプログラムがプロセッサによって実行されるとき、請求項４から８のいずれか１項に記載の方法を実現する、
コンピュータ可読記憶媒体。
【請求項２１】
コンピュータプログラムであって、
プロセッサによって実行されるとき、請求項１から３のいずれか１項に記載の方法を実現する、コンピュータプログラム。
【請求項２２】
コンピュータプログラムであって、
プロセッサによって実行されるとき、請求項４から８のいずれか１項に記載の方法を実現する、コンピュータプログラム。
【外国語明細書】
2020135848000001.pdf