JP2005167364A - Communication connection method, server computer, and program - Google Patents
Communication connection method, server computer, and program Download PDFInfo
- Publication number
- JP2005167364A JP2005167364A JP2003400111A JP2003400111A JP2005167364A JP 2005167364 A JP2005167364 A JP 2005167364A JP 2003400111 A JP2003400111 A JP 2003400111A JP 2003400111 A JP2003400111 A JP 2003400111A JP 2005167364 A JP2005167364 A JP 2005167364A
- Authority
- JP
- Japan
- Prior art keywords
- connection request
- server computer
- group
- packet
- connection
- 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
Links
Images
Landscapes
- Computer And Data Communications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
本発明は、クライアント計算機からのアクセスに対し、安全に接続を行えるサーバ計算機の通信接続方法、サーバ計算機、および、プログラムに関する。 The present invention relates to a server computer communication connection method, a server computer, and a program that can securely connect to an access from a client computer.
近年、インターネット等を利用し、不特定多数あるいは特定多数のクライアント計算機をパケット交換ネットワーク経由でサーバ計算機に接続し、クライアント計算機からの要求に応じてサーバ計算機からデータを供給することを目的とするクライアントサーバシステムが広く使われている。 In recent years, clients that use the Internet or the like to connect an unspecified number or number of specified client computers to a server computer via a packet switching network and supply data from the server computer in response to a request from the client computer Server systems are widely used.
ここで、パケットとは、ネットワーク上を流れるひとかたまりのデータをいい、大まかに分けると、ヘッダとデータ本体で構成されている。さらに、ヘッダ内には、始点IP(Internet Protocol)アドレス、終点IPアドレス等から構成されている。このようなTCP/IP(Transmission Control Protocol/IP)プロトコルにおける正当なアクセス要求の一例としては、(1)クライアント計算機はサーバ計算機へ接続要求パケット(SYN(SYNchronize)パケット)を送信し、(2)サーバ計算機はクライアント計算機へ接続要求確認パケット(SYN+ACK(ACKnowledgement)パケット)を送信し、(3)クライアント計算機はサーバ計算機へ確認応答パケット(ACK)パケットを送ることによって、論理的な通信路(コネクション)を確立し、そのコネクション確立(Established)状態で上位アプリケーションでのデータの送受信をおこなう。このアクセス要求を、3 way handshake 方式と呼ぶ。 Here, a packet refers to a group of data flowing on the network, and roughly divided into a header and a data body. Further, the header includes a start point IP (Internet Protocol) address, an end point IP address, and the like. As an example of a legitimate access request in such a TCP / IP (Transmission Control Protocol / IP) protocol, (1) the client computer sends a connection request packet (SYN (SYNchronize) packet) to the server computer, (2) The server computer sends a connection request confirmation packet (SYN + ACK (ACKnowledgement) packet) to the client computer, and (3) the client computer sends an acknowledgment packet (ACK) packet to the server computer to create a logical communication path ( Connection) is established, and data is sent and received by the higher-level application in the established (Established) state. This access request is called a three-way handshake method.
ところで、TCP/IPプロトコルでコネクションを確立する際に、サーバ計算機は、予め一定量のTCPコネクション処理用のリソース(メモリ領域、ディスク領域)を確保する必要がある。なお、コネクションが破棄されると、サーバ計算機は、その処理用のリソースを開放する。このTCPコネクション処理用のリソースは、接続要求者(クライアント計算機の利用者あるいはクライアント計算機自体を指す)を区別することなく割り当てられ、このリソースが不足している場合には新規のコネクションの確立ができない状況となる。従って、次の2つの問題が生じる。一つ目は、不正なクライアントがサーバ計算機と大量のコネクションを確立してコネクション処理用のリソースを使い切らせてしまうにすることで、サーバ計算機がサービスの提供をできない状況にする攻撃(以下、Connection Floodと表記する)が行われてしまう。二つ目は、大勢の低い優先順位の人々(または一般の人々)がサービスを利用している状態では、高い優先順位をもった人々がサービスの利用が出来ないことになってしまう。 By the way, when establishing a connection using the TCP / IP protocol, the server computer needs to secure a certain amount of resources (memory area and disk area) for TCP connection processing in advance. When the connection is discarded, the server computer releases the processing resources. This TCP connection processing resource is allocated without distinguishing the connection requester (pointing to the client computer user or the client computer itself), and if this resource is insufficient, a new connection cannot be established. Situation. Therefore, the following two problems arise. The first is an attack that makes it impossible for a server computer to provide a service by establishing a large number of connections with the server computer and using up resources for connection processing. Will be performed). Second, in the state where many low-priority people (or general people) use the service, people with a high priority cannot use the service.
このような問題を解決するために、予め相利用者をグループ分けしておき、各グループ内の優先順位に基づきTCPコネクション処理用のリソースを管理する方法が提案されている(例えば、特許文献1参照)。この方法は次のような処理を経る。
1)クライアント計算機は、サーバ計算機に対して接続要求パケットを送信し、
2)サーバ計算機は受信した接続要求パケットの利用者識別子(接続要求パケットの送信元アドレス)を参照して接続要求者の属する利用者グループの識別を行い、
3)確認した利用者識別子に対応して設定された通信処理用リソースの空きを確認し、最後にリソースに空きが有る場合にはTCPコネクション処理用リソースを割り当てる。
In order to solve such a problem, a method has been proposed in which phase users are divided into groups in advance, and resources for TCP connection processing are managed based on the priority order in each group (for example, Patent Document 1). reference). This method goes through the following processing.
1) The client computer sends a connection request packet to the server computer,
2) The server computer refers to the user identifier (source address of the connection request packet) of the received connection request packet, identifies the user group to which the connection requester belongs,
3) The communication processing resource set corresponding to the confirmed user identifier is checked, and finally, if the resource is available, a TCP connection processing resource is allocated.
このように、利用者グループ毎にTCPコネクション処理用のリソースを割り当てるため、不正クライアントによるConnection Floodの影響をその不正クライアントが属する利用者グループにとどめることができ、サーバ計算機のサービスの停止を防止できた。また、優先度に応じて、グループを形成することにより、優先度が低い利用者が大量サービスを
利用している状況においても、優先順位の高い利用者にはTCPコネクション処理用リソースを割り当てることができた。
上述した方法は、接続要求パケットに含まれる計算機アドレス(IPアドレス、MACアドレス)を利用者識別子とし、この利用者識別子に基づいてTCPコネクション処理用のリソースを割り当てていた。 In the method described above, a computer address (IP address, MAC address) included in the connection request packet is used as a user identifier, and resources for TCP connection processing are allocated based on the user identifier.
しかし、この方法では、同一のクライアント計算機を複数の利用者が利用する場合には利用者に応じたリソース割り当てを行うことはできなかった。また、IPアドレスが動的に割り当てられる場合にはその都度登録しなおす必要が生じる、接続要求パケットに含まれるMACアドレスはサーバ計算機とクライアント計算機が同一のネットワークに有る場合にしか利用できない、といった問題がある。また、IPアドレス、MACアドレスは比較的容易に偽造可能であるため、不正なクライアントや優先順位の低いクライアントがこれらの計算機アドレスを偽ってサーバ計算機に接続することで、他の利用者グループを装ってサービスを享受することを防ぐことができなかった。 However, according to this method, when a plurality of users use the same client computer, resource allocation according to the users cannot be performed. Also, if the IP address is dynamically assigned, it will be necessary to re-register each time. The MAC address included in the connection request packet can only be used when the server computer and the client computer are on the same network. There is. Also, since IP addresses and MAC addresses can be forged relatively easily, an unauthorized client or a client with a low priority disguises these computer addresses and connects to the server computer to impersonate other user groups. We could not prevent you from enjoying the service.
本発明は、上記問題点に対し鑑みなされたものであり、クライアント計算機からの様々なアクセスに対して、より高い安全性を備えたサーバ計算機の通信接続方法、サーバ計算機、および、プログラムを提供することを目的とする。 The present invention has been made in view of the above problems, and provides a server computer communication connection method, a server computer, and a program with higher security against various accesses from a client computer. For the purpose.
本発明は、ネットワークを介し、クライアント計算機と接続を行うサーバ計算機の通信接続方法であって、前記サーバ計算機は、該サーバ計算機との接続が許される複数のユーザからなるグループを識別するためのグループ識別情報と、そのグループに対して秘密に割り当てた一意の接続要求パケット回数とを対応付けて、予め記憶する記憶手段を備え、サーバ計算機は、所定期間内に受信した前記クライアント計算機からの接続要求パケットの回数をカウントし、前記記憶手段に、該カウント結果に一致する接続要求パケット回数が記憶されているか否かを認証し、記憶されている場合にその接続要求パケット回数に対応するグループ識別情報を取得し、取得された前記グループ識別情報の示すグループに対し、該サーバ計算機のリソース割り当てが可能か否かを判定し、割り当て可能と判定したときに、前記受信した複数の接続要求パケットの少なくとも何れか1つに対する応答として接続要求確認パケットを生成し、該生成した接続要求確認パケットをネットワークへ送出するようにした。 The present invention is a communication connection method of a server computer for connecting to a client computer via a network, wherein the server computer identifies a group of a plurality of users permitted to connect to the server computer. The server computer includes a storage unit that stores the identification information and the unique connection request packet count secretly assigned to the group in association with each other, and the server computer receives the connection request from the client computer received within a predetermined period. Counts the number of packets, authenticates whether or not the number of connection request packets that match the count result is stored in the storage means, and if stored, group identification information corresponding to the number of connection request packets And the resource of the server computer for the group indicated by the acquired group identification information It is determined whether allocation is possible, and when it is determined that allocation is possible, a connection request confirmation packet is generated as a response to at least one of the received plurality of connection request packets, and the generated connection request confirmation The packet was sent to the network.
また、本発明は、クライアント計算機との接続処理を行うサーバ計算機であって、該サーバ計算機との接続が許される複数のユーザからなるグループを識別するためのグループ識別情報と、そのグループに対して秘密に割り当てた一意の接続要求パケット回数とを対応付けて、予め記憶する記憶手段と、所定期間内に受信した前記クライアント計算機からの接続要求パケットの回数をカウントする接続要求カウント手段と、前記記憶手段に、該カウント結果に一致する接続要求パケット回数が記憶されているか否かを認証し、記憶されている場合にその接続要求パケット回数に対応するグループ識別情報を取得するグループ識別手段と、取得された前記グループ識別情報の示すグループに対し、該サーバ計算機のリソース割り当てが可能か否かを判定し、割り当て可能と判定したときに、前記受信した複数の接続要求パケットの少なくとも何れか1つに対する応答として接続要求確認パケットを生成するリソース管理手段と、該生成した接続要求確認パケットをネットワークへ送出する送信手段とを備えた。 The present invention also provides a server computer that performs connection processing with a client computer, group identification information for identifying a group of a plurality of users permitted to connect to the server computer, and the group A storage means for storing in advance a correspondence with the number of unique connection request packets assigned to the secret, a connection request counting means for counting the number of connection request packets received from the client computer within a predetermined period, and the storage Authenticating whether or not the number of connection request packets that match the count result is stored in the means, and if stored, group identification means for acquiring group identification information corresponding to the number of connection request packets, and acquisition Whether the server computer can allocate resources to the group indicated by the group identification information Resource management means for generating a connection request confirmation packet as a response to at least one of the received plurality of connection request packets, and the generated connection request confirmation packet in the network And a transmission means for sending to the mobile phone.
また、本発明は、サーバ計算機との接続が許される複数のユーザからなるグループを識別するためのグループ識別情報と、そのグループに対して秘密に割り当てた一意の接続要求パケット回数とを対応付けて、予め記憶する記憶手段を備えるサーバ計算機で実行されるプログラムであって、所定期間内に受信した前記クライアント計算機からの接続要求パケットの回数をカウントさせる第1のコードと、前記記憶手段に、該カウント結果に一致する接続要求パケット回数が記憶されているか否かを認証させ、記憶されている場合にその接続要求パケット回数に対応するグループ識別情報を取得させる第2のコードと、取得された前記グループ識別情報の示すグループに対し、該サーバ計算機のリソース割り当てが可能か否かを判定させ、割り当て可能と判定したときに、前記受信した複数の接続要求パケットの少なくとも何れか1つに対する応答として接続要求確認パケットを生成させる第3のコードと、該生成した接続要求確認パケットをネットワークへ送出させる第4のコードとを備え、サーバ計算機に実行させるようにした。 The present invention also relates group identification information for identifying a group of a plurality of users allowed to connect to the server computer and the number of unique connection request packets secretly assigned to the group. A program executed by a server computer comprising storage means for storing in advance, the first code for counting the number of connection request packets received from the client computer within a predetermined period, and the storage means The second code for authenticating whether or not the number of connection request packets that match the count result is stored, and for acquiring the group identification information corresponding to the number of connection request packets when stored, and the acquired Determine whether the server computer can allocate resources to the group indicated by the group identification information. A third code for generating a connection request confirmation packet as a response to at least one of the received plurality of connection request packets when it is determined to be possible, and a third code for transmitting the generated connection request confirmation packet to the network 4 code, and let the server computer execute.
本発明によれば、接続要求に対しグループ認証を行い、且つ、グループ単位で利用可能なサーバ計算機のリソースを割り当てたから、不正な接続要求者からの攻撃を困難にし、且つ、正当な接続要求者からの(意図の有無に関わらない)アクセス集中によるサービス不能攻撃も防止できる。従って、サーバ計算機のセキュリティをより一層向上させることができる。 According to the present invention, the group authentication is performed for the connection request and the resources of the server computer that can be used in units of groups are allocated, so that it is difficult for an unauthorized connection requester to attack and the right connection requester. Can also prevent denial-of-service attacks due to access concentration (regardless of intentions). Therefore, the security of the server computer can be further improved.
以下、本発明の実施の形態につき図面を参照して説明する。 Embodiments of the present invention will be described below with reference to the drawings.
図1は、本実施の形態が適用される通信システムを示すものであり、サーバ計算機1とクライアント計算機2とは、インターネットなどのオープンなネットワークおよびそれに接続された専用線などを含む各種通信ネットワーク3で接続される。
FIG. 1 shows a communication system to which the present embodiment is applied. The
一般に、サーバ計算機1とクライアント計算機2との間の通信は、TCP/IPで行われる。TCP/IPは、下位層から上位層へ順にネットワークアクセス層、ネットワーク層、トランスポート層、アプリケーション層に分離される。
In general, communication between the
ネットワークアクセス層は、OSI(Open Systems Interconnection)参照モデルの物理層、データリンク層を合わせたものに相当し、電気信号や光信号によるデータの送受信と、隣接ノードとの間で情報のフローを調整するために必要な制御を可能とする処理層である。 The network access layer is equivalent to the physical layer and data link layer of the OSI (Open Systems Interconnection) reference model, and it sends and receives data using electrical and optical signals and adjusts the flow of information between adjacent nodes It is a processing layer that enables the control necessary for the purpose.
ネットワーク(インターネット)層は、OSI参照モデルのネットワーク層に相当し、ネットワーク間でのデータのルーティングと通信目的の計算機へのデータ配信に責任を負う処理層である。 The network (Internet) layer corresponds to the network layer of the OSI reference model, and is a processing layer that is responsible for data routing between networks and data distribution to computers for communication purposes.
トランスポート層は、OSI参照モデルのトランスポート層にほぼ相当し、指定されたアプリケーション層ポートへの配信サービスとデータのエラーチェック機能を提供する処理層である。トランスポート層では、TCP(Transmission Control Protocol)とUDP(User Datagram Protocol)の2つのプロトコルが利用可能である。後述するようにTCPではコネクション型環境を提供し、データの到達性を保証する。それに対して、UDPはコネクションレス型環境を提供し、データの到達性を保証しない。 The transport layer substantially corresponds to the transport layer of the OSI reference model, and is a processing layer that provides a delivery service to a designated application layer port and a data error check function. In the transport layer, two protocols, TCP (Transmission Control Protocol) and UDP (User Datagram Protocol), can be used. As will be described later, TCP provides a connection-type environment and guarantees data reachability. In contrast, UDP provides a connectionless environment and does not guarantee data reachability.
アプリケーション層は、OSI参照モデルのアプリケーションに相当し、アプリケーションがデータ送受信を行うための通信処理制御や、アプリケーション固有の処理を行う処理層である。 The application layer corresponds to an OSI reference model application, and is a processing layer that performs communication processing control for the application to perform data transmission / reception and processing specific to the application.
ネットワーク層より上位層での通信は、IPパケットで行われる。図2に一般的なIPパケットの構成を示す、IPパケットは、IPヘッダ部とデータ部とから構成される。 Communication in a layer higher than the network layer is performed using IP packets. FIG. 2 shows a general IP packet configuration. An IP packet is composed of an IP header portion and a data portion.
IPヘッダ部は、IPのバージョン(IPv4、IPv6等)を示すバージョン、IPヘッダ部のヘッダ長を示すヘッダ長、通信サービスの品質をルータに指示するためのサービスタイプ、IPパケット全体の長さを示すパケット長、フラグメントを復元する際の識別子である識別子、分割処理を制御するためのフラグ、分割された場合の位置を示すためのフラグメントオフセット、通過できるルータの個数を示す生存時間、上位層のプロトコルを示すプロトコル番号(ICMPは1、TCPは6、UDPは17)、データが破損していないことを保証するためのヘッダチェックサム、送信元のアドレスを示す始点IPアドレス、送信先のアドレスを示す終点IPアドレス、種々のオプション機能に利用するためのオプション、IPヘッダのヘッダ長が32ビットの整数倍になるよう調整するパディングの各情報からなる。 The IP header part includes the version indicating the IP version (IPv4, IPv6, etc.), the header length indicating the header length of the IP header part, the service type for instructing the router about the quality of the communication service, and the total length of the IP packet. Packet length, identifier for restoring the fragment, flag for controlling the fragmentation process, fragment offset for indicating the position of the fragmentation, lifetime indicating the number of routers that can be passed, upper layer Protocol number indicating the protocol (ICMP is 1, TCP is 6, UDP is 17), header checksum to ensure that the data is not damaged, source IP address indicating the source address, destination address Destination IP address, options for use in various optional functions, IP header length is 32 bits Each consisting of information padding to adjust to be the integral multiple.
データ部は、TCP、UDP、または、ICMPのセグメントが含まれる。 The data part includes a TCP, UDP, or ICMP segment.
図3は、一般的なTCPセグメントの構成を示している。TCPセグメントは、TCPヘッダとデータ部分から構成される。TCPヘッダは、送信元のポート番号を示す始点ポート番号、送信先のポート番号を示す終点ポート番号、送信したデータの位置を示すシーケンス番号、受信したデータの位置を示す確認応答番号、TCPが運んでいるデータの開始位置を示すデータオフセット、拡張用の予約ビット、TCPセグメントの処理方法や種別を示すコントロールフラグ、フロー制御に用いられ、受信可能なデータ長を示すウィンドウサイズ、TCPのヘッダ、データが損傷していないことを保証するためのチェックサム、緊急に処理すべきデータの位置を示す緊急ポインタ、TCPによる通信性能の向上に用いるオプション、および、パディングの各情報からなる。 FIG. 3 shows the structure of a general TCP segment. The TCP segment is composed of a TCP header and a data portion. The TCP header includes a start port number indicating the source port number, an end port number indicating the destination port number, a sequence number indicating the position of the transmitted data, an acknowledgment number indicating the position of the received data, and a TCP carry Data offset indicating the start position of the data being read, extension reserved bit, control flag indicating the processing method and type of the TCP segment, window size indicating the receivable data length used for flow control, TCP header, data Is composed of a checksum for ensuring that the data is not damaged, an urgent pointer indicating the position of data to be urgently processed, an option used for improving communication performance by TCP, and padding information.
図4は、一般的なUDPセグメントの構成を示している。UDPセグメントは、UDPヘッダとデータ部分とから構成される。UDPヘッダは、送信元のポート番号を示す始点ポート番号、送信先のポート番号を示す終点ポート番号、このUDPセグメントの長さを示すパケット長、UDPのヘッダ、IPアドレス、プロトコル番号が損傷していないことを保証するためのチェックサム、の各情報からなる。 FIG. 4 shows the structure of a general UDP segment. The UDP segment is composed of a UDP header and a data portion. In the UDP header, the source port number indicating the source port number, the destination port number indicating the destination port number, the packet length indicating the length of this UDP segment, the UDP header, IP address, and protocol number are damaged. It consists of each information of checksum to guarantee that there is no.
TCPは、一般的に1)クライアント計算機がサーバ計算機へ接続要求パケット(SYN(SYNchronize)パケット)を送信し、2)サーバ計算機がクライアント計算機へ接続要求確認パケット(SYN+ACK(ACKnowledgement)パケット)を送信し、3)クライアント計算機がサーバ計算機へ確認応答パケット(ACK)パケットを送る、という手順の3 way handshake方式により機器同士で論理的なポート間で通信路(コネクション)を確立し、その上で上位アプリケーションでのデータの送受信を行う。なお、論理的なポートは、65535番まで利用することが許可されている。 In TCP, generally 1) the client computer sends a connection request packet (SYN (SYNchronize) packet) to the server computer, and 2) the server computer sends a connection request confirmation packet (SYN + ACK (ACKnowledgement) packet) to the client computer. 3) A communication path (connection) is established between logical ports between devices using a three-way handshake method in which the client computer sends an acknowledgment packet (ACK) packet to the server computer. Send and receive data with the host application. Note that logical ports up to 65535 are allowed to be used.
これに対して、UDP、ICMPは、コネクションレスの通信であるため、このようなコネクション確立の処理は行われず、データの送受信が行われる。 On the other hand, since UDP and ICMP are connectionless communications, such connection establishment processing is not performed and data is transmitted and received.
さて、本実施の形態では、あるサーバ計算機1側と、そのサーバ計算機1へのアクセスが許される全ての接続要求者との間で、予め全ての接続要求者を複数のグループに分けておき、各グループ間では異なっているが各グループ内では同一の接続要求パケットの発信回数を少なくとも認証用の情報として決めておく。そして、サーバ計算機1と各接続要求者との間で、認証用の情報として利用される発信回数を秘密に共有されているものとする。この発信回数の共有は、暗号プロトコルを用いて確保されたセキュアチャネル(このよ
うな既存技術としてはSSL(Secure Socket Layer)などがある)を利用してオンラインで行ったり、郵送などのオフラインで行ったりするなどして第三者に秘匿して共有される。なお、接続要求者は複数のサーバに応じて異なる判定基準の情報を保持していてもよい。
Now, in the present embodiment, all connection requesters are divided into a plurality of groups in advance between a
図5は、図1のシステムにおけるクライアント計算機2のうち、本実施の形態に係る部分の機能ブロックを示したものである。 FIG. 5 shows functional blocks of a portion according to the present embodiment of the client computer 2 in the system of FIG.
接続要求パケット生成部21は、接続要求者から図示しないユーザインタフェースを介しサーバ計算機1への接続要求の指示を受けた際に、接続要求パケットを生成するものである。接続要求パケット生成部21は、コネクション確立テーブル100を参照し、指定されたサーバ計算機1との接続の際に必要な接続要求パケットの発信回数を取得し、生成した接続要求パケットを、該取得した発信回数分、送信部22へ順次出力する。なお、通常、接続要求パケットのサーバ計算機1へのアクセスポートは、80番が使用されるものであり、本実施例においても、80番を使用すればよい。なお、予め、80番とは異なるアクセスポートM番を使用する取り決めとなっていれば、M番を使用すればよいことは勿論である。更に、複数のアクセスポートを予め定めた個数づつ順にアクセスするようにしても良い。
The connection
コネクション確立テーブル100には、少なくとも、この接続要求者にとってサーバ計算機1との接続の際に必要な接続要求パケットの発信回数が記憶されている。コネクション確立テーブル100の一例を図7の(a)に示す。この例のコネクション確立テーブル100には、各サーバ計算機1・・・1と、この接続要求者との間で秘密に共有されるサーバ計算機毎の規定の接続要求パケット数(発信回数)とを対応付けたリストとなっている。この発信回数は、先に示したように、秘密に管理されていることが、肝要である。なお、コネクション確立テーブル100を備える代わりに、コネクション確立テーブル100に記憶される発信回数などの接続要求パケット生成のために必要な情報を、接続要求者が図示しないユーザインタフェースを介して入力するようにしても良い。
The connection establishment table 100 stores at least the number of transmissions of connection request packets necessary for the connection requester when connecting to the
送信部22は、IPパケットをネットワーク3へ送出するものであり、接続要求パケット生成部21によって順次出力される各接続要求パケットをネットワーク3へ順次送出する。
The transmission unit 22 transmits IP packets to the
受信部23は、ネットワーク3から自計算機2宛てのIPパケットを受信するものである。この受信したIPパケットは、接続要求確認パケット判定部24へ送られ、このIPパケットが、送信部22より送信した各接続要求パケットの何れかに対して応答された接続要求確認パケットであるか否かを判定する。これにより接続要求確認パケットであると判定された場合には、クライアント計算機2はサーバ計算機1とのコネクションを確立するための処理を行う。
The receiving
図6は、サーバ計算機1のうち、本実施の形態に係る部分の機能ブロックを示したものである。
FIG. 6 shows functional blocks of a part of the
受信部11は、ネットワーク3からの自計算機1宛てのIPパケットを受信し、このIPパケットが接続要求パケットであるとき、テーブル更新部12へ送出するものである。
The receiving
テーブル更新部12は、コネクション制御テーブル110へコネクション確立処理中のエントリーの登録または更新するものである。コネクション制御テーブル110の一例を図7の(b)に示す。コネクション制御テーブル110は、コネクション確立処理中の接続要求者の識別子(例としてはクライアント計算機のIPアドレス)と、その接続要求者がコネクション確立処理の開始からその時点までに送信し、サーバ計算機1が受信した接続
要求パケットの総数と、その接続要求者が認証処理を開始してからの経過時間とからなるエントリーをコネクション確立処理中の数だけ一時保持するものである。
The
テーブル更新部12は、受信した接続要求パケットと同じクライアント計算機2を示すエントリーが、コネクション制御テーブル110に既に登録されている場合には、そのエントリーのパケット受信回数を1増加して、更新する。一方、接続要求パケットが、コネクション制御テーブル110に登録されていない場合には、新たにエントリーを追加する。このとき、接続要求パケットを送信したクライアント計算機2を識別可能な情報(例えば、クライアント名、始点IPアドレス等)を記載し、パケット受信回数は1で、経過時間を0にする。
When an entry indicating the same client computer 2 as the received connection request packet is already registered in the connection control table 110, the
また、テーブル更新部12は、タイマー13と接続され、タイマ−13に基づいて、コネクション制御テーブル110の各エントリーの経過時間欄を所定時間間隔(例えば、1秒ごと)で更新する。すなわち、各エントリーの経過時間欄は、最初のパケットを受信してから現在までの経過時間を刻々と計時していることとなる。
The
監視部14は、コネクション制御テーブル110に一時保持される各エントリーの経過時間欄が所定の時間経過したか否かを所定間隔(例えば、1秒)ごとに監視するものであり、所定の時間が経過したと判断されたエントリーが存在した時、そのエントリーを読み出し、且つ、コネクション制御テーブル110からそのエントリーを削除する。監視部14は、読み出したエントリーを、グループ識別部15へ送信する。
The
グループ識別部15は、送信されたエントリーに含まれる受信した接続要求パケット数が、予め格納するグループ識別テーブル120にあるか否かを認証し、該当する回数があれば、それに対応付けられたグループを示す識別情報を取得し、エントリーと共に、リソース管理部16へ送信する。なお、グループ識別テーブル120は、例えば図7(c)に示すもので、各グループに一意に割り当てた接続要求パケット数と各グループの識別情報(ここではグループ名だが、グループID等でも良い)とを対応付けたリストである。
The
リソース管理部16は、受け取ったグループの識別情報に基づいて、リソース管理テーブル130を参照し、そのグループへ現在割り当て可能なリソースの状況を確認する。リソース管理テーブル130は、例えば図7(d)に示すもので、各グループ名(グループを識別する情報)と、各グループに同時に割り当て可能なリソースから求められる同時接続可能なコネクション数と、各グループ内で現在コネクション中であるコネクション数とを対応付けたリストで構成される。リソース管理部16は、このようなリソース管理テーブル130を参照した結果、割り当て可能なリソースがあれば、リソース管理テーブル130のそのグループのエントリーの現在コネクション中であるコネクション数欄の値を1増加させる。そして、リソース管理部16は、コネクションを確立するために、クライアント計算機2からの複数の接続要求パケットのうちのいずれかひとつの接続要求パケット対して接続要求確認パケットを生成し、送信部17へ出力する。なお、あるグループのあるコネクションが終了した際には、リソース管理部16は、その旨の通知を受け、リソース管理テーブル130の、そのグループのエントリーの現在コネクション中であるコネクション数欄の値を1減少させる。なお、どの接続要求パケットに対して接続要求確認パケットを生成するかは、予めクライアント装置2とサーバ装置1との間でN番目の接続要求パケットに対して生成するかを個別に決めておく方法やサーバ装置がその都度決定する方法もあるが、ここでは、一義的に最後の接続要求パケットに対して生成することとする。
Based on the received group identification information, the
送信部17は、リソース管理部16からの接続要求確認パケットをネットワーク3へ送出する。なお、この送出された接続要求確認パケットは、先に説明したクライアント計算機2の受信部13で受信される。
The
次に、本実施の形態のクライアント計算機2の動作について図8を、及びサーバ計算機1の動作について図9、図10を用いて説明する。
Next, the operation of the client computer 2 according to the present embodiment will be described with reference to FIG. 8, and the operation of the
接続要求者がクライアント計算機2から、サーバ計算機1と接続する旨指示すると、まず、クライアント計算機2の接続要求パケット生成部21は、内部に備える送信済接続カウンタ(図示しない)に初期値として“1”を設定する(ステップC101)。次に、接続要求パケット生成部21は、サーバ計算機1宛ての接続要求パケットを生成する(ステップC102)。生成した接続要求パケットは、送信部22を介して、ネットワーク3へ出力する(ステップC103)。
When the connection requester instructs the client computer 2 to connect to the
接続要求パケット生成部21は、コネクション確立テーブル100に登録されているサーバ計算機1のエントリーの規定接続要求パケット数を参照し、送信済接続カウンタと比較して、規定数の接続要求パケットを送信したかどうか確認する(ステップC104)。
The connection request
まだ、送信した接続要求パケット数が規定に達していない場合には、送信済接続カウンタを1増加させ(ステップC105)、ステップC103に戻って、同じ接続要求パケットを再度送信する。 If the number of connection request packets transmitted has not yet reached the regulation, the transmitted connection counter is incremented by 1 (step C105), the process returns to step C103, and the same connection request packet is transmitted again.
一方、ステップC104で、規定数の接続要求パケットを送信したことを確認すると、サーバ計算機1から送られる接続要求確認パケットを待ち受ける(ステップC106)。そして、クライアント計算機1は、所定期間内にサーバ計算機1から接続要求確認パケットの受信があるか否か判断する(ステップC107)。より詳細には、受信部23で受信した自身のIPパケットは、接続要求確認パケット判定部24へ送られ、接続要求確認パケット判定部24は、そのIPパケットがサーバ計算機1からの接続要求確認パケットか、それ以外のIPパケットかを判断し、これを、少なくとも規定数の接続要求パケットを送信してから所定期間内行っている。
On the other hand, when it is confirmed in step C104 that a prescribed number of connection request packets have been transmitted, the server waits for a connection request confirmation packet sent from the server computer 1 (step C106). Then, the
所定期間内に接続要求確認パケットの受信がない場合には認証に失敗したものとして処理を終了する。 If no connection request confirmation packet is received within a predetermined period, it is determined that the authentication has failed, and the process is terminated.
一方、サーバ計算機1からの複数の接続要求パケットの少なくともいずれか一つに対する接続要求確認パケットを受信した場合には、それに対して応答確認パケットを送信する(ステップC108)。これにより、クライアント計算機2とサーバ計算機1の間にはコネクションが確立される。
On the other hand, when a connection request confirmation packet for at least one of the plurality of connection request packets is received from the
一方、サーバ計算機1では、大別すると、接続要求パケットの受信に係る動作と、接続要求確認パケットの送信に係る動作とが行われる。
On the other hand, the
まず、接続要求パケットの受信に係る動作について図9を用いて説明する。サーバ計算機1は、受信部11でクライアント計算機2からの接続要求パケットを受信し、これをテーブル更新部12へ送信する(ステップS101)。
First, an operation related to reception of a connection request packet will be described with reference to FIG. The
テーブル更新部12は、コネクション制御テーブル110に、接続要求者のエントリーが登録済みか否かを調べる(ステップS102)。なお、本実施形態では、コネクション制御テーブル110内の各エントリーを識別するために、IPアドレスを用いているが、MACアドレスやその他の識別子であってよい。
The
ステップS102で、もしコネクション制御テーブル110にエントリーがないと判断した場合には、クライアント計算機2のエントリーを新規に登録する(ステップS103)。なお
新規登録のエントリーには、IPアドレスの値、接続要求パケット数に初期値1、経過時間を初期値0が格納される。
If it is determined in step S102 that there is no entry in the connection control table 110, a new entry for the client computer 2 is registered (step S103). The new registration entry stores an IP address value, an
一方、ステップS102でコネクション制御テーブル110にそのクライアント計算機2のエントリーが既にあると判断した場合には、そのIPアドレスを含むエントリーの、接続要求パケット数を“1”増加して更新する(ステップS104)。 On the other hand, if it is determined in step S102 that the entry of the client computer 2 already exists in the connection control table 110, the number of connection request packets of the entry including the IP address is increased by "1" and updated (step S104). ).
なお、ここでは特に動作をフロー上に明記しないが、登録後の各エントリーの経過時間欄は、タイマー13からの通知を所定間隔毎に受けて、テーブル更新部12が都度更新しているものとする。
Note that the operation is not specified in the flow here, but the elapsed time column of each entry after registration is notified by the
次に、接続要求確認パケットの送信に係る動作について図10を用いて説明する。 Next, the operation related to the transmission of the connection request confirmation packet will be described with reference to FIG.
監視部14は、コネクション制御テーブル110の各エントリーの経過時間欄のいずれかが、予め定めた制限時間に到達したか否かを、常時監視する(ステップS121)。監視部14は、経過時間欄が制限時間に到達したエントリーがあることを検知した場合には、そのエントリーを読み出して、グループ識別部15へ送信する(ステップS122)。また、監視部14は、そのエントリーをコネクション制御テーブル110から削除する(ステップS123)。
The
グループ識別部15は、グループ識別テーブル120を参照し、受け取ったエントリーに含まれる接続要求パケット数と一致するものがあるか否かを認証する。そして一致するものがあれば、それに対応するグループ名(グループを示す識別情報)を取得する(ステップS124)。たとえば図7(C)で、接続要求者からの接続要求パケット数が200個であった場合には、グループ1に属すると判断される。なお、本実施形態では、接続要求パケットの数を定数としているが、これを数値範囲(例えば、200個以上220個未満や、200個以上)としても良い。グループ識別部15は、エントリーと取得したグループ名とを、リソース管理部16へ送出する。
The
リソース管理部16は、グループ名に基づいて、リソース管理テーブル130を参照し、このグループにおけるコネクション処理用のリソースの空きを確認する(ステップS125)。この処理は、このグループ名のエントリーを参照し、現在のコネクション数と最大のコネクション数を確認することで行われる。具体的には、現在のコネクション数を一つ増加させた結果が最大コネクション数を越えないことを確認する。なお、この実施形態では参照時点でのコネクション数からリソースの空きを確認しているが、リソース管理テーブルのそれぞれのエントリーについて現在のリソース空き状況をしめすフィールドを追加しておき、随時更新されるそのフィールドを参照するようにしてもよい。
Based on the group name, the
リソース管理部16は、リソースの空きを確認した結果、リソースの空きがない場合は、コネクション要求を棄却し(ステップS126)、処理を終了する。一方、リソースの空きを確認した結果、リソースの空きが存在した場合は、リソース管理テーブル130の現在コネクション数を1増加させることでリソース使用状況の変更を行う(ステップS127)。
As a result of checking the resource availability, if the
リソース管理部16は、クライアント計算機2からの最後の接続要求パケットに対する接続要求確認パケットを生成し(S128)、送信部17を介し、ネットワーク3へ送信する(S129)。なお、上記した通り、本実施形態では最後の接続要求パケットに対して接続要求確認パケットを生成することとしたが、どの接続要求パケットに対して接続要求確認パケットを生成するかは、様々な方法で実現できる。
The
以上説明してきた本実施の形態によれば、識別された利用者グループに対してコネクシ
ョン処理用リソースの空きを確認しコネクション確立処理を実行するようにしたから、優先順位の低い接続要求者は、自分より高い優先順位の利用者グループに割り当てられたリソースを利用してコネクションを確立することはできない。これにより優先順位の低い不正クライアントによるConnection Floodや優先順位の低い接続要求者によりサービスが占有される脅威を回避でき、サーバ計算機のセキュリティをより一層向上させることができる。
According to the present embodiment described above, since the connection processing resource is checked for the identified user group and the connection establishment process is executed, the connection requester having a low priority is Connections cannot be established using resources assigned to a user group with a higher priority than yourself. As a result, it is possible to avoid a connection flood caused by an unauthorized client having a low priority and a threat that the service is occupied by a connection requester having a low priority, and the security of the server computer can be further improved.
ところで、クライアント計算機2とサーバ計算機1との間で秘密に共有する要求回数は、他の様々な利用形態や他の様々な情報と組み合わせて、より攻撃に強い認証方法を用いることが可能である。
By the way, the number of requests secretly shared between the client computer 2 and the
以下では、各認証方法を例示し、その際の、クライアント計算機2とサーバ計算機1との動作について説明する。
(第1の例)
第1の例は、接続要求パケットを送信するアクセスポート番号を一般的に用いられる80番とせず、予め、80番とは異なるアクセスポートM番を接続要求者とサーバ計算機1との間で秘密に取り決め、共有しておき、秘密に共有する要求回数とアクセスポート番号M番とを用いて、認証を行うものである。このポート番号は、コネクション確立テーブル100とグループ識別テーブル120に登録しておけば良いが、コネクション確立テーブル100に登録する代わりに、接続要求者による入力によって(パスワード入力のように)行わせるようにしても良い。また、グループ識別テーブル120には、一つのエントリーに対し、同じグループの接続要求者のそれぞれの秘密のアクセスポート番号を登録するようにしても良いし、接続要求者それぞれにエントリーを設けるようにしても良い。更に、同じグループに属する接続要求者のアクセス番号を、共通にするようにしても良い。そして、コネクション制御テーブル110の各エントリーに接続要求パケットの受信ごとのアクセスポート番号のログを取るようにし、グループ識別15で、要求回数とアクセスポート番号の2つに一致するものがあるかを認証し、あれば、それに対応するグループ識別情報を取得するようにすれば良い。
Below, each authentication method is illustrated and operation | movement with the client computer 2 and the
(First example)
In the first example, the access port number for transmitting the connection request packet is not set to 80, which is generally used, and the access port M number different from the 80 is previously secreted between the connection requester and the
また、上記アクセスポート番号も1つとせず、複数のアクセスポート番号と予め定めた個数の接続要求パケット数との組み合わせて、これらを秘密に共有するようにし、これらを認証に用いることによって、より強固な認証方法が提供できる。そのほかにも、容易な改良すべき点はあるが、容易に実現できるからここでは説明を省略する
更に、アクセスポート番号以外に、接続要求パケットのヘッダの各データを、秘密に共有し利用する方法も当然考えられる。例えば、TCPヘッダのシーケンス番号、確認応答番号、予約ビット、ウィンドウサイズなどその他のフィールドの値を秘密として利用できる。特にシーケンス番号は、元来送信者が接続要求パケット・接続要求確認パケットを構成する際にランダムに決定する値であるため、秘密データを格納するのに適している。
In addition, the above access port number is not set to one, but a combination of a plurality of access port numbers and a predetermined number of connection request packets is shared secretly, and these are used for authentication. A strong authentication method can be provided. There are other points that need to be improved easily, but they are easy to implement, so the explanation is omitted here. In addition to the access port number, each header request packet data is secretly shared and used. Of course, it can be considered. For example, the values of other fields such as the sequence number, confirmation response number, reserved bit, and window size of the TCP header can be used as secrets. In particular, the sequence number is a value that is determined at random when the sender originally constructs the connection request packet / connection request confirmation packet, and is therefore suitable for storing secret data.
また、必ずしも接続要求パケットのヘッダの各データを用いる必要もなく、サーバ計算機1とクライアント計算機2との間で共有された、何らかの別に定義した情報を秘密として利用しても良い。この場合、接続要求パケットの(SYNパケットの)データフィールドに記述するようにすれば良い。更に、この秘密の情報は、接続要求パケット毎に変えても良いし、同一のものを使用しても良い。
Further, it is not always necessary to use each data of the header of the connection request packet, and some other defined information shared between the
このような、第1の例では、不正なユーザが他の利用者グループに所属しているように見せかけるためには、接続要求パケットの個数だけではなく、そのアクセスポート番号、接続要求パケットのヘッダの各データ、秘密の情報、等も推測する必要があるため、不正に正しく認証されることはいっそう困難になり、サーバ計算機1のセキュリティがより一層向上する。
(第2の例)
第2の例は、複数の接続要求パケットを送信する時間間隔を予め秘密に定めておき、接続要求回数と共に、接続要求緒パケットの受信時間間隔も用いて、認証を行うものである。この時間間隔は、コネクション確立テーブル100、グループ識別テーブル120に登録しておき、また、コネクション制御テーブル110には、追加の領域を持たせ、そこに、接続要求パケット受信毎に、前の接続要求パケットの受信からの経過時間または最初の接続要求パケットからの経過時間を追記しておくようにする。そしてグループ識別部15で、追記された複数の経過時間のそれぞれが前記時間間隔を満たすかを判断すれば良い。なお、実際には、通信の遅延にばらつきがあることを想定し、送信する時間間隔に対しグループ識別テーブル120に登録する時間間隔は、緩やかな、ある程度時間幅を持たせたものであることが必要である。なお、時間間隔は、上記した第1の例と同様、接続要求者毎に個別でも良く、グループに共通に設定しても良い。
In such a first example, in order to make it appear that an unauthorized user belongs to another user group, not only the number of connection request packets but also the access port number and the header of the connection request packet Therefore, it is more difficult to authenticate illegally and the security of the
(Second example)
In the second example, a time interval for transmitting a plurality of connection request packets is secretly determined in advance, and authentication is performed by using the connection request count packet reception time interval together with the number of connection requests. This time interval is registered in the connection establishment table 100 and the group identification table 120, and the connection control table 110 is provided with an additional area for each time a connection request packet is received. The elapsed time from the reception of the packet or the elapsed time from the first connection request packet is added. Then, the
本例では、不正アクセスを行うためには接続要求パケットの個数だけではなく、そのアクセス時間間隔も推測する必要があるため、サーバのセキュリティがより一層向上する。(第3の例)
第3の例は、複数の接続要求パケットのそれぞれのパケットの種別を規定し、この規定を秘密としておき接続要求回数と共に、複数の接続要求パケットの種別も用いて、認証を行うものである。
In this example, in order to perform unauthorized access, it is necessary to estimate not only the number of connection request packets but also the access time interval, so that the security of the server is further improved. (Third example)
In the third example, the type of each of a plurality of connection request packets is specified, and this specification is kept secret, and authentication is performed using the types of connection request packets together with the number of connection request packets.
上記の実施形態においては、クライアント計算機2からサーバ計算機1への複数の送信パケットとして、TCPのSYNパケットを想定したものであったが、TCPのSYNパケットは、接続要求確認パケットを返すために一つあればよく、それ以外の接続要求パケットは、SYNパケットの他に、ICMPパケット、UDPパケットを利用できる。
In the above embodiment, a TCP SYN packet is assumed as a plurality of transmission packets from the client computer 2 to the
そこで本例では、クライアント計算機2とサーバ計算機1の間では、送信される接続要求パケットの個数だけではなく、接続要求パケットごとにパケットの種別もあわせて規定するようにする。規定されたパケットの種別は、コネクション確立テーブル100およびグループ識別テーブル120に登録しておき、また、コネクション制御テーブル110の各エントリーに接続要求パケットの受信ごとの種別(UDP/TCP/ICMP)のログを取るようにする。そして、例えば各種別ごとの個数が一致するか否かを判断することにより、より強固な認証を行うことができる。そのほかにも、容易な改良すべき点はあるが、容易に実現できるからここでは説明を省略する。なお、先にも示したように認証が成功した際に生成する接続要求確認パケットは、TCPのSYNパケットに対応なので、SYNパケットは必ず1つは含むことが必要である。なお、パケットの種別は、上記した第1、2の例と同様、接続要求者毎に個別でも良く、グループに共通に設定しても良い。
Therefore, in this example, between the client computer 2 and the
本例では、不正アクセスを行うためには接続要求パケットの個数だけではなく、パケットの種別も推測する必要があるため、サーバのセキュリティがより一層向上する。 In this example, in order to perform unauthorized access, it is necessary to infer not only the number of connection request packets but also the type of packet, so that the security of the server is further improved.
以上の本実施の形態、および、第1〜第3の例において認証用に利用される各情報は、サーバ計算機1とクライアント計算機2との間で、例えば、同期させたワンタイムパスワード技術を導入し、変更させることによって、更にサーバ計算機のセキュリティが向上する。
The information used for authentication in the present embodiment and the first to third examples described above introduces, for example, a synchronized one-time password technology between the
なお、本発明は、上記実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。更に、上記実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適宜な組み合わせにより種々の発明が抽出され得る。例えば、実施形態に示される全構成要件から幾つかの構成要件が削除されても、発明が解決しようとする課題の欄で述べた課題が解決でき、発明の効果の欄
で述べられている効果が得られる場合には、この構成要件が削除された構成が発明として抽出され得る。
In addition, this invention is not limited to the said embodiment, In the implementation stage, it can change variously in the range which does not deviate from the summary. Further, the above embodiments include inventions at various stages, and various inventions can be extracted by appropriately combining a plurality of disclosed constituent elements. For example, even if some constituent requirements are deleted from all the constituent requirements shown in the embodiment, the problem described in the column of the problem to be solved by the invention can be solved, and the effect described in the column of the effect of the invention Can be obtained as an invention.
1・・・サーバ計算機
2・・・クライアント計算機
3・・・ネットワーク
11、23・・・受信部
12・・・テーブル更新部
13・・・タイマー
14・・・監視部
15・・・グループ識別部
16・・・リソース管理部
17、22・・・送信部
21・・・接続要求パケット生成部
24・・・接続要求確認パケット判定部
100・・・コネクション確立テーブル
110・・・コネクション制御テーブル
120・・・グループ識別テーブル
130・・・リソース管理テーブル
DESCRIPTION OF
Claims (8)
前記サーバ計算機は、該サーバ計算機との接続が許される複数のユーザからなるグループを識別するためのグループ識別情報と、そのグループに対して秘密に割り当てた一意の接続要求パケット回数とを対応付けて、予め記憶する記憶手段を備え、
サーバ計算機は、
所定期間内に受信した前記クライアント計算機からの接続要求パケットの回数をカウントし、
前記記憶手段に、該カウント結果に一致する接続要求パケット回数が記憶されているか否かを認証し、
記憶されている場合にその接続要求パケット回数に対応するグループ識別情報を取得し、
取得された前記グループ識別情報の示すグループに対し、該サーバ計算機のリソース割り当てが可能か否かを判定し、
割り当て可能と判定したときに、前記受信した複数の接続要求パケットの少なくとも何れか1つに対する応答として接続要求確認パケットを生成し、
該生成した接続要求確認パケットをネットワークへ送出するようにしたことを特徴とする通信接続方法。 A server computer communication connection method for connecting to a client computer via a network,
The server computer associates group identification information for identifying a group consisting of a plurality of users permitted to connect to the server computer with the number of unique connection request packets secretly assigned to the group. , Comprising storage means for storing in advance,
Server computer
Count the number of connection request packets received from the client computer within a predetermined period,
Authenticates whether or not the number of connection request packets that match the count result is stored in the storage means,
If stored, obtain the group identification information corresponding to the number of connection request packets,
It is determined whether or not resource allocation of the server computer is possible for the group indicated by the acquired group identification information,
When it is determined that allocation is possible, a connection request confirmation packet is generated as a response to at least one of the received plurality of connection request packets;
A communication connection method, wherein the generated connection request confirmation packet is transmitted to a network.
前記サーバ計算機は、前記記憶手段には、前記グループ識別情報に対応づけて前記秘密情報を更に対応付けて記憶しておき、前記グループ識別情報の取得に際し、前記秘密情報による認証も行うようにしたことを特徴とする請求項1記載の通信接続方法。 A part of the content of the connection request packet is secret information shared only between each user of the group and a server computer,
The server computer stores the secret information in association with the group identification information in the storage means, and performs authentication based on the secret information when acquiring the group identification information. The communication connection method according to claim 1.
前記サーバ計算機は、前記記憶手段には、前記グループ識別情報に対応づけて前記秘密情報を更に対応付けて記憶しておき、前記グループ識別情報の取得に際し、前記秘密情報による認証も行うようにしたことを特徴とする請求項1記載の通信接続方法。 At least a part of each time interval of the connection request packet is secret information shared only between each user of the group and a server computer,
The server computer stores the secret information in association with the group identification information in the storage means, and performs authentication based on the secret information when acquiring the group identification information. The communication connection method according to claim 1.
前記サーバ計算機は、前記記憶手段には、前記グループ識別情報に対応づけて前記秘密情報を更に対応付けて記憶しておき、前記グループ識別情報の取得に際し、前記秘密情報による認証も行うようにしたことを特徴とする請求項1記載の通信接続方法。 The type of the connection request packet and the number of connection request packets of each type are secret information shared only between each user of the group and the server computer,
The server computer stores the secret information in association with the group identification information in the storage means, and performs authentication based on the secret information when acquiring the group identification information. The communication connection method according to claim 1.
該サーバ計算機との接続が許される複数のユーザからなるグループを識別するためのグループ識別情報と、そのグループに対して秘密に割り当てた一意の接続要求パケット回数とを対応付けて、予め記憶する記憶手段と、
所定期間内に受信した前記クライアント計算機からの接続要求パケットの回数をカウントする接続要求カウント手段と、
前記記憶手段に、該カウント結果に一致する接続要求パケット回数が記憶されているか否かを認証し、記憶されている場合にその接続要求パケット回数に対応するグループ識別情報を取得するグループ識別手段と、
取得された前記グループ識別情報の示すグループに対し、該サーバ計算機のリソース割り当てが可能か否かを判定し、割り当て可能と判定したときに、前記受信した複数の接続要求パケットの少なくとも何れか1つに対する応答として接続要求確認パケットを生成するリソース管理手段と、
該生成した接続要求確認パケットをネットワークへ送出する送信手段とを備えたことを特徴とするサーバ計算機。 A server computer that performs connection processing with a client computer,
A storage which stores in advance a correspondence between group identification information for identifying a group of a plurality of users permitted to connect to the server computer and the number of unique connection request packets secretly assigned to the group Means,
A connection request counting means for counting the number of connection request packets received from the client computer within a predetermined period;
Authenticating whether or not the number of connection request packets matching the count result is stored in the storage means, and when stored, group identification means for acquiring group identification information corresponding to the number of connection request packets; ,
It is determined whether or not resource allocation of the server computer is possible for the group indicated by the acquired group identification information, and when it is determined that allocation is possible, at least one of the received plurality of connection request packets is determined. Resource management means for generating a connection request confirmation packet as a response to,
A server computer comprising transmission means for sending the generated connection request confirmation packet to a network.
所定期間内に受信した前記クライアント計算機からの接続要求パケットの回数をカウントさせる第1のコードと、
前記記憶手段に、該カウント結果に一致する接続要求パケット回数が記憶されているか否かを認証させ、記憶されている場合にその接続要求パケット回数に対応するグループ識別情報を取得させる第2のコードと、
取得された前記グループ識別情報の示すグループに対し、該サーバ計算機のリソース割り当てが可能か否かを判定させ、割り当て可能と判定したときに、前記受信した複数の接続要求パケットの少なくとも何れか1つに対する応答として接続要求確認パケットを生成させる第3のコードと、
該生成した接続要求確認パケットをネットワークへ送出させる第4のコードとを備え、サーバ計算機に実行させることを特徴とするプログラム。
Storage means for previously storing group identification information for identifying a group consisting of a plurality of users permitted to connect to a server computer and the number of unique connection request packets secretly assigned to the group A program executed on a server computer comprising:
A first code for counting the number of connection request packets received from the client computer within a predetermined period;
A second code for causing the storage means to authenticate whether or not the number of connection request packets that match the count result is stored, and to acquire group identification information corresponding to the number of connection request packets if stored When,
It is determined whether or not the resource allocation of the server computer is possible for the group indicated by the acquired group identification information, and when it is determined that the allocation is possible, at least one of the plurality of connection request packets received A third code for generating a connection request confirmation packet as a response to
And a fourth code for sending the generated connection request confirmation packet to the network, and causing the server computer to execute the program.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003400111A JP3841417B2 (en) | 2003-11-28 | 2003-11-28 | Communication connection method, server computer, and program |
US10/948,699 US7366170B2 (en) | 2003-09-25 | 2004-09-24 | Communication connection method, authentication method, server computer, client computer and program |
US12/003,924 US7940761B2 (en) | 2003-09-25 | 2008-01-03 | Communication connection method, authentication method, server computer, client computer and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003400111A JP3841417B2 (en) | 2003-11-28 | 2003-11-28 | Communication connection method, server computer, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005167364A true JP2005167364A (en) | 2005-06-23 |
JP3841417B2 JP3841417B2 (en) | 2006-11-01 |
Family
ID=34724468
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003400111A Expired - Fee Related JP3841417B2 (en) | 2003-09-25 | 2003-11-28 | Communication connection method, server computer, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3841417B2 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007079853A (en) * | 2005-09-13 | 2007-03-29 | Canon Inc | Network device, data processing method and computer program |
JP2008061223A (en) * | 2006-08-04 | 2008-03-13 | Canon Inc | Communication apparatus and communication control method |
JP2010257331A (en) * | 2009-04-27 | 2010-11-11 | Canon Software Information Systems Inc | Information processor, control method of the same, program and recording medium |
JP2012014278A (en) * | 2010-06-29 | 2012-01-19 | Lenovo Singapore Pte Ltd | Method of accessing computer and computer |
-
2003
- 2003-11-28 JP JP2003400111A patent/JP3841417B2/en not_active Expired - Fee Related
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007079853A (en) * | 2005-09-13 | 2007-03-29 | Canon Inc | Network device, data processing method and computer program |
JP2008061223A (en) * | 2006-08-04 | 2008-03-13 | Canon Inc | Communication apparatus and communication control method |
JP2010257331A (en) * | 2009-04-27 | 2010-11-11 | Canon Software Information Systems Inc | Information processor, control method of the same, program and recording medium |
JP2012014278A (en) * | 2010-06-29 | 2012-01-19 | Lenovo Singapore Pte Ltd | Method of accessing computer and computer |
Also Published As
Publication number | Publication date |
---|---|
JP3841417B2 (en) | 2006-11-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Iyengar et al. | QUIC: A UDP-based multiplexed and secure transport | |
Mahy et al. | Traversal using relays around nat (turn): Relay extensions to session traversal utilities for nat (stun) | |
US10009230B1 (en) | System and method of traffic inspection and stateful connection forwarding among geographically dispersed network appliances organized as clusters | |
US7940761B2 (en) | Communication connection method, authentication method, server computer, client computer and program | |
CN109644186B (en) | Method for UDP communication between two terminals via multiple paths | |
EP2346205B1 (en) | A method and device for preventing network attack | |
Wing et al. | Port control protocol (PCP) | |
Nordmark et al. | Shim6: Level 3 multihoming shim protocol for IPv6 | |
De Vivo et al. | Internet security attacks at the basic levels | |
US20070283429A1 (en) | Sequence number based TCP session proxy | |
KR20050077740A (en) | Endpoint address change in a packet network | |
García-Martínez et al. | The Shim6 architecture for IPv6 multihoming | |
Thaler | Evolution of the IP Model | |
US8955088B2 (en) | Firewall control for public access networks | |
Reddy et al. | Traversal using relays around NAT (TURN): Relay extensions to session traversal utilities for NAT (STUN) | |
Mahy et al. | Rfc 5766: Traversal using relays around nat (turn): relay extensions to session traversal utilities for nat (stun) | |
JP2006185194A (en) | Server device, communication control method, and program | |
US20100146061A1 (en) | session process and system | |
JP4183664B2 (en) | Authentication method, server computer, client computer, and program | |
JP3841417B2 (en) | Communication connection method, server computer, and program | |
US8271678B2 (en) | Independent detection and filtering of undesirable packets | |
US11218449B2 (en) | Communications methods, systems and apparatus for packet policing | |
Cisco | Command Reference | |
Cisco | Command Reference | |
Matthews et al. | RFC 8656: Traversal Using Relays around NAT (TURN): Relay Extensions to Session Traversal Utilities for NAT (STUN) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20050415 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20050606 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060801 |
|
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: 20060804 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060807 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090818 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100818 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100818 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110818 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110818 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120818 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120818 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130818 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |