本発明の第1の特徴によれば、それぞれ特有のデータ層リンクアドレスを有する複数のクライアントノードを含むコンピュータネットワークシステムが提供され、そのシステムは、クライアントノードのデータリンク層アドレスにアクセスすることのできる1以上のネットワーク装置を含み、このネットワーク装置はアクセスされたデータリンク層アドレスを使用してそのクライアントノードを特有に識別し、前記データリンク層アドレスに基づいたノードにネットワーク層または上記サービス(例えばアプリケーション層)を提供する。
本発明によれば、ルータ(ネットワーク装置として)は例えばデータリンク層アドレス情報、例えば標準的なネットワークおよびアプリケーションサービスの機能性を拡張するためにクライアントノードにより送信されたデータパケット中に含まれているような情報を監視し、クライアントノードのデータリンク層アドレスを使用してホストおよびその関連するエンドユーザを特有に識別することができる。
本発明は、IPアドレスを使用してサービスを提供してクライアントノードにマップする伝統的な方法とは対照的である。
データリンク層アドレスは典型的に媒体アクセス制御(MAC)アドレスを含むことができる。ネットワークの各クライアントノードは、ネットワークに物理的に接続することを可能にするために少なくとも1つの取付けられたネットワークインターフェースカードNIC(別の呼び方ではネットワークカードまたはネットワークアダプタカードと呼ばれる)を含んでいる。これらの各カードはそれと関連する特有のMACアドレスを有している。これらのMACアドレスは6バイトのフィールドを有している。最初の3バイト(OUI−オーガニゼイショナルユニーク識別子)はカードの販売者を識別し、IEEEによりグローバルに割当てられる。後の3バイトは、各カードが特有のアドレスを有することを確実にするように販売者に割当てられる。
本発明の背後にある基礎理論は、デフォルトハードコード化されたMACアドレスを有するネットワークカードであるハードウエアが他のソフトウエア制御されたネットワーク設定に比較して変化が少なく、それ故IPアドレスにのみ依存する代わりにネットワークおよびアプリケーション層中のノードを識別するためにMACアドレスが使用される。
好ましい実施形態では、システムはリンク認識ルータを含み、それはデータパケットを送信するクライアントノードのリンク層アドレスを決定することができ、ルータによりホストされることのできるデータベースのリンク層アドレスとユーザ情報を含んでいる。情報は例えばクライアントノードのユーザが登録されている部局およびそれらの権限のレベルおよびセキュリティのゆとりに関係している。
したがって、HTCPPリクエストのようなリクエストがクライアントノードから受信されたとき、ルータはMACアドレスからクライアントノードを識別することができ、1以上の適切なネットワークとネットワーク管理者がクライアントノードに対して規定することのできるアプリケーションポリシーを構成することができる。
例えば、HTTPリクエストの場合に、ルータはそれらが同じURLをリクエストするとき異なったウエブページを2つのクライアントノードに与えるために透明なプロキシ関数を与えることができる。これは例えばクライアントノードが登録されている部局に依存する。その代わりに、eメール、ウエブページ、FTP、等のようなある機能に対するアクセスは、あるドメインを含みまたは除外するように制限されることができる。
1つの好ましい形態では、例えばシステムがPCT/SG00/00107号に開示されたような再構成可能なコンピュータネットワークである場合には、ルータはエンドユーザのリンク層アドレスが前記データベース中に含まれているか否かを決定し、例えばクライアントノードから構成ページへHTTPリクエストを再度導くことによって前記アドレスが前記データベース中にないとき構成手順を開始することができる。
さらに、好ましくは、ルータはクライアントノードのリンク層アドレスがデータベースに含まれているか否かを決定し、前記アドレスがデータベース中にないとき、例えばHTTPリクエストを権限のないアクセスが試みられていることを監視しているウエブページへ再度導くことによってセキュリティ手順を開始する。
システムはまた、クライアントノードの位置情報を決定し、その情報をデータベース中に記録する。この情報は例えばクライアントノードからのデータパケットが受信されるルータのネットワークカードNICの番号(例えばイーサネットカード番号0に対してeth0)であってもよい。それはまたバーチャルLANに対するクライアントノードの割当、例えばVLAN IDに関する情報を含んでいてもよい。したがってMACアドレスで決定されサービスと同様に、クライアントノードは位置特定ウエブページ内容のような位置特定サービスを与えられてもよい。
特に好ましい実施形態では、システムは透明なDNSサーバを含み、それはリンク認識ルータにホストされてもよい。DNSサーバを使用するとき、DNSサーバはネームでクライアントノードのリンク層アドレスをマップすることによりクライアントノードに特有のネームを割当てることが好ましい。このネームは例えば充分に適格なドメインネーム(FQDN)またはホストネームであってもよい。また、以前にIPアドレスと関係していたリンク層アドレスに他の属性を割当てることも可能である。これはネットワークリソース、例えばプリンタおよびダイナミックファイアウォールルール(例えば静的でないIP)を含んでいる。
MACアドレスをDNSのAタイプリソースレコードに直接マップすることにより、FQDNまたはホストネームをクライアントからの付加的なサポートなしにエンドユーザコンピュータに割当てることが可能であり、ノードは仲間の現在のIPアドレスに関係なく、リンク認識DNSネットワーク内のFQDNまたはホストネームにより仲間の対応するノードに常に到達することができる。
さらにシステムは、クライアントノードIPアドレスを割当てられたIPアドレスにマップするネットワークアドレストランスレータ(NAT)を備えていることが好ましい。これはアドレス領域を横切って透明なルート設定を可能にし、それにおいて、例えば、LANのプライベトIPアドレスは、ネットワークアドレスおよびポートトランスレータ(NAPT)を使用したとき1以上の公共アドレス、恐らく1以上のIPアドレスおよびポート組合わせにマップされる。便宜上ここでの説明では用語NATはNAPTを含むものと解釈されるべきである。
好ましくは、ネットワークアドレストランスレータ(NAT)は前記エンドノードのIPアドレスを割当られたノードにマップするときクライアントノードのリンク層アドレスを使用する。これはその後同じIPアドレスを有するクライアントノードがNATによりサービスされることを可能にする。
例えば、PCT/SG00/00107号に開示されたような構成可能なルータが設けられた場合、ネットワークアドレストランスレータはクライアントノードのIPアドレスのマッピングにおいてクライアントノードに対する物理的な位置情報を使用することができる。これはクライアントノードからのパケットが受信されるルータのNIC番号およびVLANのIDを含んでいてもよい。
ネットワークアドレストランスレータは逆NAT動作を行うことが好ましく、それにおいて、割当られたIPアドレスはクライアントノードIPアドレスおよびデータリンク層アドレスにマップされれる。
さらに、好ましくは、ネットワークアドレストランスレータは2回NAT動作を行い、それにおいてマッピングはクライアントノードIPアドレスを割当られたIPアドレスへマップするものと、割当られたIPアドレスをクライアントノードIPアドレスおよびそのデータリンク層アドレスへマップするものとの両方が行われる。
さらに別の観点から見て、本発明は、複数のエンドシステムと、NATルータと、DNSサーバとを含むコンピュータネットワークシステムを提供し、それおいて、前記NATルータはエンドシステムのリンク層アドレスを決定することができ、NATおよびDNS手順は前記リンク層アドレスに基づいており各リンク層アドレスは特有のネームと関係している。
別の観点から見て、本発明は、複数のエンドシステムと、NATルータとを含んでいるコンピュータネットワークシステムを提供し、それおいて、前記NATルータは、実際のソースエンドシステムIPアドレスと、見掛けのソースエンドシステムIPアドレスとの間のバインディングを生成し、前記NATルータは前記バインディングの一部として前記ソースエンドシステムのリンク層アドレスを記録する。
さらに別の観点から見て、本発明は、複数のエンドシステムとDNSサーバとを含むコンピュータネットワークシステムを提供し、それにおいて、前記DNSサーバは特有のネームにより前記エンドシステムのリンク層アドレスをマップする。
さらに別の観点から見て、本発明は、複数のエンドシステムと1以上の中間システムとを含むコンピュータネットワークシステムを提供し、それにおいてデータはネットワークおよびリンク層プロトコルを使用して中間システムを通ってエンドシステムとの間で転送され、エンドシステムは特有のネームを各エンドシステムのリンク層アドレスに割当ることによってシステム中で特有に識別され、前記特有のネームは中間システムによってエンドシステムへのデータのルート設定に使用される。
さらに別の観点から見て、本発明は、複数のクライアントノードとプロキシサーバとを備えているコンピュータネットワークシステムを提供し、それにおいてプロキシサーバは前記ノードによって送信されたデータパケットからデータリンク層アドレス情報を検索してそのデータリンク層アドレス情報に基づいてネットワークレベルまたは前記(例えばアプリケーションレベル)ポリシー明細にしたがって前記クライアントノードをサービスするように構成されている。
さらに別の観点から見て、本発明は、データリンク層アドレスを有する複数のネットワークノードと前記ノードとの間でトラフィックのルート設定を行うルータとを含んでいるコンピュータネットワークシステムを提供し、それにおいて、システムはノードの属性に対するデータリンク層アドレスのデータベースを含み、ルータはノードのデータリンク層アドレスを決定して、前記ノードをサービスするために前記データベースの検索を行うように構成されている。
本発明はまた、上記の特徴およびその構成に対するソフトウエアおよびハードウエアにしたがってコンピュータシステムを管理し、サービスする方法に拡張される。
本発明の種々の実施例を添付図面を参照にして以下説明するが、これは単なる例示であり、特定の図面は先行する本発明の説明の一般性を限定するものではないことを理解すべきである。
図1は、本発明の1実施例によるリンク認識ルータを含むコンピュータネットワークシステムの1つの可能なネットワークトポロジーを示しているが、もちろん他の多くのトポロジーが可能である。
図1において、複数のクライアントノード1 はルータ2 に接続され、このルータ2 は外部ネットワーク3 に接続されている。外部ネットワークは多数の異なった形態をとることが可能であり、例えばインターネットを含んでいてもよい。
この実施例において、クライアントノードの1つであるノード1 は無線基地局4 およびVLANタグポートを有する管理スイッチ5 を介してルータ2 の第1のネットワークカードNIC Iに接続され、一方、第2のクライアントノードであるノード2 はハブ6 および管理スイッチ5 を介して同じルータのカードNIC1 に接続されている。これらのノード1, 2は分離したバーチャルLAN、すなわちVLAN AおよびVLAN B中にあり、例えばネットワークを動作している組織内の部局に対応しており、この効果に対して出て行くデータパケット中に識別子を含んでいる。別のクライアントノード3 は直接ルータ2 の第2のネットワークカードNICIIに接続されている。
ルータ2 は例えば種々の透明プロキシ7 を使用することによりクライアントノード1 を含むプライベートネットワークに対するプロキシサービスを行い、プライベートネットワークから外部ネットワーク3 への全てのユーザリクエストを集めてもよく、応答を適切なユーザに送り返してもよい。またウエブページやftpキャッシュおよびアプリケーションファイアウォール保護のような他の標準的プロキシサービスを与えることもできる。
ルータは国際出願PCT/SG00/00107号に記載されているような再構成可能なルータ
の形態であってもよい。この場合、クライアントノード1 はそこにおいてネットワークから除去することも付加することも可能であり、或いは任意の時点で同じ、または別の論理的および物理的ネットワーク位置でネットワークのユーザによりクライアントノード1 のシームレスな使用を可能にするためにルータ2 は各接続/遮断において適切にその記録を更新する。したがって、各クライアントノードの位置は入来するパケットリンク情報(例えばパケットデータ中に埋設されたVLAN ID)およびルータのネットワークカード(例えばNICI またはII)から決定され、それにおいてクライアントノードからのパケットが受信される。
各クライアントノード、すなわちノード1 、ノード2 、ノード3 は特有のMACアドレス、すなわち、L1 、L2 、L3 を有する。
MACアドレスは物理的アドレスであり(すなわちそれはハードウエア明細)、ネットワークアダプタが製造されたとき、クライアントノードのネットワークアダプタカードに特有の通し番号を付けられる。MACアドレスは6バイトフィールドを有しており、その最初の3バイト(OUI−オーガニゼイショナルユニーク識別子)はカードの販売者を識別し、IEEEにより割当てられ、後の3バイトは販売者により割当てられる。
一般的にこれらのアドレスは例えばイーサネットまたはトークンリングMACレベルでネットワークのデータリンク層中で使用される。
しかしながら本発明によれば、これらのMACアドレスはネットワークのクライアントノードをネットワークのアプリケーション層に対して特有に識別するためにも使用され、ルータ2 は各ノード1 のMACアドレスに認識するように構成される。
したがってルータ2 はユーザ情報に対するMACアドレスのデータベース8 を含んでいる。この情報は任意の適当な形態をとることができ、ネーム、部局、アクセス特権、クライアントノード現在および許可された位置情報を含むクライアントノードを所有するユーザの詳細に関係してもよい。
このようなデータベースを提供し、クライアントノード1 のMACアドレスを得ること
をルータ2 ができるようにするため、ルータ2 は利用可能な特定のネットワークおよびアプリケーションサービスを形成してインテリジェントなサービスを行い、ユーザデータベースに対するMACアドレスから得られたそれらのユーザプロファイルおよびもしも所望ならばそれらの論理的および、または物理的ネットワーク位置に基づいてユーザを選択することができる(例えばVLAN IDおよび入来ルータNIC番号により)。
それ故、ネットワークおよびアプリケーションポリシーはMACアドレスおよび入来ルータのNIC番号から転送されたネットワーク位置、および、またはVLAN IDから転送されたユーザ属性(例えばユーザネーム、部局等)に基づいて強められる。これはすでに既存のネットワークアプリケーション(例えばIPアドレスを使用)でサポートされている他の標準的な基準に付加されてもよい。
1例として、企業はイントラネットウエブサイトを維持し、全ての従業員はクライアントノード、例えばMACアドレスを有する専用のネットワークカードによるパーソナルコンピュータを割当られてもよい。その後、データベースがこれらのアドレスを有するエンドユーザおよびこれらのエンドユーザに関する情報と共に全てのMACアドレスを構成する。2つの異なる部署から従業員が同じURLに彼等に割当られたコンピュータからアクセスするとき、それらはその部署が必要とする妥当な異なったウエブページを示される。これはそれらが同じIPアドレスを有している場合でも、或いは同じネットワーク点に接続されている場合でも可能である。その理由はそれらの特有のMACアドレスの使用がそれらを識別するからである。
さらに、異なる物理的ネットワーク位置に対して、同じ従業員が彼等のMACアドレスにより識別されて、ページ内容が位置依存性である場合に、同じURLに対して異なるウエブページでサービスされてもよい。
この例はルータ2 による透明なHTTPプロキシを使用して構成されることができる。すなわち、全てのHTTPリクエストはルータ2 のファイアウォールにより迎えられてもよく(例えばパケットのTCPヘッダにおける目的地ポート番号80,8080 または3128を決定することにより、または、全ての出て行くTCPパケットを解釈し、およびHTTPリクエスト、例えば“獲得http//*** HTTP/1.0”に対するペイロードを解析することにより)、またHTTPプロキシへ再指向してもよい(例えば、伝統的なソースIPアドレスNATの代わりに目的地IPアドレスNATを介して)。その後プロキシはリクエストされたソースMACアドレスおよびVLAN IDおよび適用可能であれば入来ルータNIC情報を検索され、MACアドレスおよびVLAN IDおよび適用可能であれば入来ルータNIC情報に基づいて関係する情報の検索を実行する。その後、情報に基づいて必要になったとき異なったURLにもとのリクエストをマップし、新しいURLにプロキシリクエストを発行する。
上記において、ファイアウォールは目的地IPアドレスNAPT、例えば目的地アドレスであってよく、ポートのwww.antlabs.com.80はローカルホストの目的地IPアドレスおよびプロキシが存在する目的地TCPポート3128へのNAPTであってもよい。その後、TCPソケット接続がwww.antlabs.com.による代わりにクライアントと透明プロキシとの間に設定されてもよい。各TCPソケットはクライアントMACアドレスおよび入来するNIC番号論理インデックス(NICにより監視された各VLAN IDが新しい論理数を割当られるとき、その論理数からNICとVLAN IDを導出することが可能である)を含むように増加されたエンドノードセッション情報を記憶する。プロキシにより読取られた各解釈されたTCPパケットに対して、ソケットオプション呼はクライアントMACアドレスおよび選択されたソケットのNIC論理数を得るために形成されることができる。
PCT/SG00/00107号明細書に記載されているようなルータがゼロ構成能力を有する別の実施例では、両方の技術の組合わせはウエブベースのGUIを介して遠隔的に新しいネットワークアプライアンスを構成するために使用されることができる。
すなわち、ルータ2 はデータベースにリストされていない異質のMACアドレスから、および例えば遠隔構成に割当られたルータNICからHTTPリクエストを検出し、エンドユーザをデフォルト開始構成ページへ再指向させることができる。
したがって、検出された新しい各ユーザに対して、開始ページは、ネーム、部局、優先度(例えば将来の開始ページ)、好ましいプリンタ等のようなユーザの情報を登録するために使用されることができる。この特徴はまたウエブサーバのような新しいネットワークアプライアンス(伝統的なコンピュータサーバではなく“ブラックボックス”ウエブベースの管理されたアプライアンス)を構成するために使用されることができ、それに対して、最初のIPアドレスを与えることが問題である。本発明によれば、最初のIPアドレスを設定する必要はなく、代わりにウエブサーバが単にプラグインされ、そのウエブブラウザがスタートされる。それから開始構成ページが与えられ、その後、ウエブベースの管理がWAN接続および他のアプライアンス形態に対してIPを設定することができる。
さらに、同様の方法を使用してルータ2 はセキュリティアクセス制御装置として使用されてもよい。すなわち、IPスプーフを受けるIPアドレスに基づいた典型的なパケットベースのファイアウォール制御の代わりに、登録されていないクライアントノードのネットワークアダプタカード(例えばデータベースに登録されたMACアドレスのないカード)からの任意のHTTPリクエストはウエブページ監視装置へ再度導かれ、その監視装置はそれらが権限のないアクセスを試みるものであることをエンドユーザに報告する。
このようにして、既存のアプリケーションファイアウォールと異なって、セキュリティ制御は個々の各アプリケーションに対して(それらのMACアドレスにより識別された)ユーザへの物理的なソケット接続からあるゆる方法で与えられることができる。
サービス配送を行うのと同様に、MACアドレスの使用はルータ2 がMACアドレスの直接の使用により適切なパケット転送決定のリターンを行うことを可能にする。
図2および3は入来トラフィックが例えば図1のシステムで構成されることのできるクライアントノード1 との間でどのように出入するかを示している。もっとも、ここでは図はクライアントノード1 とリンク認識ルータ2 との間に他のルータが設けられる可能性も示している。
一般に、2つの通信ノード間の少なくとも1つのクライアントノード(この例ではMACアドレスL1 およびIPアドレスN1 を有するノード)はリンク認識ルータ2 から1ルータホップされなければならない。しかしながら、クライアントノード1 とリンク認識ルータ2 の間に多数の介在層2 スイッチ(VLANまたはその他)を設けることができる。
また、クライアントノード1 とリンク認識ルータ2 との間に共同して動作するルータ9 (例えば透明ルータまたはPCT/SG00/00107号によるルータ)が存在してもよく、それは例えばリンク認識ルータ2 に必要な情報を提供して正確な出て行くパケット層2 のリンクヘッダを生成してクライアントノードに送るために共同して動作するエッジルータ10に報告することができる。
中間ルータ9 はリンク認識ルータ2 にパケットを導きポリシー決定を行うことを可能にする。所望ならば、出て行くトラフィックに対して、例えば目的地IPアドレスに基づいてルート決定を行うことができ、トラフィックが異なるリンク認識ルータに送られることを可能にする。それらはまた1つのVLANから他へ経路設定することができる。
図1および2に示されているように、クライアントノードMAC,L1 はリンクヘッダ(ソースおよび目的地の物理的アドレスを含んでいる)とネットワークヘッダ(ソースおよび目的地のIPアドレスを含んでいる)との間のデータパケット中に埋設されていてもよい。その代わりにソースMACアドレスが変化しないスイッチベースの構成では、クライアントのMACはリンクヘッダの一部を形成することができる。これらはただ2つの例であり、クライアントMACアドレスをリンク認識ルータ2 およびエッジルータ10へ与える他の手段、例えば帯域外メッセージによることも可能である。
ルータ2 の例えばインターネット側のリンク認識ルータ2 と次のホップルータ11との間のルート設定動作は技術的に知られており、例えばルータ11により、ネットワークヘッダ中のIPアドレス目的地からのデータパケットの目的地の同様な決定とIPアドレスに対するルート表によるパケットのルート設定が行われる。
リンク認識ルータ2 は技術的に知られているように例えばプライベートIPアドレスを公共IPアドレスにマップするため、およびアドレス衝突の問題を阻止するためにNAT(ネットワークアドレス変換)またはNAPT(ネットワークアドレスおよびポート変換)を行うことができる。NAPTはまたポート番号をマップし、本発明の目的に対してNATへの参照がNAPTおよびNATの他の変形(例えばポート転送のために使用される
2回のNAPTの使用および透明プロキシにより使用される目的地NAT)への参照を含めて採取されなければならない。
本発明では、図1のルータ2 のようなリンク認識ルータはNAT能力を与えられ、それはまたマッピングにおけるクライアントノードのMACアドレスを伴っている。
したがって、NAT機能は標準的なNAT機能(目的地NATのような任意の変数および例えばRFC2663,P.Srisuresh,M.Holdrege,1999 年8月の“IPネットワークアドレス変換器(NAT)ターミノロジーおよび考察”)と同様の方法で動作できるが、以下のものは除外される。
1)NATである全ての新しい入来するセッションに対して、クライアントMACアドレスならびに適用可能であれば入来するルータNIC番号および任意の他のオプションの位置特定情報(例えばVLAN ID)はオリジナルのバインド中に記憶され、他の公称のリクエストされたNAT情報に付加されてIPアドレスを与えられる。
2)クライアントIPアドレス(NAPTに対する付加的なトランスポートポート番号)バックをマップする任意の整合反転セッショントラフィックに対して、トラフィック転送
のためのルータは前に記憶されたリンク情報を使用してパケットを生成し、そのパケットをクライアントに送信し、正常なルート処理をバイパスする。
ステップ2に対して、上述のように、クライアントが自動車であり、運動の検出がサポートされた場合に(例えばPCT/SG00/00107号のように)、出て行くトラフィックが送られるルータのNIC番号はステップ1で前に記録されたものと同じでない可能性があり、この情報は現在の検出処理によって更新されなければならない。MACアドレスはしかしながら変化しない。
リンク認識NAT手順は同じIPアドレスを有する2人のクライアントがNATを彼等が同じリンクの放送ドメインにある場合でも可能にする。それは彼等がそのMACアドレスによって他方から弁別されることができるからであり、例えばARPリクエストを発行する必要がないからである。
同じIPアドレスを有する2つのノード間で通信するために、別々の特有のエンド・ツー・エンド識別形態、例えば充分に適格なドメインネーム(FQDN)でなければならない。
両方の例のリンク認識NAT手順およびFQDNは本発明の特徴に関連して以下詳細に説明する。それはリンク認識ダイナミックドメインネームサービスである。
説明したように、クライアントノード1 に取付けられたネットワークインターフェースカードのMACアドレスはクライアントノード1 および関連するエンドユーザを特有に識別するために使用される(従来技術のようにクライアントノードにマップするためにIPアドレスを使用するのではなく)。
この概念をDNSシステムに拡張すると、リンク認識ダイナミックDNSシステムによりサービスされるネットワーク内で充分適格なドメインネーム(FQDN)、例えばlohn.antlabs.com. またはホストネーム、例えばjohnをクライアントからの付加的なサートなしにエンドユーザに割当ることが可能である。
MACアドレスをDNSのAタイプリソース記録に直接マップすることにより、ネットワークは常にそのFQDNまたはリンク認識DNSネットワークに内のハウスネームによって同等の対応するノードに同等の現在のIPアドレスに関係なく、クライアントノードがそのIPアドレスを登録する必要なく到達することができる。
リンク認識DNSシステムでは、各ノードはそのMACアドレスによって、ネットワークトラフィックを監視して例えばPCT/SG00/00107号明細書に記載されているように運動検出を行うことによりり識別され、リンク認識ルータは各クライアントノードの位置およびそれらの関連するMACアドレスおよびIPアドレスを決定することができる。
図4に示されているように、リンク認識DNSシステムはリンク認識ルータ2 とそこに位置されることのできるリンク認識DNSサーバから構成されており、FQDNテーブル12に対する予め構成されたMACアドレスを含んでいる。
アドレス衝突のない内部LANに対して、最も簡単な機構は、ダイナミックにホストベースのルートを設定し、発見された個々の各クライアントの実際のIPアドレスによりDNSを更新するためのリンク認識ルータに対するものである。
クライアントがFQDNまたはホストネームを解読するとき、ホストの実際の現在のIPアドレスが戻される。対応するホストに対して目的地とする任意のトラフィックは設定されたダイナミックホストベースのルートにより転送される(クライアントノードが移動する場合にはそれは変化する)。
図5はそのような内部LANを示している。トラフィックがクライアントノード1 により発生するとき、リンク認識ルータ2 上のルートテーブル13とDDNSテーブル14とは更新される。例えば、もしもMACアドレスAおよびソースIPアドレス1.1.1.1を有するパケットがルータNIC1 上で受信されると、ホストベースルートがルートテーブル13中に設定される。その後ルータはMACアドレスAに対してリンク認識DNSテーブル12を検索し、これはFDQN“albert.a.com. ”を戻す。DDNSテーブル14はその後更新され、FDQN“albert.a.com. ”に対してIPアドレス1.1.1.1を反映するように更新される。
クライアントノード1 が図6に示されるようにDNS質問を、例えばalbert.a.com. に対して行なうとき、その質問はリンク認識ルータ2 の透明なリンク認識DNSサーバにより受取られル。もしも、FDQNがDDNSテーブル14中で発見されるならば、そのFDQNの現在のIPアドレス、例えば1.1.1.1はDNS回答中で戻される。発見されない場合には、それ自体は既知のDNS動作である回帰的DNS解決法が使用される。 図7に示されているように、一度FDQNが解かれると、トラフィックは図5に示されたルートテーブル13の予め設定されたホストベースルートによりルータ2 を通って送信および受信ノード1 間で伝送されることができる。
アドレス衝突が存在する場合、或いは通信が2以上のルート領域を横切って生じた場合には、NATの形態はリンク認識DNSサーバにより供給されることができる。
例えば、ネットワーク衝突のない交差ルート領域通信の場合に、恒久的なFDQNまたはホストネームがクライアントノードのIPアドレスを発見するため、およびそのIPアドレスにトラフィックを送信するために使用されることができる。クライアントの対応するノードが送信しているノードからデータを受信するとき、目的地IPアドレス(すなわち送信者のIPアドレス)はすでに受信されたデータから対応するノードにより知られているので、送信者のFDQNまたはホストネームについて類似するネームを検索する必要はない。それ故、この場合にはネームの検索は1方向に行う必要があるだけである。
ネームの検索を開始するノードのIPアドレスが特有である場合には、すなわち、アドレス衝突がない場合には、リンク認識ルータはドメインネームサービスアプリケーションレベルゲートウエイ(DNS ALG)をサポートすることだけが必要であり、プライベートネットワークにおいてアドレス衝突がない場合には、DNS ALGを有するNATで充分である。リンク認識DNSサーバはクライアント発見においてDDNSテーブル中の対応するノードのIPアドレスを更新するために依然として必要である。
図8は、インターネットおよび登録されたドメインネーム“a.com ”を有するプライベートネットワークのクライアントノード1 のような公共ネットワーク3 のノード15と、DNS ALGをサポートするNATできてドメイン“a.com ”に対する権限のあるネームサーバであるリンク認識ルータ2 との間のルート領域を横切る通信の衝突のない例を示している。
図8に示されているように、リンク認識ルータ2 はクライアントノードのMACアドレスAを発見してルートテーブル13(クライアントノード1 からのパケットが受信されるルータ2 の入来するNICに対して)および“albert.a.com”に対するDNATSテーブル14を更新する。
図9に示されるようにIPアドレス10.0.0.3を有する公共ネットワークノード15が“albert.a.com”を解読しようとするとき、DNSの質問はリンク認識ルータ2 に送られる。それは“a.com ”ドメインに対して権限のあるネームサーバであるからである。したがってDNS ALGはプライベートネットワークリンク認識DNSサーバ、すなわちDDNSテーブルに質問し、それは結果1.1.1.1 を送り返す。その後DNS ALGはアドレスバインディング16を設定してクライアントノードのIPアドレス1.1.1.1 を公共IPアドレスにマップし、その公共IPアドレスはNAT目的に対するリンク認識ルータ2 に属しており、この場合にはIPアドレス11.0.0.1であり、DNS回答の11.0.0.1をリクエストしているノード15に送信する。
一度DNS解読が完了すると、2つのノード15と1 との間の通信は標準的に行われ、これは文献(“DNSのネットワークアドレス変換器への拡張”P.Srisuresh,G.Tsirtsis,P
.Akkiraki,およびA.Heffeman, 1999年9月)に記載されている。
図10はIPアドレス1.1.1.1 を有する対応するノード1 にIPアドレス10.0.0.3を有するノード15からのトラフィックに対するNAT動作の結果を示しており、一方、図11は対応するノード1 から公共ノード15への回答トラフィックに対するNAT動作を示している。
アドレス衝突の可能性について検討すると、そのような衝突の1つは対応するクライアントノード(外部ノードによるネーム検索のターゲット)と、同じプライベートネットワーク上の別のクライアントノードとの間のアドレス衝突である。これは逆リンク認識NATをサポートするリンク認識ルータを有することによって解決される。これはクライアントノードのリンク層情報の使用を必要とする。
この状態において、通信は衝突問題を有するプライベートノード1 の1つではなく、プライベートネットワークの外側の公共ノードによって設定されるから、バインディング情報がDNS ALGにより生成されたときに逆リンク認識NATリンク層情報が設定されることができる。
ルート領域を横切って、例えばインターネット3 からプライベートネットワークへ通信するとき、プライベートネットワークの対応するノード1 に公共IPアドレスを割当ることが必要である。
全てのシナリオに対して、他の可能な対応するノードと衝突することのない特有のIPアドレス(公共である必要はない)が使用されなければならない。
図12は同じIPアドレス1.1.1.1 を有する2つのクライアントノード1 によるプライベートネットワークa.comに対するリンク認識DNSテーブル12およびDDNSテーブル14を示している。
図8乃至11の衝突のない実施例および図13に示された実施例のように、公共ノード15が“albert.a.com”に対するDNSリクエストを送信するとき、DNS ALGはDDNSサーバに質問してドメインネーム“albert.a.com”を有する対応するノードのIPアドレス1.1.1.1 を獲得してプライベートクライアントノードアドレス1.1.1.1 を有する公共IPアドレス11.0.0.1のDNS ALGバインディング16を設定する。
さらに、逆リンク認識NATの設定を可能にするために、DNS ALGは、対応するノードのFQDNに割当られた公共IPアドレス11.0.0.1のリンク認識DNSサーバを報告する。この情報を使用して、リンク認識DNSサーバは、そのMACアドレスAにより特徴付けられた適切なクライアントノードに割当られたIPアドレス11.0.0.1をマップするリンク認識NATテーブル17を構成することができる。これはFQDN/ホストネームマップ(図12のリンク認識DNSテーブル12の)へのMACアドレスとして生成され、特有であり(1対1)、FQDN/ホストネームから対応するMACアドレスを検索する逆検索が可能になる。
ルータ2 が各クライアントノード1 に対するリンクレベルおよび入来NIC情報を監視するので、リンク認識DNSシステムを更新するために、リンク認識ルータ2 は対応するノード1 のIPアドレスとネットワーク位置を設定することができる。対応するノードの実際およびダイナミックに割当られた(DNS ALG)IPアドレス、そのMACアドレスおよび入来するNICインターフェース情報(もしもあればVLAN ID情報と共に)により、逆リンク認識NATは実行されることができる。
図14はノードIPアドレス10.0.0.3から対応するノードアドレス1.1.1.1 へ逆方向リンク認識NATによるトラフィックに対する動作を示している。対応するノードからの回答トラフィック1.1.1.1 により、IPアドレス10.0.0.3へのMACAは標準的な方法を使用して行うことができる。
図15乃至17はリンク認識DNSサービスされたプライベートネットワーク内のノード1.1'間にIP衝突が存在する実施例を示しており、交差ルート領域通信は存在しない(全ての通信ノードはリンク認識ルータ2 から1ホップである)。
そのようなIP衝突が通信ノード間に存在する場合には、リンク認識の2回のNATが使用され、すなわち、リンク認識NATはソースおよび目的地IPアドレスの両者に対して行われる。
そのような方法において、特有のIPアドレス(アドレス衝突のない)、この場合11.0.0.2は送信ノード1'と同じ位置にあり、ネームを検索する。リンク認識NATは同じ位置のIPアドレス11.0.0.2を記録し、それを送信側ノードIPアドレス1.1.1.1 、およびそのMACアドレスBに整合させ、また存在すればNIC情報およびVLAN IDと整合させる。これはリンク認識NATテーブル18中に記憶される。
その後、DNS ALGは送信側ノード1'にDNS回答する対応するノード1 と同じ位置の別の特有のIPアドレス11.0.0.1に戻る。このIPアドレス11.0.0.1はクライアントノードIPアドレス1.1.1.1 およびMACアドレスA、NICインターフェース情報および、存在する場合にはVLAN IDと共にリンク認識NATにより記憶される。これは図12乃至14の実施例と同様に行われ、逆方向リンク認識NATテーブル17に記憶される。
これらの2つの同じ位置のIPアドレス11.0.0.1および11.0.0.2は、他のネーム検索の前の2つのノード1 および1'間の存在する任意の通信の期間に対して有効である。
2つのノード1 および1'間の通信は2回のNATである。従来の通常の2回のNATとの相違は、パケットを構成して任意のノード1 および1'に転送するために、利用可能なリンク層およびNIC情報がルートテーブル検索(アドレス衝突が存在するとき破壊する)またはARPリクエスト(アドレス衝突が存在するとき多重回答が生じる可能性がある)の必要がなくなることである。
DNS ALGバインディング16、リンク認識NATテーブル18、リンク認識逆方向NATテーブル17はMACアドレスBを有する対応するノードがDNS質問を発生するときに設定される。
図16は、MACアドレスBを有するクライアントノード1'からMACアドレスAを有する対応するクライアントノード1 へのトラフィックのためのリンク認識2回のNAT動作を示しており、一方図17は、MACアドレスAを有する対応するクライアントノード1 からMACアドレスBを有するクライアントノード1'へのNAT動作を示している。
交差ルート領域通信(プライベートネットワークからインターネットへ、またはその反対に開始される)でプライベートノードと公共ノードとの間でアドレス衝突が発生する場合に、プライベートネットワーク内の特有のIPアドレスは公共の対応するノードと同じ位置になければならず、リンク認識ルータに属する特有の公共IPアドレスはプライベートノードと同じ位置になければならず、DNS ALGによる2回のNATが使用されて前述の文献(“ネットワークアドレス変換器に対するDNS拡張”RFC2694セクション6)に記載されているように通信できるように使用される。もしもアドレス衝突がまたプライベートネットワーク内で発生した場合には、リンク認識は公共ノードからプライベートノードへのトラフィックに対して2回のNATを行うが、プライベートノードから公共ノードへのトラフィックに対してはNATは使用されてはならない。
全体として、本発明の特徴は、特に、PCT/SG00/00107号に記載された再構成可能なネットワークシステムにより使用される場合には多くの利点を与える。
この技術は、管理装置の介入する必要なしに、必要なときに構成可能なエンドユーザに対するデマンドにアクセスするネットワークを提供するのに充分にインテリジェントである。エンドユーザの個々のシステムの再構成を必要とするものは、実時間で全体のネットワークに対して管理装置介入により構成され、展開され、構成の変化は個々のユーザの粒状性まで適用できる。例えば、ウエブベースのサーバ管理ページから、ネットワーク管理装置は遠隔的に、新しいSMPTへの切換え、イントラネットウエブサーバマシーンまたはURLの変更、新しいネットワークリソース、例えばプリンタの全てのユーザへのインストールまたはアクセス可能にし、新しい充分適格にされたドメインネームまたは内部ホストネームのエンドユーザのコンピュータへの割当て、或いは公共的にアクセス可能なIPアドレスのエンドユーザのコンピュータへの割当て等を可能にする。
さらに、この技術はクライアントノードをネットワークに接続することができるだけではなく、インテリジェントナサービスを配送するための発射パッドであることも可能である。サーバは彼等のユーザ情報から彼等の現在の位置までネットワーク中の全てのクライアントシステムの完全なデータベースを有することができ、管理装置は選択されたユーザに利用可能にされる特定のサービスを構成することができ、物理的位置およびユーザプロファイルに基づいてそのようなサービスに特定してアクセスすることができる。
永久的な人間の理解できるバーチャルFQDNまたはホストネームが面倒なIPアドレスに依存する代わりにクライアントノードを識別するために使用されることができ、エンドユーザは、同等のものが新しい位置へIPアドレスを変化し、或いはさまよう場合でさえその割当られたネームにより同等の対応するノードに到達することができる。
例えば、カラーレーザプリンタの割当を有するセールス員がLANに無線接続することができ、建物のどこか未知の部分にいる同僚に最も近いカラーレーザプリンタ(制限されたアクセス)に緊急のカラーパンフレットの特別の配送を行うことができる。
また、セールスプレゼンテーションはデジタル的に第1の開いている会議室(検出されたクライアントノードのない)に送信され、情報は提出者がネットワークに接続される瞬間に特定の提出者に自動化されたメモを介してフィードバックされることができる。
セキュリティ制御は全ての方法で物理的ソケット接続から実際のユーザの個々のアプリケーションアクセスおよびモニタについて行われる。ファイアウォール、アクセイ制御、およびネットワークポリシーはネットワーク構成のポイント間セキュリティを有する中央化されたサーバから行われることができ、リンク層においてルールは発生源ま個々のクライアントリンク層MACアドレスおよびネットワークポイントに適用されることができる。ネットワークおよび転送レベルにおいて、サーバはダイナミックファイアウォールを有するホストベースファイアウォールのように生成されることができ、クライアントの物理的位置およびユーザの分類等に基づいて挿入、削除さけることができる。ウエブベースの認証ページはさらに実時間でユーザが接続されている正確なポートに特定のサービスに対するアクセスを承認できる。ダイナミックファイアウォールはクライアントがネットワークから遮断されたとき自動的にアクセス特権を抹消することができる。
アプリケーションレベルでDNS、eメール(SMTP)およびウエブ(HTTP)のような共通のアプリケーションリクエストが監視され、物理的接続、リンクフレーム、またはネットワークアドレスベース/基準に基づいて制御された特性を有することができる。
種々の置換、追加、および/または変更が本発明の技術的範囲を逸脱することなく前述の構成について行うことができることが理解されるであろう。また、本発明の技術的範囲内において種々のネットワークコンポーネントおよび機能が種々の方法でソフトウエアおよび/またはハードウエアデ構成されることが認識されるであろう。
以下に、本願出願時の特許請求の範囲に記載された発明を付記する。
[1]それぞれ特有のデータリンク層アドレスを有する複数のクライアントノードを含むコンピュータネットワークシステムにおいて、
前記ネットワークシステムは、前記クライアントノードのデータリンク層アドレスにアクセスすることのできる1以上のネットワーク装置を具備し、
前記ネットワーク装置は前記アクセスされたデータリンク層アドレスを使用して前記クライアントノードを特有に識別し、前記データリンク層アドレスに基づいてノードにネットワーク層またはサービスを提供し、
ネットワークシステムはさらに、割当てられたIPアドレスにクライアントノードIPアドレスをマップスするためのネットワークアドレストランスレータ(NAT)を含んでいるコンピュータネットワークシステム。
[2]前記ネットワークアドレストランスレータは割当てられたノードに対する前記エンドノードのIPアドレスのマップにおいてクライアントノードのリンク層アドレスを使用する前記[1]記載のシステム。
[3]前記ネットワークアドレストランスレータは、クライアントノードのIPアドレスのマップにおいてクライアントノードに対する物理的位置決定情報を使用する前記[1]または[2]記載のシステム。
[4]前記ネットワークアドレストランスレータは、クライアントノードのIPアドレスおよびデータリンク層アドレスに割当てられたIPアドレスがマップされる逆NAT動作を行う前記[1]乃至[3]のいずれか1つに記載のシステム。
[5]前記ネットワークアドレストランスレータは2回のNAT動作を行い、それにおいてマッピングは割当てられたIPアドレスに対するクライアントノードIPアドレスおよびクライアントノードIPアドレスとデータベースリンク層アドレスに対して割当てられたIPアドレスの両者に行われる前記[1]乃至[4]のいずれか1つに記載のシステム。
[6]複数のエンドシステムと、NATルータと、DNSサーバとを具備しているコンピュータネットワークシステムにおいて、
前記ルータはエンドシステムのリンク層アドレスを決定できるように構成され、NATおよびDNS手順は前記リンク層アドレスに基づいており、各前記リンク層アドレスは特有のネームと関連しているコンピュータネットワークシステム。
[7]複数のエンドシステムとNATルータとを具備しているコンピュータネットワークシステムにおいて、
前記NATルータは実際のソースエンドシステムIPアドレスと、見掛けのソースエンドシステムIPアドレスとの間のバインディングを生成し、前記NATルータは前記バインディングの一部として前記ソースエンドシステムのリンク層アドレスを記録するコンピュータネットワークシステム。
[8]データリンク層アドレスを有している複数のネットワークノードと、それらのノードとの間でトラフィックのルート設定を行うルータとを含んでいるコンピュータネットワークにおいて、
前記システムはノードの属性に対する前記データリンク層アドレスのデータベースを含み、前記ルータは前記ノードのデータリンク層アドレスを決定して、前記ノードをサービスするために前記データベースの検索を行うように構成されているコンピュータネットワークシステム。