JP2006279867A - Adsl communication apparatus, program and method - Google Patents

Adsl communication apparatus, program and method Download PDF

Info

Publication number
JP2006279867A
JP2006279867A JP2005099768A JP2005099768A JP2006279867A JP 2006279867 A JP2006279867 A JP 2006279867A JP 2005099768 A JP2005099768 A JP 2005099768A JP 2005099768 A JP2005099768 A JP 2005099768A JP 2006279867 A JP2006279867 A JP 2006279867A
Authority
JP
Japan
Prior art keywords
ack
packet
transmission queue
flag
newly input
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2005099768A
Other languages
Japanese (ja)
Inventor
Hiromasa Suzuki
宏昌 鈴木
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 Platforms Ltd
Original Assignee
NEC AccessTechnica Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC AccessTechnica Ltd filed Critical NEC AccessTechnica Ltd
Priority to JP2005099768A priority Critical patent/JP2006279867A/en
Publication of JP2006279867A publication Critical patent/JP2006279867A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To prevent up link transmission delay of TCP/IP communication caused by an ADSL line and to also surely transmit data upwardly. <P>SOLUTION: An ACK rewrite processing section 27 scans a transmission queue 22 and searches for an ACK in which a transmission source IP address, a destination IP address, a transmission source port number and a destination port number coincide with those of an ACK delivered from an ACK monitoring section 26 and if such a matching ACK packet is not found out, the delivered ACK is linked to the tail of the transmission queue 22 as it is. If the matching ACK packet is found out and it is an ACK packet to which datagram are attached, its ACK flag is changed into "0", for example, and the ACK is linked to the tail of the transmission queue 22. If it is an ACK packet to which datagram are not attached, on the other hand, its ACK number is rewritten into an ACK number of the ACK packet delivered from the ACK monitoring section 26. <P>COPYRIGHT: (C)2007,JPO&INPIT

Description

本発明は、ADSL通信装置、プログラム及び方法に関し、特に、UDP/IPを包含するTCP/IP通信において、ADSL回線の上り方向のACK転送の遅延に起因してADSL回線下り方向の通信速度から期待されるADSL回線下り方向のデータ転送効率が悪化することを防止することを可能としたADSL通信装置、プログラム及び方法に関する。   The present invention relates to an ADSL communication apparatus, program, and method, and in particular, in TCP / IP communication including UDP / IP, expectation from the communication speed in the downstream direction of the ADSL line due to the delay in the ACK transfer in the upstream direction of the ADSL line. The present invention relates to an ADSL communication apparatus, program, and method capable of preventing deterioration of data transfer efficiency in the downstream direction of the ADSL line.

ADSL回線では、下り方向の通信を行うために使用する周波数帯域と上り方向の通信に使用する周波数帯域が異なる。   In the ADSL line, the frequency band used for downstream communication and the frequency band used for upstream communication are different.

図5は、一般的に用いられるADSLルータの運用構成を示すブロック図である。ADSLルータ201は、LAN(LAN9自体は、上り方向、下り方向とも、例えば100Mbps)ポートを介してLAN端末101が接続される一方、ADSL回線10(例えば、下り方向40Mbps、上り方向1Mbps)を介してインターネット等の外部ネットワークに接続され、その外部ネットワークに属するサーバ401とLAN端末101との間のTCP/IP通信を中継する機能を有する。   FIG. 5 is a block diagram showing an operational configuration of a commonly used ADSL router. The ADSL router 201 is connected to the LAN terminal 101 via a LAN (LAN 9 itself is, for example, 100 Mbps in both upstream and downstream directions), while being connected via an ADSL line 10 (for example, 40 Mbps in the downstream direction and 1 Mbps in the upstream direction). Connected to an external network such as the Internet, and has a function of relaying TCP / IP communication between the server 401 and the LAN terminal 101 belonging to the external network.

図6は、従来のADSLルータ2におけるTCP/IP通信の動作例を示すシーケンスチャートである。この説明においてLAN端末101はデータパケット4つ分のウィンドウサイズをTCP接続時にサーバ401に通知してあるものとする。ここに、ウィンドウサイズは、LAN端末101からのACK(受信確認)を受け取ることなく、サーバ401が連続して送信することができるデータパケット数である。   FIG. 6 is a sequence chart showing an operation example of TCP / IP communication in the conventional ADSL router 2. In this description, it is assumed that the LAN terminal 101 has notified the server 401 of the window size for four data packets at the time of TCP connection. Here, the window size is the number of data packets that the server 401 can continuously transmit without receiving an ACK (acknowledgment) from the LAN terminal 101.

この図6において、サーバ401からのデータパケット1,2,3,……,7が、順次ADSLルータ201に到着し、ADSLルータ201はそれらをLAN端末1に転送する。LAN端末101は受け取ったデータパケット1,2,3,……,7に対するACK(確認応答)パケットを順次ADSLルータ201に送信し、ADSLルータ201は受け取ったACK(確認応答)パケット1,2,3,……,7をサーバ401に向けて送信する。サーバ401からは送信データ1、送信データ2、送信データ3、送信データ4まで送信したところでウィンドウサイズの制限により一旦送信を停止し、LAN端末101からのACK(確認応答)を待つ。ACK1がサーバ401に到着するとサーバ401はデータパケットを更に1つ送信できることになりデータパケット5を送信する。   In FIG. 6, data packets 1, 2, 3,..., 7 from the server 401 arrive at the ADSL router 201 sequentially, and the ADSL router 201 transfers them to the LAN terminal 1. The LAN terminal 101 sequentially transmits ACK (acknowledgement) packets for the received data packets 1, 2, 3,..., 7 to the ADSL router 201. The ADSL router 201 receives the received ACK (acknowledgement) packets 1, 2,. 3,..., 7 are transmitted to the server 401. When transmission data 1, transmission data 2, transmission data 3, and transmission data 4 are transmitted from the server 401, the transmission is temporarily stopped due to the window size limitation, and an ACK (acknowledgment response) from the LAN terminal 101 is awaited. When ACK1 arrives at the server 401, the server 401 can transmit one more data packet and transmits the data packet 5.

ADSLルータ201は、ACK1の送信が完了した時点で、LAN端末1からACK1,2,3までを受け取っており、順番通りACK2をサーバ401に向けて送信する。サーバ401はACK2を受け取ってからデータパケット6を送信する。同様にしてADSLルータ201はACK2の送信が完了してからACK3を送信し、ACK3を受けてからサーバ401は送信データ7を送信することになる。   When the transmission of ACK1 is completed, the ADSL router 201 receives ACK1, 2, 3 from the LAN terminal 1, and transmits ACK2 to the server 401 in order. The server 401 transmits the data packet 6 after receiving ACK2. Similarly, ADSL router 201 transmits ACK3 after transmission of ACK2 is completed, and server 401 transmits transmission data 7 after receiving ACK3.

以上説明したように従来のADSLルータ201の動作においては、ACK1をADSL回線に送信完了した時点でLAN端末101からはACK3を受け取っており、LAN端末101としてはデータパケット7まで受け取れる状態にもかかわらずサーバ401はACK2を受け取って送信データ6だけを送信する状態になる。   As described above, in the operation of the conventional ADSL router 201, ACK3 is received from the LAN terminal 101 when ACK1 is completely transmitted to the ADSL line, and the LAN terminal 101 can receive up to the data packet 7. First, the server 401 receives ACK2 and transmits only the transmission data 6.

以降、サーバ401はACKを待ってからデータパケットを送出する状態になるため、データパケット送出に間(時間間隔)が開いてしまい、ADSL回線の下り方向の通信速度から期待されるデータ転送速度を得ることができない、とい不都合が生じていた。   Thereafter, since the server 401 waits for an ACK before sending a data packet, there is an interval (time interval) for sending the data packet, and the data transfer rate expected from the downlink communication speed of the ADSL line is set. There was an inconvenience that it could not be obtained.

ここで、ADSL回線は下り方向の通信を行うために使用する周波数帯域と上り方向の通信に使用する周波数帯域が異なる接続方式であり、下り方向の通信速度に比較して上り方向の通信速度が極端に低い状態で接続が確立する場合がある。すなわち、下り方向の通信速度が上り方向の通信速度を極端に上回っている場合、TCP通信において下り方向のTCPデータパケットに対する上り方向のACK(確認応答)パケットの送出が追いつかずTCPのウィンドウサイズによりサーバからのTCPデータ送信に一時停止がかかる場合があり、TCP/IP通信効率が低下する場合がある。   Here, the ADSL line is a connection method in which the frequency band used for downlink communication and the frequency band used for uplink communication are different, and the uplink communication speed is higher than the downlink communication speed. Connections may be established in extremely low conditions. That is, when the downlink communication speed is extremely higher than the uplink communication speed, the transmission of the uplink ACK (acknowledgment) packet for the TCP data packet in the downlink cannot catch up with the TCP window size in the TCP communication. TCP data transmission from the server may be temporarily stopped, and TCP / IP communication efficiency may be reduced.

そこで、例えば、特許文献1に開示された「TCPネットワーク内のデータ端末」においては、ACK待ち行列(バッファ)を備えたデータ端末(LAN端末)において、ACK待ち行列の輻湊(満杯)が処理される。具体的には、ACK待ち行列が輻湊(満杯)しても、輻湊(満杯)となった以降の新しいACKパケットを破棄することなく、待ち行列中の最も古いACKパケットを廃棄して、輻湊(満杯)後の最新のACKパケットを待ち行列に格納する。   Therefore, for example, in the “data terminal in the TCP network” disclosed in Patent Document 1, congestion (fullness) of the ACK queue is processed in the data terminal (LAN terminal) provided with the ACK queue (buffer). The Specifically, even if the ACK queue is congested (full), the oldest ACK packet in the queue is discarded without discarding new ACK packets after becoming congested (full), and the congestion ( The latest ACK packet after full) is stored in the queue.

又、特許文献2に開示された「データ通信方法及びデータ通信網」においては、ACKバッファ(待ち行列)を備えた受信先(LAN端末)からデータ送信先(サーバ)へ送信するACKパケットを廃棄され難くする。具体的には、優先的にACKバッファを送信する高優先バッファと、優先度を低くしてACKバッファを送信する低優先バッファを備え、高優先バッファの容量を大きくする。優先度のX被害は、パケットのTOS(type of service)フィールド又はIPv6のラベルフィールド等に優先度を示す値を設定する。   Further, in the “data communication method and data communication network” disclosed in Patent Document 2, an ACK packet transmitted from a reception destination (LAN terminal) having an ACK buffer (queue) to a data transmission destination (server) is discarded. It is hard to be done. Specifically, a high-priority buffer that preferentially transmits an ACK buffer and a low-priority buffer that transmits an ACK buffer with a lower priority are provided, and the capacity of the high-priority buffer is increased. For the X damage of the priority, a value indicating the priority is set in the TOS (type of service) field of the packet or the label field of IPv6.

更に、特許文献3に開示された「TCP/IP通信中継装置およびTCP/IP通信の中継方法」においては、無線端末が、無線基地局とインターネットを介してサーバからデータを受信するシステムのデータ転送遅延を防止する。ここで、データ転送遅延は、無線基地局出の無線信号変復調処理や誤り訂正処理などによって生じるものである。ACK(確認応答)は、TCP/IPのようなコネクション型通信において無線端末がサーバに送り返す応答信号であり、このシステムは、ADSLを前提とするものではない。本システムにおけるデータ転送遅延の防止は、無線端末が送信するACK(確認応答)の内容を、無線基地局が適合的に変更することによって行なわれる。具体的には、無線基地局は、無線端末からのACK番号を確認し、サーバからの送信済み番号を確認し、差分(送信済み番号からACK番号を減算した結果)を取得し、当該差分が示すデータ量を、無線端末からのACK内のデータ要求量に加算する。また、ACK番号を送信済み番号に変更したACKをサーバに送信してもよい。これにより、無線端末が要求する転送レートで、サーバからデータパケットを送信することができる。   Furthermore, in the “TCP / IP communication relay device and TCP / IP communication relay method” disclosed in Patent Document 3, the data transfer of a system in which a wireless terminal receives data from a server via a wireless base station and the Internet Prevent delays. Here, the data transfer delay is caused by radio signal modulation / demodulation processing or error correction processing output from the radio base station. ACK (acknowledgment response) is a response signal sent back to the server by the wireless terminal in connection-type communication such as TCP / IP, and this system is not based on ADSL. Prevention of data transfer delay in this system is performed by the radio base station appropriately changing the contents of ACK (acknowledgment response) transmitted by the radio terminal. Specifically, the radio base station confirms the ACK number from the radio terminal, confirms the transmitted number from the server, acquires a difference (a result obtained by subtracting the ACK number from the transmitted number), The indicated data amount is added to the data request amount in the ACK from the wireless terminal. Moreover, you may transmit ACK which changed the ACK number into the transmitted number to a server. As a result, the data packet can be transmitted from the server at the transfer rate requested by the wireless terminal.

特開平10−126446号公報(図4、段落0042)JP-A-10-126446 (FIG. 4, paragraph 0042) 特開2001−127830号公報(図5、段落0015)JP 2001-127830 A (FIG. 5, paragraph 0015) 特開2003−78550号公報(図2、段落0027)JP 2003-78550 A (FIG. 2, paragraph 0027)

ところで、TCP/IPはコネクション型プロトコルであり、通信開始の前にコネクション確立処理を行なわなければならない。これに対して、IPの上位プトコルであるUDP(user datagram protocol)
は、コネクションレス型通信プロトコルであり、コネクションの設定・維持が不要であるため、データが確実に相手に届くという保証はないが、動画や音声のライブ再生のための高速データ転送に適する。
By the way, TCP / IP is a connection-type protocol, and connection establishment processing must be performed before starting communication. On the other hand, UDP (user datagram protocol), which is the upper protocol of IP
Is a connectionless communication protocol and does not require connection setting / maintenance, so there is no guarantee that the data will surely reach the other party, but it is suitable for high-speed data transfer for live playback of moving images and audio.

尚、TCP/IPは、UDP/IPを包含するプロトコルである。UDP/IPのデータグラムは、コネクション確立を行なわず、通信経路をダイナミックに設定して宛先に届けられる方式のものである。従って、ACKパケットがデータグラムを付帯している場合は、ACKパケットは廃棄されてはならない。   TCP / IP is a protocol that includes UDP / IP. The UDP / IP datagram is a system in which a communication path is dynamically set and delivered to a destination without establishing a connection. Therefore, if an ACK packet accompanies a datagram, the ACK packet must not be discarded.

しかしながら、特許文献1〜3では、ACKパケットはデータグラムを付帯するか否かにかかわらず廃棄される可能性がある。   However, in Patent Documents 1 to 3, an ACK packet may be discarded regardless of whether or not a datagram is attached.

そこで、本発明では、ADSL回線によるTCP/IP通信の上り方向伝送遅延を防止すると共に、データグラムも確実に上り方向に送信し得るADSL通信装置、プログラム及び方法を提供することを、その目的とする。   Therefore, the present invention has an object to provide an ADSL communication apparatus, program, and method capable of preventing an upstream transmission delay of TCP / IP communication through an ADSL line and reliably transmitting a datagram in the upstream direction. To do.

本発明では、通信速度の遅いADSL回線の上り方向に送信されようとするACK(確認応答)パケットを検出し、当該ACK(確認応答)パケットと同じ接続で古いACK番号を持ったACK(確認応答)パケットが送信待機している場合には、その待機パケットの送信を取りやめて送信キューから廃棄し、最新のACK番号を持つACK(確認応答)パケットを送信キューに入力し送信する。これにより、複数パケットで伝達しようとしていたACK応答を集約してサーバに伝達するようにし、サーバ側がACK応答待ちでウィンドウサイズ制限により送信を一時停止する頻度を下げ、これによってTCP/IP通信の効率を向上させるようにした点に特徴を備えている。尚、ACK(確認応答)パケットと同じ接続で古いACK番号を持ったACK(確認応答)パケットがデータグラムを付帯して送信待機している場合には、その待機パケットは送信キューにて保持しつづけられるようになっている。   In the present invention, an ACK (acknowledgment) packet to be transmitted in the upstream direction of an ADSL line having a low communication speed is detected, and an ACK (acknowledgment response) having an old ACK number with the same connection as the ACK (acknowledgment) packet. When a packet is waiting to be transmitted, the transmission of the standby packet is canceled and discarded from the transmission queue, and an ACK (acknowledgment) packet having the latest ACK number is input to the transmission queue and transmitted. As a result, the ACK responses to be transmitted in a plurality of packets are aggregated and transmitted to the server, and the frequency at which the server side pauses transmission due to the window size limitation while waiting for the ACK response is reduced, thereby improving the efficiency of TCP / IP communication. It has a feature in that it is improved. If an ACK (acknowledgment) packet with the same ACK (acknowledgment) packet and having an old ACK number is waiting for transmission with a datagram attached, the waiting packet is held in the transmission queue. It has been continued.

具体的には、本発明では、クライアント端末とサーバとを接続するADSL通信装置において、前述したクライアント端末から新たに入力されるACKを監視するACK監視部と、前記ACKを変更するACK変更部と、前記ACKを格納する送信キューとを備えている。そして、前述したACK変更部が、前述したACK監視部によって新たに入力されたUDP信号がTCPパケットを付帯すると判定した場合に作動し前述した送信キューに既に格納されている同一宛先へのACKを廃棄して新たに入力されたTCPーUDPパケットを前述した送信キューの最後尾に格納するTCP−UDP格納機能を備えている、という構成とした(請求項1)。   Specifically, in the present invention, in an ADSL communication apparatus that connects a client terminal and a server, an ACK monitoring unit that monitors ACK newly input from the client terminal described above, an ACK change unit that changes the ACK, And a transmission queue for storing the ACK. Then, when the ACK changing unit described above determines that the UDP signal newly input by the ACK monitoring unit described above is attached to the TCP packet, the ACK changing unit operates to send an ACK to the same destination already stored in the transmission queue described above. A TCP-UDP storage function for storing a TCP-UDP packet newly discarded and stored at the end of the transmission queue is provided (claim 1).

これにより、ACK応答を待って送信を停止している時間が削減され、TCP/IP通信の効率を向上させることができる。   Thereby, the time during which transmission is stopped after waiting for an ACK response is reduced, and the efficiency of TCP / IP communication can be improved.

又、本発明では、クライアント端末とサーバとを接続するADSL通信装置において、クライアント端末から新たに入力されるACKを監視するACK監視部と、前記ACKを変更するACK変更部と、前記ACKを格納する送信キューとを備えている。そして、前述したACK変更部が、新たに入力されたACKがTCPパケットを付帯するとACK監視部によって判定された場合に作動し前述した送信キューに既に格納されている同一宛先へのACKを廃棄して新たに入力されたパケットのACKフラグを「1」としたままこれを前記送信キューの最後尾に格納するTCP−ACK格納機能と、ACK監視部が新たに入力されたUDP信号がTCPパケットを付帯するとACK監視部によって判定した場合に作動し新たに入力されたパケットのACKフラグを「0」に変更して前述した送信キューの最後尾に格納するTCP−UDP格納機能とを備えた構成とした(請求項2)。   According to the present invention, in the ADSL communication apparatus that connects the client terminal and the server, an ACK monitoring unit that monitors an ACK newly input from the client terminal, an ACK changing unit that changes the ACK, and the ACK are stored. And a transmission queue. Then, the ACK changing unit described above operates when it is determined by the ACK monitoring unit that a newly input ACK is attached to the TCP packet, and discards the ACK to the same destination already stored in the transmission queue described above. A TCP-ACK storage function for storing the ACK flag of the newly input packet at the end of the transmission queue with the ACK flag set to “1”, and a UDP signal newly input by the ACK monitoring unit A TCP-UDP storage function that operates when it is determined by the ACK monitoring unit when attached and changes the ACK flag of a newly input packet to “0” and stores it at the end of the transmission queue described above; (Claim 2).

これにより、ACK応答を待って送信を停止している時間が有効に削減され、TCP/IP通信の効率を確実に向上させることができる。   Thus, the time during which transmission is stopped after waiting for an ACK response is effectively reduced, and the efficiency of TCP / IP communication can be reliably improved.

ここで、前述したACK変更部は、前記ACKフラグが「1」でないときに作動して新たに入力されたACKを前記送信キューの最後尾に格納する機能を備え、ACK監視部は、前記ACKフラグが「1」であるときに作動して当該ACKがUDPパケットを付帯するか否かを判定する機能を備え、又前記ACK変更部は、ACKがUDPパケットを付帯しないと判定された場合に作動して前記送信キューの最後尾に既に格納されている同じ宛先へのACKを廃棄すると共に、新たに入力されたACKフラグを「1」としたままこれを送信キューの最後尾に格納する機能を有し、更に前記ACK変更部は、前記パケットがUDPパケットを付帯すると判定された場合に作動し、ACKフラグを「0」に変更してこれを前記送信キューの最後尾に格納する機能を備え、前記送信キューは、前記パケットを前記サーバに順次送信する機能を備えるように構成してもよい(請求項3)。   Here, the ACK changing unit described above operates when the ACK flag is not “1” and has a function of storing a newly input ACK at the end of the transmission queue, and the ACK monitoring unit includes the ACK monitoring unit. A function that operates when the flag is “1” to determine whether or not the ACK is accompanied by a UDP packet, and the ACK changing unit is configured to determine that the ACK does not accompany a UDP packet. A function to operate and discard the ACK to the same destination already stored at the end of the transmission queue, and store this at the end of the transmission queue with the newly input ACK flag being set to “1” And the ACK changing unit operates when it is determined that the packet is accompanied by a UDP packet, changes the ACK flag to “0”, and changes this to the end of the transmission queue. A function of storing, the transmit queue may be configured to include a function of sequentially transmits the packet to the server (claim 3).

この場合、前述したクライアント端末をLANに接続されたLAN端末とし、前述したADSL通信装置を当該LANに接続されたADSLルータとしてもよい(請求項4)。又、前述したクライアント端末をスタンドアロン端末とし、ADSL通信装置をADSLモデムとしてもよい(請求項5)。   In this case, the client terminal described above may be a LAN terminal connected to the LAN, and the ADSL communication apparatus described above may be an ADSL router connected to the LAN. The client terminal described above may be a stand-alone terminal, and the ADSL communication apparatus may be an ADSL modem.

又、本発明では、ADSL通信プログラムとして、以下に示す構成を採用した。即ち、クライアント端末とサーバとを接続してADSL通信を行うために、コンピュータに、クライアント端末から新たに入力されたACKを監視するACK監視部としての機能を、ACKを変更するACK変更部としての機能を、ACKを格納する送信キューとしての機能を、それぞれ実現させ、更に、前述したACK変更部が、新たに入力されたACKがTCPパケットを付帯すると判定された場合に作動して前記送信キューに既に格納されている同一宛先へのACKを廃棄して前記新たに入力されたパケットのACKフラグを”1”としたままこれを前記送信キューの最後尾に格納する機能を、前述したACK変更部が、新たに入力されたACKがUDPパケットを付帯する場合に作動して新たに入力されたACKフラグを”0”に変更してこれを前述した送信キューの最後尾に格納する機能を、それぞれ実現させるようにした(請求項6)。   In the present invention, the following configuration is adopted as the ADSL communication program. That is, in order to connect the client terminal and the server to perform ADSL communication, the computer has a function as an ACK monitoring unit that monitors ACK newly input from the client terminal as an ACK changing unit that changes ACK. And a function as a transmission queue for storing ACKs, respectively, and the ACK changing unit described above operates when it is determined that a newly input ACK is accompanied by a TCP packet. The ACK change function described above has the function of discarding the ACK to the same destination already stored in and storing it at the end of the transmission queue while keeping the ACK flag of the newly input packet at “1”. Operates when the newly input ACK is accompanied by a UDP packet and changes the newly input ACK flag to “0”. Was the ability to store it at the end of the transmission queue as described above, and so as to implement respectively (claim 6).

ここで、前述したコンピュータに、前述したACKフラグが「1」でないときは、前記ACK変更部が新たに入力されたACKを前述した送信キューの最後尾に格納する機能を、前述したACKフラグが「1」であるときは、前述したACK監視部が、前述したACKがUDPパケットを付帯するか否かを判定する機能を、それぞれ実現させるようにし、更に、前述したACKがUDPパケットを付帯しない場合は、前述したACK変更部が、前記送信キューの最後尾に既に格納されている同じ宛先へのACKを廃棄するとともに前記新たに入力されたACKフラグを「1」としたまま前記送信キューの最後尾に格納する機能を、又前述したパケットがUDPパケットを付帯する場合は、前述したACK変更部は、ACKフラグを「0」に変更して前述した送信キューの最後尾に格納する機能を、そして、前述した送信キューは、前述したパケットを前記サーバに順次送信する機能を、それぞれ実現させるように構成してもよい(請求項7)。   Here, when the above-described ACK flag is not “1” in the above-described computer, the ACK change unit has a function of storing the newly input ACK at the end of the above-described transmission queue. When “1”, the above-described ACK monitoring unit realizes the function of determining whether or not the above-described ACK is accompanied by a UDP packet, and further, the above-described ACK does not attach a UDP packet. In this case, the ACK changing unit described above discards the ACK to the same destination already stored at the end of the transmission queue and keeps the newly input ACK flag set to “1”. If the packet stored at the end or the above packet is accompanied by a UDP packet, the above ACK changing unit changes the ACK flag to “0”. Then, the above-described function of storing at the end of the transmission queue and the above-described transmission queue may be configured to realize the above-described function of sequentially transmitting the packets to the server. ).

更に、本発明のあっては、ADSL通信方法として、以下に示す構成を採用した。即ち、クライアント端末とサーバとを接続してADSL通信を行なうADSL通信方法において、新たに入力されたACKがTCPパケットを付帯するか否かを(ACK監視部が)判定するステップと、ACKがTCPパケットを付帯すると判定された場合に作動し(前記ACK変更部が)前記送信キューに既に格納されている同一宛先へのACKを廃棄して新たに入力されたパケットのACKフラグを「1」としたまま送信キューの最後尾に格納するステップと、新たに入力されたACKがUDPパケットを付帯するか否かを(ACK監視部が)判定するステップと、ACKがUDPパケットを付帯すると判定された場合作動し、(ACK変更部が)新たに入力されたACKフラグを「0」に変更して前記送信キューの最後尾に格納するステップとを備えていること(請求項8)。   Furthermore, in the present invention, the following configuration is adopted as the ADSL communication method. That is, in an ADSL communication method in which a client terminal and a server are connected to perform ADSL communication, a step (in which the ACK monitoring unit) determines whether or not a newly input ACK accompanies a TCP packet; It operates when it is determined that a packet is attached (the ACK changing unit) discards the ACK to the same destination already stored in the transmission queue and sets the ACK flag of the newly input packet to “1”. And storing at the end of the transmission queue as it is, determining whether or not the newly input ACK is accompanied by a UDP packet (by the ACK monitoring unit), and determining that the ACK is accompanied by a UDP packet The ACK flag is changed to “0” and stored at the end of the transmission queue. It and a-up (Claim 8).

ここで、前述したACKフラグが「1」でない場合に、前述したACK監視部が、新たに入力されたACKを前述した送信キューの最後尾に格納するステップと、前記ACKフラグが「1」である場合に、前述したACK監視部が、当該ACKがUDPパケットを付帯するか否かを判定するステップと、当該ACKがUDPパケットを付帯しない場合に作動し前記ACK変更部が、前述した送信キューの最後尾に既に格納されている同じ宛先へのACKを廃棄するとともに新たに入力されたACKフラグを「1」としたまま前記送信キューの最後尾に格納するステップと、前記パケットがUDPパケットを付帯する場合に作動し前記ACK変更部が、前記ACKフラグを「0」に変更して前記送信キューの最後尾に格納するステップとを備えた構成とし、前記送信キューは、前記パケットを前述したサーバに順次送信するステップとを含むようにした(請求項9)。   Here, when the above-described ACK flag is not “1”, the above-described ACK monitoring unit stores the newly input ACK at the end of the above-described transmission queue, and the ACK flag is “1”. In some cases, the ACK monitoring unit described above determines whether or not the ACK accompanies a UDP packet, and operates when the ACK does not accompany a UDP packet. Discarding the ACK to the same destination already stored at the end of the packet and storing it at the tail of the transmission queue with the newly input ACK flag set to “1”; And the ACK changing unit that operates when ancillary is included, and changes the ACK flag to “0” and stores it at the end of the transmission queue. Configuration and then, the transmission queue, and to include a step of sequentially transmits the packet to the server as described above (claim 9).

このようにしても、前述した各発明と同様にACK応答を待って送信を停止している時間が削減され、TCP/IP通信の効率を向上させることができる。   This also reduces the time during which transmission is stopped after waiting for an ACK response, as in the above-described inventions, and the efficiency of TCP / IP communication can be improved.

本発明によれば、ADSL回線によるTCP/IP通信の上り方向伝送遅延を有効に防止するとともに、データグラムも確実に上り方向に送信することができるという従来にない優れた効果を奏する。   According to the present invention, it is possible to effectively prevent an upstream transmission delay of TCP / IP communication through an ADSL line, and to achieve an excellent effect that can be reliably transmitted in the upstream direction.

以下、本発明の一実施例を図1乃至図4に基づいて説明する。この図1乃至図4に示す実施例では、ADSL回線に接続されインターネットとLANとの間の通信を中継するルータ装置において、従来より生じていたADSLの上り下り非対称の速度に起因するTCP/IP通信(UDP/IPを包含する)のデータ転送効率悪化を、有効に抑制するを可能としている。   An embodiment of the present invention will be described below with reference to FIGS. In the embodiment shown in FIG. 1 to FIG. 4, in a router device connected to an ADSL line and relaying communication between the Internet and a LAN, TCP / IP caused by the conventional asymmetrical speed of uplink / downlink of ADSL. It is possible to effectively suppress deterioration in data transfer efficiency of communication (including UDP / IP).

〔本実施形態のADSL通信装置〕
図1に、本実施形態のADSL通信装置(ADSLルータ)のブロック図を示す。
この図1において、ADSLルータ12は、LANポート(LAN9は、例えば、双方向とも100Mbps)を介してLAN端末11が接続される一方、ADSL回線10(例えば、下り回線40Mbps、上り回線1Mbps)を介してインターネット13等の外部ネットワークに接続され、その外部ネットワークに属するサーバ14とLAN端末11との間のTCP/IP通信(UDP/IP通信を包含する)を中継する。
[ADSL communication apparatus of this embodiment]
FIG. 1 shows a block diagram of an ADSL communication apparatus (ADSL router) of this embodiment.
In FIG. 1, an ADSL router 12 is connected to a LAN terminal 11 via a LAN port (LAN 9 is, for example, 100 Mbps for both directions), while an ADSL line 10 (for example, a downlink 40 Mbps, an uplink 1 Mbps). It is connected to an external network such as the Internet 13 via the network, and relays TCP / IP communication (including UDP / IP communication) between the server 14 belonging to the external network and the LAN terminal 11.

ここで、ADSLルータ12は、LAN端末から送出されるデータパケットがデ−タグラムであるか否かに応じてACKフラグを変更するものであり、このACKフラグの変更によってADSL回線によるTCP/IP通信の上り方向伝送遅延を防止すると共に、データグラムも確実に上り方向に送信する。   Here, the ADSL router 12 changes the ACK flag depending on whether or not the data packet transmitted from the LAN terminal is a datagram, and TCP / IP communication using the ADSL line is performed by changing the ACK flag. Thus, the datagram is also reliably transmitted in the upstream direction.

具体的には、ADSLルータ12は、LAN端末11との間のデータ送受信を制御するLAN送受信制御部21と、ADSL回線との間のデータ送受信を制御し且つADSL回線への送信パケットを一時保留する送信キュー22及びADSL回線の送信同期信号に沿ってデータを送信するADSL送信部23を内部に有するADSL送受信制御部24とを備えている。このADSLルータ12は、更に、LAN側とADSL側の間を行き来する双方向のデータパケットの方路を制御するルーティング制御部25と、ルーティング制御部25からADSL回線側に送信されるTCPのACKを監視するACK監視部26と、ACK監視部26の指示に従い送信キュー22内で待機しているACK(確認応答)パケットの内容を更新するACK変更部27とを備えた構成となっている。   Specifically, the ADSL router 12 controls data transmission / reception between the LAN transmission / reception control unit 21 that controls data transmission / reception with the LAN terminal 11 and the ADSL line, and temporarily holds a transmission packet to the ADSL line. And an ADSL transmission / reception control unit 24 having an ADSL transmission unit 23 for transmitting data along the transmission synchronization signal of the ADSL line. The ADSL router 12 further includes a routing control unit 25 that controls the direction of a bidirectional data packet that travels between the LAN side and the ADSL side, and a TCP ACK transmitted from the routing control unit 25 to the ADSL line side. And an ACK changing unit 27 that updates the contents of an ACK (acknowledgment) packet waiting in the transmission queue 22 in accordance with an instruction from the ACK monitoring unit 26.

このADSLルータ12は、前述したADSL送受信制御部24がADSL回線10からパケットを受信するとルーティング制御部25に渡す。ルーティング制御部25は渡されたパケットの宛先IPアドレスを参照して方路判断を行い、LAN側アドレス宛の場合にはLAN送受信制御部21に渡し、これを受けて前述したLAN送受信制御部21はLAN端末11に向けてパケットを送出する。   When the ADSL transmission / reception control unit 24 receives a packet from the ADSL line 10, the ADSL router 12 passes the packet to the routing control unit 25. The routing control unit 25 makes a route determination with reference to the destination IP address of the passed packet, and when it is addressed to the LAN side address, it passes it to the LAN transmission / reception control unit 21 and receives it, and receives the LAN transmission / reception control unit 21 described above. Sends a packet to the LAN terminal 11.

一方、LAN端末11から送信されたパケットをLAN送受信制御部21で受け取りルーティング制御部25に渡す。ルーティング制御部25は渡されたパケットの宛先IPアドレスを参照して方路判断を行い、インターネット13等の外部ネットワーク宛のパケットである場合はACK監視部26に渡す。ACK監視部26は渡されたパケットがACK(確認応答)パケットであるかを検査する。ここでACK(確認応答)パケットとはヘッダのみでペイロードを持たずACKフラグが1になったパケットを指す。   On the other hand, a packet transmitted from the LAN terminal 11 is received by the LAN transmission / reception control unit 21 and passed to the routing control unit 25. The routing control unit 25 makes a route determination with reference to the destination IP address of the passed packet, and passes the packet to the ACK monitoring unit 26 if the packet is addressed to an external network such as the Internet 13. The ACK monitoring unit 26 checks whether the passed packet is an ACK (acknowledgment) packet. Here, the ACK (acknowledgment response) packet refers to a packet having only a header and no payload and having an ACK flag set to 1.

ACK監視部26に渡されたパケットがACK(確認応答)パケットでない場合、ACK監視部26は当該パケットを送信キュー22に連結する。このACK(確認応答)の処理については、以下、ACK(確認応答)パケットにデータグラムを付帯しない場合と付帯する場合、に分けて説明する。   If the packet passed to the ACK monitoring unit 26 is not an ACK (acknowledgment) packet, the ACK monitoring unit 26 connects the packet to the transmission queue 22. This ACK (acknowledgment response) process will be described separately for cases where a datagram is not attached to an ACK (acknowledgement) packet and cases where the datagram is attached.

〔データグラムを付帯しないACKを処理する場合〕
前述した ACK監視部26に渡されたパケットが、データグラムを付帯しないACK(確認応答)パケットであった場合、当該パケットは、ACK変更部27に渡す。ACK変更部27は送信キュー22を走査して、渡された当該ACK(確認応答)パケットと送信元IPアドレス,宛先IPアドレス,送信元TCPポート番号,および宛先TCPポート番号が一致するACK(確認応答)パケットを探し、一致するACK(確認応答)パケットが発見された場合はそのACK(確認応答)パケットを送信キュー22から引き取って廃棄し、代わりにACK監視部26から渡されたACK(確認応答)パケットを送信キュー22の最後尾に連結する。言い換えると、一致するACKパケットが発見された場合は、そのACKパケットのACK番号をACK監視部5から渡されたACKパケットのACK番号に書き換えるようにする。同時に、この場合に必要となるTCPチェックサムの再計算も行うようにする。そして、送信キュー22に連結されたパケットは、ADSL送信部23に取り出され順次ADSL回線10に向けて送信される。
[When processing an ACK without a datagram]
When the packet delivered to the ACK monitoring unit 26 described above is an ACK (acknowledgment) packet not accompanied by a datagram, the packet is delivered to the ACK changing unit 27. The ACK changing unit 27 scans the transmission queue 22, and the received ACK (acknowledgment response) packet matches the source IP address, destination IP address, source TCP port number, and destination TCP port number ACK (confirmation). Response) packet is searched, and if a matching ACK (acknowledgment) packet is found, the ACK (acknowledgment) packet is taken out of the transmission queue 22 and discarded, and ACK (acknowledgment) passed from the ACK monitoring unit 26 instead. Response) The packet is linked to the end of the transmission queue 22. In other words, when a matching ACK packet is found, the ACK number of the ACK packet is rewritten to the ACK number of the ACK packet passed from the ACK monitoring unit 5. At the same time, the TCP checksum necessary in this case is also recalculated. The packets connected to the transmission queue 22 are taken out by the ADSL transmission unit 23 and sequentially transmitted toward the ADSL line 10.

図2に、データグラムを付帯しない(TCPパケットを付帯する)ACKを処理するシーケンスチャートを示す。ここで、LAN端末11はパケット4つ分のウィンドウサイズをTCP接続時にサーバ14に通知してあるものとする。   FIG. 2 shows a sequence chart for processing an ACK not accompanying a datagram (attaching a TCP packet). Here, it is assumed that the LAN terminal 11 notifies the server 14 of the window size for four packets at the time of TCP connection.

サーバ14からの送信データ1,2,3,……,9が順次ADSLルータ12に到着し、ADSLルータ12はそれらをLAN端末11に転送する。LAN端末11は受け取ったデータパケット1,2,3,……,9に対するACKパケット1,2,3,……,7を順次ADSLルータ12に送信し、ADSLルータ12は受け取ったACKパケットをサーバ14に向けて送信する。サーバ14からは送信データ1,送信データ2,送信データ3,送信データ4まで送信したところで、ウィンドウサイズの制限により一旦送信を停止し、LAN端末11からのACKパケットによりウィンドウサイズが更新されるのを待つ。ACK1が到着するとサーバ14は1パケットを更に送信できることになり送信データ5を送信する。   Transmission data 1, 2, 3,..., 9 from the server 14 arrives at the ADSL router 12 sequentially, and the ADSL router 12 transfers them to the LAN terminal 11. The LAN terminal 11 sequentially transmits ACK packets 1, 2, 3,..., 7 for the received data packets 1, 2, 3,..., 9 to the ADSL router 12, and the ADSL router 12 transmits the received ACK packets to the server. 14 is transmitted. When transmission data 1, transmission data 2, transmission data 3, and transmission data 4 are transmitted from the server 14, the transmission is temporarily stopped due to the window size limitation, and the window size is updated by the ACK packet from the LAN terminal 11. Wait for. When ACK1 arrives, the server 14 can further transmit one packet and transmits transmission data 5.

ADSLルータ12では、ACK1が送信完了する間にACK2とACK3を受け取っている。しかしながら、本実施形態では、ACK3到着時にACK2は廃棄されているため、ACK1の次に、ACK3をサーバ14に転送することになる。サーバ14はACK3を受けたことにより、送信データ5と送信データ6を送信できるようになる。ACK3を送信完了する時点でADSLルータ12はACK5までを受け取っているので、次にACK5をサーバ14に渡すことになる。   The ADSL router 12 receives ACK2 and ACK3 while ACK1 is completely transmitted. However, in this embodiment, since ACK2 is discarded when ACK3 arrives, ACK3 is transferred to server 14 after ACK1. The server 14 can transmit the transmission data 5 and the transmission data 6 by receiving ACK3. Since the ADSL router 12 has received up to ACK 5 when transmission of ACK 3 is completed, ACK 5 is then passed to the server 14.

ADSLルータ12がLAN端末11からACK1,ACK2,ACK3,ACK4,ACK5を受け取った時刻をそれぞれt1,t2,t3,t4,t5とし、各時刻でのACK変更部27の動作と送信キュー22の状態とADSL送信部23の状態を図3に示す表にまとめた。   The times when the ADSL router 12 receives ACK1, ACK2, ACK3, ACK4, and ACK5 from the LAN terminal 11 are t1, t2, t3, t4, and t5, respectively, and the operation of the ACK changing unit 27 and the state of the transmission queue 22 at each time And the state of the ADSL transmitter 23 are summarized in the table shown in FIG.

時刻t1において、ACK変更部27はACK1を送信キュー22へ移転し、送信キュー22はACK1をADSL送信部23に移転して自らは空になり、ADSL送信部23はACK1の送信を開始する。次に、時刻t2において、ACK変更部27はACK2を送信キュー22へ移転してACK2を待機させる一方、ADSL送信部23はACK1を送信している最中である。次に、時刻t3において、ACK変更部27はACK2を廃棄してACK3を送信キュー22へ移転するため、送信キュー22においてACK3が待機中となる一方、ADSL送信部23はACK1を送信している最中である。   At time t1, the ACK changing unit 27 transfers ACK1 to the transmission queue 22, the transmission queue 22 transfers ACK1 to the ADSL transmission unit 23 and becomes empty, and the ADSL transmission unit 23 starts transmitting ACK1. Next, at time t2, the ACK changing unit 27 transfers ACK2 to the transmission queue 22 and waits for ACK2, while the ADSL transmitting unit 23 is transmitting ACK1. Next, at time t3, the ACK changing unit 27 discards ACK2 and transfers ACK3 to the transmission queue 22, so that ACK3 is waiting in the transmission queue 22, while the ADSL transmission unit 23 is transmitting ACK1. In the middle.

次に、時刻t4において、ACK変更部27はACK4を送信キュー22へ移転するため、送信キュー22においてACK4が待機中となる一方、ADSL送信部23はACK1の送信を完了しACL3を送信中である。   Next, at time t4, the ACK changing unit 27 transfers ACK4 to the transmission queue 22, so that ACK4 is waiting in the transmission queue 22, while the ADSL transmission unit 23 completes transmission of ACK1 and is transmitting ACL3. is there.

そして、次に、時刻t5において、ACK変更部27はACK4を廃棄してACK5を送信キュー22へ移転するため、送信キュー22においてACK5が待機中となる一方、ADSL送信部23はACK3を送信している最中である。このように、時刻t3及びt5において、古いACK(確認応答)が廃棄される。   Then, at time t5, the ACK changing unit 27 discards ACK4 and transfers ACK5 to the transmission queue 22, so that ACK5 is waiting in the transmission queue 22, while the ADSL transmission unit 23 transmits ACK3. Is in the middle of Thus, at time t3 and t5, the old ACK (acknowledgment response) is discarded.

以上の動作により、複数のACKパケットがADSL回線の上り方向の送信待ちをしているような場合にACK番号通知を縮退させて一括通知することにより、送信元がACK応答を待って送信を停止している時間を削減し、TCP/IP通信の効率を向上させることができる。   By the above operation, when a plurality of ACK packets are waiting for transmission in the uplink direction of the ADSL line, the transmission source waits for an ACK response and stops transmission by degenerating the ACK number notification in a batch. Time can be reduced and the efficiency of TCP / IP communication can be improved.

以上説明したように、データグラムを付帯しないACKを処理する場合において、ADSL回線10を介して接続されたサーバ4がACK応答を待って送信を停止している時間を削減することにより、TCP/IP通信の効率を改善することができる。また、通信速度の低いADSL回線10の上り方向の通信帯域を通るACKを削減しているので、その送信帯域を他の通信の送信に利用することが可能になる。   As described above, when processing an ACK not accompanied by a datagram, the server 4 connected via the ADSL line 10 reduces the time during which the server 4 waits for an ACK response and stops transmission, thereby reducing TCP / The efficiency of IP communication can be improved. In addition, since ACK passing through the upstream communication band of the ADSL line 10 having a low communication speed is reduced, the transmission band can be used for transmission of other communications.

〔データグラム(UDPパケット)を付帯するACKを処理する場合〕
ACK監視部26では、データグラムを持ったACKも検出の対象とされる。ACK監視部26でACKを検出した場合はACK書き換え処理部27に渡す。ACK書き換え処理部27は送信キュー22を走査して渡されたACKと送信元IPアドレスおよび宛先IPアドレスおよび送信元ポート番号および宛先ポート番号が一致するACKを探し、一致するACKパケットが発見されなかった場合は、そのまま送信キュー22の最後尾に連結する。
[When processing an ACK accompanying a datagram (UDP packet)]
The ACK monitoring unit 26 also detects ACKs having datagrams. When ACK is detected by the ACK monitoring unit 26, the ACK is rewritten to the ACK rewrite processing unit 27. The ACK rewrite processing unit 27 scans the transmission queue 22 for an ACK that matches the source IP address, the destination IP address, the source port number, and the destination port number, and no matching ACK packet is found. If it is, it is connected to the tail of the transmission queue 22 as it is.

一方、一致するACKパケットが発見された場合は、送信キュー22の最後尾に既に格納されたパケットを廃棄することなく、新たにACK監視部26から渡されたACKフラグを非表示に下げ(「1」から「0」に変更し)、チェックサムの再計算を行って送信キュー22の最後尾に連結する。   On the other hand, if a matching ACK packet is found, the packet already stored at the end of the transmission queue 22 is not discarded, and the ACK flag newly passed from the ACK monitoring unit 26 is lowered (“ 1 ”is changed to“ 0 ”), and the checksum is recalculated and connected to the tail of the transmission queue 22.

このように、データグラムを付帯するACKを廃棄せず、確実にサーバ14へ送出することにより、サーバ14からデータグラムを確実にLAN端末11に送信することができる。   Thus, the datagram can be reliably transmitted from the server 14 to the LAN terminal 11 by reliably sending the ACK accompanying the datagram to the server 14 without discarding it.

〔本実施形態におけるADSL通信プログラム〕
本実施形態におけるADSL通信プログラムは、クライアント端末11とサーバ14とを接続するためにコンピュータを、上記クライアントから新たに入力されたパケットのACKフラグが「1」であるか否かを監視するACK監視部として機能させ、上記ACKフラグを変更するACK変更部として機能させ、及び、上記パケットを格納する送信キューとして機能させ、上記ACKフラグが「1」でないときは上記ACK変更部として上記パケットを上記送信キューの最後尾に格納するように機能させる。
[ADSL communication program in this embodiment]
The ADSL communication program according to this embodiment monitors the computer for connecting the client terminal 11 and the server 14 and monitors whether or not the ACK flag of the packet newly input from the client is “1”. Function as an ACK change unit for changing the ACK flag, and function as a transmission queue for storing the packet. When the ACK flag is not “1”, the packet is used as the ACK change unit. Function to store at the end of the transmission queue.

更に、このADSL通信プログラムは、コンピュータを、上記ACKフラグが「1」であるときは、上記ACK監視部として上記パケットがデータグラムを付帯するか否かを判定するように機能させ、上記パケットがデータグラムを付帯しない(TCPパケットを付帯する)ときは、上記ACK変更部として、上記送信キューの最後尾に既に格納されているACKを廃棄するとともに上記新たに入力されたACKパケットのフラグ「1」を上記送信キューの最後尾に格納するように機能させ、上記パケットがデータグラムを付帯する(UDPパケットを付帯する)ときは、上記ACK変更部として、上記ACKフラグを「0」に変更して上記送信キューの最後尾に格納するように機能させ、更に上記送信キューとして、上記ACKパケットを順次上記サーバに送信するように機能させることによって実現させている。   Further, the ADSL communication program causes the computer to function as the ACK monitoring unit to determine whether or not the packet is accompanied by a datagram when the ACK flag is “1”. When the datagram is not attached (attached to the TCP packet), the ACK changing unit discards the ACK already stored at the tail end of the transmission queue and also sets the flag “1” of the newly input ACK packet. ”Is stored at the end of the transmission queue, and when the packet accompanies a datagram (attaches a UDP packet), the ACK changing unit changes the ACK flag to“ 0 ”. Function to store at the end of the transmission queue, and further, the ACK packet as the transmission queue. And it is realized by function to transmit to the next said server.

これにより、ACK応答を待って送信を停止している時間が削減され、TCP/IP通信の効率を向上させることができる。   Thereby, the time during which transmission is stopped after waiting for an ACK response is reduced, and the efficiency of TCP / IP communication can be improved.

〔本実施形態におけるADSL通信方法〕
本実施形態におけるADSL通信方法は、クライアント端末とサーバとを接続してADSL通信を行なうADSL通信方法において、新たに入力されたACKがTCPパケットを付帯するか否かをACK監視部26が判定するステップと、ACKがTCPパケットを付帯すると判定された場合に作動し前記ACK変更部27が、前記送信キューに既に格納されている同一宛先へのACKを廃棄して前記新たに入力されたパケットのACKフラグを「1」としたまま送信キューの最後尾に格納するステップと、新たに入力されたACKがUDPパケットを付帯するか否かをACK監視部26が判定するステップと、ACKがUDPパケットを付帯すると判定された場合作動し、ACK変更部27が前記新たに入力されたACKフラグを「0」に変更して前記送信キュー22の最後尾に格納するステップとを備えている。
[ADSL communication method in this embodiment]
The ADSL communication method according to this embodiment is an ADSL communication method in which a client terminal and a server are connected to perform ADSL communication. The ACK monitoring unit 26 determines whether or not a newly input ACK is accompanied by a TCP packet. And when the ACK is determined to accompany the TCP packet, the ACK changing unit 27 discards the ACK to the same destination already stored in the transmission queue and the newly input packet The step of storing the ACK flag at the end of the transmission queue while keeping the flag “1”, the step of the ACK monitoring unit 26 determining whether or not the newly input ACK is accompanied by the UDP packet, and the ACK is the UDP packet The ACK changing unit 27 sets the newly input ACK flag to “0”. Additional to and a step of storing at the end of the transmission queue 22.

更に、本実施形態では、このADSL通信方法において、前述したACKフラグが「1」でない場合に、前述したACK監視部26が、前記新たに入力されたACKを前記送信キュー22の最後尾に格納するステップと、ACKフラグが「1」である場合に、前述したACK監視部26が、UDPパケットを前記ACKが付帯するか否かを判定するステップと、前記ACKがUDPパケットを付帯しない場合に、前述したACK変更部27が、前記送信キュー22の最後尾に既に格納されている同じ宛先へのACKを廃棄するとともに前記新たに入力されたACKフラグを「1」としたまま前記送信キュー22の最後尾に格納するステップと、前記パケットがUDPパケットを付帯する場合に、前記ACK変更部27が前記ACKフラグを「0」に変更して前記送信キュー22の最後尾に格納するステップとを備え、前述した送信キューは、前記パケットを前述したサーバ14に順次送信するステップとを含むようにした。   Further, in the present embodiment, in the ADSL communication method, when the ACK flag is not “1”, the ACK monitoring unit 26 stores the newly input ACK at the end of the transmission queue 22. And when the ACK flag is “1”, the ACK monitoring unit 26 determines whether or not the ACK accompanies the UDP packet, and when the ACK does not accompany the UDP packet. The ACK changing unit 27 discards the ACK to the same destination already stored at the end of the transmission queue 22 and keeps the newly input ACK flag set to “1”. And the ACK changing unit 27 sets the ACK flag to “when the packet is accompanied by a UDP packet”. And a step of storing by changing the end of the transmission queue 22 to the "transmit queue described above were to include a step of sequentially transmits the packet to the server 14 described above.

図4に、本実施形態におけるADSL通信方法を具体的に実行するためのフローチャートを示す。この図4にあって、まず、ステップS1において、LAN端末11からADSLルータ12へ新たにACKパケットが入力される。次に、ステップS2において、新たに入力されたACKパケットのACKフラグは「1」であるか否かが判断される。   FIG. 4 shows a flowchart for specifically executing the ADSL communication method in the present embodiment. In FIG. 4, first, in step S <b> 1, an ACK packet is newly input from the LAN terminal 11 to the ADSL router 12. Next, in step S2, it is determined whether or not the ACK flag of the newly input ACK packet is “1”.

ステップS2において、新パケットのACKフラグは「1」ではないと判断されればステップS6に進み、新たに入力されたACKパケットを送信キュー22に格納する。一方、ステップS2において、新たに入力されたACKパケットのACKフラグは「1」であると判断されれば、ステップS3に進み、ACKはデータグラムを付帯する(UDPパケットを付帯する)か否かが判定される。   If it is determined in step S 2 that the ACK flag of the new packet is not “1”, the process proceeds to step S 6, and the newly input ACK packet is stored in the transmission queue 22. On the other hand, if it is determined in step S2 that the ACK flag of the newly input ACK packet is “1”, the process proceeds to step S3, and whether or not the ACK is accompanied by a datagram (attached UDP packet). Is determined.

ステップS3において、ACKはデータグラムを付帯しないと判定されれば、S17に進み、送信キュー22の最後尾のACKを廃棄し、続いてステップS7に進み、前述したステップS1で新たに入力されたACKを送信キュー22の最後尾に格納する。ステップS7に続いて、後述するステップS8へ進む。   If it is determined in step S3 that the ACK does not accompany the datagram, the process proceeds to S17, the last ACK in the transmission queue 22 is discarded, and then the process proceeds to step S7, where it is newly input in step S1 described above. ACK is stored at the end of the transmission queue 22. Subsequent to step S7, the process proceeds to step S8 described later.

一方、ステップS3において、ACKはデータグラムを付帯すると判定されれば、ステップS4に進み、前述したステップS1で新たに入力されたACKフラグを「0」に変更し、続いてステップS6に進み、新たに入力されたACKパケットを送信キュー22の最後尾に格納する。ステップS6に続いて、後述するステップS8へ進む。そして、ステップS8では、送信キュー中のACKパケットをサーバ14へ順次送信する。   On the other hand, if it is determined in step S3 that the ACK is accompanied by a datagram, the process proceeds to step S4, the ACK flag newly input in step S1 described above is changed to “0”, and then the process proceeds to step S6. The newly input ACK packet is stored at the end of the transmission queue 22. Subsequent to step S6, the process proceeds to step S8 described later. In step S8, the ACK packets in the transmission queue are sequentially transmitted to the server 14.

これにより、複数パケットで伝達しようとしていたACK応答を集約してサーバに伝達するようにし、サーバ側がACK応答待ちでウィンドウサイズ制限により送信を一時停止する頻度を下げ、これによってTCP/IP通信の効率を向上させるようにした点に特徴を備えている。   As a result, the ACK responses to be transmitted in a plurality of packets are aggregated and transmitted to the server, and the frequency at which the server side pauses transmission due to the window size limitation while waiting for the ACK response is reduced, thereby improving the efficiency of TCP / IP communication. It has a feature in that it is improved.

〔他の実施形態〕
上記実施形態において、前述したLAN端末11に替えてスタンドアロン端末を使用し、ADSLルータに替えてADSLモデムを使用し、LAN送受信制御部21に替えてスタンドアロン端末送受信制御部を使用してもよい。このようにしても、その作用効果は前述した実施形態と同等のものを得ることができる。
Other Embodiment
In the above embodiment, a stand-alone terminal may be used instead of the LAN terminal 11 described above, an ADSL modem may be used instead of the ADSL router, and a stand-alone terminal transmission / reception control unit may be used instead of the LAN transmission / reception control unit 21. Even if it does in this way, the effect can obtain the thing equivalent to embodiment mentioned above.

本発明は、ADSL回線を使用するTCP/IP通信(UDP/IP通信を包含する)システムや、LANに接続されていないスタンドアロン端末をADSLモデムに接続するTCP/IP通信(UDP/IP通信を包含する)システムに利用することができる。   The present invention relates to a TCP / IP communication (including UDP / IP communication) system using an ADSL line, and a TCP / IP communication (including UDP / IP communication) for connecting a stand-alone terminal not connected to a LAN to an ADSL modem. Can be used in the system.

本発明の一実施形態を示すブロック図である。It is a block diagram which shows one Embodiment of this invention. 図1に示す実施形態において、データグラムを付帯しないACK〔確認応答)を処理する場合の例を示すシーケンスチャートである。2 is a sequence chart illustrating an example of processing an ACK [acknowledgment response] not accompanied by a datagram in the embodiment illustrated in FIG. 1. 図1に示す実施形態において、データグラムを付帯するACK(確認応答)を処理する場合のADSLルータの各部の状態を示す図表である。In the embodiment shown in FIG. 1, it is a table | surface which shows the state of each part of an ADSL router in the case of processing ACK (acknowledgment response) accompanying a datagram. 図1に示す実施形態におけるACK処理方法の内例を示すフローチャートである。It is a flowchart which shows the internal example of the ACK processing method in embodiment shown in FIG. 従来例におけるADSL通信システムを示すブロック図である。It is a block diagram which shows the ADSL communication system in a prior art example. 従来例におけるACK(確認応答)処理の例を示すシーケンスチャートである。It is a sequence chart which shows the example of the ACK (acknowledgment response) process in a prior art example.

符号の説明Explanation of symbols

9 LAN
10 ADSL回路
11 LAN端末
12 ADSLルータ
13 インターネット
14 サーバ
21 LAN送受信制御部
22 送信キュー
23 ADSL送信部
24 ADSL送受信制御部
25 ルーティング制御部
26 ACK監視部
27 ACKパケット変更部
9 LAN
DESCRIPTION OF SYMBOLS 10 ADSL circuit 11 LAN terminal 12 ADSL router 13 Internet 14 Server 21 LAN transmission / reception control part 22 Transmission queue 23 ADSL transmission part 24 ADSL transmission / reception control part 25 Routing control part 26 ACK monitoring part 27 ACK packet change part

Claims (9)

クライアント端末とサーバとを接続するADSL通信装置において、
前記クライアント端末から新たに入力されるACKを監視するACK監視部と、前記ACKを変更するACK変更部と、前記ACKを格納する送信キューとを備え、
前記ACK変更部が、前記ACK監視部によって新たに入力されたUDP信号がTCPパケットを付帯すると判定した場合に作動し前記送信キューに既に格納されている同一宛先へのACKを廃棄して前記新たに入力されたTCPーUDPパケットを前記送信キューの最後尾に格納するTCP−UDP格納機能を備えていることを特徴としたADSL通信装置。
In an ADSL communication apparatus that connects a client terminal and a server,
An ACK monitoring unit that monitors ACK newly input from the client terminal, an ACK changing unit that changes the ACK, and a transmission queue that stores the ACK,
The ACK changing unit operates when it is determined that a UDP signal newly input by the ACK monitoring unit is attached to a TCP packet, and discards an ACK to the same destination already stored in the transmission queue and A TCP / UDP storage function for storing a TCP-UDP packet input to the end of the transmission queue.
クライアント端末とサーバとを接続するADSL通信装置において、
前記クライアント端末から新たに入力されるACKを監視するACK監視部と、前記ACKを変更するACK変更部と、前記ACKを格納する送信キューとを備え、
前記ACK変更部が、新たに入力されたACKがTCPパケットを付帯すると前記ACK監視部によって判定された場合に作動し前記送信キューに既に格納されている同一宛先へのACKを廃棄して前記新たに入力されたパケットのACKフラグを”1”としたままこれを前記送信キューの最後尾に格納するTCP−ACK格納機能と、前記ACK監視部が新たに入力されたUDP信号がTCPパケットを付帯すると前記ACK監視部によって判定した場合に作動し前記新たに入力されたパケットのACKフラグを”0”に変更して前記送信キューの最後尾に格納するTCP−UDP格納機能とを備えていることを特徴としたADSL通信装置。
In an ADSL communication apparatus that connects a client terminal and a server,
An ACK monitoring unit that monitors ACK newly input from the client terminal, an ACK changing unit that changes the ACK, and a transmission queue that stores the ACK,
The ACK changing unit operates when it is determined by the ACK monitoring unit that a newly input ACK is attached to a TCP packet, discards an ACK to the same destination already stored in the transmission queue, and A TCP-ACK storage function that stores the ACK flag of the packet input to “1” at the end of the transmission queue with the ACK flag set to “1”, and a UDP signal newly input by the ACK monitoring unit is attached to the TCP packet. Then, it has a TCP-UDP storage function that operates when it is determined by the ACK monitoring unit and changes the ACK flag of the newly input packet to “0” and stores it at the end of the transmission queue. ADSL communication device characterized by the above.
前記請求項2記載のADSL通信装置において、
前記ACK変更部は、前記ACKフラグが「1」でないときに作動して前記新たに入力されたACKを前記送信キューの最後尾に格納する機能を備え、
前記ACK監視部は、前記ACKフラグが「1」であるときに作動して前記ACKがUDPパケットを付帯するか否かを判定する機能を備え、
前記ACK変更部は、前記ACKがUDPパケットを付帯しないと判定された場合に作動し、前記送信キューの最後尾に既に格納されている同じ宛先へのACKを廃棄すると共に、前記新たに入力されたACKフラグを「1」としたままこれを前記送信キューの最後尾に格納する機能を有し、
前記ACK変更部は、前記パケットがUDPパケットを付帯すると判定された場合に作動し、前記ACKフラグを「0」に変更してこれを前記送信キューの最後尾に格納する機能を備え、
前記送信キューは、前記パケットを前記サーバに順次送信する機能を備えていることを特徴としたADSL通信装置。
The ADSL communication apparatus according to claim 2, wherein
The ACK changing unit has a function of operating when the ACK flag is not “1” and storing the newly input ACK at the tail of the transmission queue,
The ACK monitoring unit has a function of operating when the ACK flag is “1” and determining whether the ACK is accompanied by a UDP packet;
The ACK changing unit operates when it is determined that the ACK does not accompany a UDP packet, discards the ACK to the same destination already stored at the end of the transmission queue, and is newly input. The ACK flag is set to “1” and stored at the end of the transmission queue.
The ACK changing unit operates when it is determined that the packet is accompanied by a UDP packet, and has a function of changing the ACK flag to “0” and storing this at the end of the transmission queue,
The ADSL communication apparatus, wherein the transmission queue has a function of sequentially transmitting the packets to the server.
前記クライアント端末はLANに接続されたLAN端末であり、
前記ADSL通信装置は前記LANに接続されたADSLルータであることを特徴とする請求項1,2又は3記載のADSL通信装置。
The client terminal is a LAN terminal connected to a LAN;
The ADSL communication apparatus according to claim 1, 2, or 3, wherein the ADSL communication apparatus is an ADSL router connected to the LAN.
前記クライアント端末はスタンドアロン端末であり、
前記ADSL通信装置は前記ADSLモデムであることを特徴とした請求項1,2又は3記載のADSL通信装置。
The client terminal is a stand-alone terminal;
The ADSL communication apparatus according to claim 1, wherein the ADSL communication apparatus is the ADSL modem.
クライアント端末とサーバとを接続してADSL通信を行うために、コンピュータに、前記クライアント端末から新たに入力されたACKを監視するACK監視部としての機能を、前記ACKを変更するACK変更部としての機能を、前記ACKを格納する送信キューとしての機能を、
前記ACK変更部が、新たに入力されたACKがTCPパケットを付帯すると判定された場合に作動して前記送信キューに既に格納されている同一宛先へのACKを廃棄して前記新たに入力されたパケットのACKフラグを「1」としたままこれを前記送信キューの最後尾に格納する機能を、
前記ACK変更部が、新たに入力されたACKがUDPパケットを付帯する場合に作動して前記新たに入力されたACKフラグを「0」に変更してこれを前記送信キューの最後尾に格納する機能を、
それぞれ実現させることを特徴としたADSL通信プログラム。
In order to perform ADSL communication by connecting a client terminal and a server, the computer has a function as an ACK monitoring unit that monitors an ACK newly input from the client terminal as an ACK changing unit that changes the ACK. A function as a transmission queue for storing the ACK,
The ACK changing unit operates when it is determined that a newly input ACK is associated with a TCP packet, discards an ACK to the same destination already stored in the transmission queue, and is newly input The function of storing this at the end of the transmission queue while keeping the ACK flag of the packet “1”,
The ACK changing unit operates when a newly input ACK is accompanied by a UDP packet, changes the newly input ACK flag to “0”, and stores this at the end of the transmission queue. Function,
ADSL communication program characterized by realizing each.
前記請求項6記載のADSL通信プログラムにおいて、
前記ACKフラグが「1」でないときは、前記ACK変更部が前記新たに入力されたACKを前記送信キューの最後尾に格納する機能を、
前記ACKフラグが「1」であるときは、前記ACK監視部が前記ACKがUDPパケットを付帯するか否かを判定する機能を、
前記ACKがUDPパケットを付帯しない場合は、前記ACK変更部は、前記送信キューの最後尾に既に格納されている同じ宛先へのACKを廃棄するとともに前記新たに入力されたACKフラグを「1」としたまま前記送信キューの最後尾に格納する機能を、
前記パケットがUDPパケットを付帯する場合は、前記ACK変更部は、前記ACKフラグを「0」に変更して前記送信キューの最後尾に格納する機能を、
前記送信キューは、前記パケットを前記サーバに順次送信する機能を、
それぞれコンピュータに実現させるようにしたことを特徴とするADSL通信プログラム。
In the ADSL communication program according to claim 6,
When the ACK flag is not “1”, the ACK changing unit stores the newly input ACK at the end of the transmission queue,
When the ACK flag is “1”, the ACK monitoring unit determines whether or not the ACK is accompanied by a UDP packet.
If the ACK does not accompany a UDP packet, the ACK changing unit discards the ACK to the same destination already stored at the end of the transmission queue and sets the newly input ACK flag to “1”. The function to store at the end of the transmission queue as it is,
When the packet accompanies a UDP packet, the ACK changing unit has a function of changing the ACK flag to “0” and storing it at the end of the transmission queue,
The transmission queue has a function of sequentially transmitting the packets to the server.
An ADSL communication program characterized by being realized by a computer.
クライアント端末とサーバとを接続してADSL通信を行なうADSL通信方法において、
新たに入力されたACKがTCPパケットを付帯するか否かを(ACK監視部が)判定するステップと、ACKがTCPパケットを付帯すると判定された場合に作動し(前記ACK変更部が、)前記送信キューに既に格納されている同一宛先へのACKを廃棄して前記新たに入力されたパケットのACKフラグを「1」としたまま送信キューの最後尾に格納するステップと、
新たに入力されたACKがUDPパケットを付帯するか否かを(ACK監視部が)判定するステップと、ACKがUDPパケットを付帯すると判定された場合作動し、(ACK変更部が)前記新たに入力されたACKフラグを「0」に変更して前記送信キューの最後尾に格納するステップとを備えていることを特徴としたADSL通信方法。
In an ADSL communication method for performing ADSL communication by connecting a client terminal and a server,
Determining whether or not the newly input ACK is accompanied by a TCP packet (by the ACK monitoring unit), and operating when it is determined that the ACK is accompanied by a TCP packet (the ACK changing unit) Discarding the ACK to the same destination already stored in the transmission queue and storing the ACK flag of the newly input packet at the end of the transmission queue with the ACK flag set to “1”;
A step of determining whether the newly input ACK is accompanied by a UDP packet (when the ACK monitoring unit) determines that the ACK is accompanied by a UDP packet; And a step of changing the inputted ACK flag to “0” and storing it at the end of the transmission queue.
前記請求項8記載のADSL通信方法において、
前記ACKフラグが「1」でない場合に、前記ACK監視部が、前記新たに入力されたACKを前記送信キューの最後尾に格納するステップと、
前記ACKフラグが「1」である場合に、前記ACK監視部が、前記ACKがUDPパケットを付帯するか否かを判定するステップと、
前記ACKがUDPパケットを付帯しない場合に、前記ACK変更部が、前記送信キューの最後尾に既に格納されている同じ宛先へのACKを廃棄するとともに前記新たに入力されたACKフラグを「1」としたまま前記送信キューの最後尾に格納するステップと、 前記パケットがUDPパケットを付帯する場合に、前記ACK変更部が、前記ACKフラグを「0」に変更して前記送信キューの最後尾に格納するステップと、
を備え、前記送信キューは、前記パケットを前記サーバに順次送信するステップとを含むことを特徴としたADSL通信方法。
The ADSL communication method according to claim 8, wherein
When the ACK flag is not “1”, the ACK monitoring unit stores the newly input ACK at the tail of the transmission queue;
When the ACK flag is “1”, the ACK monitoring unit determines whether the ACK is accompanied by a UDP packet;
When the ACK does not accompany a UDP packet, the ACK changing unit discards the ACK to the same destination already stored at the end of the transmission queue and sets the newly input ACK flag to “1”. And storing at the end of the transmission queue as it is, and when the packet accompanies a UDP packet, the ACK changing unit changes the ACK flag to “0” at the end of the transmission queue. Storing, and
The transmission queue includes a step of sequentially transmitting the packets to the server.
JP2005099768A 2005-03-30 2005-03-30 Adsl communication apparatus, program and method Pending JP2006279867A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005099768A JP2006279867A (en) 2005-03-30 2005-03-30 Adsl communication apparatus, program and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005099768A JP2006279867A (en) 2005-03-30 2005-03-30 Adsl communication apparatus, program and method

Publications (1)

Publication Number Publication Date
JP2006279867A true JP2006279867A (en) 2006-10-12

Family

ID=37214077

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005099768A Pending JP2006279867A (en) 2005-03-30 2005-03-30 Adsl communication apparatus, program and method

Country Status (1)

Country Link
JP (1) JP2006279867A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010522468A (en) * 2006-12-20 2010-07-01 トムソン ライセンシング Throughput improvement in LAN by managing TCPACK
JP2010148110A (en) * 2008-12-18 2010-07-01 Infineon Technologies Ag Data traffic shaping method, device and wireless instrument
JP2013013093A (en) * 2012-07-20 2013-01-17 Thomson Licensing Improving throughput in lan by managing tcp acks

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010522468A (en) * 2006-12-20 2010-07-01 トムソン ライセンシング Throughput improvement in LAN by managing TCPACK
JP2010148110A (en) * 2008-12-18 2010-07-01 Infineon Technologies Ag Data traffic shaping method, device and wireless instrument
US8194543B2 (en) 2008-12-18 2012-06-05 Intel Mobile Communications GmbH Methods of data traffic shaping, apparatus and wireless device
JP2013013093A (en) * 2012-07-20 2013-01-17 Thomson Licensing Improving throughput in lan by managing tcp acks

Similar Documents

Publication Publication Date Title
US10237153B2 (en) Packet retransmission method and apparatus
US8014287B2 (en) Communications apparatus
US8085669B2 (en) Session relay device and session relay method
JP5020076B2 (en) High performance TCP suitable for low frequency ACK system
JP5005003B2 (en) Method for managing transmission of a data stream over a transport channel of a tunnel, corresponding tunnel endpoint and computer-readable storage medium
JP5544430B2 (en) Communication apparatus and communication system
US20030131079A1 (en) Performance enhancing proxy techniques for internet protocol traffic
KR100600607B1 (en) A apparatus for ARQ controlling in wireless portable internet system and method therof
JP2002290459A (en) Device for transferring packets and method for the same
JP2001308947A (en) Communication device, repeater and communication control method
JP2009147786A (en) Communication apparatus, data frame transmission control method, and program
JP2007208571A (en) Communication system, communication device, congestion control method used for them, and its program
US20150237104A1 (en) Communication system, communication apparatus, and communication method
US20100246400A1 (en) Communication device and method
US20030031161A1 (en) Uplink session extension
WO2017107148A1 (en) Method of transmitting data and network equipment
JP5832335B2 (en) Communication apparatus and communication system
JP4434019B2 (en) Data distribution management device and data distribution management method
JP2006279867A (en) Adsl communication apparatus, program and method
JP4953965B2 (en) COMMUNICATION SYSTEM, COMMUNICATION DEVICE, AND PACKET TRANSMISSION METHOD
JP2001156795A (en) Packet flow controller and method
JP5848956B2 (en) Communication device
WO2020154872A1 (en) Transmission control protocol acceleration method and apparatus
JP2008199431A (en) Communication device
KR100913897B1 (en) Method for controlling congestion of TCP for reducing the number of retransmission timeout

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20071213

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071225

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20080924