(57)【特許請求の範囲】
【請求項１】
ハードウェア処理及びソフトウェア処理によりＴＣＰ／ＩＰ（Transport Control Protocol/Internet Protocol）データ送信を行うＴＣＰ送信制御装置であって、
データ送信のためにオープンされたＴＣＰセッションがＴＣＰセグメントの連結送信処理を利用するか否かを判定するＴＳＯ（TCP Segmentation Offload）制御手段と、
前記ＴＣＰセッションで用いられるセッション識別子と、前記ＴＳＯ制御手段から通知された連結送信処理の利用情報と、前記ＴＣＰセグメントの最大連結数を管理し、ＴＣＰセッション単位でＴＳＯ動作を個別にＯＮ／ＯＦＦ設定し、ＴＳＯ機能を有効化／停止する連結管理手段と、を備え、
前記連結管理手段は、管理する前記最大連結数に基づいて、輻輳ウインドウサイズの値の低下を抑制するＴＣＰ送信制御装置。
【請求項２】
前記ＴＣＰセッションにおける送信データパケットの欠落を監視し、欠落が発生したＴＣＰセッションのＴＣＰセグメントの連結送信処理の利用情報を無効にし、ＴＣＰスロースタートフェーズを終了して輻輳回避フェーズに遷移後、前記利用情報を有効化する要求を前記連結管理手段に通知して連結送信処理を継続させる輻輳状態監視手段と、
を更に備える請求項１記載のＴＣＰ送信制御装置。
【請求項３】
前記ＴＣＰセッションにおける送信データの書き込み間隔を監視する送信バッファ監視手段と、
前記送信データの書き込み間隔がＴＣＰの再送タイムアウト時間を上回るとき、前記再送タイムアウト時間を前記書き込み間隔以上になるようにタイムアウト時間を変更するＲＴＯ閾値制御手段と、
を更に備える請求項１記載のＴＣＰ送信制御装置。
【請求項４】
前記連結管理手段は、輻輳ウインドウサイズの変動にあわせてＴＳＯ動作のＯＮ／ＯＦＦを決定する請求項１記載のＴＣＰ送信制御装置。
【請求項５】
ハードウェア処理及びソフトウェア処理によりＴＣＰ／ＩＰデータ送信を行うＴＣＰ送信制御方法であって、
データ送信のためにオープンされたＴＣＰセッションがＴＣＰセグメントの連結送信処理を利用するか否かを判定するステップと、
前記ＴＣＰセッションで用いられるセッション識別子と、前記ＴＳＯ制御手段から通知された連結送信処理の利用情報と、前記ＴＣＰセグメントの最大連結数を管理し、ＴＣＰセッション単位でＴＳＯ動作を個別にＯＮ／ＯＦＦ設定し、ＴＳＯ機能を有効化／停止する管理ステップと、
を有し、
前記管理ステップでは、管理する前記最大連結数に基づいて、輻輳ウインドウサイズの値の低下を抑制するＴＣＰ送信制御方法。
【請求項６】
前記ＴＣＰセッションにおける送信データパケットの欠落を監視するステップと、
欠落が発生したＴＣＰセッションのＴＣＰセグメントの連結送信処理の利用情報を無効にし、ＴＣＰスロースタートフェーズを終了して輻輳回避フェーズに遷移後、前記利用情報を有効化する要求を通知して連結送信処理を継続させるステップと、
を更に有する請求項５記載のＴＣＰ送信制御方法。
【請求項７】
前記ＴＣＰセッションにおける送信データの書き込み間隔を監視するステップと、
前記送信データの書き込み間隔がＴＣＰの再送タイムアウト時間を上回るとき、前記再送タイムアウト時間を前記書き込み間隔以上になるようにタイムアウト時間を変更するステップと、
を更に有する請求項５記載のＴＣＰ送信制御方法。
【請求項８】
前記管理ステップでは、輻輳ウインドウサイズの変動にあわせてＴＳＯ動作のＯＮ／ＯＦＦを決定する請求項５記載のＴＣＰ送信制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＴＣＰ（Transport Control Protocol）送信制御装置及びＴＣＰ送信制御方法に関し、特に、ＴＣＰ／ＩＰ（Transport Control Protocol/Internet Protocol）ネットワークを介してデータ送信を行う場合の効率的な送信制御方法の改良に関する。
【背景技術】
【０００２】
インターネット上でＴＣＰによるデータ配信を行う場合、遅延やジッタ、パケットロス等の様々な要因によるネットワーク状況の変化・差異を考慮しなければならない。また、受信側端末に関しても、能力の高いものから低いものまで、幅広い範囲の端末への対応を想定する必要がある。これまでの一般的なＴＣＰスタックは、通信端末としてＰＣ（Personal Computer）を想定した送信制御パラメータを用いて、ベストエフォート（Best Effort）でのデータ配信を実現していた。
【０００３】
このようなソフトウェアにより具現化されたＴＣＰ／ＩＰ通信においては、プロトコル処理をＯＳ制御下のソフトウェア処理が実行するため、端末全体のＣＰＵ処理負荷が向上し、かつ他の優先処理の実行にプロトコル処理が阻害され、接続状態中のアプリケーションデータの通信がリアルタイム性を保証することが困難である場合がある。このような現象を回避するために、図１のように、近年ではハードウェア（ＮＰＵ：Network Processing Unitとも呼ばれる）を用いてＴＣＰ／ＩＰ通信におけるプロトコル処理を実現する端末が登場している。
【０００４】
図１は、従来のＴＣＰ／ＩＰを用いた通信端末の構成を示す図である。
【０００５】
図１に示すように、ＴＣＰ／ＩＰを用いた通信端末は、例えばＰＣ（Personal Computer），ＰＤＡ（Personal Digital Assistants）などのローエンド／ミドルエンド機１０と、商用システムサーバ等のハイエンド機２０とから構成される。
【０００６】
ローエンド／ミドルエンド機１０は、ユーザがアプリケーション実行を指示すると、ＯＳ制御下のカーネル（Kernel）が、各プロトコル処理を順次実行する。図１では、カーネルは、アプリケーション指示に従って送信処理では、ＴＣＰ層の全機能を処理し、ＩＰ層の全機能を処理する。そしてネットワークデバイスドライバ、及びネットワークデバイスがＴＣＰ／ＩＰ通信におけるプロトコル処理に従った送信を実行する。受信処理は、送信処理の逆の流れとなる。
【０００７】
一方、ハイエンド機２０は、ユーザがアプリケーション実行を指示すると、ＯＳ制御下のカーネル（Kernel）が、各プロトコル処理を順次実行する。但し、ＴＣＰ層の全機能処理及びＩＰ層の全機能処理は、ネットワークプロセッサ（ＮＰＵ）にハードウェア（ＨＷ）実装されている。
【０００８】
このように、ＴＣＰ／ＩＰを利用した通信は現在ソフトウェアに具現され様々なシステムに導入されている。ハイエンド機２０では、ＴＣＰ／ＩＰをハードウェアで処理するＮＰＵの導入も実現されている。ＯＳで行う処理をハードウェアにより行うため、スループットの向上やＣＰＵ負荷の低減を図ることができる。
【０００９】
特許文献１には、ＴＣＰ／ＩＰをハードウェア的に処理する装置が記載されている。特許文献１に記載の装置は、接続状態におけるアプリケーションデータの通信のためのプロトコル処理を、ＯＳの制御とは独立した状態で実行できるハードウェアによるプロトコル
スタックを提供する。
【００１０】
特許文献２には、オフロードユニットを使用したＴＣＰ接続のためのデータ処理方法が記載されている。特許文献２に記載の方法は、アプリケーションデータの送信を従来のＴＣＰセグメント単位の送信ではなく、複数のセグメントを連結して一括でハードウェアに送信要求を行うソフトウェア機能、及び一括で受け取った連結セグメントをＴＣＰの送信セグメントに再分割してネットワークに連続送出するハードウェアを有する。これにより、ＴＣＰ／ＩＰ通信のプロトコル処理の効率化を実現しようとする。
【００１１】
一度に連結できるＴＣＰセグメントの最大数は、輻輳ウインドウサイズを参照して、その時のサイズを上限値として決定される。輻輳ウインドウサイズは、ＴＣＰ層により保持される内部の変数であり、送信できるセグメントのサイズを表す。このサイズはネットワーク状況の変化にあわせて常に変動している。上記ＴＣＰセグメントを連結して一度に送出する機能は、ＴＳＯ（TCP Segmentation Offload）と呼ばれている。ＴＳＯは、ＴＣＰのセグメンテーション処理の一部又は全部をハード（ＮＩＣ）で行う機能である。ＯＳで行う処理を部分的にハードで行うため、スループットの向上やＣＰＵ負荷の低減が期待することができる。
【００１２】
このように、ソフトウェアがＴＣＰセグメントの処理を単一のＴＣＰセグメント単位で行うのではなく、複数のＴＣＰセグメントを一回分の処理量として一括処理するものがある。ソフトウェアが複数のＴＣＰセグメントを一括処理することにより、送信時におけるＯＳ制御下のソフトウェア処理量（ＣＰＵ処理負荷）を低減させることができる。
【先行技術文献】
【特許文献】
【００１３】
【特許文献１】特開２００３−１０２０５７号公報
【特許文献２】特開２００３−２２４６１９号公報
【発明の概要】
【発明が解決しようとする課題】
【００１４】
しかしながら、このような従来のＴＣＰ／ＩＰ通信装置にあっては、ソフトウェア処理とハードウェア処理のＴＣＰ／ＩＰ通信のプロトコル処理における機能分割が、汎用的な用途を主体（一般のＰＣ等を想定）としているため、用途固定の組み込み機器や送信データの通信方法に一定の規則性のあるアプリケーション等では、ＴＣＰ／ＩＰ通信の送信性能を十分に発揮することが困難であるという課題があった。
【００１５】
本発明の目的は、間欠的な送信方法を利用するアプリケーションにおける、ＴＣＰ送信処理の効率化を実現するＴＣＰ送信制御装置及びＴＣＰ送信制御方法を提供することである。
【課題を解決するための手段】
【００１６】
本発明の一態様に係るＴＣＰ送信制御装置は、ハードウェア処理及びソフトウェア処理によりＴＣＰ／ＩＰデータ送信を行うＴＣＰ送信制御装置であって、データ送信のためにオープンされたＴＣＰセッションがＴＣＰセグメントの連結送信処理を利用するか否かを判定するＴＳＯ制御手段と、前記ＴＣＰセッションで用いられるセッション識別子と、前記ＴＳＯ制御手段から通知された連結送信処理の利用情報と、前記ＴＣＰセグメントの最大連結数を管理し、ＴＣＰセッション単位でＴＳＯ動作を個別にＯＮ／ＯＦＦ設定し、ＴＳＯ機能を有効化／停止する連結管理手段と、を備え、前記連結管理手段は、管理する前記最大連結数に基づいて、輻輳ウインドウサイズの値の低下を抑制する構成を採る。
【００１７】
本発明の一態様に係るＴＣＰ送信制御方法は、ハードウェア処理及びソフトウェア処理によりＴＣＰ／ＩＰデータ送信を行うＴＣＰ送信制御方法であって、データ送信のためにオープンされたＴＣＰセッションがＴＣＰセグメントの連結送信処理を利用するか否かを判定するステップと、前記ＴＣＰセッションで用いられるセッション識別子と、前記ＴＳＯ制御手段から通知された連結送信処理の利用情報と、前記ＴＣＰセグメントの最大連結数を管理し、ＴＣＰセッション単位でＴＳＯ動作を個別にＯＮ／ＯＦＦ設定し、ＴＳＯ機能を有効化／停止する管理ステップと、を有し、前記管理ステップでは、管理する前記最大連結数に基づいて、輻輳ウインドウサイズの値の低下を抑制する。
【発明の効果】
【００１８】
本発明によれば、ＴＣＰセッションで用いられるセッション識別子と、ＴＣＰセグメントの連結送信処理の利用情報と、ＴＣＰセグメントの最大連結数とをＴＣＰセッション毎に管理することにより、ソフトウェア処理とハードウェア処理を効率的に用いて、ＴＣＰ／ＩＰ通信のデータ送信の効率化を図ることができる。具体的には、以下の効果を奏する。
【００１９】
（１）アプリケーション（セッション）毎に、ＴＣＰセグメントの連結送信機能の利用可否を決定することができ、機器特性に応じた効率的なＴＣＰ通信を行うことができる。
【００２０】
（２）パケットロスによるネットワークの輻輳を検出した場合、セッションのパケットロスの修復処理が終了した後に、複数セグメントの連結送信機能を有効にすることができ、ネットワーク状況の変化によるパケットロス処理のＣＰＵ負荷上昇を抑え、効率的なＴＣＰ通信を行うことができる。
【００２１】
（３）間欠的な送信方法を利用するアプリケーションの場合、輻輳ウインドウサイズの低下を抑制することができ、複数セグメントの連結送信数の低下を防ぐことにより送信性能を維持し、効率的なＴＣＰ通信を行うことができる。
【００２２】
例えば、パケットロスが発生した以降の送信処理や間欠的な送信方法を利用するアプリケーションの場合でも、ＯＳ制御下でのソフトウェア処理を抑え、ＣＰＵ負荷を低減した効率的なＴＣＰ通信を行うことが可能となる。
【図面の簡単な説明】
【００２３】
【図１】従来のＴＣＰ／ＩＰを用いた通信端末の構成を示す図
【図２】本発明の実施の形態１に係るＴＣＰ送信制御装置が用いられる通信端末の構成を示す図
【図３】上記実施の形態１に係るＴＣＰ送信制御装置の連結管理部が管理するＴＣＰ送信制御情報の構成例を示す図
【図４】上記実施の形態１に係るＴＣＰ送信制御装置のＴＣＰ処理部の構成を示す図
【図５】上記実施の形態１に係るＴＣＰ送信制御装置のＴＣＰ通信管理情報の一例を示す図
【図６】上記実施の形態１に係るＴＣＰ送信制御装置のアプリケーションの起動、ＴＣＰ送信制御情報２００の更新、及びメディアデータ等の送信開始の制御シーケンスを示す図
【図７】本発明の実施の形態２に係るＴＣＰ送信制御装置が用いられる通信端末の構成を示すブロック図
【図８】上記実施の形態２に係るＴＣＰ送信制御装置のネットワークの輻輳検出、ＴＳＯ機能停止、ＴＣＰの輻輳回復フェーズ、及びＴＳＯ機能回復の制御シーケンスを示す図
【図９Ａ】上記実施の形態２に係るＴＣＰ送信制御装置のＴＣＰ送信制御を説明する図
【図９Ｂ】上記実施の形態２に係るＴＣＰ送信制御装置のＴＣＰ送信制御を説明する図
【図１０】本発明の実施の形態３に係るＴＣＰ送信制御装置が用いられる通信端末の構成を示すブロック図
【図１１】上記実施の形態３に係るＴＣＰ送信制御装置の輻輳ウインドウサイズ抑制、ＴＳＯ機能の最大連結数維持、及び通信継続の制御シーケンスを示す図
【図１２Ａ】上記実施の形態３に係るＴＣＰ送信制御装置の輻輳ウインドウ制御を説明する図
【図１２Ｂ】上記実施の形態３に係るＴＣＰ送信制御装置の輻輳ウインドウ制御を説明する図
【発明を実施するための形態】
【００２４】
以下、本発明の実施の形態について図面を参照して詳細に説明する。
【００２５】
（実施の形態１）
図２は、本発明の実施の形態１に係るＴＣＰ送信制御装置が用いられる通信端末の構成を示す図である。本実施の形態のＴＣＰ送信制御装置は、ホームネットワークの送信端末に適用することができる。
【００２６】
図２に示すように、通信端末１００は、ＴＣＰ／ＩＰ通信をハードウェアとソフトウェアに処理を分離して構成する送信装置である。
【００２７】
通信端末１００は、ユーザに対する情報の入出力の制御を行うＵＩ（User Interface）制御部１０１と、ＴＣＰセグメントの連結送信機能の利用可否を決定するＴＳＯ制御部１０２と、ＴＳＯ制御部１０２からの連結送信機能に関する制御情報をアプリケーション（セッション）毎に管理する連結管理部１０３と、ＴＣＰ／ＩＰの送信バッファ制御を行う送信バッファ管理部１０４と、受信バッファ制御を行う受信バッファ管理部１０５と、ＴＣＰ／ＩＰ通信のデータ送信に対する確認応答処理を行うＡＣＫ処理部１０６と、確認応答に伴い次に送信できるＴＣＰセグメントを管理するＴＣＰ窓管理部１０７と、送信するＴＣＰセグメントをＩＰ層に転送するデータセグメント送信部１０８と、パケットのＩＰ層処理を実施するＩＰ層制御部１０９と、ネットワークデバイスを制御するデバイス制御部１１０と、外部ネットワークとの間で通信を行うネットワークデバイス１１１とを備えて構成される。
【００２８】
ＵＩ制御部１０１は、ユーザからのＴＳＯの利用可否の指示機能、音声や動画等のメディアデータの送信機能、及びその送信要求を受け付けたときに、ＴＳＯ制御部１０２へ送信開始要求を受け渡す機能を有する。
【００２９】
ＴＳＯ制御部１０２は、データ送信のためにオープンされたＴＣＰセッションがＴＣＰセグメントの連結送信処理を利用するか否かを判定する。
【００３０】
具体的には、ＴＳＯ制御部１０２は、ＵＩ制御部１０１からの送信開始要求を受け付けるとＴＳＯ設定情報（ＴＳＯのＯＮ／ＯＦＦ、及び最大連結数）として管理し、その情報を連結管理部１０３へ受け渡す機能を有する。ここでＴＳＯ設定情報は、ユーザからの指示による設定ではなく、通信端末１００内部で現状のセッション数等の状態から決定してもよい。
【００３１】
[ＴＳＯ設定情報がＯＦＦされる時の一例]
ＴＳＯ設定情報（ＯＮ／ＯＦＦ）の決定は、例えば端末内部で他の通信アプリケーションが実行されている場合などは、ＣＰＵ負荷やアプリケーション同士の通信の競合を考慮するためにＯＦＦに設定するなど、通信端末１００のシステム構成やその時の通信状態に依存して決定される。
【００３２】
連結管理部１０３は、前記ＴＣＰセッションで用いられるセッション識別子と、ＴＳＯ制御部１０２から通知された連結送信処理の利用情報とＴＣＰセグメントの最大連結数と
をＴＣＰセッション毎に前記情報の全てを管理する。
【００３３】
連結管理部１０３は、前記セッション識別子毎に、ＴＳＯ動作を個別にＯＮ／ＯＦＦ設定し、ＴＳＯ機能を有効化／停止する。
【００３４】
連結管理部１０３は、ＴＳＯ制御部１０２から受け取ったＴＳＯ設定情報をアプリケーション（セッション）毎にＴＣＰ送信制御情報２００として管理し、ＴＣＰ窓管理部１０７の輻輳ウインドウサイズの変動にあわせてＴＳＯ動作のＯＮ／ＯＦＦを決定する機能を有する。
【００３５】
送信バッファ管理部１０４は、ＵＩ制御部１０１から渡された実際の送信データを一時的に蓄積しておくバッファである。送信バッファ管理部１０４に格納された送信データは、データセグメント送信部１０８により順次取得されていく。
【００３６】
受信バッファ管理部１０５は、受信側端末から送られたデータをＩＰ層制御部１０９経由で一時的に蓄積しておくバッファである。受信バッファ管理部１０５に格納されたデータは、ＵＩ制御部１０１により順次取得されていく。
【００３７】
ＡＣＫ処理部１０６及びＴＣＰ窓管理部１０７は、一般的に、ＴＣＰ制御機能としてスロースタートや輻輳回避、早期再送、早期回復といったアルゴリズムを備えており、ネットワーク状況の変動やパケットのロスへの対応を行う機能を有する。また、ＴＣＰ窓管理部１０７は、輻輳ウインドウサイズを管理しており、パケットのロスをＡＣＫ処理部１０６が判断すると、管理している輻輳ウインドウサイズを縮小する。この縮小のためのアルゴリズムは、ＴＣＰの仕組みに従って制御される。
【００３８】
データセグメント送信部１０８は、ＴＣＰ通信管理情報３１０（後述する図５参照）を参照してＴＣＰセグメントの送信方法をＴＣＰ通信の基本動作にあわせてＩＰ層に転送する機能を有する。
【００３９】
ＩＰ層制御部１０９は、ＩＰのプロトコルスタックであり、データセグメント送信部１０８から渡される送信データを、ＩＰの仕組みに従って制御し、デバイス制御部１１０及びネットワークデバイス１１１を介して受信側端末へ配信する。
【００４０】
デバイス制御部１１０は、ネットワークデバイスを制御する。
【００４１】
ネットワークデバイス１１１は、デバイス制御部１１０から受けたデータを実際のネットワークへ送信する機能、及びネットワークから受信したデータをデバイス制御部１１０へ渡す機能を持つ。また、ネットワークデバイス１１１は、送信の際にＴＳＯが有効になっている場合は、連結されて受け取ったデータをＴＣＰセグメントの１サイズ分にそれぞれ分割してからネットワークへ送信する機能を有する。
【００４２】
図３は、連結管理部１０３が管理するＴＣＰ送信制御情報２００の構成例を示す図である。
【００４３】
ＴＣＰ送信制御情報２００は、連結管理部１０３がＴＣＰの通信状況を元に変更するデータベースである。ＴＣＰ送信制御情報２００は、連結管理部１０３が管理するＴＳＯ設定情報を元に作成され、データベースとして格納される。
【００４４】
図３に示すように、ＴＣＰ送信制御情報２００は、管理番号２０１毎に、セッション記述子２０２、ＴＳＯ動作２０３、及び最大連結数２０４を格納する。
【００４５】
ＴＣＰ送信制御情報２００は、管理番号２０１により通信端末１００がオープンしているセッション数を管理し、セッション記述子２０２によりＵＩ制御部１０１（アプリケーション）との紐付けを行う。ＴＳＯ動作２０３は、そのセッションでのＴＳＯ利用状況をＯＮ／ＯＦＦで管理する。最大連結数２０４は、一度に連結させるＴＣＰセグメントの最大数を管理し、ユーザからの指示によりＴＳＯ制御部１０２を経由して設定される。ユーザからの指示が無い場合は、通信中のネットワーク状況にあわせて変動するＴＣＰ窓管理部１０７の輻輳ウインドウサイズを元に決定される。これらの設定情報はＴＣＰ／ＩＰアプリケーションの送信側が制御するものである。
【００４６】
また、ＴＣＰ送信制御情報２００は、ユーザからの指示によりＴＳＯ制御部１０２を経由して変更してもよい。
【００４７】
図４は、ＴＣＰ処理部３００の構成を示す図である。
【００４８】
図４に示すように、ＴＣＰ処理部３００は、ＴＣＰ全般の通信を制御する。ＴＣＰ処理部３００は、図２のＡＣＫ処理部１０６、ＴＣＰ窓管理部１０７、データセグメント送信部１０８及び連結管理部１０３と、共通のデータベースであるＴＣＰ通信管理情報３１０とから構成される。
【００４９】
ＴＣＰ処理部３００は、共通のデータベースであるＴＣＰ通信管理情報３１０を参照／更新してＴＣＰ通信を制御する。
【００５０】
図５は、ＴＣＰ通信管理情報３１０の一例を示す図である。
【００５１】
図５に示すように、ＴＣＰ通信管理情報３１０は、ＴＣＰ全般の通信を制御するパラメータを管理しており、ＴＣＰ窓（輻輳ウインドウサイズ）の値やＴＳＯの動作設定（従来では全セッションに対して全てＯＮか全てＯＦＦの２択であった）、その他端末固有の設定値（例えばパケットロスが発生した時の再送回数値など）が管理される。ＴＣＰ通信管理情報３１０により管理されるパラメータは、端末に依存して様々な値が存在する。本実施の形態では、セッション記述子、ＴＣＰ窓、ＴＳＯ動作の３項目を対象とする。
【００５２】
以下、上述のように構成された送信装置を有する通信端末１００の動作を説明する。
【００５３】
通信端末１００が、アプリケーションの起動からＴＣＰ送信制御情報２００の更新を行い、その後、実際のメディアデータ等の送信を開始するまでの動作を、図６の制御シーケンスを用いて説明する。
【００５４】
図６は、アプリケーションの起動、ＴＣＰ送信制御情報２００の更新、及びメディアデータ等の送信開始の制御シーケンスを示す図である。
【００５５】
通信端末１００は、電源投入時にまずシステム全体の初期化を行う。この初期化には、各種常駐アプリケーションの初期化からネットワークデバイス１１１の初期化等が含まれる（Ｓ１０１参照）。
【００５６】
連結管理部１０３は、この電源投入時のタイミングでＴＣＰ送信制御情報２００の各パラメータを初期化し、通信アプリケーションの起動と送信開始のタイミングで通知されるＴＳＯ設定情報の受け取りができるように準備を行う（Ｓ１０２参照）。
【００５７】
通信アプリケーション起動後に、ＵＩ制御部１０１は、ユーザからの通信指示などを受
け付けると、ＴＳＯ制御部１０２に対して送信開始メッセージを発行する（Ｓ１０３参照）。
【００５８】
このメッセージを受信したＴＳＯ制御部１０２は、ＴＳＯ設定情報（ＴＳＯのＯＮ／ＯＦＦ、及び必要に応じて最大連結数）として管理し（Ｓ１０４参照）、その情報を連結管理部１０３へ通知する（Ｓ１０５参照）。
【００５９】
この通知を受けた連結管理部１０３は、ＴＣＰ送信制御情報２００（図３参照）として、新規の管理番号２０１（図３参照）を付与し、通知を受けたセッションのソケットＩＤをセッション記述子２０２（図３参照）により管理し、受け取ったＴＳＯ設定情報の内容をＴＣＰ送信制御情報２００のデータベースに格納して管理する（Ｓ１０６参照）。
【００６０】
連結管理部１０３は、ＴＣＰ送信制御情報２００の変更が発生すると、ＴＣＰ処理部３００（図４参照）のＴＣＰ通信管理情報３１０（図５参照）の該当するパラメータ項目も同時に全て更新する。更新はセッション記述子毎に行われるため、ＴＳＯ動作において、個別にＯＮかＯＦＦの設定が可能となる。
【００６１】
また、ＴＣＰ送信制御情報２００（図３参照）の最大連結数２０４（図３参照）に変更があった場合は、ＴＣＰ通信管理情報３１０（図５参照）のＴＣＰ窓の値を更新する。このように、ＴＣＰ窓（輻輳ウインドウサイズ）の値を抑制することが、ＴＣＰ送信時の最大連結数を抑制することに繋がり、転送レートを制御することができる。
【００６２】
データ通信が始まると、データセグメント送信部１０８は、ＴＣＰの送信処理の過程において、送信タイミング毎にＴＣＰ通信管理情報を参照して、ＴＣＰセグメントの連結送信を実施する（Ｓ１０７参照）。
【００６３】
データ通信中にＴＳＯ機能の利用状況を変更したい場合や、ＴＣＰセグメントの連結数を変更したい場合は、ＴＳＯ制御部１０２を通していつでも設定を変更してもよい（Ｓ１０８）。そのため、アプリケーション（セッション）毎に、ＴＣＰセグメントの連結送信機能の利用可否を決定することが可能となる。
【００６４】
以上詳細に説明したように、本実施の形態の通信端末１００は、データ送信のためにオープンされたＴＣＰセッションがＴＣＰセグメントの連結送信処理を利用するか否かを判定するＴＳＯ制御部１０２と、ＴＣＰセッションで用いられるセッション識別子２０２と、ＴＳＯ制御部１０２から通知された連結送信処理の利用情報とＴＣＰセグメントの最大連結数とをＴＣＰセッション毎に前記情報の全てを管理する連結管理部１０３とを備える。これにより、通信端末１００は、アプリケーション（セッション）毎に、ＴＣＰセグメントの連結送信機能の利用可否を決定することが可能になり、機器特性に応じた効率的なＴＣＰ通信を行うことができる。
【００６５】
従来ではＴＣＰの複数セグメントの連結送信方法が、端末起動時にシステム全体としてＴＣＰセグメントの連結送信の使用可否が決定されていた。これに対し、本実施の形態では、アプリケーション（セッション）毎に、ＴＣＰセグメントの連結送信機能の利用可否を決定することが可能になり、機器特性に応じた効率的なＴＣＰ通信を行うことができる。例えば、能力の低い受信端末が通信相手の場合は、複数セグメントの連結送信方法を個別に停止させることが可能になり、受信側の端末でデータの取りこぼしが発生する要因が減少し、パケットロスによるＴＣＰの再送制御によるオーバヘッドの増加を抑制することができる。
【００６６】
上記効果を従来例と比較してより具体的に説明する。
【００６７】
（１）従来の複数セグメントの連結送信方法は、端末起動時にシステム全体としてＴＣＰセグメントの連結送信の使用可否が決定されるため、アプリケーション（セッション）単位による個別のデータ送信制御が困難である。能力の低い受信端末が通信相手の場合は、このような複数セグメントの連結送信方法（連続してデータを送信する方法）では受信側の端末でデータの取りこぼしが発生する要因になり、パケットロスによるＴＣＰの再送制御が発生し、オーバヘッドの増加を引き起こす。すなわち、従来例では、端末起動時にシステム全体としてデータセグメント連結送信の使用可否が決定されるため、セッション（アプリケーション）単位での制御が困難である。
【００６８】
これに対して、本実施の形態では、セッション（アプリケーション）単位での制御ができ、機器特性に応じた効率的なＴＣＰ通信を行うことができる。
【００６９】
（２）従来の送信制御は汎用的な用途を主体としてＴＣＰのソフトウェアとハードウェアによる機能分割が行われているため、パケットロスによるネットワークの輻輳を検出すると、そのセッションを終了するまで複数セグメントの連結送信機能が無効になる機能が働く。これによりパケットロスの発生後は、複数セグメントの連結送信機能が働かないため、ＴＣＰのセグメント単位でプロトコル処理をＯＳ制御下でソフトウェアが処理することになり、ＣＰＵ処理負荷の上昇、及び送信性能の低下を引き起こす。すなわち、従来例では、輻輳検出時は、セッションを終了するまで、データセグメント連結送信機能が無効になり、通信性能の低下を引き起すことである。常時有効の場合でも性能は劣化する。
【００７０】
これに対して、本実施の形態では、パケットロスによるネットワークの輻輳を検出した場合、セッションのパケットロスの修復処理が終了した後に、複数セグメントの連結送信機能を有効にすることができ、ネットワーク状況の変化によるパケットロス処理のＣＰＵ負荷上昇を抑え、効率的なＴＣＰ通信を行うことができる。
【００７１】
（３）間欠的な送信方法を利用するアプリケーションの場合、輻輳ウインドウサイズはその間欠区間が端末の再送タイムアウト時間（ＲＴＯ：Retransmission Time Out）より長いと、保持されている輻輳ウインドウサイズの値を半分に低下させるＴＣＰ／ＩＰ通信の機能（ＣＷＶ：Congestion Window Validation）が働いてしまうため、その輻輳ウインドウサイズの低下に伴い複数セグメントの連結送信数が低下し、送信性能の低下を引き起こすという課題があった。すなわち、従来例では、間欠的な送信方法を利用するアプリケーションの場合、輻輳ウインドウサイズが間欠区間毎に低下するため、データセグメント連結送信の機能を有効利用することが困難である。
【００７２】
これに対して、本実施の形態では、間欠的な送信方法を利用するアプリケーションの場合、輻輳ウインドウサイズの低下を抑制することができ、複数セグメントの連結送信数の低下を防ぐことにより送信性能を維持し、効率的なＴＣＰ通信を行うことができる。
【００７３】
（実施の形態２）
次に、パケットのロストによるネットワークの輻輳を検出した場合の通信端末１００の処理の流れを、実施の形態２により説明する。
【００７４】
図７は、本発明の実施の形態２に係るＴＣＰ送信制御装置が用いられる通信端末の構成を示すブロック図である。図２と同一構成部分には同一符号を付している。
【００７５】
図７に示すように、輻輳状態監視部４０１は、ネットワーク状況の変化（例えばネットワークの輻輳によるパケットのロスト）を監視する。また、輻輳状態監視部４０１は、ＴＣＰ窓管理部１０７が管理している輻輳ウインドウサイズを監視し、通信の定常状態のサ
イズから半減近くのサイズ縮小が発生した場合にネットワークは輻輳状態であると判断し、ＴＳＯ機能の停止（減少したサイズから定常状態のサイズに復帰したときは再開）の要求を連結管理部１０３に通知する。その他のブロックの機能は図２と同様である。
【００７６】
また、連結管理部１０３は、管理する前記最大連結数に基づいて、輻輳ウインドウサイズの値を抑制するＴＣＰ窓の値を設定する。
【００７７】
次に、通信端末１００が、ＴＳＯ機能を有効にした状態からパケットのロストによるネットワークの輻輳を検出し、ＴＳＯ機能を停止した後、ＴＣＰの輻輳回復フェーズを経て定常状態に戻った後にＴＳＯ機能を有効にする動作について図８のシーケンスを用いて説明する。
【００７８】
図８は、ネットワークの輻輳検出、ＴＳＯ機能停止、ＴＣＰの輻輳回復フェーズ、及びＴＳＯ機能回復の制御シーケンスを示す図である。
【００７９】
図８に示すように、アプリケーションによるデータ通信が開始されると、ＴＣＰ窓管理部１０７が管理している輻輳ウインドウサイズは、ＴＣＰのスロースタートフェーズを経て一定の値まで上昇し定常状態に入る。
【００８０】
輻輳状態監視部４０１は、アプリケーションの起動から終了までの間、輻輳ウインドウサイズの変動を常に監視する。その後ネットワーク状況が変化し、パケットのロストをＡＣＫ処理部１０６が判断すると、ＴＣＰ窓管理部１０７は、輻輳ウインドウサイズの縮小を実施する。
【００８１】
輻輳状態監視部４０１は、輻輳ウインドウサイズの縮小を検出する（Ｓ２０１参照）とＴＳＯ機能を無効化（ＯＦＦ）するための要求を連結管理部１０３に対して発行する（Ｓ２０２参照）。
【００８２】
連結管理部１０３は、格納しているＴＣＰ送信制御情報２００の該当する管理番号２０１におけるＴＳＯ動作２０３をＯＦＦに変更しＴＳＯ機能を停止する（Ｓ２０３参照）。
【００８３】
データセグメント送信部１０８は、ＴＣＰセグメントの送信機会ごとにＴＳＯ機能の有無をＴＣＰ通信管理情報３１０（図５参照）に基づき確認している。このため、データセグメント送信部１０８は、無効になった時点でＴＣＰセグメントの一括送信を停止し、通常の一セグメント単位での送信方法に変更してデータ通信を継続する（Ｓ２０４参照）。
【００８４】
ＴＣＰ通信では、パケットのロスト後は、ＴＣＰのスロースタートフェーズ及び輻輳回復フェーズを経て徐々にまた輻輳ウインドウサイズを上昇させていく。
【００８５】
輻輳状態監視部４０１は、パケットのロストの発生の有無に関わらず常に輻輳ウインドウサイズを監視する（Ｓ２０５参照）。このため、輻輳状態監視部４０１は、輻輳回復フェーズを判断し（Ｓ２０６参照）、輻輳回復フェーズを経て輻輳ウインドウサイズが定常状態の値に戻ったときに、ＴＳＯ機能を有効化（ＯＮ）するための要求を連結管理部１０３に対して発行する（Ｓ２０７参照）。
【００８６】
連結管理部１０３は、格納しているＴＣＰ送信制御情報２００の該当する管理番号２０１におけるＴＳＯ動作２０３をＯＮに変更しＴＳＯ機能を有効化する（Ｓ２０８参照）。
【００８７】
データセグメント送信部１０８は、ＴＣＰセグメントの送信機会ごとにＴＳＯ機能の有無をＴＣＰ通信管理情報に基づき確認している。このため、データセグメント送信部１０
８は、有効になった時点でＴＣＰセグメントの一括送信を復活させて、通常の一セグメント単位での送信方法から一括送信に変更してデータ通信を継続する（Ｓ２０９参照）。
【００８８】
上記制御シーケンスにより、パケットロスの発生後においても複数セグメントの連結送信機能を復帰させることが可能となる。
【００８９】
このように、実施の形態２によれば、通信端末１００は、ＴＣＰセッションで用いられるセッション識別子２０２と、ＴＣＰセグメントの連結送信処理の利用情報と、ＴＣＰセグメントの最大連結数とをＴＣＰセッション毎に管理する連結管理部１０３とを備える。さらに、通信端末１００は、ＴＣＰセッションにおける送信データパケットの欠落を監視し、欠落が発生したＴＣＰセッションのＴＣＰセグメントの連結送信処理の利用情報を無効にし、ＴＣＰスロースタートフェーズを終了して輻輳回避フェーズに遷移後、利用情報を有効化する要求を連結管理部１０３に通知して連結送信処理を継続させる輻輳状態監視部４０１を備える。これにより、パケットロスによるネットワークの輻輳を検出した場合も、そのセッションのパケットロスの修復処理が終了した後に、複数セグメントの連結送信機能を有効にすることが可能となり、ネットワーク状況の変化によるパケットロス処理のＣＰＵ負荷上昇を抑え、効率的なＴＣＰ通信を行うことができる。以下、本実施の形態の特徴動作と効果について述べる。
【００９０】
図９Ａ．Ｂは、ＴＣＰ送信制御を説明する図であり、図９Ａは対比説明のための従来例、図９Ｂは本実施の形態を示す。
【００９１】
図９Ａの従来例及び図９Ｂの本実施の形態共に、スロースタートフェーズ終了後、緩やかに線形的に送信され、通信安定状態となる。この通信安定状態において輻輳が発生するまでの区間がＴＳＯ有効区間である。図９Ａの従来例では、輻輳が発生すると、送信できるサイズを減らすと共に直ちにＴＳＯ無効区間となり、ＴＳＯ無効区間となるためＣＰＵ負荷は線形的に増加する。従来例では、輻輳検出後は、ＣＰＵ負荷が上昇し、上昇率は最大で約６倍となる。従来例では、輻輳検出時は、セッションを終了するまで、データセグメント連結送信機能が無効になり、通信性能の低下を引き起す。なお、ＴＳＯを常時有効の場合でも性能は劣化する。
【００９２】
これに対し、本実施の形態では、図９Ｂに示すように、輻輳検出時、データセグメント連結送信フラグを無効にし、スロースタートフェーズを終了して輻輳回避フェーズに遷移後、データセグメント連結送信フラグを有効化し、送信を再開する。すなわち、輻輳検出時、データセグメント連結送信フラグを無効にするだけであり、輻輳が発生してもＴＳＯ有効区間はそのまま継続する。このため、輻輳検出後もＣＰＵ負荷は変わらない。
【００９３】
このように、従来例ではパケットロスによるネットワークの輻輳を検出したとき、そのセッションを終了するまで複数セグメントの連結送信機能が無効になっていたのに対し、本実施の形態では、パケットロスの発生後においても複数セグメントの連結送信機能を復帰させることが可能になる。これにより、ＴＣＰのセグメント単位でプロトコル処理をＯＳ制御下でソフトウェアが処理することがなくなり、ＣＰＵ処理負荷の低減、及び送信性能の維持ができる。本実施の形態によって、最も効率的なリカバリー処理、及び転送レート維持を期待することができる。
【００９４】
（実施の形態３）
次に、間欠的な送信方法を利用するアプリケーションがデータ通信を行う場合の通信端末１００の処理の流れを、実施の形態３により説明する。
【００９５】
間欠的な送信方法を利用するアプリケーションとは、例えばＨＴＴＰ（Hyper Text Tra
nsfer Protocol）を用いたストリーミングである。通信端末１００は通常、数百ｍｓ程度の一定区間毎にまとまったデータを送信し、そのデータサイズの送信後は次の区間まで送信を停止するという動作を繰り返す。このようなサービスの場合、ある区間でのデータ転送開始時と、次の区間でのデータ転送の開始時とでは、その間にＴＣＰのプロトコル制御情報が再計算されてしまうため、異なる値が用いられることになる。ＴＣＰ送信制御情報２００（図３参照）の再計算の例として、例えば連続したデータ転送中は、送信側ＴＣＰスタックはパケットロスが発生しない限り徐々に輻輳ウインドウサイズを上昇させる。逆にデータ転送終了後の無通信区間では、送信側ＴＣＰスタックは、輻輳ウインドウサイズを徐々に減らす（ＣＷＶ：Congestion Window Validation）といった処理が行われる。このＣＷＶの処理は再送タイムアウト時間を超えて、データの送信要求（アプリケーションからのデータの書き込み）が無いときに機能が動作する。そのため、各区間の送信開始のタイミングで輻輳ウインドウサイズが小さくなりすぎている可能性があるために想定したスループットが得られないといった問題が発生することが考えられる。
【００９６】
図１０は、本発明の実施の形態３に係るＴＣＰ送信制御装置が用いられる通信端末の構成を示すブロック図である。図２と同一構成部分には同一符号を付している。
【００９７】
図１０に示すように、送信バッファ監視部６０１は、アプリケーションによる送信データの書き込み間隔を監視し、監視されている書き込み間隔が、現在の再送タイムアウト時間と等しくなった場合、ＲＴＯ閾値制御部６０２に対してＲＴＯの値を増加させる要求を出す。監視するセッションは、連結管理部１０３により管理されている全てのセッションに対応する。送信バッファ監視部６０１は、上記セッションのオープン（アプリケーションの起動）時にセッション記述子２０２を通知する。
【００９８】
ＲＴＯ閾値制御部６０２は、通信端末１００がパケットを送信後、再送タイムアウト時間（ＲＴＯ）において規定される時間を変更する。一般的なＴＣＰスタックでは、この再送タイムアウト時間に最小値が設けられており、２００ｍｓ以上の値が初期値として用いられる。ＲＴＯ閾値制御部６０２は、送信バッファ監視部６０１から変更要求があった場合は、その時間を増加させ、常に書き込み間隔よりも再送タイムアウト時間の方が大きくなるように調整を行う。その他のブロックの機能は図２と同様である。
【００９９】
次に、通信端末１００が、間欠的な送信方法を利用するアプリケーションの通信の場合に、輻輳ウインドウサイズの低下を抑制し、ＴＳＯ機能の最大連結数を維持して通信を継続する動作について図１１のシーケンスを用いて説明する。
【０１００】
図１１は、輻輳ウインドウサイズ抑制、ＴＳＯ機能の最大連結数維持、及び通信継続の制御シーケンスを示す図である。
【０１０１】
図１１に示すように、ＨＴＴＰを用いたストリーミングなどの間欠送信を行うアプリケーションのデータ送信が開始されると、連結管理部１０３は、そのオープンされたアプリケーションのセッションをＴＣＰ送信制御情報２００（図３参照）として新規の管理番号２０１を付与する。そして、連結管理部１０３は、通知を受けたセッションのソケットＩＤをセッション記述子２０２により管理し、受け取ったＴＳＯ設定情報の内容をＴＣＰ送信制御情報２００のデータベースに格納する（Ｓ３０１参照）。
【０１０２】
その後、連結管理部１０３は、送信バッファ監視部６０１に対して、新しく登録された管理番号２０１（図３参照）に該当するセッション記述子２０２（図３参照）を通知する（Ｓ３０２参照）。
【０１０３】
送信バッファ監視部６０１は、通知されたデータの書き込み間隔の監視を開始する（Ｓ
３０３参照）。それと同時に、データセグメント送信部１０８が、アプリケーションによるデータ送信を開始する（Ｓ２０４参照)。
【０１０４】
送信バッファ監視部６０１は、送信書き込み間隔Ｙの監視により、ＲＴＯ閾値（ＲＴＯ＞Ｙが真）か否かを判断する（Ｓ３０５参照）。送信バッファ監視部６０１は、監視されている書き込み間隔が、現在の再送タイムアウト時間と等しく（あるいはそれ以上に）なった場合（Ｓ３０５のＮｏ）、ＲＴＯ閾値制御部６０２に対して現在の書き込み間隔の通知とともにＲＴＯの値を増加させる要求を出す。ＲＴＯ値の増加要求を受け取ったＲＴＯ閾値制御部６０２は、書き込み間隔よりもＲＴＯ値が大きくなるように調整を行う（Ｓ３０６参照）。
【０１０５】
送信バッファ監視部６０１は、現在の再送タイムアウト時間と書き込み間隔の監視を常に実行し、再送タイムアウト時間が送信書き込み間隔Ｙより大きくなった場合（Ｓ３０５のＹｅｓ）、ステップＳ３０７の動作を実行する。
【０１０６】
ＲＴＯ閾値制御部６０２により、再送タイムアウト時間が調整されるので再送タイムアウト時間を超えて、データの送信要求（アプリケーションからのデータの書き込み）が無くなる。このため、データセグメント送信部１０８は、ＴＣＰのＣＷＶ機能が動作せずに通信を継続することが可能になる（Ｓ３０８参照）。これにより、各区間の送信開始のタイミングで輻輳ウインドウサイズが小さくなりすぎている状態を抑制することが可能になる。
【０１０７】
このように、実施の形態３によれば、通信端末１００は、ＴＣＰセッションで用いられるセッション識別子２０２と、ＴＣＰセグメントの連結送信処理の利用情報と、ＴＣＰセグメントの最大連結数とをＴＣＰセッション毎に管理する連結管理部１０３とを備える。さらに、通信端末１００は、ＴＣＰセッションにおける送信データの書き込み間隔を監視する送信バッファ監視部６０１と、送信データの書き込み間隔がＴＣＰの再送タイムアウト時間を上回るとき、再送タイムアウト時間を書き込み間隔よりも下回るようにタイムアウト時間を変更するＲＴＯ閾値制御部６０２とを備える。これにより、間欠的な送信方法を利用するアプリケーションの場合も、輻輳ウインドウサイズの低下を抑制することが可能になり、複数セグメントの連結送信数の低下を防ぐことにより送信性能を維持し、効率的なＴＣＰ通信を行うことができる。以下、本実施の形態の特徴動作と効果について述べる。
【０１０８】
図１２Ａ．Ｂは、輻輳ウインドウ制御を説明する図であり、図１２Ａは対比説明のための従来例、図１２Ｂは本実施の形態を示す。
【０１０９】
図１２Ａの従来例及び図１２Ｂの本実施の形態共に、スロースタートフェーズ終了後、緩やかに線形的に送信される。図１２Ａに示すように、従来例では、輻輳が発生すると、ＣＷＶの機能によって輻輳ウインドウが上下動する。送信停止区間は数秒から１０数秒程度である。送信停止区間では、輻輳ウインドウを低下させてしまうため、非効率になる。
【０１１０】
これに対し、本実施の形態では、図１２Ｂに示すように、送信停止区間において、輻輳ウインドウを低下させず高い状態を維持する。具体的には、送信バッファ監視部６０１は、送信書込み間隔Ｙを監視し、ＲＴＯ閾値（ＲＴＯ＞Ｙが真）を制御する。ＲＴＯ閾値制御部６０２は、再送タイムアウト時間を送信書込み間隔Ｙよりも下回るようにタイムアウト時間を変更する。
【０１１１】
このように、従来例ではＴＣＰの複数セグメントの連結送信方法が、端末起動時にシステム全体としてＴＣＰセグメントの連結送信の使用可否が決定されていたのに対し、本実
施の形態では、アプリケーション（セッション）毎に、ＴＣＰセグメントの連結送信機能の利用可否を決定することが可能になる。これにより、機器特性に応じた効率的なＴＣＰ通信を行うことができる。例えば、能力の低い受信端末が通信相手の場合は、複数セグメントの連結送信方法を個別に停止させることが可能になる。受信側の端末でデータの取りこぼしが発生する要因が減少し、パケットロスによるＴＣＰの再送制御によるオーバヘッドの増加を抑制することができる。
【０１１２】
その結果、データセグメント連結送信を有効活用することができ、ＣＰＵ負荷を低減することができる。ＣＰＵ負荷低減は、省電力化につながる。
【０１１３】
以上の説明は本発明の好適な実施の形態の例証であり、本発明の範囲はこれに限定されることはない。
【０１１４】
また、通信端末１００の各機能ブロックは、集積回路であるＬＳＩとして実現されてもよい。これらは個別に１チップ化されてもよいし、一部または全てを含むように１チップ化されてもよい。ここでは、ＬＳＩとしたが、集積度の違いにより、ＩＣ、システムＬＳＩ、スーパーＬＳＩ、ウルトラＬＳＩと呼称されることもある。
【０１１５】
また、集積回路化の手法はＬＳＩに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。ＬＳＩ製造後に、プログラムすることが可能なＦＰＧＡ（Field Programmable Gate Array）や、ＬＳＩ内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。
【０１１６】
さらには、半導体技術の進歩又は派生する別技術によりＬＳＩに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行っても良い。バイオ技術の適応等が可能性としてありえる。
【０１１７】
本発明を詳細にまた特定の実施態様を参照して説明したが、本発明の精神と範囲を逸脱することなく様々な変更や修正を加えることができることは当業者にとって明らかである。
【０１１８】
また、本実施の形態では通信端末という名称を用いたが、これは説明の便宜上であり、装置の名称は送信装置、ＴＣＰ送信制御装置、通信システム、また方法の名称は送信制御方法等であってもよいことは勿論である。
【０１１９】
また、上記ＴＣＰ送信制御装置を構成する各部、例えばネットワークデバイス（ＮＩＣ）の種類、その数及び接続方法などはどのようなものでもよい。
【０１２０】
また、以上説明したＴＣＰ送信制御方法は、このＴＣＰ送信制御方法を機能させるためのプログラムでも実現される。このプログラムはコンピュータで読み取り可能な記録媒体に格納されている。
【０１２１】
２００８年１２月２５日出願の特願２００８−３３１４５９の日本出願に含まれる明細書、図面及び要約書の開示内容は、すべて本願に援用される。
【産業上の利用可能性】
【０１２２】
本発明に係るＴＣＰ送信制御装置及びＴＣＰ送信制御方法は、ホームネットワークやインターネット等のパケット網においてＴＣＰを用いた高速通信、ストリーミングサービス等を行う場合の、ＴＣＰ送信処理の効率化を実現する効果を有し、ＴＣＰ／ＩＰ通信機能を有した家電機器等に対して有効である。また、車載ＬＡＮ内に接続されＴＣＰ／ＩＰ通
信を行う車載通信機器、家庭内ネットワーク用通信インタフェースを搭載した携帯電話等の用途にも応用できる。
【符号の説明】
【０１２３】
１００  通信端末
１０１  ＵＩ制御部
１０２  ＴＳＯ制御部
１０３  連結管理部
１０４  送信バッファ管理部
１０５  受信バッファ管理部
１０６  ＡＣＫ処理部
１０７  ＴＣＰ窓管理部
１０８  データセグメント送信部
１０９  ＩＰ層制御部
１１０  デバイス制御部
１１１  ネットワークデバイス
４０１  輻輳状態監視部
６０１  送信バッファ監視部
６０２  ＲＴＯ閾値制御部
【図１】
0005517951.tif 000002
【図２】
0005517951.tif 000003
【図３】
0005517951.tif 000004
【図４】
0005517951.tif 000005
【図５】
0005517951.tif 000006
【図６】
0005517951.tif 000007
【図７】
0005517951.tif 000008
【図８】
0005517951.tif 000009
【図９Ａ】
0005517951.tif 000010
【図９Ｂ】
0005517951.tif 000011
【図１０】
0005517951.tif 000012
【図１１】
0005517951.tif 000013
【図１２Ａ】
0005517951.tif 000014
【図１２Ｂ】
0005517951.tif 000015