Control device, control method and program

By implementing a domain controller unit to identify and manage high-packet-load network slices, the system prevents software router overload and maintains control, ensuring reliable service across network slices.

JP7662065B2Active Publication Date: 2025-04-15NIPPON TELEGRAPH & TELEPHONE CORP
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
JP2023579951
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2022-02-10
Publication Date
2025-04-15
Estimated Expiration
2042-02-10

AI Technical Summary

Technical Problem

Software routers experience high load conditions and service disruptions due to large numbers of short packets, affecting all network slices on the same router, and potentially leading to loss of control from domain controllers.

Method used

A domain controller is configured with a specific unit to identify the network slice with the largest number of received packets and request the other domain controller to limit packet transmission in that slice, thereby managing resource allocation and preventing overload.

Benefits of technology

This approach efficiently avoids situations where software routers become uncontrollable, reduces the need for excessive CPU and memory allocation, and maintains service reliability across network slices.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007662065000001
    Figure 0007662065000001
  • Figure 0007662065000002
    Figure 0007662065000002
  • Figure 0007662065000003
    Figure 0007662065000003
Patent Text Reader

Abstract

This control device serving as a domain controller makes it possible to efficiently avoid a situation in which a software router becomes uncontrollable by comprising: a specification unit configured to, if the number of received packets of a first software router controlled by the domain controller exceeds a threshold value, specify a network slice having a maximum number of received packets among a plurality of network slices housed by at least one second software router that is controlled by another domain controller and transmits a packet to the first software router; and a request unit configured to transmit, to the other domain controller, a request to restrict packet transmission in the network slice specified by the specification unit.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present invention relates to a control device, a control method, and a program. [Background technology]

[0002] Conventionally, in order to provide end-to-end network slices spanning multiple operators as a service, network slices between operators have been managed and operated based on indicators such as bandwidth and delay (Non-Patent Document 1).

[0003] Cost-effective and flexible software routers are used in the sections connecting operators and in the networks of each operator (Non-Patent Document 1). When multiple network slices are configured on a single software router according to requirements, each network slice is logically divided and the bandwidth is clearly assigned (Non-Patent Document 2).

[0004] In conventional technology, a domain controller installed in each operator (domain) manages the bandwidth and latency of the software router, as well as resources such as the CPU and memory, and operates and controls the software router to maintain service quality (Non-Patent Document 2). [Prior art documents] [Non-patent literature]

[0005] [Non-Patent Document 1] Takuya Sato, Tomohiro Okada, Shunsuke Homma, Hideomi Nishihara, "Network Slicing Technology for Rapidly Meeting a Wide Range of Requirements," Information Network Research Group, NTT Technical Journal, April 2019, P20-21, Internet<URL:https: / / journal.ntt.co.jp / wp-content / uploads / 2020 / 05 / JN201904all.pdf> [Non-Patent Document 2] Tomohiro Okada, Takuya Sato, Hideomi Nishihara, "Network Slicing Technology: Aiming to build a new network that meets customer requirements in the 5G era," NTT R&D Website, Internet<URL:https: / / www.rd.ntt / research / NW99-324.html> Summary of the Invention [Problem to be solved by the invention]

[0006] Since software routers process packets using software, when they receive a large number of (short) packets (for example, when they receive a large number of packets sent by simultaneous calls from IoT terminals or user terminals), a high load occurs even when the software router's available bandwidth is low, causing service to stop due to packet loss, etc. This also affects all network slices on the same software router, even if a large number of packets are sent from a specific network slice. Furthermore, when such a situation occurs, the software router may not be able to accept control from the domain controller due to the high load.

[0007] Figure 1 is a diagram for explaining a situation in which a software router becomes uncontrollable. Figure 1 shows an example in which the following situation occurs. (1) A large amount of packets (traffic volume is small) is transmitted from the UE in slice 1. However, there is no problem with the processing and bandwidth of software router A. (2) A large number of packets from slice 1 arrive at software router B, and packets from slice 2 and slice 3 also reach software router B (the total traffic volume is within the bandwidth). (3) The number of packets arriving at software router B exceeds the number of packets that software router B can process, causing a high load. As a result, slices 1, 2, and 3 become unavailable due to the large number of packets from slice 1. (4) There is no problem with the bandwidth of software router B managed by the domain controller, so no alarms are generated, but software router B is under a high load and cannot be controlled by domain controller B (silent failure).

[0008] Software router resources (bandwidth, latency, CPU, memory, etc.) are configured and managed through provisioning, but configuring resources to increase the number of packets that can be processed requires excessive allocation of CPU and memory, resulting in surplus resources and partitioning losses.

[0009] The present invention has been made in consideration of the above-mentioned points, and an object of the present invention is to efficiently avoid a situation in which a software router becomes uncontrollable. [Means for solving the problem]

[0010] In order to solve the above problem, the control device as a domain controller has an identification unit configured to identify a network slice with the largest number of received packets among multiple network slices accommodated by one or more second software routers controlled by another domain controller and transmitting packets to the first software router when the number of received packets of a first software router controlled by the domain controller exceeds a threshold, and a request unit configured to send a request to the other domain controller to restrict the transmission of packets in the network slice identified by the identification unit. Effect of the Invention

[0011] It is possible to efficiently avoid a situation in which the software router becomes uncontrollable. [Brief description of the drawings]

[0012] [Figure 1] FIG. 13 is a diagram for explaining a situation in which a software router becomes uncontrollable. [Diagram 2]1 is a diagram for explaining a configuration example of a slice control system according to an embodiment of the present invention; [Diagram 3] 2 is a diagram illustrating an example of a hardware configuration of a domain controller 10 according to an embodiment of the present invention. [Figure 4] 2 is a diagram illustrating an example of a functional configuration of a domain controller 10 and a software router 20 according to the embodiment of the present invention. [Diagram 5] 10 is a sequence diagram for explaining an example of a processing procedure executed in the slice control system. FIG. [Figure 6] FIG. 11 is a diagram illustrating an example of router information. [Figure 7] FIG. 13 is a diagram illustrating an example of router information to which a load factor has been added. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0013] Hereinafter, an embodiment of the present invention will be described with reference to the drawings. FIG. 2 is a diagram for explaining a configuration example of a slice control system in an embodiment of the present invention. FIG. 2 shows an example in which three network slices s1 to s3 (hereinafter simply referred to as "slice s") are configured across networks Na, Nb, and Nc of three domains, namely, operators A, B, and C. Note that a network slice refers to a virtual network formed according to requirements, which is realized by the network slicing technology disclosed in Non-Patent Document 1, Non-Patent Document 2, etc. The requirements include, for example, a start node, an end node, a permissible delay, a bandwidth, a period, etc.

[0014] Provider A operates domain controller 10A. Domain controller 10A is a device (computer) that controls three software routers 20A1 to 20A3. Software router 20A1 accommodates slice s1. Software router 20A2 accommodates slice s2. Software router 20A3 accommodates slice s3.

[0015] Provider B operates domain controller 10B. Domain controller 10B is a device (computer) that controls software router 20B. Software router 20B accommodates slices s1 to s3. That is, slices s1 to s3 are bundled by software router 20B. Software router 20B is an adjacent router of software routers 20A1 to A3 with respect to each slice s.

[0016] The operator C operates a domain controller 10C. The domain controller 10C is a device (computer) that controls a software router 20C. The software router 20C accommodates slices s1 to s3. The software router 20C is an adjacent router of the software router 20B with respect to each slice s.

[0017] Software routers 20A1-A3 accommodate UEs (terminals) that communicate using the corresponding slices s, and transmit packets from each UE to software router 20B. Software router 20B transmits each packet to software router 20C.

[0018] Each software router 20 is deployed in a computer located at, for example, a user base or a regional base (e.g., a regional city, etc.), and a computer serving as each domain controller 10 is deployed at an aggregation base (e.g., Tokyo, Osaka, etc.). Basically, each software router 20 is realized by one computer. Also, each domain controller 10 is realized by one computer. Therefore, in a software router 20 that accommodates multiple slices s, the multiple slices s share the same physical resources. Note that when a certain aggregation base also serves as a user base or a regional base, the computer on which the software router 20 is deployed may be the same computer that functions as the domain controller 10.

[0019] In this embodiment, attention is focused on a domain controller 10B that controls a software router 20B that bundles slices s1 to s3, and a domain controller 10A that controls software routers 20A1 to A3 that are upstream of these slices s. In this embodiment, the domain controller 10A and the domain controller 10B are capable of communicating with each other via a network.

[0020] Fig. 3 is a diagram showing an example of a hardware configuration of a domain controller 10 according to an embodiment of the present invention. The domain controller 10 in Fig. 3 includes a drive device 100, an auxiliary storage device 102, a memory device 103, a CPU 104, and an interface device 105, which are all connected to each other via a bus B.

[0021] A program for implementing the processing in the domain controller 10 is provided by a recording medium 101 such as a CD-ROM. When the recording medium 101 storing the program is set in the drive device 100, the program is installed from the recording medium 101 to the auxiliary storage device 102 via the drive device 100. However, the program does not necessarily have to be installed from the recording medium 101, but may be downloaded from another computer via a network. The auxiliary storage device 102 stores the installed program as well as necessary files, data, and the like.

[0022] When an instruction to start a program is received, the memory device 103 reads out the program from the auxiliary storage device 102 and stores it. The CPU 104 executes functions related to the domain controller 10 in accordance with the program stored in the memory device 103. The interface device 105 is used as an interface for connecting to a network.

[0023] The computer in which the software router 20 is installed also has a hardware configuration similar to that shown in FIG.

[0024] FIG. 4 is a diagram showing an example of a functional configuration of the domain controller 10 and the software router 20 according to the embodiment of the present invention.

[0025] In Fig. 4, the domain controller 10 has a software router control unit 11, an inter-domain cooperation unit 12, and a resource confirmation unit 13. Each of these units is realized by a process in which one or more programs installed in the domain controller 10 are executed by the CPU 104. The domain controller 10 also uses a software router information storage unit 111 and a cooperation information storage unit 112. Each of these storage units can be realized, for example, by using the auxiliary storage unit 102, or a storage unit connectable to the domain controller 10 via a network. When referring to each unit of the domain controller 10A, the reference numeral ends with "a". When referring to each unit of the domain controller 10B, the reference numeral ends with "b".

[0026] On the other hand, the software router 20 includes a resource management unit 21 and a control reception unit 22. These units are realized by processing of one or more programs installed in a computer in which the software router 20 is deployed, which are executed by the CPU of the computer. The software router 20 also includes a resource information storage unit 211. The resource information storage unit 211 can be realized, for example, by using an auxiliary storage device or a memory device of the computer.

[0027] The following describes a process performed in the slice control system: Fig. 5 is a sequence diagram illustrating an example of a process performed in the slice control system.

[0028] The software router control unit 11 of each domain controller 10 collects information (hereinafter referred to as "router information") on the state of each software router 20 controlled by the domain controller 10 from the resource management unit 21 of the software router 20 at multiple timings (hereinafter referred to as "collection timings"), and stores the collected router information (hereinafter referred to as "collected information") in the software router information storage unit 111. The multiple timings may be regular timings.

[0029] For example, when a certain collection timing arrives, the software router control unit 11b of the domain controller 10B collects router information from the software router 20B (S101-1), and the software router control unit 11a of the domain controller 10A collects router information from each of the software routers 20A1 to A3 (S101-2). At this time, the software router control unit 11 of each domain controller 10 requests the resource management unit 21 of each software router 20 under the domain controller 10 to transmit router information. Each resource management unit 21 calculates the router information at a predetermined timing such as periodically, and transmits a response including the router information stored in the resource information storage unit 211 to the software router control unit 11.

[0030] Fig. 6 is a diagram showing an example of router information. In Fig. 6, tables Ta1, Ta2, and Ta3 are examples of router information collected from software routers 20A1, A2, and A3, respectively. Table Tb is an example of router information collected from software router 20B.

[0031] Each piece of router information includes, for each slice s accommodated by each software router 20, a slice ID, the number of received packets, and an adjacent router ID, and, for each software router 20, a router ID and an upper limit number of received packets.

[0032] The slice ID is identification information of the slice s. In this embodiment, the slice IDs of slices s1, s2, and s3 are 1, 2, and 3, respectively. The router ID is identification information of the software router 20. In this embodiment, the router IDs of software routers A1, A2, A3, and B are A1, A2, A3, and B, respectively. The packet reception upper limit number is the number of packets received by the software router 20 in the slice s per second. The method of measuring the number of received packets depends on the specifications of the software router 20, but may be, for example, an average value for the most recent five minutes. The packet reception upper limit number is the upper limit of the number of received packets when the software router 20 is in a controllable state. The adjacent router ID is identification information of the software router 20 adjacent to the software router 20 in the slice s. Adjacent means a relationship of being a destination or source of packets.

[0033] Next, the software router control unit 11 of each domain controller 10 transmits the collected information to the resource confirmation unit 13 of its own domain controller 10 (S102-1, S102-2). The resource confirmation unit 13 of each domain controller 10 calculates the load factor of each subordinate software router 20 based on the received router information, and checks whether the load factor exceeds a threshold value (S103-1, S102-2). The load factor is the ratio of the total number of packet receptions (when accommodating multiple slices s) to the packet reception upper limit number. Therefore, the load factor of a certain software router 20 can be calculated by dividing the total number of packet receptions in the router information of the software router 20 by the packet reception upper limit number. The threshold value is a value lower than the load factor at which the domain controller 10 cannot control the software router 20. For example, 90(%) may be set as the threshold value.

[0034] Next, the resource confirmation unit 13 of each domain controller 10 transmits the load rate calculated for each software router 20 to the software router control unit 11 of its own domain controller 10 (S104-1, S104-2). Upon receiving the load rate of each software router 20, the software router control unit 11 of each domain controller 10 records (adds) the load rate to the router information of the software router 20 corresponding to the load, among the router information stored for each software router 20 in the software router information storage unit 111. As a result, the router information of each software router 20 becomes, for example, as shown in FIG.

[0035] Next, the software router control unit 11 of each domain controller 10 transmits the collected information to the inter-domain cooperation unit 12 of its own domain controller 10 (S105-1, S105-2).

[0036] Next, the inter-domain cooperation unit 12 of each domain controller 10 transmits the collected information received from the software router control unit 11 of its own domain controller 10 to the inter-domain cooperation unit 12 of the other domain controller 10, thereby exchanging the collected information (S106). Information (such as IP address) of the domain controller 10 that will be the exchange partner (cooperation partner) is stored in the cooperation information storage unit 112. Basically, when a slice s accommodated in a software router 20 under one of two adjacent domain controllers 10 is joined (bundled) in a software router 20 under the other domain controller 10, the two domain controllers 10 are mutually exchanged partners. In this embodiment, the domain controller 10A and the domain controller 10B are mutually exchanged partners.

[0037] When the inter-domain cooperation unit 12 of each domain controller 10 receives the collected information of the other domain controllers 10, it transmits the collected information to the software router control unit 11 of the own domain controller 10 (S107-1, S107-2). The software router control unit 11 of each domain controller 10 stores the received collected information in the software router information storage unit 111.

[0038] The above is repeatedly executed at each collection timing.

[0039] Thereafter, when a large amount of packets occurs in slice s1 of software router 20A1, software router 20B receives the large amount of packets from slice s1 of software router 20A1 (S110-1). Software router 20B further receives normal communication packets from slices s of software routers 20A2 and 20A3 (S110-2, S110-3).

[0040] At a later collection timing, the software router control unit 11b of the domain controller 10B collects router information of the software router 20B (S111) and transmits the router information to the resource confirmation unit 13b of the domain controller 10B (S112). In this case, the resource confirmation unit 13b compares the load rate of the router information with a threshold value (S113) and detects that the load rate exceeds the threshold value (S121).

[0041] Therefore, the resource confirmation unit 13b transmits a notification of the excess of the load rate to the software router control unit 11b (S122). In response to the notification, the software router control unit 11b acquires from the software router information storage unit 111b the router information of each of the software routers 20 (hereinafter, each of them is referred to as an "adjacent router") of the other domain controllers 10, which is related to the adjacent router ID of the router information (table Tb in FIG. 7) corresponding to the software router 20B stored in the software router information storage unit 111b. In this embodiment, the router information of each of the software routers 20A1 to A3 is acquired. Although omitted in FIG. 5, the router information is also exchanged between the domain controller 10A and the domain controller 10B at the collection timing of step S111. Therefore, here, for each adjacent router, the latest router information exchanged at the last collection timing is acquired. Based on the acquired router information, the software router control unit 11b identifies the slice s that transmits the most packets to the software router 20B among the slices s accommodated by the adjacent routers (S123). Whether or not the largest number of packets is being transmitted can be determined based on whether or not the number of packets received is the largest. Here, slice s1 (slice s with slice ID=1) of software router 20A1 is specified.

[0042] Next, the software router control unit 11b transmits the identified slice ID (hereinafter, referred to as the "target slice ID") to the inter-domain cooperation unit 12b (S124). The inter-domain cooperation unit 12b transmits a request to restrict packet transmission in the slice s related to the target slice ID (hereinafter, referred to as the "target slice s") together with the target slice ID to the inter-domain cooperation unit 12a of the domain controller 10A, which is the other party exchanging router information related to the target slice ID (S125).

[0043] When the inter-domain cooperation unit 12a receives the target slice ID, it transmits the target slice ID to the software router control unit 11a of the domain controller 10A (S126). The software router control unit 11a refers to the router information collected from the software routers 20A1 to A3 and stored in the software router information storage unit 111a, and identifies the software router 20 (hereinafter referred to as the "target router") that accommodates the target slice s related to the target slice ID (S127). Here, the software router 20A1 is identified as the target router.

[0044] Next, the software router control unit 11a transmits a command to restrict packet transmission in the target slice s together with the target slice ID to the software router 20A1, which is the target router (S128). The control receiving unit 22 of the software router 20A1 restricts packet transmission in slice s1, which is the target slice s, in response to the control command (S129). For example, packet transmission may be blocked (stopped), or the number of transmitted packets may be restricted.

[0045] As described above, according to the present embodiment, when the number of received packets of a software router 20 controlled by a certain domain controller 10 exceeds a threshold, a network slice with the maximum number of received packets is identified among a plurality of network slices accommodated by one or more other software routers 20 controlled by other domain controllers 10 and transmitting packets to the certain software router 20, and a request to limit the transmission of packets in the identified network slice is transmitted to the other domain controller 10. As a result, it is possible to reduce the need to excessively allocate a CPU and memory to increase the upper limit of the number of received packets. Therefore, it is possible to efficiently avoid a situation in which the software router becomes uncontrollable. That is, in an end-to-end network slice spanning multiple operators, a high load state of the software router 20 due to mass transmission due to virus infection of a user terminal or IoT terminal of a specific network slice, simultaneous calling due to a power outage, etc. can be avoided, and the influence on normal communication of other network slices can be avoided. In addition, by configuring multiple network slices with a single software router 20, it is possible for the service provider to provide a cost-effective and secure network slice.

[0046] In this embodiment, the domain controller 10 is an example of a control device. The software router control unit 11 is an example of a specification unit. The inter-domain cooperation unit 12 is an example of a request unit and a receiving unit. The software router 20B is an example of a first software router. The software router 20A is an example of a second software router.

[0047] Although the embodiment of the present invention has been described in detail above, the present invention is not limited to such specific embodiment, and various modifications and variations are possible within the scope of the gist of the present invention described in the claims. [Explanation of symbols]

[0048] 10. Domain Controller 11 Software router control unit 12 Inter-Domain Cooperation Department 13 Resource Verification Section 20 Software Router 21 Resource Management Department 22 Control reception section 100 Drive device 101 Recording media 102 Auxiliary storage 103 Memory device 104 CPU 105 Interface device 111 Software router information storage unit 112 Linkage information storage unit 211 Resource information storage unit B Bus

Claims

1. A control device as a domain controller, an identification unit configured to, when the number of received packets of a first software router controlled by the domain controller exceeds a threshold, identify a network slice having the largest number of received packets among a plurality of network slices accommodated by one or more second software routers controlled by another domain controller and transmitting packets to the first software router; A request unit configured to transmit a request to the other domain controller to restrict transmission of packets in the network slice identified by the identification unit; A control device comprising:

2. a receiving unit configured to receive the number of received packets of the plurality of network slices collected by the other domain controller from the second software router; The identification unit is configured to identify a network slice having a maximum number of received packets received by the receiving unit.

2. The control device according to claim 1.

3. The receiving unit is configured to receive the number of received packets at a plurality of timings, The identification unit is configured to identify a network slice in which the number of received packets received by the receiving unit is the largest at the multiple timings.

3. The control device according to claim 2.

4. The computer is a domain controller. a step of identifying a network slice having the largest number of received packets among a plurality of network slices accommodated by one or more second software routers controlled by another domain controller and transmitting packets to the first software router when the number of received packets of a first software router controlled by the domain controller exceeds a threshold; a requesting step of sending a request to the other domain controller to restrict transmission of packets in the network slice identified by the identifying step; A control method comprising the steps of:

5. A receiving procedure is performed by a computer to receive the number of received packets of the plurality of network slices collected by the other domain controller from the second software router; The identifying step identifies a network slice having a maximum number of received packets received by the receiving step.

5. The control method according to claim 4.

6. the receiving step receives a number of received packets at a plurality of timings; The identifying procedure identifies a network slice having a maximum number of received packets received by the receiving procedure at the plurality of timings.

6. The control method according to claim 5.

7. 7. A program for causing a computer to execute the control method according to claim 4.

Citation Information

Patent Citations

  • Slice management system and slice management method

    WO2016152587A1

  • Slice changing method and slice changing device

    WO2017170937A1