IP Library Granted Patent US 8,782,772
Granted Patent B2
US 8,782,772 · App. 11/904,751 · Granted Jul 15, 2014

Multi-session secure tunnel

Inventor: Kadirvel C. Vanniarajan (Hyderabad, IN)
Assignee: Microsoft Corporation
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,782,772
App. No.
11/904,751
Granted
Jul 15, 2014
Kind
B2
Abstract

A method of communicating data over a network is provided. A secure tunnel may be implemented through the network between two computers. Performance limitations of the secure tunnel with a single session can be alleviated by establishing multiple sessions for the tunnel.

Claims (57)

1. A method of communicating data over a network, the method comprising:

establishing a first Secure Socket Tunneling Protocol (SSTP) session through the network between a computer and another computer in a secure SSTP tunnel through the network between the computer and the other computer, the secure SSTP tunnel conveying data for a secure point-to-point session over the first SSTP session in the secure SSTP tunnel;

determining an underutilization of at least one capability of the network based on at least one performance characteristic, wherein the at least one performance characteristic includes at least one of a network latency characteristic or a data loss characteristic;

establishing a second SSTP session in the secure SSTP tunnel in response to the determination of the underutilization of the at least one capability of the network;

associating the second SSTP session to the first SSTP session; and

transmitting data for the secure point-to-point session over the associated first and second SSTP sessions.

2. The method of claim 1 , wherein establishing the first SSTP session includes:

negotiating authentication parameters for the first SSTP session.

3. The method of claim 1 , wherein:

the computer comprises a client and the other computer comprises a server;

the method further comprises sending, by the client, a request to establish a new SSTP session in the secure SSTP tunnel;

the request comprises an indicator that the new SSTP session is a new session of the secure point-to-point session; and

the secure point-to-point session is carried over a single logical channel.

4. The method of claim 1 , wherein the secure SSTP tunnel is implemented over a hypertext transport protocol secure (HTTPS) connection.

5. The method of claim 1 , wherein the secure SSTP tunnel is implemented as a virtual private network tunnel based on the SSTP.

6. The method of claim 1 , wherein the first and second SSTP sessions are associated with the secure SSTP tunnel via a same authentication.

7. The method of claim 6 , wherein the first computer comprises a client and the other computer comprises a server, and wherein the same authentication for the first and second SSTP sessions comprises the client authenticating the server using a secure socket layer channel and the server authenticating the client using a point-to-point protocol.

8. The method of claim 1 , further comprising:

determining the at least one performance characteristic; and

establishing at least a third SSTP session in the secure SSTP tunnel in response to a determination that the at least one performance characteristic is below a threshold.

9. The method of claim 8 , wherein the at least one performance characteristic further includes a throughput of the secure SSTP tunnel.

10. The method of claim 8 , wherein:

the at least one performance characteristic includes the network latency characteristic; and

determining the underutilization of the at least one capability of the network includes:

determining whether latency in the secure SSTP tunnel is above a threshold.

11. The method of claim 8 , wherein:

the computer comprises a client and the other computer comprises a server;

the at least one performance characteristic includes the data loss characteristic; and

the method further comprising determining whether data loss in the network between the client and the server is above a threshold.

12. The method of claim 3 , wherein the method further comprises:

establishing the new SSTP session including:

sending from the client a call connect request including a session cookie the call connect request for validation by the server via use of the session cookie;

receiving by the client from the server a call connect acknowledgment with a challenge for a crypto-binding; and

sending from the client a call connected message with the crypto-binding to indicate that the client is capable of establishing the new SSTP session.

13. At least one computer-readable storage device having stored thereon computer-executable instructions for communicating data over a network, the communicating comprising:

establishing a first Secure Socket Tunneling Protocol (SSTP) session through the network between a computer and a another computer in a secure SSTP tunnel through the network between the computer and the other computer, the secure SSTP tunnel conveying data for a secure point-to-point session over the first SSTP session in the secure SSTP tunnel;

determining an underutilization of at least one capability of the network based on at least one performance characteristic, wherein the at least one performance characteristic includes at least one of a network latency characteristic or a data loss characteristic;

establishing a second SSTP session in the secure SSTP tunnel in response to the determination of the underutilization of the at least one capability of the network;

associating the second SSTP session to the first SSTP session; and

transmitting data for the secure point-to-point session over the associated first and second SSTP sessions.

14. The at least one computer-readable storage device of claim 13 , wherein the communicating further comprises:

determining the at least one performance characteristic of the secure SSTP tunnel.

15. The at least one computer-readable storage device of claim 14 , wherein the at least one performance characteristic is indicative of throughput of the first secure SSTP tunnel being lower than available bandwidth of the network.

16. The at least one computer-readable storage device of claim 14 , wherein:

the at least one performance characteristic includes the network latency characteristic; and

the network latency characteristic is indicative of latency in the secure SSTP tunnel being above a threshold.

17. A computer comprising:

at least one hardware processor programmed to:

establish a first Secure Socket Tunneling Protocol (SSTP) session through a network between the computer and another computer in a secure SSTP tunnel through the network between the computer and the another computer, the secure SSTP tunnel conveying data for a secure point-to-point session over the first SSTP session in the secure SSTP tunnel;

determine an underutilization of at least one capability of the network based on at least one performance characteristic, wherein the at least one performance characteristic includes network latency and/or data loss;

establish a second SSTP session in the secure SSTP tunnel in response to the determination of the underutilization of the at least one capability of the network;

associate the second SSTP session to the first SSTP session; and

transmit data for the secure point-to-point session over the associated first and second SSTP sessions.

18. The computer of claim 17 , wherein the first and second SSTP sessions employ a same authentication.

19. The computer of claim 17 , wherein the at least one hardware processor is further programmed to:

automatically establish additional SSTP sessions in the secure SSTP tunnel in response to the at least one performance characteristic of the secure SSTP tunnel being below a threshold.

20. The computer of claim 17 , wherein the first SSTP session and the second SSTP session are associated with each other as a single logical channel.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2014
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 034542/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 30, 2007
From: VANNIARAJAN, KADIRVEL CHOCKALINGAM
To: MICROSOFT CORPORATION
Reel/Frame 020038/0155 →
Continuity (1)
Related Publication 20090089863A1 · Apr 2, 2009