CN108123878A - A kind of method for routing, device and data transfer equipment - Google Patents

A kind of method for routing, device and data transfer equipment Download PDF

Info

Publication number
CN108123878A
CN108123878A CN201611086242.2A CN201611086242A CN108123878A CN 108123878 A CN108123878 A CN 108123878A CN 201611086242 A CN201611086242 A CN 201611086242A CN 108123878 A CN108123878 A CN 108123878A
Authority
CN
China
Prior art keywords
transfer equipment
data transfer
port
congestion
data
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
CN201611086242.2A
Other languages
Chinese (zh)
Other versions
CN108123878B (en
Inventor
严金丰
袁峰
颜清华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201611086242.2A priority Critical patent/CN108123878B/en
Publication of CN108123878A publication Critical patent/CN108123878A/en
Application granted granted Critical
Publication of CN108123878B publication Critical patent/CN108123878B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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
    • H04L45/745Address table lookup; Address filtering
    • 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

Landscapes

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

Abstract

The present invention, which provides a kind of method for routing, device and data transfer equipment, this method, to be included:Data transfer equipment obtains data packet;Data transfer equipment determines the next-hop exit port of the data packet whether is matched in default routing table;Wherein, the exit port in default routing table is the exit port of not congestion;If the next-hop exit port of the data packet is not matched in default routing table, data transfer equipment determines next-hop exit port of the first port as the data packet to purpose data transfer equipment in other ports in addition to the congestion exit port to the purpose data transfer equipment of the data packet recorded in congestion information table of data transfer equipment;Data transfer equipment sends the data packet by first port.A kind of strong method for routing of autgmentability, the network suitable for multi-layer clos frameworks can be provided by this method.

Description

A kind of method for routing, device and data transfer equipment
Technical field
The present invention relates to a kind of field of communication technology more particularly to method for routing, device and data transfer equipments.
Background technology
With the development of network technology, data center, which has become, provides the Internet network service, Distributed Parallel Computing etc. Architecture.It is the research heat of current academia for the expansible network architecture of data center design and efficient routing algorithm Point.Industry generally builds data center using this (clos) framework of clo.With cobweb (web) application, big data analysis And the fast development of the business such as cloud computing, it is also increasing to the demand of exchanging transforming network of data centre capacity.Based on leaf-ridge (leaf-spine) two-stage clos frameworks much can not meet demand of the business to capacity, and future certainly will need more stages Clos frameworks build large-scale data center.
The experience of user will be directly influenced in the quality of data center's load balancing effect, is proposed in the prior art a kind of Distributed processing scheme to carry out load dispatch to data centralized traffic, specifically includes:In data message mesh is sent to from source node Node during, the congestion metric of each section of link in selected ID of trace route path and the path is encapsulated in data message Destination node is sent to together.It is when there is message needs to be sent to source node from destination node, ID of trace route path is corresponding with the path Congestion situation, which is encapsulated in data message, tells source node.In this way, source node is it is known that reach not going the same way for destination node Which item is least congestion in footpath.When there is data message to be sent to the destination node, preferably this least congestion path into The transmission of row data message.
In above-mentioned routing plan, with the expansion of clos levels, number of path is exponentially increased end to end, program institute The list item scale growth also exponentially needed, for example, entry number needed for 3-stage clos framework will more than 1,000,000, existing friendship The list item of so big quantity can not be supported by changing planes.In addition, because path is exponentially increased end to end, to safeguard on switches The time that the real-time congestion information in end-to-end all paths needs also is exponentially increased.2 grades of clos framves based on leaf-spine Under structure, number of path is 24 end to end, can be received the time required to the congestion information for obtaining end-to-end all paths.But at 3 grades Number of path is that number of path is up to 13824 end to end under 576,4 grades of clos frameworks end to end under clos frameworks, it is desirable to obtain institute There is the real-time congestion information on path that will need long time to carry out flow scheduling.Therefore above-mentioned routing plan is in multi-layer Clos frameworks in effect it is poor, i.e., the autgmentability of above-mentioned routing plan is poor.
The content of the invention
The embodiment of the present invention provides a kind of method for routing, device and data transfer equipment, of the prior art to solve The technical issues of routing mode autgmentability is poor.
In a first aspect, an embodiment of the present invention provides a kind of method for routing, this method is from each on data packet transmission path The angle of a data transfer equipment is described.In the method, data transfer equipment obtains data packet.For example, if it is source number Data packet can be generated according to forwarding unit, if non-source data transfer equipment, it is possible to from last layer data transfer equipment Received data packet.Then data transfer equipment determines that the next of the data packet whether is matched in default routing table to be jumped out Port;Wherein, the exit port in the default routing table is the exit port of not congestion.If in the default routing table The next-hop exit port of the data packet is not matched, and the data transfer equipment is in the data transfer equipment except congestion is believed In the other ports outside the congestion exit port to the purpose data transfer equipment of the data packet recorded in breath table, first is determined Port is as the data packet to the next-hop exit port of the purpose data transfer equipment.Then data transfer equipment passes through institute It states first port and sends the data packet.In embodiments of the present invention, the port of congestion is on the one hand recorded in congestion information table, So negligible amounts of required list item;On the other hand, congestion port of the data transfer equipment in congestion record sheet selects not One in the port of congestion is used as next-hop exit port, i.e. data transfer equipment selects available next for data packet hop-by-hop It jumps, without as method choice one of the prior art optimal path end to end, so it is all to without waiting for feedback The service condition in path end to end, so also without the wait long period.To sum up, the method for routing in the embodiment of the present invention Autgmentability it is strong, be suitble to multi-layer clos frameworks network.
In a possible design, data transfer equipment also determines to arrive in all of the port of the data transfer equipment each The port of the congestion of a purpose data transfer equipment;The data transfer equipment is by each purpose data transfer equipment and right The port numbers of the port of the congestion of each purpose data transfer equipment are recorded in the congestion information table described in Ying Yu.In this hair In bright embodiment, congestion information table is established and safeguarded by each data transfer equipment, thus it is more convenient, it is convenient to carry out.
In a possible design, it is described from the angle of non-source data transfer equipment, the method further includes:Number Whether all of the port for determining the data transfer equipment to each purpose data transfer equipment according to forwarding unit is in Congestion state;If the data transfer equipment is to the data transfer equipment of the first mesh in each purpose data transfer equipment All of the port be in congestion state, then the data transfer equipment to upper layer data forwarding unit send first notice believe Breath, for notifying the upper layer data forwarding unit, the data transfer equipment cannot function as described first notification information Upper layer data forwarding unit reaches the next-hop of the data transfer equipment of first mesh;If the data transfer equipment is described in The all of the port of the data transfer equipment of the second mesh in each purpose data transfer equipment is not in congestion state, then described Data transfer equipment sends the second notification information to upper layer data forwarding unit, and second notification information is described for notifying Layer data forwarding unit, the data transfer equipment can reach the number of second mesh as the upper layer data forwarding unit According to the next-hop of forwarding unit.In this way, it can inform the last layer data transfer equipment congestion condition of itself so that on One layer data forwarding unit can determine the port of congestion.
In a possible design, from non-purpose data transfer equipment and the last layer number of non-purpose data transfer equipment It is described according to the angle of forwarding unit, the data transfer equipment determines to arrive in all of the port of the data transfer equipment each The port of the congestion of a purpose data transfer equipment, including:The data transfer equipment receives and the data transfer equipment The third notice information that each lower data forwarding unit of port connection is sent;Wherein, each lower data forwarding is set The standby data transfer equipment to reach on the path of each purpose data transfer equipment;The third notice information is used for table Levy whether each lower data forwarding unit can be used as the data transfer equipment to reach each purpose data turn Send out the next-hop of equipment;The data transfer equipment determines all of the data transfer equipment according to the third notice information The port of the congestion of each purpose data transfer equipment is arrived in port.In this way, data transfer equipment can know lower floor Data transfer equipment and then can determine the not available next-hop outlet of itself to the congestion situation of purpose data transfer equipment Mouthful, and can learn the congestion points of the unavailable next-hop exit port.
It is further included with reference to any one of above possible design design, the method:If the data transfer equipment When congestion exit port does not change into congestion exit port, the data transfer equipment also determines whether wrapped in the default routing table Containing the congestion exit port;If the congestion exit port is included in the default routing table, the data transfer equipment will List item comprising the congestion exit port is deleted from the default routing table.It can be according to the congestion of port by this method State updates default routing table so that the exit port in default routing table is available next-hop exit port always.
With reference to any one of above possible design design, in the definite first port as the data packet to institute After the next-hop exit port for stating purpose forwarding unit, the method further includes:The data transfer equipment is described default It is that the corresponding data flow of the data packet establishes new list item in routing table, the exit port of the new list item is the first port. In this way, it can so that the data packet of the follow-up data flow is sent according to first port, when saving data packet forwarding Between.
Second aspect, the embodiment of the present invention provide a kind of data transfer equipment.The data transfer equipment includes:At least two Port, transmitter, receiver and processor.Transmitter can be used for performing what is sent in the method for routing in aforementioned first aspect Step.Receiver can perform the step of receiving or obtaining in the method for routing in aforementioned first aspect.Processor can perform The step for being established in method for routing in aforementioned first aspect, deleting, record or determining.
The third aspect, the embodiment of the present invention provide a kind of route device, and the route device includes being used to implement first party The function module of method described in face.
Fourth aspect, the embodiment of the present invention also provide a kind of computer storage media, are deposited on the computer storage media Program code is contained, said program code includes being used to implement the arbitrary possible realization method of the method for the first aspect Instruction.
Description of the drawings
Fig. 1 a are a kind of structure chart of exchange network provided in an embodiment of the present invention;
Fig. 1 b- Fig. 1 c are a kind of structure chart of data center provided in an embodiment of the present invention;
Fig. 2 is a kind of structure chart of data transfer equipment provided in an embodiment of the present invention;
Fig. 3 is a kind of flow chart of method for routing provided in an embodiment of the present invention;
Fig. 4 is a kind of functional block diagram of route device provided in an embodiment of the present invention.
Specific embodiment
The embodiment of the present invention provides a kind of method for routing, device and data transfer equipment, of the prior art to solve The technical issues of routing mode autgmentability is poor.
The terms "and/or", is only a kind of incidence relation for describing affiliated partner, and expression may have three kinds of passes System, for example, A and/or B, can represent:Individualism A exists simultaneously A and B, these three situations of individualism B.In addition, herein Middle character "/", it is a kind of relation of "or" to typically represent forward-backward correlation object.
Implementation process, the purpose of scheme in the embodiment of the present invention are described in detail below with reference to attached drawing.
A kind of method for routing provided in an embodiment of the present invention, this method can be applied to the data center of m grades of clos frameworks In, wherein, m is the integer more than or equal to 2.This method can also be applied to exchange network as shown in Figure 1a.
For this method on the framework of existing data center and in exchange network, data transfer equipment detects the congestion of port When the corresponding link congestion in port, port is deleted from the available next-hop for reaching purpose data transfer equipment for state.It deletes After removing, if the available next-hop to purpose data transfer equipment is 0, which notifies all last layer data forwardings Equipment cannot reach the purpose switch by oneself.What upper layer data forwarding unit then updated oneself corresponds to purpose The available next-hop list item of data transfer equipment.In flow scheduling, data transfer equipment according to the congestion information of Real-time Feedback, Hop-by-hop selects available next-hop for data packet.Therefore, this method autgmentability is strong, suitable for the network of multi-layer clos frameworks.
Specifically, in the exchange network shown in Fig. 1 a, simply simply show from source interchanger to purpose interchanger Mulitpath, the interchanger on path are known as intermediary switch, such as intermediary switch 1 is to intermediary switch 4.It should be understood that It is that in practice, which can also be including more mulitpath, the quantity of the intermediary switch on every paths It can be more.
It is a kind of data of 3 grades of clos frameworks provided in an embodiment of the present invention specifically, referring next to shown in Fig. 1 b The network structure at center.In the present embodiment, 3 grades of clos frameworks are by taking 3 yuan of fat tree (fat-tree) topologys as an example.The network knot Structure is from top to bottom divided into three layers.Three layers from top to bottom are respectively core layer, convergence-level, marginal layer.The interchanger of core layer claims For core switch, the interchanger of convergence-level is known as convergence switch, and the interchanger of marginal layer is known as edge switch.Host or Server is connected directly with edge switch.In practice, the equipment that is distributed in three layers can be other for carrying out The equipment of data forwarding, such as router for ease of description, are referred to herein, generally, as data transfer equipment.
It should be noted that in the clos frameworks of different topology structure or in different scenes, each level data turns The name for sending out equipment can be slightly different, such as edge switch is referred to as leaf interchanger, core in 2 grades of leaves-ridge clos frameworks Heart interchanger is referred to as ridge interchanger in 2 grades of leaves-ridge clos frameworks.For example edge switch is functionally properly termed as again Access switch.From the structure of interchanger, edge switch is referred to as in rack (English:Top-of-Rack, referred to as: TOR) interchanger.For ease of description, it is referred to herein, generally, as data transfer equipment.
Please continue to refer to shown in Fig. 1 b, the fat tree network of n members is (English including 2n performance optimization data center: Performance optimization datacenter, referred to as:Pod), each data transfer equipment has 2n port.Cause This, in the present embodiment, n is that the network structure of 3 data center includes 6 Pod, edge switch in each Pod and The quantity of convergence switch is 3, and core switch has 3 core groups, respectively core group 0 to core group 2.Each core group There are 3 core switch.The host or number of servers of each Pod connection are n2, i.e., 9, the host that network can be supported is total Number is (2n)3/ 4, i.e., 54.Each interchanger has 6 ports.6 ports of 1 convergence switch in each Pod connect 1 3 core switch in core group, and 3 edge switch in identical Pod are connected, each convergence switch connection Core group differs.6 ports of each edge switch connect 3 convergence switches and 3 masters in identical Pod respectively Machine.For example, as shown in Figure 1 b, the convergence switch 0 in Pod0 is respectively connected to three core switch of core group 0, And it is connected with 3 edge switch in Pod0.Convergence switch 1 is connected to 3 cores exchange of core group 1 in Pod0 Machine, and be connected with 3 edge switch in Pod0.Convergence switch 2 is connected to 3 cores friendship of core group 2 in Pod0 It changes planes, and is connected with 3 edge switch in Pod0.The connection of interchanger in other Pod is similar, herein no longer It repeats.
In Figure 1b, Pod0 to Pod6 represents the number of Pod, in practice, can also be marked by other marks Know different Pod.The number 0 to 2 of the interchanger of core layer is used for the core switch in the same core group of unique mark, similar , the number 0 to 2 of the interchanger of convergence-level is used for the convergence switch in the same Pod of unique mark, the interchanger of marginal layer Number 0 to 2 is used for the edge switch in the same Pod of unique mark, in practice, can also be marked by other marks Know the convergence switch or edge switch in same Pod.
It refer again to shown in Fig. 1 c, be another ways of presentation of 3 grades of clos frameworks in Fig. 1 b, in the present embodiment, n takes It is worth for 3, the port of each access switch is 2n, and the quantity of access switch is 2n2, it is respectively access switch 1 to connecing Enter interchanger n+1, then to access switch 2n2.Convergence switch and core switch form a level, a total of n layer Face, respectively layer 1 to layer n.2n convergence switch, respectively convergence switch 1 to convergence switch are included in each level 2n.Each convergence switch has 2n port.N port of wherein each convergence switch is respectively with including in each level The connection of n core switch, n core switch are respectively core switch 1 to core switch n.Each convergence switch Other n port be connected with n access switch.Each core switch has 2n port.Each convergence switch difference It is connected with each core switch.Each n port of access switch is connected with a convergence switch of n level.Often The other n port of a access switch can connect host or server.2n2The host that a access switch can connect Or number of servers is 2n3.Correspond to the structure in Fig. 1 b, the core switch 0 of core group 0 to core switch 2 and each Pod Interior convergence switch 0 forms the first level, converges and hands in core switch 0 to the core switch 2 and each Pod of core group 1 It changes planes 1 the second level of composition, the composition of convergence switch 2 the in core switch 1 to the core switch 2 and each Pod of core group 2 Three levels.
Some technical terms herein are by taking the term in the network structure of existing data center as an example to of the invention real The description of example progress is applied, the evolution such as network changes, and specific evolution may be referred to the description in respective standard.
Referring next to Fig. 2, Fig. 2 is the possible structure chart of data transfer equipment provided in an embodiment of the present invention.It should Data transfer equipment is, for example, preceding edge interchanger, access switch, convergence switch and core switch.As shown in Fig. 2, The data transfer equipment includes:Processor 10, transmitter 20, receiver 30, memory 40 and port 50.Memory 40 is sent Device 20 and receiver 30 and processor 10 can be attached by bus.Certainly, in practice, memory 40 is sent It can not be bus structures between device 20 and receiver 30 and processor 10, and can be other structures, such as hub-and-spoke configuration, this Application is not especially limited.
Optionally, processor 10 can be specifically central processing unit, application-specific integrated circuit (English:Application Specific Integrated Circuit, referred to as:ASIC), can be one or more integrated for program to be controlled to perform Circuit can be use site programmable gate array (English:Field Programmable Gate Array, referred to as:FPGA) The hardware circuit of exploitation can be baseband processor.
Optionally, processor 10 can include at least one processing core.
Optionally, memory 40 can include read-only memory (English:Read Only Memory, referred to as:ROM), with Machine access memory (English:Random Access Memory, referred to as:) and magnetic disk storage RAM.Memory 40 is used to store The data required when running of processor 10.The quantity of memory 40 is one or more.
Optionally, the quantity of port 50 is one or more, for being connected with the data transfer equipment of upper strata or lower floor.Such as Fruit data transfer equipment is the data transfer equipment of connection host or server, such as above-mentioned access switch or edge switch, Port 50 is additionally operable to be connected with host or server.
Optionally, transmitter 20 and receiver 30 can also can physically integrate independently of each other.Transmitter 20 can send the data to adjacent data transfer equipment by port 50.Receiver 30 can be received adjacent by port 50 Data transfer equipment send data.
Referring next to as shown in figure 3, flow chart for the method for routing in the embodiment of the present invention.It as shown in figure 3, should Method includes:
Step 101:Data transfer equipment obtains data packet;
Step 102:Data transfer equipment determines the next-hop of the data packet whether is matched in default routing table Exit port;Wherein, the exit port in default routing table is the exit port of not congestion;
Step 103:If not matching the next-hop exit port of the data packet in the default routing table, data turn The purpose data transfer equipment to the data packet that hair equipment records in data transfer equipment is except congestion information table is gathered around It fills in other ports outside exit port, determines that first port is jumped out as the data packet to the next of purpose data transfer equipment Port;
Step 104:Data transfer equipment sends the data packet by first port.
It should be noted that in embodiments of the present invention, congestion and non-congestion are the in contrast situations of congestion and not The situation of congestion can be according to actual needs configured by user, and the standard of different network structure congestions can not also phase Together, can be specifically configured according to actual conditions.The judgment threshold or standard on congestion and non-congestion herein be only Citing, is not intended to limit the present invention.
In a step 101, data transfer equipment obtains data packet and can be, but not limited to following two modes, and one kind is certainly Oneself generates data packet, and another kind is the data packet received from upper layer device.For example, when data transfer equipment turns for source data When sending out equipment, data packet can be that data transfer equipment generates.If data transfer equipment is non-source data transfer equipment, number It can be from upper layer data forwarding unit received data packet according to forwarding unit.
Which kind of mode data packet is obtained whether through, after data packet is got, next performs step 102, i.e., Data transfer equipment determines the next-hop exit port of data packet whether is matched in default routing table.Wherein, default road It is the exit port of not congestion by the exit port in table, is available exit port.
Optionally, default routing table can be ensured by way of real-time update when performing step 102, default road It is the exit port of not congestion by the exit port in table, the contents of the section will be described in detail later.
Optionally, default routing table can be the routing table established by method of the prior art, can also use Method of the prior art is updated routing table.For example, the list item which includes includes two words Section, first character section are Hash (hash) value of data packet five-tuple, and second field is next-hop go out port numbers.Wherein, number It can include source network agreement (English according to the five-tuple of bag:Internet Protocol, referred to as:IP) address, source port number, Purpose IP address, destination slogan and transport layer protocol.By carrying out Hash calculation to five-tuple, it is possible to obtain five-tuple Cryptographic Hash.
Optionally, the five-tuple of all data packets of each data flow is identical, so in default route table items Next-hop exit port is for each data flow.Therefore, the data packet of same data flow can all match identical next Jump out port.
Foregoing description is scheduled based on data flow, so routing table is the routing table based on data flow, but in reality During border uses, stream cluster (flowlet) can also be based on and dispatched, corresponding, default routing table can be flowlet routing tables, Split between flowlet by a minimum interval, when the time interval of adjacent data bag is less than the minimum in a flowlet Between be spaced, as long as this minimum interval be more than equal cost multipath maximum delay it is poor, multiple flowlet can be dispatched to not Same path is up without out of order.The content that flowlet forwarding mechanisms are well known to those skilled in the art, it is no longer superfluous herein It states.
For example, in a step 102, data transfer equipment can calculate the cryptographic Hash of the five-tuple of data packet, so Matched afterwards by cryptographic Hash in default routing table, it is then determined that whether successful match, if successful match, then The corresponding next-hop exit port of cryptographic Hash with successful five-tuple is the next-hop exit port of data packet;Data transfer equipment Can data packet be sent by the next-hop exit port matched.If data are not matched successfully in default routing table The next-hop exit port of bag, then data transfer equipment perform step 103.
It should be noted that the difference of the matching field in the list item of default routing table, in a step 102 really During fixed, it is also different to carry out matched content.For example, if the first character section that the list item of default routing table includes For the traffic identifier of data flow, second field is corresponding next-hop go out port numbers, then in a step 102, data forwarding is set The standby traffic identifier that can obtain data packet, is then matched according to traffic identifier in default routing table, to determine default road By whether there is the corresponding next-hop exit port of data packet in table.The content that the contents of the section is well known to those skilled in the art, So details are not described herein.
In step 103, data transfer equipment recorded in the data transfer equipment is except congestion information table to number According in other ports outside the congestion exit port of the purpose data transfer equipment of bag, determine first port as data packet to purpose The next-hop exit port of data transfer equipment.
For the ease of understanding the method for routing in the embodiment of the present invention, data transfer equipment will be first introduced below and obtains congestion The process of information table.
Obtain congestion information table a kind of possible embodiment be:Data transfer equipment determines the institute of data transfer equipment There is the port for the congestion that each purpose data transfer equipment is arrived in port;By each purpose data transfer equipment and corresponding to described The port numbers of the port of the congestion of each purpose data transfer equipment are recorded in congestion information table, and the congestion information table also wraps Include the congestion points of the port of each congestion.In other words, the data are had recorded in the congestion record sheet that data transfer equipment is safeguarded Forwarding unit is to the not available next-hop exit port of each purpose data transfer equipment.Further, congestion information table can also be remembered The congestion points of each not available next-hop exit port of record.
Generally, cause next-hop exit port unavailable main there are two reason, first, notebook data forwarding unit arrives down One jumps data transfer equipment congestion, second is that next-hop data transfer equipment is to purpose data transfer equipment congestion.Therefore, gather around Plug points can reflect have from notebook data forwarding unit to purpose forwarding unit it is several from congestion.
Therefore, based on two above reason, data transfer equipment determines to arrive in all of the port of data transfer equipment each The port of the congestion of purpose data transfer equipment can be implemented in terms of two, on the one hand be to determine that notebook data forwarding unit arrives Next-hop data transfer equipment whether congestion, be on the other hand to determine next-hop data transfer equipment to purpose data transfer equipment Whether congestion.
Wherein it is determined that notebook data forwarding unit to next-hop data transfer equipment whether congestion, can be by judge adjust Whether the quantity for spending the data flow on the port of connection next-hop data transfer equipment is more than threshold value, if the quantity of data flow surpasses Cross threshold value, then it represents that the port congestion, otherwise, it means that the port not congestion.Can also judge to be dispatched to connection next-hop Whether the port packet sending speed on the port of data transfer equipment is more than threshold value, if packet sending speed is more than threshold value, then it represents that the end Mouthful congestion, otherwise, it means that the port not congestion.The program is suitable for source data transmission equipment to purpose data transfer equipment Last layer data transfer equipment.
For example, such as the network structure shown in Fig. 1 c, access switch 1 have 2n port, and wherein n port is For connecting host or server, in addition n port is for connection to uplink convergence switch, such as n level of connection Convergence switch 1.It is, for example, access switch 2n no matter purpose data transfer equipment is remaining which access switch2, connect It is, for example, source interchanger to enter interchanger 1, then and the convergence switch 1 in n level is reachable next-hop interchanger, so N port of connection convergence switch 1 is properly termed as uplink port.And then access switch 1 can determine access switch 1 Convergence to n level exchanges 1 whether the data flow of the convergence switch 1 in congestion, such as current scheduling to level 1 has had 20, more than threshold value 10, illustrate this paths congestion, it is unavailable, it is possible to exchange the convergence for connecting level 1 The port of machine 1 is recorded in congestion information table.And the data flow of the convergence switch 1 in current scheduling to level n has 5, does not have Threshold value 10 is had more than, illustrates this paths not congestion, can be used as available next-hop exit port.
Optionally, it refer to shown in table one, be a kind of possible form of congestion record sheet.
Purpose data transfer equipment Unavailable next-hop exit port
1 { port numbers:Congestion is counted }
2 { port numbers:Congestion is counted }
k { port numbers:Congestion is counted }
Table one
In Table 1, congestion record sheet can include two fields, be respectively " purpose data transfer equipment " field and " no Next-hop exit port can be used " field." purpose data transfer equipment " can both fill the mark of purpose data transfer equipment, also may be used To fill the address of purpose data transfer equipment, such as IP address.In practice, as long as the content of field filling can The unique mark purpose data transfer equipment, the embodiment of the present invention are not especially limited." unavailable next-hop exit port " Field can fill the port numbers (content before colon) of congestion and the congestion of the port of the congestion is counted (behind colon Content).Certainly, in practice, congestion record sheet can also include other fields, and the embodiment of the present invention does not limit specifically It is fixed.
By taking the citing of front as an example, it is assumed that the port numbers of the convergence switch 1 in the connection level 1 of access switch 1 are The port numbers of convergence switch 1 on 1, connection level n are 3, it is assumed that purpose data transfer equipment is access switch 2.According to Table one, then the congestion record sheet preserved on access switch 1 can be as shown in Table 2.
Purpose data transfer equipment Unavailable next-hop exit port
The IP address of access switch 2 {1:1}
Table two
As can be seen from Table II, because 1 congestion of port, port 1 is recorded in " unavailable next-hop exit port " word Duan Zhong, and the congestion points of port 1 are added 1, it is also recorded in " unavailable next-hop exit port ".And the not congestion of port 3, so It is just not recorded in table two.
Optionally, notebook data forwarding unit is upper layer data forwarding unit, i.e., non-purpose data transfer equipment and purpose number According to the upper layer data forwarding unit of forwarding unit, it is determined that whether next-hop data transfer equipment is gathered around to purpose data transfer equipment Plug, can specifically include:Each lower data forwarding that data transfer equipment reception is connected with the port of data transfer equipment is set The third notice information that preparation is sent;Wherein, each lower data forwarding unit is the road for reaching each purpose data transfer equipment Data transfer equipment on footpath;Whether third notice information can be as data turn for characterizing each lower data forwarding unit Send out the next-hop that equipment reaches each purpose data transfer equipment;Data transfer equipment determines that data turn according to third notice information Send out the port for the congestion that each purpose data transfer equipment is arrived in all of the port of equipment.
It should be noted that upper layer data forwarding unit referred to herein, lower data forwarding unit, are to pass through data The flow direction of bag is come what is defined, and the source of upper layer data forwarding unit, that is, data packet, lower data forwarding unit is data packet Whereabouts.By taking the network structure in Fig. 1 c as an example, access switch 1 will deliver a packet to the convergence switch 1 of level n, that The convergence switch 1 of level n is the lower layer switch of access switch 1, and the convergence that access switch 1 is level n is handed over Change planes 1 Upper Switch.
Optionally, third notice information can be packaged and be sent jointly to data message by lower data forwarding unit Upper layer data forwarding unit, such as pass through virtual expansible LAN (English:Virtual eXtensible Local Area Network, referred to as:VXLAN) technology is packaged.
Optionally, lower data forwarding unit can construct new message to send third notice information.It is a kind of possible New message format is as shown in Table 3.
Flag bit Purpose data transfer equipment
Table three
As shown in Table 1, new message format, the i.e. form of third notice information can include two fields, be respectively " flag bit " field and " purpose data transfer equipment " field.In practice, other fields can also be included, the present invention is real Example is applied to be not especially limited.
Optionally, " flag bit " field can be represented with 0 and 1, such as 1 represents to be not available as next-hop, and 0 represents can be used as Next-hop.Certainly, in practice, " flag bit " field can also be filled with other values, for example, with " true " and " false " is represented to can be used as next-hop respectively and is not available as next-hop.
Optionally, " purpose data transfer equipment " field can both fill the mark of purpose data transfer equipment, can also Fill the address of purpose data transfer equipment, such as IP address.In practice, as long as the content of field filling can be only One identifies the purpose data transfer equipment, and the embodiment of the present invention is not especially limited.
Regardless of sending method, when data transfer equipment receives the 3rd of each lower data forwarding unit transmission Notification information, the content in " flag bit " field that can be in third notice information determine that the lower data forwarding unit is It is no can be as reaching the next-hop of purpose data transfer equipment that is identified in " purpose data transfer equipment " field, and then can be with Determine in all of the port of data transfer equipment to each purpose data transfer equipment congestion port.
Optionally, " purpose data transfer equipment " field can both identify a purpose data transfer equipment, can also mark Know one group of purpose data transfer equipment.
For example, please continue to refer to Fig. 1 c shown in network structure.Assuming that the convergence switch 1 on level n is before State two aspect definite discovery, itself to all core switch on level n all in congestion state, so on level n Convergence switch 1 can not reach access switch n+1 to access switch 2n2, the convergence switch 1 on level n is just at this time Third notice information can be sent to access switch 1, " flag bit " field can be filled in the third notice information 1, " purpose data transfer equipment " field can insert access switch n+1 to access switch 2n2Mark or address, that Access switch 1 receives the third notice information, it is possible to update table two, obtain table four.
Table four
It optionally, can be in congestion record sheet by congestion when some port becomes not congestion state from congestion state Points subtract 1, when congestion points are kept to 0, it is possible to which the port is deleted from congestion record sheet.
Optionally, it is lower data forwarding unit, then corresponding if data transfer equipment is non-source data transfer equipment , data transfer equipment also determines whether itself is in congestion state to all of the port of each purpose data transfer equipment; If itself is in congestion state to all of the port of the data transfer equipment of the first mesh in each purpose data transfer equipment, Then data transfer equipment sends the first notification information to upper layer data forwarding unit, and the first notification information is used to notify upper layer data Forwarding unit itself cannot function as the next-hop that upper layer data forwarding unit reaches the data transfer equipment of the first mesh;If data The all of the port of forwarding unit to the data transfer equipment of the second mesh in each purpose data transfer equipment is not in congestion State, then data transfer equipment is to upper layer data forwarding unit the second notification information of transmission, and the second notification information is for notice Layer data forwarding unit, data transfer equipment can reach the data transfer equipment of the second mesh as upper layer data forwarding unit Next-hop.
Wherein, the first notification information and the second notification information are similar with third notice information, unlike, third notice letter Breath, which contains, can be used as next-hop and cannot be used as two kinds of situations of next-hop, and the first notification information is only included and cannot made For the situation of next-hop, the second notification information only comprising can as the situation of next-hop, but three may be employed it is identical Sending method and form, such as individually sent using message structure as shown in Table 3.
For example, the data transfer equipment in step 103 is the convergence switch 1 on level n, the convergence switch 1 It is determined according to the method in terms of both of the aforesaid, all of the port to access switch 2 is in congestion state, then can be to Access switch 1 sends the first notification information.Assuming that the convergence switch 1 is determined according to the method in terms of both of the aforesaid, to connecing Enter all of the port of interchanger 3 and be not completely in congestion state, that is, access switch 3 can be reached, then the convergence Interchanger 1 can send the second notification information to access switch 1.
In the above description, by taking each data transfer equipment oneself record safeguards congestion record sheet as an example, but in reality In, congestion information can be interacted with each data transfer equipment by the controller in network structure, establish and safeguard congestion Record sheet, in step 103, data transfer equipment can obtain the congestion record sheet of itself to controller.
It is further to note that in the above description, although being illustrated by taking congestion information table as an example, in reality It in or creates and safeguards non-congested information table, i.e., the port of not congestion can be recorded in non-congested information table.It gathers around Plug information table and non-congested information are two opposite expression ways of same part thing, so the two can achieve the effect that is Identical, unlike, generally, the port number of congestion is less than the port number of not congestion, so congestion information table can subtract The data volume recorded less saves memory space and maintenance cost.
Optionally, in order to ensure that the exit port in default routing table is available next-hop exit port, and because Congestion record sheet can change with the variation of time, so the method in the embodiment of the present invention further includes:If data forwarding When the not congestion exit port of equipment changes into congestion exit port, data transfer equipment also determines whether included in default routing table The congestion exit port;If the congestion exit port is included in default routing table, data transfer equipment will include described gather around The list item of plug exit port is deleted from default routing table.In this way, it can ensure the exit port in default routing table It is always available next-hop exit port.
For example, in foregoing table two into table four, port 3 becomes congestion exit port from not congestion exit port, then connects Whether will check in oneself local routing table comprising port 3, if comprising will include the list item of port 3 if entering interchanger 1 It is deleted from routing table.It so avoids in a step 102, matches port 3, but the congestion again of port 3, data packet is caused to be sent out It send delay or sends failure.For 3 corresponding data flow of port, if there is the data packet of the data flow needs to send, then just It can be matched in a step 102 using updated routing table, because having deleted, matching can fail, and continue to Exit port is selected for the data packet again by step 103, and then is sent by step 104.
After congestion record sheet has been introduced, introduction step 103 is further continued for below.
Because being not matched to the next-hop exit port of data packet in default routing table, data transfer equipment can First to check the congestion exit port of the purpose data transfer equipment to the data packet recorded in congestion information table, then except In other ports outside congestion exit port, determine first port as the data packet to the next of the purpose data transfer equipment Jump out port.
Optionally, first port can be the end of random selection one in other ports in addition to congestion exit port Mouthful, it can also be the port selected by certain rule, such as pass through equal cost multipath (English:Equal Cost Multi Path, referred to as:ECMP) mechanism selection first port can also pass through the balanced (English of Random Load:Valiant Load Balancing, referred to as:VLB) mechanism selection first port.
For example, the purpose data transfer equipment of data packet is access switch 2, according to the congestion information shown in table two In table, access switch 1 determines the port 1 of access switch 2, i.e. the port 1 of the convergence switch 1 of connection level 1 is to gather around Plug, so a port can be randomly choosed in remaining n-1 port, such as port 3, that is, it is connected to the remittance of level n The port of poly- interchanger 1 is as first port, and in other words, selection port 3 reaches the next-hop of access switch 2 as data packet Exit port.
After definite next-hop exit port, step 104 next can be performed, i.e. data transfer equipment passes through first end Mouth sends the data packet.Such as access switch 1 is sent the packet within away by port 3.
In the transmission path of data packet, in addition to purpose data transfer equipment, from source data transmission equipment to purpose The last layer data transfer equipment of data transfer equipment can be performed according to step 101 to step 104.
Optionally, after step 104, this method further includes:It is that the data packet is corresponding in default routing table Data flow establishes new list item, and the exit port of new list item is first port.Such as the first field of new list item be traffic identifier, the second word The exit port of section is port 3.By this method can the subsequent message of the data flow can be carried out according to first port Data packet forwarding time is saved in forwarding.
Optionally, when data packet reaches some data transfer equipment, if the data transfer equipment turns to purpose data It is single path to send out equipment, then can directly be forwarded from the single path, the exit port of the single path can be recorded in default In routing table.It can so save forwarding time.
It is described below the complete mistake that a data packet is sent to purpose data transfer equipment from source data transmission equipment Journey, please continue to refer to shown in Fig. 1 c, it is assumed that access switch 1 be source data transmission equipment, access switch 2n2For purpose data Forwarding unit.As source data transmission equipment, access switch 1 can first inquire about the routing table of itself preservation, it is determined whether energy The next-hop exit port of the data packet is matched, such as is not matched to, then can be in congestion information as shown in Table 2 The port of congestion is first determined in table, is found to access switch 2n2Currently without the port of congestion, then can it is all can Up to access switch 2n2Port in select a port as next-hop exit port, such as selection port 3, that is, connect level n Convergence switch 1 port, the convergence switch 1 for being then sent to data packet on level n from port 3 is (in figure 1 c, real The transmission path of line arrows show data bag).Optionally, access switch 1 can establish the data in default routing table The new list item of corresponding data flow is wrapped, the corresponding next-hop exit port of the new list item is port 3.
When data packet reaches the convergence switch 1 on level n, which equally can be on the road that itself is preserved By being matched in table, result e.g. connects the core switch n on level n, then should to match next-hop exit port Convergence exchanges 1 and just delivers a packet to core switch n.
When data packet reaches core switch n, because in the network structure of Fig. 1 c, the convergence in each level is handed over It changes planes and there was only a paths to some access switch, so reaching some access switch from core switch only has a road Footpath, so core switch can directly be forwarded to message according to the next-hop exit port recorded in default routing table. Therefore, in the present embodiment, core switch n can be according to the next-hop exit port in the routing table being locally stored to data packet It is forwarded to, data packet can be sent to the convergence switch 2n on level n.
Reach the convergence switch 2n on level n when data packet, because convergence switch 2n lower floors are exactly purpose data Forwarding unit, i.e. access switch 2n2, so convergence switch 2n equally carries out single path forwarding, that is, pass through local preservation Routing table in next-hop exit port data packet is forwarded to, data packet can be sent to access switch 2n2.So far, number According to bag just from source data transmission equipment, i.e. access switch 1 is sent to purpose data transfer equipment, i.e. access switch 2n2
It is similar with the example of foregoing description for the implementation process of the exchange network shown in Fig. 1 a, so herein no longer in detail It states.
In a first aspect, in embodiments of the present invention, data transfer equipment feedback itself arrives it can be seen from above description The whether available information of the link of purpose data transfer equipment, rather than routing plan of the prior art, it is necessary to feed back from source Data transfer equipment between purpose data transfer equipment per paths utilization rate situation;Second aspect is implemented in the present invention In example, feedback is not from purpose data transfer equipment to source data transmission equipment, but from the data transfer equipment of congestion to upper Layer data forwarding unit;The third aspect, when data transfer equipment carries out flow scheduling, as long as selecting available next-hop outlet Mouthful, it is hop-by-hop routing, and optimal path is chosen in the prior art without picture, so once selecting a road end to end Footpath.Therefore, the scheme autgmentability in the embodiment of the present invention is strong, is easily extended in multistage clos frameworks.Further, because record Be the port of congestion, so occupying, list item is few and the routing plan of the prior art occupies list item and has the gap of the order of magnitude, and With the increase of clos levels, this advantage is increasing.It specifically refer to shown in table five, be the scheme in the embodiment of the present invention It is compared with the list item gap of the routing plan described in background technology.
Table five
Further, no matter clos levels are much, and congestion information is all real-time, because when some data transfer equipment detects To certain port congestion, the port need to only be deleted from the available next-hop of purpose data transfer equipment.In addition, usually exist Some data transfer equipment not can use during next-hop or can never become having with next-hop to purpose data transfer equipment When can use next-hop, which is just notified that upper layer data forwarding unit, so the method in the embodiment of the present invention Feedback jams information it is time-consuming also shorter.
Based on same inventive concept, the embodiment of the present invention also provides a kind of data transfer equipment (as shown in Figure 2), the data Forwarding unit is used to implement preceding method.
Specifically, processor 10, for obtaining data packet, determines the data whether are matched in default routing table The next-hop exit port of bag;Wherein, the exit port in the default routing table is the not exit port of congestion and be port Port in 50;If not matching the next-hop exit port of the data packet in the default routing table, processor 10 is also For in the data transfer equipment except congestion information table in the purpose data transfer equipment to the data packet that records In other ports outside congestion exit port, determine first port as under the data packet to the purpose data transfer equipment One jumps out port;Exit port and other ports in the congestion information table are the port in port 50;Transmitter 20, the data packet is sent by the first port.
Optionally, processor 10 is additionally operable to:It determines at least two port to each purpose data transfer equipment The port of congestion;By each purpose data transfer equipment and the congestion corresponding to each purpose data transfer equipment The port numbers of port are recorded in the congestion information table.
Optionally, if the data transfer equipment is non-source data transfer equipment, processor 10 is additionally operable to:Determine the number Whether congestion state is according to all of the port of forwarding unit to each purpose data transfer equipment;
Transmitter 20 is additionally operable to:If the data transfer equipment is to the first mesh in each purpose data transfer equipment The all of the port of data transfer equipment be in congestion state, send the first notification information, institute to upper layer data forwarding unit The first notification information is stated for notifying the upper layer data forwarding unit, the data transfer equipment cannot function as the upper number of plies The next-hop of the data transfer equipment of first mesh is reached according to forwarding unit;If the data transfer equipment is to each mesh Data transfer equipment in all of the port of data transfer equipment of the second mesh be not in congestion state, then to upper layer data Forwarding unit sends the second notification information, and second notification information is used to notify the upper layer data forwarding unit, the number The next-hop of the data transfer equipment of second mesh can be reached as the upper layer data forwarding unit according to forwarding unit.
Optionally, receiver 30 turn for receiving each lower data being connected with the port of the data transfer equipment Send out the third notice information that equipment is sent;Wherein, each lower data forwarding unit is arrival each purpose data Data transfer equipment on the path of forwarding unit;The third notice information sets for characterizing each lower data forwarding The standby next-hop that each purpose data transfer equipment whether can be reached as the data transfer equipment;Processor 10 is also For:It is determined according to the third notice information at least two port to the congestion of each purpose data transfer equipment Port.
Optionally, processor 10 is additionally operable to:If the not congestion exit port of the data transfer equipment changes into congestion outlet During mouth, whether determine in the default routing table comprising the congestion exit port;If institute is included in the default routing table The list item comprising the congestion exit port is deleted from the default routing table when stating congestion exit port.
Optionally, processor 10 is additionally operable to:It is forwarded in the definite first port as the data packet to the purpose It is that the corresponding data flow of the data packet establishes new table in the default routing table after the next-hop exit port of equipment , the exit port of the new list item is the first port.
Based on same inventive concept, a kind of route device that the embodiment of the present invention also provides.The route device is used to implement Method for routing as shown in Figure 3.Referring next to shown in Fig. 4, which includes:Processing unit 201, for obtaining number According to bag;Determine whether to match the next-hop exit port of the data packet in default routing table;Wherein, the default road It is the exit port of not congestion by the exit port in table;If it is not matched under the data packet in the default routing table One jumps out port, the purpose data transfer equipment to the data packet recorded in data transfer equipment is except congestion information table Congestion exit port outside other ports in, determine first port as the data packet to the purpose data transfer equipment Next-hop exit port;Transmitting element 202, for sending the data packet by the first port.
Optionally, processing unit 201 is additionally operable to:It determines to arrive each purpose number in all of the port of the data transfer equipment According to the port of the congestion of forwarding unit;By each purpose data transfer equipment and corresponding to each purpose data forwarding The port numbers of the port of the congestion of equipment are recorded in the congestion information table.
Optionally, if the data transfer equipment is non-source data transfer equipment, processing unit 201 is also used:It determines described Whether all of the port of data transfer equipment to each purpose data transfer equipment is in congestion state;Transmitting element 202 are additionally operable to:If the data forwarding of the data transfer equipment to the first mesh in each purpose data transfer equipment is set Standby all of the port is in congestion state, then sends the first notification information, first notice to upper layer data forwarding unit For information for notifying the upper layer data forwarding unit, the data transfer equipment cannot function as the upper layer data forwarding unit Reach the next-hop of the data transfer equipment of first mesh;If the data transfer equipment is to each purpose data forwarding The all of the port of the data transfer equipment of the second mesh in equipment is not in congestion state, then is sent out to upper layer data forwarding unit The second notification information is sent, second notification information is used to notify the upper layer data forwarding unit, the data transfer equipment The next-hop of the data transfer equipment of second mesh can be reached as the upper layer data forwarding unit.
Optionally, route device further includes receiving unit 203, and receiving unit 203 is used for:Reception is set with the data forwarding The third notice information that each lower data forwarding unit of standby port connection is sent;Wherein, each lower data turns Equipment is sent out to reach the data transfer equipment on the path of each purpose data transfer equipment;The third notice information is used Whether can be as data transfer equipment arrival each purpose number in characterizing each lower data forwarding unit According to the next-hop of forwarding unit;Processing unit 201 is additionally operable to:The data transfer equipment is determined according to the third notice information All of the port in each purpose data transfer equipment congestion port.
Optionally, processing unit 201 is additionally operable to:If the not congestion exit port of the data transfer equipment is changed into congestion and is gone out During port, whether determine in the default routing table comprising the congestion exit port;If it is included in the default routing table During the congestion exit port, the list item comprising the congestion exit port is deleted from the default routing table.
Optionally, processing unit 201 is additionally operable to:Turn in the definite first port as the data packet to the purpose It is that the corresponding data flow of the data packet establishes new table in the default routing table after the next-hop exit port for sending out equipment , the exit port of the new list item is the first port.
Various change mode in method for routing and specific example in 3 embodiment of earlier figures are equally applicable to the present embodiment Route device and data transfer equipment, by the foregoing detailed description to method for routing, those skilled in the art can understand Know the implementation of route device and data transfer equipment in the present embodiment, so in order to illustrate the succinct of book, herein not It is described in detail again.
It should be understood by those skilled in the art that, the embodiment of the present invention can be provided as method, system or computer program Product.Therefore, the reality in terms of complete hardware embodiment, complete software embodiment or combination software and hardware can be used in the present invention Apply the form of example.Moreover, the computer for wherein including computer usable program code in one or more can be used in the present invention The shape for the computer program product that usable storage medium is implemented on (including but not limited to magnetic disk storage and optical memory etc.) Formula.
The present invention be with reference to according to the method for the embodiment of the present invention, the flow of equipment (system) and computer program product Figure and/or block diagram describe.It should be understood that it can be realized by computer program instructions every first-class in flowchart and/or the block diagram The combination of flow and/or box in journey and/or box and flowchart and/or the block diagram.These computer programs can be provided The processor of all-purpose computer, special purpose computer, Embedded Processor or other programmable data processing devices is instructed to produce A raw machine so that the instruction performed by computer or the processor of other programmable data processing devices is generated for real The device for the function of being specified in present one flow of flow chart or one box of multiple flows and/or block diagram or multiple boxes.
These computer program instructions, which may also be stored in, can guide computer or other programmable data processing devices with spy Determine in the computer-readable memory that mode works so that the instruction generation being stored in the computer-readable memory includes referring to Make the manufacture of device, the command device realize in one flow of flow chart or multiple flows and/or one box of block diagram or The function of being specified in multiple boxes.
These computer program instructions can be also loaded into computer or other programmable data processing devices so that counted Series of operation steps is performed on calculation machine or other programmable devices to generate computer implemented processing, so as in computer or The instruction offer performed on other programmable devices is used to implement in one flow of flow chart or multiple flows and/or block diagram one The step of function of being specified in a box or multiple boxes.
Obviously, various changes and modifications can be made to the invention without departing from essence of the invention by those skilled in the art God and scope.In this way, if these modifications and changes of the present invention belongs to the scope of the claims in the present invention and its equivalent technologies Within, then the present invention is also intended to comprising including these modification and variations.

Claims (18)

1. a kind of method for routing, which is characterized in that including:
Data transfer equipment obtains data packet;
The data transfer equipment determines the next-hop exit port of the data packet whether is matched in default routing table;Its In, the exit port in the default routing table is the exit port of not congestion;
If not matching the next-hop exit port of the data packet in the default routing table, the data transfer equipment exists The congestion for removing the purpose data transfer equipment to the data packet recorded in congestion information table of the data transfer equipment goes out In other ports outside port, determine that first port is jumped out as the data packet to the next of purpose data transfer equipment Port;
The data transfer equipment sends the data packet by the first port.
2. the method as described in claim 1, which is characterized in that the method further includes:
The data transfer equipment determines to arrive each purpose data transfer equipment in all of the port of the data transfer equipment The port of congestion;
The data transfer equipment is set by each purpose data transfer equipment and corresponding to each purpose data forwarding The port numbers of the port of standby congestion are recorded in the congestion information table.
3. method as claimed in claim 2, which is characterized in that if the data transfer equipment is non-source data transfer equipment, The method further includes:
The data transfer equipment determines the data transfer equipment to all of the port of each purpose data transfer equipment Whether congestion state is in;
If the data transfer equipment is to the institute of the data transfer equipment of the first mesh in each purpose data transfer equipment There is port to be in congestion state, then the data transfer equipment sends the first notification information, institute to upper layer data forwarding unit The first notification information is stated for notifying the upper layer data forwarding unit, the data transfer equipment cannot function as the upper number of plies The next-hop of the data transfer equipment of first mesh is reached according to forwarding unit;
If the data transfer equipment is to the institute of the data transfer equipment of the second mesh in each purpose data transfer equipment There is port not to be in congestion state, then the data transfer equipment sends the second notification information to upper layer data forwarding unit, For second notification information for notifying the upper layer data forwarding unit, the data transfer equipment can be used as the upper strata Data transfer equipment reaches the next-hop of the data transfer equipment of second mesh.
4. method as claimed in claim 2 or claim 3, which is characterized in that the data transfer equipment determines that the data forwarding is set The port of the congestion of each purpose data transfer equipment is arrived in standby all of the port, including:
Each lower data forwarding unit hair that the data transfer equipment reception is connected with the port of the data transfer equipment The third notice information sent;Wherein, each lower data forwarding unit is arrival each purpose data transfer equipment Path on data transfer equipment;Whether the third notice information can for characterizing each lower data forwarding unit The next-hop of each purpose data transfer equipment is enough reached as the data transfer equipment;
The data transfer equipment determines to arrive in all of the port of the data transfer equipment according to the third notice information each The port of the congestion of a purpose data transfer equipment.
5. such as the method any one of claim 1-4, which is characterized in that the method further includes:
If the not congestion exit port of the data transfer equipment changes into congestion exit port, the data transfer equipment also determines Whether the congestion exit port is included in the default routing table;
If the congestion exit port is included in the default routing table, the data transfer equipment will go out comprising the congestion The list item of port is deleted from the default routing table.
6. such as the method any one of claim 1-5, which is characterized in that in the definite first port as the number After next-hop exit port according to bag to the purpose forwarding unit, the method further includes:
The data transfer equipment is that the corresponding data flow of the data packet establishes new list item, institute in the default routing table The exit port for stating new list item is the first port.
7. a kind of data transfer equipment, which is characterized in that including:
At least two ports;
Processor for obtaining data packet, determines that the next of the data packet whether is matched in default routing table to be jumped out Port;Wherein, the exit port in the default routing table is the not exit port of congestion and be at least two port In port;If not matching the next-hop exit port of the data packet in the default routing table, the processor is also For in the data transfer equipment except congestion information table in the purpose data transfer equipment to the data packet that records In other ports outside congestion exit port, determine first port as under the data packet to the purpose data transfer equipment One jumps out port;Exit port and other ports in the congestion information table are the end at least two port Mouthful;
Transmitter sends the data packet by the first port.
8. data transfer equipment as claimed in claim 7, which is characterized in that the processor is additionally operable to:Described in determining at least The port of the congestion of each purpose data transfer equipment is arrived in two ports;By each purpose data transfer equipment and correspondence Port numbers in the port of the congestion of each purpose data transfer equipment are recorded in the congestion information table.
9. data transfer equipment as claimed in claim 8, which is characterized in that if the data transfer equipment turns for non-source data Equipment is sent out, the processor is additionally operable to:Determine the data transfer equipment to all of each purpose data transfer equipment Whether port is in congestion state;
The transmitter is additionally operable to:If the data transfer equipment is to the first purpose in each purpose data transfer equipment The all of the port of data transfer equipment is in congestion state, and the first notification information is sent to upper layer data forwarding unit, described For first notification information for notifying the upper layer data forwarding unit, the data transfer equipment cannot function as the upper layer data Forwarding unit reaches the next-hop of the data transfer equipment of first mesh;If the data transfer equipment is to each purpose The all of the port of the data transfer equipment of the second mesh in data transfer equipment is not in congestion state, then turns to upper layer data It sends out equipment and sends the second notification information, second notification information is used to notify the upper layer data forwarding unit, the data Forwarding unit can reach the next-hop of the data transfer equipment of second mesh as the upper layer data forwarding unit.
10. data transfer equipment as claimed in claim 8 or 9, which is characterized in that the data transfer equipment further includes reception Device,
The receiver sends for receiving each lower data forwarding unit being connected with the port of the data transfer equipment Third notice information;Wherein, each lower data forwarding unit is arrival each purpose data transfer equipment Data transfer equipment on path;Whether the third notice information can for characterizing each lower data forwarding unit The next-hop of each purpose data transfer equipment is reached as the data transfer equipment;
The processor is additionally operable to:It is determined to arrive each purpose data at least two port according to the third notice information The port of the congestion of forwarding unit.
11. such as the data transfer equipment any one of claim 7-10, which is characterized in that the processor is additionally operable to: If the not congestion exit port of the data transfer equipment changes into congestion exit port, determine in the default routing table whether Include the congestion exit port;If the congestion outlet will be included when the congestion exit port is included in the default routing table The list item of mouth is deleted from the default routing table.
12. such as the data transfer equipment any one of claim 7-11, which is characterized in that the processor is additionally operable to: After the definite first port is as the next-hop exit port of the data packet to the purpose forwarding unit, described pre- If routing table in be that the corresponding data flow of the data packet establishes new list item, the exit port of the new list item is the first end Mouthful.
13. a kind of route device, which is characterized in that including:
Processing unit, for obtaining data packet;Determine whether to match the next-hop of the data packet in default routing table Exit port;Wherein, the exit port in the default routing table is the exit port of not congestion;If in the default routing table In do not match the next-hop exit port of the data packet, recorded in data transfer equipment is except congestion information table to described In other ports outside the congestion exit port of the purpose data transfer equipment of data packet, determine first port as the data packet To the next-hop exit port of the purpose data transfer equipment;
Transmitting element, for sending the data packet by the first port.
14. route device as claimed in claim 13, which is characterized in that the processing unit is additionally operable to:Determine the data The port of the congestion of each purpose data transfer equipment is arrived in all of the port of forwarding unit;By each purpose data forwarding Equipment and port numbers corresponding to the port of the congestion of each purpose data transfer equipment are recorded in the congestion information table In.
15. route device as claimed in claim 14, which is characterized in that if the data transfer equipment is non-source data transmission Equipment, the processing unit are also used:Determine the data transfer equipment to all ends of each purpose data transfer equipment Whether mouth is in congestion state;
The transmitting element is additionally operable to:If the data transfer equipment is to the first mesh in each purpose data transfer equipment The all of the port of data transfer equipment be in congestion state, then send the first notification information to upper layer data forwarding unit, For first notification information for notifying the upper layer data forwarding unit, the data transfer equipment cannot function as the upper strata Data transfer equipment reaches the next-hop of the data transfer equipment of first mesh;If the data transfer equipment is to described each The all of the port of the data transfer equipment of the second mesh in purpose data transfer equipment is not in congestion state, then the upward number of plies The second notification information is sent according to forwarding unit, second notification information is described for notifying the upper layer data forwarding unit Data transfer equipment can reach the next-hop of the data transfer equipment of second mesh as the upper layer data forwarding unit.
16. the route device as described in claims 14 or 15, which is characterized in that the route device further includes receiving unit,
The receiving unit is used for:Receive each lower data forwarding unit hair being connected with the port of the data transfer equipment The third notice information sent;Wherein, each lower data forwarding unit is arrival each purpose data transfer equipment Path on data transfer equipment;Whether the third notice information can for characterizing each lower data forwarding unit The next-hop of each purpose data transfer equipment is enough reached as the data transfer equipment;
The processing unit is additionally operable to:It determines to arrive in all of the port of the data transfer equipment according to the third notice information The port of the congestion of each purpose data transfer equipment.
17. such as the route device any one of claim 13-16, which is characterized in that the processing unit is additionally operable to:If When the not congestion exit port of the data transfer equipment changes into congestion exit port, determine whether wrapped in the default routing table Containing the congestion exit port;If the congestion exit port is included in the default routing table, the congestion outlet will be included The list item of mouth is deleted from the default routing table.
18. such as the route device any one of claim 13-17, which is characterized in that the processing unit is additionally operable to: After next-hop exit port of the definite first port as the data packet to the purpose forwarding unit, described default Routing table in be that the corresponding data flow of the data packet establishes new list item, the exit port of the new list item is the first end Mouthful.
CN201611086242.2A 2016-11-30 2016-11-30 Routing method, routing device and data forwarding equipment Expired - Fee Related CN108123878B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611086242.2A CN108123878B (en) 2016-11-30 2016-11-30 Routing method, routing device and data forwarding equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611086242.2A CN108123878B (en) 2016-11-30 2016-11-30 Routing method, routing device and data forwarding equipment

Publications (2)

Publication Number Publication Date
CN108123878A true CN108123878A (en) 2018-06-05
CN108123878B CN108123878B (en) 2020-12-15

Family

ID=62226313

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611086242.2A Expired - Fee Related CN108123878B (en) 2016-11-30 2016-11-30 Routing method, routing device and data forwarding equipment

Country Status (1)

Country Link
CN (1) CN108123878B (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109246231A (en) * 2018-09-29 2019-01-18 北京深度奇点科技有限公司 A kind of method for intelligently routing and smart routing devices
CN109802879A (en) * 2019-01-31 2019-05-24 新华三技术有限公司 A kind of flow routing method and device
CN110460537A (en) * 2019-06-28 2019-11-15 天津大学 Data center's asymmetric topology down-off dispatching method based on packet set
CN111147386A (en) * 2018-11-02 2020-05-12 伊姆西Ip控股有限责任公司 Method, electronic device and computer program product for handling data transmission congestion
CN114007152A (en) * 2022-01-05 2022-02-01 北京国科天迅科技有限公司 Port convergence processing method and device for optical fiber switch
CN117082014A (en) * 2023-10-17 2023-11-17 苏州元脑智能科技有限公司 CLOS network, construction method, transmission method, system, device and medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101286930A (en) * 2008-05-30 2008-10-15 华南理工大学 Self-adapting routing method for congestion of multi-hop wireless self-organizing network
US20140219090A1 (en) * 2013-02-04 2014-08-07 Telefonaktiebolaget L M Ericsson (Publ) Network congestion remediation utilizing loop free alternate load sharing
WO2015161409A1 (en) * 2014-04-21 2015-10-29 华为技术有限公司 Load balance implementation method, device and system
US20160154756A1 (en) * 2014-03-31 2016-06-02 Avago Technologies General Ip (Singapore) Pte. Ltd Unordered multi-path routing in a pcie express fabric environment

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101286930A (en) * 2008-05-30 2008-10-15 华南理工大学 Self-adapting routing method for congestion of multi-hop wireless self-organizing network
US20140219090A1 (en) * 2013-02-04 2014-08-07 Telefonaktiebolaget L M Ericsson (Publ) Network congestion remediation utilizing loop free alternate load sharing
US20160154756A1 (en) * 2014-03-31 2016-06-02 Avago Technologies General Ip (Singapore) Pte. Ltd Unordered multi-path routing in a pcie express fabric environment
WO2015161409A1 (en) * 2014-04-21 2015-10-29 华为技术有限公司 Load balance implementation method, device and system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
YUAN YANG等: "A Hop-by-Hop Routing Mechanism for Green Internet", 《IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS》 *

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109246231A (en) * 2018-09-29 2019-01-18 北京深度奇点科技有限公司 A kind of method for intelligently routing and smart routing devices
CN109246231B (en) * 2018-09-29 2022-11-18 北京深度奇点科技有限公司 Intelligent routing method and intelligent routing equipment
CN111147386A (en) * 2018-11-02 2020-05-12 伊姆西Ip控股有限责任公司 Method, electronic device and computer program product for handling data transmission congestion
CN109802879A (en) * 2019-01-31 2019-05-24 新华三技术有限公司 A kind of flow routing method and device
CN109802879B (en) * 2019-01-31 2021-05-28 新华三技术有限公司 Data stream routing method and device
CN110460537A (en) * 2019-06-28 2019-11-15 天津大学 Data center's asymmetric topology down-off dispatching method based on packet set
CN110460537B (en) * 2019-06-28 2023-01-24 天津大学 Packet set-based data center asymmetric topology flow scheduling method
CN114007152A (en) * 2022-01-05 2022-02-01 北京国科天迅科技有限公司 Port convergence processing method and device for optical fiber switch
CN114007152B (en) * 2022-01-05 2022-06-07 北京国科天迅科技有限公司 Port convergence processing method and device for optical fiber switch
CN117082014A (en) * 2023-10-17 2023-11-17 苏州元脑智能科技有限公司 CLOS network, construction method, transmission method, system, device and medium
CN117082014B (en) * 2023-10-17 2024-01-23 苏州元脑智能科技有限公司 CLOS network, construction method, transmission method, system, device and medium

Also Published As

Publication number Publication date
CN108123878B (en) 2020-12-15

Similar Documents

Publication Publication Date Title
CN108123878A (en) A kind of method for routing, device and data transfer equipment
CN107409091B (en) Traffic engineering feeder line for packet switching network
CN104335537B (en) For the system and method for the multicast multipath of layer 2 transmission
CN106059821B (en) A kind of data center traffic QoS guarantee method based on SDN
EP2911348B1 (en) Control device discovery in networks having separate control and forwarding devices
CN103051629B (en) Software defined network-based data processing system, method and node
JP5975083B2 (en) COMMUNICATION SYSTEM, CONTROL DEVICE, PACKET TRANSFER ROUTE CONTROL METHOD, AND PROGRAM
CN110098992A (en) For transmitting the particular virtual local area network of peer business among the switches
CN107135158A (en) Optimal route selection method in a kind of multi-path transmission
US9413668B2 (en) Systems and methods for load-balancing in a data center
CN104871490B (en) The multipath communication device of energy ecology and its method for distributing business for improving energy ecology can be improved
CN106559324A (en) A kind of method E-Packeted based on equal cost multipath and the network equipment
CN108600415A (en) A kind of virtual network accesses method, system and the SDN controllers of outer net
CN104584491A (en) System and method providing distributed virtual routing and switching (DVRS)
CN106034077A (en) Dynamic route configuration method, device and system thereof
CN108965134B (en) Message forwarding method and device
CN108206785A (en) Optimizing routing and/or next hop related information for multicast traffic
Wang et al. SprintNet: A high performance server-centric network architecture for data centers
CN102307141A (en) Message forwarding method and device
JP6064989B2 (en) Control device, communication system, node control method, and program
EP2924925A1 (en) Communication system, virtual-network management device, communication node, and communication method and program
EP3474504B1 (en) Leaf-to-spine uplink bandwidth advertisement to leaf-connected servers
CN107078953A (en) Method for scalable computer network partitioning
WO2017084228A1 (en) Method for managing traffic item in software-defined networking
CN104838624B (en) The method, apparatus and system that a kind of control business data forward in virtual network

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20201215