JP2000349856A - 通信装置及び通信方法並びに記憶媒体 - Google Patents

通信装置及び通信方法並びに記憶媒体

Info

Publication number
JP2000349856A
JP2000349856A JP15795199A JP15795199A JP2000349856A JP 2000349856 A JP2000349856 A JP 2000349856A JP 15795199 A JP15795199 A JP 15795199A JP 15795199 A JP15795199 A JP 15795199A JP 2000349856 A JP2000349856 A JP 2000349856A
Authority
JP
Japan
Prior art keywords
communication
line
predetermined time
communication line
time
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP15795199A
Other languages
English (en)
Inventor
Kinya Takahashi
欣也 高橋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP15795199A priority Critical patent/JP2000349856A/ja
Publication of JP2000349856A publication Critical patent/JP2000349856A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)
  • Computer And Data Communications (AREA)

Abstract

(57)【要約】 【課題】 通信の信頼性を極力維持しつつ、切断処理の
ための時間待ち状態にある通信回線の利用を早期に図
り、新たな接続を早期に確立することができる通信装置
及び通信方法並びに記憶媒体を提供する。 【解決手段】 FREEとなっているCB112が存在
せず、先頭インデックス113(TWH)が0でない場
合は、TIME−WAITリストにおける先頭のCB
[TWH]を開放する。すなわちCB[TWH]を開放
して当該コネクションの資源を完全に開放し、状態ST
ATEをFREEにすると共に、TIME−WAITリ
ストから当該CB[TWH]を外す。これにより、割り
当て可能なCB112が存在しない場合であっても、T
IME−WAIT(J9)状態のCB112が存在する
ときは、その中から最も古いCB112が新たな通信回
線の確立のために割り当てられる(ステップS505〜
S507)。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術の分野】本発明は、通信の信頼性を
保証する通信プロトコルを使用して通信を行う通信装置
及び通信方法並びに記憶媒体に関する。
【0002】
【従来の技術】従来、ネットワーク通信において、通信
の信頼性を保証する通信プロトコルを使用して通信を行
う通信装置が知られている。このような通信プロトコル
には、通信状況をタイマを使用して一定時間監視するも
のがあり、例えばインターネットで使用されているTC
P(Transmission Control Protocol)が知られてい
る。TCPの特徴としては、コネクション型通信、パケ
ットの再送機能、フロー制御機能等が挙げられる。
【0003】TCPの基本仕様は、インターネットに関
するすべての公式標準であるRFC(Request For Comm
ent)の中のRFC793(Jon Postel, ed., Transmis
sionControl Protocol, September 1981)に記述されて
いる。
【0004】図11は、従来の通信装置におけるTCP
の通信手順の概要のフローチャートを示す図である。
【0005】まず、ホストコンピュータ(以下、「ホス
ト」と称する)の通信端点を割り当てる(ステップS1
101)。これは、バークレーのソケットI/F(イン
ターフェイス)に対応させると、socketシステムコール
に対応する処理である。このコールでできた通信端点は
ソケットと呼ばれ、一種のファイルディスクリプタに相
当する。これにより、通信に必要な資源が一定量割り当
てられる。
【0006】次いで、相手ホストの特定のアプリケーシ
ョンに対して接続処理を行う(ステップS1102)。
この処理で、接続のためのパケットが実際に送受信され
る。この処理は、ソケットI/Fでは、connectシステ
ムコールに対応する。
【0007】接続が完了すると、データの送受信が可能
となり、送受信が行われる(ステップS1103)。デ
ータの送受信が完了した後、切断処理のための通信を行
い(ステップS1104)、それが終了すると、通信端
点は削除され、通信のための資源が開放、すなわち通信
回線が開放される。この切断処理は、ソケットI/Fで
は、closeシステムコールに対応する。
【0008】図12は、従来の通信装置によるTCPの
通信手順における内部的な状態遷移を示す図である。
【0009】同図に示すCLOSED(J1)が、相手
ホストとの接続が確立していない状態を表し、ESTA
BLISHED(J5)が、相手ホストとの接続が確立
し、データ通信(図11のステップS1103)が可能
な状態を表す。CLOSED(J1)からESTABL
ISHED(J5)に移行するまでの処理が通信回線の
割り当て、接続処理であり、ESTABLISHED
(J5)からCLOSED(J1)に移行するまでの処
理が通信回線の切断処理である。
【0010】相手ホストとの接続を確立するには、一般
的には、能動オープンの場合と受動オープンの場合の2
通りの状態遷移がある。まず、能動オープンの場合は、
CLOSED(J1)においてSYNという同期をとる
ためのフラグを含むパケットを相手ホストに送信してS
YN−SENT(J2)に遷移し、ここで相手ホストか
らSYNとACKのパケットが返送されてきたら、AC
Kを返すことで、ESTABLISHED(J5)に移
行する。
【0011】一方、受動オープンの場合は、相手ホスト
からの接続要求を待ち受けるため、LISTEN(J
3)という状態で待機する。ここで相手ホストから接続
要求のSYNのパケットが到着したら、SYNとACK
のパケットを相手ホストに送信して、SYN−RECI
EVED(J4)に遷移する。そして、該送信したパケ
ットに対するACKのパケットを受信することで、ES
TABLISHED(J5)に遷移し、接続処理が完了
し、接続が確立される。なお、LISTEN(J3)か
らSYN−SENT(J2)を経てESTABLISH
ED(J5)に遷移する場合もある。
【0012】切断処理(図11のステップS1104)
は、基本的には相手ホストにFINパケットを送信し、
これに対するACKパケットを相手ホストから受信する
ことにより完了するが、相手ホストも同様の処理を行う
ため、FINパケットを先に送信したか、あるいは送信
する前に相手ホストからのFINパケットを受信したか
で、状態遷移が相違する。
【0013】相手ホストからのFINパケットが先に到
着した場合は、ESTABLISHED(J5)からC
LOSE−WAIT(J10)、LAST−ACK(J
11)を経てCLOSED(J1)に遷移する。
【0014】一方、相手ホストからのFINパケットが
到着する前にFINパケットをこちらから送信した場合
は、まずFIN−WAIT−1(J6)に遷移する。こ
の状態においては、相手ホストから送信される可能性が
あるパケットとして、こちらから送信したFINパケ
ットに対するACKパケット、こちらから送信したF
INパケットに対するACKを伴わない相手ホストから
のFINパケット、こちらから送信したFINパケッ
トに対するACK及び相手ホストからのFINの双方が
乗ったパケット、またはこれら以外のパケットが考え
られる。
【0015】こちらから送信したFINパケットに対
するACKパケットを受信した場合は、FIN−WAI
T−2(J7)に遷移し、ここで相手ホストからのFI
Nパケットを受信したら、それに対するACKパケット
を返信して、所定の時間待ち状態であるTIME−WA
IT(J9)に遷移する。
【0016】こちらから送信したFINパケットに対
するACKを伴わない相手ホストからのFINパケット
を受信した場合は、相手ホストからのFINパケットに
対するACKパケットを返信してCLOSING(J
8)に遷移し、ここでこちらから送信したFINパケッ
トに対するACKパケットを受信すれば、TIME−W
AIT(J9)に遷移する。
【0017】こちらから送信したFINパケットに対
するACK及び相手ホストからのFINの双方が乗った
パケットを受信した場合は、相手ホストからのパケット
におけるFINに対するACKのパケットを返信して、
TIME−WAIT(J9)に遷移する。
【0018】上記TIME−WAIT(J9)からCL
OSED(J1)へは、タイマ等を用いて一定時間の経
過を経て遷移させるのが一般的である。多くのOSで
は、1分または4分の時間をタイマにより設定し、タイ
ムアウトした後、CLOSED(J1)に移行するよう
にしている。このように一定時間の経過を待つようにす
るのは、こちらのホストが送信したACKが相手ホスト
に確かに届いたか否かを確認するためである。すなわ
ち、こちらのホストは相手ホストにACKを送信してT
IME−WAIT(J9)に遷移したが、ACKが何ら
かの事由で喪失し、相手ホストに到着しない場合があ
る。相手ホストは、こちらから送信したACKの受信が
ない場合は、FINパケットを再送してくるので、その
再送パケットに対するACKを返送して相手ホストとの
切断を正常に終了させる必要がある。従って、FINパ
ケットの再送の有無を確認するため、一定時間だけ時間
待ち状態を継続、すなわち、相手ホストとの接続状態を
維持する必要があるのである。
【0019】
【発明が解決しようとする課題】しかしながら、上記従
来の通信装置では、相手ホストとの切断の正常な終了を
確認するために一定時間の経過を一律に待たなければな
らず、その時間は通信のための資源を確保したままいつ
でも通信可能にしておく必要がある。そのため、新たに
通信回線の接続を確立しようとした場合に接続のための
資源が不足する場合があり、他に開放されている通信回
線が存在しない場合には、いずれかの通信回線について
TIME−WAIT(J9)が終了し資源が開放される
まで、新たな割り当て、接続処理ができないという問題
があった。
【0020】特に、通信回線の接続と切断のサイクルが
短い状況下では、データ通信が完了しているのもかかわ
らずTIME−WAIT(J9)状態になっているため
に開放状態となっていない通信端点の数が多くなる。組
み込み機器のように、限られた資源の保有しか許されな
い機器では、同時に接続可能なコネクションの数に限り
があるため、資源が不足する事態が頻繁に発生し得る。
【0021】なお、このような資源が不足する状況は、
TIME−WAIT(J9)に限らず、例えばFIN−
WAIT−2(J7)の状態等において待ち時間を設定
する場合にも同様に起こり得る。
【0022】このような不具合を解消するために、資源
の乏しい機器においては、RSTという強制切断のため
のパケットを送信することにより、ESTABLISH
ED(J5)からFIN−WAIT−1(J6)または
CLOSE−WAIT(J10)に移行することなく、
強制的にCLOSED(J1)に移行するという手段を
用いることも考えられる。しかしながら、これは非常手
段であり、RSTパケットの喪失が発生すると相手ホス
トは切断不能な状態になる可能性もあることから、信頼
性を保証するネットワークプロトコルとして採用するこ
とは不適当である。従って、本来の切断手順に従って、
双方のホストの切断を正常に終了させるのが望ましい。
【0023】本発明は上記従来技術の問題を解決するた
めになされたものであり、その目的は、通信の信頼性を
極力維持しつつ、切断処理のための時間待ち状態にある
通信回線の利用を早期に図り、新たな接続を早期に確立
することができる通信装置及び通信方法を提供すること
にある。
【0024】
【課題を解決するための手段】上記目的を達成するため
に本発明の請求項1の通信装置は、複数の通信回線の接
続を確立可能であり、接続が確立された通信回線の切断
処理の際、該切断処理の正常な終了を確認するための所
定の時間待ち状態を経て、前記接続が確立された通信回
線を開放する通信装置において、前記所定の時間待ち状
態にある通信回線を特定するための回線特定情報を記憶
可能な記憶手段と、通信回線の新たな確立要求が生じた
場合に、開放されている通信回線が存在しないときは、
前記記憶手段に記憶された回線特定情報の中から回線特
定情報を選択する選択手段と、該選択手段により選択さ
れた回線特定情報により特定される通信回線を、該通信
回線の前記所定の時間待ち状態が終了したか否かにかか
わらず開放する早期開放手段と、該早期開放手段により
開放された通信回線を前記生じた新たな確立要求のため
に割り当てる割当手段とを備えたことを特徴とする。
【0025】同じ目的を達成するために本発明の請求項
2の通信装置は、上記請求項1記載の構成において、前
記選択手段は、前記所定の時間待ち状態にある通信回線
の通信の信頼性に与える影響が最も小さくなるような回
線特定情報を選択することを特徴とする。
【0026】同じ目的を達成するために本発明の請求項
3の通信装置は、上記請求項1または2記載の構成にお
いて、前記記憶手段は、前記所定の時間待ち状態にある
通信回線が該所定の時間待ち状態になった時期を把握す
るための時間情報を前記回線特定情報のそれぞれに対応
付けて記憶し、前記選択手段は、前記時間情報に基づい
て、前記所定の時間待ち状態になった時期が最も古い回
線特定情報から優先的に選択することを特徴とする。
【0027】同じ目的を達成するために本発明の請求項
4の通信装置は、上記請求項1〜3のいずれか1項に記
載の構成において、前記所定の時間待ち状態は複数種類
設定可能であることを特徴とする。
【0028】同じ目的を達成するために本発明の請求項
5の通信装置は、上記請求項4記載の構成において、前
記記憶手段は、前記複数種類の時間待ち状態毎に優先順
位を付け、前記複数種類の時間待ち状態のそれぞれにつ
いて各状態にある通信回線を特定するための回線特定情
報を記憶し、前記選択手段は、優先順位が高い時間待ち
状態における回線特定情報から優先的に選択することを
特徴とする。
【0029】同じ目的を達成するために本発明の請求項
6の通信装置は、上記請求項1〜5のいずれか1項に記
載の構成において、前記記憶手段は、前記所定の時間待
ち状態にある通信回線を特定するための回線特定情報
を、前記所定の時間待ち状態になった後、所定時間経過
後に記憶することを特徴とする。
【0030】同じ目的を達成するために本発明の請求項
7の通信方法は、複数の通信回線の接続を確立可能であ
り、接続が確立された通信回線の切断処理の際、該切断
処理の正常な終了を確認するための所定の時間待ち状態
を経て、前記接続が確立された通信回線を開放する通信
方法において、前記所定の時間待ち状態にある通信回線
を特定するための回線特定情報を記憶可能な記憶工程
と、通信回線の新たな確立要求が生じた場合に、開放さ
れている通信回線が存在しないときは、前記記憶工程に
記憶された回線特定情報の中から回線特定情報を選択す
る選択工程と、該選択工程により選択された回線特定情
報により特定される通信回線を、該通信回線の前記所定
の時間待ち状態が終了したか否かにかかわらず開放する
早期開放工程と、該早期開放工程により開放された通信
回線を前記生じた新たな確立要求のために割り当てる割
当工程とを含むことを特徴とする。
【0031】同じ目的を達成するために本発明の請求項
8の通信方法は、上記請求項7記載の構成において、前
記選択工程は、前記所定の時間待ち状態にある通信回線
の通信の信頼性に与える影響が最も小さくなるような回
線特定情報を選択することを特徴とする。
【0032】同じ目的を達成するために本発明の請求項
9の通信方法は、上記請求項7または8記載の構成にお
いて、前記記憶工程は、前記所定の時間待ち状態にある
通信回線が該所定の時間待ち状態になった時期を把握す
るための時間情報を前記回線特定情報のそれぞれに対応
付けて記憶し、前記選択工程は、前記時間情報に基づい
て、前記所定の時間待ち状態になった時期が最も古い回
線特定情報から優先的に選択することを特徴とする。
【0033】同じ目的を達成するために本発明の請求項
10の通信方法は、上記請求項7〜9のいずれか1項に
記載の構成において、前記所定の時間待ち状態は複数種
類設定可能であることを特徴とする。
【0034】同じ目的を達成するために本発明の請求項
11の通信方法は、上記請求項10記載の構成におい
て、前記記憶工程は、前記複数種類の時間待ち状態毎に
優先順位を付け、前記複数種類の時間待ち状態のそれぞ
れについて各状態にある通信回線を特定するための回線
特定情報を記憶し、前記選択工程は、優先順位が高い時
間待ち状態における回線特定情報から優先的に選択する
ことを特徴とする。
【0035】同じ目的を達成するために本発明の請求項
12の通信方法は、上記請求項7〜11のいずれか1項
に記載の構成において、前記記憶工程は、前記所定の時
間待ち状態にある通信回線を特定するための回線特定情
報を、前記所定の時間待ち状態になった後、所定時間経
過後に記憶することを特徴とする。
【0036】同じ目的を達成するために本発明の請求項
13の記憶媒体は、複数の通信回線の接続を確立可能で
あり、接続が確立された通信回線の切断処理の際、該切
断処理の正常な終了を確認するための所定の時間待ち状
態を経て、前記接続が確立された通信回線を開放する通
信方法で使用されるプログラムを記憶した記憶媒体にお
いて、前記所定の時間待ち状態にある通信回線を特定す
るための回線特定情報を記憶可能な記憶工程のコード
と、通信回線の新たな確立要求が生じた場合に、開放さ
れている通信回線が存在しないときは、前記記憶工程の
コードに記憶された回線特定情報の中から回線特定情報
を選択する選択工程のコードと、該選択工程のコードに
より選択された回線特定情報により特定される通信回線
を、該通信回線の前記所定の時間待ち状態が終了したか
否かにかかわらず開放する早期開放工程のコードと、該
早期開放工程のコードにより開放された通信回線を前記
生じた新たな確立要求のために割り当てる割当工程のコ
ードとを記憶したことを特徴とする。
【0037】同じ目的を達成するために本発明の請求項
14の記憶媒体は、上記請求項13の構成において、前
記選択工程のコードは、前記所定の時間待ち状態にある
通信回線の通信の信頼性に与える影響が最も小さくなる
ような回線特定情報を選択することを特徴とする。
【0038】
【発明の実施の形態】以下、本発明の実施の形態を図面
を参照して説明する。
【0039】(第1の実施の形態)本発明の第1の実施
の形態における通信の処理及び状態遷移は、図11及び
図12に示す従来の通信装置におけるものと基本的に同
様である。ただし、本実施の形態では、切断処理が未完
了の通信回線をも新たな割り当ての対象とし、切断処理
及び割り当て処理において従来と相違点がある。
【0040】図1は、本発明の第1の実施の形態に係る
通信装置の主要な構成を示すブロック図である。
【0041】本通信装置は、CPU101(選択手段、
早期開放手段、割当手段)にバス107を介してROM
102、タイマ103、RAM106(記憶手段)及び
通信デバイス104が接続されて構成される。CPU1
01は本装置全体を制御する。ROM102には、CP
U101により実行される各種プログラムや各種データ
が格納されている。通信デバイス104は、パケットを
電気的な信号に変換して通信線105に送出したり、通
信線105から受信した電気信号をパケットに変換した
りする。
【0042】RAM106は、コントロールボックス1
12(以下、「CB112」と称する)、先頭インデッ
クス113(TWH)、末尾インデックス114(TW
T)、先頭インデックス115(FW2H)及び末尾イ
ンデックス116(FW2T)を有する。なお、先頭イ
ンデックス115及び末尾インデックス116は、本実
施の形態では使用しない。
【0043】タイマ103は、CMDレジスタ108、
TMレジスタ109、TYPEレジスタ110及びTI
Dレジスタ111を有し、これらにより複数のタイマ時
間の設定、解除を行える。タイマ設定を行う場合は、現
在からの相対時間をTMレジスタ109に、タイマの種
別をTYPEレジスタ110に、対象となるCB112
のインデックスをTIDレジスタ111に、それぞれセ
ットし、CMDレジスタ108に「1」を書き込む。T
YPEレジスタ110にセットするタイマの種別は、識
別できるように一意の整数値等で定義する。例えばTI
ME−WAIT(J9)状態(所定の時間待ち状態)に
対するタイマ種別の場合、「1」(以下、混同を防止す
るため、この整数値を「TM−TW」と記す)をセット
する。
【0044】セットした時間(所定時間)が経過しタイ
ムアウトが生じた場合は、その種別、CB112のイン
デックスを、TYPEレジスタ110、TIDレジスタ
111にそれぞれ格納し、CPU101に割り込み信号
を送る。CPU101は、TYPEレジスタ110、T
IDレジスタ111の値を読み取ることにより、タイム
アウトの対象を知ることができる。
【0045】また、タイムアウトの前に設定を解除する
場合は、TYPEレジスタ110、TIDレジスタ11
1に解除したいタイマの値をセットし、CMDレジスタ
108に「0」を書き込む。
【0046】CB112は、各TCPコネクションに対
する状態を保持するものであり、本装置が必要とする数
だけ確保されている。CB112には、複数(N個)の
コネクションを扱うことができるよう、N個のブロック
が割り当てられている。CB112によりコネクション
が特定され、CB[1]、CB[2]…CB[N]のよ
うに表すことで、各コネクションが個別に特定される。
【0047】本実施の形態では、TIME−WAITリ
スト(回線特定情報)をRAM106に構築する。TI
ME−WAITリストは、図12に示すTIME−WA
IT(J9)状態となっているコネクションのリストで
あり、先頭インデックス113、CB112及び末尾イ
ンデックス114により特定される。
【0048】先頭インデックス113は、TIME−W
AITリストの先頭を表すCB112のインデックスで
あり、TIME−WAITリストの先頭コネクションを
特定する。末尾インデックス114は、TIME−WA
ITリストの末尾を表すCB112のインデックスであ
り、TIME−WAITリストの末尾コネクションを特
定する。これらは初期時には0であり、0の場合、対応
するコネクションが存在しないことを表す。
【0049】図2は、CB112の主要な領域構成を示
すブロック図である。各CB112は同様に構成され
る。
【0050】CB112は、領域201〜207を備え
る。領域201には、TCPの状態(STATE)が格
納される。状態には、図12に示したもののほかに、F
REEという状態がある。このFREEは、当該CB1
12で特定されるコネクションが使用されていないこと
を示す。アプリケーションから通信端点を生成する要求
(通信回線の新たな接続要求)があると、FREE状態
のCB112を検索し、FREE状態のものがあった場
合は、それの状態をCLOSED(J1)にして、以
後、上記アプリケーションは、検索したCB112を使
用して通信を行うべく処理することになる。また、CB
112は、コネクションが切断され、すべての処理が完
了した時点で再びFREE状態となり、新たな通信端点
の割り当ての対象の1つになる。
【0051】領域202には、自ホストのIPアドレス
(SIP)が、領域203には自ホストのポート番号
(SPORT)がそれぞれ格納される。領域204、2
05にはそれぞれ、通信相手のホストのIPアドレス
(DIP)、ポート番号(DPORT)が格納される。
TCPの論理的回線は、これら4つ1組で特定され、こ
れらのうち1つでも異なれば別のコネクションとして成
立する。
【0052】領域206、207は、TIME−WAI
Tリストを保持、特定するための領域である。本実施の
形態では、TIME−WAITリストに双方向リンクを
用いている。具体的には、領域206にはTIME−W
AITリストにおける当該コネクションの1つ前のイン
デックスが格納され、領域207には当該コネクション
の1つ後ろのインデックスが格納される。前、または後
ろのコネクションが存在しない場合は、「0」が格納さ
れる。初期時には、これらは「0」となっている。
【0053】次に、本実施の形態における切断処理を説
明する。以下、図12に示すESTABLISHED
(J5)状態、すなわちコネクションが成立し、CB1
12の1つをこのコネクションのために割り当ててある
状態を例にとり、以後の処理を説明する。この状態で
は、自ホストと相手ホストの各IPアドレス及びポート
番号が領域202〜205に格納されている。
【0054】図3は、本実施の形態における切断処理の
フローチャートを示す図である。本処理は、従来でいう
図11のステップS1104の処理に相当し、CPU1
01により実行される。
【0055】まず、ESTABLISHED(J5)に
おいて、FINパケットを相手ホストに送出して状態S
TATEをFIN−WAIT−1(J6)にし(ステッ
プS301)、相手ホストからのパケットの到着を待つ
(ステップS302)。この状態においては、相手ホス
トから送信される可能性があるパケットとして、こち
らから送信したFINパケットに対するACKパケッ
ト、こちらから送信したFINパケットに対するAC
Kを伴わない相手ホストからのFINパケット、こち
らから送信したFINパケットに対するACK及び相手
ホストからのFINの双方が乗ったパケット、または
これら以外のパケットが考えられる。
【0056】次いで、到着したパケットに応じた処理を
実行し(ステップS303)、その処理の結果、状態S
TATEがTIME−WAIT(J9)に遷移したか否
かを判別する(ステップS304)。
【0057】具体的には、前記ステップS303では、
次のような対応処理がなされ得る。
【0058】こちらから送信したFINパケットに対
するACKパケットを受信した場合は、FIN−WAI
T−2(J7)に遷移し、ここで相手ホストからのFI
Nパケットを受信したら、それに対するACKパケット
を返信して、TIME−WAIT(J9)に遷移する。
【0059】こちらから送信したFINパケットに対
するACKを伴わない相手ホストからのFINパケット
を受信した場合は、相手ホストからのFINパケットに
対するACKパケットを返信してCLOSING(J
8)に遷移し、ここでこちらから送信したFINパケッ
トに対するACKパケットを受信すれば、TIME−W
AIT(J9)に遷移する。
【0060】こちらから送信したFINパケットに対
するACK及び相手ホストからのFINの双方が乗った
パケットを受信した場合は、相手ホストからのパケット
におけるFINに対するACKのパケットを返信して、
TIME−WAIT(J9)に遷移する。
【0061】これら以外の場合は、TIME−WAI
T(J9)に移行することはなく、FIN−WAIT−
1(J6)の状態が維持される。
【0062】このような処理を経て、前記ステップS3
04の判別の結果、状態STATEがTIME−WAI
T(J9)に遷移した場合は、TIME−WAIT(J
9)を解除するためのTIME−WAITタイマを設定
する(ステップS305)。この設定は、上述したよう
に、タイマ103のTYPEレジスタ110及びTID
レジスタ111にタイマ種別を示すTM−TW及び対象
のCB112のインデックスをそれぞれセットする。さ
らにタイムアウトの時間をTMレジスタ109にセット
し、CMDレジスタ108に「1」を書き込むことによ
り実現される。
【0063】ここまでの処理は、TCPの使用に準拠し
た処理内容である。本実施の形態ではさらに、続くステ
ップS306で、TIME−WAITリストに当該TI
ME−WAIT(J9)状態にあるコネクションを示す
CB112を追加する。このCB112は、末尾インデ
ックス114に格納されているインデックスが示すCB
[TWT]の直後に追加される。具体的には、今回TI
ME−WAIT(J9)に移行したCB112をCB
[I]と記すと、 CB[TWT].NEXT=I CB[I].PREV=TWT TWT=I という変更により、TIME−WAITリストの末尾に
追加されることになる。もし、TWTが0、すなわちT
IME−WAITリストが空の場合は、上記各式の代わ
りにTWH=I、TWT=Iという式を用いればよい。
【0064】これらの処理の後、本処理を終了する。
【0065】本処理によれば、新たにTIME−WAI
T(J9)状態に遷移したコネクションから順にTIM
E−WAITリストに追加され、しかも時系列的に、古
いものから新しいものへTWHからTWTの方向にリン
クが張られることになる。CB[TWT]は最も新しく
TIME−WAIT(J9)になったコネクション、C
B112を示すことになる。
【0066】図4は、割り込み処理のフローチャートを
示す図である。
【0067】まず、TYPEレジスタ110を調べ、T
IME−WAITタイマがタイムアウトしたか否かを判
別し(ステップS401)、タイムアウトしない場合は
直ちに本処理を終了する一方、TIME−WAITタイ
マがタイムアウトした場合は、当該タイムアウトしたコ
ネクションを特定するCB112をTIME−WAIT
リストから削除する(ステップS402)。これは、前
記ステップS306でTIME−WAITリストに追加
されているからである。タイムアウトしたCB112の
インデックスは、TIDレジスタ111から得られる。
削除するには、先頭インデックス113(TWH)の示
すCB112から順にCB[NEXT]を辿っていき、
CB[TID]を探し、双方向リンクからそれを抜く処
理を行う。もし、ここで、TIDがTWHやTWTと一
致した場合は、それらも更新する。
【0068】次いで、CB[TID]で使用されている
接続のための資源をすべて開放し、状態STATEをF
REEに移行させ(ステップS403)、本処理を終了
する。
【0069】本処理によれば、TIME−WAITタイ
マがタイムアウトしたCB112から順にTIME−W
AITリストから削除され、これにより通信回線が順次
開放される。
【0070】図5は、新たな通信回線の割り当て処理の
フローチャートを示す図である。本処理は、従来でいう
図11のステップS1101の処理に対応し、新たにコ
ネクションを形成し、CB112を割り当てる処理であ
る。
【0071】ステップS501〜S504では、不使用
で割り当て可能なCB112を検索する。すなわち、ま
ず、変数iを「1」に設定し(ステップS501)、C
B[i]で特定されるコネクションの状態STATEが
FREEであるか否かを判別する(ステップS50
2)。その判別の結果、CB[i]で特定されるコネク
ションの状態STATEがFREEでない場合はi<N
が成立するか否かを判別し(ステップS503)、その
判別の結果、i<Nである場合は変数iを1だけインク
リメントして(ステップS504)、前記ステップS5
02に戻る。
【0072】前記ステップS502の判別の結果、CB
[i]で特定されるコネクションの状態STATEがF
REEである場合は、不使用で割り当て可能なCB11
2が検索されたので、そのCB[i]で特定されるコネ
クションの状態STATEをCLOSED(J1)にし
て割り当てを完了し(ステップS505)、本処理を終
了する。この場合は、このCB[i]が通信のために用
いられる。
【0073】一方、前記ステップS503の判別の結
果、i<Nが成立しない場合、すなわちN個すべてのC
B112を検索してもFREEとなっているCB112
が存在しない場合は、先頭インデックス113(TW
H)が0か否かを判別する(ステップS506)。その
判別の結果、先頭インデックス113(TWH)が0で
ある場合は、TIME−WAIT(J9)状態のCB1
12が存在しないと判断されるので、エラー表示を行い
(ステップS508)、本処理を終了する。エラー処理
では、例えば、能動オープンの場合には、アプリケーシ
ョンに対して割り当てができない旨のエラー通知をし、
受動オープンの場合は、相手ホストへ接続許否のパケッ
トを送信する。
【0074】一方、前記ステップS506の判別の結
果、先頭インデックス113(TWH)が0でない場合
は、先頭インデックス113(TWH)で特定される先
頭のCB[TWH]を開放し、TIME−WAITリス
トを更新する(ステップS507)(選択手段、早期開
放手段)。すなわちCB[TWH]を開放して当該コネ
クションの資源を完全に開放し、状態STATEをFR
EEにすると共に、TIME−WAITリストから当該
CB[TWH]を外す。これにより、割り当て可能なC
B112が存在しない場合であっても、TIME−WA
IT(J9)状態のCB112の中から割り当て対象を
得ることができる(割当手段)。
【0075】先頭のCB[TWH]は最も古いものであ
り、TIME−WAITタイマの設定後の経過時間が最
も長いものである。従って、CB[TWH]を開放する
ことで、通信の信頼性に与える悪影響を最小限に抑える
ことができる。
【0076】TIME−WAITリストの更新処理は、
TWH=CB[TWH].NEXTとすると共に、CB
[TWH].PREV=0とすることでなされ、また、
i=TWHとする。
【0077】ステップS507の処理後は、前記ステッ
プS505で、上記開放されたCB[TWH]が新たな
接続のために割り当てられる。
【0078】本処理によれば、FREE状態で割り当て
可能なCB112が存在しない場合であっても、TIM
E−WAIT(J9)状態のCB112が存在すればそ
の中から最も古いCB112が新たな通信回線の確立の
ために割り当てられる。
【0079】本実施の形態によれば、CB112が扱え
得るすべてのコネクションが使用中等で割り当て不能で
あっても、TIME−WAIT(J9)状態のコネクシ
ョンがある場合は、その中で最も古いものをTIME−
WAIT(J9)状態の経過を待たずして開放し、新た
な接続に割り当てるので、通信の信頼性に極力悪影響を
与えることなく、CB112の利用を早期に図り、新た
なコネクションを早期に形成することができる。
【0080】(第2の実施の形態)第1の実施の形態で
は、TIME−WAIT(J9)状態のCB112の中
から最も古いものを開放するようにしたが、データ転送
時間が非常に短く通信端点の新規割り当てから切断まで
のサイクルが短い態様が多数続く場合は、TIME−W
AIT(J9)状態に遷移してから極めて短時間に次の
新たな接続のために開放されるという状況になり得る。
しかしこれでは、TIME−WAIT(J9)を設けた
意義がなくなり、実質的にTIME−WAIT(J9)
がない状態と同じであり、通信の信頼性に与える影響が
無視できなくなる。
【0081】そこで、本第2の実施の形態では、これを
考慮し、TIME−WAIT(J9)状態を維持する最
低限の時間を保証し、信頼性の著しい悪化を抑制したも
のである。
【0082】第2の実施の形態では、切断処理、割り込
み処理に関し、第1の実施の形態における図3、図4に
代えて、図6、図7を用いる。割り当て処理は第1の実
施の形態と同様に図5の処理によりなされる。
【0083】図6は、本実施の形態における切断処理の
フローチャートを示す図である。本処理は第1の実施の
形態における図3の処理に対応する。
【0084】ステップS601〜S605では、図3の
ステップS301〜S305と同様の処理を実行する。
次いで、ステップS606では、TWLINタイマを設
定する。このタイマは、TIME−WAIT(J9)と
なったCB112をTIME−WAITリストに追加す
る際の猶予時間を設けるためのものであり、このタイマ
がタイムアウトした時点で、後述する図7のステップS
705の処理により、CB112がTIME−WAIT
リストに追加される。TWLINタイマの種別をTW−
TWLINと表す。
【0085】通常、TIME−WAITタイマの設定時
間はMSL(Maximum Segment LifeTime)の2倍の値に
設定することが推奨されている。これは、ネットワーク
内にパケットが滞留していないことを十分に保証する時
間である。本第2の実施の形態では、TWLINタイマ
の設定時間をこれより短い時間に設定する。
【0086】例えば、TCPの特性上、パケットの送受
信をしている間に相手ホストの平均応答時間を算出して
保持しているが、その時間を利用してもよいし、また、
相手ホストの再送時間間隔を利用してもよい。自ホスト
からの最後のACKパケットが喪失して相手ホストから
の再送パケットが喪失することなく受信されることを想
定した時間を設定し、最低限の信頼性を保証するように
する。
【0087】前記ステップS606の処理後は本処理を
終了する。
【0088】本処理によれば、TIME−WAIT(J
9)に移行したCB112について、TIME−WAI
Tタイマが設定され、さらにTWLINタイマが設定さ
れる。
【0089】図7は、割り込み処理のフローチャートを
示す図である。本処理は第1の実施の形態における図4
に対応する。
【0090】ステップS701〜S703では、図4の
ステップS401〜S403と同様の処理を実行する。
ステップS701の判別の結果、TIME−WAITタ
イマがタイムアウトしていない場合は、TWLINタイ
マがタイムアウトしたか否かを判別する(ステップS7
04)。その判別の結果、TWLINタイマがタイムア
ウトしていない場合は直ちに本処理を終了する一方、T
WLINタイマがタイムアウトした場合は、TIME−
WAIT(J9)状態になっているコネクションを示す
CB112をTIME−WAITリストに追加する(ス
テップS705)。この処理は、図3のステップS30
6と同様になされる。その後、本処理を終了する。
【0091】本処理によれば、TIME−WAITリス
トに追加されているCB112については、TIME−
WAITタイマがタイムアウトしたものから順にTIM
E−WAITリストから削除され、これにより通信回線
が順次開放される。一方、新たにTIME−WAIT
(J9)に移行したCB112については、TWLIN
タイマがタイムアウトした時点で初めてTIME−WA
ITリストに追加され、開放の対象とされ得ることにな
る。
【0092】本実施の形態によれば、TIME−WAI
T(J9)に移行しても、TIME−WAITリストに
加えられるまで一定の時間(TWLINタイマがタイム
アウトするまで)確保されるので、CB112の割り当
てと切断のサイクルが短く頻繁に行われる状況であって
も、TIME−WAIT(J9)が有名無実になること
を防止することができる。従って、TIME−WAIT
(J9)状態の一定時間の確保により、通信の最低限の
保証を確実に得つつ、第1の実施の形態と同様の効果を
得ることができる。
【0093】(第3の実施の形態)第1、第2の実施の
形態では、TIME−WAIT(J9)状態に着目した
が、切断処理の正常な終了を確認するための時間待ち状
態には、上記TIME−WAIT(J9)のほかに、図
12に示すFIN−WAIT−2(J7)等もある。F
IN−WAIT−2(J7)は、多くのOSで設けられ
る。本第3の実施の形態では、このFIN−WAIT−
2(J7)に着目する。
【0094】第3の実施の形態では、切断処理、割り込
み処理、割り当て処理に関し、第1の実施の形態におけ
る図3、図4、図5に代えて、図8、図9、図10を用
いる。
【0095】FIN−WAIT−2(J7)は、相手ホ
ストからのFINパケットを待つ状態である。この状態
で、もし、相手ホストがダウンしたりネットワーク経路
に障害が発生したりすると、FINパケットは永久に来
ないことになり、自ホストはFIN−WAIT−2(J
7)のまま遷移できず、従って、新たな接続のために開
放されることもないため、接続のための資源が無駄にな
る。
【0096】FIN−WAIT−2タイマはこのような
不具合を解消するために従来から設けられているもの
で、FIN−WAIT−2(J7)に移行したらタイマ
を設定し、タイムアウトする前に状態が遷移したならそ
のタイマを解除する一方、タイムアウトしたら相手ホス
トがダウン等したものと判断して当該コネクションを破
棄し、資源を開放するというものである。
【0097】本実施の形態では、TIME−WAITリ
ストだけでなく、FIN−WAIT−2リストもRAM
106に構築する。FIN−WAIT−2リストは、F
IN−WAIT−2(J7)状態となっているコネクシ
ョンのリストであり、図1に示す先頭インデックス11
5(FW2H)、CB112及び末尾インデックス11
6(FW2T)により特定される。FIN−WAIT−
2リストは、TIME−WAITリストと同様に、双方
向リストであり、CB112間のリンクには領域206
(PREV)及び領域207(NEXT)が用いられ
る。
【0098】先頭インデックス115は、FIN−WA
IT−2リストの先頭を表すCB112のインデックス
であり、FIN−WAIT−2リストの先頭コネクショ
ンを特定する。末尾インデックス116は、FIN−W
AIT−2リストの末尾を表すCB112のインデック
スであり、FIN−WAIT−2リストの末尾コネクシ
ョンを特定する。これらは初期時には0であり、0の場
合、対応するコネクションが存在しないことを表す。
【0099】図8は、本実施の形態における切断処理の
フローチャートを示す図である。本処理は第1の実施の
形態における図3の処理に対応する。
【0100】まず、FIN−WAIT−2(J7)状態
において、ステップS801〜S806では、図3のス
テップS301〜306と同様の処理を実行する。ただ
し、前記ステップS804の判別の結果、状態STAT
EがTIME−WAIT(J9)に遷移していない場合
は、ステップS808に進む。
【0101】ステップS808では、FIN−WAIT
−2(J7)に遷移したか否かを判別する。その判別の
結果、FIN−WAIT−2(J7)に遷移していない
場合は前記ステップS802に戻る一方、FIN−WA
IT−2(J7)に遷移した場合は、FIN−WAIT
−2タイマを設定する(ステップS809)。この設定
は、前記ステップS305と同様であるが、タイマ10
3のTYPEレジスタ110にセットするタイマ種別
は、TM−FW2とする。
【0102】次いで、FW2LIN2タイマを設定し
(ステップS810)、前記ステップS802に戻る。
このFW2LIN2タイマは、FIN−WAIT−2
(J7)となったCB112をFIN−WAIT−2リ
ストに追加する際の猶予時間を設けるためのものであ
り、このタイマがタイムアウトした時点で、後述する図
9のステップS907の処理により、CB112がFI
N−WAIT−2リストに追加される。FW2LIN2
タイマの種別はTM−FW2LINとする。このタイマ
の設定時間(所定時間)は、FIN−WAIT−2タイ
マの設定時間よりも短い時間とする。例えば第2の実施
の形態におけるTWLINタイマと同様の値でもよい。
【0103】前記ステップS806の処理後は、FIN
−WAIT−2タイマ及びFW2LIN2タイマを解除
し(ステップS807)、本処理を終了する。
【0104】本処理によれば、FIN−WAIT−2
(J7)に移行した場合は、FIN−WAIT−2タイ
マ及びFW2LIN2タイマが設定される。さらにTI
ME−WAIT(J9)に移行した場合は、TIME−
WAITタイマ及びTWLINタイマが設定され、FI
N−WAIT−2タイマ及びFW2LIN2タイマは解
除される。
【0105】図9は、割り込み処理のフローチャートを
示す図である。本処理は第1の実施の形態における図4
に対応する。
【0106】まず、TYPEレジスタ110を調べ、T
IME−WAITタイマがタイムアウトしたか否かを判
別し(ステップS901)、TIME−WAITタイマ
がタイムアウトした場合は、続くステップS902、S
903で図4のステップS402、S403と同様の処
理を実行し、本処理を終了する。一方、TIME−WA
ITタイマがタイムアウトしていない場合は、TWLI
Nタイマがタイムアウトしたか否かを判別し(ステップ
S904)、その判別の結果、TWLINタイマがタイ
ムアウトした場合は、ステップS905で図7のステッ
プS705と同様の処理を実行し、本処理を終了する。
【0107】前記ステップS904の判別の結果、TW
LINタイマがタイムアウトしていない場合は、FW2
LIN2タイマがタイムアウトしたか否かを判別し(ス
テップS906)、その判別の結果、FW2LIN2タ
イマがタイムアウトした場合は、FIN−WAIT−2
(J7)状態になっているコネクションを示すCB11
2をFIN−WAIT−2リストに追加する(ステップ
S907)。この処理は、図3のステップS306や図
7のステップS705と同様になされる。これにより、
FIN−WAIT−2リストに追加されるまで一定時間
が確保される。その後、本処理を終了する。
【0108】一方、前記ステップS906の判別の結
果、FW2LIN2タイマがタイムアウトしていない場
合は、FIN−WAIT−2タイマがタイムアウトした
か否かを判別し(ステップS908)、その判別の結
果、FIN−WAIT−2タイマがタイムアウトしてい
な場合は本処理を終了する一方、FIN−WAIT−2
タイマがタイムアウトした場合は、当該タイムアウトし
たコネクションを特定するCB112をTIME−WA
ITリストから削除すると共に、CB[TID]で使用
されている接続のための資源をすべて開放し、状態ST
ATEをFREEに移行させる(ステップS909)。
この処理は、図4のステップS403や図7のステップ
S703と同様になされる。その後、本処理を終了す
る。
【0109】本処理によれば、TIME−WAITタイ
マがタイムアウトしたCB112から順にTIME−W
AITリストから削除され、また、FIN−WAIT−
2タイマがタイムアウトしたCB112から順にFIN
−WAIT−2リストから削除され、資源が開放され
る。
【0110】図10は、新たな通信回線の割り当て処理
のフローチャートを示す図である。本処理は、第1の実
施の形態における図5に対応する。
【0111】まず、FREE状態となっているCB11
2がないか否かを判別する(ステップS1001)。こ
の処理は、図5のステップS501〜ステップS504
と同様の処理により可能である。その判別の結果、FR
EE状態となっているCB112がない場合は、そのC
B[i]で特定されるコネクションの状態STATEを
CLOSED(J1)にして割り当てを完了し(ステッ
プS1007)、本処理を終了する。この処理は、図5
のステップS505と同様である。
【0112】一方、前記ステップS1001の判別の結
果、FREE状態となっているCB112がある場合
は、先頭インデックス113(TWH)が0か否かを判
別する(ステップS1002)。この処理は図5のステ
ップS506と同様である。その判別の結果、先頭イン
デックス113(TWH)が0である場合は、先頭イン
デックス115(FW2H)が0か否かを判別する(ス
テップS1003)。その判別の結果、先頭インデック
ス115(FW2H)が0である場合は、TIME−W
AIT(J9)状態のCB112またはFIN−WAI
T−2(J7)状態のCB112のいずれも存在しない
と判断されるので、エラー表示を行い(ステップS10
06)、本処理を終了する。
【0113】一方、前記ステップS1002の判別の結
果、先頭インデックス113(TWH)が0でない場合
は、ステップS1004で図5のステップS507と同
様の処理を行い、本処理を終了する。
【0114】前記ステップS1003の判別の結果、先
頭インデックス115(FW2H)が0でない場合は、
TIME−WAITリストの場合と同様に、先頭インデ
ックス115(FW2H)で特定される先頭のCB[F
W2H]を開放し、FIN−WAIT−2リストを更新
する(ステップS1005)。すなわちCB[FW2
H]を開放して当該コネクションの資源を完全に開放
し、状態STATEをFREEにすると共に、FIN−
WAIT−2リストから当該CB[FW2H]を外す。
これにより、割り当て可能なCB112が存在しない場
合であっても、FIN−WAIT−2(J7)状態のC
B112の中から割り当て対象を得ることができる。そ
の後、本処理を終了する。
【0115】ステップS1004またはステップS10
05の処理後は、前記ステップS1007で、上記開放
されたCB[TWH]またはCB[FW2H]が新たな
接続のために割り当てられる。
【0116】本処理によれば、割り当て可能なCB11
2が存在しない場合であっても、TIME−WAIT
(J9)状態のCB112の中から最も古いCB112
が新たな通信回線の確立のために割り当てられ、また、
TIME−WAIT(J9)状態のCB112が存在し
ない場合であっても、FIN−WAIT−2(J7)状
態のCB112の中から最も古いCB112が新たな通
信回線の確立のために割り当てられる。
【0117】本実施の形態によれば、TIME−WAI
T(J9)状態のコネクションがない場合であっても、
FIN−WAIT−2(J7)状態のコネクションがあ
る場合は、その中で最も古いものを、FIN−WAIT
−2(J7)状態の経過を待たずして、新たな接続に割
り当てることができる。しかも、FIN−WAIT−2
(J7)に移行しても、FIN−WAIT−2リストに
加えられるまで一定の時間(FW2LINタイマがタイ
ムアウトするまで)確保されるので、CB112の割り
当てと切断のサイクルが短く頻繁に行われる状況であっ
ても、FIN−WAIT−2(J7)が有名無実になる
ことを防止することができる。よって、通信の最低限の
保証を確実に得つつ、新たなコネクションを早期に形成
することに関し、第2の実施の形態と同様の効果を奏す
るだけでなく、CB112の早期開放の対象となる時間
待ち状態をFIN−WAIT−2(J7)にも適用した
ことで、再利用の適用範囲が広がり、より円滑にコネク
ションの早期形成を図ることができる。なお、FIN−
WAIT−2(J7)よりもTIME−WAIT(J
9)にあるCB112を優先的に開放するので、通信の
信頼性に与える影響をより小さく抑えることができる。
【0118】(第4の実施の形態)上記各実施の形態で
は、時間待ち状態としてTIME−WAIT(J9)ま
たはFIN−WAIT−2(J7)を例示して説明した
が、これに限るものでなく、例えば通常のTCPで実装
されるKeep Aliveタイマ等にも適用するようにしてもよ
い。
【0119】Keep Aliveタイマは、接続が完了した後、
通信途中に相手ホストや通信経路上の障害により相手ホ
ストからパケットが送信されてこなくなったような状況
に対処するための時間待ち状態であり、次のように処理
される。
【0120】すなわち、相手ホストからパケットが来る
度にタイマをリセットする。タイムアウトするまでにパ
ケットが到着しない場合は、当該相手ホストに探りのた
めのパケットを送信する。ここで、相手ホストが正常に
動作しているならば、応答があるはずである。応答があ
った場合は、タイマを再設定する。応答がない場合は、
タイマを再設定すると共に、応答が無かったことを示す
カウンタ値を増やす。探りのパケットを送信しても相手
ホストからの応答がない状況が続き、カウンタ値が所定
回数に達すると、相手ホストがダウンしたものとして当
該コネクションを切断し、資源を開放する。
【0121】上記第1〜第3の実施の形態をKeep Alive
タイマに適用するには、切断処理時に、TIME−WA
ITリストやFIN−WAIT−2リストと同様にKeep
Aliveリストを作成し、最初の探りのパケットで応答が
なければ、当該リストにCB112を追加していけばよ
い。そして、割り当て処理時には、FREE状態のCB
112がない場合は、TIME−WAITリスト、FI
N−WAIT−2リスト、Keep Aliveリストの順に開放
可能なCB112を検索するようにすればよい。
【0122】本実施の形態によれば、第1〜第3の実施
の形態と同様の効果を得ることができる。
【0123】
【発明の効果】以上説明したように、本発明の請求項1
に係る通信装置、請求項7に係る通信方法または請求項
13に係る記憶媒体によれば、通信の信頼性を極力維持
しつつ、切断処理のための時間待ち状態にある通信回線
の利用を早期に図り、新たな接続を早期に確立すること
ができる。
【0124】本発明の請求項2に係る通信装置、請求項
8に係る通信方法または請求項14に係る記憶媒体によ
れば、通信回線の接続の新たな確立にあたり、通信の信
頼性を最大限維持することができる。
【0125】本発明の請求項3に係る通信装置または請
求項9に係る通信方法によれば、切断処理のための時間
待ち状態をより長く経たものから選択することにより、
通信回線の接続の新たな確立にあたり、通信の信頼性を
最大限維持することができる。
【0126】本発明の請求項4に係る通信装置または請
求項10に係る通信方法によれば、通信回線の接続の新
たな確立にあたり、適用範囲を拡大することができる。
【0127】本発明の請求項5に係る通信装置または請
求項11に係る通信方法によれば、通信回線の接続の新
たな確立にあたり、通信の信頼性を最大限維持すること
ができ、しかも適用範囲を拡大することができる。
【0128】本発明の請求項6に係る通信装置または請
求項12に係る通信方法によれば、少なくとも所定時間
は早期開放の対象とされず、時間待ち状態が維持される
ので、通信の一定の信頼性を確実に確保することができ
る。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態に係る通信装置の主
要な構成を示すブロック図である。
【図2】同形態におけるコントロールブロック(CB)
の主要な領域構成を示すブロック図である。
【図3】同形態における切断処理のフローチャートを示
す図である。
【図4】同形態における割り込み処理のフローチャート
を示す図である。
【図5】同形態における新たな通信回線の割り当て処理
のフローチャートを示す図である。
【図6】本発明の第2の実施の形態に係る通信装置にお
ける切断処理のフローチャートを示す図である。
【図7】同形態における割り込み処理のフローチャート
を示す図である。
【図8】本発明の第3の実施の形態に係る通信装置にお
ける切断処理のフローチャートを示す図である。
【図9】同形態における割り込み処理のフローチャート
を示す図である。
【図10】同形態における新たな通信回線の割り当て処
理のフローチャートを示す図である。
【図11】従来の通信装置におけるTCPの通信手順の
概要のフローチャートを示す図である。
【図12】従来の通信装置によるTCPの通信手順にお
ける内部的な状態遷移を示す図である。
【符号の説明】
101 CPU(選択手段、早期開放手段、割当手段) 103 タイマ 106 RAM(記憶手段) 108 CMDレジスタ 109 TMレジスタ 110 TYPEレジスタ 111 TIDレジスタ 112 コントロールブロック(CB) 113 先頭インデックス(TWH) 114 末尾インデックス(TWT)

Claims (14)

    【特許請求の範囲】
  1. 【請求項1】 複数の通信回線の接続を確立可能であ
    り、接続が確立された通信回線の切断処理の際、該切断
    処理の正常な終了を確認するための所定の時間待ち状態
    を経て、前記接続が確立された通信回線を開放する通信
    装置において、 前記所定の時間待ち状態にある通信回線を特定するため
    の回線特定情報を記憶可能な記憶手段と、 通信回線の新たな確立要求が生じた場合に、開放されて
    いる通信回線が存在しないときは、前記記憶手段に記憶
    された回線特定情報の中から回線特定情報を選択する選
    択手段と、 該選択手段により選択された回線特定情報により特定さ
    れる通信回線を、該通信回線の前記所定の時間待ち状態
    が終了したか否かにかかわらず開放する早期開放手段
    と、 該早期開放手段により開放された通信回線を前記生じた
    新たな確立要求のために割り当てる割当手段とを備えた
    ことを特徴とする通信装置。
  2. 【請求項2】 前記選択手段は、前記所定の時間待ち状
    態にある通信回線の通信の信頼性に与える影響が最も小
    さくなるような回線特定情報を選択することを特徴とす
    る請求項1記載の通信装置。
  3. 【請求項3】 前記記憶手段は、前記所定の時間待ち状
    態にある通信回線が該所定の時間待ち状態になった時期
    を把握するための時間情報を前記回線特定情報のそれぞ
    れに対応付けて記憶し、前記選択手段は、前記時間情報
    に基づいて、前記所定の時間待ち状態になった時期が最
    も古い回線特定情報から優先的に選択することを特徴と
    する請求項1または2記載の通信装置。
  4. 【請求項4】 前記所定の時間待ち状態は複数種類設定
    可能であることを特徴とする請求項1〜3のいずれか1
    項に記載の通信装置。
  5. 【請求項5】 前記記憶手段は、前記複数種類の時間待
    ち状態毎に優先順位を付け、前記複数種類の時間待ち状
    態のそれぞれについて各状態にある通信回線を特定する
    ための回線特定情報を記憶し、前記選択手段は、優先順
    位が高い時間待ち状態における回線特定情報から優先的
    に選択することを特徴とする請求項4記載の通信装置。
  6. 【請求項6】 前記記憶手段は、前記所定の時間待ち状
    態にある通信回線を特定するための回線特定情報を、前
    記所定の時間待ち状態になった後、所定時間経過後に記
    憶することを特徴とする請求項1〜5のいずれか1項に
    記載の通信装置。
  7. 【請求項7】 複数の通信回線の接続を確立可能であ
    り、接続が確立された通信回線の切断処理の際、該切断
    処理の正常な終了を確認するための所定の時間待ち状態
    を経て、前記接続が確立された通信回線を開放する通信
    方法において、 前記所定の時間待ち状態にある通信回線を特定するため
    の回線特定情報を記憶可能な記憶工程と、 通信回線の新たな確立要求が生じた場合に、開放されて
    いる通信回線が存在しないときは、前記記憶工程に記憶
    された回線特定情報の中から回線特定情報を選択する選
    択工程と、 該選択工程により選択された回線特定情報により特定さ
    れる通信回線を、該通信回線の前記所定の時間待ち状態
    が終了したか否かにかかわらず開放する早期開放工程
    と、 該早期開放工程により開放された通信回線を前記生じた
    新たな確立要求のために割り当てる割当工程とを含むこ
    とを特徴とする通信方法。
  8. 【請求項8】 前記選択工程は、前記所定の時間待ち状
    態にある通信回線の通信の信頼性に与える影響が最も小
    さくなるような回線特定情報を選択することを特徴とす
    る請求項7記載の通信方法。
  9. 【請求項9】 前記記憶工程は、前記所定の時間待ち状
    態にある通信回線が該所定の時間待ち状態になった時期
    を把握するための時間情報を前記回線特定情報のそれぞ
    れに対応付けて記憶し、前記選択工程は、前記時間情報
    に基づいて、前記所定の時間待ち状態になった時期が最
    も古い回線特定情報から優先的に選択することを特徴と
    する請求項7または8記載の通信方法。
  10. 【請求項10】 前記所定の時間待ち状態は複数種類設
    定可能であることを特徴とする請求項7〜9のいずれか
    1項に記載の通信方法。
  11. 【請求項11】 前記記憶工程は、前記複数種類の時間
    待ち状態毎に優先順位を付け、前記複数種類の時間待ち
    状態のそれぞれについて各状態にある通信回線を特定す
    るための回線特定情報を記憶し、前記選択工程は、優先
    順位が高い時間待ち状態における回線特定情報から優先
    的に選択することを特徴とする請求項10記載の通信方
    法。
  12. 【請求項12】 前記記憶工程は、前記所定の時間待ち
    状態にある通信回線を特定するための回線特定情報を、
    前記所定の時間待ち状態になった後、所定時間経過後に
    記憶することを特徴とする請求項7〜11のいずれか1
    項に記載の通信方法。
  13. 【請求項13】 複数の通信回線の接続を確立可能であ
    り、接続が確立された通信回線の切断処理の際、該切断
    処理の正常な終了を確認するための所定の時間待ち状態
    を経て、前記接続が確立された通信回線を開放する通信
    方法で使用されるプログラムを記憶した記憶媒体におい
    て、 前記所定の時間待ち状態にある通信回線を特定するため
    の回線特定情報を記憶可能な記憶工程のコードと、 通信回線の新たな確立要求が生じた場合に、開放されて
    いる通信回線が存在しないときは、前記記憶工程のコー
    ドに記憶された回線特定情報の中から回線特定情報を選
    択する選択工程のコードと、 該選択工程のコードにより選択された回線特定情報によ
    り特定される通信回線を、該通信回線の前記所定の時間
    待ち状態が終了したか否かにかかわらず開放する早期開
    放工程のコードと、該早期開放工程のコードにより開放
    された通信回線を前記生じた新たな確立要求のために割
    り当てる割当工程のコードとを記憶したことを特徴とす
    る記憶媒体。
  14. 【請求項14】 前記選択工程のコードは、前記所定の
    時間待ち状態にある通信回線の通信の信頼性に与える影
    響が最も小さくなるような回線特定情報を選択すること
    を特徴とする請求項13記載の記憶媒体。
JP15795199A 1999-06-04 1999-06-04 通信装置及び通信方法並びに記憶媒体 Withdrawn JP2000349856A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP15795199A JP2000349856A (ja) 1999-06-04 1999-06-04 通信装置及び通信方法並びに記憶媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP15795199A JP2000349856A (ja) 1999-06-04 1999-06-04 通信装置及び通信方法並びに記憶媒体

Publications (1)

Publication Number Publication Date
JP2000349856A true JP2000349856A (ja) 2000-12-15

Family

ID=15661037

Family Applications (1)

Application Number Title Priority Date Filing Date
JP15795199A Withdrawn JP2000349856A (ja) 1999-06-04 1999-06-04 通信装置及び通信方法並びに記憶媒体

Country Status (1)

Country Link
JP (1) JP2000349856A (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003108450A (ja) * 2001-09-27 2003-04-11 Oki Electric Ind Co Ltd Tcp/ipのポート使用効率を向上させた端末装置および接続処理方法
JP2008160826A (ja) * 2002-08-01 2008-07-10 Research In Motion Ltd 常時オンのワイヤレスインターネットプロトコル通信
JP2010504045A (ja) * 2006-09-12 2010-02-04 クゥアルコム・インコーポレイテッド 通信セッション管理におけるトランザクションタイムアウト処理
WO2010032533A1 (ja) * 2008-09-19 2010-03-25 日本電気株式会社 ネットワークプロトコル処理システム、及びネットワークプロトコル処理方法
JP2010122933A (ja) * 2008-11-20 2010-06-03 Fujitsu Ltd コンテンツ転送方法および装置
JP2010283615A (ja) * 2009-06-04 2010-12-16 Canon Inc 通信装置、通信装置の制御方法、及びコンピュータプログラム
JP2013138298A (ja) * 2011-12-28 2013-07-11 Xacti Corp 送信制御装置
JP2017004190A (ja) * 2015-06-09 2017-01-05 スター精密株式会社 ネットワークプリントシステム、ホスト端末およびネットワークプリンタ

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4493247B2 (ja) * 2001-09-27 2010-06-30 沖電気工業株式会社 端末装置及び接続処理方法
JP2003108450A (ja) * 2001-09-27 2003-04-11 Oki Electric Ind Co Ltd Tcp/ipのポート使用効率を向上させた端末装置および接続処理方法
JP2008160826A (ja) * 2002-08-01 2008-07-10 Research In Motion Ltd 常時オンのワイヤレスインターネットプロトコル通信
JP4638904B2 (ja) * 2002-08-01 2011-02-23 リサーチ イン モーション リミテッド 常時オンのワイヤレスインターネットプロトコル通信
JP2010504045A (ja) * 2006-09-12 2010-02-04 クゥアルコム・インコーポレイテッド 通信セッション管理におけるトランザクションタイムアウト処理
US8213295B2 (en) 2006-09-12 2012-07-03 Qualcomm Incorporated Transaction timeout handling in communication session management
US8838782B2 (en) 2008-09-19 2014-09-16 Nec Corporation Network protocol processing system and network protocol processing method
WO2010032533A1 (ja) * 2008-09-19 2010-03-25 日本電気株式会社 ネットワークプロトコル処理システム、及びネットワークプロトコル処理方法
JP2010122933A (ja) * 2008-11-20 2010-06-03 Fujitsu Ltd コンテンツ転送方法および装置
JP2010283615A (ja) * 2009-06-04 2010-12-16 Canon Inc 通信装置、通信装置の制御方法、及びコンピュータプログラム
US8737393B2 (en) 2009-06-04 2014-05-27 Canon Kabushiki Kaisha Communication apparatus, control method for communication apparatus, and computer program
JP2013138298A (ja) * 2011-12-28 2013-07-11 Xacti Corp 送信制御装置
JP2017004190A (ja) * 2015-06-09 2017-01-05 スター精密株式会社 ネットワークプリントシステム、ホスト端末およびネットワークプリンタ

Similar Documents

Publication Publication Date Title
JP3403971B2 (ja) パケット転送装置
JP5506444B2 (ja) 情報システム、装置および方法
EP0343820B1 (en) Temporary state preservation for a distributed file service
US7801060B2 (en) Network management apparatus and network system
US10050859B2 (en) Apparatus for processing network packet using service function chaining and method for controlling the same
US7895358B2 (en) Redundancy switching method
CN108737275B (zh) 一种基于SpaceFibre即插即用星载网络管理方法
CN102035745B (zh) 策略路由实现方法、装置及网络设备
JP3214454B2 (ja) プログラム内蔵方式パケット処理装置
EP2827553B1 (en) Rapid startup with dynamic reservation capabilities for network communication systems
US7009967B1 (en) Systems and methods for transmitting data packets
JP2000349856A (ja) 通信装置及び通信方法並びに記憶媒体
JP5564661B2 (ja) 中継ノード及び中継処理プログラム
CN105025063A (zh) 面向大规模终端设备的在线数据传输方法
CN110581805A (zh) 路由表更新方法、装置、交换机及存储介质
EP1113623B1 (en) Data transfer method using layer 2 signaling of protocol identifier, radio terminal and radio gateway device
JPH10308791A (ja) データ通信方法、データ通信装置、およびデータ通信プログラム記録媒体
JP2002118570A (ja) パケット通信方法および装置
JP5383326B2 (ja) 通信装置、通信装置の制御方法、及びコンピュータプログラム
JP2000224260A (ja) 通信制御装置
US20130136140A1 (en) Relay server and relay communication system
JP4019884B2 (ja) パケット振り分け装置
US20050080922A1 (en) Address translation program and address translation apparatus
EP1814279A1 (en) Method and apparatus for implementing bearer mobility
JP2002328886A (ja) 遠隔操作システム、遠隔操作方法、被操作装置、操作端末、プログラムおよび記憶媒体

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20060301

A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20060905