IP Library Granted Patent US 8,156,235
Granted Patent B2
US 8,156,235 · App. 12/484,122 · Granted Apr 10, 2012

Apparatus and method for determining modes and directing streams in remote communication

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,156,235
App. No.
12/484,122
Granted
Apr 10, 2012
Kind
B2
Abstract

A communication apparatus for remote communication may include a first local module configured to intercept a first stream. The first stream may utilize a first transmission protocol and may be destined to a remote destination over a network. The first local module may be configured to make a determination whether to direct the first stream over a first connection to a first destination utilizing the first transmission protocol or to direct the first stream over a second connection to a second destination utilizing a second transmission protocol. The determination may be based on one or more of the following: a configuration or a network condition. The first local module may be configured to direct the first stream to the first destination or the second destination based on the determination. The second transmission protocol is different from the first transmission protocol. A machine-readable medium and a method are also disclosed.

Claims (69)

1. A communication apparatus for remote communication, comprising:

a first local module configured to intercept a first stream, the first stream utilizing a first transmission protocol and destined to a remote destination over a network, the first local module configured to make a determination whether to direct the first stream over a first connection to a first destination utilizing the first transmission protocol or to direct the first stream over a second connection to a second destination utilizing a second transmission protocol, based on a real-time network condition, and configured to direct the first stream to the first destination or the second destination based on the determination,

wherein the second transmission protocol is different from the first transmission protocol.

2. The communication apparatus of claim 1 , wherein the network condition comprises an amount of packet loss.

3. The communication apparatus of claim 1 , wherein the network condition comprises a round-trip time.

4. The communication apparatus of claim 1 , wherein the network condition comprises available bandwidth.

5. The communication apparatus of claim 1 , wherein the first local module is configured to direct the first stream to the first destination if an amount of packet loss over the network is below a threshold value, and

wherein the first local module is configured to direct the first stream to the second destination if an amount of packet loss over the network is above a threshold value.

6. The communication apparatus of claim 1 , wherein the first local module is configured to make a determination whether to direct a first stream over a first connection to a first destination utilizing the first transmission protocol or to direct the first stream over a second connection to a second destination utilizing a second transmission protocol, further based on one or more of the following: whether a second local module for receiving and accelerating a stream is running, whether a first remote module for receiving a stream, from the second local module, is running, and whether a connection between the second local module and the first remote module is establishable.

7. The communication apparatus of claim 1 , wherein the communication apparatus comprises a computer, wherein the computer comprises a display, a processing system, and the first local module, wherein the first stream comprises a network request, and wherein the first local module is configured to direct the first stream to the remote destination via the first destination or via the second destination.

8. The communication apparatus of claim 1 ,

wherein the network condition comprises measured network conditions that are variable, and

wherein the second transmission protocol is adaptable to changing network conditions.

9. The communication apparatus of claim 1 , wherein the first local module is configured to dynamically determine a window size for the first stream directed to the first destination or the second destination and configured to dynamically adjust the window size based on the network condition that is variable.

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

intercepting a first stream, the first stream utilizing a first transmission protocol and destined to a remote destination over a network;

making a determination whether to direct the first stream over a first connection to a first destination utilizing the first transmission protocol or to direct the first stream over a second connection to a second destination utilizing a second transmission protocol, based on a real-time network condition; and

directing the first stream to the first destination or the second destination based on the determination,

wherein the second transmission protocol is different from the first transmission protocol.

11. The non-transitory machine-readable medium of claim 10 , wherein the network condition comprises an amount of packet loss.

12. The non-transitory machine-readable medium of claim 10 , wherein the network condition comprises a round-trip time.

13. The non-transitory machine-readable medium of claim 10 , wherein the network condition comprises available bandwidth.

14. The non-transitory machine-readable medium of claim 10 , wherein the directing comprises: directing the first stream to the first destination if an amount of packet loss over the network is below a threshold value; and directing the first stream to the second destination if an amount of packet loss over the network is above a threshold value.

15. The non-transitory machine-readable medium of claim 10 , wherein the instructions further comprise code for:

making a determination, by a first local module, whether to direct a first stream over a first connection to a first destination utilizing the first transmission protocol or to direct the first stream over a second connection to a second destination utilizing a second transmission protocol, further based on one or more of the following: whether a second local module for receiving and accelerating a stream is running, whether a first remote module for receiving a stream, from the second local module, is running, and whether a connection between the second local module and the first remote module is establishable.

16. The non-transitory machine-readable medium of claim 10 , wherein the first stream comprises a network request, and wherein the directing comprises code for: directing the first stream to the remote destination via the first destination or via the second destination.

17. The non-transitory machine-readable medium of claim 10 ,

wherein the network condition comprises measured network conditions that are variable, and

wherein the second transmission protocol is adaptable to changing network conditions.

18. The non-transitory machine-readable medium of claim 10 , wherein the instructions comprise code for:

dynamically determining a window size for the first stream directed to the first destination or the second destination; and

dynamically adjusting the window size based on the network condition that is variable.

19. A method for remote communication, comprising:

intercepting a first stream, the first stream utilizing a first transmission protocol and destined to a remote destination over a network;

making a determination whether to direct the first stream over a first connection to a first destination utilizing the first transmission protocol or to direct the first stream over a second connection to a second destination utilizing a second transmission protocol, based on a real-time network condition; and

directing the first stream to the first destination or the second destination based on the determination,

wherein the second transmission protocol is different from the first transmission protocol.

20. The method of claim 19 , wherein the network condition comprises an amount of packet loss.

21. The method of claim 19 , wherein the network condition comprises a round-trip time.

22. The method of claim 19 , wherein the network condition comprises available bandwidth.

23. The method of claim 19 , wherein the directing comprises:

directing the first stream to the first destination if an amount of packet loss over the network is below a threshold value; and directing the first stream to the second destination if an amount of packet loss over the network is above a threshold value.

24. The method of claim 19 , further comprising:

making a determination, by a first local module, whether to direct a first stream over a first connection to a first destination utilizing the first transmission protocol or to direct the first stream over a second connection to a second destination utilizing a second transmission protocol, further based on one or more of the following: whether a second local module for receiving and accelerating a stream is running, whether a first remote module for receiving a stream, from the second local module, is running, and whether a connection between the second local module and the first remote module is establishable.

25. The method of claim 19 , wherein the first stream comprises a network request, and wherein the directing comprises: directing the first stream to the remote destination via the first destination or via the second destination.

26. The method of claim 19 ,

wherein the network condition comprises measured network conditions that are variable, and

wherein the second transmission protocol is adaptable to changing network conditions.

27. The method of claim 19 , further comprising:

dynamically determining a window size for the first stream directed to the first destination or the second destination; and

dynamically adjusting the window size based on the network condition that is variable.

28. An apparatus for remote communication, comprising:

means for intercepting a first stream, the first stream utilizing a first transmission protocol and destined to a remote destination over a network;

means for making a determination whether to direct the first stream over a first connection to a first destination utilizing the first transmission protocol or to direct the first stream over a second connection to a second destination utilizing a second transmission protocol, based on a real-time network condition; and

means for directing the first stream to the first destination or the second destination based on the determination,

wherein the second transmission protocol is different from the first transmission protocol.

29. The apparatus of claim 28 , wherein the network condition comprises one or more of: an amount of packet loss, a round-trip time, and available bandwidth.

30. The apparatus of claim 28 , wherein the means for directing comprises: means for directing the first stream to the first destination if an amount of packet loss over the network is below a threshold value; and means for directing the first stream to the second destination if an amount of packet loss over the network is above a threshold value.

31. The apparatus of claim 28 , further comprising:

means for making a determination, by a first local module, whether to direct a first stream over a first connection to a first destination utilizing the first transmission protocol or to direct the first stream over a second connection to a second destination utilizing a second transmission protocol, further based on one or more of the following: whether a second local module for receiving and accelerating a stream is running, whether a first remote module for receiving a stream, from the second local module, is running, and whether a connection between the second local module and the first remote module is establishable.

32. The apparatus of claim 28 , wherein the apparatus comprises a computer, and wherein the computer comprises: means for displaying information;

means for processing information; the means for intercepting; the means for making a determination; and the means for directing,

wherein the first stream comprises a network request, and wherein the means for directing comprises: means for directing the first stream to the remote destination via the first destination or via the second destination.

33. The apparatus of claim 28 ,

wherein the network condition comprises measured network conditions that are variable, and

wherein the second transmission protocol is adaptable to changing network conditions.

34. The apparatus of claim 28 , further comprising:

means for dynamically determining a window size for the first stream directed to the first destination or the second destination; and

means for dynamically adjusting the window size based on the network condition that is variable.

Assignments (17)
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: 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; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058216/0001 →
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 →
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: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040134/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: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 040136/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 14, 2016
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: DELL SOFTWARE INC.; FORCE10 NETWORKS, INC.; 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.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 040040/0001 →
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 (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 →
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 →
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 24, 2009
From: BARRETO, DANIEL ERNESTO; KASIVAJHULA, SIDDHARTHA; KUMAR, ANKUR
To: WYSE TECHNOLOGY INC.
Reel/Frame 023139/0860 →