(57)【特許請求の範囲】
【請求項１】
送信側装置から有線回線及び無線回線を介して受信側装置に情報を含むパケット信号を伝送する通信システムにおいて、
送信側装置は、所定の信号処理を実行する信号処理部を備え、
受信側装置は、所定の信号処理を実行する信号処理部を備え、
受信側装置の信号処理部は、受信したパケット信号においてビットエラーによるパケットロスが発生しているときに、無線回線のパケットロスを明示的に通知するＥＬＮ（Explicit Loss Notification）ビットをセットし、受信したパケット信号を無効にすると同時に、ＥＬＮビットを含むパケット信号を発生し、これに応答して、ＥＬＮビットを含む応答確認信号を送信側装置の信号処理部に送信し、
送信側装置の信号処理部は、ＥＬＮビットを含む応答確認信号に応答して、これに対応するパケット信号を受信側装置の信号処理部に再送し、ここで、輻輳ウィンドウは変化させず、
次いで、受信側装置の信号処理部は、上記再送されたパケット信号を受信するまで、新たなＥＬＮビットを含むパケット信号が到着しない限り、ＥＬＮビットを含む応答確認信号を送信側装置の信号処理部に送り続けることを特徴とする通信システム。
【請求項２】
送信側装置から有線回線及び無線回線を介して受信側装置に情報を含むパケット信号を伝送する通信システムにおける受信側装置のための通信装置において、
通信装置は、所定の信号処理を実行する信号処理部を備え、
通信装置の信号処理部は、受信したパケット信号においてビットエラーによるパケットロスが発生しているときに、無線回線のパケットロスを明示的に通知するＥＬＮ（Explicit Loss Notification）ビットをセットし、受信したパケット信号を無効にすると同時に、ＥＬＮビットを含むパケット信号を発生し、これに応答して、ＥＬＮビットを含む応答確認信号を送信側装置に送信し、
次いで、通信装置の信号処理部は、上記再送されたパケット信号を受信するまで、新たなＥＬＮビットを含むパケット信号が到着しない限り、ＥＬＮビットを含む応答確認信号を送信側装置に送り続けることを特徴とする通信装置。
【請求項３】
送信側装置から有線回線及び無線回線を介して受信側装置に情報を含むパケット信号を伝送する通信システムのための通信方法において、
送信側装置は、所定の信号処理を実行する信号処理部を備え、
受信側装置は、所定の信号処理を実行する信号処理部を備え、
受信側装置の信号処理部において、受信したパケット信号においてビットエラーによるパケットロスが発生しているときに、無線回線のパケットロスを明示的に通知するＥＬＮ（Explicit Loss Notification）ビットをセットし、受信したパケット信号を無効にすると同時に、ＥＬＮビットを含むパケット信号を発生し、これに応答して、ＥＬＮビットを含む応答確認信号を送信側装置の信号処理部に送信するステップと、
送信側装置の信号処理部において、ＥＬＮビットを含む応答確認信号に応答して、これに対応するパケット信号を受信側装置の信号処理部に再送し、ここで、輻輳ウィンドウは変化させないステップと、
次いで、受信側装置の信号処理部において、上記再送されたパケット信号を受信するまで、新たなＥＬＮビットを含むパケット信号が到着しない限り、ＥＬＮビットを含む応答確認信号を送信側装置の信号処理部に送り続けるステップとを含むことを特徴とする通信方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、送信側装置から有線回線及び無線回線を介して受信側装置に情報を含むパケット信号を伝送するための通信システム、通信装置及び通信方法に関する。
【０００２】
【従来の技術】
インターネットプロトコルを中心としたネットワークアーキテクチャでは、下位層に対する依存性が少なく、また下位層の通信技術への要求も低い。その結果、単純なネットワーク構築が実現でき、急速なインターネットの発展を成し遂げている（例えば、従来技術文献１「村井純，“次世代インターネット技術”，電子情報通信学会誌，Ｖｏｌ．８４，Ｎｏ．１，ｐｐ．２−９，２００１年１月」参照。）。一方、近年携帯端末の普及や無線通信技術の発達に伴い、モバイル無線ネットワークの利用は爆発的な増加を見せている。無線通信は有線通信に比べて転送誤り率が高く、しかも誤り率が電波環境の変動により変化する。
【０００３】
【発明が解決しようとする課題】
このような無線リンクに対応するため、従来のインターネットプロトコルにおいてレイヤ間の協力関係をより密に、特に、ＭＡＣ（Media Access Control）レイヤとＴＣＰ／ＩＰ（Transmission Control Protocol/Internet Protocol）レイヤ間の情報交換を今以上に行う必要があると考えられる。
【０００４】
従来のＴＣＰは無線リンクを想定していないため、パケットロスが発生した場合、すべてネットワーク輻輳とみなしてＩＰパケットの送信速度を減少させている。しかし、無線リンクを利用するインターネットにおいては、輻輳状態でなくてもビット誤りのためＩＰパケットが破棄されてしまう。ＴＣＰは無線の高い誤り率によるパケットロスを輻輳によるロスと区別できないため、輻輳状態にないにも係らず不必要にデータの送信速度を抑制するという問題があった。この問題を解決するため、無線リンクロスを明示的に通知するＥＬＮ（Explicit Loss Notification）が提案されている（例えば、従来技術文献２「H. Balakrishnan et al., "Explicit Loss Notification and Wireless Web Performance", Proceeding of IEEE Globecom Internet Mini-Conference, November 1998」参照。）。しかしながら、本方式では基地局に負荷を掛けるとともに無線リンクロスと輻輳ロスの判別が不完全であった。
【０００５】
これまで無線環境に対応したＴＣＰの対策方法がいくつか提案されてきたが、例えば、従来技術文献３「A. Bakre et al., "I-TCP: Indirect TCP for Mobile Hosts", Proceeding of 15th ICDCS, May 1995」において開示された非直接ＴＣＰ（Indirect TCP）はネットワークを有線部と無線部に分離して、有線部と無線部ではそれぞれ従来のＴＣＰ制御と独自の無線フロー制御を行う。また、従来技術文献４「H. Balakrishnan et al., "Improving Reliable Transport and Handoff Performance in Cellular Wireless Networks", ACM Wireless Networks Vol.1, No.4, December 1995」において開示されたスヌープ・モジュール（Snoop Module）は基地局にエージェントを配してコネクションを監視することにより、無線端末からの再送要求を有線側からのものと区別してそれぞれ処理を行う。ＥＬＮの従来の実装方式では、無線リンクの基地局が送信側からのセグメントと受信側からのＡＣＫセグメントを監視することにより、ＥＬＮビット（＝１）をセットし、送信側に無線リンクロスを知らせる。上記の手法は有線側から無線の高い誤り率を隠蔽することにより従来のＴＣＰを有効に使うことが試みられているが、基地局に負荷をかけるうえ、エンド・ツー・エンドの制御が遮断され、無線リンクロスと輻輳ロスの判別も不完全であるという欠点があった。
【０００６】
本発明の目的は以上の問題点を解決し、不必要な送信速度の抑制を解消するとともに、無線リンクエラーによるパケットロスを直ちに再送することを実現できる通信システム、通信装置及び通信方法を提供することにある。
【０００７】
【課題を解決するための手段】
本発明に係る通信システムは、送信側装置から有線回線及び無線回線を介して受信側装置に情報を含むパケット信号を伝送する通信システムにおいて、
送信側装置は、所定の信号処理を実行する信号処理部を備え、
受信側装置は、所定の信号処理を実行する信号処理部を備え、
受信側装置の信号処理部は、受信したパケット信号においてビットエラーによるパケットロスが発生しているときに、無線回線のパケットロスを明示的に通知するＥＬＮ（Explicit Loss Notification）ビットをセットし、受信したパケット信号を無効にすると同時に、ＥＬＮビットを含むパケット信号を発生し、これに応答して、ＥＬＮビットを含む応答確認信号を送信側装置の信号処理部に送信し、
送信側装置の信号処理部は、ＥＬＮビットを含む応答確認信号に応答して、これに対応するパケット信号を受信側装置の信号処理部に再送し、ここで、輻輳ウィンドウは変化させず、
次いで、受信側装置の信号処理部は、上記再送されたパケット信号を受信するまで、新たなＥＬＮビットを含むパケット信号が到着しない限り、ＥＬＮビットを含む応答確認信号を送信側装置の信号処理部に送り続けることを特徴とする。
【０００８】
また、本発明に係る通信装置は、送信側装置から有線回線及び無線回線を介して受信側装置に情報を含むパケット信号を伝送する通信システムにおける受信側装置のための通信装置において、
通信装置は、所定の信号処理を実行する信号処理部を備え、
通信装置の信号処理部は、受信したパケット信号においてビットエラーによるパケットロスが発生しているときに、無線回線のパケットロスを明示的に通知するＥＬＮ（Explicit Loss Notification）ビットをセットし、受信したパケット信号を無効にすると同時に、ＥＬＮビットを含むパケット信号を発生し、これに応答して、ＥＬＮビットを含む応答確認信号を送信側装置に送信し、
次いで、通信装置の信号処理部は、上記再送されたパケット信号を受信するまで、新たなＥＬＮビットを含むパケット信号が到着しない限り、ＥＬＮビットを含む応答確認信号を送信側装置に送り続けることを特徴とする。
【０００９】
さらに、本発明に係る通信方法は、送信側装置から有線回線及び無線回線を介して受信側装置に情報を含むパケット信号を伝送する通信システムのための通信方法において、
送信側装置は、所定の信号処理を実行する信号処理部を備え、
受信側装置は、所定の信号処理を実行する信号処理部を備え、
受信側装置の信号処理部において、受信したパケット信号においてビットエラーによるパケットロスが発生しているときに、無線回線のパケットロスを明示的に通知するＥＬＮ（Explicit Loss Notification）ビットをセットし、受信したパケット信号を無効にすると同時に、ＥＬＮビットを含むパケット信号を発生し、これに応答して、ＥＬＮビットを含む応答確認信号を送信側装置の信号処理部に送信するステップと、
送信側装置の信号処理部において、ＥＬＮビットを含む応答確認信号に応答して、これに対応するパケット信号を受信側装置の信号処理部に再送し、ここで、輻輳ウィンドウは変化させないステップと、
次いで、受信側装置の信号処理部において、上記再送されたパケット信号を受信するまで、新たなＥＬＮビットを含むパケット信号が到着しない限り、ＥＬＮビットを含む応答確認信号を送信側装置の信号処理部に送り続けるステップとを含むことを特徴とする。
【００１０】
【発明の実施の形態】
以下、図面を参照して本発明に係る実施形態について説明する。なお、図面において、同一又は相当部分には同一符号を付してその説明を省略する。
【００１１】
図１は本発明に係る一実施形態である通信システム１００の構成を示すブロック図である。図１において、本実施形態に係る通信システム１００は、通信端末装置１０と、基地局通信装置２０と、携帯無線通信装置３０とを備え、通信端末装置１０と基地局通信装置２０との間は、例えば、イーサケーブルや光ファイバケーブルなどの有線回線４０を介して接続され、基地局通信装置２０と携帯無線通信装置３０との間は例えば携帯無線回線などの無線回線５０を介して接続され、通信端末装置１０と携帯無線通信装置３０との間で基地局通信装置５０を介してパケット信号を用いて情報通信が行われる。
【００１２】
上述の従来技術の項で説明したような背景から、本発明に係る実施形態では、ＭＡＣレイヤでビット誤りのため破棄されたＩＰパケットの情報をＭＡＣ層から吸い上げて、ＴＣＰ層に通知する新たなＥＬＮ方式を提案する。具体的には、ＭＡＣレイヤでビットエラーによるパケットロスが発生している際、ＥＬＮビットをセットすることにより、そのパケットを無効にすると同時に、その情報をＴＣＰレイヤに通知する新たな無線リンクロス通知方式を提案する。ここでは、ビット誤りが発生している際、パケットのシーケンス番号（４バイト）が有効であると仮定する。例えば携帯無線通信装置３０である受信側装置のＭＡＣレイヤ受信処理においてＥＬＮビットをセットする図５の概略フローに示すように、受信側ＴＣＰ処理部では、ＥＬＮビット＝１のパケット信号を受け取ると、ＡＣＫパケット信号に同様にＥＬＮビットをセットして送信側に送り、そして、送信側ＴＣＰ処理部では、ＥＬＮビットが１のＡＣＫを受け取ったときは、ただちに再送するが、輻輳ウインドウは変化させない。このあと、受信側ＴＣＰ処理部では、再送したパケットを受信するまで、同じ受信側ＭＡＣ処理部から新たなＥＬＮパケットが到着しない限り、ＡＣＫパケット信号にＥＬＮ（＝１）をセットし、例えば通信端末装置１０である送信側装置のＴＣＰ処理部に送り続ける。送受信のパケットとＥＬＮビットをセットされている確認応答の流れの例を図１２に示す。これについては詳細後述する。
【００１３】
図１において、通信端末装置１０は例えばパーソナルコンピュータから成り、送信すべき情報を複数のパケット信号に分割して、有線回線４０、基地局通信装置２０及び無線回線５０を介して携帯無線端末装置３０へ送信するとともに、携帯無線端末装置３０からの情報を逆の経路で受信する。また、通信端末装置１０は、有線回線４０において送信ロスが生じた場合、送信ロスが生じたパケット信号の輻輳制御を行なう。ここで、「輻輳制御」とは、通信に輻輳が生じたとき、即ち、通信がオーバーフローしたとき、輻輳状態を回避するために送信パケット数を少なくして通信を行なうように制御することを言う。また、基地局通信装置２０は、有線回線４０と無線回線５０との間で通信を中継する中継装置を構成し、通信端末装置１０から有線回線４０を介して受信したパケット信号を無線回線５０を介して携帯無線端末装置３０へ送信する一方、携帯無線通信装置３０から無線回線５０を介して受信したパケット信号を有線回線４０を介して通信端末装置１０に送信する。さらに、携帯無線端末装置３０は、例えば、移動可能な携帯電話機からなり、有線回線４０、基地局通信装置２０及び無線回線５０を介して通信端末装置１０からのパケット信号を受信するとともに、送信すべきパケット信号を逆の経路で通信端末装置１０へ送信する。
【００１４】
図２は図１の通信端末装置１０の構成を示すブロック図である。図２において、通信端末装置１０は、接続端子１０１と、インターフェース１０２と、送受信部１０３と、コントローラ１０４と、キー操作部１０５と、情報処理部１０６と、演算処理部１０７と、記憶部１０８と、表示部１０９とを備えて構成され、各部１０３乃至１０９はバスＢＳ１を介して接続されている。
【００１５】
接続端子１０１は、通信端末装置１０を有線回線４０に接続するための接続端子である。インターフェース１０２は、接続端子１０１と送受信部１０３との間でデータ信号における信号変換やプロトコル変換などのインターフェース処理を実行する。送受信部１０３は、バスＢＳＩを介して入力されたデータをインターフェース１０２及び接続端子１０１を介して有線回線４０へ送信する一方、有線回線４０から接続端子１０１及びインターフェース１０２を介して受信したデータをバスＢＳＩへ出力する。コントローラ１０４は、通信端末装置１０の各部の動作を制御する。キー操作部１０５は、通信端末装置１０のユーザの指示を受信してその指示信号をコントローラ１０４及び情報処理部１０６に出力する。情報処理部１０６は、キー操作部１０５を介して入力されたユーザからの指示の指示信号に応じて、文書作成、及び情報の加工等の各種の情報処理を行ない、その処理の結果を複数のパケット信号に分割して記憶部１０８に記憶する。ここで、情報処理部１０６は、ＴＣＰレイヤの信号処理を行うＴＣＰ処理部と、ＩＰレイヤの信号処理を行うＩＰ処理部と、ＭＡＣレイヤの信号処理を行うＭＡＣ処理部とを含む。記憶部１０８は各種のデータを記憶する。表示部１０９は、通信端末装置１０のユーザに各種の情報を視覚情報として与える。
【００１６】
以上のように構成された通信端末装置１０において、有線回線４０を介して受信されたパケット信号は、インターフェース１０２、送受信部１０３及びバスＢＳ１を介して記憶部１０８に一時的に格納された後、情報処理部１０６に入力されて、そのパケット信号のデータについて所定の受信処理が実行される。一方、情報処理部１０６により生成された複数のパケット信号は、記憶部１０８に一時的に格納された後、バスＢＳ１、送受信部１０３、インターフェース１０２及び接続端子１０１を介して有線回線４０に送信される。
【００１７】
図３は図１の携帯無線端末装置３０の構成を示すブロック図である。図３の携帯無線通信装置３０は、アンテナ３０１と、送受信部３０２と、コントローラ３０５と、キー操作部３０６と、表示部３０７と、情報処理部３０８と、記憶部３０９とを備えて構成され、これらの各部３０２乃至３０９はバスＢＳ２を介して接続されている。
【００１８】
送受信部３０２は、アンテナ３０１を介して受信した無線信号をベースバンド信号に変換し、その変換したベースバンド信号のデータをバスＢＳ２、記憶部３０９を介して情報処理部３０８に出力する一方、送信すべきパケット信号のデータを、情報処理部３０８から記憶部３０９を介して受信し、無線搬送波を当該データに従って変調し、変調された無線信号をアンテナ３０１を介して送信する。コントローラ３０５は、携帯無線端末装置３０の各部の動作を制御する。キー操作部３０６は、携帯無線端末装置３０のユーザの指示を受付け、その指示信号をコントローラ３０５及び情報処理部３０８に出力する。表示部３０７は、各種の情報をユーザに視覚情報として与える。情報処理部３０８は、キー操作部３０６を介して入力されたユーザの指示に基づいて、文書作成、及び情報の加工等を行ない、その結果のデータを記憶部３０９に記憶する。記憶部３０９は、各種のデータ及び情報を格納する。ここで、情報処理部３０８は、ＴＣＰレイヤの信号処理を行うＴＣＰ処理部と、ＩＰレイヤの信号処理を行うＩＰ処理部と、ＭＡＣレイヤの信号処理を行うＭＡＣ処理部とを含む。
【００１９】
以上のように構成された通信端末装置３０において、無線回線５０を介してアンテナ３０１を用いて受信された無線信号は、送受信部３０２及びバスＢＳ２を介して記憶部３０９に一時的に格納された後、情報処理部３０８に入力されて、そのパケット信号のデータについて所定の受信処理が実行される。一方、情報処理部３０８により生成された複数のパケット信号は、記憶部３０９に一時的に格納された後、バスＢＳ２及び送受信部３０２を介してアンテナ３０１を用いて無線回線４０に送信される。
【００２０】
図４は従来技術のＯＳＩ参照モデル６０に対応して、図１の通信システム１００に用いる通信プロトコルを示す図である。図４において、公知の通り、ＯＳＩ参照モデル６０は、下位層から上位層へ向けて、物理層、データリンク層、ネットワーク層、トランスポート層、セッション層、プレゼンテーション層、及びアプリケーション層から成る。ここで、アプリケーション層の処理部は、ファイル転送やメッセージ通信などのユーザが実行する多くのサービス間のプロトコルを制御する。また、プレゼンテーション層の処理部は、文字コードや画像データの表現形式を制御し、プロセス間におけるデータ形式などを確認する。さらに、セッション層の処理部は、アプリケーションプロセス間の情報の流れなど、通信モードの管理や情報転送に関する通信制御を行なう。また、トランスポート層の処理部は、通信情報の質を高めるための通信制御を行ない、データに欠落があった場合、相手先に通知する。さらに、ネットワーク層の処理部は、複数のネットワークにまたがったコンピュータ間のデータ転送やデータの中継機能などを実行する。さらに、データリンク層は、ノード間で信頼性の高いデータ伝送を保証するための層であり、データリンク層の処理部はハードウェアインターフェースから成り、中継局間のデータ伝送を確実に行なう処理を実行する。またさらに、物理層は、データリンク層から渡されたビット情報を実際に伝送するための電気信号に変換したり、届いた電気信号をビット情報に変換したり、ケーブルやコネクタなどの規格を取決める層である。従って、物理層は、相手方と物理的に回線を接続するための層であり、物理ハードウェア接続層として機能する。
【００２１】
ＯＳＩモデル参照６０がインターネットによる通信に用いられる場合、アプリケーション層、プレゼンテーション層及びセッション層は、１つの層としてのアプリケーション層として捉えられる。従って、通信プロトコル７０は、図４に示すように、アプリケーション、ＴＣＰ又はＵＤＰ（User Datagram Protocol）、ＩＰ（Internet Protocol）、ＭＡＣ（Media Address Control）から成る。ＵＤＰは、コネクションレス型の通信プロトコルであり、ＴＣＰは、コネクション型のプロトコルである。そして、通信システム１００においては、トランスポート層のプロトコルとしてコネクション型のプロトコルであるＴＣＰが用いられる。
【００２２】
以下、例えば、携帯無線通信装置３０である受信側装置と、例えば、通信端末装置１０である送信側装置における通信処理について図５乃至図１０のフローチャートを参照して説明する。
【００２３】
図５は図１の通信システム１００における受信側装置のＭＡＣ処理部によって実行されるＭＡＣレイヤ受信処理（概略フロー）を示すフローチャートである。図５において、まず、ステップＳ１においてパケット信号からエラー情報を取得しエラーフラグｅｒｒｏｒに代入し、ここで、無線通信のビットエラーによりエラーが発生しているとき（すなわち、パケットエラー）はエラーフラグｅｒｒｏｒ＝１となる一方、エラーが発生していないときはエラーフラグｅｒｒｏｒ＝０となる。次いで、ステップＳ２においてパケット信号のシーケンス番号をＴＣＰヘッダより取得し、シーケンス番号ｓｅｑＮｏに代入する。さらに、ステップＳ３においてエラーフラグｅｒｒｏｒ＝１であるか否かが判断され、すなわち、パケットエラーが発生したか否かが判断され、ＹＥＳのときはステップＳ４に進む一方、ＮＯのときは当該通信処理を終了する。次いで、ステップＳ４においてＭＡＣレイヤでの再送が完了したかであるか否かが判断され、ＹＥＳのときはステップＳ５に進む一方、ＮＯのときは当該受信処理を終了する。ステップＳ５ではＥＬＮビッドに１をセットし、ステップＳ６においてシーケンス番号ＳｅｑＮｏ及びＥＬＮビットを含むパケット信号をＴＣＰ処理部に送信して当該受信処理を終了する。
【００２４】
有線回線４０のリンクにおいてはＭＡＣレイヤでの再送がなく、再送処理はＴＣＰレイヤのみで行っている。しかしながら、無線回線５０のリンクにおいては、高いビットエラーに対応するため、例えばＩＥＥＥ８０２．１１ｂによって、無線ＭＡＣレイヤにおいても局所的な再送処理を行っています。ＭＡＣレイヤでの再送を終えてなおパケットがエラー状態である場合に、従来であれば、破棄してしまいますが、本実施形態では、そのパケットを破棄するかわりに、ＥＬＮビットを立てて、ＴＣＰ処理部に送るように構成している。
【００２５】
図６は図１の通信システム１００における受信側装置のＭＡＣ処理部によって実行されるＭＡＣレイヤ受信処理（詳細フロー）を示すフローチャートである。
【００２６】
図６において、まず、ステップＳ１１において受信したパケット信号からのエラー情報を取得してエラーフラグｅｒｒｏｒに代入し、ステップＳ１２においてパケット信号のシーケンス番号をＴＣＰ処理部から取得しシーケンス番号ｓｅｑＮｏに代入する。ステップＳ１３においてエラーフラグｅｒｒｏｒ＝１であるか否かが判断され、ＹＥＳのときはステップＳ１４に進む一方、ＮＯのときはステップＳ１６に進む。ステップＳ１４では、図７のサブルーチンであるパケット信号の比較処理を実行した後、ステップＳ１５においてパケット信号を記憶部３０９のバッファメモリに格納して当該受信処理を終了する。一方、ステップＳ１６において図７のサブルーチンであるパケット信号の比較処理を実行し、ステップＳ１７においてパケット信号にＥＬＮビット（＝０）を追加し、ステップＳ１８において、シーケンス番号ｓｅｑＮｏ及びＥＬＮビットを含むパケット信号をＴＣＰ処理部に送信し、これにより、送信側装置のＴＣＰ処理部に送信し、当該受信処理を終了する。
【００２７】
図７は図６のサブルーチンであるパケット信号の比較処理（ステップＳ１４，Ｓ１６）を示すフローチャートである。
【００２８】
図７において、まず、ステップＳ２１において記憶部３０９のバッファメモリにＮＵＬＬでないか否か、すなわち、バッファメモリに何らかのデータが格納されていないか否かについて検出し、ＹＥＳのときはステップＳ２２に進む一方、ＮＯのときは元のメインルーチンに戻る。ステップＳ２２においてバッファメモリに格納されたパケット信号のシーケンス番号をシーケンス番号ｓｅｑＮｏ＿ｂｕｆｆに代入し、ステップＳ２３においてｓｅｑＮｏ＝ｓｅｑＮｏ＿ｂｕｆｆであるか否かが判断され、ＹＥＳのときはステップＳ２７に進む一方、ＮＯのときはステップＳ２４に進む。ステップＳ２４では、バッファメモリに格納されたパケット信号にＥＬＮビット（＝１）を追加し、ステップＳ２５においてバッファメモリに格納されたパケット信号のエラー情報ｅｒｒｏｒを０にセットし、ステップＳ２６においてバッファメモリに格納されたパケット信号をＴＣＰ処理部に送信する。次いで、ステップＳ２７において記憶部３０９のバッファメモリを空のデータで占有させ、元のメインルーチンに戻る。
【００２９】
図８は図１の通信システム１００における受信側装置のＴＣＰ処理部によって実行されるＴＣＰレイヤの確認応答処理を示すフローチャートである。
【００３０】
図８において、ステップＳ３１において受信したパケットのシーケンス番号を取得してシーケンス番号ｓｅｑｎｏに代入し、次いで、ステップＳ３２においてパケットエラーを示すフラグＥＬＮ＝１であるか否かが判断され、ＹＥＳのときはステップＳ３３に進む一方、ＮＯのときはステップＳ３８に進む。ステップＳ３３において、ＥＬＮビットをＡＣＫパケット信号に付与することを表すフラグａｃｋ＿ｅｌｎ＿ｂｉｔに１をセットし、ステップＳ３４において、パケットエラーによる再送が発生していることを表すフラグａｃｋ＿ｅｌｎ＿ｂｕｆｆｅｒに１をセットし、ステップＳ３５において、再送要求するパケットのシーケンス番号ｓｅｑＮｏを表すａｃｋ＿ｅｌｎ＿ｎｏにシーケンス番号ｓｅｑｎｏを代入し、ステップＳ３６に進む。ステップＳ３６では、図９のサブルーチンであるａｃｋ（ｐｋｔ）処理（ここで、ｐｋｔは受信したパケット信号のパケットオブジェクトである。）を実行し、ステップＳ３７においてＡＣＫ信号を相手先装置に送信して当該確認応答処理を終了する。
【００３１】
一方、ステップＳ３８では、ｓｅｑｎｏ＝ｎｅｘｔであるか否かが判断され、ＹＥＳのときはステップＳ３９に進む一方、ＮＯのときはステップＳ４２に進む。ここで、ｎｅｘｔは受信側装置のＴＣＰ処理部が要求するシーケンス番号であって、後述するＡＣＫ作成前処理において受信ウィンドウの更新処理において当該変数ｎｅｘｔが更新される。
【００３２】
ステップＳ３９においてフラグａｃｋ＿ｅｌｎ＿ｂｕｆｆｅｒに０がセットされ、ステップＳ４０においてフラグａｃｋ＿ｅｌｎ＿ｂｉｔに０がセットされ、ステップＳ４１においてＡＣＫ作成前処理を実行してステップＳ３６に進む。ＡＣＫ作成前処理では、受信したパケット信号からデータサイズを取得し、受信したパケット信号に基づいて、タイムスタンプｔｓと、受信ウィンドウの更新処理を実行する。
【００３３】
また、ステップＳ４２においてフラグａｃｋ＿ｅｌｎ＿ｂｕｆｆｅｒ＝１であるか否かが判断され、ＹＥＳのときはステップＳ４３に進む一方、ＮＯのときはそのままステップＳ４１に進む。ステップＳ４３においてフラグａｃｋ＿ｅｌｎ＿ｂｉｔを１にセットし、ステップＳ４１に進む。
【００３４】
図９は図８のサブルーチンであるａｃｋ（ｐｋｔ）処理を示すフローチャートである。
【００３５】
図９において、まず、ステップＳ５１においてＡＣＫ用パケット信号の作成処理を実行して、パケットの領域を確保し、ステップＳ５２においてフラグａｃｋ＿ｅｌｎ＿ｂｉｔ＝１であるか否かが判断され、ＹＥＳのときはステップＳ５３に進む一方、ＮＯのときはステップＳ５４に進む。ステップＳ５３においてＡＣＫ信号ヘッダにＥＬＮビット（＝１）をセットした後、ステップＳ５４に進む。さらに、ステップＳ５４においてフラグａｃｋ＿ｅｌｎ＿ｂｕｆｆ＝１であるか否かが判断され、ＹＥＳのときはステップＳ５５に進む一方、ＮＯのときはステップＳ５６に進む。ステップＳ５５では、ＡＣＫ信号のシーケンス番号にフラグａｃｋ＿ｅｌｎ＿ｎｏをセットし、ステップＳ５７に進む。一方、ステップＳ５６においては、ＡＣＫ信号のシーケンス番号に（ｎｅｘｔ−１）をセットし、ステップＳ５７に進む。ステップＳ５７においてＡＣＫ信号にタイムスタンプｔｓを設定し、ステップＳ５８においてパケット信号のＩＰヘッダからフローＩＤを取得し、ステップＳ５９においてフローＩＤをＡＣＫ信号のＩＰヘッダにコピーし、元のメインルーチンに戻る。
【００３６】
図１０は図１の通信システム１００における送信側装置のＴＣＰ処理部によって実行されるＴＣＰレイヤの輻輳処理を示すフローチャートである。
【００３７】
図１０において、まず、ステップＳ６１においてＡＣＫ信号を受信し、ステップＳ６２においてＡＣＫのシーケンス番号をａｃｋｎｏに代入し、ステップＳ６３においてフラグＥＲＲＯＲ＿ｎｏｕｃｏｕｎｔを１だけインクリメントする。ここで、フラグＥＲＲＯＲ＿ｎｏｕｃｏｕｎｔはプロトコル規約においてコメントが無く、プログラムでも使用されていないために本実施形態では実質的に考慮しないフラグである。次いで、ステップＳ６４においてＡＣＫ信号のタイムスタンプをｔｓ＿ｐｅｅｒ＿に代入し、ステップＳ６５に進む。ここで、タイムスタンプｔｓ＿ｐｅｅｒ＿は、受信側装置のＴＣＰ処理部でパケット信号を受信したときのタイムスタンプである。
【００３８】
次いで、ステップＳ６５においてＥＬＮ＝１であるか否かが判断され、ＹＥＳのときはステップＳ６６に進む一方、ＮＯのときはステップＳ７０に進む。ステップＳ６６においてｐｒｅｖ＿ａｃｋｎｏ＝ａｃｋｎｏであるか否かが判断され、ＹＥＳのときは当該輻輳処理を終了する一方、ＮＯのときはステップＳ６７に進む。ここで、ｐｒｅｖ＿ａｃｋｎｏは再送の重複を回避するために設けられた再送するシーケンス番号である。そして、ステップＳ６７において再送タイマの設定処理を実行し、ステップＳ６８においてパケット信号の出力処理を実行し、ステップＳ６９において再送したシーケンス番号ｐｒｅｖ＿ａｃｋｎｏにａｃｋｎｏを代入し、当該輻輳処理を終了する。
【００３９】
ステップＳ７０では、ＥＬＮビットがセットされた最初のＡＣＫ信号以外を計算の対象とし、受信したＡＣＫ信号の総数を表すトレース用変数ｎａｃｋｐａｃｋを１だけインクリメントし、ステップＳ７１においてａｃｋｎｏ＞ｌａｓｔａｃｋ＿（最後に受信したＡＣＫ信号のシーケンス番号）であるか否かが判断され、ＹＥＳのときはステップＳ７２に進む一方、ＮＯのときはステップＳ７６に進む。ステップＳ７２において、最後に受信したＡＣＫ信号のシーケンス番号ｌａｓｔａｃｋ＿にａｃｋｎｏを代入し、ステップＳ７３において再送するシーケンス番号ｐｒｅｖ＿ａｃｋｎｏにａｃｋｎｏを代入し、ステップＳ７４に進む。ステップＳ７４において、重複したＡＣＫ信号（３回目以降のＡＣＫ信号）を示すＤｕｐＡＣＫ信号を受信したか否かが判断され、ＹＥＳのときは当該輻輳処理を終了する一方、ＮＯのときはステップＳ７５に進み、新しいパケット信号を送信した後、当該輻輳処理を終了する。
【００４０】
また、ステップＳ７６においてａｃｋｎｏ＝ｌａｓｔａｃｋ＿であるか否かが判断され、ＹＥＳのときはステップＳ７７に進む一方、ＮＯのときはそのままステップＳ７４に進む。ステップＳ７７では、輻輳ウィンドウサイズのパラメータｃｗｎｄにｃｗｎｄ／２を代入し、ウィンドウ縮小通知パラメータＣＷＲに１を代入し、スロースタートを実行するしきい値のパラメータｓｓｔｈｒｅｓｈにｓｓｔｈｒｅｓｈ／２を代入する。次いで、ステップＳ７８において再送タイマの設定処理を実行し、ステップＳ７９においてパケット信号の出力処理を実行し、ステップＳ７４に進む。
【００４１】
以上のように構成された通信システム１００の動作例について、図１１乃至図１４のタイミングチャートを参照して以下に説明する。
【００４２】
図１１は、図１の通信システム１００における正常処理であって、送信側ＴＣＰ処理部と受信側ＴＣＰ処理部との間で送受信されるパケット信号とＡＣＫ信号を示すタイミングチャートである。
【００４３】
図１１において、送信側ＴＣＰ処理部は、ｎ個のパケットを番号１、２、…、ｎの順で受信側ＴＣＰ処理部へ送信する。受信側ＴＣＰ処理部は、番号１のパケット信号を受信すると、番号１のパケット信号を受信したことを示す確認応答信号ＡＣＫ１を送信側ＴＣＰ処理部へ送信する。番号２、３、…、ｎのパケット信号についても、同様に、確認応答ＡＣＫ２、ＡＣＫ３、…、ＡＣＫｎを送信側ＴＣＰ処理部へ送信する。一方、送信側ＴＣＰ処理部は、確認応答信号ＡＣＫ１、ＡＣＫ２、…、ＡＣＫｎを受信することにより、番号１、２、…、ｎのパケット信号が受信側ＴＣＰ処理部へ送信されたことを認識する。そして、送信側ＴＣＰ処理部が番号１のパケット信号を受信側ＴＣＰ処理部へ送信してから番号１のパケット信号を受信したことを示す確認応答信号ＡＣＫ１を受信側ＴＣＰ処理部から受信するまでの間に、送信側ＴＣＰ処理部が受信側ＴＣＰ処理部へ送信するパケット信号の個数ｎを送信ウィンドウという。従って、送信側ＴＣＰ処理部から送信されたパケット信号が確実に受信側ＴＣＰ処理部に到達するのであれば、送信ウィンドウが大きいほど、通信効率は高い。このように、コネクション型の通信システムにおいては、送信側は、受信側との間でパケット信号の送信と確認応答信号の受信とを行ないながら複数のパケット信号を受信側へ送信する。
【００４４】
従って、情報を複数のパケット信号に分割し、その分割した複数のパケット信号を通信端末装置１０から携帯無線端末装置３０へ送信するとき、通信端末装置１０は、ｎ個のパケット信号を番号１、２、…、ｎの順で有線回線４０、基地局通信装置２０、及び無線回線５０を介して携帯無線端末装置３０へ送信する。そして、携帯無線端末装置３０は、番号１、２、…、ｎのパケット信号を受信すると、確認応答ＡＣＫ１、ＡＣＫ２、…、ＡＣＫｎを無線回線５０、基地局通信装置２０及び有線回線４０を介して通信端末装置１０へ送信する。
【００４５】
図１２は、図１の通信システム１００における動作例の第１のケースであって、１つの送信ウィンドウに無線リンクロスが１個発生する場合における送信側ＴＣＰ処理部と受信側ＴＣＰ処理部との間で送受信されるパケット信号とＡＣＫ信号を示すタイミングチャートである。
【００４６】
図１２において、受信側ＴＣＰ処理部がＡｃｋ２（ＥＬＮ）信号を用いてこのＥＬＮビットにより無線リンクロスの発生を送信側ＴＣＰ処理部に知らせると同時に、パケット２信号の再送を要求する。一方、送信側ＴＣＰ処理部では、Ａｃｋ２（ＥＬＮ）信号を受信すると、ＤｕｐＡｃｋ信号を待たず、直ちにパケット２信号の再送のみを行う。この再送にあたり、輻輳ウインドウ制御を行わない。
【００４７】
図１３は、図１の通信システム１００における動作例の第２のケースであって、１つの送信ウィンドウに送信リンクロスが２個発生する場合における送信側ＴＣＰ処理部と受信側ＴＣＰ処理部との間で送受信されるパケット信号とＡＣＫ信号を示すタイミングチャートである。
【００４８】
図１３において、受信側ＴＣＰ処理部においては、パケット２信号の再送が届かない限り、Ａｃｋ２（ＥＬＮ）信号を送信側ＴＣＰ処理部に送りつづけるが、ＭＡＣレイヤのＭＡＣ処理部から新たな無線エラーのパケット４信号が送られると、Ａｃｋ４（ＥＬＮ）信号に変化させて送信側ＴＣＰ処理部に送信する。一方、送信側ＴＣＰ処理部では、Ａｃｋ２（ＥＬＮ）信号を受け取ると、直ちにパケット２信号の再送を行うが、輻輳ウィンドウ制御を行わない。また、同様に、送信側ＴＣＰ処理部は、Ａｃｋ４（ＥＬＮ）信号を受け取ると、直ちにパケット４信号の再送のみを行う。
【００４９】
図１４は図１の通信システム１００における動作例の第３のケースであって、１つの送信ウィンドウに無線リンクロスと輻輳によるパケットロスがそれぞれ１個ずつ発生する場合における送信側ＴＣＰ処理部と受信側ＴＣＰ処理部との間で送受信されるパケット信号とＡＣＫ信号を示すタイミングチャートである。
【００５０】
図１４において、無線リンクロスに対してのみ、図１２の第１のケースと同じ処理を行うが、ＥＬＮビット＝０のパケットロスに対して、従来と同様にＤｕｐＡｃｋ信号によって再送を行い、輻輳制御も同時に行う。
【００５１】
【実施例】
本発明者らは、本実施形態で提案した新たなＥＬＮ方式の有効性を検証するため、ネットワークシミュレータＮＳ−２（例えば、従来技術文献５「UCB/LBNL/VINT Network Simulator ns (version2), http://www.isi.edu/nsnam/ns/, July 2002」を用いて、計算機シミュレーション実験を行った。実験で用いたネットワークモデルは図１５に示す。図１５に示すように、有線回線４０では、データ伝送速度１０Ｍｂｐｓであって、遅延時間を２ｍｓｅｃに設定し、無線回線４０では、データ伝送速度２Ｍｂｐｓであって、遅延時間を２ｍｓｅｃに設定した。
【００５２】
図１６は図１５のネットワークモデルにおけるシミュレーション結果であって、従来法と実施形態による方法とに係る、信号対干渉雑音電力比（ＳＩＮＲ）に対するＴＣＰの平均シーケンス数を示すグラフである。比較例の従来法として以下の２つを用いる。
（１）従来技術文献６「W. R. Stevens, "TCP slow start congestion avoidance, fast retransmission and fast recovery algorithms", RFC2001, January 1997」において開示されたＴＣＰ−Ｒｅｎｏ法：早期再送と早期回復を導入することによりオリジナルのＴａｈｏｅ  ＴＣＰ法より性能を大幅に改善された方法であるが、１つの送信ウインドウにおいて複数のパケットロスを生じる場合において、早期再送状態に入ることができなく、タイムアウトが待たなければいけないという欠点があった。
（２）従来技術文献７「M. Mathis et al., "TCP selective acknowledgement options", RFC2018, October 1996」において開示されたＴＣＰ−Ｓａｃｋ法：Ｓａｃｋ−ｏｐｔｉｏｎにＡＣＫ信号を付与することにより、いち早く複数のパケットロスを送信側装置に知らせて、早期再送と早期回復することにより性能改善を行ったものである。
【００５３】
当該シミュレーションにおいて、ビットエラーモデルはＤＰＳＫ信号の平均エラーレートを用いた。図１６から明らかなように、ＳＮＲが８．５ｄＢ〜１０．５ｄＢの範囲において実施形態に係る方法の平均シーケンス数（Ｋｂｙｔｅｓ、８０秒間、１００回）は、従来技術のＴＣＰ−Ｒｅｎｏ法及びＴＣＰ−Ｓａｃｋ法に比べて、最大１１倍（以下の表１を参照。）ほど向上したことが分かった。
【００５４】
【表１】
0003665309.tif 000002
【００５５】
以上説明したように、本実施形態によれば、送信側装置である通信端末装置１０から有線回線４０及び無線回線５０を介して受信側装置である携帯無線通信装置５０に情報を含むパケット信号を伝送する通信システムにおいて、通信端末装置１０は、ＴＣＰレイヤでの信号処理を実行するＴＣＰ処理部を備え、携帯無線通信装置５０は、ＭＡＣレイヤでの信号処理を実行するＭＡＣ処理部と、ＴＣＰレイヤでの信号処理を実行するＴＣＰ処理部とを備える。ここで、携帯無線通信装置５０は、受信したパケット信号においてＭＡＣ処理部でのビットエラーによるパケットロスが発生しているときに、無線回線のパケットロスを明示的に通知するＥＬＮ（Explicit Loss Notification）ビットをセットし、受信したパケット信号を無効にすると同時に、ＥＬＮビットを含むパケット信号をＭＡＣ処理部からＴＣＰ処理部に送り、これに応答して、ＥＬＮビットを含む応答確認信号をＴＣＰ処理部から通信端末装置１０のＴＣＰ処理部に送信する。次いで、通信端末装置１０のＴＣＰ処理部は、ＥＬＮビットを含む応答確認信号に応答して、これに対応するパケット信号を受信側装置のＴＣＰ処理部に再送し、ここで、輻輳ウィンドウは変化させない。さらに、携帯無線通信装置５０のＴＣＰ処理部は、上記再送されたパケット信号を受信するまで、携帯無線通信装置５０のＭＡＣ処理部から新たなＥＬＮビットを含むパケット信号が到着しない限り、ＥＬＮビットを含む応答確認信号を送信側装置のＴＣＰ処理部に送り続けることを特徴としている。
【００５６】
従って、本実施形態によれば、中継装置である基地局通信装置２０に余計な負荷を掛けないうえ、無線リンクロスを完全にＴＣＰレイヤに通知することにより、不必要な送信速度の抑制を解消するとともに、無線リンクエラーによるパケットロスを直ちに再送することを実現できる。それにより、無線環境におけるＴＣＰのスループット性能を大幅に向上することができ、基地局通信装置のない無線アドホックネットワークにおいても本実施形態に係る方法を容易に適用することができる。
【００５７】
以上の実施形態においては、送信側装置と受信側装置はそれぞれ少なくともＭＡＣ処理部とＴＣＰ処理部とを備えているが、本発明はこれに限らず、これら２つの処理部は、所定の信号処理を実行する信号処理部であってもよい。
【００５８】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した実施の形態の説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。
【００５９】
【発明の効果】
以上詳述したように本発明によれば、送信側装置から有線回線及び無線回線を介して受信側装置に情報を含むパケット信号を伝送する通信システムにおいて、
送信側装置は、所定の信号処理を実行する信号処理部を備え、
受信側装置は、所定の信号処理を実行する信号処理部を備え、
受信側装置の信号処理部は、受信したパケット信号においてビットエラーによるパケットロスが発生しているときに、無線回線のパケットロスを明示的に通知するＥＬＮ（Explicit Loss Notification）ビットをセットし、受信したパケット信号を無効にすると同時に、ＥＬＮビットを含むパケット信号を発生し、これに応答して、ＥＬＮビットを含む応答確認信号を送信側装置の信号処理部に送信し、
送信側装置の信号処理部は、ＥＬＮビットを含む応答確認信号に応答して、これに対応するパケット信号を受信側装置の信号処理部に再送し、ここで、輻輳ウィンドウは変化させず、
次いで、受信側装置の信号処理部は、上記再送されたパケット信号を受信するまで、新たなＥＬＮビットを含むパケット信号が到着しない限り、ＥＬＮビットを含む応答確認信号を送信側装置の信号処理部に送り続ける。
【００６０】
従って、本発明によれば、基地局通信装置に余計な負荷を掛けないうえ、無線リンクロスを完全にＴＣＰレイヤに通知することにより、不必要な送信速度の抑制を解消するとともに、無線リンクエラーによるパケットロスを直ちに再送することを実現できる。それにより、無線環境におけるＴＣＰのスループット性能を大幅に向上することができ、基地局通信装置のない無線アドホックネットワークにおいても本発明に係る方法を容易に適用することができる。
【図面の簡単な説明】
【図１】  本発明に係る一実施形態である通信システム１００の構成を示すブロック図である。
【図２】  図１の通信端末装置１０の構成を示すブロック図である。
【図３】  図１の携帯無線端末装置３０の構成を示すブロック図である。
【図４】  従来技術のＯＳＩ参照モデル６０に対応して、図１の通信システム１００に用いる通信プロトコルを示す図である。
【図５】  図１の通信システム１００における受信側装置のＭＡＣ処理部によって実行されるＭＡＣレイヤ受信処理（概略フロー）を示すフローチャートである。
【図６】  図１の通信システム１００における受信側装置のＭＡＣ処理部によって実行されるＭＡＣレイヤ受信処理（詳細フロー）を示すフローチャートである。
【図７】  図６のサブルーチンであるパケット信号の比較処理を示すフローチャートである。
【図８】  図１の通信システム１００における受信側装置のＴＣＰ処理部によって実行されるＴＣＰレイヤの確認応答処理を示すフローチャートである。
【図９】  図８のサブルーチンであるａｃｋ（ｐｋｔ）処理を示すフローチャートである。
【図１０】  図１の通信システム１００における送信側装置のＴＣＰ処理部によって実行されるＴＣＰレイヤの輻輳処理を示すフローチャートである。
【図１１】  図１の通信システム１００における正常処理であって、送信側ＴＣＰ処理部と受信側ＴＣＰ処理部との間で送受信されるパケット信号とＡＣＫ信号を示すタイミングチャートである。
【図１２】  図１の通信システム１００における動作例の第１のケースであって、１つの送信ウィンドウに送信リンクロスが１個発生する場合における送信側ＴＣＰ処理部と受信側ＴＣＰ処理部との間で送受信されるパケット信号とＡＣＫ信号を示すタイミングチャートである。
【図１３】  図１の通信システム１００における動作例の第２のケースであって、１つの送信ウィンドウに送信リンクロスが２個発生する場合における送信側ＴＣＰ処理部と受信側ＴＣＰ処理部との間で送受信されるパケット信号とＡＣＫ信号を示すタイミングチャートである。
【図１４】  図１の通信システム１００における動作例の第３のケースであって、１つの送信ウィンドウに無線リンクロスと輻輳によるパケットロスがそれぞれ１個ずつ発生する場合における送信側ＴＣＰ処理部と受信側ＴＣＰ処理部との間で送受信されるパケット信号とＡＣＫ信号を示すタイミングチャートである。
【図１５】  図１の通信システム１００のシミュレーションのためのネットワークモデルを示すブロック図である。
【図１６】  図１５のネットワークモデルにおけるシミュレーション結果であって、従来法と実施形態による方法とに係る、信号対雑音電力比（ＳＮＲ）に対するＴＣＰの平均シーケンス数を示すグラフである。
【符号の説明】
１０…通信端末装置、
２０…基地局通信装置、
３０…携帯無線端末装置、
４０…有線回線、
５０…無線回線、
６０…ＯＳＩ参照モデル、
７０…通信プロトコル、
１００…通信システム、
１０１…接続端子、
１０２…インターフェース、
１０３，３０２…送受信部、
１０４，３０５…コントローラ、
１０５，３０６…キー操作部、
１０６，３０８…情報処理部、
１０８，３０９…記憶部、
１０９，３０７…表示部、
３０１…アンテナ。
【図１】
0003665309.tif 000003
【図２】
0003665309.tif 000004
【図３】
0003665309.tif 000005
【図４】
0003665309.tif 000006
【図５】
0003665309.tif 000007
【図６】
0003665309.tif 000008
【図７】
0003665309.tif 000009
【図８】
0003665309.tif 000010
【図９】
0003665309.tif 000011
【図１０】
0003665309.tif 000012
【図１１】
0003665309.tif 000013
【図１２】
0003665309.tif 000014
【図１３】
0003665309.tif 000015
【図１４】
0003665309.tif 000016
【図１５】
0003665309.tif 000017
【図１６】
0003665309.tif 000018