Abstract: This disclosure relates to a method of improving switching capacity in a software-based network switch. The method may involve storing a data packet in a first local buffer, storing one or more header fields of the data packet in a second local buffer. A common identifier may be assigned to the data packet stored in the first local buffer and the one or more header fields stored in the second local buffer. The one or more header fields may be directly sent from the NIC to the CPU for the data packet processing. At least one header field of the one or more header fields may be modified by the CPU. Further, the one or more header fields may be overwritten with the at least one modified header field in the data packet stored in the first local buffer of the NIC based on the common identifier. FIG. 4
Claims:WE CLAIM
1. A method of improved switching capacity in a software-based network switch, the method comprising:
receiving, by a Network Interface Controller (NIC) of the software-based network switch, a data packet;
storing, by the NIC, the data packet in a first local buffer of the NIC and one or more header fields associated with the data packet in a second local buffer of the NIC, wherein the data packet stored in the first local buffer and the one or more header fields stored in the second local buffer are assigned a common identifier;
directly accessing, by a CPU associated with the software-based network switch, the one or more header fields from the second local buffer through a system bus;
modifying, by the CPU, at least one header field of the one or more header fields based on flow control information pre-defined for the data packet;
overwriting, by the NIC, the one or more header fields with the at least one modified header field in the data packet stored in the first local buffer of the NIC based on the common identifier; and
routing, by the NIC, the data packet based on the at least one modified header field.
2. The method of claim 1, wherein the CPU accesses a buffer descriptor associated with the data packet in Random Access Memory (RAM) to determine a buffer address of the second local buffer, wherein the buffer descriptor is mapped to the buffer address of the second local buffer.
3. The method of claim 1, wherein the CPU modifies the one or more header fields based on flow control information from Random Access Memory (RAM) associated with the software-based network switch.
4. The method of claim 1, wherein the CPU periodically polls the second local buffer of the NIC to read one or more header fields of a subsequent data packet.
5. The method of claim 1, wherein an interrupt is generated by the NIC to the CPU on storing the one or more header fields in the second local buffer and wherein the CPU reads the one or more header fields from the second local buffer of the NIC in response to the interrupt.
6. A system of improved switching capacity in a software-based network switch, the system comprising:
a Network Interface Controller (NIC) comprises:
an interface port to receive a data packet; and
a plurality of local buffers comprise:
a first local buffer to store the data packet and a second local buffer to store one or more header fields associated with the data packet, wherein the data packet stored in the first local buffer and the one or more header fields stored in the second local buffer are assigned a common identifier;
a CPU to:
directly access the one or more header fields from the second local buffer through a system bus; and
modify at least one header field of the one or more header fields based on flow control information pre-defined for the data packet,
wherein the NIC is to:
overwrite the one or more header fields with the at least one modified header field in the data packet stored in the first local buffer of the NIC based on the common identifier; and
route the data packet based on the at least one modified header field.
7. The system of claim 6, wherein the CPU accesses a buffer descriptor associated with the data packet in Random Access Memory (RAM) to determine a buffer address of the second local buffer, wherein the buffer descriptor is mapped to the buffer address of the second local buffer.
8. The system of claim 6, wherein the CPU modifies the one or more header fields based on flow control information from Random Access Memory (RAM) associated with the software-based network switch.
9. The system of claim 6, wherein the CPU periodically polls the second local buffer of the NIC to read one or more header fields of a subsequent data packet.
10. The system of claim 6, wherein an interrupt is generated to the CPU on storing the one or more header fields in the second local buffer of the NIC, and wherein the CPU reads the one or more header fields from the second local buffer of the NIC in response to the interrupt.
Dated 26th day of March, 2019
R Ramya Rao
Of K&S Partners
Agent for the Applicant
IN/PA-1607
, Description:TECHNICAL FIELD
[001] This disclosure relates generally to packet-switching device in a communication network, and more particularly to improving switching capacity in software-based network switches in access networks.
| Section | Controller | Decision Date |
|---|---|---|
| # | Name | Date |
|---|---|---|
| 1 | 201941011792-IntimationOfGrant21-08-2023.pdf | 2023-08-21 |
| 1 | 201941011792-STATEMENT OF UNDERTAKING (FORM 3) [26-03-2019(online)].pdf | 2019-03-26 |
| 2 | 201941011792-PatentCertificate21-08-2023.pdf | 2023-08-21 |
| 2 | 201941011792-REQUEST FOR EXAMINATION (FORM-18) [26-03-2019(online)].pdf | 2019-03-26 |
| 3 | 201941011792-POWER OF AUTHORITY [26-03-2019(online)].pdf | 2019-03-26 |
| 3 | 201941011792-FORM-26 [16-08-2023(online)].pdf | 2023-08-16 |
| 4 | 201941011792-Written submissions and relevant documents [16-08-2023(online)].pdf | 2023-08-16 |
| 4 | 201941011792-FORM 18 [26-03-2019(online)].pdf | 2019-03-26 |
| 5 | 201941011792-FORM 1 [26-03-2019(online)].pdf | 2019-03-26 |
| 5 | 201941011792-AMENDED DOCUMENTS [24-07-2023(online)].pdf | 2023-07-24 |
| 6 | 201941011792-DRAWINGS [26-03-2019(online)].pdf | 2019-03-26 |
| 6 | 201941011792-Correspondence to notify the Controller [24-07-2023(online)].pdf | 2023-07-24 |
| 7 | 201941011792-FORM 13 [24-07-2023(online)].pdf | 2023-07-24 |
| 7 | 201941011792-DECLARATION OF INVENTORSHIP (FORM 5) [26-03-2019(online)].pdf | 2019-03-26 |
| 8 | 201941011792-POA [24-07-2023(online)].pdf | 2023-07-24 |
| 8 | 201941011792-COMPLETE SPECIFICATION [26-03-2019(online)].pdf | 2019-03-26 |
| 9 | 201941011792-Request Letter-Correspondence [27-03-2019(online)].pdf | 2019-03-27 |
| 9 | 201941011792-US(14)-HearingNotice-(HearingDate-01-08-2023).pdf | 2023-07-14 |
| 10 | 201941011792-FER.pdf | 2021-10-17 |
| 10 | 201941011792-Power of Attorney [27-03-2019(online)].pdf | 2019-03-27 |
| 11 | 201941011792-CLAIMS [22-07-2021(online)].pdf | 2021-07-22 |
| 11 | 201941011792-Form 1 (Submitted on date of filing) [27-03-2019(online)].pdf | 2019-03-27 |
| 12 | 201941011792-COMPLETE SPECIFICATION [22-07-2021(online)].pdf | 2021-07-22 |
| 12 | 201941011792-Proof of Right (MANDATORY) [20-09-2019(online)].pdf | 2019-09-20 |
| 13 | 201941011792-DRAWING [22-07-2021(online)].pdf | 2021-07-22 |
| 13 | Correspondence by Agent_Form-1_27-09-2019.pdf | 2019-09-27 |
| 14 | 201941011792-FER_SER_REPLY [22-07-2021(online)].pdf | 2021-07-22 |
| 14 | 201941011792-PETITION UNDER RULE 137 [22-07-2021(online)].pdf | 2021-07-22 |
| 15 | 201941011792-FORM 3 [22-07-2021(online)].pdf | 2021-07-22 |
| 15 | 201941011792-OTHERS [22-07-2021(online)].pdf | 2021-07-22 |
| 16 | 201941011792-FORM 3 [22-07-2021(online)].pdf | 2021-07-22 |
| 16 | 201941011792-OTHERS [22-07-2021(online)].pdf | 2021-07-22 |
| 17 | 201941011792-PETITION UNDER RULE 137 [22-07-2021(online)].pdf | 2021-07-22 |
| 17 | 201941011792-FER_SER_REPLY [22-07-2021(online)].pdf | 2021-07-22 |
| 18 | 201941011792-DRAWING [22-07-2021(online)].pdf | 2021-07-22 |
| 18 | Correspondence by Agent_Form-1_27-09-2019.pdf | 2019-09-27 |
| 19 | 201941011792-COMPLETE SPECIFICATION [22-07-2021(online)].pdf | 2021-07-22 |
| 19 | 201941011792-Proof of Right (MANDATORY) [20-09-2019(online)].pdf | 2019-09-20 |
| 20 | 201941011792-CLAIMS [22-07-2021(online)].pdf | 2021-07-22 |
| 20 | 201941011792-Form 1 (Submitted on date of filing) [27-03-2019(online)].pdf | 2019-03-27 |
| 21 | 201941011792-FER.pdf | 2021-10-17 |
| 21 | 201941011792-Power of Attorney [27-03-2019(online)].pdf | 2019-03-27 |
| 22 | 201941011792-Request Letter-Correspondence [27-03-2019(online)].pdf | 2019-03-27 |
| 22 | 201941011792-US(14)-HearingNotice-(HearingDate-01-08-2023).pdf | 2023-07-14 |
| 23 | 201941011792-COMPLETE SPECIFICATION [26-03-2019(online)].pdf | 2019-03-26 |
| 23 | 201941011792-POA [24-07-2023(online)].pdf | 2023-07-24 |
| 24 | 201941011792-FORM 13 [24-07-2023(online)].pdf | 2023-07-24 |
| 24 | 201941011792-DECLARATION OF INVENTORSHIP (FORM 5) [26-03-2019(online)].pdf | 2019-03-26 |
| 25 | 201941011792-DRAWINGS [26-03-2019(online)].pdf | 2019-03-26 |
| 25 | 201941011792-Correspondence to notify the Controller [24-07-2023(online)].pdf | 2023-07-24 |
| 26 | 201941011792-FORM 1 [26-03-2019(online)].pdf | 2019-03-26 |
| 26 | 201941011792-AMENDED DOCUMENTS [24-07-2023(online)].pdf | 2023-07-24 |
| 27 | 201941011792-Written submissions and relevant documents [16-08-2023(online)].pdf | 2023-08-16 |
| 27 | 201941011792-FORM 18 [26-03-2019(online)].pdf | 2019-03-26 |
| 28 | 201941011792-POWER OF AUTHORITY [26-03-2019(online)].pdf | 2019-03-26 |
| 28 | 201941011792-FORM-26 [16-08-2023(online)].pdf | 2023-08-16 |
| 29 | 201941011792-REQUEST FOR EXAMINATION (FORM-18) [26-03-2019(online)].pdf | 2019-03-26 |
| 29 | 201941011792-PatentCertificate21-08-2023.pdf | 2023-08-21 |
| 30 | 201941011792-STATEMENT OF UNDERTAKING (FORM 3) [26-03-2019(online)].pdf | 2019-03-26 |
| 30 | 201941011792-IntimationOfGrant21-08-2023.pdf | 2023-08-21 |
| 1 | 2020-11-0620-36-50E_08-12-2020.pdf |