メディアストリーミング方法であって、メディアコントローラによって、ユーザ機器によって送信されたメディアストリーミングリクエストを受信するとともに、前記ユーザ機器にインデックスを割り当てるステップと、メディアコントローラによって、前記ユーザ機器の前記ストリーミングリクエストおよび前記インデックスを関連づけて対応テーブルに保存するとともに、メディアサーバが前記対応テーブルに従って、ストレージデバイスが前記ストリーミングリクエストによって要求されたストリームデータdatatobestreamedを前記インデックスに対応するバッファのアドレスに送信するように制御するために、前記ユーザ機器の前記ストリーミングリクエストおよび前記インデックスを前記メディアサーバに送信するステップと、前記メディアコントローラによって、前記ストリーミングリクエストによって要求され、前記ストレージデバイスによって送信される前記ストリームデータを受信するとともに、前記対応テーブルを問い合わせることによって前記ストリーミングリクエストによって要求された前記ストリームデータを対応する前記ユーザ機器にストリーミングするステップとを備え、前記インデックスは、前記ストリーミングリクエストによって要求される前記ストリームデータが保存される前記メディアコントローラ内の対応するバッファのアドレスを指定するために使用される方法。前記メディアコントローラによって前記ユーザ機器によって送信された前記メディアストリーミングリクエストを受信する前に、前記メディアコントローラによって前記バッファを前記データの保存領域のサイズに従って同一のサイズであるブロックに分割するステップをさらに備え、各ブロックはそれぞれ1つのインデックスに対応することを特徴とする請求項1に記載の方法。前記ストリーミングリクエストによって要求された前記ストリームデータを対応する前記ユーザ機器にストリーミングした後に、前記ユーザ機器に対応する前記インデックスを開放し、前記対応テーブルから、前記ユーザ機器の前記ストリーミングリクエストおよび前記インデックスを関連づける情報を削除するステップをさらに備えることを特徴とする請求項1に記載の方法。全てのインデックスを前記ユーザ機器に割り当てた後に、前記メディアコントローラによって、前記ユーザ機器によって送信された前記メディアストリーミングリクエストを受信し、前記ユーザ機器がウェイトするように通知するステップをさらに備えることを特徴とする請求項1または請求項2に記載の方法。前記ユーザ機器の前記ストリーミングリクエストおよび前記インデックスを前記メディアサーバに送信した後に、前記メディアサーバによって、前記ストリームデータの長さ、および/または前記ユーザ機器に対応するブロードバンド情報を保存するステップを備え、前記ストリームデータは、前記ストリーミングリクエストによって要求され、前記メディアサーバによって送信され、対応テーブル内の前記長さ、および/またはブロードバンド情報を保存するステップをさらに備えることを特徴とする請求項1に記載の方法。ディストリビューションネットワーク上に位置するメディアコントローラであって、ユーザ機器によって送信されたメディアストリーミング要求を受信するように構成されるリクエスト受信モジュールと、インデックスを前記ユーザ機器に割り当てるように構成されるインデックス割当モジュールと、前記リクエスト受信モジュールによって受信された前記ユーザ機器の前記ストリーミングリクエストおよび前記インデックスを関連づけるとともに、関連づけられた前記ストリーミングリクエストおよび前記インデックスを対応テーブルに保存するように構成されるストレージモジュールと、ストレージデバイスが前記ストリーミングリクエストによって要求されたストリームデータを前記インデックスに対応するバッファのアドレスに送信するように制御するために、メディアサーバが前記対応テーブルに従って前記ユーザ機器の前記ストリーミングリクエストおよび前記インデックスを前記メディアサーバに送信するように構成される送信モジュールと、前記ストリーミングリクエストによって要求され、前記ストレージデバイスによって送信される前記ストリームデータを受信するように構成されるデータ受信モジュールと、前記ストレージモジュール内の前記対応テーブルを問い合わせるとともに、前記ストリーミングリクエストによって要求された前記ストリームデータを対応する前記ユーザ機器にストリーミングするように構成されるストリーミングモジュールとを備え、前記インデックスは、ストリーミングリクエストによって要求された前記ストリームデータが保存される前記メディアコントローラ内の対応するバッファのアドレスを指定するために使用されることを特徴とするメディアコントローラ。前記データの保存領域のサイズに従って、前記バッファを同一サイズのブロックに分割するように構成されるインデックス決定モジュールをさらに備え、各ブロックはそれぞれ1つのインデックスに対応することを特徴とする請求項6に記載のメディアコントローラ。前記ストリーミングリクエストによって要求された前記ストリームデータが前記ユーザ機器へストリーミングされた後、前記ユーザ機器に対応する前記インデックスを開放し、前記ユーザ機器の前記ストリーミングリクエストおよび前記インデックスの関連づけについての情報を前記対応テーブルから削除するように構成される開放モジュールをさらに備えることを特徴とする請求項6に記載のメディアコントローラ。全てのインデックスが前記ユーザ機器に割り当てられた後に、前記メディアコントローラが前記ユーザ機器による前記メディアストリーミングリクエストを受信した場合、前記ユーザ機器にウェイトするよう命令するように構成される通知モジュールをさらに備えることを特徴とする請求項6または7に記載のメディアコントローラ。前記データ受信モジュールが、さらに前記ストリームデータの長さ、および/または前記ユーザ機器に対応するブロードバンド情報を受信するように構成され、前記ストリームデータは、前記ストリーミングリクエストによって要求され、かつ前記メディアサーバによって送信され、前記ストレージモジュールは、さらに前記ストリームの長さ、および/または前記ユーザ機器に対応するブロードバンド情報を対応テーブルに保存するように構成され、前記ストリームデータは前記ストリーミングリクエストによって要求され、かつ前記データ受信モジュールによって受信されることを特徴とする請求項6に記載のメディアコントローラ。本発明の実施形態は、ディストリビューションネットワーク上のCPUからデータを分離して実行するとともに、ディストリビューションネットワーク上のCPUの動作速度を改善する、メディアストリーミング方法およびメディアコントローラを提供する。本発明の実施形態は、メディアストリーミング方法を提供する。本方法は、メディアコントローラによって、ユーザ機器によって送信されたメディアストリーミングリクエストを受信し、ユーザ機器にインデックスを割り当てるステップと、メディアコントローラによって、ユーザ機器のストリーミングリクエストおよびインデックスを関連づけ、関連づけられたストリーミングリクエストおよびインデックスを対応テーブルに保存するとともに、メディアサーバが対応テーブルに従って、ストレージデバイスがストリーミングリクエストによって要求されたストリームデータdatatobestreamedをインデックスに対応するバッファのアドレスに送信するように制御するために、ユーザ機器の前記ストリーミングリクエストおよびインデックスをメディアサーバに送信するステップと、メディアコントローラによって、ストリーミングリクエストによって要求され、ストレージデバイスによって送信されるストリームデータを受信するとともに、対応テーブルを問い合わせることによってストリーミングリクエストによって要求されたストリームデータを対応するユーザ機器にストリーミングするステップとを備え、前記インデックスは、ストリーミングリクエストによって要求されるストリームデータが保存されるメディアコントローラ内の対応するバッファのアドレスを指定するために使用される方法である。本発明の実施形態は、さらにディストリビューションネットワーク上に位置するメディアコントローラを提供する。前記メディアコントローラは、ユーザ機器によって送信されたメディアストリーミング要求を受信するように構成されるリクエスト受信モジュールと、インデックスをユーザ機器に割り当てるように構成されるインデックス割当モジュールと、リクエスト受信モジュールによって受信されたユーザ機器のストリーミングリクエストおよびインデックスを関連づけるとともに、関連づけられたストリーミングリクエストおよびインデックスを対応テーブルに保存するように構成されるストレージモジュールと、ストレージデバイスがストリーミングリクエストによって要求されたストリームデータをインデックスに対応するバッファのアドレスに送信するように制御するために、メディアサーバが対応テーブルに従って、ユーザ機器の前記ストリーミングリクエストおよびインデックスをメディアサーバに送信するように構成される送信モジュールと、ストリーミングリクエストによって要求され、ストレージデバイスによって送信されるストリームデータを受信するように構成されるデータ受信モジュールと、ストレージモジュール内の対応テーブルを問い合わせるとともに、ストリーミングリクエストによって要求されたストリームデータを対応するユーザ機器にストリーミングするように構成されるストリーミングモジュールとを備え、前記インデックスは、ストリーミングリクエストによって要求されたストリームデータが保存されるメディアコントローラ内の対応するバッファのアドレスを指定するために使用されるメディアコントローラである。先に述べた実施形態で提供される技術的構成は、メディアコントローラを通じて、ユーザによって要求されたストリームデータを保存し、前記データをユーザにストリーミングし、ディストリビューションネットワーク上のCPUからデータの分離を実行し、ディストリビューションネットワーク上のCPUの実行速度を改良し、インデックスをユーザ機器に割り当てることで、非常に多くのユーザに起因するアドレス幅の増大を回避することが理解可能である。本発明の技術的解決策をより明確にするために、本発明の実施形態または先行技術を図示するための添付の図面を以下に簡潔に説明する。明らかに、添付の図面は例示の目的のみであり、当業者は、いかなる創造的な努力なしに添付の図面から他の図面を導き出すことができる。本発明に基づく技術的な解決策は、添付の図面を参照して以下に説明される。明らかに、下記の実施形態は例示の目的のためのみであり、本発明の全ての実施形態を網羅するものではない。当業者であれば、ここで提供される実施形態から他の実施形態をいかなる創造的な努力なしに導き出すことができ、そのようなすべての実施形態は本発明の保護範囲に含まれる。本発明の一実施形態は、図2に示すメディアストリーミング方法を提供する。メディアコントローラおよびメディアサーバは、ディストリビューションネットワーク上に位置することができる。メディアコントローラは、FPGAFieldProgrammableGateArrayであってもよい。メディアサーバは、ディストリビューションネットワーク上のCPUであってもよい。ストレージデバイスは、SSDSolidStateDiskであってもよい。本方法は以下のステップを含む。ステップ21:前記メディアコントローラは、ユーザ機器によって送信されたメディアストリーミングリクエストを受信し、前記ユーザ機器にインデックスを割り当てる。ここで前記インデックスは、ストリーミングリクエストによって要求されたストリームデータが保存されるメディアコントローラの対応するバッファのアドレスを指定するために使用される。特に、ユーザ機器によって送信された前記ストリーミングリクエストは、ユーザの識別情報、例えば、ユーザのIPアドレスまたはユーザ名情報を含んでもよく、もしくは例えばビデオデータまたはオーディオデータのようなリクエストデータのタイプまたは名前のような情報を含んでもよい。代替方法として、ステップ21が実行される前に、データの保存領域のサイズに従って、メディアコントローラのバッファを同一サイズまたは異なるサイズのブロックに分割するステップを含んでもよい。ここで、各ブロックは1つのインデックスに対応する。例えば、データの保存領域のサイズが1Mbyteだった場合、4Gbyteのバッファが同一のサイズの4096のブロックに分割されてもよく、各ブロックのサイズは1Mbyteであり、各ブロックにはそれぞれ1つのインデックスが割り当てられる。前記インデックスは、1~4096の範囲の一意の整数であってよい。1MByteのアドレスが、10000~20000である場合、前記インデックスは、アドレス10000~20000に対応する1Mbyteの領域を指定する。ユーザ機器によって送信されたメディアストリーミングリクエストを受信した場合、前記インデックスはユーザ機器にランダムに割り当てられる。さらに、前記メディアコントローラは、利用可能なインデックスのテーブルを維持してもよい。前記テーブルは、ユーザ機器に割り当てられていないインデックスを記録する。例えば、合計4096のインデックスの中で、4000がユーザ機器に割り当てられてしまっている場合、利用可能なインデックスのテーブルは残り96インデックスを含む。全てのインデックスがユーザ機器に割り当てられてしまった後、すなわち利用可能なインデックスのテーブル内にはインデックスが存在しないとき、前記ユーザ機器によって送信されたメディアストリーミングリクエストを受信した場合、ユーザ機器はウェイトするように通知される。例えば、4Gbyteのバッファが、4096のインデックスに分割される。これら全4096のインデックスがユーザ機器に割り当てられてしまった後、ユーザ機器によって送信されたメディアストリーミングリクエストを受信した場合、前記ユーザ機器は、4096のインデックス内のあるインデックスが開放されるまでウェイトするように通知される。すなわち、開放されたインデックスが利用可能なインデックスのテーブルに再び記録された時、開放されたインデックスが、ウェイト中のユーザ機器に割り当てられる。ステップ22:前記メディアコントローラは、前記ユーザ機器のストリーミングリクエストおよびインデックスを関連づけ、前記対応テーブルに関連づけられたストリーミングリクエストおよびインデックスを保存する。また、前記メディアコントローラは、メディアサーバが対応テーブルに従って、ストレージデバイスがストリーミングリクエストによって要求されたストリームデータをインデックスに対応するバッファのアドレスに送信するように制御するために、前記ユーザ機器のストリーミングリクエストおよびインデックスをメディアサーバに送信する。代替方法として、前記対応テーブルは下記の情報を含んでもよいが、それに限定されない。ユーザ機器のストリーミングリクエストに対応するリクエストデータのサイズは可変である。前記対応テーブルがリクエストデータのサイズを保存する必要がある場合、メディアサーバがユーザ機器のストリーミングリクエストおよびインデックスを受信後、リクエストデータのサイズは元に戻る。ステップ23:前記メディアコントローラは、ストリーミングリクエストによって要求され、ストレージデバイスによって送信されたストリームデータを受信するとともに、対応テーブルを問い合わせることで、ストリーミングリクエストによって要求されたストリームデータを対応するユーザ機器にストリーミングする。特に、対応テーブルが問い合わされ、リクエストデータがメディアコントローラのバッファから読みだされ、対応テーブルのユーザ機器にストリーミングされ、データストリーミング完了後に前記ユーザ機器に対応するインデックスが開放され、そしてストリーミングリクエストの関連づけ、およびユーザ機器のインデックスについての情報が対応テーブルから削除される。本発明の実施形態は、図3に示すメディアコントローラを提供する。前記メディアコントローラはディストリビューションネットワーク上に位置する。前記メディアコントローラは、FPGAであってもよい。前記メディアコントローラは、ユーザ機器によって送信されたメディアストリーミングリクエストを受信するように構成されるリクエスト受信モジュール31を含む。特に、ユーザ機器によって送信された前記ストリーミングリクエストは、ユーザの識別情報、例えば、ユーザのIPアドレスまたはユーザ名情報を含んでもよく、もしくは例えばビデオデータまたはオーディオデータのようなリクエストデータのタイプまたは名前のような情報を含んでもよい。前記メディアコントローラは、インデックスをユーザ機器に割り当てるように構成され、前記インデックスは、ストリーミングリクエストによって要求されたストリームデータが保存されるメディアコントローラ内の対応するバッファのアドレスを指定するために使用される、インデックス割当モジュール32を含む。代替方法として、前記メディアコントローラは、インデックス割当モジュールが実行される前に、データの保存領域のサイズに従って、メディアコントローラのバッファを各ブロックがそれぞれ1つのインデックスに対応する同一サイズまたは異なるサイズのブロックに分割するように構成されるインデックス決定モジュールを含んでもよい。例えば、データの保存領域のサイズが1Mbyteだった場合、4Gbyteのバッファが同一のサイズの4096のブロックに分割することができる。ここで、各ブロックのサイズは1Mbyteであり、各ブロックにはそれぞれ1つのインデックスが割り当てられる。前記インデックスは、1~4096の範囲の一意の整数であってよい。1MByteのアドレスが、10000~20000である場合、前記インデックスは、アドレス10000~20000に対応する1Mbyteの領域を指定する。ユーザ機器によって送信されたメディアストリーミングリクエストを受信した場合、前記インデックスはユーザ機器にランダムに割り当てられる。さらに、前記メディアコントローラは、ユーザ機器に割り当てられていないインデックスを記録する、利用可能なインデックスのテーブルを維持してもよい。例えば、合計4096のインデックスの中で、4000がユーザ機器に割り当てられてしまっている。このとき、利用可能なインデックスのテーブルは残り96インデックスを含む。代替方法として、全てのインデックスがユーザ機器に割り当てられてしまった後、すなわち、メディアコントローラがユーザ機器によって送信されたメディアストリーミングリクエストを受信した時に、利用可能なインデックスのテーブルにインデックスが存在しない場合は、ユーザ機器にウェイトするよう命令するように構成される通知モジュールがさらに含まれてもよい。例えば、4Gbyteのバッファが、4096のインデックに分割される。全4096のインデックスが、ユーザ機器に割り当てられてしまった後、ユーザ機器によって送信されたメディアストリーミングリクエストを受信した場合、ユーザ機器は4096のインデックス内のあるインデックスが開放されるまでウェイトするように通知される。すなわち、開放されたインデックスが利用可能なインデックスのテーブルに再び記録された場合、開放されたインデックスがウェイト中のユーザ機器に割り当てられる。前記メディアコントローラは、リクエスト受信モジュール31によって受信されたユーザ機器のストリーミングリクエストおよびインデックスを関連づけ、またユーザ機器のストリーミングリクエストおよびインデックス割当モジュール32によって割り当てられたインデックスを対応テーブルに保存するよう構成される保存モジュール33を含む。代替方法として、前記保存モジュール33は、さらにデータ受信モジュール35が受信したストリーミングリクエストによって要求されたストリームデータの長さ、および/またはユーザ機器に対応するブロードバンド情報を対応テーブルに保存するように構成される。代替方法として、前記対応テーブルは、下記の情報を含むが、それに限定されない。ユーザ機器のストリーミングリクエストに対応するリクエストデータのサイズは、可変である。対応テーブルがリクエストデータのサイズを保存する必要がある場合、メディアサーバがユーザ機器のストリーミングリクエストおよびインデックスを受信後、リクエストデータのサイズは元に戻る。具体的には、対応テーブルが問い合わされ、そしてリクエストデータがメディアコントローラのバッファから読みだされ、そして、対応テーブルのユーザ機器へストリーミングされる。代替方法として、ストリーミングリクエストによって要求されたストリームデータがユーザ機器へストリーミングされた後、ユーザ機器に対応するインデックスを開放し、ユーザ機器のストリーミングリクエストおよびインデックスの関連づけについての情報を対応テーブルから削除するように構成される開放モジュールをさらに含んでもよい。本発明の実施形態は、もう一つのメディアストリーミング方法を提供する。すなわち前記メディアコントローラがFPGAであり、前記メディアサーバがMDN上のCPUであり、前記ストレージデバイスがSSDであり、前記ユーザ機器1がストリーミングビデオデータ2を要求することを前提とすることによって、本方法を説明する。図4に示すように、本方法は、以下のステップを含む。ステップ41:FPGAデバイスは、データの保存領域のサイズに従って、バッファを同一サイズのブロックに分割する。各ブロックは、それぞれ1つのインデックスに対応する。例えば、データの保存領域のサイズが1Mbyteだった場合、4Gのバッファを同一のサイズの4096のブロックに分割することができる。ここで、各ブロックのサイズは1Mbyteであり、各ブロックにはそれぞれ1つのインデックスが割り当てられる。前記インデックスは、1~4096の範囲の一意の整数であってよい。前記インデックスは、各ブロックに対応するバッファのアドレスを指定するために使用される。ステップ42:ユーザデバイス1はメディアストリーミングリクエストをFPGAに送信する。前記メディアストリーミングリクエストはユーザ機器1の識別情報およびリクエストでストリーミングされるデータの名前がビデオ2であることを指定する情報のような関連した情報を含んでもよい。リクエストでストリーミングされるデータは、ビデオ、オーディオ、または他のデータ形式であってもよい。ステップ43:ユーザ機器1によって送信されたメディアストリーミングリクエストを受信後、前記FPGAはインデックス100インデックスによって指定されるバッファアドレスは10000~20000であってもよいをユーザ機器1に割り当て、メディアストリーミングリクエストとインデックス100を関連づけ、それらを対応テーブルに保存し、ユーザ機器1のメディアストリーミングリクエストおよびインデックス100をMDNのCPUに送信する。前記対応テーブルは、下記のテーブルを含んでもよいが、それに限定されない。代替方法として、FPGA内の4096のバッファが全てユーザ機器に割り当てられた後、FPGAがユーザ機器1のメディアストリーミングリクエストを受信した場合、FPGAはユーザ機器1にウェイトするように通知する。ステップ44:代替方法として、ユーザ機器1のメディアストリーミングリクエストおよびインデックス100を受信後、MDNのCPUはビデオデータ2のサイズ情報例:800MをFPGAに返信してもよい。FPGAは、受信したビデオデータ2のサイズ情報を対応テーブルに加える。対応テーブルは以下のようにサイズ情報に加えられる。ステップ45:ユーザ機器1のメディアストリーミングリクエストおよびインデックス100の受信後、MDNのCPUは、FPGAに保存された対応テーブルを読み出し、SSDがビデオデータ2をFPGA内のインデックス100に対応するバッファアドレス10000~20000に送信するように制御する。ステップ46:SSDによって送信されたビデオデータ2を受信後、FPGAは、対応テーブルを問い合わせることによって、ビデオデータ2をユーザ機器1にストリーミングする。ステップ47:データがストリーミングされた後、FPGAはユーザ機器1に対応するインデックス100を開放し、ユーザ機器1のストリーミングリクエストおよびインデックスの関連づけを対応テーブルから削除する。メディアストリーミング方法の実施形態を提供する。メディアコントローラにストリーミングリクエストによって要求されたストリームデータを保存させ、前記データを対応するユーザにストリーミングさせることによって、本方法は、ディストリビューションネットワーク上のCPUからデータの分離を実施し、ディストリビューションネットワーク上のCPUのサービス処理能力を改良する。加えて、インデックスを割り当てることで、本方法は、非常に多くのユーザに起因するアドレス幅の増大を回避し、ストリーミングの帯域幅が変化しない状態の間、メディアコントローラの内部バッファ領域の効果的な管理を可能にし、それによってアドレス幅に対するハードウェア構成の依存性を減らす。メディアコントローラの先の実施形態において、全ての包含されたモジュールは、機能論理に従って分割されているだけであり、対応する機能が実施可能である限り、分割方法に限定されないことに留意すべきである。加えて、全ての機能モジュールの名前は、相互に区別することを意図するだけのものであり、保護範囲を限定するように構成されるものではない。加えて、当業者であれば、先に述べた方法の全てまたは一部のステップが、ハードウェアに命令をするプログラムの使用によって完了されてもよいことが理解可能である。前記プログラムは、RAM、磁気ディスク、およびコンパクトディスクのようなコンピュータによって読み出し可能なストレージメディアに保存されてもよい。最後に、上記は単なる本発明の好ましい実施形態である。しかし、本発明の範囲はそれに限定されるものではない。本発明の技術的範囲内で当業者には自明で改変または置換は、本発明の範囲内に属するべきである。従って、本発明の保護範囲は特許請求の範囲となる。