COMMUNICATION DEVICE AND COMMUNICATION METHOD
20170339055 ยท 2017-11-23
Inventors
Cpc classification
International classification
Abstract
Provided is a communication device in which communication between hosts of a layer 2 network is overlaid on a layer 3 network. The communication device manages a first MTU length of each communication path with respect to a plurality of communication paths in the layer 3 network, determines a second MTU length based on information to be added in cases where communication between the hosts of the layer 2 network is overlaid via the plurality of communication paths, and notifies the hosts of the second MTU length.
Claims
1. A communication device in which communication between hosts of a layer 2 network is overlaid on a layer 3 network, wherein the communication device manages a first MTU length of each communication path with respect to a plurality of communication paths in the layer 3 network, determines a second MTU length based on information to be added in cases where communication between the hosts of the layer 2 network is overlaid via the plurality of communication paths, and notifies the hosts of the second MTU length.
2. The communication device according to claim 1, wherein in cases where, in the communication device, a packet length after adding the information to be added to a packet received from the hosts exceeds the first MTU length, the communication device notifies the hosts which have transmitted the packet of the second MTU length.
3. The communication device according to claim 2, wherein the communication device notifies the hosts which have transmitted the packet of the second MTU length such that the second MTU length is included in a message created based on ICMP (Internet Control Message Protocol) format.
4. The communication device according to claim 1, wherein the second MTU length is a value obtained by subtracting the information to be added from the first MTU length.
5. The communication device according to claim 1, wherein the communication device updates the first MTU length upon receiving information on the first MTU length via the layer 3 network.
6. The communication device according to claim 1, wherein the first MTU length is a preset value.
7. A communication method in which communication between hosts of a layer 2 network is overlaid on a layer 3 network, the communication method comprising: managing a first MTU length of each communication path with respect to a plurality of communication paths in the layer 3 network; determining a second MTU length based on information to be added in cases where communication between the hosts of the layer 2 network is overlaid via the plurality of communication paths; and notifying the hosts of the second MTU length.
8. The communication method according to claim 7, wherein in cases where a packet length after adding the information to be added to a packet received from the hosts exceeds the first MTU length, the hosts which have transmitted the packet is notified of the second MTU length.
9. The communication method according to claim 8, wherein the hosts which have transmitted the packet is notified of the second MTU length such that the second MTU length is included in a message created based on ICMP (Internet Control Message Protocol) format.
10. The communication method according to claim 7, wherein the second MTU length is a value obtained by subtracting the information to be added from the first MTU length.
11. The communication method according to claim 7, wherein when information on the first MTU length is received via the layer 3 network 130, the first MTU length is updated.
12. The communication method according to claim 7, wherein the first MTU length is a preset value.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0018]
[0019]
[0020]
[0021]
[0022]
[0023]
[0024]
[0025]
DESCRIPTION OF THE EMBODIMENTS
[0026] Hereinafter, embodiments of the present invention will be described with reference to
[0027]
[0028] A configuration in which the layer 2 network is overlaid on the layer 3 network will be described with reference to
[0029]
[0030] The hosts 101 and the communication device 111 are connected, and the hosts 102 and the communication device 112 are connected and they belong to the layer 2 network 120. The communication device 111 is connected to the communication device 112, which is the transmission destination via the layer 3 network 130.
[0031] The hosts 101 and the hosts 102 are computer devices, such as PCs (personal computers), which communicate with the communication device 111 and the communication device 112, respectively. The communication device 111 is a gateway device such as a virtual switch to the layer 3 network 130. The communication device 111 and the communication device 112 forward the frame received from the hosts 101 and 102 via the layer 3 network 130 to the communication device 112 as the transmission destination. The communication devices 111 and 112, when through the layer 3 network 130, perform tunnel communication using the overlay method.
[0032]
[0033] With reference to
[0034] The communication device 111 includes a packet communication unit 200, a communication control unit 240, a packet editing unit 210, an MTU management unit 220, an MTU management table 250, an MAC address table 260 and a packet editing result log 230.
[0035] The packet communication unit 200 performs packet transmission and reception.
[0036] The communication control unit 240 performs a control related to communication, for example, a control corresponding to control of the basic operation of switches and routers. The communication control unit 240 creates and updates the MAC address table 260 when a packet is transmitted and received.
[0037]
[0038] As shown in
[0039] Returning to
[0040] The MTU management unit 220 creates and updates the MTU management table 250 for managing the MTU length of the target path for each communication path and calculates the MTU length for each communication path managed by the MTU management table 250, and the MTU length to be satisfied by the received packet based on the header length added to the packet in the packet editing unit 210 (MTU length to be satisfied by the transmission packet from the hosts 101 and 102).
[0041]
[0042] The structure of the MTU management table 250 is shown in
[0043]
[0044] With reference to
[0045] When the host 1 (101) forwards the packet to the host 2 (102), the packet is first transmitted to the communication device 1 (111) (300). The communication device 1 (111) refers to the MTU management table and compares the size obtained by adding the header length necessary for encapsulation to the packet length of the received packet with the MTU length of the communication path (310). As a result of the comparison, when the size obtained by adding the header length necessary for encapsulation to the packet length of the received packet is larger than the MTU length of the communication path, the communication device 1 (111) creates a message according to the format of the ICMP protocol, and notifies the host 1 (101) of an error message in which the MTU length to be satisfied by the transmission packet from the host 1 (101) is included (320). Details are shown in
[0046] When the packet length of the packet which the communication device 1 (111) has received from the host 1 (101) does not exceed the MTU length of the communication path of the transmission destination of the packet (340), the communication device 1 (111) encapsulates the packet (350), and transmits the resultant packet to the communication device 2 (112) (360). As with the processing 310 and the processing 340, the communication device 2 (112) refers to the MTU management table, and compares the packet length of the packet received from the communication device 1 (111) via the communication path with the MTU length of the communication path of the packet (370). When the packet length does not exceed the MTU length of the communication path, the communication device 2 (112) deletes the information added by the encapsulation processing (350) (380), and transmits the packet to the host 2 (102) (390).
[0047]
[0048] Referring to
[0049] The MTU management unit 220 first extracts the MTU length of the communication path corresponding to the destination IP address of the received packet from the MTU management table 250 shown in
[0050] The MTU management unit 220 compares the size obtained by adding the header length necessary for encapsulation of the packet in the packet editing unit 210 to the packet length of the received packet with the extracted MTU length (S410), and when the size obtained by adding the header length to the packet length of the received packet is equal to or smaller than the MTU length of the extracted communication paths, the MTU management unit 220 determines that the packet can be forwarded with the packet intact (S420).
[0051] When the MTU management unit 220 determines that the size obtained by adding the header length to the packet length and of the received packet is larger than the MTU length of the extracted communication path, the packet editing unit 210 uses the format of ICMP protocol, and notifies the host 1 (101) of the error message. The packet editing unit 210 creates the following error message using the ICMP protocol format. First, 3 (Destination Unreachable) is set in the Type field of ICMP, and 4 (Fragmentation needed and Don't Fragment was set) is set in the Code field. In the Next-Hop MTU field, a packet obtained by subtracting the header length necessary for packet encapsulation in the packet editing unit 210 from the MTU length of the corresponding communication path stored in the MTU management table 250 of the communication device 1 (111) is determined and set as the MTU length to be satisfied by the host 1 (101) for notifying the host 1 (101).
[0052] The host 1 (101) determines, from the error message created by the packet editing unit (210) of the communication device 1 (111) using the ICMP protocol format, that the transmitted packet exceed the MTU length (the MTU length to satisfied by the transmission packet of the host 1 (101)), and can make a packet length which does not exceed the MTU length to satisfied by the transmission packet of the host 1 (101). In addition, since the packet editing unit 210 sets the IP address of the host 2 (102) in the source IP address field of the IP header of the error messages using the format of this ICMP protocol, the host 1 (101) judges as if it receives the notification from the host 2 (102). As a result, it possible to hide the communication device (111), which is in the middle of the path, so that the communication device (111) is not regarded as a device of layer 3 (S430). Finally, the packet editing unit 210 registers the content of the error message transmitted to the packet editing result log 230 (S440). Details of the Packet editing result log 230 are shown in
[0053] Note that the MTU length in S400 in
[0054]
[0055] The processing flow in
[0056] The MTU length is set to a fixed value (S500). The fixed value may be set, for example, by the configuration of the communication device (111) or the like. The subsequent operations of S510 to S540 are the same as those of S410 to S440 of
[0057]
[0058] With reference to
[0059] The date and time 600 is the date and time registered in the packet editing result log 230. The packet length 610 is the packet length of the packet transmitted to the communication device (111). The encapsulation header length 620 is the header length necessary for packet encapsulation. The MTU length 630 is the MTU length of the packet transmission destination path. The source IP address 640 is the source IP address set in S430 in
[0060] Effects of the above embodiments include the following.
[0061] Although a conventional technique for examining the minimum MTU on the communication path includes the Path MTU Discovery (RFC 1191) (hereinafter referred to as PMTUD). PMTUD cannot be used for the communication device in the layer 2 network of the overlay network. However, according to the present invention, with the above configuration, it is possible to notify the hosts of the MTU length to be satisfied by the packet which the hosts transmit.
[0062] Further, in the present invention, since not the MTU length itself of the communication path, but the MTU length in consideration of the additional portion of encapsulation header information for the tunnel is notified to the hosts as the MTU length to be satisfied by packets which the hosts transmits, it is possible to prevent fragments of the packet in the device.
[0063] When the MTU length is notified to the host, the source IP address of the packet is set to the IP address of the destination host. Thereby, without having the presence of the communication device which is in the middle path as seen from the host recognizable, while taking advantage of the benefits of an overlay method, the MTU length to be satisfied by the packet which the hosts transmit can be notified to the host.
[0064] Further, since the editing result of the packet is stored, it is possible to provide means for resolving problems when they occur.
[0065] It should be further understood by those skilled in the art that although the foregoing description has been made on embodiments of the invention, the invention is not limited thereto and various changes and modification may be made without departing from the spirit of the invention and the scope of the appended claims.