CN111818085B - Graphic display system, processing display method, server and client of Ethernet - Google Patents

Graphic display system, processing display method, server and client of Ethernet Download PDF

Info

Publication number
CN111818085B
CN111818085B CN202010723017.5A CN202010723017A CN111818085B CN 111818085 B CN111818085 B CN 111818085B CN 202010723017 A CN202010723017 A CN 202010723017A CN 111818085 B CN111818085 B CN 111818085B
Authority
CN
China
Prior art keywords
client
server
logic
layer
screen
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010723017.5A
Other languages
Chinese (zh)
Other versions
CN111818085A (en
Inventor
刘建华
孙敬越
仇德硕
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangzhou Caiyi Light Co Ltd
Original Assignee
Guangzhou Caiyi Light Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Guangzhou Caiyi Light Co Ltd filed Critical Guangzhou Caiyi Light Co Ltd
Priority to CN202010723017.5A priority Critical patent/CN111818085B/en
Publication of CN111818085A publication Critical patent/CN111818085A/en
Application granted granted Critical
Publication of CN111818085B publication Critical patent/CN111818085B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching

Abstract

The invention provides a graphic display system, a processing display method, a server and a client of an Ethernet, wherein the graphic display system of the Ethernet comprises the following components: a server and a client; the server is used for determining a to-be-sent graph drawing instruction corresponding to the display content; the client is used for acquiring the graph drawing instruction so as to determine drawing logic in the graph drawing instruction; drawing the display content corresponding to the graphic drawing instruction according to the drawing logic in combination with the drawing period; the drawing period refers to the time taken for the graphic to draw one frame. The invention transmits the graph drawing instruction through the application program used across the operating system and the network, thereby reducing the data transmission quantity between the server and the client.

Description

Graphic display system, processing display method, server and client of Ethernet
Technical Field
The invention belongs to the technical field of graphic display, relates to a graphic display method based on an Ethernet, and particularly relates to a graphic display system, a processing display method, a server side and a client side of the Ethernet.
Background
At present, in a large-scale software system, a video output interface of a mainboard is not enough, and the effect of expanding the video output interface on software can be achieved by constructing a specific graphic adaptation layer broadcast network.
On the other hand, with the development of information technology, the interaction forms between users are also various, wherein remote assistance mainly based on remote desktop display brings great convenience to users, but the remote desktop data volume is large, and the interaction delay of running 3D software is large. The XorgServer has a large number of computer defects displayed locally by running an application program through a network, and the displayed content has larger limitation, which is not beneficial to flexible and humanized customization, wherein the XorgServer is a driving architecture layer of a set of display, input, output and other devices in a Linux desktop system.
Therefore, how to provide a graphic display system, a processing display method, a server and a client of an ethernet network to solve the defects that the graphic display cannot be efficiently and flexibly performed on a display device in the prior art becomes a technical problem to be urgently solved by those skilled in the art.
Disclosure of Invention
In view of the above drawbacks of the prior art, an object of the present invention is to provide an ethernet graphics display system, a processing and displaying method, a server, and a client, which are used to solve the problem that the prior art cannot efficiently and flexibly display graphics on a display device.
To achieve the above and other related objects, an aspect of the present invention provides an ethernet graphic display system, comprising: a server and a client; the server is used for determining a to-be-sent graph drawing instruction corresponding to the display content; judging whether a logic screen matched with the graph drawing instruction exists or not; the logic screen is a graphical interface to be displayed; if yes, making the logic screen into a protocol packet, and sending the protocol packet to the client; if not, judging that the client has no display request; the client is used for receiving the protocol packet sent by the server; unpacking the protocol packet to obtain a data packet, and acquiring a graph drawing instruction in the data packet to determine a drawing logic in the graph drawing instruction; drawing the display content corresponding to the graphic drawing instruction according to the drawing logic in combination with the drawing period; the drawing period refers to the time taken for the graphics to draw one frame.
The invention provides a graphic processing method of an Ethernet, which is applied to a server side, and comprises the following steps: determining a graph drawing instruction to be sent corresponding to the display content; judging whether a logic screen matched with the graph drawing instruction exists or not; the logic screen is a graphical interface to be displayed; if so, making the logic screen into a protocol packet, and sending the protocol packet to a client; if not, judging that the client has no display request.
In an embodiment of the present invention, the server includes: the system comprises a server side graph drawing layer, a server side buffer queue layer, a server side logic screen layer, a server side network logic layer and a server side network transmission layer.
In an embodiment of the present invention, the server graphics rendering layer transmits the peripheral event and the graphics rendering instruction to the server buffer queue layer; establishing a relation between a physical screen and a logical screen and managing a relation between a physical screen request and the logical screen of the client through the server logical screen layer; monitoring and processing the affairs of the server and the client through the network logic layer of the server, packing a network protocol of a graph adaptation system in the graph drawing layer of the server, and managing a routing logic screen and a protocol object; and providing a uniform transmission interface through the network transmission layer of the server.
In an embodiment of the present invention, the managing a relationship between the physical screen request and the logical screen of the client includes: judging whether the graphic drawing instruction needs to be broadcast to a network or not, determining the network topology of the physical screen and the logic screen, recovering an idle logic screen overtime and judging whether to refresh and redraw or not.
In another aspect, the present invention provides a server, including: a processor and a memory; the memory is used for storing computer programs, and the processor is used for executing the computer programs stored in the memory, so that the server executes the graphics processing method of the Ethernet.
The invention also provides a graphic display method of the Ethernet, which is applied to a client, and comprises the following steps: receiving a protocol packet sent by a server; unpacking the protocol packet to obtain a data packet, and acquiring a graph drawing instruction in the data packet to determine a drawing logic in the graph drawing instruction; drawing the display content corresponding to the graphic drawing instruction according to the drawing logic in combination with the drawing period; the drawing period refers to the time taken for the graphic to draw one frame.
Yet another aspect of the present invention provides that the client includes: the system comprises a client graphic drawing layer, a client buffer queue layer, a client logic screen layer, a client network logic layer and a client network transmission layer.
In an embodiment of the present invention, the step of drawing, according to the drawing logic, the display content corresponding to the graphic drawing instruction in combination with the drawing cycle includes: when the drawing period is in, dequeuing the unpacked data packet cached by the client buffer queue layer, and checking the type of the data packet; if the type of the data packet is the type of the graphic equipment, correspondingly creating a logic graphic equipment and a frame buffer; if the type of the data packet is a type other than the type of the graphic equipment, finding out a corresponding frame buffer according to the handle field, and applying the graphic drawing instruction to the frame buffer.
A final aspect of the present invention provides a client, including: a processor and a memory; the memory is used for storing computer programs, and the processor is used for executing the computer programs stored by the memory so as to enable the client to execute the graphical display method of the Ethernet.
As described above, the graphic display system, the processing display method, the server and the client of the ethernet network according to the present invention have the following advantages:
the instruction level broadcast of the graphic adaptation layer is realized, the content of the application program is displayed by transmitting the graphic drawing instruction of the display card to another computer in the network, and the transmission content occupies less memory in a target machine and has higher efficiency because the transmitted instruction is not picture data. In addition, the invention is beneficial to realizing more customized functions, such as replacing the user interface as the user interface of the target machine, and utilizing the development library of the target machine to identify the system type of the target machine so as to customize the display
Compared with the prior art, the invention realizes the transmission of the graphic drawing instruction and the granularity of the application program level. On one hand, the graphic drawing instruction refers to a drawing primitive at a display card level, but not to pixels of a display memory after imaging; on the other hand, the invention transmits the graphic drawing instruction corresponding to a certain program (for example, only sends a WeChat client) instead of the whole desktop, so the granularity is at the application level, and the controllability and the customizable degree are higher; for comparison, for example, in a remote desktop, the prior art sends pixels of the whole desktop, the data size is large, and customization at an application program level cannot be achieved; for example, in a simple example, such as drawing a square button, the application can draw only knowing the coordinates and color of 4 points, rather than transmitting a jpeg image of the entire square. For example, if a plurality of wallpaper of the desktop (similar to the plurality of logical screens of the present invention) and the opposite party has the wallpaper, the present invention only transmits the id number of the wallpaper, and does not need to transmit the picture content of the wallpaper. In addition, the invention realizes loose coupling among software modules through heartbeat packets and UDP broadcasting, and has higher graphic display efficiency compared with the XorgServer in the prior art which uses TCP connection. And Xorg is biased to the bottom layer, which is based on the display of window elements, the invention is biased to the application layer, for example, the display of a certain functional window can be controlled.
Drawings
Fig. 1 is a schematic flow chart illustrating a graphics processing method for ethernet according to an embodiment of the present invention.
Fig. 2 is a schematic flow chart illustrating a graphical display method of ethernet according to an embodiment of the present invention.
Fig. 3 is a schematic structural diagram of an ethernet graphics display system according to an embodiment of the present invention.
FIG. 4 is a network program diagram of an Ethernet graphics display system according to an embodiment of the invention.
Fig. 5 is a flow chart illustrating a chinese font rendering process of an ethernet graphics display system according to an embodiment of the present invention.
FIG. 6 is a drawing flowchart illustrating an Ethernet graphics display system according to an embodiment of the invention.
Description of the element reference numerals
1. Service terminal
2. Client terminal
S11 to S13
S21 to S23
Detailed Description
The embodiments of the present invention are described below with reference to specific embodiments, and other advantages and effects of the present invention will be easily understood by those skilled in the art from the disclosure of the present specification. The invention is capable of other and different embodiments and of being practiced or of being carried out in various ways, and its several details are capable of modification in various respects, all without departing from the spirit and scope of the present invention. It is to be noted that the features in the following embodiments and examples may be combined with each other without conflict.
It should be noted that the drawings provided in the following embodiments are only for illustrating the basic idea of the present invention, and the components related to the present invention are only shown in the drawings rather than drawn according to the number, shape and size of the components in actual implementation, and the type, quantity and proportion of the components in actual implementation may be changed freely, and the layout of the components may be more complicated.
The graphic display system, the processing display method, the server and the client of the Ethernet can transmit the graphic drawing instruction through the application program used across the operating system and the network, thereby reducing the data transmission quantity between the server and the client.
The server and client are collectively referred to as a hardware device, which may be, for example, a computer including components such as memory, a memory controller, one or more processing units (CPUs), peripheral interfaces, RF circuits, audio circuits, speakers, microphones, input/output (I/O) subsystems, a display screen, other output or control devices, and external ports. The server side can be arranged on one or more entity servers according to various factors such as functions, loads and the like, and can also be formed by distributed or centralized server clusters; the client includes but is not limited to a Personal computer such as a desktop computer, a notebook computer, a tablet computer, a smart phone, a smart television, a Personal Digital Assistant (PDA for short), and the like, and may also be an intelligent wearable device such as a driving computer or smart glasses, a smart watch, and the like.
The principles and implementations of the ethernet graphic display system, the processing display method, the server, and the client according to the present embodiment will be described in detail below with reference to fig. 1 to 6, so that those skilled in the art can understand the ethernet graphic display system, the processing display method, the server, and the client without creative work.
Please refer to fig. 1, which is a schematic flowchart illustrating a graphics processing method for ethernet according to an embodiment of the present invention. As shown in fig. 1, the method for processing graphics of ethernet is applied to a server, and specifically includes the following steps:
and S11, determining a graph drawing instruction to be sent corresponding to the display content.
The graphic drawing instruction is a drawing primitive of the bottom layer display card, and is not a drawing logic set provided by the interface library. For example, the Android interface library is different from the Linux interface library, and a program written by a developer based on the interface library programming cannot be directly run and used in another operating system. However, the underlying graphics drawing instructions are the same in Android and Linux. The drawing instruction of the bottom layer display card is drawn, and the same application program can be run on the two operating systems.
S12, judging whether a logic screen matched with the graph drawing instruction exists or not; the logical screen refers to a graphical interface to be displayed.
S13, if yes, making the logic screen into a protocol packet, and sending the protocol packet to a client; if not, judging that the client has no display request. It should be noted that the client is a generalized client, and may be the server itself, and after receiving the protocol packet, performs the graph drawing on the screen of the server itself according to the graph drawing instruction; or other devices besides the server.
In this embodiment, the server includes: the system comprises a server side graph drawing layer, a server side buffer queue layer, a server side logic screen layer, a server side network logic layer and a server side network transmission layer.
And transmitting the peripheral event and the graph drawing instruction to the server buffer queue layer through the server graph drawing layer.
And establishing a relation between a physical screen and a logical screen and managing a relation between a physical screen request of the client and the logical screen through the logical screen layer of the server.
Wherein the managing a relationship between a physical screen request and a logical screen of the client comprises:
judging whether the graphic drawing instruction needs to be broadcast to a network or not, determining the network topology of the physical screen and the logic screen, recovering an idle logic screen overtime and judging whether to refresh and redraw or not.
And monitoring and processing the affairs of the server and the client through the network logic layer of the server, packaging the network protocol of the graph adaptation system in the graph drawing layer of the server, and managing a routing logic screen and a protocol object.
And providing a uniform transmission interface through the network transmission layer of the server.
The protection scope of the ethernet graphics processing method according to the present invention is not limited to the execution sequence of the steps illustrated in this embodiment, and all the schemes of adding, subtracting, and replacing steps in the prior art according to the principles of the present invention are included in the protection scope of the present invention.
The server of the invention comprises: a processor and a memory.
The memory is used for storing computer programs, and the processor is used for executing the computer programs stored by the memory, so that the server executes the graphics processing method of the Ethernet.
Please refer to fig. 2, which is a schematic flowchart illustrating a method for displaying graphics of an ethernet network according to an embodiment of the present invention. As shown in fig. 2, the method for displaying graphics of ethernet specifically includes the following steps:
and S21, receiving the protocol packet sent by the server.
S22, unpacking the protocol packet to obtain a data packet, and acquiring a graph drawing instruction in the data packet to determine a drawing logic in the graph drawing instruction.
S23, combining a drawing cycle, and drawing the display content corresponding to the graphic drawing instruction according to the drawing logic; the drawing period refers to the time taken for the graphic to draw one frame.
In the present embodiment, S23 includes:
(1) And when the drawing period is reached, dequeuing the unpacked data packet cached by the client buffer queue layer, and checking the type of the data packet.
(2) And if the type of the data packet is the type of the graphic equipment, correspondingly creating a logic graphic equipment and a frame buffer.
(3) If the type of the data packet is a type other than the type of the graphic equipment, finding out a corresponding frame buffer according to the handle field, and applying the graphic drawing instruction to the frame buffer.
In this embodiment, the client includes: the system comprises a client side graph drawing layer, a client side buffer queue layer, a client side logic screen layer, a client side network logic layer and a client side network transmission layer.
The graphics rendering instructions transmitted by the server side graphics rendering layer and the client side graphics rendering layer are rendering instructions of a display card, such as graphics rendering APIs of OpenGL, and the display of the application program on the screen is rendered by OpenGL instructions.
The protection scope of the ethernet graphic display method according to the present invention is not limited to the execution sequence of the steps illustrated in this embodiment, and all the schemes of adding, subtracting, and replacing steps in the prior art according to the principles of the present invention are included in the protection scope of the present invention.
The client of the invention comprises: a processor and a memory.
The memory is used for storing computer programs, and the processor is used for executing the computer programs stored by the memory so as to enable the client to execute the graphical display method of the Ethernet.
Please refer to fig. 3, which is a schematic structural diagram of an ethernet graphic display system according to an embodiment of the present invention. As shown in fig. 3, the graphic display system of the ethernet network includes a server 1 and a client 2. And the server 1 sends the graphic drawing instruction to the client 2.
The server 1 is specifically configured to determine a to-be-sent graph drawing instruction corresponding to display content; judging whether a logic screen matched with the graph drawing instruction exists or not; the logic screen is a graphical interface to be displayed; if so, making the logic screen into a protocol packet, and sending the protocol packet to the client; if not, judging that the client has no display request.
The client 2 is specifically configured to receive a protocol packet sent by the server; unpacking the protocol packet to obtain a data packet, and acquiring a graph drawing instruction in the data packet to determine a drawing logic in the graph drawing instruction; drawing the display content corresponding to the graphic drawing instruction according to the drawing logic in combination with the drawing period; the drawing period refers to the time taken for the graphic to draw one frame.
Please refer to fig. 4, which is a network program diagram of an ethernet graphics display system according to an embodiment of the present invention. As shown in fig. 4, the server graphics rendering layer and the client graphics rendering layer both include a graphics adaptation layer, and the graphics adaptation layer can receive and recognize rendering commands of all systems. For example, a 3D drawing instruction of a Windows operating system, an OpenGL drawing instruction in a Linux system, or a drawing instruction of a Mac OS system. In fig. 4, each hierarchical path between the server and the client is U-shaped, that is, a server graph rendering layer-a server buffer queue layer-a server logical screen layer-a server network logical layer-a server network transport layer-a client network logical layer-a client logical screen layer-a client buffer queue layer-a client graph rendering layer. The specific interaction process is as follows:
the server side graph drawing layer is used for transmitting a graph drawing instruction and a peripheral event to the server side buffer queue layer. GPX is an abbreviation of Graphics, a logical interface drawn graphically. For the server side, generating a graphic drawing instruction and adding the graphic drawing instruction to a buffer queue of a corresponding logic screen; for the client, the corresponding graphic drawing instruction is drawn on the physical screen through the corresponding graphic drawing instruction.
And the server logical screen layer is used for establishing the relationship between the physical screen and the logical screen (the DisplayID and the logical screen display size Dimension of the logical screen), and managing the relationship between the client screen request and the logical screen after receiving the data packets (GPXQueue and EventQueue) of the server buffer queue layer. Judging whether a graphic drawing instruction needs to be broadcasted to a network, the network topologies (one-to-one, many-to-one or one-to-many) of a physical screen and a logical screen, recovering an idle logical screen (timeout) overtime, judging whether to refresh the logical management of a screen object such as redrawing (markRedrawSequence) and the like.
The meaning represented by the server side logic screen layer code is as follows:
DisplayID-the ID corresponding to each logical screen, used for identification of different logical screens;
dimension — the size of each logical screen when stored in memory;
GPXQueue-a queue of graphics drawing instructions;
EventQueue-a queue of peripheral events; the peripheral event is from event information sent by a client or a peripheral event generated by clicking and inputting on a screen of a server by a user, and then, graph drawing is carried out on the screen of the server. It should be noted that the server may have a screen; or the system can be used as a console without a screen and provides services of a logic screen for other connected clients.
markRedrawSequence-judging whether to refresh redraws or not;
timeout — retrieve idle logical screen timeout;
display { } [ ] — represents a plurality of logical screens.
The server network logic layer is used for monitoring and processing the affairs between the server and the client, packing the network protocol of the graphic adaptation system, managing and routing logic screens and protocol objects.
The meaning represented by the service end network logic layer code is as follows:
connect () -informing other clients that there is a port of the server side available for connection and obtaining the logical screen;
send () -based on data and instruction information contained in GPXQueue or EventQueue transmitted from the server logic screen layer, packaging and transmitting the data and instruction information to the server network transmission layer;
recv () -unpacking and logically identifying the peripheral event information contained in the packet goepack transmitted from the network transmission layer of the server, respectively placing the identified data at corresponding queue positions, specifically, placing the unpacked result of the packet goepack as a data packet into a goepackqueue queue, and then transferring the data packet from the goepackqueue queue to the corresponding queue position; here, the peripheral event is placed in the EventQueue queue as an example.
Socket [ ] — encapsulating the transmission interface, wherein different protocol types (TCP or UDP) correspond to different sockets;
display [ ] — a data structure representation of multiple logical screens. The Display class contains status records (Client [ ]) of a plurality of clients currently using the logical screen. One client can be connected with one or more logic screens;
profile-represents the identity of the server's machine; wherein the Profile function is specifically:
Profile{
Display{
markredawsequence; whether the machine is refreshing and redrawing the logical screen connected with the client
A timestamp; if the machine is connected overtime when providing logical screen to client, it has dropped
H [ ]; // operating states of a plurality of logical screens of the machine
HWGroupID; identification code of the machine
Dimension; // the size of the screen of the machine
IP; // IP Address of the machine
Type; // the type of the machine as console
}
The server network transmission layer is used for hiding the complexity and diversity of the transmission of the underlying network and providing a uniform and simple transmission interface. Whether the network is a 5G network, a local area network or a remote management network, whether the network is a TCP or a UDP, how to process packet loss and retransmission by the UDP, and the identification and processing processes of a layer above a network transmission layer and the like are finished in the layer. Different networks have different services and logic to handle at the transport layer of the server network.
The server network transmission layer is correspondingly connected with the client network transmission layer, and the meaning represented by the server network transmission layer or the client network transmission layer code is as follows:
handle-after the logical screen file is bound with the handle, the handle provides an ID of an entry;
type — means determining the protocol type of the network transport, such as TCP or UDP, or other types of protocols;
connect () -representing the connection state of both the server and the client on the physical layer;
sendGOEPacket () -representing that the server sends a binary data packet (protocol packet) of a packed graphics rendering conference instruction to the client or the client sends a binary data packet (protocol packet) of a packed peripheral event to the server;
sendHeartbeat (Profile) -indicating that the server or the client sends a heartbeat packet to inform the state of the other local machine; wherein, the content of the heartbeat packet is the content in the Profile function;
recv (GOEPacket [ ]) -a binary data packet representing that the client receives a packaged graphics drawing meeting instruction or a binary data packet representing that the server receives a packaged peripheral event;
sequence ID-used to identify whether the sequence number of the received packet is consistent with the expected sequence number;
thread () -task for completing Socket assignment, including ordering and sorting after receiving data packets, judging broadcast function, and sending heartbeat packets; the method comprises the steps that for sending heartbeat packets, a thread is needed to judge whether a server side has a broadcasting function, if the server side has the broadcasting function, a data packet is sent only once, a plurality of client sides can receive the data packet, and if the server side does not have the broadcasting function, the heartbeat packets need to be sent one by one according to the number of the client sides; similarly, the thread located in the client program also needs to send the heartbeat packet of the client to the connected server.
GOEPacketqueue, which is used for storing the received data packets and providing a 0.5s fault-tolerant mechanism to arrange the sequence of a plurality of data packets; of these, 0.5s is only one embodiment of the present invention, and other reasonable time period settings are also within the protection scope of the present invention. The fault-tolerant mechanism is set because the situation that physical connection fails can occur although TCP transmission is stable, UDP transmission emphasizes real-time performance, packet loss and errors are common in the process of quick transmission, and the error rate of transmission is reduced by waiting and fault tolerance in a short time.
For example, a data packet No. 3 is currently received, a data packet No. 2 is expected to be received, and the data packet No. 3 and the data packet No. 2 are not consistent, so that the data packet No. 3 is stored in the GOEPacketQueue first, if the data packet No. 2 is received within 0.5s, it is determined that the whole data of the data packets are correctly received in sequence, and if the data packet No. 2 is not received within 0.5s, an error is required to be reported for TCP protocol transmission, so as to meet stable and reliable transmission requirements; aiming at UDP protocol transmission, errors do not need to be reported, so that the real-time and rapid transmission requirements are met.
The client network logic layer is used for unpacking and logically identifying the received graph drawing instruction protocol packet of the client network transmission layer.
The meaning represented by the client network logic layer code is as follows:
connect () -inform the connected server that the client is connectable and has a connection request of logical screen;
send () -based on data and instruction information contained in EventQueue transmitted from the client logic screen layer, packaging and transmitting to the server network transmission layer;
recv () -unpacking and logically identifying based on a graph drawing instruction contained in the GOEPacket transmitted from the client network transmission layer, and respectively placing the identified data in corresponding queue positions; here, the example of placing graphics drawing instructions into GPXQueue is given.
Socket [ ] — encapsulating the transmission interface, wherein different protocol types (TCP or UDP) correspond to different sockets;
display [ ], which is the data structure representation of a plurality of logical screens of the client logical screen layer and stores a graph drawing instruction for the graph drawing layer GPX to draw a corresponding logical screen;
profile — represents the identity of this machine for this client.
The client logic screen layer is used for placing a plurality of graphic drawing instructions of a plurality of logic screens after unpacking and identification of the client network logic layer into a queue and placing the graphic drawing instructions to be displayed and called into a buffer area.
The meaning represented by the client logic screen layer code is as follows:
DisplayID-the ID corresponding to each logical screen, used for identification of different logical screens;
dimension — the size of each logical screen displayed in the client;
GPXQueue-a queue of graphics drawing instructions;
EventQueue-a queue of peripheral events.
Buffer-after the graphics drawing instruction representing a plurality of logical screens is received, the graphics drawing instruction of the called logical screen is put into a Buffer area to wait for drawing.
It should be noted that the present invention uses a client to send out a peripheral event, and sends the peripheral event packed data to a server, after the server unpacks the peripheral event, the server generates a graph drawing instruction corresponding to the peripheral event, and packs the graph drawing instruction and sends the packed graph drawing instruction to the client, and the client unpacks the graph drawing instruction and draws the graph drawing instruction as a specific embodiment to describe the principle. Other servers draw graphs on the screens of the servers, the servers generate corresponding graph drawing instructions according to the peripheral events generated by the screens of the servers to draw and display the screens of the servers, the servers send the peripheral events to the client, and the interaction before the client identifies the peripheral events of the servers to draw the graphs of the client is within the protection scope of the invention.
Please refer to fig. 5, which is a flow chart illustrating a chinese font rendering process of an ethernet graphics display system according to an embodiment of the present invention. As shown in fig. 5, for example, drawing a chinese font by a server light console program, the server sends a draw utf8OpenGL drawing instruction as a console, the drawing instruction is transmitted to a server logical screen layer through a server graphic drawing layer and a server buffer queue layer, and first searches whether a corresponding logical screen exists in the server logical screen layer, and if not, determines that the client has no request, and does not need to perform network transmission; and if the logical screen exists, adding the event to a GPXQueue queue of the logical screen. And traversing all the logic screens through the ServerConnection in the logic layer of the server network to manufacture a protocol packet GOEPacket, transmitting the protocol packet GOEPacket to the transmission layer of the server network, and sending the protocol packet GOEPacket through a Socket of the transmission layer of the server network. The network transmission layer of the server hides the complexity of packet loss retransmission and the diversity of network service types. If the transmission link is not in the local area network but in the cloud, it needs to first determine whether the Display of the logical screen is requested to be connected by the cloud, and the client mobile phone is connected to the cloud to be able to check and control the console of the authorized performance site. And after receiving the protocol packet, the client network transmission layer transmits the protocol packet to the ClientConnection of the client network logic layer for unpacking, and adds unpacked data into a GPXQueue queue of the logic screen Display in the client logic screen layer. When the drawing period of the client arrives, processing the packet type according to the customized service logic, and calling an onDrawFrame function to draw the corresponding Chinese character to the position required to be displayed. The ondraw frame is the code of the android, and the ondraw frame method in the render interface is the known prior art for the android programmer in the field, and is written by a google engineer for the programmer to use, so that the ondraw frame corresponds to the same code and the same name in the prior art.
Please refer to fig. 6, which is a flow chart illustrating an ethernet graphics display system according to an embodiment of the present invention. As shown in fig. 6, when a cycle of drawing the graph by the client arrives, the protocol packet buffered by the Buffer is dequeued from the GPXQueue queue, and the packet type is checked. If the type is Graphic _ Device, a logical Graphic Device and a framebuffer are created, and if the type is a data packet of other drawing instructions, the corresponding framebuffer is found according to the handle field, and the Graphic drawing instruction is acted on the framebuffer. One of the special graphics rendering instructions, called flip, will render one frame buffer on top of another. After the flip instruction is completed, it can be determined whether to exit the rendering cycle. In another embodiment, if the flip mechanism is not used, the frame buffer is drawn in the order of the graphics stack shown in fig. 6, the Graphic _ Device is traversed from bottom to top, when the traversal is not completed, the frame buffer corresponding to the current Graphic _ Device is drawn, and when the traversal is completed, the drawing is completed.
In summary, the graphics display system, the processing display method, the server and the client of the ethernet network of the present invention can implement instruction level broadcast of the graphics adaptation layer, and display the content of the application program by transmitting the graphics drawing instruction of the graphics card to another computer in the network, so that the transmitted content occupies a smaller memory in the target machine and is more efficient because the transmitted instruction is not the picture data. In addition, the invention is beneficial to realizing more customized functions, such as replacing the user interface as the user interface of the target machine, and utilizing the development library of the target machine to identify the system type of the target machine so as to customize the display. The invention effectively overcomes various defects in the prior art and has high industrial utilization value.
The foregoing embodiments are merely illustrative of the principles and utilities of the present invention and are not intended to limit the invention. Any person skilled in the art can modify or change the above-mentioned embodiments without departing from the spirit and scope of the present invention. Accordingly, it is intended that all equivalent modifications or changes which may be made by those skilled in the art without departing from the spirit and scope of the present invention as defined in the appended claims.

Claims (10)

1. An ethernet graphics display system, comprising: a server and a client;
the server is used for determining a to-be-sent graph drawing instruction corresponding to the display content; judging whether a logic screen matched with the graph drawing instruction exists or not; the logic screen is a graphical interface to be displayed; if so, making the logic screen into a protocol packet, and sending the protocol packet to the client; if not, judging that the client has no display request;
the client is used for receiving the protocol packet sent by the server; unpacking the protocol packet to obtain a data packet, and acquiring a graph drawing instruction in the data packet to determine a drawing logic in the graph drawing instruction; drawing the display content corresponding to the graphic drawing instruction according to the drawing logic in combination with the drawing period; the drawing period refers to the time for drawing one frame of the graph;
the graphics drawing instruction is a display card drawing instruction which is the same in different operating systems, and the same application program is run on different operating systems by drawing through the display card drawing instruction.
2. The Ethernet graphics processing method is applied to a server side and comprises the following steps:
determining a graph drawing instruction to be sent corresponding to the display content;
judging whether a logic screen matched with the graph drawing instruction exists or not; the logic screen is a graphical interface to be displayed;
if so, making the logic screen into a protocol packet, and sending the protocol packet to a client; if not, judging that the client has no display request;
the graphics drawing instruction is a display card drawing instruction which is the same in different operating systems, and the same application program is run on different operating systems by drawing through the display card drawing instruction.
3. The ethernet graphics processing method according to claim 2, wherein:
the server side comprises: the system comprises a server side graph drawing layer, a server side buffer queue layer, a server side logic screen layer, a server side network logic layer and a server side network transmission layer.
4. The graphics processing method of ethernet according to claim 3, wherein:
transmitting a peripheral event and the graph drawing instruction to the server buffer queue layer through the server graph drawing layer;
establishing a relation between a physical screen and a logical screen and managing a relation between a physical screen request and the logical screen of the client through the server logical screen layer;
monitoring and processing the affairs of the server and the client through the network logic layer of the server, packing a network protocol of a graph adaptation system in the graph drawing layer of the server, and managing a routing logic screen and a protocol object;
and providing a uniform transmission interface through the network transmission layer of the server.
5. The graphics processing method for ethernet according to claim 4, wherein:
the managing the relationship between the physical screen request and the logical screen of the client comprises: judging whether the graphic drawing instruction needs to be broadcast to a network or not, determining the network topology of the physical screen and the logic screen, recovering an idle logic screen overtime and judging whether to refresh and redraw or not.
6. A server, comprising: a processor and a memory;
the memory is used for storing computer programs, and the processor is used for executing the computer programs stored by the memory so as to enable the server to execute the graphics processing method of the Ethernet according to any one of claims 2 to 5.
7. The graphic display method of the Ethernet is applied to a client, and comprises the following steps:
receiving a protocol packet sent by a server;
unpacking the protocol packet to obtain a data packet, and acquiring a graph drawing instruction in the data packet to determine a drawing logic in the graph drawing instruction;
drawing the display content corresponding to the graphic drawing instruction according to the drawing logic in combination with the drawing period; the drawing period refers to the time for drawing one frame of the graph;
the graphics drawing instruction is a display card drawing instruction which is the same in different operating systems, and the same application program is run on different operating systems by drawing through the display card drawing instruction.
8. The graphical display method of ethernet according to claim 7, wherein:
the client comprises: the system comprises a client side graph drawing layer, a client side buffer queue layer, a client side logic screen layer, a client side network logic layer and a client side network transmission layer.
9. The ethernet graphics display method according to claim 8, wherein the step of drawing the display content corresponding to the graphics drawing instruction according to the drawing logic in combination with the drawing cycle comprises:
when the drawing period is in, dequeuing the unpacked data packet cached by the client buffer queue layer, and checking the type of the data packet;
if the type of the data packet is the type of the graphic equipment, correspondingly creating a logic graphic equipment and a frame buffer;
if the type of the data packet is a type other than the type of the graphic equipment, finding out a corresponding frame buffer according to the handle field, and applying the graphic drawing instruction to the frame buffer.
10. A client, comprising: a processor and a memory;
the memory is used for storing a computer program, and the processor is used for executing the computer program stored by the memory to enable the client to execute the graphical display method of the Ethernet according to any one of claims 7 to 9.
CN202010723017.5A 2020-07-24 2020-07-24 Graphic display system, processing display method, server and client of Ethernet Active CN111818085B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010723017.5A CN111818085B (en) 2020-07-24 2020-07-24 Graphic display system, processing display method, server and client of Ethernet

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010723017.5A CN111818085B (en) 2020-07-24 2020-07-24 Graphic display system, processing display method, server and client of Ethernet

Publications (2)

Publication Number Publication Date
CN111818085A CN111818085A (en) 2020-10-23
CN111818085B true CN111818085B (en) 2022-10-21

Family

ID=72861015

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010723017.5A Active CN111818085B (en) 2020-07-24 2020-07-24 Graphic display system, processing display method, server and client of Ethernet

Country Status (1)

Country Link
CN (1) CN111818085B (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110083324A (en) * 2019-04-30 2019-08-02 华为技术有限公司 Method, apparatus, electronic equipment and the computer storage medium of Image Rendering
CN110458748A (en) * 2019-06-27 2019-11-15 西安万像电子科技有限公司 Data transmission method, server and client

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7119808B2 (en) * 2003-07-15 2006-10-10 Alienware Labs Corp. Multiple parallel processor computer graphics system
CN102685196A (en) * 2010-12-22 2012-09-19 北京华夏未来信息技术有限公司 Method and virtual application system for improving user experience in virtual application environment
US10062141B2 (en) * 2012-10-24 2018-08-28 Nubo Software Server-based fast remote display on client devices
EP3716059A4 (en) * 2017-12-12 2021-06-02 Huawei Technologies Co., Ltd. App remote control method and related devices

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110083324A (en) * 2019-04-30 2019-08-02 华为技术有限公司 Method, apparatus, electronic equipment and the computer storage medium of Image Rendering
CN110458748A (en) * 2019-06-27 2019-11-15 西安万像电子科技有限公司 Data transmission method, server and client

Also Published As

Publication number Publication date
CN111818085A (en) 2020-10-23

Similar Documents

Publication Publication Date Title
CN111542064B (en) Container arrangement management system and arrangement method for wireless access network
US8924985B2 (en) Network based real-time virtual reality input/output system and method for heterogeneous environment
US7937452B2 (en) Framework for rendering plug-ins in remote access services
JP5620506B2 (en) Application image display method and apparatus
EP2911342A1 (en) Home gateway and intelligent terminal integrated system and communication method therefor
JP2015529878A (en) Providing access to remote applications via a web client
WO2019114185A1 (en) App remote control method and related devices
CN103701807A (en) Method and device for sending data under VDI (visual desktop infrastructure) environment
US8849905B2 (en) Centralized computing
CN107547474A (en) A kind of graphic display method and equipment of heterogeneous dual system
CN113032080B (en) Page implementation method, application program, electronic device and storage medium
CN108418874A (en) Guiding method, device, computer equipment and storage medium are returned across wide area network data
CN114217921A (en) Distributed parallel computing method, computing device and storage medium
CN112698838A (en) Multi-cloud container deployment system and container deployment method thereof
CN108009977B (en) Method and system for supporting multiple remote graphic terminals in multi-thread environment
CN111818085B (en) Graphic display system, processing display method, server and client of Ethernet
US9614900B1 (en) Multi-process architecture for a split browser
CN113965628A (en) Message scheduling method, server and storage medium
WO2023035619A1 (en) Scene rendering method and apparatus, device and system
US20050138189A1 (en) Running a communication protocol state machine through a packet classifier
WO2016095377A1 (en) Image display method and device for thin client and electronic equipment
US10360172B1 (en) Decoupled peripheral devices
CN113835816A (en) Virtual machine desktop display method, device, equipment and readable storage medium
CN113836455A (en) Special effect rendering method, device, equipment, storage medium and computer program product
US20170322892A1 (en) Information processing system, information processing method and information processing device

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant