IP Library Granted Patent US 10,079,722
Granted Patent B2
US 10,079,722 · App. 15/411,193 · Granted Sep 18, 2018

Stream creation with limited topology information

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,079,722
App. No.
15/411,193
Granted
Sep 18, 2018
Kind
B2
Abstract

The discovery of a topology of a network with an unknown topology can enable the selection of a data path within the network, and the establishment of a data stream over the selected data path. Routing tables mapping originating nodes to input ports can be created based on the receipt of discovery messages generated by the originating nodes. A source node can select a data path between the source node and a sink node in order to establish a data stream using the routing tables. Data paths can be selected based on, for instance, routing table bandwidth information, latency information, and/or distance information. Data streams can be established over the selected data path, and each node can release any reserved output bandwidth determined to be unnecessary for the data stream.

Claims (61)

1. A method comprising:

receiving, at an intermediary node comprising electronic circuitry in a data path from a first node, a request to establish a data stream;

outputting, by the intermediary node to a second node, the request to establish the data stream;

receiving, by the intermediary node from the second node, a list of formats compatible with the second node;

generating an updated list of formats by:

removing formats from the received list of formats with which the intermediary node is not compatible; and

adding one or more additional formats to the list, each additional format comprising a format which the intermediary node can transcode into one or more of the formats within received the list of formats;

providing the updated list of formats to the first node; and

receiving confirmation of a selected format from the first node, the selected format selected by node upstream from the intermediary node within the data path based on an initial format selected by a source node of the data path and comprising a format from the updated list of formats, the upstream node configured to transcode data in the initial format to data in the selected format.

2. The method of claim 1 , wherein the source node receives the updated list of formats.

3. The method of claim 1 , wherein the source node receives a list of formats generated by a node between the source node and the first node based at least in part on the updated list of formats.

4. The method of claim 1 , further comprising:

in response to the selected format comprising a format on the received list of formats, providing the received confirmation of the selected format to the second node; and

in response to the selected format comprising a format on the updated list of formats but not the received list of formats:

selecting an updated format, the updated format comprising a format into which the intermediary node can transcode the selected format; and

providing an updated confirmation to the second node, the updated confirmation comprising the updated format.

5. The method of claim 1 , further comprising:

receiving data stream data from the first node in the selected format;

in response to the selected format comprising a format on the received list of formats, outputting the received data to the second node; and

in response to the selected format comprising a format on the updated list of formats but not the received list of formats:

transcoding the received data into an updated format, the updated format comprising a format on the received list of formats; and

providing the transcoded data to the second node.

6. A system comprising:

an intermediary node comprising electronic circuitry within a data path, the intermediary node configured to communicate with a first node and a second node in the data path, the intermediary node configured to perform steps comprising:

receiving, from the first node, a request to establish a data stream;

outputting, to the second node, the request to establish the data stream;

receiving, from the second node, a list of formats compatible with the second node;

generating an updated list of formats by:

removing formats from the received list of formats with which the intermediary node is not compatible; and

adding one or more additional formats to the list, each additional format comprising a format which the intermediary node can transcode into one or more of the formats within received the list of formats;

providing the updated list of formats to the first node; and

receiving confirmation of a selected format from the first node, the selected format selected by node upstream from the intermediary node within the data path based on an initial format selected by a source node of the data path and comprising a format from the updated list of formats, the upstream node configured to transcode data in the initial format to data in the selected format.

7. The system of claim 6 , wherein the source node receives the updated list of formats.

8. The system of claim 6 , wherein the source node receives a list of formats generated by a node between the source node and the first node based at least in part on the updated list of formats.

9. The system of claim 6 , the intermediary node configured to perform further steps comprising:

in response to the selected format comprising a format on the received list of formats, providing the received confirmation of the selected format to the second node; and

in response to the selected format comprising a format on the updated list of formats but not the received list of formats:

selecting an updated format, the updated format comprising a format into which the intermediary node can transcode the selected format; and

providing an updated confirmation to the second node, the updated confirmation comprising the updated format.

10. The system of claim 6 , the intermediary node configured to perform further steps comprising:

receiving data stream data from the first node in the selected format;

in response to the selected format comprising a format on the received list of formats, outputting the received data to the second node; and

in response to the selected format comprising a format on the updated list of formats but not the received list of formats:

transcoding the received data into an updated format, the updated format comprising a format on the received list of formats; and

providing the transcoded data to the second node.

11. A non-transitory computer-readable storage medium storing executable computer instructions configured to, when executed by electronic circuitry of an intermediary node within a data path, cause the intermediary node to perform steps comprising:

receiving, from a first node, a request to establish a data stream;

outputting, to a second node, the request to establish the data stream;

receiving, from the second node, a list of formats compatible with the second node;

generating an updated list of formats by:

removing formats from the received list of formats with which the intermediary node is not compatible; and

adding one or more additional formats to the list, each additional format comprising a format which the intermediary node can transcode into one or more of the formats within received the list of formats;

providing the updated list of formats to the first node; and

receiving confirmation of a selected format from the first node, the selected format selected by node upstream from the intermediary node within the data path based on an initial format selected by a source node of the data path and comprising a format from the updated list of formats, the upstream node configured to transcode data in the initial format to data in the selected format.

12. The non-transitory computer-readable storage medium of claim 11 , wherein the source node receives the updated list of formats.

13. The non-transitory computer-readable storage medium of claim 11 , wherein the source node receives a list of formats generated by a node between the source node and the first node based at least in part on the updated list of formats.

14. The non-transitory computer-readable storage medium of claim 11 , the instructions configured to cause the intermediary node to perform further steps comprising:

in response to the selected format comprising a format on the received list of formats, providing the received confirmation of the selected format to the second node; and

in response to the selected format comprising a format on the updated list of formats but not the received list of formats:

selecting an updated format, the updated format comprising a format into which the intermediary node can transcode the selected format; and

providing an updated confirmation to the second node, the updated confirmation comprising the updated format.

Assignments (3)
SECURITY INTEREST Recorded May 21, 2019
From: LATTICE SEMICONDUCTOR CORPORATION
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS ADMINISTRATIVE AGENT
Reel/Frame 049980/0786 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 24, 2017
From: SMITH, TALIAFERRO; YARYGIN, SERGEY
To: SILICON IMAGE, INC.
Reel/Frame 041069/0096 →
MERGER Recorded Jan 24, 2017
From: SILICON IMAGE, INC.
To: LATTICE SEMICONDUCTOR CORPORATION
Reel/Frame 041069/0099 →