Web-Based KVM Redirection Using BMC and Web Sockets
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current KVM redirection technologies lack efficiency and control in providing a web-based keyboard, video, and mouse redirection between a host computer and a computing device, particularly in managing video frames and input events across networks.
Innovation Solution
A method and system utilizing a Baseboard Management Controller (BMC) to receive and process video frames, establish Web Socket connections, and send processed images and input data between a host computer and a computing device, enabling efficient web-based KVM redirection through HTML5 canvas and JavaScript routines for dynamic image rendering and event handling.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If traditional KVM redirection methods are used, then basic remote access is achieved, but efficiency and control in managing video frames and input events across networks are insufficient
Solution Approach 1:
The patent segments the video frame transmission by dividing frames into multiple tiles and selectively transmitting only changed tiles through Web Sockets, rather than transmitting entire frames or using traditional protocols. This segmentation improves transmission efficiency while reducing network bandwidth consumption.
Solution Approach 2:
The patent changes the communication parameter from traditional HTTP-based KVM protocols to Web Socket connections, enabling full-duplex real-time communication. This parameter change allows for more efficient event-driven architecture where input events and video updates are transmitted only when changes occur, improving overall system efficiency.
2Ease of operation
If web-based KVM redirection is implemented, then accessibility is improved, but real-time performance and control responsiveness may deteriorate
Solution Approach 1:
The patent establishes persistent Web Socket connections that maintain continuous bidirectional communication channels between the browser and server. This continuous connection eliminates the need for repeated HTTP request-response cycles, enabling real-time transmission of input events and video updates while maintaining web-based accessibility through standard browser JavaScript interfaces.
Solution Approach 2:
The patent replaces traditional mechanical KVM switching protocols with software-based Web Socket communication and HTML5 canvas rendering. This substitution leverages modern web technologies to achieve real-time performance through event-driven architecture, where the browser's JavaScript engine handles input events and the canvas API provides efficient image rendering and composition.
3Reliability
If full video frames are transmitted continuously, then image quality is maintained, but network bandwidth consumption increases
Solution Approach 1:
The patent extracts and transmits only the changed portions of video frames (specific tiles) rather than transmitting entire frames continuously. By identifying and extracting only the modified tile regions, the system maintains image quality where changes occur while significantly reducing network bandwidth consumption during static or minimally changing display states.
Solution Approach 2:
The patent implements periodic comparison of video frames to detect changes, transmitting updates only when differences are detected between consecutive frames. This periodic action maintains image quality by ensuring updates are transmitted when needed, while reducing network bandwidth usage by avoiding redundant transmissions of unchanged content.
Data Source
Figure 1
Figure 2
Figure 3A~3B
AI summary
Certain aspects of the present disclosure are directed to a method of performing web-based keyboard, video and mouse (KVM) redirection implemented by a baseboard management controller (BMC). The method includes: (a) receiving, at a BMC, first and second video frames redirected from a host computer, the BMC performing a management function of the host computer, (b) generating a webpage at a web server of the BMC and sending the webpage to a browser program running on a computing device in a network, the webpage being programmed to instruct the browser program to initiate a drawable area and to establish a Web Socket connection with the web server, (c) generating a processed image representing the second video frame, (d) establishing a Web Socket connection between the web server and the browser program, and (e) sending the processed image to the browser program through the Web Socket connection.