IP Library Granted Patent US 10,862,863
Granted Patent B2
US 10,862,863 · App. 16/017,992 · Granted Dec 8, 2020

Session identifier for a communication session

Inventors: Timothy Mark Moore (Bellevue, WA); Tin Qian (Redmond, WA); Rajesh Gunnalan (Sammamish, WA)
Assignee: Microsoft Technology Licensing, LLC
H04L61/2589H04L65/1069H04L65/60H04L67/146H04L61/2517H04L61/6063
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 10,862,863
App. No.
16/017,992
Granted
Dec 8, 2020
Kind
B2
Abstract

Techniques for a session identifier for a communication session are described. According to various implementations, a session identifier that is usable for initiating a communication session is allocated prior to the communication session being initiated. The session identifier can then be activated to enable the session identifier to be used for routing data packets of a communication session.

Claims (51)

1. A system comprising:

one or more processors; and

one or more computer-readable storage media storing instructions that are executable by the one or more processors to perform operations including:

receiving an allocation request from a first device, the allocation request including a network address of the first device;

determining, for the allocation request, a session identifier associated with the network address of the first device, said determining occurring prior to an initiation of a communication session involving the first device;

communicating a response to the first device including the session identifier;

receiving an activation request including the session identifier and a transport address for the first device;

activating the session identifier by associating the session identifier with the transport address;

receiving, from a second device and as part of the communication session, a data packet that includes the session identifier; and

communicating the data packet to the transport address for the first device.

2. A system as described in claim 1 , wherein the allocation request includes a service quality attribute, and wherein the operations further include determining a port identifier based on the service quality attribute, wherein the response to the first device further includes the port identifier.

3. A system as described in claim 1 , wherein the allocation request includes a modality type, and wherein the operations further include determining a port identifier based on the modality type, wherein the response to the first device further includes the port identifier.

4. A system as described in claim 1 , wherein the operations further include:

determining a port to be allocated for the session identifier, and including a port identifier for the port with the response to the first device; and

causing data packets of the communication session to be multiplexed over the port with data packets of a different communication session.

5. A system as described in claim 1 , wherein the system comprises a server, and wherein the response to the first device further includes a network address of the server.

6. A system as described in claim 1 , wherein the operations further comprise, prior to communicating the response, validating that the allocation request is associated with a valid user identifier.

7. A system as described in claim 1 , wherein the operations further comprise, prior to communicating the response, validating that the allocation request does not exceed a cap on a number of session identifiers allocated to a particular user identifier.

8. A system as described in claim 1 , wherein the operations further comprise, subsequent to said communicating the response to the first device, maintaining the session identifier in an inactive state until said receiving the activation request.

9. A method comprising:

receiving an allocation request from a first device, the allocation request including a network address of the first device;

determining, for the allocation request, a session identifier associated with the network address of the first device, said determining occurring prior to an initiation of a communication session involving the first device;

communicating a response to the first device including the session identifier;

receiving an activation request including the session identifier and a transport address for the first device;

activating the session identifier by associating the session identifier with the transport address;

receiving, from a second device and as part of the communication session, a data packet that includes the session identifier; and

communicating the data packet to the transport address for the first device.

10. A method as recited in claim 9 , wherein the allocation request includes a service quality attribute, and wherein the method further comprises determining a port identifier based on the service quality attribute, wherein the response to the first device further includes the port identifier.

11. A method as recited in claim 9 , wherein the allocation request includes a modality type, and wherein the method further comprises determining a port identifier based on the modality type, wherein the response to the first device further includes the port identifier.

12. A method as recited in claim 9 , further comprising:

determining a port to be allocated for the session identifier, and including a port identifier for the port with the response to the first device; and

causing data packets of the communication session to be multiplexed over the port with data packets of a different communication session.

13. A method as recited in claim 9 , wherein the allocation request includes a modality type, and wherein the method further comprises:

determining a port identifier for a port based on the modality type, wherein the response to the first device further includes the port identifier; and

causing data packets of the modality type from the communication session to be multiplexed over the port with data packets of the modality type from a different communication session.

14. A method as recited in claim 9 , further comprising, prior to communicating the response, validating that the allocation request does not exceed a cap on a number of session identifiers allocated to a particular user identifier.

15. A method as recited in claim 9 , further comprising, subsequent to said communicating the response to the first device, maintaining the session identifier in an inactive state until said receiving the activation request.

16. One or more computer-readable storage devices storing instructions that are executable to perform operations comprising:

receiving an allocation request from a first device, the allocation request including a network address of the first device;

determining, for the allocation request, a session identifier associated with the network address of the first device, said determining occurring prior to an initiation of a communication session involving the first device;

communicating a response to the first device including the session identifier;

receiving an activation request including the session identifier and a transport address for the first device;

activating the session identifier by associating the session identifier with the transport address;

receiving, from a second device and as part of the communication session, a data packet that includes the session identifier; and

communicating the data packet to the transport address for the first device.

17. One or more computer-readable storage devices as described in claim 16 , wherein the allocation request includes a service quality attribute, and wherein the operations further comprise determining a port identifier based on the service quality attribute, wherein the response to the first device further includes the port identifier.

18. One or more computer-readable storage devices as described in claim 16 , wherein the allocation request includes a modality type, and wherein the operations further comprise determining a port identifier based on the modality type, wherein the response to the first device further includes the port identifier.

19. One or more computer-readable storage devices as described in claim 16 , wherein the operations further comprise:

determining a port to be allocated for the session identifier, and including a port identifier for the port with the response to the first device; and

causing data packets of the communication session to be multiplexed over the port with data packets of a different communication session.

20. One or more computer-readable storage devices as described in claim 16 , wherein the operations further comprise, prior to communicating the response, validating that the allocation request does not exceed a cap on a number of session identifiers allocated to a particular user identifier.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 8, 2018
From: MOORE, TIMOTHY MARK; QIAN, TIN; GUNNALAN, RAJESH
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 046287/0971 →
Continuity (4)
Continuation 15061485 · Mar 4, 2016
Continuation In Part 14750802 · Jun 25, 2015
Continuation In Part 14750787 · Jun 25, 2015
Related Publication 20180309716A1 · Oct 25, 2018
Cited By (2)
US 12,206,547 US 12,659,408