WO2016119422A1 - 网络管理方法、设备及系统 - Google Patents

网络管理方法、设备及系统 Download PDF

Info

Publication number
WO2016119422A1
WO2016119422A1 PCT/CN2015/085589 CN2015085589W WO2016119422A1 WO 2016119422 A1 WO2016119422 A1 WO 2016119422A1 CN 2015085589 W CN2015085589 W CN 2015085589W WO 2016119422 A1 WO2016119422 A1 WO 2016119422A1
Authority
WO
WIPO (PCT)
Prior art keywords
bandwidth
data stream
data
lending
network management
Prior art date
Application number
PCT/CN2015/085589
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 华为技术有限公司
Publication of WO2016119422A1 publication Critical patent/WO2016119422A1/zh
Priority to US15/661,811 priority Critical patent/US10476746B2/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0896Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
    • 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/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5003Managing SLA; Interaction between SLA and QoS
    • H04L41/5019Ensuring fulfilment of SLA
    • H04L41/5025Ensuring fulfilment of SLA by proactively reacting to service quality change, e.g. by reconfiguration after service quality degradation or upgrade
    • 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/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5003Managing SLA; Interaction between SLA and QoS
    • H04L41/5019Ensuring fulfilment of SLA
    • 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
    • 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/0894Packet rate

Definitions

  • the present invention relates to the field of communications, and in particular, to a network management method, device, and system.
  • the QOS management system includes a controller, a main switch and multiple ingress switches.
  • the multiple ingress switches have multiple data. flow.
  • the controller first constructs a flow table including QOS information according to the QOS configuration information, constructs a bandwidth turnover information base (also referred to as a borrowed and borrowed bandwidth information base) of each data flow, and constructs a shared bandwidth relationship.
  • the controller sends the constructed flow table containing the QOS information to the switch corresponding to each data flow, and queries the bandwidth occupied by each data flow, according to the flow table of the no data flow and the bandwidth occupied by each data flow.
  • the master switch When the master switch receives the data stream forwarded by an ingress switch, the master switch queries the bandwidth of the data stream, and if the bandwidth of the data stream is greater than or equal to the bandwidth required by the data stream, the data stream is performed.
  • the master switch needs to detect whether the borrowed bandwidth unsuccessful flag is set on the data stream, and if the master switch detects that the borrowed bandwidth unsuccessful flag is set on the data stream, The master switch performs packet loss processing on the data stream; if the master switch detects that the borrowed bandwidth unsuccessful flag is not set on the data stream, the master switch generates a bandwidth request message according to the bandwidth required by the data stream, and The bandwidth request message is sent to the controller, and the controller allocates bandwidth for the data flow according to the bandwidth request message.
  • a bandwidth request message is sent to the controller through the master switch to trigger the controller to allocate bandwidth to the data stream. Since it takes a long time from the moment when it is determined that the bandwidth of the data stream is less than the bandwidth required by the data stream to the time when the controller allocates bandwidth for the data stream, the controller is less efficient in performing network management.
  • the present invention provides a network management method, device and system.
  • the technical solution is as follows:
  • a network management method for a controller in a network management system, the network management system including the controller and a plurality of switches, the plurality of switches including a master switch And a plurality of ingress switches, where the plurality of ingress switches have multiple data flows, and the network management method includes:
  • the network management method before the detecting the required bandwidth of the first data stream, the network management method further includes:
  • each bandwidth of each of the plurality of data streams and each of the plurality of data streams a flow table corresponding to the data stream, determining a available loanable bandwidth corresponding to each of the plurality of data streams;
  • the allocating bandwidth for the first data stream includes:
  • the allocating bandwidth to the first data stream according to the judgment result of the lending bandwidth includes:
  • the allocating bandwidth to the first data stream according to the judgment result of the lending bandwidth includes:
  • the allocating bandwidth to the first data stream according to the available loanable bandwidth determination result includes:
  • the allocating bandwidth to the first data stream according to the available loan bandwidth determination result includes:
  • a network management device where the network management device is a controller, and the network management device includes:
  • a detecting unit configured to detect a bandwidth required by the first data stream, where the first data stream is any one of the multiple data streams;
  • a determining unit configured to determine, when the required bandwidth of the first data stream becomes larger, whether a required bandwidth of the first data stream is greater than a preset bandwidth value
  • an allocating unit configured to allocate a bandwidth for the first data stream if a required bandwidth of the first data stream is greater than the preset bandwidth value.
  • the network management device further includes:
  • a first acquiring unit configured to acquire network service quality QOS configuration information in the network management system
  • a first generating unit configured to separately generate a shared bandwidth information tree according to the QOS configuration information, a bandwidth turnover information base, a flow table corresponding to each of the plurality of data streams, and a correspondence between each of the plurality of data streams and the ingress switch, wherein the shared bandwidth information tree records the a bandwidth corresponding to each data stream in the plurality of data streams, wherein the bandwidth turnover information database records an identifier of a lending bandwidth and a lending data stream corresponding to each of the plurality of data streams, and the plurality of The identifier of the borrowed bandwidth and the borrowed data stream corresponding to each data stream in the data stream, where the flow table is used to indicate the maximum bandwidth occupied by each of the multiple data streams;
  • a second acquiring unit configured to acquire a bandwidth occupied by each of the plurality of data streams
  • a determining unit configured to determine, according to a bandwidth occupied by each of the plurality of data streams and a flow table corresponding to each of the plurality of data streams, to determine each of the plurality of data streams Available for lending bandwidth;
  • a second generating unit configured to generate a loanable bandwidth information base according to the available loanable bandwidth corresponding to each of the plurality of data streams, where the available loanable bandwidth information record is recorded The available bandwidth for each data stream in multiple data streams.
  • the allocating unit includes:
  • An obtaining module configured to acquire, in the bandwidth turnover information database, a lending bandwidth corresponding to the first data stream
  • a determining module configured to determine, according to the lending bandwidth corresponding to the first data stream, whether the first data stream has a lending bandwidth
  • an allocating module configured to allocate bandwidth to the first data stream according to the judgment result of the lending bandwidth.
  • the allocating module includes:
  • a first obtaining submodule configured to acquire, in the bandwidth turnover information database, an identifier of the lending data stream corresponding to the first data stream, if the first data stream has a lending bandwidth
  • a second obtaining sub-module configured to acquire an identifier of an ingress switch corresponding to the lending data stream according to a correspondence between each of the plurality of data flows and the ingress switch;
  • Generating a sub-module configured to generate a first packet loss message according to the borrowed bandwidth corresponding to the first data stream
  • a sending submodule configured to send, according to the identifier of the ingress switch corresponding to the lending data stream, the first packet loss message to an ingress switch corresponding to the lending data stream, so as to correspond to the lending data stream
  • the ingress switch performs packet loss according to the first packet loss message
  • a first allocation submodule configured to allocate the lending bandwidth to the first data stream.
  • the allocating module includes:
  • a third obtaining submodule configured to obtain, in the loanable bandwidth information database, a borrowing corresponding to each of the plurality of data streams if the first data stream has no borrowed bandwidth Outgoing bandwidth
  • a judging sub-module configured to determine, according to the available lending bandwidth corresponding to the other data streams except the first data stream, whether the other data streams have a loanable bandwidth
  • a second allocation submodule configured to allocate a bandwidth to the first data stream according to the available lending bandwidth determination result.
  • the second allocation submodule is specifically configured to:
  • the corresponding bandwidth may be selected according to the required bandwidth of the first data stream and the available loanable bandwidth of the other data stream.
  • the second allocation submodule is specifically configured to:
  • a network management system comprising:
  • a network management device as described above.
  • the present invention provides a network management method, device, and system.
  • the controller detects the required bandwidth of the first data stream, and determines whether the required bandwidth of the first data stream is greater than a preset bandwidth value, when the first data stream is used. When the required bandwidth is greater than the preset bandwidth value, bandwidth is allocated for the first data stream.
  • the controller can directly detect the required bandwidth of the first data stream and allocate bandwidth to the first data stream according to the detection result, and the primary switch does not need to generate a bandwidth request message to trigger the controller to allocate bandwidth to the first data stream. The time for the controller to perform network management is shortened, and the efficiency of the controller in network management is improved.
  • FIG. 1 is a schematic structural diagram of a network management system according to an embodiment of the present invention.
  • FIG. 2 is a flowchart of a method for a network management method according to an embodiment of the present invention
  • FIG. 3 is a flowchart of a method for another network management method according to an embodiment of the present invention.
  • FIG. 4 is a flowchart of a method for allocating bandwidth according to an embodiment of the present invention.
  • FIG. 5 is a flowchart of a method for allocating a borrowed bandwidth according to an embodiment of the present invention
  • FIG. 6 is a flowchart of a method for allocating a lending bandwidth according to an embodiment of the present invention.
  • FIG. 7 is a flowchart of a method for allocating a bandwidth of a third ingress switch according to an embodiment of the present invention.
  • FIG. 8 is a schematic structural diagram of a network management device according to an embodiment of the present invention.
  • FIG. 9 is a schematic structural diagram of another network management device according to an embodiment of the present disclosure.
  • FIG. 10 is a schematic structural diagram of a distribution unit according to an embodiment of the present invention.
  • FIG. 11 is a schematic structural diagram of a distribution module according to an embodiment of the present invention.
  • FIG. 12 is a schematic structural diagram of another distribution module according to an embodiment of the present invention.
  • FIG. 13 is a schematic structural diagram of a network management system according to an embodiment of the present invention.
  • FIG. 14 is a schematic structural diagram of still another network management device according to an embodiment of the present disclosure.
  • FIG. 15 is a schematic structural diagram of still another network management device according to an embodiment of the present invention.
  • FIG. 16 is a schematic structural diagram of another network management system according to an embodiment of the present invention.
  • FIG. 1 is a network management system 00 according to an embodiment of the present invention.
  • the network management system 00 may include a controller A and multiple switches.
  • the plurality of switches may include: a main switch B4, an ingress switch B1, an ingress switch B2, and an ingress switch B3, and the plurality of clients may include: a client C1, a client C2, and a client C3.
  • the client C1 is connected to the ingress switch B1, the client C2 is connected to the ingress switch B2, and the client C3 is connected to the ingress switch B3, the ingress switch B1, the ingress switch B2 and the ingress switch B3 is connected to the main switch B4.
  • the controller A can communicate with the plurality of switches, each client can generate a data stream, and the data stream is forwarded to the master switch B4 by an ingress switch connected to the client, and the data is sent by the master switch B4.
  • the flow is processed accordingly, and multiple data flows can exist on the multiple ingress switches.
  • the network management system 00 includes one master switch and three ingress switches as an example. In actual applications, the number of the master switch and the ingress switch is not limited.
  • FIG. 2 is a network management method according to an embodiment of the present invention.
  • the network management method is used in the controller A in the network management system 00 in FIG. 1.
  • the network management system 00 may include a controller. A and a plurality of switches, the plurality of switches may include a main switch B4 and a plurality of ingress switches, and the plurality of ingress switches may have multiple data streams.
  • the network management method can include:
  • Step 201 Detect a bandwidth required by the first data stream, where the first data stream is any one of the multiple data streams.
  • Step 202 When the required bandwidth of the first data stream becomes larger, determine whether the required bandwidth of the first data stream is greater than a preset bandwidth value.
  • Step 203 If the required bandwidth of the first data stream is greater than a preset bandwidth value, allocate bandwidth for the first data stream.
  • the controller detects the required bandwidth of the first data stream, and determines whether the required bandwidth of the first data stream is greater than a preset bandwidth value. When the required bandwidth of the first data stream is greater than the preset bandwidth value, the bandwidth is allocated for the first data stream.
  • the controller can directly detect the required bandwidth of the first data stream and allocate bandwidth to the first data stream according to the detection result, and the primary switch does not need to generate a bandwidth request message to trigger the controller to allocate bandwidth to the first data stream. Shorten the time for the controller to perform network management and improve the controller's network management The efficiency of the time.
  • the network management method may further include: acquiring network service quality QOS configuration information in the network management system; generating a shared bandwidth information tree, a bandwidth turnover information database, and multiple data streams according to the QOS configuration information.
  • the flow table corresponding to each data stream and the corresponding relationship between each data stream and the ingress switch in the plurality of data streams, and the bandwidth corresponding to each data stream in the plurality of data streams is recorded in the shared bandwidth information tree, and the bandwidth turnover information base is Recording the lending bandwidth and the identifier of the lending data stream corresponding to each data stream in the plurality of data streams, and the borrowing bandwidth and the identifier of the borrowed data stream corresponding to each data stream in the plurality of data streams, the flow table is used to indicate The maximum bandwidth occupied by each data stream in multiple data streams;
  • step 203 can include:
  • the allocating bandwidth to the first data stream according to the judgment result of the lending bandwidth may include: if there is a lending bandwidth on the first data stream, acquiring the lending data corresponding to the first data stream in the bandwidth revolving information database. And determining, according to the corresponding relationship between each of the plurality of data streams and the ingress switch, the identifier of the ingress switch corresponding to the borrowed data stream; and generating the first packet loss message according to the borrowed bandwidth corresponding to the first data stream; The first packet loss message is sent to the ingress switch corresponding to the lending data stream according to the identifier of the ingress switch corresponding to the lending data stream, so that the ingress switch corresponding to the lending data stream performs packet loss according to the first packet loss message; The first data stream allocates a lending bandwidth.
  • allocating bandwidth to the first data stream according to the judgment result of the borrowed bandwidth may include: if there is no borrowed bandwidth on the first data stream, acquiring multiple data streams in the available loanable information database The available bandwidth for each data stream; according to the available lending bandwidth corresponding to the other data streams of the plurality of data streams, determining whether other data streams have available for lending bandwidth; The result of the lending bandwidth judgment is that the bandwidth is allocated for the first data stream.
  • allocating bandwidth to the first data stream according to the available bandwidth judgment result may include If there is a bandwidth available for lending on other data streams, the corresponding bandwidth available for the borrowed bandwidth greater than zero is selected in the other data streams according to the required bandwidth of the first data stream and the available lending bandwidth corresponding to the other data streams. As the second data stream; the first data stream is allocated a bandwidth corresponding to the second data stream.
  • allocating bandwidth to the first data stream according to the available bandwidth judgment result may include: if there is no available bandwidth on the other data stream, obtaining a priority of each data stream in the multiple data streams; The bandwidth corresponding to the other data flows is obtained in the shared bandwidth information tree; according to the priority of the first data flow, the priority of other data flows, the bandwidth corresponding to other data flows, and the required bandwidth of the data flow on the first ingress switch, in other
  • the data stream is selected as a third data stream with a priority of the data stream having a lower priority than the priority of the first data stream; and the third data stream is obtained according to the correspondence between each of the plurality of data streams and the ingress switch.
  • the identifier of the ingress switch is generated according to the bandwidth corresponding to the third data stream, and the second packet loss message is sent to the ingress switch corresponding to the third data stream according to the identifier of the ingress switch corresponding to the third data stream. So that the ingress switch corresponding to the third data stream performs packet loss according to the second packet loss message; and allocates a band corresponding to the third data stream for the first data stream. .
  • the controller detects the required bandwidth of the first data stream, and determines whether the required bandwidth of the first data stream is greater than a preset bandwidth value. When the required bandwidth of the first data stream is greater than the preset bandwidth value, the bandwidth is allocated for the first data stream.
  • the controller can directly detect the required bandwidth of the first data stream and allocate bandwidth to the first data stream according to the detection result, and the primary switch does not need to generate a bandwidth request message to trigger the controller to allocate bandwidth to the first data stream. The time for the controller to perform network management is shortened, and the efficiency of the controller in network management is improved.
  • an embodiment of the present invention provides another network management method, which may be used in the network management system 00 in FIG. 1.
  • the network management method may include:
  • Step 301 The controller detects a bandwidth required by the first data stream, where the first data stream is any one of the multiple data streams. Go to step 302.
  • the controller may generate the detection bandwidth information, and obtain the identifier of the ingress switch corresponding to the first data stream in the correspondence between each data stream and the ingress switch in the multiple data streams stored in the controller, according to The identifier of the ingress switch corresponding to the first data stream is sent to the ingress switch corresponding to the first data stream, and the ingress switch corresponding to the first data stream can generate the data stream after receiving the detection bandwidth information. Occupying the bandwidth message, and sending the data stream occupation bandwidth message and the identifier of the first data stream to the controller, it should be noted that the data stream occupation band The bandwidth required for the first data stream can be recorded in the wide message.
  • Step 302 When the required bandwidth of the first data stream becomes larger, the controller determines whether the required bandwidth of the first data stream is greater than a preset bandwidth value. If yes, go to step 303. If no, go to step 304.
  • the controller when the controller detects that the required bandwidth of the first data stream becomes larger, it is required to determine whether the required bandwidth of the first data stream detected in step 301 is greater than a preset bandwidth value.
  • the preset bandwidth value can be an idle bandwidth on the first data stream. It should be noted that the preset bandwidth value may also be other values, which is not limited in this embodiment of the present invention.
  • the controller may perform step 304, that is, generate an ingress switch corresponding to the first data stream to forward the first data stream. And indicating the working information, and sending the indication working information to the ingress switch corresponding to the first data stream, and the ingress switch corresponding to the first data stream performs forwarding of the first data stream according to the indication working information.
  • Step 303 The controller allocates bandwidth for the first data stream.
  • the controller may generate a shared bandwidth information tree, a bandwidth turnover information base, a loanable bandwidth information library, a flow table corresponding to each of the plurality of data streams, and each of the plurality of data streams.
  • the controller may be based on the shared bandwidth information tree, the bandwidth turnover information database, the flow table corresponding to each data flow in the multiple data streams, and the loanable information database for the first The data stream allocates bandwidth.
  • the controller generates a shared bandwidth information tree, a bandwidth turnover information database, a flow table corresponding to each data flow in the multiple data flows, and a corresponding relationship between each data flow and the ingress switch in the multiple data flows, where the controller may be: the controller may Obtaining QOS configuration information in the network management system, and generating a shared bandwidth information tree, a bandwidth turnover information database, a flow table corresponding to each data flow in the multiple data flows, and each data flow in the multiple data flows according to the QOS configuration information Correspondence with the ingress switch.
  • the QOS configuration information may include: an identifier of the primary switch and the multiple ingress switches, an identifier of each data flow, a bandwidth allocated by each data flow, and a lending and borrowing on each data flow in the multiple data flows.
  • Bandwidth information The controller may generate a shared bandwidth information tree and a flow table according to the identifier of each data stream in the plurality of data streams and the bandwidth allocated for each of the plurality of data streams.
  • the shared bandwidth information tree records the bandwidth corresponding to each data flow in the multiple data flows, and the flow table is used to indicate the maximum bandwidth occupied by each data flow in the multiple data flows.
  • the controller may further generate a bandwidth turnover information base according to the information of the borrowed and borrowed bandwidth on each of the plurality of data streams and the identifier of each of the plurality of data streams, where the bandwidth turnover information database records The lending bandwidth and the identifier of the lending data stream corresponding to each data stream in the plurality of data streams, and corresponding to each data stream in the plurality of data streams The identifier of the borrowed bandwidth and the borrowed data stream.
  • controller may further send a flow table corresponding to each data flow in the multiple data streams generated by the controller to a switch corresponding to each data flow of the multiple data flows, and the switch that receives the flow table may The data stream is forwarded when the required bandwidth of the data stream on the switch is less than or equal to the maximum bandwidth occupied by the data stream indicated by the flow table.
  • the process of the controller generating the loanable information base may be: the controller acquires the bandwidth occupied by each data flow in the multiple data flows, and according to the bandwidth occupied by each data flow in the multiple data flows and the multiple data flows.
  • a flow table corresponding to each data stream generates a library of available bandwidth information.
  • the method for the controller to obtain the bandwidth occupied by each of the plurality of data streams may refer to the method for the controller to detect the bandwidth required by the first data stream in step 301 of FIG. Narration.
  • the controller may use a maximum bandwidth occupied by each of the plurality of data streams indicated by the flow table corresponding to each of the plurality of data streams, and subtract the occupied by each of the plurality of data streams.
  • Bandwidth which is the available borrowing bandwidth corresponding to each data stream in multiple data streams.
  • the data flow is used.
  • the occupied maximum bandwidth of 20M minus the occupied bandwidth of the data stream is 10M, and the available bandwidth for the data stream is 10M.
  • step 303 can include:
  • Step 3031 The controller acquires a lending bandwidth corresponding to the first data stream in the bandwidth turnover information base. Go to step 3032.
  • the controller may obtain the lending bandwidth corresponding to the first data stream in the bandwidth rotation information base established in step 302 according to the identifier of the first data stream.
  • Step 3032 The controller determines, according to the lending bandwidth of the first data stream, whether there is a lending bandwidth on the first data stream. If yes, go to step 3033. If no, go to step 3034.
  • the controller may determine whether the first data stream has a lending bandwidth according to whether the lending bandwidth corresponding to the first data stream obtained in step 3031 is greater than zero. If the lending bandwidth corresponding to the first data stream is greater than zero, determining that the first data stream has a lending bandwidth, performing step 3033; if the lending bandwidth corresponding to the first data stream is not greater than zero, determining the If no bandwidth is borrowed on a data stream, step 3034 is performed.
  • Step 3033 The controller allocates a lending bandwidth corresponding to the first data stream to the first data stream.
  • step 3033 can include:
  • Step 30331 The controller generates a first packet loss message according to the borrowed bandwidth corresponding to the first data stream.
  • the first packet loss information may include a packet loss instruction and a lending bandwidth corresponding to the first data stream, where the packet loss instruction is used to instruct the ingress switch to perform packet loss according to the first packet loss message.
  • Step 30332 The controller acquires, in the bandwidth turnover information database, an identifier of the loan data stream corresponding to the first data stream.
  • the controller may query the identifier of the lending data stream corresponding to the first data stream in the bandwidth revolving information database. It should be noted that the lending data stream corresponding to the first data stream may be one or more, so The identifier of the lending data stream corresponding to the first data stream may be one or more.
  • step 30333 the controller obtains the identifier of the ingress switch corresponding to the lending data stream in the corresponding relationship between each data stream and the ingress switch in the multiple data streams according to the identifier of the lending data stream.
  • Step 30334 The controller sends the first packet loss message to the identifier of the lending data stream according to the identifier of the lending data stream.
  • the controller may send the first packet loss message generated in step 30331 to the ingress switch corresponding to the lending data stream according to the identifier of the ingress switch corresponding to the lending data stream obtained in step 30333.
  • Step 30335 The ingress switch corresponding to the lending data stream performs packet loss according to the first packet loss message.
  • the ingress switch B2 may drop the 10M data stream on the ingress switch B2 according to the first packet loss message.
  • Step 30336 The controller allocates a lending bandwidth corresponding to the first data stream to the first data stream.
  • the controller may allocate the first data to the first data stream.
  • the controller may further update the shared bandwidth information tree, the bandwidth turnover information base, and the loanable bandwidth information library in the controller.
  • the controller may detect whether the maximum bandwidth occupied by the first data stream after the allocated bandwidth is less than the first number According to the required bandwidth of the flow, if the maximum bandwidth occupied by the first data stream after the bandwidth is allocated is smaller than the required bandwidth of the first data stream, step 3034 is performed, and the multiple data streams are allocated for the first data stream.
  • the other data streams outside the first data stream correspond to the available lending bandwidth.
  • Step 3034 The controller obtains, in the loanable bandwidth information database, a loanable bandwidth corresponding to each of the plurality of data streams. Go to step 3035.
  • the controller may obtain a loanable bandwidth corresponding to each of the plurality of data streams in the generated loanable loan information database.
  • Step 3035 The controller determines, according to the available lending bandwidth corresponding to the other data streams except the first data stream, whether the available data stream has a loanable bandwidth. If yes, go to step 3036. If no, go to step 3037.
  • the controller can obtain the available lending bandwidth corresponding to the other data streams according to the available lending bandwidth of the other data streams, and determine whether the available lending bandwidth of the other data streams is greater than zero, and if greater than zero, the other There is a bandwidth available for lending on the data stream. If it is not greater than zero, there is no bandwidth available for lending on other data streams.
  • Step 3036 The controller allocates a loanable bandwidth for the first data stream.
  • step 3036 can include:
  • Step 30361 The controller selects, according to the required bandwidth of the first data stream and the available loanable bandwidth of the other data streams, a corresponding data stream with a loanable bandwidth greater than zero as the second data stream.
  • the required bandwidth of the first data stream is 30 M
  • a bandwidth of 30 M needs to be allocated for the first data stream.
  • the data streams of the plurality of data streams other than the first data stream that are available for the non-zeroed bandwidth are data stream 1, data stream 2, and data stream 3.
  • the corresponding available ones are selected in the data stream 1, the data stream 2, and the data stream 3.
  • a data stream with a sum of the borrowed bandwidths greater than or equal to a bandwidth required by the first data stream is used as the second data stream; if the sum of the available borrowable bandwidths corresponding to the data stream 1, the data stream 2, and the data stream 3 is equal to or smaller than the Selecting a difference between a required bandwidth of the first data stream and a loanable bandwidth corresponding to the first data stream, and selecting a corresponding available bandwidth of the data stream other than the first data stream in the multiple data streams All data streams of zero are used as the second data stream, that is, data stream 1, data stream 2, and data stream 3 are selected as the second data stream.
  • Step 30362 The controller allocates, for the first data stream, a available lending bandwidth corresponding to the second data stream.
  • the controller may be the first data stream according to the available lending bandwidth corresponding to the second data stream. Allocating a available lending bandwidth corresponding to the second data stream, updating the flow table corresponding to the first data stream and the second data stream, and updating the updated flow table corresponding to the first data stream and the second data stream And the ingress switch corresponding to the first data stream and the ingress switch corresponding to the second data stream.
  • the controller may further update the shared bandwidth information tree, the bandwidth turnover information base, and the loanable bandwidth information library in the controller.
  • the controller may detect whether the maximum bandwidth occupied by the first data stream after the allocated bandwidth is smaller than required by the first data stream.
  • the bandwidth if the maximum bandwidth occupied by the first data stream after the bandwidth is allocated is smaller than the bandwidth required by the first data stream, step 3037 is performed, and the priority of the multiple data streams allocated to the first data stream is lower than the priority.
  • Step 3037 The controller allocates a bandwidth of the third data stream to the first data stream, where the priority of the third data stream is lower than the priority of the first data stream.
  • step 3037 can include:
  • Step 30371 The controller acquires a priority of each of the plurality of data streams.
  • the flow table corresponding to each of the multiple data streams generated by the controller may further include: priority information corresponding to each data flow in the multiple data flows, and the controller may The priority information corresponding to each of the plurality of data streams is obtained from the flow table corresponding to each of the plurality of data streams, and the priority information of each of the plurality of data streams may include the multiple The priority of each stream in the stream.
  • Step 30372 The controller acquires, in the shared bandwidth information tree, a bandwidth corresponding to each of the plurality of data streams except the first data stream.
  • the controller may obtain, from the bandwidth sharing information tree, the plurality of data streams except the first data stream.
  • the bandwidth corresponding to each data stream in other data streams may be obtained from the bandwidth sharing information tree.
  • Step 30373 The controller according to the priority of each data stream in the other data stream, the priority of the first data stream, the bandwidth corresponding to each data stream in the other data streams, and the bandwidth required by the first data stream, in other data streams.
  • a data stream in which the priority of the data stream is lower than the priority of the first data stream is selected as the third data stream.
  • the required bandwidth of the first data stream is 30 M
  • a bandwidth of 30 M needs to be allocated for the first data stream.
  • the data streams of the plurality of data streams other than the first data stream having a lower priority than the priority of the first data stream are the data stream 1, the data stream 2, and the data stream 3.
  • the sum of the bandwidths corresponding to the data stream 1, the data stream 2, and the data stream 3 is greater than the bandwidth required by the first data stream, the sum of the corresponding bandwidths selected in the data stream 1, the data stream 2, and the data stream 3 is greater than or equal to The data stream of the bandwidth required by the first data stream is used as the third data stream; if the sum of the bandwidths corresponding to the data stream 1, the data stream 2, and the data stream 3 is equal to or smaller than the required bandwidth of the first data stream, the selection is more All data streams in the data stream except the first data stream are selected as the third data stream, that is, the data stream 1, the data stream 2, and the data stream 3 are selected as the third data stream.
  • Step 30374 The controller generates second packet loss information according to the bandwidth corresponding to the third data stream.
  • the second packet loss information may include a packet loss instruction and a bandwidth corresponding to the third data stream, where the packet loss instruction is used to instruct the ingress switch to perform packet loss according to the second packet loss message.
  • step 30375 the controller obtains the identifier of the ingress switch corresponding to the third data stream in the corresponding relationship between each data stream and the ingress switch in the multiple data streams.
  • Step 30376 The controller sends a second packet loss message to the ingress switch corresponding to the third data stream according to the identifier of the ingress switch corresponding to the third data stream.
  • the controller may send the second packet loss message generated in step 30374 to the ingress switch corresponding to the third data stream.
  • Step 30377 The ingress switch corresponding to the third data stream performs packet loss according to the second packet loss message.
  • the ingress switch corresponding to the third data stream is the ingress switch B3
  • the bandwidth corresponding to the third data stream is 10 M. Therefore, after the ingress switch B3 receives the second packet loss message, the ingress switch B3
  • the data stream on 10M on the ingress switch B3 may be packetized according to the second packet loss message, so that the bandwidth of 10M on the data stream on the ingress switch B3 is in an idle state.
  • Step 30378 The controller allocates a bandwidth corresponding to the third data stream to the first data stream.
  • the controller may allocate a bandwidth corresponding to the third data stream to the first data stream according to the bandwidth corresponding to the third data stream, update the flow table corresponding to the first data stream and the third data stream, and update the flow table.
  • the first data stream and the flow table corresponding to the third data stream are sent to the first data stream and the ingress switch corresponding to the third data stream.
  • the controller may further update the shared bandwidth information tree, the bandwidth turnover information base, and the loanable bandwidth information library in the controller.
  • the controller may detect whether the maximum bandwidth occupied by the first data stream after the allocated bandwidth is smaller than the required bandwidth of the first data stream. If the maximum bandwidth occupied by the first data stream after the bandwidth is allocated is smaller than the bandwidth required by the first data stream, the first data stream is lost.
  • the ingress switch corresponding to the first data stream forwards the first data stream to the master switch, and the master switch determines that the first data stream is left over. Whether the remaining bandwidth is smaller than the required bandwidth of the first data stream, and when it is determined that the remaining bandwidth on the first data stream is smaller than the required bandwidth of the first data stream, the first data stream is lost.
  • the ingress switch corresponding to the first data stream forwards the first data stream to the master switch, and occupies network resources.
  • the controller directly determines, and performs corresponding processing according to the judgment result, where the first data stream corresponds.
  • the ingress switch does not need to forward the first data stream, thus saving network resources.
  • Step 304 The controller generates an indication work information. Go to step 305.
  • the controller may generate a forwarding message, where the forwarding message is used to instruct the switch to forward the first data stream.
  • Step 305 The controller acquires an identifier of the ingress switch corresponding to the first data stream in a corresponding relationship between each data stream and the ingress switch in the multiple data streams. Go to step 306.
  • Step 306 The controller sends the indication working information to the ingress switch corresponding to the first data stream according to the identifier of the ingress switch corresponding to the first data stream. Go to step 307.
  • the controller may send the indication work information to the ingress switch corresponding to the first data stream according to the identifier of the first data stream.
  • Step 307 The ingress switch corresponding to the first data stream forwards the first data stream according to the indication working information.
  • the ingress switch corresponding to the first data stream may forward the first data stream to the master switch, and the master switch performs corresponding processing on the first data stream according to the information in the first data stream.
  • the controller detects the required bandwidth of the first data stream, and determines whether the required bandwidth of the first data stream is greater than a preset bandwidth value. When the required bandwidth of the first data stream is greater than the preset bandwidth value, the bandwidth is allocated for the first data stream.
  • the controller can directly detect the required bandwidth of the first data stream and allocate bandwidth to the first data stream according to the detection result, and the primary switch does not need to generate a bandwidth request message to trigger the controller to allocate bandwidth to the first data stream. The time for the controller to perform network management is shortened, and the efficiency of the controller in network management is improved.
  • the embodiment of the present invention provides a network management device 80, which may be a controller, and the network management device 80 may include:
  • the detecting unit 801 is configured to detect a bandwidth required by the first data stream, where the first data stream is any one of the multiple data streams.
  • the determining unit 802 is configured to determine, when the required bandwidth of the first data stream is increased, whether the required bandwidth of the first data stream is greater than a preset bandwidth value.
  • the allocating unit 803 is configured to allocate a bandwidth for the first data stream if the required bandwidth of the first data stream is greater than a preset bandwidth value.
  • the detecting unit detects the required bandwidth of the first data stream, and the determining unit determines whether the required bandwidth of the first data stream is greater than a preset bandwidth value. And when the required bandwidth of the first data stream is greater than a preset bandwidth value, the allocation unit allocates bandwidth for the first data stream.
  • the controller can directly detect the required bandwidth of the first data stream and allocate bandwidth to the first data stream according to the detection result, and the primary switch does not need to generate a bandwidth request message to trigger the controller to allocate bandwidth to the first data stream. The time for the controller to perform network management is shortened, and the efficiency of the controller in network management is improved.
  • the embodiment of the present invention provides another network management device 80, which may be a controller, and the network management device 80 may include:
  • the detecting unit 801 is configured to detect a bandwidth required by the first data stream, where the first data stream is any one of the multiple data streams.
  • the determining unit 802 is configured to determine, when the required bandwidth of the first data stream is increased, whether the required bandwidth of the first data stream is greater than a preset bandwidth value.
  • the allocating unit 803 is configured to allocate a bandwidth for the first data stream if the required bandwidth of the first data stream is greater than a preset bandwidth value.
  • the first obtaining unit 804 is configured to obtain network service quality QOS configuration information in the network management system.
  • the first generating unit 805 is configured to separately generate a shared bandwidth information tree, a bandwidth turnover information base, a flow table corresponding to each data flow in the multiple data streams, and each data flow and the ingress switch in the multiple data flows according to the QOS configuration information.
  • the shared bandwidth information tree records the bandwidth corresponding to each data stream in the multiple data streams
  • the bandwidth turnover information database records the borrowing corresponding to each data stream in the multiple data streams.
  • the identifier of the outgoing bandwidth and the borrowed data stream, and the identifier of the borrowed bandwidth and the borrowed data stream corresponding to each of the plurality of data streams, the flow table is used to indicate the maximum bandwidth occupied by each of the plurality of data streams.
  • the second obtaining unit 806 is configured to acquire a bandwidth occupied by each data flow in the multiple data streams.
  • a determining unit 807 configured to determine, according to a bandwidth occupied by each data stream in the multiple data streams and a flow table corresponding to each data flow in the multiple data streams, that the data stream corresponding to each of the multiple data streams is available for lending bandwidth.
  • the second generating unit 808 is configured to generate a loanable bandwidth information base according to the available lending bandwidth corresponding to each data flow in the plurality of data streams, where the plurality of data streams are recorded in the borrowed bandwidth information database. Each data stream corresponds to a loanable bandwidth.
  • the detecting unit detects the required bandwidth of the first data stream, and the determining unit determines whether the required bandwidth of the first data stream is greater than a preset bandwidth value. And when the required bandwidth of the first data stream is greater than a preset bandwidth value, the allocation unit allocates bandwidth for the first data stream.
  • the controller can directly detect the required bandwidth of the first data stream and allocate bandwidth to the first data stream according to the detection result, and the primary switch does not need to generate a bandwidth request message to trigger the controller to allocate bandwidth to the first data stream. The time for the controller to perform network management is shortened, and the efficiency of the controller in network management is improved.
  • the allocating unit 803 can include:
  • the obtaining module 8031 is configured to obtain a lending bandwidth corresponding to the first data stream in the bandwidth turnover information base.
  • the determining module 8032 is configured to determine, according to the lending bandwidth corresponding to the first data stream, whether the first data stream has a lending bandwidth.
  • the allocating module 8033 is configured to allocate a bandwidth to the first data stream according to the judgment result of the borrowed bandwidth.
  • the allocation module 8033 can include:
  • the first obtaining sub-module 80331 is configured to obtain, when the first data stream has a lending bandwidth, the identifier of the lending data stream corresponding to the first data stream in the bandwidth revolving information database.
  • the second obtaining sub-module 80332 is configured to obtain, according to the correspondence between each data stream and the ingress switch in the multiple data streams, the identifier of the ingress switch corresponding to the borrowed data stream;
  • the generating submodule 80333 is configured to generate a first packet loss message according to the borrowed bandwidth corresponding to the first data stream.
  • the sending sub-module 80334 is configured to send the first packet loss message to the ingress switch corresponding to the lending data stream according to the identifier of the ingress switch corresponding to the lending data stream, so as to facilitate the lending of the data stream.
  • the port switch performs packet loss according to the first packet loss message.
  • the first allocation submodule 80335 is configured to allocate a lending bandwidth for the first data stream.
  • the distribution module 8033 may include:
  • the third obtaining sub-module 80336 is configured to obtain, when the first data stream does not have a lending bandwidth, obtain a loanable bandwidth corresponding to each of the plurality of data streams in the available lending bandwidth information database.
  • the determining sub-module 80337 is configured to determine, according to the available lending bandwidth corresponding to the other data streams of the plurality of data streams, whether the other data streams have a loanable bandwidth.
  • the second allocation sub-module 80338 is configured to allocate a bandwidth for the first data stream according to the available bandwidth judgment result.
  • the second allocation sub-module 80338 is specifically configured to: if there is a bandwidth available for lending on other data streams, according to the required bandwidth of the first data stream and the available lending bandwidth corresponding to the other data streams, in other data streams.
  • the data stream corresponding to the borrowed bandwidth greater than zero is selected as the second data stream, and the bandwidth corresponding to the second data stream is allocated to the first data stream.
  • the second allocation sub-module 80338 is specifically configured to acquire the priority of each data stream in the multiple data streams if there is no available bandwidth on the other data streams; and obtain other data in the shared bandwidth information tree.
  • the bandwidth corresponding to the stream; according to the priority of the first data stream, the priority of other data streams, the bandwidth corresponding to other data streams, and the bandwidth required by the data stream on the first ingress switch, the priority of the data stream is selected in other data streams. a data stream having a lower priority than the first data stream as the third data stream;
  • the detecting unit detects the required bandwidth of the first data stream, and the determining unit determines whether the required bandwidth of the first data stream is greater than a preset bandwidth value. And when the required bandwidth of the first data stream is greater than a preset bandwidth value, the allocation unit allocates bandwidth for the first data stream.
  • the controller can directly detect the required bandwidth of the first data stream and allocate bandwidth to the first data stream according to the detection result, and the primary switch does not need to generate a bandwidth request message to trigger the controller to allocate bandwidth to the first data stream. The time for the controller to perform network management is shortened, and the efficiency of the controller in network management is improved.
  • the embodiment of the present invention provides a network management system 130, which may include: a network management device 1301, which may be the network management device shown in FIG. 8 or FIG. .
  • the controller needs to detect the bandwidth required by the first data stream, and determine whether the required bandwidth of the first data stream is greater than a preset bandwidth value. When the required bandwidth of the first data stream is greater than the preset bandwidth value, the bandwidth is allocated for the first data stream.
  • the controller can directly detect the required bandwidth of the first data stream and allocate bandwidth to the first data stream according to the detection result, and the primary switch does not need to generate a bandwidth request message to trigger the controller to allocate bandwidth to the first data stream.
  • the time for the controller to perform network management is shortened, and the efficiency of the controller in network management is improved.
  • the embodiment of the present invention provides a network management device 140.
  • the network management device 140 may be a controller.
  • the network management device 140 may include:
  • the processor 1401 is configured to detect a bandwidth required by the first data stream, where the first data stream is any one of the multiple data streams.
  • the processor 1401 is further configured to determine, when the required bandwidth of the first data stream becomes larger, whether the required bandwidth of the first data stream is greater than a preset bandwidth value.
  • the processor 1401 is further configured to allocate a bandwidth for the first data stream if a required bandwidth of the first data stream is greater than a preset bandwidth value.
  • the detecting unit detects the required bandwidth of the first data stream, and the determining unit determines whether the required bandwidth of the first data stream is greater than a preset bandwidth value. And when the required bandwidth of the first data stream is greater than a preset bandwidth value, the allocation unit allocates bandwidth for the first data stream.
  • the controller can directly detect the required bandwidth of the first data stream and allocate bandwidth to the first data stream according to the detection result, and the primary switch does not need to generate a bandwidth request message to trigger the controller to allocate bandwidth to the first data stream. The time for the controller to perform network management is shortened, and the efficiency of the controller in network management is improved.
  • an embodiment of the present invention provides a network management device 140.
  • the network management device 140 may be a controller.
  • the network management device 140 may include:
  • the processor 1401 is configured to detect a bandwidth required by the first data stream, where the first data stream is any one of the multiple data streams.
  • the processor 1401 is further configured to determine, when the required bandwidth of the first data stream becomes larger, whether the required bandwidth of the first data stream is greater than a preset bandwidth value.
  • the processor 1401 is further configured to allocate a bandwidth for the first data stream if a required bandwidth of the first data stream is greater than a preset bandwidth value.
  • the processor 1401 is further configured to obtain network service quality QOS configuration information in the network management system;
  • the processor 1401 is further configured to generate, according to the QOS configuration information, a shared bandwidth information tree, a bandwidth turnover information database, a flow table corresponding to each data flow of the multiple data flows, and a correspondence between each data flow of the multiple data flows and the ingress switch. Relationship, the shared bandwidth information tree records the bandwidth corresponding to each data stream in the multiple data streams, and the bandwidth turnover information database records the lending bandwidth and the identifier of the lending data stream corresponding to each data stream in the multiple data streams. And the identifier of the borrowed bandwidth and the borrowed data stream corresponding to each of the plurality of data streams, where the flow table is used to indicate the maximum bandwidth occupied by each of the plurality of data streams;
  • the processor 1401 is further configured to acquire a bandwidth occupied by each of the plurality of data streams;
  • the processor 1401 is further configured to determine, according to a bandwidth occupied by each data stream in the multiple data streams and a flow table corresponding to each data flow in the multiple data streams, that the data stream corresponding to each of the multiple data streams is available for lending bandwidth;
  • the processor 1401 is further configured to generate, according to the available lending bandwidth corresponding to each data flow in the plurality of data streams, a loanable information database, wherein each of the plurality of data flows is recorded in the borrowed bandwidth information database.
  • the data stream corresponds to the available loan bandwidth.
  • the detecting unit detects the required bandwidth of the first data stream, and the determining unit determines whether the required bandwidth of the first data stream is greater than a preset bandwidth value. And when the required bandwidth of the first data stream is greater than a preset bandwidth value, the allocation unit allocates bandwidth for the first data stream.
  • the controller can directly detect the required bandwidth of the first data stream and allocate bandwidth to the first data stream according to the detection result, and the primary switch does not need to generate a bandwidth request message to trigger the controller to allocate bandwidth to the first data stream. The time for the controller to perform network management is shortened, and the efficiency of the controller in network management is improved.
  • the processor 1401 is specifically configured to acquire, in a bandwidth rotation information repository, a lending bandwidth corresponding to the first data stream;
  • the processor 1401 is further configured to determine, according to the lending bandwidth corresponding to the first data stream, whether the first data stream has a lending bandwidth;
  • the processor 1401 is further configured to allocate a bandwidth to the first data stream according to the judgment result of the borrowed bandwidth.
  • the processor 1401 is further configured to: if there is a lending bandwidth on the first data stream, obtain an identifier of the lending data stream corresponding to the first data stream in the bandwidth revolving information base.
  • the processor 1401 is further configured to obtain, according to the correspondence between each data stream and the ingress switch in the multiple data flows, the identifier of the ingress switch corresponding to the borrowed data stream.
  • the processor 1401 is further configured to generate a first packet loss message according to the borrowed bandwidth corresponding to the first data stream.
  • the processor 1401 is further configured to: send, according to the identifier of the ingress switch corresponding to the borrowed data stream, the first packet loss message to the ingress switch corresponding to the lending data stream, so that the ingress switch corresponding to the data stream is borrowed according to the first Packet messages are lost.
  • the processor 1401 is further configured to allocate a lending bandwidth for the first data stream.
  • the processor 1401 is further configured to: if there is no lending bandwidth on the first data stream, obtain a loanable bandwidth corresponding to each of the plurality of data streams in the available lending bandwidth information database.
  • the processor 1401 is further configured to determine, according to the available lending bandwidth corresponding to the other data streams of the plurality of data streams, whether the other data streams have a loanable bandwidth.
  • the processor 1401 is further configured to allocate a bandwidth to the first data stream according to the available bandwidth judgment result.
  • the processor 1401 is further configured to: if there is a bandwidth available for lending on other data streams, select a corresponding available in the other data streams according to the required bandwidth of the first data stream and the available lending bandwidth corresponding to the other data streams.
  • the data stream with the bandwidth greater than zero is borrowed as the second data stream; and the bandwidth corresponding to the second data stream is allocated for the first data stream.
  • the processor 1401 is further configured to: if there is no available bandwidth on the other data streams, obtain a priority of each of the plurality of data streams; and obtain a bandwidth corresponding to the other data streams in the shared bandwidth information tree; The priority of one data stream, the priority of other data streams, the bandwidth corresponding to other data streams, and the bandwidth required by the data stream on the first ingress switch, and the priority of selecting the data stream in other data streams is lower than the first data stream.
  • the priority data stream is used as the third data stream; the identifier of the ingress switch corresponding to the third data stream is obtained according to the correspondence between each data stream and the ingress switch in the plurality of data streams; according to the bandwidth corresponding to the third data stream, Generating a second packet loss information; sending, according to the identifier of the ingress switch corresponding to the third data stream, the second packet loss message to the ingress switch corresponding to the third data stream, so that the ingress switch corresponding to the third data stream is based on the second Packet message is packetized; the bandwidth corresponding to the third data stream is allocated for the first data stream
  • the network management device passes through the detecting unit. Detecting a bandwidth required by the first data stream, and determining, by the determining unit, whether a bandwidth required by the first data stream is greater than a preset bandwidth value, and when the required bandwidth of the first data stream is greater than a preset bandwidth value, The first data stream allocates bandwidth.
  • the controller can directly detect the required bandwidth of the first data stream and allocate bandwidth to the first data stream according to the detection result, and the primary switch does not need to generate a bandwidth request message to trigger the controller to allocate bandwidth to the first data stream.
  • the time for the controller to perform network management is shortened, and the efficiency of the controller in network management is improved.
  • the network management system 160 may include: a network management device 1601, which may be the network shown in FIG. 14 or FIG. Management device 140.
  • the network management device detects the required bandwidth of the first data stream, and determines whether the required bandwidth of the first data stream is greater than a preset bandwidth value. When the required bandwidth of the first data stream is greater than a preset bandwidth value, a bandwidth is allocated for the first data stream.
  • the controller can directly detect the required bandwidth of the first data stream and allocate bandwidth to the first data stream according to the detection result, and the primary switch does not need to generate a bandwidth request message to trigger the controller to allocate bandwidth to the first data stream. The time for the controller to perform network management is shortened, and the efficiency of the controller in network management is improved.

Landscapes

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

Abstract

本发明公开了一种网络管理方法、设备及系统,属于通信领域。所述方法包括:检测第一数据流所需带宽,所述第一数据流为所述多条数据流中的任意一条数据流;当所述第一数据流所需带宽变大时,判断所述第一数据流所需带宽是否大于预设带宽值;若所述第一数据流所需带宽大于所述预设带宽值,为所述第一数据流分配带宽。本发明解决了控制器在进行网络管理时效率较低的问题,实现了提高了控制器在进行网络管理时的效率的效果,本发明用于网络的管理。

Description

网络管理方法、设备及系统
本申请要求于2015年1月27日提交中国专利局、申请号为201510039724.1、发明名称为“网络管理方法、设备及系统”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本发明涉及通信领域,特别涉及一种网络管理方法、设备及系统。
背景技术
随着互联网的发展,人们对网络服务质量(英文:Quality Of Service,简称:QOS)的要求越来越高,但是,由于网络的庞大性、路由表的繁杂性以及控制算法的复杂性,路由器的工作负载较大,经常会造成网络崩溃。
随着Openflow(中文:开放流)的发展,工作人员提出一种基于Openflow的QOS管理系统,该QOS管理系统包括控制器、主交换机和多个入口交换机,该多个入口交换机上有多条数据流。具体的,首先控制器根据QOS配置信息,构建包含QOS信息的流表,构建每条数据流的带宽周转信息库(也称借出和借入带宽信息库),并构建共享带宽关系。然后控制器将构建好的包含QOS信息的流表发送至每条数据流对应的交换机,并查询每条数据流占用的带宽,根据没条数据流的流表和每条数据流占用的带宽,生成每条数据流对应的可供借出带宽信息库。当该主交换机收到某个入口交换机转发的数据流时,该主交换机查询该数据流的带宽,如果该数据流的带宽大于或等于该数据流所需的带宽时,则进行该数据流的转发;如果小于该数据流所需的带宽时,则该主交换机需检测该数据流上是否设置有借入带宽不成功标志,若该主交换机检测到该数据流上设置有借入带宽不成功标志,则该主交换机对该数据流进行丢包处理;若该主交换机检测到该数据流上未设置借入带宽不成功标志,则该主交换机根据该数据流所需的带宽生成带宽申请消息,并将该带宽申请消息发送至控制器,控制器根据该带宽申请消息为该数据流分配带宽。
在该数据流的带宽小于该数据流所需的带宽时,需要通过主交换机向控制器发送带宽申请消息,来触发控制器对该数据流分配带宽。由于从确定该数据流的带宽小于该数据流所需的带宽的时刻到控制器为该数据流分配带宽的时刻耗费的时间较长,使得控制器在进行网络管理时效率较低。
发明内容
为了解决控制器在进行网络管理时效率较低的问题,本发明提供了一种网络管理方法、设备及系统。所述技术方案如下:
第一方面,提供了一种网络管理方法,所述网络管理方法用于网络管理系统中的控制器,所述网络管理系统包括所述控制器和多个交换机,所述多个交换机包括主交换机和多个入口交换机,所述多个入口交换机上有多条数据流,所述网络管理方法包括:
检测第一数据流所需带宽,所述第一数据流为所述多条数据流中的任意一条数据流;
当所述第一数据流所需带宽变大时,判断所述第一数据流所需带宽是否大于预设带宽值;
若所述第一数据流所需带宽大于所述预设带宽值,为所述第一数据流分配带宽。
结合第一方面,在第一种可实现方式中,在所述检测第一数据流所需带宽之前,所述网络管理方法还包括:
获取所述网络管理系统中的网络服务质量QOS配置信息;
根据所述QOS配置信息分别生成共享带宽信息树、带宽周转信息库、所述多条数据流中每条数据流对应的流表以及所述多条数据流中每条数据流与入口交换机的对应关系,所述共享带宽信息树中记录了所述多条数据流中每条数据流对应的带宽,所述带宽周转信息库中记录了所述多条数据流中每条数据流对应的借出带宽和借出数据流的标识,以及所述多条数据流中每条数据流对应的借入带宽和借入数据流的标识,所述流表用于指示所述多条数据流中每条数据流占用的最大带宽;
获取所述多条数据流中每条数据流占用的带宽;
根据所述多条数据流中每条数据流占用的带宽和所述多条数据流中每条 数据流对应的流表,确定所述多条数据流中每条数据流对应的可供借出带宽;
根据所述多条数据流中每条数据流对应的可供借出带宽,生成可供借出带宽信息库,所述可供借出带宽信息库中记录了所述多条数据流中每条数据流对应的可供借出带宽。
结合第一种可实现方式,在第二种可实现方式中,所述为所述第一数据流分配带宽,包括:
在所述带宽周转信息库中获取所述第一数据流对应的借出带宽;
根据所述第一数据流对应的借出带宽,判断所述第一数据流是否有借出带宽;
根据对所述借出带宽的判断结果为所述第一数据流分配带宽。
结合第二种可实现方式,在第三种可实现方式中,所述根据对所述借出带宽的判断结果为所述第一数据流分配带宽,包括:
若所述第一数据流上有借出带宽,则在所述带宽周转信息库中获取所述第一数据流对应的借出数据流的标识;
根据所述多条数据流中每条数据流与入口交换机的对应关系,获取所述借出数据流对应的入口交换机的标识;
根据所述第一数据流对应的借出带宽生成第一丢包消息;
根据所述借出数据流对应的入口交换机的标识,将所述第一丢包消息发送至所述借出数据流对应的入口交换机,以便于所述借出数据流对应的入口交换机根据所述第一丢包消息进行丢包;
为所述第一数据流分配所述借出带宽。
结合第二种可实现方式,在第四种可实现方式中,所述根据对所述借出带宽的判断结果为所述第一数据流分配带宽,包括:
若所述第一数据流上没有借出带宽,则在所述可供借出带宽信息库中获取所述多条数据流中每条数据流对应的可供借出带宽;
根据所述多条数据流中除所述第一数据流外的其他数据流对应的可供借出带宽,判断所述其他数据流是否有可供借出带宽;
根据所述可供借出带宽判断结果为所述第一数据流分配带宽。
结合第四种可实现方式,在第五种可实现方式中,所述根据所述可供借出带宽判断结果为所述第一数据流分配带宽,包括:
若所述其他数据流上有可供借出带宽,则根据所述第一数据流所需带宽和 所述其他数据流对应的可供借出带宽,在所述其他数据流中选择对应的可供借出带宽大于零的数据流作为第二数据流;
为所述第一数据流分配所述第二数据流对应的带宽。
结合第四种可实现方式,在第六种可实现方式中,所述根据所述可供借出带宽判断结果为所述第一数据流分配带宽,包括:
若所述其他数据流上没有可供借出带宽,则获取所述多条数据流中每条数据流的优先级;
在所述共享带宽信息树中获取所述其他数据流对应的带宽;
根据所述第一数据流的优先级、所述其他数据流的优先级、所述其他数据流对应的带宽和所述第一入口交换机上的数据流所需带宽,在所述其他数据流中选择数据流的优先级低于所述第一数据流的优先级的数据流作为第三数据流;
根据所述多条数据流中每条数据流与入口交换机的对应关系,获取所述第三数据流对应的入口交换机的标识;
根据所述第三数据流对应的带宽,生成第二丢包信息;
根据所述第三数据流对应的入口交换机的标识,将所述第二丢包消息发送至所述第三数据流对应的入口交换机,以便于所述第三数据流对应的入口交换机根据所述第二丢包消息进行丢包;
为所述第一数据流分配所述第三数据流对应的带宽。
第二方面,提供了一种网络管理设备,所述网络管理设备为控制器,所述网络管理设备包括:
检测单元,用于检测第一数据流所需带宽,所述第一数据流为所述多条数据流中的任意一条数据流;
判断单元,用于当所述第一数据流所需带宽变大时,判断所述第一数据流所需带宽是否大于预设带宽值;
分配单元,用于若所述第一数据流所需带宽大于所述预设带宽值,为所述第一数据流分配带宽。
结合第二方面,在第一种可实现方式中,所述网络管理设备还包括:
第一获取单元,用于获取所述网络管理系统中的网络服务质量QOS配置信息;
第一生成单元,用于根据所述QOS配置信息分别生成共享带宽信息树、 带宽周转信息库、所述多条数据流中每条数据流对应的流表以及所述多条数据流中每条数据流与入口交换机的对应关系,所述共享带宽信息树中记录了所述多条数据流中每条数据流对应的带宽,所述带宽周转信息库中记录了所述多条数据流中每条数据流对应的借出带宽和借出数据流的标识,以及所述多条数据流中每条数据流对应的借入带宽和借入数据流的标识,所述流表用于指示所述多条数据流中每条数据流占用的最大带宽;
第二获取单元,用于获取所述多条数据流中每条数据流占用的带宽;
确定单元,用于根据所述多条数据流中每条数据流占用的带宽和所述多条数据流中每条数据流对应的流表,确定所述多条数据流中每条数据流对应的可供借出带宽;
第二生成单元,用于根据所述多条数据流中每条数据流对应的可供借出带宽,生成可供借出带宽信息库,所述可供借出带宽信息库中记录了所述多条数据流中每条数据流对应的可供借出带宽。
结合第一种可实现方式,在第二种可实现方式中,所述分配单元,包括:
获取模块,用于在所述带宽周转信息库中获取所述第一数据流对应的借出带宽;
判断模块,用于根据所述第一数据流对应的借出带宽,判断所述第一数据流是否有借出带宽;
分配模块,用于根据对所述借出带宽的判断结果为所述第一数据流分配带宽。
结合第二种可实现方式,在第三种可实现方式中,所述分配模块,包括:
第一获取子模块,用于若所述第一数据流上有借出带宽,则在所述带宽周转信息库中获取所述第一数据流对应的借出数据流的标识;
第二获取子模块,用于根据所述多条数据流中每条数据流与入口交换机的对应关系,获取所述借出数据流对应的入口交换机的标识;
生成子模块,用于根据所述第一数据流对应的借出带宽生成第一丢包消息;
发送子模块,用于根据所述借出数据流对应的入口交换机的标识,将所述第一丢包消息发送至所述借出数据流对应的入口交换机,以便于所述借出数据流对应的入口交换机根据所述第一丢包消息进行丢包;
第一分配子模块,用于为所述第一数据流分配所述借出带宽。
结合第二种可实现方式,在第四种可实现方式中,所述分配模块,包括:
第三获取子模块,用于若所述第一数据流上没有借出带宽,则在所述可供借出带宽信息库中获取所述多条数据流中每条数据流对应的可供借出带宽;
判断子模块,用于根据所述多条数据流中除所述第一数据流外的其他数据流对应的可供借出带宽,判断所述其他数据流是否有可供借出带宽;
第二分配子模块,用于根据所述可供借出带宽判断结果为所述第一数据流分配带宽。
结合第四种可实现方式,在第五种可实现方式中,
所述第二分配子模块具体用于:
若所述其他数据流上有可供借出带宽,则根据所述第一数据流所需带宽和所述其他数据流对应的可供借出带宽,在所述其他数据流中选择对应的可供借出带宽大于零的数据流作为第二数据流;
为所述第一数据流分配所述第二数据流对应的带宽。
结合第四种可实现方式,在第六种可实现方式中,
所述第二分配子模块具体用于:
若所述其他数据流上没有可供借出带宽,则获取所述多条数据流中每条数据流的优先级;
在所述共享带宽信息树中获取所述其他数据流对应的带宽;
根据所述第一数据流的优先级、所述其他数据流的优先级、所述其他数据流对应的带宽和所述第一入口交换机上的数据流所需带宽,在所述其他数据流中选择数据流的优先级低于所述第一数据流的优先级的数据流作为第三数据流;
根据所述多条数据流中每条数据流与入口交换机的对应关系,获取所述第三数据流对应的入口交换机的标识;
根据所述第三数据流对应的带宽,生成第二丢包信息;
根据所述第三数据流对应的入口交换机的标识,将所述第二丢包消息发送至所述第三数据流对应的入口交换机,以便于所述第三数据流对应的入口交换机根据所述第二丢包消息进行丢包;
为所述第一数据流分配所述第三数据流对应的带宽。
第三方面,提供了一种网络管理系统,所述网络管理系统包括:
以上任一所述的网络管理设备。
本发明提供了一种网络管理方法、设备及系统,通过控制器检测第一数据流所需带宽,并判断该第一数据流所需带宽是否大于预设带宽值,当该第一数据流所需带宽大于预设带宽值时,为该第一数据流分配带宽。该过程中控制器能够直接检测该第一数据流所需带宽并根据该检测结果为该第一数据流分配带宽,无需主交换机生成带宽申请消息来触发控制器对该第一数据流分配带宽,缩短了控制器进行网络管理的时间,提高了控制器在进行网络管理时的效率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种网络管理系统的结构示意图;
图2是本发明实施例提供的一种网络管理方法的方法流程图;
图3是本发明实施例提供的另一种网络管理方法的方法流程图;
图4是本发明实施例提供的一种分配带宽的方法流程图;
图5是本发明实施例提供的一种分配借出带宽的方法流程图;
图6是本发明实施例提供的一种分配可借出带宽的方法流程图;
图7是本发明实施例提供的一种分配第三入口交换机带宽的方法流程图;
图8是本发明实施例提供的一种网络管理设备的结构示意图;
图9是本发明实施例提供的另一种网络管理设备的结构示意图;
图10是本发明实施例提供的一种分配单元的结构示意图;
图11是本发明实施例提供的一种分配模块的结构示意图;
图12是本发明实施例提供的另一种分配模块的结构示意图;
图13是本发明实施例提供的一种网络管理系统的结构示意图;
图14是本发明实施例提供的又一种网络管理设备的结构示意图;
图15是本发明实施例提供的再一种网络管理设备的结构示意图;
图16是本发明实施例提供的另一种网络管理系统的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
图1为本发明实施例提供的一种网络管理系统00,该网络管理系统00中可以包括控制器A和多个交换机。该多个交换机可以包括:主交换机B4、入口交换机B1、入口交换机B2和入口交换机B3,该多个客户端可以包括:客户端C1、客户端C2和客户端C3。示例的,该客户端C1与该入口交换机B1相连接,该客户端C2与该入口交换机B2相连接,该客户端C3与该入口交换机B3相连接,该入口交换机B1、入口交换机B2和入口交换机B3分别与主交换机B4相连接。控制器A能够与该多个交换机之间进行通信,各个客户端能够生成数据流,并由与该客户端连接的入口交换机将该数据流转发至主交换机B4,由该主交换机B4对该数据流进行相应的处理,该多个入口交换机上可以有多条数据流。特别的,图1中以网络管理系统00包括1个主交换机和3个入口交换机为例进行说明,实际应用中,主交换机和入口交换机的个数不做限定。
如图2所示,图2为本发明实施例提供的一种网络管理方法,该网络管理方法用于图1中的网络管理系统00中的控制器A,该网络管理系统00可以包括控制器A和多个交换机,该多个交换机可以包括主交换机B4和多个入口交换机,该多个入口交换机上可以有多条数据流。该网络管理方法可以包括:
步骤201、检测第一数据流所需带宽,第一数据流为多条数据流中的任意一条数据流。
步骤202、当第一数据流所需带宽变大时,判断第一数据流所需带宽是否大于预设带宽值。
步骤203、若第一数据流所需带宽大于预设带宽值,为第一数据流分配带宽。
综上所述,由于本发明实施例提供的一种网络管理方法中,通过控制器检测第一数据流所需带宽,并判断该第一数据流所需带宽是否大于预设带宽值,当该第一数据流所需带宽大于预设带宽值时,为该第一数据流分配带宽。该过程中控制器能够直接检测该第一数据流所需带宽并根据该检测结果为该第一数据流分配带宽,无需主交换机生成带宽申请消息来触发控制器对该第一数据流分配带宽,缩短了控制器进行网络管理的时间,提高了控制器在进行网络管 理时的效率。
进一步的,在步骤201之前,该网络管理方法还可以包括:获取网络管理系统中的网络服务质量QOS配置信息;根据QOS配置信息分别生成共享带宽信息树、带宽周转信息库、多条数据流中每条数据流对应的流表以及多条数据流中每条数据流与入口交换机的对应关系,共享带宽信息树中记录了多条数据流中每条数据流对应的带宽,带宽周转信息库中记录了多条数据流中每条数据流对应的借出带宽和借出数据流的标识,以及多条数据流中每条数据流对应的借入带宽和借入数据流的标识,流表用于指示多条数据流中每条数据流占用的最大带宽;
获取多条数据流中每条数据流占用的带宽;根据多条数据流中每条数据流占用的带宽和多条数据流中每条数据流对应的流表,确定多条数据流中每条数据流对应的可供借出带宽;根据多条数据流中每条数据流对应的可供借出带宽,生成可供借出带宽信息库,可供借出带宽信息库中记录了多条数据流中每条数据流对应的可供借出带宽。
具体的,步骤203可以包括:
在带宽周转信息库中获取第一数据流对应的借出带宽;根据第一数据流对应的借出带宽,判断第一数据流是否有借出带宽;根据对借出带宽的判断结果为第一数据流分配带宽。
示例的,根据对借出带宽的判断结果为第一数据流分配带宽,可以包括:若第一数据流上有借出带宽,则在带宽周转信息库中获取第一数据流对应的借出数据流的标识;根据多条数据流中每条数据流与入口交换机的对应关系,获取借出数据流对应的入口交换机的标识;根据第一数据流对应的借出带宽生成第一丢包消息;根据借出数据流对应的入口交换机的标识,将第一丢包消息发送至借出数据流对应的入口交换机,以便于借出数据流对应的入口交换机根据第一丢包消息进行丢包;为第一数据流分配借出带宽。
可选的,根据对借出带宽的判断结果为第一数据流分配带宽,可以包括:若第一数据流上没有借出带宽,则在可供借出带宽信息库中获取多条数据流中每条数据流对应的可供借出带宽;根据多条数据流中除第一数据流外的其他数据流对应的可供借出带宽,判断其他数据流是否有可供借出带宽;根据可供借出带宽判断结果为第一数据流分配带宽。
具体的,根据可供借出带宽判断结果为第一数据流分配带宽,可以包括若 其他数据流上有可供借出带宽,则根据第一数据流所需带宽和其他数据流对应的可供借出带宽,在其他数据流中选择对应的可供借出带宽大于零的数据流作为第二数据流;为第一数据流分配第二数据流对应的带宽。
示例的,根据可供借出带宽判断结果为第一数据流分配带宽,可以包括:若其他数据流上没有可供借出带宽,则获取多条数据流中每条数据流的优先级;在共享带宽信息树中获取其他数据流对应的带宽;根据第一数据流的优先级、其他数据流的优先级、其他数据流对应的带宽和第一入口交换机上的数据流所需带宽,在其他数据流中选择数据流的优先级低于第一数据流的优先级的数据流作为第三数据流;根据多条数据流中每条数据流与入口交换机的对应关系,获取第三数据流对应的入口交换机的标识;根据第三数据流对应的带宽,生成第二丢包信息;根据第三数据流对应的入口交换机的标识,将第二丢包消息发送至第三数据流对应的入口交换机,以便于第三数据流对应的入口交换机根据第二丢包消息进行丢包;为第一数据流分配第三数据流对应的带宽。
综上所述,由于本发明实施例提供的一种网络管理方法中,通过控制器检测第一数据流所需带宽,并判断该第一数据流所需带宽是否大于预设带宽值,当该第一数据流所需带宽大于预设带宽值时,为该第一数据流分配带宽。该过程中控制器能够直接检测该第一数据流所需带宽并根据该检测结果为该第一数据流分配带宽,无需主交换机生成带宽申请消息来触发控制器对该第一数据流分配带宽,缩短了控制器进行网络管理的时间,提高了控制器在进行网络管理时的效率。
如图3所示,本发明实施例提供了另一种网络管理方法,该网络管理方法可以用于图1中的网络管理系统00,该网络管理方法可以包括:
步骤301、控制器检测第一数据流所需带宽,该第一数据流为多条数据流中的任意一条数据流。执行步骤302。
示例的,该控制器可以生成检测带宽信息,并在该控制器中存储的多条数据流中每条数据流与入口交换机的对应关系中获取该第一数据流对应的入口交换机的标识,根据该第一数据流对应的入口交换机的标识将该检测带宽信息发送至该第一数据流对应的入口交换机,该第一数据流对应的入口交换机在收到该检测带宽信息后,可以生成数据流占用带宽消息,并将该数据流占用带宽消息和该第一数据流的标识发送至该控制器,需要说明的是,该数据流占用带 宽消息中可以记录了该第一数据流所需的带宽。
步骤302、当第一数据流所需带宽变大时,控制器判断第一数据流所需带宽是否大于预设带宽值。若是,执行步骤303。若否,执行步骤304。
具体的,当控制器检测到该第一数据流所需带宽变大时,需判断步骤301中检测到的第一数据流所需带宽是否大于预设带宽值,示例的,该预设带宽值可以为该第一数据流上的空闲的带宽。需要说明的是,该预设带宽值也可以为其他值,本发明实施例对此不做限定。可选的,当控制器检测到该第一数据流所需带宽变小或不变时,该控制器可以执行步骤304,即生成指示该第一数据流对应的入口交换机转发该第一数据流的指示工作信息,并将该指示工作信息发送至该第一数据流对应的入口交换机,由该第一数据流对应的入口交换机根据该指示工作信息进行该第一数据流的转发。
步骤303、控制器为第一数据流分配带宽。
示例的,在步骤301之前,控制器可以生成共享带宽信息树、带宽周转信息库、可供借出带宽信息库、多条数据流中每条数据流对应的流表以及多条数据流中每条数据流与入口交换机的对应关系,控制器可以根据该共享带宽信息树、带宽周转信息库、多条数据流中每条数据流对应的流表以及可供借出带宽信息库为该第一数据流分配带宽。
控制器生成共享带宽信息树、带宽周转信息库、多条数据流中每条数据流对应的流表以及多条数据流中每条数据流与入口交换机的对应关系的过程可以为:控制器可以获取网络管理系统中的QOS配置信息,并根据QOS配置信息分别生成共享带宽信息树、带宽周转信息库、多条数据流中每条数据流对应的流表以及多条数据流中每条数据流与入口交换机的对应关系。
具体的,该QOS配置信息可以包括:主交换机和多个入口交换机的标识、每条数据流的标识、每条数据流所配备的带宽以及多条数据流中每条数据流上借出和借入带宽的信息。控制器可以根据多条数据流中每条数据流的标识,以及为该多条数据流中每条数据流所配备的带宽,生成共享带宽信息树和流表。该共享带宽信息树中记录了多条数据流中每条数据流对应的带宽,该流表用于指示多条数据流中每条数据流占用的最大带宽。该控制器还可以根据该多条数据流中每条数据流上借出和借入带宽的信息以及多条数据流中每条数据流的标识生成带宽周转信息库,该带宽周转信息库中记录了多条数据流中每条数据流对应的借出带宽和借出数据流的标识,以及多条数据流中每条数据流对应的 借入带宽和借入数据流的标识。需要说明的是,控制器还可以将控制器生成的多条数据流中每条数据流对应的流表发送至该多条数据流中每条数据流对应的交换机,接收到流表的交换机可以在该交换机上的数据流所需带宽小于或等于该流表指示的该数据流占用的最大带宽时,转发该数据流。
控制器生成可供借出带宽信息库的过程可以为:控制器获取多条数据流中每条数据流占用的带宽,并根据多条数据流中每条数据流占用的带宽和多条数据流中每条数据流对应的流表,生成可供借出带宽信息库。
具体的,该控制器获取多条数据流中每条数据流占用的带宽的方法可以参考图3中步骤301中控制器检测第一数据流所需带宽的方法,本发明实施例对此不做赘述。控制器可以使用该多条数据流中每条数据流对应的流表所指示的该多条数据流中每条数据流占用的最大带宽,减去该多条数据流中每条数据流占用的带宽,得到多条数据流中每条数据流对应的可供借出带宽。并根据该多条数据流中每条数据流对应的可供借出带宽和该多条数据流中每条数据流的标识,生成可供借出带宽信息库,该可供借出带宽信息库中记录了多条数据流中每条数据流对应的可供借出带宽。
示例的,当入口交换机B1上的一条数据流对应的流表所指示的该数据流占用的最大带宽为20M(兆)时,并经过统计得到该数据流占用带宽为10M,则用该数据流占用的最大带宽20M减去该数据流占用带宽10M,得到该数据流的可供借出的带宽为10M。
相应的,如图4所示,步骤303可以包括:
步骤3031、控制器在带宽周转信息库中获取第一数据流对应的借出带宽。执行步骤3032。
控制器可以根据该第一数据流的标识在步骤302中建立的带宽周转信息库中获取该第一数据流对应的借出带宽。
步骤3032、控制器根据第一数据流的借出带宽,判断第一数据流上是否有借出带宽。若是,执行步骤3033。若否,执行步骤3034。
控制器可以根据判断步骤3031中获取的该第一数据流对应的借出带宽是否大于零,判断该第一数据流是否有借出带宽。若该第一数据流对应的借出带宽大于零,则判断该第一数据流上有借出带宽,执行步骤3033;若该第一数据流对应的借出带宽不大于零,则判断该第一数据流上没有借出带宽,执行步骤3034。
步骤3033、控制器为第一数据流分配第一数据流对应的借出带宽。
如图5所示,步骤3033可以包括:
步骤30331、控制器根据第一数据流对应的借出带宽生成第一丢包消息。
示例的,该第一丢包信息可以包括丢包指令和该第一数据流对应的借出带宽,该丢包指令用于指示入口交换机根据该第一丢包消息进行丢包。
步骤30332、控制器在带宽周转信息库中获取该第一数据流对应的借出数据流的标识。
该控制器可以在该带宽周转信息库中查询该第一数据流对应的借出数据流的标识,需要说明的是,该第一数据流对应的借出数据流可以为一个或多个,所以该第一数据流对应的借出数据流的标识可以为一个或多个。
步骤30333、控制器根据该借出数据流的标识,在多条数据流中每条数据流与入口交换机的对应关系中获取该借出数据流对应的入口交换机的标识。
步骤30334、控制器根据该借出数据流的标识,将第一丢包消息发送至该借出数据流的标识。
具体的,控制器可以根据步骤30333中获取的该借出数据流对应的入口交换机的标识,将步骤30331中生成的第一丢包消息发送至该借出数据流对应的入口交换机。
步骤30335、该借出数据流对应的入口交换机根据该第一丢包消息进行丢包。
示例的,若该借出数据流对应的入口交换机为入口交换机B2,该第一数据流对应的借出带宽为10M。在该入口交换机B2在收到该第一丢包消息后,该入口交换机B2可以根据该第一丢包消息将该入口交换机B2上10M的数据流进行丢包。
步骤30336、控制器为第一数据流分配该第一数据流对应的借出带宽。
在该借出数据流对应的入口交换机根据第一丢包消息上的丢包指令和该第一数据流对应的借出带宽进行丢包后,控制器可以为该第一数据流分配该第一数据流对应的借出带宽,并根据该第一数据流对应的借出带宽,更新该第一入口交换机上数据流对应的流表。可选的,该控制器还可以更新该控制器中的共享带宽信息树、带宽周转信息库和可供借出带宽信息库。
优选的,在为该第一数据流分配第一数据流对应的借出带宽之后,该控制器可以检测分配了带宽后的该第一数据流占用的最大带宽是否小于该第一数 据流所需带宽,若分配了带宽后的该第一数据流占用的最大带宽小于该第一数据流所需带宽,则执行步骤3034,为该第一数据流分配该多条数据流中除第一数据流外的其他数据流对应的可供借出带宽。
步骤3034、控制器在可供借出带宽信息库中获取多条数据流中每条数据流对应的可供借出带宽。执行步骤3035。
示例的,控制器可以在生成的可供借出带宽信息库中获取多条数据流中每条数据流对应的可供借出带宽。
步骤3035、控制器根据多条数据流中除第一数据流外的其他数据流对应的可供借出带宽,判断其他数据流上是否有可供借出带宽。若是,执行步骤3036。若否,执行步骤3037。
控制器可以根据其他数据流对应的可供借出带宽,得出其他数据流对应的可供借出带宽,并判断其他数据流对应的可供借出带宽是否大于零,若大于零,则其他数据流上有可供借出带宽,若不大于零,则其他数据流上没有可供借出带宽。
步骤3036、控制器为第一数据流分配可供借出带宽。
如图6所示,步骤3036可以包括:
步骤30361、控制器根据第一数据流所需带宽、其他数据流对应的可供借出带宽,在其他数据流中选择对应的可供借出带宽大于零的数据流作为第二数据流。
具体的,若第一数据流所需带宽为30M,则需为该第一数据流分配30M的带宽。假设该多条数据流中除第一数据流外的其他数据流对应的可供借出带宽不为零的数据流为数据流1、数据流2和数据流3。
若数据流1、数据流2和数据流3对应的可供借出带宽之和大于该第一数据流所需带宽,则在数据流1、数据流2和数据流3中选择对应的可供借出带宽之和大于或等于该第一数据流所需带宽的数据流作为第二数据流;若数据流1、数据流2和数据流3对应的可供借出带宽之和等于或小于该第一数据流所需带宽与该第一数据流对应的可供借出带宽之差,则选择该多条数据流中除第一数据流外的其他数据流中对应的可供借出带宽不为零的所有数据流作为第二数据流,即选择数据流1、数据流2和数据流3作为第二数据流。
步骤30362、控制器为第一数据流分配第二数据流对应的可供借出带宽。
示例的,控制器可以根据该第二数据流对应的可供借出带宽为第一数据流 分配第二数据流对应的可供借出带宽,更新该第一数据流和该第二数据流对应的流表,并将更新后的该第一数据流和该第二数据流对应的流表发送至该第一数据流对应的入口交换机和该第二数据流对应的入口交换机。可选的,该控制器还可以更新该控制器中的共享带宽信息树、带宽周转信息库和可供借出带宽信息库。
优选的,在为该第一数据流分配第二数据流对应的借出带宽之后,该控制器可以检测分配了带宽后的该第一数据流占用的最大带宽是否小于该第一数据流所需带宽,若分配了带宽后的该第一数据流占用的最大带宽小于该第一数据流所需带宽,则执行步骤3037,为该第一数据流分配该多条数据流中优先级低于该第一数据流的数据流对应的带宽。
步骤3037、控制器为第一数据流分配第三数据流的带宽,该第三数据流的优先级低于该第一数据流的优先级。
如图7所示,步骤3037可以包括:
步骤30371、控制器获取多条数据流中每条数据流的优先级。
需要说明的是,控制器生成的该多条数据流中的每条数据流对应的流表中还可以包括:多条数据流中的每条数据流对应的优先级信息,控制器可以从该多条数据流中的每条数据流对应的流表中获取该多条数据流中每条数据流对应的优先级信息,该多条数据流中每条数据流的优先级信息可以包括该多条数据流中每条数据流的优先级。
步骤30372、控制器在共享带宽信息树中获取多条数据流中除该第一数据流外的其他数据流中每条数据流对应的带宽。
示例的,由于该带宽共享信息树中记录了多条数据流中每条数据流对应的带宽,因此控制器可以从该带宽共享信息树中获取多条数据流中除该第一数据流外的其他数据流中每条数据流对应的带宽。
步骤30373、控制器根据其他数据流中每条数据流的优先级、第一数据流的优先级、其他数据流中每条数据流对应的带宽和第一数据流所需带宽,在其他数据流中选择数据流的优先级低于第一数据流的优先级的数据流作为第三数据流。
具体的,若第一数据流所需带宽为30M,则需为该第一数据流分配30M的带宽。假设该多条数据流中除第一数据流外的其他数据流中的优先级低于该第一数据流的优先级的数据流为数据流1、数据流2和数据流3。
若数据流1、数据流2和数据流3对应的带宽之和大于该第一数据流所需带宽,则在数据流1、数据流2和数据流3中选择对应的带宽之和大于或等于该第一数据流所需带宽的数据流作为第三数据流;若数据流1、数据流2和数据流3对应的带宽之和等于或小于该第一数据流所需带宽,则选择该多条数据流中除第一数据流外的其他数据流中的所有数据流作为第三数据流,即选择数据流1、数据流2和数据流3作为第三数据流。
步骤30374、控制器根据第三数据流对应的带宽,生成第二丢包信息。
示例的,该第二丢包信息可以包括丢包指令和该第三数据流对应的带宽,该丢包指令用于指示入口交换机根据该第二丢包消息进行丢包。
步骤30375、控制器在多条数据流中每条数据流与入口交换机的对应关系中,获取该第三数据流对应的入口交换机的标识。
步骤30376、控制器根据该第三数据流对应的入口交换机的标识,将第二丢包消息发送至该第三数据流对应的入口交换机。
具体的,控制器可以将步骤30374中生成的第二丢包消息发送至该第三数据流对应的入口交换机。
步骤30377、该第三数据流对应的入口交换机根据第二丢包消息进行丢包。
示例的,若该第三数据流对应的入口交换机为入口交换机B3,该第三数据流对应的带宽为10M,因此,在该入口交换机B3收到该第二丢包消息后,该入口交换机B3可以根据该第二丢包消息将该入口交换机B3上10M上的数据流进行丢包,使得该入口交换机B3上的数据流上10M的带宽处于空闲状态。
步骤30378、控制器为第一数据流分配第三数据流对应的带宽。
示例的,控制器可以根据该第三数据流对应的带宽为第一数据流分配第三数据流对应的带宽,更新该第一数据流和该第三数据流对应的流表,并将更新后的该第一数据流和该第三数据流对应的流表发送至该第一数据流和该第三数据流对应的入口交换机。可选的,该控制器还可以更新该控制器中的共享带宽信息树、带宽周转信息库和可供借出带宽信息库。
优选的,在为该第一数据流分配第三数据流对应的带宽之后,该控制器可以检测分配了带宽后的该第一数据流占用的最大带宽是否小于该第一数据流所需带宽,若分配了带宽后的该第一数据流占用的最大带宽小于该第一数据流所需带宽,则将该第一数据流进行丢包。现有技术中,由第一数据流对应的入口交换机将该第一数据流转发至主交换机,由主交换机判断该第一数据流上剩 余的带宽是否小于该第一数据流所需带宽,在判断该第一数据流上剩余的带宽小于该第一数据流所需带宽时,对该第一数据流进行丢包。由于第一数据流对应的入口交换机将该第一数据流转发至主交换机,占用了网络资源,本发明中直接由控制器进行判断,并根据判断结果进行相应的处理,第一数据流对应的入口交换机无需转发该第一数据流,所以,节约了网络资源。
步骤304、控制器生成指示工作信息。执行步骤305。
具体的,若步骤302中的判断结果为第一数据流所需带宽不大于预设带宽值,则控制器可以生成转发消息,该转发消息用于指示交换机转发该第一数据流。
步骤305、控制器在多条数据流中每条数据流与入口交换机的对应关系中,获取该第一数据流对应的入口交换机的标识。执行步骤306。
步骤306、控制器根据该第一数据流对应的入口交换机的标识,将指示工作信息发送至该第一数据流对应的入口交换机。执行步骤307。
控制器可以根据该第一数据流的标识,将该指示工作信息发送至该第一数据流对应的入口交换机。
步骤307、第一数据流对应的入口交换机根据该指示工作信息对该第一数据流进行转发。
示例的,该第一数据流对应的入口交换机可以将该第一数据流转发至主交换机,并由主交换机根据该第一数据流中的信息对该第一数据流进行相应的处理。
需要说明的是,本发明实施例提供的网络管理方法步骤的先后顺序可以进行适当调整,步骤也可以根据情况进行相应增减,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化的方法,都应涵盖在本发明的保护范围之内,因此不再赘述。
综上所述,由于本发明实施例提供的一种网络管理方法中,通过控制器检测第一数据流所需带宽,并判断该第一数据流所需带宽是否大于预设带宽值,当该第一数据流所需带宽大于预设带宽值时,为该第一数据流分配带宽。该过程中控制器能够直接检测该第一数据流所需带宽并根据该检测结果为该第一数据流分配带宽,无需主交换机生成带宽申请消息来触发控制器对该第一数据流分配带宽,缩短了控制器进行网络管理的时间,提高了控制器在进行网络管理时的效率。
如图8所示,本发明实施例提供了一种网络管理设备80,该网络管理设备80可以为控制器,该网络管理设备80可以包括:
检测单元801,用于检测第一数据流所需带宽,第一数据流为多条数据流中的任意一条数据流。
判断单元802,用于当第一数据流所需带宽变大时,判断第一数据流所需带宽是否大于预设带宽值。
分配单元803,用于若第一数据流所需带宽大于预设带宽值,为第一数据流分配带宽。
综上所述,由于本发明实施例提供的一种网络管理设备中,通过检测单元检测第一数据流所需带宽,并由判断单元判断该第一数据流所需带宽是否大于预设带宽值,当该第一数据流所需带宽大于预设带宽值时,由分配单元为该第一数据流分配带宽。该过程中控制器能够直接检测该第一数据流所需带宽并根据该检测结果为该第一数据流分配带宽,无需主交换机生成带宽申请消息来触发控制器对该第一数据流分配带宽,缩短了控制器进行网络管理的时间,提高了控制器在进行网络管理时的效率。
如图9所示,本发明实施例提供了另一种网络管理设备80,该网络管理设备80可以为控制器,该网络管理设备80可以包括:
检测单元801,用于检测第一数据流所需带宽,第一数据流为多条数据流中的任意一条数据流。
判断单元802,用于当第一数据流所需带宽变大时,判断第一数据流所需带宽是否大于预设带宽值。
分配单元803,用于若第一数据流所需带宽大于预设带宽值,为第一数据流分配带宽。
第一获取单元804,用于获取网络管理系统中的网络服务质量QOS配置信息。
第一生成单元805,用于根据QOS配置信息分别生成共享带宽信息树、带宽周转信息库、多条数据流中每条数据流对应的流表以及多条数据流中每条数据流与入口交换机的对应关系,共享带宽信息树中记录了多条数据流中每条数据流对应的带宽,带宽周转信息库中记录了多条数据流中每条数据流对应的借 出带宽和借出数据流的标识,以及多条数据流中每条数据流对应的借入带宽和借入数据流的标识,流表用于指示多条数据流中每条数据流占用的最大带宽。
第二获取单元806,用于获取多条数据流中每条数据流占用的带宽。
确定单元807,用于根据多条数据流中每条数据流占用的带宽和多条数据流中每条数据流对应的流表,确定多条数据流中每条数据流对应的可供借出带宽。
第二生成单元808,用于根据多条数据流中每条数据流对应的可供借出带宽,生成可供借出带宽信息库,可供借出带宽信息库中记录了多条数据流中每条数据流对应的可供借出带宽。
综上所述,由于本发明实施例提供的一种网络管理设备中,通过检测单元检测第一数据流所需带宽,并由判断单元判断该第一数据流所需带宽是否大于预设带宽值,当该第一数据流所需带宽大于预设带宽值时,由分配单元为该第一数据流分配带宽。该过程中控制器能够直接检测该第一数据流所需带宽并根据该检测结果为该第一数据流分配带宽,无需主交换机生成带宽申请消息来触发控制器对该第一数据流分配带宽,缩短了控制器进行网络管理的时间,提高了控制器在进行网络管理时的效率。
如图10所示,该分配单元803可以包括:
获取模块8031,用于在带宽周转信息库中获取第一数据流对应的借出带宽。
判断模块8032,用于根据第一数据流对应的借出带宽,判断第一数据流是否有借出带宽。
分配模块8033,用于根据对借出带宽的判断结果为第一数据流分配带宽。
一方面,如图11所示,该分配模块8033可以包括:
第一获取子模块80331,用于若第一数据流上有借出带宽,则在带宽周转信息库中获取第一数据流对应的借出数据流的标识。
第二获取子模块80332,用于根据多条数据流中每条数据流与入口交换机的对应关系,获取借出数据流对应的入口交换机的标识;
生成子模块80333,用于根据第一数据流对应的借出带宽生成第一丢包消息。
发送子模块80334,用于根据借出数据流对应的入口交换机的标识,将第一丢包消息发送至借出数据流对应的入口交换机,以便于借出数据流对应的入 口交换机根据第一丢包消息进行丢包。
第一分配子模块80335,用于为第一数据流分配借出带宽。
另一方面,如图12所示,该分配模块8033可以包括:
第三获取子模块80336,用于若第一数据流上没有借出带宽,则在可供借出带宽信息库中获取多条数据流中每条数据流对应的可供借出带宽。
判断子模块80337,用于根据多条数据流中除第一数据流外的其他数据流对应的可供借出带宽,判断其他数据流是否有可供借出带宽。
第二分配子模块80338,用于根据可供借出带宽判断结果为第一数据流分配带宽。
一方面,该第二分配子模块80338具体用于若其他数据流上有可供借出带宽,则根据第一数据流所需带宽和其他数据流对应的可供借出带宽,在其他数据流中选择对应的可供借出带宽大于零的数据流作为第二数据流,为第一数据流分配第二数据流对应的带宽。
另一方面,该第二分配子模块80338具体用于若其他数据流上没有可供借出带宽,则获取多条数据流中每条数据流的优先级;在共享带宽信息树中获取其他数据流对应的带宽;根据第一数据流的优先级、其他数据流的优先级、其他数据流对应的带宽和第一入口交换机上的数据流所需带宽,在其他数据流中选择数据流的优先级低于第一数据流的优先级的数据流作为第三数据流;
根据多条数据流中每条数据流与入口交换机的对应关系,获取第三数据流对应的入口交换机的标识;根据第三数据流对应的带宽,生成第二丢包信息;根据第三数据流对应的入口交换机的标识,将第二丢包消息发送至第三数据流对应的入口交换机,以便于第三数据流对应的入口交换机根据第二丢包消息进行丢包;为第一数据流分配第三数据流对应的带宽。
综上所述,由于本发明实施例提供的一种网络管理设备中,通过检测单元检测第一数据流所需带宽,并由判断单元判断该第一数据流所需带宽是否大于预设带宽值,当该第一数据流所需带宽大于预设带宽值时,由分配单元为该第一数据流分配带宽。该过程中控制器能够直接检测该第一数据流所需带宽并根据该检测结果为该第一数据流分配带宽,无需主交换机生成带宽申请消息来触发控制器对该第一数据流分配带宽,缩短了控制器进行网络管理的时间,提高了控制器在进行网络管理时的效率。
如图13所示,本发明实施例提供了一种网络管理系统130,该网络管理系统130可以包括:网络管理设备1301,该网络管理设备1301可以为图8或图9所示的网络管理设备。
综上所述,由于本发明实施例提供的一种网络管理系统中,通过控制器检测第一数据流所需带宽,并判断该第一数据流所需带宽是否大于预设带宽值,当该第一数据流所需带宽大于预设带宽值时,为该第一数据流分配带宽。该过程中控制器能够直接检测该第一数据流所需带宽并根据该检测结果为该第一数据流分配带宽,无需主交换机生成带宽申请消息来触发控制器对该第一数据流分配带宽,缩短了控制器进行网络管理的时间,提高了控制器在进行网络管理时的效率。
如图14所示,本发明实施例提供了又一种网络管理设备140,该网络管理设备140可以为控制器,该网络管理设备140可以包括:
处理器1401,用于检测第一数据流所需带宽,第一数据流为多条数据流中的任意一条数据流。
处理器1401还用于当第一数据流所需带宽变大时,判断第一数据流所需带宽是否大于预设带宽值。
处理器1401还用于若第一数据流所需带宽大于预设带宽值,为第一数据流分配带宽。
综上所述,由于本发明实施例提供的一种网络管理设备中,通过检测单元检测第一数据流所需带宽,并由判断单元判断该第一数据流所需带宽是否大于预设带宽值,当该第一数据流所需带宽大于预设带宽值时,由分配单元为该第一数据流分配带宽。该过程中控制器能够直接检测该第一数据流所需带宽并根据该检测结果为该第一数据流分配带宽,无需主交换机生成带宽申请消息来触发控制器对该第一数据流分配带宽,缩短了控制器进行网络管理的时间,提高了控制器在进行网络管理时的效率。
如图15所示,本发明实施例提供了再一种网络管理设备140,该网络管理设备140可以为控制器,该网络管理设备140可以包括:
处理器1401,用于检测第一数据流所需带宽,第一数据流为多条数据流中的任意一条数据流。
处理器1401还用于当第一数据流所需带宽变大时,判断第一数据流所需带宽是否大于预设带宽值。
处理器1401还用于若第一数据流所需带宽大于预设带宽值,为第一数据流分配带宽。
处理器1401还用于获取网络管理系统中的网络服务质量QOS配置信息;
处理器1401还用于根据QOS配置信息分别生成共享带宽信息树、带宽周转信息库、多条数据流中每条数据流对应的流表以及多条数据流中每条数据流与入口交换机的对应关系,共享带宽信息树中记录了多条数据流中每条数据流对应的带宽,带宽周转信息库中记录了多条数据流中每条数据流对应的借出带宽和借出数据流的标识,以及多条数据流中每条数据流对应的借入带宽和借入数据流的标识,流表用于指示多条数据流中每条数据流占用的最大带宽;
处理器1401还用于获取多条数据流中每条数据流占用的带宽;
处理器1401还用于根据多条数据流中每条数据流占用的带宽和多条数据流中每条数据流对应的流表,确定多条数据流中每条数据流对应的可供借出带宽;
处理器1401还用于根据多条数据流中每条数据流对应的可供借出带宽,生成可供借出带宽信息库,可供借出带宽信息库中记录了多条数据流中每条数据流对应的可供借出带宽。
综上所述,由于本发明实施例提供的一种网络管理设备中,通过检测单元检测第一数据流所需带宽,并由判断单元判断该第一数据流所需带宽是否大于预设带宽值,当该第一数据流所需带宽大于预设带宽值时,由分配单元为该第一数据流分配带宽。该过程中控制器能够直接检测该第一数据流所需带宽并根据该检测结果为该第一数据流分配带宽,无需主交换机生成带宽申请消息来触发控制器对该第一数据流分配带宽,缩短了控制器进行网络管理的时间,提高了控制器在进行网络管理时的效率。
处理器1401具体用于在带宽周转信息库中获取第一数据流对应的借出带宽;
处理器1401具体还用于根据第一数据流对应的借出带宽,判断第一数据流是否有借出带宽;
处理器1401具体还用于根据对借出带宽的判断结果为第一数据流分配带宽。
处理器1401具体还用于若第一数据流上有借出带宽,则在带宽周转信息库中获取第一数据流对应的借出数据流的标识。
处理器1401具体还用于根据多条数据流中每条数据流与入口交换机的对应关系,获取借出数据流对应的入口交换机的标识
处理器1401具体还用于根据第一数据流对应的借出带宽生成第一丢包消息。
处理器1401具体还用于根据借出数据流对应的入口交换机的标识,将第一丢包消息发送至借出数据流对应的入口交换机,以便于借出数据流对应的入口交换机根据第一丢包消息进行丢包。
处理器1401具体还用于为第一数据流分配借出带宽。
处理器1401具体还用于若第一数据流上没有借出带宽,则在可供借出带宽信息库中获取多条数据流中每条数据流对应的可供借出带宽。
处理器1401具体还用于根据多条数据流中除第一数据流外的其他数据流对应的可供借出带宽,判断其他数据流是否有可供借出带宽。
处理器1401具体还用于根据可供借出带宽判断结果为第一数据流分配带宽。
处理器1401具体还用于若其他数据流上有可供借出带宽,则根据第一数据流所需带宽和其他数据流对应的可供借出带宽,在其他数据流中选择对应的可供借出带宽大于零的数据流作为第二数据流;为第一数据流分配第二数据流对应的带宽。
处理器1401具体还用于若其他数据流上没有可供借出带宽,则获取多条数据流中每条数据流的优先级;在共享带宽信息树中获取其他数据流对应的带宽;根据第一数据流的优先级、其他数据流的优先级、其他数据流对应的带宽和第一入口交换机上的数据流所需带宽,在其他数据流中选择数据流的优先级低于第一数据流的优先级的数据流作为第三数据流;根据多条数据流中每条数据流与入口交换机的对应关系,获取第三数据流对应的入口交换机的标识;根据第三数据流对应的带宽,生成第二丢包信息;根据第三数据流对应的入口交换机的标识,将第二丢包消息发送至第三数据流对应的入口交换机,以便于第三数据流对应的入口交换机根据第二丢包消息进行丢包;为第一数据流分配第三数据流对应的带宽
综上所述,由于本发明实施例提供的一种网络管理设备中,通过检测单元 检测第一数据流所需带宽,并由判断单元判断该第一数据流所需带宽是否大于预设带宽值,当该第一数据流所需带宽大于预设带宽值时,由分配单元为该第一数据流分配带宽。该过程中控制器能够直接检测该第一数据流所需带宽并根据该检测结果为该第一数据流分配带宽,无需主交换机生成带宽申请消息来触发控制器对该第一数据流分配带宽,缩短了控制器进行网络管理的时间,提高了控制器在进行网络管理时的效率。
如图16所示,本发明实施例提供了另一种网络管理系统160,该网络管理系统160可以包括:网络管理设备1601,该网络管理设备1601可以为图14或图15中所示的网络管理设备140。
综上所述,由于本发明实施例提供的一种网络管理系统中,通过网络管理设备检测第一数据流所需带宽,并判断该第一数据流所需带宽是否大于预设带宽值,当该第一数据流所需带宽大于预设带宽值时,为该第一数据流分配带宽。该过程中控制器能够直接检测该第一数据流所需带宽并根据该检测结果为该第一数据流分配带宽,无需主交换机生成带宽申请消息来触发控制器对该第一数据流分配带宽,缩短了控制器进行网络管理的时间,提高了控制器在进行网络管理时的效率。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (15)

  1. 一种网络管理方法,其特征在于,所述网络管理方法用于网络管理系统中的控制器,所述网络管理系统包括所述控制器和多个交换机,所述多个交换机包括主交换机和多个入口交换机,所述多个入口交换机上有多条数据流,所述网络管理方法包括:
    检测第一数据流所需带宽,所述第一数据流为所述多条数据流中的任意一条数据流;
    当所述第一数据流所需带宽变大时,判断所述第一数据流所需带宽是否大于预设带宽值;
    若所述第一数据流所需带宽大于所述预设带宽值,为所述第一数据流分配带宽。
  2. 根据权利要求1所述的网络管理方法,其特征在于,在所述检测第一数据流所需带宽之前,所述网络管理方法还包括:
    获取所述网络管理系统中的网络服务质量QOS配置信息;
    根据所述QOS配置信息分别生成共享带宽信息树、带宽周转信息库、所述多条数据流中每条数据流对应的流表以及所述多条数据流中每条数据流与入口交换机的对应关系,所述共享带宽信息树中记录了所述多条数据流中每条数据流对应的带宽,所述带宽周转信息库中记录了所述多条数据流中每条数据流对应的借出带宽和借出数据流的标识,以及所述多条数据流中每条数据流对应的借入带宽和借入数据流的标识,所述流表用于指示所述多条数据流中每条数据流占用的最大带宽;
    获取所述多条数据流中每条数据流占用的带宽;
    根据所述多条数据流中每条数据流占用的带宽和所述多条数据流中每条数据流对应的流表,确定所述多条数据流中每条数据流对应的可供借出带宽;
    根据所述多条数据流中每条数据流对应的可供借出带宽,生成可供借出带宽信息库,所述可供借出带宽信息库中记录了所述多条数据流中每条数据流对应的可供借出带宽。
  3. 根据权利要求2所述的网络管理方法,其特征在于,所述为所述第一数据流分配带宽,包括:
    在所述带宽周转信息库中获取所述第一数据流对应的借出带宽;
    根据所述第一数据流对应的借出带宽,判断所述第一数据流是否有借出带宽;
    根据对所述借出带宽的判断结果为所述第一数据流分配带宽。
  4. 根据权利要求3所述的网络管理方法,其特征在于,所述根据对所述借出带宽的判断结果为所述第一数据流分配带宽,包括:
    若所述第一数据流上有借出带宽,则在所述带宽周转信息库中获取所述第一数据流对应的借出数据流的标识;
    根据所述多条数据流中每条数据流与入口交换机的对应关系,获取所述借出数据流对应的入口交换机的标识;
    根据所述第一数据流对应的借出带宽生成第一丢包消息;
    根据所述借出数据流对应的入口交换机的标识,将所述第一丢包消息发送至所述借出数据流对应的入口交换机,以便于所述借出数据流对应的入口交换机根据所述第一丢包消息进行丢包;
    为所述第一数据流分配所述借出带宽。
  5. 根据权利要求3所述的网络管理方法,其特征在于,所述根据对所述借出带宽的判断结果为所述第一数据流分配带宽,包括:
    若所述第一数据流上没有借出带宽,则在所述可供借出带宽信息库中获取所述多条数据流中每条数据流对应的可供借出带宽;
    根据所述多条数据流中除所述第一数据流外的其他数据流对应的可供借出带宽,判断所述其他数据流是否有可供借出带宽;
    根据所述可供借出带宽判断结果为所述第一数据流分配带宽。
  6. 根据权利要求5所述的网络管理方法,其特征在于,所述根据所述可供借出带宽判断结果为所述第一数据流分配带宽,包括:
    若所述其他数据流上有可供借出带宽,则根据所述第一数据流所需带宽和所述其他数据流对应的可供借出带宽,在所述其他数据流中选择对应的可供借 出带宽大于零的数据流作为第二数据流;
    为所述第一数据流分配所述第二数据流对应的带宽。
  7. 根据权利要求5所述的网络管理方法,其特征在于,所述根据所述可供借出带宽判断结果为所述第一数据流分配带宽,包括:
    若所述其他数据流上没有可供借出带宽,则获取所述多条数据流中每条数据流的优先级;
    在所述共享带宽信息树中获取所述其他数据流对应的带宽;
    根据所述第一数据流的优先级、所述其他数据流的优先级、所述其他数据流对应的带宽和所述第一入口交换机上的数据流所需带宽,在所述其他数据流中选择数据流的优先级低于所述第一数据流的优先级的数据流作为第三数据流;
    根据所述多条数据流中每条数据流与入口交换机的对应关系,获取所述第三数据流对应的入口交换机的标识;
    根据所述第三数据流对应的带宽,生成第二丢包信息;
    根据所述第三数据流对应的入口交换机的标识,将所述第二丢包消息发送至所述第三数据流对应的入口交换机,以便于所述第三数据流对应的入口交换机根据所述第二丢包消息进行丢包;
    为所述第一数据流分配所述第三数据流对应的带宽。
  8. 一种网络管理设备,其特征在于,所述网络管理设备为控制器,所述网络管理设备包括:
    检测单元,用于检测第一数据流所需带宽,所述第一数据流为所述多条数据流中的任意一条数据流;
    判断单元,用于当所述第一数据流所需带宽变大时,判断所述第一数据流所需带宽是否大于预设带宽值;
    分配单元,用于若所述第一数据流所需带宽大于所述预设带宽值,为所述第一数据流分配带宽。
  9. 根据权利要求8所述的网络管理设备,其特征在于,所述网络管理设备还包括:
    第一获取单元,用于获取所述网络管理系统中的网络服务质量QOS配置信息;
    第一生成单元,用于根据所述QOS配置信息分别生成共享带宽信息树、带宽周转信息库、所述多条数据流中每条数据流对应的流表以及所述多条数据流中每条数据流与入口交换机的对应关系,所述共享带宽信息树中记录了所述多条数据流中每条数据流对应的带宽,所述带宽周转信息库中记录了所述多条数据流中每条数据流对应的借出带宽和借出数据流的标识,以及所述多条数据流中每条数据流对应的借入带宽和借入数据流的标识,所述流表用于指示所述多条数据流中每条数据流占用的最大带宽;
    第二获取单元,用于获取所述多条数据流中每条数据流占用的带宽;
    确定单元,用于根据所述多条数据流中每条数据流占用的带宽和所述多条数据流中每条数据流对应的流表,确定所述多条数据流中每条数据流对应的可供借出带宽;
    第二生成单元,用于根据所述多条数据流中每条数据流对应的可供借出带宽,生成可供借出带宽信息库,所述可供借出带宽信息库中记录了所述多条数据流中每条数据流对应的可供借出带宽。
  10. 根据权利要求9所述的网络管理设备,其特征在于,所述分配单元,包括:
    获取模块,用于在所述带宽周转信息库中获取所述第一数据流对应的借出带宽;
    判断模块,用于根据所述第一数据流对应的借出带宽,判断所述第一数据流是否有借出带宽;
    分配模块,用于根据对所述借出带宽的判断结果为所述第一数据流分配带宽。
  11. 根据权利要求10所述的网络管理设备,其特征在于,所述分配模块,包括:
    第一获取子模块,用于若所述第一数据流上有借出带宽,则在所述带宽周转信息库中获取所述第一数据流对应的借出数据流的标识;
    第二获取子模块,用于根据所述多条数据流中每条数据流与入口交换机的 对应关系,获取所述借出数据流对应的入口交换机的标识;
    生成子模块,用于根据所述第一数据流对应的借出带宽生成第一丢包消息;
    发送子模块,用于根据所述借出数据流对应的入口交换机的标识,将所述第一丢包消息发送至所述借出数据流对应的入口交换机,以便于所述借出数据流对应的入口交换机根据所述第一丢包消息进行丢包;
    第一分配子模块,用于为所述第一数据流分配所述借出带宽。
  12. 根据权利要求10所述的网络管理设备,其特征在于,所述分配模块,包括:
    第三获取子模块,用于若所述第一数据流上没有借出带宽,则在所述可供借出带宽信息库中获取所述多条数据流中每条数据流对应的可供借出带宽;
    判断子模块,用于根据所述多条数据流中除所述第一数据流外的其他数据流对应的可供借出带宽,判断所述其他数据流是否有可供借出带宽;
    第二分配子模块,用于根据所述可供借出带宽判断结果为所述第一数据流分配带宽。
  13. 根据权利要求12所述的网络管理设备,其特征在于,
    所述第二分配子模块具体用于:
    若所述其他数据流上有可供借出带宽,则根据所述第一数据流所需带宽和所述其他数据流对应的可供借出带宽,在所述其他数据流中选择对应的可供借出带宽大于零的数据流作为第二数据流;为所述第一数据流分配所述第二数据流对应的带宽。
  14. 根据权利要求12所述的网络管理设备,其特征在于,
    所述第二分配子模块具体用于:
    若所述其他数据流上没有可供借出带宽,则获取所述多条数据流中每条数据流的优先级;
    在所述共享带宽信息树中获取所述其他数据流对应的带宽;
    根据所述第一数据流的优先级、所述其他数据流的优先级、所述其他数据流对应的带宽和所述第一入口交换机上的数据流所需带宽,在所述其他数据流中选择数据流的优先级低于所述第一数据流的优先级的数据流作为第三数据 流;
    根据所述多条数据流中每条数据流与入口交换机的对应关系,获取所述第三数据流对应的入口交换机的标识;
    根据所述第三数据流对应的带宽,生成第二丢包信息;
    根据所述第三数据流对应的入口交换机的标识,将所述第二丢包消息发送至所述第三数据流对应的入口交换机,以便于所述第三数据流对应的入口交换机根据所述第二丢包消息进行丢包;
    为所述第一数据流分配所述第三数据流对应的带宽。
  15. 一种网络管理系统,其特征在于,所述网络管理系统包括:
    权利要求8至14任一权利要求所述的网络管理设备。
PCT/CN2015/085589 2015-01-27 2015-07-30 网络管理方法、设备及系统 WO2016119422A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US15/661,811 US10476746B2 (en) 2015-01-27 2017-07-27 Network management method, device, and system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201510039724.1 2015-01-27
CN201510039724.1A CN104618157B (zh) 2015-01-27 2015-01-27 网络管理方法、设备及系统

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US15/661,811 Continuation US10476746B2 (en) 2015-01-27 2017-07-27 Network management method, device, and system

Publications (1)

Publication Number Publication Date
WO2016119422A1 true WO2016119422A1 (zh) 2016-08-04

Family

ID=53152448

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2015/085589 WO2016119422A1 (zh) 2015-01-27 2015-07-30 网络管理方法、设备及系统

Country Status (3)

Country Link
US (1) US10476746B2 (zh)
CN (1) CN104618157B (zh)
WO (1) WO2016119422A1 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104618157B (zh) * 2015-01-27 2018-05-18 华为技术有限公司 网络管理方法、设备及系统
CN106332153B (zh) * 2015-06-30 2020-02-14 华为技术有限公司 一种wlan中的带宽控制方法及装置
CN106412628B (zh) * 2015-07-30 2020-07-24 华为技术有限公司 一种带宽调整方法及相关设备
WO2018072154A1 (zh) * 2016-10-19 2018-04-26 华为技术有限公司 检测方法、设备和系统
CN109309629A (zh) * 2017-07-26 2019-02-05 腾讯科技(深圳)有限公司 数据传输方法、数据传输装置及计算机可读存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7154852B1 (en) * 2001-08-30 2006-12-26 Cisco Technology, Inc. Devices, softwares and methods for dynamic bandwidth allocation for ATM connections
CN101106501A (zh) * 2007-06-27 2008-01-16 中兴通讯股份有限公司 一种宽带接入系统中动态带宽调整方法
CN102394822A (zh) * 2011-11-02 2012-03-28 中兴通讯股份有限公司 一种调整网络传输速率的系统和方法
CN103023812A (zh) * 2012-11-23 2013-04-03 上海寰创通信科技股份有限公司 一种多用户带宽均衡配置方法
CN104618157A (zh) * 2015-01-27 2015-05-13 华为技术有限公司 网络管理方法、设备及系统

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7433304B1 (en) * 2002-09-06 2008-10-07 Packeteer, Inc. Classification data structure enabling multi-dimensional network traffic classification and control schemes
EP2341673B1 (en) * 2003-12-30 2012-09-05 Intel Corporation (INTEL) Techniques for guaranteeing bandwith with aggregate traffic
US8631151B2 (en) * 2006-05-18 2014-01-14 Intel Corporation Techniques for guaranteeing bandwidth with aggregate traffic
US7426181B1 (en) * 2004-03-26 2008-09-16 Packeteer, Inc. Slow-start adaptive mechanisms to improve efficiency of bandwidth allocation
CN102710489B (zh) * 2011-03-28 2015-07-29 日电(中国)有限公司 动态分流调度系统和方法
US9191114B2 (en) * 2012-12-14 2015-11-17 Infinera Corporation Quality of service application for different data flow types
US9769074B2 (en) * 2013-03-15 2017-09-19 International Business Machines Corporation Network per-flow rate limiting
US9565112B2 (en) * 2013-11-15 2017-02-07 Broadcom Corporation Load balancing in a link aggregation

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7154852B1 (en) * 2001-08-30 2006-12-26 Cisco Technology, Inc. Devices, softwares and methods for dynamic bandwidth allocation for ATM connections
CN101106501A (zh) * 2007-06-27 2008-01-16 中兴通讯股份有限公司 一种宽带接入系统中动态带宽调整方法
CN102394822A (zh) * 2011-11-02 2012-03-28 中兴通讯股份有限公司 一种调整网络传输速率的系统和方法
CN103023812A (zh) * 2012-11-23 2013-04-03 上海寰创通信科技股份有限公司 一种多用户带宽均衡配置方法
CN104618157A (zh) * 2015-01-27 2015-05-13 华为技术有限公司 网络管理方法、设备及系统

Also Published As

Publication number Publication date
CN104618157A (zh) 2015-05-13
CN104618157B (zh) 2018-05-18
US20170324619A1 (en) 2017-11-09
US10476746B2 (en) 2019-11-12

Similar Documents

Publication Publication Date Title
US11539626B2 (en) Method, apparatus, and system for load balancing of service chain
WO2016119422A1 (zh) 网络管理方法、设备及系统
EP3499815B1 (en) Packet transmission
US11743176B2 (en) Packet processing method and system, and device
WO2015149604A1 (zh) 一种负载均衡方法、装置及系统
CN111478850B (zh) 一种网关调整方法和装置
WO2015101260A1 (zh) 对即时通讯业务进行处理的方法及系统
US11822453B2 (en) Methods and systems for status determination
JP2017507572A (ja) クラウドに基づく仮想オーケストレーターのための方法、システム、およびコンピュータ読取可能な媒体
US9596063B2 (en) Dynamically allocating network resources for communication session
WO2019144846A1 (zh) 一种存储系统、存储资源的分配方法及装置
US10412016B2 (en) Streaming information based on available bandwidth
WO2020181735A1 (zh) 一种提供网络地址转换nat服务的方法及控制器
US20200351186A1 (en) Systems and methods for determining network component scores using bandwidth capacity
CN105897542B (zh) 一种隧道建立方法及视频监控系统
CN110839142B (zh) 监控目录的共享方法和装置
WO2017054469A1 (zh) 数据流的镜像处理方法及装置
US11411802B2 (en) Determining the impact of network events on network applications
WO2023179786A1 (zh) 网络地址转换网关的扩容方法、设备及存储介质
US10594631B1 (en) Methods and apparatus for memory resource management in a network device
EP3523928B1 (en) Method and system for managing control connections with a distributed control plane
WO2022267458A1 (zh) 负载均衡方法、装置、设备及存储介质
CN106453118B (zh) 一种流量控制方法及流量控制系统
WO2015074258A1 (zh) 一种控制业务数据在虚拟网络中转发的方法、装置及系统
CN117880184A (zh) 云网络的组播转发方法、装置、计算机设备及存储介质

Legal Events

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

Ref document number: 15879621

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 15879621

Country of ref document: EP

Kind code of ref document: A1