JP2006262193A - 制御装置、パケット転送方法およびパケット処理装置 - Google Patents

制御装置、パケット転送方法およびパケット処理装置 Download PDF

Info

Publication number
JP2006262193A
JP2006262193A JP2005077948A JP2005077948A JP2006262193A JP 2006262193 A JP2006262193 A JP 2006262193A JP 2005077948 A JP2005077948 A JP 2005077948A JP 2005077948 A JP2005077948 A JP 2005077948A JP 2006262193 A JP2006262193 A JP 2006262193A
Authority
JP
Japan
Prior art keywords
packet
transfer
destination
application
control device
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
JP2005077948A
Other languages
English (en)
Inventor
Naoki Oguchi
直樹 小口
Tetsuaki Tsuruoka
哲明 鶴岡
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2005077948A priority Critical patent/JP2006262193A/ja
Priority to US11/211,002 priority patent/US20060209830A1/en
Publication of JP2006262193A publication Critical patent/JP2006262193A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/54Organization of routing tables
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/58Association of routers
    • H04L45/586Association of routers of virtual routers

Abstract

【課題】ル−タ10内でのパケット転送を効率良く行うこと。
【解決手段】各制御装置のアプリケーションアドレス検出部が、中継装置300や他の制御装置のアプリケーションアドレス検出部と連携して、ルータ10内の制御装置間で転送されるパケットの転送先を登録する転送表を作成して転送表記憶部に記憶する。また、パケット変換送受信部が宛先アプリケーションアドレスが仮想I/F記憶部に記憶された仮想I/Fアドレスと一致するパケットをアプリケーションから受け取ると、転送表に基づいて他の制御装置に直接送信する。
【選択図】 図2

Description

この発明は、パケットを中継する中継装置およびアプリケーションを実行する複数の制御装置が論理的に単一の装置としてパケットの処理を行うパケット処理装置、制御装置およびパケット転送方法に関し、特に、パケット処理装置内でのパケット転送を効率的に行うことができる制御装置、パケット転送方法およびパケット処理装置に関するものである。
近年のインターネットの整備や利用の高まりにより、ネットワークが提供する機能も一層の高度化が求められている。インターネットでは、インターネットに接続されたサーバにて各種サービス機能を実現するアプリケーションを実行する形態がある一方で、インターネットにおけるパケット中継を担う装置、例えばルータ上で多様なプログラムを実行する形態が好ましい場合もある。
また、複数のサービス提供を単一ホスト上で動作しているかのように見せるために、中継装置とサーバ群で全体が外部から見て一つであるかのように運用したいという要求もある。
そこで、パケット中継装置と外部サーバを連携させることにより、中継装置で提供する処理を外部サーバで実行しつつ、仮想的に単一の装置が提供しているかのように見せることで全体の処理の性能向上を実現する仮想I/F技術が、特願2003−209266号に開示されている。
この仮想I/F技術によれば、複数のサーバと中継装置から構成される系において、サーバ上で動くプログラムあるいはプロセスに対し、中継装置に存在するI/Fがあたかも自身の装置上に存在するI/Fであるかのように見せる仕組み(仮想I/F)、さらに、そのサーバ上のプログラム/プロセスが外部との通信をその仮想I/Fを介し行う際に、仮想I/Fに対するパケット送信を中継装置に転送して中継装置の対応するI/F上で送信し、また中継装置のI/Fでの受信パケットを、対応する仮想I/Fを有するサーバに転送し、その仮想I/Fで受信したかのようにプログラム/プロセスに渡す仕組みにより、サーバ上で動くプログラム/プロセスが、あたかも中継装置上で動作しているように振舞いながら、処理の実行を計算性能の高いサーバ等で分散実行することができ、処理の分業による分散処理と高性能サーバによって高い処理性能を確保することが可能となる。
ここで、一般に、ネットワークを介した通信を行うプログラム/プロセスは、ソケットAPIというアプリケーションインタフェースを利用する。仮想I/F技術では、仮想I/Fに対するソケットを作成する手順に介入して、ソケットを作成しようとしているプログラム/プロセスと、仮想I/Fに対応した実インタフェースを有する中継装置の間にパケット転送パスを確立することで、前述の仮想I/Fにおけるパケット送受信を機能を実現する。
したがって、外部からは中継装置上で動作しているように見せたい複数のプログラム/プロセスを別個のサーバで実行する場合も、各々のプログラム/プロセスがソケットを作成する際に、ソケットと実際の実行サーバの対応を中継装置で管理し、ソケット毎に中継装置との間で通信パスを確立するため、中継装置がI/Fから受信したパケットを、そのパケットの着信ソケットに対応した通信パスを介し対応するサーバにそのパケットを振り分けることができ、複数のプログラムを異なるサーバで実行しても、各サーバと中継装置から構成される系の外からは、あたかも一つのサーバであるように振舞うことができる。
しかし、ここで、実行したい複数のプログラム/プロセスの間で装置内通信を行うケースでは問題が発生する。すなわち、ネットワークソケットAPIは、異なるホスト間の通信にも利用できる一方で、宛先アドレスを、自身を示すアドレスでソケットを開くことで同一ホスト内のプログラム間通信/プロセス間通信に利用することが可能であり、実際、両者を区別なく扱える便利さから、同一ホスト内のプログラム間通信/プロセス間通信にソケットAPIを利用する場合が多い。
しかし、ネットワークソケットAPIを用いて同一ホスト内のプログラム間通信/プロセス間通信を行うプログラムを本構成に適用する場合、相互に通信しあう複数のプログラムまたはプロセスは、それぞれ中継装置上で動作しているように振舞う必要があるため、双方のプログラムまたはプロセスがソケットを開く場合に宛先ホストを指定する識別子は、そのプログラム/プロセスが実行されていることを想定している中継装置のI/Fに対応したサーバ上の仮想I/Fを示す同一の識別子、あるいはその中継装置自身を示す同一の識別子でなければならない。
そのため、相互に通信しあう複数のプログラムまたはプロセスを同じ外部サーバ上で実行させる場合であっても、サーバの仮想I/Fと中継装置のI/Fはトンネルで接続しているため、それぞれのプログラム/プロセスが開くソケットに対応したサーバ−中継装置間パスを経由した通信を行うことになり、実際は同一ホスト内の通信でありながら、一度中継装置を経由したパスで通信を行ってしまい、処理オーバヘッドが発生して効率が悪い、という問題がある。
また、相互に通信しあう複数のプログラムまたはプロセスがそれぞれ異なる外部サーバで実行される場合でも、仮想I/Fおよびソケットトンネルを介した通信を行うため、直接両サーバ間で通信を行う場合に比べ、転送オーバヘッドが大きい。とくに、両サーバが中継装置を介さずに通信できるパスを有している場合、そのパスを使えず中継装置を介した通信になってしまうといった処理オーバヘッドが発生して効率が悪い、という問題がある。
本発明は、上記に鑑みてなされたものであって、中継装置と複数のサーバとから構成され、論理的に単一の装置として動作するパケット処理装置内でのパケット転送を効率的に行うことができるパケット処理装置およびパケット転送方法を提供することを目的とする。なお、パケット処理装置を構成し、アプリケーションを実行するサーバをここでは制御装置と呼ぶ。
上述した課題を解決し、目的を達成するため、請求項1の発明に係る制御装置は、論理的に単一の装置としてパケットの処理を行うパケット処理装置を、パケットを中継する中継装置とともに構成する制御装置であって、前記パケット処理装置内でのパケット転送に関する情報を転送表として記憶した転送表記憶手段と、当該制御装置上のアプリケーションから送信を要求されたパケットの宛先が前記パケット処理装置内であるか否かを前記転送表記憶手段により記憶された転送表に基づいて判定する転送先判定手段と、前記転送先判定手段によりパケットの宛先がパケット処理装置内であると判定された場合に、パケット処理装置内で中継装置を介さずパケットの転送を行う転送手段と、を備えたことを特徴とする。
この請求項1の発明によれば、パケット処理装置内でのパケット転送に関する情報を転送表として記憶し、制御装置上のアプリケーションから送信を要求されたパケットの宛先がパケット処理装置内であるか否かを転送表に基づいて判定し、パケットの宛先がパケット処理装置内であると判定した場合に、パケット処理装置内で中継装置を介さずパケットの転送を行うよう構成したので、中継装置とパケットを送受信するオーバヘッドをなくすことができる。
また、請求項2の発明に係る制御措置は、請求項1の発明において、前記転送表記憶手段は、論理的に同一のパケット処理装置を構成する他の制御装置へのパケット転送に関する情報を記憶し、前記転送先判定手段は、アプリケーションから送信を要求されたパケットの宛先が論理的に同一のパケット処理装置を構成する他の制御装置であるか否かを前記転送表記憶手段により記憶された転送表に基づいて判定し、前記転送手段は、前記転送先判定手段によりパケットの宛先が同一のパケット処理装置を構成する他の制御装置であると判定された場合に、該他の制御装置へパケットの転送を行うことを特徴とする。
この請求項2の発明によれば、論理的に同一のパケット処理装置を構成する他の制御装置へのパケット転送に関する情報を転送表に記憶し、アプリケーションから送信を要求されたパケットの宛先が論理的に同一のパケット処理装置を構成する他の制御装置であるか否かを転送表に基づいて判定し、パケットの宛先が同一のパケット処理装置を構成する他の制御装置であると判定した場合に、他の制御装置へパケットの転送を行うよう構成したので、中継装置とパケットを送受信するオーバヘッドをなくすことができる。
また、請求項3の発明に係る制御装置は、請求項1の発明において、前記転送表記憶手段は、自制御装置内のパケット転送に関する情報を記憶し、前記転送先判定手段は、アプリケーションから送信を要求されたパケットの宛先が自制御装置であるか否かを前記転送表記憶手段により記憶された転送表に基づいて判定し、前記転送手段は、前記転送先判定手段によりパケットの宛先が自制御装置であると判定された場合に、自制御装置内でパケットの転送を行うことを特徴とする。
この請求項3の発明によれば、自制御装置内のパケット転送に関する情報を転送表に記憶し、アプリケーションから送信を要求されたパケットの宛先が自制御装置であるか否かを転送表に基づいて判定し、パケットの宛先が自制御装置であると判定した場合に、自制御装置内でパケットの転送を行うよう構成したので、中継装置とパケットを送受信するオーバヘッドをなくすことができる。
また、請求項4の発明に係るパケット転送方法は、論理的に単一の装置としてパケットの処理を行うパケット処理装置を、パケットを中継する中継装置とともに構成する制御装置におけるパケット転送方法であって、前記パケット処理装置内でのパケット転送に関する情報を登録する転送表を作成する転送表作成工程と、当該制御装置上のアプリケーションから送信を要求されたパケットの宛先が前記パケット処理装置内であるか否かを前記転送表作成工程により作成された転送表に基づいて判定する転送先判定工程と、前記転送先判定工程によりパケットの宛先がパケット処理装置内であると判定された場合に、パケット処理装置内で中継装置を介さずパケットの転送を行う転送工程と、を含んだことを特徴とする。
この請求項4の発明によれば、パケット処理装置内でのパケット転送に関する情報を登録する転送表を作成し、制御装置上のアプリケーションから送信を要求されたパケットの宛先がパケット処理装置内であるか否かを転送表に基づいて判定し、パケットの宛先がパケット処理装置内であると判定した場合に、パケット処理装置内で中継装置を介さずパケットの転送を行うよう構成したので、中継装置とパケットを送受信するオーバヘッドをなくすことができる。
また、請求項5の発明に係るパケット処理装置は、パケットを中継する中継装置とアプリケーションを実行する複数の制御装置とが論理的に単一の論理装置を構成してパケットの処理を行うパケット処理装置であって、自論理装置内でのパケット転送に関する情報を転送表として記憶した転送表記憶手段と、前記アプリケーションから送信を要求されたパケットの宛先が自論理装置内であるか否かを前記転送表記憶手段により記憶された転送表に基づいて判定する転送先判定手段と、前記転送先判定手段によりパケットの転送先が自論理装置内であると判定された場合に、自論理装置内で中継装置を介さずパケットの転送を行う転送手段と、を備えたことを特徴とする。
この請求項5の発明によれば、自論理装置内でのパケット転送に関する情報を転送表として記憶し、アプリケーションから送信を要求されたパケットの宛先が自論理装置内であるか否かを転送表に基づいて判定し、パケットの転送先が自論理装置内であると判定した場合に、自論理装置内で中継装置を介さずパケットの転送を行うよう構成したので、中継装置とパケットを送受信するオーバヘッドをなくすことができる。
請求項1、2、3、4および5の発明によれば、制御装置が中継装置とパケットを送受信するオーバヘッドをなくすことができるので、パケット処理装置内でのパケット転送を効率良く行うことができるという効果を奏する。
以下に、本発明に係る制御装置、パケット転送方法およびパケット処理装置の実施例を図面に基づいて詳細に説明する。なお、実施例1では、中継装置と2台の制御装置から構成されるルータにおいて制御装置間でパケット転送を行う場合について説明し、実施例2では、一つの制御装置内でパケット転送を行う場合について説明する。なお、これらの実施例により本発明が限定されるものではない。
まず、本実施例1および2に係るルータによる自装置内パケット転送について図1−1および図1−2を用いて説明する。図1−1は、従来のルータによる自装置内パケット転送を説明するための説明図であり、図1−2は、本実施例1および2に係るルータによる自装置内パケット転送を説明するための説明図である。
図1−1に示すように、従来のルータでは、ルータを構成する制御装置Aで実行されるプロセスAと制御装置Bで実行されるプロセスBとの間でパケットを転送する場合にも、仮想I/Fおよびソケットトンネルを介するために、パケットは一旦中継装置に送られ、中継装置から受信側の制御装置に送られる。
これに対して、図1−2に示すように、本実施例1に係るルータでは、両制御装置が中継装置を介さずに通信できるパスを有している場合には、制御装置Aで実行されるプロセスAと制御装置Bで実行されるプロセスBとの間で転送されるパケットが、中継装置を介さず直接制御装置間で転送される。
すなわち、本実施例1に係るルータは、ルータ内の制御装置間でパケット転送を行う場合に、中継装置を介さずにパケット転送を行うため、転送オーバヘッドが少なく効率的にパケットを転送することができる。
また、図1−1に示すように、従来のルータでは、制御装置Aで実行されるプロセスAとプロセスCとの間でパケットを転送する場合にも、仮想I/Fおよびソケットトンネルを介するために、パケットは一旦中継装置に送られ、中継装置から制御装置Aに戻される。
これに対して、図1−2に示すように、本実施例2に係るルータでは、制御装置Aが中継装置を介さず直接プロセス間でパケットを転送する。すなわち、本実施例2に係るルータは、制御装置内でパケット転送を行う場合に、中継装置を介さずにパケット転送を行うため、転送オーバヘッドが少なく効率的にパケットを転送することができる。
具体的には、各制御装置の仮想I/Fドライバが上位レイヤから仮想I/Fのアドレスと同じ宛先の送信パケットを受け取ると、同一制御装置に宛先プロセスが存在するか否かを判定し、同一制御装置に宛先プロセスが存在する場合には、仮想I/Fでパケットを折り返し、同一制御装置に宛先プロセスが存在しない場合には、中継装置の実I/Fをマウントしている他の制御装置における宛先プロセスの有無を問い合わせ、他の制御装置に宛先プロセスがあれば、パケットのアドレスをその制御装置のアドレスに代えてその制御装置に直接送り、宛先プロセスがなければ、パケットを廃棄し、システムコールに対してエラーを返す。
このように、各制御装置の仮想I/Fドライバが、宛先プロセスがルータ内にあるか否か、および、どの制御装置にあるかに基づいてパケットを転送することによって、ルータ内のパケット転送を効率良く行うことができる。
次に、本実施例1に係るルータの構成について説明する。図2は、本実施例1に係るルータの構成を示す機能ブロック図である。同図に示すように、このルータ10は、アプリケーションを実行する制御装置A100および制御装置B200と、パケットを中継する中継装置300とがパケット中継網400を介して接続されて構成される。
なお、ここでは説明の便宜上、2台の制御装置のみを示したが、ルータ10は、任意の台数の制御装置から構成することができる。また、制御装置が実行するアプリケーションの例としては、経路計算がある。
制御装置A100は、アプリケーションA110と、仮想I/F記憶部120と、転送表記憶部130と、アプリケーションアドレス検出部140と、パケット変換送受信部150と、パケット送受信部160とを有する。なお、制御装置B200も同様の機能構成を有する。
アプリケーションA110は、制御装置A100で実行されるアプリケーションであり、制御装置B200で実行されるアプリケーションB210との間でパケットの送受信を行う。
仮想I/F記憶部120は、仮想I/Fアドレスを記憶する記憶部であり、具体的には、中継装置300のIPアドレスである「133.160.100.1」を仮想I/Fアドレスとして記憶する。なお、制御装置A100のパケット中継網400に接続したネットワークI/FのIPアドレスは、「10.25.165.11」であり、制御装置B200のパケット中継網400に接続したネットワークI/FのIPアドレスは、「10.25.165.12」である。
すなわち、制御装置A100および制御装置B200は、中継装置300とともに論理的に単一のルータ10を構成し、中継装置300が提供する実インタフェースを用いて外部と通信するため、実際のIPアドレスの代わりに仮想I/Fを用いて外部と通信する。
転送表記憶部130は、IPアドレスおよびポート番号から構成される宛先アプリケーションアドレスと、その宛先アプリケーションアドレスを有するパケットの転送先の制御装置のIPアドレスとを対応させて登録する転送表を記憶する記憶部である。
図3−1は、制御装置A100が記憶する転送表の一例を示す図であり、図3−2は、制御装置B200が記憶する転送表の一例を示す図である。ここでは、アプリケーションA110がポート番号「5000」を使用し、アプリケーションB210がポート番号「80」を使用して相互にパケット転送を行う場合に作成される転送表を示している。
図3−1および図3−2に示すように、転送表の各エントリは、DST−IPと、DST−PORTと、CNTアドレスとから構成される。ここで、DST−IPは、宛先IPアドレスであり、DST−PORTは宛先ポート番号である。また、CNTアドレスは制御装置のIPアドレスである。すなわち、DST−IPとDST−PORTによって指定される宛先アプリケーションアドレスを有するパケットは、中継装置300を介さずにCNTアドレスで指定される制御装置に直接転送される。
例えば、図3−1において、DST−IPが仮想I/Fと同じ「133.160.100.1」であり、DST−PORTが「80」である宛先アプリケーションアドレスを有するパケットの送信をアプリケーションA110が要求すると、そのパケットは、IPアドレスが「10.25.165.12」である制御装置、すなわち制御装置B200に直接転送される。
アプリケーションアドレス検出部140は、アプリケーションA110が通信ポートを作成して設定した宛先アプリケーションアドレスを検出し、宛先IPアドレスが仮想I/F記憶部120に記憶した仮想I/Fアドレスである場合には、中継装置300および制御装置B200と連携して宛先アプリケーションアドレスと転送先の制御装置のIPアドレスとの対応を転送表記憶部130が記憶する転送表に登録する処理部である。
すなわち、このアプリケーションアドレス検出部140は、ルータ10内で通信を行う通信ポートが作成された場合には、転送表記憶部130が記憶する転送表に宛先アプリケーションアドレスと転送先の制御装置のIPアドレスとの対応を登録する。
具体的には、このアプリケーションアドレス検出部140は、アプリケーションがソケットにローカルアドレス、すなわちソースアプリケーションアドレス(制御装置A100のIPアドレスとポート番号)を設定すると、中継装置300へ転送要求メッセージを送る。ここで、転送要求メッセージには、アプリケーションA110のソースアプリケーションアドレスと宛先アプリケーションアドレス(宛先のIPアドレスとポート番号)が含まれる。
そして、中継装置300と制御装置B200との連携によって宛先アプリケーションアドレスに対応する転送先の制御装置のIPアドレスが決定すると、そのIPアドレスを宛先アプリケーションアドレスに対応させて転送表に登録する。なお、転送表に宛先アプリケーションアドレスと対応する転送先の制御装置のIPアドレスとを登録する処理手順の詳細については後述する。
パケット変換送受信部150は、アプリケーションA110から送信パケットを受け取り、送信パケットの宛先がルータ10内の他の制御装置である場合には、そのパケットを中継装置300を介することなく直接に宛先の制御装置に送信する処理部である。
すなわち、このパケット変換送受信部150は、送信パケットの宛先アプリケーションアドレスに含まれる宛先IPアドレスが仮想I/Fアドレスと一致する場合には、転送表を検索して転送先の制御装置のIPアドレスを取得し、転送先の制御装置に送信パケットをパケット送受信部160を介して送信する。
なお、このパケット変換送受信部150は、送信パケットの宛先アプリケーションアドレスに含まれる宛先IPアドレスが仮想I/Fアドレスと一致しない場合には、仮想I/Fアドレスを用いて送信パケットをパケット送受信部160を介して送信する。
また、このパケット変換送受信部150は、他の制御装置からパケット送受信部160を介して送信パケットを受け取り、宛先アプリケーションアドレスに基づいてアプリケーションに受信したパケットを渡す。
パケット送受信部160は、パケット中継網400を介して他の装置とパケットの送受信を行う処理部であり、送信パケットを中継装置300や他の制御装置に送信し、受信パケットを中継装置300や他の制御装置から受け取る。
中継装置300は、外部の装置とネットワークを介してパケットの送受信を行う装置であり、受信したパケットをルーティングテーブルを用いて他のルータなどへ転送する。この中継装置300のIPアドレスは、「133.160.100.1」であり、このIPアドレスが仮想I/Fアドレスとして用いられる。この中継装置300は、パケット送受信部310と、振分表記憶部320と、振分表管理部330とを有する。
パケット送受信部310は、パケット中継網400を介して制御装置から受信したパケットを実I/Fを用いて外部へ送信し、実I/Fを用いて外部から受信したパケットをパケット中継網400を介して制御装置に送信する処理部である。
振分表記憶部320は、転送表の構築に必要な情報を登録する振分表を記憶する記憶部である。各制御装置は、振分表の情報に基づいて転送表を作成し、振分表には、全ての制御装置の転送表の情報が登録される。
図4は、振分表の一例を示す図である。同図に示すように、振分表には、転送表と同様に、IPアドレスおよびポート番号から構成される宛先アプリケーションアドレスと、その宛先アプリケーションアドレスを有するパケットの転送先の制御装置のIPアドレスとの対応が登録される。
振分表管理部330は、振分表記憶部320に記憶された振分表を管理する処理部であり、制御装置から転送要求メッセージを受信すると、振分表のエントリを作成して登録する。
具体的には、この振分表管理部330は、転送要求メッセージに含まれるソースアプリケーションアドレスを用いて振分表を検索し、振分表にエントリがない場合には、転送要求メッセージに含まれるソースIPアドレスをDST−IPとし、ソースポート番号をDST−PORTとし、ソースアプリケーションIPアドレスをCNTアドレスとして新たなエントリを作成し、振分表に登録する。そして、登録が行われたことを通知する転送応答メッセージを制御装置に送信する。一方、振分表にエントリがある場合には、エラーを通知する転送応答メッセージを制御装置に送信する。
この振分表管理部330が、制御装置から転送要求メッセージを受信して振分表にエントリを作成することによって、転送表の構築に必要な情報を振分表に蓄積することができる。
次に、本実施例1に係るルータ10による制御装置間パケット転送の処理手順について説明する。図5−1および図5−2は、本実施例1に係るルータ10による制御装置間パケット転送の処理手順を示すフローチャートである。
なお、ここでは、制御装置B200で実行されるアプリケーションB210が通信ポートを作成し、その後、制御装置A100で実行されるアプリケーションA110が通信ポートを作成し、仮想I/Fを用いてパケットをアプリケーションB210に送信する場合の処理手順について説明する。
同図に示すように、このルータ10は、まず、アプリケーションB210が通信ポートを作成し(ステップS101)、ソケットにローカルアドレス「10.25.165.12 80」を設定する(ステップS102)。
そして、アプリケーションアドレス検出部240が、仮想I/Fアドレスと一致するアプリケーションアドレスを検出すると、中継装置300の振分表管理部330へ転送要求メッセージを送る。
中継装置300の振分表管理部330は、転送要求メッセージを受信すると、振分表にアプリケーションB210のローカルアドレス(ソースアドレス)を登録し(ステップS103)、転送応答メッセージを制御装置B200のアプリケーションアドレス検出部240に送信する。
その後、制御装置A100上のアプリケーションA110がアプリケーションB210と通信を行うために通信ポートを作成し(ステップS104)、ソケットにローカルアドレス(ソースアプリケーションアドレス)「10.25.165.11 5000」を設定する(ステップS105)。
そして、アプリケーションアドレス検出部140が、仮想I/Fアドレスと一致するソースアプリケーションアドレスを検出すると、中継装置300の振分表管理部330へ転送要求メッセージを送る。
中継装置300の振分表管理部330は、転送要求メッセージを受信すると、振分表にアプリケーションA110のローカルアドレス(ソースアドレス)を登録し(ステップS106)、転送応答メッセージを制御装置A100のアプリケーションアドレス検出部140に送信する。
そして、アプリケーションA110がソケットに通信のためにリモートアドレス(宛先アプリケーションアドレス)を指定する(ステップS107)と、アプリケーションアドレス検出部140は、リモートアドレスが仮想I/Fアドレスと一致するか否かを判定し(ステップS108)、一致しない場合には、パケット送受信部160は、データパケットを受け取った場合に、仮想I/Fを使ってパケットを送信する(ステップS109)。
一方、リモートアドレスが仮想I/Fアドレスと一致する場合には、アプリケーションアドレス検出部140は、中継装置300の振分表管理部330へパス要求メッセージを送信する。ここで、パス要求メッセージにはリモートアドレスが含まれる。
中継装置300の振分表管理部330は、パス要求メッセージを受信すると、パス要求メッセージのリモートアドレスと一致するエントリを振分表から検索する(ステップS110)。ここで、リモートアドレスと一致するエントリとしてはアプリケーションB210が該当するものとすると、振分表管理部330は、一致したアプリケーションB210が動いている制御装置のアドレスをパス応答メッセージに含めて制御装置A100へ送る。
制御装置A100のアプリケーションアドレス検出部140はパス応答メッセージを受信すると、リモートアドレスと制御装置B200のIPアドレスとの対応を転送表に書き込み(ステップS111)、制御装置B200に向けてパス確定要求メッセージを送信する。ここで、パス確定要求メッセージには、ローカルアドレスが含まれる。
制御装置B200のアプリケーションアドレス検出部240は、パス確定要求メッセージを受信すると、転送表にアプリケーションA110のローカルアドレスと制御装置A100のIPアドレスを対応づけて登録し(ステップS112)、パス確定応答メッセージを制御装置A100に送信する。
そして、制御装置A100のアプリケーションA110がデータパケットを送信するとデータパケットを受信したパケット変換送受信部150は、宛先IPアドレスをキーとして転送表を検索し(ステップS113)、転送表に一致するエントリがあるか否かを判定する(ステップS114)。
その結果、転送表に一致するエントリがない場合には、パケット送受信部160が、仮想I/Fを使ってパケットを送信する(ステップS109)。一方、転送表に一致するエントリがある場合には、そのエントリのCNTアドレスで指定される制御装置にアプリケーションパケット(データパケット)をパケット送受信部160を介して送信する。
すると、制御装置B200のパケット送受信部260がアプリケーションパケットを受信し、仮想I/Fアドレス宛パケットであることを検出すると、パケット変換送受信部250に渡す。すると、パケット変換送受信部250は、アプリケーションパケットの宛先アプリケーションアドレスに基づいてアプリケーションB210にパケットを渡す。
そして、制御装置B200のアプリケーションB210は、制御装置A100からのアプリケーションパケットに対する応答のアプリケーションパケットをパケット変換送受信部250へ送信する(ステップS115)。
すると、パケット変換送受信部250は、アプリケーションパケットの宛先アプリケーションアドレスをキーとして転送表を検索し(ステップS116)、該当するエントリがあるか否かを判定する(ステップS117)。
その結果、該当するエントリがある場合には、そのエントリのCNTアドレスで指定される制御装置にアプリケーションパケットをパケット送受信部260を介して送信し、該当するエントリがない場合には、パケット送受信部260を介して仮想I/Fを使って送信する(ステップS118)。
上述してきたように、本実施例1では、各制御装置のアプリケーションアドレス検出部が、中継装置300や他の制御装置のアプリケーションアドレス検出部と連携して、ルータ10内の制御装置間で転送されるパケットの転送先を登録する転送表を作成して転送表記憶部に記憶し、パケット変換送受信部が、宛先アプリケーションアドレスが仮想I/F記憶部に記憶された仮想I/Fアドレスと一致するパケットをアプリケーションから受け取ると、転送表に基づいて他の制御装置に直接送信することとしたので、ルータ10内の制御装置間でのパケット転送を効率良く行うことができる。
なお、本実施例1では、制御装置と複数の中継装置とから構成されるルータについて説明したが、本発明はこれに限定されるものではなく、ロードバランサと複数のサーバとから構成されるWebサービス提供装置にも同様に適用することができる。
ただし、Webサービス提供装置の場合には、仮想I/Fアドレスの代わりに、クライアントがWebサービス提供装置にアクセスする際に使用する代表IPアドレスが用いられる。そして、各サーバは、代表IPアドレスに対応させて自分のIPアドレスを代表IP対応アドレスとして記憶し、転送表のDST−IPには仮想IPアドレスの代わりに代表IP対応アドレスを記憶する。
そして、各制御装置は、転送要求メッセージを中継装置に送信する際に、ローカルアドレスとして代表IP対応アドレスを指定する場合は対応する代表IPアドレスに置き換えて、中継装置へ送信する。また、各制御装置は、アプリケーションが接続先のリモートアドレスを指定した場合、それが、代表IP対応アドレスと一致した場合は、パス要求メッセージを送信する。この際、パス要求メッセージのリモートアドレスは、代表IPアドレスに置き換えたアドレスにしてリクエストする。
また、ルータやWebサービス提供装置を一般化すると、中継装置と複数のサーバから構成される任意のパケット処理装置にも本発明を同様に適用することができる。ただし、その場合には、仮想I/Fアドレスや代表IPアドレスの代わりに、自ノード(装置)を識別する自ノード識別情報を用いる必要がある。
また、本実施例1では、アプリケーションがソケットに通信のためのリモートアドレスを何らかの形で指定した場合に、転送表に対応するエントリを登録する場合について説明したが、アプリケーションがリモートアドレスを指定する場合としては、アプリケーションプロセスが宛先プロセスに対してコネクション作成要求をする場合やパケット送信要求をする場合がある。
また、本実施例1では、制御装置間で物理的な通信パスがあることを前提とした場合について説明したが、転送表に登録する前に、通信パスがあるか否かを検査することもできる。具体的には、制御装置Aから制御装置Bに到達性検査パケットを送信し、制御装置Bから応答を受け取った場合にだけ転送表に登録することもできる。
本実施例2では、同一制御装置で実行されるアプリケーション間でのパケット転送について説明する。まず、本実施例2に係る制御装置の構成について説明する。なお、ここでは、ルータを一般化し、中継装置と2台の制御装置から構成されるパケット処理装置として説明する。
図6は、本実施例2に係る制御装置の構成を示す機能ブロック図である。なお、ここでは説明の便宜上、図2に示した各部と同様の役割を果たす機能部については同一符号を付すこととしてその詳細な説明を省略する。
図6に示すように、この制御装置A600は、アプリケーションA610と、自ノード識別情報記憶部620と、転送表記憶部630と、アプリケーションアドレス検出部640と、パケット変換送受信部650と、パケット送受信部160と、アプリケーション表記憶部670と、アプリケーションC680とを有する。
アプリケーションA610およびアプリケーションC680は、制御装置A600でプロセスとして実行されるアプリケーションであり、相互にパケットの送受信を行う。自ノード識別情報記憶部620は、パケット処理装置60を識別する自ノード識別情報を記憶する記憶部である。なお、パケット処理装置60内の全ての制御装置は、同一の自ノード識別情報を有する。
転送表記憶部630は、制御装置A600内の他のアプリケーションを宛先とする宛先アプリケーションアドレスと制御装置A600のIPアドレスを対応させて転送表として記憶する記憶部である。
アプリケーション表記憶部670は、アプリケーションのプロセス番号と、アプリケーションが使用するポート番号とを対応させて登録するアプリケーション表を記憶する記憶部である。
図7は、アプリケーション表の一例を示す図である。同図において、プロセス番号が「1」であるプロセスはアプリケーションAに対応し、プロセス番号が「3」であるプロセスはアプリケーションCに対応する。
アプリケーションアドレス検出部640は、アプリケーション表記憶部670に記憶されたアプリケーション表を用いて転送表にアプリケーションAおよびアプリケーションCのローカルアドレスを登録する処理部である。
具体的には、このアプリケーションアドレス検出部640は、アプリケーションが通信ポートを作成しソケットにローカルアドレスを設定すると、中継装置300へ転送要求メッセージを送る。そして、通信を行う両方のアプリケーションが中継装置300に転送要求メッセージを送り、その後、いずれかのアプリケーションがソケットにリモートアドレスを設定すると、そのリモートアドレスが自ノード識別情報と一致している場合に、転送表にアプリケーションAおよびアプリケーションCのローカルアドレスを登録する。なお、転送表にアプリケーションのローカルアドレスを登録する処理手順の詳細については後述する。
パケット変換送受信部650は、アプリケーションA110から送信パケットを受け取り、送信パケットの宛先が自制御装置で実行される他のアプリケーションである場合には、そのパケットをループバックによって転送する処理部である。
すなわち、このパケット変換送受信部650は、送信パケットの宛先アプリケーションアドレスと一致するエントリが転送表にあり、宛先制御装置アドレスが自制御装置である場合には、送信パケットをループバックによって送信する。
このパケット変換送受信部650が、転送表を用いて自制御装置内のパケット転送であるか否かを判定し、自制御装置内のパケット転送である場合には、ループバックによってパケットを転送することによって、自制御装置内のパケット転送を効率良く行うことができる。
次に、本実施例2に係るパケット処理装置60による制御装置内パケット転送の処理手順について説明する。図8−1および図8−2は、本実施例2に係るパケット処理装置60による制御装置内パケット転送の処理手順を示すフローチャートである。なお、ここでは、制御装置A600で実行されるアプリケーションA610およびアプリケーションC680が通信する場合の処理手順について説明する。
同図に示すように、このパケット処理装置60は、まず、アプリケーションC680が通信ポートを作成し(ステップS201)、ソケットにローカルアドレス「10.25.165.11 443」を設定する(ステップS202)。
そして、アプリケーションアドレス検出部640が、自ノード識別情報と一致するアプリケーションアドレスを検出すると、中継装置300の振分表管理部330へ転送要求メッセージを送る。
中継装置300の振分表管理部330は、転送要求メッセージを受信すると、振分表にアプリケーションC680のローカルアドレスを登録し(ステップS203)、転送応答メッセージをアプリケーションアドレス検出部640に送信する。
その後、アプリケーションA610がアプリケーションC680と通信を行うために通信ポートを作成し(ステップS204)、ソケットにローカルアドレス(ソースアプリケーションアドレス)「10.25.165.11 5000」を設定する(ステップS205)。
そして、アプリケーションアドレス検出部640が、自ノード識別情報と一致するソースアプリケーションアドレスを検出すると、中継装置300の振分表管理部330へ転送要求メッセージを送る。
中継装置300の振分表管理部330は、転送要求メッセージを受信すると、振分表にアプリケーションA610のローカルアドレスを登録し(ステップS206)、転送応答メッセージをアプリケーションアドレス検出部640に送信する。
そして、アプリケーションA110がソケットに通信のためにリモートアドレス(宛先アプリケーションアドレス)を指定する(ステップS207)と、アプリケーションアドレス検出部640は、リモートアドレスが自ノード識別情報と一致するか否かを判定し(ステップS208)、一致しない場合には、パケット送受信部160は、アプリケーションパケットを受信した際に、自ノード識別情報を使ってパケットを送信する(ステップS209)。
一方、リモートアドレスが自ノード識別情報と一致する場合には、アプリケーションアドレス検出部640は、アプリケーション表に宛先プロセス番号があるか否かを判定する(ステップS210)。その結果、アプリケーション表に宛先プロセス番号がない場合には、パケット送受信部160は、アプリケーションパケットを受信した際に、自ノード識別情報を使ってパケットを送信する(ステップS209)。
一方、アプリケーション表に宛先プロセス番号がある場合には、アプリケーションアドレス検出部640がアプリケーションA610およびアプリケーションC680のローカルアドレスを転送表に登録する(ステップS211〜ステップS212)。
そして、以降、アプリケーションA610がアプリケーションパケットを送信するとアプリケーションパケットを受信したパケット変換送受信部650は、転送表を検索し(ステップS213)、転送表に一致するエントリがあるか否かを判定する(ステップS214)。
その結果、転送表に一致するエントリがある場合には、自制御装置アドレスでアプリケーションパケットを送信する。すると、パケットを受信したアプリケーションC680がパケット受信応答メッセージ(アプリケーションパケット)を送信し(ステップS215)、メッセージを受信したパケット変換送受信部650は、転送表を検索し(ステップS216)、転送表に一致するエントリがあるか否かを判定する(ステップS217)。その結果、転送表に一致するエントリがある場合には、自制御装置アドレスでアプリケーションパケットを送信する。
一方、転送表に一致するエントリがない場合(ステップS214およびステップS217、否定)には、パケット送受信部160が自ノード識別情報を使ってパケットを送信する(ステップS209)。
上述してきたように、本実施例2では、アプリケーションアドレス検出部が中継装置300と連携して転送表を作成し、パケット変換送受信部がアプリケーション表および転送表に基づいて自制御装置内で転送されるパケットをループバックによって送信することとしたので、制御装置内でのパケット転送を効率良く行うことができる。
なお、実施例1では、同一ルータ内の制御装置間でパケット転送を行う場合について説明し、実施例2では、一つの制御装置内でパケット転送を行う場合について説明したが、ルータなどのパケット処理装置が制御装置間および一つの制御装置内の両方でパケット転送を効率良く行うこともできる。
次に、本実施例1および2に係る制御装置のハードウェア構成について説明する。図9は、本実施例1および2に係る制御装置のハードウェア構成を示す機能ブロック図である。同図に示すように、この制御装置800は、MPU810と、ROM820と、RAM830と、ネットワークI/F840とを有する。
MPU810は、ROM820に格納されたプログラムを読み出して実行する処理装置であり、ROM820はプログラムや定数を格納する読み出し専用メモリである。RAM830は、プログラムの実行途中結果などを記憶するメモリであり、ネットワークI/F840は、パケット中継網400と通信するためのインタフェースである。
そして、ROM820に格納されたパケット転送プログラム821やアプリケーションAプログラム822などは、MPU810によりパケット転送タスク811やアプリケーションAタスク812などとして実行される。ここで、パケット転送プログラム821は、図2および図6に示した制御装置Aの機能構成のうちアプリケーションを除く機能部から構成されるプログラムである。
(付記1)論理的に単一の装置としてパケットの処理を行うパケット処理装置を、パケットを中継する中継装置とともに構成する制御装置であって、
前記パケット処理装置内でのパケット転送に関する情報を転送表として記憶した転送表記憶手段と、
当該制御装置上のアプリケーションから送信を要求されたパケットの宛先が前記パケット処理装置内であるか否かを前記転送表記憶手段により記憶された転送表に基づいて判定する転送先判定手段と、
前記転送先判定手段によりパケットの宛先がパケット処理装置内であると判定された場合に、パケット処理装置内で、中継装置を介さずパケットの転送を行う転送手段と、
を備えたことを特徴とする制御装置。
(付記2)前記転送表記憶手段は、論理的に同一のパケット処理装置を構成する他の制御装置へのパケット転送に関する情報を記憶し、
前記転送先判定手段は、アプリケーションから送信を要求されたパケットの宛先が論理的に同一のパケット処理装置を構成する他の制御装置であるか否かを前記転送表記憶手段により記憶された転送表に基づいて判定し、
前記転送手段は、前記転送先判定手段によりパケットの宛先が同一のパケット処理装置を構成する他の制御装置であると判定された場合に、該他の制御装置へパケットの転送を行うことを特徴とする付記1に記載の制御装置。
(付記3)前記転送表記憶手段は、自制御装置内のパケット転送に関する情報を記憶し、
前記転送先判定手段は、アプリケーションから送信を要求されたパケットの宛先が自制御装置であるか否かを前記転送表記憶手段により記憶された転送表に基づいて判定し、
前記転送手段は、前記転送先判定手段によりパケットの宛先が自制御装置であると判定された場合に、自制御装置内でパケットの転送を行うことを特徴とする付記1に記載の制御装置。
(付記4)前記転送表記憶手段に記憶される転送表に、パケットの宛先と自パケット処理装置内の転送先とを対応させた情報を登録することを特徴とする付記1、2または3に記載の制御装置。
(付記5)前記パケット処理装置はルータであり、前記パケットの宛先は、ルータが有するインタフェースアドレスであり、前記自パケット処理装置内の転送先は、パケットが転送される制御装置のIPアドレスであることを特徴とする付記4に記載の制御装置。
(付記6)前記転送表記憶手段により記憶される転送表に前記中継装置と連携してパケットの宛先と自パケット処理装置内の転送先とを対応させて登録する転送表登録手段をさらに備えたことを特徴とする付記4に記載の制御装置。
(付記7)論理的に単一の装置としてパケットの処理を行うパケット処理装置を、パケットを中継する中継装置とともに構成する制御装置におけるパケット転送方法であって、
前記パケット処理装置内でのパケット転送に関する情報を登録する転送表を作成する転送表作成工程と、
当該制御装置上のアプリケーションから送信を要求されたパケットの宛先が前記パケット処理装置内であるか否かを前記転送表作成工程により作成された転送表に基づいて判定する転送先判定工程と、
前記転送先判定工程によりパケットの宛先がパケット処理装置内であると判定された場合に、パケット処理装置内で中継装置を介さずパケットの転送を行う転送工程と、
を含んだことを特徴とするパケット転送方法。
(付記8)論理的に単一の装置としてパケットの処理を行うパケット処理装置を、パケットを中継する中継装置とともに構成する制御装置に内蔵されたコンピュータで実行されるパケット転送プログラムであって、
前記パケット処理装置内でのパケット転送に関する情報を登録する転送表を作成する転送表作成手順と、
当該コンピュータで実行されるアプリケーションから送信を要求されたパケットの宛先が前記パケット処理装置内であるか否かを前記転送表作成手順により作成された転送表に基づいて判定する転送先判定手順と、
前記転送先判定手順によりパケットの宛先がパケット処理装置内であると判定された場合に、パケット処理装置内で中継装置を介さずパケットの転送を行う転送手順と、
をコンピュータに実行させることを特徴とするパケット転送プログラム。
(付記9)パケットを中継する中継装置とアプリケーションを実行する複数の制御装置とが論理的に単一の論理装置を構成してパケットの処理を行うパケット処理装置であって、
自論理装置内でのパケット転送に関する情報を転送表として記憶した転送表記憶手段と、
前記アプリケーションから送信を要求されたパケットの宛先が自論理装置内であるか否かを前記転送表記憶手段により記憶された転送表に基づいて判定する転送先判定手段と、
前記転送先判定手段によりパケットの転送先が自論理装置内であると判定された場合に、自論理装置内で中継装置を介さずパケットの転送を行う転送手段と、
を備えたことを特徴とするパケット処理装置。
(付記10)パケットを中継する中継装置とアプリケーションを実行する複数の制御装置とから構成されるルータであって、
自装置内でのパケット転送に関する情報を転送表として記憶した転送表記憶手段と、
前記アプリケーションから送信を要求されたパケットの宛先が自装置内であるか否かを前記転送表記憶手段により記憶された転送表に基づいて判定する転送先判定手段と、
前記転送先判定手段によりパケットの転送先が自装置内であると判定された場合に、自装置内で中継装置を介さずパケットの転送を行う転送手段と、
を備えたことを特徴とするルータ。
以上のように、本発明に係る制御装置、パケット転送方法およびパケット処理装置は、パケット通信を行う装置に有用であり、特に、ルータやWebサービス提供装置に適している。
従来のルータによる自装置内パケット転送を説明するための説明図である。 本実施例1および2に係るルータによる自装置内パケット転送を説明するための説明図である。 本実施例1に係るルータの構成を示す機能ブロック図である。 制御装置Aが記憶する転送表の一例を示す図である。 制御装置Bが記憶する転送表の一例を示す図である。 振分表の一例を示す図である。 本実施例1に係るルータによる制御装置間パケット転送の処理手順を示すフローチャート(1)である。 本実施例1に係るルータによる制御装置間パケット転送の処理手順を示すフローチャート(2)である。 本実施例2に係る制御装置の構成を示す機能ブロック図である。 アプリケーション表の一例を示す図である。 本実施例2に係るパケット処理装置による制御装置内パケット転送の処理手順を示すフローチャート(1)である。 本実施例2に係るパケット処理装置による制御装置内パケット転送の処理手順を示すフローチャート(2)である。 本実施例1および2に係る制御装置のハードウェア構成を示す機能ブロック図である。
符号の説明
10 ルータ
60 パケット処理装置
100,600 制御装置A
110,610 アプリケーションA
120 仮想I/F記憶部
130,630 転送表記憶部
140,640 アプリケーションアドレス検出部
150,650 パケット変換送受信部
160 パケット送受信部
200,700 制御装置B
210,710 アプリケーションB
220 仮想I/F記憶部
230,730 転送表記憶部
240,740 アプリケーションアドレス検出部
250,750 パケット変換送受信部
260 パケット送受信部
300 中継装置
310 パケット送受信部
320 振分表記憶部
330 振分表管理部
400 パケット中継網
620 自ノード識別情報記憶部
670 アプリケーション表記憶部
680 アプリケーションC
720 自ノード識別情報記憶部
800 制御装置
810 MPU
811 パケット転送タスク
812 アプリケーションAタスク
820 ROM
821 パケット転送プログラム
822 アプリケーションAプログラム
830 RAM
840 ネットワークI/F

Claims (5)

  1. 論理的に単一の装置としてパケットの処理を行うパケット処理装置を、パケットを中継する中継装置とともに構成する制御装置であって、
    前記パケット処理装置内でのパケット転送に関する情報を転送表として記憶した転送表記憶手段と、
    当該制御装置上のアプリケーションから送信を要求されたパケットの宛先が前記パケット処理装置内であるか否かを前記転送表記憶手段により記憶された転送表に基づいて判定する転送先判定手段と、
    前記転送先判定手段によりパケットの宛先がパケット処理装置内であると判定された場合に、パケット処理装置内で、中継装置を介さずパケットの転送を行う転送手段と、
    を備えたことを特徴とする制御装置。
  2. 前記転送表記憶手段は、論理的に同一のパケット処理装置を構成する他の制御装置へのパケット転送に関する情報を記憶し、
    前記転送先判定手段は、アプリケーションから送信を要求されたパケットの宛先が論理的に同一のパケット処理装置を構成する他の制御装置であるか否かを前記転送表記憶手段により記憶された転送表に基づいて判定し、
    前記転送手段は、前記転送先判定手段によりパケットの宛先が同一のパケット処理装置を構成する他の制御装置であると判定された場合に、該他の制御装置へパケットの転送を行うことを特徴とする請求項1に記載の制御装置。
  3. 前記転送表記憶手段は、自制御装置内のパケット転送に関する情報を記憶し、
    前記転送先判定手段は、アプリケーションから送信を要求されたパケットの宛先が自制御装置であるか否かを前記転送表記憶手段により記憶された転送表に基づいて判定し、
    前記転送手段は、前記転送先判定手段によりパケットの宛先が自制御装置であると判定された場合に、自制御装置内でパケットの転送を行うことを特徴とする請求項1に記載の制御装置。
  4. 論理的に単一の装置としてパケットの処理を行うパケット処理装置を、パケットを中継する中継装置とともに構成する制御装置におけるパケット転送方法であって、
    前記パケット処理装置内でのパケット転送に関する情報を登録する転送表を作成する転送表作成工程と、
    当該制御装置上のアプリケーションから送信を要求されたパケットの宛先が前記パケット処理装置内であるか否かを前記転送表作成工程により作成された転送表に基づいて判定する転送先判定工程と、
    前記転送先判定工程によりパケットの宛先がパケット処理装置内であると判定された場合に、パケット処理装置内で中継装置を介さずパケットの転送を行う転送工程と、
    を含んだことを特徴とするパケット転送方法。
  5. パケットを中継する中継装置とアプリケーションを実行する複数の制御装置とが論理的に単一の論理装置を構成してパケットの処理を行うパケット処理装置であって、
    自論理装置内でのパケット転送に関する情報を転送表として記憶した転送表記憶手段と、
    前記アプリケーションから送信を要求されたパケットの宛先が自論理装置内であるか否かを前記転送表記憶手段により記憶された転送表に基づいて判定する転送先判定手段と、
    前記転送先判定手段によりパケットの転送先が自論理装置内であると判定された場合に、自論理装置内で中継装置を介さずパケットの転送を行う転送手段と、
    を備えたことを特徴とするパケット処理装置。
JP2005077948A 2005-03-17 2005-03-17 制御装置、パケット転送方法およびパケット処理装置 Pending JP2006262193A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005077948A JP2006262193A (ja) 2005-03-17 2005-03-17 制御装置、パケット転送方法およびパケット処理装置
US11/211,002 US20060209830A1 (en) 2005-03-17 2005-08-24 Packet processing system including control device and packet forwarding device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005077948A JP2006262193A (ja) 2005-03-17 2005-03-17 制御装置、パケット転送方法およびパケット処理装置

Publications (1)

Publication Number Publication Date
JP2006262193A true JP2006262193A (ja) 2006-09-28

Family

ID=37010223

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005077948A Pending JP2006262193A (ja) 2005-03-17 2005-03-17 制御装置、パケット転送方法およびパケット処理装置

Country Status (2)

Country Link
US (1) US20060209830A1 (ja)
JP (1) JP2006262193A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009245209A (ja) * 2008-03-31 2009-10-22 Kddi Corp 制御装置、計算システムおよび制御プログラム
JP2010066931A (ja) * 2008-09-09 2010-03-25 Fujitsu Ltd 負荷分散機能を有した情報処理装置
JP7438471B1 (ja) 2023-07-10 2024-02-26 三菱電機株式会社 機器、通信システム、通信制御方法およびプログラム

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6629163B1 (en) * 1999-12-29 2003-09-30 Implicit Networks, Inc. Method and system for demultiplexing a first sequence of packet components to identify specific components wherein subsequent components are processed without re-identifying components
US20080201547A1 (en) * 2006-06-14 2008-08-21 Atherton William E Structure for storage allocation management in switches utilizing flow control
JP5222573B2 (ja) * 2008-01-29 2013-06-26 株式会社日立製作所 サーバ計算機及びネットワーク処理方法
WO2009151863A2 (en) * 2008-06-10 2009-12-17 Myers Wolin, Llc A network gateway for time-critical and mission-critical networks
WO2011120214A1 (zh) 2010-03-29 2011-10-06 华为技术有限公司 集群路由器和集群路由方法
US9590911B2 (en) 2014-06-27 2017-03-07 iPhotonix Wireless area network (WAN) overloading
US9794172B2 (en) 2014-06-27 2017-10-17 iPhotonix Edge network virtualization
US9565277B2 (en) * 2014-06-27 2017-02-07 iPhotonix Dual-homed external network access in a distributed internet protocol (IP) router
US9979698B2 (en) 2014-06-27 2018-05-22 iPhotonix Local internet with quality of service (QoS) egress queuing
US11425065B1 (en) * 2020-11-06 2022-08-23 Syniverse Technologies, Llc Method of reconciling orphan A2P messaging delivery receipts

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5572528A (en) * 1995-03-20 1996-11-05 Novell, Inc. Mobile networking method and apparatus
US6424621B1 (en) * 1998-11-17 2002-07-23 Sun Microsystems, Inc. Software interface between switching module and operating system of a data packet switching and load balancing system
US6272136B1 (en) * 1998-11-16 2001-08-07 Sun Microsystems, Incorporated Pseudo-interface between control and switching modules of a data packet switching and load balancing system
JP3898498B2 (ja) * 2001-12-06 2007-03-28 富士通株式会社 サーバ負荷分散システム
JP4257151B2 (ja) * 2003-02-28 2009-04-22 富士通株式会社 パケット制御システム、パケット制御装置、パケット中継装置およびパケット制御プログラム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009245209A (ja) * 2008-03-31 2009-10-22 Kddi Corp 制御装置、計算システムおよび制御プログラム
JP2010066931A (ja) * 2008-09-09 2010-03-25 Fujitsu Ltd 負荷分散機能を有した情報処理装置
JP7438471B1 (ja) 2023-07-10 2024-02-26 三菱電機株式会社 機器、通信システム、通信制御方法およびプログラム

Also Published As

Publication number Publication date
US20060209830A1 (en) 2006-09-21

Similar Documents

Publication Publication Date Title
JP2006262193A (ja) 制御装置、パケット転送方法およびパケット処理装置
EP2562970B1 (en) Switch, and flow table control method
JP5608794B2 (ja) 複数の仮想マシンを管理するための階層システム、方法、及びコンピュータプログラム
JP6445015B2 (ja) ミドルウェアおよびアプリケーションの実行のためにエンジニアド・システムにおいてデータサービスを提供するためのシステムおよび方法
RU2562438C2 (ru) Сетевая система и способ управления сетью
CN112470436A (zh) 使用srv6和bgp的多云连通性
EP1892929A1 (en) A method, an apparatus and a system for message transmission
JP4832816B2 (ja) 無線式パケット・ベースのネットワークの電力節減
TW201904234A (zh) 用於虛擬網路鏈路檢測的方法及裝置
TWI577164B (zh) 可縮放位址解析之技術
US9450914B2 (en) Distributed proxy addressing operations
US20200280502A1 (en) Network device snapshots
US7864788B2 (en) System and method for bridging proxy traffic in an electronic network
KR20010020662A (ko) 호스트 그룹의 네트워크 디스패처를 이용한 데이터 전송시스템에서의 라우터 모니터링
CN104852840A (zh) 一种控制虚拟机之间互访的方法及装置
JP2008042665A (ja) ネットワーク仮想化装置及びネットワーク仮想化プログラム
JP5508273B2 (ja) ネットワーク・ロケーション・サービス
WO2015079284A1 (en) Methods and systems for processing internet protocol packets
JP2005295124A (ja) 経路テーブル同期方法、ネットワーク機器および経路テーブル同期プログラム
JP5018969B2 (ja) 通信制御プログラム、通信制御装置、通信制御システムおよび通信制御方法
WO2015003420A1 (zh) 一种云计算环境的资源部署方法
KR101922795B1 (ko) 사물인터넷 서비스 제공 장치 및 그 방법
CN112994928B (zh) 一种虚拟机的管理方法、装置及系统
WO2018112835A1 (zh) 选择网关的方法、设备和系统
JP2006013732A (ja) ルーティング装置および情報処理装置の認証方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070905

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20091016

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091027

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091225

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20100119