(57)【要約】  データグラムの１つ以上のデータグラムセグメントをそれぞれが含む複数のトランスポートコンテナを備えたアグリゲートパケット構造に含まれるデータグラムを送信するソース装置であって、前記ソース装置は、トランスポートコンテナの送信が失敗したことを示すフィードバックを受信するフィードバックプロセッサ、または、トランスポートコンテナの送信が失敗することを検出する検出ユニットと、送信が失敗したかまたは失敗するであろう失敗トランスポートコンテナを分解する分解ユニットと、データグラムを分割することなく、前記失敗トランスポートコンテナの全個数より少ない、少なくとも１つの新しいトランスポートコンテナを生成する生成ユニットと、送信が失敗したデータグラムのトランスポートコンテナのシーケンスと、新しいデータグラムのトランスポートコンテナのシーケンスとの間の変換を示すシーケンス情報を送信する送信ユニットと、を備え、ソース装置は送信が失敗したデータグラムを再フォーマットして再送信する。
2016507943.tif 000002
【特許請求の範囲】
【請求項１】
データグラムのデータグラムセグメントをそれぞれが含む複数のトランスポートコンテナを備えたアグリゲートパケット構造に含まれるデータグラムを送信するソース装置であって、
トランスポートコンテナの送信が失敗した場合にフィードバックを受信するフィードバックプロセッサと、
前記送信が失敗したトランスポートコンテナを分解する分解ユニットと、
前記送信が失敗したトランスポートコンテナに含まれる前記データグラムセグメントのフラグメントを含む、複数の新しいトランスポートコンテナを生成する生成ユニットと、
前記送信が失敗したトランスポートコンテナを備えた前記アグリゲートパケット構造における前記複数のトランスポートコンテナのシーケンスと、前記複数の新しいトランスポートコンテナを備えた前記アグリゲートパケット構造における前記複数のトランスポートコンテナのシーケンスとの間の変換を示すシーケンス情報を送信する送信ユニットと、を備え、
前記ソース装置は、データグラムを分割することなく、送信が失敗したデータグラムを再フォーマットおよび再送信することを特徴とするソース装置。
【請求項２】
前記ソース装置は、前記送信が失敗したトランスポートコンテナに含まれる前記データグラムセグメントによって表されるセグメント情報の表示を、複数の新しいトランスポートコンテナに含まれる複数の他のデータグラムセグメントに割り当てて、集合的に前記セグメント情報を表すことを特徴とする請求項１に記載のソース装置。
【請求項３】
セグメント情報の表示を割り当てる処理は、前記データグラムセグメントを多数の新しいセグメントに割り当てるために前記データグラムセグメントを分解すること、および、前記新しいセグメントを後の送信のための多数の新しいトランスポートコンテナに配置することによって、前記データグラムセグメントを再フォーマットする処理を含むことを特徴とする請求項２に記載のソース装置。
【請求項４】
前記ソース装置は、さらに、
前記再フォーマットされるデータグラムセグメントが再フォーマットされ、送信される準備が整ったことを送信先装置に通知し、
前記送信先装置が前記再フォーマットされたデータグラムセグメントを受け入れ可能であることを示す通知を前記送信先装置から受信し、
その後、前記再フォーマットされたデータグラムセグメントを前記送信先装置に送信することを特徴とする請求項１に記載のソース装置。
【請求項５】
データグラムの１つ以上のデータグラムセグメントをそれぞれが含む複数のトランスポートコンテナを備えたアグリゲートパケット構造に含まれるデータグラムを送信するソース装置であって、
トランスポートコンテナを送信できないことを検出する検出ユニットと、
前記送信できないトランスポートコンテナを分解する分解ユニットと、
前記送信できないトランスポートコンテナに含まれる前記データグラムセグメントの一部を含む、複数の新しいトランスポートコンテナを生成する生成ユニットと、
前記送信できないトランスポートコンテナを備えた前記アグリゲートパケット構造における前記複数のトランスポートコンテナのシーケンスと、前記複数の新しいトランスポートコンテナを備えたアグリゲートパケット構造における前記複数のトランスポートコンテナのシーケンスとの間の変換を示すシーケンス情報を送信する送信ユニットと、を備え、
前記ソース装置は、データグラムを分割することなく、送信が失敗したデータグラムを再フォーマットおよび再送信することを特徴とするソース装置。
【請求項６】
セグメント情報の表示を割り当てる処理は、前記データグラムセグメントを多数の新しいデータグラムセグメントに分割するために前記データグラムセグメントを分解すること、および、前記新しいデータグラムセグメントを後の送信のための多数の新しいトランスポートコンテナに配置することによって、前記送信できないトランスポートコンテナを再フォーマットする処理を含むことを特徴とする請求項５に記載のソース装置。
【請求項７】
前記ソース装置は、さらに、
前記再フォーマットされるデータグラムが再フォーマットされ、送信される準備が整ったことを送信先装置に通知し、
前記送信先装置が前記再フォーマットされたデータグラムを受け入れ可能であることを示す通知を前記送信先装置から受信し、
その後、前記再フォーマットされたデータグラムを前記送信先装置に送信することを特徴とする請求項６に記載のソース装置。
【請求項８】
ソース装置から送信先装置にデータグラムを送信する方法であって、前記データグラムは複数のデータグラムセグメントを含み、アグリゲートパケット構造にまとめられた前記データグラムは、複数のトランスポートコンテナを備え、前記複数のデータグラムセグメントのうちの或るデータグラムセグメントはセグメント情報を表しており、
前記方法は、
トランスポートコンテナを送信できないことを検出するステップと、
前記送信できないトランスポートコンテナを分解すること、および、データグラムを分割することなく、前記送信できないトランスポートコンテナの全個数より少ない複数の新しいトランスポートコンテナを生成することによって、前記データグラムを再フォーマットするステップと、
前記複数の新しいトランスポートコンテナを送信するステップと、を含むことを特徴とする方法。
【請求項９】
トランスポートコンテナを送信できないことを検出する前記ステップは、トランスポートコンテナの送信が失敗した場合に送信先装置からフィードバックを受信するステップを含むことを特徴とする請求項８に記載の方法。
【請求項１０】
複数のデータグラムセグメントから成るデータグラムを送信先装置に送信するソース装置であって、前記複数のデータグラムセグメントののうちの或るデータグラムセグメントはセグメント情報を表しており、
前記ソース装置は、
送信されるデータグラムに含まれるデータグラムセグメントを送信できないことを検出し、
送信できないデータグラムセグメントを除外するか、変更せずにそのまま再送信するか、または、再フォーマットしてから再送信するかを決定し、
前記決定を前記送信先装置に通知することを特徴とするソース装置。
【請求項１１】
前記ソース装置は、送信されたデータグラムに含まれるデータグラムセグメントの送信が失敗したことを示すフィードバックを前記送信先装置から受信することを特徴とする請求項１０に記載のソース装置。
【請求項１２】
前記ソース装置は、少なくとも１つの新しいシーケンス番号を前記送信が失敗したデータグラムセグメントに割り当てることによって、前記送信が失敗したデータグラムセグメントを再フォーマットすることを特徴とする請求項１１に記載のソース装置。
【請求項１３】
前記ソース装置は、前記データグラムセグメントを含むトランスポートコンテナを順番に並べる送信機フローコントローラをさらに備えていることを特徴とする請求項１０に記載のソース装置。
【請求項１４】
シーケンス番号を有する、データグラムセグメントの少なくとも１つのピースをそれぞれが含む複数のトランスポートコンテナと、
さらに、ソース装置に保持されている場合に、前記ソース装置から送信先装置への送信が失敗した、少なくとも１つのトランスポートコンテナと、
前記送信が失敗したトランスポートコンテナに含まれる前記データグラムセグメントのピースを含み、新しいシーケンス番号を有する、前記複数のトランスポートコンテナのうちの少なくとも２つのトランスポートコンテナと、
前記送信が失敗したトランスポートコンテナに含まれる前記データグラムセグメントの何れのピースを含まず、前記送信が失敗したトランスポートコンテナに含まれる前記データグラムセグメントのピースを含む前記トランスポートコンテナの前記シーケンス番号より大きいシーケンス番号を有する、少なくとも１つの追加のトランスポートコンテナと、を備えていることを特徴とするアグリゲートパケット構造。
【請求項１５】
前記アグリゲートパケット構造が前記送信先装置に保持されている場合に、
前記送信が失敗したトランスポートコンテナに含まれる前記データグラムセグメントのピースを含む前記少なくとも２つのトランスポートコンテナの前記シーケンス番号が、前記送信が失敗したトランスポートコンテナの前記シーケンス番号にとって代わり、かつ、
前記少なくとも１つの追加のトランスポートコンテナの前記シーケンス番号が、前記送信が失敗したトランスポートコンテナに含まれる前記データグラムセグメントの何れのピースも含まない前記トランスポートコンテナの最大のシーケンス番号の後に続くように、
トランスポートコンテナの前記シーケンス番号が順序づけられることを特徴とする請求項１４に記載のアグリゲートパケット構造。
【発明の詳細な説明】
【発明の詳細な説明】
【０００１】
〔関連件との相互参照〕
本出願は、２０１２年１２月２０日付で出願された米国特許出願第６１／７３９，７７１号（発明の名称：データグラムセグメントを再構成および再送信するための方法および装置）の利益を主張する。前記先の出願における開示のすべては、本出願における開示の一部とみなされ、参照することにより本明細書に組み込まれる。
【０００２】
〔背景技術〕
現在の通信システムでは、データグラムは、典型的にはいわゆる開放型システム間相互接続モデル（ＯＳＩモデル）の一部のような周知の手順またはプロトコルに基づいて、ソースから送信先へ送信される。ＯＳＩモデルに従って、より上位レベルの通信データグラムセグメント（通常、「サービスデータユニット」または「ＳＤＵ」と呼ばれる）は、トランスポートコンテナ（通常、「プロトコルデータユニット」または「ＰＤＵ」と呼ばれる）にまとめられ、物理的な媒体を介して、より下の層によって伝送される。いくつかのシステム（ＩＥＥＥ規格によって規定されるシステムに限定されないが、特定のシステム）では、メディアアクセス制御（ＭＡＣ）副層ＳＤＵは「ＭＡＣサービスデータユニット（ＭＳＤＵ）」と呼ばれ、ＭＡＣ副層ＰＤＵは「ＭＡＣプロトコルデータユニット（ＭＰＤＵ）」と呼ばれる。８０２．１１ＷＬＡＮは、ＩＥＥＥ規格によって規定されるそのようなシステムの一例である。
【０００３】
いくつかのシステムでは、各コンテナに一意のシーケンス番号（ＳＮ）を割り当てる。シーケンス番号は、典型的には、コンテナが上位層から下位層へ伝送される時系列に設定される。そのようなシステムにおけるＰＤＵは、シーケンス番号を保持するために、シーケンス番号フィールドを有する。現在の通信システムでは、トランスポートコンテナのシーケンス位置およびそのシーケンス番号は、トランスポートコンテナの最初の送信後に変更することはできない。コンテナがソースによって送信されたが、送信先によって正しく受信できなかった場合、その結果は「送信失敗」、または、単に「コンテナ失敗」と呼ばれる。現在の技術によれば、コンテナが失敗した場合、ソースは、そのコンテナを同じシーケンス番号を用いて再送信する。そして、送信先は、正しい順序でコンテナを受信していないという事実にかかわらず、全てのコンテナのＳＮを使用して、ソースによって意図されたコンテナの正しい順序を再度生成する。いくつかのシステムでは、ＰＤＵは、シーケンス番号を保持するために、シーケンス番号フィールドを有する。
【０００４】
いくつかのシステムでは、コンテナの最大送信単位（ＭＴＵ；maximum transmission unit）が規定されている。ＭＴＵは、典型的には、バイト数で計測される、送信可能なコンテナの最大サイズである。他のシステムでは、最大送信レートでそのようなシステムの最大送信単位（ＭＴＵ）に変換される最大送信時間がある。送信機は、典型的には、できる限りデータグラムペイロードを２つ以上のより小さなピースにフラグメント化して、ＭＴＵ限界に適合するＰＤＵにＳＤＵをカプセル化することによって、ＭＴＵの限界を超えることを避けようとする。しかしながら、常にできるわけではない。ＭＴＵは時には選択されたＴＸフォーマットに依存し、このことはより上位の層に常に知られていないため、コンテナがＭＴＵより大きい場合、コンテナの送信は失敗する、または、コンテナは、単に、多数のコンテナの送信対象から除外される。どちらの場合でも、システムのパフォーマンスは低下する。ここで説明した問題は、全ての通信システムにおいて発生し、特に、稼働状態が急速に変化して、それによってシステムのパフォーマンスの急な低下およびＭＴＵ値の減少を引き起こすようなシステムにおいて発生する。それは、典型的には、例えば、無線システムである。ただし、無線システムに限るものではない。
【０００５】
この問題に対して、様々な解決方法が実行されているが、それらは完全に満足のいくようなものではない。或る解決方法は、データグラムペイロードが２つ以上のより小さなピースにフラグメント化され、または「パーティション化」され、そして、それらの各ピースは、ＭＴＵ限界を超えない新しいトランスポートコンテナにカプセル化されることを可能にする。そして、これらの多数のコンテナは、「フレームアグリゲーション」と呼ばれる処理において集約される。このアプローチは、長いデータグラムペイロードを送信することができるが、プロトコルを複雑にし、通信のオーバーヘッドが増大する。さらに、このアプローチは、（１）この解決方法が規格に記述されており、（２）解決方法を採用するソースおよび送信先の両方がその解決方法を実行可能であるシステムにおいてのみ、実現できる。従来のユニット（legacy unit）はこのアプローチを実行するように構成されていないため、第２の条件は取るに足りないものではない。
【０００６】
実施されている第２の解決方法は、送信が成功する見込みを高めるために、失敗したコンテナをより低いレートで再送信することである。この解決方法は、規格が、通常、コンテナをより低いデータレートで送信するのに十分ではない最大送信時間を規定するということに制限されている。さらに、環境条件によって、より低いレートでさえ不十分となる可能性がある。さらに、コンテナの送信ストリームは、より低いレートが、所定のパケットエラーレート（ＰＥＲ）レベルの限界ですべての必要な情報を送信するのに単に不十分であるという程度である可能性もある。
【０００７】
実施されている第３の解決方法は、送信状態が改善されるまで待ってから、標準送信レートで失敗したコンテナを再送信し、それによって、低いレートでの送信に関する問題を回避することである。この解決方法は、失敗したコンテナのための待ち時間を増加させ、失敗したコンテナの先行送信を必要とする後続のコンテナの待ち時間も増加させ、システム全体を、非常に変化しやすくかつ制御不能な環境条件に依存させてしまう。パケットの生存能力は、しばしば、生存時間（Time to Life:ＴＴＬ）に限られているため、増加した待ち時間は、送信前にパケットが終期を迎えることを引き起こし、ＰＥＲを増加させる。
【０００８】
実施されている第４の解決方法は、ＭＴＵについてのプロトコルルールを無視して、ＭＴＵ限界より長い送信を許可することである。これは、比較的少数のソースおよび受信機のシステムにおいて、一時的にうまく作用する。しかしながら、システムが追加のユニットを搭載している場合、容認された最大値より長い送信が、結果的にシステムに大混乱を引き起こす。
【０００９】
第５の解決方法は、長いメッセージを許可しないことによって、または、実行されるアグリゲーションの程度に限界を設定することによって、完全に問題を回避することである。この解決方法は、送信される本来のデータを減少させること、または、通信のオーバーヘッドが増大すること、またはその両方が生じる。
【００１０】
上述の解決方法の全ては、下記の不利益を１以上の欠点として有する。
１．重大でかつ潜在的に強烈なパケットエラーレートの増加。
２．通信プロトコルの複雑化。
３．重大な通信のオーバーヘッドの増大。これによってシステムの効率を低下させる。
４．従来のユニットのようないくつかのユニットはどうしても上記の提案された解決方法で機能しないという事実の無視。
５．プロトコルルールの無視、これは、従来のユニットの共同利用に関する問題を生じさせ、システムがシステム容量に近づく場合に混乱を引き起こす。
６．待ち時間の増加。
７．コンテナにおける失敗した集約されたパケットを全て除外。これは、システムを完全に変化しやすい環境に依存させ、送信に失敗した情報パケット間の種類またはサイズを区別できなくさせる。
【００１１】
システムの要求および性能、課題、並びに可能な解決方法を含む上述の説明は、必要な変更を伴って、パケットが最初に送信された後ではシーケンス番号「ＳＮ」を変更することができない、ＷＣＤＭＡ（登録商標）、ＬＴＥのような広域ネットワーク、および、ＷＬＡＮのようなローカルエリアネットワークを含む全てのネットワークにも適用される。特に８０２．１１  ＷＬＡＮに関する限りでは、
１．８０２．１１  ＷＬＡＮのようないくつかの技術では、ＰＤＵは、ストリームにおけるＰＤＵの連続した順序を示すためのシーケンス番号を保持するシーケンス番号フィールドを有する。
２．８０２．１１  ＷＬＡＮのようないくつかのＩＥＥＥ規格では、フレームアグリゲーションは、単一の下位層フレームに多数の上位層フレームをカプセル化することによって、スループットを向上させるために使用される。特に８０２．１１  ＷＬＡＮでは、物理層プロトコルデータユニット（ＰＰＤＵ）は、例えばＰＰＤＵヘッダを含む、大量のオーバーヘッドを含む。最大データレートでは、このオーバーヘッドは、データフレームペイロードより大きな帯域幅を消費する。
３．ＩＥＥＥ  ８０２．１１  ＷＬＡＮ規格は、ＭＡＣパケットアグリゲーションの２つのレベルを規定する。２つのレベルとは、（ａ）時々、「ＭＳＤＵアグリゲーション」または単に「Ａ−ＭＳＤＵ」と呼ばれる、ＭＡＣ層のトップにおけるＭＡＣサービスデータユニット（ＭＳＤＵ）のアグリゲーション、および、（ｂ）時々、「ＭＰＤＵアグリゲーション」または単に「Ａ−ＭＰＤＵ」と呼ばれる、ＭＡＣ層のボトムにおけるＭＡＣプロトコルデータユニット（ＭＰＤＵ）のアグリゲーションである。両タイプのアグリゲーションは、多数のデータフレーム群を１つの大きなフレームにまとめる。ＭＳＤＵをＡ−ＭＳＤＵにアグリゲーションして、これらのＡ−ＭＳＤＵを、アグリゲートＭＰＤＵ（Ａ−ＭＰＤＵ）に順番にアグリゲーションされたＭＰＤＵにカプセル化することによって、２つのアグリゲーション（ａ）および（ｂ）を併用することもできる。
４．上記で説明したように、各トランスポートコンテナは、それぞれ、最初の送信において、一意のシーケンス番号を割り当てられる。そして、この順序は、通常、ＯＳＩモデルの上位層においてコンテナがソースによって送信される時系列である。ＩＥＥＥ  ８０２．１１  ＷＬＡＮでは、この順序は、最初の送信の後に変更することができない。ＭＰＤＵが８０２．１１  ＷＬＡＮで正しく受信されない場合、送信機はそのＭＰＤＵを再送信し、受信機はＳＮを使用して、（たとえそのＭＰＤＵが再送信のせいで無線通信を介して異なる順序で受信されたとしても）そのＭＰＤＵが送信された順序でカプセル化されたＭＰＤＵを伝送する。
５．Ａ−ＭＳＤＵアグリゲーションを使用する場合、ＩＥＥＥ  ８０２．１１プロトコルは、フラグメンテーション機構をサポートしていない。その結果、ＭＴＵを超える長さを有するＭＰＤＵは除外される。この現象は、送信機と受信機との接続状態が悪化した無線接続においてしばしば起こる。
６．上述のＡ−ＭＰＤＵにカプセル化されたＡ−ＭＳＤＵのシナリオでは、典型的には、送信機は、正しい受信の見込みを向上させるために、より低いレートで、失敗したＭＰＤＵを再送信する。この場合、ＭＰＤＵ送信時間は増加し、場合によっては、限界を超過することが８０２．１１ＷＬＡＮ規格によって許可される。上記限界は、現在ではＰＰＤＵあたり約５．４ｍｓである。最大送信時間を超えると、ＭＰＤＵは必ず除外される。いくつかのシナリオでは、ＭＰＤＵの除外は、いくつかのシナリオにおけるパケットエラーレート（ＰＥＲ）を著しく増加させる。
７．一般的な通信システムのための第６の解決方法は、上述したように、８０２．１１  ＷＬＡＮシステムにおいて実施される。しかしながら、同じ問題が、一般的な通信システムの場合と同様に、８０２．１１  ＷＬＡＮシステムにおいて生じる。さらに、８０２．１１  ＷＬＡＮでは、失敗したＭＰＤＵのそれぞれの送信サイズを減少させて、送信の持続時間を減少させる目的で、送信に失敗した一部であるＭＳＤＵまたはＡ−ＭＳＤＵを異なる番号のＭＰＤＵに再送信前にカプセル化することができない。なぜなら、ＳＮが既に失敗した連続するＭＰＤＵに割り当てられたからである。そのため、先に送信されたＭＳＤＵまたはＡ−ＭＳＤＵが新しいＭＰＤＵの一部としてカプセル化され送信された場合、受信機は、再送信されたＭＰＤＵを正しく識別できない、または、ＯＳＩプロトコルの後続の層にカプセル化されたＭＳＤＵを連続して送信するように再送信されたＭＰＤＵを正しい順序に配置することができない。
【００１２】
〔概要〕
通信システムにおいて、状況が変化することにより、パケットエラーレートが許容できない高さまで、トランスポートコンテナの送信が失敗する割合が増加することが起こり得る。これらの問題は、全ての通信システムにおいて生じ、とりわけ、しかしこれには限定されないが、最大動的送信単位の環境下で動作するシステム、無線システム、とりわけ、しかしこれには限定されないが、ＩＥＥＥ規格に基づいて規定されるＷＬＡＮシステムにおいて生じる。様々な解決方法が実施されており、特に、送信レートを減少させる方法、または、失敗したコンテナを再送信する方法が実施されている。今まで実施されたこれらの解決方法のいずれも、完全に満足いくようなものではない。多数のコンテナの中のデータグラムセグメントを分割し、それによってシステムのパケットエラーレートを減少させるために、シーケンスを制御し、送信するソースと受信する送信先とを同期させる新しいシステムおよび方法をここに提案する。
【００１３】
或る態様では、データグラムのデータグラムセグメントをそれぞれ含む複数のトランスポートコンテナを備えたアグリゲートパケット構造に含まれるデータグラムを送信するソース装置は、トランスポートコンテナの送信が失敗した場合にフィードバックを受信するフィードバックプロセッサと、前記送信が失敗したトランスポートコンテナを分解する分解ユニットと、前記送信が失敗したトランスポートコンテナに含まれる前記データグラムセグメントのフラグメントを含む、複数の新しいトランスポートコンテナを生成する生成ユニットと、前記送信が失敗したトランスポートコンテナを備えた前記アグリゲートパケット構造における前記複数のトランスポートコンテナのシーケンスと、前記複数の新しいトランスポートコンテナを備えた前記アグリゲートパケット構造における前記複数のトランスポートコンテナのシーケンスとの間の変換を示すシーケンス情報を送信する送信ユニットと、を備え、これにより、前記ソース装置は、データグラムを分割することなく、前記送信が失敗したデータグラムを再フォーマットおよび再送信する。
【００１４】
或る実施形態では、前記ソース装置は、前記送信が失敗したトランスポートコンテナに含まれる前記データグラムセグメントによって表されるセグメント情報の表示を、複数の新しいトランスポートコンテナに含まれる他の複数のデータグラムセグメントに割り当てて、集合的に前記セグメント情報を表す。
【００１５】
或る実施形態では、セグメント情報の表示を割り当てる処理は、前記データグラムセグメントを多数の新しいセグメントに分割するために前記データグラムセグメントを分解し、後の送信のために前記新しいセグメントを多数の新しいトランスポートコンテナに配置することによって、前記データグラムセグメントを再フォーマットする処理を含む。
【００１６】
或る実施形態では、前記ソース装置は、さらに、前記再フォーマットされるデータグラムセグメントが再フォーマットされたこと、および、送信される準備が整ったことを送信先装置に通知し、前記送信先装置から、前記送信先装置が前記再フォーマットされたデータグラムセグメントを受信可能であることを示す通知を受信し、その後、前記送信先装置に前記再フォーマットされたデータグラムセグメントを送信する。
【００１７】
或る態様では、データグラムの１つ以上のデータグラムセグメントをそれぞれ含む複数のトランスポートコンテナを備えたアグリゲートパケット構造に含まれるデータグラムを送信するソース装置は、トランスポートコンテナを送信できない場合を検出する検出ユニットと、前記送信できないトランスポートコンテナを分解する分解ユニットと、前記送信できないトランスポートコンテナを備えた前記アグリゲートパケット構造における前記複数のトランスポートコンテナのシーケンスと、前記複数の新しいトランスポートコンテナを備えた前記アグリゲートパケット構造における前記複数のトランスポートコンテナのシーケンスとの間の変換を示すシーケンス情報を送信する送信ユニットと、を備え、これにより、前記ソース装置は、データグラムを分割することなく、前記送信が失敗したデータグラムを再フォーマットおよび再送信する。
【００１８】
或る実施形態では、セグメント情報の表示を割り当てる処理は、前記データグラムセグメントを多数の新しいセグメントに分割するために前記データグラムセグメントを分解し、後の送信のために前記新しいデータグラムセグメントを多数の新しいトランスポートコンテナに配置することによって、前記送信できないトランスポートコンテナを再フォーマットする処理を含む。
【００１９】
或る実施形態では、前記ソース装置は、さらに、前記再フォーマットされるデータグラムが再フォーマットされたこと、および、送信される準備が整ったことを送信先装置に通知し、前記送信先装置から、前記送信先装置が前記再フォーマットされたデータグラムを受信可能であることを示す通知を受信し、その後、前記送信先装置に前記再フォーマットされたデータグラムを送信する。
【００２０】
或る態様では、ソース装置から送信先装置にデータグラムを送信する方法において、前記データグラムは複数のデータグラムセグメントを含み、前記データグラムは、アグリゲートトランスポートコンテナとしてまとめられ、前記複数のデータグラムセグメントのうちの或るデータグラムセグメントは、セグメント情報を表す。いくつかの実施形態では、前記データグラムは前記複数のデータグラムセグメントから成る。前記方法は、前記送信先装置から、トランスポートコンテナの送信が失敗した場合にフィードバックを受信するステップと、前記送信が失敗したトランスポートコンテナを分解し、データグラムを分割することなく、前記失敗したトランスポートコンテナの全個数より少ない複数の新しいトランスポートコンテナを生成することによって、前記データグラムを再フォーマットするステップと、その後、前記再フォーマットされたデータグラムを前記送信先装置に再送信するステップと、を含む。
【００２１】
或る態様では、ソース装置から送信先装置へデータグラムを送信する方法において、前記データグラムは複数のデータグラムセグメントを備え、前記データグラムはトランスポートコンテナを備えたアグリゲートパケット構造にまとめられ、前記複数のデータグラムセグメントのうちの或るデータグラムセグメントはセグメント情報を表す。前記方法は、或るトランスポートコンテナを送信できないことを検出するステップと、
前記送信できないトランスポートコンテナを分解し、データグラムを分割することなく、前記送信できないトランスポートコンテナの全個数より少ない複数の新しいトランスポートコンテナを生成することによって、前記データグラムを再フォーマットするステップと、前記複数の別のデータグラムセグメントを送信するステップと、を含む。
【００２２】
或る態様では、ソース装置は、複数のデータグラムセグメントから成るもしくは備えたデータグラムを送信先装置に送信し、前記複数のデータグラムセグメントののうちの或るデータグラムセグメントはセグメント情報を表す。前記ソース装置は、送信されるデータグラムに含まれるデータグラムセグメントの送信が失敗したことを示すフィードバックを前記送信先装置から受信し、送信できないデータグラムセグメントを除外するか、変更せずに再送信するか、または、再フォーマットしてから再送信するかを決定し、前記決定を前記送信先装置に通知する。
【００２３】
或る実施形態では、前記ソース装置は、少なくとも或る新しいシーケンス番号を前記失敗したデータグラムセグメントに割り当てることによって、前記送信が失敗したデータグラムセグメントを再フォーマットする。
【００２４】
或る実施形態では、前記ソース装置は、複数のデータグラムセグメントを備えたデータグラムを送信先装置に再送信し、前記複数のデータグラムセグメントのうちの或るデータグラムセグメントはセグメント情報を表し、前記ソース装置は、送信されるデータグラムに含まれるデータグラムセグメントを送信できないことを検出し、送信できないデータグラムセグメントを除外するか、再送信するかを決定し、前記決定を前記送信先装置に通知する。
【００２５】
或る実施形態では、前記ソース装置は、少なくとも或る新しいシーケンス番号を前記失敗したデータグラムセグメントに割り当てることによって、前記送信できないデータグラムセグメントを再フォーマットする。
【００２６】
或る実施形態では、前記ソース装置は、データグラムセグメント送信を除外するか、データグラムセグメントを変更せずに再送信するか、または、再フォーマットしてから再送信するかを決定する送信機フローコントローラを備えている。
【００２７】
或る実施形態では、前記ソース装置は、前記データグラムセグメントを含むトランスポートコンテナを順番に並べる送信機フローコントローラをさらに備えている。
【００２８】
或る実施形態では、前記ソース装置は、前記トランスポートコンテナを前記送信先装置に送信する下位レベル送信機をさらに備えている。
【００２９】
或る態様では、送信先装置に保持されているアグリゲートパケット構造は、複数のトランスポートコンテナを備え、該複数のトランスポートコンテナは、シーケンス番号を有し、それぞれがデータグラムセグメントのピースを少なくとも１つ含む。前記複数のトランスポートコンテナのうちの少なくとも２つは、前記ソース装置に送信されたが送信が失敗したトランスポートコンテナに含まれるデータグラムセグメントのピースを含み、新しいシーケンス番号を有し、前記アグリゲートパケット構造は、追加のトランスポートコンテナを少なくとも１つ備え、該追加的なトランスポートコンテナは、送信が失敗した前記データグラムセグメントの何れのピースも含まず、前記失敗したデータグラムセグメントのピースを含まない前記トランスポートコンテナの前記シーケンス番号より大きいシーケンス番号を有する。ここで、前記送信先装置に保持されているトランスポートコンテナの前記シーケンス番号は以下のように順序づけられる。すなわち、少なくとも２つの追加のトランスポートコンテナの前記シーケンス番号が、前記送信が失敗したトランスポートコンテナの前記シーケンス番号に代わりになるように、かつ、前記少なくとも１つの追加のトランスポートコンテナの前記シーケンス番号が、前記失敗したデータグラムセグメントの何れのピースも含まない前記トランスポートコンテナの最も大きいシーケンス番号の後に続くように順序づけられる。
【００３０】
ここに、送信が失敗したデータペイロードを再フォーマットし、再送信するための装置、方法およびデータ再構成を開示する。或る実施形態では、送信失敗および再フォーマットの指示を示すフィードバックを受信し、送信失敗したペイロードを用いてすべきことを決定し、多数のトランスポートコンテナで再送信するために、前記失敗したペイロードを再フォーマットして再度順番に並べることを選択する装置がある。前記方法の或る実施形態では、送信機は、データペイロードを送信し、送信失敗の通知を受信し、前記ペイロードを再フォーマットして再度順番に並べる決定をし、前記ペイロードを多数のトランスポートコンテナに分割し、再度順番に並べることにより多数のトランスポートコンテナの中に配置された前記ペイロードを再送信する。或る実施形態では、再送信のために、送信が失敗したペイロードのピースが２つ以上のトランスポートコンテナの間に配置されているアグリゲートデータ構造がある。
【００３１】
〔図面の簡単な説明〕
本実施形態は、単なる例示として、添付の図面を参照してここで説明される。本実施形態の基礎的な理解のために必要なものより詳細な、本実施形態の構造上の細部を示す意図はない。
【００３２】
図１は、データグラムセグメントを再フォーマットして再送信するシステムの一実施形態を示す。
【００３３】
図２は、再構成および再送信するためのデータ構造の一実施形態を示す。
【００３４】
図３は、データグラムセグメントを再構成および再送信する方法の一実施形態を示す。
【００３５】
図４は、或るデータグラムセグメントが２つ以上のトランスポートコンテナ内に分割されているデータグラムセグメントを再構成および再送信する方法の一実施形態を示す。
【００３６】
図５は、データグラムセグメントを送信対象から除外する方法の一実施形態を示す。
【００３７】
〔詳細な説明〕
本明細書では、下記の用語は、以下に示す意味を有する。
【００３８】
「データグラム」は通信システムにおける情報要素である。「データグラム」の中にある情報は、「データグラムペイロード」と称する。
【００３９】
「ソース」はデータグラムセグメントを送り出す場所である。或る非限定の例では、通信送信機である。ソースは、データグラムセグメントを送信することに加えて、トランスポートコンテナをフォーマットしてもよいし、送信されたデータグラムセグメントの受信に関するフィードバックを受信してもよいし、データグラムセグメントの順番を並べ替えて、再フォーマットしてもよいし、この明細書で示すような、再送信されたデータグラムセグメントを準備し、送信するための他の処理機能を実行してもよい。
【００４０】
「送信先」は、データグラムセグメントを受け入れる場所である。或る非限定の例では、通信送信機である。或る非限定の例では、通信受信機である。送信先は、送信されたデータグラムセグメントを受信することに加えて、データグラムセグメントが適切に受信されなかったかどうかを判定してもよいし、データグラムセグメントが適切に受信されなかったことを示すフィードバックをソースに送信してもよいし、データグラムセグメントを再度順番に並べて、再フォーマットすることを要求するリクエストに応答してもよいし、並べ替えられて、再フォーマットされたデータグラムセグメントを受信してもよいし、受信したデータグラムセグメントを再度順序づけてもよいし、この明細書で示すような他の処理機能を実行してもよい。
【００４１】
ここで使用する「複数のユニット」という単語は、１以上のソースおよび１以上の送信先の両方を含む。
【００４２】
「ＯＳＩ」は「開放型システム間相互接続（Open Systems Interconnection）」モデルの略である。ＯＳＩは、７つの層を含み、最下層から最上層まで、物理層、データリング層、ネットワーク層、トランスポート層、セッション層、プレゼンテーション層、アプリケーション層がある。データリンク層は、ＬＬＣ副層およびＭＡＣ副層の２つの副層を有していてもよい。
【００４３】
「サービスデータユニット」または「ＳＤＵ」は、上位レベル通信データグラムセグメントである。これらは、「ＰＤＵ」と呼ばれるトランスポートコンテナにまとめられる。
【００４４】
「プロトコルデータユニット」または「ＰＤＵ」は、ＯＳＩシステムにおける下位レベルから上位レベルへＳＤＵを伝送するのに使用されるコンテナである。コンテナは、多数のＳＤＵ、および、ＳＤＵに加えて他の情報を含む。
【００４５】
「ＭＡＣ副層ＳＤＵ」は「ＭＡＣ  ＳＤＵ」または単に「ＭＳＤＵ」と呼ばれてもよい。
【００４６】
「ＭＡＣ副層ＰＤＵ」は「ＭＡＣ  ＰＤＵ」または単に「ＭＰＤＵ」と呼ばれてもよい。
【００４７】
「データグラムセグメント」は、システムによって送信された情報を示し、「ペイロード」とも呼ばれるし、「ＳＤＵ」または「ＭＳＤＵ」とも呼ばれる。
【００４８】
先行技術文献では、ＰＤＵは、時々、「データグラム」と呼ばれる。しかしながら、これは混乱を招く。そのため、ＰＤＵと「データグラムセグメント」という用語とが混同されることを防ぐために、ここでは、「ＰＤＵ」という用語は、「データグラムセグメント」としては使用せず、ＯＳＩモデルの或る層における「コンテナ」または「トランスポートコンテナ」を意味し、特に、ＭＡＣ層におけるトランスポートコンテナのための「ＭＰＤＵ」を意味する。
【００４９】
「ＳＮ」は、「シーケンス番号」であり、ＯＳＩモデルにおいて上位層から下位層に伝送されるコンテナを識別する一意のシーケンス番号である。シーケンス番号は、必ずではないが通常、コンテナ送信の時系列によって設定される。
【００５０】
「送信失敗」は、「コンテナ失敗」と同義語であり、ソースによって送信されたコンテナが、送信先によって正しく受信されなかった場合に生じる。
【００５１】
コンテナの「最大送信単位」または「ＭＴＵ」は、システムの規定に従って、送信され得るコンテナの最大サイズである。ＭＴＵは、必ずではないがしばしば、バイト数で計測される。
【００５２】
「分割」は、ＭＴＵ限界に対して大きすぎるデータグラムペイロードが、２つ以上の小さなピースにフラグメント化され、そして、いずれもがＭＴＵのサイズを超えない２つ以上のトランスポートコンテナにカプセル化される処理である。
【００５３】
「フレームアグリゲーション」は、分割されたデータグラムペイロードが送信先において一緒にまとめられる処理である。
【００５４】
「ＰＥＲ」または「パケットエラーレート（もしくはデータグラムエラーレート）」は、送信失敗の程度である。これは、必ずではないが典型的には、送信失敗の個数をコンテナ送信の全個数で除算して測定される。
【００５５】
「ＰＰＤＵ」は、物理層ＰＤＵの略であり、物理層におけるＰＤＵである。ＰＰＤＵは、非常に大量の通信「オーバーヘッド」を有していてもよい。「オーバーヘッド」は、データグラムペイロードではなく、マネージメントおよびトランスポート情報であるコンテナの一部である。
【００５６】
「Ａ−ＭＳＤＵ」は「アグリゲートＭＳＤＵ」の略であり、「ＭＳＤＵアグリゲーション」と呼ばれてもよい。これは、８０２．１１  ＷＬＡＮとして知られるＩＥＥＥ技術規格で規定される、ＭＡＣ層のトップで生じるフレームアグリゲーションの一種である。
【００５７】
「Ａ−ＭＰＤＵ」は、「アグリゲートＭＰＤＵ」の略であり、「ＭＰＤＵアグリゲーション」と呼ばれてもよい。これは、８０２．１１  ＷＬＡＮとして知られるＩＥＥＥ技術規格で規定される、ＭＡＣ層のボトムで生じるフレームアグリゲーションの一種である。
【００５８】
ＷＬＡＮの様々な種類があるが、８０２．１１  ＷＬＡＮは、８０２．１１  ＷＬＡＮとしてＩＥＥＥによって規定される特定のＷＬＡＮのみを示し、「ソース」は「送信機」と呼ばれ、「送信先」は「受信機」と呼ばれる。
【００５９】
「失敗送信」は、データグラムセグメントを含むトランスポートコンテナがソースによって送信されたが、送信先によって受信されない場合、または、ソースによって送信されたが、送信先がデータグラムセグメントを適切に処理できないために送信先によって適切に受信されない場合を指す。
【００６０】
「アグリゲートパケット構造」は、それぞれが少なくとも１つのデータグラムセグメントを含む多数のトランスポートコンテナを有するデータ構造である。
【００６１】
図１は、データグラムセグメントを再構成して再送信するシステムの一実施形態を示す。図１では、左側に、双方向通信接続１２０によって受信機１３０と接続する送信機１１０がある。接続１２０は、無線、有線またはそれらの組み合わせを含む、様々な送受信機間における任意の種類の通信接続である。接続１２０は、無線の場合、全部または一部において、任意の周波数帯で動作してもよいし、ローカルエリアまたは広域であってもよいし、地上または衛生でもよい。接続１２０は、有線の場合、任意の段階に対して、単なる例として、銅線、同軸ケーブルまたは光ファイバーを含む任意の種類の有線接続であってよい。図１では、左側のユニットを「送信機」１１０と称し、本明細書で識別するが、送信機は双方向ユニット（送受信機）である。同様に、図１では、右側のユニットを「受信機」１３０と称し、本明細書で識別するが、受信機は双方向ユニット（送受信機）である。８０２．１１  ＷＬＡＮ以外のシステムでは、これらは、それぞれ「ソース」および「送信先」と呼ばれる。
【００６２】
図２〜５に関して下記で説明するように、受信機１３０で実行されるいくつかの機能がある。同様に、図２〜５に関して下記で説明するように、送信機１１０で実行されるいくつかの機能がある。図１は、送信機１１０における機能が、下位レベル送信機コントローラ１４０、フレームビルダー１５０、フィードバックプロセッサ１７０、フローハンドラー１８０およびシーケンス番号ハンドラー１９０の５つの物理構造の何れかで実行されることを示す。図１では、最後の３つの構造は、Ｔｘフローコントローラ１６０と呼ばれる上位構造に組み込まれている。
【００６３】
図１に示す特定の構造は、単なる例示であり、代替物を除外するものではない。例えば、Ｔｘフローコントローラ１６０は、フィードバックプロセッサ１７０、フローハンドラー１８０およびシーケンス番号ハンドラー１９０の全ての機能を実行する単一の物理構造から成っていてもよい。例えば、フレームビルダー１５０は、Ｔｘフローコントローラ１６０の一部であってもよい。他の実施形態では、フレームビルダー１５０は、下位レベル送信機コントローラ１４０の一部であってもよい。いくつかの実施形態では、フレームビルダー１５０は、単独でも、他の構造の一部でもなく、全く無くても構わない。そのような実施形態では、フレームビルダー１５０によって実行される、ここで説明する機能は実行されない。
【００６４】
全ての実施形態ではないがいくつかの実施形態では、受信機１３０の機能は、下記の全てまたは部分集合を含む。
・送信機１２０からトランスポートコンテナを受信する機能。
・トランスポートコンテナの受信を通知する機能、または、コンテナ送信が失敗したことを示す機能。
・トランスポートコンテナの再構成の要求に応答する機能。
・トランスポートコンテナが除外されたことを示す通知に対して応答する機能。
・システムによって決定された順序でデータグラムセグメントを順序づける機能、および、順序付けられたデータグラムセグメントをシステムにおける異なるレベル（不図示）に送信する機能。
【００６５】
全ての実施形態ではないがいくつかの実施形態では、送信機の機能は、下記にリストアップされた機能の全てまたは部分集合を含む。さらに、各機能は、当該機能を実行する物理構造を含む。しかしながら、別の実施形態では、機能は、送信機内の異なる物理構造によって実行されてもよい。
・トランスポートコンテナを順番に並べる機能、この機能はシーケンス番号ハンドラー１９０によって実行されてもよい。
・受信機にトランスポートコンテナを送信する機能、この機能は下位レベル送信機コントローラ１４０によって実行されてもよい。
・受信機から受信または失敗の通知を受信する機能、この機能は下位レベル送信機コントローラ１４０によって実行されてもよい。
・そのような通知を処理する機能、この機能はフィードバックプロセッサ１７０によって実行されてもよい。
・失敗したトランスポートコンテナを利用できるウィンドウで再送信するか、再構成するか、または、除外するかを決定する機能。この決定はフローハンドラー１８０で実行されてもよい。
・再構成されるべきトランスポートコンテナを再構成する機能、この機能はシーケンス番号ハンドラー１９０によって実行されてもよい。
・受信機１３０にトランスポートコンテナを送信する機能、この機能は下位レベル送信機コントローラ１４０によって実行されてもよい。
・再構成されたトランスポートコンテナが受信された、または、失敗したことを示す通知を受信する機能、この機能は下位レベル送信機コントローラ１４０によって実行されてもよい。
【００６６】
いくつかの実施形態では、トランスポートコンテナは、アグリゲートパケット構造にまとめられる。そのような実施形態では、アグリゲーションは、フレームビルダー１５０によって実行されてもよい。これは、初回の送信に関しても、あるいは、初回の送信で失敗したデータグラムの送信に関しても当てはまる。
【００６７】
いくつかの実施形態では、送信機１１０が、特定の受信機１３０が送信機１１０によって提案された再構成を受信することができるかどうかを理解できるよう、送信機１１０と受信機１３０との間で通信があってもよい。送信機１１０が前記特定の受信機１３０の能力を知らない場合に、上記通信が起こるようにしてもよい。例えば、受信機１３０の位置が固定されていない場合、または、受信機１３０がそのシステムに初めて導入された場合、または、受信機１３０が何らかの方法で変更またはアップグレードされた場合に起こるようにしてもよい。そのような実施形態では、送信機１１０は、変更を提案してもよい。該変更とは、トランスポートコンテナの再構成であってもよいし、あるいは、コンテナの別のアグリゲーションであってもよいし、あるいは、１つのデータグラムセグメントを多数のピースにフラグメント化することであってもよいし、あるいは、データグラムセグメント除外することであってもよい。この変更は受信機１３０に対して提案される。受信機１３０は、提案された変更を受け入れられるか否かを宣言することによって応答する。受信機１３０からの応答に基づいて、送信機１１０は、提案した変更を実行するか、別の変更を提案するか、あるいは、単に変更を完全に撤回する。
【００６８】
別の実施形態では、受信機１３０の能力を確立するための前記通信はなくてもよい。これは、受信機１３０がこのシステムに事前に供給されている、または、受信機１３０がシステムに入るときにその能力を自動的に報告する、または、受信機１３０が最初にシステムに入った時に送信機１１０が能力報告を自動的に要求する、または、その他の理由のいずれかによる。これらの別の実施形態は、送信機１１０によって一般的な解決方法が提案されるような状況において実施可能であってもよい。送信機１１０がその状況に唯一の解決方法を提案する別のシナリオでは、これらの別の実施形態は実施できない。また、受信機１３０が、提案された変更を受け入れられるかどうかを送信機１１０に伝達するためには、受信機１３０について通信ハンドシェイクは確立されなければならない。
【００６９】
それぞれ異なる能力を有する多様な受信機１３０があるシステムがあってもよい。それは、例えば、従来のユニットおよび更新されたユニットの両方が同時に動作するシステムの場合に発生する。通信ハンドシェイクは、いくつかの状況において、そのようなシステムで必要となり得る。
【００７０】
一実施形態は、送信が失敗したデータグラムセグメントを再フォーマットおよび再送信するソースである。ソースは、データセグメントの送信が失敗したことを示すフィードバックを受信する構造的手段、データセグメントの送信を撤回するか、変更せずに再送信するか、または、再フォーマットしてから再送信するかを決定する構造的手段、データグラムセグメントを含むトランスポートコンテナを再フォーマットして再度順番に並べる構造的手段、および、再フォーマットされ再度順番に並べられたトランスポートコンテナを送信する構造的手段を含む。或る実施形態では、ソースは電子送信機である。或る実施形態では、送信失敗のフィードバックは、フィードバックプロセッサによって受信され認識される。或る実施形態では、失敗したデータグラムセグメントを除外するか、変更しないで再送信するか、または、再フォーマットして再送信するかの選択は、フローハンドラーによって行われる。或る実施形態では、失敗したデータグラムセグメントのピースを再フォーマットして再度順番に並べることは、シーケンス番号ハンドラーによって行われる。或る実施形態では、再フォーマットされ再度順番に並べられた失敗したデータグラムセグメントのピースの送信は、下位レベル送信機コントローラによって行われる。
【００７１】
図２は、種々のデータ構造の一実施形態であり、一実施形態に係るデータ構造の再度の順序づけを示す。データ構造２１０では、送信機は、ここでは、１０１〜１０６で表されている種々のトランスポートコンテナを並べられている順序でそれぞれ送信する。いくつかの場合、全てのトランスポートコンテナは、受信機によって受信されるが、他の場合ではそうではない。データ構造２２０では、受信機は、トランスポートコンテナ１０１、１０２、１０４、１０５および１０６を受信したが、１０３の送信は失敗している。これは、コンテナ１０３が全く受信されなかった、または、受信機では修復できない損傷がある状態で受信されたことを意味する。そのような状態では、システムは、再構成することを決定してから、再構成されたトランスポートコンテナを送信してもよい。例えば、データ構造２３０では、送信機は、トランスポートコンテナ１０７、１０８および１０９を送信する。ここで、元のコンテナ１０３に含まれるデータグラムセグメントは、２つの新しいトランスポートコンテナ１０７および１０８にフラグメント化されており、新しいトランスポートコンテナ１０９がそれに続く。そして、送信機は、データ構造２４０に示すように、再構成され再度順番に並べられたプロトコルコンテナを送信する。データ構造２４０では、再構成は、１０７および１０８（元の番号１０３の代わり）によって表され、再度の順番並べは、送信機から受信機への送信の末尾のトランスポートコンテナ１０７〜１０９によって表される。換言すると、データ構造２４０は、送信機が再構成され再度順番に並べられたトランスポートコンテナを送信する方法、および、そのようなトランスポートコンテナが受信機によって受信される方法の両方を示す。しかしながら、トランスポートコンテナが受信される順序は、コンテナに含まれるデータグラムセグメントの意図された並びではないという問題がある。それゆえ、データ構造２５０では、受信機は、カプセル化されたデータグラム要素が適切な順序で現れるように、トランスポートコンテナを再度順序づける。これらの再度順序付けられたデータグラム要素は、受信機によって、システム上の異なる層に伝送されてもよい。データ構造２５０は、一実施形態の結果を示し、失敗したコンテナ１０３は２つのコンテナ１０７および１０８に分割され、再送信されて、そして、受信機によって正しい順序に再度順序づけられる。
【００７２】
一実施形態は、アグリゲートパケット構造である。該アグリゲートパケット構造では、多数のトランスポートコンテナがソースに保持されており、そのような各トランスポートコンテナは、ソースによって送信されたが送信に失敗したデータグラムセグメントのピースを少なくとも１つ含む。また、失敗したデータグラムセグメントのピースを有する、そのようなトランスポートコンテナの各々はシーケンス番号を有する。また、追加のトランスポートコンテナが少なくとも１つある。この追加のトランスポートコンテナは、失敗したデータグラムセグメントを部分的にも一切含まず、失敗したデータグラムセグメントのピースを含むトランスポートコンテナのシーケンス番号より大きいシーケンス番号を有する。
【００７３】
図３は、データグラムセグメントを再構成して再送信する方法の一実施形態である。ステップ３１０では、トランスポートコンテナの受信機への送信が失敗する。受信機はこの失敗を送信機に報告する。それから、送信機は、ステップ３２０において、失敗したコンテナについて何をするかを決定する。可能性は４つある。
【００７４】
第１の可能性は、再度まとめるまたは再送信することを一切せずに、失敗したコンテナを単に除外することである。システムは、この決定を、その時点で存在する送信、および、失敗したコンテナに含まれるデータグラムセグメントについての環境条件に応じて行ってもよい。データグラムセグメントを除外することは、図３ではなく、図５に示されている。
【００７５】
第２の可能性は、失敗したコンテナを変更することなく「そのまま」再送信することである。この可能性によれば、送信機は、単に、送信のためのウィンドウが利用可能になるまで待機し、そして、カプセル化されたデータグラム要素を有する失敗したコンテナを再送信する。この可能性は、従来技術の一部であり、図３に示していないが、決定時点は要素３２０に示されている。
【００７６】
第３の可能性は、失敗したコンテナを、単一のコンテナとして、再度番号付けて再送信することである。この場合の方法は、図３のステップ３３０〜３８０に含めて示されているように続けられる。ステップ３３０では、送信機は、失敗したコンテナに再度番号づけを行うことを決定する。送信機は、新しいシーケンス番号を再度番号づけられたコンテナに割り当てる（３４０）。そして、送信機は、受信機に新しいシーケンス番号を通知する（３５０）。そして、受信機は、再度順番に並べられたコンテナを送信機によって提案された方法で受信できるかどうかを判定しなければならない。答えがＹＥＳの場合、受信機が確認を送信し、送信機は答えがＹＥＳであることを示す確認を受信する（３６０）。送信機は、それから、コンテナを再度順番に並べて（３７０）、新しいコンテナを送信する（３８０）。答えがＮＯの場合、ステップ３２０において、失敗したコンテナについて何をするかを決定することになる。
【００７７】
第４の可能性は、第３の可能性の変形例であり、失敗したコンテナに含まれるデータグラムセグメントが２つ以上のコンテナ内に分割されることである。この変形例では、送信機は、多数のコンテナの一部として、データグラムセグメントに再度番号づけを行うことを決定する（３３０）。送信機は、新しいシーケンス番号を多数のコンテナに割り当てる（３４０）。送信機は、新しいシーケンス番号を受信機に通知し（３５０）、失敗したデータグラムセグメントを多数のコンテナの一部として再送信することを提案する。受信機は、この提案された解決方法を受け入れられるかどうかを決定しなければならない。受け入れ可能な場合、受信機は確認を送信する。送信機は、確認を受信し（３７０）、コンテナを再度順番に並べて（３７０）、２つ以上のトランスポートコンテナ内に分割されたデータグラムセグメントを有する新しいコンテナを送信する（３８０）。
【００７８】
図４は、コンテナおよびそれのカプセル化されたデータグラムセグメントを再構成して再送信する方法の別の実施形態である。図４は、図３に示す方法の一例である。図４は、特に、複数の実施形態のうちのいくつかに関する一環境である、８０２．１１  ＷＬＡＮ環境に関する。同じ機能がシステム内の異なる物理ユニットによって実行されてもよいが、図４では、特定の物理ユニットが特定の機能を実行する実施例について例示している。
【００７９】
図４には、要素１６０Ａがフィードバックプロセッサ１７０およびフローハンドラー１８０のみ（どちらも図４に示されていない）を含むように構成されているということ以外は、図１に示す要素１６０と同様のＴＸフローコントローラ１６０Ａがある。シーケンス番号ハンドラー１９０の要素は１６０の構造の一部であるため、図４にはシーケンス番号ハンドラー１９０が示されていない。シーケンス番号ハンドラー１９０Ａは、ＴＸフローコントローラ１６０Ａとは別に構成されている。これは、種々の方法の実施形態を実現するための構造の別の一実施形態である。ＴＸフローコントローラ１６０Ａによって実行される機能は、フィードバックプロセッサ１７０およびフローハンドラー１８０によって実行される機能であるが、図４では、これらは８０２．１１  ＷＬＡＮ環境において具体的に示されている。シーケンス番号ハンドラー１９０Ａによって実行される機能は、シーケンス番号ハンドラー１９０によって実行される機能であるが、これらは８０２．１１  ＷＬＡＮ環境において具体的に示されている。下位レベル送信機１１０Ａによって実行される機能は、下位レベル送信機１１０によって実行される機能であり、受信機１３０Ａによって実行される機能は、１３０によって実行される機能であるが、図４では、これらの機能全てが８０２．１１  ＷＬＡＮ環境において具体的に示されている。
【００８０】
図４は、先頭の４０５から始まり、末尾の４５０まで進行する時系列のステップがあるように組み立てられている。下位レベル送信機コントローラの提示を簡単にするために図４では示していないが、受信機１３０Ａへのまたは受信機１３０Ａからの通信の全ては、送信機の一部である下位レベル送信機コントローラとの間で行われることが理解されるであろう。これはステップ４０５、４３０、４３５および４５０に適用される。
【００８１】
図４では、送信機はＭＰＤＵを送信するが、この送信は失敗する（４０５）。送信機内では、この失敗は、下位レベル送信機１１０ＡからＴＸフローコントローラ１６０Ａへ通知される（４１０）。ＴＸフローコントローラ１６０Ａは、ＭＴＵ限界のために失敗したＭＰＤＵを送信できないということを検出し（４１５）、そして、ＭＰＤＵペイロードを２つ以上のＭＰＤＵに分割できることを証明する（４２０）。ＴＸフローコントローラ１６０Ａは、それから、シーケンス番号ハンドラー１９０Ａに要求して（４２５）、シーケンス番号ハンドラー１９０Ａから、前記ペイロードを含むＭＰＤＵ用の新しいシーケンス番号を受信する。ＴＸフローコントローラは、それから、受信機１３０Ａにシーケンス番号再順序づけ通知要求を送信する（４３０）。受信機１３０Ａが送信し、ＴＸフローコントローラ１６０Ａは、受信機１３０Ａがこれらの多数の再度順番に並べられたＭＰＤＵを受信できるかどうかを示す応答を受信する（４３５）。応答が肯定である場合、それからＴＸフローコントローラ１６０Ａは、ペイロードを分割し、それを２つ以上の新しいＭＰＤＵに再度まとめる（４４０）。ＴＸフローコントローラは、それから、新たに順番を並べなおすことをフレームビルダー１５０（図４に不図示）に通知する（４４５）。フレームビルダー１５０は、新しいＭＰＤＵを送信の一部である追加のＭＰＤＵと一緒にアグリゲーションされる。そして、再度アグリゲーションされた、新しいＭＰＤＵを含むＭＰＤＵは、下位レベル送信機１１０Ａによって受信機１３０Ａに再送信される（４５０）。ステップ４３５において、受信機１３０Ａが、ＴＸフローコントローラ１６０Ａに対して、受信機１６０Ａが多数の再度順番に並べられたＭＰＤＵを受信できないことを知らせた場合、この方法は、ステップ４１５に戻り、ＴＸフローコントローラ１６０Ａがイベントを判定する。図４には示していないが、図３のステップ３２０において全て示されているように、ＴＸフローコントローラ１６０Ａが４２０においてペイロードを多数のＭＰＤＵに分割できないと判定した場合、失敗したＭＰＤＵペイロードは、除外されるか、変更せずに再送信されるか、または、単一の新しいコンテナとして再送信される。
【００８２】
図４は特定のステップを実行するさまざまな物理ユニットを示しているが、これらのステップは、異なる物理ユニットによっても実行され得ることが理解されるであろう。さらに、示された正確な順序は、異なる実施形態において、様々な方法で変えることができ、そのような別の実施形態では、物理ユニットの変形は種々の機能を実行してもよい。
【００８３】
図４の可能な一実施形態では、現存のシーケンス生成機構を使用して（すなわち、ＭＳＤＵシーケンス番号または周知のフラグメンテーション機構を必要とせずに）ＭＳＤＵを多数のＭＰＤＵに分割することにより、多数の上位レベルプロトコルデータグラムセグメント（ＭＳＤＵ）を含むデータグラム（ＭＰＤＵ）を送信可能とする、送信機と受信機との間の新しいシーケンス制御および同期化機構がある。この特定の実施形態は、ＭＴＵ限界のためにＭＰＤＵを送信できないイベントを識別する方法である。この実施形態では、ＭＰＤＵ内に特定のシーケンス番号と一緒に予めカプセル化されるＭＳＤＵが再送信のための特定のシーケンス番号と共に多数のＭＰＤＵに今まさにカプセル化さたことを通知する機構がある。これにより、受信機の再順序づけ機能が、受信されたＭＳＤＵを再順序づけしてそれらをより上位層に伝送する場合に、シーケンス番号の変化を考慮することができる。
【００８４】
図５は、コンテナおよびそれのカプセル化されたデータグラムセグメントを送信対象から除外する方法の一実施形態である。図５は、図３と同じ方法で始まる。ステップでは、送信機から受信機へのコンテナの送信が失敗する（３１０）。受信機は送信機にこの失敗を報告する。送信機は、ステップ３２０において、コンテナを除外するか、または、変更せずに再送信する（やがて現れる利用可能なウィンドウで再送信することを除く）か、または、失敗したコンテナを「再度番号付ける」か、を決定する。この意味では、「再度番号付ける」は、新しいシーケンス番号を失敗したコンテナに与えること、または、カプセル化されたデータグラム要素を多数のコンテナにフラグメント化して新しいシーケンス番号をそのようなコンテナそれぞれに与えること、または、その両方を意味してもよい。図５では、送信機は、コンテナ５１０を除外することを決定する。送信機は受信機に除外したことを通知する（５２０）。受信機は、通知を受信した場合、送信機に確認を送信する（図５では不図示）。送信機は、受信機からこの確認を受信する場合もあるし、受信しない場合もある（５３０）。送信機は、確認を受信した場合、コンテナおよびそれのカプセル化されたデータグラムセグメントの送信を続ける（５４０）。送信機は、受信機から確認を受信しない場合、再試行の最大番号がこの除外されたコンテナ５５０の通知にまで到達したかどうかを判定する。再試行が残っている場合、その処理はステップ５２０から繰り返される。再試行が残っていない場合、たとえ受信機が除外されたコンテナを知らなくても、送信機は、コンテナの送信を再開する（５６０）。
【００８５】
いくつかの実施形態では、受信機が除外されたことを知らずに送信機がコンテナの送信を続けてしまう前に、送信機は、受信機に対して予め定められた番号の通知を試みてもよい。５２０に示すように毎回通知が試みられる場合、利用可能な再試行の番号は１つ減少する。許可される再試行の番号は、除外されたコンテナの全てと同じであってもよいし、または、コンテナの種類またはサイズによって、もしくは、カプセル化されたデータグラムセグメントの性質によって、もしくは、日時によって、もしくは、システムによって決定される任意の他の理由によって変えてもよい。許可された再試行の合計番号が達成されると、再試行は残っておらず、それゆえ、送信機は、５３０の後、受信機が除外されたコンテナを知っている（５４０）か、知らない（５６０）かによらずに、送信フローを再開する。
【００８６】
一実施形態は、送信に失敗したデータグラムセグメントを処理する方法である。別の一実施形態では、送信機は、データグラムセグメントを含むトランスポートコンテナを送信して、送信が失敗したことを示す通知を受信し、データグラムセグメントを除外するか、変更せずに再送信するか、または、再送信のために再フォーマットして再度順番に並べるかを決定する。また、送信機が再フォーマットして再度順番に並べることを決定した場合、送信機は、失敗したデータグラムセグメントを多数のピースに分割して、各ピースをそれ自身のトランスポートコンテナに再度まとめて、この時点では再度まとめられたピースを含む多数のトランスポートコンテナの一部としてではあるが、失敗したデータグラムセグメントのピースを再送信する。
【００８７】
いくつかの実施形態は、多数の古いおよび再フォーマットされた新しいデータグラムセグメントを含むトランスポートコンテナの送信を可能とする、送信機と受信機との間の新しいシーケンス制御および同期化機構である。いくつかの実施形態では、データグラムセグメントは、予め存在するシーケンス生成機構を用いて、２つ以上の新しいトランスポートコンテナ内に分割される。この意味では、「予め存在するシーケンス生成機構」は、ＭＰＤＵ送信失敗が検出されると、再度のシーケンス番号通知要求４３０またはシーケンス番号再順序付け通知応答４３５を必要とせずに、ＭＰＤＵペイロードが多数のＭＰＤＵに自動的に分割されることを意味する。
【００８８】
いくつかの実施形態は、ＭＴＵ（一時的または永続的）限界またはその他の理由により、トランスポートコンテナがうまく送信できないイベントを識別することを含む。そのような実施形態では、送信機は、特定のシーケンス番号と共に予めトランスポートコンテナにカプセル化されたデータグラムセグメントが、再送信のための新しいシーケンス番号を有する多数のトランスポートコンテナに、今、再度カプセル化されることを受信機に通知する。受信機は、これらの新しい多数のトランスポートコンテナを受信し、それらが元のＳＮで送信されるように、古いシーケンス番号と新しいシーケンス番号との間の変換を使用して、再度順序付ける。それによって、受信機は、システム内の他のプロトコル層に伝送するためにカプセル化されたデータグラムセグメントを準備する。
【００８９】
いくつかの実施形態は、ＭＴＵ（一時的または永続的）限界またはその他の理由により、トランスポートコンテナがうまく再送信できないイベントを識別することを含む。そのような実施形態では、送信機は、前に特定のシーケンス番号と共にトランスポートコンテナにカプセル化されたデータグラムセグメントが、送信機によって放棄されることを受信機に通知する。受信機は、この通知を受信して、放棄されたＭＳＤＵを待たずに、他の正しく受信したＭＳＤＵをシステム内の他のプロトコル層に伝送する。
【００９０】
いくつかの実施形態は、受信機がデータグラムセグメントの提案された再カプセル化および再順番並べをサポートしているかどうかを送信機に通知する、送信機と受信機との間の通信能力交渉を含む。そのような交渉は、パラメータが非常にきっちりと定められているという意味で「静的」であってもよいし、種々の情況に応じて質問に適合し応え得るという意味で「動的」であってもよい。受信機が再カプセル化および再順番並べをサポートするというその能力を有する場合、送信機は、再カプセル化および再順番並べを実行する。受信機がそのような能力を有していない場合、データグラムセグメントは再カプセル化されないが、むしろそれらは変更されずに再送信されるか、または、除外される。いくつかの実施形態では、再カプセル化および再順番並べがあっても、なくてもどちらの場合でも、送信機は、能力を有する受信機および能力を有しない受信機の両方に、適切な行動を提供することができる。特に従来の受信機はその能力を有していないことが予想される。また、それらは、採用するべき再度順番を並べる方法を交渉してもよい。
【００９１】
送信機による受信機へのトランスポートコンテナを除外したことの通知に関する実行および新しい点は、データが送信機から受信機に送信され、受信機が送信の成功または失敗の通知を提供する全ての通信システムに適用することができる。前記通信システムとは、正式な規格（他を排除するわけではないが、例えば、ＩＥＥＥによって公表された規格など）およびデファクトスタンダード（任意の団体によって正式に公表されたか否かにかかわらず）の両方にしたがって動作するシステムを含む。
【００９２】
失敗した送信の再順番並べに関する実行および新しい点は、システムがＩＥＥＥによって規定された技術規格、他の団体によって規定された技術規格、または、任意の団体によって規定されていないデファクトスタンダードにしたがって動作するかしないかにかかわらず、パケットの順番並べを含む任意の通信システムに適用できる。ＩＥＥＥによって規定されていない技術規格の例は、パケットの順番並べを使用するＴＣＰ規格である。
【００９３】
いくつかの実施形態は、ＩＥＥＥによって公表された技術規格にしたがって動作する通信システムに適合する。そのような実施形態は、多数の上位レベルプロトコルデータグラムセグメント（ＭＳＤＵ）を含む新しいトランスポートコンテナ（ＭＰＤＵ）を送信可能にする、送信機と受信機との間の新しいシーケンス制御および同期化機構がある。これは、存在するシーケンス生成機構を使用して（シーケンス番号をＭＳＤＵセグメントに割り当てる必要が無く）、ＭＳＤＵまたはＡ−ＭＳＤＵを多数のＭＰＤＵに分割することによって達成される。そのような実施形態では、ＭＴＵ限界またはその他の理由により、ＭＰＤＵが送信できない場合にイベントが識別される。そして、特定のシーケンス番号と共に単一のＭＰＤＵに事前にカプセル化されたＭＳＤＵまたはＡ−ＭＳＤＵが、再送信のための新しい特定のシーケンス番号と共に多数のＭＰＤＵに今カプセル化されたことを、送信機が受信機に通知する機構がある。そして、受信機は、システム内の他のプロトコル層に再送信するためにＭＳＤＵを準備するために、シーケンス番号（元のシーケンス番号および失敗した送信のための新しいＳＮの両方を含む）に関する完全な情報に基づいて、ＭＳＤＵを再度順序付けることができる。
【００９４】
また、ＩＥＥＥによって公表された技術規格にしたがって動作する通信システムに適合する実施形態では、受信機がデータグラムセグメントの提案された再カプセル化および再順番並べをサポートしているかどうかを送信機に通知する、送信機と受信機との間の通信ハンドシェイクがある。受信機がその能力を有している場合、送信機は、再カプセル化および再順番並べを実行する。そうでない場合、データグラムセグメントは再カプセル化されず、むしろ、そのまま再送信されるか、または、除外される。いくつかの実施形態では、再カプセル化および再順番並べを伴っても、伴っていなくてもどちらの場合でも、送信機は、能力を有する受信機および能力を有しない受信機の両方に、適切な行動を提供することができる。従来の受信機は特にその能力を有していないことが予想される。
【００９５】
８０２．１１  ＷＬＡＮ規格は、ＩＥＥＥによって公表された技術規格である。それゆえ、上述で要約した、ＩＥＥＥ規格にしたがって動作するシステムに適合する実施形態は、８０２．１１  ＷＬＡＮシステムにも適合する。さらに、８０２．１１  ＷＬＡＮシステムのいくつかの実施形態では、受信機は、送信機に対して、ＭＰＤＵ送信の失敗を通知する。この後、送信機は、失敗したＭＰＤＵを再度順番に並べるために（または失敗した送信を多数のＭＰＤＵに分割して、多数のＭＰＤＵを再度順番に並べるために）、以前に使用されていない特定のＳＮの集合を使用する。送信機は新しいシーケンス番号と共に送信し、受信機は、これらのシーケンス番号を使用して、ＭＳＤＵを再度順序付けて、システム内の他のプロトコル層に再送信するためのＭＳＤＵを準備する。８０２．１１  ＷＬＡＮシステムの他の実施形態では、受信機はＭＰＤＵ送信の失敗を送信機に通知する。この後、送信機は失敗したＭＰＤＵを放棄し、受信機に放棄を通知する。そして、受信機は、この情報を使用して、続いて受信したＭＰＤＵにカプセル化されたＭＳＤＵを他のプロトコル層に伝送する。
【００９６】
本明細書では、非常に多くの特定の細部が示されている。しかしながら、本発明に係る実施形態／事例は、それらの特定の細部のいくつかがなくても実施されてもよい。他の事例では、本明細書の理解を不明瞭にしないために、周知のハードウェア、物質、構造および技術は詳細には示されていない。本明細書では、「或る実施形態」および「或る事例」の表現は、示された特徴が、本発明に係る少なくとも１つの実施形態／事例に含まれてよいことを意味する。さらに、本明細書における「一実施形態」、「いくつかの実施形態」、「一事例」または「いくつかの事例」の区別は、必ずしも、同じ実施形態／事例を示していない。示された実施形態／事例は、そのように主張していない限りおよび当業者が読んで明らかな場合を除いて、相互に排他的ではない。それゆえ、本発明は、ここで説明した実施形態／事例の特徴の任意の組み合わせおよび／または統合による変形例を含んでよい。また、ここでは、フロー図は、方法の非限定的な実施形態／事例の具体例を示す。ブロック図は、装置の非限定的な実施形態／事例の具体例を示す。フロー図におけるいくつかの動作は、ブロック図によって示されている実施形態／事例に関して説明されてもよい。しかしながら、フロー図の方法は、ブロック図で説明したもの以外にも、本発明の実施形態／事例によって実行されてもよい。ブロック図で説明した実施形態／事例は、フロー図で説明した動作と異なる動作を実行してもよい。さらに、フロー図は連続的な動作を描画しているが、或る実施形態／事例は、並行して、および／または、描画したものと違う順序で或る動作を実行してもよい。さらに、明細書および／または図面における繰り返された参照番号および／または文字は、簡易かつ明確にするための目的で使用されたものであり、説明した種々の実施形態／事例および／または構成間の関係をそれ自身が決定付けるものではない。さらに、実施形態／事例の方法および機構は、明確にするために、時々、一つの形態で説明されている。しかしながら、いくつかの実施形態／事例は、別の方法で表していない限り、方法の多数の繰り返しまたは機構の多数の具体化を含んでよい。例えば、コントローラまたはインターフェースが実施形態／事例において開示されている場合、実施形態／事例の範囲は、多数のコントローラまたはインターフェースの使用をカバーすることも意図している。
【００９７】
別々の実施形態／事例の文脈において、明瞭化の目的で説明された実施形態／事例の或る特徴は、単一の実施形態／事例の種々の組み合わせにおいて備えられていてもよい。逆に、別々の実施形態／事例の文脈において、簡素化の目的で説明された実施形態／事例の種々の特徴は、別々に、または、任意の適当な部分的組み合わせにおいて備えられていてもよい。実施形態／事例は、本明細書、図面または例示で示す、方法の動作ステップの順序または連続性の細部、または、装置の実施の細部への適用に限定されない。さらに、図に示されている個々のブロックは、現実に機能してよく、別々のハードウェア要素に対応する必要はない。ここで開示した方法は、特定の順序で実行される特定のステップに関して説明および示しているが、これらのステップは、同等の方法を形成するために、実施形態／事例の教示から離れない限り、組み合わせても、さらに分割されても、再度順序づけられてもよいことがわかるであろう。したがって、ここで特に示していない限り、ステップの順序および集合は、実施形態／事例を限定しない。特定の例に関して説明された実施形態／事例は例示をもって説明されており、限定していない。さらに、多くの代替、変更および変形が、当業者にとって明らかであることは明白である。したがって、実施形態／事例が、添付の特許請求の範囲およびそれと同等のものの目的および範囲内にある、全てのそのような代替、変更および変形を含むことを意図している。
【図面の簡単な説明】
【００９８】
【図１】データグラムセグメントを再フォーマットして再送信するシステムの一実施形態を示す図である。
【図２】再構成および再送信するためのデータ構造の一実施形態を示す図である。
【図３】データグラムセグメントを再構成および再送信する方法の一実施形態を示す図である。
【図４】或るデータグラムセグメントが２つ以上のトランスポートコンテナ内に分割されているデータグラムセグメントを再構成および再送信する方法の一実施形態を示す図である。
【図５】データグラムセグメントを送信対象から除外する方法の一実施形態を示す図である。
【図１】
2016507943.tif 000003
【図２】
2016507943.tif 000004
【図３】
2016507943.tif 000005
【図４】
2016507943.tif 000006
【図５】
2016507943.tif 000007
【国際調査報告】
2016507943.tif 000008
2016507943.tif 000009
2016507943.tif 000010