IP Library Granted Patent US 11,296,974
Granted Patent B2
US 11,296,974 · App. 16/827,082 · Granted Apr 5, 2022

Information processing method, electronic device and computer storage medium

Inventors: Shixu Dong (Shanghai, CN); Chenxi Hu (Beijing, CN)
Assignee: EMC IP Holding Company LLC
H04L45/021H04L12/5601H04L45/42H04L45/566H04L69/22H04L2012/5641
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,296,974
App. No.
16/827,082
Granted
Apr 5, 2022
Kind
B2
Abstract

In illustrative embodiments, an information processing method, an electronic device, and a computer-readable storage medium are provided. The method includes: if it is determined that a predetermined indicator is detected in a header of a received packet, acquiring information for indicating a source port, a destination port, a forwarding indicator, a process identifier, and a maximum number of processes of the packet from the header; updating a port forwarding table based on the source port, the destination port, and the forwarding indicator; performing a user-defined action on the packet to obtain a result packet; and if it is determined that a quantity of process identifiers reaches the maximum number of processes, determining one or more forwarding ports for the result packet based on the maximum number of processes, the forwarding indicator, and the updated port forwarding table, to forward the result packet to the one or more forwarding ports.

Claims (66)

1. An information processing method, comprising:

in response to determining that a predetermined indicator is detected in a header of a received packet, acquiring information for indicating a source port, a destination port, a forwarding indicator, a process identifier, and a maximum number of processes of the packet from the header;

updating a port forwarding table based on the source port, the destination port, and the forwarding indicator;

performing a user-defined action on the packet to obtain a result packet; and

in response to determining that a quantity of process identifiers reaches the maximum number of processes, determining one or more forwarding ports for the result packet based on the maximum number of processes, the forwarding indicator, and the updated port forwarding table, to forward the result packet to the one or more forwarding ports.

2. The method according to claim 1 , wherein updating the port forwarding table comprises:

searching for the source port in the port forwarding table; and

in response to determining that the source port is not found in the port forwarding table, adding the source port, the destination port, and the forwarding indicator into the port forwarding table as an entry.

3. The method according to claim 2 , wherein updating the port forwarding table further comprises:

in response to determining that the source port is found in the port forwarding table, searching for the destination port in the entry of the port forwarding table corresponding to the source port; and

in response to determining that the destination port is not found in the entry of the port forwarding table corresponding to the source port, adding the source port, the destination port, and the forwarding indicator into the port forwarding table as an entry.

4. The method according to claim 3 , wherein updating the port forwarding table further comprises:

in response to determining that the destination port is found in the entry of the port forwarding table corresponding to the source port, determining whether the acquired forwarding indicator is the same as the forwarding indicator in the entry of the port forwarding table corresponding to the source port and the destination port; and

in response to determining that the acquired forwarding indicator is different from the forwarding indicator in the entry of the port forwarding table corresponding to the source port and the destination port, updating the forwarding indicator in the entry of the port forwarding table corresponding to the source port and the destination port with the acquired forwarding indicator.

5. The method according to claim 1 , wherein determining one or more forwarding ports for the result packet comprises:

in response to determining that the maximum number of processes is equal to 1, determining whether the forwarding indicator indicates unicast; and

in response to determining that the forwarding indicator indicates unicast, determining that the destination port is the forwarding port.

6. The method according to claim 1 , wherein determining one or more forwarding ports for the result packet comprises:

in response to determining that the maximum number of processes is greater than 1, determining whether the forwarding indicator indicates multicast; and

in response to determining that the forwarding indicator indicates multicast, acquiring destination ports in entries of the port forwarding table corresponding to the forwarding indicator as the forwarding ports.

7. The method according to claim 1 , wherein determining one or more forwarding ports for the result packet comprises:

in response to determining that the maximum number of processes is greater than 1, determining whether the forwarding indicator indicates broadcast; and

in response to determining that the forwarding indicator indicates broadcast, acquiring all destination ports in the updated port forwarding table as the forwarding ports.

8. The method according to claim 1 , wherein acquiring the information for indicating the source port, the destination port, the forwarding indicator, the process identifier, and the maximum number of processes of the packet from the header comprises:

extracting a tuple for indicating a header structure of the packet from the header; and

extracting tuples for indicating the source port, the destination port, the forwarding indicator, the process identifier, and the maximum number of processes of the packet from the header based on the tuple.

9. The method according to claim 1 , wherein performing the user-defined action on the packet comprises:

performing the user-defined action on the packet and a previous result packet to obtain the result packet.

10. An electronic device, comprising:

at least one processing unit; and

at least one memory, coupled to the at least one processing unit and storing instructions executed by the at least one processing unit, wherein the instructions, when executed by the at least one processing unit, enable the device to implement steps of:

in response to determining that a predetermined indicator is detected in a header of a received packet, acquiring information for indicating a source port, a destination port, a forwarding indicator, a process identifier, and a maximum number of processes of the packet from the header;

updating a port forwarding table based on the source port, the destination port, and the forwarding indicator;

performing a user-defined action on the packet to obtain a result packet; and

in response to determining that a quantity of process identifiers reaches the maximum number of processes, determining one or more forwarding ports for the result packet based on the maximum number of processes, the forwarding indicator, and the updated port forwarding table, to forward the result packet to the one or more forwarding ports.

11. The electronic device according to claim 10 , wherein updating the port forwarding table comprises:

searching for the source port in the port forwarding table; and

in response to determining that the source port is not found in the port forwarding table, adding the source port, the destination port, and the forwarding indicator into the port forwarding table as an entry.

12. The electronic device according to claim 11 , wherein updating the port forwarding table further comprises:

in response to determining that the source port is found in the port forwarding table, searching for the destination port in the entry of the port forwarding table corresponding to the source port; and

in response to determining that the destination port is not found in the entry of the port forwarding table corresponding to the source port, adding the source port, the destination port, and the forwarding indicator into the port forwarding table as an entry.

13. The electronic device according to claim 12 , wherein updating the port forwarding table further comprises:

in response to determining that the destination port is found in the entry of the port forwarding table corresponding to the source port, determining whether the acquired forwarding indicator is the same as the forwarding indicator in the entry of the port forwarding table corresponding to the source port and the destination port; and

in response to determining that the acquired forwarding indicator is different from the forwarding indicator in the entry of the port forwarding table corresponding to the source port and the destination port, updating the forwarding indicator in the entry of the port forwarding table corresponding to the source port and the destination port with the acquired forwarding indicator.

14. The electronic device according to claim 10 , wherein determining one or more forwarding ports for the result packet comprises:

in response to determining that the maximum number of processes is equal to 1, determining whether the forwarding indicator indicates unicast; and

in response to determining that the forwarding indicator indicates unicast, determining that the destination port is the forwarding port.

15. The electronic device according to claim 10 , wherein determining one or more forwarding ports for the result packet comprises:

in response to determining that the maximum number of processes is greater than 1, determining whether the forwarding indicator indicates multicast; and

in response to determining that the forwarding indicator indicates multicast, acquiring destination ports in entries of the port forwarding table corresponding to the forwarding indicator as the forwarding ports.

16. The electronic device according to claim 10 , wherein determining one or more forwarding ports for the result packet comprises:

in response to determining that the maximum number of processes is greater than 1, determining whether the forwarding indicator indicates broadcast; and

in response to determining that the forwarding indicator indicates broadcast, acquiring all destination ports in the updated port forwarding table as the forwarding ports.

17. The electronic device according to claim 10 , wherein acquiring the information for indicating the source port, the destination port, the forwarding indicator, the process identifier, and the maximum number of processes of the packet from the header comprises:

extracting a tuple for indicating a header structure of the packet from the header; and

extracting tuples for indicating the source port, the destination port, the forwarding indicator, the process identifier, and the maximum number of processes of the packet from the header based on the tuple.

18. The electronic device according to claim 10 , wherein performing the user-defined action on the packet comprises:

performing the user-defined action on the packet and a previous result packet to obtain the result packet.

19. A computer-readable storage medium, storing a computer program that, when executed by a machine, causes the machine to implement an information processing method, the method comprising:

in response to determining that a predetermined indicator is detected in a header of a received packet, acquiring information for indicating a source port, a destination port, a forwarding indicator, a process identifier, and a maximum number of processes of the packet from the header;

updating a port forwarding table based on the source port, the destination port, and the forwarding indicator;

performing a user-defined action on the packet to obtain a result packet; and

in response to determining that a quantity of process identifiers reaches the maximum number of processes, determining one or more forwarding ports for the result packet based on the maximum number of processes, the forwarding indicator, and the updated port forwarding table, to forward the result packet to the one or more forwarding ports.

20. The computer-readable storage medium according to claim 19 , wherein updating the port forwarding table comprises:

searching for the source port in the port forwarding table; and

in response to determining that the source port is not found in the port forwarding table, adding the source port, the destination port, and the forwarding indicator into the port forwarding table as an entry.

Assignments (11)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052851/0081) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060436/0441 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052851/0917) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060436/0509 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052852/0022) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060436/0582 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST AT REEL 052771 FRAME 0906 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0298 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC; THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052851/0081 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052851/0917 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052852/0022 →
SECURITY AGREEMENT Recorded May 28, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 052771/0906 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 23, 2020
From: DONG, SHIXU; HU, CHENXI
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 052198/0285 →