WO2019174424A1 - 链路容量调整方法及装置、系统、控制器、网络节点 - Google Patents

链路容量调整方法及装置、系统、控制器、网络节点 Download PDF

Info

Publication number
WO2019174424A1
WO2019174424A1 PCT/CN2019/073697 CN2019073697W WO2019174424A1 WO 2019174424 A1 WO2019174424 A1 WO 2019174424A1 CN 2019073697 W CN2019073697 W CN 2019073697W WO 2019174424 A1 WO2019174424 A1 WO 2019174424A1
Authority
WO
WIPO (PCT)
Prior art keywords
node
adjustment
capacity
link
message
Prior art date
Application number
PCT/CN2019/073697
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 WO2019174424A1 publication Critical patent/WO2019174424A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/10Flow control between communication endpoints
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/16Central resource management; Negotiation of resources or communication parameters, e.g. negotiating bandwidth or QoS [Quality of Service]
    • H04W28/18Negotiating wireless communication parameters
    • H04W28/20Negotiating bandwidth
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/16Central resource management; Negotiation of resources or communication parameters, e.g. negotiating bandwidth or QoS [Quality of Service]
    • H04W28/18Negotiating wireless communication parameters
    • H04W28/22Negotiating communication rate

Definitions

  • the present invention relates to the field of wireless communications, and in particular, to an end-to-end link capacity adjustment method and device, system, controller, network node, and storage medium in a flexible Ethernet (FlexE) network.
  • FlexE flexible Ethernet
  • FlexE technology was launched in March 2015 by the International Organization for Standardization (ISO) Optical Internetworking Forum (OIF) and officially voted through the relevant technical documents in March 2016.
  • FlexE technology provides a common mechanism for transmitting a series of services with different Media Access Control (MAC) rates. For example, it can transmit a single MAC rate and a small MAC service. The set of transmitted services is no longer limited to a single MAC rate service.
  • ISO International Organization for Standardization
  • OFIF Optical Internetworking Forum
  • FlexE has a layer (FlexE Shim) between the MAC layer and the Physical Coding Sublayer (PCS).
  • the function of the layer is to build a size of 20 ⁇ n 66b block calendar (Calendar), n is the number of bonded Ethernet physical interfaces (PHY), each 66b block represents a 5G time slot.
  • services of different MAC rates are loaded into a corresponding number of 66b blocks according to a multiple relationship with 5G.
  • Each 20 66b blocks constitute a sub-Calendar, and the size of 20 ⁇ n 66b blocks is distributed to n sub-Calendars.
  • a 66b block overhead is added for every 20 ⁇ 1023 66b blocks.
  • the overhead of a 66b block is also called an overhead block.
  • the overhead block is used to store related mapping relationships, such as customer service and time slot. A mapping relationship in which each sub-Calendar is transmitted in a single 100G Ethernet PHY.
  • n sub-Calendars form a Calendar of size 20 ⁇ n 66b blocks, and corresponding customer services are extracted from the corresponding number of 66b blocks according to the mapping relationship stored in the overhead block.
  • an overhead field includes 8 overhead blocks, each of which is 66b. Each time a group of 20 ⁇ 1023 66b blocks is transmitted, an overhead block is transmitted, so that It takes 8 passes to pass an overhead field.
  • the two fields of Client Calendar A and Client Calendar B indicate the time slot configuration of the two calendars, only one time slot can be configured for each transmission of the overhead field. If all the time slot configurations are transmitted, It is necessary to transmit an overhead field that is greater than or equal to the number of slots, such as 32 overhead fields.
  • FIG. 1 which calendar (Client Calendar A or Client Calendar B) is currently used is identified by the C field.
  • the C field will appear three times in the overhead field, each time is 1 bit, and the value of the C field is only 0 or 1.
  • the C field should be the same; but if there is an abnormal situation, for example, the C field takes 0 times and 1 time, then the majority decision is required.
  • the way to determine the value of the C field A value of 0 for the C field indicates that Client Calendar A is currently used, and a value of 1 for the C field indicates that Client Calendar B is currently used.
  • Different Client Calendars represent different time slot configurations (ie, capacity).
  • FlexE wants to perform calendar switching (that is, capacity adjustment), for example, from the current Client Calendar A to Client Calendar B, then the node and the remote node need to negotiate through the two fields CR and CA in the overhead field.
  • CR denotes a calendar switch request
  • CA denotes a calendar switch Acknowledge.
  • This node sets the value of CR in the overhead field to 1.
  • the remote node receives it and completes the corresponding preparation, the value of CA in the Flexe overhead is set to 1.
  • the node sets the value of the C field to 1 in the overhead field of the next Flexe frame, indicating that the slot configuration of Client Calendar B is officially started.
  • the embodiment of the present application provides a link capacity adjustment method and device, system, controller, network node, and storage medium.
  • the determining an adjustment policy corresponding to the link, according to the original capacity of the link and the target capacity to be adjusted includes:
  • the method further includes:
  • the capacity enlargement policy is used to indicate that each node in the link performs the following operations:
  • the schedule switching request CR message is sent to the next hop node
  • the target node is a tail node; if the target node is not a tail node, the CR message is not returned to the status flag, and the CR message is sent to the next hop node; if the target node is the tail node, the up hop node Reply to the calendar switch confirmation CA message;
  • the target node is the first node; if the target node is not the first node, the capacity adjustment effective command is sent to the next hop node, the CA message is replied to the up hop node, and the CR message is not replied to the status flag; The node is the first node, and the capacity adjustment effective command is sent to the next hop node;
  • the next hop node and the last hop node are determined based on an adjustment path corresponding to the link.
  • the capacity reduction policy is used to indicate that each node in the link performs the following operations:
  • the CR message is sent to the next hop node
  • the CA message is sent to the upper hop node, and it is determined whether the target node is a tail node; if the target node is not a tail node, the CR message is sent to the next hop node;
  • the next hop node and the last hop node are determined based on an adjustment path corresponding to the link.
  • the adjustment information includes an adjustment path and an adjustment policy corresponding to the link
  • the capacity adjustment is performed on the target node based on the adjustment path corresponding to the link and the adjustment policy.
  • the adjustment policy is a capacity adjustment strategy
  • Performing capacity adjustment on the target node based on the adjustment path corresponding to the link and the adjustment policy including:
  • the CR message is sent to the next hop node
  • the target node is a tail node; if the target node is not a tail node, the CR message is not returned to the status flag, and the CR message is sent to the next hop node; if the target node is the tail node, the up hop node Reply to the CA message;
  • the target node is the first node; if the target node is not the first node, the capacity adjustment effective command is sent to the next hop node, the CA message is replied to the up hop node, and the CR message is not replied to the status flag; The node is the first node, and the capacity adjustment effective command is sent to the next hop node;
  • the next hop node and the last hop node are determined based on an adjustment path corresponding to the link.
  • the method further includes:
  • the next hop node sends a capacity adjustment effective command, and then sends an adjustment success message to the controller.
  • the adjustment policy is a capacity reduction strategy
  • Performing capacity adjustment on the target node based on the adjustment path corresponding to the link and the adjustment policy including:
  • the CR message is sent to the next hop node
  • the CA message is sent to the upper hop node, and it is determined whether the target node is a tail node; if the target node is not a tail node, the CR message is sent to the next hop node;
  • the next hop node and the last hop node are determined based on an adjustment path corresponding to the link.
  • the method further includes:
  • an adjustment success message is sent to the controller.
  • the method further includes:
  • the service data of the receiving side of the target node and the service data of the transmitting side are subjected to data cross processing.
  • the method further includes:
  • the receiving side is The service data and the service data on the transmitting side are rate matched.
  • the rate matching processing is performed on the service data of the receiving side and the service data of the sending side, including:
  • the rate of the service data of the receiving side is adjusted to be consistent with the rate of the service data of the sending side, where the rate of the service data of the receiving side is smaller than the rate of the service data of the sending side.
  • the adjusting the rate of the service data on the receiving side to be consistent with the rate of the service data on the sending side includes:
  • a data packet of the service data of the receiving side is inserted into the data packet, so that the rate of the service data of the receiving side is adapted to the rate of the service data of the sending side;
  • a free block is inserted between adjacent data packets, so that the rate of the service data of the receiving side is adapted to the rate of the service data of the transmitting side.
  • a first determining unit configured to determine, according to a service flow direction on the link, an adjustment path corresponding to the link, where the adjustment path indicates an adjustment order of each node in the link;
  • a second determining unit configured to determine an adjustment policy corresponding to the link, based on an original capacity of the link and a target capacity to be adjusted
  • a sending unit configured to send an adjustment path corresponding to the link and the adjustment policy to each node in the link
  • the triggering unit is configured to send an adjustment notification message to the first node to trigger each node in the link to perform capacity adjustment based on the adjustment path and the adjustment policy, where the first node determines based on the adjustment path.
  • the second determining unit is configured to determine that the adjustment policy corresponding to the link is a capacity enlargement policy if the original capacity is smaller than the target capacity; if the original capacity is greater than the The target capacity determines that the adjustment policy corresponding to the link is a capacity reduction policy.
  • the device further includes:
  • An acquiring unit configured to acquire remaining capacity of each node in the link
  • a determining unit configured to determine whether a remaining capacity of each node in the link is greater than or equal to a difference between the target capacity and the original capacity
  • the triggering unit is configured to perform the step of sending an adjustment notification message to the head node if the remaining capacity of each node in the link is greater than or equal to a difference between the target capacity and the original capacity;
  • the capacity enlargement policy is used to indicate that each node in the link performs the following operations:
  • the CR message is sent to the next hop node
  • the target node is a tail node; if the target node is not a tail node, the CR message is not returned to the status flag, and the CR message is sent to the next hop node; if the target node is the tail node, the up hop node Reply to the CA message;
  • the target node is the first node; if the target node is not the first node, the capacity adjustment effective command is sent to the next hop node, the CA message is replied to the up hop node, and the CR message is not replied to the status flag; The node is the first node, and the capacity adjustment effective command is sent to the next hop node;
  • the next hop node and the last hop node are determined based on an adjustment path corresponding to the link.
  • the capacity reduction policy is used to indicate that each node in the link performs the following operations:
  • the CR message is sent to the next hop node
  • the CA message is sent to the upper hop node, and it is determined whether the target node is a tail node; if the target node is not a tail node, the CR message is sent to the next hop node;
  • the next hop node and the last hop node are determined based on an adjustment path corresponding to the link.
  • An obtaining unit configured to obtain adjustment information, where the adjustment information includes an adjustment path and an adjustment policy corresponding to the link;
  • the adjusting unit is configured to perform capacity adjustment on the target node based on the adjustment path corresponding to the link and the adjustment policy.
  • the adjustment policy is a capacity adjustment strategy
  • the adjusting unit is configured to: if the adjustment notification message is received, send a CR message to the next hop node;
  • the target node is a tail node; if the target node is not a tail node, the CR message is not returned to the status flag, and the CR message is sent to the next hop node; if the target node is the tail node, the up hop node Reply to the CA message;
  • the target node is the first node; if the target node is not the first node, the capacity adjustment effective command is sent to the next hop node, the CA message is replied to the up hop node, and the CR message is not replied to the status flag; The node is the first node, and the capacity adjustment effective command is sent to the next hop node;
  • the next hop node and the last hop node are determined based on an adjustment path corresponding to the link.
  • the device further includes:
  • the notification unit is configured to: if the adjustment unit receives the CA message, and the target node is the first node, send the adjustment success message to the controller after the adjustment unit sends the capacity adjustment effective instruction to the next hop node.
  • the adjustment policy is a capacity reduction strategy
  • the adjusting unit is configured to: if the adjustment notification message is received, send a CR message to the next hop node;
  • the CA message is sent to the upper hop node, and it is determined whether the target node is a tail node; if the target node is not a tail node, the CR message is sent to the next hop node;
  • the next hop node and the last hop node are determined based on an adjustment path corresponding to the link.
  • the device further includes:
  • the notification unit is configured to send an adjustment success message to the controller if the adjustment unit receives the capacity adjustment effective instruction and the target node is a tail node.
  • the device further includes:
  • the cross processing unit is configured to perform data cross processing on the service data of the receiving side of the target node and the service data of the transmitting side if the target node is not the first node and is not the tail node.
  • the cross processing unit is further configured to: if the unidirectional capacity adjustment of the target node is successful, and the upstream capacity bandwidth and the downstream capacity bandwidth are inconsistent, the service data and the sending side of the receiving side are When the service data is subjected to data cross processing, rate matching processing is performed on the service data on the receiving side and the service data on the transmitting side.
  • the cross processing unit is configured to adjust the rate of the service data on the receiving side to be consistent with the rate of the service data on the sending side, where the rate of the service data on the receiving side is smaller than The rate of the service data on the transmitting side.
  • the cross processing unit is configured to insert a free block in the data packet for the data packet of the service data of the receiving side, so that the rate of the service data of the receiving side is adapted to Rate of the service data of the transmitting side; or, for the data packet of the service data of the receiving side, insert a free block between adjacent data packets, so that the rate of the service data of the receiving side is adapted to the The rate of the service data on the transmitting side.
  • the controller provided in the embodiment of the present application includes the link capacity adjustment device described above.
  • the network node provided by the embodiment of the present application includes the link capacity adjustment device described above.
  • the link capacity adjustment system provided by the embodiment of the present application includes the foregoing controller, and at least two network nodes, where
  • the controller is connected to each of the network nodes, and each of the network nodes establishes a data channel according to a service flow direction.
  • the storage medium provided by the embodiment of the present application has a computer program stored thereon, and when the computer program is executed by the processor, the steps in the link capacity adjustment method described above are implemented.
  • the adjustment path corresponding to the link is determined based on the service flow direction on the link, where the adjustment path indicates an adjustment sequence of each node in the link; a capacity and a target capacity to be adjusted, determining an adjustment policy corresponding to the link; transmitting an adjustment path corresponding to the link and the adjustment policy to each node in the link; and sending an adjustment notification message to the first node Determining, by the nodes in the link, capacity adjustment based on the adjustment path and the adjustment policy, wherein the head node determines based on the adjustment path.
  • the controller controls the nodes in the link, and provides an optimal adjustment strategy and an adjustment sequence according to the original capacity of the link, the target capacity to be adjusted, and the service flow direction.
  • a fast, low latency, low cost, lossless link capacity adjustment (ie, calendar switching) scheme is implemented between multiple nodes.
  • Figure 1 is a schematic diagram of a FlexE overhead field
  • FIG. 2 is a schematic flowchart 1 of a link capacity adjustment method according to an embodiment of the present application
  • FIG. 3 is a schematic flowchart 2 of a link capacity adjustment method according to an embodiment of the present application.
  • FIG. 4 is a schematic flowchart 3 of a link capacity adjustment method according to an embodiment of the present application.
  • FIG. 5 is a schematic diagram of a format of inserting an idle block based on rate matching
  • FIG. 6 is a schematic flowchart of an increase in link capacity according to an embodiment of the present application.
  • FIG. 7 is a schematic flowchart of link capacity reduction according to an embodiment of the present application.
  • FIG. 8 is a schematic diagram of a method for increasing a time slot according to an embodiment of the present application.
  • FIG. 9 is a schematic diagram 1 of a method for increasing a time slot according to an embodiment of the present application.
  • FIG. 10 is a second schematic diagram of the failure of adding a time slot according to an embodiment of the present application.
  • FIG. 11 is a schematic diagram of the success of deleting a time slot according to an embodiment of the present application.
  • FIG. 12 is a schematic diagram of a failure of deleting a time slot according to an embodiment of the present application.
  • FIG. 13 is two modes of rate matching according to an embodiment of the present application.
  • FIG. 14 is a first schematic structural diagram of a link capacity adjusting apparatus according to an embodiment of the present application.
  • 15 is a second structural diagram of a link capacity adjustment apparatus according to an embodiment of the present application.
  • FIG. 16 is a schematic structural diagram of a link capacity adjustment system according to an embodiment of the present application.
  • FIG. 2 is a schematic flowchart of a link capacity adjustment method according to an embodiment of the present disclosure. The embodiment is applied to a controller. As shown in FIG. 2, the link capacity adjustment method includes the following steps:
  • Step 201 Determine an adjustment path corresponding to the link based on a service flow direction on the link, where the adjustment path indicates an adjustment order of each node in the link.
  • the network provides a controller for determining how to perform link capacity adjustment.
  • the controller can be a standalone controller or integrated into the network management function component.
  • the controller manages all network nodes (also referred to as nodes) and senses the status of each node in real time, such as the capacity usage of each node (used capacity, free capacity), the number of ports of each node, and so on.
  • all the affected nodes are calculated according to the requirements of the current link adjustment, and then an adjustment order and an adjustment policy that satisfy the lossless service are provided.
  • the controller obtains a link capacity adjustment instruction for indicating that the original capacity of the link is adjusted to the target capacity.
  • the original capacity is the current capacity of the link
  • the target capacity is the capacity that the link needs to adjust.
  • the capacity of the link refers to the bandwidth of the link.
  • the capacity of the link is the time slot of the link. It should be understood that the bandwidth on the same link is the same when the link is stable. For example, node 1, node 2, and node 3 are on the same link, then node 1, node 2, node 3, corresponding to the bandwidth on the link, that is, the capacity is the same.
  • time slots the slots used between the nodes are corresponding. For example, the transmitting side of node 1 uses slot1 and slot2, then the receiving side of node 2 also uses slot1 and slot2, and the transmitting side of node 2 uses slot5 and slot6, then the node The receiving side of 3 also uses slot 5 and slot 6.
  • node 1, node 2 and node 3 on the link are both time slots. It is worth noting that, because the time slots used by the same node on the transmitting side and the receiving side are different, data cross-processing needs to be performed on the data on the transmitting side and the data on the receiving side. For example, in node 2, node 1 is in slot 1 on the receiving side. And slot2 needs to be mapped to slot 5 and slot 6 on the transmitting side.
  • the adjustment path corresponding to the link is determined based on the service flow direction on the link.
  • the link includes the following nodes: node 1, node 2, node 3, node 4, node 5, and the service flow direction is: node 4 ⁇ node 1 ⁇ node 3 ⁇ node 2 ⁇ node 5, then the adjustment order is also: node 4 ⁇ Node 1 ⁇ Node 3 ⁇ Node 2 ⁇ Node 5.
  • Step 202 Determine an adjustment policy corresponding to the link, based on an original capacity of the link and a target capacity to be adjusted.
  • the adjustment policy corresponding to the link is a capacity enlargement policy; if the original capacity is greater than the target capacity, determining the link
  • the corresponding adjustment strategy is the capacity reduction strategy.
  • the corresponding adjustment strategy is the capacity reduction strategy.
  • the corresponding adjustment strategy is the capacity expansion strategy.
  • Step 203 Send the adjustment path corresponding to the link and the adjustment policy to each node in the link.
  • each node may determine a relative node according to the adjustment path (hereinafter collectively referred to as a target node).
  • the previous hop node and the next hop node it should be understood that it is also possible to determine whether the node is a head node or a tail node, or an intermediate node.
  • Each node can implement the corresponding adjustment operation according to the adjustment strategy.
  • Step 204 Send an adjustment notification message to the head node to trigger each node in the link to perform capacity adjustment based on the adjustment path and the adjustment policy, where the head node determines based on the adjustment path.
  • the adjustment policy is a capacity expansion policy, acquiring remaining capacity of each node in the link; determining whether a remaining capacity of each node in the link is greater than or equal to the target capacity and location Determining a difference between the original capacity; if the remaining capacity of each node in the link is greater than or equal to a difference between the target capacity and the original capacity, performing the step of sending an adjustment notification message to the head node.
  • the adjustment policy is a capacity reduction policy
  • the step of sending an adjustment notification message to the head node may be directly performed; if the remaining capacity of each node in the link is smaller than the target capacity and the original capacity If the difference is not performed, the adjustment operation will not be performed.
  • the capacity enlargement policy is used to indicate that each node in the link performs the following operations:
  • the CR message is sent to the next hop node
  • the target node is a tail node; if the target node is not a tail node, the CR message is not returned to the status flag, and the CR message is sent to the next hop node; if the target node is the tail node, the up hop node Reply to the CA message;
  • the target node is the first node; if the target node is not the first node, the capacity adjustment effective command is sent to the next hop node, the CA message is replied to the up hop node, and the CR message is not replied to the status flag; The node is the first node, and the capacity adjustment effective command is sent to the next hop node;
  • the next hop node and the last hop node are determined based on an adjustment path corresponding to the link.
  • the CR message is a CR in the FlexE
  • the CA message is a CA in the FlexE
  • the capacity adjustment effective instruction is a C field in the FlexE (that is, a C bit in the overhead field).
  • the CR is sent to the next hop node
  • the CR is received, it is determined whether the node is a tail node; if the node is not a tail node, the CR is not returned to the status flag, and the CR is sent to the next hop node; if the node is a tail node, the node is replied to the upper hop node;
  • the CA is received, it is determined whether the node is the first node; if the node is not the first node, the C-field data (C bit) is sent to the next-hop node, and the CA is replied to the up-hop node and cancels the CR non-return status flag; The node is the first node, and the C field data is sent to the next hop node.
  • the capacity reduction policy is used to indicate that each node in the link performs the following operations:
  • the CR message is sent to the next hop node
  • the CA message is sent to the upper hop node, and it is determined whether the target node is a tail node; if the target node is not a tail node, the CR message is sent to the next hop node;
  • the next hop node and the last hop node are determined based on an adjustment path corresponding to the link.
  • the CR message is a CR in the FlexE
  • the CA message is a CA
  • the capacity adjustment effective command is a C field (that is, a C bit in the overhead field).
  • the CR is sent to the next hop node
  • the CA is sent to the upper hop node, and it is determined whether the node is a tail node; if the node is not a tail node, the CR is sent to the next hop node;
  • the C field data is sent to the next hop node.
  • the target node refers to a node that is undergoing capacity adjustment in the link, and the target node is referred to as the local node, the next hop node refers to the next hop node of the local node, and the previous hop node refers to the local node.
  • the last hop node refers to a node that is undergoing capacity adjustment in the link.
  • the link capacity adjustment can be implemented by switching the calendar, for example, the current node uses the first calendar (eg, the primary calendar) ), you need to switch to the second calendar (such as the alternate calendar).
  • the controller defines the switching sequence according to the service direction: the first node, the second node, the ..., the Nth node, the second tail node, and the tail node; and the capacity adjustment is performed hop by hop by notifying the first node to perform the cluster switching.
  • FIG. 3 is a schematic flowchart of a link capacity adjustment method according to an embodiment of the present disclosure. The embodiment is applied to a network node. As shown in FIG. 3, the link capacity adjustment method includes the following steps:
  • Step 301 Acquire adjustment information, where the adjustment information includes an adjustment path and an adjustment policy corresponding to the link.
  • Step 302 Perform capacity adjustment on the target node based on the adjustment path corresponding to the link and the adjustment policy.
  • the adjustment policy is a capacity adjustment policy; correspondingly, the capacity adjustment is performed on the target node based on the adjustment path corresponding to the link and the adjustment policy, including:
  • the CR message is sent to the next hop node
  • the target node is a tail node; if the target node is not a tail node, the CR message is not returned to the status flag, and the CR message is sent to the next hop node; if the target node is the tail node, the up hop node Reply to the CA message;
  • the target node is the first node; if the target node is not the first node, the capacity adjustment effective command is sent to the next hop node, the CA message is replied to the up hop node, and the CR message is not replied to the status flag; The node is the first node, and the capacity adjustment effective command is sent to the next hop node;
  • the next hop node and the last hop node are determined based on an adjustment path corresponding to the link.
  • the CR message is a CR in the FlexE
  • the CA message is a CA
  • the capacity adjustment effective command is a C field (that is, a C bit in the overhead field).
  • the CR is sent to the next hop node
  • the CR is received, it is determined whether the node is a tail node; if the node is not a tail node, the CR is not returned to the status flag, and the CR is sent to the next hop node; if the node is a tail node, the node is replied to the upper hop node;
  • the CA is received, it is determined whether the node is the first node; if the node is not the first node, the C-field data is sent to the next-hop node, the CA is returned to the upper-hop node, and the CR non-return status flag is cancelled; if the node is the first node , the C field data is sent to the next hop node.
  • an adjustment success message is sent to the controller.
  • the adjustment policy is a capacity reduction policy; correspondingly, the capacity adjustment is performed on the target node based on the adjustment path corresponding to the link and the adjustment policy, including:
  • the CR message is sent to the next hop node
  • the CA message is sent to the upper hop node, and it is determined whether the target node is a tail node; if the target node is not a tail node, the CR message is sent to the next hop node;
  • the next hop node and the last hop node are determined based on an adjustment path corresponding to the link.
  • the CR message is a CR in the FlexE
  • the CA message is a CA
  • the capacity adjustment effective command is a C field (that is, a C bit in the overhead field).
  • the CR is sent to the next hop node
  • the CA is sent to the upper hop node, and it is determined whether the node is a tail node; if the node is not a tail node, the CR is sent to the next hop node;
  • the C field data is sent to the next hop node.
  • the service data of the receiving side of the target node and the service data of the transmitting side are subjected to data cross processing.
  • the target node unidirectional time slot adjustment is successful, and the upstream time slot bandwidth and the downstream time slot bandwidth are inconsistent (that is, the local node receives the C field data and does not send the C field data, or the local node sends If the C field data is not received and the C field data is not received, the rate of the service data of the receiving side and the service data of the transmitting side are performed when data processing is performed on the service data of the receiving side and the service data of the transmitting side. Match processing.
  • the rate matching processing is performed on the service data of the receiving side and the service data of the sending side, including:
  • the rate of the service data of the receiving side is adjusted to be consistent with the rate of the service data of the sending side, where the rate of the service data of the receiving side is smaller than the rate of the service data of the sending side.
  • a data packet of the service data of the receiving side is inserted into the data packet, so that the rate of the service data of the receiving side is adapted to the rate of the service data of the sending side;
  • a free block is inserted between adjacent data packets, so that the rate of the service data of the receiving side is adapted to the rate of the service data of the transmitting side.
  • the target node refers to a node that is undergoing capacity adjustment in the link, and the target node is referred to as the local node, the next hop node refers to the next hop node of the local node, and the previous hop node refers to the local node.
  • the last hop node refers to a node that is undergoing capacity adjustment in the link.
  • FIG. 4 is a schematic flowchart 3 of a method for adjusting a link capacity according to an embodiment of the present disclosure. As shown in FIG. 4, the method for adjusting a link capacity includes the following steps:
  • Step 401 The controller acquires configuration information of each node.
  • Step 402 The controller obtains a link capacity adjustment instruction. If the time slot is increased, step 403 is performed, and if the time slot is deleted, step 417 is performed.
  • Step 403 Determine whether the idle time slot of each node is sufficient; if not, execute step 404, and if yes, execute step 405.
  • Step 404 Determine that the adjustment fails, and report an adjustment failure message to the controller.
  • Step 405 According to the service flow direction, the CR is initiated by the first node; and steps 406 and 409 are performed simultaneously.
  • Step 406 The head node timer determines whether it times out; if not, step 407 is performed; if yes, step 408 is performed.
  • Step 407 Waiting for the specified period, step 406 is performed.
  • Step 408 Determine that the adjustment fails, and report an adjustment failure message to the controller.
  • Step 409 The node that receives the CR determines whether it is a tail node; if not, step 410 is performed; if yes, step 411 is performed.
  • Step 410 The node continues to send the CR to the next hop node, and step 409 is performed.
  • Step 411 The tail node replies to the CA to the next hop node.
  • Step 412 Receive the node of the CA, and return the C bit to the next hop node.
  • Step 413 Determine whether the node that sends the C bit is the first node; if yes, go to step 414; otherwise, go to step 415.
  • Step 414 Cancel the first node timer, determine that the adjustment is successful, and report the adjustment success message to the controller.
  • Step 415 The receiving side service data and the sending side service data perform data crossover, and rate matching.
  • Step 416 Send the CA to the upper hop node, and perform step 412.
  • Step 417 According to the traffic flow, the CR is initiated by the first node; and step 418 and step 421 are performed simultaneously.
  • Step 418 The tail node timer determines whether it times out. Otherwise, step 419 is performed; if yes, step 410 is performed.
  • Step 419 Wait for the specified period, and execute step 418.
  • Step 420 Determine that the adjustment fails, and report an adjustment failure message to the controller.
  • Step 421 Receive the node of the CR, reply to the CA; perform step 422 and step 425 simultaneously.
  • Step 422 It is determined whether the node that receives the CR is a tail node. If yes, step 423 is performed; otherwise, step 424 is performed.
  • Step 423 The node does not need to send the CR to the next hop node.
  • Step 424 The node continues to send the CR to the next hop node, and step 421 is performed.
  • Step 425 The node that receives the CA sends a C bit to the next hop node.
  • Step 426 It is determined whether the node receiving the C bit is a tail node. If yes, step 427 is performed; otherwise, step 428 is performed.
  • Step 427 Cancel the tail node timer, determine that the adjustment is successful, and report the adjustment success message to the controller.
  • Step 428 The receiving side service data and the sending side service data perform data crossover, and rate matching.
  • the CR is first sent from the first node, and after the second node receives the CR, if the node is not the tail node, the CR is recorded.
  • the status flag is not returned, and the CR is sent to its next hop node; until the tail node receives the CR, the tail node receives the CR, determines that the node is the tail node, replies to the CA, and no longer needs the next hop node.
  • the loopback CA is received by the tail node, and the tail node starts to send the C field (C bit) switch, and continues to reply to the CA of its previous hop node according to the previous record of the CR non-return status flag.
  • the CR non-return status flag is cancelled.
  • the time slots of the tail node and the tail node are added first; the flow is sequentially performed until the first node receives the CA sent back by the second node, and the first node judges that it is the first node, and then no longer needs to go up.
  • the hop node sends back the CA, sends the C field to the second node, and the end-to-end time slot is added.
  • the first node returns the result to the controller, and the controller updates the network node time slot usage. .
  • the CR is first sent from the first node, and the second node receives the CR and then replies to the CA.
  • the first node After receiving the CA replied by the second node, the first node sends a C field to the second node.
  • the time slot of the node and the second head node is deleted first; the second node determines whether it is a tail node, and if the non-tail node continues to send CR to its next hop node; the process is followed until the tail node receives the next tail node to send CR; the tail node judges itself as the tail node, replies to the CA and no longer needs to send the CR to the next hop node.
  • the tail node After receiving the CA sent by the tail node, the tail node sends the C field to the tail node, and the end-to-end time slot is completed. Delete; after the flow is completed hop by hop, the tail node returns the result to the controller according to the received C field, and the controller updates the network node time slot usage status.
  • FIG. 6 is a schematic flowchart of a link capacity increase according to an embodiment of the present application. As shown in FIG. 6, the method includes the following steps:
  • Step 601 The controller sends a notification message of the link increase time slot to the head node.
  • Step 602 The first node sends a CR to the next hop node; and steps 603 and 606 are performed at the same time.
  • Step 603 The head node timer determines whether it times out. Otherwise, step 604 is performed. If yes, step 605 is performed.
  • Step 604 Waiting for the specified period, and performing step 603.
  • Step 605 Determine that the adjustment fails, and report an adjustment failure message to the controller.
  • Step 606 The node receives the message and determines according to the type of the node. If it is the first node, step 607 is performed; if it is the intermediate node, step 610 is performed, and if it is the tail node, step 614 is performed.
  • Step 607 Determine the type of the received message. If it is a CA, go to step 608.
  • Step 608 Reply C bit to the next hop node.
  • Step 609 Cancel the first node timer, determine that the adjustment is successful, and report the adjustment success message to the controller.
  • Step 610 Determine the type of the received message. If it is a C bit, go to step 611. If it is a CR, go to step 612. If it is a CA, go to step 613.
  • Step 611 The data exchange and rate matching are performed on the receiving side and the transmitting side, and step 606 is performed.
  • Step 612 Send the CR to the next hop node, and perform step 606.
  • Step 613 Send the CA to the previous hop node, send the C bit to the next hop node, and perform step 606.
  • Step 614 Determine the type of the received message. If it is a CR, go to step 615. If it is a C bit, go to step 616.
  • Step 615 Replying the CA to the previous hop node, and performing step 606.
  • Step 616 Receive side data service time slot adjustment.
  • FIG. 7 is a schematic flowchart of link capacity reduction according to an embodiment of the present application. As shown in FIG. 7, the method includes the following steps:
  • Step 701 The controller sends a notification message of the link deletion time slot to the head node.
  • Step 702 The first node sends a CR to the next hop node; and steps 703 and 706 are performed at the same time.
  • Step 703 The tail node timer determines whether it times out. Otherwise, step 704 is performed. If yes, step 705 is performed.
  • Step 704 Waiting for the specified period, and performing step 703.
  • Step 705 Determine that the adjustment fails, and report an adjustment failure message to the controller.
  • Step 706 The node receives the message and determines according to the type of the node. If it is the first node, step 707 is performed; if it is the intermediate node, step 709 is performed, and if it is the tail node, step 713 is performed.
  • Step 707 Determine the type of the received message. If it is a CA, go to step 708.
  • Step 708 Reply the C bit to the next hop node.
  • Step 709 Determine the type of the received message. If it is a C bit, go to step 710. If it is a CR, go to step 711. If it is a CA, go to step 712.
  • Step 710 The receiving side and the transmitting side perform data crossing and rate matching.
  • Step 711 Replying the CA to the previous hop node, sending the CR to the next hop node, and performing step 706.
  • Step 712 Send the C bit to the next hop node, and perform step 706.
  • Step 713 Determine the type of the received message. If it is a CR, go to step 714. If it is a C bit, go to step 715.
  • Step 714 Replying the CA to the previous hop node, and performing step 706.
  • Step 715 Cancel the timer, determine that the adjustment is successful, and report the adjustment success message to the controller.
  • the network has four nodes PE1, P1, P2, and PE2.
  • Link A's data flows from left to right.
  • the bandwidth of link A was originally configured as 3 slots, and now needs to be adjusted to 4 slots. Since all nodes have enough time slots, the adjustment is finally successful.
  • the specific process is as follows:
  • the controller will first calculate all the affected nodes according to the number of link slots to be adjusted according to the command, and see if there are any remaining slots in the end-to-end link. If the calculated remaining bandwidth of the link is allowed, the link is started. Capacity adjustment.
  • PE1 sends CR to P1; after receiving P1, it sends CR to P2; after receiving P2, it sends CR to PE2;
  • PE2 replies to CA to P2; after receiving P2, it replies to CA to P1 and sends C bit to PE2. After receiving the CA that P2 replies, P1 replies to CA to PE1 and sends C bit to P2.
  • the P2 transmit side service data slot is adjusted to 4 slots. Since the P2 receive side service data is still 3 slots, the P2 receive side service data and the transmit side service data cross data, and the rate is required. Match until the receiving side service data completes the time slot adjustment (that is, wait until the C bit sent by P1 is received);
  • the P1 transmission side service data slot is adjusted to 4 slots. Since the P1 receiving side service data is still 3 slots, the P1 receiving side service data and the transmitting side service data are data-interleaved, and the rate is required. Match until the receiving side service data completes the time slot adjustment (that is, it waits until the C bit sent by PE1 is received);
  • PE1 sends a C bit to P1; the service data slot of the transmitting side of PE1 is adjusted to 4 slots; and the service data slot of the receiving side of P1 is adjusted to 4 slots.
  • the network has four nodes PE1, P1, P2, and PE2.
  • Link A's data flows from left to right.
  • the bandwidth of link A was originally configured as 3 slots, and now needs to be adjusted to 4 slots. Since the P2 node does not have enough time slots, the adjustment finally fails.
  • the specific process is as follows:
  • the controller will first calculate all the affected nodes according to the number of link time slots to be adjusted according to the instruction, and see if there are any remaining time slots in the end-to-end link, and the calculated remaining bandwidth of the link is not allowed, and the adjustment is directly terminated. The adjustment failed last.
  • the network has four nodes PE1, P1, P2, and PE2.
  • Link A's data flows from left to right.
  • the bandwidth of link A was originally configured as 3 slots, and now needs to be adjusted to 4 slots. Due to an abnormality in the P1 node and no response to the CA, PE1 did not receive the CA, and the adjustment failed.
  • the specific process is as follows:
  • the controller will first calculate all the affected nodes according to the number of link slots to be adjusted according to the command, and see if there are any remaining slots in the end-to-end link. If the calculated remaining bandwidth of the link is allowed, the link is started. Capacity adjustment.
  • PE1 sends CR to P1; after receiving P1, it sends CR to P2; after receiving P2, it sends CR to PE2;
  • PE2 replies to CA to P2; after receiving P2, it replies to CA to P1; after receiving P1, it replies to CA to PE1; because of abnormality, P1 node does not reply to CA, so the first node PE1 does not receive it.
  • CA after waiting for a while, the first node PE1 notifies the controller that the adjustment fails.
  • the controller records the information "Adjustment failed”.
  • the network has four nodes PE1, P1, P2, and PE2.
  • Link A's data flows from left to right.
  • the original configuration of link A is 4 slots, and now needs to be adjusted to 3 slots. The adjustment was last successful.
  • the specific process is as follows:
  • the controller will directly initiate the link capacity adjustment according to the instruction
  • PE1 sends a CR to P1; after receiving P1, it replies to CA to PE1 and sends CR to P2;
  • P2 After receiving the CR, P2 replies to CA to P1 and sends CR to PE2.
  • PE2 After receiving the CR, PE2 replies to CA to P2;
  • PE1 After receiving the CA sent by P1, PE1 sends a C bit to P1; the service data slot of the sending side of PE1 is adjusted to 3 slots;
  • P1 receiving side service data slot is adjusted to 3 slots. Since the P1 sending side service data is still 4 slots, P1 receiving side service data and transmitting side service data are used for data crossover. Rate matching is required until the transmission side service data completes the time slot adjustment (that is, it waits until P1 sends a C bit to P2);
  • P1 After P1 receives the CA sent by P2, P1 sends a C bit to P2; P1 sends the service data time slot to 3 slots;
  • the P2 receiving side service data is adjusted to 3 slots. Since the P2 transmitting side service data is still 4 slots, the P2 receiving side service data and the transmitting side service data are data-interleaved, and the rate is required. Match until the transmission side service data completes the time slot adjustment (that is, wait until the P2 is sent to send the C bit to PE2);
  • P2 After P2 receives the CA sent by PE2, P2 sends a C bit to PE2; P2 sends the service data slot of the transmitting side to 3 slots;
  • the PE2 receiving side service data is adjusted to 3 slots.
  • the network has four nodes PE1, P1, P2, and PE2.
  • Link A's data flows from left to right.
  • the original configuration of link A is 4 slots, and now needs to be adjusted to 3 slots. Due to an abnormality in the P2 node, no C bit was sent to PE2, causing the adjustment to fail.
  • the specific process is as follows:
  • the controller will directly initiate the link capacity adjustment according to the instruction
  • the controller records the information "Adjustment failed”.
  • FIG. 14 is a first schematic structural diagram of a link capacity adjustment apparatus according to an embodiment of the present application. As shown in FIG. 14, the apparatus includes:
  • the first determining unit 1401 is configured to determine, according to a service flow direction on the link, an adjustment path corresponding to the link, where the adjustment path indicates an adjustment order of each node in the link;
  • the second determining unit 1402 is configured to determine an adjustment policy corresponding to the link based on an original capacity of the link and a target capacity to be adjusted;
  • the sending unit 1403 is configured to send the adjustment path corresponding to the link and the adjustment policy to each node in the link;
  • the triggering unit 1404 is configured to send an adjustment notification message to the head node to trigger each node in the link to perform capacity adjustment based on the adjustment path and the adjustment policy, where the head node determines based on the adjustment path .
  • the second determining unit 1402 is configured to determine, if the original capacity is smaller than the target capacity, an adjustment policy corresponding to the link as a capacity enlargement policy; if the original capacity is greater than The target capacity is determined, and the adjustment policy corresponding to the link is determined to be a capacity reduction strategy.
  • the device further includes:
  • the obtaining unit 1405 is configured to acquire remaining capacity of each node in the link
  • the determining unit 1406 is configured to determine whether a remaining capacity of each node in the link is greater than or equal to a difference between the target capacity and the original capacity;
  • the triggering unit 1404 is configured to perform the step of sending an adjustment notification message to the head node if the remaining capacity of each node in the link is greater than or equal to a difference between the target capacity and the original capacity; If the remaining capacity of each node in the link is smaller than the difference between the target capacity and the original capacity, no adjustment operation is performed.
  • the capacity enlargement policy is used to indicate that each node in the link performs the following operations:
  • the CR message is sent to the next hop node
  • the target node is a tail node; if the target node is not a tail node, the CR message is not returned to the status flag, and the CR message is sent to the next hop node; if the target node is the tail node, the up hop node Reply to the CA message;
  • the target node is the first node; if the target node is not the first node, the capacity adjustment effective command is sent to the next hop node, the CA message is replied to the up hop node, and the CR message is not replied to the status flag; The node is the first node, and the capacity adjustment effective command is sent to the next hop node;
  • the next hop node and the last hop node are determined based on an adjustment path corresponding to the link.
  • the capacity reduction policy is used to indicate that each node in the link performs the following operations:
  • the CR message is sent to the next hop node
  • the CA message is sent to the upper hop node, and it is determined whether the target node is a tail node; if the target node is not a tail node, the CR message is sent to the next hop node;
  • the next hop node and the last hop node are determined based on an adjustment path corresponding to the link.
  • the embodiment of the present application further provides a controller, where the controller includes a processor and a memory, and the memory stores a functional unit as shown in FIG. 14 , and the processor can implement functions of each functional unit.
  • FIG. 15 is a second structural diagram of a link capacity adjustment apparatus according to an embodiment of the present disclosure. As shown in FIG. 15, the apparatus includes:
  • the obtaining unit 1501 is configured to acquire adjustment information, where the adjustment information includes an adjustment path and an adjustment policy corresponding to the link;
  • the adjusting unit 1502 is configured to perform capacity adjustment on the target node based on the adjustment path corresponding to the link and the adjustment policy.
  • the adjustment policy is a capacity adjustment strategy
  • the adjusting unit 1502 is configured to: if the adjustment notification message is received, send a CR message to the next hop node;
  • the target node is a tail node; if the target node is not a tail node, the CR message is not returned to the status flag, and the CR message is sent to the next hop node; if the target node is the tail node, the up hop node Reply to the CA message;
  • the target node is the first node; if the target node is not the first node, the capacity adjustment effective command is sent to the next hop node, the CA message is replied to the up hop node, and the CR message is not replied to the status flag; The node is the first node, and the capacity adjustment effective command is sent to the next hop node;
  • the next hop node and the last hop node are determined based on an adjustment path corresponding to the link.
  • the device further includes:
  • the notification unit 1503 is configured to: if the adjustment unit receives the CA message, and the target node is the first node, send the adjustment success message to the controller after the adjustment unit sends the capacity adjustment effective instruction to the next hop node.
  • the adjustment strategy is a capacity reduction strategy
  • the adjusting unit 1502 is configured to: if the adjustment notification message is received, send a CR message to the next hop node;
  • the CA message is sent to the upper hop node, and it is determined whether the target node is a tail node; if the target node is not a tail node, the CR message is sent to the next hop node;
  • the next hop node and the last hop node are determined based on an adjustment path corresponding to the link.
  • the device further includes:
  • the notification unit 1503 is configured to send an adjustment success message to the controller if the adjustment unit receives the capacity adjustment effective instruction and the target node is a tail node.
  • the device further includes:
  • the cross processing unit 1504 is configured to perform data cross processing on the service data on the receiving side of the target node and the service data on the transmitting side if the target node is not the first node and is not the tail node.
  • the cross processing unit 1504 is further configured to: if the target node unidirectional time slot adjustment is successful, and the upstream time slot bandwidth and the downstream time slot bandwidth are inconsistent, the service on the receiving side is When the data and the service data on the transmitting side perform data cross processing, rate matching processing is performed on the service data on the receiving side and the service data on the transmitting side.
  • the cross processing unit 1504 is configured to adjust the rate of the service data on the receiving side to be consistent with the rate of the service data on the sending side, where the rate of the service data on the receiving side is The rate of the service data that is smaller than the sending side.
  • the cross processing unit 1504 is configured to insert a free block in the data packet for the data packet of the service data of the receiving side, so that the rate of the service data of the receiving side is adapted. Rate of the service data to the transmitting side; or, for the data packet of the service data of the receiving side, insert a free block between adjacent data packets, so that the rate of the service data of the receiving side is adapted to The rate of the service data on the transmitting side.
  • the embodiment of the present application further provides a network node, where the network node includes a processor and a memory, where the function unit shown in FIG. 15 is stored, and the processor can implement the functions of each functional unit.
  • FIG. 16 is a schematic structural diagram of a link capacity adjustment system according to an embodiment of the present disclosure.
  • the link capacity adjustment system includes: a controller 1601, and at least one network node 1602.
  • the controller 1601 is connected to each of the network nodes 1602, and each of the network nodes 1602 establishes a data channel according to a service flow direction;
  • the controller 1601 is configured to determine, according to a service flow direction on the link, an adjustment path corresponding to the link, where the adjustment path indicates an adjustment order of each node in the link; and based on an original capacity and a to-be of the link Adjusting the target capacity, determining an adjustment policy corresponding to the link; transmitting an adjustment path corresponding to the link and the adjustment policy to each node in the link; sending an adjustment notification message to the first node to trigger Each node in the link performs capacity adjustment based on the adjustment path and the adjustment policy, wherein the head node determines based on the adjustment path.
  • the network node 1602 is configured to acquire adjustment information, where the adjustment information includes an adjustment path and an adjustment policy corresponding to the link, and perform capacity adjustment on the target node based on the adjustment path corresponding to the link and the adjustment policy.
  • the adjustment policy is a capacity enlargement policy
  • the network node 1602 is configured to: if the adjustment notification message is received, send a CR message to the next hop node; if the CR message is received, determine the target node Whether it is a tail node; if the target node is not a tail node, the CR message is not replied to the status flag, and the CR message is sent to the next hop node; if the target node is the tail node, the upward hop node replies with the CA message; if the CA message is received; And determining whether the target node is the first node; if the target node is not the first node, sending a capacity adjustment effective instruction to the next hop node, replying the CA message to the up hop node and canceling the CR message non-return status flag; if the target node is the first node, And sending, to the next hop node, a capacity adjustment effective command; wherein the next hop node and the last hop node are determined according to
  • the adjustment policy is a capacity reduction policy
  • the network node 1602 is configured to send a CR message to the next hop node if the adjustment notification message is received, and upward if the CR message is received
  • the hop node sends a CA message and determines whether the target node is a tail node; if the target node is not a tail node, the CR message is sent to the next hop node; if the CA message is received, the next hop node sends a capacity adjustment effective command;
  • the next hop node and the last hop node are determined based on an adjustment path corresponding to the link.
  • embodiments of the present application can be provided as a method, system, or computer program product. Accordingly, the application can take the form of a hardware embodiment, a software embodiment, or an embodiment in combination with software and hardware. Moreover, the application can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage and optical storage, etc.) including computer usable program code.
  • the computer program instructions can also be stored in a computer readable memory that can direct a computer or other programmable data processing device to operate in a particular manner, such that the instructions stored in the computer readable memory produce an article of manufacture comprising the instruction device.
  • the apparatus implements the functions specified in one or more blocks of a flow or a flow and/or block diagram of the flowchart.
  • These computer program instructions can also be loaded onto a computer or other programmable data processing device such that a series of operational steps are performed on a computer or other programmable device to produce computer-implemented processing for execution on a computer or other programmable device.
  • the instructions provide steps for implementing the functions specified in one or more of the flow or in a block or blocks of a flow diagram.
  • the embodiment of the present application further provides a storage medium, where a computer program is stored thereon, and when the computer program is executed by the processor, the steps in the link capacity adjustment method are implemented.

Landscapes

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

Abstract

本申请公开了一种链路容量调整方法及装置、系统、控制器、网络节点、存储介质,所述方法包括:基于链路上的业务流向,确定所述链路对应的调整路径,所述调整路径表示所述链路中各节点的调整顺序;基于所述链路的原容量和待调整的目标容量,确定所述链路对应的调整策略;将所述链路对应的调整路径以及所述调整策略发送给所述链路中的各节点;向首节点发送调整通知消息,以触发所述链路中的各节点基于所述调整路径以及所述调整策略进行容量调整,其中,所述首节点基于所述调整路径确定。

Description

链路容量调整方法及装置、系统、控制器、网络节点
相关申请的交叉引用
本申请基于申请号为201810202001.2、申请日为2018年03月12日的中国专利申请提出,并要求该中国专利申请的优先权,该中国专利申请的全部内容在此引入本申请作为参考。
技术领域
本申请涉及无线通信领域,尤其涉及一种灵活以太网(FlexE,Flexible Ethernet)网络中的端到端链路容量调整方法及装置、系统、控制器、网络节点、存储介质。
背景技术
FlexE技术由国际标准化组织光互联网论坛(OIF,Optical Internetworking Forum)于2015年3月发起研究,并于2016年3月正式表决通过相关的技术文档。FlexE技术提供一种通用的机制来传送一系列不同媒体访问控制(MAC,Media Access Control)速率的业务,例如:可以传送单个MAC速率比较大的业务,也可以传送多个MAC速率比较小的业务的集合,传送的业务不再限定为单一MAC速率的业务。
FlexE与传统以太网在结构上的区别是:FlexE在MAC层和物理编码子层(PCS,Physical Coding Sublayer)之间多了一个垫层(FlexE Shim),该垫层的功能是构建一个大小为20×n个66b块的日程表(Calendar),n为绑定的以太网物理接口(PHY)的个数,每个66b块代表一个5G的时隙。在复用侧,不同MAC速率的业务按照与5G的倍数关系,装进对应个数的66b块中。每20个66b块构成一个子表(sub-Calendar),大小为20×n个 66b块的Calendar分布到n个sub-Calendar中。对于每个sub-Calendar,每20×1023个66b块添加一个66b块的开销,一个66b块的开销也称为一个开销块,开销块用来存储相关的映射关系,如客户业务与时隙之间的映射关系,其中,每个sub-Calendar在单个100G的以太网PHY中传送。在解复用侧,n个sub-Calendar组成一个大小为20×n个66b块的Calendar,根据开销块中存储的映射关系从相应个数的66b块中提取出对应的客户业务。
图1为开销字段的示意图,如图1所示,一个开销字段包括8个开销块,每个开销块均为66b,每传完一组20×1023个66b块,传一个开销块,这样,需要传8次,才可以将一个开销字段传完。此外,由于Client Calendar A和Client Calendar B这两个字段表示两种calendar的时隙配置情况,每传输一个开销字段仅能实现一个时隙的配置,如果将全部的时隙的配置传输完,就需要传输大于等于时隙个数的开销字段,如32个开销字段。
如图1所示,当前使用哪种calendar(Client Calendar A或Client Calendar B),是通过C这个字段来标识的。C这个字段会在开销字段里出现三次,每次都是1bit,C字段的取值只有0或1。一般情况,在一个Flexe帧的过程(包含8个开销块),C字段应该都是一样的;但是如果有异常情况,例如C字段取了两次0,一次1,那么就需要通过多数判决的方式,来判断C字段的取值。C字段取值为0表示当前使用Client Calendar A,C字段取值为1表示当前使用Client Calendar B。不同的Client Calendar代表使用不同的时隙配置(也即容量)。
如果FlexE要进行calendar的切换(也即容量调整),例如从现在的Client Calendar A切换到Client Calendar B,那么本节点和远端节点要通过开销字段里的CR和CA这两个字段进行交互协商。其中,CR表示日程表切换请求(Calendar switch Request),CA表示日程表切换确认(Calendar switch Acknowledge)。本节点把开销字段里的CR的值设置为1,远端节点收到后, 完成相应准备后,把Flexe开销里CA的值设置为1。本节点收到CA的确认后,在下一个Flexe帧的开销字段里设置C字段的值为1,表示正式开始使用Client Calendar B的时隙配置。
在网络里如果只涉及两个节点的calendar切换,那么采用上述方法是没有问题。但是如果网络里涉及到多个节点的calendar切换,那么节点的切换顺序和切换机制将会影响到数据的完整性,严重情况将导致数据丢包,时延增加和抖动加剧。
发明内容
为解决上述技术问题,本申请实施例提供了一种链路容量调整方法及装置、系统、控制器、网络节点、存储介质。
本申请实施例提供的链路容量调整方法,包括:
基于链路上的业务流向,确定所述链路对应的调整路径,所述调整路径表示所述链路中各节点的调整顺序;
基于所述链路的原容量和待调整的目标容量,确定所述链路对应的调整策略;
将所述链路对应的调整路径以及所述调整策略发送给所述链路中的各节点;
向首节点发送调整通知消息,以触发所述链路中的各节点基于所述调整路径以及所述调整策略进行容量调整,其中,所述首节点基于所述调整路径确定。
本申请实施例中,所述基于所述链路的原容量和待调整的目标容量,确定所述链路对应的调整策略,包括:
如果所述原容量小于所述目标容量,则确定所述链路对应的调整策略为容量调大策略;
如果所述原容量大于所述目标容量,则确定所述链路对应的调整策略 为容量调小策略。
本申请实施例中,如果所述调整策略为容量调大策略,则所述方法还包括:
获取所述链路中各节点的剩余容量;
判断所述链路中各节点的剩余容量是否大于等于所述目标容量与所述原容量的差值;
如果所述链路中各节点的剩余容量均大于等于所述目标容量与所述原容量的差值,则执行所述向首节点发送调整通知消息的步骤;
如果所述链路中各节点的剩余容量有小于所述目标容量与所述原容量的差值,则不执行调整操作。
本申请实施例中,所述容量调大策略用于指示所述链路中的各节点执行如下操作:
如果接收到调整通知消息,则向下一跳节点发送日程表切换请求CR消息;
如果接收到CR消息,判断目标节点是否为尾节点;如果目标节点不是尾节点,则记录CR消息未回复状态标记,向下一跳节点发送CR消息;如果目标节点是尾节点,向上一跳节点回复日程表切换确认CA消息;
如果接收到CA消息,判断目标节点是否为首节点;如果目标节点不是首节点,则向下一跳节点发送容量调整生效指令,向上一跳节点回复CA消息并取消CR消息未回复状态标记;如果目标节点是首节点,则向下一跳节点发送容量调整生效指令;
其中,所述下一跳节点和所述上一跳节点基于所述链路对应的调整路径确定。
本申请实施例中,所述容量调小策略用于指示所述链路中的各节点执行如下操作:
如果接收到调整通知消息,则向下一跳节点发送CR消息;
如果接收到CR消息,向上一跳节点发送CA消息,并判断目标节点是否为尾节点;如果目标节点不是尾节点,则向下一跳节点发送CR消息;
如果接收到CA消息,向下一跳节点发送容量调整生效指令;
其中,所述下一跳节点和所述上一跳节点基于所述链路对应的调整路径确定。
本申请实施例提提供的链路容量调整方法,包括:
获取调整信息,所述调整信息包括链路对应的调整路径和调整策略;
基于所述链路对应的调整路径以及所述调整策略,对目标节点进行容量调整。
本申请实施例中,所述调整策略为容量调大策略;
所述基于所述链路对应的调整路径以及所述调整策略,对目标节点进行容量调整,包括:
如果接收到调整通知消息,则向下一跳节点发送CR消息;
如果接收到CR消息,判断目标节点是否为尾节点;如果目标节点不是尾节点,则记录CR消息未回复状态标记,向下一跳节点发送CR消息;如果目标节点是尾节点,向上一跳节点回复CA消息;
如果接收到CA消息,判断目标节点是否为首节点;如果目标节点不是首节点,则向下一跳节点发送容量调整生效指令,向上一跳节点回复CA消息并取消CR消息未回复状态标记;如果目标节点是首节点,则向下一跳节点发送容量调整生效指令;
其中,所述下一跳节点和所述上一跳节点基于所述链路对应的调整路径确定。
本申请实施例中,所述方法还包括:
如果接收到CA消息,且目标节点是首节点,则向下一跳节点发送容量 调整生效指令后,向控制器发送调整成功消息。
本申请实施例中,所述调整策略为容量调小策略;
所述基于所述链路对应的调整路径以及所述调整策略,对目标节点进行容量调整,包括:
如果接收到调整通知消息,则向下一跳节点发送CR消息;
如果接收到CR消息,向上一跳节点发送CA消息,并判断目标节点是否为尾节点;如果目标节点不是尾节点,则向下一跳节点发送CR消息;
如果接收到CA消息,向下一跳节点发送容量调整生效指令;
其中,所述下一跳节点和所述上一跳节点基于所述链路对应的调整路径确定。
本申请实施例中,所述方法还包括:
如果接收到容量调整生效指令,且目标节点为尾节点,则向控制器发送调整成功消息。
本申请实施例中,所述方法还包括:
如果目标节点不是首节点且不是尾节点,则对目标节点的接收侧的业务数据和发送侧的业务数据进行数据交叉处理。
本申请实施例中,所述方法还包括:
如果所述目标节点单向容量调整成功,且存在上游容量带宽和下游容量带宽不一致,则在对所述接收侧的业务数据和发送侧的业务数据进行数据交叉处理时,对所述接收侧的业务数据和发送侧的业务数据进行速率匹配处理。
本申请实施例中,所述对所述接收侧的业务数据和发送侧的业务数据进行速率匹配处理,包括:
将所述接收侧的业务数据的速率调整至与所述发送侧的业务数据的速率一致,其中,所述接收侧的业务数据的速率小于所述发送侧的业务数据 的速率。
本申请实施例中,所述将所述接收侧的业务数据的速率调整至与所述发送侧的业务数据的速率一致,包括:
针对所述接收侧的业务数据的数据包,在所述数据包内部插入空闲块,以使得所述接收侧的业务数据的速率适配到所述发送侧的业务数据的速率;或者,
针对所述接收侧的业务数据的数据包,在相邻数据包之间插入空闲块,以使得所述接收侧的业务数据的速率适配到所述发送侧的业务数据的速率。
本申请实施例提供的链路容量调整装置,包括:
第一确定单元,配置为基于链路上的业务流向,确定所述链路对应的调整路径,所述调整路径表示所述链路中各节点的调整顺序;
第二确定单元,配置为基于所述链路的原容量和待调整的目标容量,确定所述链路对应的调整策略;
发送单元,配置为将所述链路对应的调整路径以及所述调整策略发送给所述链路中的各节点;
触发单元,配置为向首节点发送调整通知消息,以触发所述链路中的各节点基于所述调整路径以及所述调整策略进行容量调整,其中,所述首节点基于所述调整路径确定。
本申请实施例中,所述第二确定单元,配置为如果所述原容量小于所述目标容量,则确定所述链路对应的调整策略为容量调大策略;如果所述原容量大于所述目标容量,则确定所述链路对应的调整策略为容量调小策略。
本申请实施例中,所述装置还包括:
获取单元,配置为获取所述链路中各节点的剩余容量;
判断单元,配置为判断所述链路中各节点的剩余容量是否大于等于所述目标容量与所述原容量的差值;
所述触发单元,配置为如果所述链路中各节点的剩余容量均大于等于所述目标容量与所述原容量的差值,则执行所述向首节点发送调整通知消息的步骤;
如果所述链路中各节点的剩余容量有小于所述目标容量与所述原容量的差值,则不执行调整操作。
本申请实施例中,所述容量调大策略用于指示所述链路中的各节点执行如下操作:
如果接收到调整通知消息,则向下一跳节点发送CR消息;
如果接收到CR消息,判断目标节点是否为尾节点;如果目标节点不是尾节点,则记录CR消息未回复状态标记,向下一跳节点发送CR消息;如果目标节点是尾节点,向上一跳节点回复CA消息;
如果接收到CA消息,判断目标节点是否为首节点;如果目标节点不是首节点,则向下一跳节点发送容量调整生效指令,向上一跳节点回复CA消息并取消CR消息未回复状态标记;如果目标节点是首节点,则向下一跳节点发送容量调整生效指令;
其中,所述下一跳节点和所述上一跳节点基于所述链路对应的调整路径确定。
本申请实施例中,所述容量调小策略用于指示所述链路中的各节点执行如下操作:
如果接收到调整通知消息,则向下一跳节点发送CR消息;
如果接收到CR消息,向上一跳节点发送CA消息,并判断目标节点是否为尾节点;如果目标节点不是尾节点,则向下一跳节点发送CR消息;
如果接收到CA消息,向下一跳节点发送容量调整生效指令;
其中,所述下一跳节点和所述上一跳节点基于所述链路对应的调整路径确定。
本申请实施例提供的链路容量调整装置,包括:
获取单元,配置为获取调整信息,所述调整信息包括链路对应的调整路径和调整策略;
调整单元,配置为基于所述链路对应的调整路径以及所述调整策略,对目标节点进行容量调整。
本申请实施例中,所述调整策略为容量调大策略;
所述调整单元,配置为:如果接收到调整通知消息,则向下一跳节点发送CR消息;
如果接收到CR消息,判断目标节点是否为尾节点;如果目标节点不是尾节点,则记录CR消息未回复状态标记,向下一跳节点发送CR消息;如果目标节点是尾节点,向上一跳节点回复CA消息;
如果接收到CA消息,判断目标节点是否为首节点;如果目标节点不是首节点,则向下一跳节点发送容量调整生效指令,向上一跳节点回复CA消息并取消CR消息未回复状态标记;如果目标节点是首节点,则向下一跳节点发送容量调整生效指令;
其中,所述下一跳节点和所述上一跳节点基于所述链路对应的调整路径确定。
本申请实施例中,所述装置还包括:
通知单元,配置为如果所述调整单元接收到CA消息,且目标节点是首节点,则当所述调整单元向下一跳节点发送容量调整生效指令后,向控制器发送调整成功消息。
本申请实施例中,所述调整策略为容量调小策略;
所述调整单元,配置为:如果接收到调整通知消息,则向下一跳节点 发送CR消息;
如果接收到CR消息,向上一跳节点发送CA消息,并判断目标节点是否为尾节点;如果目标节点不是尾节点,则向下一跳节点发送CR消息;
如果接收到CA消息,向下一跳节点发送容量调整生效指令;
其中,所述下一跳节点和所述上一跳节点基于所述链路对应的调整路径确定。
本申请实施例中,所述装置还包括:
通知单元,配置为如果所述调整单元接收到容量调整生效指令,且目标节点为尾节点,则向控制器发送调整成功消息。
本申请实施例中,所述装置还包括:
交叉处理单元,配置为如果目标节点不是首节点且不是尾节点,则对目标节点的接收侧的业务数据和发送侧的业务数据进行数据交叉处理。
本申请实施例中,所述交叉处理单元,还用于如果所述目标节点单向容量调整成功,且存在上游容量带宽和下游容量带宽不一致,则在对所述接收侧的业务数据和发送侧的业务数据进行数据交叉处理时,对所述接收侧的业务数据和发送侧的业务数据进行速率匹配处理。
本申请实施例中,所述交叉处理单元,配置为将所述接收侧的业务数据的速率调整至与所述发送侧的业务数据的速率一致,其中,所述接收侧的业务数据的速率小于所述发送侧的业务数据的速率。
本申请实施例中,所述交叉处理单元,配置为针对所述接收侧的业务数据的数据包,在所述数据包内部插入空闲块,以使得所述接收侧的业务数据的速率适配到所述发送侧的业务数据的速率;或者,针对所述接收侧的业务数据的数据包,在相邻数据包之间插入空闲块,以使得所述接收侧的业务数据的速率适配到所述发送侧的业务数据的速率。
本申请实施例提供的控制器,包括上述的链路容量调整装置。
本申请实施例提供的网络节点,包括上述的链路容量调整装置。
本申请实施例提供的链路容量调整系统,包括上述的控制器,以及至少两个上述的网络节点,其中,
所述控制器与各所述网络节点连接,所述各网络节点之间按照业务流向建立有数据通道。
本申请实施例提供的存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的链路容量调整方法中的步骤。
本申请实施例的技术方案中,基于链路上的业务流向,确定所述链路对应的调整路径,所述调整路径表示所述链路中各节点的调整顺序;基于所述链路的原容量和待调整的目标容量,确定所述链路对应的调整策略;将所述链路对应的调整路径以及所述调整策略发送给所述链路中的各节点;向首节点发送调整通知消息,以触发所述链路中的各节点基于所述调整路径以及所述调整策略进行容量调整,其中,所述首节点基于所述调整路径确定。采用本申请实施例的技术方案,通过控制器对链路中各个节点进行控制,根据所述链路的原容量和待调整的目标容量以及业务流向,提供一个最佳的调整策略和调整顺序,从而在多个节点之间实现了快速、低时延、低成本、无损的链路容量调整(即calendar切换)方案。
附图说明
附图以示例而非限制的方式大体示出了本文中所讨论的各个实施例。
图1为FlexE开销字段的示意图;
图2为本申请实施例的链路容量调整方法的流程示意图一;
图3为本申请实施例的链路容量调整方法的流程示意图二;
图4为本申请实施例的链路容量调整方法的流程示意图三;
图5基于速率匹配插入idle块的格式示意图;
图6为本申请实施例的链路容量增加的流程示意图;
图7为本申请实施例的链路容量减少的流程示意图;
图8为本申请实施例的增加时隙成功的示意图;
图9为本申请实施例的增加时隙失败的示意图一;
图10为本申请实施例的增加时隙失败的示意图二;
图11为本申请实施例的删除时隙成功的示意图;
图12为本申请实施例的删除时隙失败的示意图;
图13为本申请实施例的速率匹配的两种方式;
图14为本申请实施例的链路容量调整装置的结构组成示意图一;
图15为本申请实施例的链路容量调整装置的结构组成示意图二;
图16为本申请实施例的链路容量调整系统的结构组成示意图。
具体实施方式
为了能够更加详尽地了解本申请实施例的特点与技术内容,下面结合附图对本申请实施例的实现进行详细阐述,所附附图仅供参考说明之用,并非用来限定本申请实施例。
本申请实施例的技术方案应用于FlexE端到端链路,通过控制器实现对端到端链路中各个节点的容量调整(即calendar切换),从而实现业务无损的链路容量调整。
图2为本申请实施例的链路容量调整方法的流程示意图一,本实施例应用于控制器,如图2所示,所述链路容量调整方法包括以下步骤:
步骤201:基于链路上的业务流向,确定所述链路对应的调整路径,所述调整路径表示所述链路中各节点的调整顺序。
本申请实施例中,网络提供一个控制器,用于决策如何进行链路容量调整。该控制器可以是一个独立的控制器,也可以集成到网管功能组件中。控制器管理所有的网络节点(也可简称为节点),实时感知各个节点的状态,例如各节点的容量使用情况(已使用容量、空闲容量)、各节点的端口数量 等等。在需要进行链路容量调整时,根据本次链路调整的要求,计算出所有受到影响的节点,然后提供一个满足业务无损的调整顺序和调整策略。
在一实施方式中,控制器获得链路容量调整指令,所述链路容量调整指令用于指示将链路的原容量调整为目标容量。这里,原容量为链路的当前的容量,目标容量为链路需要调整到的容量。
本申请实施例中,链路的容量是指链路的带宽,在一实施方式中,链路的容量为链路的时隙。应理解,链路稳定的情况下,同一链路上的带宽是一样的。例如:节点1、节点2、节点3在同一链路上,那么,节点1、节点2、节点3、对应于该链路上的带宽,也即容量是相同的。以时隙举例,节点之间采用的slot是对应的,比如节点1的发送侧采用slot1和slot2,那么节点2的接收侧也采用slot1和slot2,节点2的发送侧采用slot5和slot6,那么节点3的接收侧也采用slot5和slot6,无论采用哪种时隙,链路上的节点1、节点2及节点3的容量均是2个时隙。值得注意的是,由于同一个节点在发送侧和接收侧所采用的时隙不同,需要对发送侧的数据和接收侧的数据进行数据交叉处理,以节点2举例,节点2在接收侧的slot1和slot2需要映射到发送侧的slot5和slot6。
本申请实施例中,基于链路上的业务流向,确定所述链路对应的调整路径。比如链路中包括如下节点:节点1、节点2、节点3、节点4、节点5,业务流向为:节点4→节点1→节点3→节点2→节点5,那么,调整顺序也为:节点4→节点1→节点3→节点2→节点5。
步骤202:基于所述链路的原容量和待调整的目标容量,确定所述链路对应的调整策略。
本申请实施例中,如果所述原容量小于所述目标容量,则确定所述链路对应的调整策略为容量调大策略;如果所述原容量大于所述目标容量,则确定所述链路对应的调整策略为容量调小策略。
例如:将链路的容量由5slot调整为4slot,那么,对应的调整策略为容量调小策略。再例如:将链路的容量由4slot调整为5slot,那么,对应的调整策略为容量调大策略。
步骤203:将所述链路对应的调整路径以及所述调整策略发送给所述链路中的各节点。
本申请实施例中,将所述链路对应的调整路径以及所述调整策略发送给所述链路中的各节点后,各节点就可以依据调整路径确定出相对本节点(以下统称为目标节点)的上一跳节点和下一跳节点,应理解,还可以确定出本节点是首节点还是尾节点,还是中间节点。各节点可以依据调整策略,来实现相应的调整操作。
步骤204:向首节点发送调整通知消息,以触发所述链路中的各节点基于所述调整路径以及所述调整策略进行容量调整,其中,所述首节点基于所述调整路径确定。
本申请实施例中,如果所述调整策略为容量调大策略,则获取所述链路中各节点的剩余容量;判断所述链路中各节点的剩余容量是否大于等于所述目标容量与所述原容量的差值;如果所述链路中各节点的剩余容量均大于等于所述目标容量与所述原容量的差值,则执行所述向首节点发送调整通知消息的步骤。如果所述调整策略为容量调小策略,则可以直接执行所述向首节点发送调整通知消息的步骤;如果所述链路中各节点的剩余容量有小于所述目标容量与所述原容量的差值,则不执行调整操作。
本申请实施例中,所述容量调大策略用于指示所述链路中的各节点执行如下操作:
如果接收到调整通知消息,则向下一跳节点发送CR消息;
如果接收到CR消息,判断目标节点是否为尾节点;如果目标节点不是尾节点,则记录CR消息未回复状态标记,向下一跳节点发送CR消息;如 果目标节点是尾节点,向上一跳节点回复CA消息;
如果接收到CA消息,判断目标节点是否为首节点;如果目标节点不是首节点,则向下一跳节点发送容量调整生效指令,向上一跳节点回复CA消息并取消CR消息未回复状态标记;如果目标节点是首节点,则向下一跳节点发送容量调整生效指令;
其中,所述下一跳节点和所述上一跳节点基于所述链路对应的调整路径确定。
具体实现时,所述CR消息为FlexE中的CR,所述CA消息为FlexE中的CA,所述容量调整生效指令为FlexE中的C字段(也即开销字段里的C bit)。
具体地,如果接收到调整通知消息,则向下一跳节点发送CR;
如果接收到CR,判断本节点是否为尾节点;如果本节点不是尾节点,则记录CR未回复状态标记,向下一跳节点发送CR;如果本节点是尾节点,向上一跳节点回复CA;
如果接收到CA,判断本节点是否为首节点;如果本节点不是首节点,则向下一跳节点发送C字段数据(C bit),向上一跳节点回复CA并取消CR未回复状态标记;如果本节点是首节点,则向下一跳节点发送C字段数据。
本申请实施例中,所述容量调小策略用于指示所述链路中的各节点执行如下操作:
如果接收到调整通知消息,则向下一跳节点发送CR消息;
如果接收到CR消息,向上一跳节点发送CA消息,并判断目标节点是否为尾节点;如果目标节点不是尾节点,则向下一跳节点发送CR消息;
如果接收到CA消息,向下一跳节点发送容量调整生效指令;
其中,所述下一跳节点和所述上一跳节点基于所述链路对应的调整路 径确定。
具体实现时,所述CR消息为FlexE中的CR,所述CA消息为CA,所述容量调整生效指令为C字段(也即开销字段里的C bit)。
具体地,如果接收到调整通知消息,则向下一跳节点发送CR;
如果接收到CR,向上一跳节点发送CA,并判断本节点是否为尾节点;如果本节点不是尾节点,则向下一跳节点发送CR;
如果接收到CA,向下一跳节点发送C字段数据。
本申请实施例中,目标节点是指链路中正在进行容量调整的节点,将目标节点称为本节点,下一跳节点是指本节点的下一跳节点,上一跳节点是指本节点的上一跳节点。
本申请实施例的技术方案,由于开销字段里不同的calendar可以代表不同的时隙配置情况,因而,链路容量调整可以通过切换calendar来实现,例如:当前节点使用第一calendar(如主用calendar),需要切换到第二calendar(如备用calendar)。控制器根据业务方向定义切换顺序:首节点、第二节点、…、第N节点、次尾节点、尾节点;通过通知首节点进行clendar切换,逐跳进行容量的调整。
图3为本申请实施例的链路容量调整方法的流程示意图二,本实施例应用于网络节点,如图3所示,所述链路容量调整方法包括以下步骤:
步骤301:获取调整信息,所述调整信息包括链路对应的调整路径和调整策略。
步骤302:基于所述链路对应的调整路径以及所述调整策略,对目标节点进行容量调整。
在一实施方式中,所述调整策略为容量调大策略;相应地,所述基于所述链路对应的调整路径以及所述调整策略,对目标节点进行容量调整,包括:
如果接收到调整通知消息,则向下一跳节点发送CR消息;
如果接收到CR消息,判断目标节点是否为尾节点;如果目标节点不是尾节点,则记录CR消息未回复状态标记,向下一跳节点发送CR消息;如果目标节点是尾节点,向上一跳节点回复CA消息;
如果接收到CA消息,判断目标节点是否为首节点;如果目标节点不是首节点,则向下一跳节点发送容量调整生效指令,向上一跳节点回复CA消息并取消CR消息未回复状态标记;如果目标节点是首节点,则向下一跳节点发送容量调整生效指令;
其中,所述下一跳节点和所述上一跳节点基于所述链路对应的调整路径确定。
具体实现时,所述CR消息为FlexE中的CR,所述CA消息为CA,所述容量调整生效指令为C字段(也即开销字段里的C bit)。
具体地,如果接收到调整通知消息,则向下一跳节点发送CR;
如果接收到CR,判断本节点是否为尾节点;如果本节点不是尾节点,则记录CR未回复状态标记,向下一跳节点发送CR;如果本节点是尾节点,向上一跳节点回复CA;
如果接收到CA,判断本节点是否为首节点;如果本节点不是首节点,则向下一跳节点发送C字段数据,向上一跳节点回复CA并取消CR未回复状态标记;如果本节点是首节点,则向下一跳节点发送C字段数据。
这里,如果接收到CA消息,且目标节点是首节点,则向下一跳节点发送容量调整生效指令后,向控制器发送调整成功消息。
在另一实施方式中,所述调整策略为容量调小策略;相应地,所述基于所述链路对应的调整路径以及所述调整策略,对目标节点进行容量调整,包括:
如果接收到调整通知消息,则向下一跳节点发送CR消息;
如果接收到CR消息,向上一跳节点发送CA消息,并判断目标节点是否为尾节点;如果目标节点不是尾节点,则向下一跳节点发送CR消息;
如果接收到CA消息,向下一跳节点发送容量调整生效指令;
其中,所述下一跳节点和所述上一跳节点基于所述链路对应的调整路径确定。
具体实现时,所述CR消息为FlexE中的CR,所述CA消息为CA,所述容量调整生效指令为C字段(也即开销字段里的C bit)。
具体地,如果接收到调整通知消息,则向下一跳节点发送CR;
如果接收到CR,向上一跳节点发送CA,并判断本节点是否为尾节点;如果本节点不是尾节点,则向下一跳节点发送CR;
如果接收到CA,向下一跳节点发送C字段数据。
上述方案中,如果接收到容量调整生效指令,且目标节点为尾节点,则向控制器发送调整成功消息。
对于上述两种实施方式,如果目标节点不是首节点且不是尾节点,则对目标节点的接收侧的业务数据和发送侧的业务数据进行数据交叉处理。
在一实施方式中,如果所述目标节点单向时隙调整成功,且存在上游时隙带宽和下游时隙带宽不一致(即本节点接收到C字段数据且未发送C字段数据,或者本节点发送C字段数据且未接收到C字段数据),则在对所述接收侧的业务数据和发送侧的业务数据进行数据交叉处理时,对所述接收侧的业务数据和发送侧的业务数据进行速率匹配处理。
上述方案中,所述对所述接收侧的业务数据和发送侧的业务数据进行速率匹配处理,包括:
将所述接收侧的业务数据的速率调整至与所述发送侧的业务数据的速率一致,其中,所述接收侧的业务数据的速率小于所述发送侧的业务数据的速率。
针对所述接收侧的业务数据的数据包,在所述数据包内部插入空闲块,以使得所述接收侧的业务数据的速率适配到所述发送侧的业务数据的速率;或者,
针对所述接收侧的业务数据的数据包,在相邻数据包之间插入空闲块,以使得所述接收侧的业务数据的速率适配到所述发送侧的业务数据的速率。
本申请实施例中,目标节点是指链路中正在进行容量调整的节点,将目标节点称为本节点,下一跳节点是指本节点的下一跳节点,上一跳节点是指本节点的上一跳节点。
图4为本申请实施例的链路容量调整方法的流程示意图三,如图4所示,所述链路容量调整方法包括以下步骤:
步骤401:控制器获取各节点的配置信息。
步骤402:控制器获得链路容量调整指令。如果是增加时隙,执行步骤403,如果是删除时隙,执行步骤417。
步骤403:判断各节点的空闲时隙是否足够;否时,执行步骤404,是时,执行步骤405。
步骤404:确定调整失败,并向控制器上报调整失败消息。
步骤405:根据业务流向,由首节点发起CR;同时执行步骤406和步骤409。
步骤406:首节点定时器判断是否超时;否时,执行步骤407;是时,执行步骤408。
步骤407:等待指定的周期,执行步骤406。
步骤408:确定调整失败,并向控制器上报调整失败消息。
步骤409:接收CR的节点,判断自身是否为尾节点;否时,执行步骤410;是时,执行步骤411。
步骤410:节点继续向下一跳节点发送CR,执行步骤409。
步骤411:尾节点向上一跳节点回复CA。
步骤412:收到CA的节点,向下一跳节点回复C bit。
步骤413:判断发送C bit的节点是否为首节点;是时,执行步骤414;否时,执行步骤415。
步骤414:取消首节点定时器,确定调整成功,并向控制器上报调整成功消息。
步骤415:接收侧业务数据与发送侧业务数据进行数据交叉,以及速率匹配。
步骤416:向上一跳节点发送CA,执行步骤412。
步骤417:根据业务流向,由首节点发起CR;同时执行步骤418和步骤421。
步骤418:尾节点定时器判断是否超时,否时,执行步骤419;是时,执行步骤410。
步骤419:等待指定的周期,执行步骤418。
步骤420:确定调整失败,并向控制器上报调整失败消息。
步骤421:接收到CR的节点,回复CA;同时执行步骤422和步骤425。
步骤422:判断收到CR的节点是否为尾节点,是时,执行步骤423;否时,执行步骤424。
步骤423:节点不需要向下一跳节点发送CR。
步骤424:节点继续向下一跳节点发送CR,执行步骤421。
步骤425:接收到CA的节点向下一跳节点发送C bit。
步骤426:判断接收C bit的节点是否为尾节点,是时,执行步骤427;否时,执行步骤428。
步骤427:取消尾节点定时器,确定调整成功,并向控制器上报调整成 功消息。
步骤428:接收侧业务数据与发送侧业务数据进行数据交叉,以及速率匹配。
本申请实施例的技术方案中,对于增加时隙的情况(对应上述步骤403-步骤416),首先从首节点开始发送CR,第二节点收到CR后,如本节点不是尾节点,记录CR未回复状态标记,继续向自己的下一跳节点发送CR;直至尾端节点接收到CR,尾端节点接收到CR后,判断本节点为尾节点,回复CA,不再需要向下一跳节点发送CR,回送的CA被次尾节点收到后,次尾节点开始发送C字段(C bit)切换,并根据自己之前记录CR未回复状态标记,继续向自己的上一跳节点回复CA,并取消CR未回复状态标记,此时,次尾节点与尾节点的时隙先完成添加;依次流程直至首节点收到第二节点回送的CA,首节点判断自己为首节点,则不再需要向上一跳节点回送CA,向第二节点发送C字段,端到端时隙完成添加;依次逐跳完成流程后,首节点向控制器返回结果,控制器更新网络节点时隙使用状态。
本申请实施例的技术方案中,首先从首节点开始发送CR,第二节点收到CR后回复CA,首节点收到第二节点回复的CA后,向第二节点发送C字段,此时首节点与次首节点的时隙先完成删除;第二节点会判断自己是否为尾节点,如果非尾节点会继续向自己的下一跳节点发送CR;依次流程直至尾节点收到次尾节点发送的CR;尾节点判断自己为尾节点,回复CA而不再需要向下一跳节点发送CR,次尾节点收到尾节点发送的CA后,向尾节点发送C字段,端到端时隙完成删除;依次逐跳完成流程后,尾节点根据收到的C字段向控制器返回结果,控制器更新网络节点时隙使用状态。
上述过程中,如果各节点未正确执行自己的流程,就会向控制器发送调整失败消息。
本申请实施例的上述方案中,本端节点和对端节点完成calendar切换 后,对端节点如果不是首尾端的节点,会进行接收侧和发送侧的业务数据交叉,交叉的过程需要进行速率匹配,在匹配的过程中,无论是增加时隙还是删除时隙的过程,都是从时隙较少的业务数据向时隙较多的业务数据进行速率匹配,在没有数据块的情况下,插入空闲(idle)块,完成速率匹配的目的,一种数据结构如图5所示。
图6为本申请实施例的链路容量增加的流程示意图,如图6所示,包括以下步骤:
步骤601:控制器向首节点发送链路增加时隙的通知消息。
步骤602:首节点发送CR给下一跳节点;同时执行步骤603和步骤606。
步骤603:首节点定时器判断是否超时,否时,执行步骤604,是时,执行步骤605。
步骤604:等待指定的周期,执行步骤603。
步骤605:确定调整失败,向控制器上报调整失败消息。
步骤606:节点收到消息,根据节点的类型进行判断。若是首节点,则执行步骤607;若是中间节点,则执行步骤610,若是尾节点,则执行步骤614。
步骤607:判断收到的消息的种类,若是CA,执行步骤608。
步骤608:回复C bit给下一跳节点。
步骤609:取消首节点定时器,确定调整成功,向控制器上报调整成功消息。
步骤610:判断收到的消息的种类,若是C bit,执行步骤611;若是CR,则执行步骤612;若是CA,则执行步骤613。
步骤611:接收侧和发送侧进行数据交叉及速率匹配,执行步骤606。
步骤612:发送CR给下一跳节点,执行步骤606。
步骤613:发送CA给上一跳节点,发送C bit给下一跳节点,执行步 骤606。
步骤614:判断接收到的消息的种类,若是CR,执行步骤615;若是C bit,则执行步骤616。
步骤615:回复CA给上一跳节点,执行步骤606。
步骤616:接收侧数据业务时隙调整。
图7为本申请实施例的链路容量减少的流程示意图,如图7所示,包括以下步骤:
步骤701:控制器向首节点发送链路删除时隙的通知消息。
步骤702:首节点发送CR给下一跳节点;同时执行步骤703和步骤706。
步骤703:尾节点定时器判断是否超时,否时,执行步骤704,是时,执行步骤705。
步骤704:等待指定的周期,执行步骤703。
步骤705:确定调整失败,向控制器上报调整失败消息。
步骤706:节点收到消息,根据节点的类型进行判断。若是首节点,则执行步骤707;若是中间节点,则执行步骤709,若是尾节点,则执行步骤713。
步骤707:判断收到的消息的种类,若是CA,执行步骤708。
步骤708:回复C bit给下一跳节点。
步骤709:判断收到的消息的种类,若是C bit,执行步骤710;若是CR,则执行步骤711;若是CA,则执行步骤712。
步骤710:接收侧和发送侧进行数据交叉及速率匹配。
步骤711:回复CA给上一跳节点,发送CR给下一跳节点,执行步骤706。
步骤712:发送C bit给下一跳节点,执行步骤706。
步骤713:判断接收到的消息的种类,若是CR,执行步骤714;若是C  bit,则执行步骤715。
步骤714:回复CA给上一跳节点,执行步骤706。
步骤715:取消定时器,确定调整成功,向控制器上报调整成功消息。
以下结合具体应用示例对本申请实施例的技术方案做进一步描述。
应用示例一
如图8所示,网络有PE1,P1,P2和PE2四个节点。链路A的数据流向从左到右。链路A的带宽原来配置是3个slot,现在需要调整为4个slot。由于所有节点都有足够的时隙,调整最后成功。具体过程如下:
1.控制器会根据指令对拟调整的链路时隙数先计算所有受影响的节点,看端到端链路中是否有剩余时隙,如果计算的链路剩余带宽允许,则启动链路容量调整。
2.PE1发送CR给P1;P1收到后,发送CR给P2;P2收到后,发送CR给PE2;
3.PE2回复CA给P2;P2收到后,回复CA给P1,同时发送C bit给PE2;P1收到P2回复的CA后,回复CA给PE1,同时发送C bit给P2;
4.P2发送C bit给PE2后,P2发送侧业务数据时隙调整为4个slot;由于P2接收侧业务数据还是3个slot,P2接收侧业务数据和发送侧业务数据进行数据交叉,需要速率匹配,直至接收侧业务数据完成时隙调整(也就是说要等到收到P1发过来的C bit);
4.1速率匹配有两种具体的实现方案,如图13所示:
1)在S块(数据包的首个block块)和T块(数据包的尾个block块)之间插入idle块,即:在数据包括内插入idle块,这种方案优点是时延最小。
2)在T块和S块之间插入idle块,即:在数据包之间插入idle块,这种方案优点是数据格式是标准格式,收发节点都可以支持。
5.P1发送C bit给P2后,P1发送侧业务数据时隙调整为4个slot;由于P1接收侧业务数据还是3个slot,P1接收侧业务数据和发送侧业务数据进行数据交叉,需要速率匹配,直至接收侧业务数据完成时隙调整(也就是说要等到收到PE1发过来的C bit);
5.1速率匹配有两种具体的实现方案,如图13所示:
1)在S块和T块之间插入idle块。
2)在T块和S块之间插入idle块。
6.PE1发送C bit给P1;PE1发送侧业务数据时隙调整为4个slot;P1接收侧业务数据时隙调整为4个slot。
应用示例二
如图9所示,网络有PE1,P1,P2和PE2四个节点。链路A的数据流向从左到右。链路A的带宽原来配置是3个slot,现在需要调整为4个slot。由于P2节点没有足够的时隙,调整最后失败。具体过程如下:
1.控制器会根据指令对拟调整的链路时隙数先计算所有受影响的节点,看端到端链路中是否有剩余时隙,计算的链路剩余带宽不允许,直接终止调整,调整最后失败。
应用示例三
如图10所示,网络有PE1,P1,P2和PE2四个节点。链路A的数据流向从左到右。链路A的带宽原来配置是3个slot,现在需要调整为4个slot。由于P1节点出现异常,没有回复CA,导致PE1没有收到CA,调整最后失败。具体过程如下:
1.控制器会根据指令对拟调整的链路时隙数先计算所有受影响的节点,看端到端链路中是否有剩余时隙,如果计算的链路剩余带宽允许,则启动链路容量调整。
2.PE1发送CR给P1;P1收到后,发送CR给P2;P2收到后,发送 CR给PE2;
3.正常情况下,PE2回复CA给P2;P2收到后,回复CA给P1;P1收到后,回复CA给PE1;由于出现异常,P1个节点没有回复CA,所以首节点PE1没有收到CA,在等待一段时候后,首节点PE1通知控制器,调整失败。
4.控制器记录“调整失败”的信息。
应用示例四
如图11所示,网络有PE1,P1,P2和PE2四个节点。链路A的数据流向从左到右。链路A的原来配置是4个slot,现在需要调整为3个slot。调整最后成功。具体过程如下:
1.控制器会根据指令直接启动链路容量调整;
2.PE1发送CR给P1;P1收到后,回复CA给PE1,同时发送CR给P2;
3.P2收到CR后,回复CA给P1,同时发送CR给PE2;
4.PE2收到CR后,回复CA给P2;
5.PE1收到P1发送的CA后,发送C bit给P1;PE1发送侧业务数据时隙调整为3个slot;
6.P1收到PE1发送的C bit后,P1接收侧业务数据时隙调整为3个slot;由于P1发送侧业务数据还是4个slot,P1接收侧业务数据和发送侧业务数据进行数据交叉,需要速率匹配,直至发送侧业务数据完成时隙调整(也就是说要等到P1发送C bit给P2);
6.1速率匹配有两种具体的实现方案,如图13所示:
1)在S块和T块之间插入idle块。
2)在T块和S块之间插入idle块。
7.P1收到P2发送的CA后,P1发送C bit给P2;P1发送侧业务数据时 隙调整为3个slot;
8.P2收到P1发送的C bit后,P2接收侧业务数据调整为3个slot;由于P2发送侧业务数据还是4个slot,P2接收侧业务数据和发送侧业务数据进行数据交叉,需要速率匹配,直至发送侧业务数据完成时隙调整(也就是说要等到收到P2发送C bit给PE2);
8.1速率匹配有两种具体的实现方案,如图13所示:
1)在S块和T块之间插入idle块。
2)在T块和S块之间插入idle块。
9.P2收到PE2发送的CA后,P2发送C bit给PE2;P2发送侧业务数据时隙调整为3个slot;
10.PE2收到P2发送的C bit后,PE2接收侧业务数据调整为3个slot;
应用示例五
如图12所示,网络有PE1,P1,P2和PE2四个节点。链路A的数据流向从左到右。链路A的原来配置是4个slot,现在需要调整为3个slot。由于P2节点出现异常,没有发送C bit给PE2,导致调整最后失败。具体过程如下:
1.控制器会根据指令直接启动链路容量调整;
2.如果是正常情况,后续步骤与上一个实施例保持一致;但是出现了异常,P2节点没有发送C字段;导致尾节点最后没有收到C字段;
3.尾节点上报控制器,调整失败。
4.控制器记录“调整失败”的信息。
图14为本申请实施例的链路容量调整装置的结构组成示意图一,如图14所示,所述装置包括:
第一确定单元1401,配置为基于链路上的业务流向,确定所述链路对应的调整路径,所述调整路径表示所述链路中各节点的调整顺序;
第二确定单元1402,配置为基于所述链路的原容量和待调整的目标容量,确定所述链路对应的调整策略;
发送单元1403,配置为将所述链路对应的调整路径以及所述调整策略发送给所述链路中的各节点;
触发单元1404,配置为向首节点发送调整通知消息,以触发所述链路中的各节点基于所述调整路径以及所述调整策略进行容量调整,其中,所述首节点基于所述调整路径确定。
在一实施方式中,所述第二确定单元1402,配置为如果所述原容量小于所述目标容量,则确定所述链路对应的调整策略为容量调大策略;如果所述原容量大于所述目标容量,则确定所述链路对应的调整策略为容量调小策略。
在一实施方式中,所述装置还包括:
获取单元1405,配置为获取所述链路中各节点的剩余容量;
判断单元1406,配置为判断所述链路中各节点的剩余容量是否大于等于所述目标容量与所述原容量的差值;
所述触发单元1404,配置为如果所述链路中各节点的剩余容量均大于等于所述目标容量与所述原容量的差值,则执行所述向首节点发送调整通知消息的步骤;如果所述链路中各节点的剩余容量有小于所述目标容量与所述原容量的差值,则不执行调整操作。
在一实施方式中,所述容量调大策略用于指示所述链路中的各节点执行如下操作:
如果接收到调整通知消息,则向下一跳节点发送CR消息;
如果接收到CR消息,判断目标节点是否为尾节点;如果目标节点不是尾节点,则记录CR消息未回复状态标记,向下一跳节点发送CR消息;如果目标节点是尾节点,向上一跳节点回复CA消息;
如果接收到CA消息,判断目标节点是否为首节点;如果目标节点不是首节点,则向下一跳节点发送容量调整生效指令,向上一跳节点回复CA消息并取消CR消息未回复状态标记;如果目标节点是首节点,则向下一跳节点发送容量调整生效指令;
其中,所述下一跳节点和所述上一跳节点基于所述链路对应的调整路径确定。
在一实施方式中,所述容量调小策略用于指示所述链路中的各节点执行如下操作:
如果接收到调整通知消息,则向下一跳节点发送CR消息;
如果接收到CR消息,向上一跳节点发送CA消息,并判断目标节点是否为尾节点;如果目标节点不是尾节点,则向下一跳节点发送CR消息;
如果接收到CA消息,向下一跳节点发送容量调整生效指令;
其中,所述下一跳节点和所述上一跳节点基于所述链路对应的调整路径确定。
本领域技术人员应当理解,图14所示的链路容量调整装置中的各单元的实现功能可参照前述链路容量调整方法的相关描述而理解。图14所示的链路容量调整装置中的各单元的功能可通过运行于处理器上的程序而实现,也可通过具体的逻辑电路而实现。
此外,本申请实施例还提供了一种控制器,所述控制器包括处理器和存储器,所述存储器中存储有如图14所示的功能单元,所述处理器能够实现各功能单元的功能。
图15为本申请实施例的链路容量调整装置的结构组成示意图二,如图15所示,所述装置包括:
获取单元1501,配置为获取调整信息,所述调整信息包括链路对应的调整路径和调整策略;
调整单元1502,配置为基于所述链路对应的调整路径以及所述调整策略,对目标节点进行容量调整。
在一实施方式中,所述调整策略为容量调大策略;
所述调整单元1502,配置为:如果接收到调整通知消息,则向下一跳节点发送CR消息;
如果接收到CR消息,判断目标节点是否为尾节点;如果目标节点不是尾节点,则记录CR消息未回复状态标记,向下一跳节点发送CR消息;如果目标节点是尾节点,向上一跳节点回复CA消息;
如果接收到CA消息,判断目标节点是否为首节点;如果目标节点不是首节点,则向下一跳节点发送容量调整生效指令,向上一跳节点回复CA消息并取消CR消息未回复状态标记;如果目标节点是首节点,则向下一跳节点发送容量调整生效指令;
其中,所述下一跳节点和所述上一跳节点基于所述链路对应的调整路径确定。
在一实施方式中,所述装置还包括:
通知单元1503,配置为如果所述调整单元接收到CA消息,且目标节点是首节点,则当所述调整单元向下一跳节点发送容量调整生效指令后,向控制器发送调整成功消息。
在一实施方式中,所述调整策略为容量调小策略;
所述调整单元1502,配置为:如果接收到调整通知消息,则向下一跳节点发送CR消息;
如果接收到CR消息,向上一跳节点发送CA消息,并判断目标节点是否为尾节点;如果目标节点不是尾节点,则向下一跳节点发送CR消息;
如果接收到CA消息,向下一跳节点发送容量调整生效指令;
其中,所述下一跳节点和所述上一跳节点基于所述链路对应的调整路 径确定。
在一实施方式中,所述装置还包括:
通知单元1503,配置为如果所述调整单元接收到容量调整生效指令,且目标节点为尾节点,则向控制器发送调整成功消息。
在一实施方式中,所述装置还包括:
交叉处理单元1504,配置为如果目标节点不是首节点且不是尾节点,则对目标节点的接收侧的业务数据和发送侧的业务数据进行数据交叉处理。
在一实施方式中,所述交叉处理单元1504,还用于如果所述目标节点单向时隙调整成功,且存在上游时隙带宽和下游时隙带宽不一致,则在对所述接收侧的业务数据和发送侧的业务数据进行数据交叉处理时,对所述接收侧的业务数据和发送侧的业务数据进行速率匹配处理。
在一实施方式中,所述交叉处理单元1504,配置为将所述接收侧的业务数据的速率调整至与所述发送侧的业务数据的速率一致,其中,所述接收侧的业务数据的速率小于所述发送侧的业务数据的速率。
在一实施方式中,所述交叉处理单元1504,配置为针对所述接收侧的业务数据的数据包,在所述数据包内部插入空闲块,以使得所述接收侧的业务数据的速率适配到所述发送侧的业务数据的速率;或者,针对所述接收侧的业务数据的数据包,在相邻数据包之间插入空闲块,以使得所述接收侧的业务数据的速率适配到所述发送侧的业务数据的速率。
本领域技术人员应当理解,图15所示的链路容量调整装置中的各单元的实现功能可参照前述链路容量调整方法的相关描述而理解。图15所示的链路容量调整装置中的各单元的功能可通过运行于处理器上的程序而实现,也可通过具体的逻辑电路而实现。
此外,本申请实施例还提供了一种网络节点,所述网络节点包括处理 器和存储器,所述存储器中存储有如图15所示的功能单元,所述处理器能够实现各功能单元的功能。
图16为本申请实施例的链路容量调整系统的结构组成示意图,如图16所示,所述链路容量调整系统包括:控制器1601、至少一个网络节点1602。所述控制器1601与各所述网络节点1602连接,所述各网络节点1602之间按照业务流向建立有数据通道;其中,
控制器1601,配置为基于链路上的业务流向,确定所述链路对应的调整路径,所述调整路径表示所述链路中各节点的调整顺序;基于所述链路的原容量和待调整的目标容量,确定所述链路对应的调整策略;将所述链路对应的调整路径以及所述调整策略发送给所述链路中的各节点;向首节点发送调整通知消息,以触发所述链路中的各节点基于所述调整路径以及所述调整策略进行容量调整,其中,所述首节点基于所述调整路径确定。
网络节点1602,配置为获取调整信息,所述调整信息包括链路对应的调整路径和调整策略;基于所述链路对应的调整路径以及所述调整策略,对目标节点进行容量调整。
在一实施方式中,所述调整策略为容量调大策略;所述网络节点1602,配置为如果接收到调整通知消息,则向下一跳节点发送CR消息;如果接收到CR消息,判断目标节点是否为尾节点;如果目标节点不是尾节点,则记录CR消息未回复状态标记,向下一跳节点发送CR消息;如果目标节点是尾节点,向上一跳节点回复CA消息;如果接收到CA消息,判断目标节点是否为首节点;如果目标节点不是首节点,则向下一跳节点发送容量调整生效指令,向上一跳节点回复CA消息并取消CR消息未回复状态标记;如果目标节点是首节点,则向下一跳节点发送容量调整生效指令;其中,所述下一跳节点和所述上一跳节点基于所述链路对应的调整路径确定。
在另一实施方式中,所述调整策略为容量调小策略;所述网络节点 1602,配置为如果接收到调整通知消息,则向下一跳节点发送CR消息;如果接收到CR消息,向上一跳节点发送CA消息,并判断目标节点是否为尾节点;如果目标节点不是尾节点,则向下一跳节点发送CR消息;如果接收到CA消息,向下一跳节点发送容量调整生效指令;其中,所述下一跳节点和所述上一跳节点基于所述链路对应的调整路径确定。
本领域技术人员应理解,本实施例中的控制器1601和各网络节点1602的功能可参照前述链路容量调整方法的相关描述进行理解。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备 上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
相应地,本申请实施例还提供一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的链路容量调整方法中的步骤。
以上所述,仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。

Claims (32)

  1. 一种链路容量调整方法,所述方法包括:
    基于链路上的业务流向,确定所述链路对应的调整路径,所述调整路径表示所述链路中各节点的调整顺序;
    基于所述链路的原容量和待调整的目标容量,确定所述链路对应的调整策略;
    将所述链路对应的调整路径以及所述调整策略发送给所述链路中的各节点;
    向首节点发送调整通知消息,以触发所述链路中的各节点基于所述调整路径以及所述调整策略进行容量调整,其中,所述首节点基于所述调整路径确定。
  2. 根据权利要求1所述的方法,其中,所述基于所述链路的原容量和待调整的目标容量,确定所述链路对应的调整策略,包括:
    如果所述原容量小于所述目标容量,则确定所述链路对应的调整策略为容量调大策略;
    如果所述原容量大于所述目标容量,则确定所述链路对应的调整策略为容量调小策略。
  3. 根据权利要求2所述的方法,其中,如果所述调整策略为容量调大策略,则所述方法还包括:
    获取所述链路中各节点的剩余容量;
    判断所述链路中各节点的剩余容量是否大于等于所述目标容量与所述原容量的差值;
    如果所述链路中各节点的剩余容量均大于等于所述目标容量与所述原容量的差值,则执行所述向首节点发送调整通知消息的步骤;
    如果所述链路中各节点的剩余容量有小于所述目标容量与所述原容 量的差值,则不执行调整操作。
  4. 根据权利要求2所述的方法,其中,所述容量调大策略用于指示所述链路中的各节点执行如下操作:
    如果接收到调整通知消息,则向下一跳节点发送日程表切换请求CR消息;
    如果接收到CR消息,判断目标节点是否为尾节点;如果目标节点不是尾节点,则记录CR消息未回复状态标记,向下一跳节点发送CR消息;如果目标节点是尾节点,向上一跳节点回复日程表切换确认CA消息;
    如果接收到CA消息,判断目标节点是否为首节点;如果目标节点不是首节点,则向下一跳节点发送容量调整生效指令,向上一跳节点回复CA消息并取消CR消息未回复状态标记;如果目标节点是首节点,则向下一跳节点发送容量调整生效指令;
    其中,所述下一跳节点和所述上一跳节点基于所述链路对应的调整路径确定。
  5. 根据权利要求2所述的方法,其中,所述容量调小策略用于指示所述链路中的各节点执行如下操作:
    如果接收到调整通知消息,则向下一跳节点发送CR消息;
    如果接收到CR消息,向上一跳节点发送CA消息,并判断目标节点是否为尾节点;如果目标节点不是尾节点,则向下一跳节点发送CR消息;
    如果接收到CA消息,向下一跳节点发送容量调整生效指令;
    其中,所述下一跳节点和所述上一跳节点基于所述链路对应的调整路径确定。
  6. 一种链路容量调整方法,所述方法包括:
    获取调整信息,所述调整信息包括链路对应的调整路径和调整策略;
    基于所述链路对应的调整路径以及所述调整策略,对目标节点进行 容量调整。
  7. 根据权利要求6所述的方法,其中,所述调整策略为容量调大策略;
    所述基于所述链路对应的调整路径以及所述调整策略,对目标节点进行容量调整,包括:
    如果接收到调整通知消息,则向下一跳节点发送CR消息;
    如果接收到CR消息,判断目标节点是否为尾节点;如果目标节点不是尾节点,则记录CR消息未回复状态标记,向下一跳节点发送CR消息;如果目标节点是尾节点,向上一跳节点回复CA消息;
    如果接收到CA消息,判断目标节点是否为首节点;如果目标节点不是首节点,则向下一跳节点发送容量调整生效指令,向上一跳节点回复CA消息并取消CR消息未回复状态标记;如果目标节点是首节点,则向下一跳节点发送容量调整生效指令;
    其中,所述下一跳节点和所述上一跳节点基于所述链路对应的调整路径确定。
  8. 根据权利要求7所述的方法,其中,所述方法还包括:
    如果接收到CA消息,且目标节点是首节点,则向下一跳节点发送容量调整生效指令后,向控制器发送调整成功消息。
  9. 根据权利要求6所述的方法,其中,所述调整策略为容量调小策略;
    所述基于所述链路对应的调整路径以及所述调整策略,对目标节点进行容量调整,包括:
    如果接收到调整通知消息,则向下一跳节点发送CR消息;
    如果接收到CR消息,向上一跳节点发送CA消息,并判断目标节点是否为尾节点;如果目标节点不是尾节点,则向下一跳节点发送CR消息;
    如果接收到CA消息,向下一跳节点发送容量调整生效指令;
    其中,所述下一跳节点和所述上一跳节点基于所述链路对应的调整路径确定。
  10. 根据权利要求9所述的方法,其中,所述方法还包括:
    如果接收到容量调整生效指令,且目标节点为尾节点,则向控制器发送调整成功消息。
  11. 根据权利要求7至10任一项所述的方法,其中,所述方法还包括:
    如果目标节点不是首节点且不是尾节点,则对目标节点的接收侧的业务数据和发送侧的业务数据进行数据交叉处理。
  12. 根据权利要求11所述的方法,其中,所述方法还包括:
    如果所述目标节点单向容量调整成功,且存在上游容量带宽和下游容量带宽不一致,则在对所述接收侧的业务数据和发送侧的业务数据进行数据交叉处理时,对所述接收侧的业务数据和发送侧的业务数据进行速率匹配处理。
  13. 根据权利要求12所述的方法,其中,所述对所述接收侧的业务数据和发送侧的业务数据进行速率匹配处理,包括:
    将所述接收侧的业务数据的速率调整至与所述发送侧的业务数据的速率一致,其中,所述接收侧的业务数据的速率小于所述发送侧的业务数据的速率。
  14. 根据权利要求13所述的方法,其中,所述将所述接收侧的业务数据的速率调整至与所述发送侧的业务数据的速率一致,包括:
    针对所述接收侧的业务数据的数据包,在所述数据包内部插入空闲块,以使得所述接收侧的业务数据的速率适配到所述发送侧的业务数据的速率;或者,
    针对所述接收侧的业务数据的数据包,在相邻数据包之间插入空闲块,以使得所述接收侧的业务数据的速率适配到所述发送侧的业务数据的速率。
  15. 一种链路容量调整装置,所述装置包括:
    第一确定单元,配置为基于链路上的业务流向,确定所述链路对应的调整路径,所述调整路径表示所述链路中各节点的调整顺序;
    第二确定单元,配置为基于所述链路的原容量和待调整的目标容量,确定所述链路对应的调整策略;
    发送单元,配置为将所述链路对应的调整路径以及所述调整策略发送给所述链路中的各节点;
    触发单元,配置为向首节点发送调整通知消息,以触发所述链路中的各节点基于所述调整路径以及所述调整策略进行容量调整,其中,所述首节点基于所述调整路径确定。
  16. 根据权利要求15所述的装置,其中,所述第二确定单元,配置为如果所述原容量小于所述目标容量,则确定所述链路对应的调整策略为容量调大策略;如果所述原容量大于所述目标容量,则确定所述链路对应的调整策略为容量调小策略。
  17. 根据权利要求16所述的装置,其中,所述装置还包括:
    获取单元,配置为获取所述链路中各节点的剩余容量;
    判断单元,配置为判断所述链路中各节点的剩余容量是否大于等于所述目标容量与所述原容量的差值;
    所述触发单元,配置为如果所述链路中各节点的剩余容量均大于等于所述目标容量与所述原容量的差值,则执行所述向首节点发送调整通知消息的步骤;
    如果所述链路中各节点的剩余容量有小于所述目标容量与所述原容 量的差值,则不执行调整操作。
  18. 根据权利要求16所述的装置,其中,所述容量调大策略用于指示所述链路中的各节点执行如下操作:
    如果接收到调整通知消息,则向下一跳节点发送CR消息;
    如果接收到CR消息,判断目标节点是否为尾节点;如果目标节点不是尾节点,则记录CR消息未回复状态标记,向下一跳节点发送CR消息;如果目标节点是尾节点,向上一跳节点回复CA消息;
    如果接收到CA消息,判断目标节点是否为首节点;如果目标节点不是首节点,则向下一跳节点发送容量调整生效指令,向上一跳节点回复CA消息并取消CR消息未回复状态标记;如果目标节点是首节点,则向下一跳节点发送容量调整生效指令;
    其中,所述下一跳节点和所述上一跳节点基于所述链路对应的调整路径确定。
  19. 根据权利要求16所述的装置,其中,所述容量调小策略用于指示所述链路中的各节点执行如下操作:
    如果接收到调整通知消息,则向下一跳节点发送CR消息;
    如果接收到CR消息,向上一跳节点发送CA消息,并判断目标节点是否为尾节点;如果目标节点不是尾节点,则向下一跳节点发送CR消息;
    如果接收到CA消息,向下一跳节点发送容量调整生效指令;
    其中,所述下一跳节点和所述上一跳节点基于所述链路对应的调整路径确定。
  20. 一种链路容量调整装置,所述装置包括:
    获取单元,配置为获取调整信息,所述调整信息包括链路对应的调整路径和调整策略;
    调整单元,配置为基于所述链路对应的调整路径以及所述调整策略, 对目标节点进行容量调整。
  21. 根据权利要求20所述的装置,其中,所述调整策略为容量调大策略;
    所述调整单元,配置为:如果接收到调整通知消息,则向下一跳节点发送CR消息;
    如果接收到CR消息,判断目标节点是否为尾节点;如果目标节点不是尾节点,则记录CR消息未回复状态标记,向下一跳节点发送CR消息;如果目标节点是尾节点,向上一跳节点回复CA消息;
    如果接收到CA消息,判断目标节点是否为首节点;如果目标节点不是首节点,则向下一跳节点发送容量调整生效指令,向上一跳节点回复CA消息并取消CR消息未回复状态标记;如果目标节点是首节点,则向下一跳节点发送容量调整生效指令;
    其中,所述下一跳节点和所述上一跳节点基于所述链路对应的调整路径确定。
  22. 根据权利要求21所述的装置,其中,所述装置还包括:
    通知单元,配置为如果所述调整单元接收到CA消息,且目标节点是首节点,则当所述调整单元向下一跳节点发送容量调整生效指令后,向控制器发送调整成功消息。
  23. 根据权利要求20所述的装置,其中,所述调整策略为容量调小策略;
    所述调整单元,配置为:如果接收到调整通知消息,则向下一跳节点发送CR消息;
    如果接收到CR消息,向上一跳节点发送CA消息,并判断目标节点是否为尾节点;如果目标节点不是尾节点,则向下一跳节点发送CR消息;
    如果接收到CA消息,向下一跳节点发送容量调整生效指令;
    其中,所述下一跳节点和所述上一跳节点基于所述链路对应的调整路径确定。
  24. 根据权利要求23所述的装置,其中,所述装置还包括:
    通知单元,配置为如果所述调整单元接收到容量调整生效指令,且目标节点为尾节点,则向控制器发送调整成功消息。
  25. 根据权利要求21至24任一项所述的装置,其中,所述装置还包括:
    交叉处理单元,配置为如果目标节点不是首节点且不是尾节点,则对目标节点的接收侧的业务数据和发送侧的业务数据进行数据交叉处理。
  26. 根据权利要求25所述的装置,其中,所述交叉处理单元,还用于如果所述目标节点单向容量调整成功,且存在上游容量带宽和下游容量带宽不一致,则在对所述接收侧的业务数据和发送侧的业务数据进行数据交叉处理时,对所述接收侧的业务数据和发送侧的业务数据进行速率匹配处理。
  27. 根据权利要求26所述的装置,其中,所述交叉处理单元,配置为将所述接收侧的业务数据的速率调整至与所述发送侧的业务数据的速率一致,其中,所述接收侧的业务数据的速率小于所述发送侧的业务数据的速率。
  28. 根据权利要求27的装置,其中,所述交叉处理单元,配置为针对所述接收侧的业务数据的数据包,在所述数据包内部插入空闲块,以使得所述接收侧的业务数据的速率适配到所述发送侧的业务数据的速率;或者,针对所述接收侧的业务数据的数据包,在相邻数据包之间插入空闲块,以使得所述接收侧的业务数据的速率适配到所述发送侧的业务数据的速率。
  29. 一种控制器,所述控制器包括权利要求15至19任一项所述的链路容量调整装置。
  30. 一种网络节点,所述网络节点包括权利要求20至28任一项所述的链路容量调整装置。
  31. 一种链路容量调整系统,所述链路容量调整系统包括权利要求29所述的控制器,以及至少两个权利要求30所述的网络节点,其中,
    所述控制器与各所述网络节点连接,所述各网络节点之间按照业务流向建立有数据通道。
  32. 一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1至5中任一项所述的链路容量调整方法中的步骤,或者权利要求6至14中任一项所述的链路容量调整方法中的步骤。
PCT/CN2019/073697 2018-03-12 2019-01-29 链路容量调整方法及装置、系统、控制器、网络节点 WO2019174424A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201810202001.2A CN110267310B (zh) 2018-03-12 2018-03-12 链路容量调整方法及装置、系统、控制器、网络节点
CN201810202001.2 2018-03-12

Publications (1)

Publication Number Publication Date
WO2019174424A1 true WO2019174424A1 (zh) 2019-09-19

Family

ID=67908628

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2019/073697 WO2019174424A1 (zh) 2018-03-12 2019-01-29 链路容量调整方法及装置、系统、控制器、网络节点

Country Status (2)

Country Link
CN (1) CN110267310B (zh)
WO (1) WO2019174424A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113162789A (zh) * 2020-01-22 2021-07-23 华为技术有限公司 调整服务等级的方法、装置、设备、系统及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1642102A (zh) * 2004-01-16 2005-07-20 华为技术有限公司 调整链路容量的方法
CN1863066A (zh) * 2005-05-11 2006-11-15 华为技术有限公司 对链路带宽进行动态调整的方法和状态机
US8014296B1 (en) * 2004-03-31 2011-09-06 Cisco Technology, Inc. Method and apparatus for enabling LCAS-like feature through embedded software
CN103607745A (zh) * 2013-12-04 2014-02-26 湖南大学 一种无线网络中联合机会路由选择和信道分配的方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10052720C2 (de) * 2000-10-24 2002-09-12 Siemens Ag Vorrichtung und Verfahren zur Ratenanpassung
KR100728275B1 (ko) * 2005-02-18 2007-06-13 삼성전자주식회사 QoS 보장형 네트워크에서의 적응형 서비스 대역폭 조절장치 및 방법
CN101621715B (zh) * 2008-06-30 2012-07-04 中兴通讯股份有限公司 一种数据交叉方法和装置
CN102143052B (zh) * 2010-11-08 2013-10-09 华为技术有限公司 一种无损带宽调整方法、设备及系统
CN102130787A (zh) * 2011-03-02 2011-07-20 华为技术有限公司 一种网管设备及其管理ODUflex帧的空闲时隙的方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1642102A (zh) * 2004-01-16 2005-07-20 华为技术有限公司 调整链路容量的方法
US8014296B1 (en) * 2004-03-31 2011-09-06 Cisco Technology, Inc. Method and apparatus for enabling LCAS-like feature through embedded software
CN1863066A (zh) * 2005-05-11 2006-11-15 华为技术有限公司 对链路带宽进行动态调整的方法和状态机
CN103607745A (zh) * 2013-12-04 2014-02-26 湖南大学 一种无线网络中联合机会路由选择和信道分配的方法

Also Published As

Publication number Publication date
CN110267310B (zh) 2022-04-22
CN110267310A (zh) 2019-09-20

Similar Documents

Publication Publication Date Title
US8943022B2 (en) Distributed file system
US6853617B2 (en) System and method for TCP connection protection switching
JP2591717B2 (ja) 2ウィンドウを有するネットワーク通信方法
US6282669B1 (en) Ethernet communication redundancy method
JP2894676B2 (ja) 非同期式遠隔コピー・システム及び非同期式遠隔コピー方法
Watson Timer-based mechanisms in reliable transport protocol connection management
US20110026926A1 (en) Terminal device, method of controlling the same, computer-readable storage medium storing program therfor
US20110286469A1 (en) Packet retransmission control system, method and program
WO2015169057A1 (zh) 报文传输方法、装置及互联接口
US20130243419A1 (en) Comprehensive End-to-End Storage Area Network (SAN) Application Transport Service
US20150016245A1 (en) Method and apparatus for protection switching in packet transport system
JP2010033467A (ja) 情報管理システム
KR20140075014A (ko) 중간 프라이머리 백업 복제를 위한 방법 및 장치
JPS63279633A (ja) 同報通信システム
JP2015097349A (ja) 送信装置、通信制御方法及び通信システム
WO2019174424A1 (zh) 链路容量调整方法及装置、系统、控制器、网络节点
JP2001160843A (ja) アクセス網遠隔制御方式
CN107359972B (zh) 一种数据接收方法及装置
WO2020010875A1 (zh) 一种链路容量的调整方法及装置
JP4997784B2 (ja) データ記憶システム、データ記憶方法、データ記憶プログラム
US20100208581A1 (en) Data transfer system, data transmitting device, data receiving device and data transfer method
JP5320571B2 (ja) ノード間データ応答システム
WO2023125903A1 (zh) 一种通道资源调整方法、装置及通信设备
CN110881008B (zh) 同步转发数据库的方法
CN111698151B (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: 19768193

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 21/01/2021)

122 Ep: pct application non-entry in european phase

Ref document number: 19768193

Country of ref document: EP

Kind code of ref document: A1