JP2006323455A - 送信装置、中継装置 - Google Patents
送信装置、中継装置 Download PDFInfo
- Publication number
- JP2006323455A JP2006323455A JP2005143716A JP2005143716A JP2006323455A JP 2006323455 A JP2006323455 A JP 2006323455A JP 2005143716 A JP2005143716 A JP 2005143716A JP 2005143716 A JP2005143716 A JP 2005143716A JP 2006323455 A JP2006323455 A JP 2006323455A
- Authority
- JP
- Japan
- Prior art keywords
- data
- protocol
- packet
- transmission
- content
- 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.)
- Withdrawn
Links
Images
Landscapes
- Computer And Data Communications (AREA)
Abstract
【課題】 ネットワーク上の伝送帯域、ネットワークに接続している機器の情報、伝送媒体の状況に応じてデータを伝送可能な送信装置および中継装置を提供する。
【解決手段】 ハードディスクレコーダ2100は、中継装置2101との間が有線媒体で接続されているために、伝送プロトコルをTCP/HTTPとする(SP3011)。中継装置2101は、デジタルテレビ2102との間が無線媒体で接続されているために、伝送プロトコルをUDP/RTPとする(SP3012)。ハードディスクレコーダ2100は、暗号化したコンテンツデータをTCP/HTTPで中継装置2101へ伝送する。中継装置2101は、受信したデータのプロトコルをHTTPからRTPに変換(SP3017)し、データをUDPでデジタルテレビ2102へ伝送する。
【選択図】 図20
【解決手段】 ハードディスクレコーダ2100は、中継装置2101との間が有線媒体で接続されているために、伝送プロトコルをTCP/HTTPとする(SP3011)。中継装置2101は、デジタルテレビ2102との間が無線媒体で接続されているために、伝送プロトコルをUDP/RTPとする(SP3012)。ハードディスクレコーダ2100は、暗号化したコンテンツデータをTCP/HTTPで中継装置2101へ伝送する。中継装置2101は、受信したデータのプロトコルをHTTPからRTPに変換(SP3017)し、データをUDPでデジタルテレビ2102へ伝送する。
【選択図】 図20
Description
本発明は、送信装置および中継装置に関し、特に、コンテンツを送信する送信装置、および送信装置と受信装置との間でコンテンツを中継する中継装置に関する。
近年、通信ネットワークの技術の進歩に伴い、家庭でのネットワーク環境の向上が目覚しい。従来は、電話線を利用した数Mbps程度のサービスが提供されるに過ぎなかった。ところが、最近では、光ケーブル等の専用媒体を利用した数10Mbps〜数Gbpsの許容を持つ伝送レートのサービスが増加している。
また、高速の伝送レートを持つ10Base-Tや100Base-Tの有線のEthernet(登録商標)通信機能や、IEEE802.11a,IEEE802.11b,IEEE802.11g等の無線LANの規格による無線通信機能を備えたデジタル家電装置が普及しつつある。このように家庭において、高い伝送レートの媒体を利用することで、高品位なコンテンツデータを家庭のあらゆる場所において視聴することが可能になる。その結果、SD(スタンダードディフニション(Standard-Definition):標準な解像度)クラスの映像でしか見ることができなかった環境から、HD(ハイディフニション(high-definition):高精細・高画質な解像度)クラスの高品位な映像を見ることが可能な環境に変化する。また、映像のみならず、音声に関しても、2chや4chから5.1ch、さらには7.2ch等と音域を拡張することができ、高品位の映像および音声が視聴できる環境となる。
家庭内のあらゆる場所でコンテンツを視聴できることは、各部屋が有線や無線のネットワーク環境で結ばれ、家庭内のネットワークが構築されていることを意味する。家庭内外のネットワーク環境で利用される代表的な通信プロトコルは、IP(Internet Protocol)である。また、このIPプロトコルをベースにして、データの伝送の信頼性を確保する上位のプロトコルの1つがTCP(Transmission Control Protocol)である。このTCPによって、通信のコネクションの多重化、転送エラーの検出と訂正、順序制御、およびフロー制御が行なわれる。また、IPの上位プロトコルとして、さらにUDP(User Datagram Protocol)も利用されている。UDPは、コネクションの多重化、転送エラーの検出は行なうが(オプション)、TCPに比べて信頼性のないコネクションレス型のプロトコルである。
実際にデータを伝送するためには、TCPあるいはUDPよりもさらに上位のプロトコルが必要になる。TCPの上位プロトコルは、インターネット上のWWWのデータ等を伝送するHTTP(HyperText Transfer Protocol)である。一方、UDPの上位プロトコルは、映像や音声をリアルタイムに伝送するRTP(Real-time Transport Protocol)である。
これらのプロトコルを基本的なネットワークモデルとして図21に示す。104は、物理層およびデータリンク層に属する、有線/無線のインターフェース規格やEthernet(登録商標)等を示す。103は、ネットワーク層に属するIPを示している。102は、トランスポート層に属するTCPを示している。106は、同じくトランスポート層に属するUDPを示している。101は、アプリケーション層に属するHTTPを示している。105は、同じくアプリケーション層に属するRTPを示している。アプリケーション層の上位には、ユーザAPI(アプリケーションインターフェース)100が規定されている。送信装置は、これらの規定に従い、データを予め定められたプロトコルに従って、ソケットインターフェースで送信する。一方、受信装置は、そのプロトコルに従ってデータを受信する。これにより、送受信装置間でデータ通信が行なわれる。
ネットワーク環境の向上によって、高品位のコンテンツを送受信できるようになったが、デジタルデータは、アナログデータに比べ劣化が無いため、コンテンツの著作権を保護することが極めて重要になる。このための著作権保護技術として、DTLA(米 Digital Transmission Licensing)社によるコピー・プロテクション技術が知られている。これは、同社からライセンスを受けた装置に対して、著作権保護技術を適用し、違法な装置ではコンテンツの再生や複製はできない仕組みになっている。この技術を利用したIEEE1394のインターフェースを持つデジタル装置が製品化されている。製品化された装置間では、互いに認証をしてデジタルデータの伝送路上で暗号が施される。最近、DTLAによって、IEEE1394上ではなく、IPプロトコル上にDTCP(Digital Transmission Content Protection)技術を搭載させる仕様も公開された。
以下、DTCP技術の概要について説明する。第1ステップで、著作権保護が必要なコンテンツを伝送する送信機器と受信機器との間で機器の相互認証を行なう。第2のステップで、送信機器と受信機器との間でコンテンツを伝送する際に存在する唯一の共通鍵の計算を行なう。第3ステップで、その共通鍵とコンテンツのコピー制限情報と暗号化キー切り替え情報との3つを用いて、コンテンツに暗号化を施すための暗号化キーを作成し、コンテンツに暗号化を施して伝送する。なお、第1ステップでの機器の相互認証にはDTLAより配布された機器情報が必要とされる。
IPプロトコル上のコンテンツの暗号化方式は、CBC(Cipher Block Chaining)モードが採用されている。これは、AES−128bitのブロック型暗号化方式の強度を高めるためである。UDP/RTP(TCPプロトコルとHTTPプロトコルの併用を意味する。以下、同様。)、およびTCP/HTTP(UDPプロトコルとRTPプロトコルの併用を意味する。以下、同様。)でデータを伝送する場合のパケットのフォーマットを図22に示す。
UDP/RTPプロトコルでコンテンツデータ1500を伝送する場合、まず、コンテンツデータ1500を所定単位のブロックに分割する。次に、各分割ブロックに対して、暗号処理を施したPCP1502Aを生成する。さらに、各PCP1502AにRTPヘッダ1501を付加する。そして、RTPヘッダ1501が付加されたPCP1502Aを順次、伝送する。
このように、UDP/RTPプロトコルでコンテンツデータを伝送する際には、複数のPCP1502Aが生成されることになる。PCP1502Aには、暗号化データであるEncrypted Data1506の他に、データの暗号鍵に必要となる情報EMI1503、NC1504、およびLEN1505が付加されている。EMI1503は、コンテンツの著作権情報を示すビットデータであり、NC1504は、鍵の更新のタイミングを示すデータであり、LEN1505は、データサイズを示すデータである(非特許文献1)。
TCP/HTTPプロトコルでコンテンツデータ1500を伝送する場合、まず、コンテンツデータ1500を分割せずにコンテンツデータ全体に暗号処理をしてPCP1502Bを作成する。次に、PCP1502BにHTTPヘッダ1507を付加する。そして、HTTPヘッダ1507が付加されたPCP1502Bを伝送する。
図23は、CBCモードによる暗号化の仕組みを示す図である(非特許文献2)。図23には、初期化ベクタ値1601、平文1602、XOR演算子1605、AES−128暗号化ブロック1603、AES−128復号化ブロック1606、および暗号文1604が示されている。図23(A)は暗号化時のCBCモードである。図23(B)は、復号化時のCBCモードである。
CBCモードでは、暗号化する平文Nと、前回、暗号化された暗号文N−1とについてXOR1605演算し、その演算結果にAES−128暗号化ブロック1603による暗号化を施すことにより、暗号文Nを生成する。なお、最初の平文1に対応する1つ前の暗号文のブロックは存在しないので、平文1に対しては、初期ベクタ値1601を与えてXOR1605演算する。復号の際には、復号化する暗号文NにAES−128復号化ブロック1606による復号化処理をし、その処理結果と暗号文N−1とについてXOR1605演算して平文Nを求める。よって、CBCモードとは、暗号化、復号化の結果が次段処理に伝播していく処理である。そのため、暗号化強度が高い。
特開2003−198638号公報(特許文献1)には、外部ネットワーク網である外部公衆回線網と、内部ネットワーク網であるIP網との間でプロトコル変換することが示されている。
また、特開2004−328706号公報(特許文献2)には、UDP/RTP上でDTCP技術を搭載するための送受信装置の制御方法とデータフォーマットとが記載されている。
特開2003−198638号公報
特開2004−328706号公報
DTCP Volume 1 Supplement E Mapping DTCP to IP, Version 1.0 (Informational Version)
NIST Special Publication 800-38A 2001 Edition "Recommendation for Block Cipher Modes of Operation" Methods and Techniques Morris Dworkin
家庭の多くでは有線と無線とが組み合わせられてネットワークが形成されているが、各々で伝送レートの帯域が制限されているため、伝送効率の観点からすると、データを伝送する帯域を考慮してデータを伝送する必要がある。特に、家庭内でネットワーク接続される機器の数が増加するに従い、制限された帯域を有効に活用していく必要が生じる。すなわち、帯域の有効活用という問題がある。
また、有線の場合は、伝送するデータのエラーやロストは発生し難いが、無線の場合は、通信の状態によってデータのエラーやロストが発生し易い。そのため、こられの通信媒体の特性を考慮してデータ伝送を行なう必要がある。すなわち、通信媒体の特性を活かしたデータ伝送という問題がある。一般的には、有線の場合には、TCP/HTTPを利用し、無線の場合にはUDP/RTPを利用してデータを伝送することが多い。
上述のように家庭内では複数の機器がネットワークに接続されている場合が多く、コンテンツを伝送する送信装置と受信装置の間には中継装置が存在する。家庭内でのネットワーク上で著作権保護技術が必要なコンテンツを伝送する場合は、上述のようなDTCP技術を利用する。DTCP技術のように伝送するコンテンツに著作権保護技術が必要な場合には、中継装置毎に機器情報を搭載させることや中継装置で暗号化コンテンツを復号化して、再度暗号化を行なう。このため、特許文献1に開示される構成では、伝送上のコンテンツを受信装置で再生する時の遅延が発生することや暗号化を復号させるためのバッファが必要になる。
また、特許文献2に開示される構成では、データのプロトコルを伝送経路等に応じて変換することはできない。よって、送信装置と中継装置、中継装置と受信装置の間のプロトコルは同一にする必要がある。また、特許文献2には、コンテンツを伝送するプロトコルの指定方法について、具体的な開示がない。
また、DTCPは、end−end端末間で機器の認証、暗号化方法を決定し、Source Device側からSink Device側へ、暗号化されたコンテンツを伝送する技術に過ぎず、コンテンツデータ自体を変換するものではない。そのため、伝送経路の途中に無線等のロストが発生しやすい通信媒体が介在しているにも関わらず、DTCPによりHTTPが選択された場合には、再送が発生し、伝送効率が悪くなる。一方、RTPは、HTTPに比べ、プロトコル自体の伝送効率が悪い。
このように、end−end端末間で適当な伝送のプロトコルを決めたとしても、経路の途中で通信媒体が変われば、その媒体では決められたプロトコルは必ずしも最適でないことになり得る。また中継装置でプロトコルを変える場合は複雑な処理、たとえば暗号の複合化と再暗号化とを行なう必要がある。ところが、従来は、通信経路等の状況を考慮してプロトコルを変更する装置は存在しなかった。
本発明は、係る実情に鑑みて考え出されたものであり、その目的は、ネットワーク上の伝送帯域、ネットワークに接続している機器の情報、伝送媒体の状況に応じてデータを伝送可能な送信装置および中継装置を提供することを目的とする。
上記目的を達成するために、本発明のある局面に従うと、受信装置へコンテンツデータを伝送するプロトコルを複数備えた送信装置であって、コンテンツデータを伝送するときに、受信装置の装置情報に基づいて伝送プロトコルを選択するプロトコル選択手段を備えることを特徴とする。
また、本発明の他の局面に従うと、前記装置情報とは、表示機能、および録画機能の有無を示す情報であることを特徴とする。
また、本発明の他の局面に従うと、受信装置へコンテンツデータを伝送するプロトコルを複数備えた送信装置であって、コンテンツデータを伝送するときに、コンテンツデータのコピー制限情報に基づいて伝送プロトコルを選択するプロトコル選択手段を備えることを特徴とする。
また、本発明の他の局面に従うと、受信装置へコンテンツデータを伝送するプロトコルを複数備えた送信装置であって、コンテンツデータを伝送するときに、受信装置の利用方法を示す情報に基づいて伝送プロトコルを選択するプロトコル選択手段を備えることを特徴とする。
また、本発明の他の局面に従うと、前記プロトコル選択手段は、RTPプロトコルとHTTPプロトコルとのうちから伝送プロトコルを選択することを特徴とする。
また、本発明の他の局面に従うと、前記コンテンツデータの種類とは、ストリーム系、および静止系であることを特徴とする。
また、本発明の他の局面に従うと、送信装置と受信装置との間で伝送されるデータを中継する中継装置であって、コンテンツデータを伝送するときの伝送プロトコルを選択するプロトコル選択手段と、前記送信装置から入力されたコンテンツデータの伝送プロトコルを前記プロトコル選択手段において選択された伝送プロトコルに変換するプロトコル変換手段と、該プロトコル変換手段で変換されたコンテンツデータを前記受信装置へ出力する出力手段とを備えることを特徴とする。
また、本発明の他の局面に従うと、前記送信装置から入力されたデータを記憶する記憶手段と、該記憶手段に蓄積されたデータが、前記プロトコル選択手段により選択された伝送プロトコルで規定されるパケットのデータ長に達したか否かを判定するデータ長判定手段と、該データ長判定手段がデータ長に達したと判定したときに、前記記憶手段に蓄積されたデータから出力パケットを生成する出力パケット生成手段とを含むことを特徴とする。
また、本発明の他の局面に従うと、前記送信装置から入力されたデータおよび該データの入力タイミングを記憶する記憶手段と、前記送信装置からデータが入力されてから所定時間が経過したか否かを判定する時間判定手段と、該時間判定手段が前記所定時間を経過したと判定したときに、前記記憶手段に蓄積されたデータから出力パケットを生成する出力パケット生成手段とを含むことを特徴とする。
また、本発明の他の局面に従うと、送信装置と受信装置との間で伝送されるデータを中継する中継装置であって、所定の暗号化方式で暗号化された暗号化パケットヘッダと暗号化データとを含む、前記送信装置から入力された第1のプロトコルのパケットデータを、第2のプロトコルのパケットデータに変換するプロトコル変換手段を備え、該プロトコル変換手段は、前記第2のパケットデータのヘッダに、拡張ビット、および先頭フラグとパディングフラグとパディング長とを含む拡張ヘッダを付加し、前記第2のパケット内のデータの先頭には、前記第1のパケット内のデータと長さのみ異なる同じ暗号化ヘッダを付加し、前記第1のパケット内のデータを細分化して、第2のパケット内のデータに分けて搭載することを特徴とする。
また、本発明の他の局面に従うと、送信装置と受信装置との間で伝送されるデータを中継する中継装置であって、所定の暗号化方式で暗号化された暗号化パケットヘッダと暗号化データとを含む、前記送信装置から入力された第1のプロトコルのパケットデータを、第2のプロトコルのパケットデータに変換するプロトコル変換手段を備え、該プロトコル変換手段は、前記第2のパケットデータのヘッダに、拡張ビット、および変換フラグと変換個数と変換個数に対応する変換ポインタとを含む拡張ヘッダを付加し、前記第2のパケット内のデータの先頭には、前記第1のパケット内のデータと長さのみ異なる同じ暗号化ヘッダを付加し、前記第1のパケット内のデータを複数集めて、前記第2のパケット内のデータにすることを特徴とする。
本発明によれば、伝送帯域、ネットワークに接続している機器の情報、伝送媒体の状況に応じて、最適な通信プロトコルを自動的に選択することが可能となる。
以下、図面を参照しつつ、本発明の実施の形態について説明する。著作権を保護する必要のあるコンテンツデータを送受信する際に利用可能な、様々な著作権保護技術が開発されている。たとえば、DTCP等では、送信装置、受信装置のそれぞれが所持する固有の認証子情報を基にして装置間で相互認証をし、共通鍵を生成する。その共通鍵を利用してコンテンツを暗号化するための暗号鍵を生成する。
また、地上波デジタル放送やBSデジタル放送等は、登録したB−CASカードを受信用のチューナに挿入することにより、受信が可能になる。
本発明の実施形態では上述の公知の装置認証についての説明を省略する。また、以下の説明では、同一の部品および構成要素には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰返さない。
図1は、家庭内のホームネットワークと外部とのネットワーク構成を示す図である。ホームネットワーク201は、光ファイバー等の専用ケーブルやISDN、ADSLにより、インターネット202に接続されている。ホームネットワーク201には、家庭内コンテンツサーバ204を含む複数種類の通信装置が配置されている。
家庭内コンテンツサーバ204は、インターネット202経由で、外部のコンテンツ送信装置203にアクセス可能である。コンテンツ送信装置203は、コンテンツプロバイダ等のコンテンツ配信業者によって管理される装置である。コンテンツ送信装置203から家庭内コンテンツサーバ204へは、様々なコンテンツデータが送信される。家庭内コンテンツサーバ204は、たとえば、コンテンツの著作権情報に基づいて、受信したコンテンツデータを家庭内コンテンツサーバ204自身に保存するか、受信したコンテンツデータを中継してホームネットワーク201内の他の通信装置に送信するかを決定する。
他のコンテンツデータの一例となる地上波デジタル放送やBSデジタル放送は、地上・衛星波205によって送信される。これらのコンテンツデータは、図示しないアンテナを介してチューナ装置206で受信された後、たとえば、家庭内コンテンツサーバ204に保存される。
なお、家庭内コンテンツサーバ204にチューナ装置206を内蔵させてもよい。また、チューナ装置206により受信されたコンテンツデータを家庭内コンテンツサーバ204に保存することなく、家庭内コンテンツサーバ204を中継装置として機能させて、ホームネットワーク201内の他の受信装置にコンテンツデータを送信してもよい。他の受信装置は、たとえば、デジタルテレビに代表されるAVコンテンツ等を視聴するための視聴装置である。
次に、ホームネットワーク201内の機器構成について詳細に説明する。家庭内コンテンツサーバ204は、ホームネットワーク201外から提供されるコンテンツを受信する装置である。家庭内コンテンツサーバ204は、受信したコンテンツデータを保存可能な記憶部を備える。また、家庭内コンテンツサーバ204は、受信したコンテンツデータ、あるいは保存しているコンテンツデータを他の受信装置に送信する機能を備える。
家庭内コンテンツサーバ204は、コンテンツ中継装置211、コンテンツ受信保存装置210、およびコンテンツ受信装置207Aと通信可能である。コンテンツ受信装置207Aは、家庭内コンテンツサーバ204と無線接続されている。コンテンツ受信保存装置210は、家庭内コンテンツサーバ204と無線および有線のいずれによっても接続可能に構成されている。コンテンツ受信装置207Aは、たとえば、ステレオ、モニタ装置等、コンテンツを視聴するための視聴装置である。コンテンツ受信装置207B、207Cも同様である。一方、コンテンツ受信保存装置210は、たとえば、記憶部の一例となるデジタルハードディスクと、視聴装置の一例となるデジタルテレビとが一体化した装置である。
コンテンツ中継装置211は、家庭内コンテンツサーバ204と有線接続されている。コンテンツ中継装置211は、受信したコンテンツデータを他の装置に中継して送信する機能を備えた装置である。
コンテンツ中継装置211は、有線接続のためのインタフェースと無線接続のためのインタフェースとを備える。コンテンツ中継装置211には、コンテンツ受信装置207Bと、コンテンツ受信装置208と、コンテンツ保存装置209とが接続されている。
コンテンツ受信装置207Bは無線接続のためのインタフェースを備える装置であり、コンテンツ受信装置208およびコンテンツ保存装置209は有線接続のためのインタフェースを備える装置である。コンテンツ保存装置209は、たとえば、デジタルハードディスクである。コンテンツ保存装置209は、さらに無線接続のためのインタフェースを備え、このインタフェースによって、コンテンツ受信装置207Cと無線接続されている。
ホームネットワーク201を構成する受信装置や保存装置は、家庭内の複数の部屋に分散して配置されている。外部から受信したコンテンツデータをホームネットワーク201内の所望の装置へ送信することにより、家庭内の所望の部屋で住人がコンテンツを視聴することが可能になる。
ホームネットワーク201を構成するコンテンツ保存装置209あるいはコンテンツ受信保存装置210は、他の装置との関係において、自らが記憶しているコンテンツを送信する送信装置にも、また、他の装置からコンテンツを受信する受信装置にも成り得る。図2は、コンテンツを送受信する状況から定義される、送信装置A、中継装置B、および受信装置Cを示す図である。次に、図2に定義される送信装置Aおよび中継装置Bの構成について説明する。
図3は、図2に示される送信装置Aの構成を示すブロック図である。送信装置Aは、ユーザインターフェイス部305を備える装置管理部313と、ネットワーク管理部306と、ネットワークパケット処理部309と、イーサネット(登録商標) (Ethernet(登録商標))等の接続のための有線ネットワークインターフェイス部307と、無線ネットワークインターフェイス部308と、コンテンツデータを記憶するハードディスク装置302と、コンテンツデータの入出力を制御するコンテンツデータ入出力部301とを備える。
送信装置Aが、図1に示されるコンテンツ送信装置203である場合には、さらに、コンテンツデータそのものを生成するコンテンツ生成装置303を備える。この場合、コンテンツデータ入出力部301は、コンテンツ生成装置303から入力されるコンテンツデータの著作権情報をネットワーク管理部306へ通知する。また、送信装置Aが、図1に示されるコンテンツ受信保存装置210である場合には、コンテンツデータを視聴するためのディスプレイやスピーカ等に対してコンテンツを視聴可能に出力する出力装置304をさらに備える。
装置管理部313は、システムのネットワークに関する制御を行なう。装置管理部313は、コンテンツデータを送信する場合、ユーザインターフェース部305からネットワーク管理部306にコンテンツデータを送信する命令を送る。なお、このときにユーザインターフェース部305からコンテンツデータを送信するときのプロトコルを設定する情報を入力してもよい。
ネットワーク管理部306には、プロトコルを選択する際の基準となる複数種類の基準情報が入力される。1つ目は現在、設定されているプロトコルの種類を示すプロトコル設定情報である。この情報は、ユーザインターフェイス部305から入力される。2つ目は、有線インターフェイスおよび無線インターフェイスの動作可否を示すネットワークインターフェイス情報である。この情報は、有線ネットワークインターフェース部307、および無線ネットワークインターフェース部308から入力される。3つ目は、送信するコンテンツデータの著作権情報である。4つ目は、コンテンツデータを受信する受信装置の装置情報である。この情報は、ネットワークパケット処理部309から入力される。5つ目は、受信装置の利用方法を示す利用情報である。
ネットワーク管理部306には、入力される基準情報に関連する情報テーブルが記憶されている(図4〜図7参照)。ネットワーク管理部306は、入力された情報と、記憶している情報テーブルとに基づいて、コンテンツデータを送信するプロトコルを決定する。プロトコルの決定手法については、後述する。ネットワーク管理部306は、決定したプロトコルをネットワークパケット処理部309に通知する。
ネットワークパケット処理部309は、プロトコル選択部314と、HTTP/RTP処理部310と、TCP/UDP処理部311と、フィルタリング部312とを備える。
ネットワークパケット処理部309には、送信対象のコンテンツデータが入力される。さらに、ネットワークパケット処理部309には、コンテンツデータ以外の制御用データが装置管理部313から入力される。プロトコル選択部314は、ネットワーク管理部306から通知されたプロトコルに基づいて、コンテンツデータを送信するプロトコルを選択する。HTTP/RTP処理部310は、コンテンツデータをHTTPプロトコルまたはRTPプロトコルで規定されているパケットフォーマットに変換する機能を備える。TCP/UDP処理部311は、HTTP/RTP処理部310で処理されたデータを、さらに、TCPプロトコルまたはUDPプロトコルで規定されているパケットフォーマットに変換する機能を備える。ネットワークパケット処理部309は、プロトコル選択部314により選択されたプロトコルに従い、コンテンツデータをHTTP/RTP処理部310およびTCP/UDP処理部311によりパケット化する。なお、通信のための制御データについても、コンテンツデータと同様にパケットデータに変換される。
パケット化されたデータは、順次、有線ネットワークインターフェイス部307または無線ネットワークインターフェイス部308、あるいは双方から送信される。なお、本実施の形態では、選択可能なプロトコルとして、2つのプロトコルしか例示していないが、他のネットワークプロトコルをさらに選択肢として設けてもよい。
コンテンツデータやそれ以外の制御データを有線ネットワークインターフェース部307または無線ネットワークインターフェース部308を介して受信した場合は、フィルタリング部312が受信データを構成するパケットを解析する。そして、その解析結果が装置管理部313に通知される。受信データがコンテンツデータのときには、そのデータがコンテンツ入出力部301へ伝送される。受信データが制御データのときには、そのデータが装置管理部313へ伝送される。
装置管理部313は、受信したコンテンツデータをハードディスク装置307に保存するか、コンテンツ出力装置304へ出力するかを示す指令情報をネットワーク管理部306に出力する。ネットワーク管理部306は、その指令をコンテンツデータ入出力部301へ通知する。
図4〜図7は、ネットワーク管理部306が記憶している情報テーブルを示す図である。ネットワーク管理部306は、以下に説明する図4〜図7のいずれかの情報テーブルを用いてプロトコルを選択する。なお、いずれの情報テーブルを優先的に用いてプロトコル選択してもよい。また、図4〜図7のいずれか1つの情報テーブルのみをネットワーク管理部306に記憶させ、その情報テーブルのみに基づいてプロトコル選択してもよい。あるいは、図4〜図7のうちの、いずれか2以上の情報テーブルをネットワーク管理部306に記憶させ、その情報テーブルに基づいてプロトコル選択してもよい。
図4は、装置情報に基づいてプロトコルを設定するために用いる情報テーブルを示す図である。装置情報は、コンテンツデータを送信する対象となる装置が、デジタルテレビ、デジタルハードディスク、デジタルテレビとハードディスクが一体化した装置、および中継装置のいずれであるかを示す情報である。図4に示される表示機能および録画機能欄の「OK」は、機能有を意味し、「NO」は、機能無を意味する。中継装置を除いて、それぞれの装置は録画機能または表示機能を備える。
ネットワーク管理部306は、入力された装置情報と図4に示される情報テーブルとに基づいてプロトコルを選択する。たとえば、装置情報が「デジタルテレビ」のときには、リアルタイムでのストリームコンテンツの視聴に適したUDP/RTPが選択される。一方、装置情報が「デジタルハードディスク」のときには、録画の際のデータのロストがないTCP/HTTPが選択される。
デジタルテレビとデジタルハードディスクとが一体型された装置の場合には、装置の使用目的に応じたプロトコルが選択される。表示機能のみが利用される場合には、UDP/RTPが選択される。一方、デジタルハードディスクのような録画機能のみが利用される場合には、TCP/HTTPが選択される。両方を同じネットワークインターフェースで利用する場合には、TCP/HTTPプロトコルが選択される。
中継装置の場合には、図5〜7に示される情報テーブルが参照されて、伝送媒体や、コンテンツの種類、コンテンツの著作権情報、利用情報に依存したプロトコルが選択される。
図5は、ネットワークインターフェイス情報に基づいてプロトコルを設定するために用いる情報テーブルを示す図である。この情報テーブルによれば、有線の場合も無線の場合も、コンテンツの種類が静止系のときには、TCP/HTTPが選択される。一方、コンテンツの種類がストリーム系の場合には、また、回線の状態に応じてTCP/HTTPまたはUDP/RTPが選択される。
ネットワークインターフェースが有線であり、かつ、コンテンツの種類がストリーム系の場合には、その回線の使用可能帯域比率に応じて、プロトコルが選択される。すなわち、使用可能帯域比率が0.8以上のときには、TCP/HTTPが選択され、0.8未満のときにはUDP/RTPが選択される。使用可能帯域比率は、インターフェイスにおいて、コンテンツを伝送できる伝送レートの割合を比率化した通信比率である。たとえば、最大の伝送帯域が100Mbpsの回線の伝送レートが通信状況により80Mbpsに変化した場合の通信比率は、以下の式で算出することにより、0.8となる。
通信比率(使用可能帯域比率) =通信のために利用できる伝送レート(bps)/ネットワークインターフェースの利用可能な最大の伝送レート(bps)
ネットワークインターフェースが無線であり、かつ、コンテンツの種類がストリーム系の場合には、データのロストが発生するか否かによって、以下のようにプロトコルが選択される。
ネットワークインターフェースが無線であり、かつ、コンテンツの種類がストリーム系の場合には、データのロストが発生するか否かによって、以下のようにプロトコルが選択される。
まず、データのロストが発生する場合には、UDP/RTPが選択される。これに対して、データのロストが発生しない場合には、無線回線の使用可能帯域比率に応じてプロトコルが選択される。使用可能帯域比率が0.8以上のときには、TCP/HTTPが選択され、0.8未満のときにはUDP/RTPが選択される。
図6は、著作権情報に基づいてプロトコルを設定するために用いる情報テーブルを示す図である。本実施の形態では、著作権情報は、コンテンツのコピー制限の回数である。
Copy Neverの場合には、ストリーム系として、UDP/RTPが選択される。Copy One Generationの場合には、受信する装置で保存する場合もあるので、TCP/HTTPが選択される。Move、NO more copiesの場合には、UDP/RTPプロトコルが選択される。Copy Freeの場合にはTCP/HTTPプロトコルが選択される。
図7は、利用情報に基づいてプロトコルを設定するために用いる情報テーブルを示す図である。受信装置がデジタルテレビの場合には、ユーザの利用方法としては視聴するのみであるのでPlay OnlyとしてデフォルトのプロトコルはUDP/RTPで設定する。受信装置がハードディスク装置の場合には、ユーザの利用方法はCopyやMoveのみであるためデフォルトのプロトコルはTCP/HTTPで設定する。または、受信装置がレコーダ機能を持ったハードディスク装置や、コピー機能を持ったデジタルテレビ等の一体型の場合には、Play and CopyとしてデフォルトのプロトコルはTCP/HTTPで設定する。こられのデフォルトの設定や、これらの情報による重み付けは、一例であって、本発明はこれに限定されるものではない。
図8および図9は、プロトコルを決定する処理の手順を示すフローチャートである。ここでは、一例として図5に示される情報テーブルを用いた場合の処理手順を説明する。このフローチャートに基づく制御は、図3に示される送信装置Aによって実行される。さらに、この制御は、後述の図12に示される中継装置Bによっても同様に実行される。
まず、送信装置に電源が入り起動している状態(S20)となる。受信装置がネットワークに入り、送信装置へアクセスがあった場合(S21でYES)には、送信装置自身のネットワークインターフェースの情報が入力される(S22)。これは、送信装置が受信装置と無線で接続されているか有線で接続されているかを示す情報である。
無線で接続されている場合には、受信装置から選択されたコンテンツの種類が確認される(S24)。有線の場合にも、同様に、受信装置から選択されたコンテンツの種類が確認される(S25)。そして、それぞれ、コンテンツがストリーム系か静止系であるかが判定される(S26、S27)。具体的には、選択されるコンテンツファイルの拡張子等によって、静止系、ストリーム系のいずれであるかが判定される。たとえば、JPEG、GIF、PNG等であれば、静止系と判定され、MPEG−TSやDV等であればストリーム系と判定される。
ネットワークインターフェイスが無線であり、かつ、要求されるコンテンツが静止系であれば、プロトコルがTCP/HTTPに決定される(S37)。ネットワークインターフェイスが有線であり、かつ、要求されるコンテンツが静止系であれば、プロトコルがTCP/HTTPに決定される(S28)。
ネットワークインターフェイスが有線であり、かつ、要求されるコンテンツがストリーム系の場合には、使用可能帯域比率が計算される(S37)。使用可能帯域比率が0.8未満の場合(S39でYES)には、プロトコルがUDP/RTPに決定される(S40)。使用可能帯域比率が0.8以上の場合(S39でNO)には、プロトコルがTCP/HTTPに決定される(S38)。そして、予め設定された時間T毎(S41)に再度、使用可能帯域比率が計算され、プロトコルを変更するかしないかが繰り返し決定される。
ネットワークインターフェイスが無線であり、かつ、要求されるコンテンツがストリーム系の場合にば、使用可能帯域比率が計算される(S31)。次に、伝送上のロストが発生しているか否かが判断される(S32)。ロストが発生している場合には、S31で計算された使用可能帯域比率の高低に関わらず、プロトコルがUDP/RTPに決定される(S34)。ロストが発生していない場合には、使用可能帯域比率に応じてプロトコルが決定される。具体的には、使用可能帯域比率が0.8未満の場合(S33でYES)には、プロトコルがUDP/RTPに決定される(S34)。使用可能帯域比率が0.8以上の場合(S33でNO)には、プロトコルがTCP/HTTPに決定される(S35)。そして、予め設定された時間T毎(S36)に再度、使用可能帯域比率が計算され、プロトコルを変更するかしないかが繰り返し決定される。
図10は、本実施の形態で使用するUDP/RTPのパケットフォーマットを示す図である。UDP/RTPによるパケット801は、IPヘッダとUDPヘッダ、RTPヘッダ、およびデータから構成される。有線媒体の一例となるイーサネット(登録商標)の場合には、一度に伝送できるMAXサイズがイーサネット(登録商標)のヘッダも付加した上で1500byteと規定されている。イーサネット(登録商標)のヘッダサイズが18byte、IPヘッダサイズが最小20byte、UDPヘッダサイズが8byte、RTPヘッダサイズが最小12byteであるため、データサイズは最大1442byteとなる。
たとえば、MPEG2−TSの1パケットサイズは188byteであるため、MPEG2−TSをコンテンツデータとして送信する場合には、MPEG2−TSを7パケット分入れることが可能になる。UDP/RTPプロトコルは、再送の処理がないので、区切りのネットワークインターフェースの最大伝送サイズに合わせることにより、効率が良くなる。
図11は、本実施の形態で使用されるTCP/HTTPのパケットフォーマットである。TCPヘッダサイズは最小20byte、HTTPヘッダサイズは可変である。また、HTTPヘッダは、メタ情報と呼ばれるテキスト形式である。
TCP/HTTPには、受信できなかったデータを再送する処理が規定されている。このため、データを確実に相手先へ送信可能である。しかしながら、そのためにデータが受信装置に到着するまでに遅延を生じる。イーサネット(登録商標)の場合、IPヘッダ、TCPヘッダ、HTTPヘッダ、およびデータを含めたパケット901のサイズは、イーサネット(登録商標)のヘッダも含めて1500byteになる。また、IEEE802.11bによる無線通信の場合のパケット901のサイズは、2048byteである。有線も無線の場合も、パケットサイズをネットワークインターフェースの最大伝送サイズに設定することにより、転送効率を高めることができる。
図12は、図2に示される中継装置Bの構成を示すブロック図である。中継装置Bの構成は、図3に示される送信装置Aのネットワークパケット処理部309に対して、プロトコル変換処理部700が追加されたものである。
中継装置Bは、コンテンツデータを送信する送信装置と、コンテンツデータを受信する受信装置との間に介在し、コンテンツデータを中継する。中継装置Bは、たとえば、送信装置から送信されたコンテンツデータを有線ネットワークインターフェース307により受信し、ネットワークパケット処理部309に入力した上で、無線ネットワークインターフェース308から受信装置へコンテンツデータを送信する。
中継装置Bは、図3に示される送信装置Aと同じく、図4〜図7に示した情報テーブルを記憶しており、受信装置に対してコンテンツデータを送信するために最適なプロトコルを選択する機能を備える。また、中継装置Bは、図8および図9に示した制御を実行する。中継装置は、選択したプロトコルが、送信装置との間で規定されたプロトコルと異なる場合に、送信装置から受信したデータのプロトコルを受信装置との通信用のプロトコルに変換するプロトコル変換機能を備える。このプロトコル変換機能が、プロトコル変換処理部700によって実現される。
プロトコル変換処理部700は、データのプロトコルをTCP/HTTPとUDP/RTPとの間で相互に変換する。これにより、送信装置と中継装置Bとの間の状況、および中継装置Bと受信装置との状況に応じた適切な伝送プロトコルによってコンテンツデータを送信装置から受信装置へ送信することが可能となる。
たとえば、コンテンツデータがストリーム系であり、送信装置と中継装置Bとの間の通信媒体が使用可能帯域比率の高い(≧0.8)有線媒体で構成される一方、中継装置Bと受信装置との間の通信媒体がロストの多い無線媒体で構成されるような場合を想定する。この場合、図5に示される情報テーブルに従えば、送信装置は、中継装置との間の伝送プロトコルとして、TCP/HTTPを選択する。一方、中継装置Bは、図5に示される情報テーブルに従えば、中継装置Bと受信装置との間の伝送プロトコルとして、UDP/RTPを選択する。中継装置Bのプロトコル変換処理部700は、送信装置から伝送されたコンテンツデータのプロトコルをTCP/HTTPからUDP/RTPに変換する。これにより、送信装置からコンテンツデータを適切なプロトコルで受信する一方、受信装置へ、そのコンテンツデータを適切なプロトコルで送信することができる。
あるいは、受信装置が図1に示されるコンテンツ受信装置207B,208である場合には、送信装置と中継装置Bとの間ではコンテンツデータを通信ロスの少ないTCP/HTTPで確実に受信しつつ、中継装置Bと受信装置との間では、リアルタイム性に優れたUDP/RTPでコンテンツデータを送信することも可能となる。
図13は、プロトコル変換処理部700の構成を示すブロック図である。また、図14は、プロトコル変換処理部700が実行する処理手順を示すフローチャートである。さらに、図15は、バッファメモリ1100へデータが蓄積される様子を示す図である。図4に示されるフローチャートは、HTTPプロトコルのデータをRTPプロトコルへ変換する処理、またはRTPプロトコルのデータをHTTPプロトコルへ変換する処理を示している。
図13に示されるように、プロトコル変換処理部700は、バッファメモリ1100と時間処理部1101と出力制御部1102とを備える。バッファメモリ1100には、HTTP/RTP処理部310を介して送信装置から送信されたコンテンツデータが入力される。このように、バッファメモリ1100には、受信装置へ送信されるコンテンツデータが一旦、蓄積される。蓄積されたコンテンツデータは、所定の出力条件が成立する毎に、出力制御部1102へ転送される。HTTP/RTP処理部310に入力されるデータのプロトコルと、出力するデータのプロトコルとは、上述したプロトコル決定処理によって、設定されている。
以下では、送信装置から受信したHTTPプロトコルのコンテンツデータをRTPプロトコルに変換して受信装置へ送信する場合を例として、プロトコル変換処理部700の動作を説明する。
時間管理処理部1101は、出力時間α_Timeを設定する。α_Timeは、バッファメモリ1100に蓄積されたコンテンツデータの一部を出力制御部1102に出力するために用いるタイマである。β_Lengthは、1パケットあたりの出力データサイズであり、たとえば、データを出力するときのプロトコルで規定されている1パケット長である。β_Lengthは、ネットワーク管理部306が出力するネットワークインターフェースの情報の1つである。出力制御部1101は、α_Time、およびβ_Lengthを閾値としてバッファメモリ1100から出力されたデータをHTTP/RTP処理部へ引き渡す。
RTPプロトコルでデータを出力する場合には、時間が優先になるが、HTTPプロトコルでデータを出力する場合には、RTPプロトコルに比して時間は優先されない。まず、HTTP/RTP処理部310からバッファメモリ1100にデータが入力されると、S1でYESと判定されて、α_Time、β_Lengthが設定される(S2)。次に、入力されたデータとともに、図13に示す時間管理処理部1101で作成されたタイマのデータと、蓄積されているデータの累積サイズを示すデータとがバッファメモリ1100に蓄積される(S4)。図15には、入力データ0〜Nが蓄積されるとともに、時間軸の正方向に、タイマT(0)...T(N)迄データが蓄積され、かつ累積サイズ0〜Nが蓄積される様子が示されている。
次に、現在蓄積されているデータのタイマ値とα_Timeとが比較されて、データ待機時間が設定値(α_Time)を超えているか否かが判断される(S5)。データ待機時間が設定値(α_Time)を超えているときには、データの出力条件が成立していると判断されて以下のS10〜S12の処理が実行される。
まず、累積データのサイズ値とタイマ値とが更新される(S10、S11)。次に、出力制御部1102により、バッファメモリ1100から出力すべきデータサイズ分が抜き出されて、HTTP/RTP処理部301へ出力される。
S5で、データ待機時間が設定値(α_Time)を超えていないと判定されたときには、データ累積サイズとβ_Lengthとが比較される(S6)。データ累積サイズ>β_Lengthであれば、データの出力条件が成立していると判断されて、上記S10〜S12の処理が実行される。
データ累積サイズ>β_Lengthでなければ、次のデータがバッファメモリ1100に入力される(S7)。次に、データがバッファメモリ1100に入力されたときのタイマが算出される(S8)。次に、入力されたデータサイズに応じて、累積データサイズが更新される(S9)。その後、S4に移行する。累積データサイズの具体的更新方法は、データサイズをα_N(N: 0…N)、としたとき、以下のとおりである。
累積サイズ=α_0 + α_1 + α_2
もし、β_Length<累積サイズ であれば、
offset_size = β_Length - 累積サイズ
次からの更新累積サイズは、
更新累積サイズ=offset_size + α_3… + α_N
β_Lengthを越えた時点、それまでに蓄積されたデータサイズを減算し、そのオフセット値(offset_size)を次に入力されるデータサイズに加算する。次に、タイマ値の具体的更新方法は、タイマ値をΓ_N(N: 0…J…N)、α_Time <Γ_jであれば、以下のとおりである。
もし、β_Length<累積サイズ であれば、
offset_size = β_Length - 累積サイズ
次からの更新累積サイズは、
更新累積サイズ=offset_size + α_3… + α_N
β_Lengthを越えた時点、それまでに蓄積されたデータサイズを減算し、そのオフセット値(offset_size)を次に入力されるデータサイズに加算する。次に、タイマ値の具体的更新方法は、タイマ値をΓ_N(N: 0…J…N)、α_Time <Γ_jであれば、以下のとおりである。
更新タイマ値=Γ_j+1(N:J+1……N) -Γ_j
α_Timeを越えた時点、現時点でのタイマをオフセットとして、それ以降のデータに対してオフセット値を減算する。また、例示ではデータ伝送のプロトコルは逐次変換はせずに、プロトコルが一定時間は継続するものと想定している。逐次更新する場合には、プロトコルが変わるたびにS1から処理を行なう。
α_Timeを越えた時点、現時点でのタイマをオフセットとして、それ以降のデータに対してオフセット値を減算する。また、例示ではデータ伝送のプロトコルは逐次変換はせずに、プロトコルが一定時間は継続するものと想定している。逐次更新する場合には、プロトコルが変わるたびにS1から処理を行なう。
また、タイマ値と累積サイズ値とについては、バッファメモリ1100以外に保存してもよい。バッファメモリ1100内のアドレスと、タイマ値および累積サイズ値を格納するメモリのアドレスとを1対1でマッピングさせたテーブルデータを用意し、そのテーブルを参照することで、バッファメモリ1100内に記憶した入力データのタイマ値および累積サイズ値を特定できるようにすることが考えられる。
さらに、設定するβ_Lengthは、伝送効率の点からネットワークインターフェースで伝送できる1パケットあたりのデータサイズが望ましいが、α_Timeの値によって、現時点でのタイマ値がα_Timeを超えた時点で全てのデータが伝送できるとは限らない(β_Lengthの値にもよる)ので、タイマ値は、β_Lengthの値とプロトコルの伝送状態を基にして設定することが望ましい。
図16は、図2に示される送信装置Aの他の構成を示すブロック図である。図16に示される送信装置A´は、図3に示される送信装置Aの構成に対して、装置認証部1000およびコンテンツ暗号化復号化処理部1001が付加されている。コンテンツ暗号化復号化処理部1001は、著作権保護技術が必要なコンテンツデータに対して暗号化、復号化の処理を行なう。装置認証部1000は、コンテンツデータを受信する受信装置との間で装置間の認証を行ない、コンテンツデータの暗号鍵を生成する。
装置による暗号化は、DTCP技術を利用する。送信装置と受信装置との間の相互認証の概略を説明すると、以下のとおりである。
装置間の認証処理は、装置認証部1000は、受信装置との間で認証を行なう。この認証の際に必要な情報は、TCP/UDP処理部311によって、TCPプロトコルでパケット化されている。
装置間の認証によって、送信装置と受信装置が互いに正当なDTCP装置と認証された場合には、送信装置と受信装置との間で、共通鍵が生成される。次に、生成された共通鍵とコンテンツの著作権情報とコンテンツの切り替えタイミング情報とを基にして、コンテンツの暗号鍵が生成される。次に、その暗号鍵でコンテンツデータが暗号化され、送信装置から受信装置へ暗号化データが送信される。受信装置は、伝送パケットに付加されているコンテンツの著作権情報とコンテンツの切り替えタイミング情報を基にして、共通鍵から復号鍵を生成し、暗号化コンテンツデータを復号化する。
図17は、図2に示される中継装置Bの他の構成を示すブロック図である。図17に示される中継装置B´は、図12に示される中継装置Bの構成に対して、著作権保護用コンテンツパケット再構成部1800が付加されている。著作権保護用コンテンツパケット再構成部1800は、ネットワーク管理部306からのプロトコル変換要求によって、ネットワークパケット管理部309から入力プロトコルに応じたパケットデータの暗号化データ部分が入力され、その暗号化データを出力プロトコルのパケットに応じた暗号化データに再構成して、ネットワークパケット管理部309へ出力する。したがって、図17に示される中継装置B´によれば、著作権保護技術が必要なコンテンツデータを中継してプロトコルを最適なものに変換可能である。
次に、図18および図19を参照して、暗号化データのプロトコルを変換する手法について説明する。図18は、HTTPのプロトコルで伝送される暗号化データをRTPのプロトコルで伝送される暗号化データに変換する処理を説明するための図である。
一般的に、HTTPのプロトコルで伝送されるデータは、RTPのプロトコルで伝送されるデータよりもデータ長が大きい。ここでは、HTTPのペイロード部1900が一つのPCPでコンテンツ全体を示すものとする。
PCPヘッダ1902以降の暗号化コンテンツ1903は、送信装置内のAES−128bitのCBCモードによって128bit単位で暗号化の影響が伝播している。そこで、暗号化コンテンツ1903をRTPプロトコルのデータ長に分割する。すなわち、分割単位を、UDP/RTPのプロトコルを利用してネットワークインターフェースで一つのパケットを伝送するときのパケット長とする。
分割した暗号化コンテンツをN個とする。1916は先頭のRTPパケットを示す。1914は2番目のRTPパケットを示す。1915は最後のRTPパケットを示す。RTPパケットのペイロード部分1907は、PCPヘッダ1905と細分化した暗号化コンテンツ1906とで構成される。PCPヘッダ1905は、暗号化コンテンツ1906のデータ長を示すコンテンツ長の情報を含む。PCPヘッダ1905内のデータは、分割前のHTTPのPCPヘッダ1902内のデータと、コンテンツ長のデータを除いて同じである。したがって、たとえば、2番目のRTPパケット1914のPCPヘッダ1905は先頭のRTPパケットと同一である。
先頭のRTPパケット1916中、1908は暗号化コンテンツ1906の最後の128bitデータを示す。2番目のRTPパケット1914の暗号化コンテンツ1917の先頭の128bitデータは、先頭の暗号化コンテンツ1906の最後の128bitデータ1908と同一である。同様に、N番目のRTPパケット1915の暗号化コンテンツの先頭の128bitデータは、N−1番目のRTPパケットの暗号化コンテンツの最後の128bitデータ1913と同一である。このように、各暗号化コンテンツの先頭の128bitデータに冗長性を持たせることで、RTPパケットがロスした場合でもRTPパケット間の暗号化の伝播を保てる。なお、最後のRTPパケット1915では、細分化される暗号化コンテンツがRTPのパケット長よりも少ないために、パディング1910が挿入されている。
DTCPの暗号化であるAES−128bitのCBCモードでは、先頭の暗号化データに対して初期化ベクタ値をXOR処理している。このため、復号化の時には先頭の暗号化データを識別する必要がある。また、先頭の暗号化データ以外は、暗号化コンテンツの最初の128bitを除いて復号化する必要がある。このため、先頭のパケットとそれ以降のパケットとを識別する必要がある。そこで、RTPヘッダ1904内にRTPヘッダ部1904aと別に拡張ビット1911(=1)を設定し、拡張ヘッダ1912を付加する。拡張ヘッダ1912内には、先頭を示す先頭フラグ1920と、パディング処理をしているかどうかを示すパディングフラグ1921とそのパディング長を示す情報1922を入れる。
RTPパケットを受信する受信装置は、このようなRTPヘッダの拡張部分を参照することで、DTCPに規定する復号化方式による復号が可能になる。HTTPプロトコルのパケットデータにされた暗号化データをRTPプロトコルのパケットデータに再構成する場合には、上述のように、HTTPプロトコルのパケットデータの1パケット分を中継装置の一時メモリに保存し、1パケット分を受信してからRTPパケットを再構成してもよい。しかし、この方法だと、メモリのサイズがHTTPプロトコルのパケットデータサイズ分必要になる。そこで、これに代えて、HTTPプロトコルの1パケットデータ分を完全に受信しなくても、RTPプロトコルのパケットデータサイズ分、中継装置で受信できれば、上述と同様にRTPパケットとして出力してもよい。
図19は、RTPのプロトコルで伝送される暗号化データをHTTPのプロトコルで伝送される暗号化データに変換する処理を説明するための図である。DTCP技術を利用してRTPプロトコルで暗号化パケットを伝送する場合、RTPのパケット単位で初期化ベクタ値が異なる場合がある。また、DTCPの暗号化技術であるAES−128bitのCBCモードの暗号化の影響の伝播は、RTPパケット単位であり、パケット間には伝播しない。
図19では、一つのコンテンツデータ全体をRTPパケットのペイロードで細分化し、N個のパケットデータに細分化されたことをRTPパケット2001、2002、2008、2010、2003、2004で示している。
RTP2005には、RTPヘッダ2005の他に、順序(シーケンスナンバー)を示すビットデータ2021が含まれている。ビットデータ2021は、RTPパケットデータを受信する時に、パケットがロスしたかどうかを識別するのに利用することができる。このビットデータ2021は、シーケンシャルにパケット毎に+1ずつインクリメントされる。図22に示したNC1504は、暗号化の切り替わりを示す情報である。このため、PCPヘッダ1(2006)、PCPヘッダ2(2015)、PCPヘッダJ(2009)のNCは同じ値である。また、PCPヘッダJ+(2011)、PCPヘッダN−1(2019)、PCPヘッダN(2020)のNCは同じ値である。
よって、同一のNCである場合には、同一の暗号化キーで暗号化されているとみなすことができる。このため、NCが同一であるRTPパケットの暗号化コンテンツを一つのHTTPのペイロード2016で送信するようにすれば、HTTPパケットのPCPヘッダ内のNCも1つで事足り、余分なデータを付加しなくてよい。これにより、実質的な伝送効率を高めることができる。
ただし、CBCモードでは、RTPパケット2001、2002、2008、2010、2003、2004毎に最初の128bitに対して初期化ベクタ値を用いたXOR処理がなされている。このため、HTTPのペイロード2016を復号化する際には、そのペイロード2016内での暗号文の切換わり位置を特定できる必要がある。よって、HTTPヘッダ2012の内部に、拡張を示すビットデータ2017と拡張ヘッダ2014とを設定する。さらに、拡張ヘッダ2014の内部には、ペイロード内の暗号化コンテンツデータに変換ポイントがあるか否か(2以上の暗号文が格納されているか否か)を示す変換フラグ2030と、その変換する個数(格納されている暗号文の数)を示すデータ2031と、その個数に応じた変換位置(各暗号文の先頭位置)を示す変換ポインタ2032とを含ませる。図中、変換ポインタ1、2…Nから暗号化コンテンツ2013に延びる矢印は、各変換ポインタが示す変換ポイントである。
この方法によれば、HTTPプロトコルで受信した場合の拡張ヘッダ部分を参照することによって、変換ポインタを識別できるため、受信装置側でデータを復号化することが可能になる。CBCのように暗号化の基本単位(AES−128であれば128bitの単位)で暗号化の影響が伝播する場合、上述の方法を適用可能である。
図20は、中継装置を介して送信装置から受信装置へ著作権保護を必要とするコンテンツデータを送信する時の処理の流れを示す図である。ここでは、送信装置がハードディスクレコーダ2100であり、受信装置がデジタルテレビ2102である場合について説明する。
ハードディスクレコーダ2100には、コンテンツデータが保存されている。ハードディスクレコーダ2100と中継装置2101との間はイーサネット(登録商標)2103で接続されている。中継装置2101とデジタルテレビとの間はIEEE802.11b(2104)により無線接続されているものとする。
まず、ハードディスクレコーダ2100とデジタルテレビ2102とが、中継装置2101を介して接続された時点で、デジタルテレビ2102が装置情報をハードディスクレコーダ2100へ送信する(SP3000)。このときの伝送プロトコルはTCP/HTTPプロトコル(2105)とする。SP3000の送信データに対して、応答データであるACKがハードディスクレコーダ2100から返信される(SP3001)。
ハードディスクレコーダ2100も同様にデジタルテレビ2102に対して装置情報を送信する(SP3002)。応答データであるACKがデジタルテレビ2102から返信される(SP3003)。
返信データ(SP3001、SP3003)によって、ハードディスクレコーダ2100およびデジタルテレビ2102は、お互いの装置を理解する。また、中継装置2101は、やり取りされるデータから双方の相手装置を理解する。
さらに、ハードディスクレコーダ2100、デジタルテレビ2102、および中継装置2101は、ハードディスクレコーダ2100と中継装置2101との間の伝送媒体であるイーサネット(登録商標)2103、および中継装置2101とデジタルテレビ2102との間の伝送媒体であるIEEE802.11bを理解する(3013)。
次に、ハードディスクレコーダ2100は、保存しているコンテンツ情報をデジタルテレビ2102へ送る。デジタルテレビ2102は、受信したコンテンツ情報を画面上に表示する(SP3004)。さらに、デジタルテレビ2102は、受信されたコンテンツ情報に対する応答をACKとしてハードディスクレコーダ2100に返信する(SP3005)。
次に、ユーザがリモコン等の操作機器によりデジタルテレビ2102でコンテンツを選択する(SP3006)。これにより、ユーザがコンテンツを選択したことを示す選択情報がデジタルテレビ2102からハードディスクレコーダ2100へ送信される。ハードディスクレコーダ2100は、その選択情報からユーザが選択したコンテンツに著作権保護技術が必要か否か判断する(SP3007)。
デジタルテレビ2102には、選択情報に対するACKデータが返信される。ユーザが選択したコンテンツが著作権保護技術を必要とするコンテンツの場合には、ハードディスクレコーダ2100とデジタルテレビ2102との間でDTCP装置認証3012を行なう(SP3009、SP3010)。中継装置2101は、ハードディスクレコーダ2100とデジタルテレビ2102との間で送受信されるデータを中継する。
次に、プロトコル決定処理により、伝送プロトコルを決定する。ここでは、伝送媒体に基づいたプロトコル決定処理を説明する。ハードディスクレコーダ2100と中継装置2101との間は有線媒体である。そこで、ハードディスクレコーダ2100が伝送プロトコルをTCP/HTTPプロトコルと決定する(SP3011)。中継装置2101とデジタルテレビ2102との間は、無線媒体である。そこで、中継装置2101が伝送プロトコルをUDP/RTPプロトコルと決定する(SP3012)。
次に、ハードディスクレコーダ2100は、選択されたコンテンツを暗号化し、TCP/HTTPプロトコルで中継装置2101へ伝送する。中継装置2101は、受信したデータのプロトコルをHTTPからRTPに変換(SP3017)し、データをUDPプロトコルでデジタルテレビ2102へ伝送する。
SP3013から中継装置方向へ向かう1本の矢印がSP3017の変換を経て3本の矢印に変化している。これは、一つのHTTPパケットが3つのRTPパケットに変換されたことを示している。
中継装置2101は、受信したHTTPパケットに対する応答をACKとしてハードディスクレコーダ2100に返信する(SP3016)。SP3016の場合には、RTPの伝送が終了してからACKを返信しているが、SP3013のHTTPパケットを受信した段階でACKを返信してもよい。
デジタルテレビ2102は、受信したRTPプロトコルの暗号化コンテンツを順次受信(SP3014)し、コンテンツを画面に表示(SP3015)する。コンテンツの伝送終了までは、SP3013からSP3015までの処理ステップを繰り返し行なう。なお、装置情報やコンテンツ情報等のプロトコル決定情報は、たとえば、各プロトコルヘッダの拡張ヘッダに付加する。これにより、各装置の情報、コンテンツの情報を各装置で理解することが可能である。
本発明によれば、伝送帯域、ネットワークに接続している機器の情報、伝送媒体の状況に応じて、最適な通信プロトコルを自動的に選択することが可能であり、また、コンテンツデータ自体に暗号化が施されていても暗号化の仕組みを崩さずにプロトコルの変換が可能である。
さらに、本発明によれば、著作権保護技術が必要なコンテンツを中継装置が存在するネットワーク上に伝送する際に、送信装置と受信装置の間の暗号化コンテンツの復号化を行なわず、著作権保護技術を確保しつつ、ネットワーク上の伝送帯域を有効活用し、ネットワークの接続している機器の情報、伝送媒体の状況により、プロトコルを選択する機能を備えた送信装置、受信装置、中継装置を提供できる。
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
201 ホームネットワーク、203 コンテンツ送信装置、204 家庭内コンテンツサーバ、207A,207B,207C コンテンツ受信装置、208 コンテンツ受信装置、209 コンテンツ保存装置、210 コンテンツ受信保存装置。
Claims (13)
- 受信装置へコンテンツデータを伝送するプロトコルを複数備えた送信装置であって、
コンテンツデータを伝送するときに、受信装置の装置情報に基づいて伝送プロトコルを選択するプロトコル選択手段を備えることを特徴とする、送信装置。 - 前記装置情報とは、表示機能、および録画機能の有無を示す情報であることを特徴とする、請求項1記載の送信装置。
- 受信装置へコンテンツデータを伝送するプロトコルを複数備えた送信装置であって、
コンテンツデータを伝送するときに、コンテンツデータのコピー制限情報に基づいて伝送プロトコルを選択するプロトコル選択手段を備えることを特徴とする、送信装置。 - 受信装置へコンテンツデータを伝送するプロトコルを複数備えた送信装置であって、
コンテンツデータを伝送するときに、受信装置の利用方法を示す情報に基づいて伝送プロトコルを選択するプロトコル選択手段を備えることを特徴とする、送信装置。 - 前記プロトコル選択手段は、RTPプロトコルとHTTPプロトコルとのうちから伝送プロトコルを選択することを特徴とする、請求項1〜請求項4に記載の送信装置。
- 送信装置と受信装置との間で伝送されるデータを中継する中継装置であって、
コンテンツデータを伝送するときの伝送プロトコルを選択するプロトコル選択手段と、
前記送信装置から入力されたコンテンツデータの伝送プロトコルを前記プロトコル選択手段において選択された伝送プロトコルに変換するプロトコル変換手段と、
該プロトコル変換手段で変換されたコンテンツデータを前記受信装置へ出力する出力手段とを備えることを特徴とする、中継装置。 - 前記送信装置から入力されたデータを記憶する記憶手段と、
該記憶手段に蓄積されたデータが、前記プロトコル選択手段により選択された伝送プロトコルで規定されるパケットのデータ長に達したか否かを判定するデータ長判定手段と、
該データ長判定手段がデータ長に達したと判定したときに、前記記憶手段に蓄積されたデータから出力パケットを生成する出力パケット生成手段とを含むことを特徴とする、請求項6に記載の中継装置。 - 前記送信装置から入力されたデータおよび該データの入力タイミングを記憶する記憶手段と、
前記送信装置からデータが入力されてから所定時間が経過したか否かを判定する時間判定手段と、
該時間判定手段が前記所定時間を経過したと判定したときに、前記記憶手段に蓄積されたデータから出力パケットを生成する出力パケット生成手段とを含むことを特徴とする、請求項6に記載の中継装置。 - 送信装置と受信装置との間で伝送されるデータを中継する中継装置であって、
所定の暗号化方式で暗号化された暗号化パケットヘッダと暗号化データとを含む、前記送信装置から入力された第1のプロトコルのパケットデータを、第2のプロトコルのパケットデータに変換するプロトコル変換手段を備え、
該プロトコル変換手段は、
前記第2のパケットデータのヘッダに、拡張ビット、および先頭フラグとパディングフラグとパディング長とを含む拡張ヘッダを付加し、
前記第2のパケット内のデータの先頭には、前記第1のパケット内のデータと長さのみ異なる同じ暗号化ヘッダを付加し、
前記第1のパケット内のデータを細分化して、第2のパケット内のデータに分けて搭載することを特徴とする、中継装置。 - 前記第1のプロトコルはHTTPであり、前記第2のプロトコルはRTPであることを特徴とする、請求項9に記載の中継装置。
- 前記暗号化方式はCBC方式であることを特徴とする、請求項9および請求項10に記載の中継装置。
- 送信装置と受信装置との間で伝送されるデータを中継する中継装置であって、
所定の暗号化方式で暗号化された暗号化パケットヘッダと暗号化データとを含む、前記送信装置から入力された第1のプロトコルのパケットデータを、第2のプロトコルのパケットデータに変換するプロトコル変換手段を備え、
該プロトコル変換手段は、
前記第2のパケットデータのヘッダに、拡張ビット、および変換フラグと変換個数と変換個数に対応する変換ポインタとを含む拡張ヘッダを付加し、
前記第2のパケット内のデータの先頭には、前記第1のパケット内のデータと長さのみ異なる同じ暗号化ヘッダを付加し、前記第1のパケット内のデータを複数集めて、前記第2のパケット内のデータにすることを特徴とする、中継装置。 - 前記第1のプロトコルはRTPであり、前記第2のプロトコルはHTTPであることを特徴とする、請求項12に記載の中継装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005143716A JP2006323455A (ja) | 2005-05-17 | 2005-05-17 | 送信装置、中継装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005143716A JP2006323455A (ja) | 2005-05-17 | 2005-05-17 | 送信装置、中継装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006323455A true JP2006323455A (ja) | 2006-11-30 |
Family
ID=37543113
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005143716A Withdrawn JP2006323455A (ja) | 2005-05-17 | 2005-05-17 | 送信装置、中継装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006323455A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108141395A (zh) * | 2015-06-30 | 2018-06-08 | K4连接股份有限公司 | 包括云和家庭消息队列同步的家庭自动化***及相关方法 |
JP2018528643A (ja) * | 2015-06-30 | 2018-09-27 | ケー4コネクト インコーポレイテッド | クラウド及びホームメッセージキュー同期を含むホームオートメーションシステム、並びに関連方法 |
WO2023170813A1 (ja) * | 2022-03-09 | 2023-09-14 | 株式会社Fuji | データ通信システムおよびデータ通信方法 |
-
2005
- 2005-05-17 JP JP2005143716A patent/JP2006323455A/ja not_active Withdrawn
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108141395A (zh) * | 2015-06-30 | 2018-06-08 | K4连接股份有限公司 | 包括云和家庭消息队列同步的家庭自动化***及相关方法 |
JP2018528643A (ja) * | 2015-06-30 | 2018-09-27 | ケー4コネクト インコーポレイテッド | クラウド及びホームメッセージキュー同期を含むホームオートメーションシステム、並びに関連方法 |
US10826716B2 (en) | 2015-06-30 | 2020-11-03 | K4Connect Inc. | Home automation system including cloud and home message queue synchronization and related methods |
WO2023170813A1 (ja) * | 2022-03-09 | 2023-09-14 | 株式会社Fuji | データ通信システムおよびデータ通信方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6592570B2 (ja) | 送信装置 | |
JP3816689B2 (ja) | 情報配信装置、情報受信装置及び通信方法 | |
JP4233876B2 (ja) | 下流側の要件に応じてセキュアでスケーラブルなパケットを中流側でトランスコーディングする方法およびシステム | |
US9456236B2 (en) | Systems, devices and methods for reducing switching time in a video distribution network | |
JP4907518B2 (ja) | トランスコード可能暗号化コンテンツを生成するための方法及びシステム | |
US7581094B1 (en) | Cryptographic checksums enabling data manipulation and transcoding | |
JP2005532700A (ja) | 安全なスケーラブルデータストリーミング用の記憶デバイス | |
JP2005507577A (ja) | セキュアでスケーラブルなストリーミングのエンコーディングおよびデコーディング方法ならびに関連システム | |
JP2005528631A (ja) | 安全なスケーラブルデータストリーミング用の符号化/暗号化デバイス | |
JP2005531938A (ja) | 安全なスケーラブルデータストリーミング用のパケット化デバイス | |
TW201301779A (zh) | 無線收發器及無線發送方法 | |
JP2006217369A (ja) | 暗号化/復号化装置、通信コントローラ及び電子機器 | |
JP2008270870A (ja) | 通信システム、通信装置及び通信方法、並びにコンピュータ・プログラム | |
WO2010133056A1 (zh) | 一种无线数据传输方法及*** | |
US7886160B2 (en) | Information processing apparatus and method, and computer program | |
JP4254758B2 (ja) | ストリーム暗号化装置、ストリーム暗号化方法、ストリーム復号化装置、ストリーム復号化方法 | |
JP2004328706A (ja) | 送信装置、受信装置、送信制御プログラム及び受信制御プログラム | |
JP2006019975A (ja) | 暗号パケット通信システム、これに備えられる受信装置、送信装置、及びこれらに適用される暗号パケット通信方法、受信方法、送信方法、受信プログラム、送信プログラム | |
KR20040040381A (ko) | 통신 장치 및 통신 방법 | |
JP2006323455A (ja) | 送信装置、中継装置 | |
WO2007043002A2 (en) | Improved security system | |
US10044683B2 (en) | Content transmission and reception device compatible to switch to a new encryption scheme | |
JP2005190350A (ja) | コンテンツ送信装置及びコンテンツ送信方法 | |
JP2005167816A (ja) | 中継装置、中継システム、中継方法及び中継プログラム | |
JP2006128820A (ja) | データ処理装置、データ処理システム及びデータ処理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20080805 |