(57)【特許請求の範囲】
【請求項１】
データユニットを受信装置に対して送信する送信装置に、
前記データユニットごとに、前記受信装置から当該データユニットを再送信するように要求された回数をカウントし、前記データユニットを複数の分割データユニットに分割して送信する場合において、当該複数の分割データユニットのうち未だ送信していない分割データユニットを再送信するように要求された場合にも、当該データユニットについてカウントするカウント処理と、
前記データユニットを受信する処理をスキップすべき旨の制御情報を、当該データユニットの前記回数が閾値に達した場合に前記受信装置に送信する、制御情報送信処理と、
を実行させることを特徴とする通信制御方法。
【請求項２】
前記データユニットについての前記制御情報送信処理を、当該データユニットの前記回数が閾値に達しかつ当該データユニットが記憶手段に残っていない場合に、実行させる、
請求項１記載の通信制御方法。
【請求項３】
前記データユニットを複数の分割データユニットに分割して送信する場合において、当該複数の分割データユニットのうち送信済でありかつ記憶手段に残っていない分割データユニットを再送信するように要求された場合にも、当該データユニットについて前記カウント処理を実行させる、
請求項１または請求項２記載の通信制御方法。
【請求項４】
前記データユニットは、ＲＬＣサブレイヤのＰＤＵである、
請求項１ないし請求項３のいずれかに記載の通信制御方法。
【請求項５】
データユニットを受信装置に対して送信する送信装置であって、
前記データユニットごとに、前記受信装置から当該データユニットを再送信するように要求された回数をカウントし、前記データユニットを複数の分割データユニットに分割して送信する場合において、当該複数の分割データユニットのうち未だ送信していない分割データユニットを再送信するように要求された場合にも、当該データユニットについてカウントするカウント手段と、
前記データユニットを受信する処理をスキップすべき旨の制御情報を、当該データユニットの前記回数が閾値に達した場合に前記受信装置に送信する、制御情報送信手段と、
を有することを特徴とする送信装置。
【請求項６】
データユニットを受信装置に対して送信する送信装置のために用いられるコンピュータプログラムであって、
前記送信装置に、
前記データユニットごとに、前記受信装置から当該データユニットを再送信するように要求された回数をカウントし、前記データユニットを複数の分割データユニットに分割して送信する場合において、当該複数の分割データユニットのうち未だ送信していない分割データユニットを再送信するように要求された場合にも、当該データユニットについてカウントする処理と、
前記データユニットを受信する処理をスキップすべき旨の制御情報を、当該データユニットの前記回数が閾値に達した場合に前記受信装置に送信する処理と、
を実行させることを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データユニットの再送信の制御の方法などに関する。
【背景技術】
【０００２】
図９はＲＬＣサブレイヤでの処理の例を説明するための図、図１０はデータユニットの再送信の要求に関する従来の問題点を説明するための図である。
【０００３】
無線通信システムにおいて、ユーザデータは、無線プロトコルに基づいて２つの装置の間でやり取りされる。
【０００４】
携帯電話網のプロトコルのレイヤ２は、下位から順に、ＭＡＣ（Medium Access Control）サブレイヤ、ＲＬＣ（Radio Link Control）サブレイヤ、およびＰＤＣＰ（Packet Data Convergence Protocol）サブレイヤなどのサブレイヤによって構成される。
【０００５】
ＰＤＣＰエンティティおよびＲＬＣエンティティは、相互に通信を行う２つの装置が使用する論理チャネル（ＬＣＨ：Logical Channel）の数だけ存在する。
【０００６】
図９に示すように、送信側の装置において、ある論理チャネルのＲＬＣエンティティは、ユーザデータを複数のＲＬＣ−ＳＤＵ（Service Data Unit）に分割し、ＲＬＣ−ＳＤＵそれぞれにヘッダを付すなどしてＲＬＣ−ＰＤＵ（Protocol Data Unit）を生成する。ヘッダには、シーケンス番号などのプロトコル制御情報が含まれる。
【０００７】
そして、これらのＲＬＣ−ＰＤＵは、ＭＡＣサブレイヤおよびレイヤ１によって処理され、受信側の装置の、同一の論理チャネルのＲＬＣエンティティに届けられる。
【０００８】
ＲＬＣ−ＰＤＵは、シーケンス番号順に送信側の装置のＲＬＣエンティティから送出される。したがって、受信側の装置のＲＬＣエンティティにおいて、ＲＬＣ−ＰＤＵはシーケンス番号順に届けられることが期待される。
【０００９】
確認型モードを適用する場合は、受信側の装置のＲＬＣエンティティは、次に届くことが期待されるＲＬＣ−ＰＤＵが届かない場合は、それが届くまで定期的に、それを再送信するように要求する。送信側の装置のＲＬＣエンティティは、要求に基づいてＲＬＣ−ＰＤＵを再送信する。このように、従来、両ＲＬＣエンティティの間で、シーケンス番号による送達確認が行われている。
【００１０】
また、非特許文献１に記載されるように、新たな通信規格の策定が進められている。この通信規格によると、ＲＬＣ−ＰＤＵを可変長にすることができる。したがって、ＲＬＣ−ＰＤＵを分割してやり取りすることも可能になる。
【非特許文献１】”３ＧＰＰ  ＴＳ  ３６．３００  Ｖ８．１．０（２００７−０６）”，３ＧＰＰ（The 3rd Generation Partnership Project）発行，ＵＲＬ「http://www.3gpp.org/ftp/Specs/archive/36_series/36.300/36300-810.zip」，２００７年８月７日インターネット検索
【発明の開示】
【発明が解決しようとする課題】
【００１１】
ところで、送信側の装置のＲＬＣエンティティは、あるＲＬＣ−ＰＤＵの再送信の要求を受けたにも関わらず、そのＲＬＣ−ＰＤＵを既にバッファから開放し削除してしまっている場合がある。
【００１２】
この場合は、受信側の装置のＲＬＣエンティティは、そのＲＬＣ−ＰＤＵを受信することができないので、図１０に示すように、再送信の要求を出し続けてしまう。このことは、送信側の装置のとっても受信側の装置にとっても無駄である。また、無駄な通信量が増えてしまう。
【００１３】
本発明は、このような問題点に鑑み、再送信の要求が無限に続くのを防止することを、目的とする。
【課題を解決するための手段】
【００１４】
本発明に係る通信制御方法は、データユニットを受信装置に対して送信する送信装置に、前記データユニットごとに、前記受信装置から当該データユニットを再送信するように要求された回数をカウントし、前記データユニットを複数の分割データユニットに分割して送信する場合において、当該複数の分割データユニットのうち未だ送信していない分割データユニットを再送信するように要求された場合にも、当該データユニットについてカウントするカウント処理と、前記データユニットを受信する処理をスキップすべき旨の制御情報を、当該データユニットの前記回数が閾値に達した場合に前記受信装置に送信する、制御情報送信処理と、を実行させることを特徴とする。
【００１５】
好ましくは、前記データユニットについての前記制御情報送信処理を、当該データユニットの前記回数が閾値に達しかつ当該データユニットが記憶手段に残っていない場合に、実行させる。
【００１７】
または、前記データユニットを複数の分割データユニットに分割して送信する場合において、当該複数の分割データユニットのうち送信済でありかつ記憶手段に残っていない分割データユニットを再送信するように要求された場合にも、当該データユニットについて前記カウント処理を実行させる。
【発明の効果】
【００１８】
本発明によると、再送信の要求が無限に続くのを防止することができる。
【発明を実施するための最良の形態】
【００１９】
図１は通信システム１００の全体的な構成の例を示す図、図２は携帯電話端末１およびレイヤ２の処理を行う基地局２１またはネットワーク制御装置２２の機能的構成の例を示す図である。
【００２０】
通信システム１００は、携帯電話網による無線通信のサービスをユーザに提供するシステムであって、図１に示すように、携帯電話端末１、無線ネットワーク２、およびコアネットワーク４などによって構成される。
【００２１】
無線ネットワーク２は、基地局（ＢＴＳ：Base Transceiver Station）２１および無線ネットワーク制御装置（ＲＮＣ：Radio Network Controller）２２などによって構成され、携帯電話端末１の接続を制御する処理および携帯電話端末１とコアネットワーク４との通信を中継する処理などを行う。
【００２２】
コアネットワーク４は、移動交換局（ＭＳＣ：Mobile Service Switching Center）、関門移動交換局（ＧＭＳＣ：Gateway MSC）、およびホームロケーションレジスタ（ＨＬＲ：Home Location Register）などによって構成される。
【００２３】
携帯電話端末１は、ユーザが使用する、携帯電話通信用の端末装置である。携帯電話端末１は、無線ネットワーク２およびコアネットワーク４などを介して、他の携帯電話端末１、ＰＨＳ端末、またはいわゆる固定電話端末などと通信を行うことができる。さらに、インターネット上のＷｅｂサーバまたは電子メールサーバなどと通信を行うことができる。
【００２４】
携帯電話端末１と無線ネットワーク２の間で行われる無線通信で使用されるプロトコルは、従来の無線プロトコルに本発明に係る方法を適用したものである。以下、携帯電話端末１と無線ネットワーク２との間で本プロトコルに基づいて行われる無線通信について、詳細に説明する。
【００２５】
無線ネットワーク２の各装置は、本プロトコルのＲＬＣサブレイヤにおけるデータの送信処理用の手段として、図２に示すような送信データ保持バッファ３０１、スキップ制御情報生成部３０２、ＰＤＵ送信処理部３０３、ＰＤＵ再送用バッファ３０４、ＰＤＵ送信カウンタ管理部３０５、ＰＤＵポインタ制御部３０６、分割ＰＤＵ送信情報記憶部３０７、ステータス情報解析部３０８、および再送信要求カウンタ管理部３０９などを有する。
【００２６】
これらの手段は、基地局２１が有することもあれば、ネットワーク制御装置２２が有することもある。いずれの装置が有するかは、一般に、世代によって異なり、例えば、３Ｇではネットワーク制御装置が有するが、スーパ３Ｇでは基地局が有する。以下、基地局２１が図２の手段を有する場合を例に説明する。
【００２７】
さらに、ＲＬＣサブレイヤにおけるデータの受信処理用の手段として、ＰＤＵ受信検出部３１１、受信データ制御部３１２、およびステータス情報生成部３１３などを有する。
【００２８】
携帯電話端末１も、図２の各手段を有する。
【００２９】
図２に示す各部は、ソフトウェアに基づいてＣＰＵでハードウェアを制御することによって実現してもよいし、専用の回路によって実現してもよい。
【００３０】
図３は送信処理の流れの例を説明するフローチャート、図４は前送信ポインタＰＢ、先頭ポインタＰＴ、末尾ポインタＰＥ、および送信カウンタＳＣの変遷の例を説明するための図である。
【００３１】
次に、ある１つの論理チャネルの、コアネットワーク４から転送されてきたデータ（以下、「ユーザデータ」と記載する。）を、基地局２１Ａが携帯電話端末１Ｂに中継する場合を例に、図２の各部の処理内容を、フローチャートなどを参照しながら説明する。
【００３２】
基地局２１Ａにおいて、図２の送信データ保持バッファ３０１は、上位から逐次送られてくる携帯電話端末１Ｂへの送信対象であるユーザデータを一時的に保持（記憶）する。
【００３３】
スキップ制御情報生成部３０２は、携帯電話端末１Ｂに送信するＲＬＣ−ＰＤＵに適宜記載するスキップ制御情報８ＳＫを生成する。このスキップ制御情報８ＳＫは、特定のシーケンス番号のＲＬＣ−ＰＤＵの取得をスキップする（飛ばす、中止する）ように指令する情報である。スキップ制御情報８ＳＫの生成のタイミングおよび携帯電話端末１Ｂでの取扱いについては、後に説明する。
【００３４】
ＰＤＵ送信処理部３０３は、送信データ保持バッファ３０１に保持されているユーザデータを前から順に、所定の範囲の長さのデータ（ＲＬＣ−ＳＤＵ）に分割し、シーケンス番号を含むヘッダをそのＲＬＣ−ＳＤＵに付すことによって、ＲＬＣ−ＰＤＵを生成する。そして、このＲＬＣ−ＰＤＵを携帯電話端末１Ｂの同一の論理チャネルのＲＬＣエンティティに宛てて送信する処理を行う。後に説明するように、スキップ制御情報生成部３０２によって生成されたスキップ制御情報８ＳＫをヘッダに記載することがある。
【００３５】
または、再送信の場合は、後に説明するＰＤＵ再送用バッファ３０４に記憶されているＲＬＣ−ＰＤＵを送信する。
【００３６】
または、ＰＤＵ送信処理部３０３は、生成したＲＬＣ−ＰＤＵを、複数のユニット（以下、「分割ＰＤＵ」と記載する。）に分割し、分割ＰＤＵごとに送信の処理を行うこともある。
【００３７】
ＲＬＣ−ＳＤＵの長さ、ＲＬＣ−ＰＤＵを分割するか否か、および分割ＰＤＵの長さは、通信回線の状況、その論理チャネルにおける再送信の発生の頻度、またはその論理チャネルのＱｏＳ（Quality of Service）と他の論理チャネルのＱｏＳとのバランスなどに応じて決定される。
【００３８】
分割ＰＤＵ送信情報記憶部３０７は、ＲＬＣ−ＰＤＵが分割されて送信される場合に、それぞれの分割ＰＤＵがそのＲＬＣ−ＰＤＵのどの部分であるのかを示す情報を記憶する。具体的には、分割ＰＤＵそれぞれについて、そのＲＬＣ−ＰＤＵにおける先頭の位置（何バイト目か）を示すポインタと末尾の位置を示すポインタとを記憶する。これらのポインタは、後に説明する種々の処理のために用いられる。
【００３９】
携帯電話端末１Ｂによって受信されたと判断できまたは推定できる分割ＰＤＵのこれらのポインタは、分割ＰＤＵ送信情報記憶部３０７から削除される。
【００４０】
ＰＤＵ再送用バッファ３０４は、ＰＤＵ送信処理部３０３によって送信の処理が行われたＲＬＣ−ＰＤＵを、後に再送信の要求があった場合に備えて、一時的に保持（記憶）する。
【００４１】
携帯電話端末１Ｂによって受信されたと判断できまたは推定できるＲＬＣ−ＰＤＵまたは分割ＰＤＵは、ＰＤＵ再送用バッファ３０４から削除される。
【００４２】
ＰＤＵ送信カウンタ管理部３０５は、ＰＤＵ送信処理部３０３によって送信の処理がなされたＲＬＣ−ＰＤＵごとの、送信回数をカウントするためのカウンタ（以下、「送信カウンタＳＣ」と記載する。）を管理する。
【００４３】
ＰＤＵポインタ制御部３０６は、３つのポインタを制御することによって、ＲＬＣ−ＰＤＵの送信カウンタＳＣに「１」を加算すべき否かの判別を行う。
【００４４】
ここで、ＰＤＵ送信カウンタ管理部３０５およびＰＤＵポインタ制御部３０６によるＲＬＣ−ＰＤＵの送信回数のカウント方法を、図３のフローチャートを参照しながら説明する。
【００４５】
ＰＤＵ送信処理部３０３によってＲＬＣ−ＰＤＵの送信の処理が行われると（図３の＃５０１）、そのＲＬＣ−ＰＤＵが今回初めて送信されかつそのＲＬＣ−ＰＤＵのいずれの分割ＰＤＵも今まで一度も送信されたことがない場合は（＃５０２でＹｅｓ）、ＰＤＵポインタ制御部３０６は、そのＲＬＣ−ＰＤＵのために送信カウンタＳＣを１つ生成するなどして用意し、ＰＤＵ送信カウンタ管理部３０５は、そのＲＬＣ−ＰＤＵのために前送信ポインタＰＢ、先頭ポインタＰＴ、および末尾ポインタＰＥを１つずつ生成するなどして用意する（＃５０３）。送信カウンタＳＣの初期値は「０」である。前送信ポインタＰＢ、先頭ポインタＰＴ、末尾ポインタＰＥの初期値はいずれも「Ｎｕｌｌ」である。
【００４６】
または、ＰＤＵ送信処理部３０３によってＲＬＣ−ＰＤＵの分割ＰＤＵの送信の処理が行われた場合は、今までに、そのＲＬＣ−ＰＤＵが非分割で送信されたこともなく、かつ、そのＲＬＣ−ＰＤＵのいずれの分割ＰＤＵも送信されたこともなければ、そのＲＬＣ−ＰＤＵのための送信カウンタＳＣ、前送信ポインタＰＢ、先頭ポインタＰＴ、および末尾ポインタＰＥを生成する。
【００４７】
そのＲＬＣ−ＰＤＵの先頭ポインタＰＴおよび末尾ポインタＰＥを、次のように更新する（＃５０４）。
【００４８】
そのＲＬＣ−ＰＤＵの分割ＰＤＵが送信された場合は、その分割ＰＤＵがそのＲＬＣ−ＰＤＵの中のどの部分であるかが示されるように、先頭ポインタＰＴおよび末尾ポインタＰＥを更新する。つまり、その分割ＰＤＵの先頭がそのＲＬＣ−ＰＤＵの中の先頭から何バイト目に当たるのかをチェックし、それが示されるように先頭ポインタＰＴを更新する。さらに、その分割ＰＤＵの末尾がそのＲＬＣ−ＰＤＵの中の先頭から何バイト目に当たるのかをチェックし、それが示されるように末尾ポインタＰＥを更新する。ただし、本実施形態では、ＲＬＣ−ＰＤＵの中の最終バイト目を、それよりも後ろにデータがないことに鑑み、「Ｎｕｌｌ」と表現している。「Ｎｕｌｌ」の代わりに、例えば「ＥＯＤ（End of Data）」のような他の値を用いてもよい。または、最終バイト目そのものを用いてもよい。
【００４９】
そのＲＬＣ−ＰＤＵが分割されずに送信された場合も、分割ＰＤＵと同様に先頭ポインタＰＴおよび末尾ポインタＰＥを更新する。ただし、この場合は、そのＲＬＣ−ＰＤＵのデータ長に関わらず、当然、先頭ポインタＰＴは「１」に決まり、末尾ポインタＰＥは「Ｎｕｌｌ」に決まる。
【００５０】
このように、先頭ポインタＰＴおよび末尾ポインタＰＥによって、今回送信されたＲＬＣ−ＰＤＵまたは分割ＰＤＵの範囲が表される。
【００５１】
前送信ポインタＰＢは、そのＲＬＣ−ＰＤＵまたは分割ＰＤＵが今までに送信されたことがあるのであれば、前回に送信されたそのＲＬＣ−ＰＤＵまたは分割ＰＤＵの末尾（最終のバイト目）を示す。未だそのＲＬＣ−ＰＤＵおよび分割ＰＤＵのいずれもが一度も送信されたことがない場合は、上述の通り、「Ｎｕｌｌ」という初期値が便宜上、示される。
【００５２】
フローチャートに戻って、ＰＤＵポインタ制御部３０６は、現在の前送信ポインタＰＢの値が「Ｎｕｌｌ」であるか否かをチェックし、または、現在の前送信ポインタＰＢおよび先頭ポインタＰＴそれぞれの値同士を比較する（＃５０５）。
【００５３】
現在の前送信ポインタＰＢの値が「Ｎｕｌｌ」である場合は（＃５０６でＹｅｓ）、ＰＤＵ送信カウンタ管理部３０５は、送信カウンタＳＣに「１」を加算する（＃５０９）。先頭ポインタＰＴの値が前送信ポインタＰＢの値以下である場合も（＃５０７でＹｅｓ）、「１」を加算する（＃５１０）。
【００５４】
現在の前送信ポインタＰＢの値が「Ｎｕｌｌ」でなく、かつ、先頭ポインタＰＴの値が前送信ポインタＰＢの値よりも大きい場合は（＃５０６でＮｏかつ＃５０７でＮｏ）、送信カウンタＳＣのカウントアップは行わない。
【００５５】
そして、前送信ポインタＰＢを、現在の末尾ポインタＰＥの値に更新する（＃５０９）。
【００５６】
ここで、３００バイトのデータからなる、ある１つのＲＬＣ−ＰＤＵの送信および再送信が、図４に示すような順に行われた場合を例に、図３の処理の内容をさらに具体的に説明する。
【００５７】
図４の例では、そのＲＬＣ−ＰＤＵが、最初は分割されることなく送信され（＃６０１）、次にそのＲＬＣ−ＰＤＵが３つの分割ＰＤＵに分割されて順次送信され（＃６０２、＃６０３、＃６０４）、再び２番目の分割ＰＤＵが送信され（＃６０５）、そして、再びそのＲＬＣ−ＰＤＵが分割されることなく送信されている（＃６０６）。
【００５８】
最初にそのＲＬＣ−ＰＤＵが送信された際に（図４の＃６０１、図３の＃５０１、＃５０２でＹｅｓ）、ＰＤＵ送信カウンタ管理部３０５およびＰＤＵポインタ制御部３０６は、初期値が「０」である送信カウンタＳＣと初期値がいずれも「Ｎｕｌｌ」である前送信ポインタＰＢ、先頭ポインタＰＴ、および送信カウンタＳＣとを用意する（＃６１１、＃５０３）。
【００５９】
今回の送信に応じて、ＰＤＵポインタ制御部３０６は、先頭ポインタＰＴを「１」に更新し、末尾ポインタＰＥを「Ｎｕｌｌ」に更新する（＃６１２、＃６１３、＃５０４）。
【００６０】
ＰＤＵポインタ制御部３０６は、ポインタのチェックまたは比較を行う（＃５０５）。現在、前送信ポインタＰＢは「Ｎｕｌｌ」を示している。したがって（＃５０６でＹｅｓ）、ＰＤＵ送信カウンタ管理部３０５は、そのＲＬＣ−ＰＤＵの送信カウンタＳＣに「１」を加算する（＃６１４、＃５０８）。
【００６１】
そして、ＰＤＵ送信カウンタ管理部３０５は、前送信ポインタＰＢを、現在の末尾ポインタＰＥの値つまり「Ｎｕｌｌ」に更新する（＃６１５、＃５０９）。
【００６２】
次に、そのＲＬＣ−ＰＤＵが３つの分割ＰＤＵに分割され、１番目の分割ＰＤＵが送信されると（＃６０２、＃５０１、＃５０２でＮｏ）、今回の送信に応じて、ＰＤＵポインタ制御部３０６は、先頭ポインタＰＴを「１」に更新し、末尾ポインタＰＥを「１００」に更新する（＃６１６、＃６１７、＃５０４）。
【００６３】
ＰＤＵポインタ制御部３０６は、ポインタのチェックまたは比較を行う（＃５０５）。現在、前送信ポインタＰＢは「Ｎｕｌｌ」を示している。したがって（＃５０６でＹｅｓ）、今回もＰＤＵ送信カウンタ管理部３０５は、そのＲＬＣ−ＰＤＵの送信カウンタＳＣに「１」を加算する（＃６１８、＃５０８）。
【００６４】
そして、ＰＤＵ送信カウンタ管理部３０５は、前送信ポインタＰＢを、現在の末尾ポインタＰＥの値つまり「１００」に更新する（＃６１９、＃５０９）。
【００６５】
２番目の分割ＰＤＵが送信されると（＃６０３、＃５０１、＃５０２でＮｏ）、今回の送信に応じて、ＰＤＵポインタ制御部３０６は、先頭ポインタＰＴを「１０１」に更新し、末尾ポインタＰＥを「２００」に更新する（＃６２０、＃６２１、＃５０４）。
【００６６】
ＰＤＵポインタ制御部３０６は、ポインタのチェックまたは比較を行う（＃５０５）。現在、前送信ポインタＰＢは「１００」を指し、先頭ポインタＰＴは「１０１」を指している。よって、先頭ポインタＰＴの値のほうが前送信ポインタＰＢの値よりも大きいので（＃５０６でＮｏ、＃５０７でＮｏ）、カウントアップは行わない（＃６２２）。
【００６７】
そして、ＰＤＵ送信カウンタ管理部３０５は、前送信ポインタＰＢを、現在の末尾ポインタＰＥの値つまり「２００」に更新する（＃６２３、＃５０９）。
【００６８】
３番目の分割ＰＤＵが送信されると（＃６０４、＃５０１、＃５０２でＮｏ）、今回の送信に応じて、ＰＤＵポインタ制御部３０６は、先頭ポインタＰＴを「２０１」に更新し、末尾ポインタＰＥを「Ｎｕｌｌ」に更新する（＃６２４、＃６２５、＃５０４）。
【００６９】
ＰＤＵポインタ制御部３０６は、ポインタのチェックまたは比較を行う（＃５０５）。現在、前送信ポインタＰＢは「２００」を指し、先頭ポインタＰＴは「２０１」を指している。よって、先頭ポインタＰＴの値のほうが前送信ポインタＰＢの値よりも大きいので（＃５０６でＮｏ、＃５０７でＮｏ）、今回もカウントアップは行わない（＃６２６）。
【００７０】
そして、ＰＤＵ送信カウンタ管理部３０５は、前送信ポインタＰＢを、現在の末尾ポインタＰＥの値つまり「Ｎｕｌｌ」に更新する（＃６２７、＃５０９）。
【００７１】
再び２番目の分割ＰＤＵが送信されると（＃６０５、＃５０１、＃５０２でＮｏ）、今回の送信に応じて、ＰＤＵポインタ制御部３０６は、先頭ポインタＰＴを「１０１」に更新し、末尾ポインタＰＥを「２００」に更新する（＃６２８、＃６２９、＃５０４）。
【００７２】
ＰＤＵポインタ制御部３０６は、ポインタのチェックまたは比較を行う（＃５０５）。現在、前送信ポインタＰＢは「Ｎｕｌｌ」を指しているので（＃５０６でＹｅｓ）、送信カウンタＳＣに「１」を加算する（＃６３０）。
【００７３】
そして、ＰＤＵ送信カウンタ管理部３０５は、前送信ポインタＰＢを、現在の末尾ポインタＰＥの値つまり「２００」に更新する（＃６３１、＃５０９）。
【００７４】
再びＲＬＣ−ＰＤＵが分割されることなく送信されると（＃６０６、＃５０１、＃５０２でＮｏ）、今回の送信に応じて、ＰＤＵポインタ制御部３０６は、先頭ポインタＰＴを「１」に更新し、末尾ポインタＰＥを「Ｎｕｌｌ」に更新する（＃６３２、＃６３３、＃５０４）。
【００７５】
ＰＤＵポインタ制御部３０６は、ポインタのチェックまたは比較を行う（＃５０５）。現在、前送信ポインタＰＢは「２００」を指し、先頭ポインタＰＴは「１」を指している。つまり、前送信ポインタＰＢの値は先頭ポインタＰＴの値以下なので（＃５０７でＹｅｓ）、送信カウンタＳＣに「１」を加算する（＃６３４）。
【００７６】
そして、ＰＤＵ送信カウンタ管理部３０５は、前送信ポインタＰＢを、現在の末尾ポインタＰＥの値つまり「Ｎｕｌｌ」に更新する（＃６３５、＃５０９）。
【００７７】
図３および図４で説明した方法によると、ＲＬＣ−ＰＤＵのようなデータユニットを分割して送信する場合であってもデータユニットの実質的な送信回数を正確にカウントすることができる。
【００７８】
図５は要求応対処理の流れの例を説明するフローチャート、図６および図７は送信側および受信側の再送要求の取扱いの処理の例を説明するための図である。
【００７９】
図２に戻って、携帯電話端末１ＢのＰＤＵ受信検出部３１１は、基地局２１Ａから順次送信されてきたＲＬＣ−ＰＤＵのシーケンス番号に基づいて、ＲＬＣ−ＰＤＵの受信の状態を確認する。つまり、現在まで、どのＲＬＣ−ＰＤＵを正常に受信することができたのか、または、どのＲＬＣ−ＰＤＵが本来受信できているはずであるにも関わらず未だ受信できていないのか、を確認する。また、次に受信できることが期待されるＲＬＣ−ＰＤＵを判別する。つまり、未だ受信できていないＲＬＣ−ＰＤＵのシーケンス番号の中から最小のシーケンス番号を検索する。そして、検索したシーケンス番号のＲＬＣ−ＰＤＵを、期待されるＲＬＣ−ＰＤＵであると判別する。
【００８０】
受信データ制御部３１２は、受信したＲＬＣ−ＰＤＵを上位のサブレイヤつまりＰＤＣＰサブレイヤに送る。
【００８１】
ステータス情報生成部３１３は、どのシーケンス番号のＲＬＣ−ＰＤＵまで受信することができたのか、または、どのシーケンス番号のＲＬＣ−ＰＤＵが未だ受信できていないのか、などの受信の状態を示すステータス情報８ＳＴを生成する。このステータス情報８ＳＴは、基地局２１Ａに送信される。
【００８２】
未だ受信できていないＲＬＣ−ＰＤＵを示すステータス情報８ＳＴは、基地局２１Ａに対してそのＲＬＣ−ＰＤＵの要求のためにも使用される。つまり、未だ受信できていないＲＬＣ−ＰＤＵを示すステータス情報８ＳＴは、再送信の要求情報でもある。分割ＰＤＵの再送信を要求する場合は、元のＲＬＣ−ＰＤＵのシーケンス番号とその分割ＰＤＵの番号（つまり、その分割ＰＤＵが何番目のものであるか）とを示すステータス情報８ＳＴが送信される。
【００８３】
ただし、携帯電話端末１Ｂは、スキップ制御情報８ＳＫが受信された場合は、そのスキップ制御情報８ＳＫに示されるシーケンス番号のＲＬＣ−ＰＤＵを受信するのをスキップする。つまり、そのＲＬＣ−ＰＤＵを受信するのを中止する。それに伴って、ステータス情報生成部３１３は、そのＲＬＣ−ＰＤＵを要求するのを中止する。
【００８４】
基地局２１Ａのステータス情報解析部３０８は、携帯電話端末１Ｂから受信したステータス情報８ＳＴを解析し、各部を次のように制御する。
【００８５】
どのシーケンス番号のＲＬＣ−ＰＤＵまでを携帯電話端末１Ｂが受信することができたのかを解析できた場合は、そのシーケンス番号以前のＲＬＣ−ＰＤＵのバックアップデータを削除するように、ＰＤＵ再送用バッファ３０４を制御する。
【００８６】
一方、どのＲＬＣ−ＰＤＵまたは分割ＰＤＵを携帯電話端末１Ｂが未だ受信できていないのか、つまり、ＲＬＣ−ＰＤＵまたは分割ＰＤＵの再送信の要求を解析できた場合は、再送信の回数をカウントする処理が行われるように再送信要求カウンタ管理部３０９を制御し、そのＲＬＣ−ＰＤＵまたは分割ＰＤＵを再送信する処理が行われるようにＰＤＵ送信処理部３０３を制御する。
【００８７】
再送信要求カウンタ管理部３０９は、ステータス情報解析部３０８による解析結果に基づいて、ＲＬＣ−ＰＤＵごとに、再送信の要求があった回数をカウントするカウンタ（以下、「再送信要求カウンタＹＣ」と記載する。）を管理する。
【００８８】
ここで、再送信要求カウンタＹＣによるカウント方法および再送信の制御方法を、図５のフローチャートを参照して説明する。
【００８９】
ＲＬＣ−ＰＤＵまたは分割ＰＤＵの再送信の要求が受信されたことがステータス情報解析部３０８によって解析されると（図５の＃５２１）、再送信要求カウンタ管理部３０９は、そのＲＬＣ−ＰＤＵまたは分割ＰＤＵの再送信の要求が、今回初めてなされたものである場合は（＃５２２でＹｅｓ）、そのＲＬＣ−ＰＤＵまたは分割ＰＤＵのための再送信要求カウンタＹＣを生成するなどして用意する。再送信要求カウンタＹＣの初期値は「０」である。
【００９０】
なお、ＲＬＣ−ＰＤＵとそれを分割したすべての分割ＰＤＵとで１つの再送信要求カウンタＹＣを共用してもよいし、ＲＬＣ−ＰＤＵおよび各分割ＰＤＵごとに１つずつ再送信要求カウンタＹＣを用意してもよい。以下、前者の場合を例に説明する。したがって、そのＲＬＣ−ＰＤＵおよび各分割ＰＤＵの共通の再送信要求カウンタＹＣは、そのＲＬＣ−ＰＤＵおよび分割ＰＤＵのいずれについても今までに再送信の要求がなかった場合に、用意する。
【００９１】
再送信の要求に係るＲＬＣ−ＰＤＵまたは分割ＰＤＵの再送信要求カウンタＹＣに「１」を加算する（＃５２４）。
【００９２】
そのＲＬＣ−ＰＤＵまたは分割ＰＤＵがＰＤＵ再送用バッファ３０４に記憶されている場合は（＃５２５でＹｅｓ）、それを再送信するようにＰＤＵ送信処理部３０３に指令する。これにより、そのＲＬＣ−ＰＤＵまたは分割ＰＤＵが携帯電話端末１Ｂに再送信される（＃５２６）。再送信の処理の流れは、前に図３で説明した通りである。
【００９３】
なお、再送信の要求が分割ＰＤＵに係り、かつ、ＰＤＵ再送用バッファ３０４に非分割のＲＬＣ−ＰＤＵが記憶されている場合は、ＰＤＵ送信処理部３０３は、分割ＰＤＵ送信情報記憶部３０７に記憶されているその分割ＰＤＵの先頭を表すポインタおよび末尾を表すポインタに基づいて、その分割ＰＤＵをそのＲＬＣ−ＰＤＵから抽出することができる。
【００９４】
そのＲＬＣ−ＰＤＵまたは分割ＰＤＵがＰＤＵ再送用バッファ３０４に記憶されていない場合は（＃５２５でＮｏ）、再送信要求カウンタＹＣの値が閾値α以上になっている場合は（＃５２７でＹｅｓ）、そのＲＬＣ−ＰＤＵまたは分割ＰＤＵのシーケンス番号を示すスキップ制御情報８ＳＫを生成する処理をスキップ制御情報生成部３０２に実行させる。このスキップ制御情報８ＳＫは、次に携帯電話端末１Ｂに送信される他のＲＬＣ−ＰＤＵのヘッダに付されるなどして、携帯電話端末１Ｂに届けられる（＃５２８）。
【００９５】
なお、図５の例では、要求されたＲＬＣ−ＰＤＵまたは分割ＰＤＵの有無をチェックした後に、ステップ＃５２７、＃５２８の再送信要求カウンタＹＣの値のチェックおよび必要なスキップ制御情報８ＳＫの送信の処理を行ったが、先にステップ＃５２７、＃５２８の処理を行ってもよい。
【００９６】
次に、非分割のＲＬＣ−ＰＤＵの再送信の要求がなされる場合の具体例および分割ＰＤＵの再送信の要求がなされる場合の具体例を、図６および図７を参照しながら説明する。
【００９７】
基地局２１Ａは、シーケンス番号がそれぞれ「０」〜「３」である４つのＲＬＣ−ＰＤＵを順次、携帯電話端末１Ｂに送信する（図６の＃７０１〜＃７０４）。シーケンス番号が「２」であるＲＬＣ−ＰＤＵが携帯電話端末１Ｂに届くことなく欠落すると、携帯電話端末１ＢからそのＲＬＣ−ＰＤＵの再送信の要求がなされる。
【００９８】
基地局２１Ａは、その要求を受信すると（＃７０６）、そのＲＬＣ−ＰＤＵを再送信する。
【００９９】
しかし、その要求を受信する前にそのＲＬＣ−ＰＤＵがＰＤＵ再送用バッファ３０４から開放つまり削除されたてた場合は、再送信することはできない。そこで、そのＲＬＣ−ＰＤＵの再送信要求カウンタＹＣを用意し、そのＲＬＣ−ＰＤＵの再送信の要求を受け付けた回数をカウントする。
【０１００】
携帯電話端末１Ｂは、そのＲＬＣ−ＰＤＵを受信できない限り、適宜、再送信の要求を行う。また、その間、次にそのＲＬＣ−ＰＤＵが送信されてくるであろうと期待している。
【０１０１】
基地局２１Ａは、そのＲＬＣ−ＰＤＵの再送信の要求の受信回数が所定の回数以上に達したら（＃７０７）、そのＲＬＣ−ＰＤＵのシーケンス番号つまり「２」を示すスキップ制御情報８ＳＫを携帯電話端末１Ｂに送信する（＃７０８）。
【０１０２】
携帯電話端末１Ｂは、このスキップ制御情報８ＳＫを受信すると、それに示されるシーケンス番号「２」のＲＬＣ−ＰＤＵの受信をスキップする。
【０１０３】
または、図７において、基地局２１Ａは、シーケンス番号が「１」であるＲＬＣ−ＰＤＵを４つの分割ＰＤＵに分割して携帯電話端末１Ｂに送信する（図６の＃７２２〜＃７２５）。２番目の分割ＰＤＵと４番目の分割ＰＤＵが携帯電話端末１Ｂに届くことなく欠落すると、携帯電話端末１Ｂからそれぞれの分割ＰＤＵの再送信の要求がなされる。基地局２１Ａは、それぞれの要求に基づいて再送信を行う。
【０１０４】
基地局２１Ａは、２番目の分割ＰＤＵの再送信の要求よりも先に４番目の分割ＰＤＵの再送信の要求を受け付けることがある（＃７２６、＃７２８）。
【０１０５】
しかし、基地局２１Ａは、４番目の分割ＰＤＵの再送信を受け付けたことに基づいて、それより前つまり１〜３番目の分割ＰＤＵが携帯電話端末１Ｂによって正常に受信されたと、判断してしまうことがある。そうすると、２番目の分割ＰＤＵの再送信の要求を受信するよりも前に、２番目の分割ＰＤＵを再送信するためのデータ（元のＲＬＣ−ＰＤＵまたはその分割ＰＤＵそのもの）がＰＤＵ再送用バッファ３０４から削除されしまうことがある。２番目の分割ＰＤＵの先頭および末尾を示す各ポインタも、分割ＰＤＵ送信情報記憶部３０７から削除されてしまうこともある。このような場合は、２番目の分割ＰＤＵを再送信することはできない。
【０１０６】
そこで、その分割ＰＤＵの元のＲＬＣ−ＰＤＵの再送信要求カウンタＹＣを用意し、再送信の要求を受け付けた回数をカウントする。
【０１０７】
携帯電話端末１Ｂは、その分割ＰＤＵを受信できない限り、適宜、再送信の要求を行う。
【０１０８】
基地局２１Ａは、その再送信要求カウンタＹＣの値が所定の回数以上に達したら（＃７２９）、その再送信要求カウンタＹＣに係るＲＬＣ−ＰＤＵのシーケンス番号つまり「１」を示すスキップ制御情報８ＳＫを携帯電話端末１Ｂに送信する（＃７３０）。
【０１０９】
携帯電話端末１Ｂは、このスキップ制御情報８ＳＫを受信すると、それに示されるシーケンス番号「１」のＲＬＣ−ＰＤＵの受信をスキップする。
【０１１０】
図５〜図７で説明した方法によると、再送信の要求が無限に続くのを防止することができる。
【０１１１】
図８は本発明に係る方法を適用した無線通信を行う装置の全体的な処理の流れの例を説明するフローチャートである。
【０１１２】
次に、本発明に係る方法を適用した無線通信を行う装置の全体的な処理の流れを、携帯電話端末１Ｂとの間で両方向の通信を行う基地局２１Ａの処理の流れを例にして、図８のフローチャートを参照して説明する。
【０１１３】
基地局２１Ａは、携帯電話端末１Ｂに送信すべきユーザデータがある場合は（図８の＃１でＹｅｓ）、それをＲＬＣ−ＰＤＵに載せるなどして携帯電話端末１Ｂに送信する処理を行う（＃２）。この際に、ＲＬＣ−ＰＤＵごとに送信回数のカウントを行う。送信およびカウントの処理の手順の詳細は、前に図３で説明した通りである。
【０１１４】
携帯電話端末１ＢからＲＬＣ−ＰＤＵまたは分割ＰＤＵの再送信の要求があった場合は（＃３でＹｅｓ）、それを再送信する処理を行う（＃４）。この処理の手順の詳細は、前に図５で説明した通りである。
【０１１５】
ステップ＃１〜＃４の処理は、下り方向の通信の処理である。ステップ＃５以降の処理は上り方向の通信の処理である。
【０１１６】
携帯電話端末１ＢからＲＬＣ−ＰＤＵまたは分割ＰＤＵを受信した場合は（＃５でＹｅｓ）、それを受信して上位のレイヤに渡すなどの処理を行う（＃６）。そのＲＬＣ−ＰＤＵまたは分割ＰＤＵにスキップ制御情報８ＳＫが含まれている場合は（＃７でＹｅｓ）、そのスキップ制御情報８ＳＫに示されるシーケンス番号のＲＬＣ−ＰＤＵを受信するのを中止する（＃８）。つまり、そのシーケンス番号のＲＬＣ−ＰＤＵをスキップする。
【０１１７】
携帯電話端末１Ｂから受信したＲＬＣ−ＰＤＵの状態をチェックし（＃９）、それを示すステータス情報８ＳＴを携帯電話端末１Ｂに送信する（＃１０）。ステータス情報８ＳＴが再送要求の情報になる場合もある。
【０１１８】
基地局２１Ａは、以上説明した処理を、携帯電話端末１Ｂとの通信が終了するまでの間、適宜、実行する。
【０１１９】
本実施形態によると、ＲＬＣ−ＰＤＵのようなデータユニットを分割して送信する場合であってもデータユニットの実質的な送信回数を正確にカウントすることができる。さらに、再送信の要求が無限に続くのを防止することができる。このように、本実施形態によると、データユニットの送受信の異常を上手く検出し対処することができる。
【０１２０】
閾値αは、管理者などが任意に設定することができる。または、通信回線の状況またはＱｏＳなどに応じて適宜変更できるように構成してもよい。
【０１２１】
本実施形態では、ネットワーク制御装置２２から携帯電話端末１にデータを送信する場合を例に説明したが、反対方向の場合にも本発明を適用することができる。また、他の装置同士の通信の場合にも、本発明を適用することができる。ＲＬＣ−ＰＤＵ以外のデータユニットの場合にも、本発明を適用することができる。
【０１２２】
再送信の要求があった場合に、ＲＬＣ−ＰＤＵの分割をやり直してもよい。そして、その要求に係る部分を含む１つまたは複数の分割ＰＤＵを送信するようにしてもよい。
【０１２３】
本実施形態では、図３および図４で説明したように、ＲＬＣ−ＰＤＵを送信しまたは再送信する場合も、分割ＰＤＵを送信しまたは再送信する場合と同様に、ポインタのチェックまたは比較を行うことによって、再送信要求カウンタＹＣにカウントを行わせるか否かを判別したが、ＲＬＣ−ＰＤＵを送信しまたは再送信する場合は、無条件に再送信要求カウンタＹＣにカウントを行わせるようにしてもよい。
【０１２４】
不要になった前送信ポインタＰＢ、先頭ポインタＰＴ、末尾ポインタＰＥは、適宜、削除すればよい。または、後に生成されるＲＬＣ−ＰＤＵのために再利用してもよい。
【０１２５】
ＲＬＣ−ＰＤＵを複数の分割ＰＤＵに分割して送信する場合において、送信範囲外の領域に係る分割ＰＤＵ（例えば、未だ一度も送信していない分割ＰＤＵまたは既にＰＤＵ再送用バッファ３０４から開放（削除）してしまった分割ＰＤＵ）の再送信の要求があった場合は、図３および図４で説明した方法に関わらず、その再送信要求カウンタＹＣにカウントを行わせてもよい。
【０１２６】
ＲＬＣ−ＰＤＵまたは分割ＰＤＵの再送信の要求とともに送信回数に関する情報の通知の要求があった際に、そのＲＬＣ−ＰＤＵまたは分割ＰＤＵの送信カウンタＳＣおよびそれに関連する種々の情報を、要求元に送信してもよい。さらに、この通知の要求の回数もカウンタによってカウントし、通知の要求があるごとにその回数を更新するようにしてもよい。
【０１２７】
本実施形態では、携帯電話網を用いた通信システム１００を例に説明したが、ＰＨＳまたは無線ＬＡＮなど他の網を用いた通信システムの場合にも本発明を適用することができる。
【０１２８】
その他、通信システム１００、携帯電話端末１、無線ネットワーク２、ネットワーク制御装置２２の全体または各部の構成、処理内容、処理順序などは、本発明の趣旨に沿って適宜変更することができる。
【０１２９】
上に述べた実施例には、特許請求の範囲に記載した発明以外に、以下の付記に記載する発明も開示されている。
（付記１）１つのデータユニットを、全部分を分割することなくまたは一部分ずつに分割して受信装置に送信することが可能であり、かつ、前記データユニットの全部分または一部分を前記受信装置にもう一度送信することが可能である送信装置における、当該データユニットの送信回数のカウント方法であって、
前記送信回数のカウントを行うカウンタを用意しておき、
前記送信装置が前記データユニットの全部分または一部分を前記受信装置に送信するごとに、
前記データユニットにおける、今回送信する部分の位置を示す、位置情報を、記憶手段に記憶させる第一のステップと、
今回送信する部分の前記位置情報および前回送信した送信対象の前記位置情報に基づいて、当該部分を今回送信したことに伴って前記送信回数のカウントを行うべきか否かを判別する第二のステップと、
カウントを行うべきであると判別した場合に、前記カウンタにカウントを行わせる第三のステップと、
を有することを特徴とするデータユニットの送信回数のカウント方法。
（付記２）前記受信装置から前記データユニットの再送信の要求があった際に、前記送信回数に関する情報を付与する必要がある場合に、当該送信回数に関する情報を更新した更新回数をカウントする、第四の処理を、行う、
付記１記載のデータユニットの送信回数のカウント方法。
（付記３）前記第二の処理において、今回送信する部分の前記位置情報に示される先頭の位置が、前回送信した送信対象の前記位置情報に示される末尾の位置よりも前である場合または両者が重なる場合に、カウントを行うべきであると、判別する、
付記１または付記２記載のデータユニットの送信回数のカウント方法。
（付記４）今回送信する部分が前記データユニットの全部分である場合は、部分の前記位置情報の内容および前回送信した送信対象の前記位置情報の内容に関わらず、カウントを行うべきであると判別する、
付記１ないし付記３のいずれかに記載のデータユニットの送信回数のカウント方法。
【図面の簡単な説明】
【０１３０】
【図１】通信システムの全体的な構成の例を示す図である。
【図２】携帯電話端末およびネットワーク制御装置の機能的構成の例を示す図である。
【図３】送信処理の流れの例を説明するフローチャートである。
【図４】前送信ポインタ、先頭ポインタ、末尾ポインタ、および送信カウンタの変遷の例を説明するための図である。
【図５】要求応対処理の流れの例を説明するフローチャートである。
【図６】送信側および受信側の再送要求の取扱いの処理の例を説明するための図である。
【図７】送信側および受信側の再送要求の取扱いの処理の例を説明するための図である。
【図８】本発明に係る方法を適用した無線通信を行う装置の全体的な処理の流れの例を説明するフローチャートである。
【図９】ＲＬＣサブレイヤでの処理の例を説明するための図である。
【図１０】データユニットの再送信の要求に関する従来の問題点を説明するための図である。
【符号の説明】
【０１３１】
１  携帯電話端末
２２  ネットワーク制御装置
３０２  スキップ制御情報生成部
３０３  ＰＤＵ送信処理部
３０５  ＰＤＵ送信カウンタ管理部
３０６  ＰＤＵポインタ制御部
３０７  分割ＰＤＵ送信情報記憶部
３０８  ステータス情報解析部
３０９  再送信要求カウンタ管理部
【図１】
0004447028.tif 000002
【図２】
0004447028.tif 000003
【図３】
0004447028.tif 000004
【図４】
0004447028.tif 000005
【図５】
0004447028.tif 000006
【図６】
0004447028.tif 000007
【図７】
0004447028.tif 000008
【図８】
0004447028.tif 000009
【図９】
0004447028.tif 000010
【図１０】
0004447028.tif 000011