IP Library › Granted Patent US 11,595,304
Granted Patent B2
US 11,595,304 · App. 17/042,015 · Granted Feb 28, 2023

Communication device, communication control system, communication control method, and communication control program

Inventor: Muneyuki Kawatani (Tokyo, JP)
Assignee: NIPPON TELEGRAPH AND TELEPHONE CORPORATION
H04L45/66H04L45/745
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,595,304
App. No.
17/042,015
Granted
Feb 28, 2023
Kind
B2
Abstract

The present disclosure relates scaling out servers that performs Layer 3 (L3) termination. In particular, the server includes: a packet receiving unit which receives a packet from any load balancer performing L3 termination via an Layer 2 (L2) switch; an assignment unit which, by referencing a MAC/MARK number correspondence table in a storage unit, assigns to the received packet a MARK number that corresponds to a transmission source MAC address; a recording unit which records a MARK number for connection of the received packet in a connection/MARK number correspondence table; and a packet transmission unit which, when a reply packet to the received packet is to be transmitted, routes the reply packet via the L2 switch by acquiring, from a MARK number/GW correspondence table in the storage unit, an IP address of a load balancer corresponding to the MARK number associated with the connection of the received packet.

Claims (61)

1. A computer-implemented method for controlling data communication, the method comprising:

receiving a data packet from a first communication device of a first set of first communication devices via a Layer 2 (L2) switch by a second communication device of a second set of second communication devices, wherein the data packet includes a transmission source Media Access Control (MAC) address of the first communication device, the second communication device includes a Layer 3 (L3) termination, and Internet Protocol (IP) addresses of the first set of the first communication devices and the second set of the second communication devices are distinct from each other;

storing a first correlation table in a storage, wherein the first correlation table includes the MAC address of the first communication device and an identification number corresponding to a connection associated with the received data packet;

storing a second correlation table in the storage, wherein the second correlation table includes the identification number of the connection associated with the received data packet and data associated with the connection, and the data associated with the connection includes an IP address of the first communication device;

storing a third correlation table in the storage, wherein the third correlation table includes the IP address of the first communication device and the identification number of the connection of the received packet;

generating a reply data packet in response to the received data packet, comprising:

retrieving, from the second correlation table, the identification number of the connection of the received data packet; and

retrieving, from the third correlation table, the IP address of the first communication device corresponding to the received identification number of the connection of the received data packet; and

transmitting, by routing via the L2 switch using the IP address of the first communication device, the reply data packet to the first communication device.

2. The computer-implemented method of claim 1 , the method further comprising:

automatically assigning, based on a predefined rule for assigning the MAC address, the MAC address of the first communication device, wherein the predefine rule relates to at least the first correlation table.

3. The computer-implemented method of claim 1 , wherein the first communication device is one of a plurality of communication devices for performing an L3 termination, wherein the plurality of communication devices connect the L2 switch and the L3 switch, and wherein the plurality of communication devices include one or more load balancers.

4. The computer-implemented method of claim 1 , wherein the data associated with the connection in the second correlation table further includes:

a destination IP address of the received data packet,

a source port number of the received data packet,

a destination port number of the received data packet, and

a communication protocol identifier.

5. The computer-implemented method of claim 1 , wherein the third correlation table includes an IP address of a gateway for a routing destination.

6. The computer-implemented method of claim 1 , wherein the received data packet relates to an upstream communication, wherein the reply data packet relates to a downstream communication, and wherein the received data packet and the reply data packet pass through the first communication device.

7. The computer-implemented method of claim 1 , wherein the L3 switch connects one or more client devices and the first communication device, wherein the L2 switch connects the first communication device and the second communication device, and wherein the second communication device is one of servers.

8. A system for controlling data communication, the system comprises:

a processor; and

a memory storing computer-executable instructions that when executed by the processor cause the system to:

receive a data packet from a first communication device of a first set of first communication devices via a Layer 2 (L2) switch by a second communication device of a second set of second communication devices, wherein the data packet includes a transmission source Media Access Control (MAC) address of the first communication device, the second communication device includes a Layer 3 (L3) termination, and Internet Protocol (IP) addresses of the first set of the first communication devices and the second set of the second communication devices are distinct from each other;

store a first correlation table in a storage, wherein the first correlation table includes the transmission source MAC address of the first communication device and an identification number corresponding to a connection associated with the received data packet;

store a second correlation table in the storage, wherein the second correlation table includes the identification number of the connection associated with the received data packet, and the data associated with the connection including an IP address of the first communication device;

store a third correlation table in the storage, wherein the third correlation table includes the IP address of the first communication device and the identification number of the connection of the received packet;

generating a reply data packet in response to the received data packet, comprising:

retrieving, from the second correlation table, the identification number of the connection of the received data packet; and

retrieving, from the third correlation table, the IP address of the first communication device corresponding to the received identification number of the connection of the received data packet; and

transmit, by routing via the L2 switch using the IP address of the first communication device, the reply data packet to of the first communication device.

9. The system of claim 8 , the computer-executable instructions when executed further causing the system to:

automatically assign, based on a predefined rule for assigning the MAC address, the MAC address of the first communication device, wherein the predefine rule relates to at least the first correlation table.

10. The system of claim 8 , wherein the first communication device is one of a plurality of communication devices for performing an L3 termination, wherein the plurality of communication devices connect the L2 switch and the L3 switch, and wherein the plurality of communication devices include one or more load balancers.

11. The system of claim 8 , wherein the data associated with the connection in the second correlation table further includes:

a destination IP address of the received data packet,

a source port number of the received data packet,

a destination port number of the received data packet, and

a communication protocol identifier.

12. The system of claim 8 , wherein the third correlation table includes an IP address of a gateway for a routing destination.

13. The system of claim 8 , wherein the received data packet relates to an upstream communication, wherein the reply data packet relates to a downstream communication, and wherein the received data packet and the reply data packet pass through the first communication device.

14. The system of claim 8 , wherein the L3 switch connects one or more client devices and the first communication device, wherein the L2 switch connects the first communication device and the second communication device, and wherein the second communication device is one of servers.

15. A computer-readable non-transitory recording medium storing computer-executable instructions that when executed by a processor cause a computer system to:

receive a data packet from a first communication device of a first set of first communication devices via a Layer 2 (L2) switch by a second communication device of a second set of second communication devices, wherein the data packet includes a transmission source Media Access Control (MAC) address of the first communication device, the second communication device includes a Layer 3 (L3) termination, and Internet Protocol (IP) addresses of the first set of the first communication devices and the second set of the second communication devices are distinct from each other;

store a first correlation table in a storage, wherein the first correlation table includes the MAC address of the first communication device and an identification number corresponding to a connection associated with the received data packet;

store a second correlation table in the storage, wherein the second correlation table includes the identification number of the connection associated with the received data packet and data associated with the connection, and the data associated with the connection includes an IP address of the first communication device;

store a third correlation table in the storage, wherein the third correlation table includes the IP address of the first communication device and the identification number of the connection of the received packet;

generate a reply data packet in response to the received data packet, comprising:

retrieve, from the second correlation table, the identification number of the connection of the received data packet; and

retrieve, from the third correlation table, the IP address of the first communication device corresponding to the received identification number of the connection of the received data packet; and

transmit, by routing via the L2 switch using the IP address of the first communication device, the reply data packet to the first communication device.

16. The computer-readable non-transitory recording medium of claim 15 , the computer-executable instructions when executed further causing the system to:

automatically assign, based on a predefined rule for assigning the MAC address, the MAC address of the first communication device, wherein the predefine rule relates to at least the first correlation table.

17. The computer-readable non-transitory recording medium of claim 15 , wherein the first communication device is one of a plurality of communication devices for performing an L3 termination, wherein the plurality of communication devices connect the L2 switch and the L3 switch, and wherein the plurality of communication devices include one or more load balancers.

18. The computer-readable non-transitory recording medium of claim 15 , wherein the data associated with the connection in the second correlation table further includes:

a destination IP address of the received data packet,

a source port number of the received data packet,

a destination port number of the received data packet, and

a communication protocol identifier.

19. The computer-readable non-transitory recording medium of claim 15 , wherein the received data packet relates to an upstream communication, wherein the reply data packet relates to a downstream communication, and wherein the received data packet and the reply data packet pass through the first communication device.

20. The computer-readable non-transitory recording medium of claim 15 , wherein the L3 switch connects one or more client devices and the first communication device, wherein the L2 switch connects the first communication device and the second communication device, and wherein the second communication device is one of servers.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 25, 2020
From: KAWATANI, MUNEYUKI
To: NIPPON TELEGRAPH AND TELEPHONE CORPORATION
Reel/Frame 053892/0543 →
Priority Claims (1)
JP JP2018-062554 · Mar 28, 2018 · national
Continuity (1)
Related Publication 20210044523A1 · Feb 11, 2021