TCPにより配信すべきコンテンツに対応する複数のセッションを管理するTCPセッション管理方法であって、各セッションのウィンドウ用として前記複数のセッションに対して共通に前記コンテンツ単位で設定されるメモリ領域である共通バッファと、各セッションごとに当該セッションのACK番号とウィンドウサイズとを管理するウィンドウ管理テーブルとを保持し、前記メモリ領域において記憶されている、前記ACK番号からウィンドウサイズの範囲内のデータを各セッションに対して配布することを特徴とするTCPセッション管理方式。前記ウィンドウ管理テーブルを参照して、前記共通バッファ内に存在する複数のセッションにおける最大となるACK番号をMax_ACKとし、最小となるACK番号をMin_ACKとし、最大セグメント長の倍数である所定の数をαとし、ウィンドウサイズをWとして、Max_ACKとMin_ACKとの差を用いて、{確保メモリサイズ<Max_ACK-Min_ACKWα}を満たすときに、前記共通バッファ内に存在する複数のセッションのうちACK番号が最小であるセッションを切断する、請求項1に記載のTCPセッション管理方法。前記ウィンドウ管理テーブルを参照して、前記共通バッファ内に存在する複数のセッションに関してセッションごとに往復伝搬遅延時間を測定し、前記複数のセッションのうちの最も大きいACK番号を有するセッションと最も小さいACK番号を有するセッションとの間での往復伝搬遅延時間の差とウィンドウサイズの差を求め、前記往復伝搬遅延時間の差をΔRTTとし、前記ウィンドウサイズの差をΔWとし、時間に関する予め定めたしきい値をβとして、{残メモリ量÷ΔW×ΔRTT<β}を満たすときに、前記共通バッファ内に存在する複数のセッションのうちACK番号が最小であるセッションを切断する、請求項1に記載のTCPセッション管理方法。送信するデータパケット内のシーケンス番号と該データパケットを送信した時刻と、前記データパケットに対応して受信するACKパケット内のACK番号と該ACKパケットが到着した時刻を用い、最大セグメント長をMSSとして、{ACK番号>シーケンス番号MSS}を満たすときの受信時刻-送信時刻を前記往復伝搬遅延時間とする、請求項3に記載のTCPセッション管理方法。ネットワークに接続し、コンテンツに対応する複数のセッションを管理して、前記ネットワークに接続した各端末に対してTCPにより前記コンテンツを配信するTCPプロキシ装置であって、各セッションのウィンドウ用として前記複数のセッションに対して共通に前記コンテンツ単位で設定されるメモリ領域である共通バッファと、各セッションごとに当該セッションのACK番号とウィンドウサイズとを管理するウィンドウ管理テーブルと、前記共通バッファ内のデータを各端末に送信するために前記ウィンドウ管理テーブルを参照してTCPによるプロトコル処理を実行するTCP処理部と、を有するTCPプロキシ装置。前記ウィンドウ管理テーブルを参照して、前記共通バッファ内に存在する複数のセッションにおける最大となるACK番号をMax_ACKとし、最小となるACK番号をMin_ACKとし、最大セグメント長の倍数である所定の数をαとし、ウィンドウサイズをWとして、Max_ACKとMin_ACKとの差を用いて、{確保メモリサイズ<Max_ACK-Min_ACKWα}を満たすときに、前記共通バッファ内に存在する複数のセッションのうちACK番号が最小であるセッションを切断するように前記TCP処理部に指示するセッション切断判定部をさらに有する、請求項5に記載のTCPプロキシ装置。前記共通バッファ内に存在する複数のセッションに関してセッションごとに、前記TCP処理部を介して往復伝搬遅延時間を測定するRTT測定部と、前記ウィンドウ管理テーブルを参照し、前記RTT測定部での測定結果に基づき、前記複数のセッションのうちの最も大きいACK番号を有するセッションと最も小さいACK番号を有するセッションとの間での往復伝搬遅延時間の差とウィンドウサイズの差を求め、前記往復伝搬遅延時間の差をΔRTTとし、前記ウィンドウサイズの差をΔWとし、時間に関する予め定めたしきい値をβとして、{残メモリ量÷ΔW×ΔRTT<β}を満たすときに、前記共通バッファ内に存在する複数のセッションのうちACK番号が最小であるセッションを切断するように前記TCP処理部に指示するセッション切断判定部と、を有する、請求項5に記載のTCPプロキシ装置。前記RTT測定部は、送信するデータパケット内のシーケンス番号と該データパケットを送信した時刻と、前記データパケットに対応して受信するACKパケット内のACK番号と該ACKパケットが到着した時刻を用い、最大セグメント長をMSSとして、{ACK番号>シーケンス番号MSS}を満たすときの受信時刻-送信時刻を前記往復伝搬遅延時間とする、請求項7に記載のTCPプロキシ装置。上述のように、トランスポート層のプロトコルとしてTCPを用いてライブ型のデータ配信を行う際に複数セッションでウィンドウ用メモリを共通に用いることは、同時配信数すなわちセッション数が大きいときにメモリサイズが大きくなることを抑制することに効果があるが、接続相手となるユーザ端末ごとのデータ転送速度差に伴って共通メモリ領域におけるバッファあふれが発生するおそれがある。そこで本発明の目的は、複数のセッション間でウィンドウ用メモリを共通化した場合であっても、共通メモリ領域におけるバッファあふれの発生を防止でき、かつ、メモリ利用効率の向上を図ることができ、これによってライブ型データ配信サービスにおける収容ユーザ数を増加させることができるTCPセッション管理方法と、そのようなTCPセッション管理方法を実行するTCPプロキシ装置とを提供することになる。本発明の第1のTCPセッション管理方法は、TCPにより配信すべきコンテンツに対応する複数のセッションを管理するTCPセッション管理方法であって、各セッションのウィンドウ用として複数のセッションに対して共通にコンテンツ単位で設定されるメモリ領域である共通バッファと、各セッションごとにそのセッションのACK番号とウィンドウサイズとを管理するウィンドウ管理テーブルとを保持し、ウィンドウ管理テーブルを参照して、共通バッファ内に存在する複数のセッションにおける最大となるACK番号をMax_ACKとし、最小となるACK番号をMin_ACKとし、最大セグメント長の倍数である所定の数をαとし、ウィンドウサイズをWとして、Max_ACKとMin_ACKとの差を用いて、{確保メモリサイズ<Max_ACK-Min_ACKWα}を満たすときに、共通バッファ内に存在する複数のセッションのうちACK番号が最小であるセッションを切断する。本発明の第2のTCPセッション管理方法は、TCPにより配信すべきコンテンツに対応する複数のセッションを管理するTCPセッション管理方法であって、各セッションのウィンドウ用として複数のセッションに対して共通にコンテンツ単位で設定されるメモリ領域である共通バッファと、各セッションごとにそのセッションのACK番号とウィンドウサイズとを管理するウィンドウ管理テーブルとを保持し、ウィンドウ管理テーブルを参照して、共通バッファ内に存在する複数のセッションに関してセッションごとに往復伝搬遅延時間を測定し、複数のセッションのうちの最も大きいACK番号を有するセッションと最も小さいACK番号を有するセッションとの間での往復伝搬遅延時間の差とウィンドウサイズの差を求め、往復伝搬遅延時間の差をΔRTTとし、ウィンドウサイズの差をΔWとし、時間に関する予め定めたしきい値をβとして、{残メモリ量÷ΔW×ΔRTT<β}を満たすときに、共通バッファ内に存在する複数のセッションのうちACK番号が最小であるセッションを切断する。本発明の第1のTCPプロキシ装置は、ネットワークに接続し、コンテンツに対応する複数のセッションを管理して、ネットワークに接続した各端末に対してTCPによりコンテンツを配信するTCPプロキシ装置であって、各セッションのウィンドウ用として複数のセッションに対して共通にコンテンツ単位で設定されるメモリ領域である共通バッファと、各セッションごとにそのセッションのACK番号とウィンドウサイズとを管理するウィンドウ管理テーブルと、共通バッファ内のデータを各端末に送信するためにウィンドウ管理テーブルを参照してTCPによるプロトコル処理を実行するTCP処理部と、ウィンドウ管理テーブルを参照して、共通バッファ内に存在する複数のセッションにおける最大となるACK番号をMax_ACKとし、最小となるACK番号をMin_ACKとし、最大セグメント長の倍数である所定の数をαとし、ウィンドウサイズをWとして、Max_ACKとMin_ACKとの差を用いて、{確保メモリサイズ<Max_ACK-Min_ACKWα}を満たすときに、共通バッファ内に存在する複数のセッションのうちACK番号が最小であるセッションを切断するようにTCP処理部に指示するセッション切断判定部と、を有する。本発明の第2のTCPプロキシ装置は、ネットワークに接続し、コンテンツに対応する複数のセッションを管理して、ネットワークに接続した各端末に対してTCPによりコンテンツを配信するTCPプロキシ装置であって、各セッションのウィンドウ用として複数のセッションに対して共通にコンテンツ単位で設定されるメモリ領域である共通バッファと、各セッションごとにそのセッションのACK番号とウィンドウサイズとを管理するウィンドウ管理テーブルと、共通バッファ内のデータを各端末に送信するためにウィンドウ管理テーブルを参照してTCPによるプロトコル処理を実行するTCP処理部と、共通バッファ内に存在する複数のセッションに関してセッションごとに、TCP処理部を介して往復伝搬遅延時間を測定するRTT測定部と、ウィンドウ管理テーブルを参照し、RTT測定部での測定結果に基づき、複数のセッションのうちの最も大きいACK番号を有するセッションと最も小さいACK番号を有するセッションとの間での往復伝搬遅延時間の差とウィンドウサイズの差を求め、往復伝搬遅延時間の差をΔRTTとし、ウィンドウサイズの差をΔWとし、時間に関する予め定めたしきい値をβとして、{残メモリ量÷ΔW×ΔRTT<β}を満たすときに、共通バッファ内に存在する複数のセッションのうちACK番号が最小であるセッションを切断するようにTCP処理部に指示するセッション切断判定部と、を有する。本発明では、複数のTCPセッションでウィンドウ用メモリを共通化した場合に、ある判断基準を用いて低速セッションの切断を行うようにする。その結果、共通メモリ内から古いデータを削除することが可能となり、バッファあふれを未然に防止することができるようになるとともに、TCPプロキシ装置やライブ型データ配信サーバにおけるメモリ利用効率が向上する。切断したセッションについては、再度、セッションを確立することもできる。次に、本発明の好ましい実施の形態について、図面を参照して説明する。本発明に基づくTCPセッション管理方法は、トランスポート層のプロトコルとしてTCPを用いてコンテンツを配信する1対多ライブ型のデータ配信サービスに適したものである。TCPを用いた場合、複数のユーザ端末に対してほぼ同じタイミングで同じコンテンツを配信する場合、各ユーザ端末に対応した複数のTCPセッションを管理する必要がある。そこで本発明に基づくTCPセッション管理方法では、セッションごとにウィンドウ用バッファを設定することに伴うメモリサイズの増大を防ぐために、各セッションのウィンドウ用として複数のセッションに対して共通にコンテンツ単位で設定されるメモリ領域を共通バッファとして用いる。そして、配信すべきコンテンツに対応する複数のセッションを管理するために、さらに、各セッションごとに当該セッションのACK番号とウィンドウサイズとを管理するウィンドウ管理テーブルを使用し、共通バッファでのバッファあふれを防ぎメモリ利用効率を高めるために、ある判断基準を用いて、ダウンロード速度転送速度が低速であるセッションを切断し、共通バッファにおいてその切断されたセッションのみに使用されていた領域を解放して新たなデータを書き込めるようにする。セッション切断のための判断基準は、確保したメモリ利用率に従うものであるが、具体的には、例えば、ACK番号しきい値設定方式と、ダウンロード速度差しきい値設定方式がある。ACK番号しきい値設定方式では、ウィンドウ管理テーブルを参照することにより共通バッファ中の各セクションのACK番号を調べ、これらのACK番号のうちの最大のものと最小のものとの差から残メモリ量を算出し、しきい値と比較して、残メモリ量がしきい値を下回った時に、低速セクションすなわちACK番号が最小であるセクションを切断するものである。一方、ダウンロード速度差しきい値設定方式は、ウィンドウ管理テーブルを参照し、セクションごとの往復伝搬遅延時間RTTを調べ、現状のデータ送信状況の下で残メモリ量が何秒後にゼロになってしまうかを予測して、ゼロとなるまでの時間がしきい値を下回る場合に、ACK番号が最小であるセクションを切断するものである。以下、このようなTCPセッション管理方法を実行する本発明のTCPプロキシ装置について説明する。なお、上述したように、多数のユーザ端末に対してセッションを確立してライブ型データ配信を行うという点では、ライブ配信用のデータ配信サーバもTCPプロキシ装置も変わるところがないので、データ配信サーバそれ自体も本発明のTCPプロキシ装置の範疇に含まれるものである。図2は、本発明の第1の実施形態のTCPプロキシ装置における要部の論理的な構成を示すブロック図である。本実施形態のTCPプロキシ装置は、ハードウェア構成としては図1に示したものと同様のものであるが、セッション切断のための判断基準としてACK番号しきい値設定方式を用いて本発明に基づくTCPセッション管理方法を実行するために、論理的構成として、共通バッファ31、ウィンドウ管理テーブル32、セッション切断判定部33、TCP処理部34及びIP処理部35を備えている。共通バッファ31及びウィンドウ管理テーブル32は、図1に示したハードウェア構成におけるメモリ16上の領域として確保され、セッション切断判定部33、TCP処理部34及びIP処理部35は、CPU17がソフトウェアプログラムを実行することによって実現されるものである。セッション切断判定部33、TCP処理部34及びIP処理部35をそれぞれハードウェア構成により実現することもできる。共通バッファ31は、ソケットバッファとして、各セッションのウィンドウ用として複数のセッションに対して共通にコンテンツ単位で設定されるバッファ領域であり、例えばデータ配信サーバからのコンテンツのデータが供給される。ウィンドウ管理テーブル32は、各セッションごとにそのセッションのACK番号とウィンドウサイズとを管理するテーブルである。TCP処理部34は、共通バッファ31内のデータを各端末に送信するためにウィンドウ管理テーブル32を参照してTCPによるプロトコル処理を実行し、生成したTCPセグメントをIP処理部34に送出する。IP処理部35は、TCP処理部34からのTCPセグメントをIPパケットに組み込んでネットワークインタフェースに送出し、これにより、各ユーザ端末にコンテンツのデータが配信されるようにする。セッション接断判定部33は、ウィンドウ管理テーブル32を参照して、共通バッファ31内に存在する複数のセッションにおける最大となるACK番号をMax_ACKとし、最小となるACK番号をMin_ACKとし、TCPにおける最大セグメント長MSSの倍数である所定の数をαとし、ウィンドウサイズをWとして、Max_ACKとMin_ACKとの差を用いて、{確保メモリサイズ<Max_ACK-Min_ACKWα}を満たすときに、共通バッファ31内に存在する複数のセッションのうちACK番号が最小であるセッションを切断するようにTCP処理部34に指示し、さらに切断したセッションのみに関係するメモリ領域を解放クリアするように共通バッファ31に指示する。ここでαは、低速セッションを切断する際のしきい値に対応するものである。αをMSSの倍数としていることから、αは、TCPセグメントが最長であるという最悪条件のもとでTCPセグメント何個分の余裕をもたせて低速セッションを切断するかを示していると言える。ウィンドウサイズは、セッションごとに異なる可能性があるが、例えば、ウィンドウサイズが最大のセッションのウィンドウサイズをWとすればよい。図3は、セッション単位でメモリを確保する従来のTCPプロキシ装置におけるメモリ管理と本発明のTCPプロキシ装置におけるメモリ管理とを対比して示している。図3aに示すように、従来のTCPプロキシ装置では、セッションごとにウィンドウ用メモリ領域を確保する必要があり、概算で言えば、ウィンドウサイズ×セッション数だけのメモリ領域が必要となり、セッション数が多大である場合には、極めて多量のメモリ領域を必要とする。これに対して本発明に基づくプロキシ装置では、図3bに示すように、ライブ型配信を行うことを前提としてコンテンツごとにメモリ領域を確保する。したがって、配信すべきコンテンツが1つであるとすると、低速セッション切断に用いるしきい値にも依存するが、TCPプロキシ装置で必要となるバッファサイズを、従来のものと比較して、{同一映像視聴ユーザ数-1×TCPウィンドウサイズ}だけ削減することが可能となり、1セッションあたりに必要なメモリサイズ削減による初期コストの低下低電力化が期待できる。図3には、ウィンドウ管理テーブル32の内容の一例も示されている。ここではユーザ端末ごとにTCPプロキシ装置からTCPセッションが確立されるとして、ユーザ端末ごとに、すなわちセッションごとに、そのセッションの現在のACK番号とウィンドウサイズとがウィンドウ管理テーブル32に格納されていることが示されている。また、図3bにおいて、符号51で示した破線の矢印は、複数のセッション図示した例ではセッション1~3の中で最大のACK番号と最小のACK番号との間のメモリ部分を示しており、第1の実施形態では、このメモリ部分でのメモリ容量を残メモリ量として算出し、セッション切断のための判断に用いている。次に、本発明の第2の実施形態のTCPプロキシ装置について説明する。図4は、本発明の第2の実施形態のTCPプロキシ装置の要部の論理的な構成を示すブロック図である。図4に示したTCPプロキシ装置は図2に示したものと同様のものであるが、セッション切断のための判断基準としてダウンロード速度差しきい値設定方法を用いるものであり、そのため、RTT測定部を備えるとともに、セッション切断判定部及びTCP処理部の動作の点で図2に示したものと異なっている。図4に示したTCPプロキシ装置においても、共通バッファ31及びウィンドウ管理テーブル32は、図1に示したハードウェア構成におけるメモリ16上の領域として確保され、セッション切断判定部36、TCP処理部37、IP処理部35及びRTT測定部38は、例えば、CPU17がソフトウェアプログラムを実行することによって、あるいはハードウェア構成によって実現されるものである。以下、図4に示すTCPプロキシ装置について、図2に示したものと異なる点を説明する。RTT測定部38は、共通バッファ31内に存在する複数のセッションに関してセッションごとに、TCP処理部37を介して往復伝搬遅延時間RTTを測定する。RTTの測定方法としては、スリーウェイハンドシェークパケットを用いて実行する方法がある。あるいは、送信するデータパケット内のシーケンス番号とそのデータパケットを送信した時刻と、データパケットに対応して受信するACKパケット内のACK番号とそのACKパケットが到着した時刻を用い、最大セグメント長をMSSとして、{ACK番号>シーケンス番号MSS}を満たすときの受信時刻-送信時刻をRTTとする方法がある。TCP処理部37は、共通バッファ31内のデータを各端末に送信するためにウィンドウ管理テーブル32を参照してTCPによるプロトコル処理を実行し、生成したTCPセグメントをIP処理部34に送出し、さらに、スリーウェイハンドシェークパケットを用いてRTT測定を行う場合にはスリーウェイハンドシェークの処理を実行し、データパケットと対応するACKパケットの時刻に応じてRTTを測定する場合には、必要な情報をRTT測定部38に伝達する。セッション切断判定部36は、ウィンドウ管理テーブル32を参照し、RTT測定部38での測定結果に基づき、複数のセッションのうちの最も大きいACK番号を有するセッションと最も小さいACK番号を有するセッションとの間での往復伝搬遅延時間の差ΔRTTとウィンドウサイズの差ΔWを求め、時間に関する予め定めたしきい値をβとして、{残メモリ量÷ΔW×ΔRTT<β}を満たすときに、共通バッファ31内に存在する複数のセッションのうちACK番号が最小であるセッションを切断するようにTCP処理部37に指示し、さらに切断したセッションのみに関係するメモリ領域を解放クリアするように共通バッファ31に指示する。図3bにおいて符号52で示す破線の矢印は、現時点で未使用となっているメモリ部分を示しており、第2の実施形態では、この未使用部分があと何秒後に使い切られてしまうかを予想して、セッション切断のための判断に利用している。図5は、上述した各実施形態のTCPプロキシ装置をデータ配信サーバと複数のユーザ端末との間に配置した場合の動作を示している。ここで、サーバには複数の映像コンテンツ例えば、ビデオ1とビデオ2が格納されているものとする。図2及び図4ではTCPプロキシ装置におけるユーザ端末側へのセッションに関する構成のみが示されているが、図5では、配信サーバ側とのTCP処理及びユーザ端末側とのTCP処理の両方が示されている。図には示されていないが、ユーザのアカウント管理などのためにユーザ管理テーブルが設けられているものとする。ビデオ1及びビデオ2の両方についてソケットバッファ共通バッファが設定されており、配信サーバ側との処理においては、IP処理、ヘッダを分類するクラシファイア処理及びTCP処理を経て、各コンテンツのデータが対応するソケットバッファに格納される。コンテンツの識別は、クラシファイアからHTTPGetrequestパケットを抜き出し、HTTPヘッダ処理を行って含まれるURIに基づいて行うことができる。また、新規コンテンツの場合であれば、TCP処理において新規セッションを確立し、既存コンテンツであれば、TCPのいわゆる5タプルとコンテンツ情報とをひもづける。ユーザ端末側との処理においては、まず、ユーザ端末からHTTPGetrequestパケットが到着した際に、宛先IPアドレス、送信元IPアドレス及びURIを確認し、ユーザ管理テーブル内で設定されたアドレスであって、かつ、TCPプロキシ内に該当映像が存在する場合にそのユーザ端末をセッションに参加させる。そして、その時点からユーザ端末にライブ配信を行うために、現在のソケットバッファ内に存在する最も知さなシーケンス番号をSYN/ACKパケット内に記述してユーザ端末に送信する。これにより、ユーザは、その指定したコンテンツのライブ配信を受けられるようになる。なお、サーバが単一の映像のみを配信する場合には、ユーザ端末からSYNパケットをが到着した際に、その宛先IPアドレス及び送信元IPアドレスを確認し、ユーザ管理テーブル内で設定されたアドレスである場合にそのユーザ端末をセッションに参加させる。そして、その時点からユーザ端末にライブ配信を行うために、現在のソケットバッファ内に存在する最も知さなシーケンス番号をSYN/ACKパケット内に記述してユーザ端末に送信する。これにより、ユーザは、コンテンツのライブ配信を受けられるようになる。