WO2016004820A1 - 交换系统的流量转发方法和装置 - Google Patents

交换系统的流量转发方法和装置 Download PDF

Info

Publication number
WO2016004820A1
WO2016004820A1 PCT/CN2015/082226 CN2015082226W WO2016004820A1 WO 2016004820 A1 WO2016004820 A1 WO 2016004820A1 CN 2015082226 W CN2015082226 W CN 2015082226W WO 2016004820 A1 WO2016004820 A1 WO 2016004820A1
Authority
WO
WIPO (PCT)
Prior art keywords
link
lcc
data packet
sub
packet
Prior art date
Application number
PCT/CN2015/082226
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 WO2016004820A1 publication Critical patent/WO2016004820A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/15Interconnection of switching modules
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0668Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/28Routing or path finding of packets in data switching networks using route fault recovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/122Avoiding congestion; Recovering from congestion by diverting traffic away from congested entities

Definitions

  • the embodiments of the present invention relate to communication technologies, and in particular, to a method and an apparatus for forwarding traffic of a switching system.
  • a line card (hereinafter referred to as LCC) is usually formed by at least one line card (LC) and at least one switch card (FC).
  • LCC line card
  • FC switch card
  • Each LC in the LCC includes at least one switch interface chip (FIC) chip
  • FC includes at least one switch element (hereinafter referred to as SE).
  • FIC switch interface chip
  • SE switch element
  • Each FC contains two SEs, wherein the FIC side of each SE chip (ie, the left side of the SE chip in the figure) has 64 links (SerDes) for interconnecting all FICs of LCC0, in addition
  • the 64 SerDes ie, the right side of the SE in Figure 1 are used to connect with other LCCs to expand the switching system.
  • the switching system generally needs to meet the line speed when expanding the capacity.
  • the LCC back-to-back connection or the star connection is generally used when the switching system is expanded.
  • the back-to-back connection is as shown in FIG. 2, that is, a pair of FCs of LCC0 and LCC1 are connected by a pair of 64 SerDes on the right side of the SE chip of the LCC0 (that is, the SE of the same serial number on the FC is also a one-to-one connection).
  • the star connection can be connected to multiple LCC frames by means of a special central exchange box (Fabric Card Chassis, hereinafter referred to as FCC) as shown in FIG. 128 Serdes connected the four LCCs in Figure 3 to achieve the purpose of capacity expansion.
  • FCC central exchange box
  • Embodiments of the present invention provide a traffic forwarding method and apparatus for a switching system, which are used to solve the prior art exchange.
  • an embodiment of the present invention provides a method for forwarding a traffic of a switching system, where the switching system includes a first line card frame LCC, at least one second LCC, and a third interconnected according to a topology of a wireless mesh mesh.
  • LCC line card frame
  • the method includes:
  • the first LCC When the destination address indicates that the data packet is sent to the third LCC, if the current preset configuration mode of the switching system is the first configuration mode, the first LCC carries the data packet in the first Forwarding to the third LCC on the third link, where the third link includes: a first link and a second link, or the second link; the first link is the a directly connected two-hop link between the first LCC and the third LCC, and the first link includes at least one link; the second link is the first LCC and the An n-hop link that is transited by the at least one second LCC between the third LCCs, and the second link includes at least one link; wherein n is a natural number, and 3 ⁇ n ⁇ N
  • the first configuration mode indicates that the switching system is currently applying an N-hop mode, and N is a natural number greater than or equal to 3.
  • the method further includes:
  • the first LCC carries the data packet in the Forwarding to the third LCC on the first link; wherein the second configuration mode indicates that the switching system is currently applying a two-hop mode.
  • the first LCC Forwarding the data packet to the third LCC on the first link, including:
  • the first LCC divides the data packets into respective links in the first link in a round robin manner for forwarding.
  • the first LCC Forwarding the data packet to the third LCC on the first link, including:
  • the first LCC distributes the data packet to each link in the first link for forwarding according to status information of each link in the first link.
  • the first LCC distributes the data packet to each link in the first link for forwarding, including:
  • the first LCC adjusts the size of the traffic of the data packets distributed to the links in the first link according to the congestion degree of each link in the first link, so that each of the traffic flows The traffic carried by the link matches the congestion of each link.
  • the first LCC distributes the data packet to each link in the first link for forwarding, including:
  • the first LCC distributes the data packet to a normal link in the first link except the abnormal link for forwarding.
  • the first LCC carries the data packet in the Forwarding to the third LCC on the third link, including:
  • the first LCC uniformly distributes the data packet to each link in the third link in a round robin manner for forwarding.
  • the first LCC is The data packet is forwarded to the third LCC on the third link, and includes:
  • the first LCC preferentially distributes the data packet to each link in the first link, and when the links in the first link reach a saturated state, the data packet is The remaining data packets are distributed to the various links in the second link.
  • the first LCC carries the data packet in the Forwarding to the third LCC on the third link, including:
  • the first LCC distributes the data packet to each link in the third link according to status information of each link in the third link for forwarding.
  • the first LCC distributes the data packet to each chain in the third link according to status information of each link in the third link Forward on the road, including:
  • the first LCC adjusts the size of the traffic distributed to each link in the third link according to the congestion degree of each link in the third link, so that the third link is The traffic carried by each link in the traffic matches the congestion level of each link.
  • the first LCC distributes the data packet to each chain of the third link according to status information of each link in the third link Forward on the road, including:
  • the first LCC distributes the data packet to a normal link in the third link except the abnormal link for forwarding.
  • the eleventh possible implementation of the first aspect In the mode, the third link includes the first link and the second link, and the data packet includes a first sub-packet and a second sub-packet, where the first sub-packet is to be a sub-packet that is distributed to the first link, the second sub-packet is a sub-packet to be distributed to the second link, and the method further includes:
  • the first LCC adds a first original time stamp to the first sub-packet, and a second original time stamp to the second sub-packet, wherein the first original time-scale indicates the first An initial time when the first data packet arrives at the first LCC, the second original time stamp indicating an initial time when the second sub-data packet arrives at the first LCC, so that the third LCC is according to the first a first forwarding delay of the sub-packet and a second forwarding delay of the second sub-packet, respectively adding a first time-scale compensation to the first original time-scale to obtain a first time-scale, and Adding a second time stamp to the second time stamp to obtain a second time stamp, such that the time sequence of the first time stamp and the second time stamp, and the time of the first original time stamp and the second original time stamp The sequence is consistent, wherein the sum of the first forwarding delay and the first time-scale compensation is equal to the sum of the second forwarding delay and the second time-scale compensation.
  • the data packet includes a first sub-packet and a second sub-packet, the first sub- The data packet is a sub-data packet to be distributed to the first link, and the second sub-data packet is a sub-data packet to be distributed to the second link.
  • the method further includes:
  • the first LCC adds a first original time stamp to the first sub-packet, and a second original time stamp to the second sub-packet, wherein the first original time-scale indicates the first An initial time when the first data packet arrives at the first LCC, and the second original time stamp indicates an initial time when the second sub-data packet arrives at the first LCC,
  • the third LCC adds a first time-scale compensation to the first original time-scale according to the first forwarding delay of the first sub-packet and the second forwarding delay of the second sub-packet, respectively.
  • the time sequence of the time stamp and the second original time stamp are consistent, wherein the sum of the first forwarding delay and the first time stamp compensation is equal to the sum of the second forwarding delay and the second time stamp compensation.
  • the first LCC when the destination address indicates that the data packet is sent to the first LCC, the first LCC forwards the data packet Give the target FIC in the first LCC.
  • an embodiment of the present invention provides a first line card frame LCC in a switching system, where the first LCC passes through a topology in a form of a wireless mesh mesh and at least one second LCC and a third LCC in the switching system.
  • the first LCC includes at least one switching network chip SE, and the SE includes:
  • a first acquiring module configured to receive a data packet, and parse the data packet to obtain a destination address of the data packet
  • a sending module configured to: when the destination address indicates that the data packet is sent to the third LCC, if the current preset configuration mode of the switching system is the first configuration mode, the first LCC The data packet is forwarded to the third LCC on a third link, where the third link includes: a first link and a second link, or the second link; the first The link is a direct-connected two-hop link between the first LCC and the third LCC, and the first link includes at least one link; the second link is the An n-hop link that is transited by the at least one second LCC between the first LCC and the third LCC, and the second link includes at least one link; wherein n is a natural number, and 3 ⁇ n ⁇ N; the first configuration mode indicates that the switching system is currently applying an N-hop mode, and N is a natural number greater than or equal to 3.
  • the sending module is further configured to: when the destination address indicates that the data packet is sent to the third LCC, if the If the configuration mode currently preset by the system is the second configuration mode, the first LCC forwards the data packet on the first link to the third LCC; wherein the second configuration mode indication The switching system currently applies a two-hop mode.
  • the sending module is specifically configured to divide the data packet into the rounded manner to the Forwarding on each link in the first link.
  • the SE further includes: a second acquiring module
  • the second acquiring module is configured to acquire state information of each link in the first link
  • the sending module configured to distribute the data packet to each item in the first link according to status information of each link in the first link obtained by the second acquiring module Forward on the link.
  • a fourth possible implementation manner of the second aspect if the status information obtained by the second acquiring module indicates each item in the first link The degree of congestion of the link;
  • the sending module is specifically configured to adjust, according to a congestion degree of each link in the first link, a traffic volume of a data packet distributed to each link in the first link, where In order to match the traffic carried by each link to the degree of congestion of each link.
  • the SE further includes: a first determining module
  • the first determining module is configured to determine an abnormal link in the first link according to abnormal information of each link in the first link;
  • the sending module is configured to distribute the data packet to a normal link in the first link except the abnormal link for forwarding.
  • the sending module is configured to uniformly distribute the data packet to each of the third links in a round robin manner Forward on the link.
  • the sending module is specifically configured to: Distributing the data packet preferentially to each link in the first link, and when each link in the first link reaches a saturated state, the remaining data packets in the data packet are Distributed to each link in the second link.
  • the SE further includes: a third acquiring module
  • the third acquiring module is configured to acquire state information of each link in the third link.
  • the sending module is configured to distribute the data packet to each chain in the third link according to status information of each link in the third link obtained by the third acquiring module Forward on the road.
  • the ninth possible implementation manner of the second aspect if the status information obtained by the third acquiring module indicates each of the third links The degree of congestion of the link;
  • the sending module is specifically configured to adjust, according to the congestion degree of each link in the third link, the size of the traffic distributed to each link in the third path, so that the foregoing The traffic carried by each link in the three links matches the congestion level of each link.
  • the SE further includes: a second determining module;
  • the second determining module is configured to determine an abnormal link in the third link according to abnormal information of each link in the third link;
  • the sending module is configured to distribute the data packet to a normal link in the third link except the abnormal link for forwarding.
  • the eleventh possible implementation of the second aspect In the mode, the third link includes the first link and the second link, and the data packet includes a first sub-packet and a second sub-packet, where the first sub-packet is to be a sub-packet that is distributed to the first link, the second sub-packet is a sub-packet to be distributed to the second link, and the SE further includes:
  • a first time stamp adding module configured to add a first original time stamp to the first sub data packet, and a second original time stamp to the second sub data packet, where the first original time stamp Instructing an initial time when the first sub-data packet arrives at the first LCC, the second original time-scale indicating an initial time when the second sub-data packet arrives at the first LCC, so that the third LCC is based on a first time delay of the first sub-data packet and a second forwarding delay of the second sub-data packet, respectively adding a first time-scale compensation to the first original time-scale to obtain a first time-scale, and Adding a second time stamp compensation to the second original time stamp to obtain a second time stamp, such that the time sequence of the first time stamp and the second time stamp, and the first original time stamp and the second The time sequence of the original time stamp is consistent, wherein the sum of the first forwarding delay and the first time stamp compensation is equal to the sum of the second forwarding delay and the second time scale compensation.
  • the data packet includes a first sub data packet and a second sub data packet, where the first sub The data packet is a sub-data packet to be distributed to the first link, and the second sub-data packet is a sub-data packet to be distributed to the second link, and the SE further includes:
  • a second time stamp adding module configured to add a first original time stamp to the first sub data packet, and a second original time stamp to the second sub data packet, where the first original time stamp Instructing an initial time when the first sub-data packet arrives at the first LCC, the second original time-scale indicating an initial time when the second sub-data packet arrives at the first LCC, so that the third LCC is based on a first time delay of the first sub-data packet and a second forwarding delay of the second sub-data packet, respectively adding a first time-scale compensation to the first original time-scale to obtain a first time-scale, and Adding a second time stamp compensation to the second original time stamp to obtain a second time stamp, such that the time sequence of the first time stamp and the second time stamp, and the first original time stamp and the second The time sequence of the original time stamp is consistent, wherein the sum of the first forwarding delay and the first time stamp compensation is equal to the sum of the second forwarding delay and the second time scale compensation.
  • the first LCC further includes: a switching network interface chip FIC;
  • the sending module is further configured to forward the data packet to the FIC when the destination address indicates that the data packet is sent to the FIC.
  • the traffic forwarding method of the switching system forwards the received data packet to the third link between the first LCC and the third LCC according to the first configuration mode configured by the switching system to the first LCC.
  • the three LCCs not only realize the line-speed forwarding of data packets between any two nodes in the switching system, but also improve the capacity expansion of the switching system and reduce the expansion cost of the switching system.
  • FIG. 1 is a schematic structural diagram of an LCC0 according to an embodiment of the present disclosure
  • FIG. 2 is a schematic diagram of an LCC back-to-back connection structure according to an embodiment of the present invention.
  • FIG. 3 is a schematic diagram of an LCC star connection structure according to an embodiment of the present invention.
  • FIG. 4 is a schematic flowchart of a traffic forwarding method of a switching system according to Embodiment 1 of the present invention.
  • FIG. 5 is a topological structural diagram 1 of a switching system according to an embodiment of the present invention.
  • FIG. 6 is a second schematic structural diagram of a switching system according to an embodiment of the present disclosure.
  • FIG. 7 is a third structural diagram of a switching system according to an embodiment of the present disclosure.
  • FIG. 8 is a topological structural diagram 4 of a switching system according to an embodiment of the present invention.
  • FIG. 9 is a topological structural diagram 5 of a switching system according to an embodiment of the present disclosure.
  • FIG. 10 is a topological structural diagram 6 of a switching system according to an embodiment of the present invention.
  • FIG. 11 is a topological structural diagram 7 of a switching system according to an embodiment of the present invention.
  • FIG. 12 is a topological structural diagram 8 of a switching system according to an embodiment of the present disclosure.
  • FIG. 13 is a schematic structural diagram 1 of a first LCC in a switching system according to Embodiment 2 of the present invention.
  • FIG. 14 is a second schematic structural diagram of a first LCC in a switching system according to Embodiment 2 of the present invention.
  • FIG. 15 is a schematic structural diagram 3 of a first LCC in a switching system according to Embodiment 2 of the present invention.
  • FIG. 16 is a schematic structural diagram 4 of a first LCC in a switching system according to Embodiment 2 of the present invention.
  • FIG. 17 is a schematic structural diagram 5 of a first LCC in a switching system according to Embodiment 2 of the present invention.
  • FIG. 18 is a schematic structural diagram 6 of a first LCC in a switching system according to Embodiment 2 of the present invention.
  • FIG. 19 is a schematic structural diagram 7 of a first LCC in a switching system according to Embodiment 2 of the present invention.
  • FIG. 4 is a schematic flowchart of a method for forwarding a traffic of a switching system according to Embodiment 1 of the present invention.
  • the method is applied to a switching system comprising a first LCC, at least one second LCC, and a third LCC interconnected in a topology in the form of a wireless mesh.
  • at least one SE is included in each of the first LCC, the second LCC, and the third LCC.
  • At least one of the first LCCs respectively connecting at least one SE of the second LCC and at least one of the third LCCs, and at least one of the SEs and the third of the second LCCs
  • At least one SE in the LCC is connected, and those skilled in the art should know that each SE acts as an execution subject when its corresponding LCC receives or transmits a data packet, which is omitted for convenience of description.
  • the method includes:
  • the first LCC receives the data packet, and parses the data packet to obtain a destination address of the data packet.
  • the first LCC receives, by using one of the SEs, a data packet sent by the network side device, where the data packet may include multiple sub-data packets, and the sub-data packets are sent to the first LCC in the form of a data stream, that is, the network side.
  • the device continuously sends sub-packets to the first LCC.
  • the SEs in the first LCC parse the sub-packets to obtain the destination addresses of the sub-packets.
  • the first LCC carries the data packet. Forwarding to the third LCC on the third link, where the third link includes: a first link and a second link, or the second link; the first link is a directly connected two-hop link between the first LCC and the third LCC, and the first link includes at least one link; the second link is the first LCC And an n-hop link that is transited by the at least one second LCC between the third LCC, and the number of links included in the second link is at least one; Where n is a natural number and 3 ⁇ n ⁇ N; the first configuration mode indicates that the switching system is currently applying an N-hop mode, and N is a natural number greater than or equal to 3.
  • the first LCC determines that the destination address of the sub-packet in the data packet is the third LCC
  • the first LCC determines that the configuration mode currently preset by the switching system is the first configuration mode (the first configuration mode indication
  • the switching system currently applies an N-hop mode.
  • the sub-data packets are carried on a third link between the first LCC and the third LCC, and forwarded to the third LCC.
  • the third link may include a second link, and may also include a first link and a second link.
  • the first link is a direct-connected two-hop link between the first LCC and the third LCC, and the first link includes at least one link; the second link is the first LCC and the first link.
  • An n-hop link that is transited by the at least one second LCC between the three LCCs, and the number of links included in the second link is at least one.
  • the two-hop or N-hop here refers to the SE relay in two or N LCCs during data packet forwarding, that is, two hops are from one SE to another SE, and three hops are from one SE. After another SE relay, the third SE is reached, and the N-hop mode here is backward compatible.
  • the data can be forwarded using the two-hop link and the three-hop link.
  • the three-hop link can be used alone to forward data.
  • the first LCC may directly forward some of the sub-packets in the data packet to the third LCC through the first link, and the remaining ones in the data packet.
  • the sub-packets are forwarded to the third LCC through the at least one second LCC (ie, forwarded to the third LCC through the second link); or the second link may be simply used to forward the sub-packets to the third LCC.
  • the first LCC is caused to completely forward the received data packet to the third LCC, and implement a traffic line rate between the first LCC and the third LCC.
  • the back-to-back switching system directly forwards data packets from the source LCC to the destination LCC.
  • the traffic line rate can be achieved, it is limited to the case where the traffic of the data packet is relatively small, and the capacity of the switching system is limited (because There are only two LCCs; in the star-connected switching system, the data packets are forwarded through the FCC.
  • the line speed can also be achieved, the FCC must be deployed in the switching system to achieve the line rate and expand the capacity.
  • the introduction of the FCC enables the exchange. The cost of the system's traffic forwarding and expansion is increased.
  • the wire-speed forwarding of the data packet is only required to be implemented by using at least three LCCs, and the capacity of the switching system is improved because the number of the second LCC is not limited, and the FCC is not required to be deployed in the switching system. The corresponding cost of construction is saved.
  • the traffic forwarding method of the switching system forwards the received data packet to the third link between the first LCC and the third LCC according to the first configuration mode configured by the switching system to the first LCC.
  • the three LCCs not only realize the line-speed forwarding of data packets between any two nodes in the switching system, but also improve the capacity expansion of the switching system and reduce the expansion cost of the switching system.
  • the method described in FIG. 4 may further include:
  • this embodiment relates to when the first LCC determines that the current preset configuration mode of the switching system is the second configuration mode.
  • the first LCC forwards the data packet to the specific process of the third LCC.
  • the foregoing S102 specifically includes: when the destination address indicates that the data packet is sent to the third LCC, if the current preset configuration mode of the switching system is the second configuration mode, the first LCC Transmitting the data packet on the first link to the third LCC; wherein the second configuration mode indicates that the switching system is currently applying a two-hop mode.
  • the first LCC may directly forward the data packet on the first link to the third LCC. This situation generally occurs when there are fewer data packets sent by the network side to the first LCC, that is, when the traffic of the data packet is small.
  • the switching system includes a first LCC (LCC0). 2 second LCCs (LCC1 and LCC2), 1 third LCC (LCC3), and 1 SE0 in each LCC.
  • SE0 in LCC0 is connected to SE0 in LCC1, LCC2, and LCC3, respectively;
  • SE0 in LCC1 is connected to SE0 in LCC2 and LCC3, respectively;
  • SE0 in LCC2 is connected to SE0 in LCC3.
  • multiple SEs can also be included in each LCC, and the operations performed when each SE forwards the data packets are the same. That is, when an FIC (assumed to be FIC0) in an LCC (assumed to be LCC0) is in the received packet (the packet actually includes multiple sub-packets), since the FIC0 can be more than the LCC0
  • FIC0 can send multiple sub-packets in the data packet through one SE, or send it through multiple SEs, as long as the data packets can be sent from one LCC to another.
  • FIG. 5 is described by taking only one SE0 in an LCC as an example:
  • SE0 in LCC0 receives the data packet sent by the network side (the data packet actually includes multiple sub-data packets), and forwards the data packet to LCC3 through SE0.
  • each link may be specifically implemented by a serial deserializer (Serdes), and subsequently
  • Serdes these Serdes can be called the first link, and these Serdes are directly connected two-hop links (that is, the SE passes two SEs when forwarding), then SE0 and/or SE1 in LCC0 can
  • the received plurality of sub-packets are distributed to a plurality of Serdes between LCC0 and LCC3 according to a preset rule. Specifically, it can be implemented in two ways:
  • the first type the first LCC divides the data packets into round links on the first link for forwarding in a Round-Robin manner.
  • the LCC0 after receiving the data packet sent by the network side, the LCC0 receives the data packet. That is, after receiving a plurality of sub-packets sent by the network side, the sub-packets are evenly distributed to the first link in a round-robin manner, that is, uniformly distributed to all directly connected Serdes between LCC0 and LCC3, It is known that "equal distribution" here means that the traffic of sub-packets distributed to each Serdes is uniform.
  • SE0 of LCC0 provides four Serdes, that is, the first link includes four Serdes, respectively 0#-3#, that is, LCC0 directly interworks with LCC3 through the four Serdes of SE0; and SE0 of LCC0 is received.
  • LCC0 assigns 0# sub-packets to 0#Serdes, 1# sub-packets to 1#Serdes, and 2# sub-packets to 2# Serdes, assign 3# sub-packets to 3#Serdes, assign 4# sub-packets to 0#Serdes, assign 5# sub-packets to 1#Serdes, and so on, until 8# sub-packets are divided Give 0#Serdes so far.
  • the first LCC acquires state information of each link in the first link; and distributes the data packet to the location according to status information of each link in the first link. Forwarding is performed on each link in the first link.
  • the first LCC obtains the status information of each link in the first link.
  • the first LCC may monitor each link in the first link to obtain status information, or may be The three LCCs feed back state information of each link in the first link to the first LCC.
  • the first LCC adjusts the distribution to each link in the first link according to the congestion degree of each link in the first link.
  • the size of the traffic of the packet so that the traffic carried by each link matches the degree of congestion of each link.
  • SE0 of LCC0 provides four Serdes, which are respectively 0#-3#, that is, LCC0 directly interworks with LCC3 through SE0, and SE0 of LCC0 receives 9 sub-packets.
  • LCC0 can selectively choose not to give 0# and 1 when distributing 0#-8# sub-packets.
  • the sub-packets are distributed on #Serdes, and some sub-packets are allocated to the remaining uncongested 2# and 3#Serdes, so that the traffic of the data packets carried by each Serdes matches the congestion degree of each link.
  • the first LCC determines an abnormal link in the first link according to abnormal information of each link in the first link, and The data packet is distributed to a normal link in the first link other than the abnormal link.
  • SE0 of LCC0 provides four Serdes, which are respectively 0#-3#, that is, LCC0 directly interworks with LCC3 through SE0, and SE0 of LCC0 receives 9 sub-packets. They are 0#-8#.
  • the LCC0 learns the 0#Serdes exception according to the abnormal information of the first link, the LCC0 can distribute the above 9 sub-packets uniformly or non-uniformly to the 1# to 3# when distributing the 0#-8# sub-packets. Serdes.
  • the traffic forwarding method of the switching system forwards the received data packet to the first link between the first LCC and the third LCC according to the second configuration mode of the switching system configuration by the first LCC.
  • Three LCC The wire-speed forwarding of data packets between any two nodes in the switching system is achieved, and the capacity expansion of the switching system is improved, and the expansion cost of the switching system is reduced.
  • the first LCC determines that the current preset configuration mode of the switching system is the first configuration mode.
  • the switching system is currently applying the N hop mode (N is a natural number greater than or equal to 3)
  • the first LCC forwards the data packet on the third link to the specific process of the third LCC.
  • the switching system includes a first LCC (LCC0). , 3 second LCCs (LCC1, LCC2, and LCC3), 1 third LCC (LCC4), and 1 SE0 in each LCC.
  • SE0 in LCC0 is connected to SE0 in LCC1, LCC2, LCC3, and LCC4, respectively;
  • SE0 in LCC1 is connected to SE0 in LCC2, LCC3, and LCC4, respectively;
  • SE0 in LCC2 is connected to SE0 in LCC1, LCC3, and LCC4, respectively;
  • SE0 in LCC3 is connected to SE0 in LCC1, LCC2, and LCC4.
  • the LCC0 When the configuration mode of the switching system indicates the N hop mode, when the LCC0 receives the data packet sent by the network side (the data packet actually includes multiple sub-data packets), the data packet is forwarded to the second LCC through the SE0 in the LCC0.
  • SE0 in (the second LCC here may be any one of LCC1, LCC2, LCC3 or multiple LCCs) and forwarded to SE0 in LCC4 through SE0 in the second LCC (the second LCC here may It is any one of LCC1, LCC2, or LCC3 or a plurality of LCCs, and is forwarded to SE0 in LCC4 through SE0 in the second LCC.
  • the SE0 of each LCC provides at least one Serdes
  • the Serdes that directly reach the LCC4 from the LCC0 are referred to as the first link (ie, the two-hop link), so that the data packet passes from the LCC0 to the LCC1.
  • the second link One or more of the LCCs, LCCs, and LCCs that reach the LCC4 are called the second link (n-hop link).
  • the SE0 in the LCC0 can distribute the received multiple sub-packets to the third link between the LCC0 and the LCC3 according to a preset rule, the third link includes the foregoing second link, or the first chain Road and second link.
  • the first type the first LCC uniformly distributes the data packets to each link in the third link in a round robin manner for forwarding.
  • the first LCC may uniformly distribute the sub-data packets to each of the third links in a “round-robin” manner (ie, a Round-Robin manner). Forward on the link.
  • all the sub-packets may be distributed to each link in the second link to be forwarded to the third LCC, or part of the sub-packets in the sub-packets may be uniformly distributed to the first
  • Each link in the link is forwarded to the third LCC, and the remaining sub-packets are evenly distributed to each link in the second link and forwarded to the third LCC.
  • the LCC0 after receiving the data packet sent by the network side, the LCC0 receives the plurality of sub-data packets sent by the network side, and then uses the sub-data packets in a "round call” manner. (Round-Robin mode) is evenly distributed to each link in the third link, that is, evenly distributed to the at least one Serdes.
  • the third link includes the first link and the second link
  • the total number of the first link and the second link is four
  • 0# and 1#Serdes are the first link
  • 2# and 3 # is the second link
  • SE0 of LCC0 receives 9 sub-packets, respectively 0#-8#
  • LCC0 assigns 0# sub-packets to 0#Serdes, and 1# sub-packets to 1 #Serdes
  • assign 5# sub-packets to 1#Serdes and so on, until the 8# sub-packet is assigned to 0#Serdes.
  • the first LCC preferentially distributes the data packet to each link in the first link, and when each link in the first link reaches a saturated state, The remaining packets in the packet are distributed to the various links in the second link.
  • the third link includes only the first link and the second link.
  • the total number of the third links is equal to the sum of the total number of the first links and the second links, that is, the total number of the third links is four, 0# and 1#Serdes.
  • SE0 of LCC0 receives 9 sub-packets, respectively 0#-8#, then LCC0 will receive some sub-packets in the data packet. Priority is assigned to 0# and 1#Serdes.
  • LCC0 distributes 0#-4# sub-packets evenly or non-uniformly to 0# and 1#Serdes, 0# and 1#Serdes have reached saturation state, then LCC0 will receive the remaining 5# in the data packet.
  • the -8# sub-packets are evenly or non-uniformly distributed to 2# and 3#Serdes.
  • the first LCC acquires state information of each link in the third link, and distributes the data packet to the location according to status information of each link in the third link. Forwarding is performed on each link in the third link.
  • the first LCC may actively obtain the status information of each link in the third link, that is, may monitor each link in the third link to obtain each link in the third link.
  • the status information may also be that the second LCC and/or the third LCC feed back status information of each link in the third link to the first LCC.
  • the first LCC adjusts the traffic of the data packets distributed to the links in the third link according to the congestion degree of the third link.
  • the size is such that the traffic carried by each link in the third link matches the congestion level of each link. For example, continue with FIG. 6 as an example, assuming that the third link includes the first link and the second link, the total number of the first link and the second link is four, and 0# and 1#Serdes are the first chain. Roads, 2# and 3# are the second links, and SE0 of LCC0 receives 9 sub-packets, respectively 0#-8#.
  • LCC0 If LCC0 knows that 0#Serdes and 1#Serdes are relatively congested, LCC0 distributes the 0#-8# sub-packets when You can choose not to give or less to distribute packets on 0# and 1#Serdes, and to distribute more sub-packets to the remaining uncongested 2# and 3#Serdes, so that the traffic of each packet carried by each Serdes Matches the degree of congestion on each link.
  • the first LCC determines the third link according to the abnormality information of each link in the third link.
  • An abnormal link and distributes the data packet to a normal link in the third link other than the abnormal link.
  • the third link includes the first link and the second link
  • the total number of the first link and the second link is four
  • 0# and 1#Serdes are the first chain.
  • Roads, 2# and 3# are the second links
  • SE0 of LCC0 receives 9 sub-packets, respectively 0#-8#.
  • the LCC0 learns the 0#Serdes exception according to the abnormal information of the first link and the second link, the LCC0 can distribute the above 9 sub-packets uniformly or non-uniformly when distributing the 0#-8# sub-packets. 1# to 3#Serdes.
  • the traffic forwarding method of the switching system forwards the received data packet to the third link between the first LCC and the third LCC according to the first configuration mode configured by the switching system to the first LCC.
  • the three LCCs not only realize the line-speed forwarding of data packets between any two nodes in the switching system, but also improve the capacity expansion of the switching system and reduce the expansion cost of the switching system.
  • the embodiment relates to that the first LCC puts a time stamp on a plurality of received sub-data packets, and uses a plurality of sub-data During the process of forwarding the packet to the third LCC, the third LCC adds time-scale compensation to the sub-packet, so that the sub-packet carries the compensated time-scale, so that the third LCC is compensated according to each sub-packet.
  • the third link in this embodiment includes only the first link and the second link.
  • the first LCC received the data packet may include a first sub-data packet and a second sub-data packet, where the first sub-data packet is a sub-data packet to be distributed to the first link, and the second sub-packet is A sub-packet to be distributed to the second link.
  • the first LCC may apply a time stamp, that is, the first original time stamp, to the first sub-packet according to the first sub-packet reaching the first LCC time;
  • the first LCC also applies a time stamp, that is, the second original time stamp, to the second sub-packet according to the second sub-packet reaching the first LCC time. That is, the first original time stamp indicates the initial time at which the first sub-packet arrives at the first LCC, and the second original time stamp indicates the initial time at which the second sub-packet arrives at the first LCC.
  • the first LCC distributes the first sub-packet and the second sub-packet to the first link and the second link between the first LCC and the third LCC for forwarding.
  • the first sub-packet and the second sub-packet have different order of forwarding delays to reach the third LCC, that is, the first sub-packet passes the first A forwarding delay arrives at the third LCC, and the second sub-packet needs to participate because of the second LCC.
  • the third LCC can be reached, and the second forwarding delay includes a delay 1 of the second sub-packet from the first LCC to the second LCC, and the second LCC adds the second sub-packet.
  • Delay 2 forwarded to the third LCC where delay 2 may be the delay in which the second LCC forwards the second sub-packet directly to the third LCC, or it may be that the second LCC passes through one or more other.
  • the delay of forwarding the second sub-packet to the third LCC after the second LCC it should be noted that the forwarding delay of each link may include the optical fiber transmission delay and the processing delay of the SE chip.
  • the first forwarding delay is added to the time stamp of the first sub-packet, that is, the time stamp carried by the first sub-packet at the entrance of the third LCC is The first original time stamp is added with the first forwarding delay; when the second LCC receives the second sub-packet, the delay 1 is added to the time stamp of the second sub-packet, and when the second sub-packet is from the first sub-packet
  • the third LCC adds the delay 2 to the time stamp of the second sub-packet, that is, the time stamp carried by the second sub-packet at the entrance of the third LCC is
  • the second original time stamp is added with delay 1 and delay 2, that is, the second original time stamp plus the second forwarding delay.
  • the third LCC needs to according to the first forwarding delay and the second sub-data of the first sub-packet. a second forwarding delay of the packet, adding a first time-scale compensation to the first original time-scale to obtain a first time-scale, and adding a second time-scale compensation to the second original time-scale to obtain a second time-scale,
  • the chronological order of the first time stamp and the second time stamp is consistent with the chronological order of the first original time stamp and the second original time stamp.
  • the first time stamp is equal to the sum of the first original time stamp, the first forwarding delay, and the first time scale compensation
  • the second time stamp is equal to the second original time stamp, the second forwarding delay, and the second time scale compensation Sum.
  • the sum of the first forwarding delay and the first time-scale compensation is equal to the sum of the second forwarding delay and the second time-scale compensation.
  • the third LCC sorts the first sub-packet and the second sub-packet according to the first time stamp and the second time stamp to restore the original packet sequence.
  • the first LCC adds time stamp compensation for the first sub-packet and the second sub-packet, so that the third LCC restores the original sequence of the data packet according to the compensated time stamp, here shown in FIG. 5 above.
  • the exchange system is exemplified, and the process of adding time-scale compensation is specifically described. Specifically:
  • the traffic forwarding mode shown in Figure 5 is 3-hop Mesh mode. It is assumed that the data packet received by LCC0 includes a first packet, a middle packet and a tail packet, wherein the first packet is the first sub-packet, and the middle packet and the tail packet are the second sub-packets.
  • the LCC0 may first time the first packet with the time stamp 1 (assuming that the first packet is 1 point and arrives at the LCC0, and the time stamp 1 is the second original time stamp, the first The packet is the second link between LCC0 and LCC3), and the time stamp 2 is applied to the middle packet (assuming that the packet is 2 points to reach LCC0, the time stamp 2 is the second original time stamp, and the packet is taken.
  • LCC0 can send these 3 packets out in chronological order. That is, SE0 in LCC0 sends the first packet to SE0 in LCC1, the middle packet to SE0 in LCC2, and the tail packet to SE0 in LCC3. Therefore, the tail The package is likely to arrive at LCC3 before the first and middle packages.
  • the first packet arrives at the entry of SE0 in LCC1 with a delay of 1 (assumed to be 1 hour) (in this case, it has not yet reached SE0 of LCC1)
  • SE0 in LCC1 can add 1 hour delay to the first packet at the entrance.
  • the first packet arrives at the exit of SE0 of LCC1
  • the tail packet arrives at the entrance of SE0 of LCC3 after the first forwarding delay (assumed to be 0.5 hours) (ie, the tail packet has not yet reached SE0 in LCC3, so the tail packet has only passed 1-hop at this time)
  • SE0 in LCC3 adds a delay of 0.5 hours to the tail packet, and the time stamp when the tail packet reaches the SE0 entrance of LCC3 is 3:30.
  • the packet is delayed by 1 (assumed to be 1 hour) at the entrance of SE0 of LCC2 (in this case, the packet has not yet reached SE0 of LCC2)
  • SE0 in LCC2 will add 1 hour delay to the packet.
  • the third LCC adds a first time-scale compensation to the tail packet according to the first forwarding delay, adds a second time-scale compensation to the first packet and the middle packet, and ensures that the sum of the first forwarding delay and the first time-scale compensation is equal to The sum of the second forwarding delay and the second time stamp compensation. That is, the first time-scale compensation added by the third LCC to the tail package may be 2.5 hours, and the second time-scale compensation added to the first package and the middle package may be 1 hour, so that the tail packet reaches the first of the SEO of the third LCC.
  • the time scale is 6 points
  • the second time scale in the SE0 of the middle packet reaching the third LCC is 5 points
  • the second time scale in the SE0 of the first packet reaching the third LCC is 4 points. That is, different time-scale compensations are added to the first packet, the middle packet, and the tail packet, but the three packets are still the SE0 of the tail packet first arriving at the LCC3 (because the forwarding link of the tail packet is a direct link), the first packet And arrive at the SE0 of LCC3 after the packet.
  • the SE0 on the LCC3 sorts the three according to the compensated time stamps (ie, the first time stamp and the second time stamp) carried on the three packets, and the first packet with the instant mark of 4 points is in front.
  • the middle mark with the time scale of 5 points is in the middle, and the tail mark with the time mark of 6 points is at the end.
  • the SE0 of the LCC3 is sequentially output to the destination FIC of the LCC3 in the sorted order, that is, the first packet is output first, then the middle packet is output, and finally the tail packet is output. Since the compensated time stamp is carried on each sub-packet, the compensated time-scale sequence is the same as the original time-stamp set to the sub-packet before LCC0. Therefore, the target SE0 in the LCC 3 can sort the data packets according to the compensated time scale, thereby alleviating the pressure when the target SE in the target LCC sorts the data packets.
  • the first LCC may further mark the received multiple sub-packets with a serial number, where the serial number indicates that each sub-packet reaches the first LCC. Succession In order to enable the third LCC to receive multiple sub-packets, each sub-packet may be sorted according to the sequence number of the plurality of sub-packets. With the solution of the embodiment, the pressure when the target SE in the target LCC sorts the data packets can also be alleviated.
  • the switching system in the embodiment of the present invention may further perform forwarding of one to more multicast traffic.
  • the switching system can configure the traffic forwarding mode to support only 2-hop forwarding. For example, refer to the switching system shown in Figure 5. If LCC0 needs to send the same data packet to LCC1, LCC2, and LCC3 at the same time, it is on the transmitting side of LCC0. Complete 1-to-3 replication (ie, multicast replication of the packet) so that LCC1 or LCC2 can no longer undertake the task of forwarding the multicast packet to LCC3.
  • the switching system can configure the traffic forwarding mode to 3-hop forwarding. That is, LCC0 forwards the multicast packet to LCC1 or LCC2, and then forwards it to LCC3 through LCC1 or LCC2.
  • the traffic forwarding method provided by the present invention forwards the received data packet to the third LCC on the third link link between the first LCC and the third LCC according to the mode configured by the switching system according to the mode configured by the switching system, not only The line-speed forwarding of data packets between any two nodes in the switching system is implemented, and the capacity expansion of the switching system is improved, and the expansion cost of the switching system is reduced.
  • the traffic forwarding method provided by the embodiment of the present invention can perform time-scale compensation processing on the received data packet, and alleviate the sorting pressure of the target LCC on the data packet.
  • the first LCC, the at least one second LCC, and the third LCC of the foregoing switching system may have multiple implementations when connected in a mesh manner, and each of the LCCs includes at least one SE.
  • each of the LCCs includes at least one SE.
  • the following describes the connection between the LCCs in the switching system. It should be noted that only a few typical implementations of the switching system in the form of a mesh are provided, which cannot be used to limit the technical solution of the present invention. The essence of the mesh connection is the interconnection of any two LCCs in multiple LCCs:
  • the first type of connection is: assume that the number of links (Serdes) provided by each of the first LCC, the second LCC, and the third LCC in the switching system is m, and the number of the second LCC is ( P-1), the number of the third LCC is one, that is, the sum of the number of the second LCC and the third LCC in the exchange system is p.
  • the switching system divides the above m average into p groups, the number of links in each group is n, the n is equal to m divided by the quotient of p, the m is an integer multiple of p, and the p is greater than or equal to 2. Integer.
  • the manner in which the first LCC is connected to the second LCC and the third LCC through the SE may include the following three types: A, B, and C:
  • each first SE in the first LCC is paired with a second SE in the second LCC, a third SE in the third LCC, and the second SE in the second LCC is also in the third LCC
  • the third SE is a pair, and the number of links between the first SE and the second SE is n, and the number of links between the second SE and the third LE is also n; wherein, the second SE and the third SE Both are the same SE as the first SE serial number.
  • the number of SEs in the first LCC and the second LCC and the third LCC may be the same or different.
  • the first SE and the second LCC in the first LCC are also The second SE of the second SE and the third LCC are one-to-one.
  • the number of SEs in the second LCC is greater than the number of SEs in the first LCC, after the SEs of the same sequence number as the first SE in the second LCC are connected to the first SE, those SEs remaining in the second LCC There may be no connection (since these SEs do not have a SE associated with them in the first LCC), and the second LCC is also referred to this when connected to the third LCC.
  • the number of links between the first SE and the second SE, the first SE and the third SE, and the second SE and the third SE is equal to n, and the value of n is actually the above m is equally divided into p groups After that, the number of links within each group.
  • the specific connection method refer to the example shown in Figure 7 (the switching system shown in Figure 2 is actually connected with reference to this connection method):
  • the switching system includes a first LCC (LCC0), two second LCCs (LCC1 and LCC2), and a third LCC (LCC3).
  • LCC0 and LCC1 include one SE, that is, SE0;
  • LCC2 includes two SEs, which are SE0 and SE1, respectively, and
  • LCC includes four SEs, which are SE0 to SE3.
  • Each of LCC0 to LCC3 provides 12 links. Since the sum p of the second LCC and the third LCC is equal to three, the 12 links (ie, m) provided by each SE in the first LCC are equally divided into three groups, which are the first group and the first group respectively. Two groups, the third group, the number n of links in each group is equal to four.
  • SE0 in LCC0 When the first SE (SE0) in LCC0 is connected to LCC1, SE0 in LCC0 is interfaced with SE0 in LCC1 (the SE0 is the second SE). Moreover, the number of links between SE0 in LCC0 and SE0 in LCC1 is four, that is, SE0 in LCC0 uses its first set of links to connect to LCC1.
  • SE0 in LCC0 interfaces with SE0 (second SE) in LCC2.
  • the number of links between SE0 in LCC0 and SE0 in LCC2 is also four, that is, SE0 in LCC0 uses its second group link to connect to LCC2, and the remaining SE1 in LCC2 is empty. Not connected.
  • SE0 in LCC0 interfaces with SE0 (second SE) in LCC3.
  • the number of links between SE0 in LCC0 and SE0 in LCC3 is also four, that is, SE0 in LCC0 uses its own third group link to connect to LCC3, and the remaining SE1-SE3 in LCC3 Empty is not connected.
  • LCC1 When LCC1 is connected to LCC2 and LCC3, the connection mode is the same as that when LCC0 is connected to LCC2 and LCC3.
  • LCC2 When LCC2 is connected to LCC3, the first 12 links provided by SE0 and SE1 in LCC2 are before LCC2 and LCC1.
  • LCC0 two groups have been used (that is, LCC2 has established a connection with LCC0 and LCC1, but it is not connected with LCC3), and the last group is used to connect to LCC3.
  • LCC2 SE0 and SE1 in the pair are paired with SE0 and SE1 in LCC3, respectively, and the number of links between each two connected SEs is four.
  • the remaining SE2 and SE3 in LCC3 are vacant and not connected.
  • each first SE in the first LCC is connected to all SEs in the second LCC and the third LCC, and the first LCC
  • the number of links between each of the first SEs and any one of the second LCCs or the third LCCs is n divided by the number of all SEs in the second LCC or the third LCC currently connected to the first LCC The quotient of the number.
  • the connection manner of the switching system in this embodiment is also specifically described by an example, as shown in FIG. 8.
  • the switching system includes a first LCC (LCC0), two second LCCs (LCC1 and LCC2), and a third LCC (LCC3).
  • LCC0 and LCC1 include one SE, that is, SE0;
  • LCC2 includes two SEs, which are SE0 and SE1, respectively, and
  • LCC includes four SEs, which are SE0 to SE3.
  • Each of LCC0 to LCC3 provides 12 links.
  • the 12 links (ie, m) provided by each SE in the first LCC are equally divided into three groups, which are the first group and the first group respectively. Two groups, the third group, the number n of links in each group is equal to four.
  • LCC1 When LCC1 is connected to LCC2 and LCC3, the connection mode is the same as that when LCC0 is connected to LCC2 and LCC3.
  • LCC2 When LCC2 is connected to LCC3, since LCC1 and LCC0 are connected before the 12 links provided by each SE in LCC2 Two groups have been used (ie, LCC2 has established a connection with LCC0 and LCC1, but not connected with LCC3), then the last group is used to connect to LCC3.
  • each first SE in the first LCC is connected to a fourth SE in the second LCC and the third LCC, and the number of links between the first SE and the fourth SE is n divided by current and a quotient of the number of the fourth LCC in the first LCC or the third LCC connected to the first LCC; wherein the fourth SE is the second LCC or the third LCC and the first LCC An SE having a connection relationship, the n being an integer multiple of the number of the fourth SEs in the second LCC or the third LCC currently connected to the first LCC.
  • each first SE in the first LCC in this embodiment may be connected to a part SE in the second LCC or the third LCC, that is, only a part of the SEs in the second LCC or the third LCC are connected to the first LCC, This part of SE can be called the fourth SE.
  • Each first SE in the first LCC is connected to a fourth SE in the second LCC or the third LCC, and the The number of links between an SE and a fourth SE is n divided by the quotient of the number of fourth SEs in the second LCC or the third LCC currently connected to the first LCC.
  • the connection manner of the switching system in this embodiment is also specifically described by an example, as shown in FIG. 9.
  • the switching system includes a first LCC (LCC0), two second LCCs (LCC1 and LCC2), and a third LCC (LCC3).
  • LCC0 and LCC1 include one SE, that is, SE0;
  • LCC2 includes two SEs, which are SE0 and SE1, respectively, and
  • LCC includes four SEs, which are SE0 to SE3.
  • Each of LCC0 to LCC3 provides 12 links.
  • the 12 links (ie, m) provided by each SE in the first LCC are equally divided into three groups, which are the first group and the first group respectively. Two groups, the third group, the number n of links in each group is equal to four.
  • the SE0 in the LCC0 is connected to the SE0 in the LCC1 (in this case, the SE0 is the second SE, which is also the fourth SE), and the SE0 in the LCC0 and the LCC1 are in the LCC1.
  • SE0 and SE1 in the LCC3 are both the fourth SE (that is, the number of the fourth SE in the LCC3 is 4), and the SE0 in the LCC0 needs to be respectively connected to the LCC3.
  • connection mode is similar to LCC0 connection LCC1, LCC2 and LCC3, and will not be described here.
  • the second connection mode is: assume that the number of each SE in the first LCC in the switching system is x, the number of the second LCC is (p-1), and the number of the third LCC is one. Dividing x into p groups, the number of links in each group being equal to q times the number of SEs included in the second LCC or the third LCC connected to the first LCC, where x is greater than or equal to p
  • the integer is p, which is an integer greater than or equal to 2, and q is an integer greater than or equal to 1.
  • the first LCC is connected to the second LCC and the third LCC through the SE, and the following D, E, and F implementations are possible:
  • each first SE in the first LCC is connected to all SEs in the second LCC or the third LCC, and each of the first LSE and the second LCC or the third LCC in the first LCC The number of links connected is q.
  • the number of links x provided by each first SE in the first LCC may be determined according to the sum of the number of SEs currently included in the second LCC and the third LCC connected to the first LCC.
  • the switching system includes a first LCC (LCC0), two second LCCs (LCC1 and LCC2), and a third LCC (LCC3).
  • LCC0 and LCC1 include one SE, that is, SE0;
  • LCC2 includes two SEs, which are SE0 and SE1, respectively, and
  • LCC includes four SEs, which are SE0 to SE3.
  • the seven links (ie, m) provided by SE0 in the first LCC are divided into three groups, which are the first group and the second group, respectively.
  • the third group, the number of links in the first group is one, which is used to connect to LCC1; the number of links in the second group is two, which is used to connect to LCC2; the number of links in the third group is four, Connect to LCC3.
  • the division of the number of links of the three groups of links here is also related to the number of SEs in the second LCC or the third LCC currently connected to the first LCC.
  • SE0 in LCC0 is connected to SE0 in LCC1 through the first set of links (1), and through the second set of links (2) SE0 and SE1 in LCC2 are respectively connected, and SE0 to SE3 in LCC3 are connected through the third group of links (4), and the number q of links between each two connected SEs is one.
  • connection mode is the same as that of LCC0 connection LCC2 and LCC3.
  • LCC2 When LCC2 is connected to LCC3, the first group and the second group link have been used in the previous 7 links provided by each SE (SE0 and SE1) in LCC2 when LCC2 and LCC1 and LCC0 are respectively connected. That is, at this time, LCC2 has established a connection relationship with LCC0 and LCC1, but has not yet connected with LCC3, and the remaining last group is used to connect to LCC3. That is, SE0 in LCC2 is connected to SE0 to SE3 in LCC3, and SE1 in LCC2 is connected to SE0 to SE3 in LCC3, and the number of links between each two connected SEs is one. It should be noted that when LCC2 is connected to LCC1 through the second set of links (2), the number of links q between each two connected SEs is also one, where the second set of links is only used. One, the remaining one is reserved.
  • each first SE in the first LCC is connected to a fifth SE in the second LCC or the third LCC; wherein the fifth SE is in the second LCC or the third LCC and has the first LCC SE of the connection relationship, the number of the fifth SE is y; the number of links between each first SE and the fifth SE in the first LCC is equal to the connection with the first LCC
  • the q-times of the number of SEs contained in the second LCC or the third LCC is divided by the quotient of y.
  • each first SE in the first LCC in this embodiment may be connected to a part of the SE in the second LCC or the third LCC, that is, only a part of the SEs in the second LCC or the third LCC are connected to the first LCC, This part of the SE can be It is called the fifth SE, that is, the fifth SE is the SE of the second LCC or the third LCC having a connection relationship with the first LCC, and the number of the fifth SE is y.
  • the switching system includes a first LCC (LCC0), two second LCCs (LCC1 and LCC2), and a third LCC (LCC3).
  • LCC0 and LCC1 include one SE, that is, SE0;
  • LCC2 includes two SEs, which are SE0 and SE1, respectively, and
  • LCC includes four SEs, which are SE0 to SE3.
  • the number of links in each group is related to the number of second LCCs currently connected to the LCC. Since the sum of the number of the second LCC and the third LCC is three, the seven links (ie, m) provided by SE0 in the first LCC are divided into three groups, which are the first group and the second group, respectively.
  • the third group the number of links in the first group is one, which is used to connect to LCC1; the number of links in the second group is two, which is used to connect to LCC2; the number of links in the third group is four, Connect to LCC3.
  • SE1 in LCC2 is vacant and not connected to LCC0.
  • SE2 and SE3 in LCC3 are vacant and not connected to LCC0.
  • connection mode is the same as that of LCC0 connection LCC2 and LCC3.
  • each first SE in the first LCC is paired with a second SE in the second LCC or a third SE in the third LCC, between the first SE and the second SE
  • the number of links is the number of all the second SEs in the second LCC where the second SE is located, and the number of links between the first SE and the third SE is the second where the third SE is located.
  • the number of all the second SEs in the LCC; wherein the second SE and the third SE are the same SEs as the first SE sequence number.
  • the switching system includes a first LCC (LCC0), two second LCCs (LCC1 and LCC2), and a third LCC (LCC3). It is assumed that both LCC0 and LCC1 include one SE, that is, SE0; LCC2 includes two SEs, which are SE0 and SE1, respectively, and LCC includes four SEs, which are SE0 to SE3.
  • the seven links are divided into three groups according to the sum of the number of the second LCC and the third LCC, and within each group
  • the number of links is related to the number of SEs in the second LCC or the third LCC currently connected to the first LCC. Since the sum of the number of the second LCC and the third LCC is three, the seven links (ie, m) provided by SE0 in the first LCC are divided into three groups, which are the first group and the second group, respectively.
  • the third group the number of links in the first group is one, which is used to connect to LCC1; the number of links in the second group is two, which is used to connect to LCC2; the number of links in the third group is four, Connect to LCC3.
  • SE0 in LCC0 is connected to SE0 in LCC1 (this SE0 is the second SE), and the link between SE9 in LCC0 and SE0 in LCC2 is connected.
  • the number is one.
  • SE0 in LCC0 When the first SE (SE0) in LCC0 is connected to LCC2, SE0 in LCC0 is connected to SE0 in LCC1, SE1 in LCC1 is vacant, and the chain connected between SE0 in LCC0 and SE0 in LCC2
  • the number of roads is two.
  • the other SEs remaining in LCC2 are not the second SE, and may be vacant and not connected.
  • SE0 in LCC0 is connected to SE0 (ie, the third SE) in LCC3, and the remaining SE1 to SE3 in LCC3 are vacant, and SE0 in LCC0 is The number of links connected between SE0 in LCC3 is four.
  • the other SEs remaining in LCC2 are not the second SE, and may be vacant and not connected.
  • connection mode is the same as that of LCC0 connection LCC2 and LCC3.
  • the traffic forwarding method provided by the present invention forwards the received data packet to the third LCC on the third link between the first LCC and the third LCC according to the mode configured by the switching system, which is not only implemented.
  • the data packets in the switching system are forwarded at the line rate between any two nodes, and the capacity of the switching system is increased, and the expansion cost of the switching system is reduced.
  • the aforementioned program can be stored in a computer readable storage medium.
  • the program when executed, performs the steps including the foregoing method embodiments; and the foregoing storage medium includes various media that can store program codes, such as a ROM, a RAM, a magnetic disk, or an optical disk.
  • FIG. 13 is a schematic structural diagram 1 of a first LCC in a switching system according to Embodiment 2 of the present invention.
  • each LCC is divided into a first LCC, a second LCC, and a third LCC.
  • the first LCC herein may be any one of the switching systems, and therefore, This embodiment presents the function of the entire switching system by describing the function of any one of the LCCs in the packet forwarding process.
  • the first LCC is interconnected with at least one second LCC and a third LCC in the switching system by a topology in the form of a wireless mesh mesh, where the first LCC includes at least one switching network chip SE10.
  • the SE 10 includes: a first obtaining module 101 and a sending module 102.
  • the first obtaining module 101 is configured to receive a data packet, and parse the data packet to obtain a destination address of the data packet, where the sending module 102 is configured to be used by the first acquiring module 10
  • the destination address indicates that the data packet is sent to the third LCC
  • the data packet is carried on the third link and forwarded to the a third LCC, where the third link includes: a first link and a second link, or the second link; the first link is the first LCC and the third a directly connected two-hop link between the LCCs, and the number of links included in the first link is at least one;
  • the second link is a pass between the first LCC and the third LCC Determining, by the at least one second LCC, a n-hop link for forwarding, and the second link includes at least one link; wherein n is a natural number, and 3 ⁇ n ⁇ N;
  • the switching system provided by the embodiment of the present invention can execute the foregoing method embodiments, and the implementation principle and technical effects thereof are implemented. Similar, I will not repeat them here.
  • FIG. 14 is a schematic structural diagram 2 of a first LCC in a switching system according to Embodiment 2 of the present invention.
  • the first LCC in the foregoing switching system may further include a switch interface module (FIC) 11 and a sending module 102, specifically for when the first The destination address obtained by the obtaining module 101 indicates that the data packet is forwarded to the FIC 11 when the data packet is sent to the FIC 11.
  • FIC switch interface module
  • the switching system provided by the embodiment of the present invention may perform the foregoing method embodiments, and the implementation principles and technical effects thereof are similar, and details are not described herein again.
  • the sending module 102 is further configured to: when the destination address indicates that the data packet is sent to the third LCC, if the switching system is currently preset The configuration mode is the second configuration mode, the data packet is carried on the first link and forwarded to the third LCC; wherein the second configuration mode indicates that the switching system currently applies two Jump mode.
  • the sending module 102 is specifically configured to divide the data packet into each link in the first link in a round robin manner for forwarding.
  • the foregoing SE10 may include: a second obtaining module 103, configured to acquire state information of each link in the first link;
  • the sending module 102 is configured to distribute the data packet to each of the first links according to state information of each link in the first link obtained by the second acquiring module 103. Forward on the link.
  • the sending module 102 is specifically configured to use each line in the first link.
  • the degree of congestion of the link adjusting the size of the traffic distributed to the data packets on each link in the first link, so that the traffic carried by each link is equal to the congestion degree of each link. match.
  • the SE may further include: a first determining module 104; the first determining module 104, configured to be used according to the second obtaining module 103. And obtaining, by using the abnormality information of each link in the first link, an abnormal link in the first link, where the sending module 102 is configured to distribute the data packet to the first The link is forwarded on the normal link except the abnormal link.
  • the switching system provided by the embodiment of the present invention may perform the foregoing method embodiments, and the implementation principles and technical effects thereof are similar, and details are not described herein again.
  • the sending module 102 may be further configured to use the data.
  • the packet is evenly distributed to each link in the third link in a round robin manner for forwarding.
  • the sending module 102 may be further configured to preferentially distribute the data packet to the first link. On each link in the link, when each link in the first link reaches a saturated state, distribute the remaining data packets in the data packet to each link in the second link on.
  • the SE10 may further include a third obtaining module 105, configured to acquire state information of each link in the third link.
  • the sending module 102 is configured to distribute the data packet to the third link according to status information of each link in the third link obtained by the third acquiring module 105. Forwarding on each link in the middle.
  • the sending module 102 is specifically configured to use each line in the third link.
  • the degree of congestion of the link adjusting the size of the traffic distributed to each link in the third link, so that the traffic carried by each link in the third link and the traffic of each link The degree of congestion matches.
  • the SE10 may further include: a second determining module 106.
  • the second determining module 106 is configured to determine an abnormal link in the third link according to the abnormality information of each link in the third link, and the sending module 102 is configured to use the The data packet is distributed to the third link and forwarded on a normal link other than the abnormal link.
  • the switching system provided by the embodiment of the present invention may perform the foregoing method embodiments, and the implementation principles and technical effects thereof are similar, and details are not described herein again.
  • FIG. 19 is a schematic structural diagram 7 of a first LCC in a switching system according to Embodiment 2 of the present invention.
  • the third link includes a first link and a second link.
  • the data packet includes a first sub-data packet and a second sub-data packet, where the first sub-data packet is a sub-data packet to be distributed to the first link, and the second sub-data packet is to be distributed to a sub-packet on the second link.
  • the SE 10 may further include: a first time stamp adding module 107 or a second time stamp adding module 108, which are respectively used to separately add the first sub-packet.
  • first original time stamp indicates an initial time when the first sub-packet reaches the first LCC
  • the second original time stamp indicates an initial time when the second sub-packet reaches the first LCC
  • the third LCC is based on the first forwarding delay of the first sub-packet and the second sub- a second forwarding delay of the data packet
  • adding a first to the first original time stamp a time-scale compensation obtains a first time-scale
  • a second time-scale compensation is added to the second original time-scale to obtain a second time-scale, such that a time sequence of the first time-scale and the second time-scale is
  • the time sequence of the first original time stamp and the second original time stamp are consistent, wherein the sum of the first forwarding delay and the first time stamp compensation is equal to the sum of the second forwarding delay and the second time stamp compensation.
  • the content included in the third link is not limited when the data packet is distributed, that is, the third link may include only the second link, and may also include the first link.
  • the SE10 includes the first time stamp adding module 107; when the data packet is distributed, the content included in the third link is defined, that is, the third link is limited to include only the first link and the first link.
  • the SE10 includes the second time stamp adding module 108.
  • the switching system provided by the embodiment of the present invention may perform the foregoing method embodiments, and the implementation principles and technical effects thereof are similar, and details are not described herein again.
  • each of the modules in FIG. 13 to FIG. 19 is a module including a circuit system, and each module may be a PCB (Printed Circuit Board) or an IC (Integrated Circuit), or may be in a PCB or an IC. A part of the functional circuit is not limited in this embodiment.

Landscapes

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

Abstract

本发明实施例提供一种交换系统的流量转发方法和装置。该交换系统包括按照mesh形式的拓扑结构互连的第一LCC、至少一个第二LCC以及第三LCC;所述方法包括:所述第一LCC接收数据包,并对数据包进行解析以获取数据包的目的地址;当目的地址指示数据包发往所述第三LCC时,若交换系统当前预设的配置模式为第一配置模式,则第一LCC将数据包承载在第三链路上转发给第三LCC,第一配置模式指示所述交换系统当前应用的是N跳模式,N为大于等于3的自然数。本发明实施例提供的方法,实现了交换系统中数据包在任意两个节点之间的线速转发,且使得交换系统的扩容能力得到提升,并降低了交换系统的扩容成本。

Description

交换系统的流量转发方法和装置
本申请要求于2014年7月10日提交中国专利局、申请号为201410329324.X、发明名称为“交换系统的流量转发方法和装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本发明实施例涉及通信技术,尤其涉及一种交换系统的流量转发方法和装置。
背景技术
交换系统中,通常由至少一个线卡(Line Card,以下简称LC)和至少一个交换网板(Fabric Card,以下简称FC)构成一个线卡框(Line Card Chassis,以下简称LCC)。其中,LCC中的每个LC包括至少一个交换网接口芯片(Fabric Interface,以下简称FIC)芯片,每个FC包括至少一个交换网芯片(Switch Element,以下简称SE)。如图1所示,LCC0线卡框内有16个LC(LC0至LC15)和8个FC(FC0至FC7),并且共有32个FIC(FIC0至FIC31)和16个SE(图1所示的每个FC上均包含有两个SE),其中,每个SE芯片的FIC侧(即图中SE芯片的左侧)共有64条链路(SerDes)用于和LCC0的所有FIC互连,另外的64条SerDes(即图1中SE的右侧)用于与其他的LCC连接,以便对交换系统进行扩容。
交换系统在扩容时一般需要满足流量线速,现有技术在交换系统扩容时一般采用的是LCC背靠背连接或者星形连接。其中,背靠背连接如图2所示,即利用LCC0的SE芯片右侧的64条SerDes将LCC0和LCC1的FC一对一对进行连接(也即是FC上的相同序号的SE也是一一对接),从而将单框的容量扩大一倍;星形连接可以如图3所示,利用专门的中心交换框(Fabric Card Chassis,以下简称FCC)将多个LCC框连在一起,即通过FCC0提供的128条Serdes将图3中的4个LCC连接起来,从而达到扩容的目的。
但是,现有技术中的两种连接方式虽然均能够满足系统的流量线速,但是背靠背连接方式扩容有限,而星形连接的方式,系统扩容成本高。因此,二者均无法实现良好的扩容。
发明内容
本发明实施例提供一种交换系统的流量转发方法和装置,用以解决现有技术中交换 系统扩容能力有限和扩容成本高的技术问题。
第一方面,本发明实施例提供一种交换系统的流量转发方法,所述交换系统包括按照无线网格mesh形式的拓扑结构互连的第一线卡框LCC、至少一个第二LCC以及第三LCC;所述方法包括:
所述第一LCC接收数据包,并对所述数据包进行解析以获取所述数据包的目的地址;
当所述目的地址指示所述数据包发往所述第三LCC时,若所述交换系统当前预设的配置模式为第一配置模式,则所述第一LCC将所述数据包承载在第三链路上转发给所述第三LCC,其中,所述第三链路包括:第一链路和第二链路,或,所述第二链路;所述第一链路为所述第一LCC和所述第三LCC之间的直连的两跳链路,且所述第一链路包括的链路数为至少一条;所述第二链路为所述第一LCC和所述第三LCC之间通过所述至少一个第二LCC进行中转的n跳链路,且所述第二链路包括的链路数为至少一条;其中,n为自然数,且3≤n≤N;所述第一配置模式指示所述交换系统当前应用的是N跳模式,N为大于等于3的自然数。
结合第一方面,在第一方面的第一种可能的实施方式中,所述方法还包括:
当所述目的地址指示所述数据包发往所述第三LCC时,若所述交换系统当前预设的配置模式为第二配置模式,则所述第一LCC将所述数据包承载在所述第一链路上转发给所述第三LCC;其中,所述第二配置模式指示所述交换系统当前应用的是两跳模式。
结合第一方面的第一种可能的实施方式,在第一方面的第二种可能的实施方式中,若所述交换系统当前预设的配置模式为第二配置模式,则所述第一LCC将所述数据包承载在所述第一链路上转发给所述第三LCC,包括:
所述第一LCC将所述数据包以轮叫的方式均分到所述第一链路中的各条链路上进行转发。
结合第一方面的第一种可能的实施方式,在第一方面的第三种可能的实施方式中,若所述交换系统当前预设的配置模式为第二配置模式,则所述第一LCC将所述数据包承载在所述第一链路上转发给所述第三LCC,包括:
所述第一LCC获取所述第一链路中的各条链路的状态信息;
所述第一LCC根据所述第一链路中的各条链路的状态信息,将所述数据包分发到所述第一链路中的各条链路上进行转发。
结合第一方面的第三种可能的实施方式,在第一方面的第四种可能的实施方式中,若所述状态信息指示所述第一链路中各条链路的拥塞程度,则所述第一LCC根据所述状态信息,将所述数据包分发到所述第一链路中的各条链路上进行转发,包括:
所述第一LCC根据所述第一链路中的各条链路的拥塞程度,调整分发到所述第一链路中的各条链路上的数据包的流量的大小,以使其中每条链路所承载的流量与每条链路的拥塞程度相匹配。
结合第一方面的第三种可能的实施方式,在第一方面的第五种可能的实施方式中,若所述状态信息指示所述第一链路中的各条链路的异常信息,则所述第一LCC根据所述状态信息,将所述数据包分发到所述第一链路中的各条链路进行转发,包括:
所述第一LCC根据所述第一链路中的各条链路的异常信息,确定所述第一链路中的异常链路;
所述第一LCC将所述数据包分发到所述第一链路中除所述异常链路之外的正常链路上进行转发。
结合第一方面,在第一方面的第六种可能的实施方式中,若所述交换系统当前预设的配置模式为第一配置模式,则所述第一LCC将所述数据包承载在所述第三链路上转发给所述第三LCC,包括:
所述第一LCC将所述数据包以轮叫的方式均匀分发到所述第三链路中的各条链路上进行转发。
结合第一方面,在第一方面的第七种可能的实施方式中,当所述第三链路包括所述第一链路和所述第二链路时,则所述第一LCC将所述数据包承载在所述第三链路上转发给所述第三LCC,,包括:
所述第一LCC将所述数据包优先分发到所述第一链路中的各条链路上,待所述第一链路中的各条链路达到饱和状态时,将所述数据包中的剩余数据包分发到所述第二链路中的各条链路上。
结合第一方面,在第一方面的第八种可能的实施方式中,若所述交换系统当前预设的配置模式为第一配置模式,则所述第一LCC将所述数据包承载在所述第三链路上转发给所述第三LCC,包括:
所述第一LCC获取所述第三链路中的各条链路的状态信息;
所述第一LCC根据所述第三链路中的各条链路的状态信息,将所述数据包分发到所述第三链路中的各条链路上进行转发。
结合第一方面的第八种可能的实施方式,在第一方面的第九种可能的实施方式中,若所述第三链路中的各条链路的状态信息指示所述第三链路中各条链路的拥塞程度,则所述第一LCC根据所述第三链路中的各条链路的状态信息,将所述数据包分发到所述第三链路中的各条链路上进行转发,包括:
所述第一LCC根据所述第三链路中的各条链路的拥塞程度,调整分发到所述第三链路中的各条链路的流量的大小,以使所述第三链路中的每条链路所承载的流量与每条链路的拥塞程度相匹配。
结合第一方面的第八种可能的实施方式,在第一方面的第十种可能的实施方式中,若所述第三链路中的各条链路的状态信息指示所述第三链路中的各条链路的异常信息,则所述第一LCC根据所述第三链路中的各条链路的状态信息,将所述数据包分发到所述第三链路的各条链路上进行转发,包括:
所述第一LCC根据所述第三链路中的各条链路的异常信息,确定所述第三中的异常链路;
所述第一LCC将所述数据包分发到所述第三链路中除所述异常链路之外的正常链路上进行转发。
结合第一方面的第六种可能的实施方式或第一方面的第八种可能的实施方式至第十种可能的实施方式中的任一项,在第一方面的第十一种可能的实施方式中,所述第三链路包括所述第一链路和所述第二链路,所述数据包包括第一子数据包和第二子数据包,所述第一子数据包为待分发到所述第一链路路上的子数据包,所述第二子数据包为待分发到所述第二链路上的子数据包,所述方法还包括:
所述第一LCC分别为所述第一子数据包添加第一原始时标,以及为所述第二子数据包添加第二原始时标,其中,所述第一原始时标指示所述第一子数据包到达所述第一LCC的初始时刻,所述第二原始时标指示所述第二子数据包到达所述第一LCC的初始时刻,以便所述第三LCC根据所述第一子数据包的第一转发时延和所述第二子数据包的第二转发时延,分别对所述第一原始时标添加第一时标补偿得到第一时标,以及对所述第二原始时标添加第二时标补偿得到第二时标,使得所述第一时标和所述第二时标的时间顺序,与所述第一原始时标和所述第二原始时标的时间顺序保持一致,其中,第一转发时延和第一时标补偿之和,等于第二转发时延和第二时标补偿之和。
结合第一方面的第七种可能的实施方式,在第一方面的第十二种可能的实施方式中,所述数据包包括第一子数据包和第二子数据包,所述第一子数据包为待分发到所述第一链路路上的子数据包,所述第二子数据包为待分发到所述第二链路上的子数据包,所述方法还包括:
所述第一LCC分别为所述第一子数据包添加第一原始时标,以及为所述第二子数据包添加第二原始时标,其中,所述第一原始时标指示所述第一子数据包到达所述第一LCC的初始时刻,所述第二原始时标指示所述第二子数据包到达所述第一LCC的初始时刻, 以便所述第三LCC根据所述第一子数据包的第一转发时延和所述第二子数据包的第二转发时延,分别对所述第一原始时标添加第一时标补偿得到第一时标,以及对所述第二原始时标添加第二时标补偿得到第二时标,使得所述第一时标和所述第二时标的时间顺序,与所述第一原始时标和所述第二原始时标的时间顺序保持一致,其中,第一转发时延和第一时标补偿之和,等于第二转发时延和第二时标补偿之和。
结合第一方面,在第一方面的第十三种可能的实施方式中,当所述目的地址指示所述数据包发往所述第一LCC时,所述第一LCC将所述数据包转发给所述第一LCC中的目的FIC。
第二方面,本发明实施例提供一种交换系统中的第一线卡框LCC,所述第一LCC通过无线网格mesh形式的拓扑结构与交换系统中的至少一个第二LCC以及第三LCC互连;所述第一LCC包括至少一个交换网芯片SE,所述SE包括:
第一获取模块,用于接收数据包,并对所述数据包进行解析以获取所述数据包的目的地址;
发送模块,用于当所述目的地址指示所述数据包发往所述第三LCC时,若所述交换系统当前预设的配置模式为第一配置模式,则所述第一LCC将所述数据包承载在第三链路上转发给所述第三LCC,其中,所述第三链路包括:第一链路和第二链路,或,所述第二链路;所述第一链路为所述第一LCC和所述第三LCC之间的直连的两跳链路,且所述第一链路包括的链路数为至少一条;所述第二链路为所述第一LCC和所述第三LCC之间通过所述至少一个第二LCC进行中转的n跳链路,且所述第二链路包括的链路数为至少一条;其中,n为自然数,且3≤n≤N;所述第一配置模式指示所述交换系统当前应用的是N跳模式,N为大于等于3的自然数。
结合第二方面,在第二方面的第一种可能的实施方式中,所述发送模块,还用于当所述目的地址指示所述数据包发往所述第三LCC时,若所述交换系统当前预设的配置模式为第二配置模式,则所述第一LCC将所述数据包承载在所述第一链路上转发给所述第三LCC;其中,所述第二配置模式指示所述交换系统当前应用的是两跳模式。
结合第二方面的第一种可能的实施方式,在第二方面的第二种可能的实施方式中,所述发送模块,具体用于将所述数据包以轮叫的方式均分到所述第一链路中的各条链路上进行转发。
结合第二方面的第一种可能的实施方式,在第二方面的第三种可能的实施方式中,所述SE还包括:第二获取模块;
所述第二获取模块,用于获取所述第一链路中的各条链路的状态信息;
则所述发送模块,用于根据所述第二获取模块获得的所述第一链路中的各条链路的状态信息,将所述数据包分发到所述第一链路中的各条链路上进行转发。
结合第二方面的第三种可能的实施方式,在第二方面的第四种可能的实施方式中,若所述第二获取模块获得的所述状态信息指示所述第一链路中各条链路的拥塞程度;
则所述发送模块,具体用于根据所述第一链路中的各条链路的拥塞程度,调整分发到所述第一链路中的各条链路上的数据包的流量的大小,以使其中每条链路所承载的流量与每条链路的拥塞程度相匹配。
结合第二方面的第三种可能的实施方式,在第二方面的第五种可能的实施方式中,若所述第二获取模块获得的所述状态信息指示所述第一链路中的各条链路的异常信息,则所述SE还包括:第一确定模块;
所述第一确定模块,用于根据所述第一链路中的各条链路的异常信息,确定所述第一链路中的异常链路;
则所述发送模块,用于将所述数据包分发到所述第一链路中除所述异常链路之外的正常链路上进行转发。
结合第二方面,在第二方面的第六种可能的实施方式中,所述发送模块,具体用于将所述数据包以轮叫的方式均匀分发到所述第三链路中的各条链路上进行转发。
结合第二方面,在第二方面的第七种可能的实施方式中,当所述第三链路包括所述第一链路和所述第二链路时,所述发送模块,具体用于将所述数据包优先分发到所述第一链路中的各条链路上,待所述第一链路中的各条链路达到饱和状态时,将所述数据包中的剩余数据包分发到所述第二链路中的各条链路上。
结合第二方面,在第二方面的第八种可能的实施方式中,所述SE还包括:第三获取模块;
所述第三获取模块,用于获取所述第三链路中的各条链路的状态信息;
所述发送模块,用于根据所述第三获取模块获得的所述第三链路中的各条链路的状态信息,将所述数据包分发到所述第三链路中的各条链路上进行转发。
结合第二方面的第八种可能的实施方式,在第二方面的第九种可能的实施方式中,若所述第三获取模块获得的所述状态信息指示所述第三链路中各条链路的拥塞程度;
则所述发送模块,具体用于根据所述第三链路中的各条链路的拥塞程度,调整分发到所述第三路中的各条链路的流量的大小,以使所述第三链路中的每条链路所承载的流量与每条链路的拥塞程度相匹配。
结合第二方面的第八种可能的实施方式,在第二方面的第十种可能的实施方式中, 若所述第三获取模块获得的所述状态信息指示所述第三链路中的各条链路的异常信息,则所述SE还包括:第二确定模块;
所述第二确定模块,用于根据所述第三链路中的各条链路的异常信息,确定所述第三链路中的异常链路;
则所述发送模块,用于将所述数据包分发到所述第三链路中除所述异常链路之外的正常链路上进行转发。
结合第二方面的第六种可能的实施方式或第二方面的第八种可能的实施方式至第十种可能的实施方式中的任一项,在第二方面的第十一种可能的实施方式中,所述第三链路包括所述第一链路和所述第二链路,所述数据包包括第一子数据包和第二子数据包,所述第一子数据包为待分发到所述第一链路路上的子数据包,所述第二子数据包为待分发到所述第二链路上的子数据包,所述SE还包括:
第一时标添加模块,用于分别为所述第一子数据包添加第一原始时标,以及为所述第二子数据包添加第二原始时标,其中,所述第一原始时标指示所述第一子数据包到达所述第一LCC的初始时刻,所述第二原始时标指示所述第二子数据包到达所述第一LCC的初始时刻,以便所述第三LCC根据所述第一子数据包的第一转发时延和所述第二子数据包的第二转发时延,分别对所述第一原始时标添加第一时标补偿得到第一时标,以及对所述第二原始时标添加第二时标补偿得到第二时标,使得所述第一时标和所述第二时标的时间顺序,与所述第一原始时标和所述第二原始时标的时间顺序保持一致,其中,第一转发时延和第一时标补偿之和,等于第二转发时延和第二时标补偿之和。
结合第二方面的第七种可能的实施方式,在第二方面的第十二种可能的实施方式中,所述数据包包括第一子数据包和第二子数据包,所述第一子数据包为待分发到所述第一链路路上的子数据包,所述第二子数据包为待分发到所述第二链路上的子数据包,所述SE还包括:
第二时标添加模块,用于分别为所述第一子数据包添加第一原始时标,以及为所述第二子数据包添加第二原始时标,其中,所述第一原始时标指示所述第一子数据包到达所述第一LCC的初始时刻,所述第二原始时标指示所述第二子数据包到达所述第一LCC的初始时刻,以便所述第三LCC根据所述第一子数据包的第一转发时延和所述第二子数据包的第二转发时延,分别对所述第一原始时标添加第一时标补偿得到第一时标,以及对所述第二原始时标添加第二时标补偿得到第二时标,使得所述第一时标和所述第二时标的时间顺序,与所述第一原始时标和所述第二原始时标的时间顺序保持一致,其中,第一转发时延和第一时标补偿之和,等于第二转发时延和第二时标补偿之和。
结合第二方面,在第二方面的第十三种可能的实施方式中,所述第一LCC还包括:交换网接口芯片FIC;
所述发送模块,还用于当所述目的地址指示所述数据包发往所述FIC时,将所述数据包转发给所述FIC。
本发明提供的交换系统的流量转发方法,通过第一LCC根据交换系统配置的第一配置模式将接收到的数据包承载在第一LCC和第三LCC之间的第三链路上转发给第三LCC,不仅实现了交换系统中数据包在任意两个节点之间的线速转发,且使得交换系统的扩容能力得到提升,并降低了交换系统的扩容成本。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的LCC0的结构示意图;
图2为本发明实施例提供的LCC背靠背连接结构示意图;
图3为本发明实施例提供的LCC星形连接结构示意图;
图4为本发明实施例一提供的交换系统的流量转发方法的流程示意图;
图5为本发明实施例提供的交换系统的拓扑结构图一;
图6为本发明实施例提供的交换系统的拓扑结构图二;
图7为本发明实施例提供的交换系统的拓扑结构图三;
图8为本发明实施例提供的交换系统的拓扑结构图四;
图9为本发明实施例提供的交换系统的拓扑结构图五;
图10为本发明实施例提供的交换系统的拓扑结构图六;
图11为本发明实施例提供的交换系统的拓扑结构图七;
图12为本发明实施例提供的交换系统的拓扑结构图八;
图13为本发明实施例二提供的交换系统中的第一LCC的结构示意图一;
图14为本发明实施例二提供的交换系统中的第一LCC的结构示意图二;
图15为本发明实施例二提供的交换系统中的第一LCC的结构示意图三;
图16为本发明实施例二提供的交换系统中的第一LCC的结构示意图四;
图17为本发明实施例二提供的交换系统中的第一LCC的结构示意图五;
图18为本发明实施例二提供的交换系统中的第一LCC的结构示意图六;
图19为本发明实施例二提供的交换系统中的第一LCC的结构示意图七。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图4为本发明实施例一提供的交换系统的流量转发方法的流程示意图。该方法应用于交换系统,该交换系统包括按照无线网格(mesh)形式的拓扑结构互连的第一LCC、至少一个第二LCC以及第三LCC。这里的第一LCC、第二LCC和第三LCC中均包括至少一个SE。所述第一LCC中的至少一个SE分别连接所述第二LCC中的至少一个SE以及所述第三LCC中的至少一个SE,且所述第二LCC中的至少一个SE和所述第三LCC中的至少一个SE相连接,本领域技术人员应当知道,每个SE均作为其对应的LCC接收或者发送数据包时的执行主体,后续为了描述方便,对此进行了省略。
如图4所示,该方法包括:
S101:第一LCC接收数据包,并对所述数据包进行解析以获取所述数据包的目的地址。
具体的,第一LCC通过其中的一个SE接收网络侧设备发送的数据包,该数据包可以包括多个子数据包,这些子数据包是以数据流的形式发送给第一LCC的,即网络侧设备连续不断的向第一LCC发送子数据包。第一LCC中的SE在接收到子数据包之后,对这些子数据包进行解析,获得这些子数据包的目的地址。
S102:当所述目的地址指示所述数据包发往所述第三LCC时,若所述交换系统当前预设的配置模式为第一配置模式,则所述第一LCC将所述数据包承载在第三链路上转发给所述第三LCC,其中,所述第三链路包括:第一链路和第二链路,或,所述第二链路;所述第一链路为所述第一LCC和所述第三LCC之间的直连的两跳链路,且所述第一链路包括的链路数为至少一条;所述第二链路为所述第一LCC和所述第三LCC之间通过所述至少一个第二LCC进行中转的n跳链路,且所述第二链路包括的链路数为至少一条;其 中,n为自然数,且3≤n≤N;所述第一配置模式指示所述交换系统当前应用的是N跳模式,N为大于等于3的自然数。
具体的,当第一LCC判断上述数据包中的子数据包的目的地址为第三LCC时,且第一LCC判断交换系统当前预设的配置模式为第一配置模式(该第一配置模式指示所述交换系统当前应用的是N跳模式),将这些子数据包承载在第一LCC和所述第三LCC之间的第三链路上,并转发给第三LCC。该第三链路可以包括第二链路,也可以包括第一链路和第二链路。其中,第一链路为第一LCC和第三LCC之间的直连的两跳链路,且该第一链路包括的链路数为至少一条;第二链路为第一LCC和第三LCC之间通过所述至少一个第二LCC进行中转的n跳链路,且所述第二链路包括的链路数为至少一条。需要说明的是,这里的两跳或者N跳是指数据包转发过程中经过2个或者N个LCC中的SE中转,即两跳是从一个SE到另一个SE,三跳则是从一个SE,经过另一个SE中转后,到达第三个SE,而这里的N跳模式,则是向下兼容的,比如,三跳模式下,可以使用两跳链路和三跳链路转发数据,也可以单独使用三跳链路来转发数据。即,当第一LCC判断交换系统当前应用的是N跳模式时,第一LCC可以将数据包中的部分子数据包通过第一链路直接转发给第三LCC,并将数据包中剩余的子数据包通过至少一个第二LCC转发给第三LCC(即通过第二链路转发给第三LCC);也可以是单纯的使用第二链路来将上述这些子数据包转发给第三LCC使得第一LCC将接收到的数据包完全转发给第三LCC,实现第一LCC与第三LCC之间的流量线速。
现有技术中,背靠背形式的交换系统,数据包从源LCC直接转发到目的LCC,虽然能够实现流量线速,但是仅限于数据包的流量比较小的情况,且交换系统的扩容能力有限(因为只有两个LCC);星形连接的交换系统中,通过FCC转发数据包,虽然也能够实现线速,但是交换系统中必须部署FCC才能实现流量线速并达到扩容的目的,FCC的引入使得交换系统的流量转发和扩容时的成本加大。而在本发明中,数据包的线速转发只需通过至少三个LCC实现,交换系统的扩容能力因为第二LCC个数不受限制而得到提升,且也不需要在交换系统中部署FCC,节约了相应的造价成本。
本发明提供的交换系统的流量转发方法,通过第一LCC根据交换系统配置的第一配置模式将接收到的数据包承载在第一LCC和第三LCC之间的第三链路上转发给第三LCC,不仅实现了交换系统中数据包在任意两个节点之间的线速转发,且使得交换系统的扩容能力得到提升,并降低了交换系统的扩容成本。
作为上述图4所示实施例一的一种可选的实现方式,上述图4所述方法还可以包括:
S103:当所述目的地址指示所述数据包发往第一LCC中的目的FIC时,所述第一LCC 将所述数据包直接发给所述第一LCC中的目的FIC。
在上述图4所示实施例的基础上,作为本发明实施例一的一种可能的实施方式,本实施例涉及的是当第一LCC确定交换系统当前预设的配置模式为第二配置模式时,第一LCC将数据包转发给第三LCC的具体过程。具体的,上述S102具体包括:当所述目的地址指示所述数据包发往所述第三LCC时,若所述交换系统当前预设的配置模式为第二配置模式,则所述第一LCC将所述数据包承载在所述第一链路上转发给所述第三LCC;其中,所述第二配置模式指示所述交换系统当前应用的是两跳模式。
当交换系统当前预设的配置模式为第二配置模式时,即交换系统当前应用的是两跳模式时,第一LCC可以直接将数据包承载在第一链路上转发给第三LCC,这种情况一般发生在网络侧发送给第一LCC的数据包较少的情况下,即数据包的流量较小的情况下。
为了能够更好的说明本实施例两跳的实施方式,在此以一个具体的交换系统为例来说明,参见图5所示的交换系统,该交换系统中包括1个第一LCC(LCC0),2个第二LCC(LCC1和LCC2),1个第三LCC(LCC3),且每个LCC中均包括1个SE0。LCC0中的SE0分别与LCC1、LCC2、LCC3中的SE0连接;LCC1中的SE0分别与LCC2、LCC3中的SE0连接;LCC2中的SE0与LCC3中的SE0连接。
当然,每个LCC中也可以包括多个SE,每个SE对数据包进行转发时执行的操作是一样的。即,某一个LCC(假设为LCC0)中的某一个FIC(假设为FIC0)在接收到的数据包(该数据包实际上包括多个子数据包)时,由于该FIC0可以与该LCC0中的多个SE连接,那么FIC0可以将数据包中的多个子数据包通过一个SE发出去,也可以通过多个SE发出去,只要能够将数据包从一个LCC发往另一个LCC即可。为了方便对本发明的技术方案进行说明,图5的例子仅以一个LCC中包括一个SE0为例来予以介绍:
当交换系统的配置模式指示的是两跳模式时,LCC0中的SE0接收到网络侧发送的数据包时(该数据包实际上包括多个子数据包),将数据包通过SE0转发给LCC3。可选的,若上述LCC0中的SE0和SE1均提供至少一条链路,需要说明的是,在本发明的交换系统中,每条链路具体可以通过串行解串器(Serdes)实现,后续以Serdes举例,这些Serdes均可以称为第一链路,且这些Serdes为直连的两跳链路(即数据包在转发时经过两次SE),则LCC0中的SE0和/或SE1就可以将接收到的多个子数据包按照预设规则分发到LCC0和LCC3之间的多条Serdes上面。具体可以为两种实现方式:
第一种:第一LCC将所述数据包以轮叫(Round-Robin)的方式均分到所述第一链路中的各条链路上进行转发。
具体的,继续参照图5所示的交换系统,LCC0在接收到网络侧发送的数据包之后, 即接收到网络侧发送的多个子数据包之后,将这些子数据包以轮叫的方式均匀分发到第一链路上,即均匀分发到LCC0和LCC3之间的直连的所有Serdes上,应当知道,这里的“均分分发”是指分发到各个Serdes上的子数据包的流量是均匀的。例如,假设LCC0的SE0提供4条Serdes,即第一链路包括着4条Serdes,分别为0#-3#,即LCC0通过SE0的这4条Serdes与LCC3直接互通;且LCC0的SE0接收到9个子数据包,分别为0#-8#,则LCC0在将0#子数据包分给0#Serdes,将1#子数据包分给1#Serdes,将2#子数据包分给2#Serdes,将3#子数据包分给3#Serdes,将4#子数据包分给0#Serdes,将5#子数据包分给1#Serdes,依此类推,直至将8#子数据包分给0#Serdes为止。
第二种:第一LCC获取所述第一链路中的各条链路的状态信息;并根据所述第一链路中的各条链路的状态信息,将所述数据包分发到所述第一链路中的各条链路上进行转发。
具体的,第一LCC获取第一链路中的各条链路的状态信息,具体实现时,可以是第一LCC监控第一链路中的各条链路以获取状态信息,也可以是第三LCC将第一链路中的各条链路的状态信息反馈给第一LCC。
当上述状态信息指示第一链路中各条链路的拥塞程度时,第一LCC根据第一链路中各条链路的拥塞程度,调整分发到第一链路中各条链路上的数据包的流量的大小,以使其中每条链路所承载的流量与每条链路的拥塞程度相匹配。例如:继续以图5为例,LCC0的SE0提供4条Serdes,分别为0#-3#,即LCC0通过SE0的这4条Serdes与LCC3直接互通;且LCC0的SE0接收到9个子数据包,分别为0#-8#,若LCC0获知0#Serdes和1#Serdes比较拥堵,则LCC0在对0#-8#子数据包进行分发时,可以有选择的不给或者少给0#和1#Serdes上分发子数据包,给其余不拥塞的2#和3#Serdes上多分一些子数据包,使得其中每条Serdes所承载的数据包的流量与每条链路的拥塞程度相匹配。
当上述状态信息指示第一链路中的各条链路的异常信息时,第一LCC根据第一链路中的各条链路的异常信息,确定第一链路中的异常链路,并将所述数据包分发到所述第一链路中除异常链路之外的正常链路上。例如:继续以图5为例,LCC0的SE0提供4条Serdes,分别为0#-3#,即LCC0通过SE0的这4条Serdes与LCC3直接互通;且LCC0的SE0接收到9个子数据包,分别为0#-8#。若LCC0根据第一链路的异常信息获知0#Serdes异常,则LCC0在对0#-8#子数据包进行分发时,可以将上述9个子数据包均匀或者非均匀分发到1#至3#Serdes上。
本发明提供的交换系统的流量转发方法,通过第一LCC根据交换系统配置的第二配置模式将接收到的数据包承载在第一LCC和第三LCC之间的第一链路上转发给第三LCC, 不仅实现了交换系统中数据包在任意两个节点之间的线速转发,且使得交换系统的扩容能力得到提升,并降低了交换系统的扩容成本。
在上述图4所示实施例的基础上,作为本发明实施例一的另一种可能的实施方式,本实施例涉及的当第一LCC确定交换系统当前预设的配置模式为第一配置模式时,即交换系统当前应用的是N跳模式时(N为大于等于3的自然数),第一LCC通过将数据包承载在第三链路上转发给第三LCC的具体过程。
为了能够更好的说明本实施例N跳的实施方式,在此以一个具体的交换系统为例来说明,参见图6所示的交换系统,该交换系统中包括1个第一LCC(LCC0),3个第二LCC(LCC1、LCC2和LCC3),1个第三LCC(LCC4),且每个LCC中均包括1个SE0。LCC0中的SE0分别与LCC1、LCC2、LCC3、LCC4中的SE0连接;LCC1中的SE0分别与LCC2、LCC3、LCC4中的SE0连接;LCC2中的SE0分别与LCC1、LCC3、LCC4中的SE0连接;LCC3中的SE0与LCC1、LCC2、LCC4中的SE0连接。
当交换系统的配置模式指示的是N跳模式时,LCC0接收到网络侧发送的数据包时(该数据包实际上包括多个子数据包),将数据包通过LCC0中的SE0转发给第二LCC中的SE0(此处的第二LCC可以是LCC1、LCC2、LCC3中的任意一个LCC或多个LCC),并通过第二LCC中的SE0转发给LCC4中的SE0(此处的第二LCC可以是LCC1、LCC2、LCC3中的任意一个LCC或多个LCC),并通过第二LCC中的SE0转发给LCC4中的SE0。可选的,若上述每个LCC的SE0均提供至少一条Serdes,则使得数据包从LCC0直接到达LCC4的Serdes称之为第一链路(即两跳链路),使得数据包从LCC0经过LCC1、LCC2、LCC3中的一个或多个LCC到达LCC4的Serdes称之为第二链路(n跳链路)。LCC0中的SE0就可以将接收到的多个子数据包按照预设规则分发到LCC0和LCC3之间的第三链路上面,该第三链路包括上述的第二链路,或,第一链路和第二链路。具体可以为三种实现方式:
第一种:第一LCC将数据包以轮叫的方式均匀分发到第三链路中的各条链路上进行转发。
可选的,第一LCC接收到网络侧发送的多个子数据包之后,可以将这些子数据包以以“轮叫”的方式(即Round-Robin方式)均匀分发到第三链路中的各条链路上进行转发。可选的,可以是将这些子数据包全部分发到第二链路中的各条链路上转发给第三LCC,也可以是将这些子数据包中的部分子数据包均匀分发到第一链路中的各条链路上转发给第三LCC,并将剩余的子数据包均匀分发到第二链路中的各条链路上转发给第三LCC。
具体的,继续参照图6所示的交换系统,LCC0在接收到网络侧发送的数据包之后,即接收到网络侧发送的多个子数据包之后,将这些子数据包以“轮叫”的方式(即Round-Robin方式)均匀分发到第三链路中的各条链路上,即均匀分发到上述至少一条Serdes上。例如,假设第三链路包括第一链路和第二链路,且第一链路和第二链路的总数为4条,0#和1#Serdes为第一链路,2#和3#为第二链路,而LCC0的SE0接收到9个子数据包,分别为0#-8#,则LCC0在将0#子数据包分给0#Serdes,将1#子数据包分给1#Serdes,将2#子数据包分给2#Serdes,将3#子数据包分给3#Serdes,将4#子数据包分给0#Serdes,将5#子数据包分给1#Serdes,依此类推,直至将8#子数据包分给0#Serdes为止。
第二种:第一LCC将所述数据包优先分发到所述第一链路中的各条链路上,待所述第一链路中的各条链路达到饱和状态时,将所述数据包中的剩余数据包分发到所述第二链路中的各条链路上。
具体的,本实现方式中,第三链路仅包括第一链路和第二链路。继续以图6所示的交换系统为例,第三链路的总数等于第一链路和第二链路的总数的和,即第三链路的总数为4条,0#和1#Serdes为第一链路,2#和3#为第二链路,而LCC0的SE0接收到9个子数据包,分别为0#-8#,则LCC0将接收到的数据包中的部分子数据包优先分配给0#和1#Serdes。假设LCC0在将0#-4#子数据包均匀或者非均匀分配给0#和1#Serdes后,0#和1#Serdes已达到饱和状态,则LCC0将接收到的数据包中的剩余5#-8#子数据包均匀或者非均匀分发到2#和3#Serdes上。
第三种:第一LCC获取所述第三链路中的各条链路的状态信息,并根据所述第三链路中的各条链路的状态信息,将所述数据包分发到所述第三链路中的各条链路上进行转发。
具体的,第一LCC可以主动获取第三链路中的各条链路的状态信息,即可以是自己监控第三链路中的各条链路以获取第三链路中的各条链路的状态信息,也可以是第二LCC和/或第三LCC将第三链路中的各条链路的状态信息反馈给第一LCC。
若上述状态信息指示第三链路中的各条链路的拥塞程度,第一LCC根据第三链路的拥塞程度,调整分发到第三链路中的各条链路的数据包的流量的大小,以使第三链路中的每条链路所承载的流量与每条链路的拥塞程度相匹配。例如:继续以图6为例,假设第三链路包括第一链路和第二链路,第一链路和第二链路的总数为4条,0#和1#Serdes为第一链路,2#和3#为第二链路,而LCC0的SE0接收到9个子数据包,分别为0#-8#。若LCC0获知0#Serdes和1#Serdes比较拥堵,则LCC0在对0#-8#子数据包进行分发时, 可以有选择的不给或者少给0#和1#Serdes上分发数据包,给其余不拥塞的2#和3#Serdes上多分一些子数据包,使得其中每条Serdes所承载的数据包的流量与每条链路的拥塞程度相匹配。
若所述状态信息指示所述第三链路中的各条链路的异常信息,第一LCC根据所述第三链路中的各条链路的异常信息,确定所述第三链路中的异常链路;并将所述数据包分发到第三链路中除所述异常链路之外的正常链路上。例如:继续以图6为例,假设第三链路包括第一链路和第二链路,第一链路和第二链路的总数为4条,0#和1#Serdes为第一链路,2#和3#为第二链路,而LCC0的SE0接收到9个子数据包,分别为0#-8#。若LCC0根据第一链路和第二链路的异常信息获知0#Serdes异常,则LCC0在对0#-8#子数据包进行分发时,可以将上述9个子数据包均匀或者非均匀分发到1#至3#Serdes上。
本发明提供的交换系统的流量转发方法,通过第一LCC根据交换系统配置的第一配置模式将接收到的数据包承载在第一LCC和第三LCC之间的第三链路上转发给第三LCC,不仅实现了交换系统中数据包在任意两个节点之间的线速转发,且使得交换系统的扩容能力得到提升,并降低了交换系统的扩容成本。
在上述实施例的基础上,作为本发明实施例一的第三种可能的实施方式,本实施例涉及的是第一LCC给接收到的多个子数据包打上时标,并在将多个子数据包转发给第三LCC的过程中,第三LCC给子数据包添加时标补偿,从而使得子数据包上携带补偿后的时标,进而使得第三LCC根据各个子数据包携带的补偿后的时标对各个子数据包进行排序的具体过程。该实施例中的第三链路仅包括第一链路和第二链路。
具体的,第一LCC接收到数据包可以包括第一子数据包和第二子数据包,该第一子数据包为待分发到第一链路路上的子数据包,第二子数据包为待分发到所述第二链路上的子数据包。其中,第一子数据包在到达第一LCC的入口时,第一LCC会根据第一子数据包到达第一LCC时间为第一子数据包打上一个时标,即第一原始时标;并且,当第二子数据包在到达第一LCC的入口时,第一LCC也会根据第二子数据包到达第一LCC时间为第二子数据包打上一个时标,即第二原始时标。即,第一原始时标指示第一子数据包到达第一LCC的初始时刻,第二原始时标指示第二子数据包到达第一LCC的初始时刻。
之后,第一LCC会将第一子数据包和第二子数据包分发到第一LCC与第三LCC之间的第一链路和第二链路上进行转发。但是由于第一链路和第二链路的延时存在不同,因此第一子数据包和第二子数据包因为转发时延到达第三LCC的顺序不一样,即第一子数据包经过第一转发时延到达第三LCC,第二子数据包因为有第二LCC的参与,因此需要 经过第二转发时延才可以到达第三LCC并且,该第二转发时延包括第二子数据包从第一LCC到达第二LCC的时延1,加上第二LCC将第二子数据包转发到第三LCC的时延2,这里的时延2可能是第二LCC直接将第二子数据包转发到第三LCC的时延,也可能是第二LCC经过其他的一个或多个第二LCC之后将第二子数据包转发给第三LCC的时延,需要说明的是,每条链路的转发时延可以包括光纤传输时延和SE芯片的处理时延等。当第三LCC收到第一子数据包时,将第一转发时延添加到第一子数据包的时标中,即第一子数据包在第三LCC的入口处时携带的时标为第一原始时标加上第一转发时延;第二LCC在接收到第二子数据包时,将时延1添加到第二子数据包的时标中,当第二子数据包从第二LCC到达第三LCC的入口处时,第三LCC将时延2添加到第二子数据包的时标中,即第二子数据包在第三LCC的入口处时携带的时标为第二原始时标加上时延1和时延2,也就是第二原始时标加上第二转发时延。因此,为了能够对第一子数据包和第二子数据包进行排序,以还原出原始数据包的顺序,第三LCC需要根据上述第一子数据包的第一转发时延和第二子数据包的第二转发时延,分别对第一原始时标添加第一时标补偿得到第一时标,以及对所述第二原始时标添加第二时标补偿得到第二时标,使得所述第一时标和所述第二时标的时间顺序,与所述第一原始时标和所述第二原始时标的时间顺序保持一致。实际上,第一时标等于第一原始时标、第一转发时延和第一时标补偿之和,第二时标等于第二原始时标、第二转发时延和第二时标补偿之和。其中,第一转发时延和第一时标补偿之和,等于第二转发时延和第二时标补偿之和。第三LCC根据第一时标和第二时标,对第一子数据包和第二子数据包进行排序,以还原最初的数据包顺序。
为了能够更好的说明第一LCC为第一子数据包和第二子数据包添加时标补偿,使得第三LCC根据补偿后的时标还原数据包的原始顺序,此处以上述图5所示的交换系统进行举例,具体说明添加时标补偿的过程。具体为:
交换系统配置图5所示的流量转发模式为3-hop Mesh模式。假设LCC0接收到的数据包包括首包、中包和尾包,其中,首包为第一子数据包,中包和尾包为第二子数据包。当上述LCC0接收到首包、中包和尾包后,LCC0可以按照顺序给首包打上时标1(假设首包是1点整到达LCC0的,时标1即为第二原始时标,首包走的是LCC0和LCC3之间的第二链路),给中包打上时标2(假设中包是2点整到达LCC0的,时标2即为第二原始时标,中包走的是LCC0和LCC3之间的第二链路),给尾包打上时标3(假设尾包是3点整到达LCC0的,时标3即为第一原始时标,尾包走的是LCC0和LCC3之间的第一链路)。然后,LCC0可以按时间先后顺序将这3个包发送出去。即,LCC0中的SE0将首包发给LCC1中的SE0,将中包发给LCC2中的SE0,将尾包发给LCC3中的SE0。因此,尾 包很有可能先于首包和中包到达LCC3。
假设首包经过时延1(假设为1小时)到达LCC1中的SE0的入口(此时还没有到达LCC1的SE0里),LCC1中的SE0可以在入口处给首包加上1小时的时延,并且在首包到达LCC1的SE0的出口处时给首包加上经过2-hop的标识(即首包此时经过了LCC0的SE0和LCC1的SE0,所以是2-hop),然后经过时延2(假设为1小时)到达LCC3的入口。因此,首包到达第三LCC的SE0的入口处时的时标为1+1+1=3点(即第二转发时延为2小时)。
假设尾包经过第一转发时延(假设为0.5小时)到达LCC3的SE0的入口处时(即尾包此时还没到LCC3中的SE0里,因此尾包此时只经过了1-hop),LCC3中的SE0会对该尾包加0.5小时的时延,则该尾包到达LCC3的SE0入口处时的时标为3点半。
假设中包经过时延1(假设为1小时)到达LCC2的SE0的入口处时(此时中包还没有到LCC2的SE0里),LCC2中的SE0会给中包加1小时的时延,并且LCC2的SE0在其出口处会给中包加上经过2-hop的标识(即中包此时经过了LCC0的SE0和LCC2的SE0,所以是2-hop),然后经过时延2(假设为1小时)到达LCC3的入口。因此,中包到达LCC3的SE0的入口处的时标为2+1+1=4点(即第二转发时延为2小时)。
之后,第三LCC根据第一转发时延给尾包添加第一时标补偿,给首包和中包添加第二时标补偿,并且确保第一转发时延和第一时标补偿之和等于第二转发时延和第二时标补偿之和。即第三LCC给尾包添加的第一时标补偿可以为2.5小时,给首包和中包添加的第二时标补偿可以为1小时,这样尾包到达第三LCC的SEO中的第一时标为6点,中包到达第三LCC的SE0中的第二时标为5点,首包到达第三LCC的SE0中的第二时标为4点。即上述首包、中包和尾包上添加了不同的时标补偿,但是这三个包依然是尾包先到达LCC3的SE0(因为尾包的转发链路是直连链路),首包和中包后到达LCC3的SE0。最后,LCC3上的SE0根据这三个包上面所携带的补偿后的时标(即第一时标和第二时标)对这三者进行排序,即时标为4点的首包在前,时标为5点的中包在中间,时标为6点的尾包在最后。然后,LCC3的SE0按照所排好的次序依次输出给LCC3的目的FIC,即先输出首包,再输出中包,最后输出尾包。由于各个子数据包上携带了补偿后的时标,且补偿后的时标顺序和LCC0之前给子数据包打上的原始的时标的顺序相同。因此,LCC3中的目标SE0可以根据补偿后的时标对各个数据包进行排序,故减轻了目标LCC中的目标SE对数据包进行排序时的压力。
在本发明实施例一的第四种可能的实施方式中,第一LCC还可以给接收到的多个子数据包分别标上序列号,其中,该序列号标示了各个子数据包到达第一LCC时的先后顺 序,使得第三LCC收到多个子数据包时,可以根据多个子数据包的序列号,对各个子数据包进行排序。采用本实施方式的方案,也可以减轻了目标LCC中的目标SE对数据包进行排序时的压力。
可选的,本发明实施例中的交换系统还可以进行1到多的多播流量的转发。交换系统可以将流量转发的模式配置为仅支持2-hop转发,即参见图5所示的交换系统,若LCC0中需要同时向LCC1、LCC2和LCC3发送相同的数据包,则在LCC0的发送侧完成1-to-3的复制(即数据包的多播复制),这样LCC1或LCC2可以不再承担转发多播包给LCC3的任务。另外,交换系统可以将流量转发的模式配置为3-hop转发,即LCC0将多播包转发给LCC1或LCC2后,再由LCC1或LCC2转发给LCC3。
本发明提供的流量转发方法,通过第一LCC根据交换系统配置的模式将接收到的数据包承载在第一LCC和第三LCC之间的第三链路链路上转发给第三LCC,不仅实现了交换系统中数据包在任意两个节点之间的线速转发,且使得交换系统的扩容能力得到提升,并降低了交换系统的扩容成本。另外,本发明实施例提供的流量转发方法,可以对接收到的数据包进行时标补偿处理,减轻了目标LCC对数据包的排序压力。
可选的,上述交换系统的第一LCC、至少一个第二LCC和第三LCC在按照mesh形式连接时可以有多种实现方式,且这些LCC中均包括至少一个SE。下述具体介绍该交换系统中的LCC之间的连接方式,需要说明的是,这里只是给出了交换系统按照mesh形式连接时的几个典型实施方式,不能用于限定本发明的技术方案,mesh连接的实质就是多个LCC中任意两个LCC两两互连:
第一种连接方式:假设交换系统中的第一LCC、第二LCC和第三LCC中的每个SE所提供的链路(Serdes)数量均为m,所述第二LCC的个数为(p-1)个,第三LCC的个数为1个,即该交换系统中的第二LCC和第三LCC的个数总和为p个。交换系统将上述m平均划分为p组,每组内的链路数量为n,所述n等于m除以p的商值,所述m为p的整数倍,所述p为大于等于2的整数。则第一LCC与第二LCC、第三LCC通过SE进行连接的方式可以包括以下A、B、C三种:
A:第一LCC中的每个第一SE与第二LCC中的第二SE、第三LCC中的第三SE一一对接,且第二LCC中的第二SE也与第三LCC中的第三SE一一对接,且第一SE与第二SE之间的链路数为n,第二SE与第三LE之间的链路数也为n;其中,第二SE和第三SE均为与第一SE序号相同的SE。
可选的,第一LCC与第二LCC、第三LCC中的SE个数可以相同,也可以不同。当第 一LCC中的SE的个数与第二LCC、第三LCC中的SE的个数部分不同或三者均不相同时,同样是将第一LCC中的每个第一SE与第二LCC中的第二SE、第三LCC中的第三SE一一对接。若第二LCC中的SE个数大于第一LCC中SE的个数,那么在将第二LCC中与第一SE相同序号的SE与第一SE连接起来之后,第二LCC中剩余的那些SE可以不用连接(因为这些SE在第一LCC中没有与之对应相连的SE),且第二LCC与第三LCC连接时也参照此进行。并且,第一SE与第二SE、第一SE与第三SE、第二SE与第三SE之间连接的链路数等于n,这个n的值实际上是上述m被平均分为p组后,每组内的链路数量。具体的连接方式可以参见图7所举的例子(图2所示的交换系统实际上也是参照这种连接方式进行连接的):
图7中,交换系统包括一个第一LCC(LCC0)、2个第二LCC(LCC1和LCC2),一个第三LCC(LCC3)。假设LCC0和LCC1中均包括1个SE,即SE0;LCC2中包括2个SE,分别为SE0和SE1,LCC3中包括4个SE,分别为SE0至SE3。LCC0至LCC3中的每个SE均提供12条链路。由于第二LCC和第三LCC的个数总和p等于3个,所以将第一LCC中的每个SE提供的12条链路(即m)平均划分为3组,分别是第一组、第二组、第三组,每组内的链路数量n等于4条。
当LCC0中的第一SE(SE0)连接LCC1时,LCC0中的SE0与LCC1中的SE0(该SE0即为第二SE)对接。且,LCC0中的SE0与LCC1中的SE0之间连接的链路数为4条,即LCC0中的SE0将自身的第一组链路用来连接LCC1了。
当LCC0中的第一SE(SE0)连接LCC2时,LCC0中的SE0与LCC2中的SE0(第二SE)对接。且,LCC0中的SE0与LCC2中的SE0之间连接的链路数也为4条,即LCC0中的SE0将自身的第二组链路用来连接LCC2了,LCC2中剩余的SE1则空着不连接。
当LCC0中的第一SE(SE0)连接LCC3时,LCC0中的SE0与LCC3中的SE0(第二SE)对接。且,LCC0中的SE0与LCC3中的SE0之间连接的链路数也为4条,即LCC0中的SE0将自身的第三组链路用来连接LCC3了,LCC3中剩余的SE1-SE3则空着不连接。
当LCC1连接LCC2和LCC3时,其连接方式与LCC0连接LCC2和LCC3时的连接方式相同;当LCC2连接LCC3时,由于LCC2中的SE0和SE1分别提供的12条链路中在之前LCC2与LCC1、LCC0分别连接时已经用去了2组(即此时LCC2已经与LCC0和LCC1建立了连接关系,但与LCC3还没有连接),则剩余的最后一组则用来连接LCC3,在连接时,LCC2中的SE0和SE1分别与LCC3中的SE0和SE1一对一对接,每两个连接的SE之间的链路数为4条。LCC3中剩余的SE2和SE3则空着不连接。
B:第一LCC中的每个第一SE与第二LCC和第三LCC中的所有SE连接,且第一LCC 中的每个第一SE与第二LCC或第三LCC中的任一个SE之间连接的链路数为n除以当前与第一LCC连接的第二LCC或第三LCC中所有SE的个数的商值。
具体的,本实施方式中的交换系统的连接方式也通过一个例子来进行具体说明,参见图8所示。图8中,交换系统包括一个第一LCC(LCC0)、2个第二LCC(LCC1和LCC2),一个第三LCC(LCC3)。假设LCC0和LCC1中均包括1个SE,即SE0;LCC2中包括2个SE,分别为SE0和SE1,LCC3中包括4个SE,分别为SE0至SE3。LCC0至LCC3中的每个SE均提供12条链路。由于第二LCC和第三LCC的个数总和p等于3个,所以将第一LCC中的每个SE提供的12条链路(即m)平均划分为3组,分别是第一组、第二组、第三组,每组内的链路数量n等于4条。
当LCC0中的第一SE(SE0)连接LCC1时,LCC0中的SE0与LCC1中的SE0(第二SE)对接,且LCC0的SE0与LCC1中的SE0之间连接的链路数量就是4/1=4条,即LCC0中的SE0将自身的第一组链路用来连接LCC1了。
当LCC0中的第一SE(SE0)连接LCC2时,LCC0中的SE0需要分别连接LCC2中的SE0和SE1,且每两个连接的SE之间的链路数量为4/2=2条,即LCC0中的SE0将自身的第二组链路用来连接LCC2了。
当LCC0中的第一SE(SE0)连接LCC3时,LCC0中的SE0需要分别连接LCC3中的SE0至SE3,且每两个连接的SE之间的链路数量为4/4=1条,即LCC0中的SE0将自身的第三组链路用来连接LCC3了。
当LCC1连接LCC2和LCC3时,其连接方式与LCC0连接LCC2和LCC3时的连接方式相同;当LCC2连接LCC3时,由于LCC2中的每个SE提供的12条链路中在之前连接LCC1和LCC0时已经用去了2组(即此时LCC2已经与LCC0和LCC1建立了连接关系,但与LCC3还没有连接),则剩余的最后一组则用来连接LCC3,在连接时,LCC2中的SE0和SE1分别与LCC3中的所有SE连接,且每两个连接的SE之间的链路数量为4/4=1条。
C:第一LCC中的每个第一SE与第二LCC和第三LCC中的第四SE连接,所述第一SE与第四SE之间的链路数为n除以当前与所述第一LCC连接的第二LCC或第三LCC中的所述第四SE的个数的商值;其中,所述第四SE为所述第二LCC或第三LCC中与所述第一LCC具有连接关系的SE,所述n为当前与所述第一LCC连接的所述第二LCC或第三LCC中的所述第四SE的个数的整数倍。
具体的,本实施方式中的第一LCC中的每个第一SE可以连接第二LCC中或第三LCC的部分SE,即第二LCC或第三LCC中只有一部分SE与第一LCC连接,这部分SE均可以称为第四SE。第一LCC中的每个第一SE与第二LCC或第三LCC中的第四SE连接,且第 一SE与第四SE之间的链路数为n除以当前与所述第一LCC连接的第二LCC或第三LCC中的第四SE的个数的商值。
具体的,本实施方式中的交换系统的连接方式也通过一个例子来进行具体说明,参见图9所示。图9中,交换系统包括一个第一LCC(LCC0)、2个第二LCC(LCC1和LCC2),一个第三LCC(LCC3)。假设LCC0和LCC1中均包括1个SE,即SE0;LCC2中包括2个SE,分别为SE0和SE1,LCC3中包括4个SE,分别为SE0至SE3。LCC0至LCC3中的每个SE均提供12条链路。由于第二LCC和第三LCC的个数总和p等于3个,所以将第一LCC中的每个SE提供的12条链路(即m)平均划分为3组,分别是第一组、第二组、第三组,每组内的链路数量n等于4条。
当LCC0中的第一SE(SE0)连接LCC1时,LCC0中的SE0与LCC1中的SE0(此时,该SE0即为第二SE,也是第四SE)对接,且LCC0的SE0与LCC1中的SE0之间连接的链路数量就是4/1=4条,即LCC0中的SE0将自身的第一组链路用来连接LCC1了。
当LCC0中的第一SE(SE0)连接LCC2时,假设LCC2中SE0为第四SE(即LCC2中第四SE的个数为1),则LCC0中的SE0需要连接LCC2中的SE0,且第一SE与第四SE之间的链路数量为4/1=4条,即LCC0中的SE0将自身的第二组链路用来连接LCC2了,LCC2中的SE1则空着不连接。
当LCC0中的第一SE(SE0)连接LCC3时,假设LCC3中SE0和SE1均为第四SE(即LCC3中第四SE的个数为4),则LCC0中的SE0需要分别连接LCC3中的SE0和SE1,且第一SE与第四SE之间的链路数量为4/2=2条。
当LCC1连接LCC2和LCC3,或LCC2连接LCC3时,其连接方式与LCC0连接LCC1、LCC2和LCC3类似,在此不再赘述。
第二种连接方式:假设交换系统中的第一LCC中的每个SE提供的数量为x,所述第二LCC的个数为(p-1)个,第三LCC的个数为1个,将x划分为p组,每组内的链路数量等于与所述第一LCC连接的第二LCC或第三LCC中所包含的SE的个数的q倍,其中,x为大于等于p的整数,p为大于等于2的整数,q为大于等于1的整数;则第一LCC与第二LCC、第三LCC通过SE连接可以下列D、E、F三种实现方式:
D:第一LCC中的每个第一SE与第二LCC或第三LCC中的所有SE连接,且第一LCC中的每个第一SE与第二LCC或第三LCC中的任一个SE之间连接的链路数为q条。
具体的,第一LCC中的每个第一SE提供的链路数量x可以根据当前与第一LCC连接的第二LCC和第三LCC中所包括的SE的个数的总和确定。
为了能更好的说明LCC之间的连接方式,此处举一个交换系统的具体连接方式的例 子,参见图10所示。图10中,交换系统包括一个第一LCC(LCC0)、2个第二LCC(LCC1和LCC2),一个第三LCC(LCC3)。假设LCC0和LCC1中均包括1个SE,即SE0;LCC2中包括2个SE,分别为SE0和SE1,LCC3中包括4个SE,分别为SE0至SE3。第一LCC中的第一SE(SE0)提供的链路数假设为1+2+4=7条,即第一LCC中的SE0提供的链路数量与第二LCC和第三LCC的大小相关。由于第二LCC和第三LCC的个数总和p为3个,所以将第一LCC中的SE0提供的7条链路(即m)划分为3组,分别是第一组、第二组、第三组,且第一组的链路数量为1条,用于连接LCC1;第二组的链路数量为2条,用于连接LCC2;第三组的链路数量为4条,用于连接LCC3。需要说明的是,这里3组链路数的划分也是与当前与第一LCC连接的第二LCC或第三LCC中的SE的个数相关。即第一组内的链路数量是LCC1中包括的SE个数的1倍(即q=1),第二组内的链路数量是LCC2中包括的SE个数的1倍(即q=1),第三组内的链路数量是LCC3中包括的SE个数的1倍(即q=1)。
当LCC0中的第一SE(SE0)连接LCC1、LCC2和LCC3时,LCC0中的SE0均通过第一组链路(1条)去连接LCC1中的SE0,通过第二组链路(2条)分别去连接LCC2中的SE0和SE1,通过第三组链路(4条)去连接LCC3中的SE0至SE3,且每两个连接的SE之间的链路数量q均为1条。
当LCC1连接LCC2和LCC3时,其连接方式与LCC0连接LCC2、LCC3的连接方式相同。
当LCC2连接LCC3时,由于LCC2中的每个SE(SE0和SE1)分别提供的7条链路中在之前LCC2与LCC1、LCC0分别连接时已经用去了第一组和第二组链路(即此时LCC2已经与LCC0和LCC1建立了连接关系,但与LCC3还没有连接),则剩余的最后一组则用来连接LCC3。即LCC2中的SE0连接LCC3中的SE0至SE3,LCC2中的SE1连接LCC3中的SE0至SE3,且每两个连接的SE之间的链路数量为1条。需要说明的是,LCC2通过第二组链路(2条)与LCC1连接时,每两个连接的SE之间的链路数量q也为1条,此处第二组链路只用去了1条,剩余的1条备用。
E:第一LCC中的每个第一SE与第二LCC或第三LCC中的第五SE连接;其中,所述第五SE为第二LCC或第三LCC中与所述第一LCC具有连接关系的SE,所述第五SE的个数为y;所述第一LCC中的每个第一SE与所述第五SE之间连接的链路数等于与所述第一LCC连接的第二LCC或第三LCC中所包含的SE的个数的q倍除以y的商值。
具体的,本实施例中的第一LCC中的每个第一SE可以连接第二LCC或第三LCC中的部分SE,即第二LCC或第三LCC中只有一部分SE与第一LCC连接,这部分SE均可以 称为第五SE,也就是说第五SE为第二LCC或第三LCC中与第一LCC具有连接关系的SE,该第五SE的个数为y。
为了能更好的说明LCC之间的连接方式,此处举一个交换系统的具体连接方式的例子,参见图11所示。图11中,交换系统包括一个第一LCC(LCC0)、2个第二LCC(LCC1和LCC2),一个第三LCC(LCC3)。假设LCC0和LCC1中均包括1个SE,即SE0;LCC2中包括2个SE,分别为SE0和SE1,LCC3中包括4个SE,分别为SE0至SE3。且上述LCC0、LCC1、LCC2和LCC3这4个LCC中的每个SE均提供1+2+4=7条链路,这7条链路根据第二LCC和第三LCC的个数总和被分为3组,且每组内的链路数量与当前与LCC连接的第二LCC的个数相关。由于第二LCC和第三LCC的个数总和p为3个,所以将第一LCC中的SE0提供的7条链路(即m)划分为3组,分别是第一组、第二组、第三组,且第一组的链路数量为1条,用于连接LCC1;第二组的链路数量为2条,用于连接LCC2;第三组的链路数量为4条,用于连接LCC3。这里3组链路数的划分也是和当前与第一LCC连接的第二LCC或第三LCC中的SE的个数相关,即第一组内的链路数量是LCC1中包括的SE个数的1倍(即q=1),第二组内的链路数量是LCC2中包括的SE个数的1倍(即q=1),第三组内的链路数量是LC3中包括的SE个数的1倍(即q=1)。
当LCC0中的SE0连接LCC1中的第五SE(此时LCC1中的SE0即是第二SE,也是第五SE)时,即LCC1中的第五SE的个数y的值等于1,则LCC0中的SE0连接LCC1中的SE0,且LCC0的SE0与LCC1中的SE0之间连接的链路数量就是1/1=1条。
当LCC0连接LCC2时,假设LCC2中SE0为第五SE(即LCC2中第五SE的个数为1,即y的值为1),则LCC0中的SE0需要连接LCC2中的SE0,且这两个连接的SE之间的链路数量为2/1=2条。LCC2中的SE1则空着不与LCC0连接。
当LCC0连接LCC3时,假设LCC3中SE0和SE1均为第五SE(即LCC3中第五SE的个数为2,即y的值为2),则LCC0中的SE0需要分别连接LCC3中的SE0和SE1,且每两个连接的SE之间的链路数量为4/2=2条。LCC3中的SE2和SE3则空着不与LCC0连接。
当LCC1连接LCC2和LCC3时,其连接方式与LCC0连接LCC2、LCC3的连接方式相同。
当LCC2连接LCC3时,由于LCC2中的每个SE提供的7条链路中在之前LCC2与LCC1、LCC0分别连接时已经用去了第一组和第二组链路,即此时LCC2已经与LCC0和LCC1建立了连接关系,但与LCC3还没有连接。则剩余的最后一组第三组链路则用来连接LCC3,在连接时,LCC2中的每个SE分别连接LCC3中的SE0和SE1,且每两个连接的SE之间的链路数量为4/2=2条。需要说明的是,图11中虚线示出的LCC2与LCC0之间的1条 链路是从LCC2的角度出发的第一组链路的个数,即等于LCC0中的SE的个数。
F:第一LCC中的每个第一SE,与,第二LCC中的第二SE或第三LCC中的第三SE一一对接,所述第一SE与所述第二SE之间的链路数为所述第二SE所在的第二LCC中所有第二SE的个数,所述第一SE与所述第三SE之间的链路数为所述第三SE所在的第二LCC中所有第二SE的个数;其中,所述第二SE和第三SE均为与所述第一SE序号相同的SE。
为了能更好的说明LCC之间的连接方式,此处举一个交换系统的具体连接方式的例子,参见图12所示。图12中,交换系统包括一个第一LCC(LCC0)、2个第二LCC(LCC1和LCC2),一个第三LCC(LCC3)。假设LCC0和LCC1中均包括1个SE,即SE0;LCC2中包括2个SE,分别为SE0和SE1,LCC3中包括4个SE,分别为SE0至SE3。且这4个LCC中的每个SE均提供1+2+4=7条链路,这7条链路根据第二LCC和第三LCC的个数总和被分为3组,且每组内的链路数量与当前与第一LCC连接的第二LCC或第三LCC中的SE的个数相关。由于第二LCC和第三LCC的个数总和p为3个,所以将第一LCC中的SE0提供的7条链路(即m)划分为3组,分别是第一组、第二组、第三组,且第一组的链路数量为1条,用于连接LCC1;第二组的链路数量为2条,用于连接LCC2;第三组的链路数量为4条,用于连接LCC3。这里3组链路数的划分也是和当前与第一LCC连接的第二LCC或第三LCC中的SE的个数相关,即第一组内的链路数量是LCC1中包括的SE个数的1倍(即q=1),第二组内的链路数量是LCC2中包括的SE个数的1倍(即q=1),第三组内的链路数量是LC3中包括的SE个数的1倍(即q=1)。
当LCC0中的第一SE(SE0)连接LCC1时,LCC0中的SE0与LCC1中的SE0(这个SE0即为第二SE)对接,且LCC0中的SE9与LCC2中的SE0之间连接的链路数为1条。
当LCC0中的第一SE(SE0)连接LCC2时,LCC0中的SE0与LCC1中的SE0对接,LCC1中的SE1空着不连接,并且,LCC0中的SE0与LCC2中的SE0之间连接的链路数为2条。LCC2中剩余的其他的SE并不是第二SE,可以空置不连接。
当LCC0中的第一SE(SE0)连接LCC3时,LCC0中的SE0与LCC3中的SE0(即第三SE)对接,LCC3中剩余的SE1至SE3空着不连接,并且,LCC0中的SE0与LCC3中的SE0之间连接的链路数为4条。LCC2中剩余的其他的SE并不是第二SE,可以空置不连接。
当LCC1连接LCC2和LCC3时,其连接方式与LCC0连接LCC2、LCC3的连接方式相同。
当LCC2连接LCC3时,由于LCC2中的每个SE提供的7条链路中在之前LCC2与LCC1、LCC0分别连接时已经用去了第一组和第二组链路(即此时LCC2已经与LCC0和LCC1建 立了连接关系,但与LCC3还没有连接),则剩余的最后一组第三组链路则用来连接LCC3,在连接时,LCC2中的SE0和SE1分别与LCC3中的SE0和SE1(这2个SE即第三SE)一一对接,LCC3中剩余的SE2和SE3则空着不连接,每两个连接的SE之间的链路数为4条。要说明的是,图12中虚线示出的LCC2与LCC0之间的1条链路是从LCC2的角度出发的第一组链路的个数,即等于LCC0中的SE的个数。
本发明提供的流量转发方法,通过第一LCC根据交换系统配置的模式将接收到的数据包承载在第一LCC和第三LCC之间的第三链路上转发给第三LCC,不仅实现了交换系统中数据包在任意两个节点之间的线速转发,且使得交换系统的扩容能力得到提升,并降低了交换系统的扩容成本。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
图13为本发明实施例二提供的交换系统中的第一LCC的结构示意图一。需要说明的是,本实施例中为了便于描述,将各个LCC区分为了第一LCC,第二LCC以及第三LCC,实际上,这里的第一LCC可以是交换系统中的任意一个LCC,因此,本实施例是通过描述交换系统中任意一个LCC在数据包转发过程中的功能,来呈现整个交换系统的功能。参见图13所示,所述第一LCC通过无线网格mesh形式的拓扑结构与交换系统中的至少一个第二LCC以及第三LCC互连,所述第一LCC包括至少一个交换网芯片SE10,所述SE10包括:第一获取模块101和发送模块102。其中,第一获取模块101,用于接收数据包,并对所述数据包进行解析以获取所述数据包的目的地址;发送模块102,用于当所述第一获取模块10获得的所述目的地址指示所述数据包发往所述第三LCC时,若所述交换系统当前预设的配置模式为第一配置模式,则将所述数据包承载在第三链路上转发给所述第三LCC,其中,所述第三链路包括:第一链路和第二链路,或,所述第二链路;所述第一链路为所述第一LCC和所述第三LCC之间的直连的两跳链路,且所述第一链路包括的链路数为至少一条;所述第二链路为所述第一LCC和所述第三LCC之间通过所述至少一个第二LCC进行中转的n跳链路,且所述第二链路包括的链路数为至少一条;其中,n为自然数,且3≤n≤N;所述第一配置模式指示所述交换系统当前应用的是N跳模式,N为大于等于3的自然数。
本发明实施例提供的交换系统,可以执行上述方法实施例,其实现原理和技术效果 类似,在此不再赘述。
图14为本发明实施例二提供的交换系统中的第一LCC的结构示意图二。在上述图13所示的实施例的基础上,上述的交换系统中的第一LCC,还可以包括交换网接口芯片(Fabric Interface,FIC)11,发送模块102,具体用于当所述第一获取模块101获得的目的地址指示所述数据包发往该FIC11时,将所述数据包转发给所述FIC11。
本发明实施例提供的交换系统,可以执行上述方法实施例,其实现原理和技术效果类似,在此不再赘述。
在上述图14所示实施例的基础上,进一步地,上述发送模块102还可以用于当所述目的地址指示所述数据包发往所述第三LCC时,若所述交换系统当前预设的配置模式为第二配置模式,则将所述数据包承载在所述第一链路上转发给所述第三LCC;其中,所述第二配置模式指示所述交换系统当前应用的是两跳模式。
更进一步地,上述发送模块102,具体用于将所述数据包以轮叫的方式均分到所述第一链路中的各条链路上进行转发。
更进一步地,参见图15提供的交换系统中的第一LCC的结构示意图三。在上述图14所示实施例的基础上,上述SE10,可以包括:第二获取模块103,该第二获取模块103,用于获取所述第一链路中的各条链路的状态信息;则上述发送模块102,用于根据所述第二获取模块103获得的所述第一链路中的各条链路的状态信息,将所述数据包分发到所述第一链路中的各条链路上进行转发。
若上述第二获取模块103获得的所述状态信息指示所述第一链路中各条链路的拥塞程度,则所述发送模块102,具体用于根据所述第一链路中的各条链路的拥塞程度,调整分发到所述第一链路中的各条链路上的数据包的流量的大小,以使其中每条链路所承载的流量与每条链路的拥塞程度相匹配。
若上述第二获取模块103获得的所述状态信息指示所述第一链路中的各条链路的异常信息,则参见图16所示的交换系统中的第一LCC的结构示意图四。在上述图15所示实施例的基础上,进一步地,如图16所示,上述SE还可以包括:第一确定模块104;该第一确定模块104,用于根据所述第二获取模块103获得的所述第一链路中的各条链路的异常信息,确定所述第一链路中的异常链路;则上述发送模块102,用于将所述数据包分发到所述第一链路中除所述异常链路之外的正常链路上进行转发。
本发明实施例提供的交换系统,可以执行上述方法实施例,其实现原理和技术效果类似,在此不再赘述。
参见上述图13所示的实施例,可选的,上述发送模块102,还可以用于将所述数据 包以轮叫的方式均匀分发到所述第三链路中的各条链路上进行转发。
可选的,当所述第三链路包括所述第一链路和所述第二链路时,上述发送模块102,还可以用于将所述数据包优先分发到所述第一链路中的各条链路上,待所述第一链路中的各条链路达到饱和状态时,将所述数据包中的剩余数据包分发到所述第二链路中的各条链路上。
可选的,参见图17所示的交换系统中的第一LCC的结构示意图五。在上述图14所示实施例的基础上,进一步地,如图17所示,上述SE10还可以包括第三获取模块105,用于获取所述第三链路中的各条链路的状态信息;则上述发送模块102,用于根据所述所述第三获取模块105获得的所述第三链路中的各条链路的状态信息,将所述数据包分发到所述第三链路中的各条链路上进行转发。
若上述第三获取模块105获得的所述状态信息指示所述第三链路中各条链路的拥塞程度,则所述发送模块102,具体用于根据所述第三链路中的各条链路的拥塞程度,调整分发到所述第三链路中的各条链路的流量的大小,以使所述第三链路中的每条链路所承载的流量与每条链路的拥塞程度相匹配。
若上述第三获取模块105获得的所述状态信息指示所述第三链路中的各条链路的异常信息,则参见图18所示的交换系统中的第一LCC的结构示意图六。在上述图17所示实施例的基础上,进一步地,如图18所示,上述SE10还可以包括:第二确定模块106。该第二确定模块106,用于根据所述第三链路和中的各条链路的异常信息,确定所述第三链路中的异常链路;则上述发送模块102,用于将所述数据包分发到所述第三链路中除所述异常链路之外的正常链路上进行转发。
本发明实施例提供的交换系统,可以执行上述方法实施例,其实现原理和技术效果类似,在此不再赘述。
图19为本发明实施例二提供的交换系统中的第一LCC的结构示意图七。所述第三链路包括第一链路和第二链路。上述数据包包括第一子数据包和第二子数据包,所述第一子数据包为待分发到所述第一链路路上的子数据包,所述第二子数据包为待分发到所述第二链路上的子数据包。则在上述图18所示实施例的基础上,该SE10还可以包括:第一时标添加模块107或第二时标添加模块108,二者均用于分别为所述第一子数据包添加第一原始时标,以及为所述第二子数据包添加第二原始时标,其中,所述第一原始时标指示所述第一子数据包到达所述第一LCC的初始时刻,所述第二原始时标指示所述第二子数据包到达所述第一LCC的初始时刻,以便所述第三LCC根据所述第一子数据包的第一转发时延和所述第二子数据包的第二转发时延,分别对所述第一原始时标添加第 一时标补偿得到第一时标,以及对所述第二原始时标添加第二时标补偿得到第二时标,使得所述第一时标和所述第二时标的时间顺序,与所述第一原始时标和所述第二原始时标的时间顺序保持一致,其中,第一转发时延和第一时标补偿之和,等于第二转发时延和第二时标补偿之和。
需要说明的是,当上述图13所示的实施例,在分发数据包时不限定第三链路所包括的内容,即第三链路可以只包括第二链路,也可以包括第一链路和第二链路,则上述SE10就包括第一时标添加模块107;当在分发数据包时限定第三链路所包括的内容,即限定第三链路只包括第一链路和第二链路,则上述SE10就包括第二时标添加模块108。
本发明实施例提供的交换系统,可以执行上述方法实施例,其实现原理和技术效果类似,在此不再赘述。
需要说明的是,图13至图19中的各模块都是包括电路系统的模块,每个模块可以是一个PCB(印制电路板)或IC(集成电路)、或者可以是PCB或IC中的一部分功能电路,本实施例对此不做限定。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (28)

  1. 一种交换系统的流量转发方法,其特征在于,所述交换系统包括按照无线网格mesh形式的拓扑结构互连的第一线卡框LCC、至少一个第二LCC以及第三LCC;所述方法包括:
    所述第一LCC接收数据包,并对所述数据包进行解析以获取所述数据包的目的地址;
    当所述目的地址指示所述数据包发往所述第三LCC时,若所述交换系统当前预设的配置模式为第一配置模式,则所述第一LCC将所述数据包承载在第三链路上转发给所述第三LCC,其中,所述第三链路包括:第一链路和第二链路,或,所述第二链路;所述第一链路为所述第一LCC和所述第三LCC之间的直连的两跳链路,且所述第一链路包括的链路数为至少一条;所述第二链路为所述第一LCC和所述第三LCC之间通过所述至少一个第二LCC进行中转的n跳链路,且所述第二链路包括的链路数为至少一条;其中,n为自然数,且3≤n≤N;所述第一配置模式指示所述交换系统当前应用的是N跳模式,N为大于等于3的自然数。
  2. 根据权利要求1所述的方法,其特征在于,所述方法还包括:
    当所述目的地址指示所述数据包发往所述第三LCC时,若所述交换系统当前预设的配置模式为第二配置模式,则所述第一LCC将所述数据包承载在所述第一链路上转发给所述第三LCC;其中,所述第二配置模式指示所述交换系统当前应用的是两跳模式。
  3. 根据权利要求2所述的方法,其特征在于,若所述交换系统当前预设的配置模式为第二配置模式,则所述第一LCC将所述数据包承载在所述第一链路上转发给所述第三LCC,包括:
    所述第一LCC将所述数据包以轮叫的方式均分到所述第一链路中的各条链路上进行转发。
  4. 根据权利要求2所述的方法,其特征在于,若所述交换系统当前预设的配置模式为第二配置模式,则所述第一LCC将所述数据包承载在所述第一链路上转发给所述第三LCC,包括:
    所述第一LCC获取所述第一链路中的各条链路的状态信息;
    所述第一LCC根据所述第一链路中的各条链路的状态信息,将所述数据包分发到所述第一链路中的各条链路上进行转发。
  5. 根据权利要求4所述的方法,其特征在于,若所述状态信息指示所述第一链路中各条链路的拥塞程度,则所述第一LCC根据所述状态信息,将所述数据包分发到所述第一链路中的各条链路上进行转发,包括:
    所述第一LCC根据所述第一链路中的各条链路的拥塞程度,调整分发到所述第一链路中的各条链路上的数据包的流量的大小,以使其中每条链路所承载的流量与每条链路的拥塞程度相匹配。
  6. 根据权利要求4所述的方法,其特征在于,若所述状态信息指示所述第一链路中的各条链路的异常信息,则所述第一LCC根据所述状态信息,将所述数据包分发到所述第一链路中的各条链路进行转发,包括:
    所述第一LCC根据所述第一链路中的各条链路的异常信息,确定所述第一链路中的异常链路;
    所述第一LCC将所述数据包分发到所述第一链路中除所述异常链路之外的正常链路上进行转发。
  7. 根据权利要求1所述的方法,其特征在于,若所述交换系统当前预设的配置模式为第一配置模式,则所述第一LCC将所述数据包承载在所述第三链路上转发给所述第三LCC,包括:
    所述第一LCC将所述数据包以轮叫的方式均匀分发到所述第三链路中的各条链路上进行转发。
  8. 根据权利要求1所述的方法,其特征在于,当所述第三链路包括所述第一链路和所述第二链路时,则所述第一LCC将所述数据包承载在所述第三链路上转发给所述第三LCC,包括:
    所述第一LCC将所述数据包优先分发到所述第一链路中的各条链路上,待所述第一链路中的各条链路达到饱和状态时,将所述数据包中的剩余数据包分发到所述第二链路中的各条链路上。
  9. 根据权利要求1所述的方法,其特征在于,若所述交换系统当前预设的配置模式为第一配置模式,则所述第一LCC将所述数据包承载在所述第三链路上转发给所述第三LCC,包括:
    所述第一LCC获取所述第三链路中的各条链路的状态信息;
    所述第一LCC根据所述第三链路中的各条链路的状态信息,将所述数据包分发到所述第三链路中的各条链路上进行转发。
  10. 根据权利要求9所述的方法,其特征在于,若所述第三链路中的各条链路的状态信息指示所述第三链路中各条链路的拥塞程度,则所述第一LCC根据所述第三链路中的各条链路的状态信息,将所述数据包分发到所述第三链路中的各条链路上进行转发,包括:
    所述第一LCC根据所述第三链路中的各条链路的拥塞程度,调整分发到所述第三链路中的各条链路的流量的大小,以使所述第三链路中的每条链路所承载的流量与每条链路的拥塞程度相匹配。
  11. 根据权利要求9所述的方法,其特征在于,若所述第三链路中的各条链路的状态信息指示所述第三链路中的各条链路的异常信息,则所述第一LCC根据所述第三链路中的各条链路的状态信息,将所述数据包分发到所述第三链路的各条链路上进行转发,包括:
    所述第一LCC根据所述第三链路中的各条链路的异常信息,确定所述第三中的异常链路;
    所述第一LCC将所述数据包分发到所述第三链路中除所述异常链路之外的正常链路上进行转发。
  12. 根据权利要求7或权利要求9-11任一项所述的方法,其特征在于,所述第三链路包括所述第一链路和所述第二链路,所述数据包包括第一子数据包和第二子数据包,所述第一子数据包为待分发到所述第一链路路上的子数据包,所述第二子数据包为待分发到所述第二链路上的子数据包,所述方法还包括:
    所述第一LCC分别为所述第一子数据包添加第一原始时标,以及为所述第二子数据包添加第二原始时标,其中,所述第一原始时标指示所述第一子数据包到达所述第一LCC的初始时刻,所述第二原始时标指示所述第二子数据包到达所述第一LCC的初始时刻,以便所述第三LCC根据所述第一子数据包的第一转发时延和所述第二子数据包的第二转发时延,分别对所述第一原始时标添加第一时标补偿得到第一时标,以及对所述第二原始时标添加第二时标补偿得到第二时标,使得所述第一时标和所述第二时标的时间顺序,与所述第一原始时标和所述第二原始时标的时间顺序保持一致,其中,第一转发时延和第一时标补偿之和,等于第二转发时延和第二时标补偿之和。
  13. 根据权利要求8所述的方法,其特征在于,所述数据包包括第一子数据包和第二子数据包,所述第一子数据包为待分发到所述第一链路路上的子数据包,所述第二子数据包为待分发到所述第二链路上的子数据包,所述方法还包括:
    所述第一LCC分别为所述第一子数据包添加第一原始时标,以及为所述第二子数据包添加第二原始时标,其中,所述第一原始时标指示所述第一子数据包到达所述第一LCC的初始时刻,所述第二原始时标指示所述第二子数据包到达所述第一LCC的初始时刻,以便所述第三LCC根据所述第一子数据包的第一转发时延和所述第二子数据包的第二转发时延,分别对所述第一原始时标添加第一时标补偿得到第一时标,以及对所述第二原 始时标添加第二时标补偿得到第二时标,使得所述第一时标和所述第二时标的时间顺序,与所述第一原始时标和所述第二原始时标的时间顺序保持一致,其中,第一转发时延和第一时标补偿之和,等于第二转发时延和第二时标补偿之和。
  14. 根据权利要求1所述的方法,其特征在于,当所述目的地址指示所述数据包发往所述第一LCC时,所述第一LCC将所述数据包转发给所述第一LCC中的目的FIC。
  15. 一种交换系统中的第一线卡框LCC,其特征在于,所述第一LCC通过无线网格mesh形式的拓扑结构与交换系统中的至少一个第二LCC以及第三LCC互连;所述第一LCC包括至少一个交换网芯片SE,所述SE包括:
    第一获取模块,用于接收数据包,并对所述数据包进行解析以获取所述数据包的目的地址;
    发送模块,用于当所述目的地址指示所述数据包发往所述第三LCC时,若所述交换系统当前预设的配置模式为第一配置模式,则所述第一LCC将所述数据包承载在第三链路上转发给所述第三LCC,其中,所述第三链路包括:第一链路和第二链路,或,所述第二链路;所述第一链路为所述第一LCC和所述第三LCC之间的直连的两跳链路,且所述第一链路包括的链路数为至少一条;所述第二链路为所述第一LCC和所述第三LCC之间通过所述至少一个第二LCC进行中转的n跳链路,且所述第二链路包括的链路数为至少一条;其中,n为自然数,且3≤n≤N;所述第一配置模式指示所述交换系统当前应用的是N跳模式,N为大于等于3的自然数。
  16. 根据权利要求15所述的第一LCC,其特征在于,所述发送模块,还用于当所述目的地址指示所述数据包发往所述第三LCC时,若所述交换系统当前预设的配置模式为第二配置模式,则所述第一LCC将所述数据包承载在所述第一链路上转发给所述第三LCC;其中,所述第二配置模式指示所述交换系统当前应用的是两跳模式。
  17. 根据权利要求16所述的第一LCC,其特征在于,所述发送模块,具体用于将所述数据包以轮叫的方式均分到所述第一链路中的各条链路上进行转发。
  18. 根据权利要求16所述的第一LCC,其特征在于,所述SE还包括:第二获取模块;
    所述第二获取模块,用于获取所述第一链路中的各条链路的状态信息;
    则所述发送模块,用于根据所述第二获取模块获得的所述第一链路中的各条链路的状态信息,将所述数据包分发到所述第一链路中的各条链路上进行转发。
  19. 根据权利要求18所述的第一LCC,其特征在于,若所述第二获取模块获得的所述状态信息指示所述第一链路中各条链路的拥塞程度;
    则所述发送模块,具体用于根据所述第一链路中的各条链路的拥塞程度,调整分发到所述第一链路中的各条链路上的数据包的流量的大小,以使其中每条链路所承载的流量与每条链路的拥塞程度相匹配。
  20. 根据权利要求18所述的第一LCC,其特征在于,若所述第二获取模块获得的所述状态信息指示所述第一链路中的各条链路的异常信息,则所述SE还包括:第一确定模块;
    所述第一确定模块,用于根据所述第一链路中的各条链路的异常信息,确定所述第一链路中的异常链路;
    则所述发送模块,用于将所述数据包分发到所述第一链路中除所述异常链路之外的正常链路上进行转发。
  21. 根据权利要求15所述的第一LCC,其特征在于,所述发送模块,具体用于将所述数据包以轮叫的方式均匀分发到所述第三链路中的各条链路上进行转发。
  22. 根据权利要求15所述的第一LCC,其特征在于,当所述第三链路包括所述第一链路和所述第二链路时,所述发送模块,具体用于将所述数据包优先分发到所述第一链路中的各条链路上,待所述第一链路中的各条链路达到饱和状态时,将所述数据包中的剩余数据包分发到所述第二链路中的各条链路上。
  23. 根据权利要求15所述的第一LCC,其特征在于,所述SE还包括:第三获取模块;
    所述第三获取模块,用于获取所述第三链路中的各条链路的状态信息;
    所述发送模块,用于根据所述第三获取模块获得的所述第三链路中的各条链路的状态信息,将所述数据包分发到所述第三链路中的各条链路上进行转发。
  24. 根据权利要求23所述的第一LCC,其特征在于,若所述第三获取模块获得的所述状态信息指示所述第三链路中各条链路的拥塞程度;
    则所述发送模块,具体用于根据所述第三链路中的各条链路的拥塞程度,调整分发到所述第三路中的各条链路的流量的大小,以使所述第三链路中的每条链路所承载的流量与每条链路的拥塞程度相匹配。
  25. 根据权利要求23所述的第一LCC,其特征在于,若所述第三获取模块获得的所述状态信息指示所述第三链路中的各条链路的异常信息,则所述SE还包括:第二确定模块;
    所述第二确定模块,用于根据所述第三链路中的各条链路的异常信息,确定所述第三链路中的异常链路;
    则所述发送模块,用于将所述数据包分发到所述第三链路中除所述异常链路之外的正常链路上进行转发。
  26. 根据权利要求21或权利要求23-25任一项所述的第一LCC,其特征在于,所述第三链路包括所述第一链路和所述第二链路,所述数据包包括第一子数据包和第二子数据包,所述第一子数据包为待分发到所述第一链路路上的子数据包,所述第二子数据包为待分发到所述第二链路上的子数据包,所述SE还包括:
    第一时标添加模块,用于分别为所述第一子数据包添加第一原始时标,以及为所述第二子数据包添加第二原始时标,其中,所述第一原始时标指示所述第一子数据包到达所述第一LCC的初始时刻,所述第二原始时标指示所述第二子数据包到达所述第一LCC的初始时刻,以便所述第三LCC根据所述第一子数据包的第一转发时延和所述第二子数据包的第二转发时延,分别对所述第一原始时标添加第一时标补偿得到第一时标,以及对所述第二原始时标添加第二时标补偿得到第二时标,使得所述第一时标和所述第二时标的时间顺序,与所述第一原始时标和所述第二原始时标的时间顺序保持一致,其中,第一转发时延和第一时标补偿之和,等于第二转发时延和第二时标补偿之和。
  27. 根据权利要求22所述的第一LCC,其特征在于,所述数据包包括第一子数据包和第二子数据包,所述第一子数据包为待分发到所述第一链路路上的子数据包,所述第二子数据包为待分发到所述第二链路上的子数据包,所述SE还包括:
    第二时标添加模块,用于分别为所述第一子数据包添加第一原始时标,以及为所述第二子数据包添加第二原始时标,其中,所述第一原始时标指示所述第一子数据包到达所述第一LCC的初始时刻,所述第二原始时标指示所述第二子数据包到达所述第一LCC的初始时刻,以便所述第三LCC根据所述第一子数据包的第一转发时延和所述第二子数据包的第二转发时延,分别对所述第一原始时标添加第一时标补偿得到第一时标,以及对所述第二原始时标添加第二时标补偿得到第二时标,使得所述第一时标和所述第二时标的时间顺序,与所述第一原始时标和所述第二原始时标的时间顺序保持一致,其中,第一转发时延和第一时标补偿之和,等于第二转发时延和第二时标补偿之和。
  28. 根据权利要求15所述的第一LCC,其特征在于,所述第一LCC还包括:交换网接口芯片FIC;
    所述发送模块,还用于当所述目的地址指示所述数据包发往所述FIC时,将所述数据包转发给所述FIC。
PCT/CN2015/082226 2014-07-10 2015-06-24 交换系统的流量转发方法和装置 WO2016004820A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201410329324.XA CN105245454B (zh) 2014-07-10 2014-07-10 交换系统的流量转发方法和装置
CN201410329324.X 2014-07-10

Publications (1)

Publication Number Publication Date
WO2016004820A1 true WO2016004820A1 (zh) 2016-01-14

Family

ID=53610771

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2015/082226 WO2016004820A1 (zh) 2014-07-10 2015-06-24 交换系统的流量转发方法和装置

Country Status (4)

Country Link
US (1) US9634932B2 (zh)
EP (1) EP2966819B1 (zh)
CN (1) CN105245454B (zh)
WO (1) WO2016004820A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3341569A1 (en) * 2015-08-28 2018-07-04 Siemens Aktiengesellschaft Non-axially symmetric transition ducts for combustors
CN108270698B (zh) * 2016-12-30 2021-12-14 中兴通讯股份有限公司 基于crossbar非正交架构的交换机背板互联装置及方法
CN108667509B (zh) * 2018-03-22 2020-04-14 新华三技术有限公司 集群加入方法、装置及集群设备
CN110138667B (zh) * 2019-05-31 2021-05-28 新华三技术有限公司 一种转发表项的生成方法、装置、线卡板和网板

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101098238A (zh) * 2007-06-29 2008-01-02 华为技术有限公司 一种数据通信系统、交换网板及方法
CN101296186A (zh) * 2008-06-13 2008-10-29 杭州华三通信技术有限公司 一种路由交换设备、方法和交换线卡板
CN102315892A (zh) * 2010-07-02 2012-01-11 杭州华三通信技术有限公司 数据转发装置和线卡板以及数据转发方法
CN103269285A (zh) * 2013-05-24 2013-08-28 杭州华三通信技术有限公司 网络通信集群装置和用于实现网络通信集群的方法

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030200330A1 (en) * 2002-04-22 2003-10-23 Maxxan Systems, Inc. System and method for load-sharing computer network switch
CN1589062A (zh) * 2004-09-28 2005-03-02 华中科技大学 可扩展的光电混合光纤网络系统背板
US8050559B2 (en) * 2006-08-21 2011-11-01 Juniper Networks, Inc. Multi-chassis router with multiplexed optical interconnects
US8838728B2 (en) * 2007-05-22 2014-09-16 Nokia Corporation Method, system, apparatus, network entity and computer program product for providing a user with an editable webpage
CN101355430B (zh) * 2007-07-27 2012-02-29 华为技术有限公司 交换框、集群路由器
CN101631081B (zh) * 2009-08-12 2011-06-08 华为技术有限公司 一种多级交换网
CN101635973A (zh) * 2009-08-26 2010-01-27 东南大学 中继增强型蜂窝系统及其路由选择与比例公平性调度方法
US9106563B2 (en) * 2009-10-07 2015-08-11 Wichorus, Inc. Method and apparatus for switching communications traffic in a communications network
US8687629B1 (en) 2009-11-18 2014-04-01 Juniper Networks, Inc. Fabric virtualization for packet and circuit switching
US8238230B2 (en) 2010-02-03 2012-08-07 Juniper Networks, Inc. Detection of active nodes, safe node removal conditions, and cross-cabling conditions for maintenance operations within a multi-chassis routing matrix
US8767735B2 (en) * 2010-08-04 2014-07-01 Alcatel Lucent System and method for multi-chassis link aggregation
US8798077B2 (en) * 2010-12-29 2014-08-05 Juniper Networks, Inc. Methods and apparatus for standard protocol validation mechanisms deployed over a switch fabric system
US8982905B2 (en) * 2011-05-16 2015-03-17 International Business Machines Corporation Fabric interconnect for distributed fabric architecture
US8797844B1 (en) * 2011-12-29 2014-08-05 Juniper Networks, Inc. Scheduling traffic over aggregated bundles of links
EP2645645A1 (en) * 2012-03-30 2013-10-02 British Telecommunications Public Limited Company Packet network routing
US8767754B1 (en) * 2012-04-23 2014-07-01 Wichorus, Inc. Method and apparatus for providing distributed load balancing of subscriber sessions in a multi-slot gateway
US8995277B2 (en) * 2012-10-30 2015-03-31 Telefonaktiebolaget L M Ericsson (Publ) Method for dynamic load balancing of network flows on LAG interfaces
US9264302B2 (en) * 2013-06-17 2016-02-16 Telefonaktiebolaget L M Ericsson (Publ) Methods and systems with enhanced robustness for multi-chassis link aggregation group
CN103973592B (zh) 2014-05-16 2017-12-05 华为技术有限公司 信元处理方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101098238A (zh) * 2007-06-29 2008-01-02 华为技术有限公司 一种数据通信系统、交换网板及方法
CN101296186A (zh) * 2008-06-13 2008-10-29 杭州华三通信技术有限公司 一种路由交换设备、方法和交换线卡板
CN102315892A (zh) * 2010-07-02 2012-01-11 杭州华三通信技术有限公司 数据转发装置和线卡板以及数据转发方法
CN103269285A (zh) * 2013-05-24 2013-08-28 杭州华三通信技术有限公司 网络通信集群装置和用于实现网络通信集群的方法

Also Published As

Publication number Publication date
CN105245454B (zh) 2018-10-19
EP2966819A1 (en) 2016-01-13
US9634932B2 (en) 2017-04-25
US20160014026A1 (en) 2016-01-14
CN105245454A (zh) 2016-01-13
EP2966819B1 (en) 2017-04-12

Similar Documents

Publication Publication Date Title
JP6608545B2 (ja) サービストラヒック分配方法及び装置
US8625467B2 (en) Rate-varying multicast transmission for clock distribution in packet networks
US7450527B2 (en) Method and apparatus for implementing multiple portals into an Rbridge network
CN105144639B (zh) 在覆盖网络中至双重连接(vpc)的主机的有效组播传送
CN102884767A (zh) 第2层多路径网络中链路成本按图分配
WO2016004820A1 (zh) 交换系统的流量转发方法和装置
CN106797347A (zh) 用于虚拟架构路由的方法、系统和计算机可读介质
CN104038417A (zh) 应用于mpls网络的服务实例
CN103856398A (zh) 物理链路的虚拟干线化
CN105743816B (zh) 一种链路聚合方法及装置
CN103733576A (zh) 通过信号指示标签交换路径(lsp)隧穿模型
JP2009542068A (ja) 保証された決定性の説明を有する、フレーム交換ネットワークにおける仮想リンクの経路指定のための方法
CN104813605A (zh) 用于多跳混合网络的无缝切换
CN103597780A (zh) 用于多接口网络节点的通信机制
CN104521188A (zh) 一种建立光旁路的方法、装置和系统
CN103597786A (zh) 配置服务质量的方法和设备
JP2014131098A (ja) 通信システム、通信経路確率方法、及び、管理サーバ
ES2663210T3 (es) Red Ethernet aviónica mejorada y método de transmisión de bloques de datos en la red
CN109327400A (zh) 一种数据通信方法及数据通信网络
JP6195017B2 (ja) 通信装置、通信システム、通信方法および通信用プログラムが記憶された記憶媒体
CN105871761A (zh) 一种高阶矩阵开关、片上网络及通信方法
CN101501679A (zh) 用于同步通信的电子装置和方法
CN102857417A (zh) Trill网络中数据的传输方法及系统
CN104579992A (zh) 一种控制网络流量路径的方法及装置
CN109495371A (zh) 面向dtn/ip协议栈的网络连通设备

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

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 15818371

Country of ref document: EP

Kind code of ref document: A1