JP2006523354A - 周期的現象の効率的スケジューリング用システムおよび方法 - Google Patents
周期的現象の効率的スケジューリング用システムおよび方法 Download PDFInfo
- Publication number
- JP2006523354A JP2006523354A JP2006509504A JP2006509504A JP2006523354A JP 2006523354 A JP2006523354 A JP 2006523354A JP 2006509504 A JP2006509504 A JP 2006509504A JP 2006509504 A JP2006509504 A JP 2006509504A JP 2006523354 A JP2006523354 A JP 2006523354A
- Authority
- JP
- Japan
- Prior art keywords
- task
- coset
- tasks
- resource
- group
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
- G06F9/4887—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues involving deadlines, e.g. rate based, periodic
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/56—Queue scheduling implementing delay-aware scheduling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/13335—Simulation, emulation
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- Economics (AREA)
- Signal Processing (AREA)
- Entrepreneurship & Innovation (AREA)
- Human Resources & Organizations (AREA)
- Strategic Management (AREA)
- Computer Networks & Wireless Communication (AREA)
- General Physics & Mathematics (AREA)
- Game Theory and Decision Science (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Quality & Reliability (AREA)
- Operations Research (AREA)
- Marketing (AREA)
- Educational Administration (AREA)
- Development Economics (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Multi Processors (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
【解決手段】説明される発明は、周期的現象の効率的スケジューリング用システムおよび方法であって、スケジューリングシステムにおける周期的タスク率、資源スケジュール周期、並びにタスクおよび資源周期に対する尺度の単位をモデル化し選択するための方法の集合を含んでいる。システムのスケジューラは、性能測定、例えば衝突回避、計算効率および資源利用について改良される。
Description
関連する先行出願
この出願は、2003年3月31日に出願された仮出願第60/459,067号の優先権を主張する。
この出願は、2003年3月31日に出願された仮出願第60/459,067号の優先権を主張する。
発明の分野
本発明は、一般に周期的タスクをスケジュールするシステムに関し、特にそのようなシステムのスケジューラおよびそのようなシステムのモデル化に関する。
本発明は、一般に周期的タスクをスケジュールするシステムに関し、特にそのようなシステムのスケジューラおよびそのようなシステムのモデル化に関する。
発明の背景
この開示は、タスクおよび資源のセットとしてモデル化された、スケジュールされたシステムに対する先端技術の進歩を提供する。この場合、タスクは周期的である。即ち、資源は、各資源スケジュール周期中に、必要とされる量のサービスを必要とされる頻度でタスクに供しなければならない。そのようなシステムは一般に、(1)タスクのセットと、(2)タスクにサービスする資源のセットと、(3)あるタスクが周期的にサービスされる必要のある属性と共に、資源をタスクに割り当てるためのスケジューラとを有する。そのようなシステムは多くの物理形態で具体化されているが、この発明に現在関連しているのは、コンピュータソフトウエアおよびハードウエアシステムである。資源は、異なるサービス率/容量を有し、またタスクは異なる周波数、または等価的に、異なる周期を有する。
この開示は、タスクおよび資源のセットとしてモデル化された、スケジュールされたシステムに対する先端技術の進歩を提供する。この場合、タスクは周期的である。即ち、資源は、各資源スケジュール周期中に、必要とされる量のサービスを必要とされる頻度でタスクに供しなければならない。そのようなシステムは一般に、(1)タスクのセットと、(2)タスクにサービスする資源のセットと、(3)あるタスクが周期的にサービスされる必要のある属性と共に、資源をタスクに割り当てるためのスケジューラとを有する。そのようなシステムは多くの物理形態で具体化されているが、この発明に現在関連しているのは、コンピュータソフトウエアおよびハードウエアシステムである。資源は、異なるサービス率/容量を有し、またタスクは異なる周波数、または等価的に、異なる周期を有する。
1つのスケジューラまたは複数のスケジューラは、システム目的のセットに一致するように、資源をタスクに割り当てる責任がある。そのようなシステムは、非常に広い範囲の応用に及ぶ。これらは、限定されるものではないが、コンピュータのオペレーティングシステム、輸送ネットワーク、製造および産業プロセス、アナログ、デジタルおよび光学的通信システム、ワイヤレス通信システム、パケット交換通信ネットワーク(例えばIPネットワーク)、セル交換通信ネットワーク(例えばATMネットワーク)、精密計数、標本化、および測定装置、暗号システム、並びに電磁信号装置(例えば、磁気共鳴撮像システム)を含む。そのようなシステムは、周期的タスク、資源、およびスケジューラから構成されるようにモデル化することができる。
そのようなシステムのスケジューラにとって主たる挑戦は、衝突のないスケジュール、即ちどのタスクが、どの資源によって、何時サービスされるかを規定するスケジュールを、次のようにして見出すことである。即ち、そのようなスケジュールが存在するならば、1より多くないタスクが、いつでも資源または資源のセットによるサービス用にスケジュールされるように、そしてまた資源が高度に利用されるように、である。追加的な挑戦は、スケジュールの衝突のない特性が維持されるように、新規な周期的タスクを動的にスケジュールに加えることである。いくつかの環境、例えばパケット交換ネットワーク、セル交換ネットワーク、および分散オペレーティングシステムでは、追加的な複雑さは、分散された資源にわたってスケジュールを調整する必要性である。例えば、パケット交換ネットワークにおけるパケットのフローは典型的に、複数のパケットスイッチ/ルータおよび相互接続通信リンクを横断する。このフローは、各ルータで局部的にスケジュールされる必要があり、また経路に沿った各ルータでのローカルスケジュールは、終端間スケジュールを与えるために時間調整(スケジュール)される必要がある。分散オペレーティングシステムは、広域時間調整される必要のある異なるホストでプロセスが実行されることに同様の挑戦を有する。
計算の複雑さに関して、一般に衝突のないスケジューリング問題は、所定の最適性基準が課せられるときのNP困難(至難)さである。NP困難スケジューリング問題の精密な定義は幾分複雑であるが、当業者によって良く理解される。実際の定義では、NP困難スケジューリング問題は、最適な解決法にとって問題を解くことに必要な時間が問題のサイズに関して指数関数的に(非常に)速く成長するということである。実際にNP困難スケジューリング問題にとって最適な解決法は、比較的に小さい問題に適用されるとき以外は使用されない。
この結果、近最適スケジュールを与えるためにスケジューリング用の種々の近似アルゴリズムが開発されたり、および/または、このアルゴリズムの性能を改良するために、所定の制約がこの問題に加えられている。例えば、Dペン等の“分散リアルタイムシステムの割り当ておよびスケジューリング通信周期的タスク”(IEEEソフトウエア工学会報、第23卷12号、1997年12月)と、その中に含まれた周期的スケジューリング問題およびオペレーティングシステム用アルゴリズムの概説についての参考文献を参照されたい。この開示は、参照によってここに組み入れられる。パケット交換ネットワークの領域では、H.ツァン、D.フェラーリの“率制御型サービス規律”(高速ネットワークジャーナル:サービス品質についての特別な問題、第3卷4号、1994年)と、その中の参考文献(その開示は、参照によってここに組み入れられる)は、パケット通信ネットワークでの周期的タスクとしてモデル化される率制御型パケットフローに関する先端技術の概観を与えている。オペレーティングシステムとパケット交換ネットワーク双方の文献には、タスクの周期的属性を説明し活用するスケジューリング近似アルゴリズムが記載されている。
どの資源が特定の間隔内にどのタスクにサービスするかを特定するスケジュールの構築は、タスクが周期的なサービスを必要とするか否かによらず困難な問題である。従って、本発明は、計算スケジュールに対して改良された計算量を提供し、また資源利用に関してそれらスケジュールの改良された性能を提供する。
発明の要約
本発明は、スケジューリングシステムにおける周期的タスク率、資源スケジュール周期、並びにタスクおよび資源周期に対する尺度の単位をモデル化し選択するための方法の集合に関する。システムのスケジューラは、性能測定、例えば衝突回避、計算効率および資源利用について改良される。
本発明は、スケジューリングシステムにおける周期的タスク率、資源スケジュール周期、並びにタスクおよび資源周期に対する尺度の単位をモデル化し選択するための方法の集合に関する。システムのスケジューラは、性能測定、例えば衝突回避、計算効率および資源利用について改良される。
ここで開示される方法は、数学グループ理論における新規な定理、即ちバビロニア定理と、このバビロニア定理の系、即ち完全パッキング系とに基づいている。これらは、本発明者によって表明され証明されているもので、この特許出願において最初に開示されたものである。タスク周期/率の良く選択されたセットおよび/またはスケジュール周期のセットおよび/または周期に対する尺度の単位、衝突のないスケジュールを計算するスケジューリングアルゴリズムの性能は、有意に改良される。タスク周期、資源スケジュール周期、および尺度の単位は、種々の物理現象、例えば限定されるものではないが、時間、空間、周波数、エネルギ、スピード、および質量のいずれかに対して規定される。
“周期”という用語は、時間間隔を記述するために時間ドメインでしばしば使用される。他の物理ドメインでは、間隔の概念は、時間間隔ではなく、物理ドメインで規定される間隔である。例えば、空間ドメインでは、間隔は長さ単位、例えばメートルによって、単一軸に沿って測定される。また、スケジュールやタスクの“周期性”は、空間に関して規定される。例えば、タスクは対象を、もう1つの対象に沿って2メートル毎に配置するためのものとなる。スケジューリング応用が規定される物理ドメインとは関係なしに、本発明は適用可能である。さらには、当業者は、本発明の明細書中で使用されている物理ドメインから他の物理ドメインへ本発明を容易にマップすることができる。“周期”に対する言及は、物理ドメイン内の間隔に一般化される。同様に、“尺度の単位” に対する言及は、物理ドメインに一般化される。
さらには、本発明が適用されるスケジューリングシステムの周期的性質故に、スケジューリングシステムのイベント、測定値、およびシステム値を、数学グループの要素によって索引つけされるか、それについて規定されるように、モデル化することもしばしば自然である。より包括的なグループ理論の入門的論述は、J.B.フラレイの「抽象代数学の最初のコース」(アディソン−ウエズレイ、リーディング、MA,USA、2002年11月、ISBN0201763907)に見出され、参照によりここに組み入れられる。例えば、スケジュール周期がN単位と計測される場合、スケジュール周期に関連したイベントは、例えばタスクが資源によってサービスされるときに、Nを法とする整数のグループによって自然に索引付けされる。同様に、資源によってサービスされるタスクは、その資源を表すグループのサブグループのコセットによって表される。かくして、“資源”や“資源スケジュール周期”は、一般に数学グループとして表され、“タスク”や“タスクサービススケジュール”は、その資源を表すグループのサブグループのコセットによって表され、コセットは、コセット代表およびサブグループによって表され、サブグループは、そのサブグループのジェネレータと同一視される。資源を表すグループの順序は、そのグループ内の要素の数であり、一般には“N”と呼ばれることになる。簡略化および理解の容易化のために、本発明の明細書を通して、Nを法とする整数のグループによる索引付けが仮定されている。但し、そうでないと表明された場合は、Nを法とする整数のグループのクラスが、全てのグループを含むことはない。
特に、それは、無限グループまたは非アーベルグループ、例えば順列グループを含まない。そのようなグループにとって、周期や率の概念はスペクトル成分に一般化する。精密には、“スペクトル成分”によって、我々はグループのサブグループを意味する。ここで、サブグループ、即ちスペクトル成分は、サブグループのジェネレータによって識別される。あるスケジューリングシステムは、イベントおよび値が自然に索引付けされる1つのグループまたは複数のグループがNを法とする整数のグループのクラスにないように、構造化されることがある。これらの場合に、Nを法とする整数のグループのクラスのメンバーでないグループまで拡張されたバビロニア定理および完全パッキング系のバージョンは、明細書中に記載された方法のバージョンと同様に、スケジューリングシステムに適用される。当業者は、本発明の方法の仕様を、Nを法とする整数のグループのクラスからアーベルおよび非アーベルグループの双方を含む他のグループへ容易にマップすることができる。
本発明は、この書類の残りを通して、一般的にバビロニアスケジューリングと呼ばれる。
本発明は、スケジューリング応用の幅広いセットに即時に適用可能である。明細書に記載されている実施形態は、パケット通信ネットワークおよびセル通信ネットワークに直接適用されているが、この発明はこの実施形態に限定されるものではなく、当業者はこの発明を、周期的タスクをスケジュールするシステムに対し、あるいはより一般的に、資源を表すグループのサブグループのコセットによって表されるタスクをスケジュールするシステムに対し容易にマップすることができる。セル通信ネットワークは、全てのパケットが同じサイズであるパケット交換ネットワークの特殊なケースとみなすことができる。それ故、この説明の残りについて、我々は、例示目的のためにのみ、パケット通信ネットワークに言及するが、このことは本発明の限定にはならない。
資源およびそれらのそれぞれのサービス率が与えられ、そして変化するサービス要求を有したタスクのセットが与えられると、バビロニアスケジューリングは、(1)タスク周期性のセット、および/または(2)資源スケジュール周期、および/または(3)タスクおよび資源周期に対する尺度の単位を、タスクサービス要求が満たされるように、また衝突のないスケジュールの計算が、そのようなスケジュールが存在する場合には、可能となるように、モデル化し、選択することに使用される。それから、1または複数の関連したスケジューリングアルゴリズムが構築される。このアルゴリズムは、資源を効率的に且つ衝突なしにスケジュールするものであるか、利用可能な計算資源を使用して衝突のないスケジュールが見いだせないことを効率的に決定するものである。異なるサービス率を有する個別のスケジューリングシステム資源は、衝突のないタスク周期性の異なるセットをサポートすることが可能である。バビロニアスケジューリングは、パケット交換ネットワークで典型的に必要とされるように、資源の全てに対し同時に適用できる衝突のないタスク周期性を決定することに使用できる。
パケット通信ネットワークは、異なるアーキテクチャを使用するルータおよびスイッチで実施される。一般に、この発明は、率制御型サービス規律をサポートするアーキテクチャを持つルータおよびスイッチに適用される。例えば、H.ツァン、D.フェラーリの“率制御型サービス規律”(高速ネットワークジャーナル:サービス品質についての特別な問題、第3卷4号、1994年)を参照されたい(その開示は、参照によって全てここに組み入れられる)。率制御型サービス規律をサポートするルーティング/スイッチングデバイスの1つのタイプには、S.ムーア、C.A.シラーJr.の“パケットシーケンシング:IPネットワークにおける理想QoS用の決定性プロトコル”(IEEE通信誌、2003年10月、第41巻10号(参照によってここに組み入れられる)に記載されているようなパケットシーケンサと、NH州ポーツマスのセタシアンネットワーク社から入手可能なSQ−1000およびSQ−50型のルーティング/スイッチングデバイスとがある。パケットシーケンサで構成されるか、一部構成されるネットワークは、時間決定性で損失のないIPパケットフロー用の通信をサポートし、そして特にサービス周期的な、特に等時性のパケットフローに良く適合する。等時性パケットフローは、周期的フローであって、システムに対する尺度の単位に関して、フロー内のパケットが等しく離された追加的制約を有する。より一般的に、タスクは周期的であるが、システムをモデル化することに使用される根元的数学グループに関して、等大となるように更に制約されている。
多くの開発されたネットワークは、異なるリンクスピードを持つ複数の通信リンクを有し、そして周期的パケットフロー(周期的タスク)は、フローの経路が異なるスピード即ちサービス率の複数のリンクを含むときでさえ、リンク資源によって周期的にサービスされなければならない。パケットシーケンシングの文脈では、フローはサービスされるタスクであり、ネットワークポート/リンクはタスクにサービスする資源であり、そしてシーケンスエージェントと呼ばれるソフトウエアモジュールはスケジューラとして機能する。本発明は、周期的率のセットおよび/またはリンク資源周期および/または尺度の単位を選択することに使用される。これらは、ネットワーク中の全てのリンクに適用されると共に、性能計測に関する改良を表示するスケジューリングアルゴリズムの設計および実施をサポートする。
バビロニアスケジューリングはまた、他の応用にも直ちに適用可能であるが、IPパケットシーケンシングネットワークは、本明細書で最もしばしば使用される具体例である。当業者は、この発明を、パケットシーケンシングネットワークから、周期的またはスペクトルの現象をスケジュールまたは管理する応用またはシステムに、容易にマップすることができる。
発明の詳細な説明
本発明の原理に従って、一般的にバビロニアスケジューリングと称される方法の集合がここに開示され、異なる周期性を持つ周期的タスクを異なるサービス率を持つ複数の資源の全てにわたってスケジューリングするための効率的なスケジューラを提供して、スケジュールが衝突しないように、即ち多くても1つのタスクが任意の与えられた時間に資源によるサービスを受けるようにスケジュールされる。
本発明の原理に従って、一般的にバビロニアスケジューリングと称される方法の集合がここに開示され、異なる周期性を持つ周期的タスクを異なるサービス率を持つ複数の資源の全てにわたってスケジューリングするための効率的なスケジューラを提供して、スケジュールが衝突しないように、即ち多くても1つのタスクが任意の与えられた時間に資源によるサービスを受けるようにスケジュールされる。
上述したように、本発明は、周期的またはスペクトルの現象を有するどのようなスケジューリングシステムにも適用される。この出願の好ましい実施形態は、パケット通信ネットワークまたはセル通信ネットワーク(パケットネットワークの特殊なケース)であるが、本発明はこの実施形態に限定されるものではない。好ましい実施形態は、率制御型サービス規律をサポートするルーティングおよびスイッチングデバイスを使用するパケットネットワークに適用される。例えば、H.ツァン、D.フェラーリの“率制御型サービス規律”(高速ネットワークジャーナル:サービス品質についての特別な問題、第3卷4号、1994年)を参照されたい(参照によって全てここに組み入れられる)。1つのそのようなタイプのデバイスは、パケットシーケンサである。パケットシーケンサによって構成されるか、一部構成されるネットワークは、パケットシーケンシングネットワークと称される。
パケットシーケンシングネットワークは、S.ムーア、C.A.シラーJr.の“パケットシーケンシング:IPネットワークにおける理想QoS用の決定性プロトコル”(IEEE通信誌、2003年10月、第41巻10号[ムーア、シラー]の参考文献に詳述されている(参照によってその全体がここに組み入れられる)。
パケットシーケンシングネットワークの典型的構成において、リンク資源は、スケジュール周期を法とする時間を規定する。例えば、ネットワークリンクは、Pを法とする時間を規定する。ここで、P=120msである。加えて、リンクのスケジュール周期は、予約(アポイントメント)と呼ばれる離散的な単位に関して測定される。この予約は、典型的にはバイトで測定される。ここで留意されるべき点は、スケジュール周期の物理ドメイン(時間)は、尺度の単位の物理ドメイン(バイトで測定される予約であるか、または等価的に量)とは異なるということである。かくして、スケジュール周期120msで予約サイズ50バイトの100Mbps高速イーサーネットリンクにとって、スケジュール周期120msは、30,000予約のサイズとなる(30,000=120ms*100Mbps*(バイト/8ビット)*(予約/50バイト))。
ネットワークリンクは、パケットシーケンシングデバイスに接続される。これらデバイスは、通常のIPパケットルータのように機能するが、コミットメントを受入れると共に強制して、個別のパケットフローからのパケットに対し精密な時間に、即ち特別な予約時間にサービスする追加的能力を有する。ネットワークに取り付けられたデバイスや、ネットワークによってホストされるアプリケーションは、ネットワークを通る順序付けされたパケットのフローまたは道程に対するリクエストを発行することができる。このリクエストは、典型的にはシーケンスエージェントと呼ばれるソフトウエアモジュールによって扱われる。このモジュールは、ネットワークに取り付けられたホスト上に存在できるか、ネットワーク内のシーケンサを通して分散され得る。
スケジューリングシステムのより一般的な文脈では、シーケンスエージェントは、タスク(順序付けられたフロー、または道程)を資源(フローの経路に沿ったリンク)に割り当てるスケジューラである。シーケンスエージェントは、ネットワークの接続形態およびリンク状態を知っている。そして、この情報を使用して、ネットワークを通る道程を計算することができる。この道程は、ネットワークを通る経路を特定するだけでなく、精密な時間(予約)を特定する{予約、シーケンサリンクポート}対の集団である。各シーケンサは、その時間の間に、フローからのパケットにサービスする。
上記のシナリオで、シーケンスエージェントは、リクエストを扱い、ネットワークを通る衝突のない道程をパケットフローに対して見つける。即ち、シーケンスエージェントは、ネットワークを通る経路を見つけるだけでなく、もう1つのフローに対して既に割り当てられたものではない予約時間を、その経路内の各リンク上で見つける。いくつかのフロー、特に所定の所謂“リアルタイム”フロー、例えば“ボイスオーバーIP”(VoIP)ネットワーク化された応用によって創生されるフローは、厳密に等時性であると共に周期的ではない道程から利益を得る。即ち、フロー内の連続パケットは、等距離離された時間間隔中サービスされる。
例えば、20msサンプリング周期を持つ典型的なG.711符号化VoIP応用は、20ms毎にパケットを構築してネットワークに送信する。パケットが宛先へ精密な20ms間隔で配送されるように、根元的ネットワークが等時的にパケットを輸送できる場合、受信デバイスはジッター補償バッファを必要としない。VoIP応用では、ジッター補償バッファは、終端間待ち時間に貢献するが、この待ち時間は最小化されるべきである。それ故、等時的にパケットフローを輸送することができるパケットシーケンシングネットワークを使用することによってジッター補償バッファを消去することは、終端間待ち時間の最小化を助ける。
パケットシーケンサは、パケットルーティングおよびスイッチングデバイスのより一般的なクラスの一例である。このクラスは、H.ツァン、D.フェラーリの“率制御型サービス規律”(高速ネットワークジャーナル:サービス品質についての特別な問題、第3卷4号、1994年)の率制御型サービス規律をサポートする能力によって特徴付けられる。このクラスのルータおよびスイッチによって構成されたネットワークは一般に、サービス品質計測、例えば終端間遅延、遅延変化(通常ジッターとして知られる)、パケット待ち行列損失、および損失分散に関して、他のクラスのルーティングおよびスイッチングデバイスで構成されたネットワークと比較されたときに、改良された性能を呈する。
それらの時間ベースの転送アーキテクチャ故に、パケットシーケンシングネットワークは、等時性パケット輸送サービスを提供することが可能である。これは通常のパケットルータとは対照的である。通常のパケットルータは、コンテンションベースの資源共有モデルを使用するので、ネットワークを横断すると共に同じ資源(例えば、ネットワークリンク)について争う複数のフローがあるときは、等時性輸送に対して、または周期的輸送に対してさえ、ハード保証をすることができない。
他のネットワーク化された応用、例えばデータファイル転送のようなリアルタイム要求を有しない応用は、VoIP等のリアルタイム応用のように多くの利益を等時性パケット輸送から直接得ることがないが、これら他の応用に対して等時性および/または周期的輸送を使用することは、ネットワークに対し全体として次の有意な利益を与える。これは、その使用が潜在的に、
(1)ネットワークがその資源を利用する能力を増加し、
(2)シーケンスエージェントが道程を計算することに使用する時間を減少し、
(3)シーケンスエージェントがシーケンサに伝送して、それらに道程情報を与える信号方式情報の時間およびサイズを減少する、からである。
(1)ネットワークがその資源を利用する能力を増加し、
(2)シーケンスエージェントが道程を計算することに使用する時間を減少し、
(3)シーケンスエージェントがシーケンサに伝送して、それらに道程情報を与える信号方式情報の時間およびサイズを減少する、からである。
これらの利益の全ては、ネットワークのコスト、複雑さ、および性能を制御するために重要である。一例として、我々は利益(3)を、120msスケジュール周期および50バイト予約、従って各周期に30,000予約を持つ100Mbps高速イーサーネットリンクの上記例の文脈中で検証する。20ms毎にパケットを入手するG.711符号化VoIPフローを考える。各パケットは、238バイト(160バイトのG.711符号化ペイロード、12バイトのRTPヘッダー、8バイトのUDPヘッダー、20バイトのIPヘッダー、および38バイトのイーサーネットフレーム)を使用し、それ故5連続した50バイトの予約をリンクによるサービス用に必要とする。
十分なスループットをフローに対して与えるために、シーケンスエージェントは、他のフローに既に託されたものではない30,000予約の集団内で5連続した予約の6セットを識別する必要がある。即ち、リンクは6VoIPパケットに対し120ms毎にサービスする必要がある。シーケンスエージェントが6予約セットのスケジュール内の位置を非等時性手法で、例えばランダムに選択する場合、シーケンスエージェントは、6セットの予約およびそれらの位置を有したリンクに関連したシーケンサに対し信号送信しなければならない。
これに対し、シーケンスエージェントが、周期内で予約全体にわたって等距離で均一に分散された6予約セット位置を選択する場合、即ちフローのパケットにサービスすることを等時的にスケジュールする場合、シーケンスエージェントがシーケンサに信号送信する必要のある唯一の情報は、第1予約セット位置(オフセット)およびフロー率、即ち120ms周期内にサービスされるべきパケットの数である。シーケンサは、ローカル処理資源を使用して、リンクスケジュール内における他の要約セットの均一に離された位置を単純に計算することができる。
一般に、周期的ではあるが非等時的な予約選択戦略が使用される場合、信号方式情報の量は、単一スケジュール周期内でサービスされるべきパケットの数、またはフロー率と線形に比例する。これに対し、等時的なスケジューリング戦略では、信号方式情報の量は一定であってフロー率とは無関係になる。この特性は、高スループットフローおよび高トランザクション率をサポートするネットワークにおいて信号方式のオーバーヘッドを減少させるためには重要になる。このようなネットワークは、例えば高品質IPテレビ会議応用をホストする。この応用は、フロー当たり数100パケットを各120msリンクスケジュール周期中に生成すると共に、毎秒数100回のビデオセッションの配置および分解を生じさせるものである。
一般に、数学グループを有するスケジューリングシステムのモデル化は、システム情報の効率的符号化を認める。例えば、周期的タスクは、グループのコセットによって表すことができ、またコセットは、2つの値、即ちグループのジェネレータと、コセット代表とによって全て表すことができる。スケジューリングシステム情報の効率的符号化は、システムによって性能を改良することに活用される。
N=(リンクスピード*スケジュール周期)/予約サイズである場合に、N予約を有するリンクにとって、可能な等時性フロー率は、Nの素因数のべき集合から求められる。そして、このセットは、(付加的)グループZNのサブグループのセットと等価である。具体的には、N=p1p2p3...pjの素因数分解である場合、周期当たりのパケット数または等価的に相互パケット間隔(フロー率)で測定される全ての可能な等時性フロー率は、2jの値1,p1,p2,p3,...,pj,p1p2,p1p3,...,p1pj,p2p3,p2p4,...,p2pj,...,p1p2p3...pjによって構成される。(素因数はNの素因数分解では1より多く起こり、この場合そのセットのいつかのメンバーは重複することになる)。このセットは、Nに対するタスク率の許容セットと称される。等時性タスク周期の対応するセットは、Nに対するタスク周期の許容セットと称される。
具体例として、スケジュール周期が、2*2*3*5に因数分解されるN=60に一致する場合を考える。等時性フロー率の許容セットは、{1,2,3,5,4,6,10,15,12,20,30,60}である。この場合、単位は周期当たりのパケット数である。与えられた等時性フロー率に対し、予約で測定される相互パケット間隔、または周期は、Nをフロー率で割ることによって単純に計算される。例えば、N=60であり且つ周期当たり4パケットのフロー率である場合、フロー内の各パケットのリーディングエッジ間の相互パケット間隔は、60/4=15予約である。1つの予約サイズに一致するパケットを仮定すると、この等時性フローは、予約のセット{0,15,30,45}、または予約のセット{1,16,31,46}、または予約のセット{2,7,32,47}等を割り当てられる。ここで留意されるべき点は、Nが素因数であるか、または比較的少ない素因数を持つ数である場合、等時性フロー率のセットは、高度に素数でないNの値から求められる等時性フロー率と比べて、比較的少ない要素を含むことになる、ということである。ここでまた留意されるべき点は、Nの与えられた値に対する許容タスク率のセットと許容タスク周期のセットは、同じ要素を有する、ということである。
前述したように、数学グループは、周期的タスクを有したスケジューリングシステムをモデル化することに対して優れた枠組みを与える。より包括的なグループ理論の入門的論述は、J.B.フラレイの「抽象代数学の最初のコース」(アディソン−ウエズレイ、リーディング、MA,USA、2002年11月、ISBN0201763907)に見出され、参照により全てここに組み入れられる。N=60である上記の例では、モデル化に有用なグループは、整数加算の通常動作について、60を法とする整数のグループである。このグループにとって、15予約の相互パケット間隔および1予約に一致するパケットを有する等時性フローは、ジェネレータ15を有するサブグループ<15>、または{0,15,30,45}として表され、その要素は正確に予約であって、その予約中にフローは資源によってサービスされることになる。等時性フローに割り当てられた第1予約が0でないとき、そのフローはサブグループ<15>のコセットとして表される。
例えば、コセット{1,16,31,46}は<15>1として表され、そして1のコセット代表を有する。コセット{0,15,30,45}もまたサブグループ<15>であり、<15>0として表されるが、コセット代表が0であるときに、添字表記は標準的表記実務に従って省略される。コセットの要素は予約を表す。この予約中に、例えばシーケンサがパケットをリンク上で転送するときに、資源はタスクにサービスすることになる。
フロー内のパケットが1予約より大きい場合、フローにサービスするために、連続するコセットが割り当てられなければならない。例えば、2予約の大きさのパケットを有すると共に15予約の周期を有するフローは、コセット対(<15>,<15>1)、またはコセット対(<15>1,<15>2)、またはコセット対(<15>2,<15>3)等を割り当てられる必要がある。
バビロニアスケジューリングは、Pを法とする時間(ここで、Pはスケジュール周期である)を、尺度の単位(予約)に関して、スケジュール周期の尺度が整数Nとなるように測定する。バビロニアスケジューリングは、スケジュールされたタスクの周期性を、Nの素因数のべき集合から、またはNの整数倍数または整数約数のべき集合から求められる値に制約する。
当業者は、Nの整数倍数または整数約数に対する等時性フロー周期を如何にして求めるかを理解するであろう。そのように制約された周期を持つ周期的タスクはバビロニアタスクと称され、それらの周期はバビロニア周期と称され、それらのタスク率はバビロニア率と称される。タスク周期または率がバビロニアであるか否かはNの値に依存しない、という点に留意されたい。例えば、N=60であるときに、4は、60を均等に分割するので、バビロニア周期およびバビロニア率の双方である。しかし、N=30であるときに、4は、30を均等に分割しないので、バビロニア周期または率とはならない。
次に説明されるのは、バビロニアタスクをスケジューリングするときに衝突を回避するための効率的方法に対する基礎である。バビロニアタスク間の衝突を回避することは、バビロニア定理によって規定される特別な関係を有するタスクについてコセット代表を選択することと等価である。バビロニア定理が示していることは、それぞれバビロニア周期aおよびbを持つ2つのタスクが、それぞれコセット代表xおよびyを割り当てられているとすれば、これらタスク<a>xおよび<b>yは、(x−y)がgによって均等に分割される場合に、そしてその場合にのみ衝突する、という点である。ここで、gはaおよびbの最大公約数、またはgcd()である。この定理の証明はまた、タスクが衝突する予約、即ち<a>xと<b>yの交差を決定するための単純な手順を含んでいる。
簡単な例が助けになる。再び我々は、N=60のスケジュール周期について上記の例を使用し、また我々は、1約束より大きくないパケットを有するパケットフローを仮定する。6予約の周期を持つフロー“a”と、15予約の周期を持つフロー“b”とを考える。gcd(6,15)=3であるので、コセットは、それらの代表の差が3によって均等に分割されないように選択されるべきである。<6>0および<15>1を選択する。実際に、<6>0はセット{0,6,12,18,24,30,36,42,48,54}であり、<15>1はセット{1,16,31,46}であり、そして<6>0と<15>1の交差はゼロである。即ち、フローは衝突しない。その代わりに、例えば<6>1および<15>10が選択された場合、バビロニア定理によってフローは衝突する。これは、(10−1)=9が3=gcd(6,15)によって均等に分割されるからである。実際に、<6>1はセット{1,7,13,19,25,31,37,43,49,55}であり、<15>10はセット{10,25,42,57}であり、<6>1と<15>10の交差は{25}となる。即ち、タスク<6>1および<15>10は、リンク上で同時にスケジュールされた場合には、予約25で衝突する。
バビロニア周期は、比較的に素数的であり得るので、そのような周期を持つフローは、衝突なしに資源を共有することができない、という点にも留意されたい。上記例では、バビロニア周期は、N=60,4および15を有するが、gcd(4,15)=1であるので、バビロニア定理が証明することは、関連するフローを表すコセットはどのようなものでも、(それらが衝突する)非ゼロ交差を有することになる、という点である。これは、コセット代表の全ての可能な差が1によって均等に分割されるからである。バビロニア定理がまた示すことは、一般に大きなペアをなすgcd()値を有するバビロニア周期を持つフローをスケジュールすることは望ましい、という点である。この理由は、このことがゼロ交差を持つコセットに対してより大きな可能性を認めるからであり、従ってそのようなコセットを見出す確率を増加させるべきだからである。
しかしながら、システムが率の所定セットをサポートする必要がある場合、Nは衝突が回避できるように選択される。例えば、スケジュール周期の範囲内で4または15のいずれかの率を有するフローをサポートする要求があることを想定すると、フローは、スケジュール周期当たり4回またはスケジュール周期当たり15回のいずれか一方でサービスされなければならない。尺度の単位(予約)が、N=60であるように規定される場合、フローの対応する周期は、率4のフローに対しては60/4=15予約となり、また率15のフローに対しては60/15=4予約となる。我々は既にgcd(4,15)=1であることを見てきた。それ故、フロー率およびNのこれらの値は、衝突を回避するには十分ではない。しかしながら、予約サイズ(尺度の単位)は、Nが衝突を回避するに十分な値へと変化するように再構成され得る。等価的に、スケジュールを索引付けすることに使用されるグループは、変化されうる。例えば、予約サイズがそのオリジナルサイズの半分に再規定されることを想定する。この場合、スケジュール周期は今、N=120予約となる。即ち、索引付けすることに使用されるグループは、Z60からZ120へと変化されている。スケジュール周期当たり4回サービスされなければならないフローは今、120/4=30予約の周期を有する。また、スケジュール周期当たり15回サービスされなければならないフローは今、120/15=8予約の周期を有する。gcd(8,30)=2であるので、両タイプのフローを衝突なしにスケジュールすることが可能である。
上述したように、バビロニア定理は、潜在的な衝突を検出したり、2つの異なるサービス率を持つフローについて衝突を回避するスケジュール周期尺度を選択することに使用できる。しかしながら、2より多いフロー率が率セット内にある場合は、バビロニア定理に基づいた同様の論理が適用される。即ち、率R={r1,r2,...,rk}を有するタスクのセットと、フロー周期P={p1,p2,...,pk}の対応するセット(ここで、pj=N/rjであり、またNは資源スケジュール周期の尺度である)とが与えられると、(x−y)がg=gcd(p)、即ちPにおける要素の全ての同時最大公約数によって均等に割り切れない場合、コセット代表xおよびyを有する2つのフローは衝突しない。
この観察は、バビロニア定理に対して、完全パッキング系と呼ばれる系を生じさせる。この系は、スケジューリングアルゴリズムによって、リンク資源を効率的にスケジュールし利用することに使用される。システムが、率セットR={r1,r2,...,rk}を有するフロー(タスク)と、フロー周期P={p1,p2,...,pk}の対応するセットとをサポートすることを想定する(ここで、サイズNのスケジュール周期を有するリンク上においてpj=N/rjである)。g=gcd(P)とすると、Rから任意に選択された率を有するgフローのセットは、gフローにコセット代表0,1,...g−1が独得に割り当てられていれば、衝突しない。実際に完全パッキング系が意味することは、フローおよびフロー率の現ミックスとは関係なく、1つのフローにコセット代表0,1,...g−1が独得に割り当てられていれば、そのフローが他のフローと衝突することをスケジューラはチェックする必要もない、という点である。完全パッキング系は、従って、スケジューリングアルゴリズムの計算量を有意に減少させること、並びに資源が全て利用され得る条件を規定することに使用できる。
完全パッキング系は、率のセットを決定するための基礎である。この率のセットは、スケジューリングアルゴリズムによって、計算量を減少すること、並びに資源利用を改良することに利用される。率Rのセットとフロー周期Pの対応するセットにとって、g=gcd(P)のより大きな値は、衝突のないスケジュールを見出し可能なスケジューリングアルゴリズムを、gのより小さな値よりも効率的に提供する。かくして、R(従ってP)は、gcd(P)が大きくなるように採集されるべきである。あるいは逆に言えば、Rが予め設定されている場合には、スケジュール周期および/または尺度の単位は、gcd(P)が大きくなるように採集されるべきである。
完全パッキング系に基づいた率セット選択の説明例として、パケットシーケンシングネットワークにおいて、44Mbpsのペイロード帯域を有したDS−3リンクを考える。ネットワーク工事チームが120msのスケジュール周期および50バイトの約束サイズを有したリンクを構成しているものと想定する。このリンクは、スケジュール周期のサイズに対してN=13200約束を生じる。スケジュール周期当たり60パケットまでの率、即ち60pppを有するパケットフローをサポートする要求がある。N=13200の因数分解が明らかにすることは、60pppより大きくない等時性フロー率のセットRは{1,2,3,4,5,6,8,10,12,15,20,24,25,30,40,50,60}であり、またフロー周期の対応するセットPは、約束で測って、{13200,6600,4400,3300,2640,2200,1650,1320,1100,880,660,550,528,440,330,264,220}であり、これはg=gcd(P)=22を与える、という点である。
22は、gにとって良い値なのか?その答えは、ホストされる応用の要求に依存している。ネットワークがサポートする必要のある応用のセットが“ボイスオーバーIP”(VoIP)および通常のデータトラフィックを含むことを考える。G.711および20msサンプリングを使用して符号化されたペイロードを有するVoIPパケットは、200バイト、即ち4予約より大きいが、250バイト、即ち5予約よりは小さい(正確なサイズは、リンクレイヤプロトコルフレーミングに依存する)。それ故、スケジューラは、5連続予約のセットをVoIPトラフィックに対して割り当てる必要がある。データパケットは、(1500バイトのイーサーネット最大伝送時間単位(MTU)がネットワークパラメータ値であるものと仮定すると)1538バイトにも大きくできるので、スケジューラは、31連続予約データトラフィックのセットを割り当てる必要がある。かくして、このリンクを通してスケジュールされた正に最初のフローがデータフローである場合、そのフローには、値0から21=g−1までの全てをカバーするコセット代表0,1,2,...30が割り当てられる。従って、データフローの率とは関係なく、スケジューラは、後続フローをスケジュールしようとするときに、後続フローの率とは関係なく、衝突を明確にチェックしなければならない。これは効率が悪い。
率Rのセットは低減されるか、制限されて、gcd(P’)がgcd(P)よりも大きくなるように、低減されたフロー率セットR’および対応するフロー周期セットP’を形成する。バビロニアスケジューリングを使用して、そのようなR’およびRセットを構築する1つの手法は、次のようなものである。即ち、60ppp率をサポートする要求故に、60はR’に含まれ、そして60pppフロー率周期(N/60=13200/60=220予約)はP’に含まれる。ゴールは、gcd(P’)が大きくなるように、Pの要素をP’に包含することである。このようにする1つの手法は、それらの周期(220の整数倍)だけをPに包含することであり、これによりP’={220,440,660,880,1100,1320,2200,2640,3300,4400,6600,13200}となる。構成によって、明らかにgcd(P’)=220となる。R’を形成する対応するフロー率は、確かに60pppを均等に分割するフロー率であり、R’={1,2,3,4,5,6,10,12,15,20,30,60}である。
上記のフロー率セット構成技術の有効性は、次のように測定することができる。即ちR’は12フロー率を含むのに対し、Rは7フロー率を含む。あるいは、R’はRよりもおよそ30%少ないフロー率を有する。しかしgcd(P’)=220は、gcd(P)=22よりも10倍大きい、または1000%の増加であり、1つの解釈は、10倍多いトラフィックは、明確な衝突チェックがなされる必要がある前に、スケジュールされ得る、ということになる。Rの代わりにR’を使用するようにシステムを制限することは、関連したスケジューラアルゴリズムの性能を有意に改良することになる。この制限は、R’がほぼRの大きさであるという点で小さいだけでなく、この制限はまた、次のように容易に取り除かれる。即ち、システム要求が、RにはあるがR’にはないフロー率rjを含む場合、rjはR’内の要素によって構成される、という点に留意されたい。例えば、RにはあるがR’にはない24pppがシステム要求であることを想定すると、24pppフローは、2つの均等に離された12pppフローとして合成される。この場合、12pppはR’にある。より一般的に、所定の率を有する所定のフローは、異なる率のフローの組み合わせによって合成され得る。この場合、フローの率の合計は、所定のフローの率と等しくなる。このフロー率合成方法は、R’内ではなくR内のフロー率に適用される。従って、事実上どのフロー率も使用から外されてはいない。同様に、所定の率を有する所定のフローは、合計が所定の率となる率のフローに分解され得る。
明細書のこの点まで、単一資源サービス率だけが考慮されている。勿論、多くのリアルワールドスケジュール化システムは、異なるサービス率を有する資源のセットに対してタスクをスケジュールする。リアルワールドネットワークは例外ではない。それらは通常、異なるスピードを有する種々のリンクを包含するので、ネットワークを横断する単一パケットフローは、有意にスピードを変化させるリンク上を輸送される。
例えば、顧客ネットワークとサービスプロバイダネットワークとの間のアクセスリンクは、典型的にはDS−1(1.536Mbps)、DS−3(44Mbps)、またはOC−3(155Mbps)であり、また内部ネットワークファブリックリンクは、典型的にはOC−3、OC−12(620Mbps)、OC−48(2480Mbps)、またはOC−192(9920Mbps)リンクであるか、あるいは10、100、1000、または10,000Mbpsイーサーネットリンクである。シーケンサのネットワークがそのように容量を変化させるリンクと相互接続されている場合、如何にしてパケットフローが等時的に終端間で輸送されるかを考慮しなければならない。
我々が上記論議から知ったことは、単一リンクがN予約に一致するスケジュール期間を有する場合、そのリンクによって輸送され得る等時性フロー率/周期の許容セットは、Nの素因数のべき集合から求められる、ということである。今、2つのリンクを考える。それぞれは、スケジュール期間に対して同じ時間値を、また予約に対して同じサイズ(例えば、それぞれ120msおよび50バイト)を有するが、異なる根元的リンク容量を有するので、結果的に2つの異なるスケジュール期間測定値N1およびN2予約が、2つのリンクに対して生じる。両リンクにわたって相互にサポートされ得る等時性フロー周期は、gcd(N1,N2)の素因数のべき集合から求められる。より一般的には、kリンクのセットおよびスケジュール期間尺度{N1,N2,...Nk}の対応するセットに対して、等時性フロー率は、gcd({N1,N2,...Nk})の素因数のべき集合から求められる。
例えば、ネットワークがDS−3、OC−3、および10Mbpsイーサーネットリンクを含むものと想定する。これらはそれぞれ、(3つのリンクタイプ全てに対して120msにセットされた)スケジュール周期当たり13200、27000、および3000の50バイト予約を有するように構成されている。すると、gcd(13200,27000,300)=600となり、これは素因数分解600=2*2*2*3*5*5を有する。従って、これら3つの異なるリンクタイプにわたって相互にサポートされ得る等時性フロー率の許容セットRは、600を均等に分割する全整数により構成される。即ち、R={1,2,3,4,5,6,8,10,12,15,20,24,25,30,40,50,60,75,100,120,150,200,300,600}である。各リンクタイプは、Nの異なる値を有するので、各リンクに対するフロー周期のセットは、各リンクタイプについて異なるものとなる。複数のリンクタイプおよびスピードを有するネットワークを設計し構築する場合、単式リンク−スピードの場合にサポートされたフロー率のセットを制限するための前述した方法は、当業者によって容易に複式リンク−スピードの場合に適用および応用される、という点に留意されたい。異なるリンクタイプのセット内の各リンクタイプに対する予約の数の構成は、大きなgcd()値に対する必要性によってガイドされる、という点に更に留意されたい。
上記の論議は、異なるリンクタイプに対するスケジュール周期および尺度の単位(予約サイズ)を、次のように選択する方法を示している。(1)リンクタイプiに対するスケジュール周期当たりの予約の個別値Niは多くの素因数を有し、従って種々の等時性フロー率をサポートすることができる。(2)j個のリンクタイプに対する値N1,N2,...Njのセットは、最大公約数gを有する。これは、それ自体が多くの素因数を有する、即ち高度に素数でないgの値を有する。後者の場合、比較的大きな種類の等時性フロー率は、リンクタイプの全てにわたって同時にサポートされ得る。また、それらの対応するフロー周期セットの最大公約数は比較的大きい。
これらの方法は、当業者によって、パケット通信ネットワークのクラスから、変化するサービス率の資源のセットを有するスケジュールされたシステムの広いクラスへと容易に拡張される(異なる周期を有した周期的タスクにサービスすることが望ましい)。また、前述したように、妥当であるかシステムによって必要とされるフロー率をフロー率制限方法が許さない場合でさえも、これらのフロー率は、許容される周期を持ついくつかのフローから合成することができる。
明細書のこの点まで、本発明の説明は、タスクのセットに対するコセット代表を見出す問題に関してなされてきた。この場合、タスクの率属性は許容値の予め設定されたセットから選択され、対応するコセットの交差はゼロとなる。本発明はまた、以下で説明されるように、逆の問題にも適用し得る。即ち、コセット代表のセットと、コセット代表が割り当てられるタスクのセットとが与えられる場合、対応するコセットの交差がゼロとなるように各タスクに割り当てられる率は何なのか?当業者は、所定の率を有するタスクのセットに対するコセット代表を見出す問題事例に対して上述された方法を、所定のコセット代表を有するタスクのセットに対する率を見出す逆の問題事例に、容易にマップすることができる。
更に当業者は、本発明が、限定されるものではないが、以下の使用分野におけるスケジューラおよびスケジューリングシステムにも適用可能であることを認識することになる。即ち、コンピュータのオペレーティングシステム、輸送ネットワーク、製造および産業プロセス、アナログ、デジタルおよび光学的通信システム、ワイヤレス通信システム、パケット交換通信ネットワーク(例えばIPネットワーク)、セル交換通信ネットワーク(例えばATMネットワーク)、精密計数、標本化、および測定装置、暗号システム、並びに電磁信号装置(例えば、磁気共鳴撮像システム)である。当業者は、本発明を特別な使用分野にマップすることができる。
当業者によって本発明に適用される変形および置換は、本発明の範囲内にあるものと考えられる。
Claims (46)
- スケジューリングシステムをモデル化し構造化するための方法であって、前記システムは、複数のタスクと、タスクにサービスするための資源と、タスクのセットを資源に割り当てるスケジューラとを有し、前記方法は、タスクを数学グループのサブグループのコセットとして規定し、資源を前記数学グループとして規定し、そして順序またはサイズをグループに割り当てるように資源に対する尺度の単位を規定する作用を備えることを特徴とする方法。
- タスクを表すコセット、資源を表すグループ、および尺度の単位は、制限されるものではないが、時間、空間、周波数、エネルギ、スピードおよび質量を含む物理ドメインについて規定される請求項1の方法。
- 前記システムは、コセットおよび関連したサブグループによって表される少なくとも第1のタスクと、第2のコセットおよび関連したサブグループによって表される少なくとも第2のタスクとを有し、第2のサブグループのジェネレータは、第1のサブグループのジェネレータとは異なる請求項1の方法。
- 前記スケジューリングシステムは、複数の資源を有する請求項1の方法。
- 前記複数の資源は、物理ドメイン全体に分布されている請求項4の方法。
- タスクは、資源を表すグループのサブグループのコセットによって表すことができ、またコセットは、第1および第2の値によって完全に表すことができ、第1の値は、サブグループのジェネレータを有し、そして第2の値は、コセット代表を有する請求項1の方法。
- タスクは、グループの連続するコセットによって表すことができる請求項6の方法。
- 前記複数の資源は、少なくとも2つの異なる順序を有したグループによって表わされる請求項5の方法。
- 前記システムは、周期的なスケジュールされたタスク予約を有したパケット交換通信システムを含む請求項1の方法。
- タスクをコセットとして、また資源をグループとして規定し測定する作用は、資源を表すグループの順序であるNの値からの前記コセットに関連した可能なサブグループのセットを、Nの素因数のべき集合から求める作用を含み、このセットは、(付加的)グループZNのサブグループのセットと等価であり、N=p1p2p3...pjの素因数分解である場合、全ての可能なサブグループジェネレータのセットは、2jの値1,p1,p2,p3,...,pj,p1p2,p1p3,...,p1pj,p2p3,p2p4,...,p2pj,...,p1p2p3...pjによって構成される請求項1の方法。
- セットP={p1,p2,...,pk}から選択されたジェネレータ値を有する1以上のサブグループのセットが与えられ、タスクに対してコセットを規定する作用は更に、コセット代表xおよびyを、サブグループジェネレータpiおよびpjを有する2つのタスクに対してそれぞれ選択する作用を含み、(x−y)は、g=gcd(pi,pj)によって均等に割り切れることがなく、gcd()は、最大公約数関数であり、それ故gはpiとpjの最大公約数である請求項1の方法。
- 前記システムは、P={p1,p2,...,pk}から選択されるジェネレータ値を有するサブグループによって表されるタスクをサポートし、更にコセット代表をタスクに対し独得に割り当てる作用を有し、前記コセット代表は、値のセット{0,1,...g−1}から選択され、g=gcd(P)は、Pにおける要素値の全ての最大公約数である請求項1の方法。
- 前記システムは、複数の資源を有し、前記複数の資源は、少なくとも2つの異なる順序を有したグループによって表わされる請求項1の方法。
- 前記数学グループは、アーベル数学グループおよび非アーベル数学グループからなるグループのセットから選択される請求項1の方法。
- サブグループジェネレータのセットは、前記サブグループジェネレータのセットよりも小さいサブセットに制限されている請求項1の方法。
- サブグループジェネレータのセットは、前記サブグループジェネレータのセットよりも小さいサブセットに制限されている請求項11の方法。
- 資源を表すグループは、タスクを表すコセットの交差がゼロとなるように選択される請求項1の方法。
- 資源に対する尺度の単位は、前記資源を表すグループのサブグループの全てのジェネレータ値のセットが比較的に素数的なペアをなさないように選択されるか、あるいはジェネレータ値のセットが比較的大きな最大公約数を有するように選択される請求項1の方法。
- 尺度の単位は、前記複数の資源を表すグループの順序の対応するセットが比較的大きな最大公約数を有するように選択される請求項5の方法。
- グループ、サブグループ、またはコセット表記を使用してシステム状態情報を符号化する作用を更に備える請求項1の方法。
- 前記スケジューラは、可能な衝突イベント、または等価的に、そのような可能なイベントが起こる前に、タスクを表すコセットの非ゼロ交差の要素を識別する請求項1の方法。
- 複数のタスクと、タスクにサービスするための資源と、前記資源を表すグループのサブグループのコセットを有する複数のタスクを識別するスケジューラとを有するスケジューリングシステムであって、前記グループは、資源に対する尺度の1以上の単位を前記数学グループの要素によって資源に索引付けするように規定することによって選択されるスケジューリングシステム。
- タスクは、サブグループのコセットによって表すことができ、またコセットは、第1および第2の値によって完全に表すことができ、第1の値は、サブグループのジェネレータを有し、そして第2の値は、コセット代表を有する請求項22のシステム。
- 前記スケジューラは、前記資源を表す前記グループのサブグループのセットをNの素因数のべき集合から求め(ここで、Nは前記資源を表す前記グループの順序である)、前記セットは、(付加的)グループZNのサブグループのセットと等価であり、N=p1p2p3...pjの素因数分解である場合、全てのサブグループの前記セットは、ジェネレータとして、2jの値1,p1,p2,p3,...,pj,p1p2,p1p3,...,p1pj,p2p3,p2p4,...p2pj,...,p1p2p3...pjのセットから選択された値を有する請求項22のシステム。
- セットP={p1,p2,...,pk}から選択されたジェネレータ値を有する1以上のサブグループのセットが与えられ、タスクに対してコセットを規定する作用は更に、コセット代表xおよびyを、サブグループジェネレータpiおよびpjを有する2つのタスクに対してそれぞれ選択する作用を含み、(x−y)は、g=gcd(pi,pj)によって均等に割り切れることがなく、gcd()は、最大公約数関数であり、それ故gはpiとpjの最大公約数である請求項24のシステム。
- 前記システムは、P={p1,p2,...,pk}から選択されるジェネレータ値を有するサブグループによって表されるタスクをサポートし、更にコセット代表をタスクに対し独得に割り当てる作用を有し、前記コセット代表は、値のセット{0,1,...g−1}から選択され、g=gcd(P)は、Pにおける要素値の全ての最大公約数である請求項24のシステム。
- 請求項1の方法に従って動作することを特徴とするスケジューラ。
- 請求項1の方法に従って動作することを特徴とするスケジューリングシステム。
- コセット代表のセットが与えられ、タスクに対してコセットを規定する作用は更に、セットP={p1,p2,...,pk}から選択されたジェネレータ値を有するサブグループを選択する作用を含み、コセット代表xおよびyを有する2つのタスクに対して、2つのサブグループは、選択されたジェネレータpiおよびpjを有し、(x−y)は、g=gcd(pi,pj)によって均等に割り切れることがなく、gcd()は、最大公約数関数であり、それ故gはpiとpjの最大公約数である請求項1の方法。
- 前記システムは、値のセット{0,1,...g−1}から独得に選択されるコセット代表を有するタスクをサポートし、更にタスクに対しサブグループを割り当てる作用を有し、サブグループジェネレータ値は、セットP={p1,p2,...,pk}から選択され、更にPにおける要素を選択する作用を有し、Pにおける要素の最大公約数であるgcd(P)は、g以上である請求項1の方法。
- コセットおよび関連するサブグループによって表されるタスクを、このタスクを表すサブグループとは異なるサブグループを有したコセットによって表される複数のタスクから合成するための方法。
- コセットおよび関連するサブグループによって表されるタスクを、このタスクを表すサブグループとは異なるサブグループを有したコセットによって表される複数のタスクへ分解するための方法。
- 時間ドメインで動作するスケジューリングシステムをモデル化し構造化するための方法であって、前記システムは、複数の周期的タスクと、タスクにサービスするための資源と、資源に関連したスケジュール周期と、タスクのセットを資源に割り当てるスケジューラとを有し、前記方法は、タスク周期と前記資源スケジュール周期を1以上の尺度の単位によって規定し測定する作用を備え、タスク周期と資源スケジュール周期に対する測定値は、数学的グループの要素によって索引付けされることを特徴とする方法。
- 前記システムは、第1の周期を有する少なくとも第1の周期的タスクと、前記第1の周期とは異なる第2の周期を有する少なくとも第2の周期的タスクとを有する請求項33の方法。
- タスク周期と資源スケジュール周期を規定し測定する作用は、Nを法とする整数のグループZNを有する資源を識別し(ここで、Nは前記資源スケジュール周期に関連したグループの順序である)、更に可能なタスク周期値のセットをNの素因数のべき集合から求める作用を含み、前記タスク周期値のセットは、(付加的)グループZNのサブグループのセットと等価であり、N=p1p2p3...pjの素因数分解である場合、前記タスク周期値のセットは、要素として、2jの値1,p1,p2,p3,...,pj,p1p2,p1p3,...,p1pj,p2p3,p2p4,...,p2pj,...,p1p2p3...pjを有する請求項33の方法。
- セットR={r1,r2,...,rk}から選択された率値を有する1以上の周期的タスクのセット(ここで、rjは資源スケジュール周期中のタスクに対するサービスイベントの数を示す)と、対応するフロー周期のセットP={p1,p2,...,pk}(ここで、pj=N/rjであり、またNは資源スケジュール周期の尺度である)とが与えられ、更に2つのタスクに対して2つの率piおよびpj並びにコセット代表xおよびyを選択して割り当てる作用を含み、g=gcd(pi,pj)によって均等に割り切れることがない(x−y)を選択することによって、コセット<pi>xおよび<pj>yの交差はゼロとなる(ここで、gは率piおよびpjの同時最大公約数である)請求項35の方法。
- 前記システムは、セットR={r1,r2,...,rk}から選択される率、または等価的に対応するセットP={p1,p2,...,pk}から選択されるタスク周期値を有するタスクをサポートし(ここで、pj=N/rjであり、またNは資源スケジュール周期の尺度である)、更にコセット代表をタスクに対し独得に割り当てる作用を有し、前記コセット代表は、値のセット{0,1,...g−1}から選択され、g=gcd(P)は、Pにおける要素値の全ての最大公約数である請求項35の方法。
- 前記システムは、複数の資源を有し、前記複数の資源は、Nの少なくとも2つの異なる値、または等価的に前記グループに対する少なくとも2つの異なる順序を有するグループZNによって表される請求項33の方法。
- タスク周期のセットは、前記タスク周期のセットよりも小さいサブセットに制限されている請求項35の方法。
- 前記資源スケジュール周期は、タスクを表すコセットの交差がゼロとなるように選択される請求項33の方法。
- 前記資源スケジュール周期に対する尺度の単位は、前記タスク周期値のセットが比較的に素数的なペアをなさないように選択されるか、あるいは前記タスク周期値のセットが、比較的大きな最大公約数を有するように選択される請求項33の方法。
- 前記資源スケジュール周期に対する尺度の単位は、前記タスク周期値のセットが比較的に素数的なペアをなさないように選択されるか、あるいは前記タスク周期値のセットが、比較的大きな最大公約数を有するように選択される請求項35の方法。
- 尺度の単位は、前記複数の資源を表すグループの順序の対応するセット
が、比較的大きな最大公約数を有するように選択される請求項33の方法。 - スケジューリングシステムをモデル化し構造化するための方法であって、前記システムは、複数のタスクと、タスクにサービスするための資源と、タスクのセットを資源に割り当てるスケジューラとを有し、前記方法は、資源スケジュール周期に対する尺度の単位を割り当てる作用を備え、資源スケジュール周期は、数学的グループの要素によって索引付けされ、タスクは、前記数学的グループのサブグループのコセットによって、または前記資源スケジュール周期を表す前記グループの要素の任意の集合によって表されることを特徴とする方法。
- 複数の周期的タスクと、タスクにサービスするための資源と、この資源を表す数学的グループのサブグループのコセットを有する複数のタスクを識別するスケジューラとを有するスケジューリングシステムであって、前記グループは、資源スケジュール周期に対する1以上の尺度の単位を選択することによって、資源スケジュール周期を前記数学的グループの要素によって索引付けするように選択されることを特徴とするスケジューリングシステム。
- スケジューリングシステムをモデル化し構造化するための方法であって、前記システムは、複数のタスクと、タスクにサービスするための複数の資源と、前記タスクを前記資源に割り当てるスケジューラとを有し、前記方法は、資源に対する尺度の単位を規定する作用を備え、資源は、数学的グループの要素によって索引付けされ、タスクは、前記数学的グループのサブグループのコセットによって、または資源を表す前記グループの要素の任意の集合によって表されることを特徴とする方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US45905703P | 2003-03-31 | 2003-03-31 | |
PCT/US2004/009813 WO2004090683A2 (en) | 2003-03-31 | 2004-03-31 | System and method for efficient scheduling of periodic phenomena |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006523354A true JP2006523354A (ja) | 2006-10-12 |
Family
ID=33159614
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006509504A Pending JP2006523354A (ja) | 2003-03-31 | 2004-03-31 | 周期的現象の効率的スケジューリング用システムおよび方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US7512947B2 (ja) |
EP (1) | EP1609062A4 (ja) |
JP (1) | JP2006523354A (ja) |
WO (1) | WO2004090683A2 (ja) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8856793B2 (en) | 2004-05-11 | 2014-10-07 | International Business Machines Corporation | System, method and program for scheduling computer program jobs |
US7437275B2 (en) * | 2005-08-03 | 2008-10-14 | Agilent Technologies, Inc. | System for and method of multi-location test execution |
US20070101339A1 (en) * | 2005-10-31 | 2007-05-03 | Shrum Kenneth W | System for and method of multi-dimensional resource management |
US7954106B2 (en) * | 2005-12-19 | 2011-05-31 | British Telecommunications Public Limited Company | Estimating resource usage system for allocating resources to tasks based upon the rating value of tasks and resources mapping |
TWI324747B (en) * | 2006-06-08 | 2010-05-11 | Wistron Corp | Method for preventing process collision of micro controller |
JP4751265B2 (ja) * | 2006-08-01 | 2011-08-17 | 株式会社日立製作所 | リソース管理システム及びその方法 |
US8266624B2 (en) * | 2006-11-30 | 2012-09-11 | Red Hat, Inc. | Task dispatch utility coordinating the execution of tasks on different computers |
JP5209788B2 (ja) * | 2008-08-28 | 2013-06-12 | エヌイーシー ヨーロッパ リミテッド | 周期的プロセスをスケジューリングする方法およびシステム |
US8832700B2 (en) * | 2010-09-29 | 2014-09-09 | Microsoft Corporation | Subscriber-based ticking model for platforms |
US9047129B2 (en) * | 2012-07-23 | 2015-06-02 | Adobe Systems Incorporated | Systems and methods for load balancing of time-based tasks in a distributed computing system |
CN108304257A (zh) * | 2018-02-09 | 2018-07-20 | 中国船舶重工集团公司第七六研究所 | 基于延迟服务器的强实时混合任务调度方法 |
EP3805924A1 (en) | 2019-10-11 | 2021-04-14 | Unify Patente GmbH & Co. KG | Method of scheduling an additional new processing task to be executed by a processor, scheduler, and central processing unit |
US11579959B2 (en) | 2021-05-26 | 2023-02-14 | Honeywell International Inc. | Systems and methods for margin based diagnostic tools for priority preemptive schedulers |
WO2022252026A1 (en) * | 2021-05-31 | 2022-12-08 | Boe Technology Group Co., Ltd. | Computer-implemented method in system comprising one or more processors for executing periodic tasks, system comprising one or more processors for executing periodic tasks, and computer-program product |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5745778A (en) * | 1994-01-26 | 1998-04-28 | Data General Corporation | Apparatus and method for improved CPU affinity in a multiprocessor system |
US6012080A (en) * | 1996-03-27 | 2000-01-04 | Lucent Technologies Inc. | Method and apparatus for providing enhanced pay per view in a video server |
US5964829A (en) * | 1996-03-27 | 1999-10-12 | Lucent Technologies Inc. | Method and apparatus for providing enhanced pay per view in a video server employing a coarse-grained striping scheme |
US5845279A (en) * | 1997-06-27 | 1998-12-01 | Lucent Technologies Inc. | Scheduling resources for continuous media databases |
US6567840B1 (en) * | 1999-05-14 | 2003-05-20 | Honeywell Inc. | Task scheduling and message passing |
KR100727901B1 (ko) * | 1999-07-10 | 2007-06-14 | 삼성전자주식회사 | 마이크로 스케듈링 방법 및 운영체제 커널 장치 |
US7239638B2 (en) * | 2002-03-07 | 2007-07-03 | Avaya Technology, Llc | Systems and methods for the emulation of TDM circuits over a real-time scheduled packet network |
-
2004
- 2004-03-31 EP EP04758634A patent/EP1609062A4/en not_active Withdrawn
- 2004-03-31 US US10/814,604 patent/US7512947B2/en active Active
- 2004-03-31 JP JP2006509504A patent/JP2006523354A/ja active Pending
- 2004-03-31 WO PCT/US2004/009813 patent/WO2004090683A2/en active Search and Examination
Also Published As
Publication number | Publication date |
---|---|
WO2004090683A2 (en) | 2004-10-21 |
US20050034126A1 (en) | 2005-02-10 |
US7512947B2 (en) | 2009-03-31 |
EP1609062A4 (en) | 2011-08-03 |
WO2004090683A3 (en) | 2005-02-03 |
EP1609062A2 (en) | 2005-12-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Pahlevan et al. | Genetic algorithm for scheduling time-triggered traffic in time-sensitive networks | |
Sariowan et al. | SCED: A generalized scheduling policy for guaranteeing quality-of-service | |
Schweissguth et al. | ILP-based routing and scheduling of multicast realtime traffic in time-sensitive networks | |
US7898953B2 (en) | Deficit and group round robin scheduling for efficient network traffic management | |
EP1048186B1 (en) | Method for providing bandwidth and delay guarantees in a crossbar switch with speedup | |
JP2006523354A (ja) | 周期的現象の効率的スケジューリング用システムおよび方法 | |
US7831970B2 (en) | Method and apparatus for scheduling periodic tasks based on synthetic homogenization | |
CN108809707A (zh) | 一种面向实时应用需求的tsn调度方法 | |
US7292578B1 (en) | Flexible, high performance support for QoS on an arbitrary number of queues | |
CN113498106A (zh) | 一种时间敏感网络tsn流的调度方法及装置 | |
Huang et al. | Flexible cyclic queuing and forwarding for time-sensitive software-defined networks | |
Alexandris et al. | Configuration and evaluation of multi-CQF shapers in IEEE 802.1 time-sensitive networking (TSN) | |
CN113938930A (zh) | 适应5g网络多业务场景的虚拟网络功能转发图的构建方法 | |
Boyer et al. | Combining static priority and weighted round-robin like packet scheduling in AFDX for incremental certification and mixed-criticality support | |
Jasperneite et al. | Investigations on a distributed time-triggered ethernet realtime protocol used by profinet | |
EP4014448B1 (en) | Scheduling transmissions through a telecommunication network | |
Guo | G-3: An O (1) time complexity packet scheduler that provides bounded end-to-end delay | |
Philp et al. | End-to-end scheduling in real-time packet-switched networks | |
Luangsomboon et al. | A round-robin packet scheduler for hierarchical max-min fairness | |
Luangsomboon | Fast packet scheduling for hierarchical fairness | |
Jasperneite et al. | Performance evaluation of switched Ethernet in real-time applications | |
US20240031302A1 (en) | Guaranteed-latency networking | |
EP4014447B1 (en) | Interference reduction in telecommunication networks | |
Wang et al. | Hybrid traffic scheduling based on adaptive time slot slicing in time-sensitive networking | |
Wang et al. | Capacity Estimation of Time-Triggered Ethernet Network Based on Complex Network Theory |