IP Library Granted Patent US 11,003,433
Granted Patent B1
US 11,003,433 · App. 16/782,801 · Granted May 11, 2021

System and method for improved peer-to-peer software distribution

Inventors: Maheshwar Dattatri (Cedar Park, TX); Babacar Diouf (Pflugerville, TX)
Assignee: Dell Products L.P.
G06F8/61G06F8/65H04L67/10H04L67/34
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,003,433
App. No.
16/782,801
Granted
May 11, 2021
Kind
B1
Abstract

An information handling system includes a distribution management system configured to provide a software packet, the software packet including software and a smart contract. Target systems include a first tier of first target systems and a second tier of second target systems, wherein each one of the first target systems is grouped with at least one of the second target systems. A distribution management system provides the software packet to the first target systems. Each first target system executes the smart contract, and at least one first target system provides the software packet to at least one of the second target systems based upon the execution of the smart contract.

Claims (50)

1. An information handling system for distributing software, the system comprising:

a distribution management system configured to provide a software packet, the software packet including the software and a smart contract, an execution of the smart contract being validated and recorded by a blockchain system; and

a plurality of target systems to receive the software, the target systems organized into a plurality of groups, each group including a first target system in a first tier and at least one second target system in a second tier;

wherein the distribution management system provides the software packet to each first target system, wherein each first target system executes the smart contract, provides a first indication to the distribution management system as to whether or not the software was successfully installed on the first target system, and if the software was successfully installed on the first target system, provides the software packet to its associated second target system, and wherein each second target system that receives the software packet executes the smart contract, and provides a second indication to the distribution management system as to whether the software was successfully installed on the second target system and

wherein the distribution management system further determines that a first indication indicates that the software packet was not successfully installed on a particular first target system, and places a particular second target system associated with the particular first target system on a blacklist, the blacklist preventing the particular second target system from receiving the software packet; and

wherein the distribution management system further determines a number of second indications that indicate that the software packet was not successfully installed on the second target systems is greater than a threshold, and suspends further distribution of the software packet when the number is greater than the threshold.

2. The information handling system of claim 1 , wherein, for each group of first and second target systems, the distribution management system is further configured to select the first target system and the associated second target system in each group based upon the first target system and the associated second target system in each group having a common configuration.

3. The information handling system of claim 2 , wherein the distribution management system is further configured to include a list of grouped first and second target systems within the smart contract.

4. The information handling system of claim 2 , wherein the distribution management system is further configured to provide a rule within the smart contract, wherein in executing the rule, each one of the information handling systems determines that it is in one of the first tier and the second tier.

5. The information handling system of claim 1 , wherein:

the plurality of target systems further includes third tier of third target systems, wherein at least one of the second target systems is grouped with at least one of the third target systems; and

at least one second target system executes the smart contract, and provides the software packet to at least one of the third target systems based upon the execution of the smart contract.

6. The information handling system of claim 1 , wherein, for each group of first and second target systems, the distribution management system is further configured to select the first target system and the associated second target system in each group based upon the first target system and the associated second target system in each group being on a common subnetwork.

7. The information handling system of claim 1 , wherein, for each group of first and second target systems, the distribution management system is further configured to select the first target system and the associated second target system in each group based upon the first target system and the associated second target system in each group having a common user base.

8. The information handling system of claim 1 , wherein, for each group of first and second target systems, the distribution management system is further configured to select the first target system and the associated second target system in each group based upon the first target system and the associated second target system in each group having a common component.

9. The information handling system of claim 1 , wherein, for each group of first and second target systems, the distribution management system is further configured to select the first target system and the associated second target system in each group based upon the associated second target system in each group having a common configuration, and wherein the associated first target system does not have the common configuration.

10. A method for distributing software, the method comprising:

providing, by a distribution management system of an information handling system configured to distribute software to a plurality of target systems, a software packet including the software and a smart contract, an execution of the smart contract being validated and recorded by a blockchain system, wherein the target systems are organized into a plurality of groups, each group including a first target system in a first tier and at least one second target system in a second tier;

receiving, by each first target system, the software packet;

executing, by each first target system, the smart contract;

validating, by the blockchain system, the execution of the smart contract by each first target system;

providing a first indication to the distribution management system as to whether the software was successfully installed on the first target system;

determining that a first indication indicates that the software packet was not successfully installed on a particular first target system;

placing a particular second target system associated with the particular first target system on a blacklist, the blacklist preventing the particular second target system from receiving the software packet;

providing, by each first target system that successfully executed the software packet, the software packet to the associated second target systems;

providing, by each second target system that received the software packet from its associated first target system, a second indication to the distribution management system as to whether the software was successfully installed on the second target system;

determining a number of second indications that indicate that the software packet was not successfully installed on the second target systems is greater than a threshold; and

suspending the further distribution of the software packet when the number is greater than the threshold.

11. The method of claim 10 , further comprising:

selecting, by the distribution management, the first target systems and the second target systems.

12. The method of claim 11 , wherein, for each group of first and second target systems, the method further comprises:

selecting, by the distribution management system, the first target system and the associated second target system in each group based upon the first target system and the associated second target system in each group having a common configuration.

13. The method of claim 12 , further comprising:

including, by the distribution management system, a list of grouped first and second target systems within the smart contract.

14. The method of claim 12 , further comprising:

providing, by the distribution management system, a rule within the smart contract, wherein in executing the rule, each one of the information handling systems determines that it is in one of the first tier and the second tier.

15. The method of claim 10 , wherein:

executing, by at least one second target system, the smart contract; and

providing the software packet to at least one third target system in a third tier of the plurality of target systems based upon the execution of the smart contract.

16. The method of claim 10 , wherein, for each group of first and second target systems, the distribution management system is further configured to select the first target system and the associated second target system in each group based upon the first target system and the associated second target system in each group being on a common sub-network.

17. The method of claim 10 , wherein, for each group of first and second target systems, the distribution management system is further configured to select the first target system and the associated second target system in each group based upon the first target system and the associated second target system in each group having a common user base.

18. The method of claim 10 , wherein, for each group of first and second target systems, the distribution management system is further configured to select the first target system and the associated second target system in each group based upon the first target system and the associated second target system in each group having a common component.

19. The method of claim 10 , wherein, for each group of first and second target systems, the distribution management system is further configured to select the first target system and the associated second target system in each group based upon the associated second target system in each group having a common configuration, and wherein the associated first target system does not have the common configuration.

20. An information handling system for distributing software, the system comprising:

a blockchain system;

a distribution management system configured to provide a software packet, the software packet including the software and a smart contract, an execution of the smart contract being validated and recorded by the blockchain system; and

a plurality of target systems to receive the software, the target systems organized into a plurality of groups, each group including a first target system in a first tier and at least one second target system in a second tier;

wherein the distribution management system provides the software packet to each first target system, wherein each first target system executes the smart contract, provides a first indication to the distribution management system as to whether the software was successfully installed on the first target system, and if the software was successfully installed on the first target system, provides the software packet to its associated second target system, wherein each second target system that receives the software packet executes the smart contract, and provides a second indication to the distribution management system as to whether the software was successfully installed on the second target system, and wherein the smart contract includes a list of grouped first and second target systems;

wherein the distribution management system further determines that a first indication indicates that the software packet was not successfully installed on a particular first target system, and places a particular second target system associated with the particular first target system on a blacklist, the blacklist preventing the particular second target system from receiving the software packet; and

wherein the distribution management system further determines a number of second indications that indicate that the software packet was not successfully installed on the second target systems is greater than a threshold, and suspends further distribution of the software packet when the number is greater than the threshold.

Assignments (13)
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 (053311/0169) 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 CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 060438/0742 →
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 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 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 CORPORATION; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 053311/0169 →
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 Feb 5, 2020
From: DATTATRI, MAHESHWAR; DIOUF, BABACAR
To: DELL PRODUCTS, LP
Reel/Frame 051832/0853 →