Gateway apparatus, packet forwarding method, and program
First Claim
1. A gateway apparatus for rewriting and forwarding an application header, namely, data following a TCP header of a packet flowing over a TCP connection between terminals, comprising:
- a number conversion table including an entry for registering a pair of a sequence number which is expected to be contained in the TCP header of a next packet to forward and a sequence number after conversion which is obtained by considering a change in packet size due to application header rewriting as a pair of an expected sequence number and a conversion sequence number as well as a pair of an expected Ack number and a conversion Ack number contained in the TCP header of a packet in a direction opposite to that of the forwarded packet at the time of forwarding the packet; and
a conversion unit for performing number rewriting process of rewriting the sequence number and the Ack number contained in the TCP header of a packet to forward to the conversion sequence number and the conversion Ack number corresponding to the expected sequence number and the expected Ack number matching these numbers by referring to the number conversion table at the time of forwarding the packet.
1 Assignment
0 Petitions
Accused Products
Abstract
The present invention provides a gateway apparatus and a packet forwarding method for rewriting the application header of a forwarded packet without terminating a TCP connection between a client and a server. For that purpose, the gateway apparatus in accordance with the present invention uses the conversion section 116 of the gateway module 110 to register, in a conversion table 117, a pair of a sequence number (Seq#) which is expected to be contained in the TCP header of a next packet to forward and a Seq# after conversion which is obtained by considering a change in packet size due to application (AP) header rewriting as a pair of an expected Seq# and a conversion Seq# as well as a pair of an expected Ack# and a conversion Ack# contained in the TCP header of a packet in a direction opposite to that of the previously forwarded packet at the time of forwarding. Then, the conversion section 116 refers to the conversion table 117 at next packet forwarding to rewrite the Seq# and the Ack# contained in the TCP header of a packet to forward to the conversion Seq# and conversion Ack# corresponding to the expected Seq# and expected Ack# matching these numbers.
-
Citations
33 Claims
-
1. A gateway apparatus for rewriting and forwarding an application header, namely, data following a TCP header of a packet flowing over a TCP connection between terminals, comprising:
-
a number conversion table including an entry for registering a pair of a sequence number which is expected to be contained in the TCP header of a next packet to forward and a sequence number after conversion which is obtained by considering a change in packet size due to application header rewriting as a pair of an expected sequence number and a conversion sequence number as well as a pair of an expected Ack number and a conversion Ack number contained in the TCP header of a packet in a direction opposite to that of the forwarded packet at the time of forwarding the packet; and a conversion unit for performing number rewriting process of rewriting the sequence number and the Ack number contained in the TCP header of a packet to forward to the conversion sequence number and the conversion Ack number corresponding to the expected sequence number and the expected Ack number matching these numbers by referring to the number conversion table at the time of forwarding the packet. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A packet forwarding method for rewriting and forwarding an application header, namely, data following a TCP header of a packet flowing over a TCP connection between terminals in a gateway apparatus, comprising:
-
a step in which the gateway apparatus registers, in a number conversion table, a pair of a sequence number which is expected to be contained in the TCP header of a next packet to forward and a sequence number after conversion which is obtained by considering a change in packet size due to application header rewriting as a pair of an expected sequence number and a conversion sequence number as well as a pair of an expected Ack number and a conversion Ack number contained in the TCP header of a packet in a direction opposite to that of the previously forwarded packet at the time of forwarding the packet; and a step in which the gateway apparatus performs number rewriting process of rewriting the sequence number and the Ack number contained in the TCP header of a packet to forward to the conversion sequence number and the conversion Ack number corresponding to the expected sequence number and the expected Ack number matching these numbers by referring to the number conversion table at the time of forwarding the packet. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20, 21, 22)
-
-
23. A non-transitory storage medium for storing a program causing a computer including a gateway apparatus for rewriting and forwarding an application header, namely, data following a TCP header of a packet flowing over a TCP connection between terminals,
which includes a number conversion table including an entry for registering a pair of a sequence number which is expected to be contained in the TCP header of a next packet to forward and a sequence number after conversion which is obtained by considering a change in packet size due to application header rewriting as a pair of an expected sequence number and a conversion sequence number as well as a pair of an expected Ack number and a conversion Ack number contained in the TCP header of a packet in a direction opposite to that of the previously forwarded packet at the time of forwarding the packet, to function as a conversion unit for performing number rewriting process of rewriting the sequence number and the Ack number contained in the TCP header of a packet to forward to the conversion sequence number and the conversion Ack number corresponding to the expected sequence number and the expected Ack number matching these numbers by referring to the number conversion table at the time of forwarding the packet.
Specification