# US 8,782,772 B2 · Multi-session secure tunnel

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 8,782,772 B2
- Document ID: US8782772B2
- Status: Granted
- Kind: B2
- Application number: 11/904,751
- Filed: 2007-09-28
- Published: 2009-04-02
- Granted: 2014-07-15
- Earliest claimed: 2007-09-28
- Assignees: Microsoft Corporation
- Applicants: Kadirvel C. Vanniarajan
- Inventors: Kadirvel C. Vanniarajan
- Web page: https://patentgrep.com/patent/US8782772B2

## CPC

- H04L 63/0272: {Virtual private networks}
- H04L 9/3271: {using challenge-response}
- H04L 63/166: {at the transport layer}
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## 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

### Claim 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.

### Claim 2 (depends on 1)

The method of claim 1, wherein establishing the first SSTP session includes:
negotiating authentication parameters for the first SSTP session.

### Claim 3 (depends on 1)

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.

### Claim 4 (depends on 1)

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

### Claim 5 (depends on 1)

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

### Claim 6 (depends on 1)

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

### Claim 7 (depends on 6)

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.

### Claim 8 (depends on 1)

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.

### Claim 9 (depends on 8)

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

### Claim 10 (depends on 8)

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.

### Claim 11 (depends on 8)

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.

### Claim 12 (depends on 3)

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.

### Claim 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.

### Claim 14 (depends on 13)

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.

### Claim 15 (depends on 14)

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.

### Claim 16 (depends on 14)

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.

### Claim 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.

### Claim 18 (depends on 17)

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

### Claim 19 (depends on 17)

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.

### Claim 20 (depends on 17)

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.
