JP6545695B2 - ホスト名に基づいたネットワークサービスの選択 - Google Patents

ホスト名に基づいたネットワークサービスの選択 Download PDF

Info

Publication number
JP6545695B2
JP6545695B2 JP2016552502A JP2016552502A JP6545695B2 JP 6545695 B2 JP6545695 B2 JP 6545695B2 JP 2016552502 A JP2016552502 A JP 2016552502A JP 2016552502 A JP2016552502 A JP 2016552502A JP 6545695 B2 JP6545695 B2 JP 6545695B2
Authority
JP
Japan
Prior art keywords
address
network
packet
service
network service
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.)
Active
Application number
JP2016552502A
Other languages
English (en)
Other versions
JP2017508380A5 (ja
JP2017508380A (ja
Inventor
カプト、ピート、ジョゼフ、ツー
Original Assignee
レベル スリー コミュニケーションズ,エルエルシー
レベル スリー コミュニケーションズ,エルエルシー
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 レベル スリー コミュニケーションズ,エルエルシー, レベル スリー コミュニケーションズ,エルエルシー filed Critical レベル スリー コミュニケーションズ,エルエルシー
Publication of JP2017508380A publication Critical patent/JP2017508380A/ja
Publication of JP2017508380A5 publication Critical patent/JP2017508380A5/ja
Application granted granted Critical
Publication of JP6545695B2 publication Critical patent/JP6545695B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • H04L45/22Alternate routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0813Configuration setting characterised by the conditions triggering a change of settings
    • H04L41/0816Configuration setting characterised by the conditions triggering a change of settings the condition being an adaptation, e.g. in response to network events
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0893Assignment of logical groups to network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/44Distributed routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/742Route cache; Operation thereof
    • 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/2521Translation architectures other than single NAT servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4505Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
    • H04L61/4511Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5007Internet protocol [IP] addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5003Managing SLA; Interaction between SLA and QoS
    • H04L41/5019Ensuring fulfilment of SLA
    • H04L41/5025Ensuring fulfilment of SLA by proactively reacting to service quality change, e.g. by reconfiguration after service quality degradation or upgrade

Landscapes

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

Description

本分野は、概して、ネットワークルーティングに関する。
[関連技術]
ネットワークサービスは、例えば、インターネットなどの、顧客ネットワークから別のコンピュータネットワークへの接続性を提供し得る。ネットワークサービスは、帯域幅、待ち時間、及びジッタなどの一定のサービス特性を保証する特定のサービスレベル合意(service level agreement)を有し得る。顧客ネットワークの中には、それらをインターネットに接続する2つ以上のネットワークサービスを有するものもある。複数のネットワークサービスを有すると、冗長性をもたらす。
どのネットワークサービスを使用するかの選択を助けるべく、ネットワークサービスは、例えば、ボーダーゲートプロトコル(BGP)のようなプロトコルを使用してルーティング情報を通知する。ルーティング情報に基づいて、顧客ネットワーク上の複数のルータは、別のネットワークサービスよりも、一のネットワークサービスにデータをルーティングすべきことを知り得る。しかしながら、ルーティング情報を通知する従来の多くのやり方においては、コンフィギュアビリティが欠如している。
コンフィギュアビリティを提供する1つのやり方は、ポリシーベースルーティング(PBR)を使用することである。ポリシーベースルーティング(PBR)は、ネットワークアドミニストレータによって設定された複数のポリシーに基づいてルーティング決定をするために使用される技術である。例えば、ルータがパケットを受信する場合、当該ルータは、通常、パケット内の宛先アドレスに基づいてそれをどこに転送するかを決定する。当該宛先アドレスは、次に、ルーティングテーブルでエントリを検索するために使用される。しかしながら、いくつか場合においては、他の基準に基づいてパケットを転送する必要がある場合もある。例えば、PBRは、宛先アドレスではなく送信元アドレスに基づいて、ネットワークアドミニストレータがパケットを転送するやり方を提供する。
インターネットに接続するためにどのネットワークサービスを使用するかを設定可能であることが、そのトラフィックのサービスレベルを保証する助けとなり得る。例えば、音声IP(VoIP)トラフィックは、他のIPトラフィックより短い待ち時間を必要とすることがある。したがって、ネットワークアドミニストレータは、VoIPトラフィックを一のネットワークサービスに沿って方向付ける一方で、他のIPトラフィックを別のネットワークサービスに沿って方向付けることを望むことがある。
一実施形態において、方法は、ユーザのネットワークをサービスプロバイダのネットワークと接続する第1のネットワークサービス上にデータをルーティングするようネットワークを設定する。当該方法において、ホスト名に宛てられたデータを第1のネットワークサービス上にルーティングする命令が受信される。当該ホスト名に従って、当該ホスト名によって特定されたサーバを指す第1のIPアドレスが決定される。特定のネットワークサービスの第2のIPアドレスとして第2のIPアドレスもまた決定される。最後に、メッセージがユーザのネットワークに送信される。当該メッセージは、第1のIPアドレスに宛てられたデータを第2のIPアドレスにルーティングするようユーザのネットワークに具体的に命令する。当該メッセージは、第1のIPアドレスを包含するより一般的なルーティングエントリを有する第2のネットワークサービスよりも、第1のネットワークサービス上にデータをルーティングするためのユーザのネットワーク上のルータの設定をもたらす。
システムの実施形態及びコンピュータプログラム製品の実施形態もまた開示される。
本発明のさらなる実施形態、特徴、及び利点、並びに様々な実施形態の構造及び動作が、添付図面を参照して以下で詳細に説明される。
本明細書に組み込まれ、本明細書の一部を形成する添付図面は、本開示を例示し、説明と合わせることで、さらに、本開示の原理を説明し、当業者が本開示を作り使用することを可能にするのに役立つ。
一実施形態に係る、ホスト名に基づいて複数のネットワークサービスを選択するためのシステムの図である。
図1のシステムの動作例を示す図である。
図1のシステムをより詳細に示す図である。
一実施形態に係る、ホスト名に基づいて複数のネットワークサービスを選択するための方法のフローチャートである。
概して、ある要素が最初に現われる図面は、対応する参照番号の左端の1又は複数の桁の数字で示される。図面において、同様の参照番号は、同一の、又は機能的に同様の要素を示してよい。
上述したように、どのトラフィックがどのネットワークサービスを利用するかを設定可能なことが利益をもたらす。しかしながら、そのコンフィギュアビリティは複雑で困難な場合がある。顧客が特定のDNSホスト名を特定のネットワークサービスに割り当てる能力を提供することで、複数の実施形態が設定を簡略化する。一旦、顧客がDNSホスト名をネットワークサービスに割り当てると、複数の実施形態は、顧客のネットワーク上のルータに複数の設定メッセージを送信し、割り当てられたホスト名に宛てられたトラフィックを、割り当てられたネットワークサービスに方向付けるようルータの複数のルーティングテーブルを更新する。
図1は、一実施形態に係る、ホスト名に基づいて複数のネットワークサービスを選択するためのシステムの図100である。当該システムは、顧客ネットワーク102及びサービスプロバイダネットワーク104を含む。
顧客ネットワーク102は、例えば、建物などの特定のエリアに制限されたローカルエリアネットワークであってよい。別の例において、顧客ネットワーク102は、同じ組織内で異なる複数のコンピュータを接続する企業のイントラネットであってよい。様々なコンピュータは、プライベートネットワーク又はインターネットなどのネットワークを介した複数のリソースへのアクセスを必要とする複数のウェブブラウザ又は他の複数のアプリケーションを有してよい。顧客ネットワーク102はTCP/IPルーティングプロトコルを使用してよく、顧客ネットワーク102上の複数のコンピュータは、パブリックに又はプライベートにアドレス可能な複数のIPアドレスを使用してよい。
サービスプロバイダネットワーク104は、異なるネットワークサービスであるネットワークサービス130及びネットワークサービス132で顧客ネットワーク102に接続する。上述したように、各ネットワークサービスは、サービスレベル合意によって定義されてよい特定のサービスレベルの接続性を提供してよい。サービスレベルは、利用可能な帯域幅の量、最小待ち時間、最大ジッタ量、又は他の複数のパラメータを指定してよい。
ネットワークサービス130及び132の各々は、サービスプロバイダネットワーク104上のルータ110を顧客ネットワーク102上のポートに接続する。具体的に、ネットワークサービス130はルータ110をポート140に接続し、ネットワークサービス132はルータ110をポート142に接続する。ポート140及び142の各々は、例えば、顧客ネットワーク102のルータ上にあってよい。
ルータ110を通して、ネットワークサービス130及び132はバックボーン106への接続を提供する。バックボーン106は、例えば、パブリックインターネットを含んでよい。バックボーン106は、複数のルータ及び複数の相互接続リンクを含んでよい。ルータ110は、データをバックボーン106上の他の複数のルータに送信する。それらのルータは、データをその宛先までルーティングする。
どのようにデータをルーティングするかを決定すべく、バックボーン106上の様々なルータはそれらの接続性を通知するメッセージを交換し得る。それらのメッセージは、例えば、BGPメッセージであってよい。その例において、メッセージを交換するそれらのルータは、BGPピアであってよい。これらのメッセージを使用して、様々なルータは、ネットワークを通してどのようにデータをルーティングするかを定義する複数のルーティングテーブルを発展させる。
バックボーン106上の様々なルータがメッセージを交換するのみならず、ルータ110は、顧客ネットワーク102上の少なくとも1つのルータと複数のメッセージを交換する。図1において、これらのメッセージは、ネットワークサービス130及び132上のそれぞれメッセージ150及び152として示されている。一例において、メッセージ150及び152は、複数のIPサブネット及び関連付けられたネクストホップIPアドレスのリストを含んでよい。メッセージ150及び152に従って、顧客ネットワーク102上のルータは、それらのメッセージを組み込むよう、これら自身のルーティングテーブルを設定してよい。顧客ルータは、例えば、宛先アドレスにマッチする最も詳細なIPサブネットにデータをルーティングし、連想されるネクストホップアドレスにデータを送信してよい。この情報に基づいて、顧客ルータはどのネットワークサービス上にデータをルーティングするかを決定する。
一実施形態において、ルータ110は、ホスト名を特定のサービスにマッピングするユーザ設定に従って、メッセージ150及び152を送信する。具体的に、ユーザは、様々なホスト名をネットワークサービス130又は132のいずれかにマッピングするようテーブル112を設定可能である。ルータ110は、メッセージ150及び152を生成及び送信し、ホスト名に宛てられたデータをネットワークサービス130又は132のいずれかにルーティングするよう顧客ルータを更新する。具体的に、ホスト名のIPアドレスに宛てられたデータをルーティングするよう顧客ルータを更新すべく、メッセージ150及び152が生成される。IPアドレスを決定すべく、サービスプロバイダネットワーク104上のルータ110又は別のコンポーネントは、ホスト名のDNS検索を実行して、(1又は複数の)サービスを用意する(1又は複数の)ホストの複数のリソースの(1又は複数の)IPアドレスを決定する。次に、メッセージ150及び152は、ユーザによって指定された特定のネットワークサービスを通じてトラフィックを方向付けるべく生成される。
一旦更新されると、顧客ネットワーク102は、ユーザ設定に従って、別のネットワークサービスに対して、一のネットワークサービスを通じてデータをルーティングする。ホストの宛先IPアドレスを有する各パケットは、特定のネットワークサービスを通じてルーティングされる。
図1は、パケット154の例を示す。一例において、顧客ネットワーク102上のルータは、特定のホスト名に宛てられたトラフィックをネットワークサービス130上にルーティングすべく更新される。顧客ネットワーク102上のルータは、そのルーティングテーブル内の複数のサブネットに対してパケット154の宛先アドレスを評価する。様々なルーティングテーブルエントリの間で、最も詳細なマッチが特定されて、ネクストホップが決定される。設定メッセージは、ユーザのネットワークサービス130のネクストホップアドレスのエントリに対して宛先IPアドレスをマッチさせるよう、ルーティングテーブルの複数のエントリを既に更新済みである。このために、図1において示されるように、ネクストホップIPアドレスはネットワークサービス130に沿ってパケット154を方向付ける。
図2は、図1のシステムの動作例をより詳細に示す図200である。上記のように、図200は、顧客ネットワーク102、サービスプロバイダネットワーク104、ルータ110、及びテーブル112を含むシステムを示している。加えて、図200は、DNSキャッシュ214に連結されているルーティングテーブル230をルータ110が含むことと、バックボーン106が宛先120に連結されていることとを示している。
図200の例において、ルータ110は、各ネットワークサービスについて1つの、2つのIPアドレスを有する。ネットワークサービス130に対して、ルータ110はIPアドレス1.1.1.1を有し、ネットワークサービス132に対して、ルータ110は、IPアドレス3.3.3.3を有する。サービスプロバイダネットワーク104のサービスプロバイダによって、ネットワークサービス130の複数のIPアドレスが割り当てられてよい。複数の異なるサービスプロバイダは、複数の異なる自律システムであってよく、それらが複数の顧客に割り当て可能な様々なIPアドレスを有してよい。
当該例において、ユーザは、ホスト名box.netに宛てられた全てのデータを、ネットワークサービス130を通じてルーティングすることを望む。従って、図200に示されるように、ユーザは、ネットワークサービス130に「box.net」をマッピングするようテーブル112を設定する。テーブル112を設定すべく、顧客は、例えば、サービスプロバイダによって提供されたウェブポータルを使用してよい。
テーブル112内に新たなエントリが設定されると、ホスト名のIPアドレスが検索され、DNSキャッシュ214に格納される。例えば、当業者が通常使用するユーティリティ又は複数の方法によって、複数のレコードルックアップ(record lookup)を使用して、パブリックドメイン名サービスを使用して、DNS検索が実行されてよい。図200の例では、box.netはIPアドレス2.2.2.2を有し、DNSキャッシュ214はそのアドレスを反映するよう更新される。
次に、サービス及びIPアドレスに基づいて、ルータ110内のルーティングテーブル230が更新される。ルーティングテーブル230は、特定の複数の宛先サブネットマスクを複数のネクストホップIPアドレスにマッピングする。新たなホスト名が設定され、ホスト名のIPアドレスが検索された後、設定を反映すべく、新たなエントリがルーティングテーブル230に追加されてよい。具体的に、1.1.1.1であるネットワークサービス130のIPアドレスに、(2.2.2.2/32と指定された)正確なIPアドレス及びサブネットマスクをマッピングする特定のエントリが追加されてよい。
ルータ110内のルーティングテーブルが更新されると、ルータ110は、その複数のBGPピアなどのその隣接ルータに複数のメッセージを送信して、これらのルーティングテーブルをそれに応じて更新する。この場合、ルータ110は、メッセージ150及び152を顧客ネットワーク102に送信する。
メッセージ150及び152に応答して、顧客ネットワーク102上のルータは、例えば、2つのエントリを有してよい。それらは、1つは、サブネット2.2.2.2/32のためのものであり、もう1つは、(サブネットマスク0/0で指定された)他の全てのトラフィックのためのものである。顧客ネットワーク102のルータは、宛先アドレスに最も詳細にマッチするエントリを使用する。
設定が完了すると、顧客ネットワーク102上のコンピュータはbox.netへの接触を試みてよい。それが起こった場合、box.netのDNS検索が発生し、box.netのIPアドレスは2.2.2.2と決定される。コンピュータは、box.netに宛てられた複数のパケットをそのIPアドレスに送信する。次に、顧客ネットワーク102上のルータが、その宛先アドレスを有する複数のパケットに対する最も詳細なマッチは2.2.2.2/32であると決定する。そのエントリはネクストホップIPアドレス1.1.1.1にマッチし、それはネットワークサービス130に対応するIPアドレスである。このように、複数の実施形態は、特定のホスト名−この場合ではbox.net−に宛てられたデータを、特定のネットワークサービスにルーティングする。
このようにホスト名をネットワークサービスにマッピングすることで、ユーザはそのネットワークにわたってトラフィックをより良く管理できる。例えば、ユーザは、−salesforce.comなどの−特定の宛先に一定のトラフィックをルーティングして、一定レベルのサービスを実現することを望んでよい。或いは、ユーザは、様々なネットワークサービスにわたってトラフィックの平衡を保つよう望んでよい。ホスト名を使用した複数のネットワークサービスの設定は、IPアドレス又は他の手段とは対照的に、設定を比較的容易にする。
図3は、図1のシステムおよびその動作例をより詳細に示す図300である。図100及び図200において示された複数のコンポーネントに加えて、図300は、サービステーブル112及びDNSキャッシュ214がサーバ310上に配置されていることを示している。サーバ310は、ルータ110及びパブリックドメイン名サービス308に連結されており、ポータルモジュール312、DNS検索モジュール314、ポリシーモジュール316、及びリフレッシュモジュール318を含む。ルータ110はまた、アドレス変換モジュール330を含む。これらのコンポーネントの各々が順に説明される。
ポータルモジュール312は、ホスト名に宛てられたネットワークからデータを第1のネットワークサービス上にルーティングする命令をユーザから受信する。ポータルモジュール312は、例えば、顧客によってアクセス可能なウェブポータルであってよい。顧客は、そのサイトにログインしてよく、サービステーブル112内に複数のサービスマッピングをリストするインタフェースを提示されてよい。ユーザは、所望のホスト名、又はその一部を打ち込んでよい。ホスト名は、例えば、ドメイン名であってよい。例えば、ユーザはbox.net又はwww.box.netと打ち込んでよい。さらに、ユーザは、ホスト名を指定するのにワイルドカードを使用可能であってよい。例えば、ユーザは、*.box.netをサービスにマッチさせることが可能であってよい。その場合、対応する複数のIPアドレスを得るのに2回以上のDNS検索が必要なこともある。
パブリック名システムを通して解決可能なホスト名に加えて、他の複数の名前が使用されてよい。他の複数の名前は、ネットワーク上のホスト、又は複数のホストのグループを特定してよい。
ホスト名を入力した後、ユーザは、そのネットワークサービスのうちの1つを、例えば、ドロップダウンメニューから選択してよい。次に、ユーザは、当該ホスト名−ネットワークサービスのマッピングをポータルモジュール312に提出してよい。
当該ホスト名−ネットワークサービスのマッピングに加えて、ユーザはまた、いつそのマッピングが有効になるかについての複数の追加の条件を提出できる。例えば、ユーザは、ネットワークサービス132上のトラフィックが利用レベルに達している場合、当該ホスト名を有するトラフィックをネットワークサービス130に切り替えるようサービスプロバイダネットワークに命令するビジネスルールを提出できる。
いつ当該マッピングが有効になるかについての複数の追加の条件をユーザが指定する場合、ポリシーモジュール316が、複数のネットワーク属性を評価して、いつそれらの条件が満たされるかを決定してよい。一実施形態において、ポリシーモジュール316は、その条件において特定されたネットワークサービス上のトラフィックがいつ利用レベルに達したかを決定してよい。ポリシーモジュール316は、例えば、サービスプロバイダネットワーク104上のルータ110若しくは他の複数のデバイス、又は顧客ネットワーク102からデータを集めることによって、その決定を行なってよい。
ユーザが、ポータルモジュール312上の当該ホスト名−サービスのマッピングを提出する場合、提出されたホスト名に従って、DNS検索モジュール314が、そのホスト名によって特定されたサーバを指すIPアドレスを決定する。DNS検索モジュール314はまずローカルキャッシュ上で当該ホスト名を検索し、ローカルキャッシュで期限切れではないマッチが見つけられなかった場合、当該ホスト名をパブリックドメイン名サービス308上で検索する。
パブリックドメイン名サービス308は、ドメイン名システムであってよい。ドメイン名システム(DNS)は、インターネット又はプライベートネットワークに接続された複数のコンピュータ、複数のサービス、又は任意のリソースのための階層的分散型命名システムである。それは、容易に記憶されるドメイン名を、複数のコンピュータサービス及びデバイスを世界各地に配置するために必要な数値のIPアドレスに変換する。パブリック名サービス308は、複数のネームサーバを含んでよい。各ドメインは、そのドメインについての情報を発行する少なくとも1つのネームサーバと、それより下位のあらゆるドメインの複数のネームサーバを有してよい。階層の最上位は複数のルート名サーバによってサービス提供される。それらのサーバは、.netのような最上位ドメインを検索(解決)するときにクエリを行うサーバである。当業者ならば、ここで使用される複数のDNSリソースレコードが、IPv4及びIPv6の(1又は複数の)アドレス及び複数のプレフィックスリストへと最終的に解決するA、AAAA、APL、CNAMEであり得ることを認識するであろう。
一旦検索されると、関連付けられたドメインのIPアドレスはDNSキャッシュ214に格納される。パブリック名サービス308内の複数のIPアドレスは変化し得る。したがって、リフレッシュモジュール318はDNSキャッシュ内の複数のエントリに期限切れを起こさせてよい。一実施形態において、リフレッシュモジュール318は、ホスト名がドメイン名サービスから検索された後、ある時間が経過したと決定してよい。ある時間が経過したとリフレッシュモジュール318が決定した場合、ローカルキャッシュ内のホスト名のエントリは期限切れになる。エントリが期限切れになった場合、DNS検索モジュール314は直ぐに当該名前の新たなIPアドレスを要求してよい。
DNSキャッシュ214及びサービステーブル112が設定されると、ルータ110は、図2に関して上述したように、メッセージを顧客のネットワークに送信する。当該メッセージは、ホスト名のIPアドレスに宛てられたデータをネットワークサービスのIPアドレスにルーティングするようルーティングテーブルに具体的に命令する。このように、システムは、顧客ネットワーク102から発信されたホスト名へのデータを、選択されたネットワークサービスを通じて方向付ける。
顧客ネットワーク102から発信されたデータを選択されたネットワークサービスを通じて方向付けることに加えて、システムはまた、アドレス変換モジュール330を使用して、選択されたネットワークサービスに沿ってリターントラフィックを方向付けてよい。
上述したように、ルータ110は顧客ネットワーク102からの発信パケットを受信する。当該パケットは送信元IPアドレス及び宛先IPアドレスを有する。ルータ110は、ユーザが特定のネットワークサービスに対して割り当てた、DNSキャッシュ214内の複数のIPアドレスの中にその宛先IPアドレスがあるかどうかを決定する。
発信パケットが、割り当てられたホストのIPアドレスを有するとルータ110が決定した場合、アドレス変換モジュール330は、第1のパケットの送信元IPアドレスを変更して、変換済みIPアドレスで置き換える。それにより、変換済みIPアドレスに宛てられたリターントラフィックは、ユーザによって選択されたネットワークサービスにルーティングされる。次に、アドレス変換モジュール330は、変更された送信元IPアドレスを有する発信パケットをバックボーン106に転送する。
バックボーン106は、当該パケットを、任意の他のパケットと全く同じように、宛先アドレスに従って宛先120に転送する。宛先120は、データに返信してよい。そうする場合、宛先120は、アドレス変換モジュール330によって変換された送信元アドレスに返信する。そして、送信元アドレスは、ユーザによって選択されたネットワークサービスにルーティングする変換済みアドレスに変更されたので、対応する返信は、同様に、選択されたネットワークサービスにルーティングされることになる。
リターンルートにおいて、アドレス変換モジュール330は、返信を元の送信元に方向付けるようにそれを変換しなくてはならない。具体的に、ルータ110が着信パケットを受信した場合、ルータ110は、パケットがその宛先として変換済みIPアドレスを有するかどうかを決定すべく、パケットを評価する。
着信パケットが変換済みIPアドレスを有するとルータ110が決定した場合、ルータ110は、着信パケットの宛先IPアドレスを変更して、変換済みIPアドレスを元の発信パケットの送信元IPアドレスで置き換える。次に、ルータ110は、変更された宛先アドレスを有する着信パケットを転送する。
このように、アドレス変換モジュール330は、リターントラフィックを選択されたネットワークサービスを通じて方向付ける。複数の実施形態において、アドレス変換モジュール330は、2つのパブリックにアクセス可能なアドレスの間で、又は、プライベートなIPアドレス(例えば、192.168.0.0−192.168.255.255)と、パブリックにアクセス可能なアドレスとの間で変換してよい。他の実施形態では、アドレス変換モジュール330は複数のTCPポートを変換してよい。複数の送信元TCPポートの変更は、例えば、2つ以上の送信元IPが1つの変換済みIPアドレスに変更されることを可能にしてよい。この実施形態において、アドレス変換モジュール330は、トラフィックを正確な送信元IPアドレスに方向付けるべく、リターントラフィック上で異なる複数の宛先ポートを使用し得る。
アドレス変換モジュール330はルータ110上に示されているが、当業者ならば、それが、顧客ネットワーク102上のルータ、ホスト、又は他のデバイスなどの他の場所に配置されてよいことを認識するだろう。
図1−図3の図は、同じサービスプロバイダネットワーク104に接続するネットワークサービス130及び132の両方を示しているが、当業者ならば、それらが異なるサービスプロバイダからのものであり得ることを認識するであろう。その実施形態において、ルータ110は上述したように動作し、それ自身のネットワークサービスを、最も詳細なルートを提供するものと特定するであろう。
図4は、一実施形態に係る、ホスト名に基づいて複数のネットワークサービスを選択するための方法400のフローチャートである。
段階402において、ホスト名に宛てられた、顧客ネットワークからのデータをネットワークサービス上にルーティングする命令が、ユーザから受信される。上述したように、当該命令は、ホスト名−サービスのマッピングだけを含んでよい、又は、当該命令がいつ有効になるかを特定するビジネスルールもまた含んでよい。
段階402において記載されたホスト名に従って、段階404においてホスト名によって特定されたサーバを指すIPアドレスが決定される。上述したように、段階404は、キャッシュ検索を含んでよい、又は、キャッシュミスがあった場合は、ドメイン名サービスから名前を要求してよい。
段階406において、ネットワークサービスのIPアドレスが決定される。
最後に段階408において、段階404において決定されたIPアドレスに宛てられたデータをルーティングするようユーザのネットワーク上のルーティングテーブルに具体的に命令するメッセージが、段階406において決定されたIPアドレスに送信される。当該メッセージは、ネットワークサービス上にデータをルーティングするためのユーザのネットワーク上のルータの設定をもたらす。
本明細書で使用されるとき、「ユーザ」という用語は、ネットワーク接続性サービスを利用する企業の従業者などのネットワーク接続性サービスの顧客、及び、サービスプロバイダ自体のネットワークアドミニストレータの両方を包含してよい。複数のユーザが異なる複数の企業又は複数の組織に存在してもよい。
本明細書において開示された複数のテーブルは、永続的メモリを含む任意の格納型の構造メモリであってよい。複数の例において、各データベースは、リレーショナルデータベース又はファイルシステムとして実装されてよい。
図1の複数のデバイス及び複数のモジュールの各々は、ハードウェア、ソフトウェア、ファームウェア、又はそれらの任意の組合せにおいて実装されてよい。
図1の複数のデバイス及び複数のモジュールの各々は、同じ又は異なる複数のコンピューティングデバイス上に実装されてよい。そのような複数のコンピューティングデバイスは、パーソナルコンピュータ、携帯電話などのモバイルデバイス、ワークステーション、組み込みシステム、ゲームコンソール、テレビ、セットトップボックス、又は任意の他のコンピューティングデバイスを含み得るが、それらに限定されない。さらに、コンピューティングデバイスは、複数の命令を実行及び格納するための、非一時的メモリを含む、プロセッサ及びメモリを有するデバイスを含み得るが、それに限定されない。メモリは、データ及びプログラム命令を明白に具体化してよい。ソフトウェアは、1又は複数のアプリケーション及び1つのオペレーティングシステムを含んでよい。ハードウェアは、プロセッサ、メモリ、及びグラフィカルユーザインタフェースディスプレイを含み得るが、それらに限定されない。コンピューティングデバイスはまた、複数のプロセッサと、複数の共有又は別個のメモリコンポーネントとを有してよい。例えば、コンピューティングデバイスは、クラスタ化された又は分散型のコンピューティング環境又はサーバファームの一部又は全体であってよい。
「(a)」、「(b)」、「(i)」、「(ii)」等といった識別子が、異なる要素又は段階のために使用されることがある。これらの識別子は、明確さのために使用されるのであって、必ずしも、要素又は段階の順序を指定しているわけではない。
本発明は、特定の複数の機能及びそれらの関係の実装を説明する複数の機能的構成単位を用いて上述されてきた。これらの機能的構成単位の境界は、説明を簡便にすべく本明細書において任意に画定された。特定の複数の機能及びそれらの関係が適切に実行される限り、代替の境界が画定され得る。
具体的な実施形態についての前述の説明は、本発明の全般的性質を十分に明らかにしているので、他者は、本発明の全般的概念から逸脱することなく、過度の実験を行うことなく、当該技術分野の技術内の知識を適用して、そのような具体的な実施形態を様々な用途に向けて容易に変更及び/又は改作できる。したがって、そのような改作及び変更は、本明細書において提示された教示及び指導に基づいて、開示された実施形態の均等物の趣旨及び範囲内であることが意図されている。本明細書における語句又は用語は、説明のためのものであって、限定するためのものではなく、それにより、本明細書の用語又は語句は、教示及び指導に照らして当業者によって解釈されるべきものであることが理解されよう。
本発明の広さ及び範囲は、上述の例示的実施形態の何れによっても限定されるべきではなく、以下の特許請求の範囲及びその均等物のみに従って定義されるべきである。
[項目1]
ユーザのネットワークをサービスプロバイダのネットワークと接続する第1のネットワークサービス上にデータをルーティングするようネットワークを設定するための方法であって、
(a)ホスト名に宛てられた、ユーザのネットワークからのデータを、特定のネットワークサービス上にルーティングする命令を上記ユーザから受信する段階と、
(b)上記ホスト名によって特定されたサーバを指す第1のIPアドレスをホスト名に従って決定する段階と、
(c)上記特定のネットワークサービスの第2のIPアドレスを決定する段階と、
(d)上記第1のIPアドレスに宛てられたデータを上記第2のIPアドレスにルーティングするよう上記ユーザのネットワーク上のルータに具体的に命令するメッセージを上記ユーザのネットワークに送信する段階であって、それにより、上記メッセージは、上記第1のIPアドレスを包含するより一般的なルーティングエントリを有する第2のネットワークサービスよりも、上記第1のネットワークサービス上にデータをルーティングするための上記ユーザのネットワーク上のルータの設定をもたらす、段階と、
を備える方法。
[項目2]
上記決定する段階(b)は、上記第1のIPアドレスを決定すべく、ドメイン名サービス上で上記ホスト名を検索する段階を有する、項目1に記載の方法。
[項目3]
上記決定する段階(b)は、さらに、ローカルキャッシュ上で上記ホスト名を検索する段階を有し、ドメイン名サービス上で上記ホスト名を検索する上記段階は、期限切れではないマッチが上記ローカルキャッシュ上で見つけられなかった場合に発生する、項目2に記載の方法。
[項目4]
(e)上記ホスト名が上記ドメイン名サービスから検索された後、ある時間が経過したと決定する段階と、
(f)上記時間が経過したと決定された場合、上記ローカルキャッシュにおいて上記ホスト名のエントリを期限切れにする段階と、
をさらに備える項目3に記載の方法。
[項目5]
上記第1のネットワークサービス及び上記第2のネットワークサービスは、インターネットへの接続性を提供し、上記送信する段階(d)は、ボーダーゲートウェイプロトコルサービスメッセージを上記ユーザのネットワークに送信する段階を有する、項目1から4の何れか一項に記載の方法。
[項目6]
上記第2のネットワークサービスは、サービスプロバイダのネットワークを介して上記サービスプロバイダによって提供される、項目5に記載の方法。
[項目7]
(a)で受信されたデータをルーティングする上記命令は、上記第2のネットワークサービス上のトラフィックが利用レベルに達した場合、上記ホスト名を有するトラフィックを上記第1のネットワークサービスに切り替えるよう命令するビジネスルールを備え、上記方法は、さらに、
(e)上記第2のネットワークサービス上のトラフィックが上記利用レベルに達したと決定する段階を備え、
段階(b)−(d)は、上記トラフィックが、(e)において上記利用レベルに達したと決定された場合に起こる、項目6に記載の方法。
[項目8]
上記第2のネットワークサービスは、上記第1のネットワークサービスの上記サービスプロバイダとは異なる他のサービスプロバイダによって提供される、項目5から7の何れか一項に記載の方法。
[項目9]
(e)上記第1のネットワークサービス上で、送信元IPアドレス及び宛先IPアドレスを有する第1のパケットを受信する段階と、
(f)上記第1のパケットの上記宛先IPアドレスが上記第1のIPアドレスであると決定する段階と、
上記第1のパケットが上記第1のIPアドレスを有すると決定された場合、
(g)変換済みIPアドレスで置き換えるべく上記第1のパケットの上記送信元IPアドレスを変更する段階であって、それにより、上記変換済みIPアドレスに宛てられたリターントラフィックは、上記第1のネットワークサービスにルーティングされる、段階と、
(h)上記変更された送信元IPアドレスを有する上記第1のパケットを転送する段階と、
(i)上記ネットワークのサービスプロバイダから第2のパケットを受信する段階であって、上記第2のパケットは、送信元IPアドレス及び宛先IPアドレスを有する、段階と、
(j)上記第2のパケットが上記変換済みIPアドレスを有すると決定する段階と、
上記第2のパケットが上記変換済みIPアドレスを有すると決定された場合、
(k)上記第1のIPアドレスで上記変換済みIPアドレスを置き換えるべく、上記第2のパケットの上記宛先IPアドレスを変更する段階と、
(l)上記変更された宛先アドレスを有する上記第2のパケットを転送する段階であって、上記変更する段階(g)及び上記変更する段階(k)は、上記第1のネットワークサービスを通って転送されるべきリターントラフィックが上記第1のネットワークサービスにルーティングされるようにする、段階と、
をさらに備える項目1から8の何れか一項に記載の方法。
[項目10]
ユーザのネットワークをサービスプロバイダのネットワークと接続する第1のネットワークサービス上にデータをルーティングするようネットワークを設定するためのシステムであって、
ホスト名に宛てられた、上記ユーザのネットワークからのデータを上記第1のネットワークサービスにルーティングする命令をユーザから受信するポータルモジュールと、
上記ホスト名によって特定されたサーバを指す第1のIPアドレスを上記ホスト名に従って決定し、上記第1のネットワークサービスの第2のIPアドレスを決定するDNS検索モジュールと、
上記第1のIPアドレスに宛てられたデータを上記第2のIPアドレスにルーティングするようルーティングテーブルに具体的に命令するメッセージを上記ユーザのネットワークに送信するルータであって、それにより、上記メッセージは、上記第1のIPアドレスを包含するより一般的なルーティングエントリを有する第2のネットワークサービスよりも、上記第1のネットワークサービス上にデータをルーティングするための上記ユーザのネットワーク上のルータの設定をもたらす、ルータと、
を備えるシステム。
[項目11]
上記DNS検索モジュールは、ドメイン名サービス上で上記ホスト名を検索して上記第1のIPアドレスを決定する、項目10に記載のシステム。
[項目12]
DNS検索モジュールはローカルキャッシュ上で上記ホスト名を検索し、期限切れではないマッチが上記ローカルキャッシュ上で見つけられなかった場合、上記ドメイン名サービス上での上記ホスト名の上記検索が発生する、項目11に記載のシステム。
[項目13]
上記ホスト名が上記ドメイン名サービスから検索された後、ある時間が経過したと決定し、上記時間が経過したと決定された場合、上記ローカルキャッシュ内の上記ホスト名のエントリを期限切れにするリフレッシュモジュール
をさらに備える項目12に記載のシステム。
[項目14]
上記第1のネットワークサービス及び上記第2のネットワークサービスは、インターネットへの接続性を提供し、上記ルータは、ボーダーゲートウェイプロトコルサービスメッセージとして上記メッセージを上記ユーザのネットワークに送信する、項目10から13の何れか一項に記載のシステム。
[項目15]
上記第2のネットワークサービスは、サービスプロバイダのネットワークを介して上記サービスプロバイダによって提供される、項目14に記載のシステム。
[項目16]
データをルーティングする上記命令は、上記第2のネットワークサービス上のトラフィックが利用レベルに達した場合、上記ホスト名を有するトラフィックを上記第1のネットワークサービスに切り替えるよう命令するビジネスルールを含み、上記システムは、さらに、
上記第2のネットワークサービス上のトラフィックが上記利用レベルに達したと決定するポリシーモジュールを備え、
上記ルータは、上記トラフィックが、(e)において上記利用レベルに達したと決定された場合、上記メッセージを送信する、項目15に記載のシステム。
[項目17]
上記第2のネットワークサービスは、上記第1のネットワークサービスの上記サービスプロバイダとは異なる他のサービスプロバイダによって提供される、項目14から16の何れか一項に記載のシステム。
[項目18]
上記ルータは、上記第1のネットワークサービス上で、送信元IPアドレス及び宛先IPアドレスを有する第1のパケットを受信し、上記第1のパケットの上記宛先IPアドレスは上記第1のIPアドレスであると決定し、上記ルータはさらに、
上記第1のパケットが上記第1のIPアドレスを有すると上記ルータが決定する場合:(i)変換済みIPアドレスに宛てられたリターントラフィックが上記第1のネットワークサービスにルーティングされるように、上記変換済みIPアドレスで置き換えるべく上記第1のパケットの上記送信元IPアドレスを変更し、(ii)上記変更された送信元IPアドレスを有する上記第1のパケットを転送するアドレス変換モジュールを備え、
上記ルータは、上記ネットワークのサービスプロバイダから、送信元IPアドレス及び宛先IPアドレスを有する第2のパケットを受信し、上記第2のパケットが上記変換済みIPアドレスを有すると決定し、
上記アドレス変換モジュールは、上記第2のパケットが上記変換済みIPアドレスを有すると上記ルータが決定する場合:(i)上記第1のIPアドレスで上記変換済みIPアドレスを置き換えるべく上記第2のパケットの上記宛先IPアドレスを変更し、(ii)上記変更された宛先アドレスを有する上記第2のパケットを転送し、それにより、上記第1のパケットの送信元アドレス及び上記第2のパケットの宛先アドレスの上記変更は、上記第1のネットワークサービスを通って転送されるべきリターントラフィックが上記第1のネットワークサービスにルーティングされるようにする、項目10から17の何れか一項に記載のシステム。
[項目19]
ユーザのネットワークをサービスプロバイダのネットワークと接続する第1のネットワークサービス上にデータをルーティングするようネットワークを設定するための方法を少なくとも1つの機械に実行させるプログラムであって、当該方法は、
(a)ホスト名に宛てられた、上記ユーザのネットワークからのデータを特定のネットワークサービス上にルーティングする命令を上記ユーザから受信する段階と、
(b)上記ホスト名によって特定されたサーバを指す第1のIPアドレスを上記ホスト名に従って決定する段階と、
(c)上記特定のネットワークサービスの第2のIPアドレスを決定する段階と、
(d)上記第1のIPアドレスに宛てられたデータを上記第2のIPアドレスにルーティングするよう上記ユーザのネットワーク上のルータに具体的に命令するメッセージを上記ユーザのネットワークに送信する段階であって、それにより、上記メッセージは、上記第1のIPアドレスを包含するより一般的なルーティングエントリを有する第2のネットワークサービスよりも、上記第1のネットワークサービス上にデータをルーティングための上記ユーザのネットワーク上のルータの設定をもたらす、段階とを備える、
プログラム。
[項目20]
上記方法は、さらに、
(e)第1のネットワークサービス上で、送信元IPアドレス及び宛先IPアドレスを有する第1のパケットを受信する段階と、
(f)上記第1のパケットの上記宛先IPアドレスが上記第1のIPアドレスであると決定する段階と、
上記第1のパケットが上記第1のIPアドレスを有すると決定された場合:
(g)変換済みIPアドレスで置き換えるべく、上記第1のパケットの上記送信元IPアドレスを変更する段階であって、それにより、上記変換済みIPアドレスに宛てられたリターントラフィックは、上記第1のネットワークサービスにルーティングされる、段階と、
(h)上記変更された送信元IPアドレスを有する上記第1のパケットを転送する段階と、
(i)上記ネットワークのサービスプロバイダから第2のパケットを受信する段階であって、上記第2のパケットは、送信元IPアドレス及び宛先IPアドレスを有する、段階と、
(j)上記第2のパケットが上記変換済みIPアドレスを有すると決定する段階と、
上記第2のパケットが上記変換済みIPアドレスを有すると決定された場合:
(k)上記第1のIPアドレスで上記変換済みIPアドレスを置き換えるべく、上記第2のパケットの上記宛先IPアドレスを変更する段階と、
(l)上記変更された宛先アドレスを有する上記第2のパケットを転送する段階であって、上記変更する段階(g)及び上記変更する段階(k)は、上記第1のネットワークサービスを通って転送されるべきリターントラフィックが上記第1のネットワークサービスにルーティングされるようにする、段階をさらに備える、
項目19に記載のプログラム。
[項目21]
ユーザのネットワークをサービスプロバイダのネットワークと接続する第1のネットワークサービス上にデータをルーティングするようネットワークを設定するための、コンピュータによって実施される方法であって、
(a)名前によって特定されるホストに宛てられた、上記ユーザのネットワークからのデータを特定のネットワークサービスを通じてルーティングする命令をユーザから受信する段階と、
(b)上記名前によって特定されたサーバを指す第1のIPアドレスを名前に従って決定する段階と、
(c)上記特定のネットワークサービスの第2のIPアドレスを決定する段階と、
(d)上記第1のIPアドレスに宛てられたデータを上記第2のIPアドレスにルーティングするよう上記ユーザのネットワーク上のルータに具体的に命令するメッセージを上記ユーザのネットワークに送信する段階であって、それにより、上記メッセージは、上記第1のIPアドレスを包含するより一般的なルーティングエントリを有する第2のネットワークサービスよりも、上記第1のネットワークサービス上にデータをルーティングするための上記ユーザのネットワーク上のルータの設定をもたらす、段階とを備える
コンピュータによって実施される方法。

Claims (19)

  1. ユーザのネットワークをサービスプロバイダのネットワークと接続する第1のネットワークサービス上にデータをルーティングするようネットワークを設定するための方法であって、
    (a)ホスト名に宛てられた、ユーザのネットワークからのデータを、前記第1のネットワークサービス上にルーティングする命令を前記ユーザから受信する段階と、
    (b)前記ホスト名によって特定されたサーバを指す第1のIPアドレスをホスト名に従って決定する段階と、
    (c)前記第1のネットワークサービスの第2のIPアドレスを決定する段階と、
    (d)前記第1のIPアドレスに宛てられたデータを前記第2のIPアドレスにルーティングするよう前記ユーザのネットワーク上のルータに具体的に命令するメッセージを前記ユーザのネットワークに送信する段階であって、それにより、前記メッセージは、前記第1のIPアドレスを包含するより一般的なルーティングエントリを有する第2のネットワークサービスの代わりに前記第1のIPアドレスに宛てられたデータを前記第1のネットワークサービス上にルーティングするための前記ユーザのネットワーク上の前記ルータの設定をもたらす、段階と、
    を備え
    前記決定する段階(b)は、
    ローカルキャッシュ上で前記ホスト名を検索する段階と、
    期限切れではないマッチが前記ローカルキャッシュ上で見つけられなかった場合に、前記第1のIPアドレスを決定すべく、ドメイン名サービス上で前記ホスト名を検索する段階と
    を含む、方法。
  2. 記ホスト名が前記ドメイン名サービスから検索された後、ある時間が経過したと決定する段階と、
    記時間が経過したと決定された場合、前記ローカルキャッシュにおいて前記ホスト名のエントリを期限切れにする段階と、
    をさらに備える請求項に記載の方法。
  3. 前記第1のネットワークサービス及び前記第2のネットワークサービスは、インターネットへの接続性を提供し、前記送信する段階(d)は、ボーダーゲートウェイプロトコルサービスメッセージを前記ユーザのネットワークに送信する段階を有し、
    随意に、前記第2のネットワークサービスは、サービスプロバイダのネットワークを介して前記サービスプロバイダによって提供される、請求項1または2に記載の方法。
  4. (a)で受信されたデータをルーティングする前記命令は、前記第2のネットワークサービス上のトラフィックが利用レベルに達した場合、前記ホスト名を有するトラフィックを前記第1のネットワークサービスに切り替えるよう命令するビジネスルールを備え、前記方法は、さらに、
    記第2のネットワークサービス上のトラフィックが前記利用レベルに達したと決定する段階を備え、
    段階(b)−(d)は、前記トラフィックが、前記利用レベルに達したと決定された場合に起こる、請求項1からの何れか一項に記載の方法。
  5. 前記第2のネットワークサービスは、前記第1のネットワークサービスの前記サービスプロバイダとは異なる他のサービスプロバイダによって提供される、請求項又はに記載の方法。
  6. (e)前記第1のネットワークサービス上で、送信元IPアドレス及び宛先IPアドレスを有する第1のパケットを受信する段階と、
    (f)前記第1のパケットの前記宛先IPアドレスが前記第1のIPアドレスであると決定する段階と、
    前記第1のパケットが前記第1のIPアドレスを有すると決定された場合、
    (g)変換済みIPアドレスで置き換えるべく前記第1のパケットの前記送信元IPアドレスを変更する段階であって、それにより、前記変換済みIPアドレスに宛てられたリターントラフィックは、前記第1のネットワークサービスにルーティングされる、段階と、
    (h)前記変更された送信元IPアドレスを有する前記第1のパケットを転送する段階と、
    (i)前記ネットワークのサービスプロバイダから第2のパケットを受信する段階であって、前記第2のパケットは、送信元IPアドレス及び宛先IPアドレスを有する、段階と、
    (j)前記第2のパケットの宛先IPアドレスが前記変換済みIPアドレスを有すると決定する段階と、
    前記第2のパケットが前記変換済みIPアドレスを有すると決定された場合、
    (k)前記第1のパケットの前記送信元IPアドレスで前記変換済みIPアドレスを置き換えるべく、前記第2のパケットの前記宛先IPアドレスを変更する段階と、
    (l)前記変更された宛先IPアドレスを有する前記第2のパケットを転送する段階であって、前記変更する段階(g)及び前記変更する段階(k)は、前記第1のネットワークサービスを通って転送されたリターントラフィックが前記第1のネットワークサービスにルーティングバックされるようにする、段階と、
    をさらに備える請求項1からの何れか一項に記載の方法。
  7. ユーザのネットワークをサービスプロバイダのネットワークと接続する第1のネットワークサービス上にデータをルーティングするようネットワークを設定するためのシステムであって、
    ホスト名に宛てられた、前記ユーザのネットワークからのデータを前記第1のネットワークサービスにルーティングする命令をユーザから受信するポータルモジュールと、
    前記ホスト名によって特定されたサーバを指す第1のIPアドレスを前記ホスト名に従って決定し、前記第1のネットワークサービスの第2のIPアドレスを決定するDNS検索モジュールと、
    前記第1のIPアドレスに宛てられたデータを前記第2のIPアドレスにルーティングするようルーティングテーブルに具体的に命令するメッセージを前記ユーザのネットワークに送信するルータであって、それにより、前記メッセージは、前記第1のIPアドレスを包含するより一般的なルーティングエントリを有する第2のネットワークサービスの代わりに、前記第1のIPアドレスに宛てられたデータを前記第1のネットワークサービス上にルーティングするための前記ユーザのネットワーク上の前記ルータの設定をもたらす、ルータと、
    を備えるシステム。
  8. 前記DNS検索モジュールは、ドメイン名サービス上で前記ホスト名を検索して前記第1のIPアドレスを決定する、請求項に記載のシステム。
  9. DNS検索モジュールはローカルキャッシュ上で前記ホスト名を検索し、期限切れではないマッチが前記ローカルキャッシュ上で見つけられなかった場合、前記ドメイン名サービス上での前記ホスト名の前記検索が発生する、請求項に記載のシステム。
  10. 前記ホスト名が前記ドメイン名サービスから検索された後、ある時間が経過したと決定し、前記時間が経過したと決定された場合、前記ローカルキャッシュ内の前記ホスト名のエントリを期限切れにするリフレッシュモジュールをさらに備え、請求項に記載のシステム。
  11. 前記第1のネットワークサービス及び前記第2のネットワークサービスは、インターネットへの接続性を提供し、前記ルータは、ボーダーゲートウェイプロトコルサービスメッセージとして前記メッセージを前記ユーザのネットワークに送信し、
    随意に、前記第2のネットワークサービスは、サービスプロバイダのネットワークを介して前記サービスプロバイダによって提供される、請求項から10の何れか一項に記載のシステム。
  12. データをルーティングする前記命令は、前記第2のネットワークサービス上のトラフィックが利用レベルに達した場合、前記ホスト名を有するトラフィックを前記第1のネットワークサービスに切り替えるよう命令するビジネスルールを含み、前記システムは、さらに、
    前記第2のネットワークサービス上のトラフィックが前記利用レベルに達したと決定するポリシーモジュールを備え、
    前記ルータは、前記トラフィックが、前記利用レベルに達したと決定された場合、前記メッセージを送信する、請求項から11の何れか一項に記載のシステム。
  13. 前記第2のネットワークサービスは、前記第1のネットワークサービスの前記サービスプロバイダとは異なる他のサービスプロバイダによって提供される、請求項11又は12に記載のシステム。
  14. 前記ルータは、前記第1のネットワークサービス上で、送信元IPアドレス及び宛先IPアドレスを有する第1のパケットを受信し、前記第1のパケットの前記宛先IPアドレスは前記第1のIPアドレスであると決定し、前記ルータはさらに、
    前記第1のパケットが前記第1のIPアドレスを有すると前記ルータが決定する場合:(i)変換済みIPアドレスに宛てられたリターントラフィックが前記第1のネットワークサービスにルーティングされるように、前記変換済みIPアドレスで置き換えるべく前記第1のパケットの前記送信元IPアドレスを変更し、(ii)前記変更された送信元IPアドレスを有する前記第1のパケットを転送するアドレス変換モジュールを備え、
    前記ルータは、前記ネットワークのサービスプロバイダから、送信元IPアドレス及び宛先IPアドレスを有する第2のパケットを受信し、前記第2のパケットが前記変換済みIPアドレスを有すると決定し、
    前記アドレス変換モジュールは、前記第2のパケットが前記変換済みIPアドレスを有すると前記ルータが決定する場合:(i)前記送信元IPアドレスで前記変換済みIPアドレスを置き換えるべく前記第2のパケットの前記宛先IPアドレスを変更し、(ii)前記変更された宛先IPアドレスを有する前記第2のパケットを転送し、それにより、前記第1のパケットの送信元アドレス及び前記第2のパケットの宛先アドレスの前記変更は、前記第1のネットワークサービスを通って転送されリターントラフィックが前記第1のネットワークサービスにルーティングバックされるようにする、請求項から13の何れか一項に記載のシステム。
  15. ユーザのネットワークをサービスプロバイダのネットワークと接続する第1のネットワークサービス上にデータをルーティングするようネットワークを設定するための方法を少なくとも1つの機械に実行させるプログラムであって、当該方法は、
    (a)ホスト名に宛てられた、前記ユーザのネットワークからのデータを前記第1のネットワークサービス上にルーティングする命令を前記ユーザから受信する段階と、
    (b)前記ホスト名によって特定されたサーバを指す第1のIPアドレスを前記ホスト名に従って決定する段階と、
    (c)前記第1のネットワークサービスの第2のIPアドレスを決定する段階と、
    (d)前記第1のIPアドレスに宛てられたデータを前記第2のIPアドレスにルーティングするよう前記ユーザのネットワーク上のルータに具体的に命令するメッセージを前記ユーザのネットワークに送信する段階であって、それにより、前記メッセージは、前記第1のIPアドレスを包含するより一般的なルーティングエントリを有する第2のネットワークサービスの代わりに前記第1のIPアドレスに宛てられたデータを前記第1のネットワークサービス上にルーティングための前記ユーザのネットワーク上の前記ルータの設定をもたらす、段階とを備え、
    前記決定する段階(b)は、
    ローカルキャッシュ上で前記ホスト名を検索する段階と、
    期限切れではないマッチが前記ローカルキャッシュ上で見つけられなかった場合に、前記第1のIPアドレスを決定すべく、ドメイン名サービス上で前記ホスト名を検索する段階と
    を含む、
    プログラム。
  16. 前記方法は、さらに、
    (e)第1のネットワークサービス上で、送信元IPアドレス及び宛先IPアドレスを有する第1のパケットを受信する段階と、
    (f)前記第1のパケットの前記宛先IPアドレスが前記第1のIPアドレスであると決定する段階と、
    前記第1のパケットが前記第1のIPアドレスを有すると決定された場合:
    (g)変換済みIPアドレスで置き換えるべく、前記第1のパケットの前記送信元IPアドレスを変更する段階であって、それにより、前記変換済みIPアドレスに宛てられたリターントラフィックは、前記第1のネットワークサービスにルーティングされる、段階と、
    (h)前記変更された送信元IPアドレスを有する前記第1のパケットを転送する段階と、
    (i)前記ネットワークのサービスプロバイダから第2のパケットを受信する段階であって、前記第2のパケットは、送信元IPアドレス及び宛先IPアドレスを有する、段階と、
    (j)前記第2のパケットが前記変換済みIPアドレスを有すると決定する段階と、
    前記第2のパケットが前記変換済みIPアドレスを有すると決定された場合:
    (k)前記第1のパケットの前記送信元IPアドレスで前記変換済みIPアドレスを置き換えるべく、前記第2のパケットの前記宛先IPアドレスを変更する段階と、
    (l)前記変更された宛先IPアドレスを有する前記第2のパケットを転送する段階であって、前記変更する段階(g)及び前記変更する段階(k)は、前記第1のネットワークサービスを通って転送されたリターントラフィックが前記第1のネットワークサービスにルーティングバックされるようにする、段階をさらに備える、
    請求項15に記載のプログラム。
  17. ユーザのネットワークをサービスプロバイダのネットワークと接続する第1のネットワークサービス上にデータをルーティングするようネットワークを設定するための方法であって、
    (a)名前によって特定されるホストに宛てられた、前記ユーザのネットワークからのデータを第1のネットワークサービスを通じてルーティングする命令をユーザから受信する段階と、
    (b)前記名前によって特定されたサーバを指す第1のIPアドレスを名前に従って決定する段階と、
    (c)前記第1のネットワークサービスの第2のIPアドレスを決定する段階と、
    (d)前記第1のIPアドレスに宛てられたデータを前記第2のIPアドレスにルーティングするよう前記ユーザのネットワーク上のルータに具体的に命令するメッセージを前記ユーザのネットワークに送信する段階であって、それにより、前記メッセージは、前記第1のIPアドレスを包含するより一般的なルーティングエントリを有する第2のネットワークサービスよりも、前記第1のネットワークサービス上にデータをルーティングするための前記ユーザのネットワーク上の前記ルータの設定をもたらす、段階とを備え
    前記決定する段階(b)は、
    ローカルキャッシュ上で前記名前を検索する段階を含み、期限切れではないマッチが前記ローカルキャッシュ上で見つけられなかった場合に、ドメイン名サービス上で前記名前を検索する段階が発生する、
    方法。
  18. 前記サービスプロバイダのネットワークは、サービスプロバイダにより提供され、
    (a)において受信したデータをルーティングする前記命令は、第2のネットワークサービス上のトラフィックが利用レベルに達した場合、ホスト名に宛てられるデータを前記第1のネットワークサービスに切り替えるよう命令するビジネスルールを有し、前記第2のネットワークサービスは、サービスプロバイダのネットワークを介して前記サービスプロバイダにより提供され、前記第1のネットワークサービス及び前記第2のネットワークサービスは、インターネットへの接続性を提供し、
    前記方法は、
    前記第2のネットワークサービス上のトラフィックが前記利用レベルに達したことを決定する段階と、
    前記トラフィックが前記利用レベルに達したことが決定された場合に、前記段階(b)から前記段階(d)を実行する段階と
    をさらに備え、
    前記決定する段階(b)は、
    前記第1のIPアドレスを決定すべく、ドメイン名サービス上で前記名前を検索する段階をさらに含む、請求項17に記載の方法。
  19. (e)前記第1のネットワークサービス上で第1のパケットを受信する段階であって、前記第1のパケットは、送信元IPアドレス及び宛先IPアドレスを有する、段階と、
    (f)前記第1のパケットの前記宛先IPアドレスが前記第1のIPアドレスであると決定する段階と、
    前記第1のパケットが前記第1のIPアドレスを有すると決定された場合、
    (g)変換済みIPアドレスで置き換えるべく前記第1のパケットの前記送信元IPアドレスを変更する段階であって、それにより、前記変換済みIPアドレスに宛てられたリターントラフィックは、前記第1のネットワークサービスにルーティングされる、段階と、
    (h)前記変更された送信元IPアドレスを有する前記第1のパケットを転送する段階と、
    (i)前記ネットワークのサービスプロバイダから第2のパケットを受信する段階であって、前記第2のパケットは、送信元IPアドレス及び宛先IPアドレスを有する、段階と、
    (j)前記第2のパケットの宛先IPアドレスが前記変換済みIPアドレスを有すると決定する段階と、
    前記第2のパケットが前記変換済みIPアドレスを有すると決定された場合、
    (k)前記第1のパケットの前記送信元IPアドレスで前記変換済みIPアドレスを置き換えるべく前記第2のパケットの前記宛先IPアドレスを変更する段階と、
    (l)前記変更された宛先IPアドレスを有する前記第2のパケットを転送する段階であって、前記変更する段階(g)及び前記変更する段階(k)は、前記第1のネットワークサービスを通じて転送されたリターントラフィックが前記第1のネットワークサービスにルーティングバックされるようにする、段階と
    をさらに備える、請求項17又は18に記載の方法。
JP2016552502A 2014-02-28 2015-02-19 ホスト名に基づいたネットワークサービスの選択 Active JP6545695B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US14/193,768 US8824299B1 (en) 2014-02-28 2014-02-28 Selecting network services based on hostname
US14/193,768 2014-02-28
US14/448,703 2014-07-31
US14/448,703 US9325611B2 (en) 2014-02-28 2014-07-31 Selecting network services based on hostname
PCT/US2015/016659 WO2015130552A1 (en) 2014-02-28 2015-02-19 Selecting network services based on hostname

Publications (3)

Publication Number Publication Date
JP2017508380A JP2017508380A (ja) 2017-03-23
JP2017508380A5 JP2017508380A5 (ja) 2018-03-29
JP6545695B2 true JP6545695B2 (ja) 2019-07-17

Family

ID=51400032

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016552502A Active JP6545695B2 (ja) 2014-02-28 2015-02-19 ホスト名に基づいたネットワークサービスの選択

Country Status (7)

Country Link
US (4) US8824299B1 (ja)
EP (1) EP2913985B1 (ja)
JP (1) JP6545695B2 (ja)
CN (1) CN106133714B (ja)
CA (1) CA2883351C (ja)
HK (1) HK1214043A1 (ja)
WO (1) WO2015130552A1 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8671221B2 (en) * 2010-11-17 2014-03-11 Hola Networks Ltd. Method and system for increasing speed of domain name system resolution within a computing device
US8824299B1 (en) 2014-02-28 2014-09-02 tw telecom holdings, inc. Selecting network services based on hostname
EP3062490B1 (de) * 2015-02-27 2018-07-18 Siemens Aktiengesellschaft Verfahren zur Datenübermittlung innerhalb eines industriellen Automatisierungssystems und Kommunikationsgerät
US9961107B2 (en) * 2016-02-19 2018-05-01 Secureworks Corp. System and method for detecting and monitoring persistent events
US10361931B2 (en) * 2016-06-30 2019-07-23 At&T Intellectual Property I, L.P. Methods and apparatus to identify an internet domain to which an encrypted network communication is targeted
US10298543B2 (en) * 2016-12-12 2019-05-21 Verisign, Inc. Real-time association of a policy-based firewall with a dynamic DNS hostname
US10873498B2 (en) * 2017-10-23 2020-12-22 Hewlett Packard Enterprise Development Lp Server network interface level failover
CN108183978B (zh) * 2018-03-29 2021-01-22 北京环境特性研究所 一种通信设备ip地址配置方法及通信设备
CN112913196B (zh) * 2018-10-30 2023-06-06 慧与发展有限责任合伙企业 用云服务的虚拟ip地址的软件定义的广域网上行链路选择
US11057308B2 (en) * 2019-09-09 2021-07-06 Cisco Technology, Inc. User- and application-based network treatment policies
US11818104B2 (en) * 2022-03-01 2023-11-14 Netnut, Ltd. Anonymous proxying

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6625641B1 (en) * 1996-06-03 2003-09-23 Sun Microsystems, Inc. Method and apparatus for providing client support without installation of server software
JP2000101652A (ja) * 1998-09-24 2000-04-07 Nippon Telegr & Teleph Corp <Ntt> 情報配送方法及び装置
JP2001237992A (ja) * 2000-02-22 2001-08-31 Nippon Telegraph & Telephone West Corp 通信サービス選択装置
CA2432589C (en) 2000-12-22 2008-12-02 Research In Motion Limited Wireless router system and method
EP2290916B1 (en) 2001-09-28 2015-12-16 Level 3 CDN International, Inc. Configurable adaptive global traffic control and management
US7133365B2 (en) 2001-11-02 2006-11-07 Internap Network Services Corporation System and method to provide routing control of information over networks
JP2003150483A (ja) * 2001-11-14 2003-05-23 Nippon Telegr & Teleph Corp <Ntt> コンテンツ配信システム
US7529815B2 (en) * 2003-11-24 2009-05-05 Cisco Technology, Inc. Methods and apparatus supporting configuration in a network
US7542461B2 (en) * 2004-04-19 2009-06-02 Cisco Technology, Inc. Method and apparatus for dynamically determining when to use quality of service reservation in internet media applications
US7433362B2 (en) * 2004-11-05 2008-10-07 Sbc Knowledge Ventures, L.P. System and method for SONET NSAP addressing
JP2007193564A (ja) * 2006-01-19 2007-08-02 Nec Corp コンテンツ取得システム、サーバ及びこれらを用いたコンテンツ取得方法
US20080060054A1 (en) 2006-09-05 2008-03-06 Srivastava Manoj K Method and system for dns-based anti-pharming
US9215217B2 (en) * 2008-12-05 2015-12-15 Suhayya Abu-Hakima and Kenneth E. Grigg Auto-discovery of diverse communications devices for alert broadcasting
US8230115B2 (en) * 2007-12-28 2012-07-24 Schneider Automation Inc. Cable redundancy with a networked system
CN102859934B (zh) * 2009-03-31 2016-05-11 考持·维 网络可接入计算机服务的接入管理和安全保护系统和方法
US8732268B2 (en) 2011-04-19 2014-05-20 Microsoft Corporation Global traffic management using modified hostname
CN102316028B (zh) * 2011-08-24 2014-06-04 华为技术有限公司 发送因特网协议分组的方法及装置
JP6276183B2 (ja) * 2011-09-15 2018-02-07 フィッシャー−ローズマウント システムズ,インコーポレイテッド 互換性がないネットワークルーティングプロトコルを使用する通信ネットワークにわたるデータフレームの伝達
CN102510414A (zh) * 2011-11-17 2012-06-20 华为数字技术有限公司 一种传递主机名的方法和装置
US9083709B2 (en) * 2012-05-11 2015-07-14 Cisco Technology, Inc. Virtual internet protocol migration and load balancing
EP2896159B1 (en) * 2012-09-17 2019-11-06 Netsweeper (Barbados) Inc. Network address and hostname mapping in policy service
US8824299B1 (en) * 2014-02-28 2014-09-02 tw telecom holdings, inc. Selecting network services based on hostname
US9838316B2 (en) * 2015-03-05 2017-12-05 Juniper Networks, Inc. Overload functionality in overlay networks

Also Published As

Publication number Publication date
US20160212039A1 (en) 2016-07-21
US9325611B2 (en) 2016-04-26
EP2913985B1 (en) 2017-04-26
CA2883351A1 (en) 2015-04-16
WO2015130552A1 (en) 2015-09-03
EP2913985A1 (en) 2015-09-02
US20170310578A1 (en) 2017-10-26
CN106133714A (zh) 2016-11-16
US20150249598A1 (en) 2015-09-03
US8824299B1 (en) 2014-09-02
CA2883351C (en) 2017-05-09
HK1214043A1 (zh) 2016-07-15
US9667529B2 (en) 2017-05-30
CN106133714B (zh) 2020-03-20
US10298486B2 (en) 2019-05-21
JP2017508380A (ja) 2017-03-23

Similar Documents

Publication Publication Date Title
JP6545695B2 (ja) ホスト名に基づいたネットワークサービスの選択
US10419287B2 (en) Using virtual networking devices and routing information to associate network addresses with computing nodes
US10225146B2 (en) Using virtual networking devices to manage routing information
US10205698B1 (en) Source-dependent address resolution
US9385949B2 (en) Routing controlled by subnet managers
EP3171556B1 (en) Method and apparatus for setting network rule entry
US7154891B1 (en) Translating between globally unique network addresses
US10440057B2 (en) Methods, apparatus and systems for processing service requests
US11252126B1 (en) Domain name resolution in environment with interconnected virtual private clouds
US20130111040A1 (en) Auto-Split DNS
US10887227B2 (en) Methods and apparatuses for routing data packets in a network topology
US20150012664A1 (en) Routing data based on a naming service
Chown et al. IPv6 home networking architecture principles
Troan et al. IPv6 multihoming without network address translation
Cisco appletalk event-logging to appletalk zone
GB2462939A (en) Email communications system having a secondary wireless link with static IP addresses
Park et al. DNS configuration in IPv6: approaches, analysis, and deployment scenarios
Lee et al. Scaling the number of DNS root servers with Internet
KR100560756B1 (ko) 분산 구조 라우터의 가상 랜 지원 방법 및 그 장치
JP3708085B2 (ja) Dns問い合わせ装置およびdns問い合わせ方法
Clinton et al. Topic 109: Networking Fundamentals
Miles et al. RFC 7157: IPv6 Multihoming without Network Address Translation
Nemeth et al. Hierarchical routing on unstructured identifiers

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180219

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180219

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190124

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190205

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190507

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190521

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190619

R150 Certificate of patent or registration of utility model

Ref document number: 6545695

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250