Abstract: The present subject matter relates generally to optimization of distribution of data packets in a High Performance Computing (HPC) switch. The HPC switch receives data packets from controllers communicatively connected to HPC switch, through interconnected Queue Pair (QP) lanes and assigns a destination virtual lane (VL) for each data packet based on service level information. Further, the HPC switch generates plurality of clusters of ports that are coupled with each interconnected VL based on latency determined dynamically for each port. Finally, the HPC switch transmits a first group of data packets through ports belonging to a primary cluster of plurality of clusters and transmits acknowledgement key-packet associated with second group of data packets through the ports belonging to secondary clusters of plurality of clusters, based on destination VL assigned for each data packet to other controllers for optimizing the distribution of the plurality of data packets in the HPC switch. FIG. 2A
Claims:We claim:
1. A method of optimizing distribution of data packets in a High Performance Computing (HPC) switch (107), the method comprising:
receiving, by the HPC switch (107), a plurality of data packets from one or more controllers communicatively connected to the HPC switch (107), through a plurality of interconnected Queue Pair (QP) lanes (115) configured in the HPC switch (107);
assigning, by the HPC switch (107), a destination Virtual Lane (VL) from a plurality of interconnected VLs (117) configured in the HPC switch (107) for each of the plurality of data packets based on service level information associated with each of the plurality of data packets;
generating, by the HPC switch (107), a plurality of clusters of one or more ports (119), configured in the HPC switch (107), coupled with each of the plurality of interconnected VLs (117) based on latency determined dynamically for each of the one or more ports (119);
determining, by the HPC switch (107), a first group of the plurality of data packets to be transmitted through the one or more ports (119) belonging to a primary cluster of the plurality of clusters and a second group of the plurality of data packets to be transmitted through the one or more ports (119) belonging to one or more secondary clusters of the plurality of clusters based on the destination VL assigned for each of the plurality of data packets; and
transmitting, by the HPC switch (107), the first group of the plurality of data packets through the one or more ports (119) belonging to the primary cluster and transmitting an acknowledgement key-packet associated with the second group of the plurality of data packets through the one or more ports (119) belonging to the one or more secondary clusters, based on the determination, to the one or more other controllers communicatively connected to the HPC switch (107) for optimizing the distribution of the plurality of data packets in the HPC switch (107).
2. The method as claimed in claim 1, wherein the latency of each of the one or more ports (119) is determined using a performance value computed for each of the one or more ports (119).
3. The method as claimed in claim 2, wherein the performance value is computed based on number of data packets received and transmitted by each of the plurality of interconnected QP lanes (115) for each of the one or more ports (119).
4. The method as claimed in claim 3 wherein the performance value for each of the one or more ports (119) is recomputed at predefined time intervals, to generate a plurality of new clusters of the one or more ports (119) for transmitting at least one of the second group of the plurality of data packets stored in a Direct Memory Access (DMA) (121) and a plurality of new data packets received by the HPC switch (107), to one or more other controllers (103).
5. The method as claimed in claim 1 further comprising reassigning the second group of the plurality of data packets to another destination VL based on a performance value recomputed for each of the one or more ports (119), at predefined time intervals.
6. The method as claimed in claim 1, wherein the primary cluster among the plurality of clusters comprises the one or more ports (119) having ultra-low latency when compared with a predefined latency threshold, and each of the one or more secondary clusters of the plurality of clusters comprise the one or more ports (119) having high latency when compared with the predefined latency threshold.
7. The method as claimed in claim 1, wherein the acknowledgement key-packet is generated, by the HPC switch (107), for each of the plurality of data packets, wherein the acknowledgement key-packet comprises at least a key value indicating destination of each of the plurality of data packets.
8. The method as claimed in claim 7, wherein the acknowledgement key-packet comprises a size less than size of the corresponding plurality of data packets.
9. The method as claimed in claim 1 further comprising storing, by the HPC switch (107), the second group of the plurality of data packets for which the acknowledgement key-packet is transmitted, in a Direct Memory Access (DMA) (121) configured in the HPC switch (107).
10. A High Performance Computing (HPC) switch for optimizing distribution of data packets, the HPC switch (107) comprising:
a processor (109); and
a memory (113) communicatively coupled to the processor (109), wherein the memory (113) stores processor-executable instructions, which, on execution, causes the processor (109) to:
receive a plurality of data packets from one or more controllers communicatively connected to the HPC switch (107), through a plurality of interconnected Queue Pair (QP) lanes (115) configured in the HPC switch (107);
assign a destination Virtual Lane (VL) from a plurality of interconnected VLs (117) configured in the HPC switch (107) for each of the plurality of data packets based on service level information associated with each of the plurality of data packets;
generate a plurality of clusters of one or more ports (119), configured in the HPC switch (107), coupled with each of the plurality of interconnected VLs (117) based on latency determined dynamically for each of the one or more ports (119);
determine a first group of the plurality of data packets to be transmitted through the one or more ports (119) belonging to a primary cluster of the plurality of clusters and a second group of the plurality of data packets to be transmitted through one or more ports (119) belonging to one or more secondary clusters of the plurality of clusters based on the destination VL assigned for each of the plurality of data packets; and
transmit the first group of the plurality of data packets through the one or more ports (119) belonging to the primary cluster and transmitting an acknowledgement key-packet associated with the second group of the plurality of data packets through the one or more ports (119) belonging to the one or more secondary clusters, based on the determination, to the one or more other controllers communicatively connected to the HPC switch (107) for optimizing the distribution of the plurality of data packets in the HPC switch (107).
11. The HPC switch (107) as claimed in claim 10 wherein the processor (109) determines the latency of each of the one or more ports (119) using a performance value computed for each of the one or more ports (119).
12. The HPC switch (107) as claimed in claim 11, wherein the processor (109) computes the performance value based on number of data packets received and transmitted by each of the plurality of interconnected QP lanes (115) for each of the one or more ports (119).
13. The HPC switch (107) as claimed in claim 12, wherein the processor (109) is further configured to recompute the performance value for each of the one or more ports (119) at predefined time intervals, to generate a plurality of new clusters of the one or more ports (119) for transmitting at least one of, the second group of the plurality of data packets stored in a Direct Memory Access (DMA) (121) and a plurality of new data packets received by the HPC switch (107), to one or more other controllers (103).
14. The HPC switch (107) as claimed in claim 10, wherein the processor is further configured to reassign the second group of the plurality of data packets to another destination VL based on a performance value recomputed for each of the one or more ports (119), at predefined time intervals.
15. The HPC switch (107) as claimed in claim 10, wherein the primary cluster among the plurality of clusters comprises the one or more ports (119) having ultra-low latency when compared with a predefined latency threshold, and each of the one or more secondary clusters of the plurality of clusters comprise the one or more ports (119) having high latency when compared with the predefined latency threshold.
16. The HPC switch (107) as claimed in claim 10, wherein the processor (109) generates the acknowledgement key-packet for each of the plurality of data packets, wherein the acknowledgement key-packet comprises at least a key value indicating destination of each of the plurality of data packets.
17. The HPC switch (107) as claimed in claim 16, wherein size of the acknowledgement key-packet is less than size of the corresponding plurality of data packets.
18. The HPC switch (107) as claimed in claim 10, wherein the processor (109) is further configured to store the second group of the plurality of data packets for which the acknowledgement key-packet is transmitted, in a Direct Memory Access (DMA) (121) configured in the HPC switch (107).
Dated this 28th day of March, 2018
SWETHA S N
IN/PA-2123
OF K & S PARTNERS
AGENT FOR THE APPLICANT
, Description:TECHNICAL FIELD
The present subject matter relates generally to networking environment, and more particularly, but not exclusively to a method and a High Performance Computing (HPC) switch for optimizing distribution of data packets.
| # | Name | Date |
|---|---|---|
| 1 | 201841011556-STATEMENT OF UNDERTAKING (FORM 3) [28-03-2018(online)].pdf | 2018-03-28 |
| 2 | 201841011556-REQUEST FOR EXAMINATION (FORM-18) [28-03-2018(online)].pdf | 2018-03-28 |
| 3 | 201841011556-POWER OF AUTHORITY [28-03-2018(online)].pdf | 2018-03-28 |
| 4 | 201841011556-FORM 18 [28-03-2018(online)].pdf | 2018-03-28 |
| 5 | 201841011556-FORM 1 [28-03-2018(online)].pdf | 2018-03-28 |
| 6 | 201841011556-DRAWINGS [28-03-2018(online)].pdf | 2018-03-28 |
| 7 | 201841011556-DECLARATION OF INVENTORSHIP (FORM 5) [28-03-2018(online)].pdf | 2018-03-28 |
| 8 | 201841011556-COMPLETE SPECIFICATION [28-03-2018(online)].pdf | 2018-03-28 |
| 9 | 201841011556-REQUEST FOR CERTIFIED COPY [04-05-2018(online)].pdf | 2018-05-04 |
| 10 | 201841011556-Proof of Right (MANDATORY) [17-08-2018(online)].pdf | 2018-08-17 |
| 11 | Correspondence by Agent_ Form1_23-08-2018.pdf | 2018-08-23 |
| 12 | 201841011556-REQUEST FOR CERTIFIED COPY [01-10-2018(online)].pdf | 2018-10-01 |
| 13 | 201841011556-PETITION UNDER RULE 137 [20-04-2021(online)].pdf | 2021-04-20 |
| 14 | 201841011556-Information under section 8(2) [20-04-2021(online)].pdf | 2021-04-20 |
| 15 | 201841011556-FORM 3 [20-04-2021(online)].pdf | 2021-04-20 |
| 16 | 201841011556-FER_SER_REPLY [20-04-2021(online)].pdf | 2021-04-20 |
| 17 | 201841011556-FER.pdf | 2021-10-17 |
| 18 | 201841011556-US(14)-HearingNotice-(HearingDate-20-02-2024).pdf | 2024-01-19 |
| 19 | 201841011556-POA [30-01-2024(online)].pdf | 2024-01-30 |
| 20 | 201841011556-FORM 13 [30-01-2024(online)].pdf | 2024-01-30 |
| 21 | 201841011556-Correspondence to notify the Controller [30-01-2024(online)].pdf | 2024-01-30 |
| 22 | 201841011556-AMENDED DOCUMENTS [30-01-2024(online)].pdf | 2024-01-30 |
| 23 | 201841011556-Written submissions and relevant documents [06-03-2024(online)].pdf | 2024-03-06 |
| 24 | 201841011556-FORM-26 [06-03-2024(online)].pdf | 2024-03-06 |
| 25 | 201841011556-FORM 3 [06-03-2024(online)].pdf | 2024-03-06 |
| 26 | 201841011556-PatentCertificate19-04-2024.pdf | 2024-04-19 |
| 27 | 201841011556-IntimationOfGrant19-04-2024.pdf | 2024-04-19 |
| 1 | SearchStrategy201841011556E_16-09-2020.pdf |