本発明の好ましい実施例について具体的に説明し、その例は添付の図面に示す。添付の図面を参照した以下の詳細な説明は、本発明の実施例によって具現可能な実施例のみを示すためのものではなく、本発明の好ましい実施例を説明するためのものである。以下の詳細な説明は、本発明に対する徹底した理解を提供するために詳細を含む。しかし、本発明がこのような詳細なしにも実行可能であるということは当業者に自明である。
本発明で使用されるほとんどの用語は、当該分野で広く使用される一般的な用語から選択されるが、一部の用語は出願人によって任意に選択され、その意味は、必要に応じて以下の説明で詳細に記載する。したがって、本発明は、用語の単純な名称や意味ではなく、用語の意図された意味に基づいて理解されなければならない。
本発明は、次世代放送サービスに対する放送信号送信及び受信装置及び方法を提供する。本発明の一実施例に係る次世代放送サービスは、地上波放送サービス、モバイル放送サービス、UHDTVサービスなどを含む。本発明は、一実施例によって、非−MIMO(non−Multiple Input Multiple Output)またはMIMO方式で次世代放送サービスに対する放送信号を処理することができる。本発明の一実施例に係る非−MIMO方式は、MISO(Multiple Input Single Output)方式、SISO(Single Input Single Output)方式などを含むことができる。
図1は、本発明の一実施例に係る受信機プロトコルスタック(receiver protocol stack)を示した図である。
放送網を介したサービスデリバリー(broadcast service delivery)において、2つの方法があり得る。
第一の方法は、MMT(MPEG Media Transport)に基づいて、MPU(Media Processing Units)をMMTP(MMT protocol)を用いて伝送することである。第二の方法は、MPEG DASHに基づいて、DASHセグメントをROUTE(Real time Object delivery over Unidirectional Transport)を用いて伝送することである。
NRTメディア、EPGデータ、及び他のファイルを含む非時間コンテンツは、ROUTEで伝達される。シグナルは、MMTP及び/又はROUTEを介して伝達できる一方、ブートストラップシグナリング情報はSLT(service list table)によって提供される。
ハイブリッドサービスデリバリー(hybrid service delivery)においては、HTTP/TCP/IP上のMPEG DASHがブロードバンド側で用いられる。ISO BMFF(base media file format)のメディアファイルは、デリバリー、ブロードキャスト及びブロードバンドデリバリーに対するメディアエンカプセレーション及び同期化フォーマットとして使用される。ここで、ハイブリッドサービスデリバリーとは、1つまたはそれ以上のプログラムエレメントがブロードバンドパス(path)を介して伝達される場合のことをいえる。
サービスは、3つの機能レイヤを用いて伝達される。これらは、フィジカルレイヤ、デリバリーレイヤ、サービスマネジメントレイヤである。フィジカルレイヤは、シグナル、サービス公知、IPパケットストリームがブロードキャストフィジカルレイヤ及び/又はブロードバンドフィジカルレイヤで伝送されるメカニズムを提供する。デリバリーレイヤは、オブジェクト及びオブジェクトフロートランスポート機能を提供する。これは、ブロードキャストフィジカルレイヤのUDP/IPマルチキャストで動作するMMTPまたはROUTEプロトコルによって可能であり、ブロードバンドフィジカルレイヤのTCP/IPユニキャストでHTTPプロトコルによって可能である。サービスマネジメントレイヤは、下位であるデリバリー及びフィジカルレイヤによって実行されるリニアTVまたはHTML5応用サービスのような全てのサービスを可能にする。
本図において、放送(broadcast)側のプロトコルスタック部分は、SLTとMMTPを介して伝送される部分、ROUTEを介して伝送される部分とに分けられる。
SLTは、UDP、IPレイヤを経てエンカプセレーションされてもよい。ここで、SLTについては後述する。MMTPは、MMTで定義されるMPUフォーマットでフォーマットされたデータ、及びMMTPによるシグナリング情報を伝送することができる。これらデータは、UDP、IPレイヤを経てエンカプセレーションされてもよい。ROUTEは、DASHセグメントの形態でフォーマットされたデータとシグナリング情報、そして、NRTなどのノンタイムド(non timed)データを伝送することができる。これらデータも、UDP、IPレイヤを経てエンカプセレーションされてもよい。実施例によって、UDP、IPレイヤによるプロセシングは一部又は全部省略されてもよい。ここで、図示されたシグナリング情報(signaling)は、サービスに関するシグナリング情報であり得る。
SLTとMMTPを介して伝送される部分、ROUTEを介して伝送される部分は、UDP、IPレイヤで処理された後、リンクレイヤ(Data Link Layer)で再びエンカプセレーションされてもよい。リンクレイヤについては後述する。リンクレイヤで処理された放送データは、フィジカルレイヤでエンコーディング/インターリービングなどの過程を経て放送信号としてマルチキャストされてもよい。
本図において、ブロードバンド(broadband)側のプロトコルスタック部分は、前述したように、HTTPを介して伝送されてもよい。DASHセグメントの形態でフォーマットされたデータとシグナリング情報、NRTなどの情報がHTTPを介して伝送されてもよい。ここで、図示されたシグナリング情報(signaling)は、サービスに関するシグナリング情報であってもよい。このデータは、TCP、IPレイヤを経てプロセシングされた後、リンクレイヤでエンカプセレーションされてもよい。実施例によって、TCP、IP、リンクレイヤの一部又は全部は省略されてもよい。この後、処理されたブロードバンドデータは、フィジカルレイヤで伝送のための処理を経てブロードバンドにユニキャストされてもよい。
サービスは、全体的にユーザに見せるメディアコンポーネントのコレクションであってもよく、コンポーネントは、種々のメディアタイプのものであってもよく、サービスは、連続的または間欠的であってもよく、サービスは、リアルタイムまたは非リアルタイムであってもよく、リアルタイムサービスはTVプログラムのシーケンスで構成されてもよい。
図2は、本発明の一実施例に係るSLTとSLS(service layer signaling)の関係を示した図である。
サービスシグナリングは、サービスディスカバリー及びディスクリプション情報を提供し、2つの機能コンポーネントを含む。これらは、SLTを介したブートストラップシグナリングとSLSである。これらは、ユーザサービスを発見し、獲得するのに必要な情報を示す。SLTは、受信機が、基本サービスリストを作成し、各サービスに対するSLSの発見をブートストラップできるようにする。
SLTは、基本サービス情報の非常に速い獲得を可能にする。SLSは、受信機が、サービスとそのコンテンツコンポーネントを発見し、これに接続できるようにする。SLTとSLSの具体的な内容については後述する。
前述したように、SLTは、UDP/IPを介して伝送され得る。このとき、実施例によって、この伝送において最もロバストな(robust)方法を通じて、SLTに該当するデータが伝達されてもよい。
SLTは、ROUTEプロトコルによって伝達されるSLSに接近するためのアクセス情報を有することができる。すなわち、SLTは、ROUTEプロトコルによるSLSにブートストラッピングすることができる。このSLSは、前述したプロトコルスタックにおいてROUTEの上位レイヤに位置するシグナリング情報であって、ROUTE/UDP/IPを介して伝達され得る。このSLSは、ROUTEセッションに含まれるLCTセッションのうち1つを介して伝達され得る。このSLSを用いて、所望のサービスに該当するサービスコンポーネントに接近することができる。
また、SLTは、MMTPによって伝達されるMMTシグナリングコンポーネントに接近するためのアクセス情報を有することができる。すなわち、SLTは、MMTPによるSLSにブートストラッピングすることができる。このSLSは、MMTで定義するMMTPシグナリングメッセージ(Signaling Message)によって伝達され得る。このSLSを用いて、所望のサービスに該当するストリーミングサービスコンポーネント(MPU)に接近することができる。前述したように、本発明では、NRTサービスコンポーネントは、ROUTEプロトコルを介して伝達され、MMTPによるSLSは、これに接近するための情報も含むことができる。ブロードバンドデリバリーにおいて、SLSはHTTP(S)/TCP/IPで伝達される。
図3は、本発明の一実施例に係るSLTを示した図である。
まず、サービスマネジメント、デリバリー、フィジカルレイヤの各論理的エンティティー間の関係について説明する。
サービスは、2つの基本タイプのうち1つとしてシグナリングされ得る。第一のタイプは、アプリベースのエンハンスメントを有し得るリニアオーディオ/ビデオまたはオーディオのみのサービスである。第二のタイプは、プレゼンテーション及び構成が、サービスの獲得によって実行されるダウンロードアプリケーションによって制御されるサービスである。後者は、アプリベースのサービスと呼ぶこともできる。
サービスのコンテンツコンポーネントを伝達するMMTPセッション及び/又はROUTE/LCTセッションの存在と関連する規則は、次の通りである。
アプリベースのエンハンスメントがないリニアサービスのブロードキャストデリバリーのために、サービスのコンテンツコンポーネントは、(1)1つ以上のROUTE/LCTセッション、または(2)1つ以上のMMTPセッションのうち1つ(両方ともではない)によって伝達され得る。
アプリベースのエンハンスメントがあるリニアサービスのブロードキャストデリバリーのために、サービスのコンテンツコンポーネントは、(1)1つ以上のROUTE/LCTセッション、及び(2)0個以上のMMTPセッションによって伝達され得る。
特定の実施例において、同一のサービスでストリーミングメディアコンポーネントに対するMMTP及びROUTEの両者の使用が許容されないことがある。
アプリベースのサービスのブロードキャストデリバリーのために、サービスのコンテンツコンポーネントは1つ以上のROUTE/LCTセッションによって伝達され得る。
それぞれのROUTEセッションは、サービスを構成するコンテンツコンポーネントを全体的又は部分的に伝達する1つ以上のLCTセッションを含む。ストリーミングサービスデリバリーにおいて、LCTセッションは、オーディオ、ビデオ、またはクローズドキャプションストリームのようなユーザサービスの個別コンポーネントを伝達することができる。ストリーミングメディアは、DASHセグメントとしてフォーマットされる。
それぞれのMMTPセッションは、MMTシグナリングメッセージまたは全体又は一部のコンテンツコンポーネントを伝達する、1つ以上のMMTPパケットフローを含む。MMTPパケットフローは、MMTシグナリングメッセージ、またはMPUとしてフォーマットされたコンポーネントを伝達することができる。
NRTユーザサービスまたはシステムメタデータのデリバリーのために、LCTセッションは、ファイルベースのコンテンツアイテムを伝達する。これらコンテンツファイルは、NRTサービスの連続的(タイムド)又は離散的(ノンタイムド)メディアコンポーネント、またはサービスシグナリングやESGフラグメントのようなメタデータで構成され得る。サービスシグナリングやESGフラグメントのようなシステムメタデータのデリバリーも、MMTPのシグナリングメッセージモードを通じて行われてもよい。
ブロードキャストストリームは、特定の帯域内に集中したキャリア周波数の観点で定義されたRFチャンネルの概念である。それは、[地理的領域、周波数]ペアによって識別される。PLP(physical layer pipe)は、RFチャンネルの一部に該当する。各PLPは、特定のモジュレーション及びコーディングパラメータを有する。それは、属しているブロードキャストストリーム内で唯一のPLPID(PLP identifier)によって識別される。ここで、PLPはDP(data pipe)と呼ぶこともできる。
各サービスは、2つの形態のサービス識別子によって識別される。一方は、SLTで使用され、ブロードキャスト領域内でのみ唯一のコンパックな形態であり、他方は、SLS及びESGで使用される全世界的に唯一の形態である。ROUTEセッションは、ソースIPアドレス、デスティネーションIPアドレス、デスティネーションポートナンバーによって識別される。LCTセッション(それが伝達するサービスコンポーネントと関連する)は、ペアレントROUTEセッションの範囲内で唯一のTSI(transport session identifier)によって識別される。LCTセッションに共通した属性及び個別LCTセッションに唯一の特定の属性は、サービスレイヤシグナリングの一部であるS−TSID(service−based transport session instance description)と呼ばれるROUTEシグナリング構造で与えられる。各LCTセッションは、1つのPLPを介して伝達される。実施例によって、1つのLCTセッションが複数個のPLPを介して伝達されてもよい。ROUTEセッションの互いに異なるLCTセッションは、互いに異なるPLPに含まれてもよく、そうでなくてもよい。ここで、ROUTEセッションは、複数個のPLPを介して伝達されてもよい。S−TSIDに記述された属性は、各LCTセッションに対するTSI値及びPLPID、デリバリーオブジェクト/ファイルに対するディスクリプタ、アプリケーションレイヤFECパラメータを含む。
MMTPセッションは、デスティネーションIPアドレス及びデスティネーションポートナンバーによって識別される。MMTPパケットフロー(それが伝達するサービスコンポーネントと関連する)は、ペアレントMMTPセッションの範囲内で唯一のpacket_idによって識別される。各MMTPパケットフローに共通した属性及びMMTPパケットフローの特定の属性がSLTに与えられる。各MMTPセッションに対する属性は、MMTPセッション内で伝達され得るMMTシグナリングメッセージによって与えられる。MMTPセッションの互いに異なるMMTPパケットフローは、互いに異なるPLPに含まれてもよく、そうでなくてもよい。ここで、MMTPセッションは、複数個のPLPを介して伝達されてもよい。MMTシグナリングメッセージに記述された属性は、各MMTPパケットフローに対してpacket_id値及びPLPIDを含む。ここで、MMTシグナリングメッセージは、MMTで定義された形態であるか、または後述する実施例によって変形が行われた形態であってもよい。
以下、LLS(Low Level Signaling)について説明する。
この機能に専用であるよく知られているアドレス/ポートを有するIPパケットのペイロードに伝達されるシグナリング情報は、LLSと呼ばれる。このIPアドレス及びポートナンバーは、実施例によって異なって設定されてもよい。一実施例において、LLSは、アドレスが224.0.23.60であり、デスティネーションポートが4937/udpであるIPパケットに伝達され得る。LLSは、前述したプロトコルスタック上で、「SLT」で表現された部分に位置し得る。ただし、実施例によって、LLSは、UDP/IPレイヤのプロセシングを経ずに、信号フレーム上の別途の物理チャンネル(dedicated channel)を介して伝送されてもよい。
LLSデータを伝達するUDP/IPパケットは、LLSテーブルという形態でフォーマットすることができる。LLSデータを運搬する毎UDP/IPパケットの最初のバイトは、LLSテーブルの開始であり得る。全てのLLSテーブルの最大の長さは、フィジカルレイヤから伝達され得る最も大きいIPパケットによって65,507バイトに制限される。
LLSテーブルは、LLSテーブルのタイプを識別するLLSテーブルIDフィールド、及びLLSテーブルのバージョンを識別するLLSテーブルバージョンフィールドを含むことができる。LLSテーブルIDフィールドが示す値に応じて、LLSテーブルは、前述したSLTを含むか、またはRRT(Rating Region Table)を含むことができる。RRTは、コンテンツ勧告レーティング(Content Advisory Rating)に関する情報を有することができる。
以下、SLT(Service List Table)について説明する。LLSは、受信機によるサービス獲得のブートストラッピング及び速いチャンネルスキャンを支援するシグナリング情報であり、SLTは、基本サービスリスティングを構築し、SLSのブートストラップディスカバリーを提供するために使用されるシグナリング情報のテーブルであり得る。
SLTの機能は、MPEG−2システムでのPAT(program association table)及びATSCシステムで発見されるFIC(fast information channel)とほぼ同一である。初めてブロードキャストエミッションを経験する受信機にとって、これは、開始される地点である。SLTは、受信機が、チャンネル名、チャンネルナンバーなどでそれが受信できる全てのサービスのリストを構築できるようにする、速いチャンネルスキャンを支援する。また、SLTは、受信機が各サービスに対してSLSを発見できるようにするブートストラップ情報を提供する。ROUTE/DASHで伝達されるサービスに対して、ブートストラップ情報は、SLSを伝達するLCTセッションのデスティネーションIPアドレス及びデスティネーションポートを含む。MMT/MPUで伝達されるサービスに対して、ブートストラップ情報は、SLSを伝達するMMTPセッションのデスティネーションIPアドレス及びデスティネーションポートを含む。
SLTは、ブロードキャストストリームで各サービスに関する次の情報を含むことによって、サービス獲得及び速いチャンネルスキャンを支援する。第一に、SLTは、視聴者にとって有意義であり、上/下の選択またはチャンネルナンバーを介した初期サービス選択を支援できるサービスリストのプレゼンテーションを許容するのに必要な情報を含むことができる。第二に、SLTは、各リスティングされたサービスに対してSLSの位置を見つけるのに必要な情報を含むことができる。すなわち、SLTは、SLSを伝達する位置(location)に対するアクセス情報を含むことができる。
図示された本発明の一実施例に係るSLTは、SLTルートエレメント(root element)を有するXMLドキュメントの形態で表現された。実施例によって、SLTは、バイナリフォーマットまたはXMLドキュメントの形態で表現することができる。
図示されたSLTのSLTルートエレメントは、@bsid、@sltSectionVersion、@sltSectionNumber、@totalSltSectionNumbers、@language、@capabilities、InetSigLoc及び/又はServiceを含むことができる。実施例によって、SLTルートエレメントは、@providerIdをさらに含むこともできる。実施例によって、SLTルートエレメントは、@languageを含まなくてもよい。
Serviceエレメントは、@serviceId、@SLTserviceSeqNumber、@protected、@majorChannelNo、@minorChannelNo、@serviceCategory、@shortServiceName、@hidden、@slsProtocolType、BroadcastSignaling、@slsPlpId、@slsDestinationIpAddress、@slsDestinationUdpPort、@slsSourceIpAddress、@slsMajorProtocolVersion、@SlsMinorProtocolVersion、@serviceLanguage、@broadbandAccessRequired、@capabilities及び/又はInetSigLocを含むことができる。
実施例によって、SLTの属性またはエレメントは追加/変更/削除されてもよい。SLTに含まれる各エレメントも、追加的に別途の属性またはエレメントを有することができ、本実施例に係る属性またはエレメントの一部が省略されてもよい。ここで、@表記されたフィールドは属性(attribute)に該当し、@表記されていないフィールドはエレメント(element)に該当し得る。
@bsidは、全ブロードキャストストリームの識別子である。BSIDの値は、地域的レベルで唯一であり得る。
@providerIdは、このブロードキャストストリームの一部又は全体を使用する放送会社のインデックスである。これは選択的な属性である。それが存在しないということは、このブロードキャストストリームが一つの放送会社によって使用されていることを意味する。@providerIdは図示していない。
@sltSectionVersionは、SLTセクションのバージョンナンバーであり得る。sltSectionVersionは、slt内で伝達される情報に変化が生じると1ずつ増分し得る。それが最大値に到達すると、0にシフトされる。
@sltSectionNumberは、SLTの当該セクションのナンバーであって、1からカウントすることができる。すなわち、当該SLTセクションのセクションナンバーに該当し得る。このフィールドが使用されない場合、デフォルト値1に設定されてもよい。
@totalSltSectionNumbersは、当該セクションが一部であるSLTのセクション(即ち、最大のsltSectionNumberを有するセクション)の総ナンバーであり得る。sltSectionNumberとtotalSltSectionNumbersは共に分割で伝送される場合、SLTの一部の「NのM部分」を示すと見ることができる。すなわち、SLTを伝送するにおいて、分割(fragmentation)を通じた伝送を支援できる。このフィールドが使用されない場合、デフォルト値1に設定されてもよい。フィールドが使用されない場合は、SLTが分割されて伝送されない場合であり得る。
@languageは、当該sltの場合に含まれるサービスの主言語を示すことができる。実施例によって、このフィールド値は、ISOで定義される3−キャラクター言語コード(three character language code)の形態であってもよい。本フィールドは省略されてもよい。
@capabilitiesは、当該sltの場合において全てのサービスに対する内容をデコーディングし、有意義に示すために要求されるケイパビリティを示すことができる。
InetSigLocは、どこでブロードバンドを介して外部サーバーから全ての要求されるタイプのデータを獲得できるかを受信機に知らせるURLを提供することができる。このエレメントは、@urlTypeを下位フィールドとしてさらに含むこともできる。この@urlTypeフィールドの値に応じて、InetSigLocが提供するURLのタイプを指示することができる。実施例によって、@urlTypeフィールド値が0である場合、InetSigLocはシグナリングサーバーのURLを提供することができる。@urlTypeフィールド値が1である場合、InetSigLocはESGサーバーのURLを提供することができる。@urlTypeフィールドが、それ以外の値を有する場合は、後で使用するために残すことができる(reserved for future use)。
Serviceフィールドは、各サービスに関する情報を有するエレメントであって、サービスエントリーに該当し得る。SLTが指示するサービスの数(N)だけServiceエレメントフィールドが存在し得る。以下、Serviceフィールドの下位属性/エレメントについて説明する。
@serviceIdは、当該ブロードキャスト領域の範囲内で当該サービスを唯一に識別する整数であり得る。実施例によって、@serviceIdのスコープ(scope)は変更されてもよい。@SLTserviceSeqNumberは、serviceId属性と同一のサービスIDを有するSLTサービス情報のシーケンスナンバーを示す整数であり得る。SLTserviceSeqNumber値は、各サービスに対して0から始まることができ、当該Serviceエレメントにおいてある属性が変化するたびに1ずつ増分することができる。ServiceIDの特定の値を有する以前のサービスエレメントに比べていかなる属性値も変化しない場合、SLTserviceSeqNumberは増分しないはずである。SLTserviceSeqNumberフィールドは、最大値に到達した後、0にシフトされる。
@protectedは、フラグ情報であって、当該サービスの有意義な再生のための1つまたはそれ以上のコンポーネントが保護された(protected)状態であるかを示すことができる。「1」(真)に設定されると、有意義なプレゼンテーションに必要な1つ以上のコンポーネントが保護される。「0」(偽)に設定されると、当該フラグは、サービスの有意義なプレゼンテーションに必要なコンポーネントが何にも保護されないことを示す。デフォルト値は偽である。
@majorChannelNoは、サービスの「主」チャンネルナンバーを示す整数値である。本フィールドの一実施例は、1から999までの範囲を有することができる。
@minorChannelNoは、サービスの「副」チャンネルナンバーを示す整数値である。本フィールドの一実施例は、1から999までの範囲を有することができる。
@serviceCategoryは、当該サービスのカテゴリを示すことができる。本フィールドが示す意味は、実施例によって変更されてもよい。一実施例によれば、本フィールドの値が1、2、3である場合、それぞれ当該サービスは、リニアA/Vサービス(Linear A/V service)、リニアオーディオサービス(Linear audio only service)、アプリベースのサービス(app−based service)に該当し得る。本フィールドの値が0である場合、定義されていないカテゴリのサービスであり得、本フィールドの値が0、1、2、3以外の他の値を有する場合は、後で使用するために残すことができる(reserved for future use)。@shortServiceNameは、サービスのショートストリングネームであり得る。
@hiddenは、存在し、「真」に設定される場合、ブール値であり得、これは、サービスがテストや独占使用のためのものであり、通常のTV受信機によっては選択されないことを示す。存在しない場合、デフォルト値は「偽」である。
@slsProtocolTypeは、当該サービスによって使用されるSLSのプロトコルのタイプを示す属性であり得る。本フィールドが示す意味は、実施例によって変更されてもよい。一実施例によれば、本フィールドの値が1、2である場合、それぞれ、当該サービスが使用するSLSのプロトコルはROUTE、MMTPであり得る。本フィールドの値が0またはそれ以外の値を有する場合は、後で使用するために残すことができる(reserved for future use)。本フィールドは、@slsProtocolと呼ぶこともできる。
BroadcastSignaling及びその下位属性/エレメントは、放送シグナリングと関連する情報を提供することができる。BroadcastSignalingエレメントが存在しない場合、ペアレントサービスエレメントのチャイルドエレメントであるInetSigLocが存在し得、その属性であるurlTypeはURL_type 0x00(URL to signaling server)を含む。この場合、属性であるurlは、service_idがペアレントサービスエレメントに対するserviced属性に該当するクエリパラメータsvc=<service_id>を支援する。
または、BroadcastSignalingエレメントが存在しない場合、エレメントInetSigLocはsltルートエレメントのチャイルドエレメントとして存在し得、InetSigLocエレメントの属性urlTypeはURL_type 0x00(URL to signaling server)を含む。この場合、URL_type0x00に対する属性urlは、service_idがペアレントサービスエレメントのserviceId属性に該当するクエリパラメータsvc=<service_id>を支援する。
@slsPlpIdは、当該サービスに対してSLSを伝達するPLPのPLP IDを示す整数を表現するストリングであり得る。
@slsDestinationIpAddressは、当該サービスに対してSLSデータを伝達するパケットのdotted−IPv4デスティネーションアドレスを含むストリングであり得る。
@slsDestinationUdpPortは、当該サービスに対してSLSデータを伝達するパケットのポートナンバーを含むストリングであり得る。前述したように、デスティネーションIP/UDP情報によってSLSブートストラッピングを行うことができる。
@slsSourceIpAddressは、当該サービスに対してSLSデータを伝達するパケットのdotted−IPv4ソースアドレスを含むストリングであり得る。
@slsMajorProtocolVersionは、当該サービスに対してSLSを伝達するために使用されるプロトコルの主バージョンナンバーであり得る。デフォルト値は1である。
@SlsMinorProtocolVersionは、当該サービスに対してSLSを伝達するために使用されるプロトコルの副バージョンナンバーであり得る。デフォルト値は0である。
@serviceLanguageは、サービスの主言語を示す3文字言語コードであり得る。本フィールド値の形式は、実施例によって変更されてもよい。
@broadbandccessRequiredは、受信機がサービスの有意義なプレゼンテーションを行うためにブロードバンドアクセスが必要であることを示すブール値であり得る。本フィールドの値がTrueである場合、受信機は、有意義なサービス再生のためにブロードバンドにアクセスしなければならず、これは、サービスのハイブリッドデリバリーのケースに該当し得る。
@capabilitiesは、serviceId属性と同一のサービスIDであって、サービスに対する内容をデコーディングし、有意義に示すために要求されるケイパビリティを示すことができる。
InetSigLocは、使用可能な場合、ブロードバンドを介してシグナリングや公知の情報に接続するためのURLを提供することができる。そのデータタイプは、URLがどこにアクセスするかを示す@urlType属性を追加する全てのURLデータタイプの拡張であり得る。本フィールドの@urlTypeフィールドが意味することは、前述したInetSigLocの@urlTypeフィールドが意味することと同一であり得る。属性URL_type 0x00のInetSigLocエレメントがSLTのエレメントとして存在する場合、それは、シグナリングメタデータに対してHTTP要請を行うために使用され得る。このHTTP POSTメッセージボディーにはサービスタームが含まれてもよい。InetSigLocエレメントがセクションレベルで現れる場合、サービスタームは、要請されたシグナリングメタデータオブジェクトが適用されるサービスを示すために使用される。サービスタームが存在しない場合、当該セクションの全てのサービスに対するシグナリングメタデータオブジェクトが要請される。InetSigLocがサービスレベルで現れる場合、所望のサービスを指定するために必要なサービスタームがない。属性URL_type 0x01のInetSigLocエレメントが提供されると、それは、ブロードバンドを介してESGデータを検索するのに使用することができる。当該エレメントがサービスエレメントのチャイルドエレメントとして現れる場合、URLは、当該サービスに対してデータを検索するのに使用することができる。当該エレメントがSLTエレメントのチャイルドエレメントとして現れる場合、URLは、当該セクションで全てのサービスに対するESGデータを検索するのに使用することができる。
SLTの他の実施例において、SLTの@sltSectionVersion、@sltSectionNumber、@totalSltSectionNumbers及び/又は@languageフィールドは省略されてもよい。
また、前述したInetSigLocフィールドは、@sltInetSigUri及び/又は@sltInetEsgUriフィールドに代替されてもよい。2つのフィールドは、それぞれシグナリングサーバーのURI、ESGサーバーのURI情報を含むことができる。SLTの下位エレメントであるInetSigLocフィールド及びServiceの下位エレメントであるInetSigLocフィールドは、いずれも、前記のような方法で代替されてもよい。
提示されたデフォルト値は、実施例によって変更されてもよい。図示された使用(use)列は各フィールドに関するもので、1は、当該フィールドが必須のフィールドであり、0..1は、当該フィールドがオプショナルフィールドであることを意味し得る。
図4は、本発明の一実施例に係るSLSブートストラッピング及びサービスディスカバリー過程を示した図である。
以下、サービスレイヤシグナリング(SLS、Service Layer Signaling)について説明する。
SLSは、サービス及びそのコンテンツコンポーネントを発見し、獲得するための情報を提供するシグナリングであり得る。
ROUTE/DASHについて、各サービスに対するSLSは、コンポーネントのリスト、どこでそれらを獲得できるのか、サービスの有意義なプレゼンテーションのために要求される受信機の性能のようなサービスの特性を記述する。ROUTE/DASHシステムにおいて、SLSは、USBD(user service bundle description)、S−TSID、DASH MPD(media presentation description)を含む。ここで、USBDまたはUSD(User Service Description)は、SLS XMLフラグメントのうちの1つであって、サービスの具体的な技術的情報を記述するシグナリングハブとしての役割を果たすことができる。このUSBD/USDは、3GPP MBMSで定義されたことよりもさらに拡張されてもよい。USBD/USDの具体的な内容については後述する。
サービスシグナリングは、サービス自体の基本属性、特に、サービスを獲得するために必要な属性に焦点を置く。視聴者のためのサービス及びプログラミングの特徴は、サービスの公知またはESGデータとして現れる。
各サービスに対して別個のサービスシグナリングを有する場合、受信機は、ブロードキャストストリーム内で伝達される全SLSをパーシングすることなく所望のサービスに対する適切なSLSを獲得すればよい。
サービスシグナリングの選択的なブロードバンドデリバリーに対して、SLTは、前述したように、サービスシグナリングファイルが獲得され得るHTTP URLを含むことができる。
LLSは、SLS獲得をブートストラップするのに使用され、その後、SLSは、ROUTEセッションまたはMMTPセッションで伝達されるサービスコンポーネントを獲得するのに使用される。記述された図面は、次のシグナリングシーケンスを示す。受信機は、前述したSLTを獲得し始める。ROUTEセッションで伝達されるservice_idによって識別される各サービスは、PLPID(#1)、ソースIPアドレス(sIP1)、デスティネーションIPアドレス(dIP1)、及びデスティネーションポートナンバー(dPort1)のようなSLSブートストラッピング情報を提供する。MMTPセッションで伝達されるservice_idによって識別される各サービスは、PLPID(#2)、デスティネーションIPアドレス(dIP2)、及びデスティネーションポートナンバー(dPort2)のようなSLSブートストラッピング情報を提供する。
ROUTEを用いたストリーミングサービスデリバリーに対して、受信機は、PLP及びIP/UDP/LCTセッションで伝達されるSLS分割を獲得することができる。反面、MMTPを用いたストリーミングサービスデリバリーに対して、受信機は、PLP及びMMTPセッションで伝達されるSLS分割を獲得することができる。ROUTEを用いたサービスデリバリーに対して、これらSLS分割は、USBD/USD分割、S−TSID分割、MPD分割を含む。それらは一つのサービスと関連がある。USBD/USD分割は、サービスレイヤの特性を記述し、S−TSID分割に対するURIレファレンス及びMPD分割に対するURIレファレンスを提供する。すなわち、USBD/USDは、S−TSIDとMPDをそれぞれ参照することができる。MMTPを用いたサービスデリバリーに対して、USBDは、MMTシグナリングのMMTメッセージを参照し、それのMPテーブルは、サービスに属するアセット(asset)のための位置情報及びパッケージIDの識別を提供する。ここで、Assetとは、マルチメディアデータエンティティーであって、一つのユニークなIDに連合され、一つのマルチメディアプレゼンテーションを生成するのに使用されるデータエンティティーを意味し得る。Assetは、一つのサービスを構成するサービスコンポーネントに該当し得る。MPTメッセージは、MMTのMPテーブルを有するメッセージであり、ここで、MPテーブルは、MMT Assetとコンテンツに関する情報を有する、MMTパッケージテーブル(MMT Package Table)であり得る。具体的な内容は、MMTで定義された通りである。ここで、メディアプレゼンテーションとは、メディアコンテンツのバウンド/アンバウンドされたプレゼンテーションを成立させるデータのコレクションであり得る。
S−TSID分割は、一つのサービスと関連するコンポーネント獲得情報と、当該サービスのコンポーネントに該当するTSI及びMPDで発見されるDASH表現との間のマッピングを提供する。S−TSIDは、TSI及び関連するDASH表現識別子の形態のコンポーネント獲得情報、及びDASH表現と関連するDASH分割を伝達するPLPIDを提供することができる。PLPID及びTSI値によって、受信機は、サービスからオーディオ/ビデオコンポーネントを収集し、DASHメディア分割のバッファリングを開始した後、適切なデコーディング過程を適用する。
MMTPセッションで伝達されるUSBDリスティングサービスコンポーネントに対して、記述された図面の「Service #2」に示したように、受信機は、SLSを完了するためにマッチングされるMMT_package_idを有するMPTメッセージを獲得する。MPTメッセージは、各コンポーネントに対する獲得情報及びサービスを含むサービスコンポーネントの完全なリストを提供する。コンポーネント獲得情報は、MMTPセッション情報、当該セッションを伝達するPLPID、当該セッション内のpacket_idを含む。
実施例によって、例えば、ROUTEの場合、2つ以上のS−TSIDフラグメントが使用されてもよい。それぞれのフラグメントは、各サービスのコンテンツを伝達するLCTセッションに対するアクセス情報を提供することができる。
ROUTEの場合、S−TSID、USBD/USD、MPD、またはこれらを伝達するLCTセッションをサービスシグナリングチャンネルと呼ぶこともできる。MMTPの場合、USBD/UD、MMTシグナリングメッセージ、またはこれらを伝達するパケットフローをサービスシグナリングチャンネルと呼ぶこともできる。
図示された実施例とは異なり、一つのROUTEまたはMMTPセッションは複数個のPLPを介して伝達され得る。すなわち、一つのサービスは一つ以上のPLPを介して伝達されてもよい。前述したように、一つのLCTセッションは一つのPLPを介して伝達され得る。図示されたものとは異なり、実施例によって、一つのサービスを構成するコンポーネントが、互いに異なるROUTEセッションを介して伝達されてもよい。また、実施例によって、一つのサービスを構成するコンポーネントが、互いに異なるMMTPセッションを介して伝達されてもよい。実施例によって、一つのサービスを構成するコンポーネントが、ROUTEセッションとMMTPセッションとに分けられて伝達されてもよい。図示してはいないが、一つのサービスを構成するコンポーネントが、ブロードバンドを介して伝達(ハイブリッドデリバリー)される場合もあり得る。
図5は、本発明の一実施例に係るROUTE/DASHのためのUSBDフラグメントを示した図である。
以下、ROUTEに基づいたデリバリーにおいて、サービスレイヤシグナリングについて説明する。
SLSは、サービス及びそのコンテンツコンポーネントの発見及び接近を可能にするために、受信機に、具体的な技術的な情報を提供する。それは、専用LCTセッションで伝達されるXMLコーディングされたメタデータ分割の集合を含むことができる。当該LCTセッションは、前述したように、SLTに含まれたブートストラップ情報を用いて獲得することができる。SLSは、サービスレベル毎に定義され、それは、コンテンツコンポーネントのリスト、どのようにそれらを獲得するのか、サービスの有意義なプレゼンテーションを行うために要求される受信機の性能のようなサービスのアクセス情報及び特徴を記述する。ROUTE/DASHシステムにおいて、リニアサービスデリバリーのために、SLSは、USBD、S−TSID及びDASH MPDのようなメタデータ分割で構成される。SLS分割は、TSI=0である専用のLCT伝送セッションで伝達され得る。実施例によって、SLSフラグメントが伝達される特定のLCTセッション(dedicated LCT session)のTSIは、異なる値を有してもよい。実施例によって、SLSフラグメントが伝達されるLCTセッションが、SLTまたは他の方法によってシグナリングされてもよい。
ROUTE/DASH SLSは、USBD及びS−TSIDメタデータ分割を含むことができる。これらサービスシグナリング分割は、リニア及びアプリケーションに基づいたサービスに適用され得る。USBD分割は、サービス識別、装置性能情報、サービス及び構成メディアコンポーネントにアクセスするのに要求される他のSLS分割に対する参照、受信機がサービスコンポーネントの伝送モード(ブロードキャスト及び/又はブロードバンド)を決定できるようにするメタデータを含む。USBDによって参照されるS−TSID分割は、サービスのメディアコンテンツコンポーネントが伝達される1つ以上のROUTE/LCTセッションに対する伝送セッションディスクリプション、及び当該LCTセッションで伝達されるデリバリーオブジェクトのディスクリプションを提供する。USBD及びS−TSIDは後述する。
ROUTEに基づいたデリバリーにおけるStreaming Content Signalingにおいて、SLSのストリーミングコンテンツシグナリングコンポーネントはMPDフラグメントに該当する。MPDは、主にストリーミングコンテンツとしてのDASH分割のデリバリーのためのリニアサービスと関連する。MPDは、分割URLの形態のリニア/ストリーミングサービスの個別メディアコンポーネントに対するソース識別子、及びメディアプレゼンテーション内の識別されたリソースのコンテキストを提供する。MPDについての具体的な内容は後述する。
ROUTEに基づいたデリバリーにおけるアプリベースのエンハンスメントシグナリングにおいて、アプリベースのエンハンスメントシグナリングは、アプリケーションロジックファイル、局部的にキャッシュされたメディアファイル、ネットワークコンテンツアイテム、または公知のストリームのようなアプリベースのエンハンスメントコンポーネントのデリバリーに属する。アプリケーションはまた、可能な場合、ブロードバンドコネクション上で局部的にキャッシュされたデータを検索することができる。
以下、本図に示されたUSBD/USDの具体的な内容について説明する。
トップレベルまたはエントリーポイントSLS分割はUSBD分割である。図示されたUSBDフラグメントは、本発明の一実施例であり、図示されていない基本的なUSBDフラグメントのフィールドが実施例によってさらに追加されてもよい。前述したように、図示されたUSBDフラグメントは、拡張された形態であって、基本構造にさらに追加されたフィールドを有することができる。
図示されたUSBDは、bundleDescriptionルートエレメントを有することができる。bundleDescriptionルートエレメントはuserServiceDescriptionエレメントを有することができる。userServiceDescriptionエレメントは、一つのサービスに対するインスタンスであり得る。
userServiceDescriptionエレメントは、@serviceId、@atsc:serviceId、@atsc:serviceStatus、@atsc:fullMPDUri、@atsc:sTSIDUri、name、serviceLanguage、atsc:capabilityCode及び/又はdeliveryMethodを含むことができる。
@serviceIdは、BSIDの範囲内で唯一のサービスを識別する全世界的に唯一のURIであり得る。当該パラメータは、ESGデータ(Service@globalServiceID)とリンクするのに使用することができる。
@atsc:servicedは、LLS(SLT)において該当するサービスエントリーに対するレファレンスである。当該属性の値は、当該エントリーに割り当てられたserviceIdの値と同一である。
@atsc:serviceStatusは、当該サービスの状態を特定することができる。その値は、当該サービスが活性化されているか、または非活性化されているかを示す。「1」(真)に設定されると、サービスが活性化されていることを示す。このフィールドが使用されない場合、デフォルト値1に設定されてもよい。
@atsc:fullMPDUriは、ブロードキャスト上で選択的に、また、ブロードバンド上で伝達されるサービスのコンテンツコンポーネントに対するディスクリプションを含むMPD分割を参照することができる。
@atsc:sTSIDUriは、当該サービスのコンテンツを伝達する伝送セッションにアクセス関連パラメータを提供するS−TSID分割を参照することができる。
nameは、lang属性によって与えられるサービスのネームを示すことができる。nameエレメントは、サービスネームの言語を示すlang属性を含むことができる。言語は、XMLデータタイプに応じて特定することができる。
serviceLanguageは、サービスの利用可能な言語を示すことができる。言語は、XMLデータタイプに応じて特定することができる。
atsc:capabilityCodeは、受信機が当該サービスのコンテンツの有意義なプレゼンテーションを生成できるように要求されるケイパビリティを特定することができる。実施例によって、本フィールドは、予め定義されたケイパビリティグループを特定してもよい。ここで、ケイパビリティグループは、有意義なプレゼンテーションのためのケイパビリティ属性値のグループであり得る。本フィールドは、実施例によって省略されてもよい。
deliveryMethodは、アクセスのブロードキャスト及び(選択的に)ブロードバンドモード上でサービスのコンテンツに属する情報に関連するトランスポートのコンテナであり得る。当該サービスに含まれるデータにおいて、そのデータをN個とすれば、そのそれぞれのデータに対するデリバリー方法が、このエレメントによって記述され得る。deliveryMethodエレメントは、r12:broadcastAppServiceエレメント及びr12:unicastAppServiceエレメントを含むことができる。それぞれの下位エレメントは、basePatternエレメントを下位エレメントとして有することができる。
r12:broadcastAppServiceは、所属のメディアプレゼンテーションの全ての期間にわたって、サービスに属する当該メディアコンポーネントを含む、多重化または非多重化された形態のブロードキャスト上で伝達されるDASHレプレゼンテーションであり得る。すなわち、それぞれの本フィールドは、放送網を介して伝達されるDASHレプレゼンテーション(representation)を意味し得る。
r12:unicastAppServiceは、所属のメディアプレゼンテーションの全ての期間にわたって、サービスに属する構成メディアコンテンツコンポーネントを含む、多重化または非多重化された形態のブロードバンド上で伝達されるDASHレプレゼンテーションであり得る。すなわち、それぞれの本フィールドは、ブロードバンドを介して伝達されるDASHレプレゼンテーション(representation)を意味し得る。
basePatternは、含まれた期間にペアレントレプレゼンテーションのメディア分割を要求するためにDASHクライアントによって使用される分割URLの全ての部分に対してマッチングされるように受信機によって使用される文字パターンであり得る。マッチは、当該要求されたメディア分割がブロードキャストトランスポート上で伝達されることを暗示する。それぞれのr12:broadcastAppServiceエレメントとr12:unicastAppServiceエレメントで表現されるDASHレプレゼンテーションを受信できるURLアドレスにおいて、そのURLの一部分などは特定のパターンを有することができ、そのパターンが本フィールドによって記述され得る。この情報を通じて、一定の部分のデータに対する区分が可能である。提示されたデフォルト値は、実施例によって変更されてもよい。図示された使用(use)列は各フィールドに関するもので、Mは必須のフィールド、Oはオプショナルフィールド、ODは、デフォルト値を有するオプショナルフィールド、CMは、条件付きの必須のフィールドを意味し得る。0...1〜0...Nは、当該フィールドの使用可能な個数を意味し得る。
図6は、本発明の一実施例に係るROUTE/DASHのためのS−TSIDフラグメントを示した図である。
以下、本図に示されたS−TSIDの具体的な内容について説明する。
S−TSIDは、サービスのコンテンツコンポーネントを伝達する伝送セッションに対する全体的なセッションディスクリプション情報を提供するSLS XML分割であり得る。S−TSIDは、サービスのメディアコンテンツコンポーネントが伝達される構成LCTセッション、及び0個以上のROUTEセッションに対する全体的な伝送セッションディスクリプション情報を含む、SLSメタデータ分割である。S−TSIDはまた、LCTセッションで伝達されるコンテンツコンポーネント及びペイロードフォーマットに対する追加情報だけでなく、サービスのLCTセッションで伝達されるデリバリーオブジェクトまたはオブジェクトフローに対するファイルメタデータを含む。
S−TSID分割の各インスタンスは、userServiceDescriptionエレメントの@atsc:sTSIDUri属性によってUSBD分割で参照される。図示された本発明の一実施例に係るS−TSIDは、XMLドキュメントの形態で表現された。実施例によって、S−TSIDは、バイナリフォーマットまたはXMLドキュメントの形態で表現されてもよい。
図示されたS−TSIDは、S−TSIDルートエレメントを有することができる。S−TSIDルートエレメントは、@serviceId及び/又はRSを含むことができる。
@serviceIDは、USDでサービスエレメントに該当するレファレンスであり得る。当該属性の値は、service_idの当該値を有するサービスを参照することができる。
RSエレメントは、当該サービスデータを伝達するROUTEセッションに関する情報を有することができる。複数個のROUTEセッションを介してサービスデータ乃至サービスコンポーネントを伝達できるので、本エレメントは1個〜N個の個数を有することができる。
RSエレメントは、@bsid、@sIpAddr、@dIpAddr、@dport、@PLPID及び/又はLSを含むことができる。
@bsidは、broadcastAppServiceのコンテンツコンポーネントが伝達されるブロードキャストストリームの識別子であり得る。当該属性が存在しない場合、デフォルトブロードキャストストリームのPLPが当該サービスに対するSLS分割を伝達することであり得る。その値は、SLTでbroadcast_stream_idと同一であり得る。
@sIpAddrは、ソースIPアドレスを示すことができる。ここで、ソースIPアドレスは、当該サービスに含まれるサービスコンポーネントを伝達するROUTEセッションのソースIPアドレスであり得る。前述したように、一つのサービスのサービスコンポーネントは、複数個のROUTEセッションを介して伝達されてもよい。そのため、当該S−TSIDが伝達されるROUTEセッションではない他のROUTEセッションでそのサービスコンポーネントが伝送されてもよい。したがって、ROUTEセッションのソースIPアドレスを指示するために本フィールドが使用され得る。本フィールドのデフォルト値は、現在のROUTEセッションのソースIPアドレスであり得る。他のROUTEセッションを介して伝達されるサービスコンポーネントがあるので、そのROUTEセッションを指示しなければならない場合には、本フィールド値は、そのROUTEセッションのソースIPアドレス値であり得る。この場合、本フィールドはM、すなわち、必須のフィールドであり得る。
@dIpAddrは、デスティネーションIPアドレスを示すことができる。ここで、デスティネーションIPアドレスは、当該サービスに含まれるサービスコンポーネントを伝達するROUTEセッションのデスティネーションIPアドレスであり得る。@sIpAddrで説明したような場合のために、本フィールドは、サービスコンポーネントを伝達するROUTEセッションのデスティネーションIPアドレスを指示してもよい。本フィールドのデフォルト値は、現在のROUTEセッションのデスティネーションIPアドレスであり得る。他のROUTEセッションを介して伝達されるサービスコンポーネントがあるので、そのROUTEセッションを指示しなければならない場合には、本フィールド値は、そのROUTEセッションのデスティネーションIPアドレス値であり得る。この場合、本フィールドはM、すなわち、必須フィールドであり得る。
@dportは、デスティネーションポートを示すことができる。ここで、デスティネーションポートは、当該サービスに含まれるサービスコンポーネントを伝達するROUTEセッションのデスティネーションポートであり得る。@sIpAddrで説明したような場合のために、本フィールドは、サービスコンポーネントを伝達するROUTEセッションのデスティネーションポートを指示することができる。本フィールドのデフォルト値は、現在のROUTEセッションのデスティネーションポートナンバーであり得る。他のROUTEセッションを介して伝達されるサービスコンポーネントがあるので、そのROUTEセッションを指示しなければならない場合には、本フィールド値は、そのROUTEセッションのデスティネーションポートナンバー値であり得る。この場合、本フィールドはM、すなわち、必須フィールドであり得る。
@PLPIDは、RSで表現されるROUTEセッションのためのPLPのIDであり得る。デフォルト値は、現在のS−TSIDが含まれたLCTセッションのPLPのIDであり得る。実施例によって、本フィールドは、当該ROUTEセッションでS−TSIDが伝達されるLCTセッションのためのPLPのID値を有してもよく、当該ROUTEセッションのための全てのPLPのID値を有してもよい。
LSエレメントは、当該サービスデータを伝達するLCTセッションに関する情報を有することができる。複数個のLCTセッションを介してサービスデータ乃至サービスコンポーネントを伝達できるので、本エレメントは、1個〜N個の個数を有することができる。
LSエレメントは、@tsi、@PLPID、@bw、@startTime、@endTime、SrcFlow及び/又はRprFlowを含むことができる。
@tsiは、当該サービスのサービスコンポーネントが伝達されるLCTセッションのTSI値を指示することができる。
@PLPIDは、当該LCTセッションのためのPLPのID情報を有することができる。この値は、基本ROUTEセッション値を上書きしてもよい。
@bwは、最大の帯域値を指示することができる。@startTimeは当該LCTセッションのスタートタイム(Start time)を指示することができる。@endTimeは、当該LCTセッションのエンドタイム(End time)を指示することができる。SrcFlowエレメントは、ROUTEのソースフローに対して記述することができる。RprFlowエレメントは、ROUTEのリペアフローに対して記述することができる。
提示されたデフォルト値は、実施例によって変更されてもよい。図示された使用(use)列は、各フィールドに関するもので、Mは必須フィールド、Oはオプショナルフィールド、ODは、デフォルト値を有するオプショナルフィールド、CMは、条件付きの必須のフィールドを意味し得る。0...1〜0...Nは、当該フィールドの使用可能な個数を意味し得る。
以下、ROUTE/DASHのためのMPD(Media Presentation Description)について説明する。
MPDは、放送会社によって定められた与えられたデューレーションのリニアサービスに該当するDASHメディアプレゼンテーションの公式化されたディスクリプションを含むSLSメタデータ分割である(例えば、ある期間の間の一つのTVプログラムまたは連続的なリニアTVプログラムの集合)。MPDのコンテンツは、メディアプレゼンテーション内で識別されたリソースに対するコンテキスト及び分割に対するソース識別子を提供する。MPD分割のデータ構造及びセマンティクスは、MPEG DASHによって定義されたMPDに従うことができる。
MPDで伝達される1つ以上のDASHレプレゼンテーションは、ブロードキャスト上で伝達され得る。MPDは、ハイブリッドサービスの場合のようなブロードバンド上で伝達される追加レプレゼンテーションを記述したり、ブロードキャスト信号悪化(例えば、トンネルの中の走行)によるブロードキャストからブロードキャストへのハンドオフでサービス連続性を支援したりすることができる。
図7は、本発明の一実施例に係るMMTのためのUSBD/USDフラグメントを示した図である。
リニアサービスのためのMMT SLSは、USBD分割及びMPテーブルを含む。MPテーブルは、前述した通りである。USBD分割は、サービス識別、装置性能情報、サービス及び構成メディアコンポーネントにアクセスするのに要求される他のSLS分割に対する参照、及び受信機がサービスコンポーネントの伝送モード(ブロードキャスト及び/又はブロードバンド)を決定できるようにするメタデータを含む。USBDによって参照されるMPUコンポーネントに対するMPテーブルは、サービスのメディアコンテンツコンポーネントが伝達されるMMTPセッションに対する伝送セッションディスクリプション、及びMMTPセッションで伝達されるアセットのディスクリプションを提供する。
MPUコンポーネントに対するSLSのストリーミングコンテンツシグナリングコンポーネントは、MMTで定義されたMPテーブルに該当する。MPテーブルは、各アセットが単一のサービスコンポーネントに該当するMMTアセットのリスト、及び当該コンポーネントに対する位置情報のディスクリプションを提供する。
USBD分割は、ROUTEプロトコル及びブロードバンドによってそれぞれ伝達されるサービスコンポーネントに対して、前述したようなS−TSID及びMPDに対する参照も含むことができる。実施例によって、MMTを通じたデリバリーにおいて、ROUTEプロトコルを介して伝達されるサービスコンポーネントはNRTなどのデータであるので、この場合において、MPDは用いられなくてもよい。また、MMTを通じたデリバリーにおいて、ブロードバンドを介して伝達されるサービスコンポーネントはどのLCTセッションを介して伝達されるかに対する情報が必要でないので、S−TSIDは用いられなくてもよい。ここで、MMTパッケージは、MMTを用いて伝達される、メディアデータの論理的コレクションであり得る。ここで、MMTPパケットは、MMTを用いて伝達されるメディアデータのフォーマットされたユニットを意味し得る。MPU(Media Processing Unit)は、独立してデコーディング可能なタイムド/ノン−タイムドデータのジェネリックコンテナを意味し得る。ここで、MPUでのデータはメディアコーデックアグノスティックである。
以下、本図に示されたUSBD/USDの具体的な内容について説明する。
図示されたUSBDフラグメントは、本発明の一実施例であり、図示されていない基本的なUSBDフラグメントのフィールドが実施例によってさらに追加されてもよい。前述したように、図示されたUSBDフラグメントは、拡張された形態であって、基本構造にさらに追加されたフィールドを有することができる。
図示された本発明の一実施例に係るUSBDは、XMLドキュメントの形態で表現された。実施例によって、USBDは、バイナリフォーマットまたはXMLドキュメントの形態で表現されてもよい。
図示されたUSBDは、bundleDescriptionルートエレメントを有することができる。bundleDescriptionルートエレメントはuserServiceDescriptionエレメントを有することができる。userServiceDescriptionエレメントは、1つのサービスに対するインスタンスであり得る。
userServiceDescriptionエレメントは、@serviceId、@atsc:serviceId、name、serviceLanguage、atsc:capabilityCode、atsc:Channel、atsc:mpuComponent、atsc:routeComponent、atsc:broadband Component及び/又はatsc:ComponentInfoを含むことができる。
ここで、@serviceId、@atsc:serviceId、name、serviceLanguage、atsc:capabilityCodeは、前述したものと同一であり得る。nameフィールドの下のlangフィールドも、前述したものと同一であり得る。atsc:capabilityCodeは、実施例によって省略されてもよい。
userServiceDescriptionエレメントは、実施例によってatsc:contentAdvisoryRatingエレメントをさらに含むことができる。このエレメントはオプショナルエレメントであり得る。atsc:contentAdvisoryRatingは、コンテンツ諮問順位を特定することができる。本フィールドは図示していない。
atsc:Channelは、サービスのチャンネルに対する情報を有することができる。atsc:Channelエレメントは、@atsc:majorChannelNo、@atsc:minorChannelNo、@atsc:serviceLang、@atsc:serviceGenre、@atsc:serviceIcon及び/又はatsc:ServiceDescriptionを含むことができる。@atsc:majorChannelNo、@atsc:minorChannelNo、@atsc:serviceLangは、実施例によって省略されてもよい。
@atsc:majorChannelNoは、サービスの主チャンネルナンバーを示す属性である。
@atsc:minorChannelNoは、サービスの副チャンネルナンバーを示す属性である。
@atsc:serviceLangは、サービスで使用される主要言語を示す属性である。
@atsc:serviceGenreは、サービスの主要ジャンルを示す属性である。
@atsc:serviceIconは、当該サービスを表現するために使用されるアイコンに対するURLを示す属性である。
atsc:ServiceDescriptionは、サービスディスクリプションを含み、これは多重言語であってもよい。atsc:ServiceDescriptionは、@atsc:serviceDescrText及び/又は@atsc:serviceDescrLangを含むことができる。
@atsc:serviceDescrTextは、サービスのディスクリプションを示す属性である。
@atsc:serviceDescrLangは、serviceDescrText属性の言語を示す属性である。
atsc:mpuComponentは、MPUの形態で伝達されるサービスのコンテンツコンポーネントに対する情報を有することができる。atsc:mpuComponentは、@atsc:mmtPackageId及び/又は@atsc:nextMmtPackageIdを含むことができる。
@atsc:mmtPackageIdは、MPUとして伝達されるサービスのコンテンツコンポーネントに対するMMTパッケージを参照することができる。
@atsc:nextMmtPackageIdは、MPUとして伝達されるサービスのコンテンツコンポーネントに合わせて@atsc:mmtPackageIdによって参照された後に使用されるMMTパッケージを参照することができる。
atsc:routeComponentは、ROUTEを介して伝達されるサービスのコンテンツコンポーネントに対する情報を有することができる。atsc:routeComponentは、@atsc:sTSIDUri、@sTSIDPlpId、@sTSIDDestinationIpAddress、@sTSIDDestinationUdpPort、@sTSIDSourceIpAddress、@sTSIDMajorProtocolVersion及び/又は@sTSIDMinorProtocolVersionを含むことができる。
@atsc:sTSIDUriは、当該サービスのコンテンツを伝達する伝送セッションにアクセス関連パラメータを提供するS−TSID分割を参照することができる。このフィールドは、前述したROUTEのためのUSBDでのS−TSIDを参照するためのURIと同一であり得る。前述したように、MMTPによるサービスデリバリーにおいても、NRTなどを介して伝達されるサービスコンポーネントはROUTEによって伝達され得る。そのためのS−TSIDを参照するために、本フィールドが使用され得る。
@sTSIDPlpIdは、当該サービスに対するS−TSIDを伝達するPLPのPLP IDを示す整数を表現するストリングであり得る。(デフォルト:現在のPLP)
@sTSIDDestinationIpAddressは、当該サービスに対するS−TSIDを伝達するパケットのdotted−IPv4デスティネーションアドレスを含むストリングであり得る。(デフォルト:現在のMMTPセッションのソースIPアドレス)
@sTSIDDestinationUdpPortは、当該サービスに対するS−TSIDを伝達するパケットのポートナンバーを含むストリングであり得る。
@sTSIDSourceIpAddressは、当該サービスに対するS−TSIDを伝達するパケットのdotted−IPv4ソースアドレスを含むストリングであり得る。
@sTSIDMajorProtocolVersionは、当該サービスに対するS−TSIDを伝達するために使用されるプロトコルの主バージョンナンバーを示すことができる。デフォルト値は1である。
@sTSIDMinorProtocolVersionは、当該サービスに対するS−TSIDを伝達するために使用されるプロトコルの副バージョンナンバーを示すことができる。デフォルト値は0である。
atsc:broadbandComponentは、ブロードバンドを介して伝達されるサービスのコンテンツコンポーネントに対する情報を有することができる。すなわち、ハイブリッドデリバリーを想定したフィールドであり得る。atsc:broadbandComponentは、@atsc:fullfMPDUriをさらに含むことができる。
@atsc:fullfMPDUriは、ブロードバンドで伝達されるサービスのコンテンツコンポーネントに対するディスクリプションを含むMPD分割に対するレファレンスであり得る。
atsc:ComponentInfoは、サービスのアベイラブルな(available)コンポーネントに対する情報を有することができる。それぞれのコンポーネントに対する、タイプ、ロール、名などの情報を有することができる。各コンポーネント(N個)の数だけ本フィールドが存在することができる。atsc:ComponentInfoは、@atsc:componentType、@atsc:componentRole、@atsc:componentProtectedFlag、@atsc:componentId及び/又は@atsc:componentNameを含むことができる。
@atsc:componentTypeは、当該コンポーネントのタイプを示す属性である。0の値はオーディオコンポーネントを示す。1の値はビデオコンポーネントを示す。2の値はクローズドキャプションコンポーネントを示す。3の値はアプリケーションコンポーネントを示す。4〜7の値は残す。本フィールド値の意味は、実施例によって異なって設定されてもよい。
@atsc:componentRoleは、当該コンポーネントの役割及び種類を示す属性である。
オーディオに対して(componentType属性が0と同一であるとき)、componentRole属性の値は、次の通りである。0=Complete main、1=音楽及び効果(Music and Effects)、2=対話(Dialog)、3=解説(Commentary)、4=視覚障害(Visually Impaired)、5=聴覚障害(Hearing Impaired)、6=ボイスオーバー(Voice−Over)、7−254=reserved、255=unknown。
オーディオに対して(componentType属性が1と同一であるとき)、componentRole属性の値は、次の通りである。0=Primary video、1=代替カメラビュー(Alternative camera view)、2=他の代替ビデオコンポーネント(Other alternative video component)、3=手話挿入(Sign language inset)、4=Follow subject video、5=3Dビデオの左側ビュー(3D video left view)、6=3Dビデオの右側ビュー(3D video right view)、7=3Dビデオの深さ情報(3D video depth information)、8=Part of video array <x,y> of <n,m>、9=Follow−Subject metadata、10−254=reserved、255=unknown。
クローズドキャプションコンポーネントに対して(componentType属性が2と同一であるとき)、componentRole属性の値は、次の通りである。0=Normal、1=Easy reader、2−254=reserved、255=unknown。
componentType属性の値が3と7との間であれば、componentRole255と同一であり得る。本フィールド値の意味は、実施例によって異なって設定されてもよい。
@atsc:componentProtectedFlagは、当該コンポーネントが保護されるか(例えば、暗号化されるか)を示す属性である。当該フラグが1の値に設定されると、当該コンポーネントは保護される(例えば、暗号化される)。当該フラグが0の値に設定されると、当該コンポーネントは保護されない(例えば、暗号化されない)。存在しない場合、componentProtectedFlag属性の値は0と同一であると推論される。本フィールド値の意味は、実施例によって異なって設定されてもよい。
@atsc:componentIdは、当該コンポーネントの識別子を示す属性である。当該属性の値は、当該コンポーネントに該当するMPテーブルにおいてasset_idと同一であり得る。
@atsc:componentNameは、当該コンポーネントの人が読み取り可能な名を示す属性である。
提示されたデフォルト値は、実施例によって変更されてもよい。図示された使用(use)列は、各フィールドに関するもので、Mは必須のフィールド、Oはオプショナルフィールド、ODは、デフォルト値を有するオプショナルフィールド、CMは、条件付きの必須のフィールドを意味し得る。0...1〜0...Nは、当該フィールドの使用可能な個数を意味し得る。
以下、MMTのためのMPD(Media Presentation Description)について説明する。
MPDは、放送会社によって定められた与えられたデューレーションのリニアサービスに該当するSLSメタデータ分割である(例えば、一つのTVプログラム、またはある期間の間の連続的なリニアTVプログラムの集合)。MPDのコンテンツは、分割に対するリソース識別子、及びメディアプレゼンテーション内で識別されたリソースに対するコンテキストを提供する。MPDのデータ構造及びセマンティクスは、MPEG DASHによって定義されたMPDに従うことができる。
本発明の実施例において、MMTPセッションによって伝達されるMPDは、ハイブリッドサービスの場合のようなブロードバンド上で伝達されるレプレゼンテーションを記述したり、ブロードキャスト信号悪化(例えば、山の下やトンネルの中の走行)によるブロードキャストからブロードキャストへのハンドオフでサービス連続性を支援したりすることができる。
以下、MMTのためのMMTシグナリングメッセージについて説明する。
MMTPセッションがストリーミングサービスを伝達するために使用される場合、MMTによって定義されたMMTシグナリングメッセージは、MMTによって定義されたシグナリングメッセージモードに応じてMMTPパケットによって伝達される。アセットを伝達するMMTPパケットと同一のpacket_id値に設定され得る、アセットに特定のMMTシグナリングメッセージを伝達するMMTPパケットを除いて、SLSを伝達するMMTPパケットのpacket_idフィールドの値は「00」に設定される。各サービスに対する適切なパケットを参照する識別子は、前述したように、USBD分割によってシグナリングされる。マッチングするMMT_package_idを有するMPTメッセージは、SLTでシグナリングされるMMTPセッション上で伝達され得る。各MMTPセッションは、そのセッションに特定のMMTシグナリングメッセージ、またはMMTPセッションによって伝達される各アセットを伝達する。
すなわち、SLTで特定のサービスに対するSLSを有するパケットのIPデスティネーションアドレス/ポートナンバーなどを特定して、MMTPセッションのUSBDに接近することができる。前述したように、SLSを運搬するMMTPパケットのパケットIDは、00などの特定の値として指定できる。USBDの前述したパッケージID情報を用いて、マッチングされるパッケージIDを有するMPTメッセージに接近することができる。MPTメッセージは、後述するように、各サービスコンポーネント/アセットに接近するために使用することができる。
次のMMTPメッセージは、SLTでシグナリングされるMMTPセッションによって伝達され得る。
MPTメッセージ:このメッセージは、全てのアセットのリスト及びMMTによって定義されたようなそれらの位置情報を含む、MPテーブルを伝達する。アセットがMPテーブルを伝達する現PLPと異なるPLPによって伝達されると、当該アセットを伝達するPLPの識別子は、PLP識別子ディスクリプタを使用したMPテーブルで提供され得る。PLP識別子ディスクリプタについては後述する。
MMT ATSC3(MA3) message mmt_atsc3_message():このメッセージは、前述したように、SLSを含むサービスに特定のシステムメタデータを伝達する。mmt_atsc3_message()については後述する。
次のMMTPメッセージは、必要であれば、SLTでシグナリングされたMMTPセッションによって伝達されてもよい。
MPIメッセージ:このメッセージは、プレゼンテーション情報の全てのドキュメントまたは一部のドキュメントを含む、MPIテーブルを伝達する。MPIテーブルと関連するMPテーブルは、このメッセージによって伝達され得る。
CRI(clock relation information)メッセージ:このメッセージは、NTPタイムスタンプとMPEG−2 STCとの間のマッピングのためのクロック関連情報を含むCRIテーブルを伝達する。実施例によって、CRIメッセージは当該MMTPセッションを介して伝達されなくてもよい。
次のMMTPメッセージは、ストリーミングコンテンツを伝達する各MMTPセッションによって伝達され得る。
仮想的な受信機バッファーモデルメッセージ:このメッセージは、バッファーを管理するために受信機によって要求される情報を伝達する。
仮想的な受信機バッファーモデル除去メッセージ:このメッセージは、MMTデカプセレーションバッファーを管理するために受信機によって要求される情報を伝達する。
以下、MMTシグナリングメッセージのうち1つであるmmt_atsc3_message()について説明する。MMTシグナリングメッセージであるmmt_atsc3_message()は、前述した本発明によって、サービスに特定の情報を伝達するために定義される。本シグナリングメッセージは、MMTシグナリングメッセージの基本的なフィールドであるメッセージID、バージョン及び/又は長さ(length)フィールドを含むことができる。本シグナリングメッセージのペイロードには、サービスID情報、コンテンツタイプ、コンテンツバージョン、コンテンツコンプレッション情報及び/又はURI情報が含まれてもよい。コンテンツタイプ情報は、本シグナリングメッセージのペイロードに含まれるデータのタイプを示すことができる。コンテンツバージョン情報は、ペイロードに含まれるデータのバージョンを、コンテンツコンプレッション情報は、当該データに適用されたコンプレッションタイプを示すことができる。URI情報は、本メッセージによって伝達されるコンテンツと関連するURI情報を有することができる。
以下、PLP識別子ディスクリプタについて説明する。
PLP識別子ディスクリプタは、前述したMPテーブルのディスクリプタのうち1つとして使用できるディスクリプタである。PLP識別子ディスクリプタは、アセットを伝達するPLPに関する情報を提供する。アセットが、MPテーブルを伝達する現在のPLPと異なるPLPによって伝達されると、PLP識別子ディスクリプタは、そのアセットを伝達するPLPを識別するために、関連するMPテーブルでアセットディスクリプタとして使用され得る。PLP識別子ディスクリプタは、PLP ID情報以外にBSID情報をさらに含むこともできる。BSIDは、このディスクリプタによって記述されるAssetのためのMMTPパケットを伝達するブロードキャストストリームのIDであり得る。
図8は、本発明の一実施例に係るリンクレイヤプロトコルアーキテクチャーを示した図である。
以下、リンクレイヤ(Link Layer)について説明する。
リンクレイヤは、フィジカルレイヤとネットワークレイヤとの間のレイヤであり、送信側では、ネットワークレイヤからフィジカルレイヤにデータを伝送し、受信側では、フィジカルレイヤからネットワークレイヤにデータを伝送する。リンクレイヤの目的は、フィジカルレイヤによる処理のために全ての入力パケットタイプを一つのフォーマットで要約すること、まだ定義されていない入力タイプに対する柔軟性、及び将来の拡張可能性を保障することである。また、リンクレイヤ内で処理すれば、例えば、入力パケットのヘッダーにある不必要な情報を圧縮するのにオプションを提供することによって、入力データを効率的に伝送できるように保障する。エンカプセレーション、コンプレッションなどの動作はリンクレイヤプロトコルと呼ばれ、当該プロトコルを用いて生成されたパケットはリンクレイヤパケットと呼ばれる。リンクレイヤは、パケットエンカプセレーション(packet encapsulation)、オーバーヘッドリダクション(Overhead Reduction)及び/又はシグナリング伝送(Signaling Transmission)などの機能を行うことができる。
以下、パケットエンカプセレーションについて説明する。リンクレイヤプロトコルは、IPパケット及びMPEG−2 TSのようなものを含む全てのタイプのパケットのエンカプセレーションを可能にする。リンクレイヤプロトコルを用いて、フィジカルレイヤは、ネットワークレイヤプロトコルタイプと独立して一つのパケットフォーマットのみを処理すればよい(ここで、ネットワークレイヤパケットの一種としてMPEG−2 TSパケットを考慮)。各ネットワークレイヤパケットまたは入力パケットは、ジェネリックリンクレイヤパケットのペイロードに変形する。追加的に、入力パケットのサイズが特に小さいかまたは大きい場合、フィジカルレイヤリソースを効率的に用いるために、連鎖及び分割を行うことができる。
前述したように、パケットエンカプセレーション過程で分割(segmentation)を活用することができる。ネットワークレイヤパケットが大きすぎるため、フィジカルレイヤで容易に処理できない場合、ネットワークレイヤパケットは2つ以上の分割に分けられる。リンクレイヤパケットヘッダーは、送信側で分割を行い、受信側で再結合を行うために、プロトコルフィールドを含む。ネットワークレイヤパケットが分割される場合、各分割は、ネットワークレイヤパケットでの元の位置と同一の順序でリンクレイヤパケットにエンカプセレーションされてもよい。また、ネットワークレイヤパケットの分割を含む各リンクレイヤパケットは、結果的にフィジカルレイヤに伝送されてもよい。
前述したように、パケットエンカプセレーション過程で連鎖(concatenation)も活用することができる。リンクレイヤパケットのペイロードが多数のネットワークレイヤパケットを含む程度にネットワークレイヤパケットが十分に小さい場合、リンクレイヤパケットヘッダーは、連鎖を行うためにプロトコルフィールドを含む。連鎖は、多数の小さい大きさのネットワークレイヤパケットを一つのペイロードに結合したものである。ネットワークレイヤパケットが連鎖すれば、各ネットワークレイヤパケットは、元の入力順序と同一の順序でリンクレイヤパケットのペイロードに連鎖することができる。また、リンクレイヤパケットのペイロードを構成する各パケットは、パケットの分割ではない全体パケットであり得る。
以下、オーバーヘッドリダクションについて説明する。リンクレイヤプロトコルの使用により、フィジカルレイヤ上でデータの伝送に対するオーバーヘッドを大きく減少させることができる。本発明に係るリンクレイヤプロトコルは、IPオーバーヘッドリダクション及び/又はMPEG−2 TSオーバーヘッドリダクションを提供することができる。IPオーバーヘッドリダクションにおいて、IPパケットは、固定されたヘッダーフォーマットを有しているが、通信環境で必要な一部の情報はブロードキャスト環境で不要なことがある。リンクレイヤプロトコルは、IPパケットのヘッダーを圧縮することによってブロードキャストオーバーヘッドを低減するメカニズムを提供する。MPEG−2 TSオーバーヘッドリダクションにおいて、リンクレイヤプロトコルは、シンクバイト除去、ヌルパケット削除及び/又は共通ヘッダー除去(圧縮)を提供する。まず、シンクバイト除去は、TSパケット当たり1バイトのオーバーヘッドリダクションを提供し、次に、ヌルパケット削除メカニズムは、受信機で再挿入できる方式で188バイトのヌルTSパケットを除去する。最後に、共通ヘッダー除去メカニズムが提供される。
シグナリング伝送に対して、リンクレイヤプロトコルは、シグナリングパケットのための特定のフォーマットが、リンクレイヤシグナリングを伝送するために提供され得る。これについては後述する。
図示された本発明の一実施例に係るリンクレイヤプロトコルアーキテクチャーにおいて、リンクレイヤプロトコルは、入力パケットとして、IPv4、MPEG−2 TSなどのような入力ネットワークレイヤパケットを取る。将来の拡張は、他のパケットタイプとリンクレイヤで入力され得るプロトコルを示す。リンクレイヤプロトコルは、フィジカルレイヤで特定のチャンネルに対するマッピングに関する情報を含む全てのリンクレイヤシグナリングに対するシグナリング及びフォーマットを特定する。図面は、ALPがどのように様々なヘッダーコンプレッション及び削除アルゴリズムを介して伝送効率を向上させるためにメカニズムを含むかを示す。また、リンクレイヤプロトコルは、基本的に入力パケットをエンカプセレーションすることができる。
図9は、本発明の一実施例に係るリンクレイヤパケットのベースヘッダー構造を示した図である。以下、ヘッダーの構造について説明する。
リンクレイヤパケットは、データペイロードが後続するヘッダーを含むことができる。リンクレイヤパケットのヘッダーは、ベースヘッダーを含むことができ、ベースヘッダーのコントロールフィールドに応じて追加ヘッダーを含むことができる。オプショナルヘッダーの存在は、追加ヘッダーのフラグフィールドから指示される。実施例によって、追加ヘッダー、オプショナルヘッダーの存在を示すフィールドはベースヘッダーに位置してもよい。
以下、ベースヘッダーの構造について説明する。リンクレイヤパケットエンカプセレーションに対するベースヘッダーは階層構造を有する。ベースヘッダーは、2バイトの長さを有することができ、リンクレイヤパケットヘッダーの最小長さである。
図示された本発明の一実施例に係るベースヘッダーは、Packet_Typeフィールド、PCフィールド及び/又は長さ(length)フィールドを含むことができる。実施例によって、ベースヘッダーは、HMフィールド又はS/Cフィールドをさらに含むことができる。
Packet_Typeフィールドは、リンクレイヤパケットへのエンカプセレーションの前の入力データのパケットタイプまたは元のプロトコルを示す、3ビットのフィールドである。IPv4パケット、圧縮されたIPパケット(compressed IP packet)、リンクレイヤシグナリングパケット、及びその他のタイプのパケットが、このようなベースヘッダーの構造を有し、エンカプセレーションされてもよい。ただし、実施例によって、MPEG−2 TSパケットは、これとは異なる特別な構造を有し、エンカプセレーションされてもよい。Packet_Typeの値が「000」、「001」、「100」または「111」であると、ALPパケットの元のデータタイプは、IPv4パケット、圧縮IPパケット、リンクレイヤシグナリングまたはエクステンションパケットのうち1つである。MPEG−2 TSパケットがカプセル化されると、Packet_Typeの値は「010」であり得る。他のPacket_Typeフィールドの値は、将来の使用のために残すことができる(reserved for future use)。
Payload_Configuration(PC)フィールドは、ペイロードの構成を示す1ビットのフィールドであり得る。0の値は、リンクレイヤパケットが一つの全体の入力パケットを伝達し、次のフィールドがHeader_Modeであることを示すことができる。1の値は、リンクレイヤパケットが1つ以上の入力パケット(連鎖)や大きい入力パケット(分割)の一部を伝達し、次のフィールドがSegmentation_Concatenationであることを示すことができる。
Header_Mode(HM)フィールドは、0に設定される場合、追加ヘッダーがないことを示し、リンクレイヤパケットのペイロードの長さが2048バイトよりも小さいことを示す、1ビットのフィールドであり得る。この数値は、実施例によって変更されてもよい。1の値は、下記に定義された1つのパケットのための追加ヘッダーが長さフィールドの次に存在することを示すことができる。この場合、ペイロードの長さは、2047バイトよりも大きく、及び/又はオプショナルフィーチャが使用され得る(サブストリーム識別、ヘッダー拡張など)。この数値は、実施例によって変更されてもよい。本フィールドは、リンクレイヤパケットのPayload_Configurationフィールドが0の値を有するときのみ存在し得る。
Segmentation_Concatenation(S/C)フィールドは、0に設定された場合、ペイロードが入力パケットのセグメントを伝達し、下記に定義される分割のための追加ヘッダーが長さフィールドの次に存在することを示す、1ビットのフィールドであり得る。1の値は、ペイロードが1つよりも多い完全な入力パケットを伝達し、下記に定義された連鎖のための追加ヘッダーが長さフィールドの次に存在することを示すことができる。本フィールドは、ALPパケットのPayload_Configurationフィールドの値が1であるときのみ存在し得る。
長さフィールドは、リンクレイヤパケットによって伝達されるペイロードのバイト単位の長さの11LSBs(least significant bits)を示す、11ビットのフィールドであり得る。次の追加ヘッダーにLength_MSBフィールドがあれば、長さフィールドは、Length_MSBフィールドに連鎖し、ペイロードの実際の全長を提供するためにLSBとなる。長さフィールドのビット数は、11ビット以外に他のビットに変更されてもよい。
したがって、次のパケット構造のタイプが可能である。すなわち、追加ヘッダーがない1つのパケット、追加ヘッダーがある1つのパケット、分割されたパケット、連鎖したパケットが可能である。実施例によって、各追加ヘッダーとオプショナルヘッダー、後述するシグナリング情報のための追加ヘッダーとタイプエクステンションのための追加ヘッダーによる組み合わせで、さらに多くのパケット構成が可能である。
図10は、本発明の一実施例に係るリンクレイヤパケットの追加ヘッダーの構造を示した図である。
追加ヘッダー(additional header)は様々なタイプがあり得る。以下、シングルパケットのための追加ヘッダーについて説明する。
1つのパケットに対する当該追加ヘッダーは、Header_Mode(HM)=「1」である場合に存在し得る。リンクレイヤパケットのペイロードの長さが2047バイトよりも大きいか、またはオプションフィールドが使用される場合、Header_Mode(HM)は1に設定され得る。1つのパケットの追加ヘッダー(tsib10010)は図面に示す。
Length_MSBフィールドは、現在のリンクレイヤパケットにおいてバイト単位の全ペイロードの長さのMSBs(most significant bits)を示すことができる、5ビットのフィールドであり得、全ペイロードの長さを得るために、11LSBを含む長さフィールドに連鎖する。したがって、シグナリングできるペイロードの最大長さは65535バイトである。長さフィールドのビット数は、11ビット以外の他のビットに変更されてもよい。また、Length_MSBフィールドも、ビット数が変更されてもよく、これによって、最大に表現可能なペイロードの長さも変更されてもよい。実施例によって、各長さフィールドは、ペイロードではなく全リンクレイヤパケットの長さを示してもよい。
Sub−stream Identifier Flag(SIF)フィールドは、HEF(Header Extension Flag)フィールドの後にSID(sub−stream ID)が存在するか否かを示すことができる、1ビットのフィールドであり得る。リンクレイヤパケットにSIDが存在しなければ、SIFフィールドは0に設定され得る。リンクレイヤパケットにおいてHEFフィールドの後にSIDが存在すれば、SIFは1に設定され得る。SIDについての詳細は後述する。
HEFフィールドは、1に設定される場合、将来の拡張のために追加ヘッダーが存在することを示すことができる、1ビットのフィールドであり得る。0の値は、この拡張フィールダーが存在しないことを示すことができる。
以下、分割(segmentation)が活用される場合における追加ヘッダーについて説明する。
Segmentation_Concatenation(S/C)=「0」である場合、追加ヘッダー(tsib10020)が存在し得る。Segment_Sequence_Numberは、リンクレイヤパケットによって伝達される当該分割の順序を示すことができる、5ビットの符号なし整数であり得る。入力パケットの最初の分割を伝達するリンクレイヤパケットに対して、当該フィールドの値は0x0に設定され得る。当該フィールドは、分割される入力パケットに属する各追加セグメント毎に1ずつ増分し得る。
LSI(Last_Segment_Indicator)は、1に設定される場合、当該ペイロードにある分割が入力パケットの最後のものであることを示すことができる、1ビットのフィールドであり得る。0の値は、それが最後の分割ではないことを示すことができる。
SIF(Sub−stream Identifier Flag)は、SIDがHEFフィールドの後に存在するか否かを示すことができる、1ビットのフィールドであり得る。リンクレイヤパケットにSIDが存在しなければ、SIFフィールドは0に設定され得る。リンクレイヤパケットにおいてHEFフィールドの後にSIDが存在すれば、SIFは1に設定され得る。
HEFフィールドは、1に設定される場合、リンクレイヤヘッダーの将来の拡張のために追加ヘッダーの後にオプショナルヘッダー拡張が存在することを示すことができる、1ビットのフィールドであり得る。0の値は、オプショナルヘッダー拡張が存在しないことを示すことができる。
実施例によって、各分割されたセグメントが同一の入力パケットから生成されたことを示すパケットIDフィールドが追加されてもよい。このフィールドは、分割されたセグメントが順に伝送されれば必要でないので、省略されてもよい。
以下、連鎖(concatenation)が活用される場合における追加ヘッダーについて説明する。
Segmentation_Concatenation(S/C)=「1」である場合、追加ヘッダー(tsib10030)が存在し得る。
Length_MSBは、当該リンクレイヤパケットにおいてバイト単位のペイロードの長さのMSBビットを示すことができる、4ビットのフィールドであり得る。当該ペイロードの最大長さは、連鎖のために32767バイトとなる。前述したものと同様に、詳細な数値は変更されてもよい。
Countフィールドは、リンクレイヤパケットに含まれたパケットの数を示すことができるフィールドであり得る。リンクレイヤパケットに含まれたパケットの数に該当する2は、当該フィールドに設定され得る。したがって、リンクレイヤパケットにおいて連鎖したパケットの最大値は9である。Countフィールドがその個数を指示する方法は、実施例毎に異なり得る。すなわち、1から8までの個数が指示されてもよい。
HEFフィールドは、1に設定される場合、リンクレイヤヘッダーの将来の拡張のために追加ヘッダーの後にオプショナルヘッダー拡張が存在することを示すことができる、1ビットのフィールドであり得る。0の値は、拡張ヘッダーが存在しないことを示すことができる。
Component_Lengthは、各パケットのバイト単位の長さを示すことができる12ビットのフィールドであり得る。Component_Lengthフィールドは、最後のコンポーネントパケットを除いて、ペイロードに存在するパケットと同一の順序で含まれる。長さフィールドの数は、(Count+1)によって示すことができる。実施例によって、Countフィールドの値と同一の数の長さフィールドが存在してもよい。リンクレイヤヘッダーが奇数のComponent_Lengthで構成される場合、4個のスタッフィングビットが最後のComponent_Lengthフィールドに後続することができる。これらビットは0に設定され得る。実施例によって、最後の連鎖したインプットパケットの長さを示すComponent_Lengthフィールドは存在しないこともある。この場合、最後の連鎖したインプットパケットの長さは、全ペイロードの長さから、各Component_lengthフィールドが示す値の和を引いた長さで指示することができる。
以下、オプショナルヘッダーについて説明する。
前述したように、オプショナルヘッダーは、追加ヘッダーの後ろに追加されてもよい。オプショナルヘッダーフィールドは、SID及び/又はヘッダー拡張を含むことができる。SIDは、リンクレイヤレベルで特定のパケットストリームをフィルタリングするのに使用される。SIDの一例は、多数のサービスを伝達するリンクレイヤストリームにおいてサービス識別子の役割を果たす。適用可能な場合、サービスと、サービスに該当するSID値との間のマッピング情報はSLTで提供され得る。ヘッダー拡張は、将来の使用のための拡張フィールドを含む。受信機は、自身が理解できない全てのヘッダー拡張を無視し得る。
SIDは、リンクレイヤパケットに対するサブストリーム識別子を示すことができる8ビットのフィールドであり得る。オプショナルヘッダー拡張があれば、SIDは、追加ヘッダーとオプショナルヘッダー拡張との間に存在する。
Header_Extension()は、下記に定義されたフィールドを含むことができる。
Extension_Typeは、Header_Extension()のタイプを示すことができる8ビットのフィールドであり得る。
Extension_Lengthは、Header_Extension()の次のバイトから最後のバイトまでカウントされるHeader Extension()のバイトの長さを示すことができる、8ビットのフィールドであり得る。
Extension_Byteは、Header_Extension()の値を示すバイトであり得る。
図11は、本発明の他の実施例に係るリンクレイヤパケットの追加ヘッダーの構造を示した図である。
以下、シグナリング情報のための追加ヘッダーについて説明する。
リンクレイヤシグナリングがどのようにリンクレイヤパケットに含まれるかは、次の通りである。シグナリングパケットは、ベースヘッダーのPacket_Typeフィールドが100と同一であるときに識別される。
図(tsib11010)は、シグナリング情報のための追加ヘッダーを含むリンクレイヤパケットの構造を示す。リンクレイヤヘッダーだけでなく、リンクレイヤパケットは、シグナリング情報のための追加ヘッダー及び実際のシグナリングデータ自体の2つの追加部分で構成され得る。リンクレイヤシグナリングパケットの全長はリンクレイヤパケットヘッダーに示す。
シグナリング情報のための追加ヘッダーは、次のフィールドを含むことができる。実施例によって一部のフィールドは省略されてもよい。
Signaling_Typeは、シグナリングのタイプを示すことができる8ビットのフィールドであり得る。
Signaling_Type_Extensionは、シグナリングの属性を示すことができる16ビットのフィールドであり得る。当該フィールドの詳細はシグナリングの仕様で定義され得る。
Signaling_Versionは、シグナリングのバージョンを示すことができる8ビットのフィールドであり得る。
Signaling_Formatは、シグナリングデータのデータフォーマットを示すことができる2ビットのフィールドであり得る。ここで、シグナリングフォーマットとは、バイナリ、XMLなどのデータフォーマットを意味し得る。
Signaling_Encodingは、エンコーディング/コンプレッションフォーマットを特定することができる2ビットのフィールドであり得る。本フィールドは、コンプレッションが行われなかったか、どのような特定のコンプレッションが行われたかを示すことができる。
以下、パケットタイプの拡張のための追加ヘッダーについて説明する。
将来にリンクレイヤによって伝達されるパケットタイプ及び追加プロトコルの無制限に近い数を許容するメカニズムを提供するために、追加ヘッダーが定義される。前述したように、ベースヘッダーでPacket_typeが111である場合、パケットタイプの拡張が使用され得る。図(tsib11020)は、タイプの拡張のための追加ヘッダーを含むリンクレイヤパケットの構造を示す。
タイプの拡張のための追加ヘッダーは、次のフィールドを含むことができる。実施例によって一部のフィールドは省略されてもよい。
extended_typeは、ペイロードとしてリンクレイヤパケットにエンカプセレーションされる入力のプロトコルやパケットタイプを示すことができる、16ビットのフィールドであり得る。当該フィールドは、Packet_Typeフィールドによって既に定義された全てのプロトコルやパケットタイプに対して使用することができない。
図12は、本発明の一実施例に係る、MPEG−2 TSパケットのためのリンクレイヤパケットのヘッダーの構造、及びそのエンカプセレーションの過程を示した図である。
以下、入力パケットとしてMPEG−2 TSパケットが入力されたとき、リンクレイヤパケットのフォーマットについて説明する。
この場合、ベースヘッダーのPacket_Typeフィールドは010と同一である。各リンクレイヤパケット内で多数のTSパケットがエンカプセレーションされてもよい。TSパケットの数は、NUMTSフィールドを介してシグナリングされてもよい。この場合、前述したように、特別なリンクレイヤパケットヘッダーフォーマットが使用されてもよい。
リンクレイヤは、伝送効率を向上させるために、MPEG−2 TSのためのオーバーヘッドリダクションメカニズムを提供する。各TSパケットのシンクバイト(0x47)は削除され得る。ヌルパケット及び類似のTSヘッダーを削除するオプションも提供される。
不必要な伝送オーバーヘッドを避けるために、TSヌルパケット(PID=0x1FFF)を除去することができる。削除されたヌルパケットは、DNPフィールドを用いて受信機側で復旧することができる。DNPフィールドは、削除されたヌルパケットのカウントを示す。DNPフィールドを用いたヌルパケット削除メカニズムは、後述する。
伝送効率をさらに向上させるために、MPEG−2 TSパケットの類似のヘッダーを除去することができる。2つ以上の順次的なTSパケットがCC(continuity counter)フィールドを順次増加させ、他のヘッダーフィールドも同一であれば、ヘッダーが最初のパケットで一回伝送され、他のヘッダーは削除される。HDMフィールドは、ヘッダーが削除されたか否かを示すことができる。共通TSヘッダー削除の詳細な過程は後述する。
3つのオーバーヘッドリダクションメカニズムが全て行われる場合、オーバーヘッドリダクションは、シンク除去、ヌルパケット削除、共通ヘッダー削除の順に行うことができる。実施例によって、各メカニズムが行われる順序は変更されてもよい。また、実施例によって一部のメカニズムは省略されてもよい。
MPEG−2 TSパケットエンカプセレーションを使用する場合のリンクレイヤパケットヘッダーの全体的な構造が図(tsib12010)に示されている。
以下、図示された各フィールドについて説明する。Packet_Typeは、前述したように、入力パケットのプロトコルタイプを示すことができる3ビットのフィールドであり得る。MPEG−2 TSパケットエンカプセレーションのために、当該フィールドは、常に010に設定され得る。
NUMTS(Number of TS packets)は、当該リンクレイヤパケットのペイロードでTSパケットの数を示すことができる4ビットのフィールドであり得る。最大16個のTSパケットが一つのリンクレイヤパケットで支援され得る。NUMTS=0の値は、16個のTSパケットがリンクレイヤパケットのペイロードによって伝達されることを示すことができる。NUMTSの他の全ての値に対して、同じ数のTSパケットが認識される。例えば、NUMTS=0001は、一つのTSパケットが伝達されることを意味する。
AHF(additional header flag)は、追加ヘッダーが存在するか否かを示すことができるフィールドであり得る。0の値は、追加ヘッダーが存在しないことを示す。1の値は、1バイト長の追加ヘッダーがベースヘッダーの次に存在することを示す。ヌルTSパケットが削除されるか、またはTSヘッダーコンプレッションが適用されれば、当該フィールドは1に設定され得る。TSパケットエンカプセレーションのための追加ヘッダーは、次の2つのフィールドで構成され、当該リンクレイヤパケットでのAHFの値が1に設定される場合にのみ存在する。
HDM(header deletion mode)は、TSヘッダー削除を当該リンクレイヤパケットに適用できるか否かを示す1ビットのフィールドであり得る。1の値は、TSヘッダー削除を適用できることを示す。0の値は、TSヘッダー削除の方法が当該リンクレイヤパケットに適用されないことを示す。
DNP(deleted null packets)は、当該リンクレイヤパケットの前に削除されたヌルTSパケットの数を示す7ビットのフィールドであり得る。最大128個のヌルTSパケットが削除され得る。HDM=0である場合、DNP=0の値は、128個のヌルパケットが削除されることを示すことができる。HDM=1である場合、DNP=0の値は、ヌルパケットが削除されないことを示すことができる。DNPの他の全ての値に対して、同じ数のヌルパケットが認識される。例えば、DNP=5は、5個のヌルパケットが削除されることを意味する。
前述した各フィールドのビット数は変更可能であり、変更されたビット数に応じて、当該フィールドが指示する値の最小/最大値は変更され得る。これは、設計者の意図によって変更されてもよい。
以下、シンクバイト削除(SYNC byte removal)について説明する。
TSパケットをリンクレイヤパケットのペイロードにカプセル化する場合、各TSパケットの開始からシンクバイト(0x47)が削除され得る。したがって、リンクレイヤパケットのペイロードにカプセル化されたMPEG 2−TSパケットの長さは(元の188バイトの代わりに)、常に187バイトである。
以下、ヌルパケット削除(Null Packet Deletion)について説明する。
伝送ストリーム規則は、送信機のマルチプレクサの出力及び受信機のデマルチプレクサの入力でのビットレートが時間に対して一定であり、終端間の遅延も一定であることを要求する。一部の伝送ストリーム入力信号に対して、ヌルパケットは、一定のビットレートストリームに可変的なビットレートサービスを収容するために存在することができる。この場合、不必要な伝送オーバーヘッドを避けるために、TSヌルパケット(即ち、PID=0x1FFFであるTSパケット)が除去され得る。この処理は、除去されたヌルパケットが受信機で元の正確な位置に再び挿入され得る方式で実行されるので、一定のビットレートを保障し、PCRタイムスタンプアップデートを行う必要がなくなる。
リンクレイヤパケットの生成の前に、DNPと呼ばれるカウンターは、まず、0にリセットされた後に、現在のリンクレイヤパケットのペイロードにエンカプセレーションされる最初のヌルTSパケットではない、パケットに先行する各削除されたヌルパケットに対して増分され得る。その後、連続した有用なTSパケットのグループが現在のリンクレイヤパケットのペイロードにエンカプセレーションされ、そのヘッダーでの各フィールドの値が決定され得る。生成されたリンクレイヤパケットがフィジカルレイヤに注入された後、DNPは0にリセットされる。DNPが最高の許容値に到達する場合、次のパケットもヌルパケットであれば、当該ヌルパケットは有用なパケットに維持され、次のリンクレイヤパケットのペイロードにエンカプセレーションされる。各リンクレイヤパケットは、それのペイロードに少なくとも1つの有用なTSパケットを含むことができる。
以下、TSパケットヘッダー削除(TS Packet Header Deletion)について説明する。TSパケットヘッダー削除は、TSパケットヘッダー圧縮と呼ぶこともできる。
2つ以上の順次的なTSパケットがCCフィールドを順次増加させ、他のヘッダーフィールドも同一であれば、ヘッダーが最初のパケットで一回伝送され、他のヘッダーは削除される。重複したMPEG−2 TSパケットが2つ以上の順次的なTSパケットに含まれると、ヘッダーの削除は送信機側で適用することができない。HDMフィールドは、ヘッダーが削除されるか否かを示すことができる。TSヘッダーが削除される場合、HDMは1に設定され得る。受信機側で、最初のパケットヘッダーを用いて、削除されたパケットヘッダーが復旧され、CCが最初のヘッダーから順に増加することによって復旧される。
図示された実施例(tsib12020)は、TSパケットのインプットストリームがリンクレイヤパケットにエンカプセレーションされる過程の一実施例である。まず、SYNCバイト(0x47)を有するTSパケットからなるTSストリームが入力され得る。まず、SYNCバイトの削除過程を通じてシンクバイトを削除することができる。この実施例において、ヌルパケット削除は行われないと仮定する。
ここで、図示された8個のTSパケットのパケットヘッダーにおいて、CC、すなわち、Countinuity Counterフィールド値を除いた他の値が全て同一であると仮定する。この場合、TSパケット削除/圧縮を行うことができる。CC=1である最初のTSパケットのヘッダーのみを残し、残りの7個のTSパケットのヘッダーを削除する。処理されたTSパケットは、リンクレイヤパケットのペイロードにエンカプセレーションされてもよい。
完成されたリンクレイヤパケットを見ると、Packet_Typeフィールドは、TSパケットが入力された場合であるので010の値を有することができる。NUMTSフィールドは、エンカプセレーションされたTSパケットの個数を示すことができる。AHFフィールドは、パケットヘッダーの削除が行われたので1に設定され、追加ヘッダーの存在を知らせることができる。HDMフィールドは、ヘッダーの削除が行われたので1に設定され得る。DNPは、ヌルパケットの削除が行われなかったので、0に設定され得る。
図13は、本発明の一実施例に係るIPヘッダー圧縮において、アダプテーションモードの実施例を示した図である(送信側)。
以下、IPヘッダー圧縮(IP Header Compression)について説明する。
リンクレイヤにおいて、IPヘッダーコンプレッション/デコンプレッションスキームが提供され得る。IPヘッダーコンプレッションは、ヘッダーコンプレッサー/デコンプレッサー及びアダプテーションモジュールの2つの部分を含むことができる。ヘッダーコンプレッションスキームはRoHCに基づくことができる。また、放送用途にアダプテーション機能が追加される。
送信機側で、RoHCコンプレッサーは、各パケットに対してヘッダーの大きさを減少させる。その後、アダプテーションモジュールは、コンテキスト情報を抽出し、各パケットストリームからシグナリング情報を生成する。受信機側で、アダプテーションモジュールは、受信されたパケットストリームと関連するシグナリング情報をパーシングし、コンテキスト情報を受信されたパケットストリームに添付する。RoHCデコンプレッサーは、パケットヘッダーを復旧することによって元のIPパケットを再構成する。
ヘッダーコンプレッションスキームは、前述したように、ROHCをベースとすることができる。特に、本システムでは、ROHCのUモード(uni dirctional mode)でROHCフレームワークが動作することができる。また、本システムにおいて、0x0002のプロファイル識別子で識別されるROHC UDPヘッダーコンプレッションプロファイルが使用され得る。
以下、アダプテーション(Adaptation)について説明する。
単方向リンクを介した伝送の場合、受信機がコンテキストの情報を有していないと、デコンプレッサーは、完全なコンテキストを受信する時まで、受信されたパケットヘッダーを復旧することができない。これは、チャンネル変更遅延及びターンオンディレイ(turn−on delay)を招くことがある。このような理由で、コンプレッサーとデコンプレッサーとの間のコンフィギュレーションパラメータ及びコンテキスト情報は、常にパケットフローと共に伝送され得る。
アダプテーション機能は、コンフィギュレーションパラメータ及びコンテキスト情報の帯域外伝送を提供する。帯域外伝送は、リンクレイヤシグナリングを通じて行うことができる。したがって、アダプテーション機能は、コンテキスト情報の損失によるデコンプレッションエラー及びチャンネル変更遅延を減少させるために用いられる。
以下、コンテキスト情報(Context Information)の抽出について説明する。
コンテキスト情報の抽出は、アダプテーションモードに応じて様々な方法で行うことができる。本発明では、以下の3つの実施例について説明する。本発明の範囲は、後述するアダプテーションモードの実施例に限定されない。ここで、アダプテーションモードは、コンテキスト抽出モードと呼ぶこともできる。
アダプテーションモード1(図示せず)は、基本的なROHCパケットストリームに対していかなる追加的な動作も加えられていないモードであり得る。すなわち、このモードでアダプテーションモジュールは、バッファーとして動作することができる。したがって、このモードでは、リンクレイヤシグナリングにコンテキスト情報が含まれていない。
アダプテーションモード2(tsib13010)において、アダプテーションモジュールは、RoHCパケットフローからIRパケットを検出し、コンテキスト情報(スタティックチェーン)を抽出することができる。コンテキスト情報を抽出した後、各IRパケットは、IR−DYNパケットに転換され得る。転換されたIR−DYNパケットは、元のパケットの代わりに、IRパケットと同一の順序でRoHCパケットフロー内に含まれて伝送され得る。
アダプテーションモード3(tsib13020)において、アダプテーションモジュールは、RoHCパケットフローからIR及びIR−DYNパケットを検出し、コンテキスト情報を抽出することができる。スタティックチェーン及びダイナミックチェーンはIRパケットから抽出することができ、ダイナミックチェーンはIR−DYNパケットから抽出することができる。コンテキスト情報を抽出した後、それぞれのIR及びIR−DYNパケットは圧縮されたパケットに転換され得る。圧縮されたパケットのフォーマットは、IRまたはIR−DYNパケットの次のパケットと同一であり得る。転換された圧縮パケットは、元のパケットの代わりに、IRまたはIR−DYNパケットと同一の順序でRoHCパケットフロー内に含まれて伝送され得る。
シグナリング(コンテキスト)情報は、伝送構造に基づいてエンカプセレーションされ得る。例えば、コンテキスト情報は、リンクレイヤシグナリングにエンカプセレーションされ得る。この場合、パケットタイプ値は100に設定され得る。
前述したアダプテーションモード2、3に対して、コンテキスト情報に対するリンクレイヤパケットは、100のPacket Typeフィールド値を有することができる。また、圧縮されたIPパケットに対するリンクレイヤパケットは、001のPacket Typeフィールド値を有することができる。これは、それぞれシグナリング情報、圧縮されたIPパケットがリンクレイヤパケットに含まれていることを示すもので、前述した通りである。
以下、抽出されたコンテキスト情報を伝送する方法について説明する。
抽出されたコンテキスト情報は、特定のフィジカルデータ経路を介してシグナリングデータと共に、RoHCパケットフローと別途に伝送され得る。コンテキストの伝送は、フィジカルレイヤ経路の構成に依存する。コンテキスト情報は、シグナリングデータパイプを介して他のリンクレイヤシグナリングと共に伝送され得る。
すなわち、コンテキスト情報を有するリンクレイヤパケットは、他のリンクレイヤシグナリング情報を有するリンクレイヤパケットと共にシグナリングPLPを介して伝送され得る(Packet_Type=100)。コンテキスト情報が抽出された圧縮IPパケットは、一般的なPLPを介して伝送され得る(Packet_Type=001)。ここで、実施例によって、シグナリングPLPは、L1シグナリングパス(path)を意味してもよい。また、実施例によって、シグナリングPLPは、一般的なPLPと区分されず、シグナリング情報が伝送される特定の一般PLPを意味してもよい。
受信側では、パケットストリームを受信するに先立ち、受信機がシグナリング情報を得る必要がある。受信機が、シグナリング情報を獲得するために最初のPLPをデコーディングすると、コンテキストシグナリングも受信することができる。シグナリングの獲得が行われた後、パケットストリームを受信するためのPLPが選択され得る。すなわち、受信機は、まず、イニシャルPLPを選択して、コンテキスト情報を含めてシグナリング情報を得ることができる。ここで、イニシャルPLPは、前述したシグナリングPLPであり得る。この後、受信機は、パケットストリームを得るためのPLPを選択することができる。これを通じて、コンテキスト情報は、パケットストリームの受信に先立って獲得できる。
パケットストリームを得るためのPLPが選択された後、アダプテーションモジュールは、受信されたパケットフローからIR−DYNパケットを検出することができる。その後、アダプテーションモジュールは、シグナリングデータにおいてコンテキスト情報からスタティックチェーンをパーシングする。これは、IRパケットを受信することと類似している。同一のコンテキスト識別子に対して、IR−DYNパケットはIRパケットに復旧され得る。復旧されたRoHCパケットフローはRoHCデコンプレッサーに送られる。その後、デコンプレッションが開始され得る。
図14は、本発明の一実施例に係るLMT(Link Mapping Table)及びROHC−Uディスクリプションテーブルを示した図である。
以下、リンクレイヤシグナリングについて説明する。
主に、リンクレイヤシグナリングはIPレベル下で動作する。受信機側で、リンクレイヤシグナリングは、SLT及びSLSのようなIPレベルシグナリングよりも先に獲得され得る。したがって、リンクレイヤシグナリングはセッション設定の前に獲得できる。
リンクレイヤシグナリングに対して、入力経路に応じて、インターナルリンクレイヤシグナリング及びエクスターナルリンクレイヤシグナリングの2種類のシグナリングが存在することができる。インターナルリンクレイヤシグナリングは、送信機側でリンクレイヤで生成される。また、リンクレイヤは、外部のモジュールまたはプロトコルからシグナリングを取る。このような種類のシグナリング情報はエクスターナルリンクレイヤシグナリングであると見なされる。一部のシグナリングがIPレベルシグナリングに先立って獲得される必要があれば、外部のシグナリングは、リンクレイヤパケットのフォーマットで伝送される。
リンクレイヤシグナリングは、前述したように、リンクレイヤパケットにエンカプセレーションされ得る。リンクレイヤパケットは、バイナリ及びXMLを含んだ全てのフォーマットのリンクレイヤシグナリングを伝達することができる。同一のシグナリング情報がリンクレイヤシグナリングに対して異なるフォーマットで伝送され得る。
インターナルリンクレイヤシグナリングには、リンクマッピングのためのシグナリング情報が含まれてもよい。LMTは、PLPに伝達される上位レイヤセッションのリストを提供する。LMTはまた、リンクレイヤで上位レイヤセッションを伝達するリンクレイヤパケットを処理するための追加情報を提供する。
本発明に係るLMTの一実施例(tsib14010)が図示された。
signaling_typeは、当該テーブルによって伝達されるシグナリングのタイプを示す8ビットの符号なし整数フィールドであり得る。LMTに対するsignaling_typeフィールドの値は0x01に設定され得る。
PLP_IDは、当該テーブルに該当するPLPを示す8ビットのフィールドであり得る。
num_sessionは、PLP_IDフィールドによって識別されるPLPに伝達される上位レイヤセッションの個数を提供する8ビットの符号なし整数フィールドであり得る。ignaling_typeフィールドの値が0x01であれば、当該フィールドは、PLPでUDP/IPセッションの個数を示すことができる。
src_IP_addは、PLP_IDフィールドによって識別されるPLPに伝達される上位レイヤセッションのソースIPアドレスを含む32ビットの符号なし整数フィールドであり得る。
dst_IP_addは、PLP_IDフィールドによって識別されるPLPに伝達される上位レイヤセッションのデスティネーションIPアドレスを含む32ビットの符号なし整数フィールドであり得る。
src_UDP_portは、PLP_IDフィールドによって識別されるPLPに伝達される上位レイヤセッションのソースUDPポートナンバーを示す16ビットの符号なし整数フィールドであり得る。
dst_UDP_portは、PLP_IDフィールドによって識別されるPLPに伝達される上位レイヤセッションのデスティネーションUDPポートナンバーを示す16ビットの符号なし整数フィールドであり得る。
SID_flagは、4個のフィールドSrc_IP_add、Dst_IP_add、Src_UDP_Port、Dst_UDP_Portによって識別される上位レイヤセッションを伝達するリンクレイヤパケットがそのオプショナルヘッダーにSIDフィールドを有するか否かを示す1ビットのブールフィールドであり得る。当該フィールドの値が0に設定されると、上位レイヤセッションを伝達するリンクレイヤパケットがそのオプショナルヘッダーにSIDフィールドを有さない。当該フィールドの値が1に設定されると、上位レイヤセッションを伝達するリンクレイヤパケットがそのオプショナルヘッダーにSIDフィールドを有することができ、SIDフィールドの値が、当該テーブルで次のSIDフィールドと同一であり得る。
compressed_flagは、ヘッダーコンプレッションが、4個のフィールドSrc_IP_add、Dst_IP_add、Src_UDP_Port、Dst_UDP_Portによって識別される上位レイヤセッションを伝達するリンクレイヤパケットに適用されるか否かを示す1ビットのブールフィールドであり得る。当該フィールドの値が0に設定されると、上位レイヤセッションを伝達するリンクレイヤパケットは、そのベースヘッダーにPacket_Typeフィールドの0x00の値を有することができる。当該フィールドの値が1に設定されると、上位レイヤセッションを伝達するリンクレイヤパケットは、そのベースヘッダーにPacket_Typeフィールドの0x01の値を有することができ、Context_IDフィールドが存在することができる。
SIDは、4個のフィールドSrc_IP_add、Dst_IP_add、Src_UDP_Port、Dst_UDP_Portによって識別される上位レイヤセッションを伝達するリンクレイヤパケットに対するサブストリーム識別子を示す8ビットの符号なし整数フィールドであり得る。当該フィールドは、SID_flagの値が1と同一であるときに存在することができる。
context_idは、ROHC−Uディスクリプションテーブルに提供されたCID(context id)に対するレファレンスを提供する8ビットのフィールドであり得る。当該フィールドは、compressed_flagの値が1と同一であるときに存在することができる。
本発明に係るROHC−Uディスクリプションテーブルの一実施例(tsib14020)が図示された。前述したように、ROHC−Uアダプテーションモジュールは、ヘッダーコンプレッションに関連する情報を生成することができる。
signaling_typeは、当該テーブルによって伝達されるシグナリングのタイプを示す8ビットのフィールドであり得る。ROHC−Uディスクリプションテーブルに対するsignaling_typeフィールドの値は「0x02」に設定され得る。
PLP_IDは、当該テーブルに該当するPLPを示す8ビットのフィールドであり得る。
context_idは、圧縮されたIPストリームのCIDを示す8ビットのフィールドであり得る。当該システムにおいて、8ビットのCIDは、大きいCIDのために使用することができる。
context_profileは、ストリームを圧縮するために使用されるプロトコルの範囲を示す8ビットのフィールドであり得る。当該フィールドは省略してもよい。
adaptation_modeは、当該PLPでアダプテーションモジュールのモードを示す2ビットのフィールドであり得る。アダプテーションモードについては前述した。
context_configは、コンテキスト情報の組み合わせを示す2ビットのフィールドであり得る。当該テーブルにコンテキスト情報が存在しなければ、当該フィールドは「0x0」に設定され得る。当該テーブルにstatic_chain()またはdynamic_chain()バイトが含まれれば、当該フィールドは「0x01」または「0x02」に設定され得る。当該テーブルにstatic_chain()及びdynamic_chain()バイトが全て含まれれば、当該フィールドは「0x03」に設定され得る。
context_lengthは、スタティックチェーンバイトシーケンスの長さを示す8ビットのフィールドであり得る。当該フィールドは省略してもよい。
static_chain_byte()は、RoHC−Uデコンプレッサーを初期化するために使用されるスタティック情報を伝達するフィールドであり得る。当該フィールドの大きさ及び構造はコンテキストプロファイルに依存する。
dynamic_chain_byte()は、RoHC−Uデコンプレッサーを初期化するために使用されるダイナミック情報を伝達するフィールドであり得る。当該フィールドの大きさ及び構造はコンテキストプロファイルに依存する。
static_chain_byteは、IRパケットのサブヘッダー情報として定義することができる。dynamic_chain_byteは、IRパケット及びIR−DYNパケットのサブヘッダー情報として定義することができる。
図15は、本発明の一実施例に係る送信機側のリンクレイヤの構造を示した図である。
本実施例は、IPパケットを処理することを仮定した実施例である。送信機側のリンクレイヤは、機能的な観点から、大きく、シグナリング情報を処理するリンクレイヤシグナリング部分、オーバーヘッドリダクション部分、及び/又はエンカプセレーション部分を含むことができる。また、送信機側のリンクレイヤは、リンクレイヤ全体の動作に対する制御及びスケジューリングのためのスケジューラ、及び/又はリンクレイヤの入出力部分などを含むことができる。
まず、上位レイヤのシグナリング情報及び/又はシステムパラメータ(tsib15010)がリンクレイヤに伝達され得る。また、IPレイヤ(tsib15110)から、IPパケットを含むIPストリームがリンクレイヤに伝達され得る。
スケジューラ(tsib15020)は、前述したように、リンクレイヤに含まれた多数のモジュールの動作を決定し、制御する役割を果たすことができる。伝達されたシグナリング情報及び/又はシステムパラメータ(tsib15010)は、スケジューラ(tsib15020)によってフィルタリングまたは活用されてもよい。伝達されたシグナリング情報及び/又はシステムパラメータ(tsib15010)のうち、受信機で必要な情報はリンクレイヤシグナリング部分に伝達されてもよい。また、シグナリング情報のうちリンクレイヤの動作に必要な情報は、オーバーヘッドリダクションコントローラー(tsib15120)またはエンカプセレーションコントローラー(tsib15180)に伝達されてもよい。
リンクレイヤシグナリング部分は、フィジカルレイヤでシグナリングとして伝送される情報を収集し、これを、伝送に適した形態に変換/構成する役割を果たすことができる。リンクレイヤシグナリング部分は、シグナリングマネジャー(tsib15030)、シグナリングフォーマッタ(tsib15040)、及び/又はチャンネルのためのバッファー(tsib15050)を含むことができる。
シグナリングマネジャー(tsib15030)は、スケジューラ(tsib15020)から伝達されたシグナリング情報、及び/又はオーバーヘッドリダクション部分から伝達されたシグナリング及び/又はコンテキスト(context)情報を受信することができる。シグナリングマネジャー(tsib15030)は、伝達されたデータに対して、各シグナリング情報が伝送される経路を決定することができる。各シグナリング情報は、シグナリングマネジャー(tsib15030)によって決定された経路で伝達されてもよい。前述したように、FIC、EASなどの区分されたチャンネルで伝送されるシグナリング情報はシグナリングフォーマッタ(tsib15040)に伝達され、その他のシグナリング情報はエンカプセレーションバッファー(tsib15070)に伝達されてもよい。
シグナリングフォーマッタ(tsib15040)は、別途に区分されたチャンネルを介してシグナリング情報を伝送できるように、関連するシグナリング情報を各区分されたチャンネルに合う形態でフォーマットする役割を果たすことができる。前述したように、フィジカルレイヤには、物理的/論理的に区分された別途のチャンネルがあり得る。これら区分されたチャンネルは、FICシグナリング情報や、EAS関連情報を伝送するのに使用することができる。FICまたはEAS関連情報は、シグナリングマネジャー(tsib15030)によって分類されてシグナリングフォーマッタ(tsib15040)に入力されてもよい。シグナリングフォーマッタ(tsib15040)は、各情報を、それぞれの別途のチャンネルに合わせてフォーマットすることができる。FIC、EAS以外にも、フィジカルレイヤが特定のシグナリング情報を別途の区分されたチャンネルを介して伝送するものと設計された場合には、その特定のシグナリング情報のためのシグナリングフォーマッタを追加することができる。このような方式を通じて、リンクレイヤが、様々なフィジカルレイヤに対して互換可能となり得る。
チャンネルのためのバッファー(tsib15050)は、シグナリングフォーマッタ(tsib15040)から伝達されたシグナリング情報を、指定された別途のチャンネル(tsib15060)に伝達する役割を果たすことができる。別途のチャンネルの数、内容は、実施例によって変更されてもよい。
前述したように、シグナリングマネジャー(tsib15030)は、特定のチャンネルに伝達されないシグナリング情報をエンカプセレーションバッファー(tsib15070)に伝達することができる。エンカプセレーションバッファー(tsib15070)は、特定のチャンネルに伝達されないシグナリング情報を受信するバッファーの役割を果たすことができる。
シグナリング情報のためのエンカプセレーション(tsib15080)は、特定のチャンネルに伝達されないシグナリング情報に対してエンカプセレーションを行うことができる。トランスミッションバッファー(tsib15090)は、エンカプセレーションされたシグナリング情報を、シグナリング情報のためのDP(tsib15100)に伝達するバッファーの役割を果たすことができる。ここで、シグナリング情報のためのDP(tsib15100)は、前述したPLS領域を意味し得る。
オーバーヘッドリダクション部分は、リンクレイヤに伝達されるパケットのオーバーヘッドを除去し、効率的な伝送が可能にすることができる。オーバーヘッドリダクション部分は、リンクレイヤに入力されるIPストリームの数だけ構成することができる。
オーバーヘッドリダクションバッファー(tsib15130)は、上位レイヤから伝達されたIPパケットの入力を受ける役割を果たすことができる。伝達されたIPパケットは、オーバーヘッドリダクションバッファー(tsib15130)を介してオーバーヘッドリダクション部分に入力されてもよい。
オーバーヘッドリダクションコントローラー(tsib15120)は、オーバーヘッドリダクションバッファー(tsib15130)に入力されるパケットストリームに対してオーバーヘッドリダクションを行うか否かを決定することができる。オーバーヘッドリダクションコントローラー(tsib15120)は、パケットストリーム別にオーバーヘッドリダクションを行うか否かを決定することができる。パケットストリームにオーバーヘッドリダクションが行われる場合、RoHCコンプレシャー(tsib15140)にパケットが伝達されてオーバーヘッドリダクションが行われ得る。パケットストリームにオーバーヘッドリダクションが行われない場合、エンカプセレーション部分にパケットが伝達され、オーバーヘッドリダクションなしにエンカプセレーションが行われ得る。パケットにオーバーヘッドリダクションを行うか否かは、リンクレイヤに伝達されたシグナリング情報(tsib15010)によって決定されてもよい。このシグナリング情報は、スケジューラ(tsib15020)によってエンカプセレーションコントローラー(tsib15180)に伝達されてもよい。
RoHCコンプレシャー(tsib15140)は、パケットストリームに対してオーバーヘッドリダクションを行うことができる。RoHCコンプレシャー(tsib15140)は、パケットのヘッダーを圧縮する動作を行うことができる。オーバーヘッドリダクションには様々な方法を使用することができる。前述した、本発明が提案した方法によってオーバーヘッドリダクションを行うことができる。本実施例は、IPストリームを仮定しており、RoHCコンプレシャーと表現したが、実施例によって名称は変更されてもよく、動作も、IPストリームの圧縮に限定されず、全ての種類のパケットのオーバーヘッドリダクションがRoHCコンプレシャー(tsib15140)によって行われてもよい。
パケットストリームコンフィギュレーションブロック(tsib15150)は、ヘッダーが圧縮されたIPパケットのうち、シグナリング領域に伝送される情報とパケットストリームに伝送される情報を分離することができる。パケットストリームに伝送される情報とは、DP領域に伝送される情報を意味し得る。シグナリング領域に伝送される情報は、シグナリング及び/又はコンテキストコントローラー(tsib15160)に伝達されてもよい。パケットストリームに伝送される情報はエンカプセレーション部分に伝送されてもよい。
シグナリング及び/又はコンテキストコントローラー(tsib15160)は、シグナリング及び/又はコンテキスト(context)情報を収集し、これをシグナリングマネジャーに伝達することができる。シグナリング及び/又はコンテキスト情報をシグナリング領域に伝送するためである。
エンカプセレーション部分は、パケットをフィジカルレイヤに伝達するのに適した形態でエンキャプシュレートする動作を行うことができる。エンカプセレーション部分は、IPストリームの数だけ構成することができる。
エンカプセレーションバッファー(tsib15170)は、エンカプセレーションのためにパケットストリームを受信する役割を果たすことができる。オーバーヘッドリダクションが行われた場合、オーバーヘッドリダクションされたパケットを受信し、オーバーヘッドリダクションが行われていない場合、入力されたIPパケットをそのまま受信することができる。
エンカプセレーションコントローラー(tsib15180)は、入力されたパケットストリームに対してエンカプセレーションを行うか否かを決定することができる。エンカプセレーションが行われる場合、パケットストリームはセグメンテーション/コンカチネーション(tsib15190)に伝達されてもよい。エンカプセレーションが行われない場合、パケットストリームはトランスミッションバッファー(tsib15230)に伝達されてもよい。パケットをエンカプセレーションするか否かは、リンクレイヤに伝達されたシグナリング情報(tsib15010)によって決定されてもよい。このシグナリング情報は、スケジューラ(tsib15020)によってエンカプセレーションコントローラー(tsib15180)に伝達されてもよい。
セグメンテーション/コンカチネーションブロック(tsib15190)では、パケットに対して、前述した分割または連鎖作業を行うことができる。すなわち、入力されたIPパケットが、リンクレイヤの出力であるリンクレイヤパケットよりも長い場合、一つのIPパケットを分割して多数個のセグメントに分けて複数個のリンクレイヤパケットペイロードを作ることができる。また、入力されたIPパケットが、リンクレイヤの出力であるリンクレイヤパケットよりも短い場合、複数個のIPパケットをつなげて一つのリンクレイヤパケットペイロードを作ることができる。
パケットコンフィギュレーションテーブル(tsib15200)は、分割及び/又は連鎖されたリンクレイヤパケットの構成情報を有することができる。パケットコンフィギュレーションテーブル(tsib15200)の情報は、送信機と受信機が同じ情報を有することができる。パケットコンフィギュレーションテーブル(tsib15200)の情報が送信機と受信機で参照されてもよい。パケットコンフィギュレーションテーブル(tsib15200)の情報のインデックス値が当該リンクレイヤパケットのヘッダーに含まれてもよい。
リンクレイヤヘッダー情報ブロック(tsib15210)は、エンカプセレーション過程で発生するヘッダー情報を収集することができる。また、リンクレイヤヘッダー情報ブロック(tsib15210)は、パケットコンフィギュレーションテーブル(tsib15200)が有する情報を収集することができる。リンクレイヤヘッダー情報ブロック(tsib15210)は、リンクレイヤパケットのヘッダーの構造に応じてヘッダー情報を構成することができる。
ヘッダーアタッチメントブロック(tsib15220)は、セグメンテーション及び/又はコンカチネーションされたリンクレイヤパケットのペイロードにヘッダーを追加することができる。トランスミッションバッファー(tsib15230)は、リンクレイヤパケットをフィジカルレイヤのDP(tsib15240)に伝達するためのバッファーの役割を果たすことができる。
各ブロック乃至モジュール及び部分(part)は、リンクレイヤにおいて一つのモジュール/プロトコルとして構成されてもよく、複数個のモジュール/プロトコルとして構成されてもよい。
図16は、本発明の一実施例に係る受信機側のリンクレイヤの構造を示した図である。
本実施例は、IPパケットを処理することを仮定した実施例である。受信機側のリンクレイヤは、機能的な観点から、大きく、シグナリング情報を処理するリンクレイヤシグナリング部分、オーバーヘッドプロセシング部分、及び/又はデカプセレーション部分を含むことができる。また、受信機側のリンクレイヤは、リンクレイヤ全体の動作に対する制御及びスケジューリングのためのスケジューラ、及び/又はリンクレイヤの入出力部分などを含むことができる。
まず、フィジカルレイヤを介して伝送された各情報がリンクレイヤに伝達され得る。リンクレイヤは、各情報を処理して、送信側で処理する前の元の状態に戻した後、上位レイヤに伝達することができる。この実施例において、上位レイヤはIPレイヤであってもよい。
フィジカルレイヤで区分された特定のチャンネル(tsib16030)を介して伝達された情報がリンクレイヤシグナリング部分に伝達され得る。リンクレイヤシグナリング部分は、フィジカルレイヤから受信されたシグナリング情報を判別し、リンクレイヤの各部分に、判別されたシグナリング情報を伝達する役割を果たすことができる。
チャンネルのためのバッファー(tsib16040)は、特定のチャンネルを介して伝送されたシグナリング情報を受信するバッファーの役割を果たすことができる。前述したように、フィジカルレイヤに物理的/論理的に区分された別途のチャンネルが存在する場合、そのチャンネルを介して伝送されたシグナリング情報を受信することができる。別途のチャンネルから受信した情報が分割された状態である場合、完全な形態の情報になるまで、分割された情報を格納することができる。
シグナリングデコーダ/パーサ(tsib16050)は、特定のチャンネルを介して受信されたシグナリング情報のフォーマットを確認し、リンクレイヤで活用される情報を抽出することができる。特定のチャンネルを介したシグナリング情報がエンコーディングされている場合にはデコーディングを行うことができる。また、実施例によって、当該シグナリング情報の無欠性などを確認してもよい。
シグナリングマネジャー(tsib16060)は、多数の経路を介して受信されたシグナリング情報を統合することができる。後述するシグナリングのためのDP(tsib16070)を介して受信されたシグナリング情報もシグナリングマネジャー(tsib16060)で統合することができる。シグナリングマネジャー(tsib16060)は、リンクレイヤ内の各部分に必要なシグナリング情報を伝達することができる。例えば、オーバーヘッドプロセシング部分に、パケットのリカバリーのためのコンテキスト情報などを伝達することができる。また、スケジューラ(tsib16020)に、制御のためのシグナリング情報を伝達することができる。
シグナリングのためのDP(tsib16070)を介して、別途の特別なチャンネルで受信されていない一般的なシグナリング情報が受信されてもよい。ここで、シグナリングのためのDPとは、PLSまたはL1などを意味し得る。ここで、DPは、PLP(Physical Layer Pipe)と呼ぶこともできる。レセプションバッファー(tsib16080)は、シグナリングのためのDPから伝送されたシグナリング情報を受信するバッファーの役割を果たすことができる。シグナリング情報のデカプセレーションブロック(tsib16090)では、受信されたシグナリング情報をデカプセレーションすることができる。デカプセレーションされたシグナリング情報は、デカプセレーションバッファー(tsib16100)を経てシグナリングマネジャー(tsib16060)に伝達されてもよい。前述したように、シグナリングマネジャー(tsib16060)は、シグナリング情報を組み合わせてリンクレイヤ内の必要な部分に伝達することができる。
スケジューラ(tsib16020)は、リンクレイヤに含まれた多数のモジュールの動作を決定し、制御する役割を果たすことができる。スケジューラ(tsib16020)は、レシーバー情報(tsib16010)及び/又はシグナリングマネジャー(tsib16060)から伝達された情報を用いて、リンクレイヤの各部分を制御することができる。また、スケジューラ(tsib16020)は、各部分の動作モードなどを決定することができる。ここで、レシーバー情報(tsib16010)は、受信機が予め格納していた情報を意味し得る。スケジューラ(tsib16020)は、チャンネル切り替えなどのようにユーザが変更する情報も用いて、制御に活用することができる。
デカプセレーション部分は、フィジカルレイヤのDP(tsib16110)から受信されたパケットをフィルタリングし、当該パケットのタイプに応じてパケットを分離する役割を果たすことができる。デカプセレーション部分は、フィジカルレイヤで同時にデコーディングできるDPの数だけ構成することができる。
デカプセレーションバッファー(tsib16110)は、デカプセレーションのためにフィジカルレイヤからパケットストリームを受信するバッファーの役割を果たすことができる。デカプセレーションコントローラー(tsib16130)は、入力されたパケットストリームに対してデカプセレーションを行うか否かを決定することができる。デカプセレーションが行われる場合、パケットストリームはリンクレイヤヘッダーパーサ(tsib16140)に伝達されてもよい。デカプセレーションが行われない場合、パケットストリームはアウトプットバッファー(tsib16220)に伝達されてもよい。デカプセレーションを行うか否かを決定するにおいて、スケジューラ(tsib16020)から伝達されたシグナリング情報を活用することができる。
リンクレイヤヘッダーパーサ(tsib16140)は、伝達されたリンクレイヤパケットのヘッダーを確認することができる。ヘッダーを確認することによって、リンクレイヤパケットのペイロードに含まれているIPパケットの構成を確認することができる。例えば、IPパケットは、セグメンテーションされているか、またはコンカチネーションされていてもよい。
パケットコンフィギュレーションテーブル(tsib16150)は、セグメンテーション及び/又はコンカチネーションで構成されるリンクレイヤパケットのペイロード情報を含むことができる。パケットコンフィギュレーションテーブル(tsib16150)の情報は、送信機と受信機が同じ情報を有することができる。パケットコンフィギュレーションテーブル(tsib16150)の情報が送信機と受信機で参照されてもよい。リンクレイヤパケットに含まれたインデックス情報に基づいて、再結合(reassembly)に必要な値を見つけることができる。
再結合ブロック(reassembly)(tsib16160)は、セグメンテーション及び/又はコンカチネーションで構成されたリンクレイヤパケットのペイロードを元のIPストリームのパケットとして構成することができる。セグメントを一つに集めて一つのIPパケットとして再構成したり、コンカチネーションされたパケットを分離して複数個のIPパケットストリームとして再構成したりすることができる。再結合されたIPパケットは、オーバーヘッドプロセシング部分に伝達されてもよい。
オーバーヘッドプロセシング部分は、送信機で行われたオーバーヘッドリダクションの逆過程として、オーバーヘッドリダクションされたパケットを元のパケットに戻す動作を行うことができる。この動作をオーバーヘッドプロセシングと呼ぶことができる。オーバーヘッドプロセシング部分は、フィジカルレイヤで同時にデコーディングできるDPの数だけ構成することができる。
パケットリカバリーバッファー(tsib16170)は、オーバーヘッドプロセシングを行うためにデカプセレーションされたRoHCパケット乃至IPパケットを受信するバッファーの役割を果たすことができる。
オーバーヘッドコントローラー(tsib16180)は、デカプセレーションされたパケットに対してパケットリカバリー及び/又はデコンプレッションを行うか否かを決定することができる。パケットリカバリー及び/又はデコンプレッションが行われる場合、パケットストリームリカバリーブロック(tsib16190)にパケットが伝達されてもよい。パケットリカバリー及び/又はデコンプレッションが行われない場合、パケットはアウトプットバッファー(tsib16220)に伝達されてもよい。パケットリカバリー及び/又はデコンプレッションを行うか否かは、スケジューラ(tsib16020)によって伝達されたシグナリング情報に基づいて決定されてもよい。
パケットストリームリカバリーブロック(tsib16190)は、送信機で分離されたパケットストリームと、パケットストリームのコンテキスト情報とを統合する動作を行うことができる。これは、RoHCデコンプレッサー(tsib16210)で処理可能なように、パケットストリームを復旧する過程であり得る。この過程で、シグナリング及び/又はコンテキストコントローラー(tsib16200)からシグナリング情報及び/又はコンテキスト情報を受信することができる。シグナリング及び/又はコンテキストコントローラー(tsib16200)は、送信機から伝達されたシグナリング情報を判別し、当該コンテキストIDに合うストリームにマッピングできるようにパケットストリームリバーカレーブロック(tsib16190)にシグナリング情報を伝達することができる。
RoHCデコンプレッサー(tsib16210)は、パケットストリームのパケットのヘッダーを復旧することができる。パケットストリームのパケットは、ヘッダーが復旧されることによって元のIPパケットの形態に復旧され得る。すなわち、RoHCデコンプレッサー(tsib16210)はオーバーヘッドプロセシングを行うことができる。
アウトプットバッファー(tsib16220)は、IPレイヤ(tsib16230)に出力ストリームを伝達するに先立ち、バッファーの役割を果たすことができる。
本発明が提案する送信機と受信機のリンクレイヤは、前述したようなブロック乃至モジュールを含むことができる。これを通じて、リンクレイヤが上位レイヤと下位レイヤに関係なく独立して動作することができ、オーバーヘッドリダクションを効率的に行うことができ、上/下位レイヤなどによって支援可能な機能の確定/追加/除去が容易となり得る。
図17は、本発明の一実施例に係る、リンクレイヤを介したシグナリング伝送構造を示した図である(送/受信側)。
本発明では、一つの周波数バンド内に複数個のサービスプロバイダー(放送会社)がサービスを提供することができる。また、サービスプロバイダーは、複数個のサービスを伝送することができ、一つのサービスは1つ以上のコンポーネントを含むことができる。ユーザは、サービス単位でコンテンツを受信することを考慮することができる。
本発明は、IPハイブリッド放送を支援するために、複数個のセッションベースの伝送プロトコルが使用されることを仮定する。各プロトコルの伝送構造に基づいて、そのシグナリングパス(path)で伝達されるシグナリング情報を決定することができる。各プロトコルは、実施例によって様々な名称が付与されてもよい。
図示された送信側のデータ構造(tsib17010)において、サービスプロバイダー(Broadcasters)は複数個のサービス(Service #1,#2,…)を提供することができる。一般に、サービスに対するシグナリングは、一般的な伝送セッションを介して伝送することができるが(Signaling C)、実施例によって、特定のセッション(dedicated session)を介して伝送してもよい(Signaling B)。
サービスデータ及びサービスシグナリング情報は、伝送プロトコルに従ってエンカプセレーションすることができる。実施例によってIP/UDPが使用されてもよい。実施例によってIP/UDPレイヤでのシグナリング(Signaling A)が追加されてもよい。このシグナリングは省略できる。
IP/UDPで処理されたデータはリンクレイヤに入力されてもよい。リンクレイヤでは、前述したように、オーバーヘッドリダクション及び/又はエンカプセレーション過程を行うことができる。ここで、リンクレイヤシグナリングが追加されてもよい。リンクレイヤシグナリングにはシステムパラメータなどが含まれてもよい。リンクレイヤシグナリングについては前述した。
このような処理を経たサービスデータ及びシグナリング情報は、フィジカルレイヤでPLPを介して処理されてもよい。ここで、PLPはDPと呼ぶこともできる。図示された実施例では、Base DP/PLPが使用される場合を想定しているが、実施例によってBase DP/PLPなしに一般的なDP/PLPのみで伝送が行われてもよい。
図示された実施例では、FIC、EACなどの特定のチャンネル(dedicated channel)が使用されている。FICを介して伝達されるシグナリングをFIT(Fast Information Table)、EACを介して伝達されるシグナリングをEAT(Emergency Alert Table)と呼ぶことができる。FITは、前述したSLTと同一であってもよい。このような特定のチャンネルは、実施例によって使用されなくてもよい。特定のチャンネル(Dedicated channel)が構成されていない場合、FITとEATは、一般的なリンクレイヤシグナリング伝送方法によって伝送されるか、または他のサービスデータのようにIP/UDPを経てPLPに伝送されてもよい。
実施例によって、システムパラメータには、送信機関連パラメータ、サービスプロバイダー関連パラメータなどが含まれてもよい。リンクレイヤシグナリングには、IPヘッダー圧縮関連コンテキスト情報、及び/又は当該コンテキストが適用されるデータに対する識別情報が含まれてもよい。上位レイヤのシグナリングには、IPアドレス、UDPナンバー、サービス/コンポーネント情報、緊急警報(Emergency alert)関連情報、サービスシグナリングに対するIP/UDPアドレス、セッションIDなどが含まれてもよい。詳細な実施例については前述した。
図示された受信側のデータ構造(tsib17020)において、受信機は、全てのPLPをデコーディングすることなく、シグナリング情報を活用して当該サービスに対するPLPのみをデコーディングすることができる。
まず、ユーザが、受信しようとするサービスを選択または変更すると、受信機は、当該周波数にチューニングし、当該チャンネルと関連してDBなどに格納している受信機情報を読み込むことができる。受信機のDBなどに格納されている情報は、最初のチャンネルスキャンの際にSLTを読み込んで構成されてもよい。
SLTを受信し、当該チャンネルの情報を受信した後、既存に格納されていたDBをアップデートし、ユーザが選択したサービスの伝送経路及びコンポーネント情報を獲得したり、このような情報を獲得するために必要なシグナリングが伝送される経路に対する情報を獲得したりする。SLTのバージョン情報などを用いて、当該情報の変更がないと判断される場合には、デコーディングまたはパーシング手順を省略することができる。
受信機は、当該放送ストリームにおいて、PLPのフィジカルシグナリングをパーシングし、当該PLP内にSLT情報があるかどうかを把握することができる(図示せず)。これは、フィジカルシグナリングの特定のフィールドを介して指示されてもよい。SLT情報に接近することによって、特定のサービスのサービスレイヤシグナリングが伝送される位置に接近することができる。このサービスレイヤシグナリングは、IP/UDPにエンカプセレーションされて伝送セッションを介して伝達されてもよい。このサービスレイヤシグナリングを用いて、当該サービスを構成するコンポーネントに対する情報を獲得することができる。詳細なSLT−SLSの構造は、前述した通りである。
すなわち、SLTを用いて、現在のチャンネルに伝送されている多数のパケットストリーム及びPLPのうち、当該サービスの受信に必要な上位レイヤシグナリング情報(サービスシグナリング情報)を受信するための伝送経路情報を獲得することができる。この伝送経路情報には、IPアドレス、UDPポートナンバー、セッションID、PLP IDなどが含まれてもよい。ここで、実施例によって、IP/UDPアドレスは、IANAまたはシステムで予め指定されている値を使用してもよい。このような情報は、DB及び共有メモリ接近などの方法で獲得されてもよい。
リンクレイヤシグナリングとサービスデータが同一のPLPを介して伝送されるか、または一つのPLPのみが運用されている場合、PLPを介して伝達されるサービスデータは、リンクレイヤシグナリングがデコーディングされる間、臨時にバッファーなどの装置に格納されてもよい。
受信しようとするサービスに対するサービスシグナリング情報を用いて、当該サービスが実際に伝送される経路の情報を獲得することができる。また、受信するPLPに対するオーバーヘッドリダクションなどの情報を用いて、受信されるパケットストリームに対してデカプセレーション及びヘッダーリカバリーを行うことができる。
図示された実施例(tsib17020)では、FIC、EACが使用され、Base DP/PLPの概念が想定された。前述したように、FIC、EAC、Base DP/PLPの概念は活用されなくてもよい。
図18は、本発明の一実施例に係るリンクレイヤ(link layer)のインターフェースを示す図である。
図面を参照すると、送信機が、IPパケット及び/又はデジタル放送で使用されるMPEG2−TSパケットを入力信号として使用する場合を示す。送信機は、次世代放送システムで使用できる新しいプロトコルでのパケット構造を支援することもできる。リンクレイヤのカプセル化された(encapsulated)データ及び/又はシグナリング情報は、物理層(physical layer)に伝送されてもよい。送信機は、(シグナリングデータを含むことができる)伝送されたデータを放送システムによって支援される物理層のプロトコルに従って処理し、当該データを含む信号を送信することができる。
一方、受信機は、物理層から受信したデータ及び/又はシグナリング情報を、上位レイヤで処理できる他のデータに復元する。受信機は、パケットのヘッダーを読むことができ、物理層から受信したパケットがシグナリング情報(またはシグナリングデータ)または一般のデータ(またはコンテンツデータ)を含むかどうかを決定することができる。
送信機から伝達されるシグナリング情報(すなわち、シグナリングデータ)は、上位レイヤ(upper layer)から受信され、受信機の上位レイヤに伝送される必要がある第1シグナリング情報、リンクレイヤで生成され、受信機のリンクレイヤでデータの処理と関連する情報を提供する情報である第2シグナリング情報、及び/又は上位レイヤまたはリンクレイヤで生成され、物理層で特定のデータ(例えば、サービス、コンテンツ、及び/又はシグナリングデータ)を迅速に識別するために伝送される第3シグナリング情報を含むことができる。
一方、本発明の一実施例によれば、リンクレイヤで、上位レイヤから伝達されるパケットに対して、追加的な処理を行うことができる。
上位レイヤから伝達されるパケットがIPパケットに該当する場合、送信機は、リンクレイヤでIPヘッダー圧縮(header compression)を行うことができる。IPヘッダー圧縮を通じて、IPフロー(flow)で、オーバーヘッド(overhead)を低減することができる。IPヘッダー圧縮のためにRoHC(Robust Header Compression)技法を使用することができる。RoHC技法に関しては、RFC3095及びRFC5795の文書を通じて詳細な内容は補充できる。
本発明の一実施例では、RoHC技法が単方向(unidirectional)モードで動作することができる。これと関連する詳細は後述する。
上位レイヤから伝達されるパケットがMPEG−2 TS(Transport Stream)パケットである場合、MPEG−2 TSパケットに対してオーバーヘッドリダクション(overhead reduction)を行うことができる。MPEG−2 TSパケットには、Syncフィールド、nullパケット、及び/又はCommon PID(Packet Identifier)が含まれてもよく、このようなデータは、それぞれのTSパケットにおいて繰り返されるか、または不必要なデータであるため、送信機は、リンクレイヤでこれらデータを削除し、受信機でこれを復元できる情報を生成して受信機に伝送することができる。
送信機は、リンクレイヤで、上位レイヤから伝達されるパケットをエンカプセレーション(encapsulation)することができる。例えば、送信機は、リンクレイヤで、IPパケット、MPEG−2 TSパケット及び/又は他のプロトコルのパケットをエンカプセレーションして、リンクレイヤパケットを生成することができる。リンクレイヤでのエンカプセレーションを通じて、送/受信機のフィジカルレイヤ(physical layer;物理層)では、ネットワークレイヤのプロトコルの種類に関係なく、一つのフォーマットのパケットを処理することができる。この場合、MPEG−2 TSパケットは、ネットワークレイヤのパケットとして見なすことができる。
ネットワークレイヤはリンクレイヤの上位レイヤである。基本的にネットワークレイヤのパケットは、リンクレイヤのパケットのペイロード(payload)に変換されてもよい。本発明の一実施例では、フィジカルレイヤのリソース(resource)を効率的に使用するために、ネットワークレイヤのパケットに対するコンカチネーション(concatenation)とセグメンテーション(segmentation)が行われて、リンクレイヤのパケットに含まれてもよい。
リンクレイヤのペイロードが複数のネットワークレイヤのパケットを含むことができる程度に、ネットワークレイヤのパケットの大きさが小さい場合、リンクレイヤのパケットのヘッダー(header)は、コンカチネーションを行うためのプロトコルフィールド(protocol field)を含むことができる。コンカチネーションは、複数のネットワークレイヤのパケットを一つのペイロード(リンクレイヤのパケットのペイロード)内で連結するものと定義することができる。
一つのネットワークレイヤのパケットの大きさが、フィジカルレイヤで処理するには大きすぎる場合には、ネットワークレイヤのパケットは、2つまたはそれ以上(two or more)のセグメントに分離されてもよい。リンクレイヤのパケットのヘッダーは、送信側で行われたセグメンテーション(segmentation)を行い、受信側でこれらを再結合(reassemble)できるように、必要な情報をプロトコルフィールドの形態で含むことができる。
送信機のリンクレイヤでの処理は、FIC(Fast Information Channel)、EAS(Emergency Alert System)メッセージ、及び/又はオーバーヘッドリダクションのための情報のようなリンクレイヤで生成されたシグナリング情報を伝達することを含む。
FICは、チャンネルスキャン、及びサービスの迅速な獲得のために必要な情報を含むシグナリング構造である。すなわち、FICの主な目的は、迅速なチャンネルスキャン及びサービス獲得のための必須情報を効率的に伝達することにある。FICに含まれる情報は、DP(data pipe、またはPLP)と放送サービスとの間の接続のための情報に該当してもよい。
送信機でのリンクレイヤの処理は、非常警報メッセージ(emergency alert message)とこれと関連するシグナリング情報を特定のチャンネルを介して伝送することを含む。特定のチャンネルは、フィジカルレイヤで予め定義されたチャンネルに該当してもよい。特定のチャンネルは、EAC(Emergency Alert Channel)と命名してもよい。
図19は、本発明の一実施例に係るリンクレイヤの動作モードのうち、ノーマル(Normal)モードの動作ダイヤグラムを示した図である。
本発明が提案するリンクレイヤは、上位レイヤと下位レイヤとの互換のために、様々な動作モードを有することができる。本発明は、リンクレイヤのノーマルモード及びトランスペアレントモードを提案する。2つの動作モードは、リンクレイヤ内で共存可能であり、どのモードが使用されるかは、シグナリングまたはシステムパラメータを用いて指定されてもよい。実施例によって、2つのモードのいずれか1つのモードのみが具現されてもよい。リンクレイヤに入力されるIPレイヤ、TSレイヤなどに応じて、それぞれ異なるモードが適用されてもよい。また、IPレイヤのストリーム別に、TSレイヤのストリーム別に、それぞれ異なるモードが適用されてもよい。
実施例によって、新しい動作モードがリンクレイヤに追加されてもよい。新しい動作モードは、上位レイヤと下位レイヤの構成に基づいて追加されてもよい。新しい動作モードは、上位レイヤと下位レイヤの構成に基づいて異なるインターフェースを含むことができる。新しい動作モードを使用するか否かも、シグナリングまたはシステムパラメータを用いて指定されてもよい。
ノーマルモードでは、データが、リンクレイヤが支援する全ての機能を経て処理された後、フィジカルレイヤに伝達されてもよい。
まず、IPレイヤ、MPEG−2 TSレイヤ、または他の特定のレイヤ(t89010)から各パケットがリンクレイヤに伝達されてもよい。すなわち、IPパケットが、IPレイヤからリンクレイヤに伝達され得る。同様に、MPEG−2 TSパケットがMPEG−2 TSレイヤから、特定のパケットが特定のプロトコルレイヤからリンクレイヤに伝達され得る。
各伝達されたパケットは、オーバーヘッドリダクション(t89020)を経たり経なかった後、エンカプセレーション(t89030)を経るようになってもよい。
第一に、IPパケットの場合、オーバーヘッドリダクション(t89020)を経たり経なかった後、エンカプセレーション(t89030)を経るようになってもよい。オーバーヘッドリダクションが行われるか否かは、シグナリングまたはシステムパラメータによって指定されてもよい。実施例によって、各IPストリーム別にオーバーヘッドリダクションが行われてもよく行われなくてもよい。エンカプセレーションされたIPパケットはフィジカルレイヤに伝達されてもよい。
第二に、MPEG−2 TSパケットの場合、オーバーヘッドリダクション(t89020)を経てエンカプセレーション(t89030)を経るようになってもよい。MPEG−2 TSパケットの場合も、実施例によってオーバーヘッドリダクション過程が省略されてもよい。しかし、一般的な場合、TSパケットは、先頭にシンクバイト(0x47)などを有するので、このような固定的なオーバーヘッドを除去することが効率的である。エンカプセレーションされたTSパケットはフィジカルレイヤに伝達されてもよい。
第三に、IPまたはTSパケットではない他のパケットである場合、オーバーヘッドリダクション(t89020)を経たり経なかった後、エンカプセレーション(t89030)を経るようになってもよい。オーバーヘッドリダクションが行われるか否かは、当該パケットの特性によって決定されてもよい。オーバーヘッドリダクションが行われるか否かは、シグナリングまたはシステムパラメータによって指定されてもよい。エンカプセレーションされたパケットはフィジカルレイヤに伝達されてもよい。
オーバーヘッドリダクション(t89020)過程では、入力されたパケットの大きさを適切な方法を通じて減少させることができる。オーバーヘッドリダクション過程で、入力されたパケットから特定の情報が抽出または生成されてもよい。この特定の情報は、シグナリングと関連する情報であって、シグナリング領域を介して伝送されてもよい。このシグナリング情報は、受信機が、オーバーヘッドリダクション過程で変更された事項を復旧して元のパケットの形態に戻すことができるようにする。このシグナリング情報は、リンクレイヤシグナリング(t89050)に伝達されてもよい。
リンクレイヤシグナリング(t89050)は、オーバーヘッドリダクション過程で抽出/生成されたシグナリング情報の伝送及び管理を行うことができる。フィジカルレイヤは、シグナリングのために物理的/論理的に区分された伝送経路を有することができ、リンクレイヤシグナリング(t89050)は、この区分された伝送経路に合わせてシグナリング情報をフィジカルレイヤに伝達することもできる。ここで、区分された伝送経路には、前述したFICシグナリング(t89060)またはEASシグナリング(t89070)などがあり得る。別に区分された伝送経路に伝送されないシグナリング情報は、エンカプセレーション(t89030)を経てフィジカルレイヤに伝達されてもよい。
リンクレイヤシグナリング(t89050)が管理するシグナリング情報には、上位レイヤから伝達されたシグナリング情報、リンクレイヤで生成されたシグナリング情報及び/又はシステムパラメータなどがあり得る。具体的に、上位レイヤから伝達された、結果的に受信機の上位レイヤに伝達されなければならないシグナリング情報、リンクレイヤで生成されて受信機のリンクレイヤの動作に活用されなければならないシグナリング情報、上位レイヤまたはリンクレイヤで生成されて受信機のフィジカルレイヤで迅速なディテクションのために使用されるシグナリング情報などがあり得る。
エンカプセレーション(t89030)されてフィジカルレイヤに伝達されたデータは、DP(Data Pipe)(t89040)を介して伝送されてもよい。ここで、DPは、PLP(Physical Layer Pipe)であってもよい。前述した区分された伝送経路に伝達されるシグナリング情報は、それぞれの伝送経路に伝達されてもよい。例えば、FICシグナリングは、フィジカルフレーム内で指定されたFICチャンネル(t89080)を介して伝送され得る。また、EASシグナリングは、フィジカルフレーム内の指定されたEACチャンネル(t89090)を介して伝送され得る。FICまたはEACなどの特定のチャンネルが存在するという情報は、フィジカルフレームのプリアンブル領域にシグナリングされて伝送されたり、特定のスクランブリングシーケンスを使用してプリアンブルをスクランブリングすることによってシグナリングされてもよい。実施例によって、FICシグナリング/EASシグナリング情報は、指定された特定のチャンネルではない、一般DP領域、PLS領域またはプリアンブルを介して伝送されてもよい。
受信機は、フィジカルレイヤを介してデータ及びシグナリング情報を受信することができる。受信機は、これを、上位レイヤで処理可能な形態に復元して上位レイヤに伝達することができる。このような過程は、受信機のリンクレイヤで行うことができる。パケットのヘッダーを読むなどの方法で、受信機は、伝送されたパケットがシグナリング情報に関するものか、データに関するものかを区分することができる。また、受信機は、オーバーヘッドリダクションが送信側で行われた場合、オーバーヘッドリダクションを通じてオーバーヘッドが減少したパケットを元のパケットに復旧することができる。この過程で、伝達されたシグナリング情報を活用することができる。
図20は、本発明の一実施例に係るリンクレイヤの動作モードのうち、トランスペアレント(Transparent)モードの動作ダイヤグラムを示した図である。
トランスペアレントモードでは、データが、リンクレイヤが支援する機能を経ないか、または一部のみを経た後、フィジカルレイヤに伝達されてもよい。すなわち、トランスペアレントモードでは、上位レイヤから伝達されたパケットが、別途のオーバーヘッドリダクション及び/又はエンカプセレーション過程を経ずにそのままフィジカルレイヤに伝達されてもよい。他のパケットの場合は、必要に応じて、オーバーヘッドリダクション及び/又はエンカプセレーション過程を経ることもできる。トランスペアレントモードは、バイパスモード(bypass mode)と呼ぶことができ、他の名称が付与されてもよい。
実施例によって、パケットの特性及びシステムの運用に基づいて、一部のパケットはノーマルモードで、一部のパケットはトランスペアレントモードで処理されてもよい。
トランスペアレントモードを適用できるパケットは、システムによく知られているタイプのパケットであり得る。フィジカルレイヤで当該パケットに対して処理できる場合、トランスペアレントモードを活用することができる。例えば、よく知られたTSまたはIPパケットの場合、フィジカルレイヤで別途のオーバーヘッドリダクション及びインプットフォーマッティング過程を経ることができるので、リンクレイヤステップではトランスペアレントモードを活用することができる。トランスペアレントモードが適用され、フィジカルレイヤでインプットフォーマッティングなどを通じてパケットを加工する場合、前述したTSヘッダーコンプレッションなどの動作がフィジカルレイヤで行われ得る。反対に、ノーマルモードが適用される場合、加工されたリンクレイヤパケットは、フィジカルレイヤでGSパケットとして取り扱われて処理され得る。
トランスペアレントモードでも、シグナリングの伝送を支援する必要がある場合、リンクレイヤシグナリングモジュールをおくことができる。リンクレイヤシグナリングモジュールは、前述したように、シグナリング情報の伝送及び管理を行うことができる。シグナリング情報は、エンカプセレーションされてDPを介して伝送され得、区分された伝送経路を有するFIC、EASシグナリング情報は、それぞれFICチャンネル、EACチャンネルを介して伝送され得る。
トランスペアレントモードで、固定されたIPアドレス及びPort番号を使用する方法などを通じて、当該情報がシグナリング情報であるか否かを示すことができる。この場合、当該シグナリング情報をフィルタリングしてリンクレイヤパケットを構成した後、フィジカルレイヤを介して伝送してもよい。
図21は、本発明の一実施例に係る、リンクレイヤでの送信機及び/又は受信機の動作モードコントロール(control)過程を示した図である。
リンクレイヤの送信機または受信機の動作モードを決定することは、放送システムをより効率的に使用し、放送システムに対する柔軟な設計を可能にする方法となり得る。本発明で提案するリンクレイヤモードをコントロールする方案によれば、システム帯域幅及びプロセシングタイムに対する効率的な運用のためのリンクレイヤのモードを動的に切り替えることができるという効果がある。また、本発明のリンクレイヤモードをコントロールする方案によれば、フィジカルレイヤの変更により、特定のモードに対する支援が必要であるか、またはその反対に特定のモードに対する必要性がなくなった場合、これに対する対処が容易である。また、リンクレイヤモードをコントロールする方案によれば、放送サービスを提供する放送会社で当該サービスに対する伝送方法を指定しようとする場合にも、当該放送会社の要求を放送システムで容易に収容できるという効果がある。
リンクレイヤの動作モードをコントロールするための方案は、リンクレイヤの内部でのみ動作するように構成したり、リンクレイヤの内部でのデータ構造の変化を通じて行うことができる。この場合、ネットワークレイヤ及び/又はフィジカルレイヤで、別途の機能に対する追加具現なしにも、各レイヤの独立した動作を行うことが可能である。本発明で提案するリンクレイヤのモードは、フィジカルレイヤの構造に合わせるためにシステムを変形せずに、シグナリングまたはシステムの内部のパラメータでコントロールが可能である。特定のモードの場合には、当該入力に対する処理が、フィジカルレイヤで支援する場合に限って動作してもよい。
図面は、送信機及び/又は受信機が、IPレイヤ、リンクレイヤ、及びフィジカルレイヤで信号及び/又はデータを処理する流れを示した図である。
リンクレイヤにモードコントロールのための機能ブロック(ハードウェア及び/又はソフトウェアで具現可能)が追加され、パケットを処理するか否かを決定するためのパラメータ及び/又はシグナリング情報を管理する役割を果たすことができる。モードコントロール機能ブロック(Mode control functional block)が有している情報を用いて、リンクレイヤでは、パケットストリームの処理過程に当該機能(function)を行うか否かを判断することができる。
送信機での動作をまず説明する。
送信機は、IPストリームがリンクレイヤに入力されると、モードコントロールパラメータ(j16005)を用いてオーバーヘッドリダクション(j16020)を行うか否かを決定する(j16010)。モードコントロールパラメータは、送信機でサービス提供者によって生成されてもよい。モードコントロールパラメータに関する詳細は後述する。
オーバーヘッドリダクション(j16020)が行われる場合、オーバーヘッドリダクションに対する情報を生成し、リンクレイヤシグナリング(j16060)情報に含ませる。リンクレイヤシグナリング(j16060)情報は、モードコントロールパラメータの一部又は全部を含んでもよい。リンクレイヤシグナリング(j16060)情報は、リンクレイヤシグナリングパケットの形態で伝達されてもよい。リンクレイヤシグナリングパケットは、DPにマッピングされて受信機に伝達されてもよいが、DPにマッピングされず、放送信号の一定の領域を介して、リンクレイヤシグナリングパケットの形態で受信機に伝達されてもよい。
オーバーヘッドリダクション(j16020)を経たパケットストリームは、エンカプセレーション(j16030)されてフィジカルレイヤのDPに入力される(j16040)。オーバーヘッドリダクションを経ない場合には、再びエンカプセレーションを行うか否かを決定する(j16050)。
エンカプセレーション(j16030)を経たパケットストリームは、フィジカルレイヤのDP(j16040)に入力される。このとき、フィジカルレイヤでは、一般的なパケット(link layer packet)に対する処理のための動作を行う。オーバーヘッドリダクション及びエンカプセレーションを経ない場合には、IPパケットが直接フィジカルレイヤに伝達される。このとき、フィジカルレイヤでは、IPパケットに対する処理のための動作を行う。IPパケットが直接伝送される場合には、フィジカルレイヤでIPパケット入力を支援する場合に限って動作するようにパラメータを付与することができる。すなわち、モードコントロールパラメータの値を調節して、フィジカルレイヤでIPパケットに対する処理を支援しない場合は、IPパケットを直接フィジカルレイヤに伝送する過程が動作しないように設定することができる。
送信機は、このような過程を経た放送信号を受信機に伝送する。
受信機の動作を説明する。
受信機で、ユーザの操作などによるチャンネル変更などの理由で、特定のDPが選択され、当該DPでパケットストリームが受信されると(j16110)、パケットストリームのヘッダー及び/又はシグナリング情報を用いて、送信時にどのモードでパケットが生成されたかを確認することができる(j16120)。当該DPに対して、送信時の動作モードが確認されると、リンクレイヤの受信動作過程によってデカプセレーション(j16130)及びオーバーヘッドリダクション(j16140)過程を経て上位レイヤにIPパケットが伝達される。オーバーヘッドリダクション(j16140)過程は、オーバーヘッドリカバリー過程を含むことができる。
図22は、本発明の一実施例に係る、フラグ(flag)の値によるリンクレイヤでの動作、及びフィジカルレイヤに伝達されるパケットの形態を示した図である。
リンクレイヤの動作モードを決定するために、前述したシグナリング方法を用いることができる。これと関連するシグナリング情報が、受信機に直接的に伝送されてもよい。この場合、前述したシグナリングデータまたはリンクレイヤシグナリングパケットに、後述するモードコントロールと関連する情報が含まれてもよい。
一方、受信機の複雑度を考慮して、リンクレイヤの動作モードを間接的に受信機に知らせる方法があり得る。
Operationモードのコントロールに対して、次のような2種類のフラグを考慮することができる。
−HCF(Header Compression Flag):当該リンクレイヤでヘッダーコンプレッションを適用するか否かを決定するフラグであって、Enable、Disableを意味する値を付与することができる。
−EF(Encapsulation Flag):当該リンクレイヤでエンカプセレーションを適用するか否かを決定するフラグであって、Enable、Disableを意味する値を付与することができる。ただし、ヘッダーコンプレッション技法によって必ずエンカプセレーションが伴わなければならない場合には、EFをHCFに従属させて定義することができる。
各フラグにマッピングされる値は、Enable及びDisableの表現を含むことができる範囲内でシステム構成に応じて付与することができ、各フラグに割り当てられるビット数も変更可能である。一実施例として、enable値を1、disable値を0にマッピングすることができる。
図示したように、HCF、EFの値によって、リンクレイヤに含まれるヘッダーコンプレッション及びエンカプセレーション動作を行うか否か、及びこれによってフィジカルレイヤに伝達されるパケットのフォーマットに対して示したものである。すなわち、本発明の一実施例によれば、受信機は、HCF及びEFに対する情報から、フィジカルレイヤに入力されるパケットの形態を知ることができる。
図23は、本発明の一実施例に係る送受信機でのIPオーバーヘッドリダクション(IP overhead reduction)過程を示した図である。
本発明の一実施例によれば、IPストリームがオーバーヘッドリダクション過程に進入すると、RoHCコンプレッサー(L5010)は、当該ストリームに対するヘッダー圧縮を行うことができる。本発明の一実施例は、ヘッダー圧縮アルゴリズムとしてRoHC方法を使用することができる。パケットストリームコンフィギュレーション(Configuration)過程(L5020)でRoHC過程を経たパケットストリーム(packet stream)は、RoHCパケットの形態によって再構成され、再構成されたRoHCパケットストリームは、エンカプセレーションレイヤ(L5040)に伝達され、次いで、フィジカルレイヤを介して受信機に伝送され得る。パケットストリームを再構成する過程で生成されたRoHCコンテキスト情報及び/又はシグナリング情報は、シグナリングジェネレーター(L5030)を介して伝送が可能な形態で作られ、伝送形態によってエンカプセレーションレイヤまたはシグナリングモジュール(L5050)に伝達されてもよい。
本発明の一実施例によれば、受信機は、サービスデータ(data)に対するストリームとシグナリングチャンネル、または別途のDPを介して伝達されるシグナリングデータを受信することができる。シグナリングパーサ(L5060)は、シグナリングデータを受信してRoHCコンテキスト情報及び/又はシグナリング情報をパーシングし、パーシングされた情報をパケットストリームリカバリー過程(L5070)に伝達することができる。パケットストリームリカバリー過程(L5070)では、受信機は、シグナリングデータに含まれたRoHCコンテキスト情報及び/又はシグナリング情報を用いて、送信側で再構成されたパケットストリームを、RoHCデコンプレッサー(L5080)が圧縮を解除できる形態に復旧することができる。RoHCデコンプレッサー(L5080)は、復旧されたRoHCパケットストリームをIPストリームに変換することができ、変換されたIPストリームは、IPレイヤを介して上位レイヤに伝達されてもよい。
図24は、本発明の一実施例に係る、RoHCのプロファイル(Profiles)を示した図である。
前述したように、本発明の一実施例によれば、リンクレイヤでの上位パケットに対するヘッダー圧縮のために、RoHCを使用することができる。放送網の特性を考慮すると、RoHCフレームワーク(framework)は、RFC 3095文書に記述されたように単方向モード(unidirectional mode)で動作することができる。RoHCフレームワークは、複数のヘッダー圧縮プロファイルを定義している。それぞれのプロファイルは、特定のプロトコルの組み合わせを示し、それぞれのプロファイルを識別するプロファイル識別子(identifier)は、IANA(Internet Assigned Numbers Authority)によって割り当てられてもよい。図示されたプロファイルの一部は、本発明の実施例に係る放送システムで使用することができる。
図25は、本発明の一実施例に係る第1構成モード(Configuration Mode #1)に対して、RoHCパケットストリームの構成(configuration)及び復元(recovery)過程を示した図である。
本発明の一実施例に係る送信機でのRoHCパケットストリームの構成(configuration)過程は、次の通りである。
本発明の一実施例に係る送信機は、RoHCヘッダー情報に基づいて、RoHCパケットストリーム(RoHC Packet Stream、L10010)からIRパケット及びIR−DYNパケットを検出することができる。次に、送信機は、IR及びIR−DYNパケットに含まれたシーケンスナンバー(sequence number)を用いて、一般的なヘッダー圧縮されたパケット(General Header Compressed Packet)を生成することができる。上述した一般的なヘッダー圧縮されたパケットのタイプに関係なく、一般的なヘッダー圧縮されたパケットは、SN(Sequence Number)情報を含むので任意に生成され得る。ここで、SNは、基本的にRTPに存在する情報に該当し、UDPの場合には、送信機で任意にSNを生成して使用することができる。次に、送信機は、該当するIRまたはIR−DYNパケットを、生成された一般的なヘッダー圧縮されたパケットに代えることができ、送信機は、IRパケットからスタティックチェーン(static chain)及びダイナミックチェーン(dynamic chain)を抽出することができ、IR−DYNパケットからダイナミックチェーンを抽出することができる。抽出されたスタティックチェーン及びダイナミックチェーンは、帯域外(Out of Band)(L10030)で伝送されてもよい。送信機は、全てのRoHCパケットストリームに対して、上述した過程と同一の過程によって、IR及びIR−DYNヘッダーを一般的なヘッダー圧縮されたパケットのヘッダーに代えることができ、スタティックチェーン及び/又はダイナミックチェーンを抽出することができる。再構成されたパケットストリーム(Reconfigured Packet Stream、L10020)は、データパイプ(data pipe)を介して伝送されてもよく、抽出されたスタティックチェーン及びダイナミックチェーンは帯域外(L10030)で伝送されてもよい。
本発明の一実施例に係る受信機でRoHCパケットストリームを復元(recovery)する過程は、次の通りである。
本発明の一実施例に係る受信機は、シグナリング(Signaling)情報を用いて、受信しようとするストリームのデータパイプを選択することができる。次に、受信機は、データパイプを介して伝送される受信しようとするパケットストリームを受信することができ(Received Packet Stream、L10040)、受信しようとするパケットストリームに該当するスタティックチェーン及びダイナミックチェーンを検出することができる。ここで、スタティックチェーン及び/又はダイナミックチェーンは、帯域外で受信されてもよい(Out of Band Reception、L10050)。次に、受信機は、抽出されたスタティックチェーン及びダイナミックチェーンのSNを用いて、データパイプを介して伝送されるパケットストリームのうち、上述したスタティックチェーンまたはダイナミックチェーンのSNと同一のSNを有する一般的なヘッダー圧縮されたパケットを検出することができる。次に、受信機は、検出された一般的なヘッダー圧縮されたパケットをスタティックチェーン及び/又はダイナミックチェーンと結合してIR及び/又はIR−DYNパケットを構成することができ、構成されたIR及び/又はIR−DYNパケットはRoHCデコンプレッサーに伝送されてもよい。また、受信機は、IRパケット、IR−DYNパケット及び/又は一般的なヘッダー圧縮されたパケットを含むRoHCパケットストリーム(RoHC Packet Stream、L10060)を構成することができ、構成されたRoHCパケットストリームはRoHCデコンプレッサーに伝送されてもよい。本発明の一実施例に係る受信機は、RoHCパケットストリームを復元するために、スタティックチェーン、ダイナミックチェーン、IRパケット及びIR−DYNパケットのSN及び/又はContext IDを用いることができる。
図26は、本発明の一実施例に係る第2構成モード(Configuration Mode #2)に対して、RoHCパケットストリームの構成(configuration)及び復元(recovery)過程を示した図である。
本発明の一実施例に係る送信機でのRoHCパケットストリームの構成(configuration)過程は、次の通りである。
本発明の一実施例に係る送信機は、RoHCヘッダー情報に基づいて、RoHCパケットストリーム(RoHC Packet Stream、L11010)からIRパケット及びIR−DYNパケットを検出することができる。次に、送信機は、IR及びIR−DYNパケットに含まれたシーケンスナンバーを用いて、一般的なヘッダー圧縮されたパケット(General Header Compressed Packet)を生成することができる。上述した一般的なヘッダー圧縮されたパケットのタイプに関係なく、一般的なヘッダー圧縮されたパケットは、SN(Sequence Number)情報を含むので任意に生成され得る。ここで、SNは、基本的にRTPに存在する情報に該当し、UDPの場合には、送信機で任意にSNを生成して使用することができる。次に、送信機は、該当するIRまたはIR−DYNパケットを、生成された一般的なヘッダー圧縮されたパケットに代えることができ、送信機は、IRパケットからスタティックチェーンを抽出することができ、IR−DYNパケットからダイナミックチェーンを抽出することができる。抽出されたスタティックチェーン及びダイナミックチェーンは、帯域外(L11030)で伝送されてもよい。送信機は、全てのRoHCパケットストリームに対して、上述した過程と同一の過程によって、IR及びIR−DYNヘッダーを一般的なヘッダー圧縮されたパケットのヘッダーに代えることができ、スタティックチェーン及び/又はダイナミックチェーンを抽出することができる。再構成されたパケットストリーム(Reconfigured Packet Stream、L11020)は、データパイプを介して伝送されてもよく、抽出されたスタティックチェーン及びダイナミックチェーンは帯域外(L11030)で伝送されてもよい。
本発明の一実施例に係る受信機でRoHCパケットストリームを復元(recovery)する過程は、次の通りである。
本発明の一実施例に係る受信機は、シグナリング(Signaling)情報を用いて、受信しようとするストリームのデータパイプを選択することができる。次に、受信機は、データパイプを介して伝送される受信しようとするパケットストリームを受信することができ(Received Packet Stream、L11040)、受信しようとするパケットストリームに該当するスタティックチェーン及びダイナミックチェーンを検出することができる。ここで、スタティックチェーン及び/又はダイナミックチェーンは、帯域外で受信されてもよい(Out of Band Reception、L11050)。次に、受信機は、抽出されたスタティックチェーン及びダイナミックチェーンのSNを用いて、データパイプを介して伝送されるパケットストリームのうち、上述したスタティックチェーンまたはダイナミックチェーンのSNと同一のSNを有する一般的なヘッダー圧縮されたパケットを検出することができる。次に、受信機は、検出された一般的なヘッダー圧縮されたパケットをスタティックチェーン及び/又はダイナミックチェーンと結合してIR及び/又はIR−DYNパケットを構成することができ、構成されたIR及び/又はIR−DYNパケットはRoHCデコンプレッサーに伝送されてもよい。また、受信機は、IRパケット、IR−DYNパケット及び/又は一般的なヘッダー圧縮されたパケットを含むRoHCパケットストリーム(RoHC Packet Stream、L11060)を構成することができ、構成されたRoHCパケットストリームはRoHCデコンプレッサーに伝送されてもよい。本発明の一実施例に係る受信機は、RoHCパケットストリームを復元するために、スタティックチェーン、ダイナミックチェーン、IRパケット及びIR−DYNパケットのSN及び/又はContext IDを用いることができる。
図27は、本発明の一実施例に係る第3構成モード(Configuration Mode #3)に対して、RoHCパケットストリームの構成(configuration)及び復元(recovery)過程を示した図である。
本発明の一実施例に係る送信機でのRoHCパケットストリームの構成(configuration)過程は、次の通りである。
本発明の一実施例に係る送信機は、RoHCヘッダー情報に基づいて、RoHCパケットストリーム(RoHC Packet Stream、L12010)からIRパケットを検出することができる。次に、送信機は、IRパケットからスタティックチェーンを抽出することができ、IRパケットの構成において、抽出されたスタティックチェーンを除いた残りの部分を用いて、IRパケットをIR−DYNパケットに変換することができる。送信機は、全てのRoHCパケットストリームに対して、上述した過程と同一の過程によって、IRパケットのヘッダーをIR−DYNパケットのヘッダーに代えることができ、スタティックチェーンを抽出することができる。再構成されたパケットストリーム(Reconfigured Packet Stream、L12020)は、データパイプを介して伝送されてもよく、抽出されたスタティックチェーンは、帯域外(L12030)で伝送されてもよい。
本発明の一実施例に係る受信機でRoHCパケットストリームを復元(recovery)する過程は、次の通りである。
本発明の一実施例に係る受信機は、シグナリング(Signaling)情報を用いて、受信しようとするストリームのデータパイプを選択することができる。次に、受信機は、データパイプを介して伝送される受信しようとするパケットストリームを受信することができ(Received Packet Stream、L12040)、受信しようとするパケットストリームに該当するスタティックチェーンを検出することができる。ここで、スタティックチェーンは、帯域外で受信されてもよい(Out of Band Reception、L12050)。次に、受信機は、データパイプを介して伝送されるパケットストリームからIR−DYNパケットを検出することができる。次に、受信機は、検出されたIR−DYNパケットをスタティックチェーンと結合してIRパケットを構成することができ、構成されたIRパケットはRoHCデコンプレッサーに伝送されてもよい。また、受信機は、IRパケット、IR−DYNパケット及び/又は一般的なヘッダー圧縮されたパケットを含むRoHCパケットストリーム(RoHC Packet Stream、L12060)を構成することができ、構成されたRoHCパケットストリームはRoHCデコンプレッサーに伝送されてもよい。本発明の一実施例に係る受信機は、RoHCパケットストリームを復元するために、スタティックチェーン及びIR−DYNパケットのSN及び/又はContext IDを用いることができる。
図28は、本発明の一実施例に係る帯域外で伝達できる情報の組み合わせを示した図である。
本発明の一実施例によれば、RoHCパケットストリームの構成(configuration)過程で抽出されたスタティックチェーン及び/又はダイナミックチェーンを帯域外で伝達する方法は、大きく、シグナリング(signaling)を介して伝達する方法、及びシステムデコーディング(system decoding)に必要なパラメータが伝達されるデータパイプを介して伝達する方法が存在し得る。本発明の一実施例によれば、上述したシステムデコーディングに必要なパラメータが伝達されるデータパイプは、Base DP(Data Pipe)と命名することができる。
図示したように、スタティックチェーン及び/又はダイナミックチェーンは、シグナリングまたはBase DPを介して伝達されてもよい。本発明の一実施例によれば、第1伝送モード(Transport Mode #1)〜第3伝送モード(Transport Mode #3)は、第1構成モード(Configuration Mode #1)または第2構成モード(Configuration Mode #2)に使用されてもよく、第4伝送モード(Transport Mode #4)〜第5伝送モード(Transport Mode #5)は、第3構成モード(Configuration Mode #3)に使用されてもよい。
本発明の一実施例によれば、それぞれの構成モード(Configuration Mode)及び伝送モード(Transport Mode)は、別途のシグナリングを介してシステムの状況に合わせてスイッチング(switching)して使用されてもよく、システム設計過程に応じて、一つの構成モード及び一つの伝送モードのみが固定されて使用されてもよい。
図示によれば、第1伝送モード(Transport Mode #1)において、スタティックチェーンはシグナリングを介して伝送されてもよく、ダイナミックチェーンはシグナリングを介して伝送されてもよく、一般的なヘッダー圧縮されたパケット(General Header Compressed Packet)はノーマル(Normal)データパイプを介して伝送されてもよい。
図示によれば、第2伝送モード(Transport Mode #2)において、スタティックチェーンはシグナリングを介して伝送されてもよく、ダイナミックチェーンはベースデータパイプ(Base Data Pipe)を介して伝送されてもよく、一般的なヘッダー圧縮されたパケットはノーマルデータパイプを介して伝送されてもよい。
図示によれば、第3伝送モード(Transport Mode #3)において、スタティックチェーンはベースデータパイプを介して伝送されてもよく、ダイナミックチェーンはベースデータパイプを介して伝送されてもよく、一般的なヘッダー圧縮されたパケットはノーマルデータパイプを介して伝送されてもよい。
図示によれば、第4伝送モード(Transport Mode #4)において、スタティックチェーンはシグナリングを介して伝送されてもよく、ダイナミックチェーンはノーマルデータパイプを介して伝送されてもよく、一般的なヘッダー圧縮されたパケットはノーマルデータパイプを介して伝送されてもよい。このとき、ダイナミックチェーンは、IR−DYNパケットによって伝送されてもよい。
図示によれば、第5伝送モード(Transport Mode #5)において、スタティックチェーンはベースデータパイプを介して伝送されてもよく、ダイナミックチェーンはノーマルデータパイプを介して伝送されてもよく、一般的なヘッダー圧縮されたパケット(General Header Compressed Packet)はノーマルデータパイプを介して伝送されてもよい。このとき、ダイナミックチェーンは、IR−DYNパケットによって伝送されてもよい。
図29は、本発明の一実施例に係る、データパイプを介して伝送されるパケットを示した図である。
本発明の一実施例によれば、リンクレイヤでのパケットの構造を新たに定義して、リンクレイヤの上位レイヤまたはリンクレイヤの下位レイヤのプロトコルの変化に関係なく互換可能なリンクレイヤパケットを生成することができる。
本発明の一実施例に係るリンクレイヤパケットは、normal DP及び/又はbase DPを介して伝送されてもよい。
リンクレイヤパケットは、固定ヘッダー、拡張ヘッダー、及び/又はペイロードを含むことができる。
固定ヘッダーは、大きさが固定されているヘッダーであり、拡張ヘッダーは、上位レイヤのパケットの構成によって大きさの変更が可能なヘッダーである。ペイロードは、上位レイヤのデータが伝送される領域である。
パケットのヘッダー(固定ヘッダー又は拡張ヘッダー)は、パケットのペイロードの種類を表示するフィールドが含まれてもよい。固定ヘッダーの場合、1バイトのうち、最初の3ビット(packet type)は、上位レイヤのパケットタイプを識別するデータが含まれてもよく、残りの5ビットは、指示子部分(indicator part)として使用されてもよい。指示子部分は、ペイロードの構成方法、及び/又は拡張ヘッダーの構成情報を識別するデータが含まれてもよく、パケットタイプによって、構成が異なり得る。
図示されたテーブルでは、パケットタイプ(packet type)の値による、ペイロードに含まれる上位レイヤのパケットの種類を示している。
システムの構成によって、ペイロードが、normal DPを介してはIPパケット、及び/又はRoHCパケットを伝送することができ、base DPを介してはシグナリングパケットを伝送することができる。したがって、種々の種類のパケットが混用して伝達される場合にも、パケットタイプの値を付与して、データパケットとシグナリングパケットを区分することもできる。
パケットタイプの値が000である場合、IPv4のIPパケットがペイロードに含まれることを示す。
パケットタイプの値が001である場合、IPv6のIPパケットがペイロードに含まれることを示す。
パケットタイプの値が010である場合、compressed IPパケットがペイロードに含まれることを示す。compressed IPパケットには、ヘッダー圧縮が適用されたIPパケットが含まれてもよい。
パケットタイプの値が110である場合、シグナリングデータを含むパケットがペイロードに含まれることを示す。
パケットタイプの値が111である場合、フレームドパケットタイプ(framed packet type)がペイロードに含まれることを示すことができる。
図30は、本発明の一実施例に係る、リンクレイヤパケット構造のシンタックスを示した図である。
本図は、前述したデータパイプを介して伝送されるパケットの構造を記述したものである。リンクレイヤパケット(Link layer packet())は、まず、Packet_Typeフィールドを有することができる。
Packet_Typeフィールドの値によって、後続し得るフィールドの構成が変わり得る。図示したように、Packet_Typeフィールドの値が000又は001である場合、Pakcet_Typeフィールドの後にLink_Layer_Packet_Header_for_IP()、すなわち、IPパケットのためのヘッダー構造が位置してもよい。Packet_Typeフィールドの値が010である場合、Pakcet_Typeフィールドの後にLink_Layer_Packet_Header_for_Compressed_IP()、すなわち、圧縮されたIPパケットのためのヘッダー構造が位置してもよい。Packet_Typeフィールドの値が011である場合、Pakcet_Typeフィールドの後にLink_Layer_Packet_Header_for_TS()、すなわち、TSパケットのためのヘッダー構造が位置してもよい。Packet_Typeフィールドの値が110である場合、Pakcet_Typeフィールドの後にLink_Layer_Packet_Header_for_Signaling()、すなわち、シグナリング情報のためのヘッダー構造が位置してもよい。Packet_Typeフィールドの値が111である場合、Pakcet_Typeフィールドの後にLink_Layer_Packet_Header_for_Framed_Packet()、すなわち、フレームドパケットのためのヘッダー構造が位置してもよい。他の値は、将来の使用のために残すことができる(Reserved)。ここで、Packet_Typeフィールドの値による意味は、実施例によって変更されてもよい。
以降には、リンクレイヤパケットのペイロード部分であるLink_Layer_Packet_Payload()が位置してもよい。
図31は、本発明の他の実施例に係る、リンクレイヤにIPパケットが伝達される場合のリンクレイヤパケットのヘッダーの構造を示した図である。
この場合、リンクレイヤパケットのヘッダーは、固定ヘッダー(Fixed header)と拡張ヘッダー(Extended header)を含むことができる。固定ヘッダーは、1バイトの長さを有することができ、拡張ヘッダーは、固定された長さを有したり可変する値(variable)を長さとして有することができる。各ヘッダーの長さは、設計者の意図によって変更されてもよい。
固定ヘッダーは、パケットタイプフィールド、PCフィールド及び/又はカウントフィールドを含むことができる。他の実施例によれば、固定ヘッダーは、パケットタイプフィールド、PCフィールド、LIフィールド及び/又はセグメントIDフィールドを含むことができる。
拡張ヘッダーは、セグメントシーケンスナンバー(Segment Sequence Number)フィールド及び/又はセグメント長さID(Segment Length ID)フィールドを含むことができる。他の実施例によれば、拡張ヘッダーは、セグメントシーケンスナンバーフィールド及び/又は最後のセグメント長さ(Last Segment Length)フィールドを含むことができる。
固定ヘッダーのフィールドについて説明する。
パケットタイプフィールドは、前述したように、リンクレイヤに入力されるパケットのタイプを示すことができる。IPパケットがリンクレイヤの入力として入る場合、パケットタイプフィールドの値は000B又は001Bであってもよい。
PC(Packet Configuration)フィールドは、後続する固定ヘッダーの残りの部分及び/又は拡張ヘッダーの構成を示すことができる。すなわち、PCフィールドは、入力されたIPパケットがどのような形態で処理されたかを示すことができる。したがって、PCフィールドは、拡張ヘッダーの長さに関する情報を内包することができる。
PCフィールドの値が0である場合、これは、リンクレイヤパケットのペイロードが一つのIPパケットを含むか、または連鎖(concatenation)した2つ以上のIPパケットを含むことを意味してもよい。ここで、連鎖とは、短い長さの複数のパケットが一つにつながってペイロードをなすことを意味し得る。
また、PCフィールドの値が0である場合、PCフィールドの後には4ビットのカウントフィールドが後続することができる。ここで、カウントフィールドは、一つのペイロードがいくつの連鎖したIPパケットを有しているかを示すことができる。カウントフィールドの値による連鎖したIPパケットの個数については後述する。
また、PCフィールドの値が0である場合、リンクレイヤは、拡張ヘッダーを含まなくてもよい。しかし、実施例によって、リンクレイヤパケットの長さが表示される必要がある場合、1−2バイトの拡張ヘッダーが追加されてもよい。この場合、拡張ヘッダーは、リンクレイヤパケットの長さを示すのに活用することができる。
PCフィールドの値が1である場合、これは、リンクレイヤパケットのペイロードが分割されたパケット(segmented packet)を含むことを意味し得る。ここで、分割されたパケットは、長い長さのIPパケットがいくつのセグメントに分けられたことを意味し得る。各分割された断片は、セグメント又は分割されたパケットと呼ぶことができる。すなわち、PCフィールドの値が1である場合、リンクレイヤパケットのペイロードは、一つの分割された断片、すなわち、セグメントを含むことができる。
また、PCフィールドの値が1である場合、PCフィールドの後には、1ビットのLIフィールドと3ビットのセグメントIDフィールドが後続してもよい。
LI(Last Segment Indicator)フィールドは、当該リンクレイヤパケットが分割されたセグメントのうち最後のセグメントを含むか否かを示すことができる。すなわち、LI値が1である場合、当該リンクレイヤは、分割されたセグメントのうち最後のセグメントを含み、LI値が0である場合にはそうでない。LIフィールドは、受信機が本来のIPパケットを再構成するときに用いることができる。LIフィールドの値は、リンクレイヤパケットの拡張ヘッダーに関する情報を示すこともできる。すなわち、LIフィールドの値が0である場合、拡張ヘッダーの長さは1バイト、LIフィールドの値が1である場合、拡張ヘッダーの長さは2バイトであってもよい。詳細は後述する。
セグメントIDフィールドは、当該リンクレイヤパケットが含むセグメントのIDを示すことができる。一つのIPパケットが分割されるとき、各セグメントには同一のIDを与えられることができる。このセグメントIDは、受信機が本来のIPパケットを再構成するとき、それぞれのセグメントが同一のIPパケットの構成要素であることを知ることができるようにする。セグメントIDフィールドは3ビットの大きさを有するので、同時に総8個のIPパケットの分割(segmentation)を支援することができる。
また、PCフィールドの値が1である場合、分割(segmentation)に関する情報のために拡張ヘッダーを用いることができる。前述したように、拡張ヘッダーは、セグメントシーケンスナンバー、セグメント長さIDフィールド、及び/又は最後のセグメント長さ(Last Segment Length)フィールドなどを含むことができる。
拡張ヘッダーのフィールドについて説明する。
前述したLIフィールドが0の値を有する場合、すなわち、リンクレイヤパケットが含むセグメントが最後のセグメントではない場合、拡張ヘッダーは、セグメントシーケンスナンバーフィールド及び/又はセグメント長さIDフィールドを含むことができる。
セグメントシーケンスナンバーフィールドは、分割されたパケットが何番目のパケットであるかを示すことができる。したがって、一つのIPパケットから分割されたセグメントを有するリンクレイヤパケットは、同一のセグメントIDフィールドを有するが、異なるセグメントシーケンスナンバーフィールドを有する。セグメントシーケンスナンバーフィールドは4ビットの大きさを有するので、一つのIPパケットは、最大16個のセグメントに分割され得る。
セグメント長さIDフィールドは、最後のセグメント以外のセグメントの長さを示すことができる。最後のセグメント以外のセグメントの長さは同一であってもよい。したがって、これらの長さは、予め指定された長さIDを用いて表現することができる。セグメント長さIDフィールドは、その長さIDを示すことができる。
セグメントの長さは、フィジカルレイヤのFECコードレートによって決定されているパケットの入力サイズに合わせて設定することができる。すなわち、その入力サイズに合わせてセグメントの長さを決定することができ、そのセグメントの長さが、セグメント長さIDによって指定されてもよい。ヘッダーのオーバーヘッドを低減するために、セグメントが有し得る長さは16個に制限することができる。
セグメントの長さによるセグメント長さIDフィールドの値については後述する。
フィジカルレイヤがセグメントの長さに関係なく動作する場合、セグメントの長さは、セグメント長さIDと長さユニット(Len_Unit、Length Unit)の積に最小セグメント長さ(min_Len、minimum segment length)を足して求めることができる。ここで、長さユニットは、セグメントの長さを表示する基本単位であり、最小セグメント長さは、セグメントの長さの最小値を意味し得る。長さユニットと最小セグメント長さは、送信機と受信機で常に同じ値を有しなければならず、一度決定されると変わらない方が、システムの運用に効率的である。長さユニットと最小セグメント長さは、システムの初期化過程でフィジカルレイヤのFEC処理能力を考慮して決定することができる。
前述したLIフィールドが1の値を有する場合、すなわち、リンクレイヤパケットが含むセグメントが最後のセグメントである場合、拡張ヘッダーは、セグメントシーケンスナンバーフィールド及び/又は最後のセグメント長さフィールドを含むことができる。
セグメントシーケンスナンバーフィールドは、前述した通りである。
最後のセグメント長さフィールドは、最後のセグメントの長さを直接示すことができる。一つのIPパケットが特定の長さを有するセグメントに分割される場合、最後のセグメントは、その長さが他のセグメントと異なり得る。したがって、最後のセグメント長さフィールドが、最後のセグメントの長さを直接示すことができる。最後のセグメント長さフィールドは、1〜4095バイトを表示することができる。表示可能なバイト数は、実施例によって変わってもよい。
図32は、前述した本発明の他の実施例に係るリンクレイヤにIPパケットが伝達される場合のリンクレイヤパケットのヘッダーの構造のシンタックスを示した図である。
リンクレイヤパケットのヘッダー(Link Layer Packet Header())は、まず、Packet_Typeフィールド、PC(Payload_Config)フィールドを有することができる。これについては、前述した通りである。
PCフィールドの値が0である場合、後にCountフィールドが位置してもよい。
PCフィールドの値が1である場合、後にLast_Segment_Indicatorフィールド、Segment_IDフィールド、Segment_Sequence_Numberフィールドが位置してもよい。このとき、Last_Segment_Indicatorフィールドの値によって、その後続部分の構成が変わり得る。Last_Segment_Indicatorフィールドが0である場合、Segment_Sequence_Numberフィールドの後にSegment_Length_IDフィールドが位置してもよい。Last_Segment_Indicatorフィールドが1である場合、Segment_Sequence_Numberフィールドの後にLast_Segment_Lengthフィールドが位置してもよい。
図33は、本発明の他の実施例に係る、リンクレイヤにIPパケットが伝達される場合のリンクレイヤパケットのヘッダーにおいて、各フィールドの値が示すものを示した図である。
前述したように、カウントフィールドの値によって、連鎖したIPパケットの数が決定され得る(t61010)。カウントフィールドの値は、そのまま連鎖したIPパケットの数を示すこともできるが、0個のパケットが連鎖した場合は意味がない。したがって、カウントフィールドは、カウントフィールドの値に1を足した数のIPパケットが連鎖していることを示すことができる。すなわち、表t61010のように、0010の場合に3個、0111の場合に8個のIPパケットが連鎖していることが表現され得る。
ここで、カウントフィールドの値が0000である場合、1個のIPパケットが連鎖していることを示すが、これは連鎖なしに、リンクレイヤパケットのペイロードが一つのIPパケットを含むことを示すことができる。
前述したように、分割されたセグメントの長さは、セグメント長さIDフィールドの値によって表現することができる(t61020)。
例えば、セグメント長さIDフィールドの値が0000である場合、セグメント長さは512バイトであり得る。これは、当該リンクレイヤパケットのペイロードが含むセグメントが最後のセグメントではなく、512バイトの長さを有することを意味し得る。このセグメントと同じIPパケットから分割された他のセグメントも、最後のセグメントでなければ、512バイトの長さを有することができる。
本表では、長さユニットは256、最小セグメント長さは512の値を有する。したがって、最小のセグメント長さは512バイト(セグメント長さIDフィールド=0000)である。また、指定されたセグメントの長さは256バイトの間隔を持って増加する。
図34は、本発明の他の実施例に係る、リンクレイヤにIPパケットが伝達される場合のリンクレイヤパケットのヘッダーにおいて、一つのIPパケットがリンクレイヤペイロードに含まれる場合を示した図である。
一つのIPパケットがリンクレイヤペイロードに含まれる場合、すなわち、連鎖(concatenation)又は分割(segmentation)が行われない場合を、ノーマルパケットにエンカプセレーションする場合と呼ぶことができる。この場合は、IPパケットがフィジカルレイヤの処理範囲内にある場合であってもよい。
本実施例において、リンクレイヤパケットは、合計1バイトのヘッダーを有することができる。ヘッダーの長さは、実施例によって変更されてもよい。パケットタイプフィールドの値は000(IPv4の場合)、または001(IPv6の場合)であってもよい。ノーマルパケットエンカプセレーション過程は、IPv4又はIPv6に同一に適用することができる。PCフィールドの値は、一つのパケットがペイロードに含まれるので、0であり得る。後続するカウントフィールドは、同様に一つのパケットのみがペイロードに含まれるので、0000の値を有することができる。
本実施例において、リンクレイヤパケットのペイロードは、一つのIPパケットをそのまま含むことができる。
本実施例において、リンクレイヤパケットの長さを確認するためには、IPパケットヘッダーの情報を活用することができる。IPパケットのヘッダーには、IPパケットの長さを示すフィールドが含まれている。このフィールドを長さフィールドと呼ぶことができる。この長さフィールドがIPパケット内に位置する位置は固定されていてもよい。一つのIPパケットがそのままリンクレイヤのペイロードに入るので、リンクレイヤパケットのペイロードの開始から一定のオフセット長さだけ移動した位置に、この長さフィールドが位置することができる。したがって、この長さフィールドを用いて全リンクレイヤのペイロードの長さを知ることができる。
IPv4の場合、ペイロード開始点から2バイト、IPv6の場合、ペイロード開始点から4バイトだけ移動した位置に、この長さフィールドが位置してもよい。長さフィールドは、2バイトの長さを有することができる。
IPv4の場合において、長さフィールドの値をLIPv4とし、リンクレイヤパケットのヘッダー長さをLH(1バイト)とすれば、全リンクレイヤパケットの長さ(LT)は、図示された数式のように示すことができる(t62010)。ここで、長さフィールドの値LIPv4は、IPv4パケットの全長を示すことができる。
IPv6の場合において、長さフィールドの値をLIPv6とし、リンクレイヤパケットのヘッダー長さをLH(1バイト)とすれば、全リンクレイヤパケットの長さ(LT)は、図示された数式のように示すことができる(t62020)。ここで、長さフィールドの値LIPv6は、IPv6パケットのペイロードの長さのみを示すので、全リンクレイヤパケットの長さを求めるためには、IPv6パケットの固定ヘッダー長さ(40バイト)を加算しなければならない。
図35は、本発明の他の実施例に係る、リンクレイヤにIPパケットが伝達される場合のリンクレイヤパケットのヘッダーにおいて、複数個のIPパケットが連鎖(concatenation)してリンクレイヤペイロードに含まれる場合を示した図である。
入力されたIPパケットがフィジカルレイヤの処理範囲に到達できない場合、複数個のIPパケットを連結して一つのリンクレイヤパケットのペイロードにエンカプセレーションすることができる。
本実施例において、リンクレイヤパケットは、合計1バイトのヘッダーを有することができる。ヘッダーの長さは、実施例によって変更されてもよい。パケットタイプフィールドの値は000(IPv4の場合)、または001(IPv6の場合)であってもよい。本実施例のエンカプセレーション過程は、IPv4又はIPv6に同一に適用することができる。PCフィールドの値は、連鎖した複数個のIPパケットがペイロードに含まれるので、0であり得る。後続するカウントフィールドは、連鎖した複数個のIPパケットの数を示すことができる(4ビット)。
本実施例において、リンクレイヤパケットのペイロードは、複数個のIPパケットを含むことができる。複数個のIPパケットは前後で互いに連結されてリンクレイヤパケットのペイロードに含まれてもよい。連鎖方式は、設計者の意図によって変更されてもよい。
本実施例において、リンクレイヤパケットの長さを確認するためには、連鎖したIPパケットヘッダーの情報を活用することができる。前述したノーマルパケットエンカプセレーションと同様に、各IPパケットのヘッダーには、そのIPパケットの長さを示す長さフィールドが存在し得る。また、この長さフィールドは、IPパケット内で固定された位置に位置してもよい。
したがって、リンクレイヤパケットのヘッダー長さをLH、それぞれのIPパケットの長さをLk(ここで、kは、1より大きいか又は同一であり、nより小さいか又は同一である)とすれば、全リンクレイヤパケットの長さ(LT)は、図示された数式のように示すことができる(t63010)。すなわち、各IPパケットの長さフィールドが示す各IPパケットの長さを全て合算し、それにリンクレイヤパケットのヘッダー長さを加算すると、全リンクレイヤパケットの長さを求めることができる。Lkの値は、各IPパケットのヘッダーの長さフィールドを読んで確認することができる。
図36は、本発明の他の実施例に係る、リンクレイヤにIPパケットが伝達される場合のリンクレイヤパケットのヘッダーにおいて、一つのIPパケットが分割(segmentation)されてリンクレイヤペイロードに含まれる場合を示した図である。
入力されたIPパケットがフィジカルレイヤの処理範囲を超える場合、一つのIPパケットは複数個のセグメントに分割されてもよい。各分割されたセグメントは、それぞれのリンクレイヤパケットのペイロードにエンカプセレーションすることができる。
本実施例において、各リンクレイヤパケット(t64010,t64020,t64030)は、固定ヘッダーと拡張ヘッダーを有することができる。各固定ヘッダー及び拡張ヘッダーの長さは、実施例によって変更されてもよい。パケットタイプフィールドの値は000(IPv4の場合)、または001(IPv6の場合)であってもよい。本実施例のエンカプセレーション過程は、IPv4又はIPv6に同一に適用することができる。PCフィールドの値は、分割されたセグメントがペイロードに含まれるので、1であり得る。
最後のセグメント以外のセグメントをペイロードとして有するリンクレイヤパケット(t64010,t64020)は、LIフィールドの値が0であり得、それぞれのセグメントIDフィールドは同一の値を有することができる。各セグメントが同じIPパケットから分割されたセグメントであるためである。後続するセグメントシーケンスナンバーフィールドは、当該セグメントの順序を示すことができる。ここで、1番目のリンクレイヤパケット(t64010)のセグメントシーケンスフィールド値は、当該リンクレイヤパケットが1番目のセグメントをペイロードとして有することを示すことができる。2番目のリンクレイヤパケット(t64020)のセグメントシーケンスフィールド値は、当該リンクレイヤパケットが2番目のセグメントをペイロードとして有することを示すことができる。セグメント長さIDフィールドは、分割されたセグメントの長さを、予め指定された長さIDで表現することができる。
最後のセグメントをペイロードとして有するリンクレイヤパケット(t64030)は、LIフィールドの値が1であり得る。ここで、セグメントIDフィールドは、他のリンクレイヤパケットと同一であってもよい。最後のセグメントも、同じIPパケットから分割されたセグメントであるためである。後続するセグメントシーケンスナンバーフィールドは、当該セグメントの順序を示すことができる。最後のセグメント長さフィールドは、このリンクレイヤパケット(t64030)が有する最後のセグメントの長さを直接示すことができる。
本実施例において、リンクレイヤパケットの長さを確認するためには、セグメント長さIDフィールド、または最後のセグメント長さフィールドを活用することができる。各フィールドは、当該リンクレイヤパケットのペイロードの長さのみを示すので、全リンクレイヤパケットの長さを求めるためには、リンクレイヤパケットのヘッダー長さを加算しなければならない。リンクレイヤパケットのヘッダー長さは、前述したように、LIフィールドから知ることができる。
図37は、本発明の他の実施例に係る、リンクレイヤにIPパケットが伝達される場合のリンクレイヤパケットのヘッダーにおいて、分割(segmentation)されたセグメントを有するリンクレイヤパケットを示した図である。
本実施例は、5500バイトのIPパケットが入力として入ったことを仮定する。5500を5で割った値は1100であるので、この値と最も近い1024バイトの長さで各セグメントを構成することができる。この場合、最後のセグメントは1404バイト(010101111100B)であり得る。分割されたそれぞれのセグメントをS1,S2,S3,S4,S5と呼ぶことができ、それに該当するヘッダーをそれぞれH1,H2,H3,H4,H5と呼ぶことができる。セグメントにヘッダーが追加してそれぞれのリンクレイヤパケットを生成することができる。
入力されたIPパケットがIPv4パケットである場合、H1〜H5のパケットタイプフィールドは000の値を有することができる。また、H1〜H5のPCフィールド値は、分割されたパケットをペイロードとして有するので、1であり得る。
H1〜H4のLI値は、最後のセグメントをペイロードとして有しないので、0であり得る。H5のLI値は、最後のセグメントをペイロードとして有するので、1であり得る。H1〜H5のSeg_ID、すなわち、セグメントIDフィールドは、いずれも同一のパケットから分割されたセグメントをペイロードとして有するので、同じ値(000)を有することができる。
H1〜H5のSeg_SN、すなわち、セグメントシーケンスナンバーフィールドは、H1からH5まで順に0000Bから0100Bと表示することができる。H1〜H4のセグメント長さIDフィールドは、1024バイト長のIDに該当する0010の値を有することができる。H5のセグメント長さフィールドは、1404バイトを示す010101111100をその値として有することができる。
図38は、本発明の一実施例に係るRoHC伝送のためのリンクレイヤパケットのヘッダーを示した図である。
IPベースの放送環境でも、IPパケットが前述したリンクレイヤパケットに圧縮されて伝送され得る。IPベースの放送システムでストリーミングをする場合に、一般的にIPパケットのヘッダー情報がほとんど変わらずに維持され得る。この点を用いてIPパケットのヘッダーを圧縮することができる。
IPパケットのヘッダー(=IPヘッダー)を圧縮する際に、RoHC((Robust Header Compression)技法が主に用いられる。本発明では、RoHCパケットがリンクレイヤ(link layer)に入力として入った場合における圧縮(encapsulation)方法を提案する。
RoHCパケットがリンクレイヤの入力として入る場合、前述したパケットタイプエレメントの値は010Bであり得る。これは、前述したように、上位レイヤからリンクレイヤへ伝達されるパケットがCompressed IPパケットであることを示す。
RoHCパケットが入力される場合、リンクレイヤパケットのヘッダーは、前述した他のパケットと同様に、固定ヘッダー(Fixed Header)及び/又は拡張ヘッダー(Extended Header)を含むことができる。
固定ヘッダーは、パケットタイプフィールド及び/又はPC(Packet Configuration)フィールドを含むことができる。固定ヘッダーは、合計1バイトのサイズを有することができる。ここで、パケットタイプフィールドは、Compressed IPパケットの場合であるから、010の値を有することができる。拡張ヘッダーは、実施例によって固定又は可変するサイズを有することができる。
固定ヘッダーのPCフィールドは、リンクレイヤパケットのペイロードを構成するRoHCパケットが処理される形態を示すフィールドであり得る。PCフィールドの値によって、これに後続する固定ヘッダーの残りの部分及び拡張ヘッダーの情報が決定され得る。また、PCフィールドは、RoHCパケットが処理される形態による拡張ヘッダーの長さ情報を内包することができる。PCフィールドは、1ビットのサイズを有することができる。
PCフィールドの値が0Bである場合について説明する。
PCフィールドの値が0Bである場合、リンクレイヤパケットのペイロードが、一つのRoHCパケットで構成されたり、2つ以上のRoHCパケットの連鎖で構成される場合に該当する。連鎖(concatenation)は、複数個の短い長さのパケットがつながって、リンクレイヤパケットのペイロードを構成する場合を意味する。
PCフィールドの値が0Bである場合、PCフィールドの後に1ビットのCI(Common CID Indicator)フィールドと3ビットのカウントフィールドが後続することができる。これによって、拡張ヘッダーに共通CID情報と長さパート(length part)が追加され得る。長さパートは、RoHCパケットの長さを表示するパートであり得る。
CI(Common Context ID Indicator)フィールドは、一つのリンクレイヤパケットのペイロードを構成するRoHCパケットのCID(Context ID)が全て同一である場合、1に設定され、そうでない場合には0に設定されてもよい。CI値が1である場合、共通したCIDに対するオーバーヘッド処理方法を適用することができる。CIフィールドは1ビットであってもよい。
カウント(count)フィールドは、一つのリンクレイヤパケットのペイロードにいくつのRoHCパケットが含まれているかを示すことができる。すなわち、連鎖(concatenation)の場合において、連鎖しているRoHCパケットの個数をカウントフィールドが示すことができる。カウントフィールドは3ビットであってもよい。したがって、次の表のように、最大8個のRoHCパケットが一つのリンクレイヤパケットのペイロードに含まれ得る。カウントフィールドが000の値を有する場合、RoHCパケットが連鎖せず、一つのRoHCパケットがリンクレイヤパケットのペイロードを構成することを意味し得る。
長さパート(Length part)は、前述したように、RoHCパケットの長さを表示するパートであり得る。RoHCパケットの場合、RoHCパケットヘッダーに長さ情報が除去されて入力される。したがって、RoHCパケットヘッダー内の長さフィールドを活用することができない。したがって、受信機が当該RoHCパケットの長さを知ることができるように、リンクレイヤパケットのヘッダーは長さパートを含むことができる。
IPパケットは、MTUが決定されていない場合、最大65535バイトの長さを有する。したがって、RoHCパケットに対しても最大長さまで支援できるように2バイトの長さ情報が必要である。また、複数のRoHCパケットが連鎖(concatenation)した場合、カウントフィールドで指定した数だけ、長さフィールド(length field)が追加され得る。この場合、長さパートは、複数個の長さフィールドを含むようになる。ただし、1個のRoHCパケットがペイロードに含まれる場合には、1つの長さフィールドのみが含まれ得る。長さフィールドの配置は、リンクレイヤパケットのペイロードを構成するRoHCパケットの順序と同一に配置されてもよい。それぞれの長さフィールドはバイト単位の値を有することができる。
共通CID(Common CID)フィールドは、共通するCIDを伝送するフィールドであり得る。RoHCパケットのヘッダー部分には、圧縮されたヘッダー間の関係を確認するためのCID(context ID)が含まれてもよい。このCIDは、安定したリンク(link)状態では同一の値に維持され得る。これによって、一つのリンクレイヤパケットのペイロードに含まれるRoHCパケットがいずれも同一のCIDを含むこともできる。この場合、オーバーヘッドを低減するために、ペイロードを構成する連鎖したRoHCパケットのヘッダー部分からCIDを除去し、リンクレイヤパケットのヘッダーに共通CIDフィールドにその値を表示して伝送することができる。受信機では、共通CIDフィールドを用いてRoHCパケットのCIDを組み換えることができる。共通CIDフィールドがある場合、前述したCIフィールドの値は1にならなければならない。
PCフィールドの値が1Bである場合について説明する。
PCフィールドの値が1Bである場合、リンクレイヤパケットのペイロードがRoHCパケットの分割された(segmented)パケットで構成される場合に該当する。ここで、分割されたパケットとは、長い長さのRoHCパケットを複数個のセグメントに分け、そのうち1つのセグメントがリンクレイヤパケットのペイロードを構成することを意味し得る。
PCフィールドの値が1Bである場合、PCフィールドの後に1ビットのLI(Last Segment Indicator)フィールドと3ビットのセグメントIDフィールドが後続することができる。また、セグメンテーション(segmentation)に関する情報を追加するために、拡張ヘッダーに、セグメントシーケンスナンバー(Segment Sequence Number)フィールド、セグメント長さID(Segment Length ID)フィールド、最後のセグメント長さ(Last Segment Length)フィールドなどを追加することができる。
LI(Last Segment Indicator)フィールドは、RoHCパケットが分割される場合において活用可能なフィールドである。RoHCパケットが複数個のセグメントに分割されてもよい。LI値が1である場合、現在のリンクレイヤパケットに含まれているセグメントが、一つのRoHCパケットから分けられたセグメントのうち最後に位置したセグメントであることを意味し得る。LI値が0である場合、現在のリンクレイヤパケットに含まれているセグメントが、最後のセグメントでないことを意味し得る。LIフィールドは、受信機でセグメントを集めて一つのRoHCパケットとして再構成する際、全てのセグメントが受信されたかを判断するために用いることができる。LIフィールドは1ビットであってもよい。
セグメントID(Seg_ID)フィールドは、RoHCパケットが分割される場合において、RoHCパケットに付与されるIDを示すフィールドであり得る。一つのRoHCパケットから派生したセグメントは、いずれも同一の値のセグメントIDを有することができる。受信機は、それぞれ伝送されたセグメントを一つに合わせる場合、セグメントIDを用いて、同一のRoHCパケットの構成要素であるか否かを判断することができる。セグメントIDフィールドは3ビットであってもよい。したがって、同時に8個のRoHCパケットの分割(segmentation)を支援することができる。
セグメントシーケンスナンバー(Seg_SN)フィールドは、RoHCパケットが分割されたとき、各セグメントの順序を確認するために用いられるフィールドであり得る。すなわち、一つのRoHCパケットから派生したセグメントをペイロードとして有するリンクレイヤパケットは、同じSeg_IDを有するが、互いに異なるSeg_SNを有することができる。Seg_SNは4ビットであってもよい。したがって、一つのRoHCパケットは最大16個のセグメントに分割可能である。
セグメント長さID(Seg_Len_ID)フィールドは、各セグメントの長さを表現するのに活用することができる。しかし、セグメント長さIDフィールドは、複数個のセグメントのうち、最後のセグメントを除いたセグメントの長さを表現するのに用いることができる。最後のセグメントの長さは、後述する最後のセグメント長さフィールドで示すことができる。リンクレイヤパケットのペイロードが、RoHCパケットの最後のセグメントでない場合、すなわち、LIの値が0である場合に、セグメント長さIDフィールドが存在し得る。
ヘッダーのオーバーヘッドを低減するために、セグメントが有し得る長さは16個に制限されてもよい。フィジカルレイヤで処理するFECのコードレート(code rate)によってパケットの入力サイズが決定されていてもよい。これに基づいてセグメントの長さを決定して、Seg_Len_IDとして指定することができる。セグメントの長さに関係なくフィジカルレイヤが動作する場合、次のようにセグメントの長さを決定することができる。
ここで、Len_Unit(Length Unit)は、セグメントの長さを表示する基本単位であり、min_Lenは、セグメント長さの最小値を意味し得る。Len_Unitとmin_Lenは、送信機と受信機において同じ値を有しなければならず、一度決定されると変わらない方が、システムの運用に効率的である。また、Len_Unitとmin_Lenは、システムの初期化過程でフィジカルレイヤのFECの処理能力を考慮して決定することができる。
次の表は、Seg_Len_IDの値によって表現されるセグメントの長さを整理したものであって、Seg_Len_IDに割り当てられた長さは一実施例であり、設計者の意図によって変更されてもよい。この実施例では、Len_Unit値は256、min_Len値は512である。
最後のセグメント長さ(L_Seg_Len)フィールドは、リンクレイヤパケットのペイロードに含まれたセグメントが、RoHCパケットの最後のセグメントである場合に活用されるフィールドである。すなわち、LIフィールドの値が1である場合に活用されるフィールドである。RoHCパケットをSeg_Len_IDを用いて前部から同じサイズに分割することができる。しかし、この場合、最後のセグメントはSeg_Len_IDが示すサイズに分割されない場合がある。したがって、最後のセグメントの長さは、L_Seg_Lenフィールドによって直接的に表示されてもよい。L_Seg_Lenフィールドは、1〜4095バイトを表示できる。これは、実施例によって変更されてもよい。
図39は、本発明の一実施例に係るRoHC伝送のためのリンクレイヤパケットのヘッダーのシンタックスを示した図である。
リンクレイヤパケットのヘッダー(Link Layer Packet Header())は、まず、Packet_TypeフィールドとPC(Payload_Config)フィールドを有することができる。これについては、前述した通りである。
PCフィールドの値が0である場合、Common_Context_ID_IndicatorフィールドとCountフィールドが後続することができる。また、Countフィールドが示す値に基づいて、複数個のLengthフィールドが位置することができる。また、CIフィールドが1である場合、Common_CIDフィールドがさらに位置することができる。
PCフィールドの値が1である場合、PCフィールドの後にLast_Segment_Indicatorフィールド、Segment_IDフィールド、及びSegment_Sequence_Numberフィールドが位置することができる。このとき、Last_Segment_Indicatorフィールドの値によってその後部の構成が変わり得る。Last_Segment_Indicatorフィールドが0である場合、Segment_Sequence_Numberフィールドの後にSegment_Length_IDフィールドが位置することができる。Last_Segment_Indicatorフィールドが1である場合、Segment_Sequence_Numberフィールドの後にLast_Segment_Lengthフィールドが位置することができる。
図40は、本発明に係る、リンクレイヤパケットを介したRoHCパケット伝送方法の実施例#1を示した図である。
本実施例は、RoHCパケットがフィジカルレイヤの処理範囲内にあることから、一つのRoHCパケットがリンクレイヤパケットのペイロードを構成する場合に該当する。この場合、RoHCパケットは、連鎖(concatenation)又は分割(segmentation)されなくてもよい。
この場合、一つのRoHCパケットがそのままリンクレイヤパケットのペイロードになってもよい。パケットタイプの値は010Bになり、PCフィールドの値は0B、CIフィールドの値は0Bであり得る。前述したカウントフィールドの場合、一つのRoHCパケットがそのままペイロードを構成するので(1個)、前述したように000Bの値を有することができる。次いで、RoHCパケットの長さを示す2バイトの長さフィールドが後続することができる。この場合、一つのパケットのみがペイロードを構成するので、長さパートは一つの長さフィールドのみを含むことができる。
この実施例で、合計3バイトのリンクレイヤヘッダーが追加されている。したがって、長さフィールドが示すRoHCパケットの長さがLバイトであるとすれば、全リンクレイヤパケットの長さはL+3バイトとなる。
図41は、本発明に係る、リンクレイヤパケットを介したRoHCパケット伝送方法の実施例#2を示した図である。
本実施例は、RoHCパケットがフィジカルレイヤの処理範囲内に到達しないことから、複数個のRoHCパケットが連結されてリンクレイヤパケットのペイロードに含まれる場合に該当する(連鎖)。
この場合、PCフィールド及びCIフィールドの値は、一つのRoHCパケットがペイロードに含まれる場合と同一である。次いでカウントフィールドが後続する。カウントフィールドは、前述したように、いくつのRoHCパケットがペイロードに含まれているかによって001B〜111Bの値を有することができる。
次いで、各2バイトの長さを有する長さフィールドが、カウントフィールドが示す個数だけ位置することができる。各長さフィールドは、各RoHCパケットの長さを示すことができる。この長さフィールド(Length field)を長さパート(Length part)と呼ぶことができる。
ここで、カウントフィールドが示す値がn個であるとすれば、リンクレイヤパケットのペイロードには、それぞれL1,L2,…,Lnの長さを有するRoHCパケットR1,R2,…,Rnが連鎖していてもよい。
総拡張ヘッダーは2nバイトの長さを有することができる。リンクレイヤパケットの全長LTは、次の式のように表現することができる。
図42は、本発明に係る、リンクレイヤパケットを介したRoHCパケット伝送方法の実施例#3を示した図である。
本実施例は、複数個のRoHCパケットが連結されてリンクレイヤパケットのペイロードを構成する場合(連鎖)において、連鎖したRoHCパケットが同じCID(Context ID)を有する場合に該当する。
RoHCパケットが同じCIDを有する場合、CIDを一度だけ表記して伝送しても、受信機では、元通りにRoHCパケット及びそのヘッダーを復元することができる。したがって、RoHCパケットで共通するCIDを抽出して一度だけ伝送することが可能であり、この場合、オーバーヘッドを低減することができる。
この場合、前述したCIフィールドの値は1になる。これは、同じCIDに対する処理がなされたことを意味し得る。同じCIDを有するRoHCパケットを、[R1,R2,R3,…,Rn]と表示した。共通するCIDは、共通CID(Common CID)と呼ぶことができる。RoHCパケットのヘッダーにおいてCIDを除いたパケットをR’kと表示した(kは、1,2,...,n)。
リンクレイヤパケットのペイロードはR’k(kは、1,2,...,n)を含むことができる。リンクレイヤパケットの拡張ヘッダーの末尾部分には共通CIDフィールドが追加されてもよい。共通CIDフィールドは、共通するCIDを伝送するフィールドであり得る。共通CIDフィールドは、拡張ヘッダーの一部として伝送されてもよく、リンクレイヤパケットのペイロードの一部として伝送されてもよい。システムの運用に応じて、共通CIDフィールドの位置を確認できる部分に適宜再配置することが可能である。
共通CIDフィールドのサイズは、RoHCパケットの構成(configuration)によって変わり得る。
RoHCパケットの構成がスモールCID構成(Small CID configuration)である場合、RoHCパケットのCIDのサイズは4ビットであり得る。ただし、RoHCパケットからCIDを抽出して再配置する場合には、add−CID octet全体が処理され得る。すなわち、共通CIDフィールドが1バイトの長さを有することができる。または、RoHCパケットから1バイトのadd−CID octetを抽出した後、4ビットのCIDのみを共通CIDフィールドに割り当て、残りの4ビットは、将来の活用のために残してもよい。
RoHCパケットの構成がラージCID構成(Large CID configuration)である場合、RoHCパケットのCIDのサイズは、1バイト又は2バイトの長さを有することができる。CIDのサイズは、RoHC初期化過程で決定される事項である。CIDのサイズによって、共通CIDフィールドは1バイト又は2バイトの長さを有することができる。
本実施例において、リンクレイヤパケットのペイロードの長さは、次のように計算することができる。同じCIDを有するn個のRoHCパケットR1,R2,…,Rnの長さをそれぞれL1,L2,…,Lnとすることができる。リンクレイヤパケットのヘッダーの長さをLH、共通CIDフィールドの長さをLCID、リンクレイヤパケットの全長をLTとすれば、LHは、次の通りである。
また、LTは、次のように計算することができる。
前述したように、LCIDは、RoHCのCID構成によって決定され得る。すなわち、LCIDは、スモールCID構成の場合に1バイト、ラージCID構成の場合に1バイト又は2バイトとすることができる。
図43は、本発明に係る、リンクレイヤパケットを介したRoHCパケット伝送方法の実施例#4を示した図である。
本実施例は、入力されたRoHCパケットがフィジカルレイヤの処理範囲を超える場合(segmentation)において、分離されたセグメントがそれぞれリンクレイヤパケットのペイロードに圧縮(encapsulation)される場合に該当する。
リンクレイヤパケットのペイロードが分割されたRoHCパケットで構成されたことを知らせるために、PCフィールドの値は1Bとなる。LIフィールドは、RoHCパケットの最後の部分に該当するセグメントをペイロードとして有する場合にのみ1Bとなり、残りの全てのセグメントに対しては0Bとなる。LIフィールドの値は、リンクレイヤパケットの拡張ヘッダーに関する情報を知らせることもできる。すなわち、LIフィールドの値が0Bである場合は1バイト、1Bである場合は2バイトの長さの拡張ヘッダーが追加されてもよい。
同じRoHCパケットから分割されたことを示すために、Seg_ID値はいずれも同じ値を有しなければならない。受信機における正常なRoHCパケット組み換えのためのセグメントの順序情報を示すために、順次増加するSeg_SN値がヘッダーに記録されてもよい。
RoHCパケットを分割する際、前述したように、セグメントの長さを決定して分割を行うことができる。その長さに合うSeg_Len_ID値がヘッダーに記録されてもよい。最後のセグメントの長さは、前述したように、12ビットのL_Seg_Lenフィールドに直接記録されてもよい。
Seg_Len_ID、L_Seg_Lenフィールドを用いて表示する長さ情報は、セグメント、すなわち、リンクレイヤパケットのペイロードに関する情報のみを表示する。したがって、全リンクレイヤパケットの長さ情報は、LIフィールドから読み取れるリンクレイヤパケットのヘッダーの長さを加算して計算することができる。
受信側でRoHCパケットのセグメントを組み換える過程で、組み換えられたRoHCパケットの無欠性を確認する必要がある。そのために、分割過程でRoHCパケットの後にCRCが追加されてもよい。一般に、CRCは、RoHCパケットの最後に追加されるので、分割過程の後に最後のセグメントにCRCを含ませることができる。
図44は、本発明の他の実施例に係る、リンクレイヤにシグナリング情報が伝達される場合のリンクレイヤパケットの構造を示した図である。
この場合、リンクレイヤパケットのヘッダーは、固定ヘッダー(Fixed header)と拡張ヘッダー(Extended header)を含むことができる。固定ヘッダーは、1バイトの長さを有することができ、拡張ヘッダーは、固定された長さを有したり可変する値(variable)を長さとして有することができる。各ヘッダーの長さは、設計者の意図によって変更されてもよい。
固定ヘッダーは、パケットタイプフィールド、PCフィールド及び/又は連鎖(concatenation)カウントフィールドを含むことができる。他の実施例によれば、固定ヘッダーは、パケットタイプフィールド、PCフィールド、LIフィールド及び/又はセグメントIDフィールドを含むことができる。
拡張ヘッダーは、シグナリングクラスフィールド、情報タイプ(information type)フィールド及び/又はシグナリングフォーマットフィールドを含むことができる。他の実施例によれば、拡張ヘッダーは、ペイロード長さパートをさらに含むことができる。更に他の実施例によれば、拡張ヘッダーは、セグメントシーケンスナンバーフィールド、セグメント長さIDフィールド、シグナリングクラスフィールド、情報タイプフィールド及び/又はシグナリングフォーマットフィールドを含むことができる。更に他の実施例によれば、拡張ヘッダーは、セグメントシーケンスナンバーフィールド及び/又はセグメント長さIDフィールドを含むことができる。更に他の実施例によれば、拡張ヘッダーは、セグメントシーケンスナンバーフィールド及び/又は最後のセグメント長さフィールドを含むことができる。
固定ヘッダーのフィールドについて説明する。
パケットタイプフィールドは、前述したように、リンクレイヤに入力されるパケットのタイプを示すことができる。シグナリング情報がリンクレイヤの入力として入る場合、パケットタイプフィールドの値は110Bであり得る。
PCフィールド、LIフィールド、セグメントIDフィールド、セグメントシーケンスナンバーフィールド、セグメント長さIDフィールド、最後のセグメント長さフィールドは、前述した通りである。連鎖カウントフィールドは、前述したカウントフィールドと同一である。
拡張ヘッダーのフィールドについて説明する。
PCフィールドが0の値を有する場合、拡張ヘッダーは、シグナリングクラスフィールド、情報タイプフィールド及び/又はシグナリングフォーマットフィールドを含むことができる。また、シグナリングフォーマットフィールドの値によって、拡張ヘッダーはペイロード長さパートをさらに含むことができる。
シグナリングクラスフィールドは、リンクレイヤパケットが含むシグナリング情報がどのようなタイプの情報であるかを示すことができる。シグナリングクラスフィールドが示すシグナリング情報としては、FIC(Fast Information Channel)情報またはヘッダー圧縮情報などを挙げることができる。シグナリングクラスフィールドが示すシグナリング情報については後述する。
情報タイプフィールドは、シグナリングクラスフィールドが指定するタイプのシグナリング情報に対して、その具体的な事項を示すことができる。情報タイプフィールドが意味するものは、シグナリングクラスフィールドの値によって別に定義されてもよい。
シグナリングフォーマットフィールドは、リンクレイヤパケットが含むシグナリング情報がどのようなフォーマットを有するかを示すことができる。シグナリングフォーマットフィールドが示すフォーマットとしては、セクションテーブル、ディスクリプタまたはXMLなどを挙げることができる。シグナリングフォーマットフィールドが示すフォーマットについては後述する。
ペイロード長さパートは、リンクレイヤパケットのペイロードが含むシグナリング情報の長さを示すことができる。ペイロード長さパートは、連鎖しているそれぞれのシグナリング情報の長さを示す長さフィールドの集合であってもよい。それぞれの長さフィールドは、2バイトのサイズを有することができるが、システムの構成によってサイズは変更されてもよい。ペイロード長さパートの全長は、それぞれの長さフィールドの長さの和で表現することができる。実施例によって、バイトの整列のためのパディングビットが追加されてもよい。この場合、パディングビットの分だけペイロード長さパートの全長が増加し得る。
ペイロード長さパートが存在するか否かは、シグナリングフォーマットフィールドの値によって決定され得る。セクションテーブル及びディスクリプタのように、当該シグナリング情報が当該シグナリング情報の長さ値を有する場合には、別の長さフィールドが省かれてもよい。しかし、別途の長さ値を有しないシグナリング情報の場合は、別の長さフィールドを必要とする。別の長さ値を有しないシグナリング情報の場合、ペイロード長さパートが存在し得る。この場合、ペイロード長さパートは、カウントフィールドの数だけ長さフィールドを含むことができる。
PCフィールドが1であり、LIフィールドが1の値を有する場合、拡張ヘッダーは、セグメントシーケンスナンバーフィールド及び/又は最後のセグメント長さフィールドを含むことができる。PCフィールドが1であり、LIフィールドが0の値を有する場合、拡張ヘッダーは、セグメントシーケンスナンバーフィールド及び/又はセグメント長さIDフィールドを含むことができる。
セグメントシーケンスナンバーフィールド、最後のセグメント長さフィールド、セグメント長さIDフィールドは、前述した通りである。
PCフィールドが1であり、LIフィールドが0の値を有する場合において、当該リンクレイヤパケットのペイロードが1番目のセグメントであれば、その拡張ヘッダーは付加情報をさらに含むことができる。この付加情報は、シグナリングクラスフィールド、情報タイプフィールド、及び/又はシグナリングフォーマットフィールドを含むことができる。シグナリングクラスフィールド、情報タイプフィールド、シグナリングフォーマットフィールドは、前述した通りである。
図45は、前述した本発明の他の実施例に係る、リンクレイヤにシグナリング情報が伝達される場合のリンクレイヤパケットの構造において、そのシンタックスを示した図である。
リンクレイヤパケットのヘッダー(Link Layer Packet Header())は、まず、Packet_TypeフィールドとPC(Payload_Config)フィールドを有することができる。これについては、前述した通りである。
PCフィールドの値が0である場合、PCフィールドの後にCountフィールド、Signaling_Classフィールド、Information_Typeフィールド、Signaling_Formatフィールドが後続することができる。Signaling_Formatフィールドの値が1xである場合(10又は11)、Countフィールドが示す値に基づいて、複数個のLengthフィールドが位置することができる。
PCフィールドの値が1である場合、PCフィールドの後にLast_Segment_Indicatorフィールド、Segment_IDフィールド、及びSegment_Sequence_Numberフィールドが位置することができる。このとき、Last_Segment_Indicatorフィールドの値によってその後部の構成が変わり得る。
Last_Segment_Indicatorフィールドが0である場合、Segment_Sequence_Numberフィールドの後にSegment_Length_IDフィールドが位置することができる。このとき、Segment_Sequence_Numberフィールドの値が0000である場合、その後にSignaling_Classフィールド、Information_Typeフィールド、Signaling_Formatフィールドが位置することができる。
Last_Segment_Indicatorフィールドが1である場合、Segment_Sequence_Numberフィールドの後にLast_Segment_Lengthフィールドが位置することができる。
図46は、本発明の一実施例に係るフレームドパケット(framed packet)伝送のためのリンクレイヤパケットの構造を示した図である。
IPパケット又はMPEG−2 TSパケット以外にも、一般的なネットワークで使用されているパケットをリンクレイヤパケットを介して伝送することができる。この場合、リンクレイヤパケットのヘッダーのパケットタイプエレメントは「111B」の値を有し、リンクレイヤパケットのペイロードにフレームドパケットが含まれていることを示すことができる。
図47は、前述した本発明の一実施例に係るフレームドパケット伝送のためのリンクレイヤパケットの構造において、そのシンタックスを示した図である。
リンクレイヤパケットのヘッダー(Link Layer Packet Header())は、まず、Packet_Typeフィールドを有することができる。これについては、前述した通りである。以降、5ビットを将来の使用のために残すことができる(reserved)。以降にはframed_packet()と表記された、フレームドパケットが位置することができる。
図48は、本発明の一実施例に係るフレームドパケットのシンタックス(syntax)を示した図である。
フレームドパケットのシンタックスは、ethernet_type、length、及び/又はpacket()フィールドを含むことができる。16ビットであるethernet_typeフィールドは、IANAレジストリによって、packet()フィールド内のパケットのタイプを識別することができる。ここで、レジスターされた値のみを用いることができる。16ビットであるlengthフィールドは、packet()構造の全長をバイト単位で設定することができる。可変長を有するpacket()フィールドはネットワークパケットを含むことができる。
図49は、本発明の一実施例に係るFIC(Fast Information Channel)のシンタックス(syntax)を示した図である。
FICに含まれる情報は、FIT(Fast Information Table)の形態で伝送されてもよい。
FITに含まれる情報は、XMLの形態及び/又はセクションテーブル(section table)の形態で伝送されてもよい。
FICは、FIT_data_version情報、num_broadcast情報、broadcast_id情報、delivery_system_id情報、base_DP_id情報、base_DP_version情報、num_service情報、service_id情報、service_category情報、service_hidden_flag情報、SP_indicator情報、num_component情報、component_id情報、DP_id情報、及び/又はRoHC_init_descriptorを含むことができる。
FIT_data_version情報は、fast informationテーブルが含むシンタックス(syntax)及びセマンティクス(semantics)に対するバージョン情報を示すことができる。これを用いて、受信機は、当該Fast Informationテーブルに含まれたシグナリングを処理するか否かなどを決定することができる。受信機は、この情報を用いて、予め格納していたFICの情報をアップデートするか否かを決定することができる。
num_broadcast情報は、当該周波数又は伝送されるトランスポートフレーム(transport frame)を介して放送サービス及び/又はコンテンツを伝送する放送局の数を示すことができる。
broadcast_id情報は、当該周波数又は伝送されるトランスポートフレームを介して放送サービス及び/又はコンテンツを伝送する放送局固有の識別子を示すことができる。MPEG−2 TSベースのデータを伝送する放送局の場合、broadcast_idは、MPEG−2 TSのtransport_stream_idと同じ値を有することができる。
delivery_system_id情報は、伝送される放送ネットワーク上で同じ伝送パラメータを適用して処理する放送送信システムに対する識別子を示すことができる。
base_DP_id情報は、放送信号内でbase DPを識別する情報である。base DPは、broadcast_idに該当する放送局のPSI/SI(Program Specific Information/System Information)及び/又はオーバーヘッドリダクション(overhead reduction)などを含むサービスシグナリングを伝達するDPを指称してもよい。または、当該放送局内の放送サービスを構成するコンポーネント(component)をデコーディングできる代表DPを指称してもよい。
base_DP_version情報は、base DPを介して伝送されるデータに対するバージョン情報を示すことができる。例えば、base DPを介してPSI/SIなどのサービスシグナリングが伝達される場合、サービスシグナリングの変化が発生する場合にbase_DP_version情報の値が1ずつ増加し得る。
num_service情報は、当該周波数又はトランスポートフレーム内でbroadcast_idに該当する放送局が伝送する放送サービスの個数を示すことができる。
service_id情報は、放送サービスを区別できる識別子として用いることができる。
service_category情報は、放送サービスのカテゴリを示すことができる。当該フィールドが有する値によって、次のような意味を有することができる。service_category情報の値が、0x01の場合にBasic TV、0x02の場合にBasic Radio、0x03の場合にRI service、0x08の場合にService Guide、0x09の場合にEmergency Alertingであることを示すことができる。
service_hidden_flag情報は、当該放送サービスがhiddenであるか否かを示すことができる。サービスがhiddenである場合、テストサービス又は独自で用いられるサービスであって、放送受信機では、これを無視するか、またはサービスリストで隠すなどの処理を行うことができる。
SP_indicator情報は、サービス保護(Service protection)が当該放送サービス内の1つ以上のコンポーネントに適用されるか否かを示すことができる。
num_component情報は、当該放送サービスを構成するコンポーネントの個数を示すことができる。
component_id情報は、放送サービス内の当該コンポーネントを区別する識別子として用いることができる。
DP_id情報は、当該コンポーネントが伝送されるDPを示す識別子として用いることができる。
RoHC_init_descriptorは、オーバーヘッドリダクション及び/又はヘッダーリカバリー(header recovery)と関連する情報を含むことができる。RoHC_init_descriptorは、送信端で用いたヘッダー圧縮方式を識別する情報を含むことができる。
図50は、本発明の一実施例に係る、非常警報を行う放送システムを示した図である。
非常警報を発令する機関(Alert Authorities/Originators)からの非常警報関連情報を、放送局(送信機)が受信すると、放送局は、非常警報と関連する情報を、放送システムに合う形態の非常警報シグナリングに変換するか、または非常警報と関連する情報を含む非常警報シグナリングを生成する。この場合、非常警報シグナリングは、CAP(Common Alerting Protocol)メッセージを含むことができる。放送局は、受信機に非常警報シグナリングを伝達することができる。この場合、放送局は、一般の放送データが伝送される経路で非常警報シグナリングを伝達することができる。または、放送局は、一般の放送データが伝送される経路とは異なる経路で非常警報シグナリングを伝達してもよい。非常警報シグナリングは、後述したEATのような形態で生成されてもよい。
受信機は、非常警報シグナリングを受信する。非常警報シグナリングデコーダは、非常警報シグナリングをパーシングし、CAPメッセージを獲得することができる。受信機は、CAPメッセージの情報を用いて、非常警報メッセージを生成し、これを視聴者に表示する。
図51は、本発明の一実施例に係る、EAT(Emergency Alert Table)のシンタックス(syntax)を示した図である。
EACを介して非常警報と関連する情報が伝送されてもよい。EACは、前述した特定のチャンネル(dedicated channel)に該当し得る。
本発明の一実施例に係るEATは、EAT_protocol_version情報、automatic_tuning_flag情報、num_EAS_messages情報、EAS_message_id情報、EAS_IP_version_flag情報、EAS_message_transfer_type情報、EAS_message_encoding_type情報、EAS_NRT_flag情報、EAS_message_length情報、EAS_message_byte情報、IP_address情報、UDP_port_num情報、DP_id情報、automatic_tuning_channel_number情報、automatic_tuning_DP_id情報、automatic_tuning_service_id情報、及び/又はEAS_NRT_service_id情報を含む。
EAT_protocol_version情報は、受信されたEATが有するプロトコルのバージョン(protocol version)を示す。
automatic_tuning_flag情報は、受信機が自動でチャンネル切り替えを行うか否かを知らせる。
num_EAS_messages情報は、EATに含まれているメッセージに対する個数を知らせる。
EAS_message_id情報は、それぞれのEASメッセージを識別する情報である。
EAS_IP_version_flag情報は、EAS_IP_version_flag情報の値が0の場合、IPv4であることを示し、EAS_IP_version_flag情報の値が1の場合、IPv6であることを示す。
EAS_message_transfer_type情報は、EASメッセージが伝達される形態を示す。EAS_message_transfer_type情報の値が000の場合、not specified状態であることを示し、EAS_message_transfer_type情報の値が001の場合、No Alert message(only AV content)であることを示し、EAS_message_transfer_type情報の値が010の場合、当該EAT内にEASメッセージが含まれることを示す。そのために、長さフィールドと当該EASメッセージに対するフィールドが追加される。EAS_message_transfer_type情報の値が011の場合、データパイプを介してEASメッセージが伝送されることを知らせる。EASは、データパイプ内でIPデータグラム(datagram)の形態で伝送されてもよい。そのために、IPアドレス、UDPポート情報、及び伝送されるフィジカルレイヤのDP情報が追加されてもよい。
EAS_message_encoding_type情報は、非常警報メッセージのエンコーディングタイプ(encoding type)に対する情報を知らせる。例えば、EAS_message_encoding_type情報の値が000の場合、not specifiedであることを示し、EAS_message_encoding_type情報の値が001の場合、No Encodingであることを示し、EAS_message_encoding_type情報の値が010の場合、DEFLATE algorithm(RFC1951)であることを示し、EAS_message_encoding_type情報の値のうち001〜111は、他のエンコーディングタイプのために予約されてもよい。
EAS_NRT_flag情報は、受信される緊急メッセージと関連する、NRTコンテンツ(contents)及び/又はNRTデータが存在するかどうかを示す。EAS_NRT_flag情報の値が0の場合、NRTコンテンツ及び/又はNRTデータが、受信した緊急メッセージ(Emergency message)と関連して存在しないことを示し、EAS_NRT_flag情報の値が1の場合、NRTコンテンツ及び/又はNRTデータが、受信した緊急メッセージと関連して存在することを示す。
EAS_message_length情報は、EASメッセージの長さを示す。
EAS_message_byte情報は、EASメッセージのコンテンツ(content)を含む。
IP_address情報は、EASメッセージを伝送するIPパケットのIPアドレスを示す。
UDP_port_num情報は、EASメッセージを伝送するUDPポートナンバーを示す。
DP_id情報は、EASメッセージを伝送するデータパイプを識別する。
automatic_tuning_channel_number情報は、切り替えなければならないチャンネルの番号に対する情報を含む。
automatic_tuning_DP_id情報は、当該コンテンツを伝送するデータパイプを識別する情報である。
automatic_tuning_service_id情報は、当該コンテンツが属するサービスを識別する情報である。
EAS_NRT_service_id情報は、受信される非常警報メッセージと関連するNRTコンテンツ及びデータが伝送される場合、すなわち、EAS_NRT_flagがenable状態である場合に、該当するNRTサービスを識別する情報である。
図52は、本発明の一実施例に係る、リンクレイヤパケットのペイロードに含まれる、ヘッダー圧縮と関連する情報を識別する方法を示した図である。
前述したように、リンクレイヤで上位レイヤから伝達されるパケットに対してヘッダー圧縮が行われる場合、受信機でヘッダーを復元できるように、必要な情報がシグナリングの形態で生成されて受信機に伝送されなければならない。このような情報をヘッダー圧縮シグナリング情報と命名することができる。
ヘッダー圧縮シグナリング情報は、リンクレイヤのパケットのペイロードに含まれてもよい。このとき、送信機は、リンクレイヤのパケットのペイロードに含まれるヘッダー圧縮シグナリング情報の種類を識別する識別情報を、リンクレイヤパケットのヘッダーまたはフィジカルレイヤの伝送パラメータ(物理層のシグナリング情報)に含ませて、受信機に伝送することができる。
一実施例によれば、識別情報の値が「000」である場合、初期化情報がリンクレイヤパケットのペイロードに含まれることを示すことができる。識別情報の値が「001」である場合、構成パラメータ(configuration parameter)がリンクレイヤパケットのペイロードに含まれることを示すことができる。識別情報の値が「010」である場合、スタティックチェーン(static chain)情報がリンクレイヤパケットのペイロードに含まれることを示すことができる。識別情報の値が「011」である場合、ダイナミックチェーン(dynamic chain)情報がリンクレイヤパケットのペイロードに含まれることを示すことができる。
ここで、ヘッダー圧縮シグナリング情報はコンテキスト情報と呼ぶことができる。実施例によって、スタティック又はダイナミックチェーン情報をコンテキスト情報と呼んでもよく、両方ともコンテキスト情報と呼んでもよい。
図53は、本発明の一実施例に係る、初期化情報を示した図である。
リンクレイヤパケットのペイロードに含まれる初期化情報は、num_RoHC_channel情報、max_cid情報、large_cids情報、num_profiles情報、profile()エレメント、num_IP_stream情報及び/又はIP_address()エレメントを含むことができる。
num_RoHC_channel情報は、RoHCチャンネルの数を示す。
max_cid情報は、CIDの最大値をデコンプレッサー(decompressor)に知らせるために用いられる。
large_cid情報は、ブール(Boolean)値を有し、CIDの構成において、short CID(0〜15)を用いるか、またはembedded CID(0〜16383)を用いるかを知らせる。これによって、CIDを表現するバイトのサイズも共に決定される。
num_profiles情報は、用いられたRoHCのプロファイルの数を示す。
profile()エレメントは、RoHCでのヘッダーが圧縮されるプロトコルに関する情報を含む。RoHCでは、ストリームに対する圧縮及び復旧を可能にするためには、コンプレッサー(compressor)とデコンプレッサー(decompressor)が同じプロファイルを有しなければならない。
num_IP_stream情報は、IPストリームの数を示す。
IP_address()エレメントは、ヘッダー圧縮が行われたIPパケットのIPアドレスを含む。
図54は、本発明の一実施例に係る、構成パラメータを示した図である。
リンクレイヤパケットのペイロードに含まれる構成パラメータは、RoHC_channel_id情報、num_context情報、context_id情報、context_profile情報、packet_configuration_mode情報、及び/又はcontext_transmission_mode情報を含むことができる。
RoHC_channel_id情報は、RoHCチャンネルを識別する情報である。
num_context情報は、RoHCのコンテキスト(context)の数を示す。
context_id情報は、RoHCのコンテキストを識別する情報である。後続するRoHC関連フィールドがどのコンテキストに該当するかを表示することができる。context_id情報はCID(context identifier)に該当し得る。
context_profile情報は、RoHCでのヘッダーが圧縮されるプロトコルに関する情報を含む。RoHCでは、ストリームに対する圧縮及び復旧を可能にするためには、コンプレッサーとデコンプレッサーが同じプロファイルを有しなければならない。
packet_configuration_mode情報は、パケットの構成モードを識別する情報である。パケットの構成モードは、前述した通りである。
context_transmission_mode情報は、コンテキストの伝送モードを識別する情報である。コンテキストの伝送モードは、前述した通りである。コンテキストは、一般の放送データが伝送される経路で伝送されてもよく、シグナリング情報の伝送のために割り当てられた経路を介して伝送されてもよい。
図55は、本発明の一実施例に係る、スタティックチェーン情報を示した図である。
リンクレイヤパケットのペイロードに含まれるスタティックチェーン情報は、context_id情報、context_profile情報、static_chain_length情報、static_chain()エレメント、dynamic_chain_incl情報、dynamic_chain_length情報及び/又はdynamic_chain()エレメントを含むことができる。
context_id情報は、RoHCのコンテキストを識別する情報である。後続するRoHC関連フィールドがどのコンテキストに該当するかを表示することができる。context_id情報はCID(context identifier)に該当し得る。
context_profile情報は、RoHCでのヘッダーが圧縮されるプロトコルに関する情報を含む。RoHCでは、ストリームに対する圧縮及び復旧を可能にするためには、コンプレッサーとデコンプレッサーが同じプロファイルを有しなければならない。
static_chain_length情報は、static_chain()エレメントの長さを示す。
static_chain()エレメントは、RoHCヘッダー圧縮が行われる過程で、上位レイヤパケットから抽出したスタティックチェーンに属する情報を含む。
dynamic_chain_incl情報は、ダイナミックチェーン情報が含まれているか否かを識別する情報である。
dynamic_chain_length情報は、dynamic_chain()エレメントの長さを示す。
dynamic_chain()エレメントは、RoHCヘッダー圧縮が行われる過程で、上位レイヤパケットから抽出したダイナミックチェーンに属する情報を含む。
図56は、本発明の一実施例に係る、ダイナミックチェーン情報を示した図である。
リンクレイヤパケットのペイロードに含まれるダイナミックチェーン情報は、context_id情報、context_profile情報、dynamic_chain_length情報及び/又はdynamic_chain()エレメントを含むことができる。
context_id情報は、RoHCのコンテキストを識別する情報である。後続するRoHC関連フィールドがどのコンテキストに該当するかを表示することができる。context_id情報はCID(context identifier)に該当し得る。
context_profile情報は、RoHCでのヘッダーが圧縮されるプロトコルに関する情報を含む。RoHCでは、ストリームに対する圧縮及び復旧を可能にするためには、コンプレッサーとデコンプレッサーが同じプロファイルを有しなければならない。
dynamic_chain_length情報は、dynamic_chain()エレメントの長さを示す。
dynamic_chain()エレメントは、RoHCヘッダー圧縮が行われる過程で、上位レイヤパケットから抽出したダイナミックチェーンに属する情報を含む。
図57は、本発明の更に他の実施例に係るリンクレイヤパケットのヘッダーの構造を示した図である。
第一に、リンクレイヤパケットに一つの完全なインプットパケットが含まれてエンカプセレーションされた場合の実施例(t57010)を説明する。これは、前述したように、シングルパケットエンカプセレーション(single packet encapsulation)と呼ぶことができる。
この場合(t57010)、リンクレイヤパケットのヘッダーは、前述したPacket_Typeフィールドとこれに後続するPCフィールドから開始されてもよい。ここで、Packet_Typeフィールドは、前述したように、リンクレイヤパケットに含まれるインプットパケットのタイプを示すことができる。ここで、PCフィールドは、前述したように、リンクレイヤパケットのペイロード構成を示すことができる。ここで、PCフィールドは、その値によって、一つの完全なパケットがペイロードに含まれているか、またはパケットが連鎖(concatenation)してペイロードに含まれているか、または分割(segmentation)されてペイロードに含まれているかを示すことができる。一実施例において、PCフィールドの値が0の場合、リンクレイヤパケットのペイロードには単一の完全なインプットパケットが含まれてもよい。PCフィールドの値が1の場合、リンクレイヤパケットのペイロードには分割又は連鎖したインプットパケットが含まれてもよい。
PCフィールドの後にはHMフィールドが後続することができる。HMフィールドは、前述したように、リンクレイヤパケットのヘッダーモードを示すことができる。すなわち、HMフィールドは、前述したように、含まれた単一のインプットパケットが短い(short)パケットであるか、または長い(long)パケットであるかを示すことができる。これによって、後続するヘッダー構造が変更され得る。
短いインプットパケットの場合、すなわち、HMフィールドが0の値を有する場合、11ビットの長さフィールドが存在し得る。この長さフィールドは、リンクレイヤペイロードの長さを示すことができる。
長いインプットパケットの場合、すなわち、HMフィールドが1の値を有する場合、11ビットの長さフィールドの後に5ビットの追加の長さフィールドが位置してもよい。合計2バイトの長さフィールドは、リンクレイヤペイロードの長さを示すことができる。ここで、11ビットの長さフィールドまでをベースヘッダーとし、それ以降を追加ヘッダーとして区分することができる。2つの長さフィールドに後続して2ビットのリザーブド(reserved)フィールドとLFフィールドが位置してもよい。リザーブドフィールドは、将来の使用のためにビットを残した区間である。LFフィールドは、それに後続してラベル(Label)フィールドが位置するか否かを示すフラグであり得る。ラベルフィールドは、一種のサブストリームのラベルであって、サブストリームIDのように、リンクレイヤレベルで特定の上位レイヤパケットストリームをフィルタリングするのに使用することができる。上位レイヤパケットストリームとサブストリームラベル情報のマッピングは、マッピング情報によって行うことができる。LFフィールドは、前述したSIFフィールドに該当し得る。ラベルフィールドは、前述したSIDフィールドに該当し得る。ここで、ラベルフィールドからはオプショナルヘッダーと呼ぶことができる。ラベルフィールドは、実施例によって3バイトのサイズを有してもよい。
第二に、リンクレイヤパケットに、インプットパケットの一つのセグメントが含まれてエンカプセレーションされた場合の実施例(t57020)を説明する。ここで、セグメントは、一つのインプットパケットが分割されて生成されてもよい。これは、前述したように、分割(segmentation)された場合と呼ぶことができる。
リンクレイヤヘッダーは、同様に、Packet_TypeフィールドとPCフィールドから開始されてもよい。次いでS/Cフィールドが位置してもよい。このフィールドは、前述したように、リンクレイヤペイロードに連鎖したインプットパケットが含まれているか、または分割されたセグメントが含まれているかを示すことができる。両ケースに応じて、リンクレイヤヘッダーの構造は変更され得る。
S/Cフィールドが0である場合、すなわち、分割された場合において、S/Cフィールドの後にセグメントIDフィールド、セグメントシーケンスナンバーフィールドが順に位置してもよい。最初のセグメント以外のセグメントを含むリンクレイヤパケットに対しては、LIフィールド及び/又はセグメント長さIDフィールドが順に位置してもよい。リンクレイヤパケットがその最初のセグメントを含む場合、最初のセグメント長さフィールド及び/又はLFフィールドが位置してもよい。すなわち、最初のセグメントを含むリンクレイヤヘッダーにはLIフィールドが含まれなくてもよい。ここで、最初のセグメント長さフィールドは、リンクレイヤパケットに含まれた最初のセグメントの長さを直接示すフィールドであり得る。LFフィールドは、前述したように、その値によって、その後にラベルフィールドが位置してもよく、位置しなくてもよい。その他の各フィールドについての説明は、前述した通りである。
第三に、リンクレイヤパケットに、複数個のインプットパケットが連鎖してエンカプセレーションされた場合の実施例(t57030)を説明する。これは、前述したように、連鎖(concatenation)した場合と呼ぶことができる。
リンクレイヤヘッダーは、同様に、Packet_TypeフィールドとPCフィールドから開始されてもよい。分割の場合と同様に、次いでS/Cフィールドが位置してもよい。それに後続して、前述したカウントフィールドとLMフィールドが位置してもよい。ここで、カウントフィールドは、2ビットのフィールドであってもよく、00,01,10,11である場合、それぞれ2,3,4,5個のインプットパケットが連鎖していることを示すことができる。または、前述したように、3ビットのカウントフィールドが使用されてもよい。
LMフィールドは、長さモード(Lenth Mode)フィールドであって、短いインプットパケットが連鎖してエンカプセレーションされたか、または長いインプットパケットが連鎖してエンカプセレーションされたかを示すことができる。短いインプットパケットが連鎖した場合に、LMフィールドは0の値を有し、11ビットの長さフィールドが、連鎖したインプットパケットの個数だけ位置してもよい。長いインプットパケットが連鎖した場合に、LMフィールドは1の値を有し、2バイトの長さフィールドが、連鎖したインプットパケットの個数だけ位置してもよい。ここで、2048バイトよりも小さい場合、短いインプットパケットとし、2048バイトと同一又は大きい場合、長いインプットパケットとして区分することができる。
実施例によって、短いインプットパケットと長いインプットパケットが混在して連鎖した場合もあり得るが、この場合、短いインプットパケットに対しては11ビットの長さフィールド、長いインプットパケットに対しては2バイトの長さフィールドが混在して位置してもよい。この長さフィールドは、対応するインプットパケットの順序と同じ順序でヘッダーに位置してもよい。
前述したリンクレイヤパケットのヘッダーの構造において、実施例によって、一部のフィールドが省略されてもよい。また、一部のフィールドが変更又は追加されてもよく、その順序が変わってもよい。
図58は、本発明の更に他の実施例に係るリンクレイヤパケットのヘッダー構造のシンタックスを示した図である。
このシンタックスは、前述した、更に他の実施例に係るリンクレイヤパケットのヘッダー構造を示したものである。前述したように、Packet_TypeフィールドとPC(Payload_Config)フィールドが共通に位置してもよい。
PCフィールドの値が0の場合、ヘッダーモードフィールドが位置する。ヘッダーモードフィールドの値が0の場合、11ビットの長さフィールドが位置してもよい。ヘッダーモードフィールドの値が1の場合、合計2バイトの長さフィールドとLFフィールド、リザーブドビットが順に位置してもよい。LFフィールドの値によってLabelフィールドが追加で位置してもよい。
PCフィールドの値が1の場合、S/Cフィールドが位置する。S/Cフィールドの値が0の場合、セグメントIDフィールドとセグメントシーケンスナンバーフィールドが位置してもよい。セグメントシーケンスナンバー値が0000の場合、すなわち、最初のセグメントが含まれる場合、最初のセグメント長さフィールドとLFフィールドが位置してもよい。LFフィールドの値によって、Labelフィールドが追加で位置してもよい。セグメントシーケンスナンバー値が0000以外の値を有する場合、LIフィールドとセグメント長さIDフィールドが位置してもよい。
S/Cフィールドの値が1の場合、カウントフィールドとLMフィールドが位置してもよい。カウントフィールドの値が示す個数だけ長さフィールドが位置することができ、短いインプットパケットに対しては11ビットの長さフィールド、長いインプットパケットに対しては2バイトの長さフィールドが位置してもよい。
最後に残る部分に対してはパディングビットが位置してもよい。
前述したリンクレイヤパケットのヘッダー構造において、実施例によって、一部のフィールドが省略されてもよい。また、一部のフィールドが変更又は追加されてもよく、その順序が変わってもよい。
図59は、本発明の更に他の実施例に係るリンクレイヤパケットのヘッダー構造のうち、完全な一つのインプットパケットがリンクレイヤペイロードに含まれた場合を示した図である。
第一の実施例(t59010)は、短いシングルパケットエンカプセレーションの場合を示した。前述したように、Packet_Typeフィールド、PCフィールド、HMフィールドが位置し、それに後続して11ビットの長さフィールドが位置してもよい。合計2バイトのヘッダー長さを有することができ、それに後続してリンクレイヤペイロードが位置してもよい。ここで、PCフィールド、HMフィールドは、それぞれ0、0の値を有することができる。
第二の実施例(t59020)は、長いシングルパケットエンカプセレーションの場合を示した。前述したように、Packet_Typeフィールド、PCフィールド、HMフィールドが位置し、それに後続して2バイトの長さフィールドが位置してもよい。2バイトの長さフィールドは、前述したように、11ビットの長さフィールドと追加的な5ビットの長さフィールドが位置したものであってもよい。この長さフィールドは、それぞれLSBパート、MSBパートを意味し得る。それに後続してリザーブドビットとLFフィールドが位置してもよい。合計3バイトのヘッダー長さを有することができ、それに後続してリンクレイヤペイロードが位置してもよい。ここで、PCフィールド、HMフィールド、LFフィールドは、それぞれ0、1、0の値を有することができる。
第三の実施例(t59030)は、長いシングルパケットがエンカプセレーションされた場合において、ラベルフィールドがさらに位置する場合を示した。前述した長いシングルパケットがエンカプセレーションされた場合と同一であるが、LFフィールドは1値を有し、それに後続してラベルフィールドが位置してもよい。
図60は、本発明の更に他の実施例に係るリンクレイヤパケットのヘッダー構造のうち、インプットパケットが分割された一つのセグメントがリンクレイヤペイロードに含まれた場合を示した図である。
第一の実施例(t60010)は、分割されたセグメントのうち最初のセグメントを含むリンクレイヤパケットの構造を示した。前述したように、Packet_Typeフィールド、PCフィールド、S/Cフィールドが位置し、それに後続して長さIDフィールドとセグメントシーケンスナンバーフィールドが位置してもよい。ここで、PCフィールド、S/Cフィールド、セグメントシーケンスナンバーフィールドは、それぞれ、0、0、0000の値を有することができる。最初のセグメントが含まれたので、最初のセグメント長さフィールドが位置し得る。このフィールドは、前述したように、最初のセグメントの長さを直接示すことができる。それに後続してLFフィールドが位置してもよい。
第二の実施例(t60020)は、分割されたセグメントのうち、最初又は最後のセグメントではない中間セグメントを含むリンクレイヤパケットの構造を示した。同様に、Packet_Typeフィールド、PCフィールド、S/Cフィールドが位置し、それに後続して長さIDフィールドとセグメントシーケンスナンバーフィールドが位置してもよい。ここで、PCフィールド、S/Cフィールドは、それぞれ、0、0の値を有することができる。最初のセグメントが含まれなかったのでLIフィールドが位置するようになり、最後のセグメントが含まれなかったので、その値は0であり得る。それに後続してセグメント長さIDフィールドが位置してもよい。
第三の実施例(t60030)は、分割されたセグメントのうち、最後のセグメントを含むリンクレイヤパケットの構造を示した。同様に、Packet_Typeフィールド、PCフィールド、S/Cフィールドが位置し、それに後続して長さIDフィールドとセグメントシーケンスナンバーフィールドが位置してもよい。ここで、PCフィールド、S/Cフィールドは、それぞれ、0、0の値を有することができる。最初のセグメントが含まれなかったのでLIフィールドが位置するようになり、最後のセグメントが含まれたので、その値は1であり得る。それに後続してセグメント長さIDフィールドが位置してもよい。
第四の実施例(t60040)は、分割されたセグメントのうち最初のセグメントを含むリンクレイヤパケットの構造において、LFフィールドが1である場合を示した。第一の実施例と同一であるが、LFフィールドの値によって、ラベルフィールドがさらに追加されてもよい。
図61は、本発明の更に他の実施例に係るリンクレイヤパケットのヘッダー構造のうち、インプットパケットが分割された一つのセグメントがリンクレイヤペイロードに含まれた場合を、図表で示した図である。
一つのインプットパケットが総8個に分割された場合を想定した。このセグメントを有する全てのリンクレイヤパケットに対して、Packet_Typeフィールドは同じ値を有する。一つのインプットパケットから派生したためである。PCフィールド、S/Cフィールドは、前述した定義通りに、1、0の値を有する。セグメントIDフィールドは、同様に一つのインプットパケットから派生したので、同じ値を有する。セグメントシーケンスナンバーフィールドは、各セグメントの順序を示すことができる。実施例によって、3ビットのセグメントシーケンスナンバーフィールドも可能である。
最初のセグメントを有するリンクレイヤパケットは、最初のセグメント長さフィールドが存在することによって、そのペイロードの長さを示すことができる。この場合、LIフィールドとセグメント長さIDフィールドは存在しなくてもよい。
最初のセグメントではないセグメントを有するリンクレイヤパケットは、ペイロードの長さを直接示す長さフィールドは存在せず、LIフィールドとセグメント長さIDフィールドを有することができる。セグメント長さIDフィールドは、前述した指定された長さIDのうち1つを選択して値を有するようになり、指定された値によってセグメントの長さを示すことができる。LIフィールドは、最後のセグメントではない場合には0、最後のセグメントである場合には1の値を有することができる。
図62は、本発明の更に他の実施例に係るリンクレイヤパケットのヘッダー構造のうち、複数個のインプットパケットが連鎖してリンクレイヤペイロードに含まれた場合を示した図である。
第一の実施例(t62010)は、短いインプットパケットが連鎖してリンクレイヤペイロードに含まれた場合を示した。同様に、Packet_Typeフィールド、PCフィールド、S/Cフィールドが位置し、それに後続してカウントフィールドとLMフィールドがさらに位置してもよい。前述した定義に従って、PCフィールド、S/Cフィールド、LMフィールドは、それぞれ1、1、0の値を有することができる。
それに後続して、11ビットの長さフィールドが順次位置してもよい。各連鎖した短いインプットパケットの長さを1つずつ示す長さフィールドは、対応するインプットパケットの順序と同一に順次位置してもよい。最後の長さフィールドまで埋められたとき、8ビットを埋めることができず残った部分はパディング(P)で埋められてもよい。次いで、各連鎖したインプットパケットが位置してもよい。
第二の実施例(t62020)は、長いインプットパケットが連鎖してリンクレイヤペイロードに含まれた場合を示した。同様に、Packet_Typeフィールド、PCフィールド、S/Cフィールドが位置し、それに後続してカウントフィールドとLMフィールドがさらに位置してもよい。前述した定義に従って、PCフィールド、S/Cフィールド、LMフィールドは、それぞれ1、1、1の値を有することができる。
それに後続して、2バイトの長さフィールドが順次位置してもよい。各連鎖した長いインプットパケットの長さを1つずつ示す長さフィールドは、対応するインプットパケットの順序と同一に順次位置してもよい。次いで、各連鎖したインプットパケットが位置してもよい。
図63は、本発明の更に他の実施例に係るリンクレイヤパケットのヘッダー構造のうち、完全な一つのインプットパケットがリンクレイヤペイロードに含まれた場合を示した図である。
第一の実施例(t63010)と第二の実施例(t63020)は、前述したシングルパケットエンカプセレーションにおけるリンクレイヤパケットのヘッダー構造と同一であり得る。ただし、長いインプットパケットを有する場合に対して、第一の実施例では、2バイトの長さフィールドが含まれるものと表現され、第二の実施例では、11ビットの長さフィールドと5ビットの追加の長さフィールドが含まれるものと表現された。この場合、各長さフィールドは、長さを示すLSBパートとMSBパートを意味し得る。また、合計2バイトの長さフィールドの後にはリザーブドビットを有するものとなっており、最後のビットは、前述したように、LFフィールドとして活用できる。
第三の実施例(t63030)は、前述したシングルパケットエンカプセレーションにおけるリンクレイヤパケットのヘッダー構造と類似している。短いインプットパケットが含まれる場合は、前述したシングルパケットエンカプセレーションにおけるリンクレイヤパケットのヘッダー構造と同一である。長いインプットパケットが含まれる場合には、5ビットの追加の長さフィールドの代わりに、長さ拡張フィールド(Length extension)が位置してもよい。
長さ拡張フィールドは、長さ表示の拡張を表現するフィールドであり得る。長さ拡張フィールドは、パケットの構造に応じて、占めるビット数が変更されてもよい。ここでは、説明の便宜のため、2ビットの長さ拡張フィールドを想定して説明する。例えば、長さ拡張フィールドが使用されない場合、すなわち、HM=0の場合には、短いインプットパケットがエンカプセレーションされた場合であり、11ビットの長さフィールドは0〜2047バイトの間のペイロード長を示すことができる。長さ拡張フィールドが使用される場合、長さ拡張フィールドの値は、ペイロード長を示す際に、一種のオフセットとして作用することができる。長さ拡張フィールドが00の値を有する場合、11ビットの長さフィールドが示す値は、2048〜4095バイトの間のペイロード長を意味するようになる。同様に、長さ拡張フィールドが01、10、11の値を有する場合、11ビットの長さフィールドが示す値は、それぞれ4096〜6143、6144〜8191、8192〜10239バイトの間のペイロード長を意味するようになる。例えば、11ビットの長さフィールドが「1バイトのペイロード長」を示す値を有し、長さ拡張フィールドが00の値を有する場合、これは、ペイロード長が2049バイトであるという意味である。また、例えば、11ビットの長さフィールドが「1バイトのペイロード長」を示す値を有し、長さ拡張フィールドが01の値を有する場合、これは、ペイロード長が4097バイトであるという意味である。これを通じて、長いシングルパケットのエンカプセレーションにも、その長さを示すことができる。
第四の実施例(t63040)は、前述したシングルパケットエンカプセレーションにおけるリンクレイヤパケットのヘッダー構造と同一であり得る。2バイトの長さフィールドは、11ビットの長さフィールドと追加的な5ビットの長さフィールドに置換されてもよい。この場合、各長さビットは、長さを示すLSBパートとMSBパートを意味し得る。また、LFフィールドの値によってラベルフィールドがさらに位置してもよい。ラベルフィールドの位置は、実施例によって変更されてもよい。
図64は、本発明の更に他の実施例に係るリンクレイヤパケットのヘッダー構造において、そのヘッダーの長さを図表で示した図である。
短いインプットパケットがシングルパケットエンカプセレーションされる場合において、PCフィールドとHMフィールドは、それぞれ0、0の値を有することができる。11ビットの長さフィールドによって、ヘッダーの全長は2バイトとなり得る。ここで、xは、当該ビットにいかなる値が入ってもかまわないということを意味する。例えば、11ビットの長さフィールドは、ペイロードの長さによって定められる値であるから、ヘッダーの長さとは関係ないので、11個のx(xxxxxxxxxxx)で表現された。
長いインプットパケットがシングルパケットエンカプセレーションされる場合において、PCフィールドとHMフィールドは、それぞれ0、1の値を有することができる。次いで、11ビットの長さフィールド、5ビットの追加の長さフィールドなどのフィールドがさらに追加され、ヘッダーの全長は3バイトとなり得る。
分割される場合において、各リンクレイヤパケットのPCフィールドとS/Cフィールドは、それぞれ1、0の値を有することができる。最初のセグメントを含むリンクレイヤパケットは、0000のセグメントシーケンスナンバーフィールドを有することができる。本実施例において、LFフィールドは0であってもよい。この場合、ヘッダーの全長は3バイトとなり得る。最初のセグメントではないセグメントを含むリンクレイヤパケットは、4ビットのセグメントシーケンスナンバーフィールドと、これに後続するLIフィールドを有することができる。この場合においては、ヘッダーの全長は2バイトとなり得る。
短いインプットパケットが連鎖する場合において、PCフィールドとS/Cフィールドは、それぞれ1、1の値を有することができる。カウントフィールドは、n個のパケットがエンカプセレーションされたことを示すことができ、この場合、LMフィールドは0の値を有することができる。ヘッダーの全長は、n個の11ビットの長さフィールドが使用され、ヘッダーの前部に使用された1バイトがあるので、11n/8+1バイトで表示することができる。ただし、バイトアラインのために、Pビット長のパディングビットの追加が必要な場合もあり、このとき、ヘッダーの長さは((11n+P)/8+1)バイトで表示することができる。
長いインプットパケットが連鎖する場合において、PCフィールドとS/Cフィールドは、それぞれ1、1の値を有することができる。カウントフィールドは、n個のパケットがエンカプセレーションされたことを示すことができ、この場合、LMフィールドは1の値を有することができる。ヘッダーの全長は、n個の2バイト長のフィールドが使用され、ヘッダーの前部に使用された1バイトがあるので、2n+1バイトで表示することができる。
図65は、本発明の更に他の実施例に係るリンクレイヤパケットのヘッダー構造のうち、インプットパケットが分割された一つのセグメントがリンクレイヤペイロードに含まれた場合を示した図である。
図示された実施例(t65010)は、前述した本発明の更に他の実施例に係るリンクレイヤパケットのヘッダー構造において、分割された場合の構造と類似している。Packet_Typeフィールド、PCフィールド及びS/Cフィールドが順に位置し、セグメントIDフィールド、セグメントシーケンスナンバーフィールドが位置してもよい。PCフィールドとSCフィールドは、それぞれ1、0の値を有することができる。最初のセグメントの場合、最初のセグメント長さフィールドを有することができる。最初のセグメント長さフィールドの後の1ビットは、リザーブドビットであってもよく、前述したようにLFフィールドが位置してもよい。最初のセグメントではない場合には、LIフィールドとセグメント長さIDフィールドが位置してもよい。
これを表で示す場合(t65020)、総5個に分割されたセグメントに対して、Packet_Typeフィールドは同じ値を有し、PCフィールド、SCフィールドはそれぞれ1、0の値を有することができる。セグメントIDフィールドも同じ値を有することができる。セグメントシーケンスナンバーは、各セグメントの順序を示す値を有することができる。最初のセグメントの場合には、最初のセグメント長さフィールドで長さを示し、LIフィールドは存在しなくてもよい。最初のセグメントではない場合には、セグメント長さIDフィールドを使用して長さを示し、LIフィールドは、最後のセグメントであるか否かによって0又は1の値を有することができる。
図66は、本発明の更に他の実施例に係るリンクレイヤパケットのヘッダー構造のうち、インプットパケットが分割された一つのセグメントがリンクレイヤペイロードに含まれた場合を示した図である。
図示された実施例(t66010)は、前述した本発明の更に他の実施例に係るリンクレイヤパケットのヘッダー構造において、分割された場合の構造と類似している。ただし、最初のセグメントではないセグメントを有するリンクレイヤパケットに対して、そのヘッダー構造が変更されてもよい。この場合、LIフィールドの後に、セグメント長さIDフィールドの代わりにセグメント長さフィールドが位置してもよい。セグメント長さフィールドは、当該リンクレイヤパケットが有するセグメントの長さを直接示すフィールドであり得る。実施例によって、セグメント長さフィールドは11ビットの長さを有してもよい。この場合、最初のセグメント長さフィールドも、単純にセグメント長さフィールドと呼ぶこともできる。
これを表で示す場合(t66020)、総5個に分割されたセグメントに対して、Packet_Typeフィールドは同じ値を有し、PCフィールド、SCフィールドはそれぞれ1、0の値を有することができる。セグメントIDフィールドも、同じ値を有することができる。セグメントシーケンスナンバーは、各セグメントの順序を示す値を有することができる。最初のセグメントであるか否かに関係なく、リンクレイヤペイロードの長さは、セグメント長さフィールドによって示すことができる。LIフィールドは、最初のセグメントの場合には存在しなくてもよいが、最初のセグメントでない場合には存在し得る。LIフィールドは、最後のセグメントであるか否かによって0又は1の値を有することができる。
図67は、本発明の更に他の実施例に係るリンクレイヤパケットのヘッダー構造のうち、インプットパケットが分割された一つのセグメントがリンクレイヤペイロードに含まれた場合を示した図である。
図示された実施例(t67010)は、前述した本発明の更に他の実施例に係るリンクレイヤパケットのヘッダー構造において、分割された場合の構造と類似している。ただし、最初のセグメントではないセグメントを有するリンクレイヤパケットに対して、そのヘッダー構造が変更されてもよい。この場合、LIフィールドはセグメント長さフィールドの後に位置してもよい。セグメント長さフィールドに対しては、前述した通りであり、この場合、最初のセグメント長さフィールドも、単純にセグメント長さフィールドと呼ぶこともできる。
これを表で示す場合(t67020)、総5個に分割されたセグメントに対して、Packet_Typeフィールドは同じ値を有し、PCフィールド、SCフィールドはそれぞれ1、0の値を有することができる。セグメントIDフィールドも同じ値を有することができる。セグメントシーケンスナンバーは、各セグメントの順序を示す値を有することができる。最初のセグメントであるか否かに関係なく、リンクレイヤペイロードの長さはセグメント長さフィールドによって示すことができる。LIフィールドは、最初のセグメントの場合には存在しなくてもよいが、最初のセグメントではない場合には存在し得る。LIフィールドは、最後のセグメントであるか否かによって0又は1の値を有することができる。
図68は、本発明の更に他の実施例に係るリンクレイヤパケットのヘッダー構造のうち、インプットパケットが分割された一つのセグメントがリンクレイヤペイロードに含まれた場合を示した図である。
図示された実施例(t68010)は、前述した本発明の更に他の実施例に係るリンクレイヤパケットのヘッダー構造において、分割された場合の構造と類似している。ただし、この場合、最初のセグメントであるか否かに関係なく、統一されたヘッダー構造を使用することができる。セグメントシーケンスナンバーフィールドまでの構造は、前述した通りである。その後に最初のセグメントであるかに関係なくLIフィールドが位置し、その後に当該リンクレイヤパケットのペイロード長を示すセグメント長さフィールドが位置してもよい。セグメント長さフィールドに対しては、前述した通りである。本実施例において、セグメントIDフィールドは省略されてもよく、セグメント長さフィールドがSCフィールドの直後に位置してもよい。また、LIフィールドの後に、前述したSIFフィールドが位置してもよい。
これを表で示す場合(t68020)、総5個に分割されたセグメントに対して、Packet_Typeフィールドは同じ値を有し、PCフィールド、SCフィールドはそれぞれ1、0の値を有することができる。セグメントIDフィールドも同じ値を有することができる。セグメントシーケンスナンバーは、各セグメントの順序を示す値を有することができる。最初のセグメントであるか否かに関係なくLIフィールドが存在し、LIフィールドは、最後のセグメントであるか否かによって0又は1の値を有することができる。各リンクレイヤペイロードの長さは、最初のセグメントであるか否かに関係なく、セグメント長さフィールドによって示すことができる。
図69は、本発明の更に他の実施例に係るリンクレイヤパケットのヘッダー構造のうち、複数個のインプットパケットが連鎖してリンクレイヤペイロードに含まれた場合を示した図である。
図示された実施例(t69010)は、前述した本発明の更に他の実施例に係るリンクレイヤパケットのヘッダー構造において、連鎖した場合の構造と同一であり得る。Packet_Typeフィールド、PCフィールド及びS/Cフィールドが順に位置し、カウントフィールドとLMフィールドが位置してもよい。PCフィールドとSCフィールドは、それぞれ1、0の値を有することができる。LMフィールドの値に応じて、短いパケットがエンカプセレーションされた場合には、11ビットの長さフィールドが、連鎖した数だけ位置してもよい。長いパケットがエンカプセレーションされた場合には、2バイトの長さフィールドが、連鎖した数だけ位置してもよい。
これを、連鎖したインプットパケットの数に応じて表で示すことができる(t69020)。カウントフィールドの値が00である場合、2個のインプットパケットが連鎖しており、2個の長さフィールドが使用されて22ビットが使用され、2ビットのパディングがバイトアラインのために使用されてもよい。したがって、ヘッダーの全長は4バイトであり、一つのインプットパケットのためのヘッダー部分は2.0バイトであり得る。
カウントフィールドの値が01、10、11である場合、それぞれ3、4、5個のインプットパケットが連鎖しており、それぞれ3、4、5個の長さフィールドが使用されてそれぞれ33、44、55ビットが使用され、それぞれ7、4、1ビットのパディングがバイトアラインのために使用されてもよい。したがって、ヘッダーの全長はそれぞれ6、7、8バイトであり、一つのインプットパケットのためのヘッダー部分はそれぞれ2.0、1.75、1.60バイトであり得る。
図70は、本発明の更に他の実施例に係るリンクレイヤパケットのヘッダー構造のうち、複数個のインプットパケットが連鎖してリンクレイヤペイロードに含まれた場合を示した図である。
図示された実施例(t70010,t70020)は、前述した本発明の更に他の実施例に係るリンクレイヤパケットのヘッダー構造において、連鎖した場合の構造と類似している。ただし、この場合、前述した構造からLMフィールドが省略されてもよい。Packet_Typeフィールド、PCフィールド及びS/Cフィールドが順に位置し、カウントフィールドが位置してもよい。PCフィールドとSCフィールドは、それぞれ1、1の値を有することができる。
図示された実施例(t70010)の場合、11ビットの長さフィールドが、連鎖した数だけ位置してもよい。このとき、11ビットで表現できる短いインプットパケットに対しては、11ビットの長さフィールドでその長さが表示される。11ビットで表現できる長さよりも大きい長さのインプットパケットの場合には、連鎖が使用されるものではなく、前述したシングルパケットエンカプセレーション又は分割(segmentation)を活用できる。すなわち、11ビットで表現できる大きさを基準として、連鎖が使用されるか又はシングルパケット/分割が使用されるかが既に指定された場合に使用できるリンクレイヤヘッダー構造である。
図示された実施例(t70020)の場合、2バイトの長さフィールドが、連鎖した数だけ位置してもよい。2バイトで表現できる長さを有する全てのパケットに対して連鎖を支援するリンクレイヤヘッダー構造である。
これら実施例を、連鎖したインプットパケットの数に応じて表で示すことができる(t70030、t70040)。この表に対する説明は、前述した通りである。
前述した実施例(t70010)に対する表(t70030)に対して、例えば、カウントフィールドの値が000の場合、2個のインプットパケットが連鎖しており、2個の長さフィールドが使用されて22ビットが使用され、2ビットのパディングがバイトアラインのために使用されてもよい。したがって、ヘッダーの全長は4バイトであり、一つのインプットパケットのためのヘッダー部分は2.0バイトであり得る。また、カウントフィールドの値が001の場合、3個のインプットパケットが連鎖しており、3個の長さフィールドが使用されて33ビットが使用され、7ビットのパディングがバイトアラインのために使用されてもよい。したがって、ヘッダーの全長は6バイトであり、一つのインプットパケットのためのヘッダー部分は2.0バイトであり得る。
前述した実施例(t70020)に対する表(t70040)に対して、例えば、カウントフィールドの値が000の場合、2個のインプットパケットが連鎖しており、2個の長さフィールドが使用されて4バイトが使用されてもよい。したがって、ヘッダーの全長は5バイトであり、一つのインプットパケットのためのヘッダー部分は2.50バイトであり得る。また、カウントフィールドの値が001の場合、3個のインプットパケットが連鎖しており、3個の長さフィールドが使用されて6バイトが使用されてもよい。したがって、ヘッダーの全長は7バイトであり、一つのインプットパケットのためのヘッダー部分は2.33バイトであり得る。この場合、パディングビットは用いられなくてもよい。
図71は、本発明の更に他の実施例に係るリンクレイヤパケットのヘッダー構造のうち、ワード(word)単位の長さ表示を使用する場合におけるリンクレイヤパケットの構造を示した図である。
上位レイヤのパケットの長さがワード(word)単位で生成される場合、長さフィールドをバイト単位で表示せず、ワード単位で表示することができる。すなわち、インプットパケットが4バイト単位の長さを有する場合、リンクレイヤヘッダーをさらに最適化することができる。ワード単位で長さを表示することによって、前述した各長さフィールドが占める大きさをさらに小さくすることができるためである。
ワード単位で長さ表示をする場合におけるリンクレイヤヘッダー構造は、前述した本発明の更に他の実施例に係るリンクレイヤパケットのヘッダー構造と類似している。各フィールドの位置や構成、動作は、前述した通りである。ただし、それぞれの長さフィールドの大きさはさらに小さくなる。
シングルパケットエンカプセレーションにおいて(t71010)、ペイロードの長さを示すフィールドを2ビット減少させることができる。11ビットの長さフィールドは9ビットに減少し、2ビットは、将来の活用のために残すことができる(Reserved)。また、長いインプットパケットが使用される場合においても、合計16ビットの長さフィールドを14ビットに減少させることができる。すなわち、MSBとして活用されていた長さフィールドを減少させることができる。9ビットの長さフィールドを用いて、2044バイト(511ワード)までのインプットパケットの長さを示すことができ、合計14ビットの長さフィールドを用いて、64kバイト(65532バイト、16383ワード)までのインプットパケットの長さを示すことができる。2ビットは、同様に将来の活用のために残すことができる。この残されたビットは、前述したオプショナルヘッダーが存在するか否かを示す指示子(HEFフィールド)として使用されてもよい。
分割や連鎖の場合においても(t71020、t71030)、同様に、長さフィールドを最適化することができる。11ビットのセグメント長さフィールド乃至最初のセグメント長さフィールドは9ビットに減少させることができる。また、各セグメントの長さを示していた11ビットの長さフィールドと2バイトの長さフィールドも、それぞれ9ビット、14ビットに減少させることができる。この場合、バイトアラインのためにパディングビットが追加されてもよい。
このような最適化方案は、本発明で説明されるリンクレイヤパケットの構造に全て適用することができる。
図72は、本発明の更に他の実施例に係るリンクレイヤパケットのヘッダー構造のうち、ワード(word)単位の長さ表示を使用する場合をインプットパケットの数に応じて図表で示した図である。
第一の表(t72010)は、連鎖が使用される場合において、短いインプットパケットを連鎖する場合を示した。カウントフィールドの値が00の場合、2個のインプットパケットが連鎖しており、2個の長さフィールドが使用されて18ビットが使用され、6ビットのパディングがバイトアラインのために使用されてもよい。したがって、ヘッダーの全長は4バイトであり、一つのインプットパケットのためのヘッダー部分は2.0バイトであり得る。
カウントフィールドの値が01、10、11の場合、それぞれ3、4、5個のインプットパケットが連鎖しており、それぞれ3、4、5個の長さフィールドが使用されてそれぞれ27、36、45ビットが使用され、それぞれ5、4、3ビットのパディングがバイトアラインのために使用されてもよい。したがって、ヘッダーの全長はそれぞれ5、6、7バイトであり、一つのインプットパケットのためのヘッダー部分はそれぞれ1.67、1.50、1.40バイトであり得る。
第二の表(t72020)は、連鎖が使用される場合において、長いインプットパケットを連鎖する場合を示した。カウントフィールドの値が00の場合、2個のインプットパケットが連鎖しており、2個の長さフィールドが使用されて28ビットが使用され、4ビットのパディングがバイトアラインのために使用されてもよい。したがって、ヘッダーの全長は5バイトであり、一つのインプットパケットのためのヘッダー部分は2.50バイトであり得る。ワード単位の長さ表示を使用する場合、長いインプットパケットが連鎖する場合でもパディングビットが必要となり得る。
カウントフィールドの値が01、10、11の場合、それぞれ3、4、5個のインプットパケットが連鎖しており、それぞれ3、4、5個の長さフィールドが使用されてそれぞれ42、56、70ビットが使用され、それぞれ6、0、2ビットのパディングがバイトアラインのために使用されてもよい。したがって、ヘッダーの全長はそれぞれ7、8、10バイトであり、一つのインプットパケットのためのヘッダー部分はそれぞれ2.33、2.00、2.00バイトであり得る。
図73は、本発明の一実施例に係る放送信号を送信する方法を示した図である。
本発明の一実施例に係る放送信号を送信する方法は、放送データを含む複数個のインプットパケットを生成する段階、インプットパケットを用いてリンクレイヤパケットを生成する段階、放送信号を生成する段階及び/又は放送信号を送信する段階を含むことができる。
まず、サービスプロバイダー側の第1モジュールは、複数個のインプットパケットを生成することができる(t73010)。ここで、複数個のインプットパケットは、MPEG2−TSパケット、IPパケットまたは特定の形態のパケットであってもよく、将来に定義されて使用されるパケットであってもよい。第1モジュールは、放送データを生成し、これをインプットパケットの形態で生成する特定のモジュールであってもよい。
サービスプロバイダー側の第2モジュールは、複数個のインプットパケットを用いて少なくとも1つのリンクレイヤパケット(Link Layer Packet)を生成することができる(t73020)。これは、前述したリンクレイヤでインプットパケットをエンカプセレーションしてリンクレイヤパケットが生成される過程を含むことができる。ここで、リンクレイヤパケットは、前述した実施例に係るパケット構造を有することができる。
本実施例において、リンクレイヤパケットのヘッダーには、パケットタイプ情報及びペイロード構成情報が含まれてもよい。この情報は、リンクレイヤパケットのヘッダーのベースヘッダーに含まれてもよい。パケットタイプ情報は、リンクレイヤパケットのペイロードに含まれるインプットパケットのタイプを示し、ペイロード構成情報は、リンクレイヤパケットのペイロードの構成を示すことができる。パケットタイプ情報は、前述したパケットタイプフィールド(Packet_Type)に、ペイロード構成情報は前述したPCフィールドに該当してもよい。
サービスプロバイダー側の第3モジュールは、生成されたリンクレイヤパケットを用いて放送信号を生成することができる(t73030)。これは、フィジカルレイヤでリンクレイヤパケットを用いて各種インターリービング、フレーミングなどの動作が行われることに対応し得る。サービスプロバイダー側の第4モジュールは、生成された放送信号を送信することができる(t73040)。ここで、第4モジュールはアンテナなどに該当してもよい。
本発明の他の実施例に係る放送信号を送信する方法において、ベースヘッダーは、ペイロードの長さを示す第1長さ情報をさらに含むことができる。第1長さ情報は、前述した前述した長さ(LSB)フィールドに該当してもよい。
本発明の更に他の実施例に係る放送信号を送信する方法において、ペイロードは、インプットパケットのうち、一つの完全なインプットパケットを含むことができる。すなわち、前述したように、リンクレイヤパケットはシングルインプットパケットを含むことができる。シングルパケットを含む場合、ベースヘッダーは、リンクレイヤパケットのヘッダーが追加ヘッダーをさらに含むか否かを示すヘッダーモード情報をさらに含むことができる。ヘッダーモード情報は、前述したHMフィールドに該当してもよい。
本発明の更に他の実施例に係る放送信号を送信する方法において、追加ヘッダーは、第2長さ情報をさらに含むことができる。第2長さ情報は第1長さ情報と連結され、前述した一つの完全なインプットパケットが含まれたペイロードの全長を示すことができる。ここで、第2長さ情報は、前述した長さMSBフィールド(Length MSB)に該当してもよい。本実施例は、ロング(long)シングルパケットがエンカプセレーションされるケースに該当してもよい。
本発明の更に他の実施例に係る放送信号を送信する方法において、追加ヘッダーは、リンクレイヤパケット内にサブストリームID情報が含まれるか否かを示すサブストリームフラグ情報をさらに含むことができる。サブストリームID情報は前述したSID情報、サブストリームフラグ情報は前述したSIF情報に該当してもよい。SID情報は、前述したラベル情報に該当してもよい。SIF情報は、前述したLFフィールドに該当してもよい。
本発明の更に他の実施例に係る放送信号を送信する方法において、ペイロードは、複数個のインプットパケット、または一つのインプットパケットが分割されたセグメントを含むことができる。すなわち、シングルパケットが含まれない場合(PC=1)において、リンクレイヤペイロードには、分割(segmentation)された入力パケットまたは連鎖(concatenation)した入力パケットが含まれてもよい。この場合、ベースヘッダーは、ペイロードが複数個のインプットパケット又は分割されたセグメントを含むか否かを示す情報をさらに含むことができる。この情報は、前述したSCフィールドに該当してもよい。
本発明の更に他の実施例に係る放送信号を送信する方法において、リンクレイヤパケットを生成する段階は、インプットパケットのヘッダーを圧縮する段階、少なくとも1つの圧縮されたインプットパケットからコンテキスト情報を抽出する段階、及びコンテキスト情報と圧縮されたインプットパケットをエンカプセレーションしてリンクレイヤパケットを生成する段階をさらに含むことができる。コンテキスト情報を抽出する段階は、圧縮中の/圧縮されたインプットパケットからスタティック及び/又はダイナミックチェーン情報を抽出する過程であってもよい。この過程の後、コンテキスト情報はリンクレイヤパケットにエンカプセレーションされ、インプットパケットもリンクレイヤパケットにエンカプセレーションされてもよい。本動作は、前述した第2モジュールが行うことができる。または、第2モジュール内のサブモジュールによって行われてもよい。
本発明の更に他の実施例に係る放送信号を送信する方法において、コンテキスト情報を含むリンクレイヤパケットは、圧縮されたインプットパケットと分離されて伝送されてもよい。また、本発明の更に他の実施例に係る放送信号を送信する方法において、コンテキスト情報を含むリンクレイヤパケットは、シグナリングのためのフィジカルパスで伝送されてもよい。リンクレイヤレベルでコンテキスト情報を受信できるように、コンテキスト情報は、別途に伝送されてもよく、特定のチャンネルやPLPを介して伝送されてもよい。また、一般的なフィジカルパスで伝送し、その経路がシグナリングされてもよい。
本発明の更に他の実施例に係る放送信号を送信する方法において、インプットパケットは、IP(Internet Protocol)パケット、圧縮されたIPパケット、TS(Transport Stream)パケットのうち1つであってもよい。その他にも、インプットパケットは、パケットタイプフィールド及び/又はイーサーネットフィールドによって指示される様々なタイプ/プロトコルのデータであってもよい。
本発明の一実施例に係る放送信号を受信する方法を説明する。この方法は図示していない。
本発明の一実施例に係る放送信号を受信する方法は、放送信号を受信する段階、放送信号のリンクレイヤパケットを獲得する段階及び/又はリンクレイヤパケットを用いてアウトプットパケットを生成する段階を含むことができる。
まず、受信機側の第1モジュールは放送信号を受信することができる。この放送信号は、サービスプロバイダー側で前述した実施例によって送信した放送信号であってもよい。第1モジュールはアンテナ又はチューナーなどの受信装置であってもよい。
受信機側の第2モジュールは、受信した放送信号を用いてリンクレイヤパケットを獲得することができる。リンクレイヤパケットは、前述した通りである。この過程は、受信機側のフィジカルレイヤで放送信号を処理してアウトプットストリームをリンクレイヤに出力する過程に該当してもよい。
その後、受信機側の第3モジュールは、リンクレイヤパケットを処理してアウトプットパケットを生成することができる。ここで、アウトプットパケットは、サービスプロバイダー側でリンクレイヤに伝達されたインプットパケットに該当してもよい。この過程で、リンクレイヤパケットにエンカプセレーションされていたパケットを復旧することができる。この過程は、前述した「インプットパケットを用いてリンクレイヤパケットを生成する段階」の逆過程に該当してもよい。
本発明の実施例に係る放送信号を受信する方法は、前述した本発明の実施例に係る放送信号を送信する方法に対応し得る。放送信号を受信する方法は、放送信号を送信する方法で用いられるモジュールに対応するハードウェアモジュール(例えば、第1、2、3、4モジュールなど)によって行われてもよい。放送信号を受信する方法は、前述した放送信号を送信する方法の実施例に対応する実施例を有することができる。
前述した段階は、実施例によって省略されてもよく、類似/同一の動作を行う別の段階によって代替されてもよい。
図74は、本発明の一実施例に係る放送信号を送信する装置を示した図である。
本発明の一実施例に係る放送信号を送信する装置は、前述した第1モジュール、第2モジュール、第3モジュール及び/又は第4モジュールを含むことができる。それぞれのブロック、モジュールは、前述した通りである。
本発明の一実施例に係る放送信号を送信する装置及びその内部モジュール/ブロックは、前述した本発明の放送信号を送信する方法の実施例を行うことができる。
本発明の一実施例に係る放送信号を受信する装置を説明する。この装置は図示していない。
本発明の一実施例に係る放送コンテンツを受信する装置は、前述した受信側の第1モジュール、第2モジュール及び/又は第3モジュールを含むことができる。それぞれのブロック、モジュールは、前述した通りである。
本発明の一実施例に係る放送信号を受信する装置及びその内部モジュール/ブロックは、前述した本発明の放送信号を受信する方法の実施例を行うことができる。
前述した装置内部のブロック/モジュールなどは、メモリに格納された連続した過程を実行するプロセッサであってもよく、実施例によって装置の内/外部に位置するハードウェアエレメントであってもよい。
前述したモジュールは、実施例によって省略されてもよく、類似/同一の動作を行う別のモジュールによって代替されてもよい。
モジュール又はユニットは、メモリ(又は、格納ユニット)に記憶された連続した過程を実行するプロセッサであってもよい。前述した実施例に記述された各段階は、ハードウェア/プロセッサによって実行することができる。前述した実施例に記述された各モジュール/ブロック/ユニットは、ハードウェア/プロセッサとして動作することができる。また、本発明が提示する方法はコードとして具現されるようにするこができる。このコードは、プロセッサが読み出し可能な記憶媒体に書き込まれ、装置(apparatus)が提供するプロセッサによって読み出されるようにすることができる。
説明の便宜のため、各図を個別に説明したが、各図に開示した実施例を組み合わせて新しい実施例として具現するように設計することも可能である。そして、通常の技術者の必要に応じて、以前に説明された実施例を実行するためのプログラムが記録されているコンピュータで読み出し可能な記録媒体を設計することも、本発明の権利範囲に属する。
本発明に係る装置及び方法は、上述したように、説明された実施例の構成と方法に限定されて適用されるものではなく、上述した実施例は、様々な変形が可能なように、各実施例の全部又は一部が選択的に組み合わされて構成されてもよい。
一方、本発明が提案する方法を、ネットワークデバイスに具備された、プロセッサが読み出し可能な記録媒体に、プロセッサが読み出し可能なコードとして具現することができる。プロセッサが読み出し可能な記録媒体は、プロセッサによって読み出されるデータが格納されるいかなる種類の記録装置をも含む。プロセッサが読み出し可能な記録媒体の例には、ROM、RAM、CD−ROM、磁気テープ、フロッピーディスク、光データ格納装置などがあり、また、インターネットを介した伝送などのようなキャリアウェーブの形態で具現されるものも含む。また、プロセッサが読み出し可能な記録媒体は、ネットワークで接続されたコンピュータシステムに分散されて、分散方式でプロセッサが読み出し可能なコードが格納され、実行されてもよい。
また、以上では、本発明の好適な実施例について図示及び説明したが、本発明は、上述した特定の実施例に限定されず、特許請求の範囲で請求する本発明の要旨を逸脱することなく、当該発明の属する技術分野における通常の知識を有する者によって、様々な変形実施が可能であることはもちろんであり、このような変形実施は、本発明の技術的思想や展望から個別的に理解されてはならない。
そして、当該明細書では、物の発明及び方法の発明の両方が説明されており、必要に応じて、両発明の説明は補充的に適用されてもよい。
本発明の思想や範囲内で本発明の様々な変更及び変形が可能であることは当業者にとって明らかである。したがって、本発明は、添付の請求項及びその同等範囲内で提供される本発明の変更及び変形を含むように意図される。
本明細書において、装置の発明も方法の発明も言及されており、装置及び方法の発明に関する説明は互いに補完して適用可能である。
様々な実施例が、本発明を実施するための最良の形態において説明されている。