JP4666173B2 - Relay device, relay method, and relay program - Google Patents

Relay device, relay method, and relay program Download PDF

Info

Publication number
JP4666173B2
JP4666173B2 JP2006250370A JP2006250370A JP4666173B2 JP 4666173 B2 JP4666173 B2 JP 4666173B2 JP 2006250370 A JP2006250370 A JP 2006250370A JP 2006250370 A JP2006250370 A JP 2006250370A JP 4666173 B2 JP4666173 B2 JP 4666173B2
Authority
JP
Japan
Prior art keywords
relay device
connection
packet
relay
tcp
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.)
Expired - Fee Related
Application number
JP2006250370A
Other languages
Japanese (ja)
Other versions
JP2008072552A (en
Inventor
裕介 野口
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP2006250370A priority Critical patent/JP4666173B2/en
Publication of JP2008072552A publication Critical patent/JP2008072552A/en
Application granted granted Critical
Publication of JP4666173B2 publication Critical patent/JP4666173B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、移動ネットワークを利用した通信の技術に関し、特に途中経路の通信品質が不安定な利用環境おいて、端末装置とサーバ装置間のエンド−エンド通信のために、パケット通信方式を利用してデータ伝送を行うデータ通信システムにおいて、通信セッション維持する技術に関する。   The present invention relates to a technology for communication using a mobile network, and particularly uses a packet communication method for end-to-end communication between a terminal device and a server device in a use environment where the communication quality of an intermediate route is unstable. The present invention relates to a technique for maintaining a communication session in a data communication system that performs data transmission.

近年、コンピュータなどの端末装置間でデータ通信を行うためのネットワークとしてインターネット(Internet)が普及している。それと共に、モバイルコンピューティングやリモートアクセスと呼ばれる利用形態が普及している。   In recent years, the Internet has become widespread as a network for data communication between terminal devices such as computers. At the same time, usage forms called mobile computing and remote access have become widespread.

インターネットに接続される端末装置やルータには、非特許文献1で示されるインターネットプロトコル(Internet Protocol、以下、IPと称する)と呼ばれる経路制御プロトコルに従って動作させるプログラムが搭載されている。IPを用いることにより、異なるLANに接続されている任意の端末装置間でのパケット通信を可能としている。   A terminal device or router connected to the Internet is loaded with a program that operates according to a routing protocol called Internet Protocol (hereinafter referred to as IP) shown in Non-Patent Document 1. By using IP, packet communication can be performed between any terminal devices connected to different LANs.

ところで、IPによるパケット交換では、パケットが通信メディアを介して伝送されている時に、一部のデータ内容に誤りが生じた場合、あるいは途中経路のルータに十分なパケット格納領域が確保できない場合には、伝送途中でパケットの消失が発生する。また、IPによるパケット交換ではパケットの到着順序が保障されていないため、任意の端末装置から異なるLANに接続している端末装置へ一連のパケットを送信する場合には、パケットの送信順序と到着順序が異なることがある。   By the way, in packet switching by IP, when a packet has been transmitted via communication media, if some data content has an error, or if sufficient packet storage area cannot be secured in the router on the way Packet loss occurs during transmission. In addition, since packet arrival order is not guaranteed in IP packet switching, when sending a series of packets from any terminal device to a terminal device connected to a different LAN, the packet transmission order and arrival order May be different.

インターネットでは、このような途中経路でのパケット消失や順序入れ替わりに対しても信頼性のあるデータ通信、すなわち送信したパケットの内容の消失が無く、かつ送信された順序の通りに受信側で受け取ることのできる方式として、非特許文献2で示されるトランスミッションコントロールプロトコル(Transmission Control Protocol、以下、TCPと称する)通信方式があり、広く利用されている。   In the Internet, reliable data communication is possible even when packets are lost or reordered along such a route, that is, there is no loss of the contents of transmitted packets, and they are received at the receiving side in the order in which they were sent. There is a transmission control protocol (Transmission Control Protocol, hereinafter referred to as TCP) communication method disclosed in Non-Patent Document 2, which is widely used.

図1は、TCP/IP通信方式を用いる従来のパケット通信システムの一構成例を示すブロック図である。図2は、図1に示したパケット通信システムにおいて送受信するパケットデータの構成を示す図であり、各プロトコルヘッダの位置関係を示す図である。図3は、図2に示したIPヘッダの構成を示すブロック図である。図4は、図2に示したTCPヘッダの構成を示すブロック図である。また、図5は、TCP/IP通信方式における送受信する応用データが存在しない期間において、TCPコネクションを維持するために実施されるコネクション維持の手順を示すシーケンス図である。   FIG. 1 is a block diagram showing a configuration example of a conventional packet communication system using a TCP / IP communication system. FIG. 2 is a diagram illustrating a configuration of packet data transmitted and received in the packet communication system illustrated in FIG. 1, and is a diagram illustrating a positional relationship of each protocol header. FIG. 3 is a block diagram showing the configuration of the IP header shown in FIG. FIG. 4 is a block diagram showing the configuration of the TCP header shown in FIG. FIG. 5 is a sequence diagram showing a connection maintenance procedure performed to maintain a TCP connection during a period when there is no application data to be transmitted / received in the TCP / IP communication system.

図1に示すTCP/IP通信方式を用いる従来のパケット通信システムは、第1の端末装置100、第2の端末装置200、第1の中継装置300、第2の中継装置400、第1の有線ネットワーク1001、第2の有線ネットワーク1002、無線ネットワーク1003から構成されている。第1の端末装置100と第1の中継装置300はそれぞれ、第1の有線ネットワーク1001に接続されている。また、第1の中継装置300と第2の中継装置400とはそれぞれ、無線ネットワーク1003に接続されている。また、第2の中継装置400と第2の端末装置200は第2の有線ネットワーク1002に接続されている。   A conventional packet communication system using the TCP / IP communication system shown in FIG. 1 includes a first terminal device 100, a second terminal device 200, a first relay device 300, a second relay device 400, and a first wire. The network 1001, the second wired network 1002, and the wireless network 1003 are configured. The first terminal device 100 and the first relay device 300 are each connected to the first wired network 1001. Also, the first relay device 300 and the second relay device 400 are each connected to the wireless network 1003. The second relay device 400 and the second terminal device 200 are connected to the second wired network 1002.

第1の端末装置100は、例えば第1の有線ネットワーク1001に接続可能な通信装置を備えた情報処理装置であり、第1のプロセッサ101、第1のTCPモジュール102、第1のIPモジュール103、及び第1のネットワークアクセスモジュール104を備えている。   The first terminal device 100 is, for example, an information processing device including a communication device that can be connected to the first wired network 1001, and includes a first processor 101, a first TCP module 102, a first IP module 103, And a first network access module 104.

第2の端末装置200は、例えば第2の有線ネットワーク1001に接続可能な通信装置を備えた情報処理装置であり、第2のプロセッサ201、第2のTCPモジュール202、第2のIPモジュール203、及び第2のネットワークアクセスモジュール204を備えている。   The second terminal device 200 is, for example, an information processing device including a communication device that can be connected to the second wired network 1001, and includes a second processor 201, a second TCP module 202, a second IP module 203, And a second network access module 204.

第1の中継装置300は、第1の有線ネットワーク1001及び無線ネットワーク1003に接続可能な通信装置を備えた情報処理装置であり、第3のIPモジュール301、第3のネットワークアクセスモジュール302、及び第4のネットワークアクセスモジュール303を備えている。   The first relay device 300 is an information processing device including a communication device that can be connected to the first wired network 1001 and the wireless network 1003, and includes a third IP module 301, a third network access module 302, and a first network device. 4 network access modules 303 are provided.

第2の中継装置400は、無線ネットワーク1003及び第2の有線ネットワーク1002に接続可能な通信装置を備えた情報処理装置であり、第4のIPモジュール401、第5のネットワークアクセスモジュール402、及び第6のネットワークアクセスモジュール403を備えている。   The second relay device 400 is an information processing device including a communication device that can be connected to the wireless network 1003 and the second wired network 1002, and includes a fourth IP module 401, a fifth network access module 402, and a second network device. 6 network access modules 403 are provided.

第1のプロセッサ101及び第2のプロセッサ201はそれぞれ、通信を行うためのアプリケーションプログラムに従って処理を実行する。ここで、アプリケーションプログラムとは、相互にデータを交換して利用者に通信サービスを提供する応用プログラムを意味する。   Each of the first processor 101 and the second processor 201 executes processing according to an application program for performing communication. Here, the application program means an application program that exchanges data with each other and provides a communication service to the user.

応用プログラムには、FTP(File Transfer Protocol)クライアント・サーバ、HTTP(Hyper Text Transfer Protocol)クライアント・サーバ、telnetクライアント・サーバ、POP(Post Office Protocol)クライアント・サーバ、SMTP(Simple Mail Transfer Protocol)クライアント・サーバ等の既知のもの、あるいは利用者が独自に作成したものが用いられる。なお、以降では応用プログラムの処理により発生し、第1のプロセッサ101と第2のプロセッサ201との間で交換されるデータを応用データと呼ぶ。   Application programs include FTP (File Transfer Protocol) client server, HTTP (Hyper Text Transfer Protocol) client server, telnet client server, POP (Post Office Protocol) client server, SMTP (Simple Mail Transfer Protocol) client server A known server or the like, or a user-created one is used. Hereinafter, data generated by processing of the application program and exchanged between the first processor 101 and the second processor 201 is referred to as application data.

第1のTCPモジュール102及び第2のTCP処理モジュール202はそれぞれ、TCP通信方式の実現するモジュールである。   Each of the first TCP module 102 and the second TCP processing module 202 is a module that implements the TCP communication method.

第1のIPモジュール103、第2のIPモジュール203、第3のIPモジュール301、及び第4のIPモジュール401はそれぞれ、IPに基づいた経路制御機能を実現するモジュールである。   The first IP module 103, the second IP module 203, the third IP module 301, and the fourth IP module 401 are modules that implement a path control function based on IP.

図2を用いて応用データ送信の様子を説明する。   The state of application data transmission will be described with reference to FIG.

応用データは、まず、パケットとして伝送可能なデータサイズからなる複数の分割応用データ部分に分割され、各分割応用データに対して、通信方式で必要となるプロトコル制御ヘッダが付与されて送信される。なお、図2中のアクセス回線トレイラとは、アクセス回線に送信するパケットの最後を示すデータであり、利用するアクセス回線毎に定義されるものである。   The application data is first divided into a plurality of divided application data portions having a data size that can be transmitted as a packet, and a protocol control header necessary for the communication method is added to each divided application data and transmitted. The access line trailer in FIG. 2 is data indicating the end of a packet transmitted to the access line, and is defined for each access line to be used.

第1のプロセッサ101と第2のプロセッサ201との間で応用データの送受信を行う場合、まず、第1のプロセッサ101と第2のプロセッサ201との間にコネクションを構築し、その後構築されたコネクションを介して応用データの伝送が行われる。また、応用データの送受信が終了した場合、もしくは応用データの送受信要求があらかじめ定められた期間以上発生しない場合には構築していたコネクションを破棄する。なお、この定められた期間のことを一般に「タイムアウト時間」と呼ぶ。ただし、コネクションを利用する応用プログラムによっては、長時間送受信は実行しないものの、コネクションは維持し続けたいという要求を持つ場合もある。この場合、「コネクション維持」要求を受けることで、タイムアウト時間を越える期間送受信要求が発生しない場合であっても、コネクションを維持し続ける。   When application data is transmitted and received between the first processor 101 and the second processor 201, first, a connection is established between the first processor 101 and the second processor 201, and then the established connection is established. Application data is transmitted through the network. In addition, when the transmission / reception of application data is completed or when a transmission / reception request for application data does not occur for a predetermined period or longer, the established connection is discarded. This predetermined period is generally called “time-out time”. However, depending on the application program that uses the connection, there may be a request to maintain the connection, although transmission / reception is not executed for a long time. In this case, by receiving the “connection maintenance” request, the connection is continuously maintained even when the transmission / reception request does not occur for a period exceeding the timeout time.

以上の機能は、コネクション制御機能とデータ送受信機能を実現するTCPプロトコル制御を実行するトランスポート層プロトコルモジュールである第1のTCPモジュール102及び第2のTCPモジュール202によって実現される。   The above functions are realized by the first TCP module 102 and the second TCP module 202 which are transport layer protocol modules that execute TCP protocol control for realizing the connection control function and the data transmission / reception function.

次に、図1に示した従来のパケット通信システムにおける、コネクション制御機能について説明する。なお、コネクション制御機能は、第1のTCPモジュール103及び第2のTCPモジュール203によって実行されるものであり、TCPモジュールの下位レイヤに位置する各モジュールや装置は、受け取ったデータを送信先となるモジュールや装置に向けて送信する機能を実行するのみである。   Next, a connection control function in the conventional packet communication system shown in FIG. 1 will be described. Note that the connection control function is executed by the first TCP module 103 and the second TCP module 203, and each module or device located in the lower layer of the TCP module becomes the destination of the received data. It only performs the function of sending it to the module or device.

なお、以降で説明する動作は、第1のプロセッサ101から第1の通信インタフェース管理モジュール102に機能毎の動作要求がなされた時に実行される。または、第2のプロセッサ201から第2の通信インタフェース管理モジュール202に機能毎の動作要求がなされたときに実行される。
(1)TCP基本動作
まず、図1に示した各TCPモジュールで共通した基本動作、及びTCPセグメントにおけるTCPヘッダの利用方法について説明する。
The operations described below are executed when an operation request for each function is made from the first processor 101 to the first communication interface management module 102. Alternatively, it is executed when an operation request for each function is made from the second processor 201 to the second communication interface management module 202.
(1) TCP Basic Operation First, a basic operation common to each TCP module shown in FIG. 1 and a method of using a TCP header in a TCP segment will be described.

前述の通り、TCPでは両端のTCPモジュール間で仮想的なコネクションが構築され、TCPセグメントが送受信される。ここで、TCPセグメントではコネクションとTCPセグメントを対応付けるための情報が必要となる。   As described above, in TCP, a virtual connection is established between TCP modules at both ends, and TCP segments are transmitted and received. Here, in the TCP segment, information for associating the connection with the TCP segment is required.

各TCPモジュール内部における、TCPセグメントとコネクションの対応は、図4で示すTCPセグメントヘッダ中の、送信元ポート番号を表すSource Portフィールド、及び送信先ポート番号を表すDestination Portフィールドの組み合わせにより決定される。また、ネットワーク全体でのTCPセグメントとコネクションの対応は、前述したTCPヘッダ中のSource Portフィールド、Destination Portフィールドに加えて、図6で示すIPヘッダ中の送信元IPアドレスを表すSource Addressフィールド、及び送信先IPアドレスを表すDestination Addressフィールドの組み合わせにより決定される。   The correspondence between the TCP segment and the connection in each TCP module is determined by the combination of the Source Port field indicating the source port number and the Destination Port field indicating the destination port number in the TCP segment header shown in FIG. . Further, the correspondence between the TCP segment and the connection in the entire network is not only the Source Port field and Destination Port field in the TCP header described above, but also the Source Address field representing the source IP address in the IP header shown in FIG. It is determined by the combination of the Destination Address field indicating the destination IP address.

すなわち、任意のコネクションを構築している一方のソケットS1のIPアドレスがA1、ポート番号がP1、他方のソケットS2のIPアドレスがA2、ポート番号がP2とし、ソケットS1を保持する装置のTCPモジュールをTCPモジュールM1、ソケットS2を保持する装置のTCPモジュールをTCPモジュールM2とすると、TCPモジュールM1からTCPモジュールM2へTCPセグメントを送出する場合は、以下に示す動作となる。   That is, the TCP module of the device that holds the socket S1 with the IP address of one socket S1 constructing an arbitrary connection is A1, the port number is P1, the IP address of the other socket S2 is A2, and the port number is P2. When the TCP module M1 is the TCP module M1 and the TCP module M2 is the TCP module M2 of the apparatus holding the socket S2, the following operations are performed when a TCP segment is transmitted from the TCP module M1 to the TCP module M2.

まず、TCPモジュールM1は、TCPヘッダ中のSource PortフィールドにP1を格納し、Destination PortフィールドにP2を格納したTCPセグメントを生成し、IPモジュールへ渡す。次に、IPモジュールはIPヘッダ中のSource AddressフィールドにA1を格納し、Destination AddressフィールドにA2を格納したIPデータグラムを生成し、ネットワークアクセス装置に渡す。   First, the TCP module M1 generates a TCP segment in which P1 is stored in the Source Port field in the TCP header and P2 is stored in the Destination Port field, and is passed to the IP module. Next, the IP module generates an IP datagram in which A1 is stored in the Source Address field in the IP header and A2 is stored in the Destination Address field, and is passed to the network access device.

一方、TCPセグメントを含むIPデータグラムを受け取ったTCPモジュールM2は、TCPヘッダ中のSource Portフィールドの値P1、TCPヘッダ中のDestination Portフィールドの値P2、IPヘッダ中のSource Addressフィールド値A1、及びIPヘッダ中のDestination Addressフィールド値A2から、当該TCPセグメントがソケットS1とソケットS2の組み合わせから構築されたコネクションに対応するものであると判断することができる。   On the other hand, the TCP module M2 that has received the IP datagram including the TCP segment, the Source Port field value P1 in the TCP header, the Destination Port field value P2 in the TCP header, the Source Address field value A1 in the IP header, and From the Destination Address field value A2 in the IP header, it can be determined that the TCP segment corresponds to a connection constructed from a combination of the socket S1 and the socket S2.

また、TCPでは送受信するTCPセグメントの到達保障性を実現するために、シーケンス番号と呼ばれる値を用いた制御を行う。   In TCP, control using a value called a sequence number is performed in order to realize reachability of the TCP segment to be transmitted and received.

TCPモジュールM1からTCPモジュールM2へTCPセグメントを送信する場合、TCPモジュールM1は、保持しているコネクション毎に、プロセッサから受け取った応用データへ1バイトを単位とした番号(以降、シーケンス番号と呼ぶ)を付与し、当該TCPセグメントに格納されたサブ応用データの先頭シーケンス番号の値をTCPヘッダのSequence Numberフィールドへ格納する。   When sending a TCP segment from the TCP module M1 to the TCP module M2, the TCP module M1 uses a number in units of 1 byte for the application data received from the processor for each held connection (hereinafter referred to as a sequence number). And the value of the top sequence number of the sub application data stored in the TCP segment is stored in the Sequence Number field of the TCP header.

TCPモジュールM2は、受信したTCPセグメントから取り出したSequence Numberフィールドの値をコネクション毎に記録しており、その記録から今回受信したTCPセグメントに含まれているサブ応用データが、既に受信したものである、もしくは新しく受け取ったものであるかどうかを判断する。   The TCP module M2 records the value of the Sequence Number field extracted from the received TCP segment for each connection, and the sub application data included in the TCP segment received this time has already been received from that record. Or if it is a newly received one.

また、TCPモジュールM2は、新しいサブ応用データを受け取った場合には、最後に受け取ったサブ応用データのシーケンス番号に1を加えた値を、Acknowledgement Sequence Numberフィールドに格納し、確認フラグフィールド(A)に「有効」を意味する値を格納したTCPセグメントを生成し、TCPモジュールM1に送信する。   In addition, when new sub application data is received, the TCP module M2 stores a value obtained by adding 1 to the sequence number of the last received sub application data in the Acknowledgment Sequence Number field, and the confirmation flag field (A). A TCP segment storing a value indicating “valid” in is generated and transmitted to the TCP module M1.

TCPモジュールM1は、TCPヘッダの確認フラグフィールド(A)に「有効」を意味する値が設定されたTCPセグメントを受け取ると、Acknowledgement Sequence Numberフィールドの値(X)を取り出し、シーケンス番号X-1までのサブ応用データが到達確認されたと判断する。   When the TCP module M1 receives a TCP segment in which a value indicating "valid" is set in the confirmation flag field (A) of the TCP header, the TCP module M1 extracts the value (X) of the Acknowledgment Sequence Number field and continues to the sequence number X-1. It is determined that the sub application data has been confirmed to arrive.

また、TCPモジュールM1では、TCPセグメント送出時に、再送タイマを起動する。再送タイマの値が規定された時刻に到達した時点(これを、再送タイムアウトと呼ぶ)で、上述した到達確認がなされていない場合、当該TCPセグメントの送出に失敗したとみなし、当該TCPセグメントを再度送出する。   The TCP module M1 starts a retransmission timer when sending a TCP segment. If the above-mentioned arrival confirmation is not made when the value of the retransmission timer reaches the specified time (this is called retransmission timeout), it is considered that the transmission of the TCP segment has failed, and the TCP segment is Send it out.

なお、同一のTCPセグメントの送出で再送タイムアウトが連続して発生した場合、TCPモジュールM1は、コネクションを構築しているTCPモジュールM2が通信不可能状態になったと判断し、当該コネクションを強制的に切断する。一般的なTCPモジュールの実装では、再送タイムアウトが4回連続して発生した場合に、コネクションの強制切断を行う。   If retransmission timeouts occur continuously when sending the same TCP segment, the TCP module M1 determines that the TCP module M2 that establishes the connection has become incapable of communication, and forces the connection. Disconnect. In general TCP module implementation, the connection is forcibly disconnected when retransmission timeout occurs four times in succession.

また、プロセッサで実行される応用プログラムの処理上送信すべき応用データが発生せず、結果としてTCPモジュールにおいてもTCPセグメントを送信する契機が発生しない状態が一定時間以上続いた場合も同様に、コネクションの強制切断を行う。   Similarly, if application data to be transmitted is not generated in the processing of the application program executed by the processor, and as a result, the TCP module does not trigger the transmission of the TCP segment for a certain period of time, the connection Forcibly disconnect.

以降では、コネクション維持動作について示す。
(2)TCPコネクション維持動作
コネクション維持動作TCPでは、プロセッサで実行する応用プログラムにおいて送信すべき応用データが存在しない状態が予め定められた期間以上続いた場合には、コネクションの強制切断する機能がある。一方で、送信すべき応用データが存在しない場合でも、コネクションを維持したいという要求も存在する。例えば、TELNETサービスでは、サービス利用者が入力を行わない限り応用データの送信要求も発生しないが、いつ入力があっても対応できるようにコネクションは維持し続けたいという要求が一般的である。このような要求に対応するため、TCPでは応用データの送受信要求が発生しない期間中においてもコネクションを維持するための機能(一般にKeepalive機能と呼ばれる)を提供する。以降では、第1のTCPモジュール103から第2のTCPモジュール203に向けてコネクションの維持制御を行う場合を例にして図5を用いて説明する。
Hereinafter, the connection maintaining operation will be described.
(2) TCP connection maintenance operation Connection maintenance operation TCP has a function of forcibly disconnecting a connection when there is no application data to be transmitted in an application program executed by a processor for a predetermined period. . On the other hand, there is a request for maintaining a connection even when there is no application data to be transmitted. For example, in the TELNET service, application data transmission requests do not occur unless the service user inputs data, but a request for maintaining the connection so that it can be dealt with regardless of input is common. In order to respond to such a request, TCP provides a function (generally referred to as a keepalive function) for maintaining a connection even during a period when application data transmission / reception requests are not generated. Hereinafter, an example in which connection maintenance control is performed from the first TCP module 103 to the second TCP module 203 will be described with reference to FIG.

第1のTCPモジュール102は、その時点までに自身が送出しかつ送達確認の完了しているサブ応用データのシーケンス番号がX、及び通信相手から受信したサブ応用データのシーケンス番号がYである状態で、コネクション維持手続きの実行が必要であると判断すると、コネクションを維持するTCPセグメント(Keepalive)D1を生成し、第2のTCPモジュール202に向けて送出する。ここで、TCPセグメント(Keepalive)D1のTCPヘッダでは、通常のTCPヘッダ各フィールド設定に加えて、Sequence NumberフィールドにXの値が格納され、Acknowledgement NumberフィールドにはYの値が格納され、確認フラグフィールド(A)にはそれぞれ「有効」を意味する値がそれぞれ設定される。   The first TCP module 102 is in a state where the sequence number of the sub-application data that has been transmitted by itself and the delivery confirmation has been completed is X, and the sequence number of the sub-application data received from the communication partner is Y When it is determined that it is necessary to execute the connection maintenance procedure, a TCP segment (Keepalive) D1 for maintaining the connection is generated and sent to the second TCP module 202. Here, in the TCP header of the TCP segment (Keepalive) D1, in addition to the normal TCP header field settings, the X value is stored in the Sequence Number field, the Y value is stored in the Acknowledgment Number field, and the confirmation flag In the field (A), a value meaning “valid” is set.

次に、TCPセグメント(Keepalive)D1を受け取った第2のTCPモジュール202は、受け取ったTCPセグメント(Keepalive)D1のTCPヘッダから、Sequence Numberフィールドの値(X)、Acknowledgement Numberフィールドの値(Y)、及び確認フラグフィールド(A)の値(「有効」)であることを確認し、当該TCPセグメントがセッション維持通知であると判断する。   Next, the second TCP module 202 that has received the TCP segment (Keepalive) D1 determines the value (X) of the Sequence Number field and the value (Y) of the Acknowledgment Number field from the TCP header of the received TCP segment (Keepalive) D1. And the value of the confirmation flag field (A) (“valid”), it is determined that the TCP segment is a session maintenance notification.

さらに、第2のTCPモジュール202は、TCPセグメント(Keepalive)D1のためのTCPセグメント(Keepalive-ack)D2を生成し、第1のTCPモジュールへ送出する。ここで、TCPセグメント(Keepalive-ack)D2のTCPヘッダでは、通常のTCPヘッダ各フィールド設定に加えて、Sequence NumberフィールドにはYの値が、Acknowledgement NumberフィールドにはXの値が、確認フラグフィールド(A)にはそれぞれ「有効」を意味する値がそれぞれ設定される。更に、第2のTCPモジュール202は、当該セッションの維持を維持し続ける。   Further, the second TCP module 202 generates a TCP segment (Keepalive-ack) D2 for the TCP segment (Keepalive) D1, and sends it to the first TCP module. Here, in the TCP header of the TCP segment (Keepalive-ack) D2, in addition to the normal TCP header field settings, the Sequence Number field has a Y value, the Acknowledgment Number field has an X value, and a confirmation flag field. In (A), a value meaning “valid” is set. Furthermore, the second TCP module 202 continues to maintain the session.

次に、TCPセグメント(Keepalive-ack)D2を受け取った第1のTCPモジュール102は、TCPセグメント(Keepalive-ack)D2のTCPヘッダから、Sequence Numberフィールドの値(Y)、Acknowledgement Numberフィールドの値(X)、及び確認フラグフィールド(A)の値(「有効」)であることを確認し、当該TCPセグメントがセッション維持通知応答であると判断し、セッションの維持を継続する。   Next, the first TCP module 102 that has received the TCP segment (Keepalive-ack) D2 determines the value (Y) of the Sequence Number field and the value of the Acknowledgment Number field (from the TCP header of the TCP segment (Keepalive-ack) D2 ( X) and the value of the confirmation flag field (A) (“valid”) are confirmed, it is determined that the TCP segment is a session maintenance notification response, and the maintenance of the session is continued.

なお、第1のTCPモジュール102は、送出したTCPセグメント(Keepalive)D1を送出する際に再送タイマを起動し、再送タイムアウトまでに到達応答であるTCPセグメント(Keepalive-ack)D2が受信されていない場合、TCPセグメント(Keepalive)D1の再送を実行する。ここで、同一のTCPセグメント(Keepalive)D1で再送タイムアウトが連続して発生した場合には、上述したコネクション強制切断が実行される。   The first TCP module 102 starts a retransmission timer when sending the sent TCP segment (Keepalive) D1, and the TCP segment (Keepalive-ack) D2, which is an arrival response, has not been received before the retransmission timeout. In this case, retransmission of the TCP segment (Keepalive) D1 is executed. Here, when retransmission timeouts continuously occur in the same TCP segment (Keepalive) D1, the above-described forced connection disconnection is executed.

また、第2のプロセッサ201から第1のプロセッサ101に向けたコネクション継続処理は、上述した第1のプロセッサ101から第2のプロセッサ201に向けたコネクション継続処理の動作を対称にしたものである。   Further, the connection continuation process from the second processor 201 to the first processor 101 is a symmetric operation of the connection continuation process from the first processor 101 to the second processor 201 described above.

IETF RFC 791(Internet Protocol : IP)IETF RFC 791 (Internet Protocol: IP) IETF RFC 793(Transmission Control Protocol)IETF RFC 793 (Transmission Control Protocol)

しかしながら、上述したような2つの端末装置間におけるパケット通信方法では、以下に記載するような問題点がある。   However, the packet communication method between the two terminal devices as described above has the following problems.

図1に示すような途中経路に無線通信路を含む場合、従来の技術では、無線通信路が不安定な状況ではコネクションの切断が頻繁に発生し、その度にコネクションの確立処理から再度実行しなくてはならなくなるために、通信システムの利用効率が低下してしまう。   When the wireless communication path is included in the intermediate path as shown in FIG. 1, in the conventional technology, the connection is frequently disconnected in a situation where the wireless communication path is unstable, and the connection establishment process is executed again each time. Since it is necessary, the utilization efficiency of the communication system is reduced.

その理由は、従来のTCP/IPを用いたパケット通信システムでは、途中経路に存在する中継装置は、無線通信路に直接接続するものであっても、TCPセグメントを含んだIPデータグラムを単純に経路制御表に従って転送するのみであり、コネクションの維持に関与せず、途中経路の通信路障害を通知することもないためである。   The reason for this is that in a conventional packet communication system using TCP / IP, even if the relay device existing on the route is directly connected to the wireless communication route, an IP datagram including a TCP segment is simply used. This is because the data is only transferred according to the path control table, is not involved in maintaining the connection, and does not notify a communication path failure of the midway path.

電波を利用する無線通信路は、電波同士の干渉や障害物等の外乱により通信路の品質変動が大きく、状況によってはデータ送受信が達成できないほど通信路品質が悪化する場合もある。例えば、図1において、第1の端末装置100と第1の中継装置300とを搭載した鉄道車両やバスが地下やトンネルに入った場合が相当する。   A wireless communication path using radio waves has a large fluctuation in the quality of the communication path due to interference between radio waves and disturbances such as obstacles, and depending on the situation, the communication path quality may deteriorate so that data transmission / reception cannot be achieved. For example, in FIG. 1, a case where a railway vehicle or bus on which the first terminal device 100 and the first relay device 300 are mounted enters a basement or a tunnel corresponds.

そのような状況にある無線通信路に送出されたデータは、無線通信路を通過する間に消失してしまい、本来の宛先まで到達することができない。   Data sent to the wireless communication path in such a situation is lost while passing through the wireless communication path, and cannot reach the original destination.

上述の通り、TCPのコネクション制御は、通信を行う両端の装置上にあるTCPモジュールのみによって実行される。つまり、コネクションの端点にある送信元TCPモジュールでは、送出したTCPセグメントに対する到達応答が確認できない場合、それが送出先のTCPモジュールに問題がありコネクションを維持するのが不可能な状態であるためなのか、途中経路の品質が悪化しているためにTCPセグメントが消失しているためなのかを区別することができない。   As described above, TCP connection control is executed only by the TCP modules on both end devices that perform communication. In other words, if the source TCP module at the end point of the connection cannot confirm the arrival response for the sent TCP segment, it means that there is a problem with the destination TCP module and it is impossible to maintain the connection. It is impossible to distinguish whether the TCP segment is lost because the quality of the route is deteriorated.

到達応答が確認できない送信元TCPモジュールは、再送タイムアウトを契機としてTCPセグメントの再送を行うが、途中経路の通信品質が回復しない場合、送信元TCPセグメントでは再送の連続失敗として検出され、コネクションの強制終了が実行されてしまうことになる。   The source TCP module whose arrival response cannot be confirmed retransmits the TCP segment triggered by a retransmission timeout. If the communication quality of the route is not recovered, it is detected as a continuous retransmission failure in the source TCP segment and the connection is forced. Termination will be executed.

その後、無線通信路の通信路品質が良好になったとしても、TCPモジュールは、既に終了してしまったコネクションの確立処理を再度実行し、新たなコネクションを確立しなければ応用データの送受信を再開することが出来ない。そのため、頻繁にコネクションの切断が発生する通信路環境で従来のTCPコネクション制御を適用することは、通信シスステムの利用効率を低下させてしまう。   After that, even if the channel quality of the radio channel improves, the TCP module re-executes the connection establishment process that has already been completed, and resumes transmission and reception of application data unless a new connection is established. I can't do it. For this reason, applying the conventional TCP connection control in a communication path environment in which connection disconnection frequently occurs reduces the utilization efficiency of the communication system.

そこで、本発明は上記課題に鑑みて発明されたものであって、その目的は、途中経路においてデータ伝送が実現できないほど通信品質が悪化した状況が頻繁に発生した場合においても、コネクションの切断を発生させないパケット通信の技術を提供することにある。   Therefore, the present invention has been invented in view of the above problems, and its purpose is to disconnect a connection even when a situation in which communication quality deteriorates so frequently that data transmission cannot be realized on a halfway path occurs. An object of the present invention is to provide a packet communication technique that does not occur.

上記課題を解決する本発明は、無線回線を含むネットワークで接続された第一の中継装置と第二の中継装置を介して、第一の中継装置に接続された第一の端末装置と第二の中継装置に接続された第二の端末装置がパケットデータを送受信する通信システムであって、前記第一の中継装置は、前記第一及び第二の端末装置のIPアドレスとポート番号との4つの組合せからなるコネクション情報と、前記コネクションに関するTCPセグメントを最後に中継した時刻とを記憶する手段と、前記記憶した中継時刻と現在時刻との比較により、予め定められた期間以上前記コネクションに関するTCPセグメントの中継が行われていないことを検出する手段と、前記第二の中継装置からのパケットを受信していないことを検出する手段と、前記第二の中継装置からのパケットを受信していないことと、前記コネクションに関するTCPセグメントの中継が行われていないことを検出した際に、前記第一の端末装置に対してコネクション維持通知を送信する手段とを備え、前記第二の中継装置は、前記第一及び第二の端末装置のIPアドレスとポート番号との4つの組合せからなるコネクション情報と、前記コネクションに関するTCPセグメントを最後に中継した時刻とを記憶する手段と、前記記憶した中継時刻と現在時刻との比較により、予め定められた期間以上前記コネクションに関するTCPセグメントの中継が行われていないことを検出する手段と、前記第一の中継装置からのパケットを受信していないことを検出する手段と、前記第一の中継装置からのパケットを受信していないことと、前記コネクションに関するTCPセグメントの中継が行われていないことを検出した際に、前記第二の端末装置に対してコネクション維持通知を送信する手段とを備えることを特徴とする。   The present invention that solves the above-described problems provides a first terminal device and a second terminal connected to the first relay device via a first relay device and a second relay device connected via a network including a wireless line. The second terminal device connected to the relay device is a communication system in which packet data is transmitted and received, wherein the first relay device is a 4 of the IP address and port number of the first and second terminal devices. Means for storing connection information consisting of two combinations, a time when the TCP segment related to the connection was last relayed, and a TCP segment related to the connection for a predetermined period or more by comparing the stored relay time and the current time. Means for detecting that no relay has been performed, means for detecting that a packet from the second relay device has not been received, and the second relay device And a means for transmitting a connection maintenance notification to the first terminal device when detecting that the packet is not received and that the TCP segment related to the connection is not relayed, The second relay device stores connection information comprising four combinations of the IP addresses and port numbers of the first and second terminal devices, and time when the TCP segment related to the connection was last relayed And a means for detecting that the TCP segment related to the connection has not been relayed for a predetermined period or more by comparing the stored relay time with the current time, and a packet from the first relay device. Means for detecting that it has not been received, that it has not received a packet from said first relay device, and said connection When detecting that not performed relay TCP segment concerned, characterized in that it comprises means for transmitting a connection keep notification to the second terminal device.

上記課題を解決する本発明は、無線回線を含むネットワークで接続された第一の中継装置と第二の中継装置とを介して、第一の中継装置に接続された第一の端末装置と第二の中継装置に接続された第二の端末装置とがパケットデータを送受信する通信システムであって、前記第一の中継装置は、前記第二の中継装置に対して死活監視用パケットを送信する手段と、前記第二の中継装置からの死活監視用パケットの応答パケットを受信する手段と、前記死活監視用パケットを送信してからの経過時間を測定する手段と、前記測定の結果、予め定められた期間を経過しても前記死活監視用パケットに対する応答パケットを受信していない場合に、前記第一の端末装置に対してコネクション維持通知を送信する手段とを備え、前記第二の中継装置は、前記第一の中継装置に対して死活監視用パケットを送信する手段と、前記第一の中継装置からの死活監視用パケットの応答パケットを受信する手段と、前記死活監視用パケットを送信してからの経過時間を測定する手段と、前記測定の結果、予め定められた期間を経過した場合に、前記第二の端末装置に対してコネクション維持通知を送信する手段とを備えることを特徴とする。 The present invention that solves the above-described problems includes a first terminal device connected to a first relay device and a first terminal device connected to the first relay device via a first relay device and a second relay device connected via a network including a wireless line. A communication system for transmitting and receiving packet data to and from a second terminal device connected to a second relay device, wherein the first relay device transmits an alive monitoring packet to the second relay device Means, means for receiving a response packet of the life / death monitoring packet from the second relay device, means for measuring an elapsed time since the transmission of the life / death monitoring packet, and a result of the measurement, predetermined. Means for transmitting a connection maintenance notification to the first terminal device when a response packet to the alive monitoring packet has not been received even after a lapse of a given period, the second relay device Is Means for transmitting a life and death monitoring packet to the first relay device, means for receiving a response packet for the life and death monitoring packet from the first relay device, and after transmitting the life and death monitoring packet And a means for transmitting a connection maintenance notification to the second terminal device when a predetermined period of time has passed as a result of the measurement.

上記課題を解決する本発明は、無線回線を含むネットワークで接続された二つの中継装置を介して、端末装置間でパケットデータを送受信する通信システムにおける中継装置であって、パケットデータを送受信する端末装置のIPアドレスとポート番号との4つの組合せからなるコネクション情報と、前記コネクションに関するTCPセグメントを最後に中継した時刻とを記憶する手段と、前記記憶した中継時刻と現在時刻との比較により、予め定められた期間以上前記コネクションに関するTCPセグメントの中継が行われていないことを検出する手段と、前記無線回線を含むネットワークで接続された他の中継装置からのパケットを受信していないことを検出する手段と、前記無線回線を含むネットワークで接続された他の中継装置からのパケットを受信していないことと、前記コネクションに関するTCPセグメントの中継が行われていないことを検出した際に、接続されている端末装置に対してコネクション維持通知を送信する手段とを備えることを特徴とする。   The present invention for solving the above problems is a relay apparatus in a communication system for transmitting and receiving packet data between terminal apparatuses via two relay apparatuses connected by a network including a wireless line, and a terminal for transmitting and receiving packet data By means of storing connection information consisting of four combinations of the IP address and port number of the device, the time when the TCP segment related to the connection was last relayed, and comparing the stored relay time with the current time, Means for detecting that the TCP segment related to the connection has not been relayed for a predetermined period or more, and detecting that a packet from another relay device connected in the network including the wireless line has not been received. And packets from other relay devices connected by a network including the wireless line And a means for transmitting a connection maintenance notification to the connected terminal device when it is detected that the TCP segment related to the connection is not relayed. .

上記課題を解決する本発明は、無線回線を含むネットワークで接続された二つの中継装置を介して、端末装置間でパケットデータを送受信する通信システムにおける中継装置であって、前記無線回線を含むネットワークで接続された他の中継装置に対して死活監視用パケットを送信する手段と、前記無線回線を含むネットワークで接続された他の中継装置からの死活監視用パケットの応答パケットを受信する手段と、前記死活監視用パケットを送信してからの経過時間を測定する手段と、前記測定の結果、予め定められた期間を経過しても前記死活監視用パケットに対する応答パケットを受信していない場合に、接続されている端末装置に対してコネクション維持通知を送信する手段とを備えることを特徴とする。 The present invention for solving the above-described problems is a relay apparatus in a communication system that transmits and receives packet data between terminal apparatuses via two relay apparatuses connected by a network including a wireless line, the network including the wireless line Means for transmitting a life / death monitoring packet to another relay apparatus connected in the network, means for receiving a response packet for the life / death monitoring packet from another relay apparatus connected in a network including the wireless line, and Means for measuring the elapsed time since transmitting the life-and-death monitoring packet; and as a result of the measurement, when a response packet for the life-and-death monitoring packet has not been received even after a predetermined period has elapsed, And a means for transmitting a connection maintenance notification to the connected terminal device.

上記課題を解決する本発明は、無線回線を含むネットワークで接続された第一の中継装置と第二の中継装置を介して、第一の中継装置に接続された第一の端末装置と第二の中継装置に接続された第二の端末装置がパケットデータを送受信する通信方法であって、前記第一の中継装置と前記第二の中継装置とは、前記第一及び第二の端末装置のIPアドレスとポート番号との4つの組合せからなるコネクション情報と、前記コネクションに関するTCPセグメントを最後に中継した時刻とを記憶し、前記記憶した中継時刻と現在時刻との比較により、予め定められた期間以上前記コネクションに関するTCPセグメントの中継が行われていないことを検出し、前記第一の中継装置は、前記第二の中継装置からのパケットを受信していないことと、前記コネクションに関するTCPセグメントの中継が行われていないことを検出した際に、前記第一の端末装置に対してコネクション維持通知を送信し、前記第二の中継装置は、前記第一の中継装置からのパケットを受信していないことと、前記コネクションに関するTCPセグメントの中継が行われていないことを検出した際に、前記第二の端末装置に対してコネクション維持通知を送信することを特徴とする。   The present invention that solves the above-described problems provides a first terminal device and a second terminal connected to the first relay device via a first relay device and a second relay device connected via a network including a wireless line. A communication method in which a second terminal device connected to the relay device transmits and receives packet data, wherein the first relay device and the second relay device are the first and second terminal devices. Stores connection information consisting of four combinations of an IP address and a port number, and the time when the TCP segment related to the connection was last relayed, and a predetermined period by comparing the stored relay time with the current time As described above, it is detected that the TCP segment related to the connection is not relayed, and the first relay device has not received a packet from the second relay device, and the connection When it is detected that the TCP segment related to the network is not relayed, a connection maintenance notification is transmitted to the first terminal device, and the second relay device sends a connection from the first relay device. A connection maintenance notification is transmitted to the second terminal device when it is detected that a packet is not received and that a TCP segment related to the connection is not relayed.

上記課題を解決する本発明は、無線回線を含むネットワークで接続された第一の中継装置と第二の中継装置とを介して、第一の中継装置に接続された第一の端末装置と第二の中継装置に接続された第二の端末装置とがパケットデータを送受信する通信方法であって、前記第一の中継装置は、前記第二の中継装置に対して死活監視用パケットを送信し、前記第二の中継装置からの死活監視用パケットの応答パケットを受信し、前記死活監視用パケットを送信してからの経過時間を測定し、前記測定の結果、予め定められた期間を経過した場合に、前記第一の端末装置に対してコネクション維持通知を送信し、前記第二の中継装置は、前記第一の中継装置に対して死活監視用パケットを送信し、前記第一の中継装置からの死活監視用パケットの応答パケットを受信し、前記死活監視用パケットを送信してからの経過時間を測定し、前記測定の結果、予め定められた期間を経過しても前記死活監視用パケットに対する応答パケットを受信していない場合に、前記第二の端末装置に対してコネクション維持通知を送信することを特徴とする。 The present invention that solves the above-described problems includes a first terminal device connected to a first relay device and a first terminal device connected to the first relay device via a first relay device and a second relay device connected via a network including a wireless line. A communication method for transmitting and receiving packet data to and from a second terminal device connected to a second relay device, wherein the first relay device transmits a life and death monitoring packet to the second relay device. , Receiving a response packet of the alive monitoring packet from the second relay device, measuring an elapsed time after transmitting the alive monitoring packet, and a predetermined period of time has passed as a result of the measurement In this case, a connection maintenance notification is transmitted to the first terminal device, the second relay device transmits a life / death monitoring packet to the first relay device, and the first relay device Alive monitoring packet from Receiving a packet, the measured time elapsed from the transmission of the life-and-death monitoring packet, the result of the measurement, do not receive a response packet even after a predetermined period with respect to the life-and-death monitoring packet In this case, a connection maintenance notification is transmitted to the second terminal device.

上記課題を解決する本発明は、無線回線を含むネットワークで接続された二つの中継装置を介して、端末装置間でパケットデータを送受信する通信システムにおける中継装置のプログラムであって、パケットデータを送受信する端末装置のIPアドレスとポート番号との4つの組合せからなるコネクション情報と、前記コネクションに関するTCPセグメントを最後に中継した時刻とを記憶する処理と、前記記憶した中継時刻と現在時刻との比較により、予め定められた期間以上前記コネクションに関するTCPセグメントの中継が行われていないことを検出する処理と、前記無線回線を含むネットワークで接続された他の中継装置からのパケットを受信していないことを検出する処理と、前記無線回線を含むネットワークで接続された他の中継装置からのパケットを受信していないことと、前記コネクションに関するTCPセグメントの中継が行われていないことを検出した際に、接続されている端末装置に対してコネクション維持通知を送信する処理とを中継装置に実行させることを特徴とする。   The present invention for solving the above problems is a relay device program in a communication system for transmitting and receiving packet data between terminal devices via two relay devices connected by a network including a wireless line, and transmits and receives packet data. By storing the connection information consisting of four combinations of the IP address and port number of the terminal device to be processed, the time when the TCP segment related to the connection was last relayed, and the comparison between the stored relay time and the current time A process for detecting that the TCP segment related to the connection has not been relayed for a predetermined period or more and that a packet from another relay device connected in the network including the wireless line has not been received. Detecting process and other relay devices connected by the network including the wireless line A process of transmitting a connection maintenance notification to the connected terminal device when it is detected that the TCP segment related to the connection has not been relayed and the relay device is not relayed to the relay device. It is made to perform.

上記課題を解決する本発明は、無線回線を含むネットワークで接続された二つの中継装置を介して、端末装置間でパケットデータを送受信する通信システムにおける中継装置のプログラムであって、前記無線回線を含むネットワークで接続された他の中継装置に対して死活監視用パケットを送信する処理と、前記無線回線を含むネットワークで接続された他の中継装置からの死活監視用パケットの応答パケットを受信する処理と、前記死活監視用パケットを送信してからの経過時間を測定する手段と、前記測定の結果、予め定められた期間を経過しても前記死活監視用パケットに対する応答パケットを受信していない場合に、接続されている端末装置に対してコネクション維持通知を送信する処理とを中継装置に実行させることを特徴とする。
The present invention for solving the above-described problem is a relay device program in a communication system for transmitting and receiving packet data between terminal devices via two relay devices connected by a network including a wireless channel, A process of transmitting a life / death monitoring packet to another relay apparatus connected in the network including the process, and a process of receiving a response packet of the life / death monitoring packet from another relay apparatus connected in the network including the wireless line And means for measuring an elapsed time since the transmission of the life and death monitoring packet; and as a result of the measurement, if a response packet for the life and death monitoring packet has not been received even after a predetermined period has elapsed And causing the relay device to execute a process of transmitting a connection maintenance notification to the connected terminal device.

本発明の効果は、パケット通信システムにおいて、途中経路の通信品質の悪化した場合においてもコネクションの切断頻度が軽減されることにより通信システムの利用効率が改善されることにある。   The effect of the present invention is that the use efficiency of the communication system is improved by reducing the frequency of disconnection in the packet communication system even when the communication quality of the intermediate route deteriorates.

その理由は、パケット通信システムの途中経路に位置する中継装置において、コネクション確立時及びパケット送受信時に、コネクションを利用している両端の装置が交換するコネクション確立及び維持のために必要となるコネクション情報及びTCPセグメント中継時刻を記憶しておき、当該コネクションに関するパケットの伝送が一定時間以上観測されない場合は、コネクション維持処理を代理で行うためである。   The reason for this is that, in the relay device located in the middle of the packet communication system, connection information necessary for establishing and maintaining the connection exchanged by the devices at both ends using the connection at the time of connection establishment and packet transmission / reception, and This is because the TCP segment relay time is stored, and when the transmission of the packet related to the connection is not observed for a certain time or longer, the connection maintenance process is performed on behalf.

本発明の第1の実施の形態について図面を参照して説明する。   A first embodiment of the present invention will be described with reference to the drawings.

図6は第1の実施の形態によるパケット通信システムのシステム構成を示すブロック図である。図6において、本発明の一実施例によるパケット通信システムは、第1の通信端末100、第2の通信端末200、第1の中継装置500、第2の中継装置600、第1の有線ネットワーク1001、第2の有線ネットワーク1002、及び無線ネットワーク1003とから構成されている。   FIG. 6 is a block diagram showing a system configuration of the packet communication system according to the first embodiment. 6, the packet communication system according to an embodiment of the present invention includes a first communication terminal 100, a second communication terminal 200, a first relay device 500, a second relay device 600, and a first wired network 1001. , A second wired network 1002 and a wireless network 1003.

第1の通信端末100及び第2の通信端末200はそれぞれ、本発明の第1の実施の形態において、コネクションを確立しパケット通信によるデータ送受信を実行する情報端末である。なお、第1の通信端末100及び第2の通信端末200の詳細な構成は、図1を用いて説明したものと同一であるため、その説明は省略する。また、第1の有線ネットワーク1001、第2の有線ネットワーク1002、及び無線ネットワーク1003についても、図1で説明したものと同一であるため、その説明は省略する。   Each of the first communication terminal 100 and the second communication terminal 200 is an information terminal that establishes a connection and executes data transmission / reception by packet communication in the first embodiment of the present invention. Note that the detailed configurations of the first communication terminal 100 and the second communication terminal 200 are the same as those described with reference to FIG. The first wired network 1001, the second wired network 1002, and the wireless network 1003 are also the same as those described with reference to FIG.

第1の中継装置500、及び第2の中継装置600はそれぞれ、本発明の第1の実施の形態において、IPプロトコル制御により受信したIPパケットのIPヘッダから出力経路を選択してIPデータグラムの中継を行う機能と、中継するIPデータグラムの内容を解析し、IPデータグラムに含まれるTCPセグメントのTCPヘッダからコネクションを識別する情報を取得することで、自身を経由するコネクションを管理し、通信品質が不安定な通信路からのパケット受信が一定期間以上滞った場合には、コネクション維持を通知するTCPセグメントを送出することによりコネクションの切断を防ぐ機能とを備えている。   In the first embodiment of the present invention, each of the first relay device 500 and the second relay device 600 selects an output path from the IP header of the IP packet received by the IP protocol control, and creates an IP datagram. Manages and communicates with the connection through itself by analyzing the contents of the IP datagram to be relayed and analyzing the contents of the IP datagram to be relayed, and acquiring information identifying the connection from the TCP header of the TCP segment included in the IP datagram A function is provided that prevents disconnection of a connection by sending a TCP segment for notifying connection maintenance when packet reception from a communication path with unstable quality is delayed for a certain period of time.

図6において、第1の中継装置500は、第3のネットワークアクセスモジュール505、第4のネットワークアクセスモジュール506、及び第1のコネクション監視モジュール511とから構成されている。   In FIG. 6, the first relay device 500 includes a third network access module 505, a fourth network access module 506, and a first connection monitoring module 511.

第3のネットワークアクセスモジュール505、及び第4のネットワークアクセスモジュール506はそれぞれ、第1のコネクション監視モジュール511から受け取ったIPデータグラムから、接続しているネットワークのネットワークアクセス方式に従ったデータフレームを生成し、生成したデータフレームを接続している通信路へ送出する機能と、ネットワークから受信したデータフレームよりIPデータグラムを取り出して第1のコネクション監視モジュール511へ渡す機能とを備えている。   Each of the third network access module 505 and the fourth network access module 506 generates a data frame according to the network access method of the connected network from the IP datagram received from the first connection monitoring module 511. And a function of sending the generated data frame to the connected communication path and a function of taking out an IP datagram from the data frame received from the network and passing it to the first connection monitoring module 511.

第1のコネクション監視モジュール511は、IPデータグラムの中継を行う機能と、自中継装置を経由するコネクションを管理し、接続している無線ネットワークの通信品質が悪化した際にコネクション維持の手続きを行う機能を実行する。   The first connection monitoring module 511 manages the IP datagram relay function and the connection through the relay device, and performs the procedure for maintaining the connection when the communication quality of the connected wireless network deteriorates. Perform the function.

図7に示す如く、第1のコネクション監視装置511は、IP処理モジュール5111、セッション維持処理モジュール5112、入出力状況監視装置5113、及び記憶装置5114から構成される。   As shown in FIG. 7, the first connection monitoring device 511 includes an IP processing module 5111, a session maintenance processing module 5112, an input / output status monitoring device 5113, and a storage device 5114.

入出力状況監視装置5113は、IP処理モジュール5111と第4のネットワークアクセスモジュール506間のIPデータグラム授受を中継する機能と、第4のネットワークアクセスモジュール506からのデータ受信を検出するとセッション維持装置5112に通信する機能を有する。   The input / output status monitoring device 5113 detects the reception of data from the fourth network access module 506 and the function of relaying IP datagram exchange between the IP processing module 5111 and the fourth network access module 506, and the session maintenance device 5112. It has a function to communicate with.

IP処理モジュール5111は、第3のネットワークアクセスモジュール及び入出力状況監視装置5113からIPデータグラムを受け取り、そのIPヘッダの情報と保持する経路制御テーブルからIPデータグラムの宛先に対応するネットワークアクセスモジュールへ送出する機能と、IPヘッダのProtocolフィールドの値がTCPを意味する値である場合には、受け取ったIPデータグラムをセッション維持装置に渡す機能とを備えている。   The IP processing module 5111 receives the IP datagram from the third network access module and the input / output status monitoring device 5113, and from the information of the IP header and the held routing control table to the network access module corresponding to the destination of the IP datagram And a function for passing the received IP datagram to the session maintenance device when the value of the Protocol field of the IP header is a value meaning TCP.

セッション維持処理モジュール5112は、記憶装置5114を利用して第1のコネクション監視装置511を経由するコネクション管理表を保持する機能と、各コネクションに関するTCPセグメントの送受信が一定期間検出されず、かつ入出力監視装置5113を利用して本実施の形態において不安定な回線である第4のネットワークアクセスモジュールからのパケット受信が停止していると判断した場合には、第1の端末装置宛にコネクション維持のTCPセグメントを生成、及び送出する機能とを備えている。   The session maintenance processing module 5112 uses a storage device 5114 to maintain a connection management table that passes through the first connection monitoring device 511, and transmission / reception of TCP segments related to each connection is not detected for a certain period of time, and input / output If it is determined that the reception of a packet from the fourth network access module, which is an unstable line in this embodiment, is stopped using the monitoring device 5113, the connection maintenance addressed to the first terminal device is maintained. It has a function to generate and send a TCP segment.

なお、第2の中継装置600の構成と機能は、第1の中継装置500と同様であるため、説明を省略する。   Note that the configuration and function of the second relay device 600 are the same as those of the first relay device 500, and thus description thereof is omitted.

図8は、セッション維持処理モジュール5112及びセッション維持処理モジュール6112のそれぞれで保持する、コネクション管理表の一構成例を示したものである。コネクション管理表では、安定な無線回線を介して対向となる中継装置のIPアドレスと各中継装置内部で管理するコネクション情報と、不安定な無線回線を介して対向となる中継装置のIPアドレスと各中継装置内部で管理するコネクション情報とを格納する。   FIG. 8 shows an example of the configuration of the connection management table held in each of the session maintenance processing module 5112 and the session maintenance processing module 6112. In the connection management table, the IP address of the relay device that is opposed via a stable wireless line, the connection information managed inside each relay device, the IP address of the relay device that is opposed via an unstable wireless line, and each Stores connection information managed in the relay device.

次に、図8、図9、図10、図11、図12、図13、及び図14を用いて、本発明で新規のコネクションを確立する場合の動作を、第1の端末装置100から第2の端末装置に向けてコネクション確立する場合を例にして動作を説明する。以降では、第1の端末装置100のIPアドレスをA1、第1の端末装置100の用意したポート番号をP1、第2の端末装置200のIPアドレスをA2、第2の端末装置200が用意したポート番号をP2とする。また、第1の中継装置500に装備された第4のネットワークアクセスモジュール506に割り当てられたIPアドレスをR1、第2の中継装置600に装備された第5のネットワークアクセスモジュール605に割り当てられたIPアドレスをR2とする。   Next, referring to FIG. 8, FIG. 9, FIG. 10, FIG. 11, FIG. 12, FIG. 13 and FIG. The operation will be described by taking as an example a case where a connection is established toward the terminal device 2. Thereafter, the IP address of the first terminal device 100 is A1, the port number prepared by the first terminal device 100 is P1, the IP address of the second terminal device 200 is A2, and the second terminal device 200 is prepared. The port number is P2. The IP address assigned to the fourth network access module 506 provided in the first relay device 500 is R1, and the IP address assigned to the fifth network access module 605 provided in the second relay device 600. The address is R2.

まず、第1の端末装置100は、コネクション確立を要求するTCPセグメント(SYN)を生成し、IPデータグラムとして第2の端末装置200に向けて送出する(S1-1)。ここで、TCPセグメント(SYN)のTCPヘッダでは、Source PortフィールドにP1が、Destination PortフィールドにはP2の値が、Sequence Numberフィールドには第1の端末装置100で生成したシーケンス番号の初期値X1の値がそれぞれ格納される。また、IPデータグラムのIPヘッダでは、Source AddressフィールドにA1の値が、Destination AddressフィールドにA2の値がそれぞれ格納される。   First, the first terminal device 100 generates a TCP segment (SYN) requesting connection establishment, and sends it as an IP datagram to the second terminal device 200 (S1-1). Here, in the TCP header of the TCP segment (SYN), P1 is in the Source Port field, the value of P2 is in the Destination Port field, and the initial value X1 of the sequence number generated by the first terminal device 100 is in the Sequence Number field. Each value is stored. In the IP header of the IP datagram, the value of A1 is stored in the Source Address field, and the value of A2 is stored in the Destination Address field.

S1-2の説明
次に、第1の中継装置500は、受け取ったIPデータグラムの内容がTCPセグメントである場合には、当該TCPセグメントのSource Address(A1)、Source Port(P1)、Destination Address(A2)、及びDestination Port(P2)の組み合わせからなるコネクション(以降、「コネクション(A1,P1,A2,P2)」と呼ぶ)が、既に図8で示すコネクション管理表に存在するかどうかを確認し、存在しない場合にはコネクション管理表へ新たなエントリとして作成し、作成時の時刻T(S1-2)を記録する(S1-2)。ここで、当該TCPセグメントは安定な通信回線に接続された第3のネットワークアクセスモジュール505側から受信し、不安定な通信回線に接続された第4のネットワークアクセスモジュール側へ送信するものであるため、コネクション管理表への登録結果は図11に示す様になる。
Description of S1-2 Next, when the content of the received IP datagram is a TCP segment, the first relay device 500 determines the source address (A1), source port (P1), and destination address of the TCP segment. Check if the connection consisting of the combination of (A2) and Destination Port (P2) (hereinafter referred to as “Connection (A1, P1, A2, P2)”) already exists in the connection management table shown in FIG. If it does not exist, it is created as a new entry in the connection management table, and the time T (S1-2) at the time of creation is recorded (S1-2). Here, the TCP segment is received from the third network access module 505 connected to the stable communication line and transmitted to the fourth network access module connected to the unstable communication line. The result of registration in the connection management table is as shown in FIG.

S1-3の説明
また、第1の中継装置500は、内部に保持する経路制御表に従って受け取ったIPデータグラムを第2の中継装置600に向けて転送する(S1-3)。
Description of S1-3 Further, the first relay device 500 transfers the IP datagram received according to the routing control table held therein to the second relay device 600 (S1-3).

S1-4の説明
次に、第2の中継装置600は、受け取ったIPデータグラムの内容がTCPセグメントである場合には、当該TCPセグメントのSource Address(A1)、Source Port(P1)、Destination Address(A2)、及びDestination Port(P2)の組み合わせからなるコネクションが、既に図8で示すコネクション管理表に存在するかどうかを確認し、存在しない場合にはコネクション管理表へ新たなエントリとして作成し、作成時の時刻であるT(S1-4)を記録する(S1-4)。当該TCPセグメントは不安定な通信回線に接続された第5のネットワークアクセスモジュール605側から受信し、安定な通信回線に接続された第6のネットワークアクセスモジュール606側へ送信するものであるので経路制御表への登録結果は図12に示す様になる。
Description of S1-4 Next, when the content of the received IP datagram is a TCP segment, the second relay device 600 determines the source address (A1), source port (P1), and destination address of the TCP segment. Check if the connection consisting of the combination of (A2) and Destination Port (P2) already exists in the connection management table shown in FIG. 8, and if not, create a new entry in the connection management table, Record T (S1-4) which is the time of creation (S1-4). Since the TCP segment is received from the fifth network access module 605 connected to the unstable communication line and transmitted to the sixth network access module 606 connected to the stable communication line, the path control is performed. The result of registration in the table is as shown in FIG.

S1-5の説明
また、第2の中継装置600は、内部に保持する経路制御表に従って受け取ったIPデータグラムを第2の端末装置200に向けて転送する(S1-5)。
Description of S1-5 Also, the second relay device 600 transfers the IP datagram received according to the routing control table held therein to the second terminal device 200 (S1-5).

S1-6の説明
次に、第2の端末装置200は、TCPセグメント(SYN)に対する到達応答であるTCPセグメント(SYN, ACK)を生成し、第1の端末装置100に向けて送出する(S-6)。ここで、TCPセグメント(SYN, ACK)のTCPヘッダでは、通常の設定に加えてSequence Numberフィールドには第2の端末装置200の内部で生成したシーケンス番号の初期値Y1の値が、Acknowledge Sequence NumberフィールドにはX1+1の値が、さらに確認フラグフィールド(A)には「有効」を意味する値が、それぞれ格納されている。
Description of S1-6 Next, the second terminal device 200 generates a TCP segment (SYN, ACK) that is a response to the TCP segment (SYN) and sends it to the first terminal device 100 (S -6). Here, in the TCP header of the TCP segment (SYN, ACK), in addition to the normal setting, the Sequence Number field contains the initial value Y1 of the sequence number generated inside the second terminal device 200 as the Acknowledge Sequence Number. The field stores a value of X1 + 1, and the confirmation flag field (A) stores a value meaning “valid”.

S1-7の説明
次に、第2の中継装置600は、受け取ったIPデータグラムの内容がTCPセグメントであり、かつ当該TCPヘッダの確認フラグフィールド(A)の値が「有効」であるので、コネクション管理表からコネクション(A1,P1,A2,P2)に対応するエントリについて、TCPセグメント(SYN, ACK)の送信先である第1の端末装置100 (A1, P1)の到達確認済みシーケンス番号の箇所にAcknowledge Sequence Numberフィールドの値(X1+1)から1引いた値(X1)を格納する(S1-7)。
Explanation of S1-7 Next, since the content of the received IP datagram is a TCP segment and the value of the confirmation flag field (A) of the TCP header is “valid”, For the entry corresponding to the connection (A1, P1, A2, P2) from the connection management table, the arrival confirmed sequence number of the first terminal device 100 (A1, P1) that is the transmission destination of the TCP segment (SYN, ACK) A value (X1) obtained by subtracting 1 from the value (X1 + 1) of the Acknowledge Sequence Number field is stored in the location (S1-7).

S1-8の説明
また、第2の中継装置600は、内部に保持する経路制御表に従って受け取ったIPデータグラムを第1の中継装置500に向けて転送する(S1-8)。
Description of S1-8 Also, the second relay device 600 transfers the received IP datagram according to the path control table held therein to the first relay device 500 (S1-8).

S1-9の説明
次に、第1の中継装置500は、受け取ったIPデータグラムの内容がTCPセグメントであり、かつ当該TCPヘッダの確認フラグフィールド(A)の値が「有効」であるので、コネクション管理表からコネクション(A1,P1,A2,P2)に対応するエントリについて、TCPセグメント(SYN, ACK)の送信先である第1の端末装置100 (A1, P1)の到達確認済みシーケンス番号の箇所にAcknowledge Sequence Numberフィールドの値(X1+1)から1引いた値(X1)を格納し、更新時の時刻T(S1-9)を記録する(S1-9)。
Description of S1-9 Next, since the content of the received IP datagram is a TCP segment and the value of the confirmation flag field (A) of the TCP header is “valid”, the first relay device 500 For the entry corresponding to the connection (A1, P1, A2, P2) from the connection management table, the arrival confirmed sequence number of the first terminal device 100 (A1, P1) that is the transmission destination of the TCP segment (SYN, ACK) A value (X1) obtained by subtracting 1 from the value (X1 + 1) in the Acknowledge Sequence Number field is stored in the location, and the time T (S1-9) at the time of update is recorded (S1-9).

S1-10の説明
また、第1の中継装置500は、内部に保持する経路制御表に従って受け取ったIPデータグラムを第1の端末装置100に向けて転送する(S1-10)。
Description of S1-10 Also, the first relay device 500 transfers the IP datagram received according to the routing control table held therein to the first terminal device 100 (S1-10).

S1-11の説明
次に、第1の中継装置100は、TCPセグメント(SYN,ACK)に対する到達応答であるTCPセグメント(ACK)を生成し、第2の端末装置200に向けて送出する(S-11)。ここで、TCPセグメント(ACK)のTCPヘッダでは、通常の設定に加えてSequence NumberフィールドにはX1+1の値が、Acknowledge Sequence NumberフィールドにはY1+1の値が、さらに確認フラグフィールド(A)には「有効」を意味する値が、それぞれ格納されている。
Description of S1-11 Next, the first relay device 100 generates a TCP segment (ACK), which is an arrival response to the TCP segment (SYN, ACK), and sends it to the second terminal device 200 (S -11). Here, in the TCP header of the TCP segment (ACK), in addition to the normal setting, the value of X1 + 1 in the Sequence Number field, the value of Y1 + 1 in the Acknowledge Sequence Number field, and the confirmation flag field (A ) Stores a value meaning “valid”.

S1-12の説明
次に、第1の中継装置500は、受け取ったIPデータグラムの内容がTCPセグメントであり、かつ当該TCPヘッダの確認フラグフィールド(A)の値が「有効」であるので、コネクション管理表からコネクション(A1,P1,A2,P2)に対応するエントリについて、TCPセグメント(ACK)の送信先である第2の端末装置200 (A2, P2)の到達確認済みシーケンス番号の箇所にAcknowledge Sequence Numberフィールドの値(Y1+1)から1引いた値(Y1)を格納し、更新時の時刻T(S1-12)を記録する(S1-12)。
Description of S1-12 Next, since the content of the received IP datagram is a TCP segment and the value of the confirmation flag field (A) of the TCP header is “valid”, the first relay device 500 For the entry corresponding to the connection (A1, P1, A2, P2) from the connection management table, the arrival confirmed sequence number of the second terminal device 200 (A2, P2) that is the transmission destination of the TCP segment (ACK) A value (Y1) obtained by subtracting 1 from the value (Y1 + 1) in the Acknowledge Sequence Number field is stored, and the time T (S1-12) at the time of update is recorded (S1-12).

S1-13の説明
また、第1の中継装置500は、内部に保持する経路制御表に従って受け取ったIPデータグラムを第2の中継装置600に向けて転送する(S1-13)。
Description of S1-13 Further, the first relay device 500 transfers the IP datagram received according to the routing control table held therein to the second relay device 600 (S1-13).

S1-14の説明
次に、第2の中継装置600は、受け取ったIPデータグラムの内容がTCPセグメントであり、かつ当該TCPヘッダの確認フラグフィールド(A)の値が「有効」であるので、コネクション管理表からコネクション(A1,P1,A2,P2)に対応するエントリについて、TCPセグメント(ACK)の送信先である第2の端末装置200 (A2, P2)の到達確認済みシーケンス番号の箇所にAcknowledge Sequence Numberフィールドの値(Y1+1)から1引いた値(Y1)を格納し、更新時の時刻であるT(S1-14)を記録する(S1-14)。
Description of S1-14 Next, since the content of the received IP datagram is a TCP segment and the value of the confirmation flag field (A) of the TCP header is “valid”, the second relay device 600 For the entry corresponding to the connection (A1, P1, A2, P2) from the connection management table, the arrival confirmed sequence number of the second terminal device 200 (A2, P2) that is the transmission destination of the TCP segment (ACK) A value (Y1) obtained by subtracting 1 from the value (Y1 + 1) in the Acknowledge Sequence Number field is stored, and T (S1-14) that is the time at the time of update is recorded (S1-14).

S1-15の説明
また、第2の中継装置600は、内部に保持する経路制御表に従って受け取ったIPデータグラムを第2の端末装置200に向けて転送する(S1-15)。
Description of S1-15 Further, the second relay device 600 transfers the IP datagram received according to the routing control table held therein to the second terminal device 200 (S1-15).

コネクションを新規に確立する際、以上で述べた処理シーケンスを実行することで、第1の中継装置500と第2の中継装置600はそれぞれ、コネクション維持を行うために必要な情報を取得する。ここで、図13は、上述したコネクション確立の処理シーケンスを完了した際の第1の中継装置500が保持しているコネクション管理表の様子を示したものである。また、図14は、上述したコネクション確立の処理シーケンスを完了した際の第2の中継装置600が保持しているコネクション管理表の様子を示したものである。   When establishing a new connection, the first relay device 500 and the second relay device 600 each acquire information necessary for maintaining the connection by executing the processing sequence described above. Here, FIG. 13 shows a state of the connection management table held by the first relay device 500 when the above-described connection establishment processing sequence is completed. FIG. 14 shows the state of the connection management table held by the second relay apparatus 600 when the above connection establishment processing sequence is completed.

以降、第1の中継装置500と第2の中継装置600とはそれぞれ、自中継装置を通過するTCPセグメントを検出する度に、TCPヘッダの内容を確認し、確認フラグフィールド(A)の値が「有効」である場合には、保有するコネクション管理表の対応するエントリにある「到達確認済みシーケンス番号」の値を当該TCPヘッダのAcknowledge Sequence Numberフィールドの値から1引いた値に設定し、さらに「最終更新時刻」の値を更新時の時刻に設定する。   Thereafter, each time the first relay device 500 and the second relay device 600 detect the TCP segment passing through the own relay device, the contents of the TCP header are confirmed, and the value of the confirmation flag field (A) is set. If it is "valid", set the value of "Acknowledged Sequence Number" in the corresponding entry of the connection management table held to the value obtained by subtracting 1 from the value of the Acknowledge Sequence Number field of the TCP header, and Set the value of “last update time” to the time of update.

次に、本発明の一実施例におけるコネクション維持を行う場合の動作を、図15のシーケンス図を用いて説明する。   Next, the operation for maintaining the connection in one embodiment of the present invention will be described with reference to the sequence diagram of FIG.

図15では、第1の端末装置100から送信するサブ応用データについては、シーケンス番号X2までの到達確認が完了しており、また、第2の端末装置から送信するサブ応用データについてはシーケンス番号Y2までの到達確認が完了しているものとする。また、第1の中継装置500と第2の中継装置600とが接続している無線ネットワーク1003の通信品質が悪化しており、第1の中継装置500及び第2の中継装置600のそれぞれが送出する通信パケットは途中で消失しているとする。   In FIG. 15, the arrival confirmation up to sequence number X2 has been completed for the sub application data transmitted from the first terminal apparatus 100, and the sequence number Y2 for the sub application data transmitted from the second terminal apparatus. It is assumed that the arrival confirmation has been completed. In addition, the communication quality of the wireless network 1003 to which the first relay device 500 and the second relay device 600 are connected has deteriorated, and each of the first relay device 500 and the second relay device 600 sends out. It is assumed that the communication packet to be lost has been lost.

上記に述べた状況における、コネクション維持の動作を以下で説明する。   The operation of maintaining the connection in the situation described above will be described below.

まず、第1の中継装置500は、最後に自中継装置を経由したコネクション(A1,P1,A2,P2)に関するTCPセグメントを検出した時刻T(S2-1)から、予め設定された期間(以降、「Keepaliveタイムアウト1」とする)経過しても当該コネクション(A1,P1,A2,P2)に関するTCPセグメントの通過が検出されない場合、コネクション維持処理の実行を決定する(S2-2)。   First, the first relay device 500 lastly detects a TCP segment related to the connection (A1, P1, A2, P2) that has passed through its own relay device, and starts a preset period (hereinafter referred to as “T”). If passage of the TCP segment related to the connection (A1, P1, A2, P2) is not detected even after elapse of "Keepalive timeout 1"), execution of the connection maintenance process is determined (S2-2).

図16では、S2-2の時点において第1の中継装置500が保持しているコネクション管理表の内容を示している。   FIG. 16 shows the contents of the connection management table held by the first relay device 500 at the time of S2-2.

第1の中継装置500は、コネクション維持のためのTCPセグメント(Keepalive)を生成し、安定した回線側に位置する第1の端末装置100に向けて送出する(S2-3)。ここで、TCPセグメント(Keepalive)S2-3のTCPヘッダでは、通常のTCPヘッダ各フィールド設定に加えて、Sequence NumberフィールドにY2の値が、Acknowledge Sequence NumberフィールドにX2の値が、確認フラグフィールドには「有効」を意味する値がそれぞれ格納される。   The first relay device 500 generates a TCP segment (Keepalive) for maintaining the connection, and sends it to the first terminal device 100 located on the stable line side (S2-3). Here, in the TCP header of the TCP segment (Keepalive) S2-3, in addition to the normal TCP header field settings, the Y2 value in the Sequence Number field, the X2 value in the Acknowledge Sequence Number field, and the confirmation flag field Each stores a value meaning “valid”.

次に、TCPセグメント(Keepalive)S2-3を受け取った第1の端末装置100は、当該TCPセグメントがコネクション維持の通知であることを確認すると、TCPセグメント(Keepalive)S2-3の送達確認を通知するためのTCPセグメント(Keepalive-ack)を送出する(S2-4)。   Next, when the first terminal device 100 that has received the TCP segment (Keepalive) S2-3 confirms that the TCP segment is a connection maintenance notification, the first terminal device 100 notifies the delivery confirmation of the TCP segment (Keepalive) S2-3. A TCP segment (Keepalive-ack) is transmitted (S2-4).

ここで、TCPセグメント(Keepalive-ack)S2-4のTCPヘッダでは、通常のTCPヘッダ各フィールド設定に加えて、Sequence NumberフィールドにX2の値が、Acknowledge Sequence NumberフィールドにY2の値が、確認フラグフィールドには「有効」を意味する値がそれぞれ格納されている。   Here, in the TCP header of the TCP segment (Keepalive-ack) S2-4, in addition to the normal TCP header field settings, the X2 value in the Sequence Number field, the Y2 value in the Acknowledge Sequence Number field, and the confirmation flag Each field stores a value meaning “valid”.

次に、TCPセグメント(Keepalive-ack)S2-4を受け取った第1の中継装置500は、当該TCPセグメントが自身で送信したTCPセグメント(Keepalive)S2-3に対する送達確認であると判断すると、当該TCPセグメントを終端し、図16で示したコネクション管理表のコネクション(A1,P1,A2,P2)に対応するエントリにある「最終更新時刻」を、TCPセグメント(Keepalive-ack) S2-4の受信時刻であるT(S2-4)に更新する(S2-5)。   Next, the first relay device 500 that has received the TCP segment (Keepalive-ack) S2-4 determines that the TCP segment is a delivery confirmation for the TCP segment (Keepalive) S2-3 transmitted by itself. The TCP segment (Keepalive-ack) S2-4 is received by terminating the TCP segment and receiving the “last update time” in the entry corresponding to the connection (A1, P1, A2, P2) in the connection management table shown in FIG. The time is updated to T (S2-4) (S2-5).

以降、「Keepaliveタイムアウト1」期間中に当該コネクション(A1,P1,A2,P2)に関するTCPセグメントの通過が検出されない場合には、コネクション維持のためのTCPセグメント(Keepalive)の送信を行う(S2-6)。   Thereafter, when the passage of the TCP segment related to the connection (A1, P1, A2, P2) is not detected during the “Keepalive timeout 1” period, the TCP segment (Keepalive) for maintaining the connection is transmitted (S2- 6).

以上の手順により、第1の中継装置500と第2の中継装置600との間の通信路品質が悪化した状態が長期間続いた場合でも、第1の端末装置100に対して、保持しているTCPコネクション(A1, P1, A2, P2)を確立した状態のまま維持し続けさせることが可能となる。   According to the above procedure, even when the state where the channel quality between the first relay device 500 and the second relay device 600 deteriorates continues for a long period of time, the first terminal device 100 holds it. Existing TCP connections (A1, P1, A2, P2) can be maintained and maintained.

また、第2の中継装置600と第2の端末装置200との間においても、上述した第1の中継装置500と第1の端末装置100との間で行われるコネクション維持の手順と同様の動作を行う(S2-7〜S2-12)。   In addition, the same operation as the connection maintenance procedure performed between the first relay device 500 and the first terminal device 100 described above also between the second relay device 600 and the second terminal device 200. (S2-7 to S2-12).

図17では、S2-7の時点において第2の中継装置600が保持しているコネクション管理表の内容を示している。   FIG. 17 shows the contents of the connection management table held by the second relay device 600 at the time of S2-7.

これにより、第2の端末装置200に対して、保持しているTCPコネクション(A1, P1, A2, P2)を確立した状態のまま維持し続けさせることが可能となる。   As a result, it is possible to keep the second terminal apparatus 200 maintaining the held TCP connections (A1, P1, A2, P2) in an established state.

なお、第1の中継装置500が用いる「Keepaliveタイムアウト1」の値と、第2の中継装置600が用いる「Keepaliveタイムアウト2」の値は、必ずしも一致している必要は無く、第1の中継装置500と第2の中継装置600のそれぞれが実行するコネクション維持手続きは、独立して動作する。   Note that the value of “Keepalive timeout 1” used by the first relay device 500 and the value of “Keepalive timeout 2” used by the second relay device 600 do not necessarily match, and the first relay device The connection maintenance procedures executed by each of the 500 and the second relay device 600 operate independently.

以上に述べた通り、無線ネットワーク1003の通信路品質が悪化した状況においても、第1の中継装置500が第1の端末装置100に対して、第2の中継装置の代理としてコネクション維持手続きを実施し、かつ第2の中継装置600が第1の中継装置500の代理として第2の端末装置200に対してコネクション維持手続きを実施することで、各端末装置のTCPモジュールはコネクションの破棄を行わなくなる。これにより、無線ネットワーク1003の通信路品質が改善した場合に、コネクション確立処理を実施する必要がなく、即座に応用データの送受信が再開することが可能となる。   As described above, even in a situation where the channel quality of the wireless network 1003 has deteriorated, the first relay device 500 performs a connection maintenance procedure on the first terminal device 100 as a proxy for the second relay device. In addition, when the second relay device 600 performs the connection maintenance procedure for the second terminal device 200 on behalf of the first relay device 500, the TCP module of each terminal device does not discard the connection. . Thereby, when the communication channel quality of the wireless network 1003 is improved, it is not necessary to perform connection establishment processing, and transmission / reception of application data can be immediately resumed.

本発明の第2の実施の形態について説明する。   A second embodiment of the present invention will be described.

第1の実施の形態では、第1の中継装置500と第2の中継装置600とはそれぞれ、第1の端末装置100、または、第2の端末装置200が送出し、自身を通過するTCPセグメントが予め設定された期間検出されなかったことを契機として、当該TCP通信のみに対するコネクション維持処理の実行を決定した。第2の実施の形態では、第1の中継装置500と第2の中継装置600との間で交換される死活確認要求に対する応答が一定期間確認されなかった場合を契機として、第1の中計装置500及び第2の中計装置600とを経由する全てのTCP通信についてコネクション維持処理の実行を決定する。   In the first embodiment, the first relay device 500 and the second relay device 600 are respectively sent from the first terminal device 100 or the second terminal device 200 and passed through the TCP segment. In response to the fact that no connection period was detected for a predetermined period, execution of connection maintenance processing for only the TCP communication was determined. In the second embodiment, the first intermediate plan is triggered when a response to a life / death confirmation request exchanged between the first relay device 500 and the second relay device 600 is not confirmed for a certain period of time. The execution of the connection maintenance process is determined for all TCP communications via the device 500 and the second mid-range device 600.

以降では、図6のブロック図、図18のシーケンス図、及び図19を用いて、本発明の第2の実施の形態における第1の中継装置500と第2の中継装置600との間でのコネクション維持実現手段について示す。   Hereinafter, the block diagram of FIG. 6, the sequence diagram of FIG. 18, and FIG. 19 are used to explain the relationship between the first relay device 500 and the second relay device 600 in the second embodiment of the present invention. The connection maintenance realizing means will be described.

図19は、本発明の第2の実施の形態における第1の中継装置500が保持するコネクション管理表の一構成例を、図20は、本発明の第2の実施の形態における第2の中継装置600が保持するコネクション管理表の一状態をそれぞれ示している。   FIG. 19 shows an example of the configuration of the connection management table held by the first relay device 500 in the second embodiment of the present invention, and FIG. 20 shows the second relay in the second embodiment of the present invention. Each state of the connection management table held by the device 600 is shown.

ここで、第1の端末装置100と第2の端末装置200との間では既に、3つのコネクションCa(A1, P1a, A2, P2a)、Cb(A1, P1b, A2, P2b)、Cc(A1, P1c, A2, P2c)が確立しているものとする。コネクションCaでは、第1の端末装置100側の送達確認済みシーケンス番号がX1a、及び第2の端末装置200側の送達確認済みシーケンス番号がX2a、となっているものとする。また、コネクションCbでは、第1の端末装置100側の送達確認済みシーケンス番号がX1b、及び第2の端末装置200側の送達確認済みシーケンス番号がX2b、となっているものとする。さらに、コネクションCbでは、第1の端末装置100側の送達確認済みシーケンス番号がX1c、及び第2の端末装置200側の送達確認済みシーケンス番号がX2c、となっているものとする。   Here, there are already three connections Ca (A1, P1a, A2, P2a), Cb (A1, P1b, A2, P2b), Cc (A1) between the first terminal device 100 and the second terminal device 200. , P1c, A2, P2c). In connection Ca, it is assumed that the delivery confirmed sequence number on the first terminal device 100 side is X1a, and the delivery confirmed sequence number on the second terminal device 200 side is X2a. In connection Cb, the delivery confirmed sequence number on the first terminal device 100 side is assumed to be X1b, and the delivery confirmed sequence number on the second terminal device 200 side is assumed to be X2b. Furthermore, in connection Cb, it is assumed that the delivery confirmed sequence number on the first terminal device 100 side is X1c, and the delivery confirmed sequence number on the second terminal device 200 side is X2c.

この場合、第1の中継装置500の保持するコネクション管理表への登録状況は図19に示す通りであり、第2の中継装置600の保持するコネクション管理表への登録状況は図20に示す通りとなる。   In this case, the registration status in the connection management table held by the first relay device 500 is as shown in FIG. 19, and the registration status in the connection management table held by the second relay device 600 is as shown in FIG. It becomes.

上記で述べた状況における、コネクション維持を行う場合の動作を、図18のシーケンス図を用いて以下で説明する。   The operation for maintaining the connection in the situation described above will be described below with reference to the sequence diagram of FIG.

まず、第1の中継装置500は、第2の中継装置600に割り当てられたIPアドレスR2に向けて、死活確認要求メッセージを送信する(S12-1)。   First, the first relay device 500 transmits a life / death confirmation request message to the IP address R2 assigned to the second relay device 600 (S12-1).

死活確認要求メッセージ(S12-1)を受け取った第2の中継装置600は、図20に示すコネクション管理表に登録されている全コネクションCa〜Ccの最終更新時刻を死活確認要求(S12-1)の受信時刻であるT(S12-1)に更新する(S12-2)。   The second relay device 600 that has received the alive confirmation request message (S12-1) sets the last update times of all the connections Ca to Cc registered in the connection management table shown in FIG. 20 to the alive confirmation request (S12-1). Is updated to T (S12-1) which is the reception time of (S12-2).

次に、第2の中継装置600は、第1の中継装置500に向けて死活確認応答メッセージを送信する(S12-3)。   Next, the second relay device 600 transmits a life / death confirmation response message to the first relay device 500 (S12-3).

死活確認応答メッセージ(S12-3)を受け取った第1の中継装置500は、図19に示すコネクション管理表に登録されている全コネクションの最終更新時刻を死活確認応答メッセージ(S12-3)の受信時刻であるT(S12-3)に更新する(S12-4)。   The first relay device 500 that has received the alive confirmation response message (S12-3) receives the alive confirmation response message (S12-3) with the last update times of all the connections registered in the connection management table shown in FIG. The time is updated to T (S12-3), which is the time (S12-4).

また、上述した死活確認手続きは、第2の中継装置600から開始することもある。この場合、第1の中継装置500と第2の中継装置600とは、S12-1〜S12-4で述べた動作が入れ替わる(S12-5〜S12-8)。   In addition, the life and death confirmation procedure described above may be started from the second relay device 600. In this case, the operations described in S12-1 to S12-4 are switched between the first relay device 500 and the second relay device 600 (S12-5 to S12-8).

図18では、S12-8以降、第1の中継装置500と第2の中継装置600が接続している無線ネットワーク1003の通信品質が悪化しており、死活確認要求メッセージが途中で消失しているとする。   In FIG. 18, after S12-8, the communication quality of the wireless network 1003 to which the first relay device 500 and the second relay device 600 are connected has deteriorated, and the alive confirmation request message has disappeared in the middle. And

第1の中継装置500は、最後に死活確認を行った時刻T(S12-5)から、予め設定されたKeepaliveタイムアウト1’を経過しても第2の中継装置600との間での死活確認がなされない場合、コネクション維持処理の実行を決定する(S12-9)。   The first relay device 500 confirms the life and death between the first relay device 500 and the second relay device 600 even after the preset keepalive timeout 1 'has elapsed since the time T (S12-5) when the life and death confirmation was last performed. If not, the execution of the connection maintenance process is determined (S12-9).

第1の中継装置500は、図19で登録されている全TCPコネクションCa〜Ccそれぞれに対してコネクション維持のためのTCPセグメント(Keepalive)を生成し、安定した回線側に位置する第1の端末装置100に向けて送出する(S12-10)。   The first relay device 500 generates a TCP segment (Keepalive) for maintaining the connection for each of all the TCP connections Ca to Cc registered in FIG. 19, and the first terminal located on the stable line side The data is sent to the device 100 (S12-10).

ここで、コネクションCaに対するTCPセグメント(Keepalive)のTCPヘッダでは、通常のTCPヘッダ各フィールドの設定に加えて、Sequence NumberフィールドにY1aの値が、Acknowledge Sequence NumberフィールドにはX1aの値が、確認フラグフィールドには「有効」を意味する値がそれぞれ格納される。また、コネクションCbに対するTCPセグメント(Keepalive)のTCPヘッダでは、通常のTCPヘッダ各フィールドの設定に加えて、Sequence NumberフィールドにY1bの値が、Acknowledge Sequence NumberフィールドにはX1bの値が、確認フラグフィールドには「有効」を意味する値がそれぞれ格納される。さらに、ネクションCcに対するTCPセグメント(Keepalive)のTCPヘッダでは、通常のTCPヘッダ各フィールドの設定に加えて、Sequence NumberフィールドにY1cの値が、Acknowledge Sequence NumberフィールドにはX1cの値が、確認フラグフィールドには「有効」を意味する値がそれぞれ格納される。   Here, in the TCP header of the TCP segment (Keepalive) for the connection Ca, in addition to the normal settings of each field of the TCP header, the value of Y1a in the Sequence Number field, the value of X1a in the Acknowledge Sequence Number field, Each field stores a value meaning “valid”. In addition, in the TCP header of the TCP segment (Keepalive) for connection Cb, in addition to the normal settings of each field of the TCP header, the value of Y1b in the Sequence Number field, the value of X1b in the Acknowledge Sequence Number field, and the confirmation flag field Each stores a value meaning “valid”. In addition, in the TCP header of the TCP segment (Keepalive) for the connection Cc, in addition to the normal settings of each field of the TCP header, the value of Y1c in the Sequence Number field, the value of X1c in the Acknowledge Sequence Number field, and the confirmation flag field Each stores a value meaning “valid”.

次に、TCPセグメント(Keepalive)を受け取った第1の中継装置100は、当該TCPセグメントがコネクション維持の通知であることを確認するとコネクションCa〜Ccそれぞれについて送達確認を通知するTCPセグメント(Keepalive-ack)を個別に送出する(S12-11)。   Next, when the first relay device 100 receiving the TCP segment (Keepalive) confirms that the TCP segment is a connection maintenance notification, the first relay device 100 notifies the delivery confirmation for each of the connections Ca to Cc (Keepalive-ack). ) Are sent individually (S12-11).

ここで、コネクションCaに対するTCPセグメント(Keepalive-ack)のTCPヘッダでは、通常のTCPヘッダ各フィールドの設定に加えて、Sequence NumberフィールドにX1aの値が、Acknowledge Sequence NumberフィールドにはY1aの値が、確認フラグフィールドには「有効」を意味する値がそれぞれ格納される。また、コネクションCbに対するTCPセグメント(Keepalive-ack)のTCPヘッダでは、通常のTCPヘッダ各フィールドの設定に加えて、Sequence NumberフィールドにX1bの値が、Acknowledge Sequence NumberフィールドにはY1bの値が、確認フラグフィールドには「有効」を意味する値がそれぞれ格納される。さらに、コネクションCcに対するTCPセグメント(Keepalive-ack)のTCPヘッダでは、通常のTCPヘッダ各フィールドの設定に加えて、Sequence NumberフィールドにX1cの値が、Acknowledge Sequence NumberフィールドにはY1cの値が、確認フラグフィールドには「有効」を意味する値がそれぞれ格納される。   Here, in the TCP header of the TCP segment (Keepalive-ack) for the connection Ca, in addition to the settings of the normal TCP header fields, the value of X1a in the Sequence Number field, the value of Y1a in the Acknowledge Sequence Number field, In the confirmation flag field, a value meaning “valid” is stored. In addition, in the TCP header of the TCP segment (Keepalive-ack) for connection Cb, in addition to the settings of the normal TCP header fields, the X1b value is confirmed in the Sequence Number field, and the Y1b value is confirmed in the Acknowledge Sequence Number field. Each flag field stores a value meaning “valid”. In addition, in the TCP header of the TCP segment (Keepalive-ack) for connection Cc, in addition to the settings of the normal TCP header fields, the X1c value is confirmed in the Sequence Number field, and the Y1c value is confirmed in the Acknowledge Sequence Number field. Each flag field stores a value meaning “valid”.

次に、各TCPセグメント(Keepalive-ack)を受け取った第1の中継装置500は、各TCPセグメントが自身から送信したTCPセグメント(Keepalive)S12-10に対する送達確認であると判断すると、当該TCPセグメントを終端し、図19に示す如く、コネクション管理表にある各コネクションの最終更新時刻をTCPセグメント(Keepalive-ack)S12-11の受信時刻であるT(S12-11)に更新する(S12-12)。   Next, when the first relay device 500 that has received each TCP segment (Keepalive-ack) determines that each TCP segment is a delivery confirmation for the TCP segment (Keepalive) S12-10 transmitted from itself, the first TCP segment (Keepalive-ack) As shown in FIG. 19, the last update time of each connection in the connection management table is updated to T (S12-11) which is the reception time of the TCP segment (Keepalive-ack) S12-11 (S12-12). ).

以降、「Keepaliveタイムアウト1’」期間中に第2の中継装置600との間の死活確認が検出されない場合には、第1の端末装置100との間のコネクション維持手続きを繰り返す。
以上の手順により、第1の中継装置500と第2の中継装置600との間の通信路品質が悪化した状態が長期間続いた場合でも、第1の端末装置100に対して、保持しているTCPコネクションCa(A1,P1a,A2,P2a)、Cb(A1,P1b,A2,P2b)、Cc(A1,P1c,A2,P2c)を確立した状態のまま維持し続けさせることが可能となる。
Thereafter, if the confirmation of life and death with the second relay device 600 is not detected during the “Keepalive timeout 1 ′” period, the procedure for maintaining the connection with the first terminal device 100 is repeated.
According to the above procedure, even when the state where the channel quality between the first relay device 500 and the second relay device 600 deteriorates continues for a long period of time, the first terminal device 100 holds it. TCP connections Ca (A1, P1a, A2, P2a), Cb (A1, P1b, A2, P2b), Cc (A1, P1c, A2, P2c) can be maintained and maintained. .

また、第2の中継装置600と第2の端末装置200との間においても、上述した第1の中継装置と第1の端末装置100との間で行われるコネクション維持手順と同様の動作を行うことで、第2の端末装置200に対して、保持しているTCPコネクションCa(A1,P1a,A2,P2a)、Cb(A1,P1b,A2,P2b)、Cc(A1,P1c,A2,P2c)を確立した状態のまま維持し続けさせることが可能となる。   In addition, the same operation as the connection maintenance procedure performed between the first relay device and the first terminal device 100 described above is performed between the second relay device 600 and the second terminal device 200. Thus, the TCP connection Ca (A1, P1a, A2, P2a), Cb (A1, P1b, A2, P2b), Cc (A1, P1c, A2, P2c) held for the second terminal device 200 ) Can be maintained in the established state.

なお、本発明の第1の実施の形態と同様に、第1の中継装置500が用いる「Keepaliveタイムアウト1’」の値と、第2の中継装置600が用いる「Keepaliveタイムアウト2’」の値は必ずしも一致している必要は無く、第1の中継装置500と第2の中継装置600それぞれが実行するコネクション維持手続きは、独立して動作する。   As in the first embodiment of the present invention, the value of “Keepalive timeout 1 ′” used by the first relay device 500 and the value of “Keepalive timeout 2 ′” used by the second relay device 600 are The connection maintaining procedures executed by each of the first relay device 500 and the second relay device 600 operate independently of each other.

以上に述べた通り、本発明の第2の実施例でも、無線ネットワーク1003の通信路品質が悪化した状況においても、第1の中継装置500が第1の端末装置100に対して、第2の中継装置の代理としてコネクション維持手続きを実施し、かつ第2の中継装置600が第1の中継装置500の代理として第2の端末装置200に対してコネクション維持手続きを実施することで、各端末装置のTCPモジュールはコネクションの破棄を行わなくなる。これにより、無線ネットワーク1003の通信路品質が改善した場合に、コネクション確立処理を実施する必要がなく、即座に応用データの送受信が再開することが可能となる。   As described above, even in the second embodiment of the present invention, even in a situation where the communication channel quality of the wireless network 1003 is deteriorated, the first relay device 500 is compared with the first terminal device 100 in the second state. Each terminal device is configured such that the connection maintenance procedure is performed on behalf of the relay device, and the second relay device 600 performs the connection maintenance procedure on the second terminal device 200 on behalf of the first relay device 500. The TCP module no longer discards the connection. Thereby, when the communication channel quality of the wireless network 1003 is improved, it is not necessary to perform connection establishment processing, and transmission / reception of application data can be immediately resumed.

また、本実施例では死活確認要求としてはICMP ECHOメッセージ、死活確認応答としてはICMP REPLYメッセージを利用しているが、必ずしもこれに限るものではない。   In this embodiment, the ICMP ECHO message is used as the life / death confirmation request and the ICMP REPLY message is used as the life / death confirmation response. However, the present invention is not limited to this.

このように、本発明によれば、途中経路に無線ネットワークのように通信品質の不安定な回線が存在するパケット通信システムで、予めコネクションを確立した上でデータ送受信を行う通信方式を用いる場合に、途中経路の通信品質が悪化してパケット送受信が不可能な状態になった場合でも、コネクションの切断を回避し、パケット通信システムの通信効率低下をおこさない。   As described above, according to the present invention, in a packet communication system in which there is a line with unstable communication quality such as a wireless network on a midway route, when a communication method for transmitting and receiving data after establishing a connection in advance is used. Even when the communication quality of the route on the way deteriorates and packet transmission / reception becomes impossible, disconnection of the connection is avoided and communication efficiency of the packet communication system is not reduced.

従来のパケット通信システムの一構成例を示すブロック図である。It is a block diagram which shows the example of 1 structure of the conventional packet communication system. 図1に示したパケット通信システムで送受信する情報の構成を示す図であり、各プロトコルヘッダの位置関係を示す図である。It is a figure which shows the structure of the information transmitted / received by the packet communication system shown in FIG. 1, and is a figure which shows the positional relationship of each protocol header. 図2に示したIPヘッダの構成を示す図である。FIG. 3 is a diagram illustrating a configuration of an IP header illustrated in FIG. 2. 図2に示したTCPヘッダの構成を示す図である。FIG. 3 is a diagram illustrating a configuration of a TCP header illustrated in FIG. 2. 図1に示したパケット通信システムで、コネクション維持の手順を示すシーケンス図である。FIG. 2 is a sequence diagram illustrating a connection maintenance procedure in the packet communication system illustrated in FIG. 1. 本発明のパケット通信システムの一構成例を示すブロック図である。It is a block diagram which shows the example of 1 structure of the packet communication system of this invention. 本発明のパケット通信システムの実施の形態を示す図であり、図6で示した第1のコネクション監視モジュールの構成を示すブロック図である。It is a figure which shows embodiment of the packet communication system of this invention, and is a block diagram which shows the structure of the 1st connection monitoring module shown in FIG. 本発明のパケット通信システムの実施の形態を示す図であり、第1のコネクション監視モジュール及び第2のコネクション監視モジュールそれぞれの記憶装置で有するコネクション管理テーブルの一構成例を示した図である。It is a figure which shows embodiment of the packet communication system of this invention, and is the figure which showed the example of 1 structure of the connection management table which each storage apparatus of a 1st connection monitoring module and a 2nd connection monitoring module has. 本発明のパケット通信システムの実施の形態を示す図であり、コネクション確立時の手順を示すシーケンス図である。It is a figure which shows embodiment of the packet communication system of this invention, and is a sequence diagram which shows the procedure at the time of connection establishment. 本発明のパケット通信システムの実施の形態を示す図であり、コネクション確立時の手順を示すシーケンス図である。It is a figure which shows embodiment of the packet communication system of this invention, and is a sequence diagram which shows the procedure at the time of connection establishment. 本発明のパケット通信システムの実施の形態を示す図であり、図9、10で示したコネクション確立動作時の手順において、第1のコネクション監視モジュールの記憶装置で有する管理テーブルの内部状態を示した図である。It is a figure which shows embodiment of the packet communication system of this invention, and showed the internal state of the management table which the memory | storage device of a 1st connection monitoring module has shown in the procedure at the time of the connection establishment operation | movement shown in FIG. FIG. 本発明のパケット通信システムの実施の形態を示す図であり、図9、10で示したコネクション確立動作時の手順において、第2のコネクション監視モジュールの記憶装置で有する管理テーブルの内部状態を示した図である。It is a figure which shows embodiment of the packet communication system of this invention, and showed the internal state of the management table which has in the memory | storage device of a 2nd connection monitoring module in the procedure at the time of the connection establishment operation | movement shown in FIG. FIG. 本発明のパケット通信システムの実施の形態を示す図であり、図9、10で示したコネクション確立動作時の手順が完了した時点において、第1のコネクション監視モジュールの記憶装置で有する管理テーブルの内部状態を示した図である。FIG. 11 is a diagram showing an embodiment of the packet communication system of the present invention, and shows the inside of the management table possessed by the storage device of the first connection monitoring module when the procedure at the time of the connection establishment operation shown in FIGS. It is the figure which showed the state. 本発明のパケット通信システムの実施の形態を示す図であり、図9、10で示したコネクション確立動作時の手順が完了した時点において、第2のコネクション監視モジュールの記憶装置で有する管理テーブルの内部状態を示した図である。FIG. 11 is a diagram showing an embodiment of the packet communication system of the present invention, and shows the inside of the management table held in the storage device of the second connection monitoring module when the procedure at the time of the connection establishment operation shown in FIGS. It is the figure which showed the state. 本発明のパケット通信システムの実施の形態を示す図であり、コネクション維持実行時の手順を示すシーケンス図である。It is a figure which shows embodiment of the packet communication system of this invention, and is a sequence diagram which shows the procedure at the time of connection maintenance execution. 本発明のパケット通信システムの実施の形態を示す図であり、図15で示したコネクション確立動作時の手順において、第1のコネクション監視モジュールの記憶装置で有する管理テーブルの内部状態を示した図である。FIG. 16 is a diagram showing an embodiment of the packet communication system of the present invention, and is a diagram showing an internal state of a management table included in the storage device of the first connection monitoring module in the procedure at the time of connection establishment shown in FIG. is there. 本発明のパケット通信システムの実施の形態を示す図であり、図15で示したコネクション確立動作時の手順において、第2のコネクション監視モジュールの記憶装置で有する管理テーブルの内部状態を示した図である。FIG. 16 is a diagram illustrating an embodiment of the packet communication system of the present invention, and is a diagram illustrating an internal state of a management table included in the storage device of the second connection monitoring module in the procedure at the time of connection establishment illustrated in FIG. 15. is there. 本発明のパケット通信システムの別の実施の形態を示す図であり、コネクション維持実行時の手順を示すシーケンス図である。It is a figure which shows another embodiment of the packet communication system of this invention, and is a sequence diagram which shows the procedure at the time of connection maintenance execution. 本発明のパケット通信システムの別の実施の形態を示す図であり、第1のコネクション監視モジュールの記憶装置で有するコネクション管理テーブルの一構成例を示した図である。It is a figure which shows another embodiment of the packet communication system of this invention, and is the figure which showed the example of 1 structure of the connection management table which has in the memory | storage device of a 1st connection monitoring module.

符号の説明Explanation of symbols

100 第1の端末装置
101 第1のプロセッサ
102 第1のTCPモジュール
103 第1のIPモジュール
104 第1のネットワークアクセスモジュール
200 第2の端末装置
201 第2のプロセッサ
202 第2のTCPモジュール
203 第2のIPモジュール
204 第2のネットワークアクセスモジュール
300 従来技術における第1の中継装置
301 第3のIPモジュール
302、505 第3のネットワークアクセスモジュール
303、506 第4のネットワークアクセスモジュール
400 従来技術における第2の中継装置
401 第4のIPモジュール
402、605 第5のネットワークアクセスモジュール
403、606 第6のネットワークアクセスモジュール
500 本発明のパケット通信システムにおける第1の中継装置
511 第1のコネクション監視モジュール
600 本発明のパケット通信システムにおける第2の中継装置
611 第2のコネクション監視モジュール
1001 第1の有線ネットワーク
1002 第2の有線ネットワーク
1003 無線ネットワーク
5111、6111 IP処理モジュール
5112、6112 セッション維持処理モジュール
5113、6113 入出力状況監視装置
5114、6114 記憶装置
100 first terminal device 101 first processor 102 first TCP module 103 first IP module 104 first network access module 200 second terminal device 201 second processor 202 second TCP module 203 second IP module 204 Second network access module 300 First relay device 301 in the prior art Third IP module 302, 505 Third network access module 303, 506 Fourth network access module 400 Second in the prior art Relay device 401 Fourth IP module 402, 605 Fifth network access module 403, 606 Sixth network access module 500 First relay device 511 in the packet communication system of the present invention First connector Monitoring module 600 Second relay device 611 in the packet communication system of the present invention Second connection monitoring module 1001 First wired network 1002 Second wired network 1003 Wireless networks 5111 and 6111 IP processing modules 5112 and 6112 Session maintenance processing Modules 5113 and 6113 Input / output status monitoring devices 5114 and 6114 Storage devices

Claims (8)

無線回線を含むネットワークで接続された第一の中継装置と第二の中継装置を介して、第一の中継装置に接続された第一の端末装置と第二の中継装置に接続された第二の端末装置がパケットデータを送受信する通信システムであって、
前記第一の中継装置は、
前記第一及び第二の端末装置のIPアドレスとポート番号との4つの組合せからなるコネクション情報と、前記コネクションに関するTCPセグメントを最後に中継した時刻とを記憶する手段と、
前記記憶した中継時刻と現在時刻との比較により、予め定められた期間以上前記コネクションに関するTCPセグメントの中継が行われていないことを検出する手段と、
前記第二の中継装置からのパケットを受信していないことを検出する手段と、
前記第二の中継装置からのパケットを受信していないことと、前記コネクションに関するTCPセグメントの中継が行われていないことを検出した際に、前記第一の端末装置に対してコネクション維持通知を送信する手段と
を備え、
前記第二の中継装置は、
前記第一及び第二の端末装置のIPアドレスとポート番号との4つの組合せからなるコネクション情報と、前記コネクションに関するTCPセグメントを最後に中継した時刻とを記憶する手段と、
前記記憶した中継時刻と現在時刻との比較により、予め定められた期間以上前記コネクションに関するTCPセグメントの中継が行われていないことを検出する手段と、
前記第一の中継装置からのパケットを受信していないことを検出する手段と、
前記第一の中継装置からのパケットを受信していないことと、前記コネクションに関するTCPセグメントの中継が行われていないことを検出した際に、前記第二の端末装置に対してコネクション維持通知を送信する手段と
を備えることを特徴とする通信システム。
A first terminal device connected to the first relay device and a second terminal connected to the second relay device via a first relay device and a second relay device connected by a network including a wireless line A communication system in which the terminal device transmits and receives packet data,
The first relay device is
Means for storing connection information comprising four combinations of IP addresses and port numbers of the first and second terminal devices, and a time when the TCP segment related to the connection was last relayed;
Means for detecting that the TCP segment is not relayed for the connection over a predetermined period by comparing the stored relay time with the current time;
Means for detecting that no packet is received from the second relay device;
A connection maintenance notification is transmitted to the first terminal device when it is detected that a packet from the second relay device has not been received and that a TCP segment related to the connection has not been relayed. And means for
The second relay device is
Means for storing connection information comprising four combinations of IP addresses and port numbers of the first and second terminal devices, and a time when the TCP segment related to the connection was last relayed;
Means for detecting that the TCP segment is not relayed for the connection over a predetermined period by comparing the stored relay time with the current time;
Means for detecting that no packet is received from the first relay device;
A connection maintenance notification is transmitted to the second terminal device when it is detected that a packet from the first relay device has not been received and that a TCP segment related to the connection has not been relayed. And a communication system.
無線回線を含むネットワークで接続された第一の中継装置と第二の中継装置とを介して、第一の中継装置に接続された第一の端末装置と第二の中継装置に接続された第二の端末装置とがパケットデータを送受信する通信システムであって、
前記第一の中継装置は、
前記第二の中継装置に対して死活監視用パケットを送信する手段と、
前記第二の中継装置からの死活監視用パケットの応答パケットを受信する手段と、
前記死活監視用パケットを送信してからの経過時間を測定する手段と、
前記測定の結果、予め定められた期間を経過しても前記死活監視用パケットに対する応答パケットを受信していない場合に、前記第一の端末装置に対してコネクション維持通知を送信する手段と
を備え、
前記第二の中継装置は、
前記第一の中継装置に対して死活監視用パケットを送信する手段と、
前記第一の中継装置からの死活監視用パケットの応答パケットを受信する手段と、
前記死活監視用パケットを送信してからの経過時間を測定する手段と、
前記測定の結果、予め定められた期間を経過した場合に、前記第二の端末装置に対してコネクション維持通知を送信する手段と
を備えることを特徴とする通信システム。
The first terminal device connected to the first relay device and the second relay device connected to the second relay device via the first relay device and the second relay device connected by a network including a wireless line A communication system in which packet data is transmitted and received between two terminal devices,
The first relay device is
Means for transmitting a life and death monitoring packet to the second relay device;
Means for receiving a response packet of the alive monitoring packet from the second relay device;
Means for measuring an elapsed time after transmitting the alive monitoring packet;
A means for transmitting a connection maintenance notification to the first terminal device when a response packet to the alive monitoring packet has not been received after a predetermined period of time as a result of the measurement; ,
The second relay device is
Means for transmitting a life and death monitoring packet to the first relay device;
Means for receiving a response packet of the alive monitoring packet from the first relay device;
Means for measuring an elapsed time after transmitting the alive monitoring packet;
A communication system comprising: means for transmitting a connection maintenance notification to the second terminal device when a predetermined period of time has passed as a result of the measurement.
無線回線を含むネットワークで接続された二つの中継装置を介して、端末装置間でパケットデータを送受信する通信システムにおける中継装置であって、
パケットデータを送受信する端末装置のIPアドレスとポート番号との4つの組合せからなるコネクション情報と、前記コネクションに関するTCPセグメントを最後に中継した時刻とを記憶する手段と、
前記記憶した中継時刻と現在時刻との比較により、予め定められた期間以上前記コネクションに関するTCPセグメントの中継が行われていないことを検出する手段と、
前記無線回線を含むネットワークで接続された他の中継装置からのパケットを受信していないことを検出する手段と、
前記無線回線を含むネットワークで接続された他の中継装置からのパケットを受信していないことと、前記コネクションに関するTCPセグメントの中継が行われていないことを検出した際に、接続されている端末装置に対してコネクション維持通知を送信する手段と
を備えることを特徴とする中継装置。
A relay device in a communication system that transmits and receives packet data between terminal devices via two relay devices connected by a network including a wireless line,
Means for storing connection information comprising four combinations of the IP address and port number of a terminal device for transmitting and receiving packet data, and the time when the TCP segment related to the connection was last relayed;
Means for detecting that the TCP segment is not relayed for the connection over a predetermined period by comparing the stored relay time with the current time;
Means for detecting that a packet is not received from another relay device connected by a network including the wireless line;
A terminal device connected when it is detected that a packet from another relay device connected by a network including the wireless line is not received and that a TCP segment related to the connection is not relayed. And a means for transmitting a connection maintenance notification to the relay device.
無線回線を含むネットワークで接続された二つの中継装置を介して、端末装置間でパケットデータを送受信する通信システムにおける中継装置であって、
前記無線回線を含むネットワークで接続された他の中継装置に対して死活監視用パケットを送信する手段と、
前記無線回線を含むネットワークで接続された他の中継装置からの死活監視用パケットの応答パケットを受信する手段と、
前記死活監視用パケットを送信してからの経過時間を測定する手段と、
前記測定の結果、予め定められた期間を経過しても前記死活監視用パケットに対する応答パケットを受信していない場合に、接続されている端末装置に対してコネクション維持通知を送信する手段と
を備えることを特徴とする中継装置。
A relay device in a communication system that transmits and receives packet data between terminal devices via two relay devices connected by a network including a wireless line,
Means for transmitting an alive monitoring packet to another relay apparatus connected by a network including the wireless line;
Means for receiving a response packet of the alive monitoring packet from another relay apparatus connected in a network including the wireless line;
Means for measuring an elapsed time after transmitting the alive monitoring packet;
A unit for transmitting a connection maintenance notification to a connected terminal device when a response packet to the alive monitoring packet has not been received after a predetermined period of time as a result of the measurement; A relay device characterized by that.
無線回線を含むネットワークで接続された第一の中継装置と第二の中継装置を介して、第一の中継装置に接続された第一の端末装置と第二の中継装置に接続された第二の端末装置がパケットデータを送受信する通信方法であって、
前記第一の中継装置と前記第二の中継装置とは、
前記第一及び第二の端末装置のIPアドレスとポート番号との4つの組合せからなるコネクション情報と、前記コネクションに関するTCPセグメントを最後に中継した時刻とを記憶し、
前記記憶した中継時刻と現在時刻との比較により、予め定められた期間以上前記コネクションに関するTCPセグメントの中継が行われていないことを検出し、
前記第一の中継装置は、
前記第二の中継装置からのパケットを受信していないことと、前記コネクションに関するTCPセグメントの中継が行われていないことを検出した際に、前記第一の端末装置に対してコネクション維持通知を送信し、
前記第二の中継装置は、
前記第一の中継装置からのパケットを受信していないことと、前記コネクションに関するTCPセグメントの中継が行われていないことを検出した際に、前記第二の端末装置に対してコネクション維持通知を送信する
ことを特徴とする通信方法。
A first terminal device connected to the first relay device and a second terminal connected to the second relay device via a first relay device and a second relay device connected by a network including a wireless line The terminal device is a communication method for transmitting and receiving packet data,
The first relay device and the second relay device are:
Storing connection information consisting of four combinations of IP addresses and port numbers of the first and second terminal devices, and the time when the TCP segment related to the connection was last relayed;
By comparing the stored relay time with the current time, it is detected that the TCP segment related to the connection has not been relayed for a predetermined period or longer,
The first relay device is
A connection maintenance notification is transmitted to the first terminal device when it is detected that a packet from the second relay device has not been received and that a TCP segment related to the connection has not been relayed. And
The second relay device is
A connection maintenance notification is transmitted to the second terminal device when it is detected that a packet from the first relay device has not been received and that a TCP segment related to the connection has not been relayed. A communication method characterized by:
無線回線を含むネットワークで接続された第一の中継装置と第二の中継装置とを介して、第一の中継装置に接続された第一の端末装置と第二の中継装置に接続された第二の端末装置とがパケットデータを送受信する通信方法であって、
前記第一の中継装置は、
前記第二の中継装置に対して死活監視用パケットを送信し、
前記第二の中継装置からの死活監視用パケットの応答パケットを受信し、
前記死活監視用パケットを送信してからの経過時間を測定し、
前記測定の結果、予め定められた期間を経過した場合に、前記第一の端末装置に対してコネクション維持通知を送信し、
前記第二の中継装置は、
前記第一の中継装置に対して死活監視用パケットを送信し、
前記第一の中継装置からの死活監視用パケットの応答パケットを受信し、
前記死活監視用パケットを送信してからの経過時間を測定し、
前記測定の結果、予め定められた期間を経過しても前記死活監視用パケットに対する応答パケットを受信していない場合に、前記第二の端末装置に対してコネクション維持通知を送信する
ことを特徴とする通信方法。
The first terminal device connected to the first relay device and the second relay device connected to the second relay device via the first relay device and the second relay device connected by a network including a wireless line A communication method in which packet data is transmitted and received between two terminal devices,
The first relay device is
Send a life and death monitoring packet to the second relay device,
Receiving a response packet of the alive monitoring packet from the second relay device;
Measure the elapsed time since sending the alive monitoring packet,
As a result of the measurement, when a predetermined period has elapsed, a connection maintenance notification is transmitted to the first terminal device,
The second relay device is
Send a life and death monitoring packet to the first relay device,
Receiving a response packet of the alive monitoring packet from the first relay device;
Measure the elapsed time since sending the alive monitoring packet,
As a result of the measurement, when a response packet for the alive monitoring packet has not been received even after a predetermined period has elapsed, a connection maintenance notification is transmitted to the second terminal device, Communication method.
無線回線を含むネットワークで接続された二つの中継装置を介して、端末装置間でパケットデータを送受信する通信システムにおける中継装置のプログラムであって、
パケットデータを送受信する端末装置のIPアドレスとポート番号との4つの組合せからなるコネクション情報と、前記コネクションに関するTCPセグメントを最後に中継した時刻とを記憶する処理と、
前記記憶した中継時刻と現在時刻との比較により、予め定められた期間以上前記コネクションに関するTCPセグメントの中継が行われていないことを検出する処理と、
前記無線回線を含むネットワークで接続された他の中継装置からのパケットを受信していないことを検出する処理と、
前記無線回線を含むネットワークで接続された他の中継装置からのパケットを受信していないことと、前記コネクションに関するTCPセグメントの中継が行われていないことを検出した際に、接続されている端末装置に対してコネクション維持通知を送信する処理と
を中継装置に実行させることを特徴とする中継装置のプログラム。
A relay device program in a communication system for transmitting and receiving packet data between terminal devices via two relay devices connected by a network including a wireless line,
Processing for storing connection information consisting of four combinations of the IP address and port number of the terminal device that transmits and receives packet data, and the time when the TCP segment related to the connection was last relayed;
A process of detecting that the TCP segment related to the connection is not relayed over a predetermined period by comparing the stored relay time with the current time;
A process of detecting that a packet from another relay apparatus connected by a network including the wireless line is not received;
A terminal device connected when it is detected that a packet from another relay device connected by a network including the wireless line is not received and that a TCP segment related to the connection is not relayed. A program for a relay apparatus, which causes the relay apparatus to execute processing for transmitting a connection maintenance notification to the relay apparatus.
無線回線を含むネットワークで接続された二つの中継装置を介して、端末装置間でパケットデータを送受信する通信システムにおける中継装置のプログラムであって、
前記無線回線を含むネットワークで接続された他の中継装置に対して死活監視用パケットを送信する処理と、
前記無線回線を含むネットワークで接続された他の中継装置からの死活監視用パケットの応答パケットを受信する処理と、
前記死活監視用パケットを送信してからの経過時間を測定する手段と、
前記測定の結果、予め定められた期間を経過しても前記死活監視用パケットに対する応答パケットを受信していない場合に、接続されている端末装置に対してコネクション維持通知を送信する処理と
を中継装置に実行させることを特徴とする中継装置のプログラム。
A relay device program in a communication system for transmitting and receiving packet data between terminal devices via two relay devices connected by a network including a wireless line,
A process of transmitting a life / death monitoring packet to another relay apparatus connected by a network including the wireless line;
A process of receiving a response packet of the alive monitoring packet from another relay apparatus connected by a network including the wireless line;
Means for measuring an elapsed time after transmitting the alive monitoring packet;
As a result of the measurement, when a response packet for the alive monitoring packet has not been received even after a predetermined period of time has elapsed, a process of transmitting a connection maintenance notification to the connected terminal device is relayed A relay device program that is executed by a device.
JP2006250370A 2006-09-15 2006-09-15 Relay device, relay method, and relay program Expired - Fee Related JP4666173B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006250370A JP4666173B2 (en) 2006-09-15 2006-09-15 Relay device, relay method, and relay program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006250370A JP4666173B2 (en) 2006-09-15 2006-09-15 Relay device, relay method, and relay program

Publications (2)

Publication Number Publication Date
JP2008072552A JP2008072552A (en) 2008-03-27
JP4666173B2 true JP4666173B2 (en) 2011-04-06

Family

ID=39293720

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006250370A Expired - Fee Related JP4666173B2 (en) 2006-09-15 2006-09-15 Relay device, relay method, and relay program

Country Status (1)

Country Link
JP (1) JP4666173B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010200300A (en) * 2009-01-28 2010-09-09 Meidensha Corp Tcp communication scheme
JP5363658B1 (en) * 2012-02-28 2013-12-11 アラクサラネットワークス株式会社 RELAY DEVICE, RELAY DEVICE CONTROL METHOD, AND NETWORK SYSTEM
JP2013232710A (en) * 2012-04-27 2013-11-14 Silex Technology Inc Access point capable of efficient data transfer and radio slave unit

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001217898A (en) * 2000-02-02 2001-08-10 Nec Corp Connection controller, connection control method, recording medium recording connection control program and data communication system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001217898A (en) * 2000-02-02 2001-08-10 Nec Corp Connection controller, connection control method, recording medium recording connection control program and data communication system

Also Published As

Publication number Publication date
JP2008072552A (en) 2008-03-27

Similar Documents

Publication Publication Date Title
EP3520267B1 (en) Router with bilateral tcp session monitoring
CN104025525B (en) For sending the method and apparatus and exchange apparatus of packet
Lindgren et al. Probabilistic routing protocol for intermittently connected networks
US9577791B2 (en) Notification by network element of packet drops
EP3633932A1 (en) Multipath data transmission processing method, and network device
US7653075B2 (en) Processing communication flows in asymmetrically routed networks
US8260935B2 (en) Error control terminal discovery and updating
KR101263783B1 (en) System and method for data transmission using relay server
US10530644B2 (en) Techniques for establishing a communication connection between two network entities via different network flows
Barré Implementation and assessment of modern host-based multipath solutions.
US9647982B2 (en) Peer tunneling for real-time communications
CN110944323A (en) Method for managing handover roaming
JP2007201564A (en) Estimate system, terminal, estimate method, and program
JP3999785B2 (en) Communication method
JP4666173B2 (en) Relay device, relay method, and relay program
US7286546B2 (en) Method and system for providing reliable and fast communications with mobile entities
CN110381007B (en) TCP acceleration method and device
CN115883478B (en) Safe and efficient transmission control method and system in multi-identification network system
Seggelmann Sctp: Strategies to secure end-to-end communication
Cisco General Statistics
JP4926113B2 (en) Mobile router ad hoc network communication system
So-In et al. PETS: persistent TCP using simple freeze
US20230269308A1 (en) Communication system, communication method, relay server and program
US20240244124A1 (en) Input state synchronization for border gateway protocol (bgp) processes
KR20100026721A (en) Apparatus and method for providing network interface information in stream control transmission protocol

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080919

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100712

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100721

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100909

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101006

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101201

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

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

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

Free format text: PAYMENT UNTIL: 20140121

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4666173

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees