(57)【特許請求の範囲】
【請求項１】
通信システムの送信装置であって、
プロセッサに通信接続されるメモリを有する送信機を有し、
前記メモリは、当該送信装置のバッファにより受信されたデータパケットを処理するための１以上のパケットサイズベースのプライオリティファンクションを格納するよう構成され、
前記プロセッサは、受信した各データパケットのパケットサイズを決定し、前記パケットサイズと前記パケットサイズベースのプライオリティファンクションとに基づき受信した各データパケットにプライオリティを割り当てるよう構成され、
前記データパケットは、前記パケットサイズベースのプライオリティファンクションによって前記データパケットに特定のプライオリティが割り当てられることを保障するため、エンプティビットを前記データパケットに加えるパケット生成制御機能に従って、前記パケットサイズが初期サイズから調整された少なくとも１つのデータパケットを有する送信装置。
【請求項２】
前記バッファは、受信したデータパケットを格納し、前記割り当てられたプライオリティに従って格納された受信された各データパケットを転送するよう構成される、請求項１記載の送信装置。
【請求項３】
前記バッファは、前記データパケットをフロー単位で受信するよう構成され、
１以上のデータフローは、第１タイプのデータパケットと第２タイプのデータパケットとを含む、請求項１記載の送信装置。
【請求項４】
当該送信装置は、前記１以上のデータフローのデータパケットと、前記１以上のデータフローの受信したデータパケットを処理するため当該送信装置により利用されるプライオリティファンクションに関する情報とを受信装置に通信するよう構成される、請求項３記載の送信装置。
【請求項５】
前記情報は、パケット・サイズ・ツー・プライオリティ（ＰＳＴＰ）マッピングファンクションを指定するメッセージを有する、請求項４記載の送信装置。
【請求項６】
前記通信システムは、無線通信システムである、請求項１記載の送信装置。
【請求項７】
前記プロセッサは、
処理のため第１プライオリティを有するデータパケットを送信し、
前記第１プライオリティより低い第２プライオリティを有するデータパケットを破棄するよう構成される、請求項１記載の送信装置。
【請求項８】
前記通信システムは、受信したデータパケットに少なくとも部分的に基づき情報を表示するため、受信装置に接続されるディスプレイを有する、請求項１記載の送信装置。
【請求項９】
第１タイプのデータパケットと第２タイプのデータパケットとを有する複数のデータパケットを第１装置のバッファにおいて受信するステップと、
パケットサイズベースのプライオリティファンクションに従って前記複数のデータパケットのデータパケットにプライオリティを割り当てるステップであって、前記複数のデータパケットは、前記パケットサイズベースのプライオリティファンクションによって前記データパケットに特定のプライオリティが割り当てられることを保障するため、エンプティビットを前記データパケットに加えるパケット生成制御機能に従って、前記パケットサイズが初期サイズから調整された少なくとも１つのデータパケットを有する、割り当てるステップと、
を有する方法。
【請求項１０】
前記データパケットは、フロー単位で前記バッファに受信され、
１以上のデータフローは、前記第１タイプのデータパケットと前記第２タイプのデータパケットとを含む、請求項９記載の方法。
【請求項１１】
前記第１タイプのデータパケットにより高いプライオリティを割り当てるステップと、
前記第２タイプのデータパケットを送信装置から破棄するステップと、
を有する、請求項９記載の方法。
【請求項１２】
前記プライオリティファンクションにより設定された最大値と最小値との間のサイズを有するデータパケットに最も高いプライオリティを割り当てるステップを有する、請求項９記載の方法。
【請求項１３】
前記プライオリティファンクションにより設定された所定の最大値と最小値との間の第１サイズを有するデータパケットに第１プライオリティを割り当てるステップと、
前記所定の最大値と最小値との間にない第２サイズを有するデータパケットに前記第１プライオリティと異なる第２プライオリティを割り当てるステップと、
を有する、請求項９記載の方法。
【請求項１４】
モジュロー演算後の剰余に従って複数のプライオリティレベルのうちのあるプライオリティをデータパケットに割り当てるステップを有し、
前記プライオリティは、前記プライオリティレベルの個数によるデータパケットサイズの除算後の剰余に対応する、請求項９記載の方法。
【請求項１５】
前記第１タイプのデータパケットのペイロード部分にバランス部分を加えるステップを有し、
前記バランス部分のサイズは、前記第１タイプのデータパケットに割り当てられたプライオリティに対応するトータルデータパケットサイズを提供するよう構成される、請求項９記載の方法。
【請求項１６】
受信した複数のデータパケットの各々のパケットサイズを決定するステップと、、
前記受信した複数のデータパケットのパケットサイズベースのプライオリティファンクションに従って、前記受信した複数のデータパケットのデータパケットにプライオリティを割り当てるステップであって、前記複数のデータパケットは、前記パケットサイズベースのプライオリティファンクションによって前記データパケットに特定のプライオリティが割り当てられることを保障するため、エンプティビットを前記データパケットに加えるパケット生成制御機能に従って、前記パケットサイズが初期サイズから調整された少なくとも１つのデータパケットを有する、割り当てるステップと、
をプロセッサに実行させるためのプログラム。
【請求項１７】
前記パケットサイズベースのプライオリティファンクションを格納するステップと、
第１パケットサイズのデータパケットを送信用に転送するステップと、
第１装置から第２パケットサイズのデータパケットを破棄するステップと、
を前記プロセッサに更に実行させる、請求項１６記載のプログラム。
【請求項１８】
前記パケットサイズベースのプライオリティファンクションにより設定される最大値と最小値との間のサイズを有するデータパケットに最も高いプライオリティを割り当てるステップを前記プロセッサに更に実行させる、請求項１６記載のプログラム。
【発明の詳細な説明】
【背景技術】
【０００１】
デジタル通信では、データはデータパケットにより２以上の装置の間で送信される。インターネットアプリケーションなどの多数のアプリケーションにより生成されるデータパケットは、タイプ及び重要性において様々である。例えば、１つのアプリケーションが、ソースとデスティネーションとの間の送信のため音声及びビデオデータパケットを生成し、ここでは、１以上のデータパケットが受信のためその他のものより必要不可欠である。特に、ネットワークが混雑し、受信装置のバッファがオーバフローである場合、受信装置が、ビデオパケットなどの優先度が低いとみなされるパケットを破棄することが望ましい。このようなＩＰデータパケットがＷｉＦｉやＷｉＭＡＸネットワークなどの無線ネットワークを介し送信されるとき、異なるタイプのデータパケットが、各パケットに関連するプライオリティ情報が受信装置に知られている場合、受信装置により異なって扱われる可能性がある。しかしながら、インターネットベースプロトコルを利用したデータ通信に関するアプリケーションでは、データは、典型的にはデータフローにより送信され、これは多数の異なった異質である可能性のあるパケットを含む可能性がある。データ“フロー”は、一般に２つのアプリケーション（送信側と受信側）の間の個別の一方向のデータストリームとして定義され、５項の識別子（トランスポートプロトコル、ソースアドレス、ソースポート番号、デスティネーションアドレス及びデスティネーションポート番号）により一意的に識別される。
【０００２】
インターネットアプリケーションの一例では、Ｓｋｙｐｅ（登録商標）通信の１つのフローは、音声、ビデオ及びファイルデータパケットの送信を含む。現在、このようなフローの送信側がフロー内で異なるタイプのデータパケットを優先順位付けする技術は存在しない。従って、音声データなどのプライオリティデータを送信するため、インターネット電話通話中に、ＷｉＦｉやＷｉＭＡＸなどの送信機は、会話を行うためすべてのフローの全体を格納することが要求される。したがって、送信機は、特にネットワーク輻輳状態では、早く到着した各データフローに含まれる大量の低いプライオリティのデータをまず格納及び処理し、以降に到着する高いプライオリティのパケットの送信を遅延させることが要求される可能性がある。上記及び他の考慮に関して、本改良が必要とされている。
【図面の簡単な説明】
【０００３】
【図１】図１は、通信システムの一実施例を示す。
【図２】図２は、送信装置と受信装置の間の通信を示す一実施例を示す。
【図３】図３は、一例となるマッピングファンクションの処理を示す。
【図４】図４は、他の一例となるマッピングファンクションの処理を示す。
【図５】図５は、さらなる実施例による送信装置と受信装置との間のデータパケットベースサイズベースの優先順位付けの態様を示す。
【図６】図６は、一例となるシステムの実施例の図である。
【発明を実施するための形態】
【０００４】
各種実施例は、一般に様々な有線又は無線通信媒体を介しデータパケットを通信するよう設計される通信システムに関する。いくつかの実施例は、例えば、ＩＥＴＦ（ｔｈｅ  Ｉｎｔｅｒｎｅｔ  Ｅｎｇｉｎｅｅｒｉｎｇ  Ｔａｓｋ  Ｆｏｒｃｅ）などにより規定される１以上のプロトコルなどのデータを送信するための異なる通信プロトコルを利用した無線通信を利用してもよい。
【０００５】
各種実施例は１以上の要素を有する。ある要素は特定の処理を実行するよう構成される何れかの構成を有する。実施例が特定の構成の限定数の要素により説明されるが、当該実施例は、所与の実現形態について所望されるような他の構成ではより多くの又は少ない要素を含むものであってもよい。“一実施例”又は“ある実施例”という表現は、当該実施例に関して説明される特定の特徴、構成又は特性が少なくとも１つの実施例に含まれることを意味していることに留意することが重要である。明細書の様々な個所における“一実施例では”という表現の出現は、必ずしもすべてが同一の実施例を参照しているとは限らない。
【０００６】
図１は、通信システム１００の一実施例のブロック図を示す。図１に示されるように、通信システム１００は、リンク１０８−ｍを介し複数のノード１０４−ｎと通信するネットワーク１０２を有し、ｍ及びｎは任意の正の整数を表す。各種実施例では、ノード１０４−ｎは、様々なタイプの無線装置として実現されてもよい。しかしながら、いくつかの実施例では、ノード１０４−ｎの何れかは有線リンクを介しネットワーク１０２にリンクされる有線装置であってもよい。無線（又は有線）装置の具体例は、限定することなく、ステーション、加入者ステーション、基地局、無線アクセスポイント（ＡＰ）、無線クライアント装置、無線局（ＳＴＡ），ラップトップコンピュータ、ウルトララップトップコンピュータ、ポータブルコンピュータ、パーソナルコンピュータ（ＰＣ）、ノートブックＰＣ、携帯コンピュータ、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ）、携帯電話、携帯電話／ＰＤＡの組み合わせ、スマートフォン、タブレットコンピュータ、ページャ、メッセージング装置、メディアプレーヤー、デジタル音楽プレーヤー、セットトップボックス（ＳＴＢ）、アプライアンス、ワークステーション、ユーザ端末、モバイルユニット、家電機器、テレビ、デジタルテレビ、高品位テレビ、テレビ受信機、高品位テレビ受信機などを含むものであってもよい。
【０００７】
いくつかの実施例では、通信システム１００の多数の装置が無線通信プロトコルとインターネット通信プロトコルとの組み合わせを用いて互いに通信する。いくつかの実施例では、ネットワーク１０２は、インターネットの一部であってもよい。いくつかの実施例では、ノード１０４−ｎの何れかは、それの処理が後述される送信装置又は受信装置として機能する。いくつかの実施例では、ネットワーク１０２内のルータであってもよい装置１１０は、１以上のノード１０４−ｎをリンクし、送信装置として機能する。通信システムのいくつかの実施例は、改訂、後継及び変形を含むＩＥＥE（Ｉｎｓｔｉｔｕｔｅ  ｏｆ  Ｅｌｅｃｔｒｉｃａｌ  ａｎｄ  Ｅｌｅｃｔｒｏｎｉｃｓ  Ｅｎｇｉｎｅｅｒｓ）８０２．１６（ＷｉＭＡＸ）、ＩＥＥＥ８０２−２０、ｅｖｏｌｖｅｄ  ＵＴＲA（Ｅ−ＵＴＲＡ）などの無線技術により実現されてもよい。ＩＥＥE８０２．１６ｍは、ＩＥＥＥ８０２．１６ｅの進化形であり、ＩＥＥＥ８０２．１６ベースシステムとの後方互換性を提供する。ＵＴＲAは、ＵＭＴＳ（Ｕｎｉｖｅｒｓａｌ  Ｍｏｂｉｌｅ  Ｔｅｌｅｃｏｍｍｕｎｉｃａｔｉｏｎ  Ｓｙｓｔｅｍ）の一部である。３ＧＰP（３ｒｄ  Ｇｅｎｅｒａｔｉｏｎ  Ｐａｒｔｎｅｒｓｈｉｐ  Ｐｒｏｊｅｃｔ）のＬＴＥ（Ｌｏｎｇ  Ｔｅｒｍ  Ｅｖｏｌｕｔｉｏｎ）は、Ｅ−ＵＴＲＡを利用してｅｖｏｌｖｅｄ  ＵＭＴS（Ｅ−ＵＭＴＳ）の一部である。ＬＴＥ−Ａｄｖａｎｃｅｄ（ＬＴＥ−Ａ）は、３ＧＰＰ  ＬＴＥの進化形である。他の無線技術がまた通信システム１００において利用可能であり、実施例はこれらの具体例に限定されるものでないことが理解されてもよい。
【０００８】
各種実施例では、データパケットを送受信する技術は、データフローによるデータの送信に関する。以降に用いられる“データフロー”は、１以上のデータパケットを含み、５項識別子（トランスポートプロトコル、ソースアドレス、ソースポート番号、デスティネーションアドレス及びデスティネーションポート番号）などのフロー識別子により一意的に識別される２つのアプリケーション（送信装置及び受信装置など）の間の一方向のデータストリームを表す。“送信装置”という用語は、データネットワーク（インターネットなど）及び／又は無線通信リンクを介しデータフローを送信するよう構成される装置を表す。“受信装置”という用語は、データネットワーク（インターネットなど）及び／又は無線通信リンクを介しデータフローを受信するよう構成される装置を表す。従って、各種実施例では、双方の装置が送信機／受信機（送受信機）又はラジオを任意的に含むものであってもよいが、送信装置は、少なくとも無線送信機又はラジオを含み、受信装置は、少なくとも無線受信機又はラジオを含む。これらの実施例は、これに関するものに限定されない。
【０００９】
図２は、ネットワーク１０２を介しリンクされる送信装置１１０と受信装置１１２との間の通信を示す一実施例を示す。送信装置１１０及び／又は受信装置１１２は、上述される無線通信を用いて通信するよう構成される。さらに、送信装置１１０は、ＴＣＰ／ＩＰ（Ｔｒａｎｓｐｏｒｔ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ／Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）及び／又は単に“ＵＤＰ”としても後述されるＵＤＰ／ＩＰ（Ｕｓｅｒ  Ｄａｔａｇｒａｍ  Ｐｒｏｔｏｃｏｌ／Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）などのＩＥＴＦプロトコルを用いて受信装置１１２にデータを送信するよう構成される。送信装置１１０及び受信装置１１２は、音声データパケット１１８及びビデオデータパケット１１６を含むものであってもよいデータストリーム１１４を介し互いに通信してもよい。例えば、送信装置１１０は、音声データパケット１１８が送信装置１１０と受信装置１１２との間で定期的に送信される電話（ＶＯＩP）コールにより受信装置１１２にリンクしてもよい。図２に示される実施例では、音声データパケット１１８に加えて、送信装置１１０は、ビデオデータパケット１１６を受信装置１１２に送信するよう構成される。装置１１０、１１２がまた他のタイプのデータパケットを通信してもよく、これらの実施例はこれに関して限定されないことが理解されてもよい。
【００１０】
いくつかの実施例では、送信装置１１２は、ここで説明される機能を一緒になって提供する１以上の集積回路チップを有するパケット処理装置１３２を有する。例えば、パケット処理装置１３２は、１以上のプロセッサとメモリ（図示せず）とを有してもよい。送信装置は、データパケットを無線送信する無線送受信機（図示せず）を有し、いくつかの実施例では、パケット処理装置１３２を有する送信機１３４を有する。受信装置１１２がディスプレイ（図示せず）を有する場合、ディスプレイはビデオデータパケット１１６に基づくビデオコンテンツのストリーミングを示す。受信装置１１２は、送信装置１１０から送信されるユーザストリーミング音声及びビデオを同時に提供してもよい。
【００１１】
特に、音声データパケット１１８及びビデオデータパケット１１６は、ネットワーク１０２を介しデータフロー系列により送信されてもよい。図２は、任意数のデータフローが装置１１０、１１２により利用されてもよいが、送信装置１１０から送信される２つのデータフロー１２０、１２２のパッケージ化を示す。図２に示されるように、送信装置１１０は、データフロー１２０、１２２を送信装置１１０のバッファ１２４に格納するためキューに配置してもよい。バッファ１２４からのデータは、受信装置１１２への送信のため、送信機１３４に転送されてもよい。例えば、いくつかの動作状態下では、データフロー１２０、１２２などのデータフローの音声及びビデオデータパケットが、各自のプライオリティＰ１及びＰ０に従って異なる方法によりバッファ１２４から送信機１３４に送信されてもよい。データパケット１１６、１１８がＵＤＰデータパケットである実施例では、特定の状態下では、データパケット１１６、１１８は、送信装置１１０と受信装置１１２との間のリアルタイム音声及びビデオ通信を可能にするため、ストリーミング形式により再生されるため、受信装置１１２に送信される。他の状態下では、音声データパケット１１８は、以下でさらに説明されるように、優先的に送信されてもよい。
【００１２】
各種実施例では、バッファ１２４から送信機１３４に転送されるデータパケットのプライオリティは、個々のデータフロー内のデータパケットが優先順位付けされるように構成されるパケットサイズベース優先順位付け装置１２８により制御される。例えば、装置のバッファ１２４は、データトラフィック輻輳がネットワークに生じているときなど、各種の状況下でオーバフローするかもしれない。オーバフロー状態下では、バッファ１２４に送信されるデータフロー内のパケットは、より高いプライオリティを有するとみなされるデータパケットが送信機１３４に転送され、より低いプライオリティを有するとみなされるデータパケットが破棄されるか、又はキューにおいて抑えられるように、データパケットタイプに従って分類されてもよい。このようにして、送信装置１１０内のリソースは、より高い優先度のパケットのため確保されてもよい。図２に示される実施例では、プライオリティマッピングファンクション１３０が、データフロー内のデータパケットが優先順位付けされるため、パケットサイズベース優先順位付け装置１２８に供給される。後述されるように、いくつかの実施例では、プライオリティマッピングファンクション１３０は、送信装置１１０に予め格納されてもよい。プライオリティマッピングファンクション１３０は、データパケットのサイズ又はサイズレンジなどにより、複数のファクタに基づきデータパケットのプライオリティを指定してもよい。
【００１３】
各種実施例では、音声データパケット１１８などの第１タイプのデータパケットのサイズは、プライオリティマッピングファンクション１３０により示される所与のプライオリティに対応する特定値又は特定値のレンジに設定される。一例では、プライオリティマッピングファンクション１３０は、サイズレンジセットのデータパケットの最も高いプライオリティを確立する。送信装置１１０は、プライオリティマッピングファンクション１３０により設定される最も高いプライオリティに対応する適切なサイズを有する最も高いプライオリティを受信するためデータパケットを供給する。従って、最も高いプライオリティのデータパケットがバッファ１２４に受信されると、これらのデータパケットは最も高いプライオリティを有すると認識され、処理のため転送される。最も高いプライオリティに適したサイズを有しない他のデータパケットは破棄又は遅延される。
【００１４】
上記のように、送信装置１１０のバッファ１２４は、データパケットのサイズに従って最も高いプライオリティを有するデータフロー内のデータパケットを認識及び優先順位付けする。一例では、ＶＯＩＰ通話では、音声データは、最も高いプライオリティを有するとみなされ、プライオリティマッピングファンクション１３０に従って最も高いプライオリティに対応するサイズのパケットに配置されてもよい。音声データパケット１１８より低いプライオリティを有するとみなされるビデオデータパケット１１６は、プライオリティマッピングファンクション１３０に従ってより低いプライオリティに対応するサイズのデータパケットに構成されてもよい。このようにして、ＶＯＩＰ通話中の音声伝送のインテグリティは、必要に応じてビデオデータパケット１１６を選択的に破棄又は保持するようバッファ１２４を制御可能なパケットサイズベース優先順位付け装置１２８により保持されてもよい。
【００１５】
いくつかの実施例では、バッファ１２４に格納されるデータが閾値を下回るとき、最も高いプライオリティ（Ｐ１）を有するとみなされるデータパケットは、送信機１３４に転送するためのキューの前方に配置され、より低いプライオリティ（Ｐ０）を有するデータパケットは、最も高いプライオリティのデータパケットがバッファ１２４から送信された後にのみ転送するためキューの後方に配置される。従って、一例では、ビデオデータパケット１１６は、処理／破棄／保持キュー１３６に配置され、すべての音声データパケットが送信機１３４に送信された後にのみ送信機１３４に転送される。格納されているデータが、例えば、輻輳状態などの下でバッファ１２４において閾値を超過しているとき、Ｐ０データは、データオーバフローを回避するためバッファ１２４から破棄されてもよい。他方、データ輻輳がない状況の下では、ビデオデータパケットと音声データパケットとの双方がストリーミング形式により再生されるように受信装置１１２に送信されるように、ビデオデータパケットは、タイムリーに送信機１３４に転送されてもよい。
【００１６】
上述されるように、各種実施例では、パケット・サイズ・ツー・プライオリティ（ＰＳＴＰ）マッピングファンクションが、送信機１３４又は送信装置１１０の他の便利な場所などにおいて、送信装置１１０に格納されてもよい。ＰＳＴＰは、何れか便利な構成に従って定義されてもよい。例えば、データフローにより通信される音声データパケットにおいて典型的に検出されるものに対応するサイズ範囲を有するデータパケットにより高いプライオリティを割り当てることが所望されてもよい。一例では、ＰＳＴＰマッピングファンクションｆは、以下のように定義されてもよい。データパケットｉのプライオリティｐｉは、ｆ（ｓｉ’）＝ｐｉとなるように、データパケットｉのサイズｓｉ’の関数として定義されてもよい。いくつかの実施例では、データパケットプライオリティは、最も高いプライオリティを示す２つのレベルＰ−１（又は１）と、最も低いプライオリティを示すＰ−０（又は０）を有してもよい。データパケットが２つのデータパケットプライオリティレベルにグループ化されるいくつかの実施例では、データパケットプライオリティは、以下に従って決定されてもよい。
【００１７】
【数１】
0005774782.tif 000002
ただし、Ｓｍａｘは所定の最大パケットサイズを表し、Ｓｍｉｎは所定の最小パケットサイズを表す。一例では、Ｓｍｉｎは０に設定されてもよく、この場合、サイズＳｍａｘを下回るすべてのデータパケットは、プライオリティ１に割り当てられ、Ｓｍａｘを上回るサイズのすべてのデータパケットは、プライオリティ０に割り当てられる。このＰＳＴＰマッピングファンクションは、異なるタイプのデータパケットが異なるサイズ範囲に入る傾向があるケースにおいて、データパケットを優先順位付けするのに有用な方法を提供してもよい。
【００１８】
図３は、Ｓｍａｘ＝８の実施例による当該ＰＳＴＰマッピングファンクションの処理を示す。図示される例では、データパケット３０２は、１〜１０のサイズ又はそれ以上のサイズで可変であってもよく、当該サイズ数は便利なサイズに対応してもよい。例えば、サイズ“１”は１バイトに対応し、“２”は２バイトに対応するなどである。データパケットは、各データパケットにプライオリティを割り当てるため、上記の式（１）により定義されるＰＳＴＰマッピングファンクションを適用するパケットサイズベース優先順位付け装置１２８などの装置により処理されてもよい。サイズ“４”を有するデータパケット３０２ａについて、対応するプライオリティ３０４ａはＰ−１である。同様に、サイズ“７”を有するデータパケット３０２ｂは、Ｐ−１であるプライオリティ３０４ｂを受信する。しかしながら、サイズ“９”を有するデータパケット３０２ｃは、ゼロのプライオリティを受信する。
【００１９】
データパケットが複数のデータパケットプライオリティレベルにグループ化される他の実施例では、データパケットには、モジュロー演算の剰余に従って複数のプライオリティレベルのあるプライオリティが割り当てられてもよい。各種実施例では、モジュロー演算は、ｍｏｄ（ｓｉ’，Ｐ）の形式をとり、Ｐはプライオリティレベルの個数を表し、モジュロー演算は、プライオリティレベルの個数によるデータパケットサイズの除算後の剰余を生成する。従って、例えば、パケットサイズ＝７であり、プライオリティレベルの個数が３である場合、ｍｏｄ（ｓｉ’，Ｐ）関数はｍｏｄ（７，３）＝１となる。従って、３プライオリティレベルシステムのサイズ７のデータパケットは、Ｐ−１プライオリティを受け取る。
【００２０】
複数のプライオリティレベルを割り当てる一実施例では、データパケットプライオリティは、以下に従って決定されてもよい。
【００２１】
【数２】
0005774782.tif 000003
ただし、Ｐはプライオリティレベルの個数を表し、ｘは初期的なオフセットを表し、すなわち、
【００２２】
【数３】
0005774782.tif 000004
である。
【００２３】
図４は、Ｐ＝４，ｘ＝０，Ｓｍｉｎ＝０，Ｓｍａｘ＝８である実施例による当該ＰＳＴＰマッピングファンクションの処理を示す。ＰＳＴＰマッピングファンクションに従って受信及び処理されるパケット３０６は、図示されるように、１〜１０又はそれ以上の範囲のサイズｓｉ’を有してもよい。サイズ“１”を有するパケット３０６ａは、最も高いプライオリティレベルＰ−１（“１”）に対応するプライオリティ３０８ａを受け、サイズ“３”を有するパケット３０６ｂは、プライオリティレベル“３”に対応するプライオリティ３０８ｂを受ける。サイズ“４”を有するパケット３０６ｃは、最も低いプライオリティレベル“０”に対応するプライオリティ３０８ｃを受ける。サイズ“５”を有するパケット３０６ｄは、最も高いプライオリティレベルＰ−１に対応するプライオリティ３０８ｄを受ける。サイズ“８”を有するパケット３０６ｅは、最も低いプライオリティレベル“０”に対応するプライオリティ３０８ｅを受ける。Ｓｍａｘを上回るサイズ“９”を有するパケット３０６ｆはまた、最も低いプライオリティレベル“０”に対応するプライオリティ３０８ｆを受ける。
【００２４】
複数のプライオリティレベルが異なるデータパケットに割り当てられることを可能にすることに加えて、当該ＰＳＴＰマッピングファンクションは、所望のデータパケットのサイズが実質的に可変であるケースにおいて、所望のデータタイプのデータパケットの高プライオリティグループへのグループ化を実現するのに有用である。例えば、より低いプライオリティに割り当てられるビデオデータパケットが、より小さな及びより大きな音声データパケットの初期的なサイズの間の中間のサイズ範囲を有するように、ＶＯＩＰ通話における音声データパケットは、有意な範囲においてサイズが可変的であってもよい。音声データパケットなどのデータフローにおいて最も重要であるとみなされるデータパケットに送信装置によって最も高いプライオリティが付与されることを確実にするため、重要なデータパケットのサイズは初期的なサイズから調整されてもよい。このようにして、音声データパケットの初期的なサイズが可変的であってもよいため、音声データパケットのサイズは、受信したデータパケットを優先順位付けするのに利用されるＰＳＴＰマッピングファンクションにより与えられる最も高いプライオリティサイズ範囲に対応するよう調整されてもよい。これは、後述されるように、送信装置により利用されるパケット生成制御機能を用いて実現されてもよい。
【００２５】
図５は、さらなる実施例による受信装置１１２へのデータの送信前に送信装置１１０により利用されるデータパケットサイズベース優先順位付けの態様を示す。送信装置１１０は、１以上の異なるＰＳＴＰマッピングファンクションをパケット生成制御（ＰＧＣ）装置５１２に適用するパケット・サイズ・ツー・プライオリティマッピングエンジン５０２を有する。いくつかのケースでは、エンジン５０２は、ＰＧＣ装置５１２の一部であってもよい。各種実施例では、ＰＧＣ装置５１２は、所望の優先順位付け方式に従ってデータパケットのサイズを操作してもよい。例えば、送信装置１１０と受信装置１１２との間で通信されるユーザデータグラムプロトコル（ＵＤＰ）データパケットのサイズは、受信装置によってデータパケットの優先順位付けを実現するよう制御される。
【００２６】
図５に示される一例では、通信セッション中、ＰＧＣ装置５１２は、第１パケット・サイズ・ツー・プライオリティマッピングファンクション（ＰＳＰＦ）に従って処理される受信装置１１２への送信用の複数のＵＤＰ音声データパケット５１０を受信してもよい。いくつかの実施例では、音声データパケット５１０のサイズは、ＰＳＰＦ５０４及びパケット生成制御機能（ＰＧＣＦ）５３０に従って調整されてもよい。ＰＧＣＦ５３０は、例えば、適用される初期的なデータパケットサイズ、データパケットのタイプ及び所与のＰＳＰＦに基づき、所与のデータパケットのサイズの調整量などを決定してもよい。図５において、ＰＳＰＦ５０４は、タブ形式により示され、調整されたデータパケットサイズを表すそれらのサイズｓｉの関数としてデータパケットのプライオリティｐｉを提供する。ＰＧＣ装置１１２が音声データパケット５１０を受信するとき、それは、音声データパケットがＰ−１として分類されるべきであると認識する。その後、ＰＧＣ装置５１２は、音声データパケット５１０の各データパケットの初期的なサイズを決定する。ＰＳＰＦ５０４に基づき、ＰＧＣ装置５１２は、各音声データパケットの調整されたサイズがＰ−１プライオリティに対応するサイズビン（範囲）内に入るように、必要に応じて各音声データパケットのサイズを調整するためＰＧＣＦ５３０を適用する。
【００２７】
一実施例では、ＰＣＧＦ５３０は、受信したデータパケットがデータパケットのタイプ及び適用されるＰＳＰＦに従って所望のサイズ範囲内にあることを保障するため、最小数のビットが追加されるべきであることを指定してもよい。しかしながら、追加的な実施例によると、他の機能が可能である。例えば、“１２”のサイズを有するデータパケット５１０ａは、ＰＳＰＦ５０４に従ってＰ−１プライオリティが付与される“１０−１９”のサイズビン内に属する。従って、ＰＧＣ装置５１２は、初期的な音声データパケット５１０ａのサイズへの調整を反映しないデータパケット５１４ａを出力してもよい。データパケット５１０ｂは、ＰＳＰＦ５０４に従って“０”の最も低いプライオリティが付与される“４５”の初期的なサイズを有する。従って、ＰＧＣ装置５１２は、音声データパケット５１０ａと同じＰ−１プライオリティが付与されるように、音声データパケット５１０ｂのサイズが調整されるべきであることを認識する。これを実現するため、ＰＧＣ装置５１２は、４５のデータ“ペイロード”サイズ及び５の“バランス”サイズを反映するした“５０”のサイズを有する調整された音声データパケット５１４ｂが出力されるように、音声データパケット５１０ｂのサイズを“５”だけ増加する。これは、サイズ“５”のエンプティビットを初期的な音声データパケット５１０ｂに加えることによって、実現されてもよい。“５０”の調整されたサイズは、プライオリティＰ−１に対応するサイズビンに属し、音声データパケット５１４ｂが受信装置により受信されると、それが高いプライオリティを有すると認識されるようにしてもよい。
【００２８】
データパケット５１０ｃは、データパケット５１４ｃがサイズの調整なく出力され、ＰＳＰＦ５０４により規定されるように、Ｐ−１プライオリティを有するとして依然として認識されるように、“５０”の初期的サイズを有する。データパケット４１０ｄは、ＰＳＰＦ５０４に従って“０”の最も低いプライオリティが付与される“８”の初期的サイズを有する。従って、ＰＧＣ装置５１２は、音声データパケット５１０ｄのサイズが、他の音声データパケットと同じＰ−１のプライオリティが付与されるように調整されるべきであると認識する。これを実行するため、ＰＧＣ装置５１２は、“１０”のサイズを有する調整された音声データパケットが出力されるように、“２”だけ音声データパケット５１０ｄのサイズを増加してもよい。“１０”の調整されたサイズは、Ｐ−１のプライオリティに対応する“１０−１９”サイズビンに属し、これにより、音声データパケット５１４ｄが受信装置により受信されるとき、それは高いプライオリティを有するとして認識されるようになる。最後に、データパケット５１０ｅは、“５２”の初期的サイズを有し、データパケット５１４ｅは、サイズの調整なしに出力され、ＰＳＰＦ５０４により規定されるように、Ｐ−１のプライオリティを有するとして依然として認識されるようにしてもよい。
【００２９】
上記のようにして、所望のプライオリティが付与される音声データパケットのサイズは、最小のオーバヘッドにより調整可能である。従って、初期的なサイズがＰ−１に対応する範囲に属さないデータパケットのみが追加されるビットを有し、いくつかの実施例では、トータルの追加されるビットは、所望のプライオリティ範囲内に対象となるデータパケットの調整されたサイズをおくのに必要な最小サイズに対応するものであってもよい。さらに、初期的なデータパケットサイズにおける典型的な変形を反映する分離されたサイズ範囲においてＰ−１ビンを確立することによって、ＰＳＰＦ５０４は、高いプライオリティが付与されるデータパケットが高プライオリティサイズ範囲内又は近傍のサイズを有することを保障し、これにより、所望されるすべてのデータパケットが適切なプライオリティの扱いを受けることを依然として保障しながら、ＰＧＣ装置５１２により追加されるエンプティビットの数を最小化する。
【００３０】
その後、調整された音声データパケット５１４は、追加的なデータパケットを有するデータフロー５１６のバッファ５４０に送信されてもよい。プライオリティ認識制御装置（ＰＲＣ）５２０は、データフロー５１６のデータパケットを異なるプライオリティレベルに処理するようバッファ５４０を制御する。各種実施例では、ＰＲＣ５２０は、パケットサイズベース優先順位付け装置として機能する。パケットサイズベースの優先順位付けは、調整された音声データパケット５１４を生成するのに用いられる同一のＰＳＰＦ５０４に基づくものであってもよい。いくつかの実施例では、ＰＳＰＦ５０４は、送信装置１１０と受信装置１１２との間の一方向又は双方向メッセージ５１８において選択され、当該メッセージは、適切なプライオリティマッピングファンクションをネゴシエートするのに利用されてもよい。いくつかの実施例では、ＰＳＰＦ５０４及び任意的な追加的機能（第２ＰＳＰＦ２  ５２２を参照）が、送信装置１１０のメモリ５２４にローカルに格納される。この場合、送信装置１１０及び受信装置１１２は、複数のＰＳＰＦの何れのＰＳＰＦがＰＲＣ装置５２０により利用されるべきかネゴシエートしてもよい。あるいは、利用される特定のＰＳＰＦが、送信装置１１０により単に選択されてもよい。
【００３１】
図示されるように、ＰＲＣ装置５２０は、その後に利用されるＰＳＰＦ及びデータパケットのサイズに基づき、受信したデータパケットをプライオリティレベルＰ１，Ｐ０，Ｐ２及びＰ３にソートするようバッファ５４０を制御してもよい。図４に示される例では、プライオリティレベルＰ０，Ｐ２及びＰ３に対応するサイズを有するデータパケットは、処理／破棄／保持キュー５２８に転送され、図２に関して説明されたように、バッファオーバフロー（図示せず）などの特定の状態下でそれらの削除が行われてもよい。他方、Ｐ−１のプライオリティに対応するサイズを有するデータパケットは、受信装置１１２との通信５３４における送信のため、送信機５２６に転送される。
【００３２】
３以上のプライオリティレベルの他の実施例では、３以上の異なるデータタイプに対応するデータパケットのそれぞれに、各自のプライオリティレベルが割り当てられる。従って、音声データはＰ−１を受け、ビデオデータはＰ２を受け、第３タイプのデータはＰ３を受けるなどである。３以上のデータタイプを有するデータフローのデータパケットの処理は、受信機により決定されるように、現在の状態に基づくものであってもよい。従って、通常のトラフィック状態下では、すべてのプライオリティレベルが処理のため転送され、“低速”トラフィック状態下では、Ｐ−１又はＰ−２レベルを有するデータタイプのデータパケットのみが送信のため転送され、他のデータパケットはキューの後方に配置され、“輻輳”状態下では、Ｐ−１に割り当てられたデータタイプを除くすべてのデータパケットが破棄される。
【００３３】
上述された実施例は、一般にデータ通信を開始する送信装置の観点からデータパケットベースの優先順位付けを開示しているが、他の実施例では、送信装置は、データフローを開始した装置と最終的な受信装置（図１の装置１１０を参照）との間の中間点にあるルータ又は他の装置であってもよい。さらに、ここに開示される通信方法及びアーキテクチャは、データフローが１つの送信装置から複数の受信装置に通信されるシステムにおいて利用されてもよい。
【００３４】
図６は、一例となるシステムの実施例の図である。特に、図６は、各種要素を含むプラットフォーム６００を示す図である。例えば、図６は、プラットフォーム（システム）６００がプロセッサ６０２、チップセット６０４、入出力（Ｉ／Ｏ）装置６０６、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）（ダイナミックＲＡＭ（ＤＲＡＭ）など）６０８、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）６１０、ディスプレイ電子機器６２０、ディスプレイバックライト６２２及び他の各種プラットフォームコンポーネント６１４（ファン、クロスフローブロワ、ヒートシンクＤＴＭシステム、クーリングシステム、ハウジング、ベントなど）を有することを示す。システム６００はまた、無線通信チップ６１６及びグラフィック装置６１８を有してもよい。しかしながら、当該実施例はこれらの要素に限定されるものでない。
【００３５】
図６に示されるように、Ｉ／Ｏ装置６０６、ＲＡＭ６０８及びＲＯＭ６１０は、チップセット６０４を介しプロセッサ６０２に接続される。チップセット６０４は、バス６１２によりプロセッサ６０２に接続される。従って、バス６１２は複数のラインを有してもよい。
【００３６】
プロセッサ６０２は、１以上のプロセッサコアを有するＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）であってもよく、何れかの個数のプロセッサコアを有する何れかの個数のプロセッサを有してもよい。プロセッサ６０２は、ＣＰＵ、マルチプロセッシングユニット、ＲＩＳＣ（Ｒｅｄｕｃｅｄ  Ｉｎｓｔｒｕｃｔｉｏｎ  Ｓｅｔ  Ｃｏｍｐｕｔｅｒ）、パイプラインを有するプロセッサ、ＣＩＳＣ（Ｃｏｍｐｌｅｘ  Ｉｎｓｔｒｕｃｔｉｏｎ  Ｓｅｔ  Ｃｏｍｐｕｔｅｒ）、ＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）などの何れかのタイプの処理ユニットを有してもよい。
【００３７】
各種実施例は、ハードウェア要素、ソフトウェア要素又はこれらの組み合わせを用いて実現されてもよい。ハードウェア要素の具体例は、プロセッサ、マイクロプロセッサ、回路、回路要素（トランジスタ、レジスタ、キャパシタ、インダクタなど）、集積回路、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）、ＰＬＤ（Ｐｒｏｇｒａｍｍａｂｌｅ  Ｌｏｇｉｃ  Ｄｅｖｉｃｅ）、ＤＳＰ、ＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）、ロジックゲート、レジスタ、半導体装置、チップ、マイクロチップ、チップセットなどを含むものであってもよい。ソフトウェアの具体例は、ソフトウェアコンポーネント、プログラム、アプリケーション、コンピュータプログラム、アプリケーションプログラム、システムプログラム、マシーンプログラム、オペレーティングシステムソフトウェア、ミドルウェア、ファームウェア、ソフトウェアモジュール、ルーチン、サブルーチン、ファンクション、メソッド、プロシージャ、ソフトウェアインタフェース、ＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍ  Ｉｎｔｅｒｆａｃｅ）、命令セット、計算コード、コンピュータコード、コードセグメント、コンピュータコードセグメント、ワード、値、シンボル又はこれらの何れかの組み合わせを含むものであってもよい。実施例がハードウェア要素及び／又はソフトウェア要素を用いて実現されるかの判断は、所望される計算レート、電力レベル、熱耐性、処理サイクルバジェット、入力データレート、出力データレート、メモリリソース、データバススピード及び他の設計若しくはパフォーマンス制約などの何れかの個数のファクタに従って変化しうる。
【００３８】
いくつかの実施例は、“結合”及び“接続”という表現と共にそれらの派生語を用いて説明されてもよい。これらの用語は、互いに同義的であるとは意図されない。例えば、いくつかの実施例は、２以上の要素が互いに直接的な物理的又は電気的接触状態にあることを示すため、“接続”及び“結合”という用語を用いて説明される。しかしながら、“接続”という用語はまた、２以上の要素が互いに直接的な接触にないが、依然として互いに連係又は相互作用することを意味する。
【００３９】
いくつかの実施例は、例えば、コンピュータにより実行される場合、コンピュータにこれらの実施例に従って方法及び／又は処理を実行させる命令又は命令セットを格納するコンピュータ可読媒体又は物などを用いて実現されてもよい。このようなコンピュータは、例えば、何れか適切な処理プラットフォーム、計算プラットフォーム、計算装置、処理装置、計算システム、処理システム、コンピュータ、プロセッサなどを含むものであってもよく、ハードウェア及び／又はソフトウェアの何れか適切な組み合わせを利用して実現されてもよい。コンピュータ可読媒体又は物は、例えば、メモリ、着脱可能又は着脱不可な媒体、消去可能又は消去不可な媒体、書き込み可能又は書き換え可能な媒体、デジタル又はアナログ媒体、ハードディスク、フロッピー（登録商標）ディスク、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＣＤ−Ｒ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ  Ｒｅｃｏｒｄａｂｌｅ）、ＣＤ−ＲＷ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ  Ｒｅｗｒｉｔａｂｌｅ）、光ディスク、磁気媒体、光磁気媒体、着脱可能なメモリカード又はディスク、各種タイプのＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）、テープ、カセットなどの何れか適切なタイプの記憶ユニット、記憶装置、記憶物、記憶媒体、格納装置、格納物、格納媒体及び／又は格納ユニットなどを含むものであってもよい。当該命令は、何れか適切なハイレベル、ローレベル、オブジェクト指向、ビジュアル、コンパイル及び／又はインタープリットされたプログラミング言語を用いて実現されるソースコード、コンパイルされたコード、インタープリットされたコード、実行可能コード、スタティックコード、ダイナミックコード、暗号化コードなどの何れか適切なタイプのコードを含むものであってもよい。
【００４０】
特段の断りがない場合、“処理”、“計算”、“算出”、“決定”などの用語は、計算システムのレジスタ及び／又はメモリなぢの物理量（電子など）として表現されるデータを、計算システムのメモリ、レジスタ又は他の当該情報のストレージ、伝送又は表示装置内の物理量として同様に表現される他のデータに操作及び／又は変換するコンピュータ、計算システム又は同様の電子計算装置のアクション及び／又は処理を表すことが理解されるであろう。これらの実施例は、これに限定されるものでない。
【００４１】
主題は構造的特徴及び／又は方法ステップに固有の言語により記述されたが、添付した請求項に規定される主題は上述された具体的特徴又はステップに必ずしも限定されるものでないことが理解されるべきである。上述された特定の特徴及びステップは、請求項を実現する一例となる形式として開示される。
【図１】
0005774782.tif 000005
【図２】
0005774782.tif 000006
【図３】
0005774782.tif 000007
【図４】
0005774782.tif 000008
【図５】
0005774782.tif 000009
【図６】
0005774782.tif 000010