Patents by Inventor Timothy Mark Moore
Timothy Mark Moore has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Publication number: 20230117444Abstract: Techniques are described for low-latency real-time streaming of media content. For example, streaming media content can be received from a media source, where the streaming media content comprises audio and/or video content. An audio/video stream can be streamed to one or more streaming clients. The audio/video stream is streamed as a sequence of encoded audio and/or video frames, which are independent encoded audio and/or video frames that are not grouped into chunks for streaming. The sequence of encoded audio and/or video frames is streamed to the one or more streaming clients as a one-way stream and without receiving any requests from the one or more streaming clients for subsequent frames or chunks.Type: ApplicationFiled: October 19, 2021Publication date: April 20, 2023Applicant: Microsoft Technology Licensing, LLCInventors: Rajesh Gunnalan, Mihhail Konovalov, Tin Qian, Timothy Mark Moore
-
Patent number: 11134023Abstract: A method for directing network traffic includes, at a network device, receiving network traffic provided by one or more client computing devices. The network device directs the network traffic to a service entity over a first network path. A path quality indicator is received that indicates whether the network traffic directed over the first network path satisfies one or more experience criteria. Based at least on the path quality indicator indicating that the network traffic directed over the first network path does not satisfy the one or more experience criteria, the network device redirects some or all of the network traffic to the service entity over a second network path.Type: GrantFiled: October 28, 2019Date of Patent: September 28, 2021Assignee: Microsoft Technology Licensing, LLCInventors: Gregory Irving Thiel, Konstantin E. Ryvkin, Timothy Mark Moore, Todd Carlyle Luttinen
-
Patent number: 11019117Abstract: In a device including a processor and a memory in communication with the processor, the memory includes executable instructions that, when executed by the processor, cause the processor to control the device to perform functions of connecting to a plurality of remote devices, using a network address and a port number that are usable for a plurality of remote devices to access the device; providing a plurality of tokens to a plurality of remote devices, respectively, each token being unique and associated with a different one of the plurality of remote devices; receiving from a first remote device, a first data packet including first media data and a first token associated with the first remote device; and identifying, based on the received first token, the first remote device as a source of the received first data packet.Type: GrantFiled: July 8, 2019Date of Patent: May 25, 2021Assignee: Microsoft Technology Licensing, LLCInventors: Tin Qian, Rajesh Gunnalan, Timothy Mark Moore
-
Publication number: 20210126870Abstract: A method for directing network traffic includes, at a network device, receiving network traffic provided by one or more client computing devices. The network device directs the network traffic to a service entity over a first network path. A path quality indicator is received that indicates whether the network traffic directed over the first network path satisfies one or more experience criteria. Based at least on the path quality indicator indicating that the network traffic directed over the first network path does not satisfy the one or more experience criteria, the network device redirects some or all of the network traffic to the service entity over a second network path.Type: ApplicationFiled: October 28, 2019Publication date: April 29, 2021Applicant: Microsoft Technology Licensing, LLCInventors: Gregory Irving THIEL, Konstantin E. RYVKIN, Timothy Mark MOORE, Todd Carlyle LUTTINEN
-
Patent number: 10992729Abstract: Techniques for endpoint configuration for a communication session are described. According to various implementations, a cloud-based connectivity service maintains network path information that identifies routing paths for routing communication sessions across different networks. The connectivity service is also able to determine configuration information for configuring endpoint devices to participate in a communication session. According to various implementations, configuration information is determined based on a packet quality of a routing path. Thus, an endpoint device can apply the configuration information to attempt to increase packet quality across a routing path, and thus increase media quality for a communication session at the endpoint device.Type: GrantFiled: April 18, 2017Date of Patent: April 27, 2021Assignee: Microsoft Technology Licensing, LLCInventors: Amer Aref Hassan, Timothy Mark Moore, Gareth L. E. Bridges, Gunter Leeb
-
Patent number: 10972510Abstract: A media session is established between a first device (e.g., endpoint) and a second device (e.g., endpoint) via a communication network based on connectivity checks performed by the devices. A set of candidate pairs, including network addresses available to the first device and the second device, is generated. Among the candidate pairs of the candidate pair set, a respective priority is initially assigned for connectivity checks. If a connectivity check modification condition is determined to be met for candidate pairs used for connectivity checks, the priority ordering of the candidate pairs is modified to produce a second priority ordering. This second priority ordering assigns a higher priority for a candidate pair which meets the connectivity check modification condition than a candidate pair that does not meet the condition. Based on the modified ordering, connectivity checks are performed, and the media session is configured and established using a candidate pair determined to be valid.Type: GrantFiled: December 12, 2018Date of Patent: April 6, 2021Assignee: Microsoft Technology Licensing, LLCInventors: Timothy Mark Moore, Tin Qian, Rajesh Gunnalan
-
Patent number: 10893076Abstract: A communication event is established between an initiating device and a responding device under the control of a remote communications controller. In a pre-session establishment phase: a compression dictionary or a dictionary link that identifies an addressable memory location, at which a compression dictionary is held, is received at the initiating device. The received compression dictionary or the received dictionary link is stored in electronic storage of the initiating device. In response to a communication event establishment instruction received at the initiating device after the dictionary or the dictionary link has been received and stored at the initiating device, a session is established between the initiating device and the communications controller by the initiating device transmitting an initial session establishment message—compressed using the dictionary—to the communications controller to establish the communication event.Type: GrantFiled: December 13, 2018Date of Patent: January 12, 2021Assignee: Microsoft Technology Licensing, LLCInventors: Uladzimir A. Skuratovich, Namendra Kumar, Andrey Belenko, Timothy Mark Moore
-
Patent number: 10862863Abstract: 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.Type: GrantFiled: June 25, 2018Date of Patent: December 8, 2020Assignee: Microsoft Technology Licensing, LLCInventors: Timothy Mark Moore, Tin Qian, Rajesh Gunnalan
-
Patent number: 10855654Abstract: 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.Type: GrantFiled: June 26, 2018Date of Patent: December 1, 2020Assignee: Microsoft Technology Licensing, LLCInventors: Timothy Mark Moore, Tin Qian, Rajesh Gunnalan
-
Patent number: 10601879Abstract: A media session is configured between a first endpoint and a second endpoint on a communication network based on connectivity checks performed by the endpoints. When a reduced connectivity check condition is met, based on characteristics of the communication network operable between the first endpoint and the second endpoint, a reduced candidate pairing procedure is initiated. The reduced candidate pairing procedure includes connectivity checks performed from the first endpoint with a reduced set of candidate pairs that is smaller than an available set of candidate pairs. The reduced set of candidate pairs is identified based on the characteristics of the communication network at the respective pairs, and a particular candidate pair in the reduced set is determined to be valid based on a result of connectivity checks using the candidate pair.Type: GrantFiled: December 4, 2018Date of Patent: March 24, 2020Assignee: Microsoft Technology Licensing, LLCInventors: Timothy Mark Moore, Tin Qian, Rajesh Gunnalan
-
Publication number: 20190334960Abstract: A conferencing server is directly accessible from the public Internet and has a host transport address, which is a combination of a public IP address on the public Internet and an associated port. It comprises conference hosting logic for hosting at least one conference, in which media data is transmitted and received via the conferencing server between participant endpoints; media processing logic configured to process received media data of the conference for transmission in the conference; multiplexing control logic configured to determine a plurality of multiplexing tokens to be used by the participant endpoints; and demultiplexing logic configured to identify received multiplexing tokens in transport layer payload data of a sequence data packets received from the participant endpoints at the host transport address, and use the multiplexing tokens identified in the transport layer payload data to demultiplex the data packets for processing by the media processing logic.Type: ApplicationFiled: July 8, 2019Publication date: October 31, 2019Applicant: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Tin Qian, Rajesh Gunnalan, Timothy Mark Moore
-
Patent number: 10432591Abstract: A communication event is established between an initiating device and a responding device under the control of a remote communications controller. In a pre-communication event establishment phase, a secure connection is established between the initiating device and the communications controller, and session key negotiation messages are exchanged between the initiating device and the communications controller via the secure connection to obtain session key data in an electronic storage location accessible to the initiating device. The secure connection terminates once the session key data has been obtained. In a subsequent communication event establishment phase—after the session key data has been obtained and the secure connection has terminated in the pre-establishment phase—a communication event request is transmitted from the initiating device to the communications controller comprising a payload encrypted with the session key data.Type: GrantFiled: October 17, 2018Date of Patent: October 1, 2019Assignee: Microsoft Technology Licensing, LLCInventors: Uladzimir A. Skuratovich, Namendra Kumar, Andrey Belenko, Timothy Mark Moore
-
Patent number: 10432590Abstract: A communication event is established between an initiating device and a responding device under the control of a remote communications controller. In a pre-communication event establishment phase, a secure connection is established between the initiating device and the communications controller, and session key negotiation messages are exchanged between the initiating device and the communications controller via the secure connection to obtain session key data in an electronic storage location accessible to the initiating device. The secure connection terminates once the session key data has been obtained. In a subsequent communication event establishment phase—after the session key data has been obtained and the secure connection has terminated in the pre-establishment phase—a communication event request is transmitted from the initiating device to the communications controller comprising a payload encrypted with the session key data.Type: GrantFiled: October 17, 2018Date of Patent: October 1, 2019Assignee: Microsoft Technology Licensing, LLCInventors: Uladzimir A. Skuratovich, Namendra Kumar, Andrey Belenko, Timothy Mark Moore
-
Patent number: 10362069Abstract: A session is established between an initiating device and a remote device. A session request is transmitted from the initiating device to the remote device according to a preferred networking protocol. If no provisional response to the request is received at the initiating device within an initial duration, the initiating device transmits another session request to the other device according to a non-preferred protocol. If a provisional response to the request is received within the initial duration, the initiating device continues to monitor the elapsed time for an so extended duration. If no final response to the request is received within the extended duration, the initiating device transmits another session request to the other device according to a non-preferred protocol. If a final response is received within the extended duration, a session between the initiating device and the other device is established according to the preferred networking protocol.Type: GrantFiled: December 3, 2015Date of Patent: July 23, 2019Assignee: Microsoft Technology Licensing, LLCInventors: Uladzimir A. Skuratovich, Namendra Kumar, Andrey Belenko, Timothy Mark Moore
-
Patent number: 10348784Abstract: A conferencing server is directly accessible from the public Internet and has a host transport address, which is a combination of a public IP address on the public Internet and an associated port. It comprises conference hosting logic for hosting at least one conference, in which media data is transmitted and received via the conferencing server between participant endpoints; media processing logic configured to process received media data of the conference for transmission in the conference; multiplexing control logic configured to determine a plurality of multiplexing tokens to be used by the participant endpoints; and demultiplexing logic configured to identify received multiplexing tokens in transport layer payload data of a sequence data packets received from the participant endpoints at the host transport address, and use the multiplexing tokens identified in the transport layer payload data to demultiplex the data packets for processing by the media processing logic.Type: GrantFiled: February 15, 2017Date of Patent: July 9, 2019Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Tin Qian, Rajesh Gunnalan, Timothy Mark Moore
-
Publication number: 20190158545Abstract: A first device is disclosed, which includes a processor and a memory in communication with the processor.Type: ApplicationFiled: January 23, 2019Publication date: May 23, 2019Applicant: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Timothy Mark Moore, Tin Qian, Rajesh Gunnalan
-
Publication number: 20190132365Abstract: A communication event is established between an initiating device and a responding device under the control of a remote communications controller. In a pre-session establishment phase: a compression dictionary or a dictionary link that identifies an addressable memory location, at which a compression dictionary is held, is received at the initiating device. The received compression dictionary or the received dictionary link is stored in electronic storage of the initiating device. In response to a communication event establishment instruction received at the initiating device after the dictionary or the dictionary link has been received and stored at the initiating device, a session is established between the initiating device and the communications controller by the initiating device transmitting an initial session establishment message—compressed using the dictionary—to the communications controller to establish the communication event.Type: ApplicationFiled: December 13, 2018Publication date: May 2, 2019Inventors: Uladzimir A. Skuratovich, Namendra Kumar, Andrey Belenko, Timothy Mark Moore
-
Publication number: 20190116208Abstract: A media session is established between a first device (e.g., endpoint) and a second device (e.g., endpoint) via a communication network based on connectivity checks performed by the devices. A set of candidate pairs, including network addresses available to the first device and the second device, is generated. Among the candidate pairs of the candidate pair set, a respective priority is initially assigned for connectivity checks. If a connectivity check modification condition is determined to be met for candidate pairs used for connectivity checks, the priority ordering of the candidate pairs is modified to produce a second priority ordering. This second priority ordering assigns a higher priority for a candidate pair which meets the connectivity check modification condition than a candidate pair that does not meet the condition. Based on the modified ordering, connectivity checks are performed, and the media session is configured and established using a candidate pair determined to be valid.Type: ApplicationFiled: December 12, 2018Publication date: April 18, 2019Inventors: Timothy Mark Moore, Tin Qian, Rajesh Gunnalan
-
Publication number: 20190109879Abstract: A media session is configured between a first endpoint and a second endpoint on a communication network based on connectivity checks performed by the endpoints. When a reduced connectivity check condition is met, based on characteristics of the communication network operable between the first endpoint and the second endpoint, a reduced candidate pairing procedure is initiated. The reduced candidate pairing procedure includes connectivity checks performed from the first endpoint with a reduced set of candidate pairs that is smaller than an available set of candidate pairs. The reduced set of candidate pairs is identified based on the characteristics of the communication network at the respective pairs, and a particular candidate pair in the reduced set is determined to be valid based on a result of connectivity checks using the candidate pair.Type: ApplicationFiled: December 4, 2018Publication date: April 11, 2019Inventors: Timothy Mark Moore, Tin Qian, Rajesh Gunnalan
-
Patent number: 10237236Abstract: A media session is established between a first endpoint and a second endpoint, by transmitting the following messages from the first endpoint in parallel: to the second endpoint, a message indicating a first server network address of a media relay server available to the first endpoint and comprising a unique session identifier; to the media relay server, an activation request comprising the unique session identifier. This activates the session identifier by causing it to be associated at the media relay server with a source address conveyed by the activation request. Once the session identifier has been activated, a media packet received from the second endpoint at the first server network address that comprises the unique session identifier is relayed from the media relay server to the source address for receiving by the first endpoint.Type: GrantFiled: March 4, 2016Date of Patent: March 19, 2019Assignee: Microsoft Technology Licensing, LLCInventors: Timothy Mark Moore, Tin Qian, Rajesh Gunnalan