IP Library Granted Patent US 8,122,140
Granted Patent B2
US 8,122,140 · App. 12/484,120 · Granted Feb 21, 2012

Apparatus and method for accelerating streams through use of transparent proxy architecture

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 8,122,140
App. No.
12/484,120
Granted
Feb 21, 2012
Kind
B2
Abstract

A communication apparatus for remote communication may include a local transparent proxy module configured to intercept a first stream destined to a remote destination and configured to make a first determination whether to accelerate communication associated with the first stream. The communication apparatus may include a local proxy module configured to receive the first stream based on the first determination and configured to make a second determination whether a connection to a remote proxy module is established. If the connection is established, then the local proxy module may receive one or more additional streams and may direct the one or more additional streams to the remote proxy module utilizing an accelerated mode. If the connection is not established, then the local transparent proxy module may direct the first stream to the remote destination utilizing a non-accelerated mode. A machine-readable medium and a method are also disclosed.

Claims (101)

1. A communication apparatus for remote communication, comprising:

a local transparent communication proxy module configured to intercept a first stream destined to a remote destination and configured to make a first determination whether to accelerate communication associated with the first stream; and

a local communication proxy module configured to receive the first stream based on the first determination and configured to make a second determination whether a connection to a remote communication proxy module is established,

wherein if the connection is established, then the local communication proxy module is configured to receive one or more additional streams and configured to facilitate directing the one or more additional streams to the remote communication proxy module utilizing an accelerated mode, and if the connection is not established, then the local transparent communication proxy module is configured to facilitate directing the first stream to the remote destination utilizing a non-accelerated mode.

2. The communication apparatus of claim 1 , wherein the first stream comprises a network request, and the one or more additional streams comprise one or more data streams,

wherein the communication apparatus comprises one or more computers, and

wherein the one or more computers comprises one or more displays, one or more processing systems, the local transparent communication proxy module, and the local communication proxy module.

3. The communication apparatus of claim 1 , wherein if the connection is established, then the local communication proxy module is configured to receive the one or more additional streams and to facilitate directing the one or more additional streams to the remote communication proxy module utilizing the accelerated mode based on the first and second determinations, and

wherein if the connection is not established, then the local transparent communication proxy module is configured to facilitate directing the first stream to the remote destination bypassing the local communication proxy module and utilizing the non-accelerated mode.

4. The communication apparatus of claim 1 , wherein the first stream comprises real-time information from a local communication application module comprising a real-time application, and the one or more additional streams comprise real-time information, and

wherein the first stream is in a form utilizing a first transmission protocol, the non-accelerated mode utilizes the first transmission protocol, and the accelerated mode utilizes a second transmission protocol different from the first transmission protocol.

5. The communication apparatus of claim 1 , wherein the local transparent communication proxy module is configured to receive the first stream via a first communication channel,

wherein the local communication proxy module is configured to receive the first stream via a second communication channel,

wherein if the connection is established, then the local communication proxy module is configured to receive the one or more additional streams via a third communication channel,

wherein the third communication channel bypasses the local transparent communication proxy module, wherein the local communication proxy module is configured to facilitate establishment of the connection via a fourth communication channel, and

wherein a communication path for the accelerated mode is different from a communication path for the non-accelerated mode.

6. The communication apparatus of claim 1 , wherein a stream transfer rate utilizing the accelerated mode is higher than a stream transfer rate utilizing a transmission control protocol (TCP) or a stream transfer rate utilizing the non-accelerated mode.

7. The communication apparatus of claim 1 , wherein the local transparent communication proxy module is configured to intercept the first stream originated from a local communication application module, and the local communication proxy module is configured to be transparent to the local communication application module.

8. The communication apparatus of claim 1 , wherein the local transparent communication proxy module is configured to intercept the first stream from a local communication application module without modifying the local communication application module specifically for the local transparent communication proxy module, and

wherein the local communication proxy module is configured to receive the first stream and the one or more additional streams originated from a local communication application module, without modifying the local communication application module specifically for the local communication proxy module.

9. The communication apparatus of claim 1 , wherein the local communication proxy module comprises:

a priority queue configured to store and order streams according to times the streams have been sent; and

a receive buffer configured to store streams.

10. A non-transitory machine-readable medium encoded with instructions for remote communication, the instructions comprising code for:

intercepting a first stream destined to a remote destination;

making a first determination whether to accelerate communication associated with the first stream;

making a second determination whether a connection to a remote communication proxy module is established;

if the connection is not established, facilitating directing the first stream to the remote destination utilizing a non-accelerated mode; and

if the connection is established, facilitating directing one or more additional streams to the remote communication proxy module utilizing an accelerated mode.

11. The non-transitory machine-readable medium of claim 10 , wherein the first stream comprises a network request, and the one or more additional streams comprise one or more data streams.

12. The non-transitory machine-readable medium of claim 10 , wherein the first stream comprises real-time information from a local communication application module comprising a real-time application, and the one or more additional streams comprise real-time information, and

wherein the first stream is in a form utilizing a first transmission protocol, the non-accelerated mode comprises the first transmission protocol, and the accelerated mode comprises a second transmission protocol different from the first transmission protocol.

13. The non-transitory machine-readable medium of claim 10 , wherein the intercepting comprises receiving the first stream by a local transparent communication proxy module via a first communication channel, wherein the making the first determination is performed by the local transparent communication proxy module, wherein the making the second determination is performed by the local communication proxy module, wherein the facilitating directing the first stream is performed by the local transparent communication proxy module, wherein the facilitating directing one or more additional streams is performed by the local communication proxy module,

wherein the instructions further comprise code for: receiving the first stream by the local communication proxy module, based on the first determination, via a second communication channel; facilitating establishing the connection with the remote communication proxy module by the local communication proxy module, based on the first determination; if the connection between the local communication proxy module and the remote communication proxy module is established, receiving, by the local communication proxy module, the one or more additional streams via a third communication channel,

wherein the third communication channel bypasses the local transparent communication proxy module, wherein the local communication proxy module is configured to facilitate establishing the connection via a fourth communication channel, and wherein a communication path for the accelerated mode is different from a communication path for the non-accelerated mode.

14. The non-transitory machine-readable medium of claim 10 , wherein a stream transfer rate utilizing the accelerated mode is higher than a stream transfer rate utilizing a transmission control protocol (TCP) or a stream transfer rate utilizing the non-accelerated mode.

15. The non-transitory machine-readable medium of claim 10 , wherein the intercepting the first stream comprises intercepting, by a local transparent communication proxy module, the first stream originated from a local communication application module, and the local communication proxy module is configured to be transparent to the local communication application module.

16. The non-transitory machine-readable medium of claim 10 , wherein the intercepting the first stream comprises intercepting, by a local transparent communication proxy module, the first stream from a local communication application module without modifying the local communication application module specifically for the local transparent communication proxy module, and

wherein the instructions further comprise code for: receiving, based on the first determination by the local communication proxy module, the first stream originated from the local communication application module, without modifying the local communication application module specifically for the local communication proxy module; and receiving, based on the first determination by the local communication proxy module, the one or more additional streams originated from the local communication application module, without modifying the local communication application module specifically for the local communication proxy module.

17. The non-transitory machine-readable medium of claim 10 , wherein the instructions further comprise code for: facilitating storing and ordering streams according to times the streams have been sent; and facilitating storing streams that have been received.

18. The non-transitory machine-readable medium of claim 17 , wherein the instructions further comprise code for: minimizing access time to the streams that have been sent and stored; and minimizing access time to the streams that have been received and stored.

19. The non-transitory machine-readable medium of claim 10 , comprising:

a first local transparent communication proxy module comprising the code for: intercepting the first stream destined to the remote destination; making the first determination whether to accelerate communication associated with the first stream; and if the connection is not established, facilitating directing the first stream to the remote destination utilizing the non-accelerated mode;

a first local communication proxy module comprising code for: receiving the first stream based on the first determination, wherein the first local communication proxy module further comprises the code for: making a second determination whether a connection to the remote communication proxy module is established; and if the connection is established, facilitating directing one or more additional streams to the remote communication proxy module utilizing an accelerated mode;

a second local transparent communication proxy module comprising code for: intercepting a third stream destined to the remote destination; and making a third determination whether to accelerate communication associated with the third stream; and

a second local communication proxy module comprising code for: receiving the third stream based on the third determination; making a fourth determination whether a second connection to the remote communication proxy module is established; and if the second connection is established, receiving one or more second additional streams and facilitating directing the one or more second additional streams to the remote communication proxy module utilizing an accelerated mode,

wherein the second local transparent communication proxy module further comprises code for: if the second connection is not established, facilitating directing the third stream to the remote destination utilizing an non-accelerated mode.

20. The non-transitory machine-readable medium of claim 10 , comprising:

a first local transparent communication proxy module comprising the code for: intercepting the first stream destined to the remote destination; making the first determination whether to accelerate communication associated with the first stream; and if the connection is not established, facilitating directing the first stream to the remote destination utilizing the non-accelerated mode;

a local communication proxy module comprising code for: receiving the first stream based on the first determination, wherein the first local communication proxy module further comprises the code for: making the second determination whether the connection to the remote communication proxy module is established; and if the connection is established, facilitating directing one or more additional streams to the remote communication proxy module utilizing an accelerated mode; and

a second local transparent communication proxy module comprising code for: intercepting a third stream destined to the remote destination; and making a third determination whether to accelerate communication associated with the third stream,

wherein the local communication proxy module further comprises code for: receiving the third stream based on the third determination; making a fourth determination whether a second connection to the remote communication proxy module is established; and if the second connection is established, receiving one or more second additional streams and facilitating directing the one or more second additional streams to the remote communication proxy module utilizing an accelerated mode,

wherein the second local transparent communication proxy module further comprises code for: if the second connection is not established, facilitating directing the third stream to the remote destination utilizing a non-accelerated mode.

21. The non-transitory machine-readable medium of claim 10 , wherein the making the second determination step comprises making the second determination whether the connection between a local communication proxy module and the remote communication proxy module is established,

wherein if the connection is not established, the facilitating directing the first stream step comprises facilitating directing the first stream to the remote destination bypassing the local communication proxy module and utilizing the non-accelerated mode, and

wherein if the connection is established, the facilitating directing the one or more additional streams step comprises facilitating directing the one or more additional streams to the local communication proxy module for transmission to the remote communication proxy module utilizing an accelerated mode, based on the first and second determinations.

22. A method for remote communication, comprising:

intercepting a first stream destined to a remote destination;

making a first determination whether to accelerate communication associated with the first stream;

making a second determination whether a connection to a remote communication proxy module is established;

if the connection is not established, facilitating directing the first stream to the remote destination utilizing a non-accelerated mode; and

if the connection is established, facilitating directing one or more additional streams to the remote communication proxy module utilizing an accelerated mode.

23. The communication apparatus of claim 22 , wherein the making the second determination step comprises making the second determination whether the connection between a local communication proxy module and the remote communication proxy module is established,

wherein if the connection is not established, the facilitating directing the first stream step comprises facilitating directing the first stream to the remote destination bypassing the local communication proxy module and utilizing the non-accelerated mode, and

wherein if the connection is established, the facilitating directing the one or more additional streams step comprises facilitating directing the one or more additional streams to the local communication proxy module for transmission to the remote communication proxy module utilizing the accelerated mode, based on the first and second determinations.

24. The method of claim 22 , wherein the first stream comprises a network request, and the one or more additional streams comprise one or more data streams.

25. The method of claim 22 , wherein the first stream comprises real-time information from a local communication application module comprising a real-time application, and the one or more additional streams comprise real-time information, and

wherein the first stream is in a form utilizing a first transmission protocol, the non-accelerated mode comprises the first transmission protocol, and the accelerated mode comprises a second transmission protocol different from the first transmission protocol.

26. The method of claim 22 , wherein the intercepting comprises receiving the first stream by a local transparent communication proxy module via a first communication channel, wherein the making a first determination is performed by the local transparent communication proxy module, wherein the making a second determination is performed by a local communication proxy module, wherein the directing the first stream is performed by the local transparent communication proxy module, wherein the directing one or more additional streams is performed by the local communication proxy module,

wherein the method further comprises: receiving the first stream by the local communication proxy module, based on the first determination, via a second communication channel; facilitating establishing the connection with the remote communication proxy module by the local communication proxy module, based on the first determination; if the connection between the local communication proxy module and the remote communication proxy module is established, receiving, by the local communication proxy module, the one or more additional streams via a third communication channel,

wherein the third communication channel bypasses the local transparent communication proxy module, wherein the local communication proxy module is configured to facilitate establishing the connection via a fourth communication channel, and wherein a communication path for the accelerated mode is different from a communication path for the non-accelerated mode.

27. The method of claim 22 , wherein a stream transfer rate utilizing the accelerated mode is higher than a stream transfer rate utilizing a transmission control protocol (TCP) or a stream transfer rate utilizing the non-accelerated mode.

28. The method of claim 22 , wherein the intercepting a first stream comprises intercepting, by a local transparent communication proxy module, the first stream originated from a local communication application module, and the local communication proxy module is configured to be transparent to the local communication application module.

29. The method of claim 22 , wherein the intercepting a first stream comprises intercepting, by a local transparent communication proxy module, the first stream from a local communication application module without modifying the local communication application module specifically for the local transparent communication proxy module, and

wherein the method further comprises: receiving, based on the first determination by the local communication proxy module, the first stream originated from the local communication application module, without modifying the local communication application module specifically for the local communication proxy module; and receiving, based on the first determination by the local communication proxy module, the one or more additional streams originated from the local communication application module, without modifying the local communication application module specifically for the local communication proxy module.

30. The method of claim 22 , further comprising: facilitating storing and ordering streams according to times the streams have been sent; and facilitating storing streams that have been received.

31. The method of claim 30 , further comprising: minimizing access time to the streams that have been sent and stored; and minimizing access time to the streams that have been received and stored.

32. The method of claim 22 , wherein the intercepting is performed by a local transparent communication proxy module, wherein the making a first determination is performed by the local transparent communication proxy module, wherein the making a second determination is performed by a local communication proxy module, wherein the directing the first stream is performed by the local transparent communication proxy module, wherein the directing one or more additional streams is performed by the local communication proxy module,

wherein the method further comprises: receiving, by the local communication proxy module, the first stream based on the first determination; intercepting, by a second local transparent communication proxy module, a third stream destined to the remote destination; making, by the second local transparent communication proxy module, a third determination whether to accelerate communication associated with the third stream; receiving, by a second local communication proxy module, the third stream based on the third determination; making, by the second local communication proxy module, a fourth determination whether a second connection to the remote communication proxy module is established; if the second connection is established, receiving, by the second local communication proxy module, one or more second additional streams, and directing, by the second local communication proxy module, the one or more second additional streams to the remote communication proxy module utilizing an accelerated mode; and if the second connection is not established, directing, by the second local transparent communication proxy module, the third stream to the remote destination utilizing a non-accelerated mode.

33. The method of claim 22 , wherein the intercepting is performed by a local transparent communication proxy module, wherein the making a first determination is performed by the local transparent communication proxy module, wherein the making a second determination is performed by a local communication proxy module, wherein the directing the first stream is performed by the local transparent communication proxy module, wherein the directing one or more additional streams is performed by the local communication proxy module,

wherein the method further comprises: receiving, by the local communication proxy module, the first stream based on the first determination; intercepting, by a second local transparent communication proxy module, a third stream destined to the remote destination; making, by the second local transparent communication proxy module, a third determination whether to accelerate communication associated with the third stream; receiving, by the local communication proxy module, the third stream based on the third determination; making, by the local communication proxy module, a fourth determination whether a second connection to the remote communication proxy module is established; and if the second connection is established, receiving, by the local communication proxy module, one or more second additional streams and directing, by the local communication proxy module, the one or more second additional streams to the remote communication proxy module utilizing an accelerated mode; and if the second connection is not established, directing, by the second local transparent communication proxy module, the third stream to the remote destination utilizing a non-accelerated mode.

34. A communication apparatus for remote communication, comprising:

means for intercepting a first stream destined to a remote destination;

means for making a first determination whether to accelerate communication associated with the first stream;

means for making a second determination whether a connection to a remote communication proxy module is established;

means for, if the connection is not established, facilitating directing the first stream to the remote destination utilizing a non-accelerated mode; and

means for, if the connection is established, facilitating directing one or more additional streams to the remote communication proxy module utilizing an accelerated mode.

35. The communication apparatus of claim 34 , wherein the means for making the second determination determines whether the connection between a local communication proxy module and the remote communication proxy module is established,

wherein the means for facilitating directing the first stream facilitates directing the first stream to the remote destination bypassing the local communication proxy module and utilizing the non-accelerated mode, if the connection is not established, and

wherein the means for facilitating directing the one or more additional streams facilitates directing the one or more additional streams to the local communication proxy module for transmission to the remote communication proxy module utilizing the accelerated mode based on the first and second determinations, if the connection is established.

36. The communication apparatus of claim 34 , wherein the first stream comprises a network request, and the one or more additional streams comprise one or more data streams, wherein the communication apparatus comprises one or more computers, and wherein the one or more computers comprises: means for displaying information; means for processing information; the means for intercepting; the means for making a first determination; the means for making a second determination; the means for directing the first stream; and the means for directing one or more additional streams.

37. The communication apparatus of claim 34 , wherein the first stream comprises real-time information from a local communication application module comprising a real-time application, and the one or more additional streams comprise real-time information, and

wherein the first stream is in a form utilizing a first transmission protocol, the non-accelerated mode comprises the first transmission protocol, and the accelerated mode comprises a second transmission protocol different from the first transmission protocol.

38. The communication apparatus of claim 34 , wherein the means for intercepting comprises means for receiving the first stream via a first communication channel,

wherein the communication apparatus further comprises: means for receiving the first stream based on the first determination, via a second communication channel; means for facilitating establishing the connection with the remote communication proxy module, based on the first determination, via a fourth communication channel; means for, if the connection is established, receiving the one or more additional streams via a third communication channel; wherein the third communication channel bypasses the means for receiving the first stream via the first communication channel, and

wherein a communication path for the accelerated mode is different from a communication path for the non-accelerated mode.

39. The communication apparatus of claim 34 , wherein a stream transfer rate utilizing the accelerated mode is higher than a stream transfer rate utilizing a transmission control protocol (TCP) or a stream transfer rate utilizing the non-accelerated mode.

40. The communication apparatus of claim 34 , wherein the means for intercepting a first stream comprises means for intercepting the first stream originated from a local communication application module, and the means for making the second determination and the means for directing the one or more additional streams are transparent to the local communication application module.

41. The communication apparatus of claim 34 , wherein the means for intercepting a first stream comprises means for intercepting, by a local transparent communication proxy module, the first stream from a local communication application module, without modifying the local communication application module specifically for the local transparent communication proxy module, and

wherein the communication apparatus comprises: means for receiving, based on the first determination by a local communication proxy module, the first stream originated from the local communication application module, without modifying the local communication application module specifically for the local communication proxy module; and means for receiving, based on the first determination by the local communication proxy module, the one or more additional streams originated from the local communication application module, without modifying the local communication application module specifically for the local communication proxy module.

42. The communication apparatus of claim 34 , further comprising: means for facilitating storing and ordering streams according to times the streams have been sent; and means for facilitating storing streams that have been received.

Assignments (16)
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 (045455/0001) Recorded May 20, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061753/0001 →
MERGER Recorded May 13, 2022
From: WYSE TECHNOLOGY L.L.C.
To: DELL MARKETING CORPORATION
Reel/Frame 060064/0586 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001) Recorded Apr 26, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061324/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 3, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL USA L.P.; ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL INTERNATIONAL, L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058216/0001 →
SECURITY AGREEMENT Recorded Mar 21, 2019
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 049452/0223 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 040136/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040134/0001 →
RELEASE OF SECURITY INTEREST Recorded Sep 14, 2016
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: DELL MARKETING L.P.; ASAP SOFTWARE EXPRESS, INC.; APPASSURE SOFTWARE, INC.; COMPELLENT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL INC.; DELL PRODUCTS L.P.; DELL USA L.P.; DELL SOFTWARE INC.; FORCE10 NETWORKS, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 040040/0001 →
RELEASE OF SECURITY INTEREST Recorded Sep 14, 2016
From: BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: DELL MARKETING L.P.; ASAP SOFTWARE EXPRESS, INC.; APPASSURE SOFTWARE, INC.; COMPELLENT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL INC.; DELL PRODUCTS L.P.; DELL USA L.P.; DELL SOFTWARE INC.; FORCE10 NETWORKS, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 040065/0618 →
RELEASE OF SECURITY INTEREST Recorded Sep 13, 2016
From: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
To: DELL MARKETING L.P.; ASAP SOFTWARE EXPRESS, INC.; APPASSURE SOFTWARE, INC.; COMPELLANT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL INC.; DELL PRODUCTS L.P.; DELL USA L.P.; DELL SOFTWARE INC.; FORCE10 NETWORKS, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 040065/0216 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Jan 2, 2014
From: APPASSURE SOFTWARE, INC.; ASAP SOFTWARE EXPRESS, INC.; BOOMI, INC.; COMPELLENT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL INC.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL USA L.P.; FORCE10 NETWORKS, INC.; GALE TECHNOLOGIES, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
To: BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS FIRST LIEN COLLATERAL AGENT
Reel/Frame 031897/0348 →
PATENT SECURITY AGREEMENT (TERM LOAN) Recorded Jan 2, 2014
From: DELL INC.; APPASSURE SOFTWARE, INC.; ASAP SOFTWARE EXPRESS, INC.; BOOMI, INC.; COMPELLENT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL USA L.P.; FORCE10 NETWORKS, INC.; GALE TECHNOLOGIES, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 031899/0261 →
PATENT SECURITY AGREEMENT (ABL) Recorded Jan 2, 2014
From: DELL INC.; APPASSURE SOFTWARE, INC.; ASAP SOFTWARE EXPRESS, INC.; BOOMI, INC.; COMPELLENT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL USA L.P.; FORCE10 NETWORKS, INC.; GALE TECHNOLOGIES, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 031898/0001 →
CHANGE OF NAME Recorded Nov 15, 2013
From: WYSE TECHNOLOGY INC.
To: WYSE TECHNOLOGY L.L.C.
Reel/Frame 031645/0051 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 21, 2009
From: BARRETO, DANIEL ERNESTO; KASIVAJHULA, SIDDHARTHA; KUMAR, ANKUR
To: WYSE TECHNOLOGY INC.
Reel/Frame 023131/0945 →