JPH09186723A - ネットワーク通信処理方式 - Google Patents

ネットワーク通信処理方式

Info

Publication number
JPH09186723A
JPH09186723A JP7354020A JP35402095A JPH09186723A JP H09186723 A JPH09186723 A JP H09186723A JP 7354020 A JP7354020 A JP 7354020A JP 35402095 A JP35402095 A JP 35402095A JP H09186723 A JPH09186723 A JP H09186723A
Authority
JP
Japan
Prior art keywords
communication
computer
network
packet
proxy
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
JP7354020A
Other languages
English (en)
Inventor
Katsuyoshi Kitai
克佳 北井
Yoshimasa Masuoka
義政 増岡
Satoshi Yoshizawa
聡 吉沢
Furederiko Mashieru
マシエル・フレデリコ
Toshiaki Tarui
俊明 垂井
Tatsuo Higuchi
達雄 樋口
Hideki Murahashi
英樹 村橋
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP7354020A priority Critical patent/JPH09186723A/ja
Priority to US08/773,315 priority patent/US6404766B1/en
Publication of JPH09186723A publication Critical patent/JPH09186723A/ja
Priority to US10/051,050 priority patent/US6950436B2/en
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W80/00Wireless network protocols or protocol adaptations to wireless operation
    • H04W80/06Transport layer protocols, e.g. TCP [Transport Control Protocol] over wireless
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2854Wide area networks, e.g. public data networks
    • H04L12/2856Access arrangements, e.g. Internet access
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2854Wide area networks, e.g. public data networks
    • H04L12/2856Access arrangements, e.g. Internet access
    • H04L12/2869Operational details of access network equipments
    • H04L12/287Remote access server, e.g. BRAS
    • H04L12/2874Processing of data for distribution to the subscribers
    • 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/5691Access to open networks; Ingress point selection, e.g. ISP selection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/2514Translation of Internet protocol [IP] addresses between local and global IP addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/2517Translation of Internet protocol [IP] addresses using port numbers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/256NAT traversal
    • H04L61/2567NAT traversal for reachability, e.g. inquiring the address of a correspondent behind a NAT server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/163In-band adaptation of TCP data exchange; In-band control procedures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/618Details of network addresses
    • H04L2101/663Transport layer addresses, e.g. aspects of transmission control protocol [TCP] or user datagram protocol [UDP] ports
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

(57)【要約】 【課題】 異なるネットワーク夫々接続された計算機間
での通信においてホップ・バイ・ホップでフロー制御や
輻輳制御を行うことがきる方式を提供する。 【解決手段】 (b)のように、クライアントA1と遠隔
サーバBとの通信(500と520間の通信)で、遠隔サーバB
の通信Proxy(代理人)(515)をクライアントA1が
所属するLAN内のローカル・サーバAに置き、遠隔サ
ーバへルーティングする通信パケット(511)をスチール
してトランスポート層(TCP)へ渡し(513)、クライア
ントA1と遠隔サーバB間のTCPの通信(502と522間
の通信)を、クライアントA1と遠隔サーバBの通信P
roxyとの通信(502と513間の通信)と、遠隔サーバB
の通信Proxyと遠隔サーバBとの通信(517と522の
間の通信)に分割する。その結果、LAN内での通信と
広域ネットワークを介した通信の夫々に適したTCPの
フロー制御や輻輳制御アルゴリズムを適用できる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ネットワークを介
したクライアント計算機とサーバ計算機間の高速通信処
理方式に関し、特に、ATMネットワークのような高速
ネットワークに接続される遠隔のサーバ計算機とEth
ernetのような低速ネットワークに接続されるクラ
イアント計算機との間の高速なネットワーク通信処理方
式に関する。
【0002】
【従来の技術】ネットワークを介して、クライアント計
算機が遠隔のサーバ計算機のファイルをアクセスする方
式として、TCP/IPプロトコルを用いてクライアン
トがサーバと直接通信する方式が知られている。TCP
/IPプロトコルはInternetなどで使用されて
いる高速通信プロトコルである(Douglas Co
mer著、村井純・楠本博之訳:TCP/IPによるネ
ットワーク構築、共立出版)。
【0003】IPプロトコルは、図6(a)に示すよう
に、ISO (International Orga
nization for Standardizat
ion)のプロトコル・スタックの参照モデルのネット
ワーク層(504、510、524)に位置し、通信経
路に存在する計算機間でホップ・バイ・ホップの通信を
行う。通信経路に位置するゲートウェイ(510、52
4)やルータはパケットの宛先アドレスを見て、宛先ア
ドレスが自分であれば(524)上位のトランスポート
層(522)にパケットを渡し、宛先が自分でなければ
(510)ルーティング・テーブルを検索してテーブル
で指定されているネットワーク・インタフェース・ドラ
イバ(データリンク層)にパケットを渡す。TCPプロ
トコルは参照モデルのトランスポート層に位置し、エン
ド・トゥ・エンドの計算機間でフロー制御や輻輳制御、
再送制御を行いながら通信を行う。通信相手のバッファ
容量に応じてスライディング・ウィンドウ・サイズを変
化させるフロー制御によって通信性能を向上させたり、
ラウンドトリップ時間が増加するとネットワークで輻輳
が生じていると判断して転送速度を抑止し、ネットワー
クの輻輳を低減する。また、確認応答(ACK)が戻っ
てくる時間がタイムアウトになると通信経路上でパケッ
トが消失したと判断してパケットを再送し、信頼性の高
い通信を保証する。このように、TCPプロトコルでは
送信元・受信先の計算機で通信経路の状況を判断して、
エンド・トゥ・エンドでフロー制御や輻輳制御を行い、
広域ネットワークを介した高性能なデータ通信を実現し
ている。
【0004】
【発明が解決しようとする課題】ネットワークを介した
クライアント・サーバ通信の通信経路に着目した場合、
LANとネットワークの境界にはゲートウェイもしくは
ルータが位置し、ネットワークを介してパケットを通信
相手に送付する。しかし、遠隔地とエンド・トゥ・エン
ド通信を行うとリクエストを送出してから応答信号を受
け取るまでのラウンドトリップ時間が長いためパケット
の送出に空きが生じるため、高速ネットワークを用いて
もその性能を活かせないという問題がある。また、ネッ
トワークを介した通信の性能のボトルネックは、LAN
よりもむしろネットワークにおける輻輳やスループット
の低さに起因するため、TCPプロトコルではネットワ
ークでは輻輳が生じていることを前提としたスロー・ス
タート制御が行われるため、高速ネットワークを用いて
もその性能を活かせないという問題もある。
【0005】一方、ATM(Asynchronous
Transfer Mode)ネットワークのような
高速で帯域予約可能なネットワークでは、各コネクショ
ンが使用できるネットワークのバンド幅はLAN性能と
同等以上に高速であるだけではなく、ネットワークの通
信のバンド幅をコネクションごとに予約したり、マルチ
メディア・データを送受信できる。そのため、TCP/
IPプロトコルのようにフロー制御や輻輳制御をエンド
・トゥ・エンドで行うのではなく、ホップ・バイ・ホッ
プできめ細かくフロー制御や輻輳制御を行う方が、AT
Mネットワークの利点を活かすことができる。しかし、
TCPプロトコルはエンド・トゥ・エンドで通信するた
め、通信経路の途中の輻輳具合やホップ・バイ・ホップ
のネットワーク・リンクの太さを知ることはできない。
そのため、途中経路のネットワークに応じたフロー制御
や輻輳制御を行うことができず、ネットワークの性能・
機能を十分に活かせないという問題がある。
【0006】このようなネットワークの問題点を解決す
るために、遠隔ファイルのコピーをローカルに作成する
というミラーリング方式がある。しかし、ミラーリング
方式では、複数箇所に同じファイルの複製が作られる
と、ファイルの一貫性保証を保つためのオーバヘッドが
生じる。つまり、複製ファイルへの書込更新が生じた場
合には、他のファイルに対して変更内容を反映させなけ
ればならず、管理オーバヘッドによって性能が低下する
という問題がある。
【0007】本発明の目的は、上記課題を解決し、クラ
イアントの接続されるネットワーク(例えば、LAN)
と遠隔サーバの接続される他のネットワーク(例えば、
広域ネットワーク(WAN))とのゲートウェイを行う
サーバ計算機が、単にネットワーク層でのパケットのル
ーティングを行うのではなく、クライアント計算機と遠
隔サーバ計算機間のネットワーク(リンク)の性能や機
能、各サーバ計算機の性能に応じて、エンド・トゥ・エ
ンドではなく、ホップ・バイ・ホップでフロー制御や輻
輳制御を行うことがきる方式を提供することにある。
【0008】
【課題を解決するための手段】上記目的を達成するため
に、本発明は、第1のネットワークに接続された第1の
計算機と第2のネットワークに接続された第2の計算機
が、該両ネットワークに接続された第3の計算機を介し
て通信を行うネットワーク通信におけるネットワーク通
信処理方式であり、該第3の計算機は、該第2の計算機
のネットワーク・アドレスを登録するProxy登録テ
ーブルと該第2の計算機宛の通信パケットを受信する通
信Proxyプロセスを有する通信Proxyを備え、
該第3の計算機は、該第3の計算機宛以外の通信パケッ
トを受信したときには、前記Proxy登録テーブルを
検索し、該通信パケットの宛先のネットワーク・アドレ
スが前記Proxy登録テーブルに登録されている場合
には、前記通信Proxyプロセスが前記通信パケット
を受信し、さらに該通信パケットを宛先に送信するよう
にしている。また、前記第3の計算機は前記通信Pro
xyを生成する通信Proxy登録待ちデーモンを備
え、前記第2の計算機は前記3の計算機の前記通信Pr
oxy登録待ちデーモンに対して、前記通信Proxy
プロセスを生成し、前記Proxy登録テーブルに前記
第2の計算機のネットワーク・アドレスを登録すること
を指示するようにしている。また、前記第3の計算機上
の通信Proxyプロセスは前記第2の計算機から送信
された通信パラメタを受信し、該通信パラメタを該第3
の計算機上に登録するようにしている。また、前記通信
Proxyプロセスが、前記第1の計算機から前記第2
の計算機宛のコネクション開設要求パケットを受信した
ときには、前記通信Proxyプロセスは、前記通信P
roxyプロセスと前記第1の計算機との間のコネクシ
ョンを開設し、さらに前記通信Proxyプロセスと前
記第2の計算機との間のコネクションを開設するように
している。また、前記第3の計算機は、前記第2の計算
機が前記1の計算機との通信に用いる第1の通信ポート
識別子を、前記通信Proxyプロセスが該1の計算機
との通信に用いる第2の通信ポート識別子に変換するポ
ート番号変換テーブルを備え、前記第2の計算機宛に送
付した通信パケットを受信したとき、前記通信パケット
に記されている前記第1の通信ポート識別子を前記第2
の通信ポート識別子に変換して、前記通信Proxyプ
ロセスに前記通信パケットを受信させるようにしてい
る。前記通信Proxyプロセスは、前記第2の計算機
から該通信Proxyプロセス宛に送付した通信パケッ
トを前記第1の計算機へ送付するようにしている。前記
通信Proxyプロセスは、前記第2の計算機が該通信
Proxyプロセス宛に送付した前記通信パケットを前
記第1の計算機へ送付するときに、通信パケットの送信
元ネットワーク・アドレスを前記第2の計算機のネット
ワーク・アドレスに書き換えるようにしている。
【0009】
【発明の実施の形態】ATMネットワークなどのような
高速で帯域予約可能なネットワークがネットワークで使
われるようになると、ゲートウェイやルータは、低価格
のPCやWSとは異なり、高いCPU性能や大容量主記
憶を備えたり、高速ネットワークに適したプロトコル処
理アルゴリズムを実装して、複数のコネクションを用い
た並列通信を行ったり、十分大きな通信用バッファ領域
を確保してウィンドウ・サイズを拡張してパケットの送
出に空きを生じないようにすることが求められている。
【0010】本発明では図6(b)のクライアントA1
と遠隔サーバBとの通信(500と520の間の通信)
に示すように、遠隔サーバBの通信Proxy(代理
人)(515)をクライアントA1が所属するLAN内
のゲートウェイ(ローカル・サーバA)に置き、遠隔サ
ーバへルーティングする通信パケット(511)をスチ
ールしてトランスポート層へ渡す(513)。このよう
にして、クライアントA1と遠隔サーバBとの間のトラ
ンスポート層の通信(502と522の間の通信)を、
クライアントA1と遠隔サーバBの通信Proxyとの
通信(502と513の間の通信)と、遠隔サーバBの
通信Proxyと遠隔サーバBとの通信(517と52
2の間の通信)に分割する。その結果、前者のLAN内
での通信と後者の広域ネットワークを介した通信のそれ
ぞれに適したトランスポート層のフロー制御や輻輳制御
アルゴリズムを適用することができる。このようにし
て、クライアント計算機上の通信プログラムの変更なし
に広域ネットワークを介した高性能通信を実現できる。
遠隔サーバBからクライアントA1へパケットを送付す
る場合も、上記と逆の手順で実現できる。
【0011】
【実施例】まず図7を用いてクライアントとサーバがT
CP/IPプロトコルを用いてデータ通信を行う場合の
一般的なプログラム記述例を説明する。図7に示すプロ
グラムは、W.D.Stevens著の”UNIX n
etwork programming”(Prent
ice Hall)にも記されているsocketを用
いたプログラムと同様である。
【0012】701から715がサーバで実行されるプ
ログラムを示し、750から761がクライアントで実
行されるプログラムを示す。サーバは、socketの
生成(702)、socketのアドレス付け(70
6)を行った後、listen()コールによって、任
意のクライアント(704)からのコネクション開設要
求を待つ(707)。クライアントは、socketを
生成(753)した後、サーバのネットワーク・アドレ
スを指定し(755)、connect()コールによ
ってサーバとのコネクション開設を要求する(75
8)。クライアントがconncet()コールによっ
てコネクションの開設を要求し、サーバがクライアント
の要求を受け入れると、accept()コールによっ
てクライアントとサーバ間のコネクションが確立する
(709)。サーバは新たに確立したコネクションで用
いるソケットの記述子newfdを割り当て(70
9)、子プロセスを生成し(710)、子プロセスとク
ライアントとの間でデータ通信が行われる(713)。
親プロセスは、他のクライアントからの要求を受け付け
るべく待ち状態に戻る(715、708)。クライアン
トもコネクションが確立すると(758)、サーバとの
間でデータ通信を行う(759)。
【0013】図8は、本発明のが対象とするコンピュー
ティング・システムの1構成例を示す。図8において、
100、200、300は、それぞれオフィスA、B、
Cを表す。110はクライアント計算機、130、23
0、330は本発明が適用されるサーバ計算機で、クラ
イアント110から見て130はローカル・サーバ、2
30と330は遠隔サーバを示す。132、232、3
32はそれぞれサーバ130、230、330が管理す
るファイル、120、220、320はLAN(Loc
al Area Network)、140、240、
340はATM(AsynchronousTrans
fer Mode)スイッチのようなLANスイッチ、
150、250、350はPBX(Private B
ranch eXchange:構内交換機)、400
は広域ネットワーク(WAN:Wide Area N
etwork)を示す。ローカル・サーバ130上の8
52、854は、本発明を実現する手段であり、それぞ
れ遠隔サーバ230、330の通信ポートの代理人(P
roxy)を示す。
【0014】クライアント110は、ネットワーク・ア
ドレスがnet1.Cであり、ネットワーク112を通
してLAN120に接続される。サーバ130、23
0、330は、それぞれネットワーク122、222、
322を通してLAN120、220、320に接続さ
れ、ネットワーク134ないし136、234ないし2
36、334ないし336を通してそれぞれLANスイ
ッチ140、240、340と接続される。ローカル・
サーバ130のLAN側のネットワーク・アドレスはn
et1.S、LANスイッチ側のネットワーク・アドレ
スはnet2.Sとし、遠隔サーバ230のLANスイ
ッチ側のネットワーク・アドレスはnet2.RSとす
る。図面では複数のネットワークを記しているが、LA
Nスイッチ140、240、340とサーバ130、2
30、330との接続は1本のネットワークでもよい。
【0015】LANスイッチ140、240、340
は、ネットワーク142、242、342を通してそれ
ぞれPBX150、250、350と接続され、PBX
150、250、350はそれぞれネットワーク15
2、252、352を通してWAN400と接続され
る。LANスイッチ140、240、340は必ずしも
必要ではなく、サーバ130、230、330が直接P
BXに接続されてもよい。
【0016】図8において、クライアント110が遠隔
サーバ230と通信する場合、TCP/IPパケット
は、まずLAN120を経由してローカル・サーバ13
0に送られ、サーバBの通信Proxyプロセス852
を経て、LANスイッチ140、PBX150、WAN
400、PBX250、LANスイッチ240を通り、
最後に遠隔サーバ230に到達する。クライアント11
0が遠隔サーバ230からパケットを受信する場合に
は、逆の順序となる。
【0017】図3を用いて、本発明の1実施例である、
ローカル・サーバ130や通信Proxy852、遠隔
サーバ230の初期処理について説明する。初期処理
は、ローカル・サーバ130と遠隔サーバ230との間
で行う。ローカル・サーバ130は通信Proxy登録
待ちデーモンを備え、ポート番号#1とバインドされる
socketを作成して、遠隔サーバからの通信Pro
xyプロセスの登録要求を待つ(600)。遠隔サーバ
230は、ローカル・サーバ130のポート番号#1に
対して通信Proxyの登録要求を送る(650)。ロ
ーカル・サーバ130は遠隔サーバ230からの登録要
求を受付け、通信Proxyプロセスを新たにfork
(生成)する(602)。ローカル・サーバ130と遠
隔サーバ230のコネクションが確立されると、遠隔サ
ーバ230は、遠隔サーバ230がクライアント110
との通信で使用することになっているポート番号#n−
c−rs(コネクト要求を出すときは複数のクライアン
トが共通に使用できる)と、ローカル・サーバ130上
の通信Proxy852と遠隔サーバ230との間の通
信で使用するポート番号#n−s−rsをローカル・サ
ーバ130に送付する(652)。ポート番号#n−c
−rsは、クライアント110が遠隔サーバ230へ送
付するTCP/IPパケットをスチールするときに用い
る。ポート番号#n−s−rsは、スチールしたTCP
/IPパケットをローカル・サーバ130から遠隔サー
バ230に送付するときに使用する。
【0018】ローカル・サーバ130はポート番号#n
−c−rsを受信すると、ローカル・サーバ130上の
通信Proxy852がクライアント110から送られ
てくるTCP/IPパケットを受信するための通信ポー
トとして、ローカル・サーバ130の通信ポート(#n
−c−s)を割り当てる(604)。遠隔サーバ230
は、ポート番号#n−c−rsと#n−s−rsを送る
と、ローカル・サーバとの間でどのように通信するかを
示す通信パラメタを送付する(654)。通信パラメタ
では、例えば、並列通信によって複数のコネクションを
設立することによって、TCPプロトコルのウィンドウ
・サイズの小ささに起因する遠距離通信での性能低下を
解消するオプションや、TCPプロトコルのウィンドウ
・サイズを拡張するオプション、ATMネットワークに
対応したQOS保障のためのパラメタ、従来ネットワー
クとは異なるATMネットワーク対応のフロー制御アル
ゴリズムを使用するオプションなどを指定できる。(な
お、通信パラメタについては、“日経BP出版センター
発行「ATMインターネツトワーキング」著者:Cis
co System,Inc.Anthony All
es 監訳者:日本シスコシステムズ 設楽 常巳 1
995年9月22日発行”を参照されたい。) このように、広域ネットワークゆえのレイテンシの課題
や、ATMネットワークのようなセル・ベースの高速ネ
ットワークに対処できる通信制御を、サーバ間では実現
できるようにするための通信パラメタをローカル・サー
バ130に渡す。ローカル・サーバ130は、遠隔サー
バ230から受け取った通信パラメタと、遠隔サーバ2
30と接続されるネットワークのスループットや輻輳状
況などの情報を取り出して、これに基づき遠隔サーバ2
30とのフロー制御や輻輳制御の処理を行う(60
6)。ローカル・サーバ130は以上の情報をもとに、
本発明の1実施例を実現するために必要なテーブル類を
初期化する。
【0019】今回の通信Proxy登録要求が、遠隔サ
ーバ230からの最初の要求であれば(608a)、P
roxy登録テーブルとポート番号変換テーブルを作成
し、情報を登録する(610)。もし、今回の通信Pr
oxy登録要求が最初の要求でなければ(608b)、
ポート番号変換テーブルのエントリを追加する(61
2)。なお、表に関する詳細は図2を用いて後述する。
以上の準備を終了した後、ローカル・サーバ130は、
クライアント110が遠隔サーバ230にコネクション
開設要求を出すのを待つ(614)。一方、遠隔サーバ
230も、クライアント110が遠隔サーバ230にコ
ネクション開設要求を出したとき、ローカル・サーバ1
30がこの開設要求をスチールして、ローカル・サーバ
130上の通信Proxy852から遠隔サーバ230
に対してコネクション開設要求が送付し直されるのを待
つ(656)。
【0020】次に、図2に、本発明の1実施例のPro
xy登録テーブルの詳細とポート番号変換テーブルの詳
細を示す。図2において、900ないし950はPro
xy登録テーブルの各エントリの並びのヘッダである。
ルーティング・テーブルを検索して得られた次にパケッ
トを送付するゲートウェイやサーバのIPアドレスをキ
ーにしてProxy登録テーブルを検索する。宛先アド
レスをハッシュ関数で変換し(900a)、Proxy
登録テーブル・エントリをたどる。Proxy登録テー
ブルの各エントリは、ハッシュ関数のキーである次にパ
ケットを送出するゲートウェイのネットワーク・アドレ
ス961、クライアント110が遠隔サーバ230と通
信する場合に指定する遠隔サーバ230の通信ポート番
号(#n−c−rs)から、クライアント110がロー
カル・サーバ130上の通信Proxy850と通信す
る場合に使用するローカル・サーバ130の通信ポート
番号(#n−c−s)と、ローカル・サーバ130上の
通信Proxy850が遠隔サーバ230と通信する場
合に用いる遠隔サーバの通信ポート番号(#n−s−r
s)へ変換するポート番号変換テーブルへのポインタ
(962)、Proxy登録テーブル・エントリのリス
トを作成するためのポインタ963から構成される。
【0021】ポート番号変換テーブルの各エントリは、
遠隔サーバ230がローカル・サーバ130へProx
yを用いた通信を登録している通信ポートの数(97
1)、ポート番号を変換するテーブル・エントリ972
ないし976から構成される。さらに、各エントリには
通信コネクションごと(ポート番号ごと)にローカル・
サーバ130と遠隔サーバ230との間の通信方式を指
定する通信パラメタ・テーブルへのポインタが含まれ
る。通信パラメタ・テーブルには、遠距離の通信を高速
に行うためにウィンドウ・サイズ拡張オプション(98
0)、サーバ間の通信リンク性能を指定して高速リンク
の場合には、TCPプロトコルの特徴であるスロー・ス
タート制御を行わないでも良いことを示すようなリンク
性能指定パラメタ(981)、複数のコネクションを用
いた並列通信によってウィンドウ・サイズの拡張と同様
の効果を得られる並列通信オプション982、マルチメ
ディア・データ通信などQOS(Quality Of
Service)の保障が要求される通信に対するQ
OS指定パラメタ983、ATMネットワークのような
セル・ベースのネットワークに適したフロー制御を行わ
せるためのフロー制御アルゴリズム指定パラメタ984
から構成される。QOS指定には、CBR(Const
ant Bit Rate)、VBR(Variabl
e Bit Rate)、ABR(Available
BitRate)、UBR(Unspecified
Bit Rate)などATMネットワークで規定さ
れるQOSの各種パラメタがある。これらのパラメタは
通信Proxyプロセス852に伝達され、サーバ間の
通信制御で使用される。
【0022】次に、図1、図2、図4を用いて、クライ
アント110が遠隔サーバ230に対してコネクション
の開設を要求した場合の動作について説明する。図1に
おいて、800はLAN120からの入力パケットを受
信するネットワーク・インタフェース、801ないし8
02はWAN400からの入力パケットを受信するネッ
トワーク・インタフェースを示す。810ないし812
はネットワーク・インタフェースがIP層へ渡すIPパ
ケットのバッファ(キュー)を示す。820はIPプロ
セス、832はIPプロセスがTCP層へ渡すTCPパ
ケットのバッファ(キュー)、840はTCP入力プロ
セスを示す。850は遠隔サーバ230での通信処理プ
ログラムのコピー、852、854はそれぞれ遠隔サー
バ230、330の通信Proxyプロセス、853、
855は送信元IPアドレス変換ルーチンを示す。85
6、858、860はアプリケーション・プログラム、
862はTCP層へ出力するパケットのバッファ(キュ
ー)、870はTCPプロセス、872はTCPプロセ
スがIP層へ渡すTCPパケットのバッファ(キュー)
を示す。880ないし882はIPプロセスがネットワ
ーク・インタフェース890ないし892へ渡すIPパ
ケットのバッファ(キュー)、890ないし892はL
ANやWANへ出力パケットを送信するネットワーク・
インタフェースを示す。
【0023】図1、図2、図4において、クライアント
110が遠隔サーバ230へコネクション開設要求を送
付すると(630)、コネクション開設要求はローカル
・サーバ130に送られ、クライアント110とローカ
ル・サーバ130とのコネクションが開始された後、ロ
ーカル・サーバ130から遠隔サーバ230へコネクシ
ョン開設要求が送付される。クライアント110とロー
カル・サーバ130とのコネクションが開始されなけれ
ば、コネクション開設要求はローカル・サーバ130経
由で遠隔サーバ230へ送付される。ローカル・サーバ
130においては、ネットワーク・インタフェース80
0を経由してコネクション開設要求がローカル・サーバ
130に入力される。パケットはキュー810で緩衝さ
れたのちIPプロセス820に渡される。
【0024】IPプロセス820は、コネクション開設
要求のパケットのIPヘッダの宛先アドレスを調べて、
自分宛のパケットか他人宛のパケットかを判断する(8
22)。このコネクション開設要求パケットは遠隔サー
バ230宛で他人宛であるため(822a)、IPパケ
ットのルーティング・テーブルを検索し、次にこのコネ
クション開設要求パケットを送付すべきゲートウェイの
IPアドレスとして遠隔サーバ230のIPアドレスを
求める(824)。
【0025】このIPアドレスをキーにしてハッシュ関
数を引き(900a)、Proxy登録テーブル(90
0ないし950)を検索する(826、615)。ロー
カル・サーバ130には、遠隔サーバ230の通信Pr
oxyがProxy登録テーブルに登録されているた
め、遠隔サーバ230のIPアドレスをキーにしてPr
oxy登録テーブルを検索するとヒットする(826
b)。そこで、このコネクション開設要求パケットをT
CP層へ送り、TCPパケットのヘッダを解析すること
によって遠隔サーバ230との通信で使用している通信
ポート番号#n−c−rsを得る。
【0026】遠隔サーバ230の通信ポート番号#n−
c−rsをキーにしてポート番号変換テーブルの各エン
トリ(972ないし976)を検索し(616)、ヒッ
トすればローカル・サーバ130がクライアント110
との通信用に割り当てている通信ポート番号#n−c−
sに変換する(830、617)。さらにコネクション
開設要求パケットのヘッダに記されているパケットの宛
先アドレスを、遠隔サーバ230のIPアドレスnet
2.RSからローカル・サーバ130のLAN側のIP
アドレスnet1.Sに書き換える(831、61
7)。通信ポート番号と宛先IPアドレスを書き換える
ことによってあたかも自分宛(ローカル・サーバ130
宛)のコネクション開設要求パケットとして、キュー8
32に本パケットを入れる。ポート番号変換テーブルに
遠隔サーバ230の通信ポート番号が登録されていない
場合には(830b)、従来技術の通り、遠隔サーバ2
30のIPアドレスをもとに送出先ネットワーク・イン
タフェースを選択して(828)、コネクション開設要
求パケットをそのまま遠隔サーバ230へフォワードす
る。
【0027】キュー832に入れられたコネクション開
設要求パケットは、TCP入力プロセス840によって
パケット・ヘッダに書かれている通信ポート番号をもと
にしてマルチプレクシングされ、サーバBの通信Pro
xyプロセス852へ送られる。その結果、遠隔サーバ
230の通信Proxyプロセス852とクライアント
110との間のコネクションの開設要求が受け付けられ
る(618)。
【0028】通信Proxyプロセス852は、遠隔サ
ーバ230から先に送られてきている通信ポート番号#
n−s−rs(652)を用いて、遠隔サーバ230と
の間のコネクション開設要求を出す(620)。この
時、先に遠隔サーバ230から送られて来た通信パラメ
タ(654)に従ってコネクションを開設する。遠隔サ
ーバ230がコネクション開設要求を受け付けると、遠
隔サーバ230と通信Proxyプロセス852との間
のコネクションが確立される(622)。
【0029】遠隔サーバ230からコネクション確立要
求が受け付けられると、通信Proxyプロセス852
もクライアント110に対してコネクション開設を受け
付けるACK信号を返し、その結果クライアントとのコ
ネクションの開設が完了する(624)。ACK信号の
パケットを返すときに、送信元IPアドレスをローカル
・サーバ130のIPアドレスではなく、遠隔サーバ2
30のIPアドレスに書き換え(853、626)、ク
ライアント110には遠隔サーバ230からのACK信
号であるように見せる。以上の結果、クライアント11
0と遠隔サーバ230とのコネクションは、クライアン
ト110とローカル・サーバ130上の通信Proxy
852との間のコネクションと、ローカル・サーバ13
0上の通信Proxy852と遠隔サーバ230との間
のコネクションに分割して、コネクションを確立するこ
とができた。
【0030】次に、図1、図2、図5を用いて、クライ
アント110と遠隔サーバ230との間でデータを送受
信する場合の処理について説明する。図1、図2、図5
において、クライアント110が遠隔サーバ230のポ
ート番号#n−c−rsへTCP/IPパケットを送付
すると(660)、パケットはローカル・サーバ130
を経由して遠隔サーバ230へ送付される。
【0031】ローカル・サーバ130においては、ネッ
トワーク・インタフェース800を経由してパケットが
ローカル・サーバ130に入力される。パケットはキュ
ー810で緩衝されたのちIPプロセス820に渡され
る。
【0032】IPプロセス820は、パケットのIPヘ
ッダの宛先アドレスを調べて、自分宛のパケットか他人
宛のパケットかを判断する(822)。このパケットは
遠隔サーバ230宛で他人宛であるため(822a)、
IPパケットのルーティング・テーブルを検索し、次に
このコネクション開設要求パケットを送付すべきゲート
ウェイのIPアドレスとして遠隔サーバ230のIPア
ドレスを求める(824、662)。このIPアドレス
をキーにしてハッシュ関数を引き(900a)、Pro
xy登録テーブルを検索する(826、664)。ロー
カル・サーバ130には、遠隔サーバ230の通信Pr
oxyがProxy登録テーブルに登録されているた
め、遠隔サーバ230のIPアドレスをキーにしてPr
oxy登録テーブルを検索するとヒットする(826
b)。そこで、このパケットをTCP層へ送り、TCP
パケットのヘッダを解析することによって遠隔サーバ2
30との通信で使用している通信ポート番号#n−c−
rsを得る。
【0033】遠隔サーバ230の通信ポート番号#n−
c−rsをキーにしてポート番号変換テーブルの各エン
トリ(972ないし976)を検索し(664)、ヒッ
トすればローカル・サーバ130がクライアント110
との通信用に割り当てている通信ポート番号#n−c−
sに変換する(830、666)。さらにパケットのヘ
ッダに記されているパケットの宛先アドレスを、遠隔サ
ーバ230のIPアドレスnet2.RSからローカル
・サーバ130のLAN側のIPアドレスnet1.S
に書き換える(831、666)。通信ポート番号と宛
先IPアドレスを書き換えることによってあたかも自分
宛(ローカル・サーバ130宛)のパケットとして、キ
ュー832に本パケットを入れる。ポート番号変換テー
ブルに遠隔サーバ230の通信ポート番号が登録されて
いない場合には(830b)、従来技術の通り、遠隔サ
ーバ230のIPアドレスをもとに送出先ネットワーク
・インタフェースを選択して(828)、パケットをそ
のまま遠隔サーバ230へフォワードする。
【0034】キュー832に入れられたパケットは、T
CP入力プロセス840によってパケット・ヘッダに書
かれている通信ポート番号をもとにしてマルチプレクシ
ングされ、サーバBの通信Proxyプロセス852へ
送られて、パケットは受信される(668)。TCP層
でMTU(最大転送ユニット)の大きさごとに分割され
ていたパケットももとのストリームに再組立される。そ
の後、通信Proxyプロセス852は遠隔サーバ23
0とのコネクションの条件(MTUの大きさや、並列通
信を行うか否かなど)に合わせてデータを分割し、遠隔
サーバ230との間に張られているコネクションを用い
て、遠隔サーバ230の通信ポート番号#n−s−rs
に対してパケットを送付する(670)。このパケット
はサーバ間のコネクションを用いるため、IPパケット
の送信元アドレスは変換されずに、そのままキュー86
2に入れられる。TCPプロセス870はキュー862
からパケットを取り出してTCPパケットを組み立てた
後、IPプロセス820の受付キュー872にパケット
を入れる。
【0035】IPプロセス820では、最終宛先アドレ
スをキーにしてルーティング・テーブルを検索して、最
終宛先に到達するために次にパケットを送付すべきゲー
トウェイのIPアドレスを求める(829)。このIP
アドレスはWAN経由で遠隔サーバ230へ送付するた
め、IPパケットを送出するローカル・サーバ130の
ネットワーク・インタフェースとして891のネットワ
ーク・インタフェースを選択し(828)、このネット
ワーク・インタフェースの受付けキュー881にIPパ
ケットを入れる。その結果、パケットは遠隔サーバ23
0へ送付され、遠隔サーバ230はパケットを受信する
(672)。以上のように、クライアント110から遠
隔サーバ230宛へ送付されたパケットは、ローカル・
サーバ130上の通信Proxy852を経由して、サ
ーバ間の通信制御アルゴリズムにしたがって遠隔サーバ
230へ送信された。
【0036】次に、クライアント110が遠隔サーバ2
30からデータを受信する場合について説明する。ロー
カル・サーバ130上の通信Proxyプロセス852
は、遠隔サーバ230からパケットを受信すると、パケ
ットをクライアント110へ送付する。したがって、遠
隔サーバ230は、クライアント110へパケットを直
接送付するのではなく、ローカル・サーバ130上の通
信Proxyプロセス852へパケットを送付する(6
74)。パケットがローカル・サーバ130に到着する
と(676)、WAN400に接続されているネットワ
ーク・インタフェース801を経由してローカル・サー
バ130に入力される。パケットはキュー811で緩衝
されたのちIPプロセス820に渡される。
【0037】IPプロセス820は、パケットのIPヘ
ッダの宛先アドレスを調べて、自分宛のパケットか他人
宛のパケットかを判断する(822)。このパケットは
自分宛であるため(822b)、そのままキュー832
に本パケットは入れられる。キュー832に入れられた
パケットは、TCP入力プロセス840によってパケッ
ト・ヘッダに書かれている通信ポート番号をもとにして
マルチプレクシングされ、サーバBの通信Proxyプ
ロセス852へ送られて、パケットは受信される(67
8)。
【0038】TCP層でMTU(最大転送ユニット)の
大きさごとに分割されていたパケットももとのストリー
ムに再組立される。その後、通信Proxyプロセス8
52はクライアント110とのコネクションの条件に合
わせてデータを分割し、クライアント110に対してパ
ケットを送付する(680)。このパケットを返すとき
に、送信元IPアドレスをローカル・サーバ130のI
Pアドレスではなく、遠隔サーバ230のIPアドレス
に書き換え(853、682)、クライアント110に
は遠隔サーバ230からのパケットであるように見せ
る。IPアドレスを書き換えた後、パケットはキュー8
62に入れられる。TCPプロセス870はキュー86
2からパケットを取り出してTCPパケットを組み立て
た後、IPプロセス820の受付キュー872にパケッ
トを入れる。
【0039】IPプロセス820では、最終宛先アドレ
スをキーにしてルーティング・テーブルを検索して、最
終宛先に到達するために次にパケットを送付すべきゲー
トウェイのIPアドレスを求める(829)。このIP
アドレスはLAN経由でクライアント110へ送付する
ため、IPパケットを送出するローカル・サーバ130
のネットワーク・インタフェースとして890のネット
ワーク・インタフェースを選択し(828)、このネッ
トワーク・インタフェースの受付けキュー880にIP
パケットを入れる。その結果、パケットはクライアント
110へ送付され、クライアント110はパケットを受
信する(684)。以上の結果、遠隔サーバ230から
クライアント110宛へ送付されたパケットは、ローカ
ル・サーバ130上の通信Proxy852を経由し
て、サーバ間の通信制御アルゴリズムにしたがってクラ
イアント110へ送信された。
【0040】以上のように、クライアント110と遠隔
サーバ230との間の通信を、LANとWANのゲート
ウェイであるローカル・サーバ130を介して、クライ
アント110とローカル・サーバ130とのトランスポ
ート層での通信と、ローカル・サーバ130と遠隔サー
バ230とのトランスポート層での通信に分けることが
できる。その結果、ローカル・サーバ130と遠隔サー
バ230との間のような高性能サーバ間では、高性能サ
ーバやATMネットワークのような高速WANに適した
フロー制御や輻輳制御のトランスポート層のプロトコル
処理アルゴリズムを用いて、高速なサーバ間の遠隔通信
を実現できる。さらに、クライアントとローカル・サー
バ間の通信でも、LANという短距離通信やLANの高
速性を活かしたフロー制御や輻輳制御を用いて高速通信
を実現できる。さらに、ローカル・サーバ130がクラ
イアント110と遠隔サーバ230との間の通信パケッ
トをスチールするため、クライアント110には透明な
まま、LAN内とWAN内の2つの通信に分けることが
できるため、既存ソフトウェアを変更する必要なしに高
速性能を実現することができる。
【0041】上記実施例によれば、遠隔サーバB(23
0)とクライアントA1(110)との通信について記
したが、遠隔サーバC(330)とクライアントA1
(110)との通信でも全く同様である。上記実施例に
よれば、Proxy登録テーブルに遠隔サーバの通信ポ
ートのProxyを登録したが、図1と図3において、
ローカル・サーバ130が通信Proxyのひな型から
子プロセスをForkする(602)のではなく、遠隔
サーバ230がローカル・サーバ130へプログラム・
コードと処理メソッドを含むようなオブジェクトを送付
すれば、図3と同じ手順によって、図1に示すユーザ登
録プログラム850をローカル・サーバ130に登録す
ることができる。上記実施例によれば、クライアント1
10と遠隔サーバ230との通信経路上でパケットをル
ーティングするゲートウェイまたはルータはローカル・
サーバ130の1つだけであったが、通信経路上に複数
個のゲートウェイまたはルータが存在しても、各ゲート
ウェイまたはルータに本発明の1実施例であるProx
y登録テーブルとポート番号変換テーブルを実現すれ
ば、同様の手順によってホップ・バイ・ホップの通信処
理を行える。また、本発明の1実施例であるProxy
登録テーブルにProxyを登録しなければ、ホップ・
バイ・ホップによる通信処理ではなくて、複数個おきの
制御を行える。また、上記実施例によれば、公衆網(W
AN)とオフィス間の高速通信方式について述べている
が、例えば、ATMーLANとEthernet−LA
Nのように速度や媒体が異なる複数のネットワークから
構成されているLANにおいても適用することができ
る。
【0042】
【発明の効果】以上のように、本発明によれば、クライ
アントの接続されるネットワーク(例えば、LAN)と
遠隔サーバの接続される他のネットワーク(例えば、広
域ネットワーク(WAN))とのゲートウェイを行うサ
ーバ計算機が、クライアント計算機と遠隔サーバ計算機
間のネットワーク(リンク)の性能や機能、クライアン
ト計算機と遠隔サーバ計算機の性能に応じて、フロー制
御や輻輳制御を行うことがきる方式を提供することがで
き、ネットワークを介した高速通信を実現できる。
【図面の簡単な説明】
【図1】本発明の1実施例の構成を示すブロック図であ
る。
【図2】通信Proxy登録テーブルとポート番号変換
テーブルの1例を示す図である。
【図3】ローカル・サーバと遠隔サーバの初期処理のフ
ローチャートを示す図である。
【図4】クライアントとローカル・サーバとの間のコネ
クション開設処理のフローチャートを示す図である。
【図5】クライアント、ローカル・サーバ、遠隔サーバ
の3者の間のデータ送受信処理のフローチャートを示す
図である。
【図6】クライアント・サーバ間通信における従来の通
信方式でのプロトコル・スタックと、本発明の1実施例
の通信方式でのプロトコル・スタックを示す図である。
【図7】TCP/IPプロトコルを用いたクライアント
・サーバ間の通信プログラムの例を示す図である。
【図8】本発明の対象となるコンピューティング・シス
テムの1構成例を示す図である。
【符号の説明】
110 クライアントA1 120、220、320 LAN 130 ローカル・サーバ 230、330 遠隔サーバ 132、232、332 ファイル 140、240、340 LAN SW 150、250、350 PBX 400 広域ネットワーク 852 854 通信Proxyプロセス
───────────────────────────────────────────────────── フロントページの続き (72)発明者 マシエル・フレデリコ 東京都国分寺市東恋ケ窪1丁目280番地 株式会社日立製作所中央研究所内 (72)発明者 垂井 俊明 東京都国分寺市東恋ケ窪1丁目280番地 株式会社日立製作所中央研究所内 (72)発明者 樋口 達雄 東京都国分寺市東恋ケ窪1丁目280番地 株式会社日立製作所中央研究所内 (72)発明者 村橋 英樹 東京都国分寺市東恋ケ窪1丁目280番地 株式会社日立製作所中央研究所内

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】 第1のネットワークに接続された第1の
    計算機と第2のネットワークに接続された第2の計算機
    が、該両ネットワークに接続された第3の計算機を介し
    て通信を行うネットワーク通信におけるネットワーク通
    信処理方式であって、 該第3の計算機は、該第2の計算機のネットワーク・ア
    ドレスを登録するProxy登録テーブルと該第2の計
    算機宛の通信パケットを受信する通信Proxyプロセ
    スを有する通信Proxyを備え、 該第3の計算機は、該第3の計算機宛以外の通信パケッ
    トを受信したときには、前記Proxy登録テーブルを
    検索し、 該通信パケットの宛先のネットワーク・アドレスが前記
    Proxy登録テーブルに登録されている場合には、前
    記通信Proxyプロセスが前記通信パケットを受信
    し、さらに該通信パケットを宛先に送信することを特徴
    とするネットワーク通信処理方式。
  2. 【請求項2】 請求項1記載のネットワーク通信処理方
    式において、 前記第3の計算機は前記通信Proxyを生成する通信
    Proxy登録待ちデーモンを備え、 前記第2の計算機は前記3の計算機の前記通信Prox
    y登録待ちデーモンに対して、前記通信Proxyプロ
    セスを生成し、前記Proxy登録テーブルに前記第2
    の計算機のネットワーク・アドレスを登録することを指
    示することを特徴とするネットワーク通信処理方式。
  3. 【請求項3】 請求項1記載のネットワーク通信処理方
    式において、 前記第3の計算機上の通信Proxyプロセスは前記第
    2の計算機から送信された通信パラメタを受信し、該通
    信パラメタを該第3の計算機上に登録することを特徴と
    するネットワーク通信処理方式。
  4. 【請求項4】 請求項1記載のネットワーク通信処理方
    式において、 前記通信Proxyプロセスが、前記第1の計算機から
    前記第2の計算機宛のコネクション開設要求パケットを
    受信したときには、 前記通信Proxyプロセスは、前記通信Proxyプ
    ロセスと前記第1の計算機との間のコネクションを開設
    し、さらに前記通信Proxyプロセスと前記第2の計
    算機との間のコネクションを開設することを特徴とする
    ネットワーク通信処理方式。
  5. 【請求項5】 請求項1記載のネットワーク通信処理方
    式において、 前記第3の計算機は、 前記第2の計算機が前記1の計算機との通信に用いる第
    1の通信ポート識別子を、前記通信Proxyプロセス
    が該1の計算機との通信に用いる第2の通信ポート識別
    子に変換するポート番号変換テーブルを備え、 前記第2の計算機宛に送付した通信パケットを受信した
    とき、前記通信パケットに記されている前記第1の通信
    ポート識別子を前記第2の通信ポート識別子に変換し
    て、前記通信Proxyプロセスに前記通信パケットを
    受信させることを特徴とするネットワーク通信処理方
    式。
  6. 【請求項6】 請求項1記載のネットワーク通信処理方
    式において、 前記通信Proxyプロセスは、前記第2の計算機から
    該通信Proxyプロセス宛に送付した通信パケットを
    前記第1の計算機へ送付することを特徴とするネットワ
    ーク通信処理方式。
  7. 【請求項7】 請求項6記載のネットワーク通信処理方
    式において、 前記通信Proxyプロセスは、前記第2の計算機が該
    通信Proxyプロセス宛に送付した前記通信パケット
    を前記第1の計算機へ送付するときに、通信パケットの
    送信元ネットワーク・アドレスを前記第2の計算機のネ
    ットワーク・アドレスに書き換えることを特徴とするネ
    ットワーク通信処理方式。
JP7354020A 1995-12-29 1995-12-29 ネットワーク通信処理方式 Pending JPH09186723A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP7354020A JPH09186723A (ja) 1995-12-29 1995-12-29 ネットワーク通信処理方式
US08/773,315 US6404766B1 (en) 1995-12-29 1996-12-24 Network data communication system
US10/051,050 US6950436B2 (en) 1995-12-29 2002-01-22 Network data communication system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7354020A JPH09186723A (ja) 1995-12-29 1995-12-29 ネットワーク通信処理方式

Publications (1)

Publication Number Publication Date
JPH09186723A true JPH09186723A (ja) 1997-07-15

Family

ID=18434775

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7354020A Pending JPH09186723A (ja) 1995-12-29 1995-12-29 ネットワーク通信処理方式

Country Status (2)

Country Link
US (2) US6404766B1 (ja)
JP (1) JPH09186723A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009534937A (ja) * 2006-04-21 2009-09-24 マイクロソフト コーポレーション ネットワーク・デバイスによる多数の輻輳制御アルゴリズムの実行を可能にすること

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09186723A (ja) * 1995-12-29 1997-07-15 Hitachi Ltd ネットワーク通信処理方式
US6353614B1 (en) * 1998-03-05 2002-03-05 3Com Corporation Method and protocol for distributed network address translation
US7483967B2 (en) * 1999-09-01 2009-01-27 Ximeta Technology, Inc. Scalable server architecture based on asymmetric 3-way TCP
US6879593B1 (en) * 1999-12-20 2005-04-12 Intel Corporation Connections of nodes on different networks
US7301952B2 (en) * 2000-04-06 2007-11-27 The Distribution Systems Research Institute Terminal-to-terminal communication connection control method using IP transfer network
US7792923B2 (en) * 2000-10-13 2010-09-07 Zhe Khi Pak Disk system adapted to be directly attached to network
MXPA03011150A (es) * 2001-06-04 2004-10-28 Nct Group Inc Sistema y metodo para incrementar el ancho de banda efectivo de una red de comunicaciones.
US7099285B1 (en) * 2001-06-15 2006-08-29 Advanced Micro Devices, Inc. Remote configuration of a subnet configuration table in a network device
EP1588452A2 (en) * 2001-07-16 2005-10-26 Kim, Han Gyoo, Hongik university computer engineering Scheme for dynamically connecting i/o devices through network
US7260644B1 (en) * 2001-09-26 2007-08-21 Cisco Technology, Inc. Apparatus and method for re-directing a client session
US20050149682A1 (en) * 2001-10-09 2005-07-07 Han-Gyoo Kim Virtual multiple removable media jukebox
US7200144B2 (en) * 2001-10-18 2007-04-03 Qlogic, Corp. Router and methods using network addresses for virtualization
CA2475442C (en) 2002-03-08 2011-08-09 Aware, Inc. Systems and methods for high rate ofdm communications
US20080008202A1 (en) * 2002-10-31 2008-01-10 Terrell William C Router with routing processors and methods for virtualization
US7457880B1 (en) * 2003-09-26 2008-11-25 Ximeta Technology, Inc. System using a single host to receive and redirect all file access commands for shared data storage device from other hosts on a network
US7664836B2 (en) * 2004-02-17 2010-02-16 Zhe Khi Pak Device and method for booting an operation system for a computer from a passive directly attached network device
US20050193017A1 (en) * 2004-02-19 2005-09-01 Han-Gyoo Kim Portable multimedia player/recorder that accesses data contents from and writes to networked device
US20060069884A1 (en) * 2004-02-27 2006-03-30 Han-Gyoo Kim Universal network to device bridge chip that enables network directly attached device
JP4343760B2 (ja) * 2004-04-28 2009-10-14 株式会社日立製作所 ネットワークプロトコル処理装置
US7746900B2 (en) * 2004-07-22 2010-06-29 Zhe Khi Pak Low-level communication layers and device employing same
US7656891B1 (en) * 2004-08-04 2010-02-02 Intel Corporation Method and apparatus enabling concurrent processing of contiguously and virtually concatenated payloads
US7760659B2 (en) * 2004-08-05 2010-07-20 Microsoft Corporation Transmission optimization for application-level multicast
US7860943B2 (en) * 2004-08-23 2010-12-28 Zhe Khi Pak Enhanced network direct attached storage controller
US20060067356A1 (en) * 2004-08-23 2006-03-30 Han-Gyoo Kim Method and apparatus for network direct attached storage
US8059562B2 (en) * 2004-10-18 2011-11-15 Nokia Corporation Listener mechanism in a distributed network system
US7849257B1 (en) 2005-01-06 2010-12-07 Zhe Khi Pak Method and apparatus for storing and retrieving data
US8572605B1 (en) * 2005-04-28 2013-10-29 Azul Systems, Inc. Source switching of virtual machines
US7660244B2 (en) * 2005-06-20 2010-02-09 Alcatel-Lucent Usa Inc. Method and apparatus for quality-of-service based admission control using a virtual scheduler
JP4880442B2 (ja) 2006-12-26 2012-02-22 Necインフロンティア株式会社 通信システム
US7706266B2 (en) 2007-03-12 2010-04-27 Citrix Systems, Inc. Systems and methods of providing proxy-based quality of service
US20080298366A1 (en) * 2007-05-31 2008-12-04 Microsoft Corporation Agnostic Network Architecture
US8005010B2 (en) * 2008-01-30 2011-08-23 At&T Intellectual Property I, L.P. Method and apparatus for providing performance measurement for a network tunnel
US8305899B2 (en) * 2008-05-28 2012-11-06 Microsoft Corporation Pull-based data transmission approach
US9411647B2 (en) * 2010-01-22 2016-08-09 Qualcomm Incorporated Hierarchical routing and interface selection for multi-processor multimode network devices

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5309437A (en) * 1990-06-29 1994-05-03 Digital Equipment Corporation Bridge-like internet protocol router
US5420862A (en) * 1991-06-14 1995-05-30 Digital Equipment Corporation Router using remote address resolution to enable bridge like data forwarding
US5500860A (en) * 1991-06-14 1996-03-19 Digital Equipment Corporation Router using multiple hop redirect messages to enable bridge like data forwarding
US5371852A (en) * 1992-10-14 1994-12-06 International Business Machines Corporation Method and apparatus for making a cluster of computers appear as a single host on a network
US5623601A (en) * 1994-11-18 1997-04-22 Milkway Networks Corporation Apparatus and method for providing a secure gateway for communication and data exchanges between networks
US5550984A (en) * 1994-12-07 1996-08-27 Matsushita Electric Corporation Of America Security system for preventing unauthorized communications between networks by translating communications received in ip protocol to non-ip protocol to remove address and routing services information
US5657452A (en) * 1995-09-08 1997-08-12 U.S. Robotics Corp. Transparent support of protocol and data compression features for data communication
US5793763A (en) * 1995-11-03 1998-08-11 Cisco Technology, Inc. Security system for network address translation systems
US6058429A (en) * 1995-12-08 2000-05-02 Nortel Networks Corporation Method and apparatus for forwarding traffic between locality attached networks using level 3 addressing information
JPH09186723A (ja) * 1995-12-29 1997-07-15 Hitachi Ltd ネットワーク通信処理方式
US5781550A (en) * 1996-02-02 1998-07-14 Digital Equipment Corporation Transparent and secure network gateway
JP3531367B2 (ja) * 1996-07-04 2004-05-31 株式会社日立製作所 トランスレータ
US5828844A (en) * 1996-10-08 1998-10-27 At&T Corp. Internet NCP over ATM
EP0840482B1 (en) * 1996-11-01 2007-04-25 Hitachi, Ltd. Communicating method between IPv4 terminal and IPv6 terminal and IPv4-IPv6 converting apparatus

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009534937A (ja) * 2006-04-21 2009-09-24 マイクロソフト コーポレーション ネットワーク・デバイスによる多数の輻輳制御アルゴリズムの実行を可能にすること

Also Published As

Publication number Publication date
US6404766B1 (en) 2002-06-11
US20020057698A1 (en) 2002-05-16
US6950436B2 (en) 2005-09-27

Similar Documents

Publication Publication Date Title
JPH09186723A (ja) ネットワーク通信処理方式
JP3613863B2 (ja) ネットワーク接続システム及び並列ネットワーク接続方法
Newman et al. Flow labelled IP: A connectionless approach to ATM
US5600644A (en) Method and apparatus for interconnecting LANs
Aweya IP router architectures: an overview
US7490164B2 (en) Method providing server affinity and client stickiness in a server load balancing device without TCP termination and without keeping flow states
US8094660B2 (en) VLAN server
US7784055B2 (en) Method and apparatus for routing data to a load balanced server using MPLS packet labels
US7512702B1 (en) Method and apparatus providing highly scalable server load balancing
US6178453B1 (en) Virtual circuit switching architecture
US8090859B2 (en) Decoupling TCP/IP processing in system area networks with call filtering
McAuley Protocol design for high speed networks
JPH10290235A (ja) パケット交換トラヒックを転送するための改良型システム
Aweya On the design of IP routers Part 1: Router architectures
JPH09247190A (ja) 通信ネットワークのオペレーティング方法
JP2002508123A (ja) マルチレイヤ・ネットワーク要素用のシステムおよび方法
JPH06205039A (ja) マルチプロトコル対応のパケット網構成方法
Newman et al. Flow labelled IP: connectionless ATM under IP
US6760336B1 (en) Flow detection scheme to support QoS flows between source and destination nodes
US7031307B2 (en) Packet routing apparatus having label switching function
Basturk et al. Design and implementation of a QoS capable switch-router
US7522601B1 (en) Filtered router alert hop-by-hop option
US6865178B1 (en) Method and system for establishing SNA connection through data link switching access services over networking broadband services
Cisco Bridging and IBM Networking Overview
Kandlur et al. Protocol architecture for multimedia applications over ATM networks

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040202

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20040318

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20040525