A path selection method and device for source host end in data center network

By building inverse SHT and CHT, the source host allows the precise selection of paths in the data center network, solving the port polarization problem caused by the ECMP hash function and improving the performance of the data center network.

CN119211104BActive Publication Date: 2025-03-04ZHEJIANG LAB
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411710960.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-11-27
Publication Date
2025-03-04
Estimated Expiration
2044-11-27

AI Technical Summary

Technical Problem

In existing data center networks, due to the limitation of the ECMP hash function, path selection is too centralized, port polarization effect occurs, weakening network performance, and existing methods require major changes or modification of network topology, which is difficult to apply to the current DCN.

Method used

By building the switch's inverse SHT and CHT, the source host allows the precise selection of forwarding paths controlled by ECMP by making specific changes to the packet header, thereby alleviating the port polarization problem.

Benefits of technology

It realizes the precise selection of paths by the source host, effectively alleviates the problem of ECMP polarization, avoids excessive overlap between forwarding paths, and improves the overall performance of the data center network.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119211104B_ABST
    Figure CN119211104B_ABST
Patent Text Reader

Abstract

The present invention discloses a path selection method and device for a source host in a data center network, the method comprising: using the principle of ECMP hash linearity in a data center network to implement a precise path selection method and device for the source host. The method deeply explores the association between the relative ECMP hash change and the final hash value, and identifies effective multi-bit adjustment schemes in the data stream header in combination with the known switch single-bit hash table, network topology, routing information and ECMP configuration. This enables the source host to flexibly and accurately select a multi-hop forwarding path to the target host by adjusting the data stream header. Through the precise path selection method and device provided by the present invention, the source host obtains the autonomy of path selection, thereby optimizing path allocation, significantly reducing path overlap and excessive use of switch ports, and thus improving overall network performance.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of computer networks, and in particular to a path selection method and device for a source host end in a data center network. Background Art

[0002] Modern data center networks (DCNs) usually adopt a scalable network topology with multiple levels to provide diversified end-to-end equivalent multiple data paths between hosts, such as in large-scale intelligent computing centers, large-scale general computing centers, large-scale cloud computing systems, large-scale data storage and other scenarios. However, the source host cannot select the path for sending data flows to a certain destination host. In fact, path selection is controlled by the switch's Equal-Cost Multi-Paths (ECMP) hash function. This function directly hashes the header of the data packet to select the egress port to use in all matching routes. However, these hash results may ignore the imbalance of traffic requests from the host, resulting in a port polarization effect, that is, some ports are overused and others are underutilized. This polarization effect causes the paths controlled by ECMP to overlap too much with each other, thereby weakening network performance.

[0003] Typical path selection methods require redefining the mechanism or configuration of network switches, providing precise path control, and using ECMP to balance loads. However, this approach requires major changes to the routing and transport layers, and may also require modifications to the network topology. These major changes are often difficult for current DCNs, limiting the scope of their application.

[0004] Research in recent years has focused on host-based path selection methods, which take advantage of the linearity of the ECMP hash function and allow the host to select the switch's egress port by making relative changes to the hash value (abbreviated as relative change, Relative Change). The RePaC method is a representative example (see the article HashingLinearity Enables Relative Path Control in Data Centers published at USENIX ATC'21). The following explains the ECMP hash function and its hash linearity, as well as RePaC.

[0005] The ECMP hash function is denoted by , is a proprietary hash algorithm that processes the header of a flow to generate a value ranging from 0 to NNH-1, where NNH is the number of next hop routes that match the destination address of the current packet. The hash value represents the index of the egress port in the NNH routes that match the destination address in the header. The hash algorithm is shown in formula (1), which usually includes a preprocessing stage, a hashing stage, and a post-processing stage. It uses operations such as CRC, XOR, and its variants, and finally performs a modulo operation of NNH to generate the index of the egress port.

[0006] (1)

[0007] Hash linearity can be defined by equation (2), which holds when the number of next hops (NNH) is a power of 2. This linearity can be easily achieved by designing switches with DCNs of 2 at each layer and configuring them appropriately. The relative change is defined as , and for head modification Therefore, when the switch is expected to output a specific egress port, Should output port index, if known Next, calculate , and accurately find its corresponding Finally, modify the packet header to , so that the packets follow the desired port.

[0008] (2)

[0009] Based on the above concept of relative change, RePaC is the only known method that can select RePaC works by identifying the specific egress port of a switch for a data flow. arrive to achieve, where Only one bit is set to 1, and the header is modified to The modified header generates the expected port index. For convenience, the mapping from single-bit header changes to their corresponding relative changes is called a Single Hash Table (SHT). The SHT includes how a single-bit modification to the packet header affects the relative change of the header value. An example is shown in Table 1, where the relative change Corresponding to The hash function used by the switch. This SHT can be expressed as formula (3).

[0010] (3)

[0011] Table 1: Examples of SHT

[0012] While RePaC uses SHT to exploit ECMP hash linearity. Using SHT, RePaC determines the header with The data packet should select the egress port and identify the header changes : Send a packet to determine the egress port that the switch uses for forwarding, which is a hash value of the packet ; Calculate the relative change required to direct the packet to the desired port, where is known, but Not known yet. Relative change due to Given; query the pre-generated SHT to find the corresponding one according to the calculated o (See Table 1); with a new head Update the packet. This modified packet will be egressed through the desired port because (See equation (2)).

[0013] However, the RePaC solution has the following two limitations:

[0014] Switch ports are limited. A single-bit header change cannot cover all the relative changes required to map to each switch egress port, resulting in many potential paths not being used. The situation in SHT;

[0015] RePaC focuses only on single-hop path selection. RePaC is limited to selecting the egress port in a single hop and currently does not handle egress port selection when the NNH value of two or more path switches is 2 or greater, and cannot be extended to paths with two or more hops where there are at least two next-hop options, such as in a three-layer fat-tree DCN topology. Summary of the invention

[0016] In view of the deficiencies in the prior art, an object of the present invention is to provide a path selection method and device (Host-Based Path Selector, HPS) for a source host in a data center network.

[0017] The object of the present invention is achieved through the following technical solution: a path selection method for a source host in a data center network, comprising the following steps:

[0018] (1) Construct the inverse SHT of the switch, as shown in Table 2;

[0019] Table 2: Examples of inverse SHT

[0020] (2) Based on the inverse SHT, construct the CHT of the switch, as shown in Table 3; map each XOR value of the relative change in the inverse SHT to a combination index corresponding to the relative change through the CHT;

[0021] Table 3: Example of CHT

[0022] (3) For on , the current path is tracked by sending a test packet, the test packet is parameterized as The source port and TTL are i+1; analyze the returned ICMP reply data packet and obtain The next hop is obtained, and then the outbound port index value of the current switch corresponding to the next hop is obtained. The outbound port index value is ;in, Represents the XOR operator, i represents The current index number of represents the simplified candidate path, Indicates the network switch nodes, val represents a legal header change, and h represents the header of the data packet;

[0023] (4) Calculate the expected relative change in XOR using the following formula: ,in, for The expected outbound port index, the outbound port index being such that The switch node can forward the test data packet to The next hop, i.e. Switch node; Obtained from SHT;

[0024] ;

[0025] (5) Enumeration All the nodes above combination; in the path superior, It is a target Each switch Contains the row index XOR value in the inverse SHT The sequence is as follows:

[0026] ;

[0027] in, The i-th element in Indicates The combinations are compressed into a k-bit binary bit sequence, which represents the k-bit binary bit sequence in SHT. The relevant index; for example, if is "1100..." (the 3rd and 4th bits are 1, and the rest are 0), then the represents the 3rd and 4th rows in the inverse SHT;

[0028] For each , find the inspection rules and search ;

[0029] (6) Increase i by 1 so that the test data packets in step (3) are tracked by sending test data packets one after another Each of , and finally tracked down Repeat steps (3)-(5) for all switch nodes in the arrive Path Matching effective ,until yes The last switch node on the Allow new headers The flow through , that is, through ; Implement path selection.

[0030] Further, the inverse SHT of the switch is constructed, comprising: converting the relative change Mapping to relative changes The XOR of all corresponding head bit changes is expressed as ;in, Indicates the XOR value of the corresponding head position change, represents the i-th head change, Represents the exclusive OR operator.

[0031] Furthermore, the inverse SHT of constructing the switch further includes: defining the relative change as , the relative changes are the same as for the head modification In association, the header represents a header of a data packet, and the header change represents a change in a protocol header field value.

[0032] Furthermore, the step (2) further includes:

[0033] Initialize the following variables: i=1; yes The longest subsequence of The NNH of each node matching flow in is not less than 2, denoted as ; val = 0; select a source port for h, generated randomly or manually; initialize ; where i represents The current index number of represents the simplified candidate path, represents the end-to-end path that is expected to be selected, Indicates the network switch nodes, val represents a legal header change, h represents the header of the data packet, Indicates along the path The outbound port index of all switches on the network is as shown in the following formula:

[0034] ;

[0035] in, express Middle Elements The outbound port index of the .

[0036] Further, for each , find the inspection rules and search , including the following steps:

[0037] Based on the and , determine from arrive Path All possible test rules for subpaths , referred to as ; The definition of is shown in the following formula. The inspection rule integrates the simplified path All individual inspection rules related to the relevant switches on the path Related to and ;

[0038] ;

[0039] in, Specified The relative change of each element in the XOR in CHT is shown in the following formula;

[0040] ;

[0041] Said gives the relative change from a given The mapping relationship between the corresponding specific bit information involves the XOR row index corresponding to the inverse SHT , as shown in the following formula, the path Any s-th switch and the test rule associated;

[0042] ;

[0043] in, Indicates that Any r-th relative change in ;

[0044] For each with a given of , abandon the current , and enumerate a new To ensure that Satisfy each ;

[0045] make sure Satisfy all , found new Considered as a path The subpath of is valid and replaces the old one .

[0046] Furthermore, the enumeration of a new To ensure that Satisfy each , for each , The following three conditions are met:

[0047] for Each of , Contains at least one bit position with The corresponding Overlapping bits;

[0048] There is no bit position in Any No overlap;

[0049] for For each , and The corresponding The number of bits with overlap value 1 is an odd number.

[0050] Further, for each , find the test rules and search , performed under different source ports, the source ports are generated randomly, generated by a certain rule, or manually specified; until a valid , since each May result in different relative changes, increasing the chance of success and thus improving robustness.

[0051] The present invention also provides a path selection device (Host-Based Path Selector, HPS) for a source host in a data center network, comprising one or more processors for implementing the path selection method for a source host in a data center network.

[0052] The specific working process of HPS is as follows: Based on the known SHT, an inverse SHT and a combinatorial hashing table (CHT) are constructed for the relevant switches in the network;

[0053] Based on the SHT, inverse SHT and CHT obtained above, HPS uses the specified inspection rules to generate a valid packet header change val (such as the source port corresponding to the IP protocol) for the flow with header h, ensuring that the flow follows the specified path. ; The path can be simplified by removing the jumps whose NNH is equal to 1 to ,in express The identifier of the i-th node on , i starts from 1; that is Is the path A subsequence consisting of the IDs of nodes with NNH not less than 2; during this process, HPS tracks the current feasible path in a hop-by-hop manner, while recalculating val at each step, where val is initialized to 0 (a k-bit number); once the recalculation of all hops is completed, the final val is a valid choice that ensures that the flow passes , and thus can be achieved through .

[0054] The present invention also provides a computer-readable storage medium on which a program is stored. When the program is executed by a processor, it is used to implement the path selection method of the source host end in the data center network.

[0055] The beneficial effect of the present invention is that the HPS provided by the present invention is applied to today's large-scale multi-layer data center networks (including large-scale intelligent computing centers, large-scale general computing centers, large-scale cloud computing systems, large-scale data storage and other scenarios), allowing the source host to accurately select the forwarding path controlled by ECMP by making a specific change to the data packet header, thereby effectively alleviating the ECMP polarization problem, thereby avoiding excessive overlap of links between different forwarding paths, and improving the overall performance of the data center network. BRIEF DESCRIPTION OF THE DRAWINGS

[0056] Figure 1 A schematic diagram of the working process of the HPS provided in an embodiment of the present invention;

[0057] Figure 2 A schematic diagram of deploying HPS in a three-layer data center network with a Fat-tree structure provided by an embodiment of the present invention;

[0058] Figure 3 An example diagram of the inverse SHT and CHT provided by an embodiment of the present invention;

[0059] Figure 4 A schematic diagram of a device provided in an embodiment of the present invention. DETAILED DESCRIPTION

[0060] Exemplary embodiments will be described in detail herein, examples of which are shown in the accompanying drawings. When the following description refers to the drawings, the same numbers in different drawings represent the same or similar elements unless otherwise indicated. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present invention. Instead, they are merely examples of devices and methods consistent with some aspects of the present invention as detailed in the appended claims.

[0061] The terms used in the present invention are only for the purpose of describing specific embodiments and are not intended to limit the present invention. The singular forms "a", "the" and "the" used in the present invention and the appended claims are also intended to include plural forms unless the context clearly indicates other meanings. It should also be understood that the term "and / or" used herein refers to and includes any or all possible combinations of one or more associated listed items.

[0062] It should be understood that although the terms first, second, third, etc. may be used in the present invention to describe various information, these information should not be limited to these terms. These terms are only used to distinguish the same type of information from each other. For example, without departing from the scope of the present invention, the first information may also be referred to as the second information, and similarly, the second information may also be referred to as the first information. Depending on the context, the word "if" as used herein may be interpreted as "at the time of" or "when" or "in response to determining".

[0063] The present invention is described in detail below in conjunction with the accompanying drawings. In the absence of conflict, the features of the following embodiments and implementations can be combined with each other.

[0064] like Figure 2 The figure shows the deployment of HPS in a three-layer fat-tree data center network. The data center network is managed through a network management platform. HPS provides path selection services for hosts in the network in a variety of ways, such as remote procedure call (RPC), Web Services, HTTP, HTTPS, etc. HPS can obtain network topology, routing and ECMP configuration information through the network management platform. The network selects the common CRC32 algorithm as the ECMP hash algorithm, and each switch has different input value combinations of the CRC32 algorithm.

[0065] HPS needs to know SHT, and SHT can be measured offline. To this end, the present invention uses the management console of the switch to send two ICMP request packets: one with the original packet header and the other with the header according to each of the SHT. The time-to-live (TTL) of both packets is set to 1. After receiving these ICMP request packets, each adjacent switch responds with an ICMP reply containing the source IP address of the next hop. These IP addresses correspond to the outbound interfaces of the current switch and are associated with the index of the matching route (outbound interface index). By performing an XOR operation on the outbound interface indexes of the two packets, the outbound interface indexes associated with each packet can be determined. Relative change in correlation . For all switches Repeating this process can help to accurately measure SHT.

[0066] In this network, the following example takes the source node 30 sending data to the UDP port number 4715 of the destination node 35 as an example. By selecting the source UDP port number of node 30, the path from node 30 to node 35 passes through the path expected by the operator. .at this time, , which means that only the next hop on node 18 and node 10 needs to be controlled to reach the expected path .

[0067] According to the operator's measurement, it is known that the switches SHT associated with the two nodes in the network are shown in Table 4.

[0068] Table 4: SHT example

[0069] like Figure 1 As shown, an embodiment of the present invention provides a path selection method for a source host in a data center network, comprising the following steps:

[0070] Step 1: Construct the inverse SHT of the switch, as shown in Table 5 and Figure 3 As shown; through the inverse SHT, the relative change Mapping to relative changes The XOR of all corresponding head bit changes is expressed as ;in, Indicates the XOR value of the corresponding head position change, represents the i-th head change, represents the XOR operator; to simplify the expression, Table 5 only gives The inverse SHT of nodes 10 and 18 is related.

[0071] Table 5: Inverse SHT

[0072] Step 2: Based on the inverse SHT, generate the CHT of the switch, as shown in Table 6 and Figure 3 As shown; each XOR value of the relative change in the inverse SHT is mapped to the combined index corresponding to the relative change through the CHT; in order to simplify the expression, Table 6 only gives The CHT of the related nodes 10 and 18, where 0bA represents the binary value of the number A.

[0073] Table 6: CHT

[0074] Step 3: Initialize the following variables: (1) i = 1; (2) ; (3) val = 0; (4) Select a random source UDP port 7632; (5) .

[0075] Among them, i represents The current index number of represents the simplified candidate path, represents the end-to-end path that is expected to be selected, Indicates the network switch nodes, val represents a legal header change, h represents the header of the data packet, Indicates along the path The outbound port index of all switches on the network.

[0076] because , so the value range of i is [1, 2], and the following steps are divided into two loops (because , so the value range of i is [1, 2]).

[0077] Cycle 1:

[0078] Step 4: For on , the current path is tracked by sending a test packet of the flow, which is parameterized as The source port and TTL are i+1=2. By analyzing the returned ICMP reply data packet, we can obtain The next hop is node 9, and the corresponding outbound port index value is 0, that is, .

[0079] Step 5: Calculation .

[0080] Step 6: Enumeration All Combination, that is Is (0b10) or (0b11), perform two sub-steps to search :

[0081] Step 6.1: Assumptions is (0b10), determine the following variables:

[0082]

[0083]

[0084] Step 6.2: Abandon the current val, enumerate the new val, and check whether it satisfies For example, assuming val=64, then for , the three conditions are met as follows:

[0085] (a) For Each of , then val should contain at least one bit position that is The corresponding (i.e. 18522) overlapping bits, , so this condition is satisfied;

[0086] (b) There should be no bit position that is different from Any (i.e. 18522) do not overlap. Since only the 7th bit of val is 1 and the rest are 0, this condition is met.

[0087] (c) Because Each of the values ​​greater than 0 is 1, and and The corresponding (i.e. 18522) The number of bits with an overlap value of 1 is 1, which is an odd number, so this condition is satisfied.

[0088] Finally, the assumed val is 64, which is valid. In a similar way, we can assume that val is an integer within any k bits, verify the validity of val, and then find more valid vals. This val can ensure that The header of the data packet passes The outbound port index of (i.e., node 18) is 1, i.e., the next hop is node 10.

[0089] Step 7: no The last switch node on the , executes i=i+1=2, and then executes loop 2.

[0090] Cycle 2:

[0091] Step 4: At this time, i=2, for on , the current path is tracked by sending a test packet of the flow, which is parameterized as The source port and TTL are i+1=3. By analyzing the returned ICMP reply data packet, we can obtain The next hop is node 3, and the corresponding outbound port index value is 0, that is, .

[0092] Step 5: Calculation .

[0093] Step 6: Enumeration All Combination, that is is (0b10, 0b10), (0b10, 0b11), (0b11,0b10), or (0b11, 0b11), perform two substeps to search :

[0094] Step 6.1: Assumptions is (0b10, 0b10), determine the following variables:

[0095]

[0096] Step 6.2: Abandon the current val, enumerate the new val, and check whether it satisfies For example, assuming val = 2, then for , the three conditions are met as follows:

[0097] (a) For Each of (i.e. 1), then val should contain at least one bit position that is The corresponding (i.e. 18522) overlapping bits, , so this condition is satisfied;

[0098] (b) There should be no bit position that is different from Any (i.e. 18522) do not overlap. Since only the second bit of val is 1 and the rest are 0, this condition is met.

[0099] (c) Because Each of the values ​​greater than 0 is 1, and and The corresponding (i.e. 18522) The number of bits with an overlap value of 1 is 1, which is an odd number, so this condition is satisfied.

[0100] Finally, the assumed val is 2 for Effective.

[0101] Then, for , the three conditions are met as follows: (1) For Each of (i.e. 1), then val should contain at least one bit position that is The corresponding (i.e. 1819) overlapping bits, , so this condition is satisfied; (2) There should be no bit position that is different from Any (i.e. 1819) do not overlap. Since only the second bit of val is 1 and the rest are 0, this condition is satisfied. (3) Because Each of the values ​​greater than 0 is 1, and and The corresponding (i.e. 1819) The number of bits with an overlap value of 1 is 1, which is an odd number, so this condition is satisfied. Finally, the assumed val is 2 for Effective.

[0102] Since val=4 satisfies middle and Condition, so val = 4 is a valid val, which ensures The header of the data packet passes (i.e. node 18), and (i.e., node 10). In a similar way, we can assume that val is an arbitrary integer within k bits, verify the validity of val, and then find more valid vals.

[0103] Step 7: yes The last switch node on the ,ends the loop.

[0104] This val can pass through , that is, it can pass through , and finally realize path selection.

[0105] An embodiment of the present invention further provides a path selection device (Host-Based Path Selector, HPS) for a source host in a data center network, comprising one or more processors for implementing the path selection method for a source host in a data center network.

[0106] The embodiment of the path selection device at the source host end in the data center network of the present invention can be applied to any device with data processing capabilities, and the device with data processing capabilities can be a device or apparatus such as a computer. The device embodiment can be implemented by software, or by hardware or a combination of software and hardware. Taking software implementation as an example, as a device in a logical sense, it is formed by the processor of any device with data processing capabilities in which it is located reading the corresponding computer program instructions in the non-volatile memory into the memory and running them. From the hardware level, if Figure 4 As shown, it is a hardware structure diagram of any device with data processing capability where the path selection device at the source host end in the data center network of the present invention is located, except Figure 4 In addition to the processor, memory, network interface, and non-volatile memory shown, any device with data processing capabilities in which the apparatus in the embodiments is located may also include other hardware, generally based on the actual functions of the device with data processing capabilities, which will not be described in detail.

[0107] The implementation process of the functions and effects of each unit in the above-mentioned device is specifically described in the implementation process of the corresponding steps in the above-mentioned method, and will not be repeated here.

[0108] For the device embodiment, since it basically corresponds to the method embodiment, the relevant parts can refer to the partial description of the method embodiment. The device embodiment described above is only schematic, wherein the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the scheme of the present invention. Ordinary technicians in this field can understand and implement it without paying creative work.

[0109] An embodiment of the present invention further provides a computer-readable storage medium on which a program is stored. When the program is executed by a processor, it is used to implement the path selection method of the source host end in the data center network.

[0110] The computer-readable storage medium may be an internal storage unit of any device with data processing capability described in any of the aforementioned embodiments, such as a hard disk or a memory. The computer-readable storage medium may also be any device with data processing capability, such as a plug-in hard disk, a smart media card (SMC), an SD card, a flash card, etc. equipped on the device. Furthermore, the computer-readable storage medium may also include both an internal storage unit of any device with data processing capability and an external storage device. The computer-readable storage medium is used to store the computer program and other programs and data required by any device with data processing capability, and may also be used to temporarily store data that has been output or is to be output.

Claims

1. A path selection method for a source host in a data center network, characterized in that: The steps include: (1) Construct the inverse SHT of the switch; (2) constructing a CHT of the switch based on the inverse SHT; mapping each XOR value of the relative change in the inverse SHT to a combination index corresponding to the relative change through the CHT; (3) For on , the current path is tracked by sending a test packet, the test packet is parameterized as The source port and TTL are i+1; analyze the returned ICMP reply data packet and obtain The next hop is obtained, and then the outbound port index value of the current switch corresponding to the next hop is obtained. The outbound port index value is ;in, Represents the XOR operator, i represents The current index number of represents the simplified candidate path, Indicates the network switch nodes, val represents a legal header change, and h represents the header of the data packet; (4) Calculate the expected relative change of XOR , as shown in the following formula: ; in, for The expected outbound port index, the outbound port index being such that The switch node can forward the test data packet to The next hop, i.e. Switch node; Obtained from SHT; (5) Enumeration All the nodes above combination; in the path superior, It is a target Each switch Contains the row index XOR value in the inverse SHT The sequence is shown in the following formula: ; in, The i-th element in Indicates The combinations are compressed into a k-bit binary bit sequence, which represents the k-bit binary bit sequence in SHT. Related indexes; For each , find the test rules and search ; (6) Increase i by 1 so that the test data packets in step (3) are tracked by sending test data packets one after another Each of , and finally tracked down Repeat steps (3)-(5) for all switch nodes in the arrive Path Matching effective ,until yes The last switch node on the Allow new headers The flow through , that is, through ; Implement path selection.

2. A path selection method for a source host in a data center network according to claim 1, characterized in that: The inverse SHT of constructing the switch comprises: Mapping to relative changes The XOR of all corresponding head bit changes is expressed as ;in, Indicates the XOR value of the corresponding head position change, represents the i-th head change, Represents the exclusive OR operator.

3. A path selection method for a source host in a data center network according to claim 2, characterized in that: The inverse SHT of constructing the switch also includes: defining the relative change as , the relative changes are the same as for the head modification In association, the header represents a header of a data packet, and the header change represents a change in a protocol header field value.

4. The path selection method for a source host in a data center network according to claim 1, characterized in that: The step (2) further includes: Initialize the following variables: i=1; yes The longest subsequence of The NNH of each node matching flow in is not less than 2, denoted as ; val = 0; select a source port for h, generated randomly or manually; initialize ; where i represents The current index number of represents the simplified candidate path, represents the end-to-end path that is expected to be selected, Indicates the network switch nodes, val represents a legal header change, h represents the header of the data packet, Indicates along the path The outbound port index of all switches on the network is as shown in the following formula: ; in, express Middle Elements The outbound port index of the .

5. The path selection method for a source host in a data center network according to claim 1, characterized in that: For each , find the test rules and search , including the following steps: Based on the and , determine from arrive Path All possible test rules for subpaths , referred to as ; The definition of is shown in the following formula. The inspection rule integrates the simplified path All individual inspection rules related to the relevant switches on the path Related to and ; ; in, Specified The relative change of each element in the XOR in CHT is shown in the following formula; ; Said gives the relative change from a given The mapping relationship between the corresponding specific bit information involves the XOR row index corresponding to the inverse SHT , as shown in the following formula, the path Any s-th switch and the test rule associated; ; in, Indicates that Any r-th relative change in ; For each with a given of , abandon the current , and enumerate a new To ensure that Satisfy each ; make sure Satisfy all , found new Considered as a path The subpath of is valid and replaces the old one .

6. A path selection method for a source host in a data center network according to claim 5, characterized in that: The enumeration creates a new To ensure that Satisfy each , for each , The following three conditions are met: for Each of , Contains at least one bit position with The corresponding Overlapping bits; There is no bit position in Any No overlap; for For each , and The corresponding The number of bits with overlap value 1 is an odd number.

7. A method for selecting a path at a source host end in a data center network according to claim 5, characterized in that: For each , find the test rules and search , performed under different source ports, where the source ports are generated randomly, according to a certain rule, or manually specified.

8. A path selection device for a source host in a data center network, characterized in that: It includes one or more processors, which are used to implement the path selection method at the source host end in the data center network described in any one of claims 1-7.

9. A computer-readable storage medium having a program stored thereon, characterized in that: When the program is executed by a processor, it is used to implement the path selection method for a source host in a data center network according to any one of claims 1 to 7.

Citation Information

Patent Citations

  • Node based path selection randomization

    EP2276207A1

  • Apparatus and method for selecting optimalpacket-transmitting path

    KR1020070061071A