JP2007200209A - Communication system, server, communication method and computer program - Google Patents

Communication system, server, communication method and computer program Download PDF

Info

Publication number
JP2007200209A
JP2007200209A JP2006020716A JP2006020716A JP2007200209A JP 2007200209 A JP2007200209 A JP 2007200209A JP 2006020716 A JP2006020716 A JP 2006020716A JP 2006020716 A JP2006020716 A JP 2006020716A JP 2007200209 A JP2007200209 A JP 2007200209A
Authority
JP
Japan
Prior art keywords
server
client
communication
port number
application
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.)
Granted
Application number
JP2006020716A
Other languages
Japanese (ja)
Other versions
JP4274184B2 (en
Inventor
Nobuyuki Nakamura
信之 中村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP2006020716A priority Critical patent/JP4274184B2/en
Publication of JP2007200209A publication Critical patent/JP2007200209A/en
Application granted granted Critical
Publication of JP4274184B2 publication Critical patent/JP4274184B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To increase security in communication between server and client using the TCP/IP protocol. <P>SOLUTION: A communication system comprises a server and a client that communicates with applications in the server by the TCP/IP protocol. The server 104 has a server reception part 120 for receiving a program identifier uniquely specifying any of the applications from the client, a server side port number assignment part 124 for dynamically assigning a port number to the application specified by the program identifier received by the server reception part, and a server transmission part 122 for transmitting the port number assigned by the server side port number assignment part to the client. The client 102 communicates with the application in the server 104 via the dynamically assigned port number. <P>COPYRIGHT: (C)2007,JPO&INPIT

Description

本発明は,通信システム,サーバ,通信方法,およびコンピュータプログラムに関する。詳細には,1以上のアプリケーションプログラムを備えるサーバと,サーバのアプリケーションプログラムとの間でTCP/IPプロトコルにより通信を行うクライアントとを備える通信システム,その通信システムに用いられるサーバ,通信方法,およびコンピュータプログラムに関する。   The present invention relates to a communication system, a server, a communication method, and a computer program. Specifically, a communication system including a server including one or more application programs and a client that communicates with the application programs of the server using the TCP / IP protocol, a server used in the communication system, a communication method, and a computer Regarding the program.

従来,TCP/IPプロトコルによるサーバ・クライアント間の通信では,サーバ内で通信を行うアプリケーションプログラム(以後,アプリケーションとも称する。)には各々固定のポート番号が付与されており,クライアントは,既知の固定のポート番号を用いてサーバ内のアプリケーションと通信接続を行っていた。特に,HTTPサーバ,TELNETサーバ,FTPサーバなどの広く使われているアプリケーションに付与される固定のポート番号は,RFC(Request for Comments)1060に規定されており,ウェルノウン(well known)ポート番号と呼ばれる。   Conventionally, in communication between a server and a client using the TCP / IP protocol, a fixed port number is assigned to each application program (hereinafter also referred to as an application) that performs communication in the server, and the client is a known fixed number. The port number was used to establish communication connection with the application in the server. In particular, a fixed port number assigned to a widely used application such as an HTTP server, a TELNET server, and an FTP server is defined in RFC (Request for Comments) 1060 and is called a well-known port number. .

ウェルノウンポート番号は公にされており,誰でもその情報を入手することができる。そのため,誰でも,コンピュータに対してウェルノウンポート番号を通じてポートスキャンすることにより,コンピュータ上で動作しているアプリケーションの一覧を得ることができる。また,誰でも,IPアドレススイープすることにより,目的のアプリケーションが動作しているコンピュータの一覧を得ることができる。また,これらのアプリケーションは,デフォルトの設定ではバージョン番号も容易に知られてしまう。   Well-known port numbers are made public, and anyone can obtain the information. Therefore, anyone can obtain a list of applications running on the computer by performing port scan on the computer through the well-known port number. Also, anyone can obtain a list of computers on which the target application is operating by performing an IP address sweep. In addition, these applications can easily know the version number by default.

従って,例えばあるアプリケーションに脆弱性が発見された場合,ポートスキャンやIPアドレススイープにより,そのアプリケーションが動作しているコンピュータが第三者に特定されてしまう。そして,その第三者により該コンピュータに不正にアクセス,侵入されてデータが改ざんされたり,他のコンピュータへの攻撃のための踏み台とされるなどの被害が発生していた。さらに最近では,第三者によるこのような不正行為が自動化されたワーム(Worm)と呼ばれるプログラムが大量に作成されており,膨大な数のコンピュータがワームに感染した状態でインターネットに接続されている可能性がある。   Therefore, for example, when a vulnerability is found in an application, a computer on which the application is operating is specified by a third party by port scanning or IP address sweep. In addition, damage such as unauthorized access to and intrusion of the computer by the third party to tamper with data or a stepping stone for attacks on other computers has occurred. More recently, a large number of programs called worms have been created in which such illegal acts by third parties have been automated, and a large number of computers are connected to the Internet in the state of worm infection. there is a possibility.

そこで,ウェルノウンポート番号を使用しないでサーバ・クライアント間で通信を行う方法が提供されている(例えば,特許文献1参照)。本方法では,サーバとクライアントが,予め定められた共通のポート番号決定方式により各々ポート番号を導出して使用することにより,ウェルノウンポート番号を使用しないでサーバ・クライアント間で通信接続を行うことを可能にしている。   Therefore, a method for performing communication between a server and a client without using a well-known port number is provided (see, for example, Patent Document 1). In this method, a server and a client can establish a communication connection between a server and a client without using a well-known port number by deriving and using each port number by a predetermined common port number determination method. It is possible.

特開2004−265122号公報JP 2004-265122 A

しかし,上記方法は,サーバとクライアントが互いに同じポート番号決定方式を用いて利用する方式であり,VPNの一方式である。つまり,通信を前提としたサーバとクライアントに独自方式を実装し,同期させることで初めて動作するものであるため,不特定多数のコンピュータへの適用には適さない。上記方法では,サーバ側で使用されるポート番号をクライアント側で導出することができるため,不特定多数のコンピュータに広く上記方法が適用されてしまえば,第三者はそのポート番号を用いてサーバに不正にアクセスすることが可能となり,上記方法によるセキュリティの保護が意味をなさなくなるという問題点があった。   However, the above method is a method in which the server and the client are used by using the same port number determination method, and is a method of VPN. In other words, it is not suitable for application to an unspecified number of computers because it operates for the first time by implementing and synchronizing a unique method on a server and a client that are premised on communication. In the above method, since the port number used on the server side can be derived on the client side, if the above method is widely applied to an unspecified number of computers, a third party can use the port number to It is possible to gain unauthorized access, and security protection by the above method is meaningless.

そこで,本発明は,このような問題に鑑みてなされたもので,その目的とするところは,TCP/IPプロトコルによるサーバ・クライアント間の通信におけるセキュリティを向上させ,かつ,不特定多数のコンピュータに適用することの可能な,新規かつ改良された通信システム,サーバ,通信方法,およびコンピュータプログラムを提供することにある。   Therefore, the present invention has been made in view of such a problem, and an object of the present invention is to improve security in communication between a server and a client by the TCP / IP protocol, and to an unspecified number of computers. It is an object of the present invention to provide a new and improved communication system, server, communication method, and computer program that can be applied.

上記課題を解決するために,本発明のある観点によれば,1以上のアプリケーションプログラムを備えるサーバと,アプリケーションプログラムとの間でTCP/IPプロトコルにより通信を行うクライアントと,を備える通信システムが提供される。本通信システムにおいて,サーバは,クライアントから,1以上のアプリケーションプログラムのいずれかを一意に特定するプログラム識別子を受信するサーバ受信部と;受信部により受信されたプログラム識別子により特定されるアプリケーションプログラムに,ポート番号を動的に付与するサーバ側ポート番号付与部と;サーバ側ポート番号付与部により付与されたポート番号を,サーバ側ポート番号として,クライアントに送信するサーバ送信部と;を備える。   In order to solve the above-described problem, according to one aspect of the present invention, there is provided a communication system including a server including one or more application programs and a client communicating with the application programs using the TCP / IP protocol. Is done. In the communication system, the server receives a program identifier for uniquely identifying one of one or more application programs from a client; an application program identified by the program identifier received by the receiver; A server-side port number assigning unit that dynamically assigns a port number; and a server transmission unit that transmits the port number assigned by the server-side port number assigning unit to the client as the server-side port number.

クライアントは,通信を行いたいアプリケーションプログラムのプログラム識別子をサーバに送信するクライアント送信部と;サーバからサーバ側ポート番号を受信するクライアント受信部と;を備え,クライアントは,クライアント受信部により受信されたサーバ側ポート番号を用いてサーバのアプリケーションプログラムと通信を行う。   The client includes a client transmission unit that transmits a program identifier of an application program to be communicated to the server; and a client reception unit that receives a server-side port number from the server. The client is a server received by the client reception unit. It communicates with the server application program using the side port number.

上記発明によれば,サーバのアプリケーションとクライアントとの間の通信が,サーバにより動的に付与されたポート番号を用いて行われる。従って,ウェルノウンポート番号を用いていないため,ウェルノウンポート番号を通じて不正にアプリケーションにアクセスされることを防止できる。また,ポート番号がサーバにより動的に決定されるため,サーバからの通知を得ない限り,クライアントはポート番号を知り得ない。従って,クライアントが既知のポート番号を通じてサーバのアプリケーションに不正にアクセスすることを防止し,通信のセキュリティを向上させることができる。   According to the above invention, communication between the server application and the client is performed using the port number dynamically assigned by the server. Therefore, since the well-known port number is not used, unauthorized access to the application through the well-known port number can be prevented. In addition, since the port number is dynamically determined by the server, the client cannot know the port number unless it receives a notification from the server. Therefore, it is possible to prevent the client from illegally accessing the server application through a known port number, and to improve communication security.

上記サーバは,ポート番号を付与したアプリケーションプログラムがクライアントと通信を行う際のクライアント側のポート番号を指定するクライアント側ポート番号指定部をさらに備え,サーバ送信部は,クライアント側ポート番号指定部により指定されたポート番号を,クライアント側ポート番号として,クライアントに送信するようにしてもよい。かかる構成によれば,サーバがクライアント側のポート番号も指定するため,アプリケーションとの通信相手をクライアント側のポート番号単位で制御でき,さらにセキュリティを向上させることができる。   The server further includes a client-side port number specifying unit for specifying the port number on the client side when the application program to which the port number is assigned communicates with the client, and the server transmitting unit is specified by the client-side port number specifying unit The transmitted port number may be transmitted to the client as the client-side port number. According to such a configuration, since the server also specifies the port number on the client side, the communication partner with the application can be controlled in units of the port number on the client side, and security can be further improved.

上記課題を解決するために,本発明の別の観点によれば,1以上のアプリケーションプログラムを備えるサーバと,アプリケーションプログラムとの間でTCP/IPプロトコルにより通信を行うクライアントと,を備える通信システムにおいて,サーバが,アプリケーションプログラムへのアクセスの手順を定めている手順定義テーブルと;手順定義テーブルに定められているアクセスの手順に基づいて,アプリケーションプログラムとクライアントとの通信を許可するか否かを判断する通信可否判断部と;通信可否判断部により通信を許可された場合に,クライアントに指定されたアプリケーションプログラムにクライアントとの通信を開始させる通信開始部と;
を備える通信システムが提供される。
In order to solve the above problems, according to another aspect of the present invention, in a communication system including a server including one or more application programs and a client communicating with the application programs using the TCP / IP protocol. The server determines the procedure definition table that defines the procedure for accessing the application program; and determines whether to allow communication between the application program and the client based on the access procedure defined in the procedure definition table A communication start / stop determining unit that, when communication is permitted by the communication enable / disable determining unit, causes the application program designated by the client to start communication with the client;
A communication system is provided.

通信可否判断部は,クライアントが,予め定められている手順に従ってサーバにアクセスした場合に,該クライアントとアプリケーションプログラムとの通信を許可するよう,通信の許可/不許可を決定するようにしてもよい。   The communication permission / inhibition determining unit may determine permission / non-permission of communication so that communication between the client and the application program is permitted when the client accesses the server according to a predetermined procedure. .

上記発明によれば,サーバは,クライアントが,予め定められた手順によりサーバにアクセスした場合にのみ,そのクライアントとの通信を許可する。そのため,第三者によるサーバ内のアプリケーションへのアクセスを制限することができ,通信のセキュリティを向上させることができる。   According to the above invention, the server permits communication with the client only when the client accesses the server according to a predetermined procedure. For this reason, access to applications in the server by a third party can be restricted, and communication security can be improved.

上記通信システムにおいて,サーバは,アプリケーションプログラムに動的にポート番号を付与するサーバ側ポート番号付与部と;サーバ側ポート番号付与部により付与されたポート番号を,サーバ側ポート番号として,クライアントに送信するサーバ送信部と;をさらに備えてもよく,その場合,通信開始部は,通信可否判断部により通信を許可された場合に,サーバ側ポート番号付与部をしてクライアントに指定されたアプリケーションプログラムにポート番号を付与せしめ,サーバ送信部をして該ポート番号をクライアントに送信せしめるようにしてもよい。かかる構成によれば,サーバがアプリケーションのポート番号を動的に決定する。従って,ウェルノウンポート番号を用いていないため,ウェルノウンポート番号を通じて不正にアプリケーションにアクセスされることを防止できる。また,ポート番号がサーバにより動的に決定されるため,サーバからの通知を得ない限り,クライアントはポート番号を知り得ない。従って,クライアントが既知のポート番号を通じてサーバのアプリケーションに不正にアクセスすることを防止し,通信のセキュリティをさらに向上させることができる。   In the above communication system, the server sends the port number assigned by the server side port number assigning unit to the client as the server side port number, which dynamically assigns a port number to the application program. A server transmission unit that performs communication, and in this case, the communication start unit, when communication is permitted by the communication availability determination unit, serves as a server-side port number assigning unit and is designated by the client as an application program. A port number may be assigned to the server, and a server transmission unit may be used to transmit the port number to the client. According to this configuration, the server dynamically determines the application port number. Therefore, since the well-known port number is not used, unauthorized access to the application through the well-known port number can be prevented. In addition, since the port number is dynamically determined by the server, the client cannot know the port number unless it receives a notification from the server. Therefore, it is possible to prevent the client from illegally accessing the server application through a known port number, thereby further improving the security of communication.

上記通信システムにおいて,サーバは,クライアントから,1以上のアプリケーションプログラムのいずれかを一意に特定するプログラム識別子を受信するサーバ受信部をさらに備えてもよく,その場合,通信開始部は,通信可否判断部により通信を許可された場合に,サーバ受信部をしてクライアントからプログラム識別子を受信せしめ,受信したプログラム識別子により特定されるアプリケーションプログラムをクライアントに指定されたアプリケーションプログラムとするようにしてもよい。かかる構成によれば,アクセス手順を,サーバの各アプリケーションプログラムに共通に定めることができる。   In the communication system, the server may further include a server reception unit that receives a program identifier that uniquely identifies one or more application programs from the client. In this case, the communication start unit determines whether communication is possible. When the communication is permitted by the unit, the server receiving unit may receive the program identifier from the client, and the application program specified by the received program identifier may be the application program specified by the client. According to such a configuration, the access procedure can be commonly set for each application program of the server.

上記手順定義テーブルには,1以上のアプリケーションプログラム毎に,相異なるアクセスの手順が定められていてもよく,その場合,通信開始部は,通信可否判断部によりアプリケーションとの通信を許可されたクライアントによって実行されたアクセスの手順に応じて,クライアントに指定されたアプリケーションを特定するようにしてもよい。かかる構成によれば,アプリケーションプログラムごとに相異なる手順が定められるので,1つのアクセス手順が漏洩した場合であっても,他のアプリケーションプログラムに対する不正なアクセスを防止することができる。   In the above procedure definition table, a different access procedure may be defined for each of one or more application programs. In this case, the communication start unit is a client permitted to communicate with the application by the communication availability determination unit. The application designated by the client may be specified in accordance with the access procedure executed by. According to such a configuration, different procedures are determined for each application program, so that even if one access procedure leaks, unauthorized access to other application programs can be prevented.

上記手順定義テーブルには,1以上のアプリケーションプログラム毎に相異なり,かつ,アプリケーションの利用態様毎に相異なるアクセスの手順が定められていてもよく,その場合,通信開始部は,通信可否判断部によりアプリケーションとの通信を許可されたクライアントによって実行されたアクセスの手順に応じて,クライアントに指定されたアプリケーションおよび利用態様を特定するようにしてもよい。かかる構成によれば,アプリケーションごと,かつその利用態様ごとに異なる手順が定められるので,1つのアクセス手順が漏洩した場合であっても,他の利用態様によるアプリケーションプログラムや,他のアプリケーションプログラムに対する不正なアクセスを防止することができる。   In the above procedure definition table, different access procedures may be defined for each of one or more application programs and for each application usage mode. In this case, the communication start unit may be a communication availability determination unit. The application specified by the client and the usage mode may be specified according to the access procedure executed by the client permitted to communicate with the application. According to such a configuration, different procedures are determined for each application and for each usage mode. Therefore, even if one access procedure is leaked, it is illegal for application programs based on other usage modes or other application programs. Access can be prevented.

上記利用態様には,アプリケーションプログラムにより実行されるクライアントの認証方式,および,クライアントがアプリケーションプログラムを介して接続できるネットワークの種類のいずれかまたは双方を含むようにしてもよい。   The usage mode may include either or both of a client authentication method executed by the application program and a network type to which the client can connect via the application program.

上記アクセスの手順は,サーバがクライアントから受信するポート番号と,ポート番号の受信の順序との組み合わせであってもよい。   The access procedure may be a combination of the port number received by the server from the client and the order of reception of the port number.

また,上記通信システムにおいて,サーバが,手順定義テーブルに定められているアクセスの手順を,所定のタイミングで更新するアクセス手順更新部をさらに備えていてもよい。かかる構成によれば,アクセス手順が更新されるため,一度アクセス手順が漏洩した場合であっても,更新後においては,漏洩したアクセス手順でのアクセスは無効となる。   In the communication system, the server may further include an access procedure update unit that updates an access procedure defined in the procedure definition table at a predetermined timing. According to such a configuration, since the access procedure is updated, even if the access procedure leaks once, the access in the leaked access procedure becomes invalid after the update.

上記通信システムは,アクセスの手順を所定のタイミングで生成し,生成したアクセスの手順をアクセス手順記憶部に保存しているアクセス手順生成サーバを備えてもよく,その場合,サーバのアクセス手順更新部は,所定のタイミングでアクセス手順生成サーバからアクセスの手順を取得し,取得したアクセスの手順により手順定義テーブルを更新するようにしてもよい。   The communication system may include an access procedure generation server that generates an access procedure at a predetermined timing and stores the generated access procedure in an access procedure storage unit. May acquire the access procedure from the access procedure generation server at a predetermined timing, and update the procedure definition table according to the acquired access procedure.

上記課題を解決するために,本発明の別の観点によれば,1以上のアプリケーションプログラムを備え,アプリケーションプログラムとクライアントとのTCP/IPプロトコルによる通信を制御するサーバが提供される。本サーバは,アプリケーションプログラムへのアクセスの手順を定めている手順定義テーブルと;手順定義テーブルに定められているアクセスの手順に基づいて,アプリケーションプログラムとクライアントとの通信を許可するか否かを判断する通信可否判断部と;通信可否判断部により通信を許可された場合に,クライアントに指定されたアプリケーションプログラムにクライアントとの通信を開始させる通信開始部と;を備える。   In order to solve the above-described problems, according to another aspect of the present invention, there is provided a server that includes one or more application programs and controls communication between the application program and the client using the TCP / IP protocol. The server determines whether to allow communication between the application program and the client based on the procedure definition table that defines the procedure for accessing the application program; and the access procedure defined in the procedure definition table. And a communication start unit for causing an application program designated by the client to start communication with the client when communication is permitted by the communication enable / disable determination unit.

上記課題を解決するために,本発明の別の観点によれば,コンピュータに上記のサーバとして機能させるコンピュータプログラムが提供される。コンピュータプログラムは,コンピュータが備える記憶装置に格納され,コンピュータが備えるCPUに読み込まれて実行されることにより,そのコンピュータを上記のサーバとして機能させる。また,コンピュータプログラムが記録された,コンピュータで読み取り可能な記録媒体も提供される。記録媒体は,例えば,磁気ディスク,光ディスクなどである。   In order to solve the above problems, according to another aspect of the present invention, a computer program that causes a computer to function as the server is provided. The computer program is stored in a storage device included in the computer and is read and executed by a CPU included in the computer, thereby causing the computer to function as the server. A computer-readable recording medium on which a computer program is recorded is also provided. The recording medium is, for example, a magnetic disk or an optical disk.

上記課題を解決するために,本発明の別の観点によれば,上記いずれかの通信システムにより実行される通信方法が提供される。   In order to solve the above problems, according to another aspect of the present invention, a communication method executed by any one of the above communication systems is provided.

以上説明したように本発明によれば,TCP/IPプロトコルによるサーバ・クライアント間の通信におけるセキュリティを向上させ,かつ,不特定多数のコンピュータに適用することの可能な,新規かつ改良された通信システム,サーバ,通信方法,およびコンピュータプログラムを提供することができる。   As described above, according to the present invention, a new and improved communication system that can improve security in communication between a server and a client using the TCP / IP protocol and can be applied to an unspecified number of computers. , Server, communication method, and computer program can be provided.

以下に添付図面を参照しながら,本発明の好適な実施の形態について詳細に説明する。なお,本明細書及び図面において,実質的に同一の機能構成を有する構成要素については,同一の符号を付することにより重複説明を省略する。   Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. In the present specification and drawings, components having substantially the same functional configuration are denoted by the same reference numerals, and redundant description is omitted.

(第1実施形態)
まず,図1に基づいて,第1実施形態にかかる通信システムの概要について説明する。本実施形態にかかる通信システム100は,1以上のアプリケーションプログラム(以後,アプリケーションとも称する。)を備えるサーバ104と,サーバ104が備えるアプリケーションとの間でTCP/IPプロトコルにより通信を行うクライアント102を含んで構成される。クライアント102は複数であってもよい。
(First embodiment)
First, an outline of a communication system according to the first embodiment will be described with reference to FIG. A communication system 100 according to the present embodiment includes a server 104 that includes one or more application programs (hereinafter also referred to as applications) and a client 102 that performs communication using an TCP / IP protocol between the applications included in the server 104. Consists of. There may be a plurality of clients 102.

クライアント102およびサーバ104は,通信機能を備えるコンピュータである。サーバ104は,クライアント102からの要求に応じて,サーバ104が有するアプリケーションを起動し,そのアプリケーションとクライアント102との間で通信をさせて,クライアント102が求めるサービスを提供する。サーバ104のアプリケーションとクライアント102とが通信を行う際には,サーバ104がアプリケーションを識別できるように,各アプリケーションに固有のポート番号が割り当てられる。クライアント102は,このポート番号を用いてサーバ104内の特定のアプリケーションと通信を行うことができる。   The client 102 and the server 104 are computers having a communication function. In response to a request from the client 102, the server 104 activates an application included in the server 104 and causes communication between the application and the client 102 to provide a service required by the client 102. When the application of the server 104 and the client 102 communicate, a unique port number is assigned to each application so that the server 104 can identify the application. The client 102 can communicate with a specific application in the server 104 using this port number.

従来は,サーバとクライアントは,ウェルノウンポート番号と称される,アプリケーション毎に固定の既知のポート番号により通信を行っていた。本実施形態では,クライアント102が従来のようにウェルノウンポート番号を指定してサーバ104にアクセスしても,サーバ104はアプリケーションとの通信を開始させない。本実施形態では,サーバ104が各アプリケーションに動的にポート番号を付与し,そのポート番号を用いてサーバ・クライアント間で通信を行うことにより,第三者にポート番号を知られることを防止して,通信のセキュリティを向上させている。以下に,通信システム100について詳細に説明する。   Conventionally, the server and the client communicate with each other by using a known well-known port number called a well-known port number. In this embodiment, even if the client 102 accesses the server 104 by specifying a well-known port number as in the conventional case, the server 104 does not start communication with the application. In this embodiment, the server 104 dynamically assigns a port number to each application and uses the port number to communicate between the server and the client, thereby preventing the port number from being known to a third party. Communication security. Hereinafter, the communication system 100 will be described in detail.

まず,図1に基づいて,クライアント102とサーバ104の機能構成について説明する。クライアント102は,入力部110,クライアント送信部112,およびクライアント受信部114を主に備える。サーバ104は,サーバ受信部120,サーバ送信部122,サーバ側ポート番号付与部124,および通信情報記憶部128を主に備える。以下では,クライアント102とサーバ104の各機能について,データの流れに沿って説明する。   First, the functional configurations of the client 102 and the server 104 will be described with reference to FIG. The client 102 mainly includes an input unit 110, a client transmission unit 112, and a client reception unit 114. The server 104 mainly includes a server reception unit 120, a server transmission unit 122, a server side port number assignment unit 124, and a communication information storage unit 128. Hereinafter, the functions of the client 102 and the server 104 will be described along the data flow.

クライアント102の入力部110は,クライアント102が備えるマウスやキーボード等の入力手段などを介して,利用したいサービスの識別子を入力する。サービスの識別子は,サーバ104のアプリケーションを一意に特定する識別子と対応しており,以後,プログラム識別子と称する。入力部110は,入力したプログラム識別子をクライアント送信部112に提供する。   The input unit 110 of the client 102 inputs an identifier of a service to be used via an input unit such as a mouse or a keyboard provided in the client 102. The service identifier corresponds to an identifier that uniquely identifies the application of the server 104 and is hereinafter referred to as a program identifier. The input unit 110 provides the input program identifier to the client transmission unit 112.

クライアント送信部112は,通信相手であるサーバ104に対し,利用したいサービスについて問い合わせる。詳細には,クライアント送信部112は,サービスの問い合わせを行うプロトコルにより,入力部110から取得したプログラム識別子によって特定されるサービスの問い合わせを行う。サービスの問い合わせを行うプロトコルとしては,例えば,ICMPを利用することができる。その場合,クライアント送信部112は,入力部110から取得したプログラム識別子を,ICMPによりサーバ104に送信する。   The client transmission unit 112 inquires of the server 104 that is the communication partner about the service to be used. Specifically, the client transmission unit 112 inquires about the service specified by the program identifier acquired from the input unit 110 using a protocol for inquiring about the service. As a protocol for inquiring services, for example, ICMP can be used. In that case, the client transmission unit 112 transmits the program identifier acquired from the input unit 110 to the server 104 by ICMP.

サーバ受信部120は,クライアント102から,1以上のアプリケーションプログラムのいずれかを一意に特定するプログラム識別子を受信する。詳細には,サーバ受信部120は,クライアント102から,ICMPにより送信されるプログラム識別子を受信する。サーバ受信部120は,受信したプログラム識別子をサーバ側ポート番号付与部124に提供する。   The server receiving unit 120 receives a program identifier that uniquely identifies one or more application programs from the client 102. Specifically, the server receiving unit 120 receives a program identifier transmitted from the client 102 by ICMP. The server receiving unit 120 provides the received program identifier to the server side port number assigning unit 124.

サーバ側ポート番号付与部124は,サーバ受信部120から取得したプログラム識別子により特定されるアプリケーションに,ポート番号を動的に付与する。サーバ側ポート番号付与部124による動的なポート番号の付与方法は,例えば,使用可能な空きポート番号を小さい番号から順に付与する方法,使用可能な空きポート番号をランダムに付与する方法,付与時の日時などから所定の計算式により算出したポート番号を付与する方法などが考えられる。なお,ポート番号を動的に決定する方法は,上記には限られず,様々な公知の方法を用いることができる。サーバ側ポート番号付与部124は,アプリケーションに付与したポート番号と,そのアプリケーションのプログラム識別子を送信したクライアント102を一意に特定する識別子を関連づけて,通信情報記憶部128に格納する。また,サーバ側ポート番号付与部124は,付与したポート番号をサーバ送信部122に提供する。   The server-side port number assigning unit 124 dynamically assigns a port number to the application specified by the program identifier acquired from the server receiving unit 120. The dynamic port number assigning method by the server-side port number assigning unit 124 includes, for example, a method of assigning available free port numbers in order from a small number, a method of randomly assigning usable free port numbers, and at the time of granting. For example, a method of assigning a port number calculated by a predetermined calculation formula from the date and time or the like can be considered. The method of dynamically determining the port number is not limited to the above, and various known methods can be used. The server-side port number assigning unit 124 stores the port number assigned to the application in the communication information storage unit 128 in association with the identifier that uniquely identifies the client 102 that has transmitted the program identifier of the application. The server-side port number assigning unit 124 provides the assigned port number to the server transmitting unit 122.

通信情報記憶部128は,RAMやハードディスク等のメモリを含んで構成され,クライアント102の識別子と,サーバ104内のアプリケーションに付与されたポート番号とを関連づけて記憶する。図2に,通信情報記憶部128に記憶される情報の一例を示した。図2に示すように,通信情報記憶部128には,ID1280,クライアント識別子1282,およびサーバ側ポート番号1284が関連づけて記憶されている。   The communication information storage unit 128 includes a memory such as a RAM or a hard disk, and stores the identifier of the client 102 and the port number assigned to the application in the server 104 in association with each other. FIG. 2 shows an example of information stored in the communication information storage unit 128. As shown in FIG. 2, the communication information storage unit 128 stores an ID 1280, a client identifier 1282, and a server-side port number 1284 in association with each other.

ID1280は,クライアント識別子とサーバ側ポート番号との組み合わせに各々付与される番号である。クライアント識別子1282は,クライアント102を一意に特定する識別子であり,例えば,クライアント102のIPアドレスとすることができる。サーバ側ポート番号1284は,サーバ104内のアプリケーションに付与されたポート番号である。詳細には,同一のIDにより関連づけられているクライアント識別子1282によって特定されるクライアント102と通信を行うアプリケーションに割り当てられたポート番号である。   ID 1280 is a number assigned to each combination of a client identifier and a server-side port number. The client identifier 1282 is an identifier that uniquely identifies the client 102, and can be, for example, the IP address of the client 102. The server side port number 1284 is a port number assigned to an application in the server 104. Specifically, it is a port number assigned to an application that communicates with the client 102 specified by the client identifier 1282 associated with the same ID.

サーバ104は,クライアント102から,そのクライアント102の通信相手であるアプリケーションのポート番号を含むデータを受信すると,通信情報記憶部128を参照し,データの送信元であるクライアント102のIPアドレスと,受信したデータに含まれるポート番号とが通信情報記憶部128において関連づけられている場合に,クライアント102と,ポート番号により特定されるアプリケーションとの通信を取り次ぐことができる。なお,通信情報記憶部128には,サーバ側ポート番号により特定されるアプリケーションの識別子がさらに関連づけられて記憶されていてもよい。   When the server 104 receives data including the port number of the application that is the communication partner of the client 102 from the client 102, the server 104 refers to the communication information storage unit 128, receives the IP address of the client 102 that is the data transmission source, and the reception When the port number included in the data is associated in the communication information storage unit 128, communication between the client 102 and the application specified by the port number can be relayed. The communication information storage unit 128 may further store an application identifier specified by the server-side port number in association with each other.

図1に戻る。サーバ送信部122は,サーバ側ポート番号付与部124から取得したポート番号を,クライアント102に送信する。詳細には,サーバ送信部122は,クライアント102からのサービスの問い合わせに対する応答として,ポート番号をクライアント102に送信する。例えば,サーバ送信部122は,ポート番号を,ICMPの応答によりクライアント102に送信する。   Returning to FIG. The server transmission unit 122 transmits the port number acquired from the server-side port number assigning unit 124 to the client 102. Specifically, the server transmission unit 122 transmits the port number to the client 102 as a response to the service inquiry from the client 102. For example, the server transmission unit 122 transmits the port number to the client 102 by an ICMP response.

クライアント受信部114は,サーバ104からポート番号を受信する。その後,クライアント102は,クライアント受信部114が受信したポート番号を用いてサーバ104にアクセスすることにより,サーバ104においてそのポート番号が付与されたアプリケーションと通信を行うことができる。   The client receiving unit 114 receives a port number from the server 104. Thereafter, the client 102 accesses the server 104 using the port number received by the client receiving unit 114, so that the server 104 can communicate with the application to which the port number is assigned.

上記構成の通信システム100により実行される通信方法について,図3を参照して説明する。   A communication method executed by the communication system 100 configured as described above will be described with reference to FIG.

図3に示すように,まず,クライアント102が,サーバ104に対して,利用したいサービスの問い合わせを行う(S100)。詳細には,クライアント102が,ICMP等の,サービスの問い合わせを行うプロトコルで,利用したいサービスの識別子をサーバ104に送信する。サーバ104は,問い合わせを受けて,該当サービスをサーバ104が提供していれば,そのサービスに対応するアプリケーションにポート番号を動的に割り当てる(S102)。詳細には,サーバ104は,クライアント102から受信したデータに含まれるプログラム識別子により特定されるアプリケーションをサーバ104が有していれば,そのアプリケーションにポート番号を動的に割り当てる。続いて,サーバ104は,アプリケーションに割り当てたポート番号と,サービスの問い合わせ元であるクライアント102の識別子とを関連づけて,通信情報記憶部128に格納する(S104)。そして,サーバ104は,S102で割り当てたポート番号を,クライアント102に送信する(S106)。   As shown in FIG. 3, first, the client 102 inquires of the server 104 about a service to be used (S100). More specifically, the client 102 transmits an identifier of a service to be used to the server 104 by using a protocol for inquiring a service such as ICMP. Upon receiving the inquiry, if the server 104 provides the corresponding service, the server 104 dynamically assigns a port number to the application corresponding to the service (S102). Specifically, if the server 104 has an application specified by the program identifier included in the data received from the client 102, the server 104 dynamically assigns a port number to the application. Subsequently, the server 104 associates the port number assigned to the application with the identifier of the client 102 as the service inquiry source, and stores it in the communication information storage unit 128 (S104). Then, the server 104 transmits the port number assigned in S102 to the client 102 (S106).

クライアント102は,ポート番号を受信後,受信したポート番号を用いて,サーバ104に接続を要求する(S108)。サーバ104は,要求を受けて,プロトコル,アプリケーション毎の接続シーケンスを実行する(S110)。詳細には,サーバ104は,通信情報記憶部128に基づいて,クライアント102から受信したデータに含まれるポート番号により識別されるアプリケーションを起動する。その後,起動したアプリケーションが,クライアント102との間で通信接続を行い,通信を実行する。   After receiving the port number, the client 102 requests connection to the server 104 using the received port number (S108). Upon receiving the request, the server 104 executes a connection sequence for each protocol and application (S110). Specifically, the server 104 activates an application identified by the port number included in the data received from the client 102 based on the communication information storage unit 128. Thereafter, the started application establishes communication connection with the client 102 and executes communication.

上記構成によれば,サーバ104は,クライアント102からサービスの問い合わせを受けて,そのサービスに応じたアプリケーションに動的にポート番号を割り当てる。そしてサーバ104は,問い合わせに対する応答として,アプリケーションに割り当てたポート番号をクライアント102に送信する。そのポート番号を用いることにより,クライアント102は,サーバ104内の所望のアプリケーションと通信を行うことができる。このように,ポート番号がサーバ104によって動的に割り当てられるため,ポート番号を第三者に知られることを防止できる。   According to the above configuration, the server 104 receives a service inquiry from the client 102 and dynamically assigns a port number to an application corresponding to the service. Then, the server 104 transmits the port number assigned to the application to the client 102 as a response to the inquiry. By using the port number, the client 102 can communicate with a desired application in the server 104. Thus, since the port number is dynamically assigned by the server 104, it is possible to prevent the port number from being known to a third party.

また,ポートスキャンに関しては,従来は全ポートに対してパケットを送信し,各ポートの反応を見るという一括処理が可能であったが,上記構成では,逐一サービスを指定して確認するという処理が必要となる。そのため,サーバ104は,同じクライアント102からの同時アクセス数を制限することが容易であり,ポートスキャンに要する時間を引き延ばすことができる。また,一般的に,大量のサービスを順番に要求するクライアントは正常な動作ではないといえることから,容易に不正なクライアントを発見できるという利点もある。   As for port scan, it was possible to send a packet to all ports and see the response of each port in the past. However, in the above configuration, the process of specifying and checking the service one by one is confirmed. Necessary. Therefore, the server 104 can easily limit the number of simultaneous accesses from the same client 102, and can extend the time required for port scanning. In general, a client that requests a large number of services in order is not normally operated, so that there is an advantage that an unauthorized client can be easily found.

また,IPアドレススイープに関しては,個々のサーバ104にとっては正常なアクセスであるが,ISPやIDSなど,サーバ104の上位装置では,同じ送信元からの大量のICMPトラフィックが観測できるため,不正に気づきやすいという利点がある。   In addition, IP address sweep is normal access for each server 104, but a host device such as ISP or IDS can observe a large amount of ICMP traffic from the same transmission source, so it is illegally noticed. There is an advantage that it is easy.

(変形例1)
本実施形態において,サーバ104がクライアント側のポート番号も指定することにより,さらにセキュリティを向上させることができる。その場合,図1に示すように,サーバ104に,クライアント側ポート番号指定部126が備えられる。クライアント側ポート番号指定部126は,サーバ側ポート番号付与部124から,クライアント識別子と,サーバ側ポート番号付与部がアプリケーションに付与したサーバ側のポート番号とを取得する。そしてクライアント側ポート番号指定部126は,クライアント識別子により特定されるクライアント102と,サーバ側ポート番号により特定されるアプリケーションとが通信を行う場合に,クライアント102に使用させるクライアント102側のポート番号を指定する。
(Modification 1)
In the present embodiment, the server 104 also specifies the port number on the client side, so that security can be further improved. In this case, as shown in FIG. 1, the server 104 is provided with a client-side port number designation unit 126. The client-side port number specifying unit 126 acquires the client identifier and the server-side port number assigned to the application by the server-side port number assigning unit from the server-side port number assigning unit 124. The client-side port number designating unit 126 designates the port number on the client 102 side to be used by the client 102 when the client 102 identified by the client identifier communicates with the application identified by the server-side port number. To do.

クライアント側ポート番号指定部126は,クライアント識別子,サーバ側のポート番号,および指定したクライアント側のポート番号を関連づけて,通信情報記憶部128に格納する。また,クライアント側ポート番号指定部126は,指定したクライアント側のポート番号をサーバ送信部122に提供する。サーバ送信部122は,クライアント側ポート番号指定部126から取得したクライアント側のポート番号と,サーバ側ポート番号不要部124から取得したサーバ側のポート番号とを,クライアント102に送信する。   The client-side port number designating unit 126 associates the client identifier, the server-side port number, and the designated client-side port number and stores them in the communication information storage unit 128. In addition, the client-side port number designating unit 126 provides the designated client-side port number to the server transmitting unit 122. The server transmission unit 122 transmits the client-side port number acquired from the client-side port number specifying unit 126 and the server-side port number acquired from the server-side port number unnecessary unit 124 to the client 102.

通信情報記憶部128には,図2に示すように,上述のデータに加えて,クライアント側ポート番号1286が記憶される。クライアント側ポート番号1286は,サーバ側ポート番号1284により特定されるサーバ104内のアプリケーションが,クライアント識別子1282により識別されるクライアントと通信を行う場合の,クライアント102により使用されるクライアント側のポート番号である。なお,サーバ104は,クライアント102のポート番号を「Any」と指定して,いずれのポート番号からの通信でも受け付けるようにすることもできる。   As shown in FIG. 2, the communication information storage unit 128 stores a client-side port number 1286 in addition to the above-described data. The client-side port number 1286 is a client-side port number used by the client 102 when an application in the server 104 specified by the server-side port number 1284 communicates with the client identified by the client identifier 1282. is there. The server 104 can also accept communication from any port number by designating the port number of the client 102 as “Any”.

サーバ104は,クライアント102から,そのクライアント102の通信相手であるアプリケーションのポート番号を含むデータを受信すると,通信情報記憶部128を参照し,データの送信元であるクライアント102のIPアドレスと,クライアント102が使用しているクライアント側のポート番号と,受信したデータに含まれるサーバ側のポート番号とが通信情報記憶部128において関連づけられている場合に,クライアント102と,ポート番号により特定されるアプリケーションとの通信を取り次ぐことができる。   When the server 104 receives data including the port number of the application that is the communication partner of the client 102 from the client 102, the server 104 refers to the communication information storage unit 128, the IP address of the client 102 that is the data transmission source, and the client When the communication information storage unit 128 associates the client-side port number used by the client 102 with the server-side port number included in the received data, the client 102 and the application identified by the port number You can relay communication with.

サーバ104がクライアント側のポート番号も指定する場合の,通信システム100における通信方法を図4を参照して説明する。   A communication method in the communication system 100 when the server 104 also designates a client-side port number will be described with reference to FIG.

図4に示すように,まず,クライアント102が,サーバ104に対して,利用したいサービスの問い合わせを行う(S200)。サーバ104は,問い合わせを受けて,該当サービスをサーバ104が提供していれば,そのサービスに対応するアプリケーションにポート番号を動的に割り当てる(S202)。また,サーバ104は,クライアント側のポート番号を指定する(S204)。続いて,サーバ104は,アプリケーションに割り当てたポート番号と,サービスの問い合わせ元であるクライアント102の識別子と,指定したクライアント側のポート番号とを関連づけて,通信情報記憶部128に格納する(S206)。そして,サーバ104は,S202で割り当てたサーバ側のポート番号と,S204で指定したクライアント側のポート番号とを,クライアント102に送信する(S208)。   As shown in FIG. 4, first, the client 102 inquires of the server 104 about a service to be used (S200). In response to the inquiry, if the server 104 provides the corresponding service, the server 104 dynamically assigns a port number to the application corresponding to the service (S202). Further, the server 104 designates a port number on the client side (S204). Subsequently, the server 104 associates the port number assigned to the application, the identifier of the client 102 as the service inquiry source, and the designated client-side port number, and stores them in the communication information storage unit 128 (S206). . Then, the server 104 transmits the server-side port number assigned in S202 and the client-side port number specified in S204 to the client 102 (S208).

クライアント102は,サーバ側のポート番号とクライアント側のポート番号を受信後,受信した2つのポート番号を用いて,サーバ104に接続を要求する(S210)。サーバ104は,要求を受けて,プロトコル,アプリケーション毎の接続シーケンスを実行する(S212)。   After receiving the server-side port number and the client-side port number, the client 102 requests connection to the server 104 using the two received port numbers (S210). Upon receiving the request, the server 104 executes a connection sequence for each protocol and application (S212).

上記構成によれば,サーバ104は,サーバ104内のアプリケーションと通信を行うクライアント102のポート番号も指定できる。そのため,サーバ104は,同一クライアント102からのアプリケーションへの接続要求であっても,指定したクライアント側のポート番号を用いている場合のみ,クライアント102とアプリケーションとの通信接続を許可することができ,サーバ・クライアント間の通信におけるセキュリティをより向上させることができる。   According to the above configuration, the server 104 can also specify the port number of the client 102 that communicates with the application in the server 104. Therefore, the server 104 can permit the communication connection between the client 102 and the application only when the specified client-side port number is used, even if the connection request from the same client 102 is made to the application. Security in communication between the server and the client can be further improved.

(第2実施形態)
次に,第2実施形態にかかる通信システム200について説明する。まず,図5に基づいて,本実施形態にかかる通信システムの概要について説明する。本実施形態にかかる通信システム200は,1以上のアプリケーションを備えるサーバ204と,サーバ204が備えるアプリケーションとの間でTCP/IPプロトコルにより通信を行うクライアント202を含んで構成される。クライアント202は複数であってもよい。
(Second Embodiment)
Next, a communication system 200 according to the second embodiment will be described. First, an outline of a communication system according to the present embodiment will be described based on FIG. A communication system 200 according to the present embodiment includes a server 204 including one or more applications and a client 202 that performs communication using the TCP / IP protocol between applications included in the server 204. There may be a plurality of clients 202.

クライアント202およびサーバ204は,通信機能を備えるコンピュータである。サーバ204は,クライアント202からの要求に応じて,サーバ204が有するアプリケーションを起動し,そのアプリケーションとクライアント202との間で通信をさせて,クライアント202が求めるサービスを提供する。サーバ204のアプリケーションとクライアント202とが通信を行う際には,サーバ204がアプリケーションを識別できるように,各アプリケーションに固有のポート番号が割り当てられる。クライアント202は,このポート番号を用いてサーバ204内の特定のアプリケーションと通信を行うことができる。   The client 202 and the server 204 are computers having a communication function. In response to a request from the client 202, the server 204 activates an application included in the server 204 and causes communication between the application and the client 202 to provide a service required by the client 202. When the application of the server 204 and the client 202 communicate, a unique port number is assigned to each application so that the server 204 can identify the application. The client 202 can communicate with a specific application in the server 204 using this port number.

本実施形態でも,第1実施形態と同様に,クライアント202が従来のようにウェルノウンポート番号を指定してサーバ204にアクセスしても,サーバ204はアプリケーションとの通信を開始させない。第1実施形態では,サーバがクライアントからサービスの問い合わせを受けて,そのサービスに対応するアプリケーションに動的にポート番号を付与し,そのポート番号を用いてサーバ・クライアント間での通信を行った。本実施形態では,サーバ204が,サーバ204内のアプリケーションとの通信を許可するか否かを,予め定められた手順に従ってクライアント202がサーバ204にアクセスしたか否かにより判断する。クライアント202が,予め定められた手順に従ってサーバ204にアクセスした場合にのみ,クライアント202にサーバ204内のアプリケーションとの通信を可能にすることにより,第三者によるサーバ204内のアプリケーションへの不正なアクセスを防止し,通信のセキュリティを向上させている。以下に,通信システム200について詳細に説明する。   In this embodiment, as in the first embodiment, even if the client 202 accesses the server 204 by specifying a well-known port number as in the conventional case, the server 204 does not start communication with the application. In the first embodiment, a server receives a service inquiry from a client, dynamically assigns a port number to an application corresponding to the service, and performs communication between the server and the client using the port number. In the present embodiment, whether or not the server 204 permits communication with an application in the server 204 is determined based on whether or not the client 202 has accessed the server 204 according to a predetermined procedure. Only when the client 202 accesses the server 204 in accordance with a predetermined procedure, by allowing the client 202 to communicate with the application in the server 204, a third party can illegally Access is prevented and communication security is improved. Hereinafter, the communication system 200 will be described in detail.

図5に基づいて,クライアント202とサーバ204の機能構成について説明する。クライアント202は,入力部210,クライアント送信部212,およびクライアント手順定義テーブル記憶部216を主に備える。サーバ204は,サーバ受信部220,通信可否判断部230,サーバ定義手順テーブル記憶部232,および通信開始部234を主に備える。以下では,クライアント202とサーバ204の各機能について,データの流れに沿って説明する。   The functional configuration of the client 202 and the server 204 will be described based on FIG. The client 202 mainly includes an input unit 210, a client transmission unit 212, and a client procedure definition table storage unit 216. The server 204 mainly includes a server reception unit 220, a communication availability determination unit 230, a server definition procedure table storage unit 232, and a communication start unit 234. Hereinafter, each function of the client 202 and the server 204 will be described along the data flow.

クライアント202の入力部210は,クライアント202が備えるマウスやキーボード等の入力手段などを介して,利用したいサービスの識別子を入力する。サービスの識別子は,サーバ204のアプリケーションを一意に特定する識別子と対応しており,以後,プログラム識別子と称する。入力部210は,入力したプログラム識別子をクライアント送信部212に提供する。   The input unit 210 of the client 202 inputs an identifier of a service to be used via an input unit such as a mouse or a keyboard provided in the client 202. The service identifier corresponds to an identifier that uniquely identifies the application of the server 204, and is hereinafter referred to as a program identifier. The input unit 210 provides the input program identifier to the client transmission unit 212.

クライアント送信部212は,利用したいサービスに応じて,予め定められている手順でサーバ204にアクセスを行う。詳細には,クライアント送信部212は,クライアント手順定義テーブル記憶部216に記憶されているアクセスの手順を参照して,アプリケーションごとに予め定められているアクセスの手順に従って,サーバ204にアクセスする。クライアント手順定義テーブル記憶部216には,サーバ204内のアプリケーション毎にアクセスの手順を定めた手順定義テーブルが記憶されている。クライアント手順定義テーブル記憶部216に記憶される手順定義テーブルは,サーバ204のサーバ手順定義テーブル記憶部232に記憶される手順定義テーブルと同一,または一部である。ここで,図6を参照して,手順定義テーブルについて説明する。   The client transmission unit 212 accesses the server 204 according to a predetermined procedure according to the service desired to be used. Specifically, the client transmission unit 212 refers to the access procedure stored in the client procedure definition table storage unit 216, and accesses the server 204 according to the access procedure predetermined for each application. The client procedure definition table storage unit 216 stores a procedure definition table that defines an access procedure for each application in the server 204. The procedure definition table stored in the client procedure definition table storage unit 216 is the same as or a part of the procedure definition table stored in the server procedure definition table storage unit 232 of the server 204. Here, the procedure definition table will be described with reference to FIG.

図6に示すように,手順定義テーブルには,アプリケーション2320と,アクセス手順2322が関連づけられている。アプリケーション2320には,サーバ204が保有する,またはサーバ204が保有可能なアプリケーションの識別子であるプログラム識別子が格納される。アクセス手順2322には,プログラム識別子により特定されるアプリケーションとの通信接続がサーバ204により許可されるための,サーバ204へのアクセスの手順が格納されている。本実施形態では,アクセスの手順を,接続要求の接続先と,その順番とする。詳細には,プロトコルとポート番号の種類と,その順番とする。   As shown in FIG. 6, an application 2320 and an access procedure 2322 are associated with the procedure definition table. The application 2320 stores a program identifier that is an identifier of an application that the server 204 has or can hold. The access procedure 2322 stores a procedure for accessing the server 204 for allowing the server 204 to establish a communication connection with the application specified by the program identifier. In this embodiment, the access procedure is the connection destination of the connection request and its order. Specifically, the type of protocol and port number, and their order.

具体的には,図6の例によれば,クライアント202がサーバ204内のhttpサーバアプリケーションと通信を行うためには,クライアント202は,まずTCPでポート番号80を指定してサーバ204に接続要求をし,次にTCPでポート番号80を指定してサーバ204に接続要求をし,次に,TCPでポート番号80を指定してサーバ204に接続要求をする。つまり,クライアント202がサーバ204内のhttpサーバアプリケーションと通信を行うためのアクセス手順は,TCPでポート番号80を指定した接続要求を連続して3回行うこととなる。図6に示すように,FTP,TELNET等の他のアプリケーションにも,各アプリケーションに固有のアクセス手順が定められている。   Specifically, according to the example of FIG. 6, in order for the client 202 to communicate with the http server application in the server 204, the client 202 first specifies a port number 80 by TCP and makes a connection request to the server 204. Next, the port number 80 is designated by TCP and a connection request is made to the server 204. Next, the port number 80 is designated by TCP and the connection request is made to the server 204. In other words, the access procedure for the client 202 to communicate with the http server application in the server 204 is to make three consecutive connection requests specifying the port number 80 in TCP. As shown in FIG. 6, an access procedure unique to each application is defined for other applications such as FTP and TELNET.

図5に戻り,クライアント送信部212の説明を続ける。クライアント送信部212は,入力部210から取得したプログラム識別子を,クライアント手順定義テーブル記憶部216から検索し,該当するプログラム識別子に関連づけられているアクセス手順を参照する。そして,そのアクセス手順に従って,サーバ204に接続要求を行い,アクセスする。   Returning to FIG. 5, the description of the client transmission unit 212 is continued. The client transmission unit 212 searches the client procedure definition table storage unit 216 for the program identifier acquired from the input unit 210, and refers to the access procedure associated with the corresponding program identifier. Then, according to the access procedure, a connection request is made to the server 204 and accessed.

サーバ受信部220は,クライアント202からのアクセスを受け付ける。詳細には,サーバ受信部220は,クライアント202からの接続要求を受信して,受信した接続要求を,受信した順序に従って通信可否判断部230に提供する。   The server receiving unit 220 accepts access from the client 202. Specifically, the server reception unit 220 receives a connection request from the client 202 and provides the received connection request to the communication availability determination unit 230 according to the received order.

通信可否判断部230は,手順定義テーブルに定められているアクセスの手順に基づいて,クライアント202がアクセスの手順に従ってサーバ204にアクセスした場合に,そのクライアント202とアプリケーションとの通信を許可するよう,アプリケーションとクライアント202との通信を許可するか否かを判断する。詳細には,通信可否判断部230は,サーバ受信部220が取得した接続要求の種類とその順番を,サーバ手順定義テーブル記憶部232に記憶される手順定義テーブルから検索する。該当するアクセス手順が手順定義テーブルに定められていた場合には,サーバ204は,そのアクセス手順に関連づけられているプログラム識別子により特定されるアプリケーションと,クライアント202との通信を許可し,そのアプリケーションのプログラム識別子を通信開始部234に通知する。一方,該当するアクセス手順が手順定義テーブルに定められていない場合には,サーバ204は,クライアント202がサーバ204内のいずれのアプリケーションとも通信を行うことを許可せず,サーバ204はクライアント202からの接続要求に対する応答を行わない。または,サーバ204は,通信不許可の通知をクライアント202に対して行うようにしてもよい。   Based on the access procedure defined in the procedure definition table, the communication availability determination unit 230 allows the communication between the client 202 and the application when the client 202 accesses the server 204 according to the access procedure. It is determined whether communication between the application and the client 202 is permitted. Specifically, the communication availability determination unit 230 searches the procedure definition table stored in the server procedure definition table storage unit 232 for the type and order of the connection requests acquired by the server reception unit 220. When the corresponding access procedure is defined in the procedure definition table, the server 204 permits communication between the client 202 and the application specified by the program identifier associated with the access procedure, and The program identifier is notified to the communication start unit 234. On the other hand, if the corresponding access procedure is not defined in the procedure definition table, the server 204 does not allow the client 202 to communicate with any application in the server 204, and the server 204 Do not respond to connection requests. Alternatively, the server 204 may notify the client 202 that communication is not permitted.

通信開始部234は,通信可否判断部230により通信を許可された場合に,クライアント202に指定されたアプリケーションにクライアント202との通信を開始させる。詳細には,通信開始部234は,通信可否判断部230からプログラム識別子を取得し,そのプログラム識別子により特定されるアプリケーションを起動させる。そして,通信開始部234は,そのアプリケーションのウェルノウンポートを開いて,ウェルノウンポートを介したアプリケーションとクライアント202との通信を開始させる。以後,クライアント202は,ウェルノウンポートを介して,サーバ204内の所望のアプリケーションと通信を行い,サービスの提供を受けることができる。   The communication start unit 234 causes the application designated by the client 202 to start communication with the client 202 when communication is permitted by the communication availability determination unit 230. Specifically, the communication start unit 234 acquires a program identifier from the communication availability determination unit 230 and activates an application specified by the program identifier. Then, the communication start unit 234 opens the well-known port of the application and starts communication between the application and the client 202 via the well-known port. Thereafter, the client 202 can communicate with a desired application in the server 204 via the well-known port and receive a service.

上記構成による通信システム200により実行される通信方法を,図7を参照して説明する。まず,クライアント202が,利用したいサービスのアクセス手順を手順定義テーブルから参照する(S300)。次に,クライアント202は,参照した手順に従って,サーバ204にアクセスする(S302)。   A communication method executed by the communication system 200 having the above configuration will be described with reference to FIG. First, the client 202 refers to the access procedure of the service desired to be used from the procedure definition table (S300). Next, the client 202 accesses the server 204 according to the referred procedure (S302).

サーバ204は,クライアント202からのアクセスを受けると,手順定義テーブルに基づいて,クライアント202からのアクセスの手順が,予め定められた手順であるかを照合し,通信を許可するか否かを判断する(S304)。サーバ204は,通信を許可する場合には,クライアント202から要求されたアプリケーションのウェルノウンポートを開いて,クライアント202に対して応答を行う(S306)。   When the server 204 receives an access from the client 202, the server 204 checks whether the access procedure from the client 202 is a predetermined procedure based on the procedure definition table, and determines whether to permit communication. (S304). When permitting communication, the server 204 opens a well-known port of the application requested from the client 202 and responds to the client 202 (S306).

上記構成によれば,サーバ204は,アプリケーションごとに予め定められた手順によりクライアント202からアクセスされた場合にのみ,クライアント202とアプリケーションとの通信を許可する。そのため,サーバ204内のアプリケーションとクライアント202間の通信にアプリケーションのウェルノウンポートを使用する場合でも,アクセス手順を知っているクライアント202しかアプリケーションにアクセスすることができない。そのため,サーバ204内のアプリケーションへの不正なアクセスを防止し,セキュリティを向上させることができる。また,アプリケーションごとに異なるアクセスの手順を定めることによって,1つのアクセス手順が漏洩した場合であっても,他のアプリケーションへの不正なアクセスを防止することができる。   According to the above configuration, the server 204 permits communication between the client 202 and the application only when accessed from the client 202 by a procedure predetermined for each application. Therefore, even when the well-known port of the application is used for communication between the application in the server 204 and the client 202, only the client 202 who knows the access procedure can access the application. Therefore, unauthorized access to the application in the server 204 can be prevented and security can be improved. Also, by defining different access procedures for each application, it is possible to prevent unauthorized access to other applications even if one access procedure is leaked.

また,ポートスキャンやIPアドレススイープに関しては,上記構成では,第三者がアクセスの手順を知っている場合であっても,サーバ204が提供しているサービス(サーバ204が有しているアプリケーション)の一覧を得るためには,各サービスについてアクセスの手順を実行してみなくてはならず,非常に多くの処理が必要となる。従って,スクリプト化し難く,また,管理者にポートスキャン等を気づかれやすいため,第三者によりポートスキャンやIPアドレススイープが容易に行われることを防止できるという利点がある。   As for port scan and IP address sweep, in the above configuration, even if a third party knows the access procedure, the service provided by the server 204 (the application that the server 204 has) In order to obtain a list of services, access procedures must be executed for each service, which requires a great deal of processing. Accordingly, there is an advantage that it is difficult to make a script and it is easy for the administrator to notice the port scan or the like, so that it is possible to prevent a port scan or IP address sweep from being easily performed by a third party.

また,VPNのような暗号化通信を行うアプリケーションを考えた場合,独自の仕様で接続要求を実行させることができ,VPN通信を行っているサーバかどうかを外部からは分からないようにすることができるという利点がある。なお,VPNサービスへの接続には,従来どおりの認証方式が利用可能であり,セキュリティがさらに向上する。   In addition, when considering an application that performs encrypted communication such as VPN, it is possible to execute a connection request with unique specifications so that the server does not know whether it is a VPN communication server. There is an advantage that you can. Note that the conventional authentication method can be used for connection to the VPN service, further improving security.

(変形例1)
本実施形態において,サーバ204は,上記のようにアプリケーションのウェルノウンポートを用いるのではなく,第1実施形態のように動的にポート番号をアプリケーションに付与するようにしてもよい。また,サーバ204は,クライアント側のポート番号を指定するようにしてもよい。その場合,図5に示したように,サーバ204に,サーバ側ポート番号付与部224,クライアント側ポート番号指定部226,通信情報記憶部228,およびサーバ送信部222が備えられ,クライアント202にクライアント受信部214が備えられる。サーバ側ポート番号付与部224,クライアント側ポート番号指定部226,通信情報記憶部228,およびサーバ送信部222,およびクライアント受信部214は,第1実施形態にかかるサーバ側ポート番号付与部124,クライアント側ポート番号指定部126,通信情報記憶部128,およびサーバ送信部122,およびクライアント受信部114と同様の機能を有するため,説明を省略する。
(Modification 1)
In this embodiment, the server 204 may dynamically assign a port number to the application as in the first embodiment, instead of using the well-known port of the application as described above. Further, the server 204 may designate a port number on the client side. In this case, as shown in FIG. 5, the server 204 includes a server-side port number assigning unit 224, a client-side port number specifying unit 226, a communication information storage unit 228, and a server transmission unit 222. A receiving unit 214 is provided. The server-side port number assigning unit 224, the client-side port number specifying unit 226, the communication information storage unit 228, the server transmitting unit 222, and the client receiving unit 214 are the server-side port number assigning unit 124, the client according to the first embodiment. The functions are the same as those of the side port number designation unit 126, the communication information storage unit 128, the server transmission unit 122, and the client reception unit 114, and thus description thereof is omitted.

サーバ204がサーバ側のポート番号を動的に付与する場合の通信方法を図8を参照して説明する。まず,クライアント202が,利用したいサービスのアクセス手順を手順定義テーブルから参照する(S400)。次に,クライアント202は,参照した手順に従って,サーバ204にアクセスする(S402)。   A communication method when the server 204 dynamically assigns a port number on the server side will be described with reference to FIG. First, the client 202 refers to the access procedure of the service desired to be used from the procedure definition table (S400). Next, the client 202 accesses the server 204 according to the referred procedure (S402).

サーバ204は,クライアント202からのアクセスを受けると,手順定義テーブルに基づいて,クライアント202からのアクセスの手順が,予め定められた手順であるかを照合し,通信を許可するか否かを判断する(S404)。サーバ204は,通信を許可する場合には,要求されたアプリケーションに動的にポート番号を割り当て(S406),クライアント202の識別子とポート番号とを関連づけて通信情報記憶部228に記憶する(S408)。次に,サーバ204は,S406で割り当てたポート番号をクライアント202に送信する(S410)。   When the server 204 receives an access from the client 202, the server 204 checks whether the access procedure from the client 202 is a predetermined procedure based on the procedure definition table, and determines whether to permit communication. (S404). When permitting communication, the server 204 dynamically assigns a port number to the requested application (S406), associates the identifier of the client 202 with the port number, and stores them in the communication information storage unit 228 (S408). . Next, the server 204 transmits the port number assigned in S406 to the client 202 (S410).

クライアント202は,ポート番号を受信後,受信したポート番号を用いて,サーバ204に接続を要求する(S412)。サーバ204は,要求を受けて,プロトコル,アプリケーション毎の接続シーケンスを実行する(S414)。   After receiving the port number, the client 202 requests connection to the server 204 using the received port number (S412). In response to the request, the server 204 executes a connection sequence for each protocol and application (S414).

上記通信方法によるサーバ204・クライアント202間での具体的なデータの流れを図9に示した。図9では,クライアント202が,図6に示した手順定義テーブルに基づいて,サーバ204内のftpサーバアプリケーションとの通信接続をサーバ204に要求する場合の,サーバ204・クライアント202間のデータの流れを示している。   FIG. 9 shows a specific data flow between the server 204 and the client 202 by the communication method. In FIG. 9, the flow of data between the server 204 and the client 202 when the client 202 requests the server 204 to establish a communication connection with the ftp server application in the server 204 based on the procedure definition table shown in FIG. Is shown.

クライアント202は,アクセスの手順に従って,まず,ICMPのechoコマンドをサーバ204に送信する(S430)。次に,クライアント202は,TCPでポート番号80を指定してサーバ204に接続要求を行う(S432)。次に,クライアント202は,UDPでポート番号999を指定してサーバ204に接続要求を行う(S434)。次に,クライアント202は,TCPでポート番号2を指定してサーバ204に接続要求を行う(S436)。   The client 202 first transmits an ICMP echo command to the server 204 in accordance with the access procedure (S430). Next, the client 202 designates the port number 80 by TCP and makes a connection request to the server 204 (S432). Next, the client 202 designates the port number 999 by UDP and makes a connection request to the server 204 (S434). Next, the client 202 makes a connection request to the server 204 by designating the port number 2 by TCP (S436).

サーバ204は,クライアント202がftpサーバアプリケーションへの予め定められた手順によりアクセスを行ったため,通信を許可し,ftpアプリケーションにポート番号nを動的に割り当てる(S438)。   Since the client 202 has accessed the ftp server application according to a predetermined procedure, the server 204 permits communication and dynamically assigns the port number n to the ftp application (S438).

サーバ204は,S438で割り当てたポート番号nをクライアント202に送信する(S440)。クライアント202は,受信したポート番号nを指定して接続要求を行い(S442),クライアント202とサーバ204内のftpアプリケーションとの間の通信接続が確立する(S444)。   The server 204 transmits the port number n assigned in S438 to the client 202 (S440). The client 202 makes a connection request by specifying the received port number n (S442), and establishes a communication connection between the client 202 and the ftp application in the server 204 (S444).

上記構成によれば,ポート番号をサーバ204が動的に決定するため,第三者にポート番号を知られることを防止でき,セキュリティをさらに向上させることができる。   According to the above configuration, since the server 204 dynamically determines the port number, it is possible to prevent the port number from being known to a third party, and security can be further improved.

(変形例2)
上記第2実施形態で,アクセス手順を,アプリケーションの利用態様ごとに設定するようにしてもよい。詳細には,例えば,同じアプリケーションへのアクセスでも,クライアント202とアプリケーション間で実施する認証方式ごとに,異なるアクセス手順を手順定義テーブルに設定してもよい。また,例えば,同じアプリケーションへのアクセスでも,アプリケーションが実行する処理の内容ごとに,異なるアクセス手順を手順定義テーブルに設定してもよい。
(Modification 2)
In the second embodiment, the access procedure may be set for each usage mode of the application. Specifically, for example, even when accessing the same application, a different access procedure may be set in the procedure definition table for each authentication method performed between the client 202 and the application. Further, for example, even when accessing the same application, a different access procedure may be set in the procedure definition table for each content of processing executed by the application.

本変形例における手順定義テーブルの一例を図10に示した。図10に示すように,手順定義テーブルには,アプリケーション2320,アクセス手順2322,および利用態様2324が関連づけられている。アプリケーション2320およびアクセス手順2322は図6と同様である。利用態様2324には,アクセス手順2322に格納されている手順によりクライアント202がサーバ204にアクセスした場合に,該当するアプリケーションをクライアント202に利用させる際の利用態様が格納されている。図10に示すように,本変形例では,1つのアプリケーションに対して複数のアクセス手順が定められている。利用態様として,認証方式の違いや,アプリケーションに実行させる処理の内容,例えば,クライアント202がアプリケーションを介して接続できるネットワークの種類などを挙げることができる。   An example of the procedure definition table in this modification is shown in FIG. As shown in FIG. 10, an application 2320, an access procedure 2322, and a usage mode 2324 are associated with the procedure definition table. The application 2320 and the access procedure 2322 are the same as those in FIG. The usage mode 2324 stores a usage mode when the client 202 uses a corresponding application when the client 202 accesses the server 204 by the procedure stored in the access procedure 2322. As shown in FIG. 10, in this modification, a plurality of access procedures are defined for one application. Examples of usage modes include the difference in authentication method and the contents of processing executed by the application, for example, the type of network to which the client 202 can connect via the application.

具体的には例えば,同じsshサーバアプリケーションに対してクライアント202が通信接続を要求する場合であっても,sshとクライアント202間でパスワード認証を行う場合には,sshとクライアント202間で証明書認証を行う場合よりも,長くて複雑な手順を定めることができる。このように,認証方式によりアクセス手順を変えれば,認証方式の安全性を補うことができる。   Specifically, for example, even when the client 202 requests communication connection to the same ssh server application, when performing password authentication between the ssh and the client 202, the certificate authentication is performed between the ssh and the client 202. A longer and more complex procedure can be established than when performing Thus, if the access procedure is changed depending on the authentication method, the security of the authentication method can be supplemented.

また,同じsquidサーバプリケーションに対してクライアント202が通信接続を要求する場合であっても,squidが,クライアント202によるインターネットへのアクセスとイントラネットへのアクセスとの双方を中継する場合には,squidがクライアント202によるインターネットへのアクセスのみを中継する場合よりも,長くて複雑な手順を定めることができる。   Further, even when the client 202 requests a communication connection to the same server application, when the squid relays both the access to the Internet and the access to the intranet by the client 202, the squid Can define a longer and more complicated procedure than when only the access to the Internet by the client 202 is relayed.

本変形例における通信方法を,図11を参照して説明する。まず,クライアント202は,利用したいサービスと,その利用態様に応じて,アクセス手順を手順定義テーブルから参照する(S500)。続いて,クライアント202は,参照したアクセスの手順に従って,サーバ204にアクセスする(S502)。   A communication method in this modification will be described with reference to FIG. First, the client 202 refers to the access procedure from the procedure definition table in accordance with the service to be used and the usage mode (S500). Subsequently, the client 202 accesses the server 204 according to the referred access procedure (S502).

サーバ204は,クライアント202からのアクセスを受けると,手順定義テーブルに基づいて,クライアント202からのアクセスの手順が,予め定められた手順であるかを照合し,通信を許可するか否かを判断する(S504)。サーバ204は,クライアントからのアクセスの手順によって,通信の可否とともに,通信を要求されているアプリケーションとその利用態様を認識する(S506)。そして,サーバ204は,通信を許可する場合には,クライアント202から要求されたアプリケーションのウェルノウンポートを開いて,クライアント202に対して応答を行う(S508)。   When the server 204 receives an access from the client 202, the server 204 checks whether the access procedure from the client 202 is a predetermined procedure based on the procedure definition table, and determines whether to permit communication. (S504). The server 204 recognizes whether or not communication is possible and the application requested for communication and its usage mode according to the access procedure from the client (S506). Then, when permitting communication, the server 204 opens a well-known port of the application requested by the client 202 and responds to the client 202 (S508).

上記通信方法によるサーバ204・クライアント202間での具体的なデータの流れを図12に示した。図12では,クライアント202が,図10に示した手順定義テーブルに基づいて,サーバ204内のsquidサーバアプリケーションと通信接続し,かつ,そのsquidサーバアプリケーションに,インターネットへのアクセス中継を要望する場合の,サーバ204・クライアント202間のデータの流れを示している。   FIG. 12 shows a specific data flow between the server 204 and the client 202 by the communication method. In FIG. 12, the client 202 is connected to the squid server application in the server 204 based on the procedure definition table shown in FIG. 10, and the squid server application requests the relay access to the Internet. , The data flow between the server 204 and the client 202 is shown.

クライアント202は,アクセスの手順に従って,まずUDPでポート番号55を指定してサーバ204に接続を要求する(S530)。次に,クライアント202は,TCPでポート番号880を指定してサーバ204に接続を要求する(S532)。次に,クライアント202は,ICMPをサーバ204に送信する(S534)。次に,クライアント202は,TCPでポート番号3128を指定してサーバ204に接続を要求する(S536)。   In accordance with the access procedure, the client 202 first designates the port number 55 by UDP and requests connection to the server 204 (S530). Next, the client 202 specifies a port number 880 by TCP and requests connection to the server 204 (S532). Next, the client 202 transmits ICMP to the server 204 (S534). Next, the client 202 specifies a port number 3128 by TCP and requests connection to the server 204 (S536).

サーバ204は,クライアント202がsquidサーバアプリケーションへの予め定められた手順によりアクセスを行ったため,通信を許可し,かつ,アクセスの手順によってクライアント202から要求されているsquidの利用態様を認識する。   The server 204 allows the communication because the client 202 has accessed the Squid server application according to a predetermined procedure, and recognizes the usage mode of the Squid requested from the client 202 by the access procedure.

サーバ204は,squidサーバアプリケーションのウェルノウンポートを開いて,クライアント202に通信OKの応答を送信し(S540),クライアント202とサーバ204内のsquidサーバアプリケーションとの間の通信接続が確立する(S542)。以後,クライアント202は,インターネットにアクセス可能なsquidサーバアプリケーションを利用できる状態となり,クライアント202は,サーバ204内のsquidサーバアプリケーションによる中継を経て,インターネットにアクセスすることができる。この場合,サーバ204内のsquidサーバアプリケーションは,クライアント202によるインターネットへのアクセスのみを中継し,イントラネットへのアクセスの中継は行わない。   The server 204 opens a well-known port of the Squid server application, sends a communication OK response to the client 202 (S540), and establishes a communication connection between the client 202 and the Squid server application in the server 204 (S542). . Thereafter, the client 202 can use a Squid server application that can access the Internet, and the client 202 can access the Internet through relaying by the Squid server application in the server 204. In this case, the scan server application in the server 204 relays only access to the Internet by the client 202 and does not relay access to the intranet.

上記構成によれば,利用態様ごとに異なるアクセス手順を設定することで,サーバ204はより細かくアクセス制限を行うことができ,セキュリティをさらに向上させることができる。なお,本変形例において,サーバ204がアプリケーションに動的にポート番号を付与するようにしてもよい。   According to the above configuration, by setting a different access procedure for each usage mode, the server 204 can perform access restrictions more finely, and security can be further improved. In this modification, the server 204 may dynamically assign a port number to the application.

(変形例3)
上記実施形態では,アプリケーションごとに異なるアクセス手順を定めたが,全アプリケーションに共通のアクセス手順を定めるようにしてもよい。その場合,クライアント202は,まず,定められた手順に従ってサーバ204にアクセスし,サーバ204がそのクライアント202との通信の可否を判断する。その後,通信を許可する場合に,サーバ204がクライアント202に対して利用したいアプリケーションを問い合わせ,その問い合わせに応じてクライアント202がアプリケーションの識別子をサーバ204に送信するようにしてもよい。
(Modification 3)
In the above embodiment, a different access procedure is defined for each application, but an access procedure common to all applications may be defined. In that case, the client 202 first accesses the server 204 according to a predetermined procedure, and the server 204 determines whether or not communication with the client 202 is possible. Thereafter, when communication is permitted, the server 204 may inquire about an application to be used with respect to the client 202, and the client 202 may transmit the identifier of the application to the server 204 in response to the inquiry.

本変形例による通信方法を,図13を参照して説明する。まず,クライアント202が,全サービスに共通のアクセス手順を手順定義テーブルから参照する(S600)。クライアント202は,参照したアクセス手順に従って,サーバ204にアクセスする(S602)。サーバ204は,クライアント202からのアクセスを受けて,手順定義テーブルに基づき,そのクライアント202との通信を許可するか否かを判断する(S604)。通信を許可する場合には,サーバ204は,クライアント202に,利用したいサービスを問い合わせる(S606)。なお,通信を許可しない場合には,サーバ204は応答を行わない。   A communication method according to this modification will be described with reference to FIG. First, the client 202 refers to an access procedure common to all services from the procedure definition table (S600). The client 202 accesses the server 204 according to the referenced access procedure (S602). Upon receiving access from the client 202, the server 204 determines whether to permit communication with the client 202 based on the procedure definition table (S604). When permitting communication, the server 204 inquires of the client 202 about a service to be used (S606). If communication is not permitted, the server 204 does not respond.

クライアント202は,サーバ204からの問い合わせを受けて,利用したいサービスの識別子をサーバ204に送信する(S608)。サーバ204は,受信した識別子により特定されるアプリケーションに,動的にポート番号を割り当て(S610),クライアント202の識別子とポート番号とを関連づけて通信情報記憶部228に記憶する(S612)。次に,サーバ204は,S610で割り当てたポート番号をクライアント202に送信する(S614)。   In response to the inquiry from the server 204, the client 202 transmits the identifier of the service to be used to the server 204 (S608). The server 204 dynamically assigns a port number to the application specified by the received identifier (S610), and associates the identifier of the client 202 with the port number and stores them in the communication information storage unit 228 (S612). Next, the server 204 transmits the port number assigned in S610 to the client 202 (S614).

クライアント202は,ポート番号を受信後,受信したポート番号を用いて,サーバ204に接続を要求する(S616)。サーバ204は,要求を受けて,プロトコル,アプリケーション毎の接続シーケンスを実行する(S618)。   After receiving the port number, the client 202 requests connection to the server 204 using the received port number (S616). Upon receiving the request, the server 204 executes a connection sequence for each protocol and application (S618).

上記通信方法によるサーバ204・クライアント202間での具体的なデータの流れを図14に示した。図14は,クライアント202が,サーバ204内のsquidサーバアプリケーションとの接続を要求する場合の,サーバ204とクライアント202間でのデータの流れを示している。   FIG. 14 shows a specific data flow between the server 204 and the client 202 by the communication method. FIG. 14 shows a data flow between the server 204 and the client 202 when the client 202 requests a connection with the squid server application in the server 204.

クライアント202は,全サービスに共通のアクセスの手順に従って,まずICMPのechoをサーバ204に送信する(S630)。次に,クライアント202は,TCPでポート番号80を指定してサーバ204に接続を要求する(S632)。   The client 202 first transmits an ICMP echo to the server 204 in accordance with an access procedure common to all services (S630). Next, the client 202 designates the port number 80 by TCP and requests connection to the server 204 (S632).

サーバ204は,予め定められた手順でクライアント202からアクセスされたため,そのクライアント202との通信を許可し,サービスの問い合わせを行う(S634)。クライアント202は,問い合わせに応じて,利用したいサービスの識別子(ここでは,squidサーバアプリケーションのウェルノウンポートとする)をサーバ204に送信する(S636)。   Since the server 204 is accessed from the client 202 according to a predetermined procedure, the server 204 permits communication with the client 202 and inquires about the service (S634). In response to the inquiry, the client 202 transmits an identifier of a service to be used (here, a well-known port of the squid server application) to the server 204 (S636).

サーバ204は,squidサーバアプリケーションに動的にポート番号nを割り当て(S638),割り当てたポート番号nをクライアント202に送信する(S640)。クライアント202は,受信したポート番号nを指定して接続要求を行い(S642),クライアント202とサーバ204内のsquidアプリケーションとの間の通信接続が確立する(S644)。   The server 204 dynamically assigns the port number n to the squid server application (S638), and transmits the assigned port number n to the client 202 (S640). The client 202 designates the received port number n and makes a connection request (S642), and a communication connection is established between the client 202 and the squad application in the server 204 (S644).

(第3実施形態)
次に,第3実施形態にかかる通信システム300について説明する。本実施形態にかかる通信システム300は,第2実施形態の通信システム200における,アクセス手順を用いたクライアント・サーバ間の通信方法を採用し,そのアクセス手順を所定のタイミングで更新するようにした。アクセス手順を更新することにより,一度,第三者にアクセス手順が漏洩してしまっても,その後アクセス手順を更新して,該第三者によるサーバへの不正なアクセスを防止することができ,セキュリティをさらに向上させることができる。以後,第2実施形態との相違点を中心に説明する。
(Third embodiment)
Next, a communication system 300 according to the third embodiment will be described. The communication system 300 according to the present embodiment employs the communication method between the client and the server using the access procedure in the communication system 200 of the second embodiment, and updates the access procedure at a predetermined timing. By updating the access procedure, once the access procedure has been leaked to a third party, the access procedure can be updated thereafter to prevent unauthorized access to the server by the third party. Security can be further improved. Hereinafter, the description will focus on differences from the second embodiment.

まず,図15に基づいて,通信システム300の全体構成について説明する。通信システム300は,クライアント302と,サーバ304と,アクセス手順生成サーバ306とを主に備える。   First, the overall configuration of the communication system 300 will be described with reference to FIG. The communication system 300 mainly includes a client 302, a server 304, and an access procedure generation server 306.

アクセス手順生成サーバ306は,クライアント302とサーバ304との間で使用される,アクセスの手順を生成する。アクセス手順生成サーバ306は,クライアント302およびサーバ304と通信網を介して接続されており,クライアント302やサーバ304からの要求に応じて生成したアクセスの手順を提供する。なお,アクセス手順生成サーバ306は,1日ごと,1週間ごと等の所定の間隔や,毎日0時0分等の所定の時期,または新しいアクセス手順を生成するたびごと等に,クライアント302およびサーバ304に強制的にアクセス手順を送信してもよい。   The access procedure generation server 306 generates an access procedure used between the client 302 and the server 304. The access procedure generation server 306 is connected to the client 302 and the server 304 via a communication network, and provides an access procedure generated in response to a request from the client 302 or the server 304. It should be noted that the access procedure generation server 306 is configured such that the client 302 and the server 302 and the server at a predetermined interval such as every day, every week, every predetermined time such as 0:00 every day, or every time a new access procedure is generated. The access procedure may be forcibly transmitted to 304.

次に,図15に基づいて,アクセス手順生成サーバ306,クライアント302,およびサーバ304の機能構成について説明する。なお,第2実施形態にかかるクライアント202およびサーバ204と同様の機能を有するものについては,同一の符号を付与しており,説明を省略する。   Next, functional configurations of the access procedure generation server 306, the client 302, and the server 304 will be described with reference to FIG. In addition, about the thing which has the same function as the client 202 and the server 204 concerning 2nd Embodiment, the same code | symbol is provided and description is abbreviate | omitted.

アクセス手順生成サーバ306は,アクセス手順を生成するアクセス手順生成部340と,生成したアクセス手順を保存するアクセス手順記憶部342を主に備える。アクセス手順生成部340は,所定間隔ごとや,所定の時期等に,アクセス手順を生成し,生成したアクセス手順をアクセス手順記憶部342に格納する。アクセス手順記憶部342は,RAMやハードディスク等のメモリを含んで構成され,アクセス手順を記憶する。なお,アクセス手順記憶部342は,最新のアクセス手順のみを記憶していてもよいし,複数のバージョンのアクセス手順を,そのバージョンが分かるように記憶していてもよい。   The access procedure generation server 306 mainly includes an access procedure generation unit 340 that generates an access procedure, and an access procedure storage unit 342 that stores the generated access procedure. The access procedure generation unit 340 generates an access procedure at predetermined intervals or at predetermined times, and stores the generated access procedure in the access procedure storage unit 342. The access procedure storage unit 342 includes a memory such as a RAM or a hard disk, and stores an access procedure. Note that the access procedure storage unit 342 may store only the latest access procedure, or may store a plurality of versions of access procedures so that the versions can be recognized.

クライアント302のクライアント手順更新部318は,所定のタイミングでアクセス手順生成サーバ306にアクセスし,最新のアクセス手順を取得する。クライアント手順更新部318は,取得した最新のアクセス手順により,クライアント手順定義テーブル記憶部216に記憶されている手順定義テーブルを更新する。なお,クライアント手順更新部318は,最新のアクセス手順を手順定義テーブルに追加するようにしてもよい。その場合,クライアント手順定義テーブル記憶部216の手順定義テーブルには,複数のバージョンのアクセス手順が,そのバージョンがわかるように格納されることとなる。   The client procedure update unit 318 of the client 302 accesses the access procedure generation server 306 at a predetermined timing and acquires the latest access procedure. The client procedure update unit 318 updates the procedure definition table stored in the client procedure definition table storage unit 216 with the acquired latest access procedure. Note that the client procedure update unit 318 may add the latest access procedure to the procedure definition table. In that case, a plurality of versions of access procedures are stored in the procedure definition table of the client procedure definition table storage unit 216 so that the versions can be identified.

クライアント送信部312は,第2実施形態にかかるクライアント送信部212とほぼ同様の機能を有するが,アクセス手順を手順定義テーブルから参照する前に,クライアントアクセス手順更新部318に最新のアクセス手順を取得させて手順定義テーブルを更新させる点で,クライアント送信部212と相違する。この場合,クライアントアクセス手順更新部318がアクセス手順生成サーバ306からアクセス手順を取得する所定のタイミングは,クライアント送信部312に要求されたタイミングとなる。なお,所定のタイミングは,所定間隔毎,所定時期等,任意に設定可能である。   The client transmission unit 312 has substantially the same function as the client transmission unit 212 according to the second embodiment, but acquires the latest access procedure from the client access procedure update unit 318 before referring to the access procedure from the procedure definition table. Thus, the procedure definition table is updated to be different from the client transmission unit 212. In this case, the predetermined timing at which the client access procedure update unit 318 acquires the access procedure from the access procedure generation server 306 is the timing requested by the client transmission unit 312. Note that the predetermined timing can be arbitrarily set at predetermined intervals, a predetermined time, or the like.

サーバアクセス手順更新部336は,所定のタイミングでアクセス手順生成サーバ306にアクセスし,最新のアクセス手順を取得する。サーバアクセス手順更新部336は,取得したアクセス手順により,サーバ手順定義テーブル記憶部232に記憶されている手順定義テーブルを更新する。所定のタイミングは,所定間隔ごと,所定時期等,任意に設定可能である。   The server access procedure update unit 336 accesses the access procedure generation server 306 at a predetermined timing and acquires the latest access procedure. The server access procedure update unit 336 updates the procedure definition table stored in the server procedure definition table storage unit 232 with the acquired access procedure. The predetermined timing can be arbitrarily set at a predetermined interval, a predetermined time, or the like.

上記構成の通信システム300における,クライアント302とサーバ304との通信方法を,手順定義テーブルの更新を伴う部分を中心に説明する。図16は,クライアント302とサーバ304とが有する手順定義テーブルのバージョンが同じであった場合の通信方法を示す。図17と図18は,クライアント302がサーバ304にアクセスした際に,クライアント302とサーバ304とが有する手順定義テーブルのバージョンが異なった場合の通信方法を示す。特に,図17は,サーバ304の手順定義テーブルは最新バージョンであるが,クライアント302の手順定義テーブルが更新されておらず旧バージョンであった場合を示す。図18は,クライアント302の手順定義テーブルは最新バージョンであるが,サーバ304の手順定義テーブルが更新されておらず旧バージョンであった場合を示す。   A communication method between the client 302 and the server 304 in the communication system 300 having the above-described configuration will be described with a focus on a part that involves updating the procedure definition table. FIG. 16 shows a communication method when the versions of the procedure definition tables of the client 302 and the server 304 are the same. FIGS. 17 and 18 show a communication method when the versions of the procedure definition tables of the client 302 and the server 304 are different when the client 302 accesses the server 304. In particular, FIG. 17 shows a case where the procedure definition table of the server 304 is the latest version, but the procedure definition table of the client 302 is not updated and is an old version. FIG. 18 shows a case where the procedure definition table of the client 302 is the latest version, but the procedure definition table of the server 304 is not updated and is an old version.

まず,図16を参照して説明する。サーバ304は,定期的にアクセス手順生成サーバ306にアクセス手順を要求する(S700)。アクセス手順生成サーバ306は,サーバ304からの要求に応じて,アクセス手順記憶部342に記憶されている最新のアクセス手順をサーバ304に送信する(S702)。サーバ304は,アクセス手順生成サーバ306からアクセス手順を受信し,受信したアクセス手順により手順定義テーブルを更新する(S704)。   First, a description will be given with reference to FIG. The server 304 periodically requests an access procedure from the access procedure generation server 306 (S700). In response to a request from the server 304, the access procedure generation server 306 transmits the latest access procedure stored in the access procedure storage unit 342 to the server 304 (S702). The server 304 receives the access procedure from the access procedure generation server 306, and updates the procedure definition table according to the received access procedure (S704).

一方,クライアント302は,サーバ304のアプリケーションと通信を行いたい場合,まず利用したいサービスのアクセス手順をアクセス手順生成サーバ306に要求する(S706)。アクセス手順生成サーバ306は,クライアント302からの要求に応じて,アクセス手順記憶部342に記憶されている最新のアクセス手順をクライアント302に送信する(S708)。クライアント302は,アクセス手順生成サーバ306からアクセス手順を受信し,受信したアクセス手順により手順定義テーブルを更新する(S710)。その後,クライアント302は,アクセス手順に従って,サーバ304にアクセスする(S712)。   On the other hand, when the client 302 wants to communicate with the application of the server 304, it first requests the access procedure generation server 306 for the access procedure of the service to be used (S706). In response to a request from the client 302, the access procedure generation server 306 transmits the latest access procedure stored in the access procedure storage unit 342 to the client 302 (S708). The client 302 receives the access procedure from the access procedure generation server 306, and updates the procedure definition table according to the received access procedure (S710). Thereafter, the client 302 accesses the server 304 according to the access procedure (S712).

サーバ304は,手順定義テーブルに基づいて,通信可否を判断する(S714)。サーバ304は,通信を許可する場合には,要求されたアプリケーションのウェルノウンポートを開いて,クライアント302に応答する(S716)。なお,S714以降は,第2実施形態と同様であり,サーバ304は,ウェルノウンポートを開いてクライアント302に応答する以外に,アプリケーションに動的にポート番号を割り当てて,ポート番号をクライアント302に通知するようにしてもよい。   The server 304 determines whether communication is possible based on the procedure definition table (S714). When permitting communication, the server 304 opens a well-known port of the requested application and responds to the client 302 (S716). The steps after S714 are the same as in the second embodiment, and the server 304 dynamically assigns a port number to the application and notifies the client 302 of the port number in addition to responding to the client 302 by opening a well-known port. You may make it do.

次に,図17を参照して説明する。サーバ304は,定期的にアクセス手順生成サーバ306にアクセス手順を要求する(S730)。アクセス手順生成サーバ306は,サーバ304からの要求に応じて,アクセス手順記憶部342に記憶されている最新のアクセス手順をサーバ304に送信する(S732)。サーバ304は,アクセス手順生成サーバ306からアクセス手順を受信し,受信したアクセス手順により手順定義テーブルを更新する(S734)。   Next, a description will be given with reference to FIG. The server 304 periodically requests an access procedure from the access procedure generation server 306 (S730). In response to the request from the server 304, the access procedure generation server 306 transmits the latest access procedure stored in the access procedure storage unit 342 to the server 304 (S732). The server 304 receives the access procedure from the access procedure generation server 306, and updates the procedure definition table according to the received access procedure (S734).

一方,クライアント302は,本例では,予め手順定義テーブルを更新することなく,利用したいサービスのアクセス手順を手順定義テーブルから参照し(S736),参照した手順に従ってサーバ304にアクセスを行う(S738)。サーバ304は,手順定義テーブル714に基づいて,通信可否を判断する(S740)。   On the other hand, in this example, the client 302 refers to the access procedure of the service desired to be used from the procedure definition table without updating the procedure definition table in advance (S736), and accesses the server 304 according to the referenced procedure (S738). . The server 304 determines whether communication is possible based on the procedure definition table 714 (S740).

本例の場合,S736でクライアント302が参照する手順定義テーブルと,S740でサーバ304が参照する手順定義テーブルとは,バージョンが異なっている。そのため,クライアント302により実行されたアクセス手順は,サーバ304が参照した手順定義テーブルには定められていないため,照合に失敗し,サーバは通信不許可の判断を行う。サーバ304は,通信不許可の通知を行う(S742)。なお,サーバ304は,何も応答を行わなくてもよい。   In this example, the version of the procedure definition table referred to by the client 302 in S736 and the procedure definition table referred to by the server 304 in S740 are different. Therefore, since the access procedure executed by the client 302 is not defined in the procedure definition table referred to by the server 304, the verification fails and the server determines that communication is not permitted. The server 304 notifies that communication is not permitted (S742). Note that the server 304 does not need to make any response.

クライアント302は,通信不許可の通知を受けて,(またはサーバ304からの応答が無いことを認識して),利用したいサービスのアクセス手順をアクセス手順生成サーバ306に要求する(S744)。   The client 302 receives the communication disapproval notification (or recognizes that there is no response from the server 304), and requests the access procedure generation server 306 for the access procedure of the service to be used (S744).

アクセス手順生成サーバ306は,クライアント302からの要求に応じて,アクセス手順記憶部342に記憶されている最新のアクセス手順をクライアント302に送信する(S746)。クライアント302は,アクセス手順生成サーバ306からアクセス手順を受信し,受信したアクセス手順により手順定義テーブルを更新する(S748)。その後,クライアント302は,更新されたアクセス手順に従って,再度,サーバ304にアクセスする(S750)。サーバ304は,手順定義テーブルに基づいて,通信可否を判断する(S752)。今回は,S750でクライアント302が参照する手順定義テーブルと,S752でサーバ304が参照する手順定義テーブルとは,バージョンが同じであるため,照合に成功し,サーバ304は通信を許可する。   In response to a request from the client 302, the access procedure generation server 306 transmits the latest access procedure stored in the access procedure storage unit 342 to the client 302 (S746). The client 302 receives the access procedure from the access procedure generation server 306, and updates the procedure definition table according to the received access procedure (S748). Thereafter, the client 302 accesses the server 304 again according to the updated access procedure (S750). The server 304 determines whether communication is possible based on the procedure definition table (S752). This time, since the version of the procedure definition table referred to by the client 302 in S750 and the procedure definition table referred to by the server 304 in S752 are the same, the verification succeeds and the server 304 permits communication.

次に,図18を参照して説明する。クライアント302は,サーバ304のアプリケーションと通信を行いたい場合,まず利用したいサービスのアクセス手順をアクセス手順生成サーバ306に要求する(S770)。アクセス手順生成サーバ306は,クライアント302からの要求に応じて,アクセス手順記憶部342に記憶されている最新のアクセス手順をクライアント302に送信する(S772)。クライアント302は,アクセス手順生成サーバ306からアクセス手順を受信し,受信したアクセス手順を手順定義テーブルに追加する(S774)。その後,クライアント302は,最新のアクセス手順に従って,サーバ304にアクセスする(S776)。サーバ304は,手順定義テーブルに基づいて,通信可否を判断する(S778)。   Next, a description will be given with reference to FIG. When the client 302 wishes to communicate with the application of the server 304, it first requests the access procedure generation server 306 for the access procedure of the service to be used (S770). In response to a request from the client 302, the access procedure generation server 306 transmits the latest access procedure stored in the access procedure storage unit 342 to the client 302 (S772). The client 302 receives the access procedure from the access procedure generation server 306, and adds the received access procedure to the procedure definition table (S774). Thereafter, the client 302 accesses the server 304 according to the latest access procedure (S776). The server 304 determines whether communication is possible based on the procedure definition table (S778).

本例では,サーバ304が手順定義テーブルを更新していないか,定期的に更新してはいても,更新のタイミングがクライアント302によるS774での更新よりも後であるため,S776でクライアント302が参照する手順定義テーブルと,S778でサーバ304が参照する手順定義テーブルとは,バージョンが異なっている。そのため,サーバ304は,アクセス手順の照合に失敗し,通信を不許可と判断する。サーバ304は,通信不許可の通知をクライアント302に行う(S780)。または,サーバ304は,何の応答も返さないようにしてもよい。   In this example, even if the server 304 has not updated the procedure definition table or has updated it periodically, the update timing is later than the update in S774 by the client 302. The version of the procedure definition table to be referenced differs from the procedure definition table to which the server 304 refers in S778. For this reason, the server 304 fails to verify the access procedure and determines that communication is not permitted. The server 304 notifies the client 302 that communication is not permitted (S780). Alternatively, the server 304 may not return any response.

クライアント302は,通信不許可の通知を受けて,(またはサーバ304からの応答が無いことを認識して),サーバ304の手順定義テーブルが最新でないことを認識する。そして,クライアント302は,手順定義テーブルに保存されている旧バージョンのアクセス手順を参照し,参照したアクセス手順に従って,再度,サーバ304にアクセスする(S782)。サーバ304は,手順定義テーブルに基づいて,通信可否を判断する(S784)。今回は,同バージョンのアクセス手順によりアクセスされたため,サーバ304は,照合に成功し,通信を許可する(S784)。   The client 302 receives the notification of communication disapproval (or recognizes that there is no response from the server 304), and recognizes that the procedure definition table of the server 304 is not the latest. Then, the client 302 refers to the access procedure of the previous version stored in the procedure definition table, and accesses the server 304 again according to the referenced access procedure (S782). The server 304 determines whether communication is possible based on the procedure definition table (S784). In this case, since the access was made according to the access procedure of the same version, the server 304 succeeds in collation and permits communication (S784).

本実施形態にかかる通信システム300によれば,サーバ304がサーバ304内のアプリケーションとクライアント302との通信を許可するか否かを判断する基となるアクセス手順が,所定のタイミングで順次更新される。そのため,アクセス手順が第三者に漏洩した場合でも,アクセス手順が更新される所定のタイミング以降は,漏洩したアクセス手順によるサーバ304へのアクセスは無効となる。従って,第三者によるサーバ304内のアプリケーションへの不正なアクセスを防止することができ,セキュリティを向上させることができる。   According to the communication system 300 according to the present embodiment, an access procedure that is a basis for determining whether the server 304 permits communication between the application in the server 304 and the client 302 is sequentially updated at a predetermined timing. . Therefore, even if the access procedure is leaked to a third party, access to the server 304 by the leaked access procedure is invalid after a predetermined timing when the access procedure is updated. Therefore, unauthorized access to an application in the server 304 by a third party can be prevented, and security can be improved.

上記各実施形態および各変形例によれば,既存のTCP/IPとの互換性を保ちつつ,より高いセキュリティを実現することができる。   According to the above embodiments and modifications, higher security can be realized while maintaining compatibility with existing TCP / IP.

以上,添付図面を参照しながら本発明の好適な実施形態について説明したが,本発明は係る例に限定されないことは言うまでもない。当業者であれば,特許請求の範囲に記載された範疇内において,各種の変更例または修正例に想到し得ることは明らかであり,それらについても当然に本発明の技術的範囲に属するものと了解される。   As mentioned above, although preferred embodiment of this invention was described referring an accompanying drawing, it cannot be overemphasized that this invention is not limited to the example which concerns. It will be apparent to those skilled in the art that various changes and modifications can be made within the scope of the claims, and these are naturally within the technical scope of the present invention. Understood.

本発明の第1の実施形態における通信システムを示すブロック図である。It is a block diagram which shows the communication system in the 1st Embodiment of this invention. 同実施の形態における通信情報記憶部の記憶内容を示す説明図である。It is explanatory drawing which shows the memory content of the communication information storage part in the embodiment. 同実施の形態におけるサーバ・クライアント間の通信方法を示すフローチャートである。It is a flowchart which shows the communication method between the server and client in the embodiment. 同実施の形態の変形例におけるサーバ・クライアント間の通信方法を示すフローチャートである。It is a flowchart which shows the communication method between the server and client in the modification of the embodiment. 本発明の第2の実施形態における通信システムを示すブロック図である。It is a block diagram which shows the communication system in the 2nd Embodiment of this invention. 同実施の形態における手順定義テーブルを示す説明図である。It is explanatory drawing which shows the procedure definition table in the embodiment. 同実施の形態におけるサーバ・クライアント間の通信方法を示すフローチャートである。It is a flowchart which shows the communication method between the server and client in the embodiment. 同実施の形態の変形例1におけるサーバ・クライアント間の通信方法を示すフローチャートである。It is a flowchart which shows the communication method between the server and client in the modification 1 of the embodiment. 同実施の形態の変形例1における通信方法の具体例を示すフローチャートである。It is a flowchart which shows the specific example of the communication method in the modification 1 of the embodiment. 同実施の形態の変形例2における手順定義テーブルを示す説明図である。It is explanatory drawing which shows the procedure definition table in the modification 2 of the embodiment. 同実施の形態の変形例2におけるサーバ・クライアント間の通信方法を示すフローチャートである。It is a flowchart which shows the communication method between the server and client in the modification 2 of the embodiment. 同実施の形態の変形例2における通信方法の具体例を示すフローチャートである。It is a flowchart which shows the specific example of the communication method in the modification 2 of the embodiment. 同実施の形態の変形例3におけるサーバ・クライアント間の通信方法を示すフローチャートである。It is a flowchart which shows the communication method between the server and client in the modification 3 of the embodiment. 同実施の形態の変形例3における通信方法の具体例を示すフローチャートである。It is a flowchart which shows the specific example of the communication method in the modification 3 of the embodiment. 本発明の第3の実施形態における通信システムを示すブロック図である。It is a block diagram which shows the communication system in the 3rd Embodiment of this invention. 同実施の形態におけるサーバ・クライアント間の通信方法を示すフローチャートである。It is a flowchart which shows the communication method between the server and client in the embodiment. 同実施の形態におけるサーバ・クライアント間の通信方法を示すフローチャートである。It is a flowchart which shows the communication method between the server and client in the embodiment. 同実施の形態におけるサーバ・クライアント間の通信方法を示すフローチャートである。It is a flowchart which shows the communication method between the server and client in the embodiment.

符号の説明Explanation of symbols

100,200,300 通信システム
102,202,302 クライアント
104,204,304 サーバ
306 アクセス手順生成サーバ
112,212,312 クライアント送信部
114,214 クライアント受信部
120,220 サーバ受信部
122,222 サーバ送信部
124,224 サーバ側ポート番号付与部
126,226 クライアント側ポート番号指定部
128,228 通信情報記憶部
216 クライアント手順定義テーブル記憶部
230 通信可否判断部
232 サーバ手順定義テーブル記憶部
234 通信開始部
340 アクセス手順生成部
342 アクセス手順記憶部
318 クライアントアクセス手順更新部
336 サーバアクセス手順更新部
100, 200, 300 Communication system 102, 202, 302 Client 104, 204, 304 Server 306 Access procedure generation server 112, 212, 312 Client transmission unit 114, 214 Client reception unit 120, 220 Server reception unit 122, 222 Server transmission unit 124, 224 Server-side port number assigning unit 126, 226 Client-side port number specifying unit 128, 228 Communication information storage unit 216 Client procedure definition table storage unit 230 Communication availability determination unit 232 Server procedure definition table storage unit 234 Communication start unit 340 Access Procedure generation unit 342 Access procedure storage unit 318 Client access procedure update unit 336 Server access procedure update unit

Claims (15)

1以上のアプリケーションプログラムを備えるサーバと,前記アプリケーションプログラムとの間でTCP/IPプロトコルにより通信を行うクライアントと,を備える通信システムにおいて:
前記サーバは,
前記クライアントから,前記1以上のアプリケーションプログラムのいずれかを一意に特定するプログラム識別子を受信するサーバ受信部と;
前記サーバ受信部により受信された前記プログラム識別子により特定されるアプリケーションプログラムに,ポート番号を動的に付与するサーバ側ポート番号付与部と;
前記サーバ側ポート番号付与部により付与された前記ポート番号を,サーバ側ポート番号として,前記クライアントに送信するサーバ送信部と;
を備え,
前記クライアントは,
通信を行いたい前記アプリケーションプログラムの前記プログラム識別子を前記サーバに送信するクライアント送信部と;
前記サーバから前記サーバ側ポート番号を受信するクライアント受信部と;
を備え,
前記クライアントは,前記クライアント受信部により受信された前記サーバ側ポート番号を用いて前記サーバの前記アプリケーションプログラムと通信を行うことを特徴とする,通信システム。
In a communication system comprising a server comprising one or more application programs and a client communicating with the application programs using a TCP / IP protocol:
The server
A server receiver that receives a program identifier that uniquely identifies one of the one or more application programs from the client;
A server-side port number assigning unit that dynamically assigns a port number to the application program specified by the program identifier received by the server receiving unit;
A server transmission unit that transmits the port number assigned by the server-side port number assigning unit as a server-side port number to the client;
With
The client
A client transmitter that transmits the program identifier of the application program to be communicated to the server;
A client receiver that receives the server-side port number from the server;
With
The communication system, wherein the client communicates with the application program of the server using the server-side port number received by the client receiving unit.
前記サーバは,
前記ポート番号を付与したアプリケーションプログラムが前記クライアントと通信を行う際の前記クライアント側のポート番号を指定するクライアント側ポート番号指定部をさらに備え,
前記サーバ送信部は,前記クライアント側ポート番号指定部により指定された前記ポート番号を,クライアント側ポート番号として,前記クライアントに送信することを特徴とする,請求項1に記載の通信システム。
The server
A client-side port number designating unit that designates the client-side port number when the application program to which the port number is assigned communicates with the client;
2. The communication system according to claim 1, wherein the server transmission unit transmits the port number designated by the client-side port number designation unit to the client as a client-side port number.
1以上のアプリケーションプログラムを備えるサーバと,前記アプリケーションプログラムとの間でTCP/IPプロトコルにより通信を行うクライアントと,を備える通信システムにおいて:
前記サーバは,
前記アプリケーションプログラムへのアクセスの手順を定めている手順定義テーブルと;
前記手順定義テーブルに定められている前記アクセスの手順に基づいて,前記アプリケーションプログラムと前記クライアントとの通信を許可するか否かを判断する通信可否判断部と;
前記通信可否判断部により通信を許可された場合に,前記クライアントに指定されたアプリケーションプログラムに前記クライアントとの通信を開始させる通信開始部と;
を備えることを特徴とする,通信システム。
In a communication system comprising a server comprising one or more application programs and a client communicating with the application programs using a TCP / IP protocol:
The server
A procedure definition table defining a procedure for accessing the application program;
A communication enable / disable determining unit that determines whether to permit communication between the application program and the client based on the access procedure set in the procedure definition table;
A communication start unit for causing the application program designated by the client to start communication with the client when communication is permitted by the communication permission determination unit;
A communication system comprising:
前記サーバは,
前記アプリケーションプログラムに動的にポート番号を付与するサーバ側ポート番号付与部と;
前記サーバ側ポート番号付与部により付与された前記ポート番号を,サーバ側ポート番号として,前記クライアントに送信するサーバ送信部と;
をさらに備え,
前記通信開始部は,前記通信可否判断部により通信を許可された場合に,前記サーバ側ポート番号付与部をして前記クライアントに指定されたアプリケーションプログラムにポート番号を付与せしめ,前記サーバ送信部をして該ポート番号を前記クライアントに送信せしめること
を特徴とする,請求項3に記載の通信システム。
The server
A server-side port number assigning unit that dynamically assigns a port number to the application program;
A server transmission unit that transmits the port number assigned by the server-side port number assigning unit as a server-side port number to the client;
Further comprising
The communication start unit, when communication is permitted by the communication permission determination unit, causes the server-side port number assigning unit to assign a port number to the application program designated by the client, and The communication system according to claim 3, wherein the port number is transmitted to the client.
前記サーバは,前記クライアントから,前記1以上のアプリケーションプログラムのいずれかを一意に特定するプログラム識別子を受信するサーバ受信部をさらに備え,
前記通信開始部は,前記通信可否判断部により通信を許可された場合に,前記サーバ受信部をして前記クライアントから前記プログラム識別子を受信せしめ,受信した前記プログラム識別子により特定される前記アプリケーションプログラムを前記クライアントに指定されたアプリケーションプログラムとすること
を特徴とする,請求項3または4に記載の通信システム。
The server further includes a server reception unit that receives a program identifier that uniquely identifies one of the one or more application programs from the client,
The communication start unit, when communication is permitted by the communication permission determination unit, causes the server reception unit to receive the program identifier from the client, and determines the application program specified by the received program identifier. 5. The communication system according to claim 3, wherein the communication program is an application program designated by the client.
前記手順定義テーブルには,1以上の前記アプリケーションプログラム毎に,相異なるアクセスの手順が定められており,
前記通信開始部は,前記通信可否判断部により前記アプリケーションとの通信を許可された前記クライアントによって実行された前記アクセスの手順に応じて,前記クライアントに指定された前記アプリケーションを特定することを特徴とする,請求項3または4に記載の通信システム。
In the procedure definition table, different access procedures are defined for each of the one or more application programs.
The communication start unit specifies the application designated by the client in accordance with the access procedure executed by the client permitted to communicate with the application by the communication availability determination unit. The communication system according to claim 3 or 4.
前記手順定義テーブルには,1以上の前記アプリケーションプログラム毎に相異なり,かつ,前記アプリケーションの利用態様毎に相異なるアクセスの手順が定められており,
前記通信開始部は,前記通信可否判断部により前記アプリケーションとの通信を許可された前記クライアントによって実行された前記アクセスの手順に応じて,前記クライアントに指定された前記アプリケーションおよび前記利用態様を特定することを特徴とする,請求項3または4に記載の通信システム。
In the procedure definition table, a different access procedure is defined for each of the one or more application programs, and for each usage mode of the application.
The communication start unit specifies the application specified by the client and the usage mode in accordance with the access procedure executed by the client permitted to communicate with the application by the communication availability determination unit. The communication system according to claim 3 or 4, characterized by the above.
前記利用態様には,前記アプリケーションプログラムにより実行される前記クライアントの認証方式,および,前記クライアントが前記アプリケーションプログラムを介して接続できるネットワークの種類のいずれかまたは双方を含むことを特徴とする,請求項7に記載の通信システム。   The usage mode includes one or both of an authentication method of the client executed by the application program and a network type to which the client can connect via the application program. 8. The communication system according to 7. 前記アクセスの手順は,前記サーバが前記クライアントから受信するポート番号と,前記ポート番号の受信の順序との組み合わせであることを特徴とする,請求項3〜8のいずれか1項に記載の通信システム。   The communication according to any one of claims 3 to 8, wherein the access procedure is a combination of a port number received by the server from the client and a reception order of the port numbers. system. 前記サーバが,
前記手順定義テーブルに定められている前記アクセスの手順を,所定のタイミングで更新するアクセス手順更新部をさらに備えることを特徴とする,請求項3〜9のいずれか1項に記載の通信システム。
The server is
The communication system according to any one of claims 3 to 9, further comprising an access procedure updating unit that updates the access procedure defined in the procedure definition table at a predetermined timing.
前記アクセスの手順を所定のタイミングで生成し,生成した前記アクセスの手順をアクセス手順記憶部に保存しているアクセス手順生成サーバを備え,
前記サーバの前記アクセス手順更新部は,前記所定のタイミングで前記アクセス手順生成サーバから前記アクセスの手順を取得し,取得した前記アクセスの手順により前記手順定義テーブルを更新すること
を特徴とする,請求項10に記載の通信システム。
An access procedure generation server for generating the access procedure at a predetermined timing and storing the generated access procedure in an access procedure storage unit;
The access procedure update unit of the server acquires the access procedure from the access procedure generation server at the predetermined timing, and updates the procedure definition table according to the acquired access procedure. Item 11. The communication system according to Item 10.
1以上のアプリケーションプログラムを備え,前記アプリケーションプログラムとクライアントとのTCP/IPプロトコルによる通信を制御するサーバにおいて:
前記アプリケーションプログラムへのアクセスの手順を定めている手順定義テーブルと;
前記手順定義テーブルに定められている前記アクセスの手順に基づいて,前記アプリケーションプログラムと前記クライアントとの通信を許可するか否かを判断する通信可否判断部と;
前記通信可否判断部により通信を許可された場合に,前記クライアントに指定されたアプリケーションプログラムに前記クライアントとの通信を開始させる通信開始部と;
を備えることを特徴とするサーバ。
In a server that includes one or more application programs and controls communication between the application programs and clients using a TCP / IP protocol:
A procedure definition table defining a procedure for accessing the application program;
A communication enable / disable determining unit that determines whether to permit communication between the application program and the client based on the access procedure set in the procedure definition table;
A communication start unit for causing the application program designated by the client to start communication with the client when communication is permitted by the communication permission determination unit;
A server comprising:
コンピュータをして,
1以上のアプリケーションプログラムを備え,前記アプリケーションプログラムとクライアントとのTCP/IPプロトコルによる通信を制御し,
手順定義テーブルに定められている,前記アプリケーションプログラムへのアクセスの手順に基づいて,前記アプリケーションプログラムと前記クライアントとの通信を許可するか否かを判断する通信可否判断部と;
前記通信可否判断部により通信を許可された場合に,前記クライアントに指定されたアプリケーションプログラムに前記クライアントとの通信を開始させる通信開始部と;
を備えるサーバとして機能せしめることを特徴とするコンピュータプログラム。
Computer
Comprising at least one application program, controlling communication between the application program and the client by TCP / IP protocol;
A communication availability determination unit that determines whether to allow communication between the application program and the client based on a procedure for accessing the application program, which is defined in a procedure definition table;
A communication start unit for causing the application program designated by the client to start communication with the client when communication is permitted by the communication permission determination unit;
A computer program for causing a computer to function as a server.
1以上のアプリケーションプログラムを備えるサーバと,前記アプリケーションプログラムとの間でTCP/IPプロトコルにより通信を行うクライアントとにより実行される通信方法において:
前記クライアントが,通信を行いたい前記アプリケーションプログラムを一意に識別するプログラム識別子を前記サーバに送信するステップと;
前記サーバが,前記クライアントから,前記プログラム識別子を受信するステップと;
前記サーバが,受信した前記プログラム識別子により特定されるアプリケーションプログラムに,ポート番号を動的に付与するステップと;
前記サーバが,付与した前記ポート番号を,前記クライアントに送信するステップと;
前記クライアントが,前記サーバから前記ポート番号を受信するステップと;
を含み,前記クライアントは,前記サーバから受信した前記ポート番号を用いて前記サーバの前記アプリケーションプログラムと通信を行うことを特徴とする,通信方法。
In a communication method executed by a server including one or more application programs and a client that communicates with the application programs using a TCP / IP protocol:
The client sending a program identifier uniquely identifying the application program with which it wishes to communicate;
The server receiving the program identifier from the client;
The server dynamically assigning a port number to the application program specified by the received program identifier;
The server sending the assigned port number to the client;
The client receiving the port number from the server;
And the client communicates with the application program of the server using the port number received from the server.
1以上のアプリケーションプログラムを備えるサーバと,前記アプリケーションプログラムとの間でTCP/IPプロトコルにより通信を行うクライアントとにより実行される通信方法において:
前記サーバが,手順定義テーブルに定められている,前記アプリケーションプログラムへのアクセスの手順に基づいて,前記アプリケーションプログラムと前記クライアントとの通信を許可するか否かを判断するステップと;
前記サーバが,前記アプリケーションプログラムと前記クライアントとの通信を許可した場合に,前記クライアントに指定されたアプリケーションプログラムに前記クライアントとの通信を開始させるステップと;
を含むことを特徴とする,通信方法。
In a communication method executed by a server including one or more application programs and a client that communicates with the application programs using a TCP / IP protocol:
Determining whether or not the server permits communication between the application program and the client based on a procedure for accessing the application program defined in a procedure definition table;
When the server permits communication between the application program and the client, causing the application program designated by the client to start communication with the client;
A communication method, comprising:
JP2006020716A 2006-01-30 2006-01-30 Communication system and communication method Expired - Fee Related JP4274184B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006020716A JP4274184B2 (en) 2006-01-30 2006-01-30 Communication system and communication method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006020716A JP4274184B2 (en) 2006-01-30 2006-01-30 Communication system and communication method

Publications (2)

Publication Number Publication Date
JP2007200209A true JP2007200209A (en) 2007-08-09
JP4274184B2 JP4274184B2 (en) 2009-06-03

Family

ID=38454733

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006020716A Expired - Fee Related JP4274184B2 (en) 2006-01-30 2006-01-30 Communication system and communication method

Country Status (1)

Country Link
JP (1) JP4274184B2 (en)

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010130524A (en) * 2008-11-28 2010-06-10 Nippon Telegr & Teleph Corp <Ntt> Communication system, communication apparatus, communication method, or program
JP2010186207A (en) * 2009-02-10 2010-08-26 Brother Ind Ltd Data receiving terminal and computer program
JP2011123921A (en) * 2011-03-23 2011-06-23 Brother Industries Ltd Communication system and communication control program
JP2012147212A (en) * 2011-01-12 2012-08-02 Nec Corp Communication terminal, transmitting/receiving method of the same, and communication system including terminal
US8321453B2 (en) 2008-09-29 2012-11-27 Brother Kogyo Kabushiki Kaisha Communication system
JP2013016169A (en) * 2011-06-30 2013-01-24 Nielsen Co (Us) Llc Systems, methods, and apparatus to monitor mobile internet activity
US8886773B2 (en) 2010-08-14 2014-11-11 The Nielsen Company (Us), Llc Systems, methods, and apparatus to monitor mobile internet activity
US8910259B2 (en) 2010-08-14 2014-12-09 The Nielsen Company (Us), Llc Systems, methods, and apparatus to monitor mobile internet activity
JP2015064655A (en) * 2013-09-24 2015-04-09 株式会社ソニー・コンピュータエンタテインメント Communication management apparatus, terminal, communication management system, communication management method, program, and information storage medium
US9124920B2 (en) 2011-06-29 2015-09-01 The Nielson Company (Us), Llc Methods, apparatus, and articles of manufacture to identify media presentation devices
US9128808B2 (en) 2009-03-28 2015-09-08 Brother Kogyo Kabushiki Kaisha Computer readable storage medium for registration of site information and a computer to register site information
WO2016021180A1 (en) * 2014-08-07 2016-02-11 日本電気株式会社 Communication terminal device and transmission/reception method therefor, and recording medium containing computer program
US9301173B2 (en) 2013-03-15 2016-03-29 The Nielsen Company (Us), Llc Methods and apparatus to credit internet usage
US9357203B2 (en) 2010-07-02 2016-05-31 Sony Corporation Information processing system using captured image, information processing device, and information processing method
US9762688B2 (en) 2014-10-31 2017-09-12 The Nielsen Company (Us), Llc Methods and apparatus to improve usage crediting in mobile devices
JP2017537546A (en) * 2015-06-30 2017-12-14 フジツウ テクノロジー ソリューションズ インタレクチュアル プロパティ ゲーエムベーハー Method for unblocking an external computer system in a computer network infrastructure, a distributed computer network and a computer program product having such a computer network infrastructure
JP2018026675A (en) * 2016-08-09 2018-02-15 日本電信電話株式会社 Communication control system and communication control method
US10356579B2 (en) 2013-03-15 2019-07-16 The Nielsen Company (Us), Llc Methods and apparatus to credit usage of mobile devices
US11423420B2 (en) 2015-02-06 2022-08-23 The Nielsen Company (Us), Llc Methods and apparatus to credit media presentations for online media distributions

Cited By (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8321453B2 (en) 2008-09-29 2012-11-27 Brother Kogyo Kabushiki Kaisha Communication system
JP2010130524A (en) * 2008-11-28 2010-06-10 Nippon Telegr & Teleph Corp <Ntt> Communication system, communication apparatus, communication method, or program
JP2010186207A (en) * 2009-02-10 2010-08-26 Brother Ind Ltd Data receiving terminal and computer program
US9128808B2 (en) 2009-03-28 2015-09-08 Brother Kogyo Kabushiki Kaisha Computer readable storage medium for registration of site information and a computer to register site information
US9357203B2 (en) 2010-07-02 2016-05-31 Sony Corporation Information processing system using captured image, information processing device, and information processing method
US8910259B2 (en) 2010-08-14 2014-12-09 The Nielsen Company (Us), Llc Systems, methods, and apparatus to monitor mobile internet activity
US8886773B2 (en) 2010-08-14 2014-11-11 The Nielsen Company (Us), Llc Systems, methods, and apparatus to monitor mobile internet activity
US10965765B2 (en) 2010-08-14 2021-03-30 The Nielsen Company (Us), Llc Systems, methods, and apparatus to monitor mobile internet activity
US11438429B2 (en) 2010-08-14 2022-09-06 The Nielsen Company (Us), Llc Systems, methods, and apparatus to monitor mobile internet activity
US9736136B2 (en) 2010-08-14 2017-08-15 The Nielsen Company (Us), Llc Systems, methods, and apparatus to monitor mobile internet activity
US10320925B2 (en) 2010-08-14 2019-06-11 The Nielsen Company (Us), Llc Systems, methods, and apparatus to monitor mobile internet activity
US11849001B2 (en) 2010-08-14 2023-12-19 The Nielsen Company (Us), Llc Systems, methods, and apparatus to monitor mobile internet activity
JP2012147212A (en) * 2011-01-12 2012-08-02 Nec Corp Communication terminal, transmitting/receiving method of the same, and communication system including terminal
JP2011123921A (en) * 2011-03-23 2011-06-23 Brother Industries Ltd Communication system and communication control program
US9712626B2 (en) 2011-06-29 2017-07-18 The Nielsen Company (Us), Llc Methods, apparatus, and articles of manufacture to identify media presentation devices
US9124920B2 (en) 2011-06-29 2015-09-01 The Nielson Company (Us), Llc Methods, apparatus, and articles of manufacture to identify media presentation devices
US9307418B2 (en) 2011-06-30 2016-04-05 The Nielson Company (Us), Llc Systems, methods, and apparatus to monitor mobile internet activity
US8594617B2 (en) 2011-06-30 2013-11-26 The Nielsen Company (Us), Llc Systems, methods, and apparatus to monitor mobile internet activity
JP2013016169A (en) * 2011-06-30 2013-01-24 Nielsen Co (Us) Llc Systems, methods, and apparatus to monitor mobile internet activity
US9301173B2 (en) 2013-03-15 2016-03-29 The Nielsen Company (Us), Llc Methods and apparatus to credit internet usage
US11510037B2 (en) 2013-03-15 2022-11-22 The Nielsen Company (Us), Llc Methods and apparatus to credit usage of mobile devices
US10356579B2 (en) 2013-03-15 2019-07-16 The Nielsen Company (Us), Llc Methods and apparatus to credit usage of mobile devices
US9232281B2 (en) 2013-09-24 2016-01-05 Sony Corporation Communication management apparatus, terminal, communication management system, communication management method, program, and information storage medium
JP2015064655A (en) * 2013-09-24 2015-04-09 株式会社ソニー・コンピュータエンタテインメント Communication management apparatus, terminal, communication management system, communication management method, program, and information storage medium
WO2016021180A1 (en) * 2014-08-07 2016-02-11 日本電気株式会社 Communication terminal device and transmission/reception method therefor, and recording medium containing computer program
US20170265067A1 (en) * 2014-08-07 2017-09-14 Nec Corporation Communication terminal device and transmission and reception method therefor, and recording medium containing computer program
JPWO2016021180A1 (en) * 2014-08-07 2017-05-25 日本電気株式会社 COMMUNICATION TERMINAL DEVICE, ITS TRANSMITTING / RECEIVING METHOD, AND COMPUTER PROGRAM
US10257297B2 (en) 2014-10-31 2019-04-09 The Nielsen Company (Us), Llc Methods and apparatus to improve usage crediting in mobile devices
US10798192B2 (en) 2014-10-31 2020-10-06 The Nielsen Company (Us), Llc Methods and apparatus to improve usage crediting in mobile devices
US9762688B2 (en) 2014-10-31 2017-09-12 The Nielsen Company (Us), Llc Methods and apparatus to improve usage crediting in mobile devices
US11671511B2 (en) 2014-10-31 2023-06-06 The Nielsen Company (Us), Llc Methods and apparatus to improve usage crediting in mobile devices
US11423420B2 (en) 2015-02-06 2022-08-23 The Nielsen Company (Us), Llc Methods and apparatus to credit media presentations for online media distributions
US10313305B2 (en) 2015-06-30 2019-06-04 Fujitsu Technology Solutions Intellectual Property Gmbh Method of unblocking external computer systems in a computer network infrastructure, distributed computer network having such a computer network infrastructure as well as computer program product
JP2017537546A (en) * 2015-06-30 2017-12-14 フジツウ テクノロジー ソリューションズ インタレクチュアル プロパティ ゲーエムベーハー Method for unblocking an external computer system in a computer network infrastructure, a distributed computer network and a computer program product having such a computer network infrastructure
JP2018026675A (en) * 2016-08-09 2018-02-15 日本電信電話株式会社 Communication control system and communication control method

Also Published As

Publication number Publication date
JP4274184B2 (en) 2009-06-03

Similar Documents

Publication Publication Date Title
JP4274184B2 (en) Communication system and communication method
JP4708688B2 (en) Method and system for managing access to content
US9722966B2 (en) DNS-based determining whether a device is inside a network
JP4553947B2 (en) Analysis device, analysis method, computer program, and recording medium
US7489783B2 (en) Digital certificate management system, digital certificate management apparatus, digital certificate management method, update procedure determination method and program
RU2385488C2 (en) Names resolution protocol for wire connection of equivalent devices and structure of message format date used in it
US7778193B2 (en) Residential network setting method, home gateway apparatus, home gateway program, and recording medium
EP1615404B1 (en) Server/client system, information processing unit, information processing method, and computer program
US7188245B2 (en) Contents transmission/reception scheme with function for limiting recipients
RU2412480C2 (en) System and method of establishing whether server and correspondent have coordinated secure mail
US20060031922A1 (en) IPsec communication method, communication control apparatus, and network camera
US20030070069A1 (en) Authentication module for an enterprise access management system
WO2007100045A1 (en) Communication control device, communication control system, communication control method, and communication control program
KR100789123B1 (en) Preventing unauthorized access of computer network resources
KR100954370B1 (en) Software execution management device and method thereof
US8191131B2 (en) Obscuring authentication data of remote user
US20040030891A1 (en) Information processing system, information processing apparatus and method, recording medium, and program
JP2007004605A (en) Communication system, client, server, and program
JP4127497B2 (en) Digital service system
WO2012083075A2 (en) Determining whether a device is inside a network
KR20180137251A (en) security and device control method for fog computer using blockchain technology
EP1115049A2 (en) Secure data transmission over a client-server network
JP4113462B2 (en) Content communication history analysis system and data communication control device
US7287157B2 (en) Digital content system
JP2004078280A (en) Remote access mediation system and method

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20081104

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081118

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090109

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: 20090210

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090223

R150 Certificate of patent or registration of utility model

Ref document number: 4274184

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120313

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120313

Year of fee payment: 3

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120313

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130313

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140313

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees