IP Library Granted Patent US 12,199,878
Granted Patent B2
US 12,199,878 · App. 17/236,695 · Granted Jan 14, 2025

Controlling storage arraydata transmissions

Inventors: Peniel Charles (Bangalore, IN); Joseph Kanjirathinkal (Cary, NC); Owen Crowley (Cork, IE)
Assignee: EMC IP Holding Company LLC
H04L47/24G06N5/04G06N20/00H04L47/263
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 12,199,878
App. No.
17/236,695
Granted
Jan 14, 2025
Kind
B2
Abstract

An aspect of the present disclosure relates to using at least one service-level objective (SLO) to control data communications between two or more devices over a network. In embodiments, a notification is received by a source device. The notification can include status information of at least one of a plurality of communication paths between the source device and a target device. A communications control technique can be performed based on the indicated status. The communications control technique can include prioritizing one or more data packets based on a data payload corresponding to each packet. The technique can also include controlling the transmission of one or more data packets based on each data packet's priority.

Claims (32)

1. A method comprising:

receiving, at a source device, a notification including status information of at least one of a plurality of communication paths between the source device and a target device;

determining at least one runtime category corresponding to the source device, wherein the at least one runtime category defines at least one activity period of the source device; and

performing a communications control technique based on the indicated status and the at least one runtime category, where the communications control technique includes:

prioritizing one or more data packets based on a data payload corresponding to each packet, wherein prioritizing the one or more data packets includes dynamically assigning the one or more data packets to one or more transmission ports of the source device,

associating each of the one or more transmission ports of the source device with a respective port of one or more ports of the target device, wherein the associating is based on the at least one runtime category and current network conditions, and

controlling transmission of the one or more data packets based on each data packet's priority, wherein controlling the transmission of the one or more data packets includes dynamically adjusting buffer durations corresponding to buffer queues of the one or more transmission ports based on the associated ports and the at least one runtime category.

2. The method of claim 1 , further comprising: determining a throughput level of the one or more communication paths using the status information.

3. The method of claim 2 , further comprising: grouping the one or more data packet based on each packet's priority.

4. The method of claim 3 , further comprising: assigning each group of the one or more data packets to at least one communication path of the plurality of communication paths using the status information.

5. The method of claim 4 , further comprising: controlling a transmission rate of each group of data packets based on at least the status information.

6. The method of claim 1 , further comprising: identifying communication status patterns using information included in historical and/or current communication path notifications.

7. The method of claim 3 , further comprising: generating one or more data transmission models from the identified patterns.

8. The method of claim 1 , further comprising: controlling a transmission rate of the one or more data using the one or more data transmission models.

9. The method of claim 6 , further comprising: using one or more machine learning (ML) techniques to identify the communication status patterns.

10. The method of claim 9 , further comprising: adjusting the one or more data transmission models based on one or more transmission feedback notifications received from the target device.

11. An apparatus, including memory and processor, configured to:

receive, at a source device, a notification including status information of at least one of a plurality of communication paths between the source device and a target device;

determine at least one runtime category corresponding to the source device, wherein the at least one runtime category defines at least one activity period of the source device; and

perform a communications control technique based on the indicated status and the at least one runtime category, where the communications control technique includes:

prioritizing one or more data packets based on a data payload corresponding to each packet, wherein prioritizing the one or more data packets includes dynamically assigning the one or more data packets to one or more transmission ports of the source device,

associating each of the one or more transmission ports of the source device with a respective port of one or more ports of the target device, wherein the associating is based on the at least one runtime category and current network conditions, and

controlling transmission of the one or more data packets based on each data packet's priority, wherein controlling the transmission of the one or more data packets includes dynamically adjusting buffer durations corresponding to buffer queues of the one or more transmission ports based on the associated ports and the at least one runtime category.

12. The apparatus of claim 1 , further configured to: determine a throughput level of the one or more communication paths using the status information.

13. The apparatus of claim 2 , further configured to group the one or more data packets based on each packet's priority.

14. The apparatus of claim 3 , further configured to: assign each group of the one or more data packets to at least one communication path of the plurality of communication paths using the status information.

15. The apparatus of claim 4 , further configured to: control a transmission rate of each group of data packets based on at least the status information.

16. The apparatus of claim 1 , further configured to: identify communication status patterns using information included in historical and/or current communication path notifications.

17. The apparatus of claim 3 , further configured to: generate one or more data transmission models from the identified patterns.

18. The apparatus of claim 1 , further configured to: control a transmission rate of the one or more data using the one or more data transmission models.

19. The apparatus of claim 6 , further configured to: use one or more machine learning (ML) techniques to identify the communication status patterns.

20. The apparatus of claim 9 , further configured to adjust the one or more data transmission models based on one or more transmission feedback notifications received from the target device.

Assignments (11)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 5, 2024
From: CHARLES, PENIEL, MR.; KANJIRATHINKAL, JOSEPH; CROWLEY, OWEN
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 069492/0801 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (056295/0280) Recorded Jun 10, 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 062022/0255 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (056295/0001) Recorded Jun 10, 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 062021/0844 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (056295/0124) Recorded Jun 10, 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 062022/0012 →
RELEASE OF SECURITY INTEREST Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058297/0332 →
SECURITY INTEREST Recorded May 19, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 056295/0280 →
SECURITY INTEREST Recorded May 19, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 056295/0124 →
SECURITY INTEREST Recorded May 19, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 056295/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE MISSING PATENTS THAT WERE ON THE ORIGINAL SCHEDULED SUBMITTED BUT NOT ENTERED PREVIOUSLY RECORDED AT REEL: 056250 FRAME: 0541. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded May 17, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 056311/0781 →
SECURITY AGREEMENT Recorded May 14, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 056250/0541 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 21, 2021
From: CHARLES, PENIEL; KANJIRATHINKAL, JOSEPH; CROWLEY, OWEN
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 055993/0519 →
Continuity (1)
Related Publication 20220345409A1 · Oct 27, 2022
References Cited (9)
US 8619600B2 · Morrill · 2013 [cited by examiner]
US 10642715B1 · Simca · 2020 [cited by examiner]
US 20070036168A1 · Hsiao · 2007 [cited by examiner]
US 20130170451A1 · Krause · 2013 [cited by examiner]
US 20130262648A1 · Orlik · 2013 [cited by examiner]
US 20130315062A1 · Riedl · 2013 [cited by examiner]
US 20140105012A1 · Lavian · 2014 [cited by examiner]
US 20150171968A1 · Featherston · 2015 [cited by examiner]
US 20200112472A1 · Fonseca De Oliveira · 2020 [cited by examiner]