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 PDFInfo
- 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
Links
- 238000012546 transfer Methods 0.000 title claims abstract description 356
- 238000000034 method Methods 0.000 title claims abstract description 62
- 238000012545 processing Methods 0.000 claims description 20
- 230000005540 biological transmission Effects 0.000 claims description 14
- 239000010410 layer Substances 0.000 description 54
- 238000013461 design Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 8
- 238000004590 computer program Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 6
- 238000003860 storage Methods 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 239000012792 core layer Substances 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 210000001072 colon Anatomy 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000004321 preservation Methods 0.000 description 2
- 101100327310 Caenorhabditis elegans emb-27 gene Proteins 0.000 description 1
- 241000221931 Hypomyces rosellus Species 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/745—Address table lookup; Address filtering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
- H04L47/122—Avoiding 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
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.
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)
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)
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 |
-
2016
- 2016-11-30 CN CN201611086242.2A patent/CN108123878B/en not_active Expired - Fee Related
Patent Citations (4)
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)
Title |
---|
YUAN YANG等: "A Hop-by-Hop Routing Mechanism for Green Internet", 《IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS》 * |
Cited By (11)
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 |