IP Library Granted Patent US 12,455,749
Granted Patent B2
US 12,455,749 · App. 18/441,659 · Granted Oct 28, 2025

Selecting a media channel for transferring media data in a virtual desktop infrastructure

Inventors: Xingzhi Luo (Sunnyvale, CA); Xiaofei Wang (Hangzhou, CN); Haibing Xu (Milpitas, CA); Daoquan Ye (Hangzhou, CN)
Assignee: Zoom Communications, Inc.
G06F9/452G06F9/45558G06F11/3672H04L65/80H04L67/08G06F2009/45579G06F2009/45591
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 12,455,749
App. No.
18/441,659
Granted
Oct 28, 2025
Kind
B2
Abstract

Calls run through a virtual desktop infrastructure server are enhanced by testing communication network conditions and selecting, based on the test results, a media channel from a set of supported media channels, including a media channel that is routed through the virtual desktop infrastructure server and encapsulated in a protocol for exchanging data for virtual desktop applications and a more direct media channel that uses a network socket pair between a media server and a personal computing device and bypasses the virtual desktop infrastructure server. In some implementations, call data of multiple types and/or from multiple sources are merged into a single virtual channel of the protocol for exchanging data for virtual desktop applications.

Claims (48)

1. A method, comprising:

transmitting, using a personal computing device, a request for a call to a virtual desktop infrastructure server;

based on the request, receiving, using the personal computing device and from the virtual desktop infrastructure server, an of identifier for a media server that bypasses the virtual desktop infrastructure server via a control channel encapsulated in a protocol for virtual desktop application data exchange;

testing, using the personal computing device and based on the identifier for the media server, communications network conditions for a network socket pair connection with the media server;

selecting, using the personal computing device, a media channel based on the testing; and

transferring, using the personal computing device and the media channel, media data to enable the call.

2. The method of claim 1 , wherein receiving the of identifier for the media server that bypasses the virtual desktop infrastructure server comprises:

receiving, from the virtual desktop infrastructure server, call parameters including the identifier for the media server.

3. The method of claim 1 , wherein testing the communications network conditions for the network socket pair connection with the media server comprises:

selecting a network socket pair from designated ranges of transport layer protocol ports.

4. The method of claim 1 , wherein testing the communications network conditions for the network socket pair connection with the media server comprises:

performing a handshake test using the network socket pair connection, wherein the handshake test includes an exchange of packets.

5. The method of claim 1 , wherein the network socket pair connection is a first network socket pair connection, the method comprising:

testing communications network conditions for a second network socket pair connection with the virtual desktop infrastructure server.

6. The method of claim 1 , wherein the network socket pair connection is a first network socket pair connection, and wherein selecting the media channel based on the testing comprises:

selecting the media channel using direct connection test results obtained based on the testing of the communications network conditions for the network socket pair connection with the media server and using indirect connection test results obtained based on a testing of communications network conditions for a different network socket pair connection with the virtual desktop infrastructure server.

7. The method of claim 1 , wherein selecting the media channel based on the testing comprises:

selecting the media channel from a set of media channels based on a comparison of results of the testing against a criterion.

8. The method of claim 1 , wherein the media channel is selected using results of the testing and of a testing of communications network conditions for a different network socket pair connection with the virtual desktop infrastructure server, and wherein transferring the media data to enable the call comprises:

merging multiple streams of the media data in a single virtual channel.

9. A non-transitory computer readable medium storing instructions operable to cause one or more processors to perform operations comprising:

transmitting, using a personal computing device, a request for a call to a virtual desktop infrastructure server;

based on the request, receiving, using the personal computing device and from the virtual desktop infrastructure server, an of identifier for a media server that bypasses the virtual desktop infrastructure server via a control channel encapsulated in a protocol for virtual desktop application data exchange;

testing, using the personal computing device and based on the identifier for the media server, communications network conditions for a network socket pair connection with the media server;

selecting, using the personal computing device, a media channel based on the testing; and

transferring, using the personal computing device and the media channel, media data to enable the call.

10. The non-transitory computer readable medium of claim 9 , wherein the identifier for the media server includes one or more of an internet protocol address of the media server or an internet domain name used by the media server.

11. The non-transitory computer readable medium of claim 9 , wherein the network socket pair connection is a connection between a first network socket at the media server and a second network socket at a device that includes the one or more processors.

12. The non-transitory computer readable medium of claim 9 , wherein results of the testing include at least one of a network latency metric or a network data throughput metric.

13. The non-transitory computer readable medium of claim 9 , wherein direct test results are obtained based on the testing of the communications network conditions for the network socket pair connection with the media server, wherein indirect test results are obtained based on a testing of communications network conditions for a different network socket pair connection with the virtual desktop infrastructure server, and wherein the media channel is selected using the direct test results and the indirect test results.

14. An apparatus, comprising:

a memory; and

a processor configured to execute instructions stored in the memory to:

transmit, using a personal computing device, a request for a call to a virtual desktop infrastructure server;

based on the request, receive, using the personal computing device and from the virtual desktop infrastructure server, an identifier for a media server that bypasses the virtual desktop infrastructure server via a control channel encapsulated in a protocol for virtual desktop application data exchange;

test, using the personal computing device and based on the identifier for the media server, communications network conditions for a network socket pair connection with the media server;

select, using the personal computing device, a media channel based on the test; and

transfer, using the personal computing device and the media channel, media data to enable the call.

15. The apparatus of claim 14 , wherein, to receive the identifier for the media server that bypasses the virtual desktop infrastructure server, the processor is configured to execute the instructions to:

receive call parameters including data to identify the media server and to facilitate the call.

16. The apparatus of claim 14 , wherein a network socket pair associated with the network socket pair connection is selected from a range of transport layer protocol ports.

17. The apparatus of claim 14 , wherein the test is a handshake test performed by causing an exchange of packets using the network socket pair connection.

18. The apparatus of claim 14 , wherein the media channel is selected from a set of media channels.

19. The apparatus of claim 14 , wherein the media channel is selected using results of the testing and of a testing of communications network conditions for a different network socket pair connection with the virtual desktop infrastructure server, and wherein multiple streams of the media data are merged into a single virtual channel for the transfer of the media data.

20. The apparatus of claim 14 , wherein results of the test are direct connection test results obtained based on the network socket pair connection with the media server, wherein indirect connection test results are obtained based on a different network socket pair connection with the virtual desktop infrastructure server, and wherein, to select the media channel based on the test, the processor is configured to execute the instructions to:

select, as the media channel, a first media channel using the network socket pair connection based on the direct connection test results satisfying a criterion;

select, as the media channel, a second media channel using the different network socket pair connection based on the direct connection test results failing to satisfy the criterion and based on the indirect connection test results satisfying the criterion; and

select, as the media channel, a third media channel using the different network socket pair connection based on the direct connection test results failing to satisfy the criterion and based on the indirect connection test results failing to satisfy the criterion.

Assignments (2)
CHANGE OF NAME Recorded Jan 7, 2025
From: ZOOM VIDEO COMMUNICATIONS, INC.
To: ZOOM COMMUNICATIONS, INC.
Reel/Frame 069839/0593 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 15, 2024
From: LUO, XINGZHI; WANG, XIAOFEI; XU, HAIBING; YE, DAOQUAN
To: ZOOM VIDEO COMMUNICATIONS, INC.
Reel/Frame 066473/0007 →
Priority Claims (1)
CN 202110130171.6 · Jan 29, 2021 · national
Continuity (3)
Continuation 18311736 · May 3, 2023
Continuation 17191682 · Mar 3, 2021
Related Publication 20240184602A1 · Jun 6, 2024
References Cited (22)
US 11675610B2 · Luo et al. · 2023 [cited by applicant]
US 20030123436A1 · Joseph · 2003 [cited by examiner]
US 20070291655A1 · Moore · 2007 [cited by examiner]
US 20110096673A1 · Stevenson · 2011 [cited by examiner]
US 20120226998A1 · Friedl · 2012 [cited by examiner]
US 20130064105A1 · Huang · 2013 [cited by examiner]
US 20170171048A1 · Christmann · 2017 [cited by examiner]
US 20180309658A1 · Parla · 2018 [cited by examiner]
US 20190356701A1 · Prabhu · 2019 [cited by examiner]
US 20200033641A1 · Shim et al. · 2020 [cited by applicant]
US 20200336416A1 · Mudric · 2020 [cited by examiner]
US 20200336484A1 · Mahajan · 2020 [cited by examiner]
US 20220103597A1 · Gobena · 2022 [cited by examiner]
https://support.citrix.com/article/CTX116890, Citrix ICA Virtual Channels Overview, 7 pages, Created Aug. 15, 2014, Modified Jul. 22, 2019. [cited by applicant]
axendatacentre.com/blog/2020/04/22/zoom-hdx-offloading-for-citrix-virtual-desktops-part-1/, Leading Hybrid Workplace Transformation & Employee Experiences with Co-Innovation, Co-Collaboration, El & Empathy, Zoom A/V Off… [cited by applicant]
https://www.3cx.com/community/threads/terminal-server-rds-citrix-media-offload-for-windows-app.72355/, Terminal Server (RDS)/Citrix Media Offload for Windows App? MattBSyd, 4 pages, Apr. 9, 2020. [cited by applicant]
https://en.wikipedia.org/wiki/Independent_Computing_Architecture, Independent Computing Architecture, Wikipedia, 2 pages, Nov. 10, 2019. [cited by applicant]
Citrix Product Documentation, Optimization for Microsoft Teams, 20 pages, Dec. 16, 2020. [cited by applicant]
https://docs.microsoft.com/en-us/azure/virtual-desktop/teams-on-wvd, Use Microsoft Teams on Windows Virtual desktop, 7 pages, Nov. 10, 2020. [cited by applicant]
https://support.citrix.com/article/CTX133024, Delivering Softphones with Virtual Apps and Desktops, 12 pages, created Feb. 6, 2014, modified May 19, 2020. [cited by applicant]
https://docs.vmware.com/en/VMware-Horizon/2006/horizon-remote-desktop-features/GUID-F68FA7BB-B08F-4EFF-9BB1-1F9FC71F8214.html, Configuring Media Optimization for Microsoft Teams, Jul. 23, 2020. [cited by applicant]
https://blog.zoom.us/zoom-optimizes-meetings-for-vdi/, Zoom Optimizes Meetings for VDI, David Flores, 4 pages, Apr. 17, 2020. [cited by applicant]