JPH0675885A - 通信方式 - Google Patents

通信方式

Info

Publication number
JPH0675885A
JPH0675885A JP4229788A JP22978892A JPH0675885A JP H0675885 A JPH0675885 A JP H0675885A JP 4229788 A JP4229788 A JP 4229788A JP 22978892 A JP22978892 A JP 22978892A JP H0675885 A JPH0675885 A JP H0675885A
Authority
JP
Japan
Prior art keywords
communication
communication path
computer
reestablishing
path
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.)
Granted
Application number
JP4229788A
Other languages
English (en)
Other versions
JP3392436B2 (ja
Inventor
Toshio Shirokibara
敏雄 白木原
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP22978892A priority Critical patent/JP3392436B2/ja
Priority to US08/113,058 priority patent/US5553241A/en
Publication of JPH0675885A publication Critical patent/JPH0675885A/ja
Application granted granted Critical
Publication of JP3392436B2 publication Critical patent/JP3392436B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • G06F15/17356Indirect interconnection networks
    • G06F15/17368Indirect interconnection networks non hierarchical topologies
    • G06F15/17381Two dimensional, e.g. mesh, torus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q3/00Selecting arrangements
    • H04Q3/42Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker
    • H04Q3/54Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised
    • H04Q3/545Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised using a stored programme
    • H04Q3/54541Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised using a stored programme using multi-processor systems
    • H04Q3/5455Multi-processor, parallelism, distributed systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer And Data Communications (AREA)
  • Multi Processors (AREA)

Abstract

(57)【要約】 【目的】 接続指向の通信路を介して通信を行いながら
処理を行うプログラムにおいて、プログラムが陽に再接
続の手続きをとること無く、接続指向の通信路の閉鎖・
再確立を行う。 【構成】 各計算機6上に、プログラム間の通信を行う
通信実行部1と、通信路再確立を行う通信路再確立部2
と通信路の登録・参照が行われる通信路登録テーブル3
が存在する。通信元計算機上の通信実行部は通信路の閉
鎖時に、通信元計算機上の通信路再確立部に通知し、再
接続時には、通信元計算機上の通信路再確立部に通信路
の再確立を要求する。通信路再確立部は通信先計算機上
の通信路再接続部と通信路を確立し、その通信ポートを
通信実行部に渡す。通信先計算機上の通信路再接続部は
接続を受け付け、その通信ポートを通信路登録テーブル
に登録する。通信先通信実行部は通信路登録テーブルに
新しい通信ポートが登録されていれば、それを通信先計
算機上の通信路再接続部より獲得する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は分散環境において、プロ
グラム間で接続指向の通信を行う場合の、計算機間の通
信路の再確立を可能とする通信方式に関する。
【0002】
【従来の技術】従来から、プログラム間での信頼性の高
いデータ交換を行うために、接続指向の通信路が使用さ
れている。接続指向通信路を使用した通信は通常以下の
2つの手順で行われる。 1.通信ポートの接続による通信路の確立 2.データ転送
【0003】通信ポートの接続は、通常非対称で、接続
を受け付ける側(サーバ)と接続を要求する側(クライ
アント)にわかれて行う。サーバは通信ポートを生成し
た後、クライアントからの接続要求を持つ。クライアン
トは通信ポートを生成した後、サーバの保持する通信ポ
ートとの接続をサーバに要求する。サーバの接続要求待
ちとクライアントの接続要求が揃った時点で、接続が確
立する。接続確立以降はその通信ポートを使用して、デ
ータ転送を行うことができる。一度確立した接続はどち
らかの通信ポートが閉鎖されるまで保持される。以上の
ように、プログラムが接続指向の通信を行う場合、サー
バ側とクライアント側で接続の手続きをプログラミング
する必要がある。
【0004】このような接続指向の通信路を使用して処
理を進めるプログラムにおいて、現在実行中の処理を一
時中断し、他の計算機上で通信を再開する必要が生じる
ことがある。例えば、他の計算機A上のプログラムと通
信を行いながら処理を行っているプログラムが、計算機
の保守や故障等により現在の計算機B上で処理が継続で
きず、他の計算機C上で処理を継続するような場合であ
る。このような場合、プログラムは一度計算機A−B間
の通信ポートを閉鎖後、再び通信相手のプログラムと再
接続(計算機A−C間)する必要があるため、双方のプ
ログラムで再接続の手続きを行う様なプログラミングを
行わなければならない。
【0005】また、分散環境での負荷分散の手段として
プロセス移送技術が用いられている。プロセス移送と
は、ある計算機上で実行中のプログラムを実行中の状態
を保持して、他の計算機上に移送し、処理を継続する技
術のことである。接続指向の通信路を使用するプロセス
の移送では、上記で述べたように、通信ポートを閉鎖
後、移送先で再接続する必要がある。プロセス移送技術
においては、プロセスが移送される事をプログラムに意
識させないで済ませられることが望ましいが、接続指向
の通信路を使用している場合には、移送されるプログラ
ムのみでなく、その通信相手のプログラムでも再接続を
行う必要があるため、接続指向の通信路を使用するプロ
セスの移送は困難であった。
【0006】
【発明が解決しようとする課題】接続指向の通信路を使
用して通信を行っているプログラムが通信路を閉鎖後、
再確立する場合、通信を行う双方のプログラムにおい
て、再接続の手続きを陽に行う必要があった。また、プ
ロセス移送において、通信路の再確立をプログラムに意
識させないで済ませることは困難であった。
【0007】本発明は以上の点に鑑みてなされたもの
で、その目的とするところは、通信路の再確立の手続き
をプログラムに記述しておく必要をなくし、自動的に通
信路を再確立させることのできる通信方式を提供するこ
とにある。
【0008】
【課題を解決するための手段】本発明に係る通信方式
は、複数の計算機それぞれに登載されたプログラム間で
通信を行いながら各プログラムで規定される処理を進め
る通信方式であって、各計算機は、プログラムを他の計
算機上で実行されているプログラムと通信を行いながら
実行する実行手段と、いったん閉鎖された通信路の再確
立を要求する要求手段と、プログラム間の通信とは別
に、通信路に関する情報を他の計算機と通信すると共
に、自計算機における通信路を確保する通信路再確立手
段とを具備し、前記要求手段により要求が出された第1
の計算機の通信路再確立手段は、通信先の第2の計算機
の通信路再確立手段と通信を行い、このとき確保された
通信路を第1の計算機の実行手段に返し、前記第2の計
算機の通信路再確立手段は、前記第1の計算機の通信路
再確立手段との通信の際に確保された通信路を第2の計
算機の実行手段に渡し、前記第1の計算機の実行手段と
前記第2の計算機の実行手段とがそれぞれの通信路再確
立手段より受け取った通信路を用いて通信を行うことに
より、通信路が再確立されるようにしたことを特徴とす
るものである。
【0009】また、前記各計算機は使用中の通信路の閉
鎖を要求する第2の要求手段と、前記通信路再確立手段
により通信される通信路に関する情報を保持する保持手
段とを具備し、前記第2の要求手段により要求が出され
た第1の計算機の通信路再確立手段は、通信先の第2の
計算機の通信路再確立手段に閉鎖される通信路の情報を
通知し、前記第2の計算機の保持手段は、この通知され
た閉鎖される通信路の情報を保持し、前記第2の計算機
の通信路再確立手段は、前記第1の計算機の通信路再確
立手段との通信路の再確立のための通信の際に新たに確
保された通信路の情報を、前記保持手段に保持された閉
鎖された通信路の情報に対応して保持させ、前記第2の
計算機の実行手段がこの保持された新たに確保された通
信路の情報を参照することにより確保された通信路を第
2の計算機の実行手段に渡すようにすることもできる。
【0010】あるいは、前記第2の計算機の通信路再確
立手段が、閉鎖される通信路の情報を第2の計算機の実
行手段に通知しておき、この実行手段は通知を受けてい
る場合には通信を行う前に新たに確保された通信路を要
求するようにし、通信路再確立手段はこの要求に応えて
通信路の再確立のための通信の際に新たに確保された通
信路を第2の計算機の実行手段に渡すようにすることも
できる。
【0011】
【作用】本発明によれば、プログラムからの要求により
通信ポートを介して通信を行う通信実行部(実行手段)
と、通信路の再確立を行う通信路再確立部と、接続され
た通信ポート対からなる通信路情報と新しく再確立した
通信路の通信ポートの登録・参照が行われる通信路登録
テーブル(保持手段)が各計算機上に存在する。これら
が、通信先および通信元のプログラムが実行されるそれ
ぞれの計算機上に存在するため、以下では、通信元のプ
ログラムが実行される計算機を通信元計算機、通信先プ
ログラムが実行される計算機を通信先計算機と表す。
【0012】通信元計算機上の通信実行部は、通信先プ
ログラムと接続した通信ポートを閉鎖する時に、閉鎖す
る通信ポートの通信路情報を持つ通信路閉鎖通知を通信
元計算機上の通信路再確立部に通知する。通信元計算機
上の通信路再確立部は、通信実行部からの通信路閉鎖通
知をうけると、その通信路情報を通信先計算機上の通信
路再確立部に通知する。通信先計算機上の通信路再確立
部はこの通信路閉鎖通知に対して、受け取った通信路情
報を同一計算機上の通信路登録テーブルに登録する。
【0013】通信元計算機上の通信実行部が通信先プロ
グラムと通信を行う時には、通信先プログラムと再接続
された通信ポートを通信元計算機上の通信路再確立部に
要求する。通信元計算機上の通信路再確立部は、通信路
再確立要求に対して、通信ポートを生成し、通信先計算
機上の通信路再確立部の通信ポートと接続し、その通信
ポートを通信実行部に渡す。通信先計算機上の通信路再
確立部は、通信元計算機上の通信路再確立部からの接続
要求に対して、接続を受け付け、接続した通信ポート
を、以前に登録した通信路情報に対する新しい通信路の
通信ポートとして、通信先計算機上の通信路登録テーブ
ルに登録する。
【0014】通信先計算機上の通信実行部が通信を行う
場合、使用している通信ポートの通信路情報が通信路登
録テーブルに登録されていなければ、通常と同様に通信
を行う。もし、通信路情報が登録されている場合で、そ
れに対する新しい通信路の通信ポートが登録されていな
ければ、登録されるまで待機する。新しく接続された通
信ポートが登録されていれば、それを、同一計算機上の
通信路再確立部から獲得し、それを使用して通信を行
う。
【0015】さらに、通信ポートを閉鎖した計算機と異
なる計算機上での通信路の再確立は以下の様に実現でき
る。通信ポートの閉鎖を行った通信実行部は、通信路の
再確立を行う計算機上の通信実行部に対して通信路情報
を渡す。再確立を行う通信実行部は受け取った通信路情
報により、通信先計算機上の通信路再確立部に通信路の
再確立を要求することにより、通信路の再接続を行う。
【0016】以上の様に、同一計算機上および異なる計
算機上で通信路の再確立が可能になり、通信路の閉鎖お
よび再確立は通信実行部と通信路再確立部で行うため、
プログラムは通信路が閉鎖されたり、再確立されるのを
意識することなく、通信路が常に確保されているものと
して通信実行部にデータ転送を依頼すればよい。尚、プ
ログラムに通信路の閉鎖要求や再確立要求が明示的に記
述されていても、同様な手順で容易に通信路の再確立が
実現できる。
【0017】
【実施例】
(実施例1)本発明の第一の実施例を図面に従い説明す
る。
【0018】図1は本実施例における再接続可能な通信
方式を実現するシステム構成を示したものである。通信
を行う計算機(6)上には通信実行部(1)、通信路再
確立部(2)、通信路登録テーブル(3)が設けられて
いる。通信実行部(1)は通信部(4)の提供する接続
指向の通信路を使用して、ユーザプログラム(5)が指
示する通信を実際に行う他に、通信路登録テーブル
(3)の参照および通信路再確立部(2)への通信路再
確立要求を行う。通信路再確立部(2)は通信実行部
(1)からの再確立要求に対して、通信路の通信路登録
テーブル(3)への登録および通信路の再接続を行う。
通信路登録テーブル(3)は(自プログラム通信ポー
ト、通信先プログラム通信ポート、新通信ポート)の形
式で、接続した通信路の情報と新通信ポートの情報を保
持する。また、通信部(4)の提供する接続指向の通信
路について、通信実行部(1)では自通信ポートおよび
通信先の通信ポートのアドレス取得が可能であり、さら
に、同一計算機上の通信実行部(1)と通信路再確立部
(2)の間での通信ポートの受渡しが可能であるように
構成する。尚、通信ポートの情報は計算機IDとポート
IDとを含むものである。
【0019】各部の動作を図2、3、4、5に従って説
明する。図2は通信実行部(1)の動作を示すフローチ
ャート、図3、図4は通信路再確立部(2)の動作を示
すフローチャートである。また、図5(a)は通信を行
っているユーザプログラム(5)が異なる計算機A、B
上に存在する場合を、図5(b)は同一計算機A上に存
在する場合を示したものである。
【0020】図5(a)において、通信ポートα(8)
とβ(13)は通信部(15)が提供する通信ポート
で、既に接続されている。また、計算機A上のユーザプ
ログラムA(6)は通信実行部A(7)の保持する通信
ポートα(8)を通して通信を行い、計算機B上のユー
ザプログラムB(10)は通信実行部B(12)の保持
する通信ポートβ(13)を通して通信を行う。このよ
うな状態から、通信実行部A(7)が通信路α(8)を
閉鎖し、再接続する様子を示す。尚、この閉鎖は、他え
ば計算機の故障や計算機の負荷が大き過ぎることを検知
したことにより行われ、処理を移された他の計算機が再
接続の要求を出す。
【0021】通信実行部A(7)は通信ポートα(8)
の閉鎖時に、通信路再確立部A(9)に対して、自通信
ポートα(8)と通信先通信ポートβ(13)を通信路
情報として知らせ閉鎖する旨を伝える(S1)。これに
対して、通信路再確立部A(9)は通信先の通信路確立
部B(11)にその通信路情報を通知する(S23)。通
信路再確立部B(11)は上記の通信路情報を通信路登
録テーブルB(14)に登録する(S31)。
【0022】再接続時には、通信実行部A(7)は、通
信路再確立部A(9)に対して、上記通信路情報(α、
β)を通知し、新しく接続された通信ポートを要求する
(S2、S4)。通信路再確立部A(9)は通信先の通
信路再確立部B(11)に対して上記通信路情報(α、
β)に対応する通信路の接続要求を行い(S42)、新し
く接続した通信ポートα´を獲得し(S44)、それを通
信実行部A(7)に渡す(S46)。通信先の通信路再確
立部B(11)は接続要求を受け付け(S51)、新しく
接続した通信ポートβ´を、通信路登録テーブルB(1
4)中の上記通信路情報(α、β)に対応した新通信ポ
ートとして登録する(S52)。
【0023】通信先ユーザプログラムB(10)が通信
を行う場合には、通信実行部B(12)が通信ポートβ
を介して通信するが、通信実行部B(12)は通信を行
うまえに、自通信ポートβ(13)の通信路情報が通信
路登録テーブルB(14)に登録されているかを調べる
(S11)。登録されていない場合には、通常と同様に通
信を行い、登録されている場合には、上記通信路情報
(α、β)に対応した新通信路が登録されるまで待機し
(S12、S13)、登録確認後、通信路再確立部B(1
1)に新しく再接続された通信路を要求する(S14)。
通信路再接続部B(11)は、上記通信路情報に対応し
た通信ポートβ´を保持しているので、それを通信実行
部Bへ渡す(S61、S62)。以上の動作後、通信実行部
A(7)、B(11)は通信路(α、β)のかわりに新
通信路(α´、β´)を使用して通信を行う(S15)。
【0024】図5(b)はユーザプログラムA(16)
とユーザプログラムB(17)が同一計算機上に存在す
る場合である。通信実行部A(18)は通信ポートα
(19)の閉鎖時に、通信路再確立部A(20)に対し
て、自通信ポートα(19)と通信先通信ポートβ(2
3)からなる通信路情報を知らせ、閉鎖する旨を伝える
(S1)。これに対して、通信路再確立部A(20)は
通信先のユーザプログラムB(17)が同一計算機上に
存在するため(S21 Yes)、通信路登録テーブルA(2
1)に上記通信路情報を登録する(S22)。
【0025】再接続時には、通信実行部A(18)は、
通信路再確立部A(20)に対して、上記通信路情報を
通知し、新しく接続された通信ポートを要求し(S
2)、通信先が同一計算機であるため(S3 Yes)、通
信ポートα´を生成し、通信路再確立部A(20)と接
続を行う(S5)。通信路再確立部A(20)は通信先
の通信実行部B(22)が同一計算機上にあるので(S
41)、通信実行部A(18)からの接続要求を受け付
け、接続された通信ポートβ´を得る(S43)。さら
に、新しく接続した通信ポートβ´を通信路登録テーブ
ルB(21)中の上記通信路情報(α、β)に対応した
新通信ポートとして登録する(S45)。通信実行部B
(22)はこれに対して、図5(a)の場合と同様の動
作を行う。
【0026】図14は、通信実行部(1)が通信先が同
一計算機上かどうかということに関係なく上記と同等の
機能を実現する方法を示すもので、(a)は通信実行部
(1)の通信ポ−ト閉鎖及び再接続時のフロ−チャ−
ト、(b)は再接続要求に対する通信路再確立部(2)
のフロ−チャ−トである。通信実行部(1)は、図2
(a)と同様に通信ポ−トの閉鎖を通信路再確立部
(2)に通知し(S91)、新しく接続され多通信ポ−ト
を要求するが(S92)、通信先が同一計算機上にあるか
どうかに関わらず、通信路再確立部(2)から接続され
た通信ポ−トを獲得する(S93)。通信路再確立部
(2)は、閉鎖通知に対して図3(a)と同様の動作を
行う。再接続要求に対しては、通信先が異なる計算機上
にある場合(S101 No)、図3(b)と同様の動作を行
い、獲得した通信ポ−トを通信実行部(1)に返す。通
信先が同一計算機上にある場合には(S101 Yes )、同
一計算機上で接続された通信ポ−ト対を作成し、片方の
通信ポ−トを通信実行部(1)に返し(S102 )、もう
片方の通信ポ−トを通信路登録テ−ブル(3)に登録す
る(S103 )。以上の様な動作により、通信を行うユー
ザプログラムの両方は接続の手続きをとることなく、通
信路の再確立が可能になる。
【0027】図6は図5(a)において通信実行部A
(7)の通信路の閉鎖と再確立を異なる計算機上で行っ
た場合を示したものである。この場合の通信実行部
(1)の閉鎖・再確立の動作のフローチャートを図7に
示す。通信実行部A(25)は通信路再確立部A(2
6)に通信路情報(α、β)と共に通信路を閉鎖するこ
と通知した後(S71)、その通信路情報を再接続を行う
計算機C上の通信実行部C(27)に渡す(S72)。計
算機C上の通信実行部C(28)は受け取った通信路情
報(S81)と共に通信路再確立部C(28)に対して、
再接続要求を行う(S82)。これ以外の動作は図5の場
合と同様である。すなわち、通信路再確立部A(26)
は通信路再確立部Bに閉鎖される通信路情報(α、β)
を通知してテーブルに登録し、通信路再確立部C(2
8)が通信ポートα´の獲得及び通信路再確立部Bへの
接続要求を行い、通信路再確立部Bが獲得した新通信ポ
ートβ´をテーブルに登録し、通信実行部Bがこれを参
照することにより、(α´、β´)で表される通信路が
再確立される。この方法によれば、さらに、異なる計算
機上に渡っての通信路の再確立が可能になる。 (実施例2)
【0028】本発明の第二の実施例を図面に従い説明す
る。本実施例は再接続可能な通信方式をオペレーティン
グシステムUNIX上のプロセス移送技術に適用したも
のである。
【0029】UNIX上での接続指向通信路の1つとし
て、TCPプロトコルを使用した通信路を提供するソケ
ットというインタフェースがある。ソケットを使用した
プロセス間通信の流れを図8に示す。ソケットを接続す
る際には、接続を受け付ける動作を行うプロセス(サー
バ)と接続を要求する動作を行うプロセス(クライアン
ト)が存在する。ソケットはsocketシステムコー
ルで作成する。この結果、通信ポートとしてファイルデ
ィスクリプタと呼ばれるデータを獲得し、以降のソケッ
トへのアクセスはこのファイルディスクリプタに対して
行う。生成したソケットはbindシステムコールによ
りOS内に登録する。また、サーバはlistenシス
テムコールにより接続待ち可能なクライアントの数を設
定する。その後、サーバはacceptシステムコール
により、クライアントからの接続要求を待つ。クライア
ントはconnectシステムコールにより、サーバに
接続要求を出す。このような通信路の確立は、サーバと
クライアントがそれぞれに対して、accept、co
nnectを行なうことにより行なわれ、両方がそろう
まで片方はブロックされる。通信路確立後は、そのソケ
ットに対して、readシステムコール、writeシ
ステムコールを行なうことにより、通信を行なう。通信
路が一回確立されると、ソケットをクローズしない限り
通信路は保持されるため、それ以降の通信はソケットの
ファイルディスクリプタに対して、read/writ
eシステムコールのみで行なうことができる。以下で
は、ソケットを使用して通信を行っているプロセスの移
送について説明する。
【0030】図9は接続指向のソケットを使用している
プロセスの状態を示したものである。プロセスA(3
0)、プロセスB(29)はそれぞれオペレーティング
システムからソケットα(32)、β(31)の通信路
を獲得し、接続している。各プロセスは実施例1におけ
るユーザプログラムと通信実行部がリンクされ、実行さ
れたものである。また、各計算機上には、プロセス移送
と、実施例1における通信路再接続部の役目を行う移送
管理サーバmigd(33)が存在する。さらに、通信
路登録テーブルは、共有メモリ(34)と呼ばれる同一
計算機上の各プロセスからアクセス可能な領域を使用し
て実現されている。
【0031】図9の状態からプロセスBが他の計算機上
に移送され、プロセスB´になった状態を図10に示
す。プロセスBの通信実行部は移送前に、ソケットβを
クローズすることをmigdに通知する。migdはプ
ロセスAが存在する計算機上のmigdにクローズされ
るソケットのアドレスを通知する。通知されたmigd
はそのアドレスを自計算機の共有メモリに登録する。
【0032】図11はプロセスB´の通信実行部がプロ
セスAとの新しい接続の確保を開始した状態を示したも
のである。プロセスB´の通信実行部が新しい接続を得
るには、自計算機のmigdに対して新しく接続された
ソケットを要求する。新しいソケットの要求を受けたm
igdはプロセスAが存在する計算機上のmigdと接
続を行い、そのソケットβ´をプロセスB´の通信実行
部に渡す。プロセスAが存在する計算機上のmigdは
接続したソケットα´を自計算機の共有メモリに先に登
録したα、βと対応させて登録する。
【0033】図12はプロセスAがプロセスBと通信を
行おうとした時の処理を示したものである。プロセスA
の通信実行部がソケットαを使用してプロセスBと通信
する時点で、その前に共有メモリを調べ、ソケットαと
ソケットβおよび新しいソケットα´が登録されていれ
ば、新しいソケットα´をmigdから獲得する。mi
gdはソケットαに対応した新しいソケットα´をプロ
セスAの通信実行部に渡す。
【0034】図13はプロセスBが移送された後に、新
しい接続が完了した状態を示したものである。プロセス
A、B´は、プロセスBが移送された後も、新しいソケ
ットα´、β´を用いて以前と同様に通信を行うことが
できる。以上の様に、本発明はUNIX上のプロセス移
送技術に適用可能であり、通信を行うプロセスの移送を
可能にしている。
【0035】
【発明の効果】以上説明した様に本発明によれば、接続
指向の通信路を使用して処理を行うアプリケーションプ
ログラムにおいて、アプリケーションプログラムが意識
する必要が無しに通信路の再確立が可能になる。このた
め、既存のアプリケーションに手を加えること無く、ア
プリケーションプログラムの処理を一時中断し、他の計
算機上で処理を再開することが容易に可能になり、計算
機の保守や故障等による停止時においても、他の計算機
上に移動して通信路の再接続を行うことにより処理が継
続できる。また、プロセス移送技術に対しても、本発明
の通信方式は適用可能である。このように、実用上多大
なる効果を奏する再接続可能な通信方式が実現できる。
【図面の簡単な説明】
【図1】 本発明の一実施例に係る再接続可能通信方式
を行うシステム構成を表すブロック図。
【図2】 図1の通信実行部の動作を示すフローチャー
ト。
【図3】 図1の通信路再確立部の動作を示すフローチ
ャート。
【図4】 図1の通信路再確立部の動作を示すフローチ
ャート。
【図5】 通信を行うアプリケーションプログラムが
(a)異なる計算機上にある場合、(b)同一計算機上
にある場合の例を示す図。
【図6】 通信路の閉鎖と再確立が異なる計算機上で行
われる場合の例を示す図。
【図7】 図6の通信実行部の動作を示すフローチャー
ト。
【図8】 オペレーティングシステムUNIXにおける
接続指向のソケットインタフェースの使用方法を示した
図。
【図9】 UNIX上のプロセス移送技術の例の初期状
態を示した図。
【図10】 UNIX上のプロセス移送技術の例を示し
た図。
【図11】 UNIX上のプロセス移送技術の例を示し
た図。
【図12】 UNIX上のプロセス移送技術の例を示し
た図。
【図13】 UNIX上のプロセス移送技術の例を示し
た図。
【図14】 図1の通信実行部及び通信路再確立部の別
の動作を示すフロ−チャ−ト。
【符号の説明】
1 通信実行部 2 通信路再確立部 3 通信路登録テーブル 4 通信部 5 ユーザプログラム 6 計算機

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 複数の計算機それぞれに登載されたプロ
    グラム間で通信を行いながら各プログラムで規定される
    処理を進める通信方式であって、 各計算機は、 プログラムを他の計算機上で実行されているプログラム
    と通信を行いながら実行する実行手段と、 いったん閉鎖された通信路の再確立を要求する要求手段
    と、 プログラム間の通信とは別に、通信路に関する情報を他
    の計算機と通信すると共に、自計算機における通信路を
    確保する通信路再確立手段とを具備し、 前記要求手段により要求が出された第1の計算機の通信
    路再確立手段は、通信先の第2の計算機の通信路再確立
    手段と通信を行い、このとき確保された通信路を第1の
    計算機の実行手段に返し、 前記第2の計算機の通信路再確立手段は、前記第1の計
    算機の通信路再確立手段との通信の際に確保された通信
    路を第2の計算機の実行手段に渡し、 前記第1の計算機の実行手段と前記第2の計算機の実行
    手段とがそれぞれの通信路再確立手段より受け取った通
    信路を用いて通信を行うことにより、通信路が再確立さ
    れるようにしたことを特徴とする通信方式。
  2. 【請求項2】 前記要求手段は、前記実行手段で実行さ
    れているプログラム中の、いったん閉鎖された通信路の
    再確立を要求する命令を検出することにより要求を出す
    ことを特徴とする請求項1記載の通信方式。
  3. 【請求項3】 前記各計算機は、 使用中の通信路の閉鎖を要求する第2の要求手段と、 前記通信路再確立手段により通信される通信路に関する
    情報を保持する保持手段とを具備し、 前記第2の要求手段により要求が出された第1の計算機
    の通信路再確立手段は、通信先の第2の計算機の通信路
    再確立手段に閉鎖される通信路の情報を通知し、 前記
    第2の計算機の保持手段は、この通知された閉鎖される
    通信路の情報を保持し、 前記第2の計算機の通信路再確立手段は、前記第1の計
    算機の通信路再確立手段との通信路の再確立のための通
    信の際に新たに確保された通信路の情報を、前記保持手
    段に保持された閉鎖された通信路の情報に対応して保持
    させ、前記第2の計算機の実行手段がこの保持された新
    たに確保された通信路の情報を参照することにより確保
    された通信路を第2の計算機の実行手段に渡すようにし
    たものであることを特徴とする請求項1記載の通信方
    式。
JP22978892A 1992-08-28 1992-08-28 通信システム及び通信方法 Expired - Lifetime JP3392436B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP22978892A JP3392436B2 (ja) 1992-08-28 1992-08-28 通信システム及び通信方法
US08/113,058 US5553241A (en) 1992-08-28 1993-08-27 Connection-oriented communication system with communication path re-establishment mechanism

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP22978892A JP3392436B2 (ja) 1992-08-28 1992-08-28 通信システム及び通信方法

Publications (2)

Publication Number Publication Date
JPH0675885A true JPH0675885A (ja) 1994-03-18
JP3392436B2 JP3392436B2 (ja) 2003-03-31

Family

ID=16897687

Family Applications (1)

Application Number Title Priority Date Filing Date
JP22978892A Expired - Lifetime JP3392436B2 (ja) 1992-08-28 1992-08-28 通信システム及び通信方法

Country Status (2)

Country Link
US (1) US5553241A (ja)
JP (1) JP3392436B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH086886A (ja) * 1994-06-15 1996-01-12 Nec Corp コネクションベースのクライアント・サーバ型処理システム

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3612105B2 (ja) * 1995-03-13 2005-01-19 株式会社東芝 Atm通信システムとatm通信システムにおけるプロセスマイグレーション方法
US5867662A (en) * 1995-06-30 1999-02-02 Sun Microsystems, Inc. Communications driver subsystem for enabling a digital computer system to establish a communications session with a remote device over a selected one of a plurality of diverse communication media
JP3515839B2 (ja) * 1995-10-11 2004-04-05 富士通株式会社 コンピュータシステム間通信システム
US6359882B1 (en) 1997-04-01 2002-03-19 Yipes Communications, Inc. Method and apparatus for transmitting data
US6282172B1 (en) 1997-04-01 2001-08-28 Yipes Communications, Inc. Generating acknowledgement signals in a data communication system
US5978849A (en) * 1997-06-13 1999-11-02 International Business Machines Corporation Systems, methods, and computer program products for establishing TCP connections using information from closed TCP connections in time-wait state
US8621101B1 (en) 2000-09-29 2013-12-31 Alacritech, Inc. Intelligent network storage interface device
US8539112B2 (en) 1997-10-14 2013-09-17 Alacritech, Inc. TCP/IP offload device
US6757746B2 (en) 1997-10-14 2004-06-29 Alacritech, Inc. Obtaining a destination address so that a network interface device can write network data without headers directly into host memory
US8782199B2 (en) 1997-10-14 2014-07-15 A-Tech Llc Parsing a packet header
US6434620B1 (en) 1998-08-27 2002-08-13 Alacritech, Inc. TCP/IP offload network interface device
US6226680B1 (en) 1997-10-14 2001-05-01 Alacritech, Inc. Intelligent network interface system method for protocol processing
US6138161A (en) * 1999-02-18 2000-10-24 Crossroads Systems, Inc. Method and system for maintaining reserve command relationships in a fibre channel network
US7305475B2 (en) * 1999-10-12 2007-12-04 Webmd Health System and method for enabling a client application to operate offline from a server
US8019901B2 (en) 2000-09-29 2011-09-13 Alacritech, Inc. Intelligent network storage interface system
US6961773B2 (en) 2001-01-19 2005-11-01 Esoft, Inc. System and method for managing application service providers
US6920501B2 (en) * 2001-12-17 2005-07-19 Ntt Docomo, Inc. Communication socket migration among different devices
US7543087B2 (en) 2002-04-22 2009-06-02 Alacritech, Inc. Freeing transmit memory on a network interface device prior to receiving an acknowledgement that transmit data has been received by a remote device
US7664823B1 (en) * 2003-09-24 2010-02-16 Cisco Technology, Inc. Partitioned packet processing in a multiprocessor environment
US8248939B1 (en) 2004-10-08 2012-08-21 Alacritech, Inc. Transferring control of TCP connections between hierarchy of processing mechanisms
US20080263171A1 (en) * 2007-04-19 2008-10-23 Alacritech, Inc. Peripheral device that DMAS the same data to different locations in a computer
US8539513B1 (en) 2008-04-01 2013-09-17 Alacritech, Inc. Accelerating data transfer in a virtual computer system with tightly coupled TCP connections
US8341286B1 (en) 2008-07-31 2012-12-25 Alacritech, Inc. TCP offload send optimization
US9306793B1 (en) 2008-10-22 2016-04-05 Alacritech, Inc. TCP offload device that batches session layer headers to reduce interrupts as well as CPU copies

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4479195A (en) * 1982-09-07 1984-10-23 At&T Bell Laboratories Data conference system
US4706150A (en) * 1984-06-29 1987-11-10 International Business Machines Corporation Switching protocal for multiple autonomous switching planes
US4901231A (en) * 1986-12-22 1990-02-13 American Telephone And Telegraph Company Extended process for a multiprocessor system
US5179669A (en) * 1988-08-22 1993-01-12 At&T Bell Laboratories Multiprocessor interconnection and access arbitration arrangement
EP0375909B1 (en) * 1988-12-30 1995-08-30 International Business Machines Corporation Multiple I/O channel
US4972465A (en) * 1989-05-24 1990-11-20 At&T Bell Laboratories Switching system reliability
US5191578A (en) * 1990-06-14 1993-03-02 Bell Communications Research, Inc. Packet parallel interconnection network
JPH0756644B2 (ja) * 1990-08-31 1995-06-14 インターナショナル・ビジネス・マシーンズ・コーポレイション 状態変化通知装置及び方法
US5367698A (en) * 1991-10-31 1994-11-22 Epoch Systems, Inc. Network file migration system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH086886A (ja) * 1994-06-15 1996-01-12 Nec Corp コネクションベースのクライアント・サーバ型処理システム

Also Published As

Publication number Publication date
JP3392436B2 (ja) 2003-03-31
US5553241A (en) 1996-09-03

Similar Documents

Publication Publication Date Title
JP3392436B2 (ja) 通信システム及び通信方法
KR100232247B1 (ko) 클러스터화된 다중처리 시스템 및 시스템내 디스크 액세스 경로의 고장 회복 방법
US6891837B1 (en) Virtual endpoint
US7580415B2 (en) Aggregation of hybrid network resources operable to support both offloaded and non-offloaded connections
US8484357B2 (en) Communication in multiprocessor using proxy sockets
CN106161537B (zh) 远程过程调用的处理方法、装置、系统及电子设备
US8316139B2 (en) Systems and methods for integrating local systems with cloud computing resources
KR102349208B1 (ko) 서브넷 관리(sa) 쿼리 캐싱을 통한 동적 클라우드 제공을 위한 시스템 및 방법
US9473598B2 (en) Network connection failover during application service interruption
US5721818A (en) Method and system for enabling a file server to service multiple networks of the same network protocol family by invoking multiple instances of a network session protocol
US7711831B2 (en) Methods, systems and computer program products for source address selection
US7117280B2 (en) Network based intra-system communications architecture
US11856065B2 (en) Data transmission for service integration between a virtual private cloud and an intranet
JPH0624376B2 (ja) コンピュータ・ネットワークにおける通信方法
US6880013B2 (en) Permanent TCP connections across system reboots
WO2014173119A1 (zh) 一种众核间通信方法及系统
US7769828B2 (en) System for provisioning time sharing option (TSO) and interactive productivity system facility (ISPF) services in a network environment
JP2007526544A (ja) プロセッサ間通信プロトコル
JP3608905B2 (ja) データ通信システム及びデータ通信方法
JP2568033B2 (ja) ルーズにつないだコンピュータ装置におけるプロセッサ間セッション経路指定用のシステム及び方法
TW201233096A (en) Remote assistance service method for embedded operation system
JP2002163122A (ja) 通信処理方法ならびに通信処理プログラムが記録される記録媒体
EP3210116B1 (en) Queue handling
KR100668093B1 (ko) 그리드 네트워크에서 사설 아이피 클러스터를 포함하는엠피아이 구현 시스템 및 그 방법
CN114443317A (zh) 一种数据共享管控方法及其系统

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080124

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090124

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100124

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100124

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110124

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120124

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130124

Year of fee payment: 10

EXPY Cancellation because of completion of term
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130124

Year of fee payment: 10