WO2022044137A1 - ネットワーク制御システム、経路計算方法およびプログラム - Google Patents

ネットワーク制御システム、経路計算方法およびプログラム Download PDF

Info

Publication number
WO2022044137A1
WO2022044137A1 PCT/JP2020/032079 JP2020032079W WO2022044137A1 WO 2022044137 A1 WO2022044137 A1 WO 2022044137A1 JP 2020032079 W JP2020032079 W JP 2020032079W WO 2022044137 A1 WO2022044137 A1 WO 2022044137A1
Authority
WO
WIPO (PCT)
Prior art keywords
route
information
link
route calculation
state
Prior art date
Application number
PCT/JP2020/032079
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 US18/022,399 priority Critical patent/US20230353483A1/en
Priority to JP2022544949A priority patent/JP7494919B2/ja
Priority to PCT/JP2020/032079 priority patent/WO2022044137A1/ja
Publication of WO2022044137A1 publication Critical patent/WO2022044137A1/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/12Discovery or management of network topologies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/121Shortest path evaluation by minimising delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/123Evaluation of link metrics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/124Shortest path evaluation using a combination of metrics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/125Shortest path evaluation based on throughput or bandwidth
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/42Centralised routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • H04L43/0858One way delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • H04L43/087Jitter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • H04L43/0882Utilisation of link capacity

Definitions

  • the present invention relates to a network control system, a route calculation method, and a program for setting an appropriate network configuration according to a network usage situation.
  • the delay amount in the NW is a protocol that deploys measurement devices at both ends of the section to be measured and grasps the response time (Round Trip Time, RTT) and NW status of ICMP (Internet Control Message Protocol) packets such as ping. It is measured using Two-Way Active Measurement Protocol (TWAMP). Further, a method of transmitting a plurality of delay measurement packets from a measurement system connected to the measurement target NW and measuring the delay amount and jitter of each link from the combination of these RTTs has also been proposed (Non-Patent Document). 1).
  • Non-Patent Document 2 describes a method of efficiently using NW resources by minimizing the maximum link usage rate in the NW, that is, controlling the flow so that the flow is not biased to a specific link.
  • Hiroki Mori 4 others, “Proposal of delay measurement system to measure delay time in network with high accuracy,” Shingaku Giho, NS2019-231 (2020-03), pp.301-306, March 2020 .. Ryuta Sugiyama, Tomonori Takeda “Study of Route Optimization in Centralized Traffic Control-type Large-Scale IP Network,” Shingaku Giho, NS2014-1 (2014-4), pp.1-4, April 2014.
  • Non-Patent Documents 1 and 2 focus only on the traffic volume, and by optimizing the resource utilization efficiency, the congestion of a specific link may be eliminated, and as a result, the delay may be reduced.
  • the delay quality may be deteriorated by unintentionally detouring to a long-distance route, and it cannot be guaranteed that the optimum NW that satisfies the required quality for the delay is provided.
  • the present invention has been made in view of such a background, and an object of the present invention is to provide a network control system, a route calculation method, and a program that can achieve both required quality and optimization of resource utilization efficiency.
  • the present invention is a network control system that changes a route set in a network (NW), measures a NW topology, a delay amount of each link, a traffic amount, and a link band, and NW.
  • NW network
  • the NW state measuring unit that is held in the NW state holding unit as state information
  • the NW design information holding unit that holds information on the end points, quality requirements including delay amount, and required band as design information for each NW
  • the NW state holding unit Based on the NW state information held in the unit and the NW design information held in the NW design information holding unit, the route calculation unit calculates the optimum route with the quality requirement as a constraint condition, and the route calculation unit calculates.
  • the network control system is characterized by including a route control unit that controls the route based on the route.
  • the route is controlled based on the route information of the network control system according to the present embodiment, and the link between the input / output points (end points) of the VPN information held in the NW design information holding DB after the update is in the NW state after the route control.
  • It is an image diagram which reflected the measurement result.
  • It is a hardware block diagram which shows an example of the computer which realizes the process of the route calculation method which concerns on embodiment of this invention.
  • FIG. 1 is a diagram showing a configuration example of a network control system 100 according to an embodiment of the present invention.
  • the network control system 100 includes a NW state measuring device 110, a route calculation device 120, and a route control device 130.
  • the network control system 100 is connected to the measurement target network (communication network) 10.
  • the NW state measuring device 110, the route calculation device 120, and the route control device 130 constituting the network control system 100 may be realized by independent devices or by one device. Further, the function deployment in each component is an example, and the function deployment between devices may be changed.
  • the measurement target network (communication network) 10 is composed of nodes and physical links connecting the nodes.
  • topology information is advertised by a routing protocol such as information of a routing protocol (OSPF-LS / BGP-LS) operating in the measurement target network 10.
  • the network control system 100 performs transfer on the measurement target network 10 by a protocol capable of route control in units of flow or Virtual Private Network (VPN) such as MPLS / Segment Routing (SR) and Openflow (registered trademark).
  • VPN Virtual Private Network
  • SR MPLS / Segment Routing
  • Openflow registered trademark
  • the NW state measuring device 110 includes a NW state measuring unit 111 and a NW state holding DB 112.
  • the NW state measuring unit 111 measures and collects the NW topology, the delay amount of each link, the jitter, the traffic amount, and the link band, and stores them in the NW state holding DB 112 (NW state holding unit).
  • the NW topology is collected from information (OSPF-LS / BGP-LS) of a routing protocol operating in the measurement target NW.
  • the NW topology is used to calculate the amount of delay for each link.
  • the delay amount and jitter of each link are measured by ping, TWAMP (Two-Way Active Measurement Protocol), a packet for delay measurement, or the like.
  • the traffic volume is acquired by the Simple Network Management Protocol (SMMP) / Telemety (registered trademark) that acquires the traffic counter information and the device information inside the NW device (hereinafter, simply referred to as the device).
  • SMMP Simple Network Management Protocol
  • Telemety registered trademark
  • the link band is collected from the config of the device. You may also manually enter information that does not change dynamically, such as the NW topology and bandwidth.
  • the NW state measuring device 110 uses a delay measuring system 200 (see FIG. 2) that executes highly accurate measurement of delay / jitter in real time.
  • the NW state measurement unit 111 performs time stamp processing by hardware when transmitting and receiving probe packets, and measures the NW state from the difference between the time stamps at the time of transmission and reception.
  • the route calculation device 120 includes a route calculation unit 121.
  • the route calculation unit 121 calculates the optimum route from the information of the NW state holding DB 112 and the NW design information holding DB 132 (NW design information holding unit) of the route control device 130.
  • NW design information holding DB 132 holds information on endpoints, delay quality requirements, and required bands, and is registered in advance as design information for each NW. Further, the NW design information holding DB 132 collects and holds the current route information from the config of the apparatus. This route information may be entered manually. Further, the current route information may be omitted for a state in which none of the NWs is assigned or a newly added NW.
  • the route control device 130 includes a route control unit 131 and a NW design information holding DB 132.
  • the route control unit 131 performs route control based on the route information calculated by the route calculation device 120.
  • the route control unit 131 realizes, for example, forwarding within the network by a label switching method such as MPLS / Segment Routing (SR), control in NW units such as Openflow (registered trademark), or arbitrary flow control. This enables flexible control in NW units.
  • SR MPLS / Segment Routing
  • NW units such as Openflow (registered trademark)
  • Openflow registered trademark
  • FIG. 2 is a block diagram showing a configuration of a delay measurement system 200 according to the technique described in Non-Patent Document 1.
  • the NW state measuring device 110 includes the configuration of the delay measuring system 200 of FIG. 2 in the background.
  • the delay measurement system 200 shown in FIG. 2 includes a time stamp pressing device 210 executed by H / W (hardware) processing and an inspection packet generation device 220 executed by S / W (software) processing.
  • the time stamp pressing device 210 includes a time stamp pressing unit 211.
  • the time stamp pressing unit 211 stamps the time stamp when the probe packet is transmitted / received. Specifically, the time stamp pressing unit 211 stamps the time stamp information in the probe packet. For example, the time stamp information (Tin) when the probe packet generated by the inspection packet generation device 220 is transmitted from the time stamp pressing device 210 and the time when the probe packet is transferred in the NW and received by the time stamp pressing device 210. Stamp information (Tout) is stamped respectively.
  • the inspection packet generation device 220 includes a topology grasping unit 221, a route determination unit 222, an inspection packet generation unit 223, an inspection result acquisition unit 224, and a DB 225.
  • the topology grasping unit 221 collects NW information. Specifically, the topology grasping unit 221 connects to the measurement target network 10 by a routing protocol, and NW topology information required for route calculation and Segment Identifier (SID) information required for route control when forwarding is performed by SR. To collect.
  • the route determination unit 222 calculates the delay measurement route based on the NW topology information.
  • the inspection packet generation unit 223 generates a probe packet to be transmitted in the NW. Specifically, the inspection packet generation unit 223 stamps the time Tin when transmitting to the measurement target network 10 by the time stamp pressing unit 211 and the time Tout when returning to any place in the inspection packet. Further, the inspection packet generation unit 223 stacks the SR-SID label so that it is transferred according to the route calculated by the route determination unit 222.
  • the inspection result acquisition unit 224 calculates the delay time. Specifically, the inspection result acquisition unit 224 calculates the RTT from the time stamp information in the probe packet. The difference between Tout and Tin stamped by the time stamp pressing device 210 is calculated and stored in the DB 225 as the RTT of the corresponding measurement path. The DB 225 stores the information collected and calculated in each part.
  • the delay measurement system 200 measures the delay time by performing the time stamp processing at the time of sending and receiving the probe packet, without performing the time stamp processing in the NW and the time synchronization between the devices. It eliminates the need for probe packet wrapping processing, time stamp processing, and time synchronization between devices in the NW.
  • time stamp processing by performing the time stamp processing with hardware, the influence of CPU load and other processing can be minimized, and high-precision and high-frequency time information processing is possible. This makes it possible to measure measurements with microsecond accuracy and millisecond intervals, which were conventionally performed with millisecond accuracy and second intervals.
  • the delay of each link or any section can be measured.
  • SR Segment Routing
  • the delay measurement system 200 shown in FIG. 2 is applied to the NW state measuring device 110 shown in FIG.
  • the NW state measuring device 110 can perform highly accurate measurement of the delay amount and jitter in real time.
  • topology information is advertised by routing protocols such as OSPF and BGP, and routes are routed in flow or Virtual Private Network (VPN) units such as MPLS / Segment Routing (SR) and Openflow (registered trademark). It shall be possible to transfer by a controllable protocol.
  • VPN Virtual Private Network
  • FIG. 3 is a flowchart showing the procedure of the route calculation method of the network control system 100.
  • the user inputs VPN information (NW design information) / route information using the terminal 20 (see FIG. 7), and stores the VPN information (NW design information) / route information in the NW design information holding DB 132. do. If the device has already been set, it is acquired from the device via the route control unit 131.
  • NW design information has information on VPN input / output points, delay quality requirements (delay amount, jitter, etc.), and required bandwidth. NW design information is input for each accommodated flow or VPN.
  • the route information is input according to the current setting state, or is collected from the path information and flow information set in the device. Further, the route information may be omitted for the NW for which the route has not been set.
  • the NW state measuring unit 111 measures the NW state. Specifically, the NW state measuring unit 111 measures the NW state by collecting information on the topology, delay amount and jitter for each link, and link usage rate from the communication network, and stores the NW state in the NW state holding DB 112.
  • the topology is acquired by the route information of the routing protocol (OSPF-LS / BGP-LS, etc.).
  • the delay amount is calculated from the Round Trip Time (RTT) of a packet for measurement by ping between nodes or delay measurement transmitted within the measurement target network (communication network) 10. Jitter is obtained from the amount of delay measured multiple times.
  • step S3 the route calculation unit 121 determines whether or not the optimization execution condition is satisfied. If the optimization execution condition is not satisfied (step S3: No), the process returns to step S2 and the NW state measurement is continued.
  • step S3: Yes the route calculation unit 121 calculates the optimum route in step S4. Specifically, the route calculation unit 121 calculates the optimum route of each NW based on the information of the NW state holding DB 112 and the NW design information holding DB 132 every fixed time elapse or when the execution condition of the optimization calculation is satisfied. ..
  • the execution condition of the optimization calculation may be that the measured NW state value exceeds a predetermined threshold value or the number of NWs that do not meet the quality requirements exceeds a certain number. Specific examples of the optimum route calculation will be described later with reference to the optimization calculation examples 1 to 3 using the subroutines of FIGS. 4 to 6.
  • step S5 the route control device 130 (see FIG. 1) determines whether or not there is a change in the route. If there is a change in the route (step S5: Yes), the route control device 130 reflects on the NW in step S6 and proceeds to step S7. If there is no change in the route (step S5: No), the process proceeds to step S7 as it is.
  • step S7 the route control device 130 determines whether or not to end the control. If the control is not terminated (step S7: No), the process returns to step S2 and the NW state measurement and the following processes are continued. When the route control device 130 ends the control (step S7: Yes), the process of this flow ends.
  • the optimization calculation example 1 is an example in which the maximum link utilization rate in the NW is minimized.
  • the maximum link utilization rate refers to the maximum utilization rate of all links in the NW. For example, if there are three links in the NW and their usage rates are 30%, 50%, and 10%, the maximum link usage rate is 50%.
  • FIG. 4 is a flowchart showing the optimum route calculation when the maximum link utilization rate in the NW is minimized.
  • FIG. 4 is called and executed by the subroutine call of step S4 of FIG.
  • the route calculation unit 121 determines the VPN allocation order. Specifically, the route calculation unit 121 sorts the NWs to be allocated in descending order of delay quality requirements, that is, in order of decreasing allowable delay amount and jitter. Hereinafter, a plurality of route candidates for each NW that satisfy the quality requirements are calculated in the determined order.
  • the route calculation unit 121 determines whether or not there is a link whose remaining physical band of the link is equal to or less than the required band. Specifically, when the residual physical bandwidth of each link is less than the required bandwidth of VPN, the route calculation unit 121 excludes the link from the route calculation. For example, if the residual physical bandwidth of a certain link is 0.1 G and the required bandwidth of a VPN is 0.2 G, the link cannot be assigned and is excluded from the route calculation target in advance.
  • step S12: Yes If there is a link whose physical band is less than or equal to the required band (step S12: Yes), the route calculation unit 121 excludes the corresponding link from the route calculation candidates in step S13. If there is no link whose physical band is less than or equal to the required band (step S12: No), the process jumps from step S13 and proceeds to step S14.
  • the route calculation unit 121 calculates a route candidate that satisfies the quality requirement. Specifically, the route calculation unit 121 calculates a route between input / output points of VPN information (NW design information) using the Dijkstra's algorithm or the like with the delay amount and jitter of each link as the link cost. Further, in this route calculation, not only the route that minimizes the total link cost but also a plurality of routes that are equal to or less than the value of the quality requirement are calculated as shown below. In step S15, the route calculation unit 121 calculates the maximum link utilization rate of the route candidate.
  • VPN information NW design information
  • the link utilization rate is calculated by adding the required bandwidth of VPN to the allocated bandwidth of each link on the optimum route calculated in step S15. For example, when the physical bandwidth of a certain link is 10G, the allocated bandwidth is 2G, and the required bandwidth of VPN is 1G, the allocated bandwidth is changed from 2G to 3G, and the link utilization rate is calculated to be 20% to 30%. At this time, if there are a plurality of route candidates, the link utilization rate is calculated for all the route candidates, the maximum link utilization rate is calculated from those link utilization rates, and the maximum link usage rate in the communication NW is calculated. Select the route candidate that minimizes. If there is only one route candidate, select it.
  • step S16 the route calculation unit 121 determines whether or not the maximum link utilization rate of all route candidates has been calculated.
  • step S16: Yes the process proceeds to step S17, and when the maximum link utilization rate of all route candidates is not calculated (step S16: No), the process returns to step S15. ..
  • step S17 the route calculation unit 121 selects the route candidate having the smallest maximum link utilization rate.
  • step S18 the route calculation unit 121 updates the remainder physical band of the link.
  • step S19 the route calculation unit 121 determines whether or not the routes of all VPNs have been selected. If all VPN routes have not been selected (step S19: No), the process returns to step S12. When the routes of all VPNs are selected (step S19: Yes), the optimum route calculation process of this flow is completed and the process returns to step S5 of FIG. The above procedure is performed for all NWs to determine the route information.
  • the optimization calculation example 2 is an example in which the total delay amount and jitter of each NW is minimized.
  • FIG. 5 is a flowchart showing the optimum route calculation when the total delay amount and jitter of each NW is minimized.
  • FIG. 5 is called and executed by the subroutine call of step S4 of FIG.
  • the route calculation unit 121 determines the VPN allocation order. Specifically, the route calculation unit 121 sorts the NWs to be allocated in descending order of delay quality requirements, that is, in descending order of allowable delay amount and jitter, as in step S11 of FIG. I do.
  • step S22 the route calculation unit 121 determines whether or not there is a link whose remaining physical band of the link is equal to or less than the required band. Specifically, the route calculation unit 121 excludes the link from the route calculation when the residual physical bandwidth of each link is lower than the required bandwidth of the VPN, as in step S12 of FIG.
  • step S22: Yes If there is a link whose physical band is less than or equal to the required band (step S22: Yes), the route calculation unit 121 excludes the corresponding link from the route calculation candidates in step S23. If there is no link whose physical band is less than or equal to the required band (step S22: No), the process jumps from step S13 and proceeds to step S24.
  • step S24 the route calculation unit 121 calculates a route that minimizes the total link cost between the input / output points of each NW by using the Dijkstra method or the like with the delay amount and jitter of each link as the link cost.
  • the allocateable band of each link and the required band of VPN are compared, and if the allocateable band is insufficient, the link is excluded from the route calculation target.
  • step S25 the route calculation unit 121 adds the required bandwidth to the allocated bandwidth of each link on the calculated optimum route (updates the remaining physical bandwidth of the link), and updates the route information.
  • step S26 the route calculation unit 121 determines whether or not the routes of all VPNs have been selected. If all VPN routes have not been selected (step S26: No), the process returns to step S22. When the routes of all VPNs are selected (step S26: Yes), the optimum route calculation process of this flow is completed and the process returns to step S5 of FIG. The above procedure is performed for all NWs to determine the route information.
  • the optimization calculation example 3 is an example in which the route change scale is minimized.
  • FIG. 6 is a flowchart showing the optimum route calculation when the route change scale is minimized.
  • FIG. 6 is called and executed by the subroutine call of step S4 of FIG.
  • the route calculation unit 121 determines whether the quality requirement is satisfied from the current route information of each NW, and extracts only the VPN that does not meet the requirement.
  • the route calculation unit 121 determines the VPN allocation order. Specifically, the route calculation unit 121 sorts the NWs to be allocated in descending order of delay quality requirements, that is, in order of decreasing allowable delay amount and jitter.
  • a plurality of route candidates for each NW that satisfy the quality requirements are calculated in the determined order.
  • step S33 the route calculation unit 121 determines whether or not there is a link whose remaining physical band of the link is equal to or less than the required band. Specifically, when the residual physical bandwidth of each link is less than the required bandwidth of VPN, the route calculation unit 121 excludes the link from the route calculation.
  • step S33: Yes If there is a link whose physical band is less than or equal to the required band (step S33: Yes), the route calculation unit 121 excludes the corresponding link from the route calculation candidates in step S34. If there is no link whose physical band is less than or equal to the required band (step S33: No), the process jumps from step S34 and proceeds to step S35.
  • step S35 the route calculation unit 121 calculates a route candidate that satisfies the quality requirement. Specifically, the route calculation unit 121 calculates a route between input / output points (end points) of VPN information (NW design information) using the Dijkstra method or the like with the delay amount and jitter of each link as the link cost.
  • VPN information NW design information
  • step S36 the route calculation unit 121 compares the current route and the change scale of the route candidate. Specifically, the route calculation unit 121 selects the calculated route candidate having the smallest difference from the current route information as the optimum route, allocates the required band, and updates the route information.
  • the current route is # (hereinafter, “#” in the present specification indicates an identification number of the device.
  • # 1 and # 5 are also input / output points (end points).) # 1-.
  • # 2- # 3- # 4- # 5 the changed route candidates are # 1- # 6- # 3- # 4- # 5 and # 1- # 2- # 7- # 8- # 5. If so, the former will be changed in one place and the latter in two places. Therefore, the route calculation unit 121 determines that the former has a smaller change scale, and selects the former as a new candidate.
  • step S37 the route calculation unit 121 determines whether or not the maximum link utilization rate of all route candidates has been calculated.
  • step S37: Yes the process proceeds to step S38, and when the maximum link utilization rate of all route candidates is not calculated (step S37: No), the process returns to step S36. ..
  • step S38 the route calculation unit 121 updates the remainder physical band of the link.
  • step S39 the route calculation unit 121 determines whether or not the routes of all VPNs have been selected. If all VPN routes have not been selected (step S39: No), the process returns to step S33. When the routes of all VPNs are selected (step S39: Yes), the optimum route calculation process of this flow is completed and the process returns to step S5 of FIG. The above procedure is performed for all NWs to determine the route information.
  • FIG. 7 is a diagram illustrating the operation of the network control system 100 of FIG. 1 in the initial state. 8 shows an input / output point (end point) (# 1- # 6) of VPN information (NW design information) stored in the NW state holding DB 112 of FIG. 7 and an input / output point (end point) (# 1- # 6). It is a figure showing the delay amount of the link between), the jitter [sec], and the link usage rate [%].
  • the route control device 130 of the network control system 100 acquires VPN information (NW design information).
  • the VPN information may be acquired from the device via the route control unit 131 when the VPN information is input by the user and the device has already been set. Take the case of inputting VPN information by the user as an example.
  • the user inputs VPN information 61 to 63 (VPN information ⁇ 1> to ⁇ 3>) and route information 60 to the route control device 130 using the terminal 20, and NW design. It is stored in the information holding DB 132.
  • VPN information 61 to 63 are input / output points (end points) of VPN and delay quality requirements (delay amount, jitter, etc.) input for each accommodated flow or VPN. And information on the required band.
  • the DSN information 61 is the delay amount and jitter of the link between the end points: # 1- # 6 at the input / output points (end points) (# 1- # 6) shown in FIG. "Delay amount and jitter” is simply referred to as "delay amount”) [sec], information on required bandwidth [Gbps], and its required delay quality (here, "high”). It is assumed that the VPN 61 is the required band information 4 [Gbps].
  • the VPN information 62 (VPN information ⁇ 2>) is the delay amount [sec] and the required band of the link between the end points: # 1- # 6 at the input / output points (end points) (# 1- # 6) shown in FIG. Information [Gbps] and its required delay quality (here "low”). It is assumed that the VPN 62 is the required band information 3 [Gbps].
  • the VPN information 63 (VPN information ⁇ 3>) is the delay amount [sec] and the required band of the link between the end points: # 2- # 6 at the input / output points (end points) (# 2- # 6) shown in FIG. Information [Gbps] and its required delay quality (here "low”). It is assumed that the VPN 63 is the required band information 4 [Gbps].
  • the route information 60 is route control information for each VPN ⁇ 1> to ⁇ 3>.
  • the route information 60 is VPN ⁇ 1>: # 1- # 4- # 6 and VPN ⁇ 2>: # 1- # at the input / output points (end points) (# 1- # 6) shown in FIG. It has 4- # 6, VPN ⁇ 3>: # 2- # 5- # 6. Note that the route information 60 is not essential when the VPN is not assigned.
  • the NW state measuring device 110 of the network control system 100 measures the NW state (topology, delay amount of each link, link usage rate) and grasps the initial state.
  • the link utilization rate is not information associated with each VPN but information managed as a NW state.
  • the NW state measuring unit 111 transmits and receives a predetermined flow packet to and from the measurement target network 10 via the communication path 11 to measure the NW state, and measures the topology, the delay amount of each link, and the like.
  • the NW state measurement information 50 composed of the link usage rate is stored in the NW state holding DB 112.
  • the NW state measuring device 110 uses the NW state measurement of the delay measuring system 200 shown in FIG. This makes it possible to measure with microsecond accuracy and at millisecond intervals.
  • FIG. 8 shows the NW state measurement (delay amount / jitter) in the initial state at the link between the input / output points (end points) (# 1 to # 6) of the VPN information (NW design information) held in the NW design information holding DB 132. [sec], link usage rate [%]) It is an image diagram reflecting the result. Further, as shown by the thick solid lines c to e in FIG. 8, VPN ⁇ 1> to ⁇ 3> based on the route information 60 (see FIG. 7) to the link between the input / output points (end points) (# 1 to # 6). Are superimposed and shown.
  • the amount of delay of the link between the measured end points: # 1 to # 3 is 5 ⁇ s [sec] / the link usage rate is 0 [%].
  • the delay amount of the link between the end points: # 3- # 6 is 3 ⁇ s [sec] / the link usage rate is 0 [%].
  • the delay amount of the link between the endpoints: # 1 to # 4 is 2 ⁇ s [sec] / the link usage rate is 70 [%]
  • the delay amount of the link between the endpoints: # 4- # 6 is 2 ⁇ s [sec].
  • the link usage rate is 70 [%].
  • the delay amount of the link between the measured end points # 1 to # 6 and the link usage rate are held in the NW state holding DB 112.
  • the maximum link usage rate [%] is obtained from the NW state measurement results for the VPN information 61 to 63 (VPN information ⁇ 1> to ⁇ 3>) based on the route information 60 shown in FIG. 7.
  • VPN ⁇ 1> and VPN ⁇ 2> are the same in that they are route information connecting the end points: # 1- # 4- # 6.
  • the VPN ⁇ 1> and the VPN ⁇ 2> have a request delay.
  • the quality is different (the required delay quality "high” for VPN information ⁇ 1> and the required delay quality "low” for VPN information ⁇ 2>).
  • the maximum link utilization rate [%] of # 2- # 6 is calculated to be 0.3 (30%) in the same manner (see the thick solid line e in FIG. 8).
  • the maximum link usage rate which is the maximum link usage rate among the link usage rates, is 70 [%].
  • FIG. 9 is a diagram illustrating an operation in the route calculation of the network control system 100 of FIG.
  • the same components as those in FIG. 7 are designated by the same reference numerals, and the description of the overlapping portions will be omitted.
  • the NW state measuring device 110 outputs the NW state held in the NW state holding DB 112 to the route calculation unit 121 of the route calculation device 120 (see reference numeral f in FIG. 9).
  • the route control device 130 outputs the route information 60 held in the NW design information holding DB 132 to the route calculation unit 121 (see reference numeral g in FIG. 9), and the VPN information 61 to 63 held in the NW design information holding DB 132.
  • VPN information ⁇ 1> to ⁇ 3> is output to the route calculation unit 121 (see reference numeral h in FIG. 9).
  • the route calculation unit 121 of the route calculation device 120 receives the NW state held in the NW state holding DB 112, the route information 60 held in the NW design information holding DB 132, and the VPN information 61 to 63 as inputs, and the route calculation unit 121. Calculates the optimal route for VPN.
  • the optimum route of the calculated VPN is the route information 70.
  • the route information 70 the route of the route information 60 held in the NW design information holding DB 132 is optimized. That is, among the route information 60 held in the NW design information holding DB 132, VPN ⁇ 2>: # 1- # 4- # 6 is changed to VPN ⁇ 2>: # 1- # 3- # 6. It is output (presented to the user) as the route information 70 (described later).
  • the route calculation unit 121 uses a "objective function" (described later) for evaluating the optimum degree of the calculation result and a "constraint condition" that the route calculation result must satisfy, and determines the optimum route (described later) of the VPN. calculate.
  • An example of calculating the optimum route of VPN, that is, optimizing VPN will be described.
  • the "objective function" in VPN optimal route calculation is to minimize the maximum link usage rate, minimize the standard deviation of the link usage rate in the NW, minimize the standard deviation of the number of VPNs allocated to each link, and delay / jitter of each VPN. There is a minimization of the total number of routes, a minimization of the number of route changes, and the like.
  • the "constraint condition" in the VPN optimum route calculation includes that the route of each VPN satisfies the required delay quality, the link assigned to each required quality is separated, and the like.
  • FIG. 10 is a diagram illustrating an operation in updating the network control system 100 of FIG.
  • the same components as those in FIGS. 7 and 9 are designated by the same reference numerals, and the description of overlapping portions will be omitted.
  • the route control device 130 of the network control system 100 acquires VPN information (NW design information).
  • the user inputs the route information 70 into the route control device 130 using the terminal 20 and stores the route information 70 in the NW design information holding DB 132.
  • the route information 70 is route control information for each VPN ⁇ 1> to ⁇ 3> set by the user.
  • the route information 70 is the optimum VPN route calculated by the route calculation unit 121, and is confirmed and set by the user.
  • VPN ⁇ 2>: # 1- # 4- # 6 is changed to VPN ⁇ 2>: # 1- # 3- # 6. Has been done.
  • the route control unit 131 of the route control device 130 confirms the calculated optimum route candidate, and updates the NW design information holding DB 132 when the user's terminal 20 instructs to reflect the route (see reference numeral k in FIG. 10). And input the setting to the measurement target network 10 (see reference numeral l in FIG. 10).
  • the NW state measurement unit 111 of the NW state measurement device 110 acquires the NW state (topology, delay amount of each link, link usage rate) after route control. As shown by the reference numeral m in FIG. 10, the NW state measuring unit 111 measures the NW state by transmitting and receiving a predetermined flow packet to and from the measurement target network 10 via the communication path 11. The NW state measuring unit 111 updates the initial state based on the acquired NW state after the route control.
  • FIG. 11 shows an input / output point (end point) (# 1- # 6) of the GBP information (NW design information) that is route-controlled based on the route information 70 shown in FIG. 10 and is held in the NW design information holding DB 132 after the update.
  • NW design information NW design information
  • VPN ⁇ 1> to ⁇ 3> based on the route information 60 (see FIG. 7) to the link between the input / output points (end points) (# 1 to # 6).
  • the same components as those in FIG. 8 are designated by the same reference numerals.
  • End point measured after route control The delay amount of the link between # 1 to # 3 is 5 ⁇ s [sec] / the link usage rate is 30 [%]. Further, the delay amount of the link between the end points: # 3- # 6 is 3 ⁇ s [sec] / the link usage rate is 30 [%]. The delay amount of the link between the end points: # 1 to # 4 is 2 ⁇ s [sec] / the link usage rate is 40 [%], and the delay amount of the link between the end points: # 4- # 6 is 2 ⁇ s [sec]. / The link usage rate is 40 [%].
  • the maximum link usage rate [%] is obtained from the NW state measurement results for VPN information 61 to 63 (VPN information ⁇ 1> to ⁇ 3>) based on the route information 70 shown in FIG.
  • VPN ⁇ 1> is the route information connecting the end points: # 1- # 4- # 6, and the delay amount of the link between # 1- # 4 and the link usage rate measured after the route control are 2 ⁇ s / 40 [%]. , The delay amount of the link between # 4 and # 6 and the link usage rate are 2 ⁇ s / 40 [%] (see the thick solid line d in FIG. 11).
  • VPN ⁇ 1> there is no change from the route information in the initial state shown in FIG.
  • VPN ⁇ 2> As can be seen from the route information 70 shown in FIG. 10, VPN ⁇ 2>: # 1- # 4- # 6 (see the broken line c in FIG. 11) is VPN ⁇ 2. >: It has been changed to # 1- # 3- # 6 (see the thick solid line p in FIG. 11) (see the white arrow o in FIG. 11). That is, in the route information in the initial state shown in FIG. 8, the route information connecting the end points: # 1 to # 4- # 6 was two, VPN ⁇ 1> and VPN ⁇ 2>, but after the update, the VPN ⁇ 2>: # 1- # 4- # 6 (see the broken line c in FIG. 11) is a route that does not go through # 4, VPN ⁇ 2>: # 1- # 3- # 6 (thick solid line p in FIG. 11). See).
  • the VPN ⁇ 1> and the VPN ⁇ 2> are the same in that they are the route information connecting the end points: # 1 to # 6, but the VPN.
  • the required delay quality is different between ⁇ 1> and VPN ⁇ 2> (required delay quality "high” for VPN information ⁇ 1>, required delay quality "low” for VPN information ⁇ 2>). Therefore, VPN ⁇ 2>: # 1- # 4- # 6 with the required delay quality "low” is changed to VPN ⁇ 2>: # 1- # 3- # 6.
  • VPN ⁇ 2> shown in FIG. 10 is the route information connecting the end points: # 1- # 3- # 6 (see the thick solid line p in FIG. 11).
  • VPN ⁇ 3> shown in FIG. 10 is the route information connecting the end points: # 2- # 5- # 6 (see the thick solid line e in FIG. 8).
  • VPN ⁇ 3> there is no change from the route information in the initial state shown in FIG.
  • the maximum link usage rate in FIG. 11 is 40 [%], and the maximum link usage rate 70 [%] in FIG. 8 can be reduced to the maximum link usage rate 40 [%].
  • the NW state measuring unit 111 acquires the NW state after the route control and updates the initial state. By periodically performing a series of NW state measurement to route control, optimum control according to the NW state is realized.
  • the route calculation method according to the present embodiment is realized by, for example, a computer 900 which is a physical device having a configuration as shown in FIG.
  • FIG. 12 is a hardware configuration diagram showing an example of a computer that realizes the processing of the route calculation method according to the embodiment of the present invention.
  • the computer 900 includes a CPU (Central Processing Unit) 901, a ROM (Read Only Memory) 902, a RAM 903, an HDD (Hard Disk Drive) 904, an input / output I / F (Interface) 905, a communication I / F 906, and a media I / F 907. Have.
  • the CPU 901 operates based on the program stored in the ROM 902 or the HDD 904, and is controlled by each processing unit of the network control system 100 shown in FIG.
  • the ROM 902 stores a boot program executed by the CPU 901 when the computer 900 is started, a program related to the hardware of the computer 900, and the like.
  • the CPU 901 controls an input device 910 such as a mouse and a keyboard and an output device 911 such as a display via the input / output I / F 905.
  • the CPU 901 acquires data from the input device 910 and outputs the generated data to the output device 911 via the input / output I / F 905.
  • a GPU Graphics Processing Unit
  • a GPU may be used together with the CPU 901 as the processor.
  • the HDD 904 stores a program executed by the CPU 901, data used by the program, and the like.
  • the communication I / F906 receives data from another device via a communication network (for example, NW (Network) 920) and outputs the data to the CPU 901, and the communication I / F 906 transfers the data generated by the CPU 901 to another device via the communication network. Send to the device.
  • NW Network
  • the media I / F907 reads the program or data stored in the recording medium 912 and outputs the program or data to the CPU 901 via the RAM 903.
  • the CPU 901 loads the program related to the target processing from the recording medium 912 onto the RAM 903 via the media I / F 907, and executes the loaded program.
  • the recording medium 912 is an optical recording medium such as a DVD (Digital Versatile Disc) or PD (Phase change rewritable Disk), a magneto-optical recording medium such as an MO (Magneto Optical disk), a magnetic recording medium, a conductor memory tape medium, a semiconductor memory, or the like. Is.
  • the CPU 901 of the computer 900 functions the network control system 100 by executing a program loaded on the RAM 903. Realize. Further, the data in the RAM 903 is stored in the HDD 904. The CPU 901 reads the program related to the target processing from the recording medium 912 and executes it. In addition, the CPU 901 may read a program related to the target processing from another device via the communication network (NW920).
  • NW920 communication network
  • the network control system 100 is a network control system that changes a route set in a network (measurement target network 10 in FIG. 1), and has a NW topology, a delay amount of each link, a traffic amount, and a link bandwidth.
  • NW state measurement unit 111 (see FIG. 1) to be measured and held in the NW state holding unit (NW state holding DB 112 in FIG. 1) as NW state information, quality requirements (delay quality requirements) including endpoints and delay amount, and necessary.
  • the band information is held in the NW design information holding unit (NW design information holding DB 132 in FIG.
  • a route calculation unit 121 (see FIG. 1) that performs optimum route calculation with quality requirements as constraint conditions based on the NW design information, and a route control unit 131 that performs route control based on the route calculated by the route calculation unit 121. (See FIG. 1).
  • the present invention performs route optimization in consideration of the delay measurement information in the NW and the required quality information such as the flow of the route control target and the VPN in addition to the conventional traffic volume. It is possible to realize route control according to the state, and to achieve both required quality and optimization of NW resource utilization efficiency.
  • the network control system 100 of the present embodiment inputs the delay amount for each link in the NW and the end point / required quality for each DSN, and optimizes the utilization efficiency of NW resources while satisfying the requirements for the delay quality for each DSN. Route control is performed based on the route calculation algorithm (route calculation method) and the calculation result.
  • the NW state measuring unit 111 performs time stamp processing by hardware at the time of transmitting / receiving probe packets, and measures the delay amount of each link from the difference of the time stamps at the time of transmission / reception. ..
  • the route calculation unit 121 uses an objective function for evaluating the optimum degree of the calculation result, and is characterized in that the route calculation is performed by applying the objective function.
  • the calculation time of the route calculation can be shortened by using the objective function for evaluating the optimum degree of the calculation result (for example, the objective function for minimizing the maximum link usage rate in the NW). It is possible to control the optimum route while satisfying the quality requirements.
  • the route calculation unit 121 calculates a route using the delay amount of each link as a link cost between the end points of the NW design information, and calculates a route in which the total of the link costs satisfies the quality requirement. It is a feature.
  • the route whose total link cost meets the quality requirement is selected, and the route control in the state where the quality requirement is satisfied becomes possible. Further, if the total link cost does not meet the quality requirement, the link can be excluded from the route calculation, and the calculation time of the route calculation can be shortened.
  • the route calculation unit 121 calculates a route between the end points of the NW design information using the delay amount of each link as the link cost, and calculates the route that minimizes the total link cost. And.
  • the route calculation unit 121 calculates route candidates satisfying the quality requirements for the NW, and among the calculated route candidates, the one with the smallest difference from the current route information is the optimum route. It is characterized by selecting.
  • the route with the smallest difference from the current route information is selected as the optimum route, so that the maximum link usage rate can be reduced and the route change scale can be reduced.
  • each of the processes described in the above embodiments all or part of the processes described as being automatically performed may be performed manually, or all or part of the processes described as being performed manually. Some can be done automatically by a known method.
  • the processing procedure, control procedure, specific name, and information including various data and parameters shown in the above-mentioned document and drawings can be arbitrarily changed unless otherwise specified.
  • each component of each of the illustrated devices is a functional concept, and does not necessarily have to be physically configured as shown in the figure. That is, the specific form of distribution / integration of each device is not limited to the one shown in the figure, and all or part of them may be functionally or physically distributed / physically in any unit according to various loads and usage conditions. Can be integrated and configured.
  • each of the above configurations, functions, processing units, processing means, etc. may be realized by hardware by designing a part or all of them by, for example, an integrated circuit. Further, each of the above configurations, functions, and the like may be realized by software for the processor to interpret and execute a program that realizes each function. Information such as programs, tables, and files that realize each function can be stored in memory, hard disks, recording devices such as SSDs (Solid State Drives), IC (Integrated Circuit) cards, SD (Secure Digital) cards, optical disks, etc. It can be held on a recording medium.
  • SSDs Solid State Drives
  • IC Integrated Circuit
  • SD Secure Digital
  • processing steps for describing the time-series processing are not necessarily the processing performed in the time-series according to the described order, but are not necessarily processed in the time-series, but are parallel or individual. It also includes processing to be executed in (for example, parallel processing or processing by an object).
  • Measurement target network 60, 70 Route information 61-63 VPN information (NW design information) 100 Network control system 110 NW state measuring device 111 NW state measuring unit 112 NW state holding DB (NW state holding part) 120 Route calculation device 121 Route calculation unit 130 Route control device 131 Route control unit 132 NW design information retention DB (NW design information retention unit) 200 Delay measurement system

Landscapes

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

Abstract

ネットワーク制御システム(100)は、NWトポロジ、各リンクの遅延量、ジッタ、トラフィック量、リンク帯域を測定し、NW状態情報としてNW状態保持DB(112)に保持させるNW状態測定部(111)と、端点、遅延量およびジッタを含む品質要件、必要帯域の情報を、各NWの設計情報として保持するNW設計情報保持DB(132)と、NW状態保持DB(112)に保持されたNW状態情報とNW設計情報保持DB(132)に保持されたNW設計情報をもとに、品質要件を制約条件として最適経路計算を行う経路計算部(121)と、経路計算部(121)が計算した経路情報に基づいて経路制御を行う経路制御部(131)と、を備える。

Description

ネットワーク制御システム、経路計算方法およびプログラム
 本発明は、ネットワークの利用状況に応じた適切なネットワーク構成を設定するネットワーク制御システム、経路計算方法およびプログラムに関する。
 5Gに代表される低遅延が要求されるネットワーク(以下、適宜NWという)においては、NW内の遅延量に応じて適切な制御・運用を行う必要がある。そのためには、NW内の遅延状態を高精度に測定・把握し、その情報に基づいて最適な経路制御をする必要がある。NW内の遅延量は測定したい区間の両端に測定用の装置を配備し、ping等のICMP(Internet Control Message Protocol)パケットの応答時間(Round Trip Time,RTT)やNW状態を把握するプロトコルであるTwo-Way Active Measurement Protocol(TWAMP)を用いて測定されている。また、測定対象NWに接続された測定システムから複数の遅延測定用のパケットを送信し、それらのRTTの組合せから各リンクの遅延量やジッタを測定する手法なども提案されている(非特許文献1参照)。
 一方で経路制御については主にフロー単位やリンク単位のトラフィック量に着目し、NW全体のリソース利用効率を最適化する手法が提案されている。
 非特許文献2には、NW内の最大リンク使用率を最小化、すなわちフローが特定のリンクに偏らないようにフローを制御することでNWリソースを効率的に使用する手法が記載されている。
森弘樹,他4名, "ネットワーク内の遅延時間を高精度に測定する遅延測定システムの提案," 信学技報, NS2019-231(2020-03), pp.301-306, 2020年3月. 杉山隆太,武田知典 "集中制御型の大規模IP網における経路最適化の検討," 信学技報, NS2014-1(2014-4), pp.1-4, 2014年4月.
 非特許文献1、2の手法では、トラフィック量のみに着目しており、リソース利用効率が最適化したことで特定リンクの混雑が解消され、結果として遅延が小さくなる可能性はある。しかし、意図せず長距離経路に迂回することで遅延品質が劣化する可能性もあり、遅延に対する要求品質を満たす最適なNWが提供されることは保証できない。
 本発明は、このような背景を鑑みてなされたものであり、要求品質とリソース利用効率の最適化の両立を可能とするネットワーク制御システム、経路計算方法およびプログラムを提供することを課題とする。
 前記した課題を解決するため、本発明は、ネットワーク(NW)に設定される経路を変更するネットワーク制御システムであって、NWトポロジ、各リンクの遅延量、トラフィック量、リンク帯域を測定し、NW状態情報としてNW状態保持部に保持させるNW状態測定部と、端点、遅延量を含む品質要件、必要帯域の情報を、各NWの設計情報として保持するNW設計情報保持部と、前記NW状態保持部に保持されたNW状態情報と前記NW設計情報保持部に保持されたNW設計情報をもとに、前記品質要件を制約条件として最適経路計算を行う経路計算部と、前記経路計算部が計算した経路に基づいて経路制御を行う経路制御部と、を備えることを特徴とするネットワーク制御システムとした。
 本発明によれば、要求品質とリソース利用効率の最適化の両立を可能とするネットワーク制御システム、経路計算方法およびプログラムを提供することができる。
本発明の実施形態に係るネットワーク制御システムの構成例を示す図である。 非特許文献1に記載の技術による遅延測定システムの構成を示すブロック図である。 本実施形態に係るネットワーク制御システムの経路計算方法の手順を示すフローチャートである。 本実施形態に係るネットワーク制御システムのNW内の最大リンク利用率を最小化する場合の最適経路計算を示すフローチャートである。 本実施形態に係るネットワーク制御システムの各NWの遅延量、ジッタの合計を最小にする場合の最適経路計算を示すフローチャートである。 本実施形態に係るネットワーク制御システムの経路変更規模を最小化する場合の最適経路計算を示すフローチャートである。 本実施形態に係るネットワーク制御システムの初期状態における動作を説明する図である。 本実施形態に係るネットワーク制御システムのNW状態保持DBに格納されるVPN情報の入出力点(端点)と、入出力点(端点)間のリンクの遅延量やジッタおよびリンク使用率とを表わす図である。 本実施形態に係るネットワーク制御システムの経路計算における動作を説明する図である。 本実施形態に係るネットワーク制御システムの更新における動作を説明する図である。 本実施形態に係るネットワーク制御システムの経路情報をもとに経路制御され、更新後にNW設計情報保持DBに保持されたVPN情報の入出力点(端点)間のリンクに、経路制御後のNW状態測定結果を反映したイメージ図である。 本発明の実施形態に係る経路計算方法の処理を実現するコンピュータの一例を示すハードウェア構成図である。
 以下、図面を参照して本発明を実施するための形態(以下、「本実施形態」という)におけるネットワークシステム等について説明する。
(実施形態)
 図1は、本発明の実施形態に係るネットワーク制御システム100の構成例を示す図である。
 図1に示すように、ネットワーク制御システム100は、NW状態測定装置110と、経路計算装置120と、経路制御装置130と、を備えて構成される。ネットワーク制御システム100は、測定対象ネットワーク(通信ネットワーク)10に接続される。
 なお、ネットワーク制御システム100を構成するNW状態測定装置110、経路計算装置120、および経路制御装置130は、それぞれを独立の装置で実現してもよいし、一装置で実現してもよい。また、各構成要素内の機能配備は一例であり、装置間の機能配備を変更してもよい。
 <通信ネットワーク>
 測定対象ネットワーク(通信ネットワーク)10は、ノードとノード間をつなぐ物理的なリンクで構成される。
 測定対象ネットワーク10上では、測定対象ネットワーク10内で動作するルーティングプロトコルの情報(OSPF-LS/BGP-LS)等のルーティングプロトコルによりトポロジ情報が広告されている。ネットワーク制御システム100は、測定対象ネットワーク10上で、MPLS/Segment Routing(SR)やOpenflow(登録商標)のようにフローやVirtual Private Network(VPN)単位で経路制御が可能なプロトコルによる転送を行う。
 <NW状態測定装置110>
 NW状態測定装置110(図1参照)は、NW状態測定部111と、NW状態保持DB112と、を備える。
 NW状態測定部111は、NWトポロジ、各リンクの遅延量、ジッタ、トラフィック量、リンク帯域を測定・収集し、NW状態保持DB112(NW状態保持部)に格納する。
 NWトポロジは、測定対象NW内で動作するルーティングプロトコルの情報(OSPF-LS/BGP-LS)等から収集する。NWトポロジは、各リンクの遅延量を算出するために用いられる。
 各リンクの遅延量、ジッタは、pingやTWAMP(Two-Way Active Measurement Protocol)、遅延測定用のパケット等で測定を行う。
 トラフィック量は、NW装置(以下単に、装置という)内部のトラフィックカウンタの情報や装置情報を取得するSimple Network Management Protocol(SNMP)/Telemety(登録商標)により取得する。
 リンク帯域は、装置のconfig等から収集する。また、NWトポロジと帯域のように動的に変化しない情報については手動で入力してもよい。
 NW状態測定装置110は、遅延・ジッタの高精度な測定をリアルタイムで実行する遅延測定システム200(図2参照)を用いる。遅延測定システム200を用いる場合、NW状態測定部111は、プローブパケットの送受信時にハードウェアによるタイムスタンプ処理を行い、送受信時のタイムスタンプの差分からNW状態を測定する。
 <経路計算装置120>
 経路計算装置120(図1参照)は、経路計算部121を備える。
 経路計算部121は、NW状態保持DB112と経路制御装置130のNW設計情報保持DB132(NW設計情報保持部)の情報から最適な経路を計算する。経路計算部121の最適化計算例については、図4~図6のフローにより後記する。
 NW設計情報保持DB132は、端点、遅延品質要件、必要帯域の情報を保持しており、各NWの設計情報として事前に登録する。
 また、NW設計情報保持DB132は、現在の経路情報を、装置のconfigから収集して保持する。この経路情報は、手動で入力してもよい。また、いずれのNWの割り当ても行われていない状態や新たに追加されるNWについては現在の経路情報は省略してもよい。
 <経路制御装置130>
 経路制御装置130(図1参照)は、経路制御部131と、NW設計情報保持DB132と、を備える。
 経路制御部131は、経路計算装置120で計算された経路情報に基づいて経路制御を行う。経路制御部131は、例えば、網内の転送をMPLS/Segment Routing(SR)等のラベルスイッチング方式やOpenflow(登録商標)等のNW単位の制御や任意のフロー制御が可能なもので実現する。これにより、NW単位の柔軟な制御が可能となる。
 経路制御部131は、経路制御が完了した場合、現在の経路情報としてNW設計情報保持DB132を更新する。経路制御部131は、経路計算前後で経路に変化がないNWについては、経路制御や情報の更新を行わない。
[NW状態測定装置110(遅延測定システム)の構成]
 図2は、非特許文献1に記載の技術による遅延測定システム200の構成を示すブロック図である。本実施形態では、図2の遅延測定システム200の構成をNW状態測定装置110がバックグラウンドで備える。
 図2に示す遅延測定システム200は、H/W(ハードウェア)処理により実行されるタイムスタンプ押下装置210と、S/W(ソフトウェア)処理により実行される検査パケット生成装置220と、を備える。
 タイムスタンプ押下装置210は、タイムスタンプ押下部211を備える。
 タイムスタンプ押下部211は、プローブパケットの送受信時にタイムスタンプの打刻を行う。具体的には、タイムスタンプ押下部211は、タイムスタンプ情報をプローブパケットに打刻する。例えば、検査パケット生成装置220で生成するプローブパケットをタイムスタンプ押下装置210から送信する時のタイムスタンプ情報(Tin)とプローブパケットがNW内を転送され、タイムスタンプ押下装置210で受信した時のタイムスタンプ情報(Tout)をそれぞれ打刻する。
 検査パケット生成装置220は、トポロジ把握部221と、経路決定部222と、検査パケット生成部223と、検査結果取得部224と、DB225と、を備える。
 トポロジ把握部221は、NW情報の収集を行う。具体的には、トポロジ把握部221は、測定対象ネットワーク10とルーティングプロトコルで接続し、経路計算に必要なNWトポロジ情報とSRで転送を行う場合には経路制御に必要なSegment Identifier (SID)情報を収集する。
 経路決定部222は、NWトポロジ情報を基に遅延測定経路を計算する。
 検査パケット生成部223は、NW内に送信するプローブパケットを生成する。具体的には、検査パケット生成部223は、タイムスタンプ押下部211で測定対象ネットワーク10に送信するときの時刻Tinと戻ってきた時の時刻Toutを検査パケット内の任意の箇所に打刻する。また、検査パケット生成部223は、経路決定部222が計算した経路に従って転送されるようにSR-SID ラベルをスタックする。
 検査結果取得部224は、遅延時間計算を行う。具体的には、検査結果取得部224は、プローブパケット内のタイムスタンプ情報からRTTを計算する。タイムスタンプ押下装置210で打刻されたTout、Tinの差分を計算し、対応する測定経路のRTTとしてDB225に格納する。
 DB225は、各部で収集、計算した情報を格納する。
 遅延測定システム200は、プローブパケットの送受信時にタイムスタンプ処理を行うことで、NW内でのタイムスタンプ処理や装置間の時刻同期を行わずに遅延時間の測定を行う。NW内でのプローブパケットの折り返し処理やタイムスタンプ処理、装置間の時刻同期を不要とする。
 また、タイムスタンプ処理をハードウェアで行うことで、CPU負荷や他処理の影響を最小限に抑えることができ、高精度、高頻度の時刻情報の処理が可能である。これにより、従来ミリ秒の精度、秒間隔で行っていた測定をマイクロ秒の精度、ミリ秒間隔で測定することが可能である。
 また、プローブパケットの経路制御をSR(Segment Routing)等の柔軟な経路制御可能なプロトコルと組み合わせることで、リンク毎や任意の区間の遅延が測定可能である。
 図2に示す遅延測定システム200は、図1に示すNW状態測定装置110に適用される。NW状態測定装置110は、遅延測定システム200を用いることで、遅延量とジッタの高精度な測定をリアルタイムで実行することができる。
 以下、上述のように構成されたネットワーク制御システム100の動作、および経路計算方法について説明する。
 測定対象ネットワーク10上では、OSPFやBGP等のルーティングプロトコルによりトポロジ情報が広告されており、MPLS/Segment Routing(SR)やOpenflow(登録商標)のようにフローやVirtual Private Network(VPN)単位に経路制御が可能なプロトコルによる転送が可能なものとする。
[手順]
 図3~図6を参照して、ネットワーク制御システム100の経路計算方法の手順について説明する。
 <全体フロー>
 図3は、ネットワーク制御システム100の経路計算方法の手順を示すフローチャートである。
 ステップS1で、利用者が端末20(図7参照)を用いて、VPN情報(NW設計情報)/経路情報を入力し、NW設計情報保持DB132にVPN情報(NW設計情報)/経路情報を格納する。また、既に装置に設定が行われている場合、経路制御部131を経由して装置から取得する。
 VPN情報(NW設計情報)は、VPNの入出力点、遅延品質要件(遅延量やジッタ等)、必要帯域の情報を有する。NW設計情報は、収容されているフローやVPN毎に入力される。
 経路情報は、現在の設定状態に合わせて入力するか、装置に設定されているパス情報やフロー情報から収集する。また、経路が未設定のNWについては、経路情報を省略してもよい。
 ステップS2でNW状態測定部111は、NW状態を測定する。具体的には、NW状態測定部111は、通信ネットワークからトポロジ、リンク毎の遅延量とジッタ、リンク使用率の情報を収集することでNW状態を測定し、NW状態保持DB112に格納する。
 トポロジは、ルーティングプロトコルの経路情報(OSPF-LS/BGP-LS等)によって取得する。遅延量は、ノード間のpingによる測定や遅延測定用のパケットを測定対象ネットワーク(通信ネットワーク)10内に送信し、そのRound Trip Time(RTT)から算出する。ジッタは、複数回測定した遅延量から求める。
 リンク利用率は、各リンクの物理帯域に対する現在のトラフィック量、もしくはNW設計情報として入力された必要帯域の比率から算出する。例えば、あるリンクの物理帯域が10G、トラフィック量が1Gの場合、そのリンクの利用率は1G/10G×100%=10%となる。
 ステップS3で経路計算部121は、最適化の実行条件を満たしたか否かを判別する。最適化の実行条件を満たしていない場合(ステップS3:No)、ステップS2に戻ってNW状態測定を続ける。
 最適化の実行条件を満たした場合(ステップS3:Yes)、ステップS4で経路計算部121は、最適経路を計算する。具体的には、経路計算部121は、一定時間経過毎か最適化計算の実行条件を満たしたときにNW状態保持DB112とNW設計情報保持DB132の情報を基に各NWの最適経路を計算する。最適化計算の実行条件は、測定したNW状態の値が所定の閾値を超過した場合や品質要件を満たしていないNWが一定数を超えた場合がある。
 最適経路計算の具体例については、図4~図6のサブルーチンを用いた最適化計算例1~3により後記する。
 ステップS5で経路制御装置130(図1参照)は、経路に変更があるか否かを判別する。経路に変更がある場合(ステップS5:Yes)、ステップS6で経路制御装置130は、NWへ反映してステップS7に進む。経路に変更がない場合(ステップS5:No)、そのままステップS7に進む。
 ステップS7で経路制御装置130は、制御を終了するか否かを判別する。制御を終了しない場合(ステップS7:No)、ステップS2に戻ってNW状態測定以下の処理を続ける。
 経路制御装置130が制御を終了する場合(ステップS7:Yes)、本フローの処理を終了する。
 <最適化計算例1>
 最適化計算例1は、NW内の最大リンク利用率を最小化する場合の例である。
 最大リンク利用率とは、NW内の全リンクの利用率のうち最大のものを指す。例えば、NW内にリンクが3本ありそれぞれの利用率が30%、50%、10%だった場合、最大リンク利用率は50%となる。
 図4は、NW内の最大リンク利用率を最小化する場合の最適経路計算を示すフローチャートである。図4は、図3のステップS4のサブルーチンコールにより呼び出され実行される。
 ステップS11で経路計算部121は、VPNの割当順序を決定する。具体的には、経路計算部121は、割り当てを行うNWを遅延品質要件の高い順、すなわち許容できる遅延量やジッタが小さい順に割り当てを決定する順番として並び替えを行う。
 以下、決定した順番に品質要件を満たす各NWの経路候補を複数計算する。
 ステップS12で経路計算部121は、リンクの余り物理帯域が要求帯域以下のリンクがあるか否かを判別する。具体的には、経路計算部121は、各リンクの余り物理帯域がVPNの必要帯域を下回っている場合、そのリンクは経路計算から除外する。例えば、あるリンクの余り物理帯域が0.1G、あるVPNの必要帯域が0.2Gの場合、そのリンクを割り当てることができないためあらかじめ経路計算対象から除外する。
 リンクの余り物理帯域が要求帯域以下のリンクがある場合(ステップS12:Yes)、ステップS13で経路計算部121は、経路計算候補から該当リンクを除外する。リンクの余り物理帯域が要求帯域以下のリンクがない場合(ステップS12:No)、ステップS13をジャンプしてステップS14に進む。
 ステップS14で経路計算部121は、品質要件を満足する経路候補を計算する。具体的には、経路計算部121は、VPN情報(NW設計情報)の入出力点間で各リンクの遅延量やジッタをリンクコストとしてダイクストラ法(Dijkstra's algorithm)等を用いて経路を計算する。さらに、この経路計算では、リンクコスト合計が最小となる経路だけでなく、下記のように品質要件の値以下になる経路を複数計算する。
 ステップS15で経路計算部121は、経路候補の最大リンク利用率を計算する。
 最大リンク利用率の計算について述べる。
 上記ステップS15で計算した最適経路上の各リンクの割り当て済帯域にVPNの必要帯域を加えて、リンク利用率を計算する。例えば、あるリンクの物理帯域が10G、割り当て済帯域が2G、VPNの必要帯域が1Gのとき、割り当て済み帯域が2Gから3Gとなり、リンク利用率は20%から30%と計算される。このとき、経路候補が複数ある場合、すべての経路候補に対してリンク利用率を計算することで、それらのリンク利用率の中から最大リンク利用率を計算し、通信NW内の最大リンク使用率が最も小さくなるような経路候補を選定する。経路候補が1つしか存在しない場合はそれを選定する。
 このように、リンクコスト合計が最小となる経路だけでなく、品質要件の値以下になる経路を複数計算し、その中から選択することで、品質要件を満たしつつ最大リンク利用率の最小化を行うことが可能になる。リンクコストの合計が要求品質で与えられた遅延量やジッタ以下となる経路が存在しない場合は、合計値が最も小さい値となる経路を最適経路として選択するか、品質要件を満たす経路が存在しないとして与えられた要求品質が不適と判断してもよい。
 ステップS16で経路計算部121は、全経路候補の最大リンク利用率を計算したか否かを判別する。
 全経路候補の最大リンク利用率を計算した場合(ステップS16:Yes)、ステップS17に進み、全経路候補の最大リンク利用率を計算していない場合(ステップS16:No)、上記ステップS15に戻る。
 ステップS17で経路計算部121は、最大リンク利用率が一番小さい経路候補を選定する。
 ステップS18で経路計算部121は、リンクの余り物理帯域を更新する。
 ステップS19で経路計算部121は、全VPNの経路を選定したか否かを判別する。
 全VPNの経路を選定していない場合(ステップS19:No)、上記ステップS12に戻る。全VPNの経路を選定した場合(ステップS19:Yes)、本フローの最適経路計算処理を終了して図3のステップS5に戻る。
 上記、手順を全NWに対して行い経路情報を確定する。
 <最適化計算例2>
 最適化計算例2は、各NWの遅延量、ジッタの合計を最小にする場合の例である。
 図5は、各NWの遅延量、ジッタの合計を最小にする場合の最適経路計算を示すフローチャートである。図5は、図3のステップS4のサブルーチンコールにより呼び出され実行される。
 ステップS21で経路計算部121は、VPNの割当順序を決定する。具体的には、経路計算部121は、図4のステップS11と同様に、割り当てを行うNWを遅延品質要件の高い順、すなわち許容できる遅延量やジッタが小さい順に割り当てを決定する順番として並び替えを行う。
 ステップS22で経路計算部121は、リンクの余り物理帯域が要求帯域以下のリンクがあるか否かを判別する。具体的には、経路計算部121は、図4のステップS12と同様に、各リンクの余り物理帯域がVPNの必要帯域を下回っている場合、そのリンクは経路計算から除外する。
 リンクの余り物理帯域が要求帯域以下のリンクがある場合(ステップS22:Yes)、ステップS23で経路計算部121は、経路計算候補から該当リンクを除外する。リンクの余り物理帯域が要求帯域以下のリンクがない場合(ステップS22:No)、ステップS13をジャンプしてステップS24に進む。
 ステップS24で経路計算部121は、各NWの入出力点間で各リンクの遅延量やジッタをリンクコストとしてダイクストラ法等を用いてリンクコスト合計が最小となる経路を算出する。このとき、各リンクの割り当て可能帯域とVPNの必要帯域を比較し、割り当て可能帯域が不足している場合、そのリンクは経路計算対象から除外する。
 ステップS25で経路計算部121は、計算した最適経路上の各リンクの割り当て済帯域に必要帯域を加え(リンクの余り物理帯域更新)、経路情報を更新する。
 ステップS26で経路計算部121は、全VPNの経路を選定したか否かを判別する。
 全VPNの経路を選定していない場合(ステップS26:No)、上記ステップS22に戻る。全VPNの経路を選定した場合(ステップS26:Yes)、本フローの最適経路計算処理を終了して図3のステップS5に戻る。
 上記、手順を全NWに対して行い経路情報を確定する。
 <最適化計算例3>
 最適化計算例3は、経路変更規模を最小化する場合の例である。
 図6は、経路変更規模を最小化する場合の最適経路計算を示すフローチャートである。図6は、図3のステップS4のサブルーチンコールにより呼び出され実行される。
 ステップS31で経路計算部121は、各NWの現在の経路情報から品質要件を満たしているかを判定し、要件を満たしていないVPNのみを抽出する。
 ステップS32で経路計算部121は、VPNの割当順序を決定する。具体的には、経路計算部121は、割り当てを行うNWを遅延品質要件の高い順、すなわち許容できる遅延量やジッタが小さい順に割り当てを決定する順番として並び替えを行う。
 以下、決定した順番に品質要件を満たす各NWの経路候補を複数計算する。
 ステップS33で経路計算部121は、リンクの余り物理帯域が要求帯域以下のリンクがあるか否かを判別する。具体的には、経路計算部121は、各リンクの余り物理帯域がVPNの必要帯域を下回っている場合、そのリンクは経路計算から除外する。
 リンクの余り物理帯域が要求帯域以下のリンクがある場合(ステップS33:Yes)、ステップS34で経路計算部121は、経路計算候補から該当リンクを除外する。リンクの余り物理帯域が要求帯域以下のリンクがない場合(ステップS33:No)、ステップS34をジャンプしてステップS35に進む。
 ステップS35で経路計算部121は、品質要件を満足する経路候補を計算する。具体的には、経路計算部121は、VPN情報(NW設計情報)の入出力点(端点)間で各リンクの遅延量やジッタをリンクコストとしてダイクストラ法等を用いて経路を計算する。
 ステップS36で経路計算部121は、現在の経路と経路候補の変更規模を比較する。具体的には、経路計算部121は、計算された経路候補のうち、現在の経路情報との差分が最も少ないものを最適経路と選定し、必要帯域の割り当てと経路情報の更新を行う。例えば、現在の経路が#(以下、本明細書において「#」は、装置の識別番号を表記する。ここでは、#1と#5は、入出力点(端点)でもある。)#1-#2-#3-#4-#5、変更後の経路候補が#1-#6-#3-#4-#5と#1-#2-#7-#8-#5の2つあった場合、前者は1か所、後者は2か所変更される。このため、経路計算部121は、前者の方が変更規模が小さいと判定し、前者を新たな候補として選定する。
 ステップS37で経路計算部121は、全経路候補の最大リンク利用率を計算したか否かを判別する。
 全経路候補の最大リンク利用率を計算した場合(ステップS37:Yes)、ステップS38に進み、全経路候補の最大リンク利用率を計算していない場合(ステップS37:No)、上記ステップS36に戻る。
 ステップS38で経路計算部121は、リンクの余り物理帯域を更新する。
 ステップS39で経路計算部121は、全VPNの経路を選定したか否かを判別する。
 全VPNの経路を選定していない場合(ステップS39:No)、上記ステップS33に戻る。全VPNの経路を選定した場合(ステップS39:Yes)、本フローの最適経路計算処理を終了して図3のステップS5に戻る。
 上記、手順を全NWに対して行い経路情報を確定する。
[ネットワーク制御システム100の動作]
 図7~図11を参照して、ネットワーク制御システム100の動作について説明する。
 <初期状態>
 ネットワーク制御システム100は、初期状態では、VPN情報と経路情報の入力と、NW状態測定を行う。
 図7は、図1のネットワーク制御システム100の初期状態における動作を説明する図である。図8は、図7のNW状態保持DB112に格納されるVPN情報(NW設計情報)の入出力点(端点)(#1-#6)と、入出力点(端点)(#1-#6)間のリンクの遅延量やジッタ[sec]およびリンク使用率[%]と、を表わす図である。
・VPN情報(NW設計情報)入力
 VPN情報(NW設計情報)入力について説明する。
 ネットワーク制御システム100の経路制御装置130は、VPN情報(NW設計情報)を取得する。VPN情報の取得は、利用者によるVPN情報の入力と、既に装置に設定が行われている場合、経路制御部131を経由して装置から取得する場合とがある。利用者によるVPN情報の入力の場合を例に採る。
 図7の符号aに示すように、利用者が端末20を用いて、経路制御装置130にVPN情報61~63(VPN情報<1>~<3>)および経路情報60を入力し、NW設計情報保持DB132に格納する。
 VPN情報61~63(VPN情報<1>~<3>)は、収容されているフローやVPN毎に入力される、VPNの入出力点(端点)、遅延品質要件(遅延量やジッタ等)および必要帯域の情報である。
 VPN情報61(VPN情報<1>)は、図8に示す入出力点(端点)(#1-#6)における、端点:#1-#6間のリンクの遅延量やジッタ(以下、「遅延量やジッタ」を単に「遅延量」という)[sec]および必要帯域の情報[Gbps]と、その要求遅延品質(ここでは「高」)と、を含む。VPN61は、必要帯域の情報4[Gbps]であるとする。
 VPN情報62(VPN情報<2>)は、図8に示す入出力点(端点)(#1-#6)における、端点:#1-#6間のリンクの遅延量[sec]および必要帯域の情報[Gbps]と、その要求遅延品質(ここでは「低」)と、を含む。VPN62は、必要帯域の情報3[Gbps]であるとする。
 VPN情報63(VPN情報<3>)は、図8に示す入出力点(端点)(#2-#6)における、端点:#2-#6間のリンクの遅延量[sec]および必要帯域の情報[Gbps]と、その要求遅延品質(ここでは「低」)と、を含む。VPN63は、必要帯域の情報4[Gbps]であるとする。
 経路情報60は、VPN<1>~<3>毎の経路制御情報である。ここでは、経路情報60は、図8に示す入出力点(端点)(#1-#6)における、VPN<1>:#1-#4-#6、VPN<2>:#1-#4-#6、VPN<3>:#2-#5-#6、を有する。なお、VPN未割り当て状態の場合、経路情報60は必須ではない。
・NW状態測定
 NW状態測定について説明する。
 ネットワーク制御システム100のNW状態測定装置110は、NW状態(トポロジ、各リンクの遅延量、リンク使用率)を測定し、初期状態を把握する。
 リンク利用率は、各VPNに紐づく情報ではなくNW状態として管理される情報である。
 図7の符号bに示すように、NW状態測定部111は、測定対象ネットワーク10に通信路11を介して所定のフローブパケットを送受信してNW状態を測定し、トポロジ、各リンクの遅延量、リンク使用率からなるNW状態測定情報50をNW状態保持DB112に格納する。ここで、NW状態測定装置110は、図2に示す遅延測定システム200のNW状態測定を用いる。これにより、測定をマイクロ秒の精度、ミリ秒間隔で測定することができる。
 図8は、NW設計情報保持DB132に保持されたVPN情報(NW設計情報)の入出力点(端点)(#1-#6)間のリンクに、初期状態におけるNW状態測定(遅延量/ジッタ[sec]、リンク使用率[%])結果を反映したイメージ図である。さらに、図8の太実線c~eに示すように、入出力点(端点)(#1-#6)間のリンクに経路情報60(図7参照)にもとづくVPN<1>~<3>を重ね合わせて表記している。
 例えば、測定した端点:#1-#3間のリンクの遅延量は5μs[sec]/リンク使用率は0[%]である。また、端点:#3-#6間のリンクの遅延量3μs[sec]/リンク使用率は0[%]である。また、端点:#1-#4間のリンクの遅延量は2μs[sec]/リンク使用率は70[%]であり、端点:#4-#6間のリンクの遅延量は2μs[sec]/リンク使用率は70[%]である。以下同様に、測定した各端点#1-#6間のリンクの遅延量とリンク使用率とをNW状態保持DB112に保持する。
 いま、図7に示す経路情報60にもとづくVPN情報61~63(VPN情報<1>~<3>)についてのNW状態測定結果から、最大リンク使用率[%]を求める。
 例えば、#1-#4の最大リンク利用率[%]は、物理リンク帯域が10G、VPN<1><2>が通過していてそれぞれ要求帯域が4Gbps、3Gbpsである。このため、#1-#4の最大リンク利用率[%]は、(4+3)/10=0.7(70%)と計算される(図8の太実線c,d参照)。
 ここで、図7に示す経路情報60からわかるように、VPN<1>とVPN<2>とは、端点:#1-#4-#6を結ぶ経路情報である点で同じである。しかし、図7に示すVPN情報61(VPN情報<1>)とVPN情報62(VPN情報<2>)とを比較してわかるように、VPN<1>とVPN<2>とは、要求遅延品質が異なる(VPN情報<1>の要求遅延品質「高」であり、VPN情報<2>の要求遅延品質「低」である)。
 図8の説明に戻って、#2-#6の最大リンク利用率[%]は、同様にして、0.3(30%)と計算される(図8の太実線e参照)。
 図8における、リンク使用率のうち最大のリンク使用率である最大リンク使用率は、70[%]である。
 <経路計算>
 ネットワーク制御システム100は、経路計算では、NW状態、VPN情報、経路情報を入力として、経路計算装置120が各VPNの最適経路を算出する。
 図9は、図1のネットワーク制御システム100の経路計算における動作を説明する図である。図7と同一構成部分には同じ符号を付して重複箇所の説明を省略する。
 NW状態測定装置110は、NW状態保持DB112に保持されたNW状態を経路計算装置120の経路計算部121に出力する(図9の符号f参照)。
 経路制御装置130は、NW設計情報保持DB132に保持された経路情報60を経路計算部121に出力するとともに(図9の符号g参照)、NW設計情報保持DB132に保持されたVPN情報61~63(VPN情報<1>~<3>)を経路計算部121に出力する(図9の符号h参照)。
 経路計算装置120の経路計算部121は、NW状態保持DB112に保持されたNW状態と、NW設計情報保持DB132に保持された経路情報60およびVPN情報61~63とを入力として、経路計算部121がVPNの最適経路を算出する。算出したVPNの最適経路は、ここでは経路情報70であるとする。経路情報70は、NW設計情報保持DB132に保持された経路情報60の経路が最適化されている。すなわち、NW設計情報保持DB132に保持された経路情報60のうち、VPN<2>:#1-#4-#6を、VPN<2>:#1-#3-#6に変更したものが経路情報70として出力(利用者に提示)される(後記)。
 経路計算部121は、計算結果の最適度を評価するための「目的関数」(後記)と、経路計算結果が満たす必要がある「制約条件」とを用いて、VPNの最適経路(後記)を算出する。
 VPNの最適経路を算出、すなわちVPNの最適化例について説明する。
 VPN最適経路算出における「目的関数」は、最大リンク使用率の最小化、NW内リンク使用率の標準偏差の最小化、リンク毎割り当てVPN数の標準偏差の最小化、各VPNの遅延量・ジッタの合計の最小化、経路変更回数の最小化等がある。
 また、VPN最適経路算出における「制約条件」は、各VPNの経路が要求遅延品質を満たすこと、要求品質毎に割り当てるリンクを分離する等がある。
 <更新>
 図10は、図1のネットワーク制御システム100の更新における動作を説明する図である。図7および図9と同一構成部分には同じ符号を付して重複箇所の説明を省略する。
・VPN情報(NW設計情報)の反映
 ネットワーク制御システム100の経路制御装置130は、VPN情報(NW設計情報)を取得する。
 図10の符号jに示すように、利用者が端末20を用いて、経路制御装置130に経路情報70を入力し、NW設計情報保持DB132に格納する。経路情報70は、利用者が設定するVPN<1>~<3>毎の経路制御情報である。ここでは、経路情報70は、経路計算部121により算出されたVPNの最適経路であり、利用者が確認し設定する。経路情報70は、NW設計情報保持DB132に保持された経路情報60のうち、VPN<2>:#1-#4-#6が、VPN<2>:#1-#3-#6に変更されている。
 経路制御装置130の経路制御部131は、算出された最適経路候補を確認し、利用者の端末20から反映を指示された場合は、NW設計情報保持DB132の更新(図10の符号k参照)と、測定対象ネットワーク10への設定投入(図10の符号l参照)とを行う。
・NW状態測定
 NW状態測定装置110のNW状態測定部111は、経路制御後のNW状態(トポロジ、各リンクの遅延量、リンク使用率)を取得する。図10の符号mに示すように、NW状態測定部111は、測定対象ネットワーク10に通信路11を介して所定のフローブパケットを送受信してNW状態を測定する。NW状態測定部111は、取得した経路制御後のNW状態をもとに、初期状態を更新する。
 図11は、図10に示す経路情報70をもとに経路制御され、更新後にNW設計情報保持DB132に保持されたVPN情報(NW設計情報)の入出力点(端点)(#1-#6)間のリンクに、経路制御後のNW状態測定(遅延量/ジッタ[sec]、リンク使用率[%])結果を反映したイメージ図である。さらに、図8の太実線c~eに示すように、入出力点(端点)(#1-#6)間のリンクに経路情報60(図7参照)にもとづくVPN<1>~<3>を重ね合わせて表記している。図8と同一構成部分には同じ符号を付している。
 経路制御後に測定した端点:#1-#3間のリンクの遅延量は5μs[sec]/リンク使用率は30[%]である。また、端点:#3-#6間のリンクの遅延量3μs[sec]/リンク使用率は30[%]である。また、端点:#1-#4間のリンクの遅延量は2μs[sec]/リンク使用率は40[%]であり、端点:#4-#6間のリンクの遅延量は2μs[sec]/リンク使用率は40[%]である。
 いま、図10に示す経路情報70にもとづくVPN情報61~63(VPN情報<1>~<3>)についてのNW状態測定結果から、最大リンク使用率[%]を求める。
 VPN<1>は、端点:#1-#4-#6を結ぶ経路情報であり、経路制御後に測定した#1-#4間のリンクの遅延量とリンク使用率が2μs/40[%]、#4-#6間のリンクの遅延量とリンク使用率が2μs/40[%]である(図11の太実線d参照)。VPN<1>については、図8に示す初期状態の経路情報からの変更はない。
 これに対して、VPN<2>については、図10に示す経路情報70から分かるように、VPN<2>:#1-#4-#6(図11の破線c参照)が、VPN<2>:#1-#3-#6(図11の太実線p参照)に変更されている(図11の白抜き矢印o参照)。すなわち、図8に示す初期状態の経路情報では、端点:#1-#4-#6を結ぶ経路情報が2つ、VPN<1>とVPN<2>であったが、更新後には、VPN<2>:#1-#4-#6(図11の破線c参照)を、#4を経由しないルートであるVPN<2>:#1-#3-#6(図11の太実線p参照)に変更する。
 ここで、図10に示すVPN情報61,62からわかるように、VPN<1>とVPN<2>とは、端点:#1-#6を結ぶ経路情報である点では同じであるが、VPN<1>とVPN<2>とは、要求遅延品質が異なる(VPN情報<1>の要求遅延品質「高」、VPN情報<2>の要求遅延品質「低」)。このため、要求遅延品質「低」のVPN<2>:#1-#4-#6を、VPN<2>:#1-#3-#6に変更する。
 図10に示すVPN<2>は、端点:#1-#3-#6を結ぶ経路情報である(図11の太実線p参照)。
 図10に示すVPN<3>は、端点:#2-#5-#6を結ぶ経路情報である(図8の太実線e参照)。VPN<3>については、図8に示す初期状態の経路情報からの変更はない。
 図11における、リンク使用率のうち最大リンク使用率は、40[%]であり、図8における、最大リンク使用率70[%]を最大リンク使用率40[%]まで低減させることができる。
 このように、NW状態測定部111は、経路制御後のNW状態を取得し、初期状態を更新する。
 一連のNW状態測定から経路制御までを定期的に行うことで、NW状態に応じた最適な制御を実現する。
[ハードウェア構成]
 本実施形態に係る経路計算方法は、例えば図12に示すような構成の物理装置であるコンピュータ900によって実現される。
 図12は、本発明の実施形態に係る経路計算方法の処理を実現するコンピュータの一例を示すハードウェア構成図である。コンピュータ900は、CPU(Central Processing Unit)901、ROM(Read Only Memory)902、RAM903、HDD(Hard Disk Drive)904、入出力I/F(Interface)905、通信I/F906およびメディアI/F907を有する。
 CPU901は、ROM902またはHDD904に記憶されたプログラムに基づき作動し、図1に示すネットワーク制御システム100の各処理部による制御を行う。ROM902は、コンピュータ900の起動時にCPU901により実行されるブートプログラムや、コンピュータ900のハードウェアに係るプログラム等を記憶する。
 CPU901は、入出力I/F905を介して、マウスやキーボード等の入力装置910、および、ディスプレイ等の出力装置911を制御する。CPU901は、入出力I/F905を介して、入力装置910からデータを取得するともに、生成したデータを出力装置911へ出力する。なお、プロセッサとしてCPU901とともに、GPU(Graphics Processing Unit)等を用いてもよい。
 HDD904は、CPU901により実行されるプログラムおよび当該プログラムによって使用されるデータ等を記憶する。通信I/F906は、通信網(例えば、NW(Network)920)を介して他の装置からデータを受信してCPU901へ出力し、また、CPU901が生成したデータを、通信網を介して他の装置へ送信する。
 メディアI/F907は、記録媒体912に格納されたプログラムまたはデータを読み取り、RAM903を介してCPU901へ出力する。CPU901は、目的の処理に係るプログラムを、メディアI/F907を介して記録媒体912からRAM903上にロードし、ロードしたプログラムを実行する。記録媒体912は、DVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto Optical disk)等の光磁気記録媒体、磁気記録媒体、導体メモリテープ媒体又は半導体メモリ等である。
 例えば、コンピュータ900が本実施形態に係る一装置として構成されるネットワーク制御システム100として機能する場合、コンピュータ900のCPU901は、RAM903上にロードされたプログラムを実行することによりネットワーク制御システム100の機能を実現する。また、HDD904には、RAM903内のデータが記憶される。CPU901は、目的の処理に係るプログラムを記録媒体912から読み取って実行する。この他、CPU901は、他の装置から通信網(NW920)を介して目的の処理に係るプログラムを読み込んでもよい。
[効果]
 以下、本発明に係るネットワーク制御システム等の効果について説明する。
 本発明に係るネットワーク制御システム100は、ネットワーク(図1の測定対象ネットワーク10)に設定される経路を変更するネットワーク制御システムであって、NWトポロジ、各リンクの遅延量、トラフィック量、リンク帯域を測定し、NW状態情報としてNW状態保持部(図1のNW状態保持DB112)に保持させるNW状態測定部111(図1参照)と、端点、遅延量を含む品質要件(遅延品質要件)、必要帯域の情報を、各NWの設計情報として保持するNW設計情報保持部(図1のNW設計情報保持DB132)と、NW状態保持部に保持されたNW状態情報とNW設計情報保持部に保持されたNW設計情報をもとに、品質要件を制約条件として最適経路計算を行う経路計算部121(図1参照)と、経路計算部121が計算した経路に基づいて経路制御を行う経路制御部131(図1参照)と、を備える。
 このようにすることで、本発明は、従来のトラフィック量に加えてNW内の遅延測定情報と経路制御対象のフローやVPN等の要求品質情報を考慮して経路最適化を行うことで、NW状態に合わせた経路制御を実現することができ、要求品質とNWリソース利用効率の最適化の両立を図ることができる。
 本実施形態のネットワーク制御システム100は、NW内のリンク毎の遅延量とVPN毎の端点・要求品質を入力とし、VPN単位の遅延品質の要件を満たしつつ、NWリソースの利用効率を最適化する経路計算アルゴリズム(経路計算方法)、および計算結果に基づいて経路制御を行うものである。
 また、ネットワーク制御システム100において、NW状態測定部111は、プローブパケットの送受信時にハードウェアによるタイムスタンプ処理を行い、送受信時のタイムスタンプの差分から各リンクの遅延量を測定することを特徴とする。
 このようにすることで、NW内でのプローブパケットの折り返し処理やタイムスタンプ処理、装置間の時刻同期を不要とし、遅延・ジッタの高精度な測定をリアルタイムで実行することができる。
 また、ネットワーク制御システム100において、経路計算部121は、計算結果の最適度を評価するための目的関数を用い、当該目的関数を適用して経路計算を行うことを特徴とする。
 このようにすることによって、計算結果の最適度を評価するための目的関数(例えば、NW内の最大リンク使用率の最小化を目的関数)を用いることで、経路計算の計算時間を短縮することができ、品質要件を満たした状態で最適な経路制御が可能になる。
 また、ネットワーク制御システム100において、経路計算部121は、NW設計情報の端点間で各リンクの遅延量をリンクコストとして経路を計算し、リンクコストの合計が品質要件を満たす経路を計算することを特徴とする。
 このようにすることによって、リンクコストの合計が品質要件を満たす経路が選定されることで、品質要件を満たした状態での経路制御が可能になる。また、リンクコストの合計が品質要件を満たさない場合、そのリンクを経路計算から除外することができ、経路計算の計算時間を短縮することができる。
 また、ネットワーク制御システム100において、経路計算部121は、NW設計情報の端点間で各リンクの遅延量をリンクコストとして経路を計算し、リンクコストの合計が最小となる経路を計算することを特徴とする。
 このようにすることによって、リンクコストの合計が最小となる経路が選定されることで、品質要件を満たした状態で最適な経路制御が可能になる。
 また、ネットワーク制御システム100において、経路計算部121は、NWに対して品質要件を満たす経路候補を計算し、計算された経路候補のうち、現在の経路情報との差分が最も少ないものを最適経路と選定することを特徴とする。
 このようにすることによって、現在の経路情報との差分が最も少ないものが最適経路と選定されることで、最大リンク使用率を小さくしつつ、経路変更規模を小さくすることが可能になる。
[その他]
 上記実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上述文書中や図面中に示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
 また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
 また、上記の各構成、機能、処理部、処理手段等は、それらの一部または全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行するためのソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、または、IC(Integrated Circuit)カード、SD(Secure Digital)カード、光ディスク等の記録媒体に保持することができる。また、本明細書において、時系列的な処理を記述する処理ステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理(例えば、並列処理あるいはオブジェクトによる処理)をも含むものである。
 10 測定対象ネットワーク(ネットワーク)
 60,70 経路情報
 61~63 VPN情報(NW設計情報)
 100 ネットワーク制御システム
 110 NW状態測定装置
 111 NW状態測定部
 112 NW状態保持DB(NW状態保持部)
 120 経路計算装置
 121 経路計算部
 130 経路制御装置
 131 経路制御部
 132 NW設計情報保持DB(NW設計情報保持部)
 200 遅延測定システム

Claims (8)

  1.  ネットワーク(NW)に設定される経路を変更するネットワーク制御システムであって、
     NWトポロジ、各リンクの遅延量、トラフィック量、リンク帯域を測定し、NW状態情報としてNW状態保持部に保持させるNW状態測定部と、
     端点、遅延量を含む品質要件、必要帯域の情報を、各NWの設計情報として保持するNW設計情報保持部と、
     前記NW状態保持部に保持されたNW状態情報と前記NW設計情報保持部に保持されたNW設計情報をもとに、前記品質要件を制約条件として最適経路計算を行う経路計算部と、
     前記経路計算部が計算した経路に基づいて経路制御を行う経路制御部と、を備える
     ことを特徴とするネットワーク制御システム。
  2.  前記NW状態測定部は、プローブパケットの送受信時にハードウェアによるタイムスタンプ処理を行い、送受信時のタイムスタンプの差分から各リンクの遅延量を測定する
     ことを特徴とする請求項1に記載のネットワーク制御システム。
  3.  前記経路計算部は、計算結果の最適度を評価するための目的関数を用い、当該目的関数を適用して経路計算を行う
     ことを特徴とする請求項1に記載のネットワーク制御システム。
  4.  前記経路計算部は、前記NW設計情報の端点間で各リンクの遅延量をリンクコストとして経路を計算し、前記リンクコストの合計が前記品質要件を満たす経路を計算する
     ことを特徴とする請求項1に記載のネットワーク制御システム。
  5.  前記経路計算部は、前記NW設計情報の端点間で各リンクの遅延量をリンクコストとして経路を計算し、前記リンクコストの合計が最小となる経路を計算する
     ことを特徴とする請求項1に記載のネットワーク制御システム。
  6.  前記経路計算部は、NWに対して前記品質要件を満たす経路候補を計算し、計算された前記経路候補のうち、現在の経路情報との差分が最も少ないものを最適経路と選定する
     ことを特徴とする請求項1に記載のネットワーク制御システム。
  7.  ネットワーク(NW)に設定される経路を変更するネットワーク制御システムの経路計算方法であって、
     前記ネットワーク制御システムは、
     NWトポロジ、各リンクの遅延量、ジッタ、トラフィック量、リンク帯域を測定し、NW状態情報としてNW状態保持DBに保持するステップと、
     端点、遅延量を含む品質要件、必要帯域の情報を、各NWの設計情報としてNW設計情報保持DBに保持するステップと、
     前記NW状態保持DBに保持された前記NW状態情報と前記NW設計情報保持DBに保持された前記NWの設計情報をもとに、前記品質要件を制約条件として最適経路計算を行うステップと、
     計算した前記経路に基づいて経路制御を行うステップと、を実行する
     ことを特徴とする経路計算方法。
  8.  コンピュータに、請求項7に記載の経路計算方法を実行させるためのプログラム。
PCT/JP2020/032079 2020-08-25 2020-08-25 ネットワーク制御システム、経路計算方法およびプログラム WO2022044137A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US18/022,399 US20230353483A1 (en) 2020-08-25 2020-08-25 Network control system, path computation method and program
JP2022544949A JP7494919B2 (ja) 2020-08-25 ネットワーク制御システム、経路計算方法およびプログラム
PCT/JP2020/032079 WO2022044137A1 (ja) 2020-08-25 2020-08-25 ネットワーク制御システム、経路計算方法およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2020/032079 WO2022044137A1 (ja) 2020-08-25 2020-08-25 ネットワーク制御システム、経路計算方法およびプログラム

Publications (1)

Publication Number Publication Date
WO2022044137A1 true WO2022044137A1 (ja) 2022-03-03

Family

ID=80352837

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/032079 WO2022044137A1 (ja) 2020-08-25 2020-08-25 ネットワーク制御システム、経路計算方法およびプログラム

Country Status (2)

Country Link
US (1) US20230353483A1 (ja)
WO (1) WO2022044137A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023238245A1 (ja) * 2022-06-07 2023-12-14 日本電信電話株式会社 管理装置、管理方法及び管理プログラム

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013175913A (ja) * 2012-02-24 2013-09-05 Ntt Comware Corp 通信システム、経路決定装置、経路決定方法及び経路決定プログラム
JP2015022629A (ja) * 2013-07-22 2015-02-02 日本電信電話株式会社 統合制御装置および統合制御方法
JP2015154168A (ja) * 2014-02-13 2015-08-24 日本電信電話株式会社 経路制御システム、経路制御装置および経路制御方法
JP2016111648A (ja) * 2014-12-10 2016-06-20 富士通株式会社 通信制御プログラム、通信制御装置、通信システム、及び、通信制御方法
JP2017121057A (ja) * 2015-12-30 2017-07-06 華為技術有限公司Huawei Technologies Co.,Ltd. 遅延測定を実装するための方法、装置、およびシステム
JP2018098714A (ja) * 2016-12-15 2018-06-21 富士通株式会社 ネットワーク制御装置、ネットワーク制御方法、及びネットワーク制御プログラム

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013175913A (ja) * 2012-02-24 2013-09-05 Ntt Comware Corp 通信システム、経路決定装置、経路決定方法及び経路決定プログラム
JP2015022629A (ja) * 2013-07-22 2015-02-02 日本電信電話株式会社 統合制御装置および統合制御方法
JP2015154168A (ja) * 2014-02-13 2015-08-24 日本電信電話株式会社 経路制御システム、経路制御装置および経路制御方法
JP2016111648A (ja) * 2014-12-10 2016-06-20 富士通株式会社 通信制御プログラム、通信制御装置、通信システム、及び、通信制御方法
JP2017121057A (ja) * 2015-12-30 2017-07-06 華為技術有限公司Huawei Technologies Co.,Ltd. 遅延測定を実装するための方法、装置、およびシステム
JP2018098714A (ja) * 2016-12-15 2018-06-21 富士通株式会社 ネットワーク制御装置、ネットワーク制御方法、及びネットワーク制御プログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023238245A1 (ja) * 2022-06-07 2023-12-14 日本電信電話株式会社 管理装置、管理方法及び管理プログラム

Also Published As

Publication number Publication date
US20230353483A1 (en) 2023-11-02
JPWO2022044137A1 (ja) 2022-03-03

Similar Documents

Publication Publication Date Title
US8194546B2 (en) Traffic flow determination in communications networks
US9686189B2 (en) Routing data in a bi-directional communication session over an overlay network using relay nodes
EP1847080B1 (en) Method and apparatus for distributed admission control
CN105850082B (zh) 网络中分段源路由的方法及存储介质
EP3427448B1 (en) Pcep extension for pcecc support of distributed computing, multiple services, and inter-domain routing
US8004984B2 (en) Routing control technique in MPLS
JP5664645B2 (ja) 品質劣化箇所分析システム、品質劣化箇所分析装置、品質劣化箇所分析方法およびプログラム
KR101674177B1 (ko) 멀티노드간 이더넷 가상연결서비스를 제공하는 트랜스포트 sdn 컨트롤러 및 멀티노드간 이더넷 가상연결서비스 제공 방법
US11477100B2 (en) Residence time measurement for traffic engineered network
JP4377858B2 (ja) 階層分散型ルーティング方法とその管理装置
JP2010187039A (ja) ネットワーク管理端末、ネットワーク制御システム及びネットワーク管理方法
CN109672621B (zh) 一种为vpn业务选择传输路径的方法和设备
US11005777B2 (en) Software defined prober
WO2022044137A1 (ja) ネットワーク制御システム、経路計算方法およびプログラム
US20220141124A1 (en) Network controller device, network control system, control method for controlling communication network and program
US11706146B1 (en) Directing network traffic using local routing decisions with a global overview
JP7494919B2 (ja) ネットワーク制御システム、経路計算方法およびプログラム
JP2011244312A (ja) ノード装置、最適パス決定方法及びプログラム
Le et al. A reinforcement learning-based solution for intra-domain egress selection
Eadala et al. A review on deployment architectures of path computation element using software defined networking paradigm
Wette et al. On the quality of selfish virtual topology reconfiguration in IP-over-WDM networks
CN114157595A (zh) 一种通信系统、数据处理方法以及相关设备
US10771182B2 (en) Enhancing routing metrics
CN108390780B (zh) 用于处理信息的方法和装置
JP2022533224A (ja) ネットワーク制御方法、装置、およびシステム

Legal Events

Date Code Title Description
ENP Entry into the national phase

Ref document number: 2022544949

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: 20951391

Country of ref document: EP

Kind code of ref document: A1