JPH10334015A - Tcp/ipソケット・アプリケーションを使用したシステム資源削減方法 - Google Patents

Tcp/ipソケット・アプリケーションを使用したシステム資源削減方法

Info

Publication number
JPH10334015A
JPH10334015A JP10131556A JP13155698A JPH10334015A JP H10334015 A JPH10334015 A JP H10334015A JP 10131556 A JP10131556 A JP 10131556A JP 13155698 A JP13155698 A JP 13155698A JP H10334015 A JPH10334015 A JP H10334015A
Authority
JP
Japan
Prior art keywords
data
byte
request data
processing
command
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.)
Pending
Application number
JP10131556A
Other languages
English (en)
Inventor
Shawfu Chen
シャウフ・チェン
O Dryhooth Robert
ロバート・オー・ドライフース
Rau Rapuyan
ラプヤン・ラウ
B Vandongen Robert
ロバート・ビー・ヴァンドンゲン
Warner Schuphy
シュフイ・ワーナー
L E Daniel
ダニエル・エル・イー
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH10334015A publication Critical patent/JPH10334015A/ja
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/78Architectures of resource allocation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5629Admission control
    • H04L2012/5631Resource management and allocation

Abstract

(57)【要約】 【課題】 本発明は、マルチホスト・コンピュータ・シ
ステムにおいて、activate_on_recei
pt機構を使用して不要なシステム遊休時間またはその
他の処理遅延を生じさせないデータ転送の新規な方法を
提供する。 【解決手段】 この機構は、着信データを受信するまで
システム資源を停滞させる可能性のある読取りなどの特
定のコマンドを受信すると一時記憶域を確保する。次
に、システム環境は、着信要求データの最初のバイトを
一時記憶場所で受信するまで他の操作の実行を続け、受
信した時点でこの機構が受信するデータの処理を優先さ
せて実行中のすべての操作を終了させる。要求一時記憶
場所の大きさが着信データの大きさに対応可能な場合、
データは直接読み取られる。そうでない場合は、新しい
記憶場所を入手し、その新しい記憶場所でデータをコピ
ーし、完全に受信してから読み取る。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、TCP/IPソケ
ット・アプリケーション中などの通信セッション中に発
行された読取り機能などの特定のコマンドを処理してい
る間にシステムによって使用される資源を削減するよう
に設計されたツールに関する。
【0002】
【従来の技術】ホスト・システム・ネットワークまたは
その他の同様のマルチホスト・コンピュータ環境では、
いくつかのプロセッサとホストが共存し、それらが同時
にデータの要求とアクセスを行ったり異なる常駐アプリ
ケーションを実行したりする。そのような環境では、デ
ータ処理システムを使用してその環境全体の様々な場所
で必要なデータを維持し、様々なアプリケーションの処
理を行う。これによって、遠隔ホストまたはユーザに単
一のイメージを提示することができ、プロセッサ複合体
による負荷分散が可能になる。データは環境内の通信リ
ンクのネットワークを形成する遠隔ホストおよびその他
のホスト・システムにリンクされた1つまたは複数のホ
スト・システムで維持することができる。リンク上の1
つのホストからリンク上の他のホストにメッセージを送
信するために、プロトコルと呼ばれる通信規則を確立し
て、メッセージを経路指定し、複合体または環境内のリ
ンク上の適切なホスト・コンピュータにアクセスするこ
とによって通信を制御する。このような通信プロトコル
は一般に、データ通信製品の機能と構造を規定する遠隔
処理アーキテクチャの一部として存在する。
【0003】このようなコンピュータ・ネットワークま
たは環境では、1つまたは複数のオペレーティング・シ
ステムによって供給される機能インターフェースである
アプリケーション・プログラム・インタフェース(以下
APIと呼ぶ)も設けられ、高水準言語で書かれたアプ
リケーション・プログラムがオペレーティング・システ
ムの特定のデータまたは機能を使用することができるよ
うにする。場合によっては、APIはアプリケーション
・プログラムがそれを介してアクセス方法と対話するイ
ンタフェースとして機能する。マルチタスク・オペレー
ティング・システムでは、アプリケーション・プログラ
ムの要求がAPIを介してオペレーティング・システム
に対して行われ、要求によって、実行するタスクまたは
プロセスが自動的に開始される。並列処理環境では、コ
ンピュータ・アーキテクチャは大量のタスクを高速で同
時に処理するために、相互接続された多くのプロセッサ
を使用して大量のデータにアクセスする。このような環
境では、マルチタスク・オペレーティング・システムは
適時のタスク処理のためにAPIに大きく依存してい
る。
【0004】必要なタスク処理を遅滞なく行うために、
多くのAPIはプロセスのグループ間で複合通信を行う
ための集合操作のセットを定義する。集合的操作には使
いやすさやパフォーマンスを始め、それに付随するいく
つかの利点がある。しかし、集合操作の使用には1つの
大きな欠点がある。ほとんどの場合、それらの集合操作
の多くは同期し、タスクを実行する時がくるまでプロセ
ッサを「ブロック」する。このため「ブロッキング」操
作と呼ばれる。そのタスクが本質的に同期されないアプ
リケーションの解決策は、「非ブロッキング」または非
同期集合操作を使用することである。非ブロッキング操
作によって、各タスクはそのタスク独自のペースで進む
ことができ、必要であれば完了または「待ち」状態にな
っていないか定期的に検査することもできる。しかし、
非ブロッキング操作にはある種の欠点もある。たとえ
ば、待ちが必要な場合、または内部依存関係に遭遇した
場合、意志決定のためにユーザに制御を返す必要があ
る。これは、非同期集合操作を使用する非ブロッキング
環境では、操作全体がタスクのいずれかまたはプロセッ
サ時間を「ブロック」することができないためである。
この依存関係のために、プロセスのただの1段階も操作
をブロックすることができない。
【0005】しかし、ユーザに制御を返すことは問題の
一部にすぎない。ユーザに制御が返された後の1つの大
きな問題は、元の内部依存関係が解決された場合など
に、いつ操作を再開することができるかを通知する問題
である。第2の関連する問題は、ユーザが操作の再開を
決定した後で、中断が行われる前と同じ処理箇所に戻る
ことである。
【0006】ブロッキング操作と非ブロッキング操作の
両方で発生する他の関連する共通の問題は、パフォーマ
ンス問題とシステム遊休時間の解決である。rea
d()やrecvfrom()呼出などの特定のコマン
ドは、読取りコマンドまたは受信コマンドのデータが要
求側アプリケーションによって受け取られるまでシステ
ム環境が一時的に操作の処理を中断する必要がある。デ
ータを処理のためにただちに入手することができない場
合、アプリケーションにとって使用可能な資源の大部分
が中断状態になり、データが入手可能になるまではそれ
以上処理が使用可能にならない。ブロッキング・モード
では、コマンド処理の順次性によってプロセス環境全体
が強制的に着信データを待ってからでなければ、コマン
ド処理の次の段階を行うことができない。非ブロッキン
グ・モードでは、やはりデータをただちに入手すること
ができない場合、プロセス環境はデータの入手可能性を
調べ続けなければならず、したがって非同期操作を同期
操作に変えることになるか、または操作を終了して制御
をユーザに返さなければならず、それによってさらに問
題が生じる。高パフォーマンスのトランザクション指向
システムでは、このようにデータを入手することができ
ないことによって、多くのプロセスが一度にすべて中断
する可能性がある。したがって、システムはどの新しい
プロセスもディスパッチすることができないまま資源を
使い果たすことがある。
【0007】
【発明が解決しようとする課題】本発明の目的は、シス
テムの可用性とパフォーマンスを向上させることであ
る。
【0008】本発明の他の目的は、システム制約のため
にシステムを遮断する必要なしにオペレーティング・シ
ステムが多数のトランザクションを処理することができ
るようにすることである。
【0009】
【課題を解決するための手段】ホストがTCP/IPな
どの通信プロセッサを使用して互いに通信する、複数の
プロセッサと少なくとも1つの中央メモリとを有するマ
ルチホスト・コンピュータ環境では、データ転送によっ
てシステム全体の動作中断および遊休時間が生じる可能
性がある。本発明は、データを受信してからでなければ
処理を再開することができないプロセッサの1つからコ
マンドを受信すると、activate_on_rec
eipt関数呼出しを発行するactivate_on
_receipt機構を使用する。次に、受信する着信
データの一部を受信するために小さな一次記憶場所を割
り振る。一度受信したデータを識別し、それを要求側ア
プリケーション、プロセッサ、および通信セッションと
関連づけるためにいくつかのパラメータも渡す。システ
ム環境は、その間に着信データの最初のバイトを受信す
る時点まで通常の処理を続ける。一実施形態では、元の
プロセスは正式に終了し資源が解放される。他の実施形
態では、最初のバイトを受け取ると、activate
_on_receipt機構は着信データを処理するた
めに新しいプロセスの作成を優先して、実行中のプロセ
スを終了させる。着信データが一時割振り記憶場所より
も長い場合、そのデータを収容するために新しい場所を
確保してから残りのビットを受信してデータを読み取
る。そうでない場合は、データを一時記憶場所から読み
取り、新しい記憶場所は割り振らない。
【0010】
【発明の実施の形態】コンピュータ・ネットワークにい
くつかのホストや遠隔ホストを接続する場合、それらの
間に通信をセットアップし、維持する必要が生じる。通
信を可能にするために、ホスト・システムのネットワー
クは通信リンクを含み、それらのリンクに異なる種類の
ホスト・コンピュータが接続される。リンク上の1つの
ホストからリンク上の他のホストにメッセージを送信す
るために、プロトコルと呼ぶ規則を確立して通信リンク
を制御し、メッセージを経路指定し、リンク上の適切な
ホスト・コンピュータにアクセスする。
【0011】通信プロトコルは概念的には図1に図示す
るような層状になっているものと見なすことができ、各
プロトコル層はその下にある層によって提供されるサー
ビスを利用する。最下層はリンク層102で、ハードウ
ェア・レベルを扱い、特定のタイプの単一のネットワー
ク上のホスト間のデータの伝送を制御する。その上の層
は、マシン対マシン(MM)層104で、同じ物理複合
体に直接接続されていないホスト間で通信する機能を提
供する。この層の広く使用されている例はインターネッ
ト・プロトコル(IP)である。インターネットIP
は、標準ソフトウェア通信パッケージの使用を可能にす
る標準業界通信プロトコルである。
【0012】プロトコルのその上の層はポート対ポート
(PP)層106で、異なるアプリケーション・プログ
ラムを実行する複数のプロセスが遠隔ホストにある遠隔
プロセスと同時に通信することができるようにする。P
P層はMMプロトコル層を使用してホスト機間でデータ
を転送する。PP層はアプリケーション層とインタフェ
ースし、アプリケーション層はプロセスにローカル通信
ポートを割り振り、そのポートを遠隔ホスト上の遠隔ポ
ートに接続し、ローカル・ポートと遠隔ポートとの間で
データを転送する。このようなPPトランスポート・プ
ロトコルの例としては、TCP(転送制御プロトコ
ル)、UDP(ユーザ・データグラム・プロトコル)、
およびXNS(ゼロックス・ネットワーク・システム)
がある。TCPはIPプロトコル・スイート(TCP/
IP)を使用する装置と共に稼働することができる。
【0013】最上層はアプリケーション層108であ
る。APIもこの層にある。さらに、ソケット・アプリ
ケーションなどのその他の通信アプリケーションもこの
層にある。ソケット・アプリケーションは、ポート識別
子とTCP/IPまたはその他の通信セッション・アド
レスとの連結によって作成された固有ホスト識別子であ
る。
【0014】いずれかの高水準アプリケーション、特に
ソケット・アプリケーションを稼働させている間、特定
のタイプのコマンドによって処理の破壊や資源の一時的
保留状態が生じることがある。これは、通常、データを
ただちに入手することができない場合である。たとえ
ば、TCPプロトコルはデータにアクセスするためにr
ead()コマンドを使用していた。UDPプロトコル
は同様のコマンドrecv()/recvfrom()
関数呼出しを使用する。これはTCPプロトコルのre
ad()コマンドと非常によく似ている。どちらの場合
も、read()、recv()、またはrecvfr
om()コマンドでは、着信データを見越してメモリの
かなりの部分がただちに割り振られ、プロセッサによっ
て確保される。メモリのうちのこの割り振られたブロッ
クは通常、最大長または最大データ長と呼ばれ、32K
ないし2メガの範囲とすることができる。
【0015】データがただちに受信されない場合、アプ
リケーションにとって使用可能な資源の大部分が中断状
態になり、データが入手可能になるまでそれ以上処理を
行うことができない。高パフォーマンス・システムで
は、これによって同時に多くのプロセスが中断する可能
性がある。このシステムまたはプロセッサの使用不能状
態は、以下で詳述するようにシステムがブロッキング集
合操作と非ブロッキング集合操作のどちらを稼働させて
いるかに関係なく生じる。
【0016】A)ブロッキング操作 アプリケーションまたはシステムがブロッキング・モー
ドで稼働している場合、処理操作は同期モードで行われ
る。read()、recv()、またはrecvfr
om()コマンドが発行されたがデータが直ちに使用可
能にならず、システム全体が同期して稼働している場
合、すべてのスレッドはそのデータ・バイトが最終的に
着信する時点まで遊休状態になっていなければならな
い。データが入手可能になる時点までその先の処理を行
うことができない。さらに、メモリの大きな部分をその
データの受信用に割り振らなければならないため、シス
テム環境全体が影響を受けることがある。
【0017】B)非ブロッキング操作 非ブロッキング操作を稼働させている間は、システムの
処理は非同期であり、したがってデータ読取り/受信コ
マンドが発行された後、プロセスはブロッキング操作の
場合と同じ意味では遊休状態にならない。それにもかか
わらず、データを受け取る前のプロセスの操作全体はブ
ロッキング・モードで稼働しているときときわめてよく
似ている。非ブロッキング・モードではシステムが読み
取るデータの可用性を調べ、データがまだ使用不能であ
るとわかるとその都度、決定を行わなければならない。
この決定は、データの可用性を絶えず検査し続け、それ
によってブロッキング操作とほとんど同じ状況を生じさ
せるか、あるいは、割り振られたメモリ空間を抹消し、
現在遊休状態になっているプロセッサの連続動作に必要
な空間割振りを作成し直すことによって、再割り当てす
る必要があるかのいずれかである。
【0018】ブロッキングと非ブロッキングのいずれの
場合も、最大長(最大データ長)すなわちデータの受信
のために割り振られたメモリによって高パフォーマンス
・トランザクション・プロセス・システム内で使用可能
な資源の途切れのない可用性に大きな問題が生じる。
【0019】本発明は、activate_on_re
ceipt機構によって上述の問題を解決する。図2に
示すように、(202)でread()、rec
v()、recvfrom()またはその他の同様の関
数呼出しまたはコマンドを受信すると、本発明はact
ivate_on_receipt()コマンドと呼ぶ
新しい関数呼出し(API)を出す(204)。基本的
には、この新しい関数呼出しによってプロセスの操作が
あたかもコマンドがまったく出されなかったかのように
続けられ(206)、それによって元のプロセスはデー
タの最初のバイトが着信する時点まで稼働する。しか
し、状況によっては、読取り/受信が発行された後でプ
ロセスを実際に終了させる必要があることもある。本発
明の代替実施形態では、この問題を解決する。そのよう
な場合、読取り/受信の最初の発行によって開始された
プロセスをまず終了させて資源が解放されるようにす
る。しかし、activate_on_receive
コマンド呼出しは、そのような終了にもかかわらず要求
データの入手を続け、データが着信すると、前述の場合
のように新しいプロセスが作成される。いずれの場合
も、着信データの少なくとも一部を受信するようにメモ
リ内に好ましくは4Kの一時記憶場所を割り振る(20
8)。これによって、最大2メガもの大きな部分を使用
する従来技術とは異なり、そのようなデータの受信のた
めにメモリの小領域が確保される。さらに、最初の4K
のメモリはプロセッサではなくシステム自体によってそ
のつど割り振られ、それによって空間とメモリの可用性
が最も効率的に使用される。これは、システムには、プ
ロセッサのうちのいずれか単独のプロセッサよりもその
ような可用性がよく見えるため、システムは使用可能な
ポケットがあればどのポケットにでも記憶域を割り振る
ことができるからである。
【0020】各activate_on_receip
t呼出しと共にいくつかのパラメータも渡され(20
5)、後の処理を可能にする。図3に示すように、渡さ
れるパラメータは、そのコマンドまたは呼出しを出した
アプリケーションおよびホストを後で識別するためのソ
ケット記述子、プログラム名ポインタ、およびトークン
・ポインタである(303)。ソケット記述子は、前の
socket()API関数呼出しからアプリケーショ
ンが入手した整数であり、TCP/IPまたはその他の
同様のプロトコルのデータ通信セッションのうちのアプ
リケーション側に関連づけられる(332)。プログラ
ム名ポインタには、プロトコルのデータ通信の他方の側
からホストにデータが着信したときに入れられるプログ
ラム名のアドレスが入る。トークン・ポインタには、ア
プリケーションがプロセス間で受け渡しするデータを含
む8バイトのトークンのアドレスが入れられる。
【0021】ソケット・アプリケーションがactiv
ate_on_receipt()関数呼出しを出した
後、オペレーティング・システムはプログラム名と8バ
イト・トークンを、そのソケット記述子に関連づけられ
たファイル記述子と呼ばれるデータ構造に保管する(3
34)。データの着信が開始された後、オペレーティン
グ・システムはactivate_on_receip
t()をread()またはrecvfrom()関数
呼出しに変換する。ストリームまたはコネクション指向
(TCP)ソケットに対してactivate_on_
receipt()が発行された場合、システムはその
activate_on_receipt()関数呼出
しをread()関数呼出しに変換する。データグラム
またはコネクションレス(UDP)ソケットに対してa
ctivate_on_receipt()関数呼出し
が出された場合、システムはそのactivate_o
n_receipt()関数呼出しをrecvfrom
()関数呼出しに変換する。read()またはrec
vfrom()は、最大長(32Kまたはそれ以上の要
求)のTCP/IPスタックに対して発行される。
【0022】図2(214)に示すように、データの最
初のバイトが着信するとこの機構に通知される。次にこ
の機構は、割り振られた一時記憶場所が着信データを収
容することができる大きさであるかどうかを判断する。
【0023】受信したデータが4Kの割振り空間より小
さいか等しい場合、受信するデータの残りを受信するた
めにそれ以上の空間を割り当てない。しかし、データが
4Kより長い場合、受信するデータ全体を収容するため
にさらに空間が割り振られる(216)。
【0024】割り振られた場所に最初のデータ・バイト
を受信すると、activate_on_receip
t()コマンドは、元のプロセスを終了させることでシ
ステムを「活動化」するかまたはホストで新しいプロセ
スを作成する。次にデータの読取り、処理、または転送
を行う(213)。(データが着信した後、システムは
新しい記憶域を入手してそのデータをその新しい記憶域
にコピーする必要がある場合がある(218)。後で、
データを受信すると関数呼出しを行うことができる(2
20〜222)。)このプロセスは詳細には以下のよう
に行われる。
【0025】図3に示すように、ファイル記述子を使用
して、システム制御テーブルで、前に保管していたプロ
グラム名および8バイト・トークンと、当該TCP/I
Pソケットに関連づけられたソケット記述子を探し出す
(338)。システムはそのソケット記述子、8バイト
・トークン、記憶ブロックのアドレス、および内部ヘッ
ダから入手したデータの長さを、システムによって作成
される新しいプロセスに関連づけられた別の制御ブロッ
クにコピーする。ファイル記述子によって、メッセージ
がデータグラム・ソケットから受信されたことが示され
ている場合、システムはメッセージのソース・アドレス
を内部ヘッダから新しいプロセスに関連づけられたブロ
ックにコピーする。システムは次に新しいプロセスを作
成し(339)、ファイル記述子から名前を入手したプ
ログラムに入る。
【0026】データを入手するために、新しいプログラ
ムは、プロセスでシステムから渡されたデータを使用し
て標準のread()、recv()、またはrecv
from()ソケットAPI関数呼出しを出す。システ
ムはシステムがすでにネットワークからデータを入手し
ていることを知っているため、この関数呼出しはTCP
/IPまたはその他の同様のプロトコルのスタックには
送られない。この第2のread()、recv()、
またはrecvfrom()関数呼出しの目的は、プロ
グラムがそれ自体のバッファから、またはオペレーティ
ング・システムから入手したバッファから、データを入
手することができるようにすることである。アプリケー
ションがread()、recv()、またはrecv
from()関数呼出しを出した後、システムはアプリ
ケーションに対してアプリケーションによって指定され
たバッファにデータを返す。
【0027】本発明の好ましい実施形態では、割振り空
間でデータの最初のバイトを受信した後でデータが4K
の割振り空間よりも大きい場合、(345)に示すよう
にデータを入手するためにread()、rec
v()、またはrecvfrom()コマンドを出し、
それによって着信データの転送またはコピーあるいはそ
の両方のために最大長またはその他の適切な長さの空間
を割り振る。しかし、着信データが最初に割り振った4
Kの空間に入る場合は、上記の場合のread()、r
ecv()、またはrecvfrom()コマンドの代
わりにもう一度activate_on_receip
tコマンドを出す(350)。この第2のactiva
te_on_receipt関数呼出しによって、それ
以上メモリ空間を割り振る必要なしに、割り振られた4
Kのメモリでシステムによるデータの処理が可能にな
る。言い換えると、その場合、より長いデータ・バイト
のコピー操作に対応するために最大長空間を割り振らな
い。
【0028】まとめとして、本発明の構成に関して以下
の事項を開示する。
【0029】(1)通信プロトコルを使用してホスト間
で通信するマルチホスト・コンピュータ環境において、
処理遊休時間を生じさせずにデータ転送を処理するac
tivate_on_receipt機構を設ける方法
であって、着信要求データの将来の受信および処理を必
要とする前記プロセッサのうちの1つのプロセッサから
要求コマンドを受信するとactivate_on_r
eceipt関数呼出しを発行するステップと、前記要
求データの少なくとも一部を受信するために小さな一時
記憶場所を割り振るステップと、前記着信要求データを
後で前記要求側プロセッサと実行アプリケーションとそ
の適切な通信セッションとに返すことができるようにす
るパラメータと、システム資源を解放し、前記一時記憶
域で前記要求データの最初のバイトを受信するまで前記
コンピュータ環境が他の操作に進む他の操作を処理する
ことができるようにするステップと、前記着信要求デー
タの最初のバイトを受信すると、前記着信要求データの
即時処理を扱うために新しいプロセスを作成するステッ
プと、前記要求データの大きさが前記割振り一時記憶域
の大きさを超えない場合に前記割振り一時記憶域から直
接、前記着信要求データを処理するステップと、前記要
求データの大きさが前記一時割振り記憶域の大きさを超
える場合に新しい記憶域を割振り、次に前記一時記憶場
所から前記新しい記憶場所に前記要求データをコピー
し、前記要求データの残りの着信部分を受信してから前
記要求データを処理するステップとを含む方法。 (2)前記システム環境が他の保留操作の処理に進むこ
とができ、前記一時割振り記憶域に前記最初のバイトが
着信したときにのみ前記操作を終了させる、上記(1)
に記載の方法。 (3)前記activate_on_receipt呼
出しが発行された後ですべての保留操作を終了させてシ
ステム資源を解放し、次にシステム環境が他のプロセス
を作成し、開始することができるようにし、前記一時割
振り記憶域に前記最初のバイトを受信すると、前記バイ
トを処理することになる新しい操作の作成を優先させて
稼働中のプロセスを終了させる、上記(1)に記載の方
法。 (4)前記一時割振り記憶域の大きさが4Kである、上
記(1)に記載の方法。 (5)前記データの前記要求側がソケット・アプリケー
ションであり、前記コンピュータ環境がTCP/IP通
信プロトコルを使用する、上記(1)に記載の方法。 (6)前記要求コマンドが関数呼出しである上記(5)
に記載の方法。 (7)データの前記最初のバイトが割り振られた前記一
時記憶場所で受信された後、前記コマンド機構が読取り
コマンドを発行する、上記(6)に記載の方法。 (8)前記要求コマンドがrecvfrom()関数呼
出しである、上記(1)に記載の方法。 (9)前記activate_on_receiptコ
マンドがUDPソケットなどのデータグラムまたはコネ
クションレス・ソケット・アプリケーションについて発
行され、前記方法が前記要求データの前記最初のバイト
を受信するとrecvfrom()関数呼出しを発行す
るステップをさらに含む、上記(8)に記載の方法。 (10)渡される前記パラメータがソケット記述子パラ
メータとプログラム名ポインタとトークン・ポインタと
を含む、上記(1)に記載の方法。
【図面の簡単な説明】
【図1】使用する通信プロトコルの概念層を示すブロッ
ク図である。
【図2】本発明の概要を示すフローチャートである。
【図3】本発明の特定の実施形態を示すフローチャート
である。
【符号の説明】
102 リンク層 104 マシン対マシン(MM)層 106 ポート対ポート(PP)層 108 アプリケーション層
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ロバート・オー・ドライフース アメリカ合衆国12603 ニューヨーク州ポ ーキプシー マンダレイ・ドライブ 14 (72)発明者 ラプヤン・ラウ アメリカ合衆国12603−0704 ニューヨー ク州ポーキプシー スプリングサイド・ロ ード 7 (72)発明者 ロバート・ビー・ヴァンドンゲン アメリカ合衆国12540 ニューヨーク州ラ グランジュビル バーモア・ロード 54 (72)発明者 シュフイ・ワーナー アメリカ合衆国06804 コネチカット州ブ ルックフィールド エドナ・コート 12 (72)発明者 ダニエル・エル・イー アメリカ合衆国06801 コネチカット州ベ セル シャロン・コート 11

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】通信プロトコルを使用してホスト間で通信
    するマルチホスト・コンピュータ環境において、処理遊
    休時間を生じさせずにデータ転送を処理するactiv
    ate_on_receipt機構を設ける方法であっ
    て、 着信要求データの将来の受信および処理を必要とする前
    記プロセッサのうちの1つのプロセッサから要求コマン
    ドを受信するとactivate_on_receip
    t関数呼出しを発行するステップと、 前記要求データの少なくとも一部を受信するために小さ
    な一時記憶場所を割り振るステップと、 前記着信要求データを後で前記要求側プロセッサと実行
    アプリケーションとその適切な通信セッションとに返す
    ことができるようにするパラメータと、 システム資源を解放し、前記一時記憶域で前記要求デー
    タの最初のバイトを受信するまで前記コンピュータ環境
    が他の操作に進む他の操作を処理することができるよう
    にするステップと、 前記着信要求データの最初のバイトを受信すると、前記
    着信要求データの即時処理を扱うために新しいプロセス
    を作成するステップと、 前記要求データの大きさが前記割振り一時記憶域の大き
    さを超えない場合に前記割振り一時記憶域から直接、前
    記着信要求データを処理するステップと、 前記要求データの大きさが前記一時割振り記憶域の大き
    さを超える場合に新しい記憶域を割振り、次に前記一時
    記憶場所から前記新しい記憶場所に前記要求データをコ
    ピーし、前記要求データの残りの着信部分を受信してか
    ら前記要求データを処理するステップとを含む方法。
  2. 【請求項2】前記システム環境が他の保留操作の処理に
    進むことができ、前記一時割振り記憶域に前記最初のバ
    イトが着信したときにのみ前記操作を終了させる、請求
    項1に記載の方法。
  3. 【請求項3】前記activate_on_recei
    pt呼出しが発行された後ですべての保留操作を終了さ
    せてシステム資源を解放し、次にシステム環境が他のプ
    ロセスを作成し、開始することができるようにし、前記
    一時割振り記憶域に前記最初のバイトを受信すると、前
    記バイトを処理することになる新しい操作の作成を優先
    させて稼働中のプロセスを終了させる、請求項1に記載
    の方法。
  4. 【請求項4】前記一時割振り記憶域の大きさが4Kであ
    る、請求項1に記載の方法。
  5. 【請求項5】前記データの前記要求側がソケット・アプ
    リケーションであり、前記コンピュータ環境がTCP/
    IP通信プロトコルを使用する、請求項1に記載の方
    法。
  6. 【請求項6】前記要求コマンドが関数呼出しである請求
    項5に記載の方法。
  7. 【請求項7】データの前記最初のバイトが割り振られた
    前記一時記憶場所で受信された後、前記コマンド機構が
    読取りコマンドを発行する、請求項6に記載の方法。
  8. 【請求項8】前記要求コマンドがrecvfrom()
    関数呼出しである、請求項1に記載の方法。
  9. 【請求項9】前記activate_on_recei
    ptコマンドがUDPソケットなどのデータグラムまた
    はコネクションレス・ソケット・アプリケーションにつ
    いて発行され、前記方法が前記要求データの前記最初の
    バイトを受信するとrecvfrom()関数呼出しを
    発行するステップをさらに含む、請求項8に記載の方
    法。
  10. 【請求項10】渡される前記パラメータがソケット記述
    子パラメータとプログラム名ポインタとトークン・ポイ
    ンタとを含む、請求項1に記載の方法。
JP10131556A 1997-05-29 1998-05-14 Tcp/ipソケット・アプリケーションを使用したシステム資源削減方法 Pending JPH10334015A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US86480897A 1997-05-29 1997-05-29
US08/864808 1997-05-29

Publications (1)

Publication Number Publication Date
JPH10334015A true JPH10334015A (ja) 1998-12-18

Family

ID=25344116

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10131556A Pending JPH10334015A (ja) 1997-05-29 1998-05-14 Tcp/ipソケット・アプリケーションを使用したシステム資源削減方法

Country Status (2)

Country Link
JP (1) JPH10334015A (ja)
KR (1) KR19980086586A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003517688A (ja) * 1999-12-13 2003-05-27 テレフォンアクチーボラゲット エル エム エリクソン(パブル) ネットワーク・オペレーションを実行する方法と装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003517688A (ja) * 1999-12-13 2003-05-27 テレフォンアクチーボラゲット エル エム エリクソン(パブル) ネットワーク・オペレーションを実行する方法と装置

Also Published As

Publication number Publication date
KR19980086586A (ko) 1998-12-05

Similar Documents

Publication Publication Date Title
KR100326864B1 (ko) 네트워크통신방법및네트워크시스템
JP3553634B2 (ja) 相互接続インターフェース
KR100241218B1 (ko) 통신 시스템내에서 상대적으로 대규모인 데이터 객체의 전송을 제어하기 위한 시스템 및 그 방법
US20180375782A1 (en) Data buffering
US9137179B2 (en) Memory-mapped buffers for network interface controllers
US7921151B2 (en) Managing a plurality of processors as devices
US5991797A (en) Method for directing I/O transactions between an I/O device and a memory
US7246167B2 (en) Communication multiplexor using listener process to detect newly active client connections and passes to dispatcher processes for handling the connections
US20050081202A1 (en) System and method for task queue management of virtual devices using a plurality of processors
US20080168443A1 (en) Virtual Devices Using a Plurality of Processors
US5781741A (en) Message communications system in a parallel computer
JP2000020490A (ja) 遠隔手続き呼出し機構またはオブジェクトリクエストブローカ機構を有する計算機、データ転送方法、および転送方法記憶媒体
US8533740B2 (en) Data processing system with intercepting instructions
JP2002505471A (ja) 遠隔処理の中断および継続の方法と装置
US20080065838A1 (en) Data processing system with memory access
US20160366054A1 (en) Data Processing System with Routing Tables
JPH11149387A (ja) 共有装置制御方法及びその実施装置
JPH1145220A (ja) Tcp/ipソケット・アプリケーションを使用したシステム資源削減装置および方法
JPH10334015A (ja) Tcp/ipソケット・アプリケーションを使用したシステム資源削減方法
US20010025324A1 (en) Data communication method and apparatus, and storage medium storing program for implementing the method and apparatus
JPH10340238A (ja) Tcp/ipソケット・アプリケーションを使用したシステム資源削減装置
JP3644158B2 (ja) 並列計算機におけるデータ送受信方法
JPH10105487A (ja) 計算機ネットワーク通信方法およびネットワーク計算機システム
JP2008097273A (ja) ネットワークインタフェース装置、ネットワークインタフェース制御方法、情報処理装置、データ転送方法
CA2237742A1 (en) A system resource reduction tool utilizing tcp/ip socket applications