WO2023100331A1 - パケット中継システム、および、パケット中継方法 - Google Patents

パケット中継システム、および、パケット中継方法 Download PDF

Info

Publication number
WO2023100331A1
WO2023100331A1 PCT/JP2021/044329 JP2021044329W WO2023100331A1 WO 2023100331 A1 WO2023100331 A1 WO 2023100331A1 JP 2021044329 W JP2021044329 W JP 2021044329W WO 2023100331 A1 WO2023100331 A1 WO 2023100331A1
Authority
WO
WIPO (PCT)
Prior art keywords
tenant
packet
relay
address
virtual network
Prior art date
Application number
PCT/JP2021/044329
Other languages
English (en)
French (fr)
Inventor
健太 篠原
紀貴 堀米
真生 上野
奨 中澤
文彦 澤崎
雄貴 赤松
Original Assignee
日本電信電話株式会社
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 日本電信電話株式会社 filed Critical 日本電信電話株式会社
Priority to JP2023564377A priority Critical patent/JPWO2023100331A1/ja
Priority to PCT/JP2021/044329 priority patent/WO2023100331A1/ja
Publication of WO2023100331A1 publication Critical patent/WO2023100331A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting

Definitions

  • the present invention relates to a packet relay system and a packet relay method for transferring packets in a network device.
  • IPsec Internet Protocol Security
  • VXLAN Virtual Network Layer
  • GRE Generic Routing Encapsulation
  • packet relay devices use routing software such as Open vSwitch. Conceivable.
  • GRE Generic Routing Encapsulation
  • FIG. 1 is a configuration diagram of a tunnel of a first comparative example.
  • the routers 12 and 13 are packet relay devices.
  • the left interface of the router 12 is assigned an IP address of 192.168.1.0.
  • the right interface of router 12 is assigned an IP address of 1.1.1.1.
  • the router 13 is assigned an IP address of 2.2.2.2 and is virtually connected to the right interface of the router 12 via the Internet 7 via the tunnel 8 .
  • the left interface of the router 12 is assigned an IP address of 192.168.2.0.
  • IP address is assigned to the right interface of the router 12 and the left interface of the router 13 . Therefore, it is not possible to flexibly change the settings of the routers 12 and 13 or switch them due to construction work.
  • an object of the present invention is to flexibly change the settings of the packet relay system and switch the construction work.
  • the packet relay system of the present invention comprises: a tenant that constructs a plurality of virtual network devices that terminate a tunneling protocol; a relay device that connects the tenant and the outside; and a management device for inputting settings for transmitting and receiving tunneling protocol packets between an external device connected to the relay device and the virtual network device.
  • a tenant that constructs a plurality of virtual network devices that terminate a tunneling protocol
  • a relay device that connects the tenant and the outside
  • a management device for inputting settings for transmitting and receiving tunneling protocol packets between an external device connected to the relay device and the virtual network device.
  • the packet relay system it is possible to flexibly change the settings of the packet relay system and switch the construction work.
  • FIG. 4 is a configuration diagram of a tunnel of a first comparative example
  • FIG. 11 is a configuration diagram of a transfer device of a second comparative example
  • 1 is a configuration diagram of a packet relay system according to this embodiment
  • FIG. 1 is a diagram showing an initial state of a packet relay system according to the first embodiment
  • FIG. 10 is a flowchart showing tenant configuration processing of the packet relay system
  • FIG. 10 is a diagram showing a state in which a tenant addition instruction is issued from a terminal
  • FIG. 10 is a diagram showing a state in which a container activation instruction is issued from a management device to a server
  • 4 is a flow chart showing processing for assigning a logical address to a container
  • FIG. 11 is a flow chart showing a route setting process for the relay device on the left side;
  • FIG. FIG. 11 is a flow chart showing a route setting process for the relay device on the right side;
  • FIG. 10 is a diagram showing a state in which a route setting instruction is given from the management device to the left and right relay devices;
  • FIG. 10 is a diagram showing a state in which a tunnel is stretched from left and right devices to a tenant's tap device; It is a figure which shows the example of a concrete setting of 1st Embodiment.
  • FIG. 12 illustrates an initial state of the packet relay system of the second embodiment;
  • FIG. FIG. 10 is a flowchart showing tenant configuration processing of the packet relay system;
  • FIG. 10 is a diagram showing a state in which a tenant addition instruction is issued from a terminal;
  • FIG. 10 is a diagram showing a state in which a container activation instruction is issued from a management device to a server;
  • 4 is a flow chart showing a process of assigning a local address to a container;
  • FIG. 11 is a flow chart showing a route setting process for the relay device on the left side;
  • FIG. 11 is a flow chart showing a route setting process for the relay device on the right side;
  • FIG. FIG. 10 is a diagram showing a state in which a route setting instruction is given from the management device to the left and right relay devices;
  • FIG. 10 is a diagram showing a state in which a tunnel is stretched from left and right devices to a tenant's tap device;
  • FIG. 11 is a diagram showing a specific setting example of the second embodiment;
  • FIG. 2 is a configuration diagram of the transfer device 10 of the second comparative example. Conventionally, it is physically set in the transfer device 10 to which the opposing devices 31 and 32 are connected.
  • This transfer device 10 comprises a FIB (Forwarding Information Base: routing control table) 103, a left network interface (denoted as IF in the drawing) 101, and a right network interface 102.
  • FIG. A tunnel 81 is stretched between the device 31 and the network interface 101 .
  • a tunnel 82 extends between the network interface 102 and the device 32 .
  • the network interface 101 on the left side of the transfer device 10 is set with an IP address that is the terminal of the transfer protocol recognized by the device 31 .
  • Address information of a transfer device (relay device) recognized by the device 32 is set in the network interface 102 on the right side of the transfer device 10 .
  • Terminal addresses of these tunnels 81 and 82 are IP addresses physically set in the transfer device 10 .
  • FIG. 3 is a configuration diagram of the packet relay system 1 according to this embodiment.
  • the packet relay system 1 treats an IP address as a logical address, and controls each device in the packet relay system 1 to appropriately perform routing based on the logical address.
  • a packet relay system 1 is a basic component of the present invention.
  • the packet relay system 1 includes a management device 11, tenants 6, and relay devices 41 and 42 arranged in front and behind them. This packet relay system 1 is connected to a device 31 via a tunnel 81 and connected to a device 32 via a tunnel 82 .
  • Tenant 6 is a container configured as a Pod on kubernetes (registered trademark). Note that the tenant 6 is not limited to this, and may be configured as a virtual machine or a physical device. The tenant 6 performs transfer processing based on logical addresses independent of the physical addresses of the relay devices 41 and 42 . A plurality of tap devices 63 and 64 that terminate the tunneling protocol are constructed in the tenant 6 . These tap devices 63 and 64 are virtual network devices.
  • the management device 11 has the function of setting the tenant 6 and the relay devices 41 and 42 when the tenant 6 is added by the user, as described in the above embodiment. also has the function of This management device 11 manages the tenant 6 and the relay devices 41 and 42, and transmits tunneling protocol packets between the external devices 31 and 32 connected to the relay devices 41 and 42 and the tap devices 63 and 64 of the tenant 6. Enter the setting to send and receive.
  • the devices 31 and 32 are terminals connected to the relay devices 41 and 42 of the packet relay system 1 and exchange packets with each other through this system, and are external devices to which packets are relayed by the packet relay system 1. .
  • the devices 31 and 32 are user terminals or maintenance personnel terminals, are connected to the management device 11 of the packet relay system 1, and instruct to change communication settings between the terminals.
  • the relay devices 41 and 42 are connected to the devices 31 and 32, respectively, via a network capable of transmitting and receiving IP packets. These relay devices 41 and 42 connect the tenant 6 and the outside. As a basic operation, the relay devices 41 and 42 transmit tunneling protocol packets transmitted from the devices 31 and 32 to the tenant 6, and transmit tunneling protocol packets transmitted from the tenant 6 to the devices 31 and 32. have
  • the network interfaces 61 and 62 of the tenant 6 are connected to the relay devices 41 and 42 via a network capable of transmitting and receiving IP packets. It also has tap devices (described as tap in the figure) 63 and 64 that terminate the transfer protocol. These two tap devices 63, 64 are virtual network devices that terminate the tunneling protocol.
  • the tenant 6 terminates the tunneling protocol at the tap device 63 when a tunneling protocol packet sent from the device 31 arrives at the network interface 61 . Then, if necessary, another tap device 64 performs encapsulation and transfers to the device 32 on the opposite side.
  • the tap device 64 terminates the tunneling protocol. Then, if necessary, it is encapsulated by another tap device 63 and transferred to the device 31 on the opposite side.
  • the GRE tunneling packet is transmitted from one of the devices 31 and 32, the tunnel 81 is terminated at the tenant 6, and the encapsulation is performed again from the tenant 6 and transferred to the other of the devices 31 and 32.
  • the morphology Since there are two types of logical address setting methods, each will be described.
  • logical addresses are assigned to the tap devices 63 and 64, and the tap devices 63 and 64 terminate the tunneling protocol.
  • FIG. 4 is a diagram showing the initial state of the packet relay system 1 of the first embodiment.
  • the relay devices 41 and 42 are physical servers equipped with a linux (registered trademark) OS.
  • the container is configured to be managed by kubernetes (registered trademark).
  • the initial state the container that is tenant 6 is in a state where it has not started.
  • FIG. 5 is a flow chart showing tenant configuration processing of the packet relay system 1 .
  • the management device 11 sets the FIB (Forwarding Information Base: routing control table) 413 of the relay device 41 to allow a packet received from one of the network interfaces 411 and 412 to be transferred from the other. to put in.
  • FIB Forwarding Information Base: routing control table
  • the terminal 2 instructs the management device 11 to add the tenant 6 (step S11). This operation is illustrated in FIG.
  • the management device 11 instructs the server 5 to start a container having two additional network interfaces 61 and 62 on the server 5 (step S12), and waits for the container to start (step S13).
  • the operation of step S12 is shown in FIG. 7, which will be described later.
  • the started container functions as a tenant 6.
  • the management device 11 inputs settings to the container (step S14). Details of this process are shown in FIG. 8, which will be described later.
  • the management device 11 inputs the route setting to the relay device 41 on the left side (step S15), inputs the route setting to the relay device 42 on the right side (step S16), and ends the processing of FIG. .
  • steps S15 and S16 are shown in FIG. Details of the processing in step S15 are shown in FIG. 9, which will be described later. Details of the processing in step S16 are shown in FIG. 10, which will be described later.
  • FIG. 8 is a flow chart showing processing for assigning a logical address to a container.
  • the management device 11 creates a tap device 63 for terminating the tunneling protocol for the device 31 on the left side of the container (step S20). Then, the management device 11 assigns the logical address A of the tenant 6 for the device 31 on the left side to the tap device 63 (step S21).
  • the management device 11 inputs static routing settings to the container so that packets addressed to the device 31 on the left side are transferred to the relay device 41 on the left side (step S22).
  • the management device 11 creates a tap device 64 for terminating the tunneling protocol for the device 32 on the right side of the container (step S23). Then, the management device 11 assigns the logical address B of the tenant 6 for the device 32 on the right side to the tap device 64 (step S24). When the management device 11 inputs static routing settings to the container so that packets addressed to the device 32 on the right side are transferred to the relay device 42 on the right side (step S25), the processing in FIG. 8 ends.
  • FIG. 9 is a flow chart showing the route setting process for the relay device 41 on the left side.
  • the management device 11 sets a route for the left relay device 41 so that the packet addressed to the left device 31 is transferred from the left network interface 411 to the left device 31 (step S30). Then, the management device 11 sets a route to the relay device 41 on the left side so that the packet addressed to the logical address A of the tenant 6 is transferred from the network interface 412 on the left side to the tenant 6 (step S31). end the processing of
  • FIG. 10 is a flow chart showing the route setting process for the relay device 42 on the right side.
  • the management device 11 sets a path for the relay device 42 on the right side so that the packet addressed to the address of the device 32 on the right side is transferred from the network interface 422 on the right side to the device 32 on the right side (step S40). Then, the management device 11 sets a route to the relay device 42 on the right side so that the packet addressed to the logical address B of the tenant 6 is transferred from the network interface 421 on the right side to the tenant 6 (step S41). end the processing of
  • FIG. 12 is a diagram showing a state in which tunnels 81 and 82 are stretched from the left and right devices 31 and 32 to the tap devices 63 and 64 of the tenant 6.
  • FIG. 12 When the tunneling protocol addressed to the logical address A of the tenant 6 is transmitted from the device 31 , it arrives at the network interface 61 of the tenant 6 via the relay device 41 and is decapsulated by the tap device 63 . Then, it is encapsulated by the tap device 64 and transferred from the network interface 62 to the device 32 via the relay device 42 . According to such a packet relay method, it is possible to flexibly change the setting of the packet relay system and change the construction work.
  • FIG. 13 is a diagram showing a specific setting example of the first embodiment.
  • the terminal 33 and the router 35 use GRE as a transfer protocol, and the terminal 34 side does not use the transfer protocol and directly routes IP packets.
  • the router 35 and the terminal 33 under its control correspond to the device 31 of the first embodiment.
  • the protocol unit 43 corresponds to the relay device 41 of the first embodiment.
  • the relay device 42 of the first embodiment is omitted, and the terminal 34 corresponds to the device 32 of the first embodiment.
  • a management device executes the following commands on the terminal 33.
  • IP in each command line refers to the IP address.
  • a management device executes the following commands for the router 35 .
  • the first multus NIC of the container 66 is the network interface 661 .
  • the first multus NIC of the container 66 is the network interface 661 .
  • the GRE NIC of the container 66 refers to the network interface 663 .
  • a management device executes the following commands for the protocol unit 43 .
  • (3-1) Confirmation of transfer permission setting Confirm that sysctl net.ipv4.ip_forward is set to 1
  • a management device executes the following commands for the container 66 .
  • a management device executes the following commands for the container 66 .
  • a management device executes the following commands for the container 66 .
  • the GRE NIC of the router 35 refers to the network interface 351 .
  • a management device executes the following commands on the terminal 34 .
  • (5-1) Static routing settings route add -host ⁇ IP of terminal 33 ⁇ gw ⁇ Second IP of NIC for multus in container 66 ⁇
  • the second multus NIC of the container 66 is the network interface 662 .
  • a tunnel 83 is thereby constructed between the router 35 and the container 66 .
  • the router 35 transmits and receives tunneling protocol packets.
  • a tunneling protocol packet that has arrived at the router 35 is transmitted to and received from a container 66 (tenant) by the protocol unit 43, which is a relay device.
  • a virtual network device (tap device) (not shown) constructed in this container 66 terminates packets of the tunneling protocol.
  • local addresses are assigned to the tap devices 63 and 64, and the relay devices 41 and 42 perform NAT conversion.
  • FIG. 14 shows the initial state of the packet relay system 1 of the second embodiment.
  • the relay devices 41 and 42 are physical servers equipped with a linux (registered trademark) OS.
  • the container is configured to be managed by kubernetes (registered trademark).
  • the initial state the container that is tenant 6 is in a state where it has not started.
  • FIG. 15 is a flow chart showing tenant configuration processing of the packet relay system 1 .
  • the management device 11 sets the FIB (Forwarding Information Base: routing control table) 413 of the relay device 41 to allow a packet received from one of the network interfaces 411 and 412 to be transferred from the other. to put in. Then, the management device 11 activates a module for implementing connection management of the tunneling protocol (step S51).
  • FIB Forwarding Information Base: routing control table
  • the terminal 2 instructs the management device 11 to add the tenant 6 (step S52). This operation is illustrated in FIG.
  • the management device 11 instructs the server 5 to start a container having two additional network interfaces 61 and 62 on the server 5 (step S53), and waits for the container to start (step S54).
  • step S53 The operation of step S53 is shown in FIG. 17 described later.
  • the started container functions as a tenant 6.
  • the management device 11 inputs settings to the container (step S55). Details of this process are shown in FIG. 18, which will be described later.
  • the management device 11 inputs the route setting to the relay device 41 on the left side (step S56), inputs the route setting to the relay device 42 on the right side (step S57), and ends the processing of FIG. .
  • steps S56 and S57 are shown in FIG. Details of the processing in step S56 are shown in FIG. 19, which will be described later. Details of the processing in step S57 are shown in FIG. 20, which will be described later.
  • FIG. 18 is a flow chart showing processing for assigning a local address to a container.
  • the management device 11 creates a tap device 63 for terminating the tunneling protocol for the device 31 on the left side of the container (step S60). Then, the management device 11 gives this tap device 63 a local address C that is used only within this system (step S61).
  • the management device 11 inputs static routing settings to the container so that packets addressed to the device 31 on the left side are transferred to the relay device 41 on the left side (step S62).
  • the management device 11 creates a tap device 64 for terminating the tunneling protocol for the device 32 on the right side of the container (step S63). Then, the management device 11 gives this tap device 64 a local address D that is used only within this system (step S64).
  • the management device 11 inputs a static routing setting to the container so that the packet addressed to the device 32 on the right side is transferred to the relay device 42 on the right side (step S65), the processing of FIG. 18 ends.
  • FIG. 19 is a flow chart showing the route setting process for the relay device 41 on the left side.
  • the management device 11 DNATs the destination address of the packet addressed to the logical address C of the tenant 6 that has arrived at the left network interface 411 to the left relay device 41 to the address of the left network interface 61 of the tenant 6. Input the settings (step S70). Then, the management device 11 SNATs the source address of the packet transmitted from the right network interface 412 to the tenant 6 to the left relay device 41 to the address of the right network interface 412 of the left relay device 41. Input the settings (step S71).
  • the management device 11 inputs a setting to DNAT the destination address of the packet addressed to the logical address D of the tenant 6 that has arrived at the network interface 412 on the right side to the relay device 41 on the left side to the address of the device 31 on the left side. (Step S72). Then, when the management device 11 inputs a setting to the left relay device 41 to SNAT the source address of the packet transmitted from the left network interface 411 to the left device 31 to the logical address C of the tenant 6 ( Step S73), the process of FIG. 19 is terminated.
  • FIG. 20 is a flow chart showing the route setting process for the relay device 42 on the right side.
  • the management device 11 DNATs the destination address of the packet addressed to the logical address D of the tenant 6 that has arrived at the right network interface 422 to the right relay device 42 to the address of the right network interface 62 of the tenant 6. Input the settings (step S80). Then, the management device 11 SNATs the source address of the packet transmitted from the left network interface 421 to the tenant 6 to the right relay device 42 to the address of the left network interface 421 of the right relay device 41. Input the settings (step S81).
  • the management device 11 inputs the setting to DNAT the destination address of the packet addressed to the logical address D of the tenant 6, which arrived at the network interface 421 on the left side, to the address of the device 32 on the right side, to the relay device 42 on the right side. (Step S82). Then, when the management device 11 inputs a setting to the relay device 42 on the right side to SNAT the source address of the packet transmitted from the network interface 422 on the right side to the device 32 on the right side to the logical address D of the tenant 6 ( Step S83), the process of FIG. 20 is terminated.
  • FIG. 22 is a diagram showing a state in which tunnels 81 and 82 are stretched from the left and right devices 31 and 32 to the tap devices 63 and 64 of the tenant 6.
  • FIG. 22 When the tunneling protocol addressed to the logical address C of the tenant 6 is transmitted from the device 31 , it arrives at the network interface 61 of the tenant 6 via the relay device 41 and is decapsulated by the tap device 63 . Then, it is encapsulated by the tap device 64 and transferred from the network interface 62 to the device 32 via the relay device 42 .
  • FIG. 23 is a diagram showing a specific setting example of the second embodiment.
  • the configuration of FIG. 23 describes a configuration example in which the terminal 33 side uses GRE as a transfer protocol, and the terminal 34 side does not use the transfer protocol, and directly routes IP packets.
  • the router 35 and the terminal 33 under its control correspond to the device 31 of the second embodiment.
  • the protocol unit 43 corresponds to the relay device 41 of the second embodiment.
  • the relay device 42 of the second embodiment is omitted, and the terminal 34 corresponds to the device 32 of the second embodiment.
  • a management device executes the following commands on the terminal 33 .
  • IP in each command line refers to the IP address.
  • (1-1) Static routing settings route add -host ⁇ IP of terminal 34 ⁇ gw ⁇ IP of router 35 ⁇
  • a management device executes the following commands for the router 35 .
  • a management device executes the following commands for the protocol unit 43 .
  • the first multus NIC of the container 66 is the network interface 661 .
  • NAT conversion settings on the NIC connected to the container 66 iptables -t nat -A PREROUTING -d ⁇ tenant logical address ⁇ -i ⁇ IF name ⁇ -j DNAT --to-destination ⁇ router 35 IP ⁇ iptables -t nat -A POSTROUTING -s ⁇ router 35 IP ⁇ -o ⁇ IF name ⁇ -j SNAT --to-source ⁇ tenant logical address ⁇ (3-5)
  • kernel module to apply NAT conversion to GRE packets modprobe ip_gre modprobe nf_nat_proto_gre modprobe nf_conntrack_proto_gre
  • a management device executes the following commands for the container 66 .
  • Static routing settings ip route add ⁇ tenant logical address ⁇ /32 via ⁇ protocol IP ⁇ (4-2)
  • GRE tunnel setting ip link add ⁇ IF name ⁇ type gretap local ⁇ IP of container 66 ⁇ remote ⁇ tenant logical address ⁇ ip addr add ⁇ NIC IP for GRE ⁇ /24 dev ⁇ IF name ⁇
  • Static routing setting ip route add ⁇ IP of terminal 34 ⁇ /32 via ⁇ IP of NIC for GRE of router 35 ⁇
  • a management device executes the following commands for the router 36 .
  • the second multus NIC of the container 66 is the network interface 662 .
  • a management device executes the following commands on the terminal 34 .
  • (6-1) Static routing setting route add -host ⁇ IP of terminal 33 ⁇ gw ⁇ IP of router 36 ⁇
  • a tunnel 84 is thereby constructed between the router 35 and the container 66 .
  • the present invention is not limited to the above-described embodiments, and can be modified without departing from the scope of the present invention.
  • the tunneling protocol of the device 31 on the left and the tunneling protocol of the device 32 on the right may be different protocols.
  • the setting instructions (step2/step3) from the management device may be performed in reverse order or simultaneously.
  • Tenants may be containers, kubernetes (registered trademark) Pods, virtual machines, or physical devices.
  • the management device has the function of setting tenants (containers) and relay devices when a tenant is added by the user, as shown in the above embodiment, as well as the functions of deleting tenants and rearranging tenants. may (f) In addition to adding tenants, the management device also has functions for deleting tenants and rearranging tenants. A specific implementation order is shown below.
  • the router 35 transmits and receives tunneling protocol packets.
  • a tunneling protocol packet that has arrived at the router 35 is transmitted to and received from a container 66 (tenant) by the protocol unit 43, which is a relay device.
  • a virtual network device (tap device) (not shown) constructed in this container 66 terminates packets of the tunneling protocol.
  • a packet relay system comprising:
  • Each virtual network device is assigned a logical address, 2.
  • Each virtual network device is assigned a local address
  • the relay device DNATs a packet received from the tenant and addressed to the logical address of the tenant to the address of the external device connected to the relay device, and the source of the packet transmitted from the relay device to the external device SNAT the address to the tenant's logical address;
  • the management device assigns a logical address to each of the virtual network devices, and sets the virtual network device to terminate the tunneling protocol when a tunneling protocol packet is received from the external device connected to each of the relay devices. throw into, 2.
  • the management device assigns a local address to each of the virtual network devices, and sends a packet addressed to the logical address of the tenant received from the tenant to the relay device to the address of the external device connected to the relay device.
  • the packet relay system according to claim 1, characterized by:
  • tenants are not limited to containers, and may consist of virtual machines or physical servers.
  • packets can be transferred between virtual network devices, and packets can be relayed between opposing terminals.
  • ⁇ Claim 8>> an external device sending and receiving tunneling protocol packets; a relay device relaying packets transmitted and received between the tenant and the external device; terminating a tunneling protocol in a virtual network device built on the tenant;

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

パケット中継システム(1)は、トンネリングプロトコルを終端する複数のtapデバイス(63,64)を構築したテナント(6)と、テナント(6)と外部の装置(31,32)とを接続する中継装置(41,42)と、テナント(6)および中継装置(41,42)を管理して、中継装置(41,42)に接続される外部の装置(31,32)とtapデバイス(63,64)との間にトンネリングプロトコルのパケットを送受信させる設定を投入する管理装置(11)とを備える。

Description

パケット中継システム、および、パケット中継方法
 本発明は、ネットワーク装置において,パケット転送を行うパケット中継システム、および、パケット中継方法に関する。
 SDN(Software Defined Network、ソフトウェア定義ネットワーク)技術およびNFV(Network Function Virtualization、ネットワーク機能仮想化)技術の発展に伴い、モバイル端末とクラウド上のサーバ間などを柔軟に接続することが求められている。そのため、ネットワーク利用者がオンデマンドにパケット中継装置に対し、パケット転送先を制御することで、モバイル端末とサーバ間のパケット転送を実現するようなサービスが出現している。
 従来の技術の例としては、IPsec(Internet Protocol Security)や、VXLAN、GRE(Generic Routing Encapsulation)などのトンネリングプロトコルを利用し、パケット中継装置にはOpen vSwitchなどのルーティングソフトウェアを利用するような構成が考えられる。
 モバイル端末とクラウド上のサーバとが互いにパケットを通信する際、パケット中継装置に付与されたIPアドレスを双方のパケット送信先としてサービスを実現することが一般的である。このようなサービスを支える技術として、例えばGRE(Generic Routing Encapsulation)がある。
「ネットワークエンジニアとして-GRE(Generic Routing Encapsulation)」,[令和3年11月18日検索],インターネット<URL:https://www.infraexpert.com/study/rp8gre.htm>
 図1は、第1比較例のトンネルの構成図である。
 ルータ12,13は、パケット中継装置である。ルータ12の左側のインタフェースには、192.168.1.0のIPアドレスが付与されている。ルータ12の右側のインタフェースには、1.1.1.1のIPアドレスが付与されている。ルータ13には、2.2.2.2のIPアドレスが付与されており、トンネル8により、インターネット7を介してルータ12の右側のインタフェースに仮想的に接続される。ルータ12の左側のインタフェースには、192.168.2.0のIPアドレスが付与されている。
 これらルータ12の右側のインタフェースや、ルータ13の左側のインタフェースには、IPアドレスが付与されている。よって、これらルータ12,13に係る設定変更や工事による切り替えなどを柔軟に行うことができない。
 そこで、本発明は、パケット中継システムの設定変更時や工事切り替えを柔軟に実施することを課題とする。
 前記した課題を解決するため、本発明のパケット中継システムは、トンネリングプロトコルを終端する複数の仮想ネットワークデバイスを構築したテナントと、前記テナントと外部とを接続する中継装置と、前記テナントおよび前記中継装置を管理して、前記中継装置に接続される外部装置と前記仮想ネットワークデバイスとの間にトンネリングプロトコルのパケットを送受信させる設定を投入する管理装置と、を備えることを特徴とする。
 その他の手段については、発明を実施するための形態のなかで説明する。
 本発明によれば、パケット中継システムにおいて,このパケット中継システムの設定変更や工事切り替えを柔軟に実施することができる.
第1比較例のトンネルの構成図である。 第2比較例の転送装置の構成図である。 本実施形態に係るパケット中継システムの構成図である。 第1実施形態のパケット中継システムの初期状態を示す図である。 パケット中継システムのテナント構成処理を示すフローチャートである。 端末からテナント追加指示がなされた状態を示す図である。 管理装置からサーバへコンテナ起動指示がなされた状態を示す図である。 コンテナへの論理アドレス付与処理を示すフローチャートである。 左側の中継装置に対する経路設定処理を示すフローチャートである。 右側の中継装置に対する経路設定処理を示すフローチャートである。 管理装置から左右の中継装置へ経路設定指示がなされた状態を示す図である。 左右の装置からテナントのtapデバイスにトンネルが張られた状態を示す図である。 第1実施形態の具体的設定例を示す図である。 第2実施形態のパケット中継システムの初期状態を示す図である。 パケット中継システムのテナント構成処理を示すフローチャートである。 端末からテナント追加指示がなされた状態を示す図である。 管理装置からサーバへコンテナ起動指示がなされた状態を示す図である。 コンテナへのローカルアドレス付与処理を示すフローチャートである。 左側の中継装置に対する経路設定処理を示すフローチャートである。 右側の中継装置に対する経路設定処理を示すフローチャートである。 管理装置から左右の中継装置へ経路設定指示がなされた状態を示す図である。 左右の装置からテナントのtapデバイスにトンネルが張られた状態を示す図である。 第2実施形態の具体的設定例を示す図である。
 以降、本発明を実施するための形態を、各図を参照して詳細に説明する。
 図2は、第2比較例の転送装置10の構成図である。
 従来、対向する装置31,32が接続される転送装置10に物理的に設定されている。この転送装置10は、FIB(Forwarding Information Base:経路制御表)103と、左側のネットワークインタフェース(図中ではIFと記載)101と右側のネットワークインタフェース102とを備えている。装置31とネットワークインタフェース101との間にはトンネル81が張られている。ネットワークインタフェース102と装置32との間にはトンネル82が張られている。
 転送装置10の左側のネットワークインタフェース101には、装置31が認識する転送プロトコルの終端となるIPアドレスが設定されている。転送装置10の右側のネットワークインタフェース102には、装置32が認識する転送装置(中継装置)のアドレス情報が設定されている。これらトンネル81,82の終端アドレスは、転送装置10に物理的に設定されたIPアドレスである。
 図3は、本実施形態に係るパケット中継システム1の構成図である。
 パケット中継システム1は、IPアドレスを論理的なアドレスとして扱い、パケット中継システム1内の各装置が、論理アドレスに基づいて適切にルーティングするように制御する。パケット中継システム1が、本発明の基本構成要素である。パケット中継システム1は、管理装置11と、テナント6と、その前後に配置された中継装置41,42とを備えて構成される。このパケット中継システム1は、トンネル81を介して装置31に接続され、トンネル82を介して装置32に接続される。
 テナント6は、kubernetes(登録商標)上のPodとして構成されたコンテナである。なお、これに限られず、テナント6は、仮想マシンや物理装置として構成されてもよい。テナント6は、中継装置41,42の物理的なアドレスとは独立な論理アドレスに基づいて、転送処理を行う。テナント6には、トンネリングプロトコルを終端する複数のtapデバイス63,64が構築されている。これらtapデバイス63,64は、仮想ネットワークデバイスである。
 管理装置11は、上記実施形態で示した、利用者からのテナント6の追加時に、テナント6および中継装置41,42の設定を実施する機能のほかに、テナント6の削除やテナント6の再配置の機能も有する。この管理装置11は、テナント6および中継装置41,42を管理し、中継装置41,42に接続される外部の装置31,32とテナント6のtapデバイス63,64との間にトンネリングプロトコルのパケットを送受信させる設定を投入する。
 装置31,32は、パケット中継システム1の中継装置41,42と接続され、このシステムを介して互いにパケットのやりとりを行う端末であり、このパケット中継システム1によってパケットが中継される外部装置である。装置31,32は、利用者端末または保守者端末であり、パケット中継システム1の管理装置11と接続され、端末間の通信の設定変更を指示する。
 中継装置41,42は、それぞれ装置31,32とIPパケットの送受信が可能なネットワークを介して接続される。これら中継装置41,42は、テナント6と外部とを接続する。中継装置41,42は、基本動作として、装置31,32から送信されたトンネリングプロトコルのパケットをテナント6に送信し、テナント6から送信されたトンネリングプロトコルのパケットを装置31,32へ送信する役割を持つ。
 テナント6は、ネットワークインタフェース61,62が、IPパケットの送受信が可能なネットワークを介して中継装置41,42に接続される。また、転送プロトコルを終端するtapデバイス(図中ではtapと記載)63,64を持つ。これら2個のtapデバイス63,64は、トンネリングプロトコルを終端する仮想ネットワークデバイスである。
 テナント6は、基本動作として、装置31から送信されたトンネリングプロトコルのパケットがネットワークインタフェース61に着信した場合、tapデバイス63でトンネリングプロトコルを終端する。そして、必要に応じ、もう一つのtapデバイス64でカプセル化を行い、反対側の装置32へ転送する。
 テナント6は、装置32から送信されたトンネリングプロトコルのパケットをネットワークインタフェース62で着信し、トンネリングプロトコルを受信した場合、tapデバイス64でトンネリングプロトコルを終端する。そして、必要に応じ、もう一つのtapデバイス63でカプセル化を行い、反対側の装置31へ転送する。
 実施形態として、装置31,32のうち一方からGREトンネリングパケットが送信され、トンネル81をテナント6にて終端し、テナント6から再度カプセル化を実施して装置31,32のうち他方へ転送する実施形態を記載する。論理アドレスの設定方法として、2つの形態があるため、それぞれについて説明する。
《第1実施形態》
 第1の実施形態では、tapデバイス63,64に論理アドレスを付与して、tapデバイス63,64にトンネリングプロトコルを終端させるものである。
 図4は、第1実施形態のパケット中継システム1の初期状態を示す図である。
 第1実施形態では、例えば中継装置41,42としてlinux(登録商標)OSを搭載した物理サーバとしている。テナント6として、コンテナを利用する例とし、コンテナの管理をkubernetes(登録商標)が実施する構成としている。初期状態では、テナント6であるコンテナは起動していない状態となっている。
 図5は、パケット中継システム1のテナント構成処理を示すフローチャートである。
 ステップS10にて、管理装置11は、中継装置41のFIB(Forwarding Information Base:経路制御表)413に、ネットワークインタフェース411,412のうち一方から着信したパケットを、他方から転送することを許可する設定を投入する。
 次に端末2が管理装置11に対して、テナント6の追加を指示する(ステップS11)。この動作は、図6に示されている。
 管理装置11が、サーバ5上に追加のネットワークインタフェース61,62の2つを有するコンテナを起動するようサーバ5に指示して(ステップS12)、コンテナが起動するのを待つ(ステップS13)。ステップS12の動作は、後記する図7に示されている。起動したコンテナは、テナント6として機能する。
 管理装置11は、コンテナに設定を投入する(ステップS14)。この処理の詳細は、後記する図8に示されている。
 そして管理装置11は、左側の中継装置41に対して経路設定を投入し(ステップS15)、右側の中継装置42に対しても経路設定を投入すると(ステップS16)、図5の処理を終了する。ステップS15,S16の動作は、図11に示されている。
 ステップS15の処理の詳細は、後記する図9に示されている。ステップS16の処理の詳細は、後記する図10に示されている。
 図8は、コンテナへの論理アドレス付与処理を示すフローチャートである。
 管理装置11は、コンテナに対して、左側の装置31に対するトンネリングプロトコルを終端するためのtapデバイス63を作成する(ステップS20)。そして、管理装置11は、このtapデバイス63に、左側の装置31に対するテナント6の論理アドレスAを付与する(ステップS21)。管理装置11は、コンテナに対して、左側の装置31宛のパケットが、左側の中継装置41に転送されるよう、静的ルーティング設定を投入する(ステップS22)。
 次に管理装置11は、コンテナに対して、右側の装置32に対するトンネリングプロトコルを終端するためのtapデバイス64を作成する(ステップS23)。そして、管理装置11は、このtapデバイス64に、右側の装置32に対するテナント6の論理アドレスBを付与する(ステップS24)。管理装置11は、コンテナに対して、右側の装置32宛のパケットが、右側の中継装置42に転送されるよう、静的ルーティング設定を投入すると(ステップS25)、図8の処理を終了する。
 図9は、左側の中継装置41に対する経路設定処理を示すフローチャートである。
 管理装置11は、左側の中継装置41に対して、左側の装置31のアドレス宛のパケットを、左側のネットワークインタフェース411から左側の装置31へ転送するように経路設定する(ステップS30)。そして、管理装置11は、左側の中継装置41に対して、テナント6の論理アドレスA宛のパケットを、左側のネットワークインタフェース412からテナント6へ転送するように経路設定すると(ステップS31)、図9の処理を終了する。
 図10は、右側の中継装置42に対する経路設定処理を示すフローチャートである。
 管理装置11は、右側の中継装置42に対して、右側の装置32のアドレス宛のパケットを、右側のネットワークインタフェース422から右側の装置32へ転送するように経路設定する(ステップS40)。そして、管理装置11は、右側の中継装置42に対して、テナント6の論理アドレスB宛のパケットを、右側のネットワークインタフェース421からテナント6へ転送するように経路設定すると(ステップS41)、図10の処理を終了する。
 図12は、左右の装置31,32からテナント6のtapデバイス63,64にトンネル81,82が張られた状態を示す図である。
 装置31から、テナント6の論理アドレスA宛のトンネリングプロトコルが送信されると、中継装置41を経由し、テナント6のネットワークインタフェース61にて着信し、tapデバイス63でカプセル化が解除される。そして、tapデバイス64でカプセル化され、ネットワークインタフェース62から中継装置42を介して装置32へ転送される。このようなパケット中継方法によれば、このパケット中継システムの設定変更や工事切り替えを柔軟に実施することができる。
 図13は、第1実施形態の具体的設定例を示す図である。
 この図13の構成は、端末33とルータ35は、転送プロトコルとしてGREを使用し、端末34側は転送プロトコルを使用せず、IPパケットを直接ルーティングするものである。
 ルータ35と配下の端末33は、第1実施形態の装置31に該当する。
 プロトコル部43は、第1実施形態の中継装置41に該当する。そして第1実施形態の中継装置42が省略されており、端末34は、第1実施形態の装置32に該当する。
 端末33に対して、不図示の管理装置は、以下のコマンドを実施する。以下は、コンソールに対するコマンドラインの説明である。各コマンドラインにおいてIPとは、IPアドレスのことを指す。
(1-1)静的ルーティング設定
route add -host {端末34のIP} gw {ルータ35のIP}
 ルータ35に対して、不図示の管理装置は、以下のコマンドを実施する。
(2-1)静的ルーティング設定
route add -host {コンテナ66のmultus用NIC1個目のIP} gw {プロトコル部43のIP}
 ここでコンテナ66のmultus用NIC1個目とは、ネットワークインタフェース661のことをいう。
(2-2)GREトンネル設定
ip link add {IF名} type gretap local {ルータ35のIP} remote {コンテナ66のmultus用NIC1個目のIP}
ip addr add {GRE用NICの任意IP}/24 dev {IF名}
 ここでコンテナ66のmultus用NIC1個目とは、ネットワークインタフェース661のことをいう。
(2-3)静的ルーティング設定
route add -host {端末34のIP} gw {コンテナ66のGRE用NICのIP}
 ここでコンテナ66のGRE用NICとは、ネットワークインタフェース663のことをいう。
 プロトコル部43に対して、不図示の管理装置は、以下のコマンドを実施する。
(3-1)転送許可設定の確認
sysctl net.ipv4.ip_forwardが1になっていることを確認
 コンテナ66に対して、不図示の管理装置は、以下のコマンドを実施する。
(4-1)静的ルーティング設定
ip route add {ルータ35のIP}/32 via {プロトコル部43のIP}
 コンテナ66に対して、不図示の管理装置は、以下のコマンドを実施する。
(4-2)GREトンネル設定
ip link add {IF名} type gretap local {コンテナ66のIP} remote {ルータ35のIP}
ip addr add {GRE用NICの任意IP}/24 dev {IF名}
 コンテナ66に対して、不図示の管理装置は、以下のコマンドを実施する。
(4-3)静的ルーティング設定
ip route add {端末33のIP}/32 via {ルータ35のGRE用NICのIP}
 ここで、ルータ35のGRE用NICとは、ネットワークインタフェース351のことをいう。
 端末34に対して、不図示の管理装置は、以下のコマンドを実施する。
(5-1)静的ルーティング設定
route add -host {端末33のIP} gw {コンテナ66のmultus用NIC2個目のIP}
 ここでコンテナ66のmultus用NIC2個目とは、ネットワークインタフェース662のことをいう。
 これにより、ルータ35とコンテナ66との間には、トンネル83が構築される。
 このような設定により、ルータ35がトンネリングプロトコルのパケットを送受信する。ルータ35に着信したトンネリングプロトコルのパケットは、中継装置であるプロトコル部43によってコンテナ66(テナント)との間で送受信される。そして、このコンテナ66に構築された不図示の仮想ネットワークデバイス(tapデバイス)は、トンネリングプロトコルのパケットを終端させる。
《第2実施形態》
 第2の実施形態では、tapデバイス63,64にローカルアドレスを付与して、中継装置41,42にNAT変換させるものである。
 図14は、第2実施形態のパケット中継システム1の初期状態を示す図である。
 第2実施形態では、例えば中継装置41,42としてlinux(登録商標)OSを搭載した物理サーバとしている。テナント6として、コンテナを利用する例とし、コンテナの管理をkubernetes(登録商標)が実施する構成としている。初期状態では、テナント6であるコンテナは起動していない状態となっている。
 図15は、パケット中継システム1のテナント構成処理を示すフローチャートである。
 ステップS50にて、管理装置11は、中継装置41のFIB(Forwarding Information Base:経路制御表)413に、ネットワークインタフェース411,412のうち一方から着信したパケットを、他方から転送することを許可する設定を投入する。そして、管理装置11は、トンネリングプロトコルのコネクション管理を実施するためのモジュールを有効化する(ステップS51)。
 次に端末2が管理装置11に対して、テナント6の追加を指示する(ステップS52)。この動作は、図16に示されている。
 管理装置11が、サーバ5上に追加のネットワークインタフェース61,62の2つを有するコンテナを起動するようサーバ5に指示して(ステップS53)、コンテナが起動するのを待つ(ステップS54)。ステップS53の動作は、後記する図17に示されている。起動したコンテナは、テナント6として機能する。
 管理装置11は、コンテナに設定を投入する(ステップS55)。この処理の詳細は、後記する図18に示されている。
 そして管理装置11は、左側の中継装置41に対して経路設定を投入し(ステップS56)、右側の中継装置42に対しても経路設定を投入すると(ステップS57)、図15の処理を終了する。ステップS56,S57の動作は、図21に示されている。
 ステップS56の処理の詳細は、後記する図19に示されている。ステップS57の処理の詳細は、後記する図20に示されている。
 図18は、コンテナへのローカルアドレス付与処理を示すフローチャートである。
 管理装置11は、コンテナに対して、左側の装置31に対するトンネリングプロトコルを終端するためのtapデバイス63を作成する(ステップS60)。そして、管理装置11は、このtapデバイス63に、このシステム内でのみ使用するローカルアドレスCを付与する(ステップS61)。管理装置11は、コンテナに対して、左側の装置31宛のパケットが、左側の中継装置41に転送されるよう、静的ルーティング設定を投入する(ステップS62)。
 次に管理装置11は、コンテナに対して、右側の装置32に対するトンネリングプロトコルを終端するためのtapデバイス64を作成する(ステップS63)。そして、管理装置11は、このtapデバイス64に、このシステム内でのみ使用するローカルアドレスDを付与する(ステップS64)。管理装置11は、コンテナに対して、右側の装置32宛のパケットが、右側の中継装置42に転送されるよう、静的ルーティング設定を投入すると(ステップS65)、図18の処理を終了する。
 図19は、左側の中継装置41に対する経路設定処理を示すフローチャートである。
 管理装置11は、左側の中継装置41に対して、左側のネットワークインタフェース411で着信した、テナント6の論理アドレスC宛のパケットの宛先アドレスを、テナント6の左側のネットワークインタフェース61のアドレスにDNATする設定を投入する(ステップS70)。そして、管理装置11は、左側の中継装置41に対して、右側のネットワークインタフェース412からテナント6へ送信されるパケットのソースアドレスを、左側の中継装置41の右側のネットワークインタフェース412のアドレスにSNATする設定を投入する(ステップS71)。
 管理装置11は、左側の中継装置41に対して、右側のネットワークインタフェース412で着信した、テナント6の論理アドレスD宛のパケットの宛先アドレスを、左側の装置31のアドレスにDNATする設定を投入する(ステップS72)。そして、管理装置11は、左側の中継装置41に対して、左側のネットワークインタフェース411から左側の装置31へ送信されるパケットのソースアドレスを、テナント6の論理アドレスCにSNATする設定を投入すると(ステップS73)、図19の処理を終了する。
 図20は、右側の中継装置42に対する経路設定処理を示すフローチャートである。
 管理装置11は、右側の中継装置42に対して、右側のネットワークインタフェース422で着信した、テナント6の論理アドレスD宛のパケットの宛先アドレスを、テナント6の右側のネットワークインタフェース62のアドレスにDNATする設定を投入する(ステップS80)。そして、管理装置11は、右側の中継装置42に対して、左側のネットワークインタフェース421からテナント6へ送信されるパケットのソースアドレスを、右側の中継装置41の左側のネットワークインタフェース421のアドレスにSNATする設定を投入する(ステップS81)。
 管理装置11は、右側の中継装置42に対して、左側のネットワークインタフェース421で着信した、テナント6の論理アドレスD宛のパケットの宛先アドレスを、右側の装置32のアドレスにDNATする設定を投入する(ステップS82)。そして、管理装置11は、右側の中継装置42に対して、右側のネットワークインタフェース422から右側の装置32へ送信されるパケットのソースアドレスを、テナント6の論理アドレスDにSNATする設定を投入すると(ステップS83)、図20の処理を終了する。
 図22は、左右の装置31,32からテナント6のtapデバイス63,64にトンネル81,82が張られた状態を示す図である。
 装置31から、テナント6の論理アドレスC宛のトンネリングプロトコルが送信されると、中継装置41を経由し、テナント6のネットワークインタフェース61にて着信し、tapデバイス63でカプセル化が解除される。そして、tapデバイス64でカプセル化され、ネットワークインタフェース62から中継装置42を介して装置32へ転送される。
 図23は、第2実施形態の具体的設定例を示す図である。
 この図23の構成は、端末33側が転送プロトコルとしてGREを使用し、端末34側は転送プロトコルを使用せず、IPパケットを直接ルーティングする構成例を記載。
 ルータ35と配下の端末33は、第2実施形態の装置31に該当する。
 プロトコル部43は、第2実施形態の中継装置41に該当する。そして第2実施形態の中継装置42が省略されており、端末34は、第2実施形態の装置32に該当する。
 端末33に対して、不図示の管理装置は、以下のコマンドを実施する。以下は、コンソールに対するコマンドラインの説明である。各コマンドラインにおいてIPとは、IPアドレスのことを指す。
(1-1)静的ルーティング設定
route add -host {端末34のIP} gw {ルータ35のIP}
 ルータ35に対して、不図示の管理装置は、以下のコマンドを実施する。
(2-1)静的ルーティング設定
route add -host {コンテナ66の論理アドレス} gw {プロトコル部43のIP}
(2-2)GREトンネル設定:
ip link add {IF名} type gretap local {ルータ35のIP} remote {コンテナ66の論理アドレス}
ip addr add {GRE用NICのIP}/24 dev {IF名}
 ここでGRE用NICとは、ネットワークインタフェース351のことをいう。
(2-3)静的ルーティング設定
route add -host {端末34のIP} gw {コンテナ66のGRE用NICのIP}
 ここでコンテナ66のGRE用NICとは、ネットワークインタフェース663のことをいう。
 プロトコル部43に対して、不図示の管理装置は、以下のコマンドを実施する。
(3-1)転送許可設定の確認
sysctl net.ipv4.ip_forward が1になっていることを確認
(3-2)静的ルーティング設定
route add -host {端末33のIP} gw {ルータ35のIP}
(3-3)端末33と結ぶNICにおいてNAT変換設定 
iptables -t nat -A PREROUTING -d {テナントの論理アドレス} -i {IF名} -j DNAT --to-destination {コンテナ66のmultus用NIC1個目のIP}
iptables -t nat -A POSTROUTING -s {コンテナ66のmultus用NIC1個目のIP} -o {IF名} -j SNAT --to-source  {テナントの論理アドレス}
 ここでコンテナ66のmultus用NIC1個目とは、ネットワークインタフェース661のことをいう。
(3-4)コンテナ66と結ぶNICにおいてNAT変換設定:
iptables -t nat -A PREROUTING -d {テナントの論理アドレス} -i {IF名} -j DNAT --to-destination {ルータ35のIP}
iptables -t nat -A POSTROUTING -s {ルータ35のIP} -o {IF名} -j SNAT --to-source  {テナントの論理アドレス}
(3-5)GREパケットに対してNAT変換を適用させるためにカーネルモジュール適用
modprobe ip_gre
modprobe nf_nat_proto_gre
modprobe nf_conntrack_proto_gre
 コンテナ66に対して、不図示の管理装置は、以下のコマンドを実施する。
(4-1)静的ルーティング設定
ip route add {テナントの論理アドレス}/32 via {プロトコルのIP}
(4-2)GREトンネル設定:
ip link add {IF名} type gretap local {コンテナ66のIP} remote {テナントの論理アドレス}
ip addr add {GRE用NICのIP}/24 dev {IF名}
(4-3)静的ルーティング設定: ip route add {端末34のIP}/32 via {ルータ35のGRE用NICのIP}
(4-4)静的ルーティング設定
ip route add {端末34のIP}/32 via {ルータ36のIP}
 ルータ36に対して、不図示の管理装置は、以下のコマンドを実施する。
(5-1)転送許可設定
sysctl net.ipv4.ip_forward が1になっていることを確認
(5-2)静的ルーティング設定
route add -host {端末33のIP} gw {コンテナ66のmultus用NIC2個目のIP}
 ここで、コンテナ66のmultus用NIC2個目とは、ネットワークインタフェース662のことをいう。
 端末34に対して、不図示の管理装置は、以下のコマンドを実施する。
(6-1)静的ルーティング設定
route add -host {端末33のIP} gw {ルータ36のIP}
 これにより、ルータ35とコンテナ66との間には、トンネル84が構築される。
(変形例)
 本発明は、上記実施形態に限定されることなく、本発明の趣旨を逸脱しない範囲で、変更実施が可能であり、例えば、次の(a)~(f)のようなものがある。
(a) 実施例は、左側の装置31、右側の装置32ともにトンネリングプロトコルを利用した例を記載したが、片側のみ、トンネリングプロトコルを利用せず、IPパケットをテナント(コンテナ)からそのまま転送する形態も考えられる。
(b) 左側の装置31のトンネリングプロトコルと、右側の装置32のトンネリングプロトコルは、異なるプロトコルであってもよい。
(c) 管理装置からの設定指示(step2/step3)は順序性なしのため、逆順、あるいは同時に実施してもよい。
(d) テナントとしては、コンテナや、kubernetes(登録商標)のPodや仮想マシン、あるいは物理装置などでもよい。
(e) 管理装置は、上記実施例で示した、利用者からのテナント追加時に、テナント(コンテナ)および中継装置の設定を実施する機能のほかに、テナント削除やテナント再配置の機能を有してもよい。
(f) 管理装置は、テナントの追加以外に、テナントの削除、テナントの再配置機能も有する。具体的な実施順序を以下に示す。
《テナントの削除の順序》
(1) 装置でのルーティング削除またはトンネリングプロトコルの設定を削除する。
(2) 中継装置でのルーティング削除またはNAT設定を削除する。
(3) テナント(コンテナ)を削除する。
《テナントの再配置の順序》
(1)テナント(コンテナ)を新規に配置する。
(2)中継装置からテナント(コンテナ)に対するルーティングを,旧テナント(コンテナ)から新テナント(コンテナ)へ切り替える。この時点で,トラフィックは新テナント(コンテナ)側へ切り替わる。
(3)旧テナント(コンテナ)を削除する。
 このような設定により、ルータ35がトンネリングプロトコルのパケットを送受信する。ルータ35に着信したトンネリングプロトコルのパケットは、中継装置であるプロトコル部43によってコンテナ66(テナント)との間で送受信される。そして、このコンテナ66に構築された不図示の仮想ネットワークデバイス(tapデバイス)は、トンネリングプロトコルのパケットを終端させる。
《効果》
 以下、本発明に係るパケット中継システム等の効果について説明する。
《請求項1》
 トンネリングプロトコルを終端する複数の仮想ネットワークデバイスを構築したテナントと、
 前記テナントと外部とを接続する中継装置と、
 前記テナントおよび前記中継装置を管理して、前記中継装置に接続される外部装置と前記仮想ネットワークデバイスとの間にトンネリングプロトコルのパケットを送受信させる設定を投入する管理装置と、
 を備えることを特徴とするパケット中継システム。
 これにより、仮想ネットワークデバイスを再構築するだけで、従前のトンネリングプロトコルのパケット送受信を継続できるので、このパケット中継システムの設定変更や工事切り替えを柔軟に実施することができる。
《請求項2》
 各前記仮想ネットワークデバイスには、論理アドレスが付与されている、
 ことを特徴とする請求項1に記載のパケット中継システム。
 これにより、論理アドレスを仮想ネットワークデバイスに再付与するだけで、従前のトンネリングプロトコルのパケット送受信を継続できるので、このパケット中継システムの設定変更や工事切り替えを柔軟に実施することができる。
《請求項3》
 各前記仮想ネットワークデバイスには、ローカルアドレスが付与されており、
 前記中継装置は、前記テナントから着信した前記テナントの論理アドレス宛のパケットを、前記中継装置に接続された前記外部装置のアドレスにDNATし、前記中継装置から前記外部装置に送信されるパケットのソースアドレスを、前記テナントの論理アドレスにSNATする、
 ことを特徴とする請求項1に記載のパケット中継システム。
 これにより、ローカルアドレスを仮想ネットワークデバイスに再付与するだけで、従前のトンネリングプロトコルのパケット送受信を継続できるので、このパケット中継システムの設定変更や工事切り替えを柔軟に実施することができる。
《請求項4》
 前記管理装置は、各前記仮想ネットワークデバイスに論理アドレスを付与し、各前記中継装置に接続される前記外部装置からトンネリングプロトコルのパケットを受信した場合に前記仮想ネットワークデバイスでトンネリングプロトコルを終端させる設定を投入する、
 ことを特徴とする請求項1に記載のパケット中継システム。
 これにより、論理アドレスを仮想ネットワークデバイスに再付与するだけで、従前のトンネリングプロトコルのパケット送受信を継続できるので、このパケット中継システムの設定変更や工事切り替えを柔軟に実施することができる。
《請求項5》
 前記管理装置は、各前記仮想ネットワークデバイスにローカルアドレスを付与し、前記中継装置に、前記テナントから着信した前記テナントの論理アドレス宛のパケットを、前記中継装置に接続された前記外部装置のアドレスにDNATする設定と、前記中継装置から前記外部装置に送信されるパケットのソースアドレスを、前記テナントの論理アドレスにSNATする設定とを投入する、
 ことを特徴とする請求項1に記載のパケット中継システム。
 これにより、ローカルアドレスを仮想ネットワークデバイスに再付与するだけで、従前のトンネリングプロトコルのパケット送受信を継続できるので、このパケット中継システムの設定変更や工事切り替えを柔軟に実施することができる。
《請求項6》
 前記テナントは、コンテナ、仮想マシン、および物理サーバのうちの何れかとして構成されている、
 ことを特徴とする請求項1に記載のパケット中継システム。
 つまりテナントはコンテナに限定されず、仮想マシンや物理サーバによって構成されていてもよい。
《請求項7》
 前記仮想ネットワークデバイスは2個であり、一方の仮想ネットワークデバイスがパケット受信すると、他方の仮想ネットワークデバイスに転送する、
 ことを特徴とする請求項1に記載のパケット中継システム。
 これにより、仮想ネットワークデバイス間をパケット転送させることができ、対向する端末間のパケットを中継可能である。
《請求項8》
 外部装置がトンネリングプロトコルのパケットを送受信するステップと、
 中継装置が、テナントと前記外部装置との間で送受信されるパケットを中継するステップと、
 前記テナント上に構築された仮想ネットワークデバイスにトンネリングプロトコルを終端させるステップと、
 を実行することを特徴とするパケット中継方法。
 これにより、仮想ネットワークデバイスを再構築するだけで、従前のトンネリングプロトコルのパケット送受信を継続できるので、このパケット中継システムの設定変更や工事切り替えを柔軟に実施することができる。
1 パケット中継システム
10 転送装置
101,102 ネットワークインタフェース
103 ルーティングテーブル
11 管理装置
12,13 ルータ
2 端末
31,32 装置
33,34 端末
35,36 ルータ
351 ネットワークインタフェース
41 中継装置
411,412 ネットワークインタフェース
413 ルーティングテーブル
42 中継装置
421,422 ネットワークインタフェース
423 ルーティングテーブル
43 プロトコル部
5 サーバ
6 テナント
61,62 ネットワークインタフェース
63,64 tapデバイス
65 ルーティングテーブル
66 コンテナ
661~663 ネットワークインタフェース
7 インターネット
8,81~83 トンネル

Claims (8)

  1.  トンネリングプロトコルを終端する複数の仮想ネットワークデバイスを構築したテナントと、
     前記テナントと外部とを接続する中継装置と、
     前記テナントおよび前記中継装置を管理して、前記中継装置に接続される外部装置と前記仮想ネットワークデバイスとの間にトンネリングプロトコルのパケットを送受信させる設定を投入する管理装置と、
     を備えることを特徴とするパケット中継システム。
  2.  各前記仮想ネットワークデバイスには、論理アドレスが付与されている、
     ことを特徴とする請求項1に記載のパケット中継システム。
  3.  各前記仮想ネットワークデバイスには、ローカルアドレスが付与されており、
     前記中継装置は、前記テナントから着信した前記テナントの論理アドレス宛のパケットを、前記中継装置に接続された前記外部装置のアドレスにDNATし、前記中継装置から前記外部装置に送信されるパケットのソースアドレスを、前記テナントの論理アドレスにSNATする、
     ことを特徴とする請求項1に記載のパケット中継システム。
  4.  前記管理装置は、各前記仮想ネットワークデバイスに論理アドレスを付与し、各前記中継装置に接続される前記外部装置からトンネリングプロトコルのパケットを受信した場合に前記仮想ネットワークデバイスでトンネリングプロトコルを終端させる設定を投入する、
     ことを特徴とする請求項1に記載のパケット中継システム。
  5.  前記管理装置は、各前記仮想ネットワークデバイスにローカルアドレスを付与し、前記中継装置に、前記テナントから着信した前記テナントの論理アドレス宛のパケットを、前記中継装置に接続された前記外部装置のアドレスにDNATする設定と、前記中継装置から前記外部装置に送信されるパケットのソースアドレスを、前記テナントの論理アドレスにSNATする設定とを投入する、
     ことを特徴とする請求項1に記載のパケット中継システム。
  6.  前記テナントは、コンテナ、仮想マシン、および物理サーバのうちの何れかとして構成されている、
     ことを特徴とする請求項1に記載のパケット中継システム。
  7.  前記仮想ネットワークデバイスは2個であり、一方の仮想ネットワークデバイスがパケット受信すると、他方の仮想ネットワークデバイスに転送する、
     ことを特徴とする請求項1に記載のパケット中継システム。
  8.  外部装置がトンネリングプロトコルのパケットを送受信するステップと、
     中継装置が、テナントと前記外部装置との間で送受信されるパケットを中継するステップと、
     前記テナント上に構築された仮想ネットワークデバイスにトンネリングプロトコルを終端させるステップと、
     を実行することを特徴とするパケット中継方法。
PCT/JP2021/044329 2021-12-02 2021-12-02 パケット中継システム、および、パケット中継方法 WO2023100331A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2023564377A JPWO2023100331A1 (ja) 2021-12-02 2021-12-02
PCT/JP2021/044329 WO2023100331A1 (ja) 2021-12-02 2021-12-02 パケット中継システム、および、パケット中継方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2021/044329 WO2023100331A1 (ja) 2021-12-02 2021-12-02 パケット中継システム、および、パケット中継方法

Publications (1)

Publication Number Publication Date
WO2023100331A1 true WO2023100331A1 (ja) 2023-06-08

Family

ID=86611741

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/044329 WO2023100331A1 (ja) 2021-12-02 2021-12-02 パケット中継システム、および、パケット中継方法

Country Status (2)

Country Link
JP (1) JPWO2023100331A1 (ja)
WO (1) WO2023100331A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016100625A (ja) * 2014-11-18 2016-05-30 富士通株式会社 経路情報提供プログラム、経路情報提供方法、経路情報提供装置、情報処理システムの経路制御方法、及び、情報処理システム
JP2017532903A (ja) * 2014-10-14 2017-11-02 ミドクラ エスエイアールエル 仮想ネットワークにおける分散型フロー状態p2p設定のためのシステムおよび方法
JP2017224895A (ja) * 2016-06-13 2017-12-21 富士通株式会社 通信制御プログラム、通信制御方法及び通信制御装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017532903A (ja) * 2014-10-14 2017-11-02 ミドクラ エスエイアールエル 仮想ネットワークにおける分散型フロー状態p2p設定のためのシステムおよび方法
JP2016100625A (ja) * 2014-11-18 2016-05-30 富士通株式会社 経路情報提供プログラム、経路情報提供方法、経路情報提供装置、情報処理システムの経路制御方法、及び、情報処理システム
JP2017224895A (ja) * 2016-06-13 2017-12-21 富士通株式会社 通信制御プログラム、通信制御方法及び通信制御装置

Also Published As

Publication number Publication date
JPWO2023100331A1 (ja) 2023-06-08

Similar Documents

Publication Publication Date Title
EP3350963B1 (en) Control traffic in software defined networks
CA2810660C (en) Computer system and communication method in computer system
US5805924A (en) Method and apparatus for configuring fabrics within a fibre channel system
KR100310652B1 (ko) 네트워크 에뮬레이션을 제공하는 데이터 통신 네트워크에서 통신을 개선하기 위한 방법 및 시스템
WO2011093288A1 (ja) ネットワークシステム、コントローラ、ネットワーク制御方法
JP2018518124A (ja) データパケット転送
JPH11112577A (ja) Lanシステム間相互接続方式及びネットワークサービスシステム
JP5486526B2 (ja) 制御装置、制御システム、制御方法、及び制御プログラム
KR20090010951A (ko) 네트워크 디바이스를 위한 가상 인라인 구성
WO2014132967A1 (ja) 通信システム、スイッチ、制御装置、制御用チャネルの構築方法及びプログラム
JP2005167435A (ja) Vrの機密性を維持したvrrp技術
CN104796338A (zh) 虚拟机迁移方法及装置
WO2018135428A1 (ja) ゲートウェイ装置、ネットワークアドレス変換装置、通信システム、通信方法、および、プログラム
CN111556110A (zh) 一种用于私有云系统的不同物理业务网络自动化适配方法
JP6525256B2 (ja) 仮想ネットワークシステムおよび仮想ネットワーク経路設定方法
WO2023100331A1 (ja) パケット中継システム、および、パケット中継方法
JP4397416B2 (ja) ネットワークシステム及びネットワーク接続機器
KR101867883B1 (ko) 가상 네트워크를 운용하는 방법, 장치 및 컴퓨터 프로그램
JP3614006B2 (ja) 非対称経路利用通信システム、および、非対称経路利用通信方法
JP6881846B2 (ja) メディアアダプタ装置、分散通信管理方法および分散通信管理プログラム
KR101931139B1 (ko) 소프트웨어 정의 네트워크에서 호스트 상태 정보를 확인하는 방법, 장치 및 컴퓨터 프로그램
JP7472919B2 (ja) 通信装置、通信システム、通信方法、及びプログラム
WO2023105579A1 (ja) パケット中継システム、および、パケット中継方法
US12041027B2 (en) Communication apparatus, communication system, communication method and program
WO2023105582A1 (ja) テナント冗長化システム、および、テナント冗長化方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21966414

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2023564377

Country of ref document: JP

Kind code of ref document: A