JP2007527068A - 少なくとも2つの計算装置間の接続を設定する際のアドレス及びポート番号アブストラクション - Google Patents
少なくとも2つの計算装置間の接続を設定する際のアドレス及びポート番号アブストラクション Download PDFInfo
- Publication number
- JP2007527068A JP2007527068A JP2007501425A JP2007501425A JP2007527068A JP 2007527068 A JP2007527068 A JP 2007527068A JP 2007501425 A JP2007501425 A JP 2007501425A JP 2007501425 A JP2007501425 A JP 2007501425A JP 2007527068 A JP2007527068 A JP 2007527068A
- Authority
- JP
- Japan
- Prior art keywords
- name
- application
- connection
- port number
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/45—Network directories; Name-to-address mapping
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/161—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
- H04L69/162—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields involving adaptations of sockets based mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2101/00—Indexing scheme associated with group H04L61/00
- H04L2101/60—Types of network addresses
- H04L2101/618—Details of network addresses
- H04L2101/663—Transport layer addresses, e.g. aspects of transmission control protocol [TCP] or user datagram protocol [UDP] ports
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
本発明は、第1及び第2装置上で実行されるアプリケーションのためアドレス及びポート番号の使用を抽象化する方法、計算装置、計算装置システム及びコンピュータプログラムプロダクトに関する。本システムは、第1装置におけるアプリケーションからのサービスとソケットを結びつけるリクエストを受信し、サービス名を取得し、ポート番号とサービス名との間の結び付けを有するリソースレコードを生成し、ソケットを生成し、それをポート番号に結びつけ、レコードを第1装置に関する決定ユニットに送信する第1装置と、第2装置におけるアプリケーションから接続に対するリクエストを受信し、サービス名に関するクエリを決定ユニットに送信し、クエリに対する応答として第1装置に関するアドレス及びポート番号を受信する第2装置とを有する。
Description
本発明は、一般に計算装置間の通信の分野に関し、より詳細には、2つの計算装置間の接続を設定する際のアドレス及びポート番号の使用のアブストラクション(abstraction)に関する。
コンピュータ通信の分野では、異なる装置によって使用されるための利用可能なパブリックアドレスが通常不足している。これは、ローカルシステム全体に使用される1つのみ又は少数のパブリックアドレスしか有しない多数のローカルシステムをもたらし、このとき、ローカルシステムは、これら少数のアドレスを制御するゲートウェイを介しグローバルネットワークと通信する。通常、このようなゲートウェイは、この場合にはローカルネットワークの装置を通信するためのローカルアドレッシングシステムを使用するであろう。
グローバルネットワークを介した他の装置とローカルネットワーク内のこのような装置からのセッションを開始するため、ゲートウェイにはNAPT(Network Address and Port Translator)ユニットを設けることが可能であり、NAPTユニットは、他の装置との通信のため、ローカルアドレスをグローバルアドレスに変換すると共に、ローカルアドレスに関するポート番号をグローバルアドレスに関するポート番号に変換する。このとき、ローカルネットワーク内の装置はまた、1つのみのアドレスを用いてローカルネットワークの外部の装置とのセッションを開始することが可能である。このとき、このユニットはまた、いわゆるDNS_ALG(Domain Name System_Application Level Gateway)と組み合わせることが可能であり、それは、サービス名と装置に関するクエリに対するレスポンスのペイロードにおいて、ローカルネットワークのアドレスとポート番号をグローバルネットワークのアドレスとポート番号に置換し、その反対の置換もする。しかしながら、DNS_ALGは、プロトコル/アプリケーションに固有のものであり、異なるプロトコル/アプリケーションに対するアドレス及びポート番号の変換を可能にするため、異なるALGが実現される必要がある。さらに、周知のポート番号の使用など、スクランブリングに関してALGによって処理可能な制限がプロトコルに適用される。
既存の他の装置として、いわゆるDNS(Domain Name System)SRV(Service)が存在する。それは、インターネットソサイエティによって、RFC2782におけるA.Gulbrandsen,P.Vixie and L.Esibovによる2000年2月の“DNS SRV RR”に記載されている。DNS SRVは、装置及びサービスの名称に関するクエリを受け付け、当該クエリの結果としてアドレス及びポート番号を返す。このDNS SRV装置によって、セッションを開始するためコンタクトすべき装置のアドレス及びポート番号を取得することが可能となる。
既存のさらなる他の装置として、RSIP(Realm−Specific Internet Protocol)装置が存在する。この装置は、アドレス変換を提供する他の方法を使用する。RSIPは、ローカルネットワーク内のホストによってオープンされるすべてのポートのマッピングをリクエストする。インバウンド又はアウトバウンド通信のためポートがオープンされると、ローカルポート/アドレスとグローバルポート/アドレスとの間のマッピングが直接的に生成される。ローカルネットワーク内のホストのオペレーティングシステムが当該マッピングを知っているという事実により、それは、接続に基づきペイロード内に含まれる必要がある正確なアドレス/ポート情報を提供することが可能であり、ローカルネットワーク内のアドレッシング情報がローカル通信のために含められ、グローバルネットワーク内のアドレッシング情報が外部の通信、すなわち、ローカルネットワークの外部の通信のために含められることを意味する。このように、RSIPを使用する際には、ALGは不要である。
しかしながら、RSIPを使用する際には、アドレス情報はある範囲内のみ有効である。例えば、ローカル通信のペイロード内に含まれるアドレス情報は、プライベートネットワーク内のみで有効である。少なくとも2つの部分がローカルネットワークに存在し、少なくとも1つの他の部分が他のネットワークに存在する分散化アプリケーションが使用されるとき、ローカルネットワークの部分のアドレッシング情報がローカルネットワークの他の部分によってグローバルネットワーク内の部分にわたされる場合、問題が生じる。この場合、アドレッシング情報が変換される必要がある。
従って、装置間のアプリケーションに固有の通信に関するアドレス変換問題を解決する必要がある。
従って、アプリケーションは、少なくとも2つの装置の間の接続を設定する必要がある。当該接続の設定では、異なるネットワークによって提供される異なるアドレッシング領域のために生じる可能性があるアドレス変換問題を考慮する必要なく、この設定が実行されることを可能にする必要がある。
従って、本発明の課題は、当該装置が異なるアドレッシング領域に設けられているか否かとは独立に機能する異なるネットワークに設けられる少なくとも2つの計算装置の間の接続を設定可能にする機構を提供することである。
本発明の第1の特徴によると、上記課題は、少なくとも第1装置と第2装置との上で実行されるアプリケーションについてアドレス及びポート番号の使用を抽象化する方法であって、
前記第1装置における前記アプリケーションから、ソケットをサービスに結びつけるためのリクエストを受信するステップと、
前記装置間の接続に使用されるアプリケーション固有のサービス名を取得するステップと、
少なくとも一方では前記第1装置のポート番号と他方では前記アプリケーション固有のサービス名との間の結び付けを有するリソースレコードを生成するステップと、
ソケットを生成し、それを前記ポート番号に結びつけるステップと、
前記リソースレコードの関連付けされたローカルなネーム・サービス決定ユニットへの送信を、前記第2装置において実行されるアプリケーションが前記第1装置のアプリケーション固有のサービス名に関するクエリを前記ネーム・サービス決定ユニットに送信することを介して、接続に使用するため前記第1装置に関するアドレス及びポート番号を取得することを可能にするため、前記リソースレコードが前記ネーム・サービス決定ユニットに格納することができるように指示するステップと、
を有することを特徴とする方法によって得られる。
前記第1装置における前記アプリケーションから、ソケットをサービスに結びつけるためのリクエストを受信するステップと、
前記装置間の接続に使用されるアプリケーション固有のサービス名を取得するステップと、
少なくとも一方では前記第1装置のポート番号と他方では前記アプリケーション固有のサービス名との間の結び付けを有するリソースレコードを生成するステップと、
ソケットを生成し、それを前記ポート番号に結びつけるステップと、
前記リソースレコードの関連付けされたローカルなネーム・サービス決定ユニットへの送信を、前記第2装置において実行されるアプリケーションが前記第1装置のアプリケーション固有のサービス名に関するクエリを前記ネーム・サービス決定ユニットに送信することを介して、接続に使用するため前記第1装置に関するアドレス及びポート番号を取得することを可能にするため、前記リソースレコードが前記ネーム・サービス決定ユニットに格納することができるように指示するステップと、
を有することを特徴とする方法によって得られる。
本発明の第2の特徴によると、上記課題はまた、少なくとも第1装置と第2装置上で実行されるアプリケーションのためアドレス及びポート番号の使用を抽象化する第1計算装置であって、
前記第1装置におけるアプリケーションからのサービスにソケットを結びつけるリクエストを受信し、前記装置間の接続に使用されるアプリケーション固有のサービス名を取得し、少なくとも一方において自らのポート番号と他方において前記アプリケーション固有のサービス名との間の結びつきを有するリソースレコードを生成し、ソケットを生成し、それを前記ポート番号に結びつけ、前記リソースレコードの前記第1装置に関するローカルなネーム・サービス決定ユニットへの送信を、前記第2装置におけるアプリケーションが前記第1装置の少なくとも前記アプリケーション固有なサービス名に関するクエリによって、通信に使用される前記第1装置に関するアドレス及びポート番号を取得することが可能となるように、前記リソースレコードが前記ネーム・サービス決定ユニットに格納することが可能となるように指示されるよう構成されるソケットレイヤエンジンを有することを特徴とする第1計算装置によって達成される。
前記第1装置におけるアプリケーションからのサービスにソケットを結びつけるリクエストを受信し、前記装置間の接続に使用されるアプリケーション固有のサービス名を取得し、少なくとも一方において自らのポート番号と他方において前記アプリケーション固有のサービス名との間の結びつきを有するリソースレコードを生成し、ソケットを生成し、それを前記ポート番号に結びつけ、前記リソースレコードの前記第1装置に関するローカルなネーム・サービス決定ユニットへの送信を、前記第2装置におけるアプリケーションが前記第1装置の少なくとも前記アプリケーション固有なサービス名に関するクエリによって、通信に使用される前記第1装置に関するアドレス及びポート番号を取得することが可能となるように、前記リソースレコードが前記ネーム・サービス決定ユニットに格納することが可能となるように指示されるよう構成されるソケットレイヤエンジンを有することを特徴とする第1計算装置によって達成される。
本発明の第3の特徴によると、上記課題はまた、少なくとも第1装置と第2装置上で実行されるアプリケーションのためアドレス及びポート番号の使用を抽象化する第2計算装置であって、
前記第2装置におけるアプリケーションから接続に対するリクエストを受信し、一方では前記第1装置のアドレス及びポート番号と他方では少なくとも前記アプリケーション固有のサービス名との間の結びつきを有するリソースレコードを有する前記第1装置に関するネーム・サービス決定ユニットへの前記第1装置に関する少なくともアプリケーション固有のサービス名に関するクエリの送信を指示し、接続の設定において使用するため、前記クエリへの応答として前記第1装置に関するアドレス及びポート番号を、前記接続が前記受信するアドレス及びポート番号を用いて設定することが可能となるように受信するよう構成されるソケットレイヤエンジンを有することを特徴とする第2計算装置によって達成される。
前記第2装置におけるアプリケーションから接続に対するリクエストを受信し、一方では前記第1装置のアドレス及びポート番号と他方では少なくとも前記アプリケーション固有のサービス名との間の結びつきを有するリソースレコードを有する前記第1装置に関するネーム・サービス決定ユニットへの前記第1装置に関する少なくともアプリケーション固有のサービス名に関するクエリの送信を指示し、接続の設定において使用するため、前記クエリへの応答として前記第1装置に関するアドレス及びポート番号を、前記接続が前記受信するアドレス及びポート番号を用いて設定することが可能となるように受信するよう構成されるソケットレイヤエンジンを有することを特徴とする第2計算装置によって達成される。
本発明の第4の特徴によると、上記課題はまた、少なくとも第1装置と第2装置上で実行されるアプリケーションのためアドレス及びポート番号の使用を抽象化する計算装置のシステムであって、
前記第1装置におけるアプリケーションからのサービスとソケットを結びつけるリクエストを受信し、前記装置間の接続に使用されるアプリケーション固有のサービス名を取得し、一方で前記第1装置の少なくとも自らのポート番号と他方において前記アプリケーション固有のサービス名との間の結び付けを有するリソースレコードを生成し、ソケットを生成し、それを前記ポート番号に結びつけ、前記リソースレコードの前記第1装置に関するローカルなネーム・サービス決定ユニットへの送信を、前記リソースレコードが前記ネーム・サービス決定ユニットに格納することが可能となるように指示するよう構成されるソケットレイヤエンジンを有する第1計算装置と、
前記第2装置におけるアプリケーションから接続に対するリクエストを受信し、前記第1装置に関するネーム・サービス決定ユニットへの前記第1装置に関するアプリケーション固有のサービス名に関するクエリの送信を指示し、前記クエリに対する応答として接続を設定するのに使用するため、前記第1装置に関するアドレス及びポート番号を、前記接続が前記受信するアドレス及びポート番号を用いて設定することが可能となるように受信するよう構成されるソケットレイヤエンジンを有する第2計算装置と、
を有することを特徴とするシステムによって達成される。
前記第1装置におけるアプリケーションからのサービスとソケットを結びつけるリクエストを受信し、前記装置間の接続に使用されるアプリケーション固有のサービス名を取得し、一方で前記第1装置の少なくとも自らのポート番号と他方において前記アプリケーション固有のサービス名との間の結び付けを有するリソースレコードを生成し、ソケットを生成し、それを前記ポート番号に結びつけ、前記リソースレコードの前記第1装置に関するローカルなネーム・サービス決定ユニットへの送信を、前記リソースレコードが前記ネーム・サービス決定ユニットに格納することが可能となるように指示するよう構成されるソケットレイヤエンジンを有する第1計算装置と、
前記第2装置におけるアプリケーションから接続に対するリクエストを受信し、前記第1装置に関するネーム・サービス決定ユニットへの前記第1装置に関するアプリケーション固有のサービス名に関するクエリの送信を指示し、前記クエリに対する応答として接続を設定するのに使用するため、前記第1装置に関するアドレス及びポート番号を、前記接続が前記受信するアドレス及びポート番号を用いて設定することが可能となるように受信するよう構成されるソケットレイヤエンジンを有する第2計算装置と、
を有することを特徴とするシステムによって達成される。
本発明の第5の特徴によると、上記課題はまた、少なくとも第1装置と第2装置上で実行されるアプリケーションのためアドレス及びポート番号の使用を抽象化する第1計算装置上で使用されるコンピュータプログラムであって、
当該プログラムコードが前記第1装置においてロードされると、前記第1装置におけるアプリケーションからのサービスとソケットを結びつけるリクエストを受信し、前記装置間の接続に使用されるアプリケーション固有のサービス名を取得し、一方で前記第1装置の少なくともポート番号と他方で前記アプリケーション固有のサービス名との間の結びつきを有するリソースレコードを生成し、前記ソケットを生成し、それを前記ポート番号に結びつけ、前記リソースレコードの前記第1装置に関するローカルなネーム・サービス決定ユニットへの送信を、前記第2装置におけるアプリケーションが前記第1装置の装置名及びアプリケーション固有のサービス名に関するクエリによって、接続を設定するのに使用される前記第1装置に関するアドレス及びポート番号を取得することを可能にするため、前記リソースレコードが前記ネーム・サービス決定ユニットに格納することが可能となるように指示するよう前記第1装置に実行させるコンピュータプログラムコードを有することを特徴とするコンピュータプログラムによって達成される。
当該プログラムコードが前記第1装置においてロードされると、前記第1装置におけるアプリケーションからのサービスとソケットを結びつけるリクエストを受信し、前記装置間の接続に使用されるアプリケーション固有のサービス名を取得し、一方で前記第1装置の少なくともポート番号と他方で前記アプリケーション固有のサービス名との間の結びつきを有するリソースレコードを生成し、前記ソケットを生成し、それを前記ポート番号に結びつけ、前記リソースレコードの前記第1装置に関するローカルなネーム・サービス決定ユニットへの送信を、前記第2装置におけるアプリケーションが前記第1装置の装置名及びアプリケーション固有のサービス名に関するクエリによって、接続を設定するのに使用される前記第1装置に関するアドレス及びポート番号を取得することを可能にするため、前記リソースレコードが前記ネーム・サービス決定ユニットに格納することが可能となるように指示するよう前記第1装置に実行させるコンピュータプログラムコードを有することを特徴とするコンピュータプログラムによって達成される。
本発明の第6の特徴によると、上記課題はまた、少なくとも第1装置と第2装置上で実行されるアプリケーションのためアドレス及びポート番号の使用を抽象化する第2計算装置上で使用されるコンピュータプログラムであって、
当該プログラムコードが前記第2装置においてロードされると、前記第2装置におけるアプリケーションから接続に対するリクエストを受信し、一方で前記第1装置のアドレス及びポート番号と他方で前記アプリケーション固有のサービス名との間の結び付けを有するリソースレコードを有する前記第1装置に関するネーム・サービス決定ユニットへの前記第1装置に関する少なくともアプリケーション固有のサービス名に関するクエリの送信を指示し、前記クエリに対する応答として接続を設定するのに使用される前記第1装置に関するアドレス及びポート番号を、前記接続が自らのアドレス及びポート番号だけでなく、前記受信するアドレス及びポート番号を用いて設定することが可能となるように受信するよう前記第2装置に実行させるコンピュータプログラムコードを有することを特徴とするコンピュータプログラムによって達成される。
当該プログラムコードが前記第2装置においてロードされると、前記第2装置におけるアプリケーションから接続に対するリクエストを受信し、一方で前記第1装置のアドレス及びポート番号と他方で前記アプリケーション固有のサービス名との間の結び付けを有するリソースレコードを有する前記第1装置に関するネーム・サービス決定ユニットへの前記第1装置に関する少なくともアプリケーション固有のサービス名に関するクエリの送信を指示し、前記クエリに対する応答として接続を設定するのに使用される前記第1装置に関するアドレス及びポート番号を、前記接続が自らのアドレス及びポート番号だけでなく、前記受信するアドレス及びポート番号を用いて設定することが可能となるように受信するよう前記第2装置に実行させるコンピュータプログラムコードを有することを特徴とするコンピュータプログラムによって達成される。
請求項2及び12によると、リソースレコードはまた、前記第1装置のアドレスとロケータブルな装置名との間の結びつきを有し、それは、リソースレコードの完了情報を提供する必要からネーム・サービス決定ユニットを解放する。
請求項3及び13によると、アプリケーション固有のサービス名が第2装置に送信され、それがこの名前について知らないとき、それがそれを使用することを可能にする。
請求項5及び15によると、サービス名はアプリケーションによって提供される。
請求項6及び16によると、アプリケーションがサービスに対する名前を有しない場合に必要とされるサービス名が生成される。
請求項7及び17によると、生成されたサービス名はアプリケーションに返される。このようにして、第1装置上で実行されるアプリケーションは、第2装置からの第1装置のコンタクトを可能にするため、第2装置上で実行されるアプリケーションにサービス名を提供することが可能である。
請求項8及び18によると、接続のためにもはや使用されなくなると、リソースレコードは削除される。これは、ポート番号の不要な結び付けを支援する。それはまた、ポート番号とサービス名が変更される場合に効果的である。
請求項9及び19によると、サービス名はプロトコル情報を有し、それは、第2装置のアプリケーションが、事前知識を有しない場合、何れのプロトコルが使用されるか知ることを可能にする。
請求項10は、サービス名に関するクエリに基づき、第2装置から第1装置への接続を設定することに関する。
本発明の実施例は、少なくとも2つの装置上で実行されるアプリケーションのための接続の設定に関して、アドレス及びポート番号の使用を抽象化するという効果を有する。この抽象化のため、接続を設定するのに送信されるメッセージは、アドレス及びポート番号情報を有する必要がなくなり、それは、異なるアドレッシング領域間のペイロードとラバーシングインタフェースに設けられるときに否定的な影響を及ぼしうる。このような否定的な影響は、例えば、スクランブリング及びデータインテグリティ検出機構を有する。アドレス及びポート番号はサービスクエリを介して取得され、これは、可能なアドレス変換が、アドレス変換機能を有する場合、ネットワークにおいて自動的に考慮されることを保証する。さらにこれは、本発明をネットワークから独立したものにし、任意のネットワークについて実質的に実現されることを可能にする。他の効果は、特別なALGが不要となり、代わりに通常の装置名及びサービス名決定及び異なるアドレッシング領域に関して提供される既存のものの機能が使用される。複数階層アプリケーションがまた可能である。本発明を実現するのに直接的かつコスト効率的にする既存のインフラストラクチャが利用可能である。本発明はさらに、設定することなくプライベートネットワーク内の同一タイプの複数のサーバを可能にする。
本発明の実施例の背後にある一般的なアイデアは、装置のサービス名と少なくともポート番号との間の結びつきと、リソースレコードをネーム・サービス決定ユニットに送信することを含み、第1装置においてリソースレコードを生成することである。このように、サービス名に関するクエリをネーム・サービス決定ユニットに送信することによって、第2装置からの接続が設定可能である。
本発明の上記及び他の特徴は、以降において記載される実施例を参照して、明らかとなるであろう。
図1は、本発明の実施例とその環境の概略図を示す。図1は、第1ローカルネットワーク12に接続される第1計算装置10を示す。第1ネットワーク12は、グローバルネットワーク21、この場合にはインターネットに接続される第1ゲートウェイ14を有する。第2ゲートウェイ20が、グローバルネットワーク21と第2ローカルネットワーク18との間のインタフェースとして設けられる。第2ローカルネットワーク18は、第2計算装置16を有する。第1ローカルネットワーク12は第1アドレッシング領域を有し、第2ローカルネットワーク18は第2アドレッシング領域を有し、グローバルネットワーク21は第3アドレッシング領域を有する。ここで、第1アドレッシング領域は、IPv4又はIPv6などのIPアドレッシング領域であり、第1ネットワークにおいてローカルに使用され、第2アドレッシング領域はまた、第1アドレッシング領域と同じタイプなどの第2ネットワーク18の内部で使用されるローカルアドレッシング領域であり、第3アドレッシング領域は、IPv4などのグローバルアドレッシング領域である。この好適な実施例では、第1ネットワーク12と第2ネットワーク18は、プライベートホームネットワークである。しかしながら、本発明はプライベートホームネットワークに限定されるものではなく、企業用ネットワークやさらにグローバルネットワークなどにおいて使用可能であるということは理解されるべきである。第1計算装置10はまたXと記され、第2計算装置16はYと記され、第1ゲートウェイ14はG1と記され、第2ゲートウェイ20はG2と記される。従って、異なる装置は、異なる領域において異なるアドレスを有する。第1装置10は、第1ローカルアドレッシング領域内にアドレスAXを有し、第1ゲートウェイ14は、第1ローカルアドレッシング領域内にアドレスA1G1を、グローバルアドレッシング領域内にアドレスA2G1を有し、第2ゲートウェイ20は、第2路0−カルアドレッシング領域内にアドレスA1G2を、グローバルアドレッシング領域内にアドレスA2G2を有し、第2装置16は、第2ローカルアドレッシング領域に第2アドレスAYを有する。第1装置10と第2装置16は、通常のコンピュータとすることが可能であるが、これに限定されるものではない。それらは、インターネットラジオ、プリンタ、スキャナ又は他の何れのタイプの装置など、他の計算装置とすることが可能である。また、ローカルネットワークにはより多くの装置が存在するかもしれないということが理解されるべきである。装置10と16は、例えば、ゲートウェイを介しインターネットに接続可能なサーバや他の任意の適切な装置であってもよい。ゲートウェイ14と20はそれぞれ、DNS(Domain Name System)SRV(Service)ユニット22、DNS_ALG(Domain Name System_Application Level Gateway)ユニット24、及びNAPT(Network Address and Port Translator)テーブル28の形式によるネーム・サービス決定ユニットを有する。図1はまた、第1装置10から第1ゲートウェイ14に送信される第1リソースレコード26を示す。このリソースレコードは、すぐにより詳細に説明される。
図2のブロック概略図により、本発明の実施例による第1装置10の簡単化されたものが示される。しかしながら、この図2は第2装置16についてもまた有効であるということが理解されるべきである。第1装置10は、アプリケーションの各部分を実行するよう構成されるアプリケーションレイヤエンジン30を有し、ここでは、アプリケーションの他の部分は第2装置16上で実行される。アプリケーションレイヤエンジン30は、ソケットレイヤエンジン32に接続され、ソケットレイヤエンジン32はコネクションレイヤエンジン34に接続される。コネクションレイヤエンジン34は、データパケットの送受信のため、第1ローカルネットワークとのコンタクトを提供する。アプリケーションレイヤエンジン30は、対象となるアプリケーションによって実行され、ソケットレイヤエンジン32とコネクションレイヤエンジン34は、装置のオペレーティングシステムによって実行される。データパケットが移動する方向は、矢印により示される。
図3は、 第1装置によって生成される第1リソースレコード26をより詳細に示す。このリソースレコードは、第1装置のアドレスAXにより記述されたソースアドレスフィールド36と、第1装置の第1ポート番号PX1により記述されたソースポート番号フィールド38と、第1ローカルアドレッシング領域における第1ゲートウェイのアドレスA1G1により記述されたデスティネーションアドレスフィールド40と、リソースレコードに使用される専用のポート番号PG1により記述されるデスティネーションポート番号フィールド42と、一方では指定されたサービス名_HTTP._TCPと装置名H1.N1.SP1.D1との間と、他方では第1装置の第2ポート番号PX2とアドレスAXとの間のマッピングにより記述されたペイロード44とを有する。このリソースレコード26が、HTTPと名付けられた1つのサービスについて提供される。
本発明が、図1〜5を参照することにより説明される。ここで、図4は、装置及びサービス名決定ユニットをリソースレコードに設けることによって、2つの装置上で実行されるアプリケーションのためアドレス及びポート番号の使用を抽象化する方法の第1部分のフローチャートを示し、図5は、装置名とサービス名についてネーム/サービス決定ユニットに照会することによって、2つの装置上に実行されるアプリケーションのためアドレス及びポート番号の使用を抽象化する方法の第2部分のフローチャートを示す。
本方法は、ステップ48において、第1装置10が第2装置16とのセッションを開始することから開始される。ここで、当該セッションは、第2装置16によってもまた開始することが可能であるということに留意すべきである。第1装置10は、第2装置16と通信するためのアドレスを取得するため、装置名及びサービス名クエリを送信することによって開始される。このクエリは、ロケータブル(locatable)な装置名とサービス名を有し、装置名は通常は第2装置16の完全に資格のあるドメイン名である。このクエリは、最終的には通常のDNS処理によって第2ローカルネットワーク18の第2ゲートウェイ20によって受け取られる。その後、第2ゲートウェイ20は、このクエリをそれのネーム・サービス決定ユニット22に転送する。ネーム・サービス決定ユニット22は、DNS_SRV機能を有するユニットであり、すなわち、それはドメイン名とサービス名をアドレス及びポート番号にマッピングし、ここでは、グローバルアドレッシング領域におけるアドレス及びポート番号と第2ローカルアドレッシング領域におけるアドレス及びポート番号との間のマッピングを行う。ネーム・サービス決定ユニット22は、その後、ネームクエリに基づき、第2アドレッシング領域においてアドレス及びポート番号検索を行い、第2アドレッシング領域における第2装置16のアドレスAYと関連するポート番号を検出する。その後、ネーム・サービス決定ユニット22は、レスポンスを生成し、返す。このレスポンスは、第2アドレスAYと対応するポート番号をペイロードに含める。このとき、DNS_SRV ALG(Application Level Gateway)ユニット24は、第2アドレスAYと当該ポート番号をレスポンスのペイロードにおいて第2ゲートウェイ20のアドレスA2G2と第2ゲートウェイ20に関する他のポート番号に置換する。また、第2装置16のアドレスAY及びポート番号と第2ゲートウェイ20のアドレスA2G2及びポート番号との間の結びつきが、第2ゲートウェイ20のNAPTテーブル28において生成される。NAPT28は、ローカルアドレスとローカルポート番号をグローバルアドレスとグローバルポート番号に変換するため、すなわち、第2ローカルアドレッシング領域のアドレス及びポート番号からグローバルアドレッシング領域のアドレスとポート番号に、またその反対に変換するのに使用される。このとき、第1装置10は、第2装置16の代わりに第2ゲートウェイ20を当該サービスに対応するものとして装置20の名称とゲートウェイのポート番号に関連する者として示すネーム・サービスクエリに対するレスポンスを受け取る。ここで、第1装置は、デスティネーションアドレスとしてアドレスA2G2をデスティネーションポート番号としてそれの関連するポート番号とを用いてセッションを開始することが可能である。その後、セッションの第1パケットが、第1装置10から第2ゲートウェイ20に、ソースとしてそれ自体の第1アドレスAX及び第1ポート番号PX1を、デスティネーションとして上述のアドレスA2G2及び対応するポート番号を使用して送信される。この第1アドレスAX及び第1ポート番号PX1と、第1ゲートウェイ14のグローバルアドレスA2G1及び関連するポート番号と、第2ゲートウェイ20のグローバルアドレスA2G2及び対応するポート番号との間の結びつきが、第1ゲートウェイ14に与えられるNAPTテーブル28において生成される。ソースアドレスAXとポート番号PX1はさらに、第1ゲートウェイ14によってマップされたアドレスA2G1及び関連するポート番号に変換され、パケットが第1ゲートウェイ14によって第2ゲートウェイ20に転送され、それは、それのNAPT28において、アドレスA2G1及び関連するポート番号の以前に結びつけられたアドレスA2G23及び関連するポート番号とアドレスAXと関連付けられたポート番号への実際の結びつきを生成する。その後、第2ゲートウェイは、アドレスA2G2及び関連するポート番号をアドレスAY及び関連するポート番号に変換し、パケットを第2装置16に転送する。このセッション開始方法のさらなる詳細は、本出願人の同時係属中の出願である欧州特許出願第04100648.7号(当方参照番号PHNL040154、出願日2004年2月19日)「INITIATING COMMUNICATION SESSIONS FROM A FIRST COMPUTER NETWORK TO A SECOND COMPUTER NETWORK」に記載されている。
当該セッションでは、ここでは2つのアプリケーションが各自のアプリケーションレイヤエンジン30上での実行を開始する。ここで、アプリケーションは、このセッションを開始するため設定されたものより追加的な接続を設定する必要がある。この接続は、例えば、テレビ会議セッションが設定されようとする場合など、異なるタイプのアプリケーションについて必要とされるかもしれない。本ケースでは、第2装置16がこれを実行する。このとき、第1装置10のアプリケーションレイヤエンジン30は、ステップ50において、第2装置16からの接続を可能にするため、ソケットをサービスに結びつけるためのリクエストによりソケットレイヤエンジン32と接続する。その後、ソケットレイヤエンジンは、ステップ51において、接続に用いられるサービス名を取得する。このリクエストは、使用される当該サービス名を有することが可能であり、あるいは、存在しないかもしれない。本例では、_HTTPという名称のものが存在する。ソケットレイヤエンジン32が関連するサービス名と共にこのリクエストを受信すると、ステップ52において、それは継続し、レコード26のペイロードに示されるリソースレコードを生成する。このレコードでは、アプリケーションに固有のサービス名_HTTP、適用可能なプロトコル_TCPと共に、第1装置10の完全に資格のあるドメイン名H1.N1.SP1.D1の形式によるロケータブルな装置名が、選択された第2ポート番号PX2と、第1ローカルネットワーク12の第1装置10の第1アドレスAXにリンクされる。その後、ソケットレイヤエンジン32は、ステップ53において、ソケットを生成し、それを第1装置10のポート番号PX2及びアドレスAXに結びつける。その後、リソースレコードが、コネクションレイヤエンジン34に提供され、そこからリソースレコードは、ステップ54において、第1ゲートウェイG1のアドレスA1G1及びネーム・サービス決定ユニット22に関する専用のポート番号PG1を利用して第1ゲートウェイ14に送信される。その後ステップ56において、第1ゲートウェイ14はリソースレコード26を受信する。ここで、第1ゲートウェイ14が当該リソースレコード26を受信すると、それは当該リソースレコード26をそれのネーム・サービス決定ユニット22に転送し、当該ユニット22は、ステップ58において、それのエントリを当該リソースレコードにより更新する。
第2装置16が追加的な接続を使用するため、それは第1装置10のアプリケーション固有のサービス名と装置名を求める必要がある。第2装置がセッションを開始した場合、それは、第1接続を設定する際に、通常のDNS_SRVクエリにより第1装置10のロケータブルな装置名を求めることが可能であろう。このとき、それはサービス名しか必要とせず、アプリケーションによって予め設定可能であろう。第2装置16がこれらの名前を知らない場合、それは、使用する装置名とアプリケーション固有のサービス名を、又はそれがすでに装置名を知っている場合にはサービス名のみを提供するよう第1装置10に要求することが可能である。その後、このリクエストは、装置の2つのソケットレイヤエンジン32間で送信されるであろう。その後、アプリケーション固有のサービス名と、おそらく第1装置10の完全に資格のあるドメイン名は、コネクションレイヤエンジン34と第1接続を用いて互いに通信する2つのソケットレイヤエンジン32を通じて、第1装置10から第1接続を介し第2装置16に送信される。ここで、第2装置16がこの完全に資格のあるドメイン名とアプリケーション固有のサービス名とを有するとき、それは標準的なSRV_DNSクエリを用いてこのアドレスとサービス名に関する第1ゲートウェイ14のネーム・サービス決定ユニット22を照会することが可能である。ここで、第2装置16のソケットレイヤエンジン32が、ステップ59においてこのリクエストを受信すると、ステップ60において、それは、ゲットコマンドを用いて、コネクションレイヤエンジン34に第1装置10に関するネーム・サービス決定ユニット22に対するこのようなクエリを送信するよう指示する。第1装置10に関するネーム・サービス決定ユニット22は、ステップ62において、第1ローカルアドレッシング領域における第1装置10のローカルアドレスAX及び第2ポート番号PX2により応答し、ステップ64において、第1ゲートウェイ14のDNS_SRV ALG24によってグローバルアドレッシング領域のゲートウェイアドレスA2G1及び対応するゲートウェイポート番号に変換され、ステップ66において、当該レスポンスが第2ローカルネットワーク18に転送される。その後、第1装置14の第1アドレスAX及び第2ポート番号PX2と、第1ゲートウェイ14のグローバルアドレスA2G1及び選択されたポート番号との間の結びつきが、第1ローカルネットワーク12の外部からの第1装置10との接続を可能にするため、第1ゲートウェイ14のNAPT28において実行される。従って、第1ゲートウェイのこのアドレスは、第1装置のアドレスに関連付けされる。当該レスポンスが第2ゲートウェイ20に届くと、デスティネーションアドレスが、第2ゲートウェイ20のNAPT28における以前に生成された結びつきのため、アドレスA2G2から第2装置16のアドレスAYに変換され、これに応じて、ステップ67において、当該レスポンスが第2装置16によって受信される。ここで、第2装置16のソケットレイヤエンジン32は、さらなる接続のため、ソケットをそれ自体のアドレスAY及びアプリケーション固有のポート番号に結びくけることが可能であり、このときステップ68において、当該接続は2つの装置によって使用することが可能である。
さらなる接続を介した通信が終了すると、ステップ70において、第1装置10のソケットレイヤエンジン32は、コネクションレイヤエンジン34に不要にポート番号とアドレスを結びつけないようにするため、リソースレコード26を削除するリクエストをそれの関連するネーム・サービス決定ユニット22に送信するよう指示する。設定されるすべての新しい接続について、新たなネーム・サービス決定プロセスが実行される必要がある。従って、第1装置は、デスティネーション装置及びサービスのアドレス及びポート番号を格納すべきではない。
サービス名がまた、当該サービスに関連するプロトコルを他の装置に知らせるため、プロトコル情報を有する。
上記において、さらなる接続が第2装置からどのように設定されたかについて説明された。当然であるが、第1装置が代わりにセッションを開始することが可能であり、その場合、第2装置が対応するDNS_SRVユニットにリソースレコードを提供するであろう。さらに、第1セッションは、第1装置の代わりに第2装置によって開始することが可能である。さらに、リソースレコードを提供する機能は、第1装置において実現されるとして説明されたが、DNS_SRVユニットへのクエリを用いてリソースレコードの情報を取得する機能は、第2装置に設けられるとして説明された。通常、これらの機能セットの何れもが、すべての計算装置に存在するであろう。さらに、リソースレコードが第1装置のアドレス情報を有する必要はない。ポート番号を有するだけで十分である。ローカルネーム・サービス決定ユニットは、ここで、第1装置からそれに送信されたリソースレコードを含むメッセージのソースアドレスを確認することによって、その名前を見つけることが可能である。もちろん、第2装置は、装置名ではなく、アプリケーション固有のサービス名をクエリするだけである。さらに、本発明による接続を設定する指示において、第1接続を介しセッションが開始される必要はない。装置は、セッション開始時に、他の装置によって使用されるリソースレコードを送信することが可能である。
従って、本発明は、少なくとも2つの装置上で実行されるアプリケーションのための接続の設定に関して、アドレス及びポート番号の使用を抽象化することに関する。この抽象化のため、セッションにおいて送信されるメッセージは、接続を設定するためのアドレス及びポート番号情報を含む必要はなく、当該情報は、異なるアドレッシング領域間におけるペイロードトラバーシングインタフェースに与えられるとき、否定的な影響を受ける可能性がある。このような否定的な影響は、例えば、周知のポート番号の禁止されている使用やスクランブリングを有する。アドレス及びポート番号は、好ましくは、DNS_SRVクエリの形式によりネーム及びサービスクエリを通じて取得され、それは、可能なアドレス変換は、アドレス変換機能を有する場合、ネットワークにおいて自動的に考慮されることを保証する。さらに、これは、本発明をネットワークから独立したものにし、任意のネットワークについて実質的に実現可能にする。他の効果は、特別なALGを必要とせず、代わりに、通常の装置名及びサービス名決定及び異なるアドレッシング領域に関して与えられた既存のものの機能が使用される。複数の階層アプリケーションもまた可能である。例えば、DNS=SRVプロトコルなどの既存のインフラストラクチャが利用可能であり、このことは、本発明を実現するのに直接的かつコスト効率的なものにする。本発明はさらに、設定することなくプライベートネットワーク内の同一タイプの複数のサーバを可能にする。最初に説明された開始プロセスにより、グローバルネットワークにおける1つのアドレスを用いた複数のインバウンドセッションがさらに可能である。
上記において、ネーム・サービス決定ユニットは、ゲートウェイに配置された。代わりに、ネーム・サービス決定ユニットは、当該ゲートウェイがネーム及びサービスを決定するため通信するローカルネットワーク上の独立したエンティティ又はサーバとすることが可能である。他の可能な変形は、ネーム・サービス決定ユニットが、第1及び/又は第2装置を含む第1ネットワークの各種エンド装置において分散化可能であるということである。
計算装置の異なるユニットは、ハードウェアコンポーネントの形式により提供することが可能である。しかしながら、それらは通常、本発明による方法を実行するための適切なプログラムコードを有する適切なプログラムメモリと共に、1以上のプロセッサの形式により提供される。これを実行するためのソフトウェア又はプログラムコードはまた、コンピュータ可読媒体の形式によりコンピュータプログラムプロダクト上に与えることが可能であり、それは、当該計算装置にロードされると、計算装置に与えられる本発明による方法の一部を実行する。図6において、ディスケットなど多数の異なる媒体が可能であるが、CD−ROMディスク72の形式によるこのような媒体が示される。プログラムコードはまた、ローカルネットワークの外部のサーバからリモートにダウンロードすることが可能である。
従って、本発明は、少なくとも2つの計算装置間の通信においてアドレス及びポート番号の使用を抽象化する計算装置システム、計算装置、方法及びコンピュータプログラムプロダクトを提供する。
本発明に対するいくつかの可能な変形が存在し、それらは上述したものに加えて可能とされる。上述のように、第1装置のアプリケーションは、サービス名をソケットレイヤエンジンに提供する必要はない。この場合、ソケットレイヤエンジンが代わりを生成するであろう。この名前は、特定のポート番号を正確に特定する以外の特別な意味を有しない見かけ上ランダムなシンボルの組み合わせを含むであろう。ソケットレイヤエンジンがソケットをポート番号に結びつけた後、それはその名前をアプリケーションに提供する。その後、アプリケーションは、第2装置に送信されるメッセージのペイロード内においてこの名前を使用することが可能である。このように、第1装置上で実行されるアプリケーションは、第2装置上で実行されるアプリケーションに、生成されたソケットにコンタクトするのに必要とされるサービス名を通知することが可能である。
本発明は当該設定において最も効果的であるが、2つの装置が異なるローカルネットワークに設けられる必要はない。それらはまた、同一のローカルネットワーク、同一のグローバルネットワークに設けることが可能であり、又は1つはグローバルネットワークに、他方はローカルネットワークに設けることも可能である。本発明はさらに、セッションにおいて通信する2つの装置に限定されず、3以上のそのような装置に適用可能である。本発明はさらに、IPアドレッシングに限定されず、他のタイプのアドレッシングもまた可能である。ネットワークは、固定ネットワークである必要はなく、例えば代わりに無線ネットワークとすることも可能である。
Claims (23)
- 少なくとも第1装置と第2装置との上で実行されるアプリケーションについてアドレス及びポート番号の使用を抽象化する方法であって、
前記第1装置における前記アプリケーションから、ソケットをサービスに結びつけるためのリクエストを受信するステップと、
前記装置間の接続に使用されるアプリケーション固有のサービス名を取得するステップと、
少なくとも一方では前記第1装置のポート番号と他方では前記アプリケーション固有のサービス名との間の結び付けを有するリソースレコードを生成するステップと、
ソケットを生成し、それを前記ポート番号に結びつけるステップと、
前記リソースレコードの関連付けされたローカルなネーム・サービス決定ユニットへの送信を、前記第2装置において実行されるアプリケーションが前記第1装置のアプリケーション固有のサービス名に関するクエリを前記ネーム・サービス決定ユニットに送信することを介して、接続に使用するため前記第1装置に関するアドレス及びポート番号を取得することを可能にするため、前記リソースレコードが前記ネーム・サービス決定ユニットに格納することができるように指示するステップと、
を有することを特徴とする方法。 - 請求項1記載の方法であって、
前記リソースレコードはまた、ロケータブルな装置名と前記第1装置のアドレスとの間の結び付けを有することを特徴とする方法。 - 請求項1記載の方法であって、さらに、
前記さらなる接続の設定を可能にするため、少なくとも前記アプリケーション固有のサービス名の前記第2装置への送信を指示するステップを有することを特徴とする方法。 - 請求項3記載の方法であって、
前記送信を指示するステップは、前記第1装置の装置名の送信も指示することを特徴とする方法。 - 請求項1記載の方法であって、
前記サービス名を取得するステップは、前記装置において実行されるアプリケーションから前記サービス名を受信することを特徴とする方法。 - 請求項1記載の方法であって、
前記サービス名を取得するステップは、使用するサービス名を生成することを特徴とする方法。 - 請求項6記載の方法であって、さらに、
前記生成されたサービス名を前記アプリケーションに返すステップを有することを特徴とする方法。 - 請求項1記載の方法であって、さらに、
前記接続がもはや不要になると、前記リソースレコードの前記関連付けされたネーム・サービス決定ユニットからの削除を指示するステップを有することを特徴とする方法。 - 請求項1記載の方法であって、
前記サービス名は、プロトコル情報を有することを特徴とする方法。 - 請求項1記載の方法であって、さらに、前記第2装置において、
前記第2装置における前記アプリケーションから、前記第1装置におけるアプリケーションとの接続に対するリクエストを受信するステップと、
前記第1装置に関するネーム・サービス決定ユニットに対する前記第1装置の少なくとも前記アプリケーション固有のサービス名に関するクエリの送信を指示するステップと、
前記接続が受信したアドレス及びポート番号を用いて設定することができるように、前記クエリの結果として前記第1装置に関するアドレス及びポート番号を受信するステップと、
を有することを特徴とする方法。 - 少なくとも第1装置と第2装置上で実行されるアプリケーションのためアドレス及びポート番号の使用を抽象化する第1計算装置であって、
前記第1装置におけるアプリケーションからのサービスにソケットを結びつけるリクエストを受信し、前記装置間の接続に使用されるアプリケーション固有のサービス名を取得し、少なくとも一方において自らのポート番号と他方において前記アプリケーション固有のサービス名との間の結びつきを有するリソースレコードを生成し、ソケットを生成し、それを前記ポート番号に結びつけ、前記リソースレコードの前記第1装置に関するローカルなネーム・サービス決定ユニットへの送信を、前記第2装置におけるアプリケーションが前記第1装置の少なくとも前記アプリケーション固有なサービス名に関するクエリによって、通信に使用される前記第1装置に関するアドレス及びポート番号を取得することが可能となるように、前記リソースレコードが前記ネーム・サービス決定ユニットに格納することが可能となるように指示されるよう構成されるソケットレイヤエンジンを有することを特徴とする第1計算装置。 - 請求項11記載の計算装置であって、
前記リソースレコードはまた、ロケータブルな装置名と前記第1装置のアドレスとの間の結びつきを有することを特徴とする計算装置。 - 請求項11記載の計算装置であって、
前記ソケットレイヤエンジンはさらに、前記接続の設定を可能にするため、少なくとも前記アプリケーション固有のサービス名の前記第2装置への送信を指示するよう構成されることを特徴とする計算装置。 - 請求項13記載の計算装置であって、
前記ソケットレイヤエンジンはまた、前記第1装置の装置名の送信を指示するよう構成されることを特徴とする計算装置。 - 請求項11記載の計算装置であって、
前記ソケットレイヤエンジンはさらに、サービス名の取得において、前記装置において実行されるアプリケーションから前記サービス名を受信するよう構成されることを特徴とする計算装置。 - 請求項11記載の計算装置であって、
前記ソケットレイヤエンジンはさらに、サービス名の取得において、使用されるサービス名を生成するよう構成されることを特徴とする計算装置。 - 請求項16記載の計算装置であって、
前記ソケットレイヤエンジンはさらに、前記生成されたサービス名を前記アプリケーションに返すよう構成されることを特徴とする計算装置。 - 請求項11記載の計算装置であって、
前記ソケットレイヤエンジンはさらに、前記さらなる接続がもはや不要になると、前記ネーム・サービス決定ユニットからの前記リソースレコードの削除を指示するよう構成されることを特徴とする計算装置。 - 請求項11記載の計算装置であって、
前記サービス名は、プロトコル情報を有することを特徴とする計算装置。 - 少なくとも第1装置と第2装置上で実行されるアプリケーションのためアドレス及びポート番号の使用を抽象化する第2計算装置であって、
前記第2装置におけるアプリケーションから接続に対するリクエストを受信し、一方では前記第1装置のアドレス及びポート番号と他方では少なくとも前記アプリケーション固有のサービス名との間の結びつきを有するリソースレコードを有する前記第1装置に関するネーム・サービス決定ユニットへの前記第1装置に関する少なくともアプリケーション固有のサービス名に関するクエリの送信を指示し、接続の設定において使用するため、前記クエリへの応答として前記第1装置に関するアドレス及びポート番号を、前記接続が前記受信するアドレス及びポート番号を用いて設定することが可能となるように受信するよう構成されるソケットレイヤエンジンを有することを特徴とする第2計算装置。 - 少なくとも第1装置と第2装置上で実行されるアプリケーションのためアドレス及びポート番号の使用を抽象化する計算装置のシステムであって、
前記第1装置におけるアプリケーションからのサービスとソケットを結びつけるリクエストを受信し、前記装置間の接続に使用されるアプリケーション固有のサービス名を取得し、一方で前記第1装置の少なくとも自らのポート番号と他方において前記アプリケーション固有のサービス名との間の結び付けを有するリソースレコードを生成し、ソケットを生成し、それを前記ポート番号に結びつけ、前記リソースレコードの前記第1装置に関するローカルなネーム・サービス決定ユニットへの送信を、前記リソースレコードが前記ネーム・サービス決定ユニットに格納することが可能となるように指示するよう構成されるソケットレイヤエンジンを有する第1計算装置と、
前記第2装置におけるアプリケーションから接続に対するリクエストを受信し、前記第1装置に関するネーム・サービス決定ユニットへの前記第1装置に関するアプリケーション固有のサービス名に関するクエリの送信を指示し、前記クエリに対する応答として接続を設定するのに使用するため、前記第1装置に関するアドレス及びポート番号を、前記接続が前記受信するアドレス及びポート番号を用いて設定することが可能となるように受信するよう構成されるソケットレイヤエンジンを有する第2計算装置と、
を有することを特徴とするシステム。 - 少なくとも第1装置と第2装置上で実行されるアプリケーションのためアドレス及びポート番号の使用を抽象化する第1計算装置上で使用されるコンピュータプログラムであって、
当該プログラムコードが前記第1装置においてロードされると、前記第1装置におけるアプリケーションからのサービスとソケットを結びつけるリクエストを受信し、前記装置間の接続に使用されるアプリケーション固有のサービス名を取得し、一方で前記第1装置の少なくともポート番号と他方で前記アプリケーション固有のサービス名との間の結びつきを有するリソースレコードを生成し、前記ソケットを生成し、それを前記ポート番号に結びつけ、前記リソースレコードの前記第1装置に関するローカルなネーム・サービス決定ユニットへの送信を、前記第2装置におけるアプリケーションが前記第1装置の装置名及びアプリケーション固有のサービス名に関するクエリによって、接続を設定するのに使用される前記第1装置に関するアドレス及びポート番号を取得することを可能にするため、前記リソースレコードが前記ネーム・サービス決定ユニットに格納することが可能となるように指示するよう前記第1装置に実行させるコンピュータプログラムコードを有することを特徴とするコンピュータプログラム。 - 少なくとも第1装置と第2装置上で実行されるアプリケーションのためアドレス及びポート番号の使用を抽象化する第2計算装置上で使用されるコンピュータプログラムであって、
当該プログラムコードが前記第2装置においてロードされると、前記第2装置におけるアプリケーションから接続に対するリクエストを受信し、一方で前記第1装置のアドレス及びポート番号と他方で前記アプリケーション固有のサービス名との間の結び付けを有するリソースレコードを有する前記第1装置に関するネーム・サービス決定ユニットへの前記第1装置に関する少なくともアプリケーション固有のサービス名に関するクエリの送信を指示し、前記クエリに対する応答として接続を設定するのに使用される前記第1装置に関するアドレス及びポート番号を、前記接続が自らのアドレス及びポート番号だけでなく、前記受信するアドレス及びポート番号を用いて設定することが可能となるように受信するよう前記第2装置に実行させるコンピュータプログラムコードを有することを特徴とするコンピュータプログラム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP04100823 | 2004-03-02 | ||
PCT/IB2005/050717 WO2005088942A1 (en) | 2004-03-02 | 2005-02-28 | Address and port number abstraction when setting up a connection between at least two computational devices |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007527068A true JP2007527068A (ja) | 2007-09-20 |
Family
ID=34960804
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007501425A Pending JP2007527068A (ja) | 2004-03-02 | 2005-02-28 | 少なくとも2つの計算装置間の接続を設定する際のアドレス及びポート番号アブストラクション |
Country Status (6)
Country | Link |
---|---|
US (1) | US20070168551A1 (ja) |
EP (1) | EP1726146A1 (ja) |
JP (1) | JP2007527068A (ja) |
KR (1) | KR20070003890A (ja) |
CN (1) | CN1926840A (ja) |
WO (1) | WO2005088942A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009135690A (ja) * | 2007-11-29 | 2009-06-18 | Yokogawa Electric Corp | 計測機器の設定方法およびそれを用いた計測システム |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060020688A1 (en) * | 2001-05-14 | 2006-01-26 | At&T Corp. | System having generalized client-server computing |
JP5207270B2 (ja) * | 2007-07-12 | 2013-06-12 | Necインフロンティア株式会社 | 複数のネットワーク間の通信システム |
TWI392317B (zh) * | 2008-05-27 | 2013-04-01 | Silver Spring Networks Inc | 多重通訊協定的網路註冊及位址解析 |
US8316136B2 (en) | 2009-05-22 | 2012-11-20 | Silver Spring Networks, Inc. | Multi-protocol network registration and address resolution |
US7783764B2 (en) | 2008-05-27 | 2010-08-24 | Silver Spring Networks, Inc. | Multi-protocol network registration and address resolution |
KR101443291B1 (ko) * | 2008-09-02 | 2014-09-25 | 삼성전자주식회사 | 네트워크로 연결된 화상형성장치 및 그 네트워크 관련 정보설정방법 |
US9407567B2 (en) * | 2012-12-24 | 2016-08-02 | Telefonaktiebolaget Lm Ericsson (Publ) | Enabling external access to multiple services on a local server |
US9485805B2 (en) * | 2013-09-12 | 2016-11-01 | Haier Us Appliance Solutions, Inc. | Network address translation for ZIGBEE™/802.15.4 bridges |
KR20180074151A (ko) * | 2016-12-23 | 2018-07-03 | 에이치피프린팅코리아 주식회사 | 화상 형성 장치 및 화상 형성 장치에서 네트워크를 설정하는 방법 |
US10425332B2 (en) * | 2017-12-29 | 2019-09-24 | Nfware, Inc. | Method for processing packets using ALG DNS |
CN109005150B (zh) * | 2018-06-11 | 2021-03-02 | 烽火通信科技股份有限公司 | 基于以太网mac地址的无链接通信方法及*** |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB9501378D0 (en) * | 1995-01-24 | 1995-03-15 | Ibm | A system and method for establishing a communication channel over a heterogeneous network between a source node and a destination node |
US6049821A (en) * | 1997-01-24 | 2000-04-11 | Motorola, Inc. | Proxy host computer and method for accessing and retrieving information between a browser and a proxy |
US6098172A (en) * | 1997-09-12 | 2000-08-01 | Lucent Technologies Inc. | Methods and apparatus for a computer network firewall with proxy reflection |
US6615357B1 (en) * | 1999-01-29 | 2003-09-02 | International Business Machines Corporation | System and method for network address translation integration with IP security |
KR100689034B1 (ko) * | 2000-08-26 | 2007-03-08 | 삼성전자주식회사 | 외부 네트워크에서 사설 아이피주소를 갖는 노드에접속하기 위한 네트워크 주소변환시스템과 방법 및 그방법을 기록한 컴퓨터로 읽을수 있는 기록매체 |
AU2003251265A1 (en) * | 2003-04-01 | 2004-10-25 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and system for centrally allocating addresses and port numbers |
US20050021702A1 (en) * | 2003-05-29 | 2005-01-27 | Govindarajan Rangarajan | System and method of network address translation in system/network management environment |
-
2005
- 2005-02-28 CN CNA2005800066262A patent/CN1926840A/zh active Pending
- 2005-02-28 JP JP2007501425A patent/JP2007527068A/ja active Pending
- 2005-02-28 KR KR1020067017644A patent/KR20070003890A/ko not_active Application Discontinuation
- 2005-02-28 WO PCT/IB2005/050717 patent/WO2005088942A1/en not_active Application Discontinuation
- 2005-02-28 US US10/598,227 patent/US20070168551A1/en not_active Abandoned
- 2005-02-28 EP EP05708863A patent/EP1726146A1/en not_active Withdrawn
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009135690A (ja) * | 2007-11-29 | 2009-06-18 | Yokogawa Electric Corp | 計測機器の設定方法およびそれを用いた計測システム |
Also Published As
Publication number | Publication date |
---|---|
KR20070003890A (ko) | 2007-01-05 |
EP1726146A1 (en) | 2006-11-29 |
WO2005088942A1 (en) | 2005-09-22 |
CN1926840A (zh) | 2007-03-07 |
US20070168551A1 (en) | 2007-07-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2007527068A (ja) | 少なくとも2つの計算装置間の接続を設定する際のアドレス及びポート番号アブストラクション | |
US7573903B2 (en) | IPv6/IPv4 translator | |
EP1488610B1 (en) | System for selecting a connectivity mechanism | |
US8526467B2 (en) | Facilitating transition of network operations from IP version 4 to IP version 6 | |
TWI441493B (zh) | 網路位址轉換的系統與方法 | |
US20040044778A1 (en) | Accessing an entity inside a private network | |
EP1931087A1 (en) | Information processing system, tunnel communication device, tunnel communication method, and program | |
CN103141073B (zh) | 名称数据库服务器、名称解析***、条目搜索方法以及条目搜索装置 | |
JP5640092B2 (ja) | Ipv4ネットワークと新しいネットワークとの相互通信の実現方法及びシステム | |
JP7502484B2 (ja) | ネットワークアクセス方法、メディアゲートウェイ、電子機器及び記憶媒体 | |
JP2019176511A (ja) | ネットワーク機器 | |
KR100894921B1 (ko) | 네트워크 이벤트를 조정하는 장치와 방법 | |
CN111711705B (zh) | 基于代理节点作双向nat实现网络连接的方法和装置 | |
JP3915230B2 (ja) | パケット生成方法およびその機能を有する情報処理装置並びにパケット生成プログラムを記録した記録媒体 | |
US7356031B1 (en) | Inter-v4 realm routing | |
JP2005539428A (ja) | 第一コンピュータ・ネットワークから第二コンピュータ・ネットワークへの通信セッションの始動 | |
JP4670979B2 (ja) | パケット生成方法およびその機能を有する情報処理装置並びにパケット生成プログラムを記録した記録媒体 | |
JP4349413B2 (ja) | パケット生成方法およびその機能を有する情報処理装置並びにパケット生成プログラムを記録した記録媒体 | |
JP4191180B2 (ja) | 通信支援装置、システム、通信方法及びコンピュータプログラム | |
WO2022154700A1 (en) | Allocation of a public ip address and a public port number to a node implementing a service | |
JP3905067B2 (ja) | ネットワークを介したホスト間の通信方法 | |
JPH1155319A (ja) | IPv4−IPv6通信方法およびIPv4−IPv6変換装置 | |
JP5084716B2 (ja) | Vpn接続装置、dnsパケット制御方法、及びプログラム | |
JP2010157857A (ja) | Vpn接続装置、パケット制御方法、及びプログラム | |
JP4331638B2 (ja) | ネットワーク制御システム及びネットワーク制御方法 |