WO2022049768A1 - パケット通信装置、パケット処理ルール設定方法、及びプログラム - Google Patents

パケット通信装置、パケット処理ルール設定方法、及びプログラム Download PDF

Info

Publication number
WO2022049768A1
WO2022049768A1 PCT/JP2020/033781 JP2020033781W WO2022049768A1 WO 2022049768 A1 WO2022049768 A1 WO 2022049768A1 JP 2020033781 W JP2020033781 W JP 2020033781W WO 2022049768 A1 WO2022049768 A1 WO 2022049768A1
Authority
WO
WIPO (PCT)
Prior art keywords
address
terminal
packet
communication device
rule
Prior art date
Application number
PCT/JP2020/033781
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 JP2022546854A priority Critical patent/JPWO2022049768A1/ja
Priority to US18/024,707 priority patent/US20230344761A1/en
Priority to PCT/JP2020/033781 priority patent/WO2022049768A1/ja
Publication of WO2022049768A1 publication Critical patent/WO2022049768A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types
    • H04L61/103Mapping addresses of different types across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/12Arrangements for remote connection or disconnection of substations or of equipment thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/24Multipath
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5007Internet protocol [IP] addresses
    • H04L61/5014Internet protocol [IP] addresses using dynamic host configuration protocol [DHCP] or bootstrap protocol [BOOTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/618Details of network addresses
    • H04L2101/622Layer-2 addresses, e.g. medium access control [MAC] addresses

Definitions

  • the present invention relates to a technique for distributing packets to any one of one or more paths and a technique for performing packet processing (filtering, traffic control, etc.) at the time of distribution.
  • NW network
  • Terminals such as IoT devices and PCs are connected to the CPE (Customer Premises Equipment) provided at the base. Further, the CPE is connected to one or more NWs via one or more paths, and performs a process of distributing packets from the terminal to the destination NW.
  • CPE Customer Premises Equipment
  • Non-Patent Documents 1 and 2 As a technique for realizing packet distribution, there is a technique for routing packets based on an input I / F, a source IP address, a port number, etc. (for example, Non-Patent Documents 1 and 2).
  • the present invention has been made in view of the above points, and it is possible to appropriately perform packet processing in a packet communication device that distributes a packet received from a terminal to any one of the above-mentioned one or more paths.
  • the purpose is to provide the technology.
  • a packet communication device connected to one or more paths.
  • a routing unit that distributes packets received from the terminal to one of the above-mentioned one or more paths, and
  • FIG. 1 It is a figure for demonstrating an example of a related technique. It is a figure for demonstrating an example of a related technique. It is a figure for demonstrating an example of a related technique. It is a figure for demonstrating an example of a related technique. It is a figure which shows the whole structure example of the system in embodiment of this invention. It is a figure for demonstrating the operation outline of the system in Embodiment of this invention. It is a flowchart which shows the processing procedure. It is a figure which shows the example of a table. It is a figure which shows the example of a table. It is a figure for demonstrating Example 1. FIG. It is a figure for demonstrating Example 1. FIG. It is a figure for demonstrating Example 1. FIG. It is a figure which shows the example of the monitoring method of DHCP payout. It is a figure for demonstrating Example 2. FIG.
  • FIG. It is a figure for demonstrating Example 2.
  • FIG. It is a figure for demonstrating a modification. It is a figure which shows the functional structure example of CPE. It is a figure which shows the functional composition example of an orchestrator. It is a figure which shows the hardware configuration example of the apparatus.
  • FIG. 1 shows a configuration example of a communication system in a related technology.
  • the CPE 10 is provided at the base.
  • the terminal A is connected to the interface (eth1) of the CPE10 via the NW1
  • the terminal B is connected to the interface (eth2) of the CPE10 via the NW2.
  • the interface will be referred to as I / F.
  • the CPE 10 is connected to the virtual router A and the virtual router A via the carrier network 20. It should be noted that the use of a “virtual router” is an example, and a “router” may be used instead of the “virtual router”. The same applies to the description of the embodiments of the present invention described later.
  • Tunnels are constructed between the tunnel I / F (tun0) on the CPE eth0 and the virtual router A, and between the tunnel I / F (tun1) and the virtual router B, respectively.
  • the tunnel is a virtual path, and the tunnel may be called a "path".
  • the tunnel may be a tunnel that encapsulates a packet or a tunnel that does not encapsulate a packet.
  • the communication of the packet may be a tunnel.
  • the CPE 10 has a routing unit 11 in addition to each I / F.
  • the routing unit 11 can perform routing based on a packet input I / F, a packet source IP address, a packet source port number, and the like by using PBR (Police-Based Routing).
  • the packet can be distributed to the designated tunnel.
  • FIG. 2 shows an example of the PBR routing rule set in the routing unit 11.
  • the output I / F is determined based on the input I / F of the packet.
  • FIG. 3 shows other configuration examples of related technologies. Compared to FIG. 2, the example shown in FIG. 3 has a different configuration within the base.
  • the base is assumed to be a mass user, SOHO, etc., and its NW is small.
  • NW NW1
  • IP address issuance is managed by DHCP. This configuration has the following problems.
  • the input I / F is common among the plurality of terminals. Therefore, it becomes impossible to distribute packets for each terminal based on the input I / F described with reference to FIG.
  • the subnet is also common between terminals, it is not possible to sort by the source subnet.
  • IP address of the terminal is dynamically changed by DHCP, when packet distribution is performed by the source IP address, the change cannot be followed and the desired packet distribution may not be possible.
  • FIG. 4 shows an example of the overall configuration of the communication system according to the present embodiment.
  • the base in this communication system is a base having a small-scale NW such as a mass user or SOHO, as in the case of FIG. 3, a plurality of terminals belong to one NW, and IP is performed by DHCP. It is assumed that an address will be assigned to each terminal.
  • NW such as a mass user or SOHO
  • the technique according to the present invention can be applied regardless of the configuration of the NW of the base.
  • the technique according to the present invention can be applied to the configuration shown in FIG.
  • the communication system in the present embodiment is a system that communicates IP packets on Ethernet (registered trademark), and is assumed to have at least general functions such as ARP. Is an example.
  • a CPE 100 is provided at a base in the communication system according to the present embodiment.
  • the CPE100 may be referred to as an in-home customer device, a home gateway, or the like. Further, the CPE 100 may be referred to as a packet communication device.
  • An AP (access point) 30 is connected to the CPE 100, and terminals 40 to 60 are connected under the AP 30.
  • the AP30 is, for example, a wireless LAN access point.
  • FIG. 4 shows IoT devices 40, corporate loan terminals 50, and personal terminals 60 as specific examples of terminals 40 to 60.
  • the CPE 100 is connected to the virtual router 610, the virtual router 620, and the virtual router 630 by each tunnel constructed on the carrier network 20.
  • the virtual router 610 is connected to the Internet 710
  • the virtual router 620 is connected to the corporate NW720
  • the virtual router 630 is connected to the MEC730.
  • the packet from the personal terminal 60 is sent to the tunnel for best effort transfer, and is transmitted to the Internet 710 via the tunnel.
  • the packet from the corporate lending terminal 50 is sent to the VPN tunnel that performs priority control, and is transmitted to the corporate NW720 via the tunnel.
  • the packet from the IoT device 40 is sent to a low-delay tunnel for priority control, and is transmitted to the MEC (Multi-access Edge Computing) network 730 via the tunnel.
  • MEC Multi-access Edge Computing
  • the routing unit 140 of the CPE 100 can distribute packets for each terminal. Details of the CPE 100 that make this possible will be described later.
  • An orchestrator 200 is provided for registering information in the CPE 100 or the like in order to perform the above processing. Further, the service order DB 500 is provided, and the orchestrator 200 can access the service order DB 500.
  • the service order DB 500 may be provided inside the orchestrator 200 or may be provided outside the orchestra 200.
  • the account name of the portal site, the service subscription status, the IP address and API information of the CPE and the virtual router, the IP address of the VPN connection destination, the I / F information of the CPE (I / F name and the like) are provided for each user. (Set value) etc. are stored.
  • User 400 can input setting information by accessing the portal site 300 (Web server, etc.).
  • the user 400 accesses the portal site 300 (customer setting page, etc.) and sets terminal information, service information, and the like.
  • the terminal information is, for example, information (MAC address, etc.) of the terminal that the user wants to set.
  • the service information is, for example, information on the service (VPN connection destination, priority, etc.) that the user wants to set.
  • the user when the user wants to connect the corporate rental terminal 50 to the business server on the corporate NW with high priority via the VPN tunnel, the user can use the MAC address of the corporate rental terminal 50, the connection destination (corporate NW), and so on.
  • access to the portal site 300 and set information instructing a high-priority connection when the user wants to connect the corporate rental terminal 50 to the business server on the corporate NW with high priority via the VPN tunnel, the user can use the MAC address of the corporate rental terminal 50, the connection destination (corporate NW), and so on.
  • access to the portal site 300 and set information instructing a high-priority connection.
  • the setting information set by the user is sent from the portal site 300 to the orchestra 200.
  • the orchestrator 200 has user information (CPE IP address, API information, authentication information) necessary for setting from the service order DB 500 to the CPE 100 based on the account name of the set user, the setting information input by the user, and the like. Etc.), CPE setting input information (tunnel interface name, DCSP value, etc.) of the connection destination service is acquired, and terminal information (MAC address) and CPE setting input information are set in CPE100.
  • the information set here corresponds to the information associated with the terminal identifier and the connection destination, which will be described later. Make the necessary settings for the virtual router as well.
  • the user 400 can receive the service ordered via the portal site 300.
  • FIG. 5 is a diagram showing a configuration example of the communication system according to the present embodiment, including the internal configuration of the CPE 100.
  • the base is equipped with CPE10.
  • Both the terminal A and the terminal B are connected to the I / F (eth1) of the CPE100 via the NW1.
  • Tunnels are constructed between the tunnel I / F (tun0) and the virtual router A on eth0 of the CPE100, and between the tunnel I / F (tun1) and the virtual router B, respectively.
  • the CPE 100 has a process 110, a terminal information DB 120, an address information DB 130, and a routing unit 140 in addition to the above-mentioned I / Fs.
  • the process 110 corresponds to a program executed in the CPE 100.
  • the process 110 corresponds to a functional unit realized by executing the program in the CPE 100.
  • the routing unit 140 holds application rules for packet processing such as PBR routing rules, and distributes packets received from terminals to paths, packet filtering, traffic control, and other packet processing in accordance with the application rules. ..
  • the address information DB 130 is, for example, a DHCP lease table, an ARP table, a radius server database, or the like.
  • the address information DB 130 is not limited to the DHCP lease table, ARP table, RADIUS server database, and the like, and may be a table or database other than these.
  • the address information DB 130 may be provided outside the CPE 100 instead of inside the CPE 100.
  • the process 110 has a REST API, and the setting information from the orchestrator 200 is mediated by the REST API and input to each DB or the like.
  • the orchestrator 200 may be set and input directly to the CPE 100 by SSH instead of API. The process executed by the process 110 will be described with reference to the flowchart of FIG.
  • the address information DB 130 stores the association information between the IP address of the terminal and the terminal identifier for each terminal.
  • the association information is updated when the IP address of the terminal is changed.
  • a PBR routing rule is set for each terminal based on the IP address acquired by the process 110.
  • the application rule for packet processing in the routing unit 140 is only an example.
  • ACL filtering rule (eg iptables, firewall), traffic control such as bandwidth control and priority control (eg traffic control of Linux (registered trademark)) may be used. .. Rules other than these may be used as application rules for packet processing in the routing unit 140. Further, the application rule of packet processing in the routing unit 140 may be one or a plurality.
  • the MAC address of the terminal is used as the terminal identifier.
  • FIG. 7 shows an example of the association information stored in the address information DB 130. An example of a method of acquiring (updating) information associated with an IP address and a terminal identifier will be described in Examples 1 and 2 described later.
  • the procedure of FIG. 6 is repeatedly executed, for example, at predetermined time intervals.
  • the process 110 acquires the association information of the MAC address of the terminal and the connection destination (I / F name, etc.) of the terminal from the orchestra 200, and stores the acquired association information in the terminal information DB 120.
  • FIG. 8 shows an example of the information stored in the terminal information DB 120. In FIG. 8, for example, entry 100 shows that the MAC address of a certain terminal is associated with tun0.
  • the process 110 acquires the corresponding IP address by referring to the address information DB 130 for each of the terminal identifiers (MAC addresses) stored in the terminal information DB 120. That is, the IP address assigned to the terminal of the terminal identifier (MAC address) is acquired. It should be noted that acquiring an IP address by referring to the address information DB 130 is an example.
  • the process 110 detects that the IP address acquired in S2 is different from the IP address acquired in the previous S2 for a certain terminal, the process 110 updates the packet processing application rule for the terminal. Specifically, for example, the routing rule of PBR is updated.
  • the process 110 is the IP of the terminal A.
  • examples 1 and 2 will be described in which the method of acquiring the association information between the IP address and the terminal identifier (here, the MAC address) is described more specifically.
  • FIG. 9 shows a configuration example of the communication system according to the first embodiment.
  • the CPE 100 of the first embodiment includes a DHCP server 150 and a lease table 160 in addition to the I / F, the process 110, the terminal information DB 120, and the routing 140 described with reference to FIG.
  • the lease table 160 is an example of the address information DB 130 shown in FIG.
  • FIG. 9 shows, as an example, an example in which the CPE 100 includes a DHCP server 150 and a lease table 160.
  • the DHCP server 150 (and the lease table 160) may be provided outside the CPE 100.
  • the process 110 acquires the IP address assigned to the terminal from the MAC address by using the function of the DHCP server 150, and updates the PBR when the IP address is changed. More specifically, there are the following Examples 1-1 to 1-3.
  • Example 1-1 As shown as “Example 1-1" in FIG. 9, the process 110 is assigned out for each MAC address by monitoring the lease table 160 of the DHCP server 150. Determine if there is a change in the IP address.
  • FIG. 10 shows an example of information stored in the lease table 160.
  • Example 1-2 the DHCP server 150 may be inside the CPE 100 or outside the CPE 100. However, Example 1-2 depends on the function of the DHCP server 150. Here, it is assumed that the DHCP server 150 has the following functions.
  • Example 1-2 the process 110 acquires the IP address corresponding to the MAC address of the terminal by using the API provided by the DHCP server 150.
  • Process 110 may refer to DHCP fixed IP settings.
  • the process 110 may have the DHCP server 150 notify the MAC address of the terminal and the assigned IP address when the DHCP server 150 issues the IP address to the terminal.
  • Example 1-3 the DHCP server 150 may be inside the CPE 100 or outside the CPE 100.
  • the process 110 detects the allocation of the IP address to the terminal by snooping the messages sent and received between the DHCP server 150 and the terminal (DHCP client).
  • FIG. 11 shows an example of exchanging messages between the terminal A and the DHCP server 150.
  • the terminal A transmits DHCP-Discovery by broadcasting.
  • the DHCP server 150 Upon receiving the DHCP-Discovery, the DHCP server 150 transmits the DHCP-Offer including the proposed IP address to the terminal A in S102.
  • the terminal A sends a DHCP-Request to the DHCP server 150 so that the proposed IP address can be paid out.
  • the DHCP server 150 transmits a DHCP-Acknowledge to approve the IP payout to the terminal A.
  • the process 110 when the process 110 detects that DHCP-Discovery is transmitted from a certain terminal, the process 110 monitors the DHCP-Request transmitted from the terminal in S103, and sets the request IP address included in the DHCP-Request to the DHCP server 150. It is acquired as the IP address assigned to the terminal.
  • FIG. 12 shows a configuration example of the communication system according to the second embodiment.
  • the CPE 100 of the second embodiment includes an ARP table 170 in addition to the I / F, the process 110, the terminal information DB 120, and the routing 140 described with reference to FIG.
  • the ARP table 170 is an example of the address information DB 130 shown in FIG.
  • FIG. 13 shows an example of information stored in the ARP table 170.
  • the ARP table 170 stores the I / F, the IP address, and the MAC address in association with each other.
  • An ether frame (including an IP packet) destined for a MAC address is transmitted from eth1.
  • the process 110 acquires an IP address from the MAC address by using ARP. More specifically, there are the following Examples 2-1 to 2-2.
  • Example 2-1 the process 110 monitors and updates whether the IP address corresponding to the MAC address has been updated (changed) by referring to the ARP table 170 for each MAC address in the terminal information DB 120. When it is detected, the PBR routing rule is updated.
  • Example 2-2 the process 110 has a function of RARP (Reverse Address Resolution Protocol).
  • the process 110 broadcasts a request including a MAC address for which the corresponding IP address is to be known, and when the terminal (or server) receiving the request knows the IP address corresponding to the MAC address, the process 110 uses the IP address. Return to process 110.
  • RARP Reverse Address Resolution Protocol
  • the process 110 periodically acquires the corresponding IP address for each MAC address in the terminal information DB 120 by using RARP, for example, and updates the PBR routing rule when the IP address is changed.
  • procedure is such that the IP address can be known from the MAC address
  • a procedure other than RARP may be used.
  • the routing unit 140 of the CPE 100 installed at the base performs the packet distribution processing, but such a configuration is an example.
  • the routing unit 740 in the virtual CPE 700 on the cloud service connected to the CPE 100 of the base by the L2 tunnel may perform the packet distribution processing.
  • the L2 tunnel is, for example, an L2VPN tunnel such as L2TP or VXLAN, and the virtual CPE 700 exists in the same NW as the CPE 100.
  • the virtual CPE 700 has the same configuration (process, terminal information DB, etc.) as the CPE 100 described so far, and executes the same processing as the CPE 100 described so far.
  • the terminal may have the same configuration (process, terminal information DB, etc.) as the CPE100 described so far, and may include a functional unit that executes the same processing as the CPE100 described so far.
  • Packet communication devices such as CPE100, virtual CPE700, and functional parts of terminals that perform packet distribution processing and setting and changing application rules may be collectively referred to as "packet communication devices”.
  • FIG. 15 shows an example of the functional configuration of the CPE 100 focusing on the functions of the CPE 100.
  • the CPE 100 has a communication unit 101, a routing unit 102, a control unit 103, and a storage unit 104.
  • the virtual CPE 700 has a similar configuration.
  • the communication unit 101 corresponds to the I / F shown in FIG. 5 and the like, and transmits / receives packets.
  • the routing unit 102 corresponds to the routing unit 140 shown in FIG. 5 and the like, and performs packet distribution processing based on the routing rule of PBR.
  • the control unit 103 corresponds to the process 110 shown in FIG. 5 and the like, and as described in Examples 1 and 2, checks whether or not the IP address has been changed, and if there is a change, the PBR in the routing unit 140. Update the routing rules for.
  • the storage unit 104 corresponds to the terminal information DB 120 and the address information DB 130 shown in FIG. 5 and the like, and stores various data.
  • FIG. 16 is a diagram showing a functional configuration example of the orchestra 200.
  • the orchestrator 200 has a setting information acquisition unit 201, a storage unit 202, and a registration unit 203.
  • the setting information acquisition unit 201 acquires the information set by the user 400 from the portal site 300.
  • the storage unit 202 corresponds to the service order DB 500 shown in FIG.
  • the registration unit 203 is based on, for example, the information acquired by the setting information acquisition unit 201 (terminal identifier (MAC address, etc.)) and the information read from the storage unit 202 (connection destination (I / F name, etc.)).
  • the terminal identifier (MAC address, etc.) and the connection destination (I / F name, etc.) are transmitted (registered) to the CPE100 (or virtual CPE700).
  • the CPE 100, the virtual CPE 700, the orchestrator 200, and the terminal can all be realized by, for example, causing a computer to execute a program.
  • This computer may be a physical computer or a virtual machine.
  • the device uses hardware resources such as a CPU and memory built in the computer to execute a program corresponding to the processing performed by the device. It can be realized by.
  • the above program can be recorded on a computer-readable recording medium (portable memory, etc.), stored, and distributed. It is also possible to provide the above program through a network such as the Internet or e-mail.
  • FIG. 17 is a diagram showing an example of the hardware configuration of the computer.
  • the computer of FIG. 16 has a drive device 1000, an auxiliary storage device 1002, a memory device 1003, a CPU 1004, an interface device 1005, a display device 1006, an input device 1007, an output device 1008, and the like, which are connected to each other by a bus B, respectively.
  • the program that realizes the processing on the computer is provided by, for example, a recording medium 1001 such as a CD-ROM or a memory card.
  • a recording medium 1001 such as a CD-ROM or a memory card.
  • the program is installed in the auxiliary storage device 1002 from the recording medium 1001 via the drive device 1000.
  • the program does not necessarily have to be installed from the computer-readable recording medium 1001, and may be downloaded from another computer via the network.
  • the auxiliary storage device 1002 stores the installed program and also stores necessary files, data, and the like.
  • the memory device 1003 reads and stores the program from the auxiliary storage device 1002 when the program is instructed to start.
  • the CPU 1004 realizes the function related to the device according to the program stored in the memory device 1003.
  • the interface device 1005 is used as an interface for connecting to a network and functions as a communication unit.
  • the display device 1006 displays a GUI (Graphical User Interface) or the like by a program.
  • the input device 1007 is composed of a keyboard, a mouse, buttons, a touch panel, and the like, and is used for inputting various operation instructions.
  • the output device 1008 outputs the calculation result.
  • a computer-readable recording medium is a medium that dynamically holds a program for a short period of time, such as a communication line when a program is transmitted via a network such as the Internet or a communication line such as a telephone line.
  • a program may be held for a certain period of time, such as a volatile memory inside a computer system serving as a server or a client. Further, the above program may be for realizing a part of the function of the device.
  • This specification discloses at least the packet communication device, the packet processing rule setting method, and the program described in the following items.
  • (Section 1) A packet communication device connected to one or more paths.
  • a routing unit that distributes packets received from the terminal to one of the above-mentioned one or more paths, and
  • the packet processing application rule is any one or more of a routing rule, a filtering rule, and a traffic control rule in PBR.
  • the control unit monitors whether or not the IP address corresponding to the terminal identifier of the terminal has been changed by referring to the database holding the IP address and the terminal identifier, and when the IP address is changed, the control unit monitors whether or not the IP address corresponding to the terminal identifier of the terminal has been changed.
  • the packet communication device according to paragraph 1 or 2 for updating the application rule.
  • the control unit acquires an IP address corresponding to the terminal identifier of the terminal from the DHCP server, monitors whether or not the IP address has been changed, and updates the application rule when the IP address is changed.
  • the packet communication device according to the first or second paragraph.
  • the control unit acquires the IP address of the terminal by snooping the communication between the DHCP server and the terminal, monitors whether or not the IP address has been changed, and the IP address has been changed.
  • the control unit uses RARP to acquire an IP address corresponding to the terminal identifier of the terminal, monitors whether or not the IP address has been changed, and if the IP address is changed, the application rule.
  • the packet communication device according to the first or second paragraph.
  • (Section 7) It is a packet processing rule setting method executed by a packet communication device connected to one or more paths.
  • the packet communication device includes a routing unit that distributes a packet received from a terminal to any one of the one or more paths.
  • a packet processing rule setting method for acquiring an IP address of the terminal and setting an application rule for packet processing in the routing unit based on the IP address.
  • (Section 8) A program for making a computer function as each part in the packet communication device according to any one of the items 1 to 6.

Landscapes

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

Abstract

1以上のパスに接続されるパケット通信装置であって、端末から受信したパケットを、前記1以上のパスのうちのいずれかのパスに振り分けるルーティング部と、前記端末のIPアドレスを取得し、当該IPアドレスに基づいて、前記ルーティング部におけるパケット処理の適用ルールを設定する制御部とを備える。

Description

パケット通信装置、パケット処理ルール設定方法、及びプログラム
 本発明は、パケットを、1以上のパスのうちのいずれかのパスに振り分ける技術及び振り分け時におけるパケット処理(フィルタリングやトラフィック制御等)を実施する技術に関連するものである。
 近年、IoT機器の普及により、様々なIoT機器がネットワーク(NW)に接続されている。また、テレワーク等、ユーザが家庭用NWにPCを接続して業務を行うケースも増えている。
 IoT機器やPC等の端末は、拠点に備えられるCPE(Customer Premises Equipment)に接続される。また、CPEは、1以上のパスを介して1以上のNWに接続され、端末からのパケットを宛先のNWに振り分ける処理を行う。
 パケットの振り分けを実現する技術として、入力I/F、送信元IPアドレス、ポート番号等に基づいてパケットのルーティングを行う技術がある(例えば非特許文献1,2)。
Cisco, "Understanding Policy Routing" https://www.cisco.com/c/en/us/support/docs/ip/border-gateway-protocol-bgp/10116-36.html?dtid=osscdc000283 Linux(登録商標) IP-ROUTE https://manpages.debian.org/experimental/iproute2/ip-route.8.en.html
 一般家庭やSOHO等の小規模NWを有する拠点では、拠点内のNWが端末毎に分離されていないことが一般的である。このようなNWでは、入力I/F、ポート番号等に基づいて端末を区別することが難しく、また、DHCPにより送信元IPアドレスが動的に変わる場合が多い。そのため、端末毎に端末に応じたパケット処理を適切に行うことが難しいという課題がある。なお、本明細書における「パケット処理」は、その意味として、少なくとも「パケット振り分け」と「パケットフィルタリング」と「トラフィック制御」を含む。
 本発明は上記の点に鑑みてなされたものであり、端末から受信したパケットを、前記1以上のパスのうちのいずれかのパスに振り分けるパケット通信装置において、パケット処理を適切に行うことを可能とする技術を提供することを目的とする。
 開示の技術によれば、1以上のパスに接続されるパケット通信装置であって、
 端末から受信したパケットを、前記1以上のパスのうちのいずれかのパスに振り分けるルーティング部と、
 前記端末のIPアドレスを取得し、当該IPアドレスに基づいて、前記ルーティング部におけるパケット処理の適用ルールを設定する制御部と
 を備えるパケット通信装置が提供される。
 開示の技術によれば、端末から受信したパケットを、前記1以上のパスのうちのいずれかのパスに振り分けるパケット通信装置において、パケット処理を適切に行うことが可能となる。
関連技術の例を説明するための図である。 関連技術の例を説明するための図である。 関連技術の例を説明するための図である。 本発明の実施の形態におけるシステムの全体構成例を示す図である。 本発明の実施の形態におけるシステムの動作概要を説明するための図である。 処理手順を示すフローチャートである。 テーブルの例を示す図である。 テーブルの例を示す図である。 実施例1を説明するための図である。 実施例1を説明するための図である。 DHCP払出の監視方法の例を示す図である。 実施例2を説明するための図である。 実施例2を説明するための図である。 変形例を説明するための図である。 CPEの機能構成例を示す図である。 オーケストレータの機能構成例を示す図である。 装置のハードウェア構成例を示す図である。
 以下、図面を参照して本発明の実施の形態(本実施の形態)を説明する。以下で説明する実施の形態は一例に過ぎず、本発明が適用される実施の形態は、以下の実施の形態に限られるわけではない。
 (関連技術について)
 本実施の形態に係る技術を説明する前に、関連技術について説明する。図1は、関連技術における通信システムの構成例を示す。
 図1に示すように、本通信システムにおいて、拠点には、CPE10が備えられている。端末AがNW1を介してCPE10のインターフェース(eth1)に接続され、端末BがNW2を介してCPE10のインターフェース(eth2)に接続されている。なお、以降、インタフェースをI/Fと記載する。
 CPE10は、キャリア網20を介して仮想ルータA、仮想ルータAに接続されている。なお、「仮想ルータ」が使用されることは一例であり、「仮想ルータ」に代えて、「ルータ」が使用されてもよい。後述する本発明の実施の形態の説明でも同様である。
 CPEのeth0上のトンネルI/F(tun0)と仮想ルータAとの間、及び、トンネルI/F(tun1)と仮想ルータBとの間のそれぞれに、トンネルが構築されている。トンネルは、仮想的なパスであり、トンネルを「パス」と呼んでもよい。関連技術、及び後述する本発明の実施の形態の説明において、トンネルは、パケットのカプセル化を行うトンネルであってもよいし、パケットのカプセル化を行わないトンネルであってもよい。例えば、パケットにDSCP値等を付与することでQoS制御や優先制御を行う場合における当該パケットの通信がトンネルであってもよい。
 図1に示すとおり、CPE10は、各I/Fに加えて、ルーティング部11を有している。ルーティング部11は、PBR(Policy-Based Routing)によって、パケットの入力I/F、パケットの送信元IPアドレス、パケットの送信元ポート番号等に基づいたルーティングを行うことが可能である。
 例えば、ルーティング部11において、特定の送信元IPアドレスを持つパケットの出力I/FとしてトンネルI/Fを指定することで、当該パケットを指定のトンネルへ振り分けることが可能である。
 図2に、ルーティング部11に設定されるPBRのルーティングルールの例を示す。図2に示す例では、パケットの入力I/Fに基づいて、出力I/Fが決定される。
 図3に、関連技術の他の構成例を示す。図2と比べて、図3に示す例は、拠点内構成が異なる。
 図3に示す例では、拠点は、マスユーザやSOHO等を想定しており、そのNWは小規模なものである。CPEやAPの機能及び設置に制約があるため、図3に示すように、複数の端末が同一NW(NW1)に所属する。また、IPアドレス払い出しはDHCPによって管理される。この構成には下記のような課題がある。
 すなわち、図3に示す構成では、複数端末が同一NWに所属するため、入力I/Fが複数端末間で共通となる。よって、図2を参照して説明した入力I/Fに基づく端末毎のパケット振り分けができなくなる。また、サブネットも端末間で共通となるため、送信元サブネットによる振り分けもできなくなる。
 また、DHCPにより端末のIPアドレスが動的に変更されるので、送信元IPアドレスによるパケット振り分けを行う場合において、その変更に追随できず、所望したパケット振り分けができなくなる可能性がある。
 なお、パケットのポート番号やペイロードでAPL(アプリケーション)を大まかに特定することは可能であるが、端末の識別には不適であり、ポート番号やペイロードによる端末毎のパケット振り分けは困難である。
 以下、本発明の実施の形態に係る技術として、複数端末が同一NWに接続され、IPアドレスが動的に変更される場合でも、適切にパケットの振り分けを行うことを可能とする技術について説明する。
 (システムの構成例)
 図4に、本実施の形態における通信システムの全体の構成例を示す。図4に示すように、本通信システムにおける拠点は、図3の場合と同様に、マスユーザやSOHO等の小規模NWを有する拠点であり、複数端末が1つのNWに所属し、DHCPによりIPアドレスが各端末に割り当てられることを想定している。
 ただし、このような想定は一例であり、本発明に係る技術は、拠点のNWの構成に依らずに適用可能である。例えば、図2に示す構成においても本発明に係る技術を適用することが可能である。
 本実施の形態における通信システムは、イーサネット(登録商標)上でIPパケットの通信を行うシステムであり、ARP等の一般的な機能を少なくとも備えていることを想定しているが、このような想定は一例である。
 図4に示すように、本実施の形態における通信システムにおける拠点には、CPE100が備えられている。CPE100を宅内顧客装置、ホームゲートウェイ等と呼んでもよい。また、CPE100をパケット通信装置と呼んでもよい。
 CPE100には、AP(アクセスポイント)30が接続され、AP30の配下に端末40~60が接続されている。AP30は、例えば、無線LANのアクセスポイントである。図4には、端末40~60の具体例として、IoT機器40、企業貸与端末50、個人用端末60が示されている。
 CPE100は、キャリア網20上に構築される各トンネルにより、仮想ルータ610、仮想ルータ620、及び仮想ルータ630に接続されている。仮想ルータ610はインターネット710に接続され、仮想ルータ620は企業NW720に接続され、仮想ルータ630はMEC730に接続されている。
 図4の例では、一例として、個人用端末60からのパケットは、ベストエフォートの転送を行うトンネルに送出され、当該トンネルを介してインターネット710に送信される。また、企業貸与端末50からのパケットは、優先制御を行うVPNトンネルに送出され、当該トンネルを介して企業NW720に送信される。また、IoT機器40からのパケットは、優先制御を行う低遅延トンネルに送出され、当該トンネルを介してMEC(Multi-access Edge Computing)のネットワーク730に送信される。
 本実施の形態では、IPアドレスが動的に変更される場合であっても、CPE100のルーティング部140は、端末毎のパケット振り分けを行うことが可能である。これを可能とするCPE100の詳細については後述する。
 上記の処理を行うためにCPE100等への情報登録のために、オーケストレータ200が備えられている。また、サービスオーダDB500が備えられており、オーケストレータ200はサービスオーダDB500にアクセス可能である。サービスオーダDB500は、オーケストレータ200の内部に備えられていてもよいし、オーケストレータ200の外部に備えられていてもよい。
 サービスオーダDB500には、ユーザ毎に、ポータルサイトのアカウント名、サービス加入状況、CPEと仮想ルータのIPアドレス及びAPI情報、VPN接続先のIPアドレス、CPEのI/F情報(I/F名や設定値)等が格納されている。
 ユーザ400(ユーザの端末等)は、ポータルサイト300(Webサーバ等)にアクセスすることで、設定情報を投入することができる。
 すなわち、ユーザ400は、ポータルサイト300(お客様設定ページ等)にアクセスして、端末情報、サービス情報等を設定する。端末情報は、例えば、ユーザが設定したい端末の情報(MACアドレス等)である。サービス情報は、例えば、ユーザが設定したいサービスの情報(VPN接続先、優先度等)である。
 例えば、ユーザが、企業貸与端末50を、VPNトンネルを介して高優先で企業NW上の業務サーバに接続させたい場合において、ユーザは、企業貸与端末50のMACアドレス、接続先(企業NW)、及び、高優先の接続を指示する情報をポータルサイト300にアクセスして設定する。
 ポータルサイト300からオーケストレータ200に対して、ユーザが設定した設定情報が送られる。オーケストレータ200は、設定をしたユーザのアカウント名、及びユーザが入力した設定情報等に基づいて、サービスオーダDB500から、CPE100への設定に必要なユーザ情報(CPEのIPアドレス、API情報、認証情報等)、接続先サービスのCPE設定投入情報(トンネルインターフェイス名やDSCP値等)等を取得して、端末情報(MACアドレス)及びCPE設定投入情報をCPE100に設定する。ここで設定される情報は、後述する端末識別子と接続先との紐付け情報に相当する。仮想ルータに対しても必要な設定を行う。
 上記のようにして、CPE100等への設定を行うことで、ユーザ400は、ポータルサイト300経由でオーダしたサービスを受けることができる。
 (CPE100の構成、動作等)
 図5は、CPE100の内部構成を含む、本実施の形態における通信システムの構成例を示す図である。図5に示す例において、拠点にはCPE10が備えられている。端末Aと端末BはいずれもNW1を介してCPE100のI/F(eth1)に接続されている。
 CPE100のeth0上のトンネルI/F(tun0)と仮想ルータAとの間、及び、トンネルI/F(tun1)と仮想ルータBとの間のそれぞれに、トンネルが構築されている。
 図5に示すように、CPE100は、上述した各I/Fに加えて、プロセス110、端末情報DB120、アドレス情報DB130、ルーティング部140を有する。なお、プロセス110は、CPE100内で実行されるプログラムに相当する。あるいは、プロセス110は、CPE100内でプログラムが実行されることにより実現される機能部に相当する。
 ルーティング部140は、PBRのルーティングルール等のパケット処理の適用ルールを保持しており、当該適用ルールに従って、端末から受信したパケットのパスへの振り分けや、パケットフィルタリング、トラフィック制御等のパケット処理を行う。アドレス情報DB130は、例えば、DHCPのリーステーブル、ARPテーブル、Radiusサーバのデータベース等である。アドレス情報DB130は、DHCPのリーステーブル、ARPテーブル、Radiusサーバのデータベース等に限定されるわけではなく、これら以外のテーブルやデータベースであってもよい。アドレス情報DB130は、CPE100の内部ではなく、CPE100の外部に備えられてもよい。
 プロセス110は、REST APIを有しており、オーケストレータ200からの設定情報をREST APIが仲介して各DB等へ投入がなされる。APIではなくSSHでオーケストレータ200が直接にCPE100に設定投入することとしてもよい。プロセス110が実行する処理を図6のフローチャートを参照して説明する。
 下記の処理の前提として、アドレス情報DB130には、端末毎に、端末のIPアドレスと端末識別子との紐付け情報が格納されている。紐付け情報は、端末のIPアドレスが変更になれば更新される。また、ルーティング部140には、各端末について、プロセス110により取得されたIPアドレスに基づいて、PBRのルーティングルールが設定されている。
 ルーティング部140におけるパケット処理の適用ルールとしてPBRのルーティングルールを使用することは一例に過ぎない。ルーティング部140におけるパケット処理の適用ルールとして、ACL、フィルタリングルール(例:iptables、firewall)、帯域制御や優先制御等のトラフィック制御(例:Linux(登録商標)のtraffic control)を使用してもよい。ルーティング部140におけるパケット処理の適用ルールとして、これら以外のルールを使用してもよい。また、ルーティング部140におけるパケット処理の適用ルールは、1つであってもよいし、複数であってもよい。
 なお、iptablesコマンドに基づくフィルタリングルールにより、送信元/送信先IPアドレスに基づいたパケット処理(許可、拒否、NAPT実施等)を実行することが可能である。また、tc(traffic control)コマンドに基づくトラフィック制御のルールにより、送信元/送信先IPアドレスに基づいたパケット処理(シェーピング、遅延、順序変更等)を実行することが可能である。
 本実施の形態では、端末識別子として端末のMACアドレスを使用している。アドレス情報DB130に格納されている紐付け情報の例を図7に示す。IPアドレスと端末識別子との紐付け情報の取得(更新)方法の例については、後述する実施例1、2において説明する。
 なお、端末識別子として端末のMACアドレスを使用することは一例である。MACアドレス以外の端末識別子として、SIMのIMSIあるいはIMEI、端末ホスト名等を用いてもよい。MACアドレス以外のこれら識別子とIPアドレスを管理するプロトコル(RadiusやIoT Device discovery等)とを連携させることが可能である。以下、図6の手順に沿って説明する。なお、図6に示す手順は、例えば、所定の時間間隔で繰り返し実行される。
 <S1>
 S1において、プロセス110は、端末のMACアドレスと、当該端末の接続先(I/F名等)の紐付け情報をオーケストレータ200から取得し、取得した紐付け情報を端末情報DB120に格納する。端末情報DB120に格納される情報の例を図8に示す。図8において、例えば、エントリ100には、ある端末のMACアドレスがtun0に紐付けられていることが示されている。
 <S2>
 S2において、プロセス110は、端末情報DB120に格納されている端末識別子(MACアドレス)のそれぞれについて、アドレス情報DB130を参照することにより、対応するIPアドレスを取得する。つまり、端末識別子(MACアドレス)の端末に払い出されているIPアドレスを取得する。なお、アドレス情報DB130を参照することによりIPアドレスを取得することは一例である。
 <S3>
 プロセス110は、ある端末について、S2で取得したIPアドレスが、前回のS2で取得したIPアドレスと異なることを検知した場合に、当該端末についての、パケット処理の適用ルールを更新する。具体的には、例えば、PBRのルーティングルールを更新する。
 例えば、端末Aに関して、「送信元IPアドレス=AAAA.BBBB.CCCC.DDDDのパケットはtun0から送信する」というルーティングルールがルーティング部140に設定されている場合において、プロセス110が、端末AのIPアドレスが"AAAA.BBBB.CCCC.DDDD"から"AAAA.BBBB.CCCC.EEEE"に変更されたことを検知した場合に、プロセス110は、ルーティングルールを「送信元IPアドレス=AAAA.BBBB.CCCC.EEEEのパケットはtun0から送信する」に更新する。
 以下、上述した構成において、IPアドレスと端末識別子(ここではMACアドレス)との紐付け情報の取得方法をより具体的に説明した実施例を、実施例1、2として説明する。
 (実施例1)
 図9に、実施例1における通信システムの構成例を示す。図9に示すように、実施例1のCPE100は、図5を参照して説明した各I/F、プロセス110、端末情報DB120、ルーティング140に加えて、DHCPサーバ150、リーステーブル160を備える。リーステーブル160は、図5に示したアドレス情報DB130の例である。
 なお、図9は、一例として、CPE100が、DHCPサーバ150、リーステーブル160を備える場合の例を示している。実施例1において、DHCPサーバ150(及びリーステーブル160)は、CPE100の外部に備えられていてもよい。
 実施例1では、プロセス110は、DHCPサーバ150の機能を用いて、MACアドレスから、端末に払い出されているIPアドレスを取得し、IPアドレスに変更がある場合にPBRを更新する。より詳細には、下記の例1-1~例1-3がある。
 <例1-1>
 例1-1では、図9において「例1-1」として示されているように、プロセス110は、DHCPサーバ150のリーステーブル160を監視することで、各MACアドレスについて、払い出されているIPアドレスに変更があるか否かを判定する。図10に、リーステーブル160に格納される情報の例を示す。
 <例1-2>
 例1-2では、DHCPサーバ150はCPE100の内部にあってもよいし、CPE100の外部にあってもよい。ただし、例1-2は、DHCPサーバ150の機能に依存する。ここでは、下記の機能をDHCPサーバ150が有しているものと想定する。
 例1-2では、プロセス110は、DHCPサーバ150により提供されるAPIを利用することにより、端末のMACアドレスに対応するIPアドレスを取得する。プロセス110は、DHCPの固定IPの設定を参照してもよい。
 また、プロセス110は、DHCPサーバ150が端末にIPアドレスを払い出した場合に、当該端末のMACアドレスと、払い出したIPアドレスとをDHCPサーバ150から通知してもらうこととしてもよい。
 <例1-3>
 例1-3でも、DHCPサーバ150はCPE100の内部にあってもよいし、CPE100の外部にあってもよい。例1-3では、プロセス110が、DHCPサーバ150と端末(DHCPクライアント)との間で送受信されるメッセージをスヌーピングすることにより、当該端末へのIPアドレスの払い出しを検知する。
 図11に、端末AとDHCPサーバ150との間のメッセージのやりとりの例を示す。
 S101において、端末Aが、ブロードキャストでDHCP-Discoveryを送信する。DHCP-Discoveryを受信したDHCPサーバ150は、S102において、端末Aに対して、提案IPアドレスを含むDHCP-Offerを送信する。
 S103において、端末Aは、提案を受けたIPアドレスの払い出しをしてもらうよう、DHCP-RequestをDHCPサーバ150に送信する。S104において、DHCPサーバ150は、IP払い出しの承認をするDHCP-Acknowledgeを端末Aに送信する。
 プロセス110は、例えば、ある端末からDHCP-Discoveryが送信されたことを検知すると、S103において当該端末から送信されるDHCP-Requestを監視し、DHCP-Requestに含まる要求IPアドレスを、DHCPサーバ150により当該端末に払い出されたIPアドレスとして取得する。
 (実施例2)
 図12に、実施例2における通信システムの構成例を示す。図12に示すように、実施例2のCPE100は、図5を参照して説明した各I/F、プロセス110、端末情報DB120、ルーティング140に加えて、ARPテーブル170を備える。ARPテーブル170は、図5に示したアドレス情報DB130の例である。
 図13に、ARPテーブル170に格納される情報の例を示す。図13に示すように、ARPテーブル170には、I/F、IPアドレス、MACアドレスが対応付けて格納されている。例えば、CPE100のルーティング部140は、IPアドレス=192.168.0.10の端末にIPパケットを送信する場合、ARPテーブル170を参照して、IPアドレス=192.168.0.10に対応するMACアドレスを宛先とするイーサフレーム(IPパケットを含む)をeth1から送信する。
 実施例2では、プロセス110は、ARPを用いて、MACアドレスからIPアドレスを取得する。より詳細には、下記の例2-1~例2-2がある。
 <例2-1>
 例2-1では、プロセス110は、端末情報DB120における各MACアドレスについて、ARPテーブル170を参照することにより、MACアドレスに対応するIPアドレスが更新(変更)されたかどうかを監視して、更新されたことを検知した場合に、PBRのルーティングルールを更新する。
 <例2-2>
 例2-2において、プロセス110は、RARP(Reverse Address Resolution Protocol)の機能を有している。プロセス110は、対応するIPアドレスを知りたいMACアドレスを含むリクエストをブロードキャストし、リクエストを受信した端末(あるいはサーバ)において、当該MACアドレスに対応するIPアドレスを知っている場合に、当該IPアドレスをプロセス110に返す。
 プロセス110は、端末情報DB120における各MACアドレスについて、例えば定期的にRARPを用いて対応するIPアドレスを取得し、IPアドレスに変更があった場合に、PBRのルーティングルールを更新する。
 なお、MACアドレスからIPアドレスを知ることができる手順(プロトコル)であれば、RARP以外の手順を使用してもよい。
 (変形例)
 これまでの説明では、拠点に設置されたCPE100のルーティング部140がパケットの振り分け処理を行っていたが、このような構成は一例である。
 例えば、図14に示すように、拠点のCPE100とL2トンネルで接続されたクラウドサービス上の仮想CPE700におけるルーティング部740が、パケットの振り分け処理を行うこととしてもよい。図14に示す例において、L2トンネルは、例えば、L2TPやVXLAN等のL2VPNのトンネルであり、仮想CPE700は、CPE100と同一NWに存在する。
 この例において、仮想CPE700が、これまでに説明したCPE100と同じ構成(プロセス、端末情報DB等)を有し、これまでに説明したCPE100と同じ処理を実行する。また、端末が、これまでに説明したCPE100と同じ構成(プロセス、端末情報DB等)を有し、これまでに説明したCPE100と同じ処理を実行する機能部を備えることとしてもよい。
 パケット振り分け処理、及び適用ルールの設定及び変更を行うCPE100、仮想CPE700、端末の機能部等の装置を総称して「パケット通信装置」と呼んでもよい。
 (装置構成例)
 図15に、CPE100が有する機能に着目したCPE100の機能構成例を示す。図15に示すように、CPE100は、通信部101、ルーティング部102、制御部103、記憶部104を有する。仮想CPE700についても同様の構成を備える。
 通信部101は、図5等に示したI/Fに相当し、パケットの送受信を行う。ルーティング部102は、図5等に示したルーティング部140に相当し、PBRのルーティングルールに基づいてパケットの振り分け処理を行う。制御部103は、図5等に示したプロセス110に相当し、実施例1,2等で説明したように、IPアドレスの変更有無をチェックして、変更がある場合に、ルーティング部140におけるPBRのルーティングルールを更新する。記憶部104は、図5等に示した端末情報DB120及びアドレス情報DB130に相当し、各種データを格納する。
 図16は、オーケストレータ200の機能構成例を示す図である。図16に示すように、オーケストレータ200は、設定情報取得部201、記憶部202、登録部203を有する。
 設定情報取得部201は、ポータルサイト300から、ユーザ400により設定された情報を取得する。記憶部202は、図4に示したサービスオーダDB500に相当する。登録部203は、例えば、設定情報取得部201により取得した情報(端末識別子(MACアドレス等))と、記憶部202から読み出した情報(接続先(I/F名等))とに基づいて、端末識別子(MACアドレス等)と接続先(I/F名等)をCPE100(あるいは仮想CPE700)に送信(登録)する。
 <ハードウェア構成例>
 CPE100、仮想CPE700、オーケストレータ200、端末はいずれも、例えば、コンピュータにプログラムを実行させることにより実現できる。このコンピュータは、物理的なコンピュータであってもよいし、仮想マシンであってもよい。
 すなわち、当該装置(CPE100、仮想CPE700、オーケストレータ200、端末)は、コンピュータに内蔵されるCPUやメモリ等のハードウェア資源を用いて、当該装置で実施される処理に対応するプログラムを実行することによって実現することが可能である。上記プログラムは、コンピュータが読み取り可能な記録媒体(可搬メモリ等)に記録して、保存したり、配布したりすることが可能である。また、上記プログラムをインターネットや電子メール等、ネットワークを通して提供することも可能である。
 図17は、上記コンピュータのハードウェア構成例を示す図である。図16のコンピュータは、それぞれバスBで相互に接続されているドライブ装置1000、補助記憶装置1002、メモリ装置1003、CPU1004、インタフェース装置1005、表示装置1006、入力装置1007、出力装置1008等を有する。
 当該コンピュータでの処理を実現するプログラムは、例えば、CD-ROM又はメモリカード等の記録媒体1001によって提供される。プログラムを記憶した記録媒体1001がドライブ装置1000にセットされると、プログラムが記録媒体1001からドライブ装置1000を介して補助記憶装置1002にインストールされる。但し、プログラムのインストールは必ずしもコンピュータ読み取り可能な記録媒体1001より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置1002は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
 メモリ装置1003は、プログラムの起動指示があった場合に、補助記憶装置1002からプログラムを読み出して格納する。CPU1004は、メモリ装置1003に格納されたプログラムに従って、当該装置に係る機能を実現する。インタフェース装置1005は、ネットワークに接続するためのインタフェースとして用いられ、通信部として機能する。表示装置1006はプログラムによるGUI(Graphical User Interface)等を表示する。入力装置1007はキーボード及びマウス、ボタン、又はタッチパネル等で構成され、様々な操作指示を入力させるために用いられる。出力装置1008は演算結果を出力する。
 なお、コンピュータ読み取り可能な記録媒体とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでもよい。また上記プログラムは、当該装置の機能の一部を実現するためのものであっても良い。
 (実施の形態の効果)
 本実施の形態に係る技術により、端末毎のパケット処理(トンネル振り分け等)を実現する際に、同一NWに所属する端末であっても、IPアドレスの変更に常時追従しながらルールを更新することで、NWの規模やDHCPサーバなどの設置箇所に依らない端末毎のパケット処理や制御が可能となる。
 (実施の形態のまとめ)
 本明細書には、少なくとも下記各項に記載のパケット通信装置、パケット処理ルール設定方法、及びプログラムが開示されている。
(第1項)
 1以上のパスに接続されるパケット通信装置であって、
 端末から受信したパケットを、前記1以上のパスのうちのいずれかのパスに振り分けるルーティング部と、
 前記端末のIPアドレスを取得し、当該IPアドレスに基づいて、前記ルーティング部におけるパケット処理の適用ルールを設定する制御部と
 を備えるパケット通信装置。
(第2項)
 前記パケット処理の適用ルールは、PBRにおけるルーティングルール、フィルタリングルール、及びトラフィック制御のルールのうちのいずれか1つ又は複数である
 第1項に記載のパケット通信装置。
(第3項)
 前記制御部は、IPアドレスと端末識別子を保持するデータベースを参照することにより、前記端末の端末識別子に対応するIPアドレスが変更されたか否かを監視し、当該IPアドレスが変更された場合に、前記適用ルールを更新する
 第1項又は第2項に記載のパケット通信装置。
(第4項)
 前記制御部は、DHCPサーバから前記端末の端末識別子に対応するIPアドレスを取得し、当該IPアドレスが変更されたか否かを監視し、当該IPアドレスが変更された場合に、前記適用ルールを更新する
 第1項又は第2項に記載のパケット通信装置。
(第5項)
 前記制御部は、DHCPサーバと前記端末との間の通信をスヌーピングすることにより、前記端末のIPアドレスを取得し、当該IPアドレスが変更されたか否かを監視し、当該IPアドレスが変更された場合に、前記適用ルールを更新する
 第1項又は第2項に記載のパケット通信装置。
(第6項)
 前記制御部は、RARPを用いて、前記端末の端末識別子に対応するIPアドレスを取得し、当該IPアドレスが変更されたか否かを監視し、当該IPアドレスが変更された場合に、前記適用ルールを更新する
 第1項又は第2項に記載のパケット通信装置。
(第7項)
 1以上のパスに接続されるパケット通信装置が実行するパケット処理ルール設定方法であって、
 前記パケット通信装置は、端末から受信したパケットを、前記1以上のパスのうちのいずれかのパスに振り分けるルーティング部を備えており、
 前記端末のIPアドレスを取得し、当該IPアドレスに基づいて、前記ルーティング部におけるパケット処理の適用ルールを設定する
 パケット処理ルール設定方法。
(第8項)
 コンピュータを、第1項ないし第6項のうちいずれか1項に記載のパケット通信装置における各部として機能させるためのプログラム。
 以上、本実施の形態について説明したが、本発明はかかる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
10、100 CPE
20 キャリア網
30 AP
40~60 端末
101 通信部
102 ルーティング部
103 制御部
104 記憶部
110 プロセス
120 端末情報DB
130 アドレス情報DB
11、140、740 ルーティング部
150 DHCPサーバ
160 リーステーブル
170 ARPテーブル
200 オーケストレータ
201 設定情報取得部
202 記憶部
203 登録部
300 ポータルサイト
400 ユーザ
500 サービスオーダDB
610~630 仮想ルータ
700 仮想CPE
710 インターネット
720 企業NW
730 MEC
1000 ドライブ装置
1001 記録媒体
1002 補助記憶装置
1003 メモリ装置
1004 CPU
1005 インタフェース装置
1006 表示装置
1007 入力装置
1008 出力装置

Claims (8)

  1.  1以上のパスに接続されるパケット通信装置であって、
     端末から受信したパケットを、前記1以上のパスのうちのいずれかのパスに振り分けるルーティング部と、
     前記端末のIPアドレスを取得し、当該IPアドレスに基づいて、前記ルーティング部におけるパケット処理の適用ルールを設定する制御部と
     を備えるパケット通信装置。
  2.  前記パケット処理の適用ルールは、PBRにおけるルーティングルール、フィルタリングルール、及びトラフィック制御のルールのうちのいずれか1つ又は複数である
     請求項1に記載のパケット通信装置。
  3.  前記制御部は、IPアドレスと端末識別子を保持するデータベースを参照することにより、前記端末の端末識別子に対応するIPアドレスが変更されたか否かを監視し、当該IPアドレスが変更された場合に、前記適用ルールを更新する
     請求項1又は2に記載のパケット通信装置。
  4.  前記制御部は、DHCPサーバから前記端末の端末識別子に対応するIPアドレスを取得し、当該IPアドレスが変更されたか否かを監視し、当該IPアドレスが変更された場合に、前記適用ルールを更新する
     請求項1又は2に記載のパケット通信装置。
  5.  前記制御部は、DHCPサーバと前記端末との間の通信をスヌーピングすることにより、前記端末のIPアドレスを取得し、当該IPアドレスが変更されたか否かを監視し、当該IPアドレスが変更された場合に、前記適用ルールを更新する
     請求項1又は2に記載のパケット通信装置。
  6.  前記制御部は、RARPを用いて、前記端末の端末識別子に対応するIPアドレスを取得し、当該IPアドレスが変更されたか否かを監視し、当該IPアドレスが変更された場合に、前記適用ルールを更新する
     請求項1又は2に記載のパケット通信装置。
  7.  1以上のパスに接続されるパケット通信装置が実行するパケット処理ルール設定方法であって、
     前記パケット通信装置は、端末から受信したパケットを、前記1以上のパスのうちのいずれかのパスに振り分けるルーティング部を備えており、
     前記端末のIPアドレスを取得し、当該IPアドレスに基づいて、前記ルーティング部におけるパケット処理の適用ルールを設定する
     パケット処理ルール設定方法。
  8.  コンピュータを、請求項1ないし6のうちいずれか1項に記載のパケット通信装置における各部として機能させるためのプログラム。
PCT/JP2020/033781 2020-09-07 2020-09-07 パケット通信装置、パケット処理ルール設定方法、及びプログラム WO2022049768A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2022546854A JPWO2022049768A1 (ja) 2020-09-07 2020-09-07
US18/024,707 US20230344761A1 (en) 2020-09-07 2020-09-07 Packet communication apparatus, packet processing rule setting method and program
PCT/JP2020/033781 WO2022049768A1 (ja) 2020-09-07 2020-09-07 パケット通信装置、パケット処理ルール設定方法、及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2020/033781 WO2022049768A1 (ja) 2020-09-07 2020-09-07 パケット通信装置、パケット処理ルール設定方法、及びプログラム

Publications (1)

Publication Number Publication Date
WO2022049768A1 true WO2022049768A1 (ja) 2022-03-10

Family

ID=80490870

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/033781 WO2022049768A1 (ja) 2020-09-07 2020-09-07 パケット通信装置、パケット処理ルール設定方法、及びプログラム

Country Status (3)

Country Link
US (1) US20230344761A1 (ja)
JP (1) JPWO2022049768A1 (ja)
WO (1) WO2022049768A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002101120A (ja) * 2000-09-20 2002-04-05 Toshiba Corp 通信方法および情報処理装置
JP2010161499A (ja) * 2009-01-06 2010-07-22 Fujitsu Ltd パケット送信システム、送信端末、受信端末、送信プログラム、受信プログラム
JP2011082593A (ja) * 2009-10-02 2011-04-21 Nippon Telegr & Teleph Corp <Ntt> 通信システム及び通信プログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002101120A (ja) * 2000-09-20 2002-04-05 Toshiba Corp 通信方法および情報処理装置
JP2010161499A (ja) * 2009-01-06 2010-07-22 Fujitsu Ltd パケット送信システム、送信端末、受信端末、送信プログラム、受信プログラム
JP2011082593A (ja) * 2009-10-02 2011-04-21 Nippon Telegr & Teleph Corp <Ntt> 通信システム及び通信プログラム

Also Published As

Publication number Publication date
US20230344761A1 (en) 2023-10-26
JPWO2022049768A1 (ja) 2022-03-10

Similar Documents

Publication Publication Date Title
EP3466037B1 (en) Subnet stretching via layer three communications
US9485147B2 (en) Method and device thereof for automatically finding and configuring virtual network
CN116057910B (zh) 虚拟私有云通信及配置方法以及相关装置
US9712383B2 (en) Device abstraction in autonomous wireless local area networks
US8380819B2 (en) Method to allow seamless connectivity for wireless devices in DHCP snooping/dynamic ARP inspection/IP source guard enabled unified network
US8108496B2 (en) Method and apparatus for selecting forwarding modes
US9559891B2 (en) System and method for hosted network management
US8605582B2 (en) IP network system and its access control method, IP address distributing device, and IP address distributing method
US9025533B1 (en) System and method for dynamic VLAN assignment
US11895092B2 (en) Network access controller operation
CN107517129B (zh) 一种基于OpenStack配置设备上行接口的方法和装置
WO2018161795A1 (zh) 一种路由优先级配置方法、设备以及控制器
US20060193330A1 (en) Communication apparatus, router apparatus, communication method and computer program product
WO2022049768A1 (ja) パケット通信装置、パケット処理ルール設定方法、及びプログラム
JP5937563B2 (ja) 通信基地局およびその制御方法
US11997067B2 (en) Managing internet protocol (IP) address allocation to tenants in a computing environment
JP6360012B2 (ja) ネットワーク統合システムおよびネットワーク統合方法
KR101538737B1 (ko) 동적 호스트 구성 프로토콜을 이용한 ip 할당 방법
JP6417799B2 (ja) ネットワークコントローラ、ネットワーク制御方法、およびプログラム
JP6600606B2 (ja) サーバ装置およびネットワークシステム
CN114765601A (zh) 一种地址前缀获取方法及装置
CN114079649A (zh) 地址分配方法、设备及系统
US20230006998A1 (en) Management of private networks over multiple local networks
US11552928B2 (en) Remote controller source address verification and retention for access devices
CN117812046A (zh) 隔离终端dhcp准入管控方法、装置、电子设备及存储介质

Legal Events

Date Code Title Description
ENP Entry into the national phase

Ref document number: 2022546854

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20952502

Country of ref document: EP

Kind code of ref document: A1