(57)【特許請求の範囲】
【請求項１】
コンテンツサーバーからクライアントに提供するコンテンツパケットを受信すれば、ローカルキャッシング装置に前記受信されたコンテンツパケットを伝送し、且つ前記ローカルキャッシング装置によって重複確認されたコンテンツパケットの重複チャンクに対するチャンク識別子及びフロー情報を受信すれば、これを重複除去対象として登録し、重複除去対象として登録されたフローのコンテンツパケットに対してチャンク識別子及びフロー情報のみを前記ローカルキャッシング装置に伝送する中央制御装置と；
前記クライアントに提供される前記コンテンツパケットを受信すれば、前記コンテンツパケットに対する分割されたチャンクをチャンク識別子とともに格納し、且つ前記分割されたチャンクの重複を確認し、前記重複チャンクに対する前記チャンク識別子及び前記フロー情報を前記中央制御装置に伝送し、前記中央制御装置からチャンク識別子及びフロー情報を受信すれば、受信されたチャンク識別子に該当する自分が格納しているコンテンツパケットを前記クライアントに伝送するローカルキャッシング装置と；を含むことを特徴とするコンテンツ伝送システム。
【請求項２】
コンテンツサーバー及びローカルキャッシング装置と通信を行う通信部と；
前記通信部を通じてコンテンツサーバーからクライアントに伝送されるコンテンツパケットを受信すれば、前記コンテンツパケットを前記ローカルキャッシング装置に伝送し、且つ前記ローカルキャッシング装置によって重複監視された重複チャンクに対するチャンク識別子及びフロー情報を受信すれば、受信された前記チャンク識別子及び前記フロー情報を重複除去対象として登録し、重複除去対象フローの次のコンテンツパケットに対して、受信されたコンテンツパケットの代わりにチャンク識別子及びフロー情報のみを前記ローカルキャッシング装置に伝送するように制御する制御部と；
分割されたチャンクをチャンク識別子とともに一時格納し、受信された前記チャンク識別子及び前記フロー情報を格納する格納部と；
を含むことを特徴とする中央制御装置。
【請求項３】
前記制御部は、
前記受信されたコンテンツパケットをフロー単位で識別し、識別されたフローのペイロードを分割した前記分割されたチャンクを一時格納し、前記ローカルキャッシング装置から前記チャンク識別子及び前記フロー情報を受信すれば、受信されたチャンク識別子及び前記フロー情報を登録し、ローカルキャッシング装置に伝送しないように制御するフロー管理部と；
前記識別されたフローのペイロードをバッファリングし、バッファリングされたペイロードをチャンクに分割するペイロードバッファリング及び分割部と；
を含むことを特徴とする請求項２に記載の中央制御装置。
【請求項４】
前記制御部は、
前記分割されたチャンクの重複を確認し、重複チャンクに対してチャンク識別子及びフロー情報を前記ローカルキャッシング装置に伝送するように制御するチャンク重複管理部をさらに含むことを特徴とする請求項３に記載の中央制御装置。
【請求項５】
クライアント及びコンテンツサーバーに連結された中央制御装置と通信を行う通信部と；
前記通信部を通じて前記中央制御装置からコンテンツパケットを受信すれば、受信されたコンテンツパケットを前記クライアントに提供しながら前記コンテンツパケットに対する分割されたチャンクをチャンク識別子とともに格納し、前記中央制御装置から重複チャンクのチャンク識別子及びフロー情報を受信すれば、受信された前記チャンク識別子に該当する格納されているコンテンツパケットを前記クライアントに伝送するように制御する制御部と；
前記分割されたチャンクをチャンク識別子とともに格納する格納部と；
を含み、
前記制御部は、
前記受信されたコンテンツパケットをフロー単位で識別し、識別されたフローに対して前記中央制御装置からチャンク識別子が受信されれば、受信されたチャンク識別子に対応する格納されているコンテンツパケットを前記クライアントに伝送するための制御を行うフロー管理部と；
識別されたフローのペイロードをバッファリングし、バッファリングされたペイロードをチャンクに分割するペイロードバッファリング及び分割部と；
前記分割されたチャンクをチャンク識別子とともに前記格納部に格納するチャンクキャッシング部と；
を含むことを特徴とするローカルキャッシング装置。
【請求項６】
前記制御部は、
前記受信されたコンテンツパケットに対するチャンク重複確認を行い、重複確認された重複チャンクに対するチャンク識別子及びフロー情報を前記フロー管理部に伝達し、前記受信されたチャンク識別子と一致するチャンク識別子が格納されているか否かを確認するチャンク重複管理部をさらに含むことを特徴とする請求項５に記載のローカルキャッシング装置。
【請求項７】
前記フロー管理部は、前記重複チャンクに対するチャンク識別子及びフロー情報を前記中央制御装置に伝送するための制御を行い、前記受信されたチャンク識別子と一致するチャンク識別子が格納されていない場合、前記中央制御装置に前記受信されたチャンク識別子に該当するコンテンツパケットを要請し、要請したコンテンツパケットを受信し、前記クライアントに提供するための制御を行うことを特徴とする請求項６に記載のローカルキャッシング装置。
【請求項８】
コンテンツパケットを提供するコンテンツサーバーと連結される中央制御装置と、前記コンテンツパケットが提供されるクライアントと連結されるローカルキャッシング装置とを含むコンテンツ伝送システムで、
前記中央制御装置が前記コンテンツサーバーから受信されたコンテンツパケットを前記ローカルキャッシング装置に伝送する段階と；
前記ローカルキャッシング装置が受信されたコンテンツパケットをクライアントに提供し、且つ前記受信されたコンテンツパケットに対するチャンク重複を確認する段階と；
前記ローカルキャッシング装置が前記受信されたコンテンツパケットに対する重複されたチャンクを確認すれば、重複チャンクのチャンク識別子及びフロー情報を前記中央制御装置に伝送する段階と；
前記中央制御装置が受信した前記重複チャンクのチャンク識別子及びフロー情報を重複除去対象として登録する段階と；
前記中央制御装置が前記重複除去対象として登録されたフローの次のコンテンツパケットに対して、チャンク識別子及びフロー情報のみを前記ローカルキャッシング装置に伝送する段階と；
前記ローカルキャッシング装置が前記重複チャンクのチャンク識別子及びフロー情報を受信すれば、前記受信されたチャンク識別子にあたる格納されているコンテンツパケットを前記クライアントに伝送する段階と；
を含むことを特徴とするネットワークトラフィック最適化方法。
【請求項９】
前記ローカルキャッシング装置が前記受信されたチャンク識別子に対応するコンテンツパケットを格納していない場合、前記受信されたチャンク識別子に該当するコンテンツパケットを前記中央制御装置で要請する段階と；
前記ローカルキャッシング装置が前記中央制御装置から要請したコンテンツパケットを伝達される段階と；
前記ローカルキャッシング装置が伝達されたコンテンツパケットを前記クライアントに伝送する段階と；
をさらに含むことを特徴とする請求項８に記載のネットワークトラフィック最適化方法。
【請求項１０】
前記中央制御装置が前記受信されたコンテンツパケットをフロー単位で識別し、識別されたフローのペイロードをバッファリングし、バッファリングされたペイロードをチャンクに分割する段階と；
分割されたチャンクを生成されたチャンク識別子とともに一時格納する段階と；
をさらに含むことを特徴とする請求項８に記載のネットワークトラフィック最適化方法。
【請求項１１】
前記ローカルキャッシング装置が前記中央制御装置から受信したコンテンツパケットをフロー単位で識別し、識別されたフローのペイロードをバッファリングし、バッファリングされたペイロードをチャンクに分割する段階と；
分割されたチャンクを生成されたチャンク識別子とともに格納する段階と；
をさらに含むことを特徴とする請求項８に記載のネットワークトラフィック最適化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンテンツ伝送システムに関し、特にコンテンツ伝送システムでのコンテンツ重複伝送減少のためのコンテンツ伝送システム、そのシステムでのネットワークトラフィック最適化方法、中央制御装置及びローカルキャッシング装置に関する。
【背景技術】
【０００２】
インターネットコンテンツ利用者が増加し、大容量のインターネットコンテンツが増加するにつれて、ウェブ（Ｗｅｂ）ダウンロード、ビデオ（Ｖｉｄｅｏ）、オーディオ（Ａｕｄｉｏ）、映像（Ｉｍａｇｅ）、アプリケーション（Ａｐｐｌｉｃａｔｏｎ）などのダウンロード速度低下問題などサービス品質がイシューになっている。
【０００３】
このような問題を解決するために、最近、多様なコンテンツ伝送サービス技術が開発されており、このようなコンテンツ伝送サービスを通じてオンライン動画（ＶｏＤ、Ｌｉｖｅ  Ｓｔｒａｍｉｎｇ）や音楽ストリーミング、ファイルアップロード及びファイルダウンロードなど大容量ファイル伝送が可能になり、これによる市場が拡大される傾向にある。
【０００４】
最近、スマートフォンの急速な拡散に伴い、ＹｏｕＴｕｂｅ（登録商標）、ＩＰＴＶ、Ａｐｐｌｅ  ａｐｐｓｔｏｒｅ、Ｔ−Ｓｔｏｒｅなどのような大容量コンテンツを伝達しようとするサービスが開発されており、このようなサービスの登場によって通信網のトラフィックが急速に増加している。
【０００５】
このようなサービスは、特徴的にその人気度によって頻度は異なるが、重複的なコンテンツを同一のドメインまたは同一の無線カバレージ内のユーザに伝達する特徴を有し、次第にその比重が増加している状況である。
【０００６】
したがって、大容量コンテンツ伝送による通信網のトラフィック急速に増加している状況で重複されたコンテンツの伝送によって通信網のトラフィック負荷がさらに増加するので、通信品質が低下する問題点がある。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
これより、本発明は、従来の不便さを解消するために提案されたものであって、多様な形態のコンテンツを伝送中にコンテンツの重複伝送を最小化し、ネットワーク上のトラフィックを減少させるためのコンテンツ伝送システムを提供する。
【０００８】
また、本発明は、ネットワーク上でコンテンツサーバーと連結され、提供されるコンテンツパケットの重複伝送を最小化するためにコンテンツパケットの重複伝送を制御する中央制御装置及びクライアントに当該コンテンツパケットを伝送するためのローカルキャッシング装置を提供する。
【０００９】
また、本発明は、コンテンツ伝送システムで、提供されるコンテンツパケットの重複伝送を最小化し、ネットワーク上のトラフィックを減少させるためのネットワークトラフィック最適化方法を提供する。
【課題を解決するための手段】
【００１０】
上記目的を達成するために、本発明の一実施例によるコンテンツ伝送システムは、コンテンツサーバーからクライアントに提供するコンテンツパケットを受信すれば、ローカルキャッシング装置に前記受信されたコンテンツパケットを伝送しながら、前記ローカルキャッシング装置によって重複確認されたコンテンツパケットの重複チャンクに対するチャンク識別子及びフロー情報を受信すれば、これを重複除去対象として登録し、重複除去対象として登録されたフローのコンテンツパケットに対してチャンク識別子及びフロー情報のみを前記ローカルキャッシング装置に伝送する中央制御装置と；前記クライアントに提供される前記コンテンツパケットを受信すれば、前記コンテンツパケットに対する分割されたチャンクをチャンク識別子とともに格納し、且つ前記分割されたチャンクの重複を確認し、前記重複チャンクに対する前記チャンク識別子及び前記フロー情報を前記中央制御装置に伝送し、前記中央制御装置からチャンク識別子及びフロー情報を受信すれば、受信されたチャンク識別子に該当する自分が格納しているコンテンツパケットを前記クライアントに伝送するローカルキャッシング装置と；を含んでなることができる。
【００１１】
また、本発明の他の実施例によるコンテンツ伝送システムは、コンテンツサーバーからクライアントに提供するコンテンツパケットを受信すれば、前記コンテンツパケットに対する分割されたチャンクをチャンク識別子とともに一時格納し、前記分割されたチャンクの重複を確認し、重複チャンクに対してはコンテンツパケットを伝送する代わりに、チャンク識別子及びフロー情報を前記ローカルキャッシング装置に伝送する中央制御装置と；前記中央制御装置から前記重複チャンクに対するチャンク識別子及びフロー情報を受信すれば、前記チャンク識別子に該当する自分が格納しているコンテンツパケットを前記クライアントに伝送するローカルキャッシング装置と；を含んでなることができる。
【００１２】
また、本発明の実施例による中央制御装置は、コンテンツサーバー及びローカルキャッシング装置と通信を行う通信部と；前記通信部を通じてコンテンツサーバーからクライアントに伝送されるコンテンツパケットを受信すれば、前記コンテンツパケットを前記ローカルキャッシング装置に伝送し、且つ前記ローカルキャッシング装置によって重複監視された重複チャンクに対するチャンク識別子及びフロー情報を受信すれば、受信された前記チャンク識別子及び前記フロー情報を重複除去対象として登録し、重複除去対象フローの次のコンテンツパケットに対して、受信されたコンテンツパケットの代わりにチャンク識別子及びフロー情報のみを前記ローカルキャッシング装置に伝送するように制御する制御部と；前記分割されたチャンクをチャンク識別子とともに一時格納し、受信された前記チャンク識別子及び前記フロー情報を格納する格納部と；を含むことができる。
【００１３】
ここで、前記制御部は、前記受信されたコンテンツパケットをフロー単位で識別し、識別されたフローのペイロードを分割した前記分割されたチャンクを一時格納し、前記ローカルキャッシング装置から前記チャンク識別子及び前記フロー情報を受信すれば、受信されたチャンク識別子及び前記フロー情報を登録し、ローカルキャッシング装置に伝送しないように制御するフロー管理部と；前記識別されたフローのペイロードをバッファリングし、バッファリングされたペイロードをチャンクに分割するペイロードバッファリング及び分割部と；を含むことができる。
【００１４】
また、前記制御部は、前記分割されたチャンクの重複を確認し、重複チャンクに対してチャンク識別子及びフロー情報を前記ローカルキャッシング装置に伝送するように制御するチャンク重複管理部をさらに含むことができる。
【００１５】
さらに、本発明の実施例によるローカルキャッシング装置は、クライアント及びコンテンツサーバーに連結された中央制御装置と通信を行う通信部と；前記通信部を通じて前記中央制御装置からコンテンツパケットを受信すれば、受信されたコンテンツパケットを前記クライアントに提供しながら前記コンテンツパケットに対する分割されたチャンクをチャンク識別子とともに格納し、前記中央制御装置から重複チャンクのチャンク識別子及びフロー情報を受信すれば、受信された前記チャンク識別子に該当する格納されているコンテンツパケットを前記クライアントに伝送するように制御する制御部と；前記分割されたチャンクをチャンク識別子とともに格納する格納部と；を含むことができる。
【００１６】
そして、前記制御部は、前記受信されたコンテンツパケットをフロー単位で識別し、識別されたフローに対して前記中央制御装置からチャンク識別子が受信されれば、受信されたチャンク識別子に対応する格納されているコンテンツパケットを前記クライアントに伝送するための制御を行うフロー管理部と；識別されたフローのペイロードをバッファリングし、バッファリングされたペイロードをチャンクに分割するペイロードバッファリング及び分割部と；前記分割されたチャンクをチャンク識別子とともに前記格納部に格納するチャンクキャッシング部と；を含むことができる。
【００１７】
また、前記ローカルキャッシング装置の制御部は、前記受信されたコンテンツパケットに対するチャンク重複確認を行い、重複確認された重複チャンクに対するチャンク識別子及びフロー情報を前記フロー管理部に伝達し、前記受信されたチャンク識別子と一致するチャンク識別子が格納されているか否かを確認するチャンク重複管理部をさらに含むことができる。
【００１８】
そして、前記フロー管理部は、前記重複チャンクに対するチャンク識別子及びフロー情報を前記中央制御装置に伝送するための制御を行い、前記受信されたチャンク識別子と一致するチャンク識別子が格納されていなければ、前記中央制御装置に前記受信されたチャンク識別子に該当するコンテンツパケットを要請し、要請したコンテンツパケットが受信し、前記クライアントに提供するための制御を行うことができる。
【００１９】
さらに、本発明の一実施例によるネットワークトラフィック最適化方法は、コンテンツパケットを提供するコンテンツサーバーと連結される中央制御装置と、前記コンテンツパケットが提供されるクライアントと連結されるローカルキャッシング装置を含むコンテンツ伝送システムで、前記中央制御装置が前記コンテンツサーバーから受信されたコンテンツパケットを前記ローカルキャッシング装置に伝送する段階と；前記ローカルキャッシング装置が受信されたコンテンツパケットをクライアントに提供し、且つ前記受信されたコンテンツパケットに対するチャンク重複を確認する段階と；前記ローカルキャッシング装置が前記受信されたコンテンツパケットに対する重複されたチャンクを確認すれば、重複チャンクのチャンク識別子及びフロー情報を前記中央制御装置に伝送する段階と；前記中央制御装置が受信した前記重複チャンクのチャンク識別子及びフロー情報を重複除去対象として登録する段階と；前記中央制御装置が前記重複除去対象として登録されたフローの次のコンテンツパケットに対して、チャンク識別子及びフロー情報のみを前記ローカルキャッシング装置に伝送する段階と；前記ローカルキャッシング装置が前記重複チャンクのチャンク識別子及びフロー情報を受信すれば、前記受信されたチャンク識別子に該当する格納されているコンテンツパケットを前記クライアントに伝送する段階と；を含んでなることができる。
【００２０】
また、本発明の他の実施例によるネットワークトラフィック最適化方法は、コンテンツパケットを提供するコンテンツサーバーと連結される中央制御装置と、前記コンテンツパケットが提供されるクライアントと連結されるローカルキャッシング装置とを含むコンテンツ伝送システムで、前記中央制御装置が前記コンテンツサーバーからコンテンツパケットを受信すれば、受信されたコンテンツパケットに対するチャンク重複確認を行う段階と；前記中央制御装置が重複確認された前記コンテンツパケットに対する重複チャンクのチャンク識別子及びフロー情報を前記ローカルキャッシング装置に伝送する段階と；前記ローカルキャッシング装置が前記重複チャンクのチャンク識別子及びフロー情報を受信すれば、前記受信されたチャンク識別子に該当する格納されているコンテンツパケットを前記クライアントに伝送する段階と；を含むことができる。
【００２１】
前述したネットワークトラフィック最適化方法は、前記ローカルキャッシング装置が前記受信されたチャンク識別子に対応するコンテンツパケットを格納していない場合、前記受信されたチャンク識別子に該当するコンテンツパケットを前記中央制御装置に要請する段階と；前記ローカルキャッシング装置が前記中央制御装置から要請したコンテンツパケットを伝達される段階；及び前記ローカルキャッシング装置が伝達されたコンテンツパケットを前記クライアントに伝送する段階；をさらに含むことができる。
【００２２】
また、前述したネットワークトラフィック最適化方法は、前記中央制御装置が前記受信されたコンテンツパケットをフロー単位で識別し、識別されたフローのペイロードをバッファリングし、バッファリングされたペイロードをチャンクに分割する段階と；分割されたチャンクを生成されたチャンク識別子とともに一時格納する段階と；をさらに含むことができる。
【００２３】
また、前述したネットワークトラフィック最適化方法は、前記ローカルキャッシング装置が前記中央制御装置から受信したコンテンツパケットをフロー単位に識別し、識別されたフローのペイロードをバッファリングし、バッファリングされたペイロードをチャンクに分割する段階と；分割されたチャンクを生成されたチャンク識別子とともに格納する段階と；をさらに含むことができる。
【発明の効果】
【００２４】
本発明は、コンテンツ伝送ネットワーク上にコンテンツ重複伝送を監視し、制御するためにコンテンツサーバーと連結される中央制御装置と、クライアントと連結され、コンテンツを伝送するローカルキャッシング装置とを備えることによって、簡単に既存のシステム及びプロトコルに透明に適用することができるので、現実的で且つ運用可能なコンテンツ伝送システムを提供することができるという効果がある。
【００２５】
また、本発明は、中央制御装置でコンテンツサーバーからクライアントに提供されるコンテンツパケットに対して、ローカルキャッシング装置と識別情報のみを送受信し、コンテンツキャッシング可否を確認し、ローカルキャッシング装置がコンテンツをキャッシングしている場合、ローカルキャッシング装置からコンテンツが伝送されるようにして、インターネット網と集中局との間で重複されて伝送されるネットワークトラフィックの負荷を減少させることができ、これにより、網運用の便宜性を確保することができ、費用節減の効果がある。
【００２６】
また、本発明は、クライアントに近接して具備されたローカルキャッシング装置でクライアントで要請したコンテンツのキャッシング可否を確認し、キャッシングされたコンテンツをローカルキャッシング装置がクライアントに直接伝送することができるようにして、コンテンツの重複伝送を減少させることによって、クライアントの体感品質を向上させることができるという効果がある。
【図面の簡単な説明】
【００２７】
【図１】図１は、本発明の実施例によるコンテンツ伝送システムの構成を示すブロック図である。
【図２】図２は、本発明の一実施例によるコンテンツ伝送システムでの中央制御装置の構成を示すブロック図である。
【図３】図３は、本発明の一実施例によるコンテンツ伝送システムでのローカルキャッシング装置の構成を示すブロック図である。
【図４】図４は、本発明の他の実施例によるコンテンツ伝送システムでの中央制御装置の構成を示すブロック図である。
【図５】図５は、本発明の他の実施例によるコンテンツ伝送システムでのローカルキャッシング装置の構成を示すブロック図である。
【図６】図６は、本発明の実施例によるコンテンツ伝送システムでのチャンクコンテンツを管理するためのデータベースの一例を示すブロック図である。
【図７】図７は、本発明の一実施例よってコンテンツ伝送システムでコンテンツ重複伝送を監視し、ネットワークトラフィックを最適化する方法を示す流れ図である。
【図８】図８は、本発明の一実施例によるコンテンツ伝送システムでの重複除去プロセス実行に対する一例を示す流れ図である。
【図９】図９は、本発明の一実施例による中央制御装置でのネットワークトラフィック最適化方法を示す流れ図である。
【図１０】図１０は、本発明の一実施例によるローカルキャッシング装置でのネットワークトラフィック最適化方法を示す流れ図である。
【図１１】図１１は、本発明の他の実施例よってコンテンツ伝送システムでコンテンツ重複伝送を監視し、ネットワークトラフィックを最適化するための方法を示す流れ図である。
【図１２】図１２は、本発明の他の実施例による中央制御装置でのネットワークトラフィック最適化方法を示す流れ図である。
【図１３】図１３は、本発明の他の実施例によるローカルキャッシング装置でのネットワークトラフィック最適化方法を示す流れ図である。
【図１４ａ】図１４ａは、本発明の実施例によってチャンク重複確認の一例を示すブロック図である。
【図１４ｂ】図１４ｂは、本発明の実施例によってチャンク重複確認の一例を示すブロック図である。
【図１４ｃ】図１４ｃは、本発明の実施例によってチャンク重複確認の一例を示すブロック図である。
【図１５ａ】図１５ａは、本発明の実施例によってバッファリングされたペイロードを固定されたサイズのチャンクに分割するためのプロセスの一例を示すブロック図である。
【図１５ｂ】図１５ｂは、本発明の実施例によってバッファリングされたペイロードを固定されたサイズのチャンクに分割するためのプロセスの一例を示すブロック図である。
【図１６ａ】図１６ａは、本発明の実施例によってバッファリングされたペイロードを可変されたサイズのチャンクに分割するためのプロセスの一例を示すブロック図である。
【図１６ｂ】図１６ｂは、本発明の実施例によってバッファリングされたペイロードを可変されたサイズのチャンクに分割するためのプロセスの一例を示すブロック図である。
【発明を実施するための形態】
【００２８】
以下、本発明の好ましい実施例を添付の図面を参照して詳しく説明する。但し、下記の説明及び添付の図面で本発明の要旨を不明にすることができる公知機能または構成に対する詳細な説明を省略する。また、図面全体にわたって同一の構成要素は、できるだけ同一の参照符号で示していることに留意しなければならない。
【００２９】
以下では、本発明の実施例によるコンテンツ重複伝送を監視するためのコンテンツ伝送システム及びコンテンツ伝送システムの中央制御装置及びローカルキャッシング装置について添付の図面を参照して具体的に説明する。
【００３０】
図１は、本発明の実施例によるコンテンツ伝送システムの構成を示すブロック図である。
【００３１】
図１を参照すれば、コンテンツ伝送システムは、ネットワーク上で、１つ以上のコンテンツサーバー１０からコンテンツが引き込まれる入口に位置する中央制御装置（ＣＮ：Ｃｅｎｔｒａｌ  Ｎｏｄｅ）１００及び前記ネットワーク上でクライアント２０側に位置し、コンテンツを分散格納するローカルキャッシング装置（ＲＮ：Ｒｅｍｏｔｅ  Ｎｏｄｅ）２００で構成されることができる。
【００３２】
中央制御装置１００、３００は、１つ以上のコンテンツサーバー１０で受信されるコンテンツパケットをローカルキャッシング装置２００、４００に伝送し、且つ受信されたコンテンツをフロー単位で識別し、識別されたフローが重複対象フローであるか否かを確認する。中央制御装置１００は、重複と確認されたフローに対しては、当該コンテンツをローカルキャッシング装置２００、４００に伝送しない。ここで、コンテンツサーバー１０から受信されるコンテンツは、１つまたは１つ以上の個数のフロー（コンテンツを提供するコンテンツサーバーとコンテンツを提供されるクライアント対で識別されるもので、例えば、ＴＣＰフロー）に分けられて伝送され、各フローは、ＩＰなどのプロトコルを使用して１つ以上のＩＰパケットを通じて当該コンテンツを伝送する。また、前記コンテンツサーバー１０と中央制御装置１００、３００とローカルキャッシング装置２００、４００とクライアント２０との間に伝送されるコンテンツは、コンテンツサーバー１０を出発地アドレス、クライアント２０を目的地アドレスとすることによって、コンテンツサーバー１０からクライアント２０に伝送されるＩＰパケットで伝送されることができ、中央制御装置１００、３００とローカルキャッシング装置２００、４００は、このようなコンテンツを多様な方法で受信し、以下で説明するプロセスを行うことができる。
【００３３】
ローカルキャッシング装置２００、４００は、当該フローを通じて伝送されるコンテンツを一定のサイズまたは有意味な単位のチャンク単位に分割し、コンテンツの各チャンクをキャッシングして格納し、当該フローを監視し、自分がキャッシングしているコンテンツを伝送するためのフローを識別し、当該フローのコンテンツパケットをコンテンツサーバー１０の代わりにクライアント２０に伝送する。
【００３４】
本発明によるコンテンツ伝送システムにおいて、コンテンツの重複監視は、中央制御装置１００及びローカルキャッシング装置２００のうちいずれか１つで行われることができる。
【００３５】
以下、このようなコンテンツ伝送システムでコンテンツ重複監視がローカルキャッシング装置２００側で行われる場合についてさらに具体的に説明する。
【００３６】
図２は、本発明の一実施例によるコンテンツ伝送システムでの中央制御装置の構成を示すブロック図である。図２を参照すれば、中央制御装置１００は、通信部１１０と、制御部１２０と、臨時ローカルキャッシュ１３１及びフロー管理データベース１３２を含む格納部１３０と、ローカルキャッシュ状態管理部１４０とで構成されることができる。
【００３７】
通信部１１０は、１つ以上のコンテンツサーバー１０で提供されるコンテンツパケットを受信し、ローカルキャッシング装置２００にコンテンツパケットを伝送し、コンテンツ重複監視のためのプロセス実行によるメッセージを送受信する。ここで、ローカルキャッシング装置２００と送受信される重複監視のためのメッセージは、識別情報及び制御情報などを含む制御メッセージ、コンテンツパケットを伝送するコンテンツパケット伝送メッセージ及び応答メッセージなどを含むことができる。さらに、前記通信部１１０は、１つ以上の通信方式を使用してデータを送受信することができ、このためにそれぞれ互いに異なる通信方式によってデータを送受信する複数の通信モジュールを含むことができる。
【００３８】
制御部１２０は、フロー管理部１２１、ペイロードバッファリング及び分割部１２２及び制御メッセージ管理部１２３を含んで構成されることができる。
【００３９】
制御部１２０は、通信部１１０を通じてコンテンツサーバー１０から受信されたコンテンツパケットをローカルキャッシング装置２００に伝送し、ローカルキャッシング装置２００から重複確認に対するフロー情報を受信すれば、受信されるコンテンツパケットをフロー単位で識別し、識別されるコンテンツパケットが重複除去対象フローであるか否かを確認し、重複除去対象フローの場合、識別されたフローのコンテンツパケットをバッファリングし、バッファリングされたコンテンツパケットをチャンクに分割し、分割されたチャンクを格納部１３０に格納する。制御部１２０は、重複除去対象フローではない場合、ローカルキャッシング装置２００に受信されたコンテンツパケットを伝送する。すなわち、続いて受信されるコンテンツパケットがローカルキャッシング装置２００にキャッシングされているコンテンツではない場合、現在受信されたコンテンツパケットをローカルキャッシング装置２００に伝送され、ローカルキャッシング装置２００でコンテンツキャッシング及び／またはコンテンツ重複確認が行われるようにする。
【００４０】
フロー管理部１２１は、通信部１１０から受信されたコンテンツパケットをフロー単位で識別し、ローカルキャッシング装置２００から受信されたコンテンツパケットの重複チャンク識別子及びフロー情報（フローコンテキストを含む）を利用してローカルキャッシング装置２００にキャッシングされたコンテンツパケットと同一のコンテンツパケットを伝送するフローをフロー管理データベース１３２に重複除去対象フローとして登録する。ここで、フローコンテキストは、フロー識別情報として例えば、ｓｏｕｒｃｅ  ＩＰ、Ｄｅｓｔｉｎａｔｉｏｎ  ＩＰ、Ｓｏｕｒｃｅ  Ｐｏｒｔ、Ｄｅｓｔｉｎａｔｉｏｎ  Ｐｏｒｔ、Ｐｒｏｔｏｃｏｌ、ｐａｙｌｏａｄ  ｌｅｎｇｔｈ、Ｓｅｑｕｅｎｃｅ  Ｎｕｍｂｅｒ、コンテンツ種類などを含むことができる。
【００４１】
フロー管理部１２１は、コンテンツサーバー１０から受信されたコンテンツパケットに対する識別されたフローが重複除去対象フローではない場合、受信されたコンテンツパケットをローカルキャッシング装置２００に伝送するために通信部１１０に伝達する。反対に、フロー管理部１２１は、識別されたフローが重複除去対象フローなら、ペイロードバッファリング及び分割部１２２に識別されたフローを伝達する。ここで、フロー管理部１２１は、フロー管理データベース１３２に識別されたフローに対する情報が格納されているか否かを確認することによって、重複除去対象フローであるかを確認することができる。
【００４２】
また、フロー管理部１２１は、ペイロードバッファリング及び分割部１２２から分割されたコンテンツパケットのチャンクに対するチャンク識別子を受信し、受信されたチャンク識別子を制御メッセージ管理部１２３に伝達する。
【００４３】
ペイロードバッファリング及び分割部１２２は、フロー管理部１２１から伝達された重複除去対象のフローのペイロードをバッファリングし、バッファリングされたペイロードに搭載されたコンテンツパケットを多数のチャンクに分割し、ローカルキャッシング装置２００からクライアント２０に伝送されるコンテンツパケットがコンテンツサーバー１０から伝送されるコンテンツパケットと一致するようにするために、分割されたチャンクを格納部１３０の臨時ローカルキャッシュ１３１に一時格納する。このようなペイロードのチャンク分割に対する具体的な方法は、後述する方法説明で具体的に説明する。
【００４４】
制御メッセージ管理部１２３は、コンテンツパケットの重複監視のために必要な情報を管理し、ローカルキャッシング装置２００と送受信する制御メッセージを管理し、ローカルキャッシング装置２００からキャッシングされたコンテンツパケットのチャンク識別子（署名値）を送受信しながらコンテンツパケットの一致性を確認する。具体的に、制御メッセージ管理部１２３は、フロー管理部１２１で伝達されたコンテンツパケットのチャンク識別子を制御メッセージに含んで通信部１１０を通じてローカルキャッシング装置２００に伝送し、ローカルキャッシング装置２００から通信部１１０を通じて受信したコンテンツパケットのチャンク識別子に対する確認情報、すなわちローカルキャッシング装置２００に当該チャンク識別子が存在しない場合、チャンク識別子がないことを通知する結果情報とともに当該コンテンツを要請するためのコンテンツ要請メッセージをローカルキャッシング装置２００から受信して管理する。この際、制御メッセージ管理部１２３は、受信されたコンテンツ要請メッセージに含まれた結果情報をフロー管理部１２１に伝達し、フロー管理部１２１がローカルキャッシング装置２００に当該コンテンツパケットを伝達するようにする。ここで、制御メッセージ管理部１２３は、制御メッセージ伝送後、フロー管理部１２１に重複されたコンテンツパケットを伝送しないように指示し、あらかじめ設定された時間の間にローカルキャッシング装置２００からコンテンツ要請メッセージが受信されなければ、ローカルキャッシング装置２００で自分が格納しているチャンク識別子に対するコンテンツパケットをクライアント２０に伝送したものと見なす。この際、ローカルキャッシング装置２００からクライアント２０に伝送されるコンテンツパケットは、フロー管理部１２１で重複として確認されたコンテンツパケットと同一のパケットである。
【００４５】
格納部１３０は、分割されたコンテンツパケットのチャンクをシステムの特性（メモリ容量、サーバーの速度、格納すべき全体チャンクの個数など）を考慮したデータベースの形態でチャンクの識別子とともに臨時ローカルキャッシュ１３１に一時格納する。また、格納部１３０は、コンテンツサーバー１０から伝送されるコンテンツパケットに対するフロー情報及び重複除去対象フロー登録情報及び管理情報を格納する。ここで、臨時ローカルキャッシュ１３１は、ローカルキャッシング装置２００で格納されたチャンクに該当するコンテンツパケットを伝送した後、伝送される応答メッセージを受信すれば、一時格納された当該チャンクを削除するか、ユーザが設定した方式によって削除することもできる。
【００４６】
ローカルキャッシュ状態管理部１４０は、格納部１３０の臨時ローカルキャッシュ１３１に対する状態をモニタリングし、モニタリング結果によって維持管理のための制御を行い、フロー管理部１２１の要請によって臨時ローカルキャッシュ１３１に当該コンテンツチャンクが格納されているか否かを確認することができる。
【００４７】
次に、本発明の一実施例によるコンテンツ伝送システムでのローカルキャッシング装置２００の構成及び動作を添付の図面を参照して具体的に説明する。
【００４８】
図３は、本発明の一実施例によるコンテンツ伝送システムでのローカルキャッシング装置の構成を示すブロック図である。
【００４９】
図３を参照すれば、ローカルキャッシング装置２００は、通信部２１０と、制御部２２０と、ローカルキャッシュ２３１及びフロー管理データベース２３２を含む格納部２３０と、ローカルキャッシュ状態管理部２４０とで構成されることができる。
【００５０】
通信部２１０は、中央制御装置１００から伝送されたコンテンツパケットを受信し、クライアント２０にコンテンツパケットを伝送し、中央制御装置１００とコンテンツ重複監視のための重複除去プロセス実行による制御メッセージを送受信する。ここで、送受信される重複監視のためのメッセージは、識別情報及び制御情報などを含む制御メッセージ、コンテンツパケットを伝送するコンテンツパケット伝送メッセージ及び応答メッセージなどを含むことができる。さらに、通信部２１０は、１つ以上の通信方式を使ってデータを送受信することができ、これのために互いに異なる通信方式によってデータを送受信する複数の通信モジュールを含むことができる。
【００５１】
制御部２２０は、フロー管理部２２１、ペイロードバッファリング及び分割部２２２、チャンクキャッシング部２２３、チャンク重複管理部２２４及び制御メッセージ管理部２２５を含んで構成されることができる。制御部２２０は、通信部２１０を通じて中央制御装置１００から受信されたコンテンツパケットをクライアント２０に伝送しながら、受信されたコンテンツパケットの重複可否を確認する。受信されるコンテンツパケットの重複確認のために、コンテンツパケットの一部（例えば、５番目パケット）が伝達されれば、これを格納しているコンテンツパケットと比較して、コンテンツパケットの重複可否を確認する。一方、ローカルキャッシング装置２００は、中央制御装置１００を通じてコンテンツサーバー１０からクライアント２０に伝送されるコンテンツパケットを受信するにあたって、中央制御装置１００からコンテンツパケットを直接受信することができ、その他、クライアント２０を目的地に伝送されるコンテンツパケットをミラリング方式を通じて受信することができる。ここで、コンテンツパケットの重複可否確認は、フロー単位及びチャンク単位よりなる。すなわち、制御部２２０は、コンテンツパケットのペイロードをバッファリングし、バッファリングされたペイロードをチャンク単位で分割すれば、分割されたチャンクの重複可否（格納されたチャンクのうち同一のチャンクが存在するか否か）を確認し、重複しないチャンクをローカルキャッシュ２３１に格納する。また、制御部２２０は、中央制御装置１００からチャンク識別子を受信すれば、コンテンツサーバー１０の代わりに、ローカルキャッシュ２３１に格納されているコンテンツパケットの当該チャンクをクライアント２０に提供する。この際、前記伝送されるチャンクは、コンテンツサーバー１０がクライアント２０に伝送するパケットで構成されて伝送されることができる。
【００５２】
フロー管理部２２１は、中央制御装置１００から通信部２１０を通じて受信されたコンテンツパケットをフロー単位で識別し、識別されたフローの情報をフロー管理データベース２３２に格納する。
【００５３】
また、フロー管理部２２１は、中央制御装置１００から通信部２１０を通じて受信されるコンテンツパケットのチャンク重複確認を行う。具体的に、フロー管理部２２１は、コンテンツパケットに対する識別されたフローが重複除去対象フローであるか否かを確認し、重複除去対象フローではない場合、受信されたコンテンツパケットに対するフローのバッファリングされたペイロードを分割したチャンクをローカルキャッシュ２３１に格納し、次に伝送されるコンテンツパケットに対する重複検査を行う。フロー管理部２２１は、識別されたフローが重複除去対象フローなら、ペイロードバッファリング及び分割部２２２に識別されたフローを伝達し、重複除去プロセスを進行する。ここで、フロー管理部２２１は、特定伝送プロトコル（ＴＣＰなど）、当該プロトコルを通じて伝送されるアプリケーションプロトコルタイプ（ＦＴＰ、Ｐ２Ｐ、ＨＴＴＰなど）、伝送データの種類（イメージ／動画などのメディアコンテンツ、文書ファイル、バイナリーファイル、アップデートファイルなど）を考慮して重複可否を決定することができる。この際、フロー管理部２２１は、当該フローのチャンクが既にローカルキャッシュ２３１に格納されている場合、当該フローで伝送される残りのコンテンツのチャンクがローカルキャッシュ２３１に格納されているものと仮定し、重複されたコンテンツのチャンク識別子及びフロー情報（フローのコンテキスト）を中央制御装置１００に伝送するように制御メッセージ管理部２２５に伝達する。
【００５４】
また、フロー管理部２２１は、ローカルキャッシュ２３１に中央制御装置１００から制御メッセージ管理部２２５を通じて受信されたチャンク識別子をチャンク重複管理部２２４に伝達し、チャンク重複管理部２２４からチャンク識別子の一致確認結果を受信し、中央制御装置１００に伝送する結果情報を生成し、生成された結果情報を制御メッセージ管理部２２５に伝達する。ここで、一致確認結果、チャンク識別子が一致する場合、フロー管理部２２１は、結果情報を中央制御装置１００に伝送せず、ローカルキャッシュ２３１に格納されているチャンク識別子に該当するコンテンツパケットをクライアント２０に伝送するために、通信部２１０に伝達する。一方、チャンク識別子が一致しない場合、フロー管理部２２１は、一致するチャンク識別子を格納していないという結果情報を制御メッセージ管理部２２５に伝達し、中央制御装置１００から受信されたチャンク識別子に対するコンテンツパケットを要請するようにする。
【００５５】
ペイロードバッファリング及び分割部２２２は、フロー管理部２２１から伝達されたコンテンツパケットに対するフローのペイロードをバッファリングし、バッファリングされたペイロードをチャンクに分割し、チャンクキャッシング部２２３に伝達する。このようなペイロードのチャンク分割に対する具体的な方法は、後述する方法説明で具体的に説明する。
【００５６】
チャンクキャッシング部２２３は、クライアント２０に伝送されるコンテンツパケットがコンテンツサーバー１０で伝送するコンテンツと一致するようにするために分割されたチャンクを格納部２３０のローカルキャッシュ２３１に格納する。
【００５７】
チャンク重複管理部２２４は、チャンクキャッシング部２２３で分割されたチャンクがローカルキャッシュ２３１に格納されているかを管理する。具体的に、チャンク重複管理部２２４は、分割された各チャンクがローカルキャッシュ２３１に既格納されているか否かを確認し、格納されている重複チャンクが存在すれば、重複チャンクに対する情報をフロー管理部２２１に伝送する。また、チャンク重複管理部２２４は、中央制御装置１００で受信したチャンク識別子がローカルキャッシュ２３１に格納されているか否かを確認し、一致するチャンク識別子が格納されているかに対する確認結果をフロー管理部２２１に伝送する。
【００５８】
制御メッセージ管理部２２５は、コンテンツパケットの重複監視のために必要な情報を管理し、中央制御装置１００と送受信する制御メッセージを管理する。具体的に、制御メッセージ管理部２２５は、フロー管理部２２１から受信されたチャンク識別子及びフロー情報（フローコンテキスト）を制御メッセージに含んで中央制御装置１００に通信部２１０を通じて伝送する。また、制御メッセージ管理部２２５は、中央制御装置１００から通信部２１０を通じて重複コンテンツパケットに対するチャンク識別子及びフロー情報（フローコンテキスト）を含む制御メッセージを受信し、制御メッセージに含まれたチャンク識別子及びフロー情報をフロー管理部２２１に伝達する。制御メッセージ管理部２２５は、チャンク識別子確認に対する結果情報、すなわちローカルキャッシュ２３１に一致するチャンク識別子が格納されていないという情報及びコンテンツ要請に対する情報を含むコンテンツ要請メッセージを通信部２１０を通じて中央制御装置１００に伝送する。
【００５９】
格納部２３０は、分割されたコンテンツのチャンクをシステムの特性（メモリ容量、サーバーの速度、格納すべき全体チャンクの個数など）を考慮したデータベースの形態でチャンクの識別子とともにローカルキャッシュ２３１に格納する。また、格納部２３０は、フロー管理データベース２３２にクライアント２０に伝送されるコンテンツパケットに対するフロー情報及び重複除去対象フロー登録情報及び管理情報を格納する。
【００６０】
最後に、ローカルキャッシュ状態管理部２４０は、格納部２３０のローカルキャッシュ２３１に対する状態をモニタリングし、モニタリング結果によって維持管理のための制御を行う。
【００６１】
前述したような中央制御装置１００の格納部１３０及びローカルキャッシング装置２００の格納部２３０は、チャンクの特徴によってＲＡＭ、永久的な格納所、その他の形態の多様な格納所にチャンクを格納することができ、チャンクのサイズ及び活用頻度によって格納所を構成することができる。また、格納部１３０または２３０は、ハードディスク、プロッピィーディスク及び磁気テープのような磁気媒体（Ｍａｇｎｅｔｉｃ  Ｍｅｄｉａ）、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｉｄｅｏ  Ｄｉｓｋ）のような光記録媒体（Ｏｐｔｉｃａｌ  Ｍｅｄｉａ）、フロプチカルディスク（Ｆｌｏｐｔｉｃａｌ  Ｄｉｓｋ）のような磁気−光媒体（Ｍａｇｎｅｔｏ−Ｏｐｔｉｃａｌ  Ｍｅｄｉａ）及びＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、フラッシュメモリを含む。
【００６２】
一例として、最も最近に参照されたチャンクは、その活用頻度が高いものと仮定し、早く読み込むことができるＲＡＭに格納され、その活用頻度が最も低いものと予想されるチャンクは、補助ディスクに格納されることができる。したがって、添付の図６に示されたようなチャンクを管理するためのデータベースの例を参照すれば、チャンクのコンテンツデータベース（ディスク（ＨＤＤ、ＳＤＤなど））は、チャンク識別子及びチャンクコンテンツを管理し、チャンクインデックスデータベースは、早く参照可能なＲＡＭメモリを適用し、チャンク識別子と当該チャンクが記録されているディスク上の位置を記録することができる。また、追加的に最も人気あるコンテンツの場合には、ディスクではないチャンクコンテンツデータベースＲＡＭに追加的にコンテンツを保管し、早いサービスを提供することができるようにする。
【００６３】
また、格納部１３０または２３０のデータベースは、ＨａｓｈＴａｂｌｅ、ＢｌｏｏｍＦｉｌｔｅｒなどのデータ構造を活用することができ、多くの個数のチャンクの識別情報を管理するためにＦａｌｓｅ  Ｐｏｓｉｔｉｖｅ敏感度などによって既に知られたまたは以後開発される多様な方式の構造を使用することができる。
【００６４】
前述したような本発明の一実施例では、ローカルキャッシング装置２００からクライアント２０に伝送されるコンテンツパケットの一部を確認し、重複確認を行うが、本発明の他の実施例では、中央制御装置１００が受信されたコンテンツパケットを確認し、重複確認を行うこともできる。このような本発明の他の実施例によるコンテンツ伝送システムでの中央制御装置及びローカルキャッシング装置の構成を添付の図面を参照して説明する。
【００６５】
図４は、本発明の他の実施例によるコンテンツ伝送システムでの中央制御装置の構成を示すブロック図である。
【００６６】
図４を参照すれば、本発明の他の実施例による中央制御装置３００は、通信部３１０と、制御部３２０と、臨時ローカルキャッシュ３３１及びフロー管理データベース３３２を含む格納部３３０と、ローカルキャッシュ状態管理部３４０とで構成されることができ、コンテンツサーバー１０から受信されたコンテンツパケットをローカルキャッシング装置４００に伝送するとき、重複監視を通じてコンテンツパケットを確認し、チャンク重複可否を確認する。
【００６７】
このような中央制御装置３００の通信部３１０、格納部３３０及びローカルキャッシュ状態管理部３４０の具体的な説明は、本発明の一実施例による中央制御装置１００の通信部１１０、格納部１３０及びローカルキャッシュ状態管理部１４０とそれぞれ同一なので、説明の便宜のために省略する。
【００６８】
但し、制御部３２０は、フロー管理部３２１、ペイロードバッファリング及び分割部３２２、チャンク重複管理部３２３及び制御メッセージ管理部３２４を含んで構成されることができる。
【００６９】
制御部３２０は、通信部３１０を通じてコンテンツサーバー１０から受信されたコンテンツパケットをローカルキャッシング装置４００に伝送するとき、コンテンツパケットの一部分を確認し、重複可否を判断する。ここで、コンテンツパケットは、フロー単位で識別され、バッファリングされたフローを確認し、重複可否を判断する。この際、コンテンツパケットが重複除去対象フローではない場合、制御部３２０は、バッファリングされたフローのペイロードを分割したチャンクを格納し、そのまま当該コンテンツパケットをローカルキャッシング装置４００に伝送する。一方、重複除去対象フローの場合、制御部３２０は、重複された当該コンテンツパケットを伝送せず、重複コンテンツパケットに対するチャンク識別子及びフロー情報（フローコンテキスト）をローカルキャッシング装置４００に伝送する。その後、続いて同一のコンテンツのコンテンツパケットが受信されれば、制御部３２０は、受信されたコンテンツパケットのフローのペイロードをバッファリングし、バッファリングされたペイロードをチャンク単位で分割し、分割されたチャンクルルチャンク識別子とともに一時格納し、ローカルキャッシング装置４００には重複されたコンテンツパケットを伝送せず、チャンク識別子及びフロー情報のみを伝送する。
【００７０】
フロー管理部３２１及びペイロードバッファリング及び分割部３２２は、本発明の一実施例による中央制御装置１００のフロー管理部１２１及びペイロードバッファリング及び分割部１２２と同一なので、説明の便宜のために説明を省略する。但し、フロー管理部３２１は、中央制御装置３００でチャンク重複確認を行うので、チャンク重複確認によるフロー管理を行い、ペイロードバッファリング及び分割部３２２は、分割されたチャンクに対するチャンク識別子を生成し、生成されたチャンク識別子をフロー管理部３２１に伝達する。
【００７１】
チャンク重複管理部３２３は、現在受信されてクライアント２０側に伝送される当該チャンクが臨時ローカルキャッシュ３３１に格納されているかを管理するものであって、フロー管理部３２１から伝達された分割されたチャンクに対するチャンク識別子を利用して分割されたチャンクがあらかじめ格納されているか否かを確認し、あらかじめ格納されている重複チャンクが存在すれば、重複チャンクに対する情報をフロー管理部３２１に伝送する。また、チャンク重複管理部３２３は、フロー管理部３２１から続いて受信された同一のコンテンツパケットのチャンクが伝達すれば、当該チャンクに対するチャンク識別子が  臨時ローカルキャッシュ３３１に格納されているか否かを確認し、一致するチャンク識別子が格納されているか否かに対する確認結果をフロー管理部２２１に伝送する。
【００７２】
制御メッセージ管理部３２４は、コンテンツパケットの重複監視のために必要な情報を管理し、ローカルキャッシング装置４００と送受信する制御メッセージを管理し、ローカルキャッシング装置４００にチャンク識別子を伝送することによって、ローカルキャッシング装置４００でチャンク識別子の一致可否を確認するようにする。具体的に、制御メッセージ管理部３２４は、フロー管理部３２１から受信された重複コンテンツパケットに対するチャンク識別子及びフロー情報（フローコンテキスト）を制御メッセージに含んでローカルキャッシング装置４００に通信部３１０を通じて伝送する。また、制御メッセージ管理部３２４は、ローカルキャッシング装置４００からチャンク識別子一致確認に対する結果情報（一致するチャンク識別子がない）及びコンテンツパケット要請情報を含むコンテンツパケット要請メッセージを受信し、結果情報及びコンテンツパケット要請情報をフロー管理部３２１に伝達する。
【００７３】
次に、図５は、本発明の他の実施例によるコンテンツ伝送システムでのローカルキャッシング装置の構成を示すブロック図である。
【００７４】
図５を参照すれば、本発明の他の実施例によるローカルキャッシング装置４００は、通信部４１０と、制御部４２０と、ローカルキャッシュ４３１及びフロー管理データベース４３２を含む格納部４３０と、ローカルキャッシュ状態管理部４４０とで構成されることができる。ローカルキャッシング装置４００は、中央制御装置３００から受信されたコンテンツパケットをクライアント２０に伝送し、中央制御装置３００での重複確認によって伝送されたチャンク識別子を利用して自分が格納している当該コンテンツパケットをクライアント２０に伝達する。
【００７５】
このようなローカルキャッシング装置４００の通信部４１０、格納部４３０及びローカルキャッシュ状態管理部４４０の具体的な構成説明は、本発明の一実施例によるローカルキャッシング装置２００の通信部２１０、格納部２３０及びローカルキャッシュ状態管理部２４０と同一なので、説明の便宜のために省略する。
【００７６】
但し、制御部４２０は、フロー管理部４２１、ペイロードバッファリング及び分割部４２２、チャンクキャッシング部４２３及び制御メッセージ管理部４２４を含んで構成されることができる。
【００７７】
制御部４２０は、通信部４１０を通じて中央制御装置３００から受信されたコンテンツパケットをクライアント２０に伝送し、中央制御装置３００から重複確認によるチャンク識別子及びフロー情報（フローコンテキスト）を受信すれば、受信されたフロー情報を格納部４３０に登録し、中央制御装置３００から受信したチャンク識別子と一致するチャンク識別子が格納されていれば、格納部４３０のローカルキャッシュ４３１に格納されているチャンク識別子に該当するコンテンツパケットをクライアント２０に伝送する。
【００７８】
ペイロードバッファリング及び分割部４２２、チャンクキャッシング部４２３及び制御メッセージ管理部４２４は、本発明の一実施例によるペイロードバッファリング及び分割部２２２、チャンクキャッシング部２２３及び制御メッセージ管理部２２５と同一なので、具体的な説明を省略する。
【００７９】
但し、フロー管理部４２１は、中央制御装置３００から通信部４１０を通じて受信されたコンテンツパケットをフロー単位で識別し、識別されたフローのペイロードをバッファリングし、バッファリングされたフローチャンク単位で分割し、分割されたチャンクをローカルキャッシュ４３１にチャンク識別子とともに格納し、受信されたコンテンツパケットまたは格納されたチャンク識別子に該当するコンテンツパケットを通信部４１０を通じてクライアント２０に伝達する。
【００８０】
また、フロー管理部４２１は、中央制御装置３００で重複確認されたチャンク識別子及びフロー情報を受信すれば、受信されたチャンク識別子及びフロー情報を格納部４３０に登録し、チャンクキャッシング部４２３に受信されたチャンク識別子を伝達し、チャンクキャッシング部４２３で確認されたチャンクに対する当該コンテンツパケットをクライアント２０に伝送するために通信部４１０に当該コンテンツパケットを伝達する。制御メッセージ管理部４２４は、中央制御装置３００からチャンク識別子及びフロー情報を含む制御メッセージを受信し、チャンク識別子及びフロー情報をフロー管理部４２１に伝達し、中央制御装置３００から続いて受信された同一のパケットに対するチャンク識別子及びフロー情報を含む制御メッセージを受信し、チャンク識別子をフロー管理部４２１に伝達する。また、制御メッセージ管理部４２４は、ローカルキャッシュ４３１に受信されたチャンク識別子と一致するチャンク識別子が格納されているか否かを確認した結果情報（一致する結果情報がない）をフロー管理部４２１から伝達されて、結果情報及びコンテンツパケット要請情報を含むコンテンツ要請メッセージを中央制御装置３００に伝送する。
【００８１】
以下では、このように構成されたコンテンツ伝送システムでネットワークトラフィック最適化方法について添付の図面を参照して具体的に説明する。
【００８２】
まず、本発明の一実施例によって中央制御装置１００及びローカルキャッシング装置２００間のネットワーク重複伝送トラフィック最適化のためのプロトコル、すなわちメッセージ送受信手続について説明する。
【００８３】
図７は、本発明の実施例によってコンテンツ伝送システムでのネットワーク重複伝送トラフィック最適化方法を示す流れ図である。
【００８４】
図７を参照すれば、１１０１段階で、中央制御装置１００は、コンテンツサーバー１０からコンテンツパケットを受信すれば、ローカルキャッシング装置２００に受信されたコンテンツパケットを伝送する。これにより、ローカルキャッシング装置２００は、コンテンツパケットをクライアント２０に伝達する。ここで、前記コンテンツサーバー１０から伝送されるコンテンツパケットは、コンテンツサーバー１０がクライアント２０に伝送したコンテンツパケットであって、これを前記中央制御装置１００及びローカルキャッシング装置２００が受信し、クライアント２０に伝達するようになる。この際、前記中央制御装置１００及びローカルキャッシング装置２００は、ミラリング方式を通じて前記コンテンツサーバー１０からクライアント２０に伝送されるコンテンツパケットを受信することができる。
【００８５】
このような動作中に、１１０２段階で、ローカルキャッシング装置２００は、伝送されるコンテンツパケットに対するチャンク重複確認を行う。この際、伝送されるコンテンツパケットは、フロー単位で識別され、識別されたフローのペイロードをバッファリングし、バッファリングされたペイロードをチャンクに分割し、チャンク識別子を生成するようになる。これにより、ローカルキャッシング装置２００は、生成されたチャンク識別子を利用して伝送されるコンテンツパケットの重複可否をチャンク単位で確認する。
【００８６】
例えば、ローカルキャッシング装置２００は、クライアント２０に伝送されるコンテンツパケットのうち受信されたコンテンツパケットの一部を格納しているコンテンツパケットと比較して、コンテンツ重複可否を確認し、重複可否によって重複除去プロセスを行うようになる。言い換えれば、１１０２段階で、チャンク重複確認実行時に、ローカルキャッシング装置２００は、各フローに対して重複除去プロセスの‘開始’を判断するために、フローの最初ｎバイトを確認し、これに対するコンテンツパケットが自分に存在する場合、以後に受信されるデータは、重複除去される可能性が大きいと判断し、重複除去プロセスを開始する。この際、中央制御装置１００での重複確認のためのシグナチャー（ｈａｓｈ  ｖａｌｕｅ）生成は、多くのＣＰＵ負荷をもたらすが、重複性がないものと判断されるか、コンテンツサイズが小さいデータの場合、重複除去による効果よりはシグナチャー生成に使用される負荷に起因して性能が低下する可能性が大きい。したがって、１１０２段階で、ローカルキャッシング装置２００は、最初ｎバイト（例えば、１Ｋ〜３２Ｋ程度）のデータ（コンテンツ）が中央制御装置１００から受信され、これを通じてフローの最初ｎバイトが自分に存在する場合にのみ、重複除去プロセッサを行うようになる。一方、最初ｎバイトが自分に存在しなければ、中央制御装置１００から引き続いて受信されるコンテンツパケットをそのままクライアント２０に伝達する。
【００８７】
受信されるコンテンツパケットで重複されたチャンクを確認した場合、１１０３段階で、ローカルキャッシング装置２００は、当該コンテンツに対するチャンク識別子及びフロー情報（フローのコンテキスト）を含む制御メッセージを中央制御装置１００に伝送する。これにより、中央制御装置１００は、受信された制御メッセージに含まれたチャンク識別子及びフロー情報フローのコンテキストをフロー管理データベース１３２に登録する。ここで、フローのコンテキストは、フロー識別情報として例えば、ｓｏｕｒｃｅ  ＩＰ、ＤｅｓｔｉｎａｔｉｏｎＩＰ、Ｓｏｕｒｃｅ  Ｐｏｒｔ、Ｄｅｓｔｉｎａｔｉｏｎ  Ｐｏｒｔ、Ｐｒｏｔｏｃｏｌ、ｐａｙｌｏａｄ  ｌｅｎｇｔｈ、Ｓｅｑｕｅｎｃｅ  Ｎｕｍｂｅｒ、コンテンツ種類などを含むことができる。もし、コンテンツパケットに対するチャンクの重複がなければ、新しく伝送されるコンテンツパケットなので、伝送されるコンテンツパケットの分割されたチャンクをチャンク識別子とともにローカルキャッシュ２３１に格納する。
【００８８】
そして、１１０４段階で、ローカルキャッシング装置２００は、クライアント２０から伝送されたコンテンツパケットに対する応答メッセージを受信すれば、１１０４段階で、中央制御装置１００にそのまま応答メッセージを伝達する。これにより、１１０４段階で、中央制御装置１００は、受信された応答メッセージをそのままコンテンツサーバー１０に伝達する。
【００８９】
その後、１１０５段階で、中央制御装置１００は、コンテンツサーバー１０から続いて同一のコンテンツに対する次のコンテンツパケットを受信すれば、受信されたコンテンツパケットをフロー単位で識別し、あらかじめ登録されたフロー情報を利用して重複除去対象フローであるか否かを確認する。確認結果、コンテンツパケットのフローが重複除去対象フローなら、中央制御装置１００は、重複除去対象フローのペイロードをバッファリングし、バッファリングされたペイロードをチャンク単位で分割し、臨時ローカルキャッシュ１３１にチャンク識別子とともに一時格納する。
【００９０】
その後、１１０６段階で、中央制御装置１００は、分割されたチャンクのチャンク識別子、例えば、図８に示されたようなチャンク識別子１（Ｆ８Ｋ４Ｆ）を制御メッセージ（ｓｅｎｄＦ８Ｋ４Ｆｃｈｕｎｋ）に含んでローカルキャッシング装置２００に伝送する。この際、制御メッセージには、フロー情報（フローコンテキスト）が一緒に含まれて伝送される。
【００９１】
１１０７段階で、ローカルキャッシング装置２００は、制御メッセージを受信するにつれて制御メッセージに含まれたチャンクの識別子が格納部２３０に格納されているか否かを確認する。確認結果、受信されたチャンク識別子と一致するチャンク識別子が格納されていない場合、１１０８段階で、ローカルキャッシング装置２００は、確認結果情報を含むコンテンツパケット要請メッセージを中央制御装置１００に伝送する。ここで、結果情報には、チャンク識別子を格納していないことを示す情報だけが含まれるので、当該コンテンツパケットを中央制御装置１００に要請するようになる。これにより、１１０９段階で、ローカルキャッシング装置２００は、中央制御装置１００から要請したコンテンツパケットをチャンク単位で伝達されて、格納部２３０に格納し、クライアント２０に伝送する。
【００９２】
１１０７段階で確認した結果、ローカルキャッシング装置２００は、受信されたチャンク識別子と一致するチャンク識別子が格納されていれば、１１１０段階で、ローカルキャッシング装置２００は、チャンク識別子に該当するコンテンツパケットを格納部２３０から読み込んでプロトコルプロキシを利用して当該コンテンツパケットをクライアント２０に伝送する。
【００９３】
その後、１１１１段階で、ローカルキャッシング装置２００は、クライアント２０からコンテンツパケット伝送による応答メッセージを受信し、受信された応答メッセージを中央制御装置１００を経てコンテンツサーバー１０に伝送する。
【００９４】
このような過程を通じて提供されるコンテンツの伝送がすべて完了すれば、１１２０段階で、中央制御装置１００及びローカルキャッシング装置２００は、当該フローに対する制御メッセージ終了プロセスを行い、中央制御装置１００は、プロトコルプロキシを通じてコンテンツサーバー１０と伝送プロトコル終了プロセスを行い、ローカルキャッシング装置２００は、プロトコルプロキシを通じてクライアント２０と伝送プロトコル終了プロセスを行う。
【００９５】
このようなプロトコル手続でコンテンツサーバー１０と中央制御装置１００及びクライアント２０とローカルキャッシング装置２００は、例えば、ＴＣＰ連結を通じてコンテンツパケットを送受信することができる。
【００９６】
図８は、本発明の一実施例によってコンテンツ伝送システムでのＴＣＰ方式の重複除去プロセス実行に対する一例を示す流れ図である。
【００９７】
図８で、コンテンツサーバーＡ  １０と中央制御装置１００及びローカルキャッシング装置２００とクライアントＤ  ２０は、ＴＣＰを通じて連結され、これにより、中央制御装置１００とローカルキャッシング装置２００は、重複除去制御メッセージを送受信するようになる。
【００９８】
図８を参照すれば、１２０１段階で、中央制御装置１００は、コンテンツサーバーＡ  １０からクライアントＤ  ２０に伝送する第１コンテンツパケットメッセージ（ｓｒｃ：Ａ、ｄｓｔ：Ｄ、ＤａｔａＣｏｎｔｅｎｔｓ  １、ｌｅｎ  １０２４）及び第２コンテンツパケットメッセージ（ｓｒｃ：Ａ、ｄｓｔ：Ｄ、ＤａｔａＣｏｎｔｅｎｔｓ  ２、ｌｅｎ  １０２４）を受信する。この際、中央制御装置１００は、受信されたコンテンツパケットをフロー単位で識別し、チャンクに分割する。これにより、１２０２段階で、中央制御装置１００は、分割されたチャンク、例えば、チャンク１Ｄａｔａ１：１〜１０２４、Ｄａｔａ２：１０２５〜２０４８の識別子（識別子アイディー：Ｆ８Ｋ４Ｆ）（ａ）をフロー情報とともに制御メッセージに含んでローカルキャッシング装置２００に伝送する。
【００９９】
それでは、１２０３段階で、ローカルキャッシング装置２００は、受信された制御メッセージに含まれたチャンク１の識別子情報（識別子アイディー：Ｆ８Ｋ４Ｆ）と一致する識別子情報がローカルキャッシュ２３１のデータベース（ｂ）に格納されているか否かを確認する。確認結果、チャンク識別子が格納されていない場合、１２０４段階で、ローカルキャッシング装置２００は、結果情報（チャンク識別子を格納していない（ＯＫ、Ｉ  ｄｏｎ’ｔ  ｈａｖｅ  Ｆ８Ｋ４Ｆ  ｃｈｕｎｋ）を含むコンテンツパケット要請メッセージを中央制御装置１００に伝送する。１２０５段階で、ローカルキャッシング装置２００は、中央制御装置１００から当該コンテンツパケットを伝達される。
【０１００】
１２０３段階で確認した結果、チャンク識別子が格納されていれば、１２０６段階で、ローカルキャッシング装置２００は、データベース（ｂ）に格納されたチャンク１の識別子情報（識別子アイディー：Ｆ８Ｋ４Ｆ）に対する第１コンテンツパケットメッセージ（ｓｒｃ：Ａ、ｄｓｔ：Ｄ、ＤａｔａＣｏｎｔｅｎｔｓ  １、ｌｅｎ  １０２４）及び第２コンテンツパケットメッセージ（ｓｒｃ：Ａ、ｄｓｔ：Ｄ、ＤａｔａＣｏｎｔｅｎｔｓ  ２、ｌｅｎ  １０２４）をクライアントＤ  ２０に伝送し、クライアントＤ２０からコンテンツパケット伝送に対する応答メッセージ（ｓｒｃ：Ｄ、ｄｓｔ：Ａ、Ａｃｋ  １０２５）及び応答メッセージ（ｓｒｃ：Ｄ、ｄｓｔ：Ａ、Ａｃｋ  ２０４９）を受信し、中央制御装置１００を通じてコンテンツサーバー１０に伝達する。
【０１０１】
また、１２０５段階で、当該コンテンツパケットを伝達される場合にも、同様に、伝達されたコンテンツパケットを１２０６段階のようにクライアントＤ  ２０に伝送する。
【０１０２】
前述したようなコンテンツ重複伝送を監視するためのプロトコル実行手続を参照して中央制御装置１００及びローカルキャッシング装置２００それぞれでのネットワーク重複伝送トラフィック最適化方法を図面を参照して具体的に説明する。
【０１０３】
まず、中央制御装置１００でのネットワーク重複伝送トラフィック最適化方法について説明する。
【０１０４】
図９は、本発明の一実施例によって中央制御装置でのネットワークトラフィック最適化方法を示す流れ図である。
【０１０５】
図９を参照すれば、１３０１段階で、中央制御装置１００は、コンテンツサーバー１０からコンテンツパケットを受信する。この際、中央制御装置１００は、受信されたコンテンツパケットをフロー単位で識別し、識別されたフローのペイロードをバッファリングする。そして、１３０２段階で、中央制御装置１００は、ローカルキャッシング装置２００からチャンク識別子を受信したか否かを確認する。確認結果、チャンク識別子を受信しない場合または登録されたチャンク識別子がない場合、１３０３段階で、中央制御装置１００は、バッファリングされているフローのコンテンツパケットをそのままローカルキャッシング装置２００に伝達する。次いで、１３０４段階で、中央制御装置１００は、ローカルキャッシング装置２００から応答メッセージを受信し、１３０５段階で、受信された応答メッセージをコンテンツサーバー１０に伝達する。
【０１０６】
一方、チャンク識別子が受信された場合、１３０６段階で、中央制御装置１００は、受信されたチャンク識別子とともに受信されたフロー情報を重複除去対象として格納部２３０に登録する。この際、中央制御装置１００は、バッファリングされたペイロードをチャンク単位で分割したチャンクをチャンク識別子とともにローカルキャッシュ１３１に一時格納する。
【０１０７】
その後、１３０７段階で、中央制御装置１００は、続いて同一のコンテンツに対するコンテンツパケットを受信し、前述した図８の一例のように、受信されたコンテンツパケットに対する重複除去プロセスを行う。具体的に、１３０８段階で、中央制御装置１００は、受信されたコンテンツパケットをフロー単位に識別し、識別されたフローのペイロードをバッファリングし、１３０９段階で、バッファリングされたペイロードをチャンク単位で分割し、分割されたチャンクを臨時ローカルキャッシュ１３１にチャンク識別子とともに一時格納する。その後、１３１０段階で、中央制御装置１００は、受信されたコンテンツパケットに対するチャンク識別子及びフロー情報を含む制御メッセージをローカルキャッシング装置２００に伝送する。これにより、ローカルキャッシング装置２００では、チャンク識別子を利用してチャンクの一致を確認し、確認結果によって結果情報を含むコンテンツパケット要請メッセージを伝送する。
【０１０８】
これにより、１３１１段階で、中央制御装置１００は、ローカルキャッシング装置２００からコンテンツパケット要請があるか否かを確認する。確認結果、コンテンツパケット要請がない場合には、１３１３段階に進行され、コンテンツパケット要請がある場合、１３１２段階で、中央制御装置１００は、要請したコンテンツパケットをローカルキャッシング装置２００に伝達する。
【０１０９】
その後、１３１３段階で、中央制御装置１００は、ローカルキャッシング装置２００から伝送されたコンテンツパケットに対する応答メッセージを受信し、１３１４段階で、受信した応答メッセージをコンテンツサーバー１０に伝達する。
【０１１０】
１３１５段階で、中央制御装置１００は、終了プロセス実行可否を確認し、終了プロセスを行わない場合には、１３０１段階に戻って、以後の段階を行い、終了プロセスを行う場合、中央制御装置１００は、コンテンツサーバー１０と終了プロトコル手続を行い、ローカルキャッシング装置２００と制御メッセージ終了プロセスを行う。
【０１１１】
次に、ローカルキャッシング装置２００でのネットワークトラフィック最適化方法について説明する。
【０１１２】
図１０は、本発明の一実施例によってローカルキャッシング装置２００でのネットワーク重複伝送トラフィック最適化方法を示す流れ図である。
【０１１３】
図１０を参照すれば、１４０１段階で、ローカルキャッシング装置２００は、コンテンツサーバー１０から提供されるコンテンツパケットを中央制御装置１００を経て受信する。
【０１１４】
その後、ローカルキャッシング装置２００は、コンテンツ重複監視のために重複除去プロセスを行うようになる。
【０１１５】
これにより、１４０２段階で、ローカルキャッシング装置２００は、受信されるコンテンツパケットをフロー単位で識別し、識別されたフローをフィルタリングする。ここで、フローのフィルタリングは、重複除去を所望しないフローであって、例えば、暗号化されたか、または重複除去可能性が多くないフローに対しては、以後にプロセッシングを別に行わず、クライアント２０にすぐ伝送するために行われる。
【０１１６】
１４０３段階で、ローカルキャッシング装置２００は、識別されたフローのペイロードをバッファリングし、バッファリングされたペイロードをチャンク単位で分割し、１４０４段階で、チャンク識別情報を生成する。
【０１１７】
１４０５段階で、ローカルキャッシング装置２００は、生成されたチャンク識別情報をローカルキャッシュ２３１に格納されたチャンクの識別情報と比較することによって、重複可否を確認する。このような重複確認過程は、添付の図１４ａ〜図１４ｃを参照して説明する。
【０１１８】
具体的に、図１４ａに示されたように、ローカルキャッシング装置２００は、分割されたチャンク１（例えば、ＳＨＡ１（Ｃ１）＝ｅ７２ｂ１ｃｄ７  ｄ７ｂ８ｃａ００  ｄａｅ００ａ７２  ７４３ｆ２ｄｃ０  ｆａ９８５ｂ６２）をハッシュ変換値（ｈｉ（ｃ１）＝７２８２７９  ５７６０００  ２６  ９９４７５２  ５４７６８）に変換し、変換値をローカルキャッシュ２３１のチャンクインデックスデータベースのインデックス及びビットフィールドに追加する。
【０１１９】
このように、ローカルキャッシュ２３１には、チャンクインデックスデータベースにチャンクを識別することができるインデックスが格納されており、このようなインデックスのビットフィールド値によって重複可否を判断することができる。例えば図１４ｂに示されたように、チャンクの変換値に対するビットフィールド値がすべて真（１）であるから、ＡＮＤ演算した結果は、真であって、重複されたチャンクが存在するものと判断し、図１４ｃに示されたように、チャンクの変換値に対するビットフィールド値に偽（０）が含まれており、したがって、ビットフィールド値をすべてＡＮＤ演算した結果は、偽であって、重複されたチャンクが存在しないものと判断することができる。
【０１２０】
したがって、１４０５段階で確認結果、分割されたチャンクが重複されない場合、１４０６段階で、ローカルキャッシング装置２００は、ローカルキャッシュ２３１に分割されたチャンクを格納（キャッシング）した後、１４１２段階に進行し、コンテンツパケットをクライアント２０に伝送する。
【０１２１】
一方、１４０５段階で確認した結果、分割されたチャンクが重複される場合、１４０７段階で、ローカルキャッシング装置２００は、チャンク識別子及びフロー情報（フローコンテキスト）を制御メッセージに含んで中央制御装置１００に伝送する。
【０１２２】
その後、１４０８段階で、ローカルキャッシング装置２００は、中央制御装置１００からチャンク識別情報を受信したかを確認して受信した場合、１４０９段階で、ローカルキャッシング装置２００は、受信されたチャンク識別情報がローカルキャッシュ２３１にあらかじめ格納されているチャンク識別情報と一致するか否かを確認する。これは、１４０５段階でのチャンク重複確認と同様に、添付の図１４ｂ及び図１４ｃに示されたような一例によって確認することができる。
【０１２３】
確認結果、チャンク識別子が存在しない場合、１４１０段階で、ローカルキャッシング装置２００は、確認された結果情報（一致するチャンク識別子が格納されていない）及びコンテンツパケット要請情報を含むコンテンツパケット要請メッセージを中央制御装置１００に伝送する。これにより、１４１１段階で、ローカルキャッシング装置２００は、中央制御装置１００から要請したコンテンツパケットを伝達される。一方、チャンク識別子が存在する場合、１４１２段階に進行する。
【０１２４】
その後、１４１２段階で、ローカルキャッシング装置２００は、受信されたチャンク識別情報に該当するチャンクのコンテンツパケットをクライアント２０に伝送し、１４１３段階で、ローカルキャッシング装置２００は、クライアント２０から応答メッセージを受信する。この際、１４１４段階で、ローカルキャッシング装置２００は、受信された応答メッセージを中央制御装置１００を経てコンテンツサーバー１０に伝達する。
【０１２５】
１４１５段階で、ローカルキャッシング装置２００は、終了プロセス実行可否を確認し、終了プロセスを行わない場合には、１４０８段階に戻って、以後の段階を行い、終了プロセスを行う場合、ローカルキャッシング装置２００は、クライアント２０と終了プロトコル手続を行い、中央制御装置１００と制御メッセージ終了プロセスを行う。
【０１２６】
一方、本発明の他の実施例による中央制御装置３００及びローカルキャッシング装置４００間のネットワークトラフィック最適化のためのプロトコル、すなわちメッセージ送受信手続について説明する。
【０１２７】
図１１は、本発明の他の実施例よってコンテンツ伝送システムでのネットワークトラフィック最適化方法を示す流れ図である。
【０１２８】
図１１を参照すれば、１５０１段階で、中央制御装置３００は、コンテンツサーバー１０からコンテンツパケットを受信する。この際、中央制御装置３００は、受信されたコンテンツパケットをフロー単位で識別し、識別されたフローのバッファリングされたペイロードをチャンクに分割し、分割されたチャンクを生成された識別子とともに  臨時  ローカルキャッシュ３３１に格納する。
【０１２９】
この際、１５０２段階で、中央制御装置３００は、コンテンツパケットのチャンク重複可否を確認する。中央制御装置３００は、図１１には示されていないが、確認結果、重複されたコンテンツパケットではない場合、受信されたコンテンツパケットをそのままローカルキャッシング装置４００に伝達し、伝送されたコンテンツパケットに対する応答をローカルキャッシング装置４００を通じて受信し、コンテンツサーバー１０に伝達する。この際、ローカルキャッシング装置４００は、受信されたコンテンツパケットをフロー単位で識別し、識別されたフローのバッファリングされたペイロードをチャンクに分割し、分割されたチャンクを生成された識別子とともにローカルキャッシュ４３１に格納する。
【０１３０】
一方、１５０２段階で確認した結果、コンテンツパケットのチャンク重複があれば、１５０３段階で、中央制御装置３００は、重複確認されたコンテンツパケットに対するチャンク識別子及びフロー情報（フローコンテキスト）を制御メッセージに含んでローカルキャッシング装置４００に伝達する。
【０１３１】
これにより、１５０４段階で、ローカルキャッシング装置４００は、チャンク識別子を受信し、自分のローカルキャッシュ４３１のデータベースに受信されたチャンク識別子が格納されているか否かを確認する。確認結果、受信されたチャンク識別子が格納されていなければ、１５０５段階で、ローカルキャッシング装置４００は、チャンク識別子が格納されていないことを通知する結果情報とともにコンテンツパケット要請情報を含むコンテンツパケット要請メッセージを中央制御装置３００に伝送し、１５０６段階で、ローカルキャッシング装置４００は、中央制御装置３００から要請したコンテンツパケットを伝達される。前記伝達されたコンテンツパケットは、ローカルキャッシング装置４００のローカルキャッシュ４３１に格納される。
【０１３２】
前述した過程によって、チャンク識別子が格納されていれば、１５０７段階で、ローカルキャッシング装置４００は、チャンク識別子に該当するコンテンツパケットをローカルキャッシュ４３１から抽出し、クライアント２０に伝送する。
【０１３３】
その後、１５０８段階で、ローカルキャッシング装置４００は。クライアント２０からコンテンツパケット受信に対する応答メッセージを受信し、受信された応答メッセージを中央制御装置３００を経てコンテンツサーバー１０に伝送する。
【０１３４】
このような過程を通じて提供されるコンテンツの伝送がすべて完了すれば、１５２０段階で、中央制御装置３００及びローカルキャッシング装置４００は、当該フローに対する制御メッセージ終了プロセスを行い、中央制御装置３００は、プロトコルプロキシを通じてコンテンツサーバー１０と伝送プロトコル終了プロセスを行い、ローカルキャッシング装置４００は、プロトコルプロキシを通じてクライアント２０と伝送プロトコル終了プロセスを行う。
【０１３５】
前述したような本発明の他の実施例によるコンテンツ重複伝送を監視するためのプロトコル実行手続を参照して中央制御装置３００及びローカルキャッシング装置４００それぞれでのネットワークトラフィック最適化方法を図面を参照して具体的に説明する。
【０１３６】
図１２は、本発明の他の実施例によって中央制御装置でのネットワークトラフィック最適化方法を示す流れ図である。
【０１３７】
１６０１段階で、中央制御装置３００は、コンテンツサーバー１０からコンテンツパケットを受信する。この際、中央制御装置３００は、受信されたコンテンツパケットをフロー単位で識別し、識別されたフローのペイロードをバッファリングし、チャンク単位で分割し、分割されたチャンクを臨時  ローカルキャッシュ３３１にチャンク識別子とともに格納する。
【０１３８】
これにより、１６０２段階で、中央制御装置３００は、受信されたコンテンツパケットの重複可否、すなわちチャンク重複確認を行う。
【０１３９】
確認結果、コンテンツパケットの重複と確認されない場合には、１６０３段階で、中央制御装置３００は、受信されたコンテンツパケットをローカルキャッシング装置４００に伝送し、１６０４段階及び１６０５段階で伝送したコンテンツパケットに対する応答メッセージをローカルキャッシング装置４００から受信し、コンテンツサーバー１０に伝達する。
【０１４０】
一方、１６０２段階で確認した結果、コンテンツパケットが重複と確認された場合には、１６０６段階で、中央制御装置３００は、重複コンテンツパケットに対するチャンク識別子及びフロー情報をローカルキャッシング装置４００に伝送する。
【０１４１】
その後、１６０７段階で、中央制御装置３００は、続いて同一コンテンツに対するコンテンツパケットを受信すれば、１６０８段階で、中央制御装置３００は、受信されたコンテンツパケットをフロー単位で識別し、識別されたフローのペイロードをバッファリングし、バッファリングされたペイロードをチャンク単位で分割する。１６０９段階で、中央制御装置３００は、分割されたチャンクに対するチャンク識別子を生成し、生成されたチャンク識別子とともに分割されたチャンクを臨時ローカルキャッシュ３３１の当該データベースに格納する。
【０１４２】
その後、１６１０段階で、中央制御装置３００は、チャンク識別子及びフロー情報を制御メッセージに含んでローカルキャッシング装置４００に伝送する。その後、１６１１段階で、中央制御装置３００は、ローカルキャッシング装置４００からチャンク識別子に対する一致確認による結果情報（チャンク識別子が格納されていない）を含むコンテンツパケット要請メッセージを受信したか否かを確認する。
【０１４３】
確認結果、コンテンツパケット要請ない場合には、１６１３段階に進行し、コンテンツパケット要請があれば、１６１２段階で、中央制御装置３００は、要請されたコンテンツパケットをローカルキャッシング装置４００に伝送する。
【０１４４】
そして、１６１３段階で、中央制御装置３００は、クライアント２０に伝送されたコンテンツパケットに対する応答メッセージをローカルキャッシング装置４００から受信し、１６１４段階で受信した応答メッセージをコンテンツサーバー１０に伝達する。
【０１４５】
１６１５段階で、中央制御装置３００は、終了プロセスを行うか否かを確認し、終了プロセスを行うか、１６０１段階に進行し、前述したような過程を繰り返して行う。
【０１４６】
次に、ローカルキャッシング装置４００でのネットワークトラフィック最適化方法について説明する。
【０１４７】
図１３は、本発明の他の実施例によってローカルキャッシング装置でのネットワーク重複伝送トラフィック最適化方法を示す流れ図である。
【０１４８】
本発明の他の実施例において、コンテンツサーバー１０で提供されるコンテンツパケットは、クライアント２０に伝送される前に、中央制御装置３００で重複を確認される。この際、重複として確認されたコンテンツパケットは、図１３に示されたような過程を通じてクライアント２０に提供され、重複と確認されないパケットは、中央制御装置３００からローカルキャッシング装置４００にそのまま伝送され、クライアント２０に提供される。この際、中央制御装置３００及びローカルキャッシング装置４００は、受信されたコンテンツパケットをフロー単位で識別し、識別されたフローペイロードをバッファリングし、バッファリングされたペイロードをチャンクに分割し、分割されたチャンクをチャンク識別子とともに格納する。
【０１４９】
図１３を参照すれば、１７０１段階で、ローカルキャッシング装置４００は、中央制御装置３００からチャンク識別子を受信したか否かを確認する。確認結果、チャンク識別子が受信されない場合、続いてチャンク識別子受信を待機し、チャンク識別子とともにフロー情報を含んだ制御メッセージを受信した場合、１７０２段階で、ローカルキャッシング装置４００は、受信されたチャンク識別子とフロー情報（フローコンテキスト）を格納部４３０に登録する。
【０１５０】
１７０３段階で、ローカルキャッシング装置４００は、受信されたチャンク識別子が既格納されたチャンク識別子と一致するか否かを確認する。すなわち、受信されたチャンク識別子が格納されているかを確認する。確認結果、チャンク識別子が一致するチャンク識別子が格納されていなければ、１７０４段階で、ローカルキャッシング装置４００は、中央制御装置３００に当該コンテンツパケットを要請する。この際、ローカルキャッシング装置４００は、結果情報（チャンク識別子が格納されていない）とともに当該コンテンツパケット要請情報を含むコンテンツパケット要請メッセージを中央制御装置３００に伝送する。これにより、１７０５段階で、ローカルキャッシング装置４００は、中央制御装置３００から要請したコンテンツパケットを受信し、１７０６段階で受信されたコンテンツパケットをクライアント２０に伝達する。この際、伝達されたコンテンツパケットは、重複されないコンテンツパケットであって、受信されたコンテンツパケットに対する分割されたチャンクを識別情報とともに格納する。
【０１５１】
一方、１７０３段階で確認した結果、受信されたチャンク識別子と一致するチャンク識別子が格納されている場合、１７０６段階で、ローカルキャッシング装置４００は、格納されているチャンク識別子に該当するコンテンツパケットをクライアント２０に伝送する。
【０１５２】
１７０７段階で、ローカルキャッシング装置４００は、クライアント２０から伝送したコンテンツパケットに対する応答メッセージを受信し、１７０８段階で、受信した応答メッセージを中央制御装置３００を通じてコンテンツサーバー１０に伝達する。
【０１５３】
その後、１７０９段階で、ローカルキャッシング装置４００は、終了プロセス実行可否を確認し、終了プロセスを行う場合には、中央制御装置３００とのプロセスを終了し、そうではない場合には、１７０１段階に進行される。
【０１５４】
前述したような本発明の実施例によるネットワークトラフィック最適化方法で重複除去プロセスについて具体的に説明する。本発明の実施例では、重複除去プロセスをチャンク分割方法によって２つの実施例に区分して説明する。しかし、本発明は、このような実施例以外にも多様なチャンク分割方法を適用して重複除去プロセスを実行することができる。
【０１５５】
まず、バッファリングされたペイロードを固定されたサイズのチャンクに分割するための過程について添付の図１５ａ〜図１５ｂを参照して具体的に説明する。このような重複除去プロセスは、中央制御装置１００及びローカルキャッシング装置２００両方で行われることができる。本発明の実施例では、ローカルキャッシング装置２００を例に取って説明し、中央制御装置１００でも同一の過程で行われることができる。
【０１５６】
図１５ａ及び図１５ｂを参照すれば、ローカルキャッシング装置２００は、コンテンツパケットを受信すれば、コンテンツパケットをフロー単位で識別し、この際、伝達されるコンテンツパケットは、伝達される間に、手順が変わるので、ローカルキャッシング装置２００は、フローをバッファリングする。具体的に、ローカルキャッシング装置２００は、図１５ａの（ａ）のように、コンテンツパケットのペイロードを再整列し、図１５ａの（ｂ）のように、不要なＩＰ、ＴＣＰヘッダーを除去し、コンテンツだけを併合する。その後、ローカルキャッシング装置２００は、図１５ａの（ｃ）のように、併合されたコンテンツで無意味なコンテンツのメタデータまたはアプリケーションプロトコルで使用するためのコントロールメッセージを除去し、有意味なコンテンツのみを残す。または、このような不要なメッセージは、併合をする前の段階で除去されることもできる。このようなメタデータの種類は、アプリケーションプロトコルごとに多様である。ＨＴＴＰを通じて伝達されるビデオコンテンツの場合、クライアントの固有データが含まれることができるＨＴＴＰヘッダーを除去しなければならないし、Ｐ２Ｐの場合、Ｐ２Ｐアプリケーションで使用されるコントロールメッセージがキャッシングの対象から除外されることができる。
【０１５７】
このように十分なデータが併合されてバッファリングされていれば、ローカルキャッシング装置２００は、図１５ｂの（ｄ）のように、バッファリングされたコンテンツを有意味な単位のチャンクに再分割し、図１５ｂの（ｅ）のように、それぞれのチャンクを自分の固有識別子とともにデータベースに格納する。ここで、固有識別子を得るためには、チャンクのペイロード（Ｐａｙｌｏａｄ）にＭＤ５とＳＨＡ１などの知られたハッシュ（Ｈａｓｈ）関数を使用することができる。チャンクの識別情報（固有識別子）は、当該チャンクのコンテンツを唯一に識別することができ、チャンクの内容をすべて比較することなく、チャンクの存在有無を確認することができるように比較に費用があまりかからない短い長さで指定することができる。例えば、ＭＤ５、ＳＨＡ１などの知られたハッシュ関数を使用することができる。
【０１５８】
このような実施例以外にも、コンテンツをチャンク単位で分割する方法は、チャンク方法及びチャンクのサイズまたはコンテンツの特性によって決定されることができる。例えば、コンテンツの特性によって有意味なコンテンツ単位で分ける方法、コンテンツの内容を把握し、重複性を有意味に捜し出すことができる方法と知られたＲａｂｉｎ’ｓ  ｆｉｎｇｅｒｐｒｉｎｔｉｎｇなどの多様な方法、またはその他方法を使用することができる。
【０１５９】
例えば、他の実施例として、添付の図１６ａ及び図１６ｂに示されたように、Ｒａｂｉｎ’ｓ  ｆｉｎｇｅｒｐｒｉｎｔｉｎｇ関数を利用してコンテンツの内容を把握し、チャンクを分割することによって、可変サイズのチャンクに分割することができる。ここで、図１６ｂは、Ｒａｂｉｎｆｉｎ’ｓ  ｆｉｎｇｅｒｐｒｉｎｔｉｎｇを活用したチャンクの一例であって、（ａ）は、原本データであり、（ｂ）は、データの前段に挿入が発生した場合を示すものであり、（ｃ）は、データの後段に挿入が発生した場合を示すものである。
【０１６０】
本発明によるネットワークトラフィック最適化方法は、多様なコンピュータ手段を用いて読み取り可能なソフトウェア形態で具現され、コンピュータで読み取り可能な記録媒体に記録されることができる。ここで、記録媒体は、プログラム命令、データファイル、データ構造などを単独でまたは組み合わせて含むことができる。記録媒体に記録されるプログラム命令は、本発明のために特別に設計され構成されたものであるか、コンピュータソフトウェア当業者に公知されて使用可能なものであってもよい。例えば、記録媒体は、ハードディスク、プロッピィーディスク及び磁気テープのような磁気媒体（Ｍａｇｎｅｔｉｃ  Ｍｅｄｉａ）、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｉｄｅｏ  Ｄｉｓｋ）のような光記録媒体（Ｏｐｔｉｃａｌ  Ｍｅｄｉａ）、フロプチカルディスク（Ｆｌｏｐｔｉｃａｌ  Ｄｉｓｋ）のような磁気−光媒体（Ｍａｇｎｅｔｏ−Ｏｐｔｉｃａｌ  Ｍｅｄｉａ）、及びＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、フラッシュメモリなどのようなプログラム命令を格納し実行するように特別に構成されたハードウェア装置を含む。プログラム命令の例には、コンパイラーによって作われるもののような機械語コードだけでなく、インタプリターなどを使用してコンピュータによって実行されることができる高級言語コードを含むことができる。このようなハードウェア装置は、本発明の動作を行うために１つ以上のソフトウェアモジュールとして作動するように構成されることができ、その逆と同様である。
【０１６１】
以上のように、本明細書と図面には、本発明の好ましい実施例について開示したが、ここに開示された実施例以外にも、本発明の技術的思想に基づく他の変形例が実施可能であるということは、本発明の属する技術分野における通常の知識を有する者に自明である。また、本明細書と図面で特定用語が使用されたが、これは、ただ本発明の技術内容を容易に説明し、発明の理解を助けるための一般的な意味として使用されたものであって、本発明の範囲を限定しようとするものではない。
【産業上の利用可能性】
【０１６２】
本発明は、コンテンツ伝送システムでのコンテンツ重複伝送によるネットワーク上のトラフィック減少のためのトラフィック最適化方法、中央制御装置及びローカルキャッシング装置に関し、コンテンツ伝送ネットワーク上にコンテンツ重複伝送を監視するためにコンテンツサーバーと連結される中央制御装置及びクライアントと連結されるローカルキャッシング装置を具備することによって、簡単に既存のシステム及びプロトコルに透明に適用することができるので、現実的で且つ運用可能なコンテンツ伝送システムを提供することができるという効果がある。
【０１６３】
さらに、本発明は、中央制御装置でコンテンツサーバーからクライアントに提供されるコンテンツパケットの重複伝送を監視し、重複されるコンテンツパケットを伝送せず、ローカルキャッシング装置と識別情報のみを送受信し、コンテンツ一致可否を確認することによって、ネットワークの特定区間（例えば、インターネット網と集中局との間）で重複されて伝送されるネットワークトラフィックの負荷を減少させることができ、これにより、網運用の便宜性を確保することができ、費用節減の効果があり、ローカルキャッシング装置でコンテンツ重複を確認することによって、コンテンツの重複伝送を減少させることによって、クライアントの体感品質を向上させることができるという効果がある。
【図１】
0005816380.tif 000002
【図２】
0005816380.tif 000003
【図３】
0005816380.tif 000004
【図４】
0005816380.tif 000005
【図５】
0005816380.tif 000006
【図６】
0005816380.tif 000007
【図７】
0005816380.tif 000008
【図８】
0005816380.tif 000009
【図９】
0005816380.tif 000010
【図１０】
0005816380.tif 000011
【図１１】
0005816380.tif 000012
【図１２】
0005816380.tif 000013
【図１３】
0005816380.tif 000014
【図１４ａ】
0005816380.tif 000015
【図１４ｂ】
0005816380.tif 000016
【図１４ｃ】
0005816380.tif 000017
【図１５ａ】
0005816380.tif 000018
【図１５ｂ】
0005816380.tif 000019
【図１６ａ】
0005816380.tif 000020
【図１６ｂ】
0005816380.tif 000021