# US 9,883,521 B2 · Telecommunication arrangement and procedures to establish a RTC connection between a first and second endpoint

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

- Number: US 9,883,521 B2
- Document ID: US9883521B2
- Status: Granted
- Kind: B2
- Application number: 14/960,649
- Filed: 2015-12-07
- Published: 2016-06-16
- Granted: 2018-01-30
- Earliest claimed: 2014-12-16
- Assignees: Unify GmbH & Co. KG
- Applicants: Unify GmbH & Co. KG
- Inventors: Michael Tietsch; Karl Klaghofer
- Web page: https://patentgrep.com/patent/US9883521B2

## CPC

- H04W 72/56: based on priority criteria
- H04L 61/2575: using address mapping retrieval, e.g. simple traversal of user datagram protocol through session traversal utilities for NAT [STUN]
- H04L 61/2589: over a relay server, e.g. traversal using relay for network address translation [TURN]
- H04L 65/1069: Session establishment or de-establishment
- H04L 65/80: Responding to QoS
- H04W 72/542: using measured or perceived quality
- H04L 61/2514: between local and global IP addresses
- H04W: WIRELESS COMMUNICATION NETWORKS (broadcast communication H04H; communication systems using wireless links for non-selective communication, e.g. wireless extensions H04M1/72)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A telecommunication system and a method for generating a real time connection between a first endpoint and a second endpoint in an IP network using an ICE STUN connectivity check follow a procedure that includes the steps of generating a list of possible connection paths between the first endpoint and the second endpoint, establishing a respective priority for each possible connection path included in the list, and generating the real time connection between the first endpoint and the second endpoint. During this procedure first there is an attempt to generate the real time connection using the highest-priority connection path. If this is not possible, then the system attempts to establish the real connection using the connection path with the next highest priority, until the real time connection is actually established. Furthermore, for each possible connection path, its respective quality-of-service value is determined and is considered when establishing its priority on the list.

## Claims

### Claim 1

A method for generating a real time connection in a communication system between a first endpoint and a second endpoint in a network using an Interactive Connectivity Establishment for Session Traversal Utilities for Network Address Translator (ICE STUN) connectivity check procedure that comprises:
generating a list of possible connection paths between the first endpoint and the second endpoint,
predicting a quality of service (QoS) for each and every possible connection path identified in the list,
modifying the list of possible connection paths so that a highest-priority connection path is identified as a first possible connection path in the list has a highest predicted QoS and such that possible connection paths that are predicted as providing reductions in QoS are assigned a lower priority and placed at an end of the list, and
generating the real time connection between the first endpoint and the second endpoint based on the modified list, in which:
first there is an attempt to generate the real time connection using the highest-priority connection path identified in the modified list and, if this is not possible, then there are attempts to establish the real time connection using the connection path with a next highest priority, until the real time connection is actually established.

### Claim 2 (depends on 1)

The method as in claim 1 wherein the network also contains other endpoints and the method comprises:
the first endpoint transmitting predicted QoS values for possible connection paths between the first endpoint and the second endpoint to other endpoints using STUN messages so that the QoS values can be stored by the other endpoints.

### Claim 3 (depends on 1)

The method as in claim 1 also comprising considering QoS values from previously established connections when modifying the list of possible connection paths.

### Claim 4 (depends on 1)

The method as in claim 1 comprising:
network infrastructure elements inserting QoS values into STUN connectivity check messages sent to at least one of the first endpoint and the second endpoint
wherein the predicting the QoS for each and every possible connection path identified in the list comprises using the QoS values received from the STUN connectivity check messages to predict the QoS for each possible connection path; and
wherein the modifying of the list is performed such that QoS values received from the STUN connectivity check messages are used to predict a QoS for each possible connection path for modifying the list.

### Claim 5 (depends on 4)

The method as in claim 4 wherein the network infrastructure elements are routers.

### Claim 6 (depends on 1)

The method as in claim 1 also comprising:
defining groups for predicting QoS, each group comprising a plurality of endpoints within a same subnet of the network and having a same connection path from the first endpoint to that subnet of the network, each group assigned a group QoS value that applies to each and every endpoint within the group such that each of the endpoints within the group has the group QoS value assigned as the predicted QoS for the endpoint during the predicting of the QoS for each and every possible connection path identified in the list.

### Claim 7 (depends on 6)

The method as in claim 6 wherein the group QoS value is determined from at least one of completed connections and existing connections.

### Claim 8 (depends on 1)

The method as in claim 1 wherein a central point of the network is selected to deliver the QoS values to a controlling endpoint for use in modifying the list.

### Claim 9 (depends on 8)

The method of claim 8 where the central point is a gateway, a session-border controller or a media server.

### Claim 10 (depends on 1)

The method as in claim 1 comprising:
determining predicted QoS values for the possible connection paths and storing the predicted QoS values in a central instance to make the determined predicted QoS values accessible to all endpoints of the network.

### Claim 11 (depends on 1)

The method of claim 1, wherein the modifying of the list comprises determining that possible connection paths of the list are predicted as providing reductions in QoS such that these possible connection paths are assigned a lower priority and placed at an end of the list in response to determining that the possible connection paths are predicted as providing a reduction in quality from a pre-selected QoS level and/or are predicted as being unable to provide the pre-selected QoS level.

### Claim 12

A non-transitory computer readable storage media containing instructions that are executable by at least one of an endpoint and a router in a communications network using an Interactive Connectivity Establishment for Session Traversal Utilities for Network Address Translator (ICE STUN) connectivity check procedure, which when implemented result in the endpoint or router performing a method comprising:
generating a list of possible connection paths between the first endpoint and the second endpoint,
predicting a quality of service (QoS) for each and every possible connection path identified in the list,
modifying the list of possible connection paths so that a highest-priority connection path is identified as a first possible connection path in the list and has a predicted highest QoS and such that possible connection paths that are predicted as providing reductions in QoS are assigned a lower priority and placed at an end of the list, and
generating the real time connection between the first endpoint and the second endpoint based on the modified list, in which:
first there is an attempt to generate the real time connection using the highest-priority connection path identified in the modified list and if this is not possible, then there are attempts to establish the real connection using the connection path with the next highest priority, until the real time connection is actually established.

### Claim 13

A telecommunication system for generating a real time connection between a first endpoint and a second endpoint in a network using an Interactive Connectivity Establishment for Session Traversal Utilities for Network Address Translator (ICE STUN) connectivity check procedure, the telecommunications system comprising:
a first endpoint,
a second endpoint, and
a network, through which the first endpoint and the second endpoint are connected to each other,
wherein the first and second endpoints are configured to make them suitable for:
generating a list of possible connection paths between the first endpoint and the second endpoint,
predicting a quality of service (QoS) for each and every possible connection path identified in the list,
modifying the list of possible connection paths so that a highest-priority connection path is identified as a first possible connection path in the list has a highest predicted QoS and such that possible connection paths that are predicted as providing reductions in QoS are assigned a lower priority and placed at an end of the list, and
generating the real time connection between the first endpoint and the second endpoint based on the modified list, in which:
first there is an attempt to generate the real time connection using a highest-priority connection path identified in the modified list and if this is not possible, then there are attempts to establish the real connection using the connection path with the next highest priority, until the real time connection is actually established.

### Claim 14 (depends on 13)

The system of claim 13, comprising:
network infrastructure elements within the network, each of the network infrastructure elements configured to insert QoS values into STUN connectivity check messages sent to at least one of the first endpoint and the second endpoint;
wherein the predicting the QoS for each and every possible connection path identified in the list comprises using the QoS values received from the STUN connectivity check messages to predict the QoS for each possible connection path; and
wherein the modifying of the list is performed such that QoS values received from the STUN connectivity check messages are used to predict a QoS for each possible connection path for modifying the list.

### Claim 15 (depends on 14)

The system of claim 14 wherein the network infrastructure elements are routers.

### Claim 16 (depends on 14)

The system of claim 14 wherein the network infrastructure elements are comprised of routers.

### Claim 17 (depends on 13)

The system of claim 13 wherein the first endpoint is configured to define groups for predicting QoS, each group comprising a plurality of endpoints within a same subnet of the network and having a same connection path from the first endpoint to that subnet of the network, each group assigned a group QoS value that applies to each and every endpoint within the group such that each of the endpoints within the group has the group QoS value assigned as the predicted QoS for the endpoint during the predicting of the QoS for each and every possible connection path identified in the list.

### Claim 18 (depends on 13)

The system of claim 13 wherein the second endpoint is configured to define groups for predicting QoS, each group comprising a plurality of endpoints within a same subnet of the network and having a same connection path from the second endpoint to that subnet of the network, each group assigned a group QoS value that applies to each and every endpoint within the group such that each of the endpoints within the group has the group QoS value assigned as the predicted QoS for the endpoint during the predicting of the QoS for each and every possible connection path identified in the list.

### Claim 19 (depends on 18)

The system of claim 18 wherein the first endpoint is configured to define groups for predicting QoS, each group comprising a plurality of endpoints within a same subnet of the network and having a same connection path from the first endpoint to that subnet of the network, each group assigned a group QoS value that applies to each and every endpoint within the group such that each of the endpoints within the group has the group QoS value assigned as the predicted QoS for the endpoint during the predicting of the QoS for each and every possible connection path identified in the list.

### Claim 20 (depends on 18)

The system of claim 18, wherein the modifying of the list comprises determining that possible connection paths of the list are predicted as providing reductions in QoS such that these possible connection paths are assigned a lower priority and placed at an end of the list when the possible connection paths are predicted as providing a reduction in quality from a pre-selected QoS level and/or are predicted as being unable to provide the pre-selected QoS level.
