DE102004043868B4 - Data communication system, as well as data communication methods - Google Patents

Data communication system, as well as data communication methods Download PDF

Info

Publication number
DE102004043868B4
DE102004043868B4 DE102004043868A DE102004043868A DE102004043868B4 DE 102004043868 B4 DE102004043868 B4 DE 102004043868B4 DE 102004043868 A DE102004043868 A DE 102004043868A DE 102004043868 A DE102004043868 A DE 102004043868A DE 102004043868 B4 DE102004043868 B4 DE 102004043868B4
Authority
DE
Germany
Prior art keywords
server
client
data communication
communication system
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.)
Expired - Fee Related
Application number
DE102004043868A
Other languages
German (de)
Other versions
DE102004043868A1 (en
Inventor
Kai Lauterjung
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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to DE102004043868A priority Critical patent/DE102004043868B4/en
Priority to DE202004021156U priority patent/DE202004021156U1/en
Priority to PCT/EP2005/054411 priority patent/WO2006027367A1/en
Publication of DE102004043868A1 publication Critical patent/DE102004043868A1/en
Application granted granted Critical
Publication of DE102004043868B4 publication Critical patent/DE102004043868B4/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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
    • H04L67/08Protocols specially adapted for terminal emulation, e.g. Telnet
    • 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
    • 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/565Conversion or adaptation of application format or content
    • H04L67/5651Reducing the amount or size of exchanged application data
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/164Adaptation or special uses of UDP protocol
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/165Combined use of TCP and UDP protocols; selection criteria therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/166IP fragmentation; TCP segmentation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/289Intermediate processing functionally located close to the data consumer application, e.g. in same machine, in same home or in same sub-network

Abstract

Datenkommunikationssystem, mit mindestens einem Client (1), und mindestens einem Server (2),
wobei eine Einrichtung (S1) vorgesehen ist, mit welcher an einem Bildschirm des Clients (1) angezeigte Bildschirminhalte in Abhängigkeit von vom Server (2) empfangenen Steuerdaten gesteuert werden, und
wobei der Server (2) Mittel aufweist zum Untersuchen von vom Server (2) an den Client (1) zu übertragenden Bildschirminhalten dahingehend, ob statt der Bildschirminhalte eine diesen dann zuzuordnende Codierung übertragen werden kann.
Data communication system, with at least one client (1), and at least one server (2),
a device (S1) is provided with which screen contents displayed on a screen of the client (1) are controlled in dependence on control data received from the server (2), and
wherein the server (2) comprises means for examining from the server (2) to the client (1) to be transmitted screen contents to the effect whether instead of the screen contents this then assigning coding can be transmitted.

Figure 00000001
Figure 00000001

Description

Die Erfindung betrifft ein Datenkommunikationssystem, insbesondere ein Datenkommunikationssystem mit mindestens einem, insbesondere mehreren Clients, insbesondere Client-Rechnern, und mit mindestens einem Server, insbesondere Server-Rechner, sowie ein Datenkommunikationsverfahren.The The invention relates to a data communication system, in particular a Data communication system with at least one, in particular several Clients, especially client computers, and with at least one server, in particular server computer, as well a data communication method.

Insbesondere betrifft die Erfindung ein System und ein Verfahren zur Reduzierung des Datenverkehrsvolumens und zur Reduzierung von Verzögerungszeiten für Applikationen, die auf einem Client-Rechner genutzt werden, der für die Applikationen als Ein- und Ausgabegerät dient und direkt oder indirekt über ein Mobilfunknetzwerk und/oder ein leitungsbasiertes Netzwerk, das sich dadurch auszeichnet, dass es insgesamt eine hohe Signallaufzeit (von z.B. >50 ms) aufweist, mit einem Applikationsserver verbunden ist, der die eigentliche Applikation ausführt und den via Netzwerk angebundenen Client Rechner (Terminal) zur Ein- und Ausgabe, sowie Darstellung von Programmsteuerelementen (z.B. Auswahlmenüs), Daten und Grafiken nutzt.Especially The invention relates to a system and method for reduction the traffic volume and to reduce delays for applications, which are used on a client machine, for the applications as input and output device serves and directly or indirectly via a mobile radio network and / or a circuit-based network, the is characterized by the fact that there is a total of a high signal transit time (of e.g. > 50 ms), connected to an application server, which is the actual Application executes and via the network connected client computer (terminal) to Input and output, as well as presentation of program control elements (e.g., selection menus), Uses data and graphics.

Die Übertragungskapazitäten der Mobilfunknetze und terrestrischen Weitverkehrsnetze werden ständig erweitert und ausgebaut. Dies ermöglicht neben Sprach- oder Messagediensten nun auch immer mehr, die Nutzung mobiler Datenübertragungen für Anwendungen im Privat- und Geschäftskundenbereich. Durch die hohe Abdeckung und mobile Verfügbarkeit der Anbindung an Netzwerke, ergeben sich auch neue Möglichkeiten für Lösungen im Client/Server Anwendungs-Bereich. Ein Beispiel dafür sind Applikationsserver, bei denen ein Server die Applikationen für mehrere via Netzwerk angebundene Clients in einem zentralen Rechenzentrum ausführt. Die Clients dienen lediglich als Eingabe- (Maus, Tastatur usw.) bzw.The transmission capacities of the Mobile networks and terrestrial wide area networks are constantly being expanded and expanded. this makes possible in addition to voice or messaging services now more and more, the use mobile data transmissions for applications in the private and business customer sector. Due to the high coverage and mobile availability of the connection to networks, There are also new possibilities for solutions in the Client / server application area. An example of this are application servers, where a server connects the applications for several via network Clients running in a central data center. The clients serve only as an input (mouse, keyboard, etc.) or

Ausgabegerät (Bildschirm/Drucker usw.). Als Beispiel wäre hier die Architektur Microsoft Application Server zu nennen.Output device (screen / printer etc.). As an example would be Here's the architecture to call Microsoft Application Server.

Der Vorteil einer Client Server Lösung, liegt darin, dass man den Administrations- und Investitionsaufwand einer Software-Lösung zentralisieren und somit Kosten sparen kann. Außerdem können kostspielige HW-Investitionen von vielen gemeinsam genutzt werden, und das Security Level steigt bei einer zentralisierten Administration. Die Kommunikation zwischen einem Applikations-Client und einem Applikations-Server Rechner ist durch einen ständigen Datenaustausch zwischen den beiden Geräten gekennzeichnet. Dabei werden die Eingaben des Nutzers der den Client benutzt (z.B. Tastatureingabe oder eine Mausbewegung) zum Server übertragen. Daten, Grafiken oder Steuerungssignale, die zur Anzeige der Applikation genutzt werden überträgt der Server über das Netzwerk zum Applikations-Client.Of the Advantage of a client server solution, lies in the fact that you have the administrative and capital expenditure centralize a software solution and thus can save costs. Furthermore can be expensive HW investments are shared by many, and security Level increases in a centralized administration. The communication between an application client and an application server Calculator is through a permanent Data exchange between the two devices marked. It will be the input of the user using the client (e.g., keyboard input or a mouse movement) to the server. Dates, Graphics or control signals used to display the application The server transmits over the Network to the application client.

Die bisher verfügbaren Lösungen gingen dabei davon aus, dass die Signallaufzeit des Netzes gering ist, der Nutzer also nach Eingabe eines Zeichens, das vom Client zum Server übertragen wird, relativ schnell eine aktualisierte Darstellung des Bildschirms bekommt, die der Server über das Netzwerk zum Client Rechner überträgt. Bei Netzen mit hoher Verzögerungszeit führen die bisherigen Verfahren zu Problemen. Durch die hohen Signallaufzeiten bekommt der Nutzer erst verzögert die Reaktionen auf seine Eingaben angezeigt. So kann z.B. beim Anklicken eines Pull Down Menüs, was mehrere Interaktionen zwischen dem Client und dem Server notwendig macht, ggf. erst mehrer Sekunden später durch das Öffnen des Menüs die Reaktion auf dem Client dargestellt werden. Dies führt bisweilen dazu, dass ein effektives Arbeiten mit der Applikation unmöglich wird. Ein weiteres Problem ist es, dass bei Netzen mit hohen Kosten für Datenvolumen, sehr hohe Kosten für die Anbindung der Remote Ein-Ausgabeeinheiten (Terminals) anfallen.The previously available solutions assumed that the signal propagation time of the network was low is the user after entering a character, that of the client transferred to the server will, relatively quickly, an updated display of the screen gets the server over the network transfers to the client computer. at Networks with high delay time to lead the previous methods to problems. Due to the high signal transit times the user gets delayed only the responses to his inputs appear. Thus, e.g. when clicking a pull down menu, which requires multiple interactions between the client and the server makes, if necessary, only several seconds later by opening the Menus the Reaction on the client will be presented. This sometimes leads to make effective work with the application impossible. Another problem is that networks with high data volume costs, very high costs for the connection of the remote input / output units (terminals) are incurred.

In der US 2002/0109718 A1 ist ein Client-Server-System gezeigt, bei dem in jedem Client eine Liste mit UI-Elementen bzw. UI-Element-Definitionen gespeichert ist, wobei die UI-Elemente bzw. UI-Element-Definitionen von einer Vielzahl verschiedener Applikationen gemeinsam verwendet werden können sollen.In US 2002/0109718 A1 discloses a client-server system in each client a list of UI elements or UI element definitions is stored, with the UI elements or UI element definitions of a variety of different applications can be used together should.

Es ist eine Aufgabe der vorliegenden Erfindung, ein Verfahren und ein System zu schaffen, mit denen die Auswirkungen der Latenzzeit eines Mobilfunknetzwerkes und/oder eines terrestrischen Netzwerkes auf eine Applikation, die auf einem zentralen Server ausgeführt wird und für Ein- und Ausgaben mit einem via Mobilfunk- und/oder terrestrischem Netzwerk verbundenen Client Terminal kommuniziert, eliminiert bzw. weitestgehend reduziert werden, so dass ein für den Benutzer komfortables Arbeiten mit der Applikation ermöglicht wird, sowie die Datenvolumenübertragungskosten für den Benutzer deutlich gesenkt werden können.It is an object of the present invention, a method and a To create a system with which the effects of the latency of a Mobile network and / or a terrestrial network an application that runs on a central server and for Inputs and outputs with a via mobile and / or terrestrial network connected client terminal communicates, eliminates or largely be reduced so that one for the user is allowed to work comfortably with the application, as well as the data volume transfer costs for the Users can be lowered significantly.

Zur Lösung der o.g. Aufgabe wird gemäß der Erfindung ein System und ein Verfahren gemäß den Gegenständen der Ansprüche 1 und 10 bereitgestellt.to solution the o.g. Task is according to the invention a system and a method according to the objects of claims 1 and 10 provided.

Weitere, vorteilhafte Ausgestaltungen der Erfindung sind in den Unteransprüchen angegeben.Further, advantageous embodiments of the invention are specified in the subclaims.

Gemäß einem Aspekt des erfindungsgemäßen Verfahrens zur Eliminierung bzw. zur Reduktion der Auswirkungen der Latenzzeit eines Mobilfunknetzwerkes und/oder eines terrestrischen Netzwerkes auf eine Applikation und zur Einsparung von Datenvolumen bei der für die Ausführung einer Applikation notwendigen Kommunikation ist ein Client Rechner mit einem Server Rechner über ein Mobilfunknetzwerk und/oder einem terr. Netzwerk verbunden, wobei der Client Rechner (Terminal) lediglich zur Ein- und Ausgabe von Daten und Informationen (z.B. über eine Tastatur, eine Maus, einen Bildschirm oder Drucker) genutzt wird. Der Programmcode, der von einem Nutzer am Client Rechner benutzten Anwendung, wird auf dem via Netzwerk erreichbaren Server Rechner ausgeführt.According to one aspect of the invention A method for eliminating or reducing the effects of the latency of a mobile radio network and / or a terrestrial network on an application and for saving data volume in the necessary for the execution of an application communication is a client computer with a server computer via a mobile network and / / or a terr. Network, the client computer (terminal) only for input and output of data and information (eg via a keyboard, a mouse, a screen or printer) is used. The program code, the application used by a user on the client computer, is executed on the server accessible via the network server.

Die hier beschriebene erfindungsgemäße Client Server Architektur, kann aber muss nicht dadurch gekennzeichnet sein, dass bereits bekannte und allgemein bei der Datenkommunikation im Satellitenbereich eingesetzte Verfahren zur Optimierung des Datenflusses zwischen einem Client und einem Server über ein zeitverzögertes Satellitennetzwerk nun auch über ein Mobifunknetzwerk und/oder ein terrestrisches Netzwerk eingesetzt werden. Zu den bereits bekannten und bisher allgemein im Satellitenbereich eingesetzten Verfahren zählen insbesondere Software oder Hardware basierte Lösungen zur Vermeidung von Rückbestätigungsmeldungen von empfangenen/gesendeten Datenpaketen (Vermeidung von Acknowledgements (ACKs), beispielsweise durch den Einsatz von Enhanced TCP), zur Umwandlung von TCP in UDP-Übertragungen (UDP Tunneling), Optimierungen der MTU (Maximum Transfer Unit eines Datenpackets), Entfernung von Redundanzen in einer Datensequenz (beispielsweise durch Kompression), Vermeidung von wiederholten Übertragungen von häufig zu übertragenden Informationen (beispielsweise durch lokale Vorhaltung der Daten im Speicher, automatische Erkennung und Caching).The Client according to the invention described here Server architecture, but may not be characterized be that already familiar and generally used in data communication satellite data optimization method for data flow optimization between a client and a server over a time-delayed satellite network now also over a mobile radio network and / or a terrestrial network used become. To the already known and so far generally in the satellite range counted procedures in particular software or hardware based solutions to avoid reconfirmation messages of received / sent data packets (avoidance of acknowledgments (ACKs), for example through the use of Enhanced TCP) Conversion of TCP into UDP transfers (UDP Tunneling), optimizations of the MTU (Maximum Transfer Unit of a Data packages), removal of redundancies in a data sequence (for example, by compression), avoiding repeated transmissions Often to be transferred Information (for example, by local provision of data in memory, automatic detection and caching).

In 1 ist – beispielhaft- eine Netzwerkarchitektur gemäß einem Ausführungsbeispiel der vorliegenden Erfindung gezeigt, wobei entsprechende Client Rechner 1 – über entsprechende Mobilfunk- und/oder territrische Netzwerke 3 – an einen (oder mehrere) Anwendungsserver 2 angeschlossen sind. Bei der erfindungsgemäßen Netzwerkarchitektur kann sich an der Lokation eines Client Rechners 1 eine zusätzliche geeignete Software oder eine Hardware befinden (im Folgenden S1 genannt), die die Bildschirmdarstellung oder Teile der Bildschirmdarstellung des Client Rechners 1 in gleicher Art und Weise wie bei einem Anwendungsserver 2 berechnen und durch Signale steuern kann.In 1 By way of example, a network architecture according to an embodiment of the present invention is shown, with corresponding client computers 1 - via appropriate mobile and / or territorial networks 3 - to one (or more) application servers 2 are connected. In the network architecture according to the invention can be at the location of a client computer 1 an additional suitable software or hardware (hereinafter referred to as S1), which is the screen display or parts of the screen display of the client computer 1 in the same way as an application server 2 calculate and control by signals.

An der Lokation des Client Rechners 1 kann sich eine Objektdatenbank befinden, die in der Lage ist Teile von Bildschirmdarstellungen (Objekte), wie beispielsweise Pixel, Linien, Grafiken, Menüs usw. sowie Korrelationen von Eingabesequenzen zu den Objekten zu speichern. Auf die Objektdatenbank hat S1 Zugriff. An der Lokation des Server Rechners 2 kann sich eine zusätzliche geeignete Software oder eine Hardware befinden (im Folgenden S2 genannt), die die vom Server Rechner 2 zum Client Rechner 1 gesendeten Daten dahingehend untersucht, ob sie Signalisierungsdaten enthalten, die eine Änderung der Bildschirmdarstellung bewirken sollen, die bereits durch S1 gesteuert worden ist. In diesem Fall hat S2 von den bereits durch S1 bearbeiteten Änderungen durch eine Mitteilung von S1, die über das Netzwerk 3 zu S2 übertragen worden ist, Kenntnis bekommen. Die Datenkommunikation zwischen dem Client Rechner 1 und dem Server Rechner 2 kann zusätzlich wie folgt optimiert werden: Die Eingaben für das Anwendungsprogramm (z.B. Tastaturanschläge, Mausbewegungen oder Clicks) werden bereits durch S1 dahingehend untersucht, ob sie zu einer Veränderung der Bildschirmdarstellung am Client Rechner 1 führen.At the location of the client computer 1 There may be an object database capable of storing portions of screen representations (objects) such as pixels, lines, graphics, menus, etc. as well as correlations of input sequences to the objects. S1 has access to the object database. At the location of the server computer 2 There may be additional suitable software or hardware (referred to below as S2), which are the ones from the server computer 2 to the client computer 1 sent data is examined to see whether they contain signaling data to cause a change in the screen display, which has already been controlled by S1. In this case, S2 has the changes already handled by S1 through a message from S1 over the network 3 has been transferred to S2, get notified. The data communication between the client computer 1 and the server computer 2 can be additionally optimized as follows: The inputs for the application program (eg keystrokes, mouse movements or clicks) are already being examined by S1 to see whether they lead to a change in the screen display on the client computer 1 to lead.

Ist dies der Fall, untersucht S1, welche für die zur Veränderung der Bildschirmdarstellung erforderlichen Daten und Objekte, wie beispielsweise:

  • • Grafiken/Bitmaps
  • • Icons
  • • diverse Fenstertypen
  • • Linien
  • • Rahmen
  • • Hintergründe
  • • Schattierungen
  • • Pull Down Menüs
  • • Menü Auswahl Boxen und deren mögliche Einträge
  • • Häkchen, Punkte, Auswahlelemente
  • • Zeichenelemente oder Buchstaben in Form verschiedener Fonts
  • • Und beliebig viele weitere frei durch ein Customizing definierbare Grafikelemente
in der lokalen Objekt-Datenbank vorhanden sind, um die Veränderung oder Teile der Veränderung der Bildschirmdarstellung auch ohne Informationen des zentralen Server Rechners 2 unter Berücksichtigung der aktuellen Eingaben durch S1 lokal berechnen zu können. Dabei kann auch die Größe oder die Position von einzelnen Bildschirmelementen durch S1 neu berechnet werden. Die lokal möglichen Änderungen, also Änderungen der Bildschirmdarstellungen, die so keine Datenübertragung oder eine Steuerung durch den zentralen Server 2 erfordern, werden von S1 lokal dem Client Rechner 1 signalisiert, der diese Änderungen der Bildschirmdarstellung dann quasi ohne zeitliche Verzögerung darstellt. Diese Signalisierung erfolgt in der gleichen Art und Weise, wie sie normalerweise der zentrale Server Rechner 2 gegenüber dem Client Rechner 1 über das Netzwerk 3 durchführt. Somit kann beispielsweise, die Veränderte Position des Mauszeigers durch eine Bewegungseingabe der Maus, oder die Anzeige eines Menüs nach dem Anklicken oder die Bewegung eines Fensters usw. sofort angezeigt werden.If so, S1 examines which of the data and objects required to change the screen image, such as:
  • • Graphics / bitmaps
  • • Icons
  • • various window types
  • • lines
  • • Frame
  • • Backgrounds
  • • shades
  • • Pull down menus
  • • Menu selection boxes and their possible entries
  • • Check mark, points, selection elements
  • • Characters or letters in the form of different fonts
  • • And any number of other freely definable graphic elements
are present in the local object database to the change or parts of the change in the screen display without information from the central server computer 2 taking into account the current inputs by S1 can be calculated locally. In this case, the size or the position of individual screen elements can be recalculated by S1. The locally possible changes, ie changes of the screen representations, so no data transfer or control by the central server 2 S1 will be used locally by the client machine 1 signals that these changes the screen display then virtually without delay. This signaling is done in the same way as normally the central server computer 2 across from the client computer 1 over the network 3 performs. Thus, for example, the changed position of the mouse pointer by a movement input of the mouse, or the display of a menu after clicking or moving a window, etc. can be displayed immediately.

Erfindungsgemäß werden parallel zu diesem Prozess die Eingaben des Client Rechners 1, wie sonst auch, über das Netzwerk 3 an den zentralen Server Rechner 2 weitergeleitet. Zusätzlich wird S2 durch S1 über das Netzwerk 3 mitgeteilt, welche Änderungen der Bildschirmdarstellung am Client Rechner 1 bereits durch S1 vorgenommen wurden. Die Antworten des Servers Rechners 2 auf die Eingaben am Client Rechner 1 werden dann dahingehend untersucht, ob sie Steuerdaten- oder Signalisierungsinformationen enthalten, die Änderungen der Bildschirmdarstellung am Client Rechner 1 bewirken sollen, die bereits durch S1 gesteuert worden sind. Um doppelte Signalisierungen zu vermeiden, werden diese Daten und Signale bereits durch S1 herausgefiltert und nicht über das Netzwerk 3 zum Client Rechner 1 übertragen. Dadurch wird eine erhebliche Reduzierung des normalerweise von der Applikation verursachten Datentransportvolumens erreicht.According to the invention, the inputs of the client computer are parallel to this process 1 as usual, over the network 3 to the central server computer 2 forwarded. In addition, S2 becomes S1 through the network 3 communicated what changes the screen display on the client machine 1 already made by S1. The answers of the server computer 2 on the inputs on the client computer 1 are then examined as to whether they contain control data or signaling information that changes the screen display on the client computer 1 to effect, which have already been controlled by S1. To avoid duplicate signaling, these data and signals are already filtered out by S1 and not over the network 3 to the client computer 1 transfer. This achieves a significant reduction in the data transport volume normally caused by the application.

In einer weiteren Ausgestaltung des Verfahrens, wird die erfindungsgemäße Client Server Architektur (ergänzt durch S1 und S2) dahingehen erweitert, dass eine zusätzliche geeignete Software oder Hardware (im folgenden S3 genannt), zum automatischen Erstellen der Objektdatenbank eingesetzt wird. S3 untersucht dabei den vom Client Rechner 1 gesendeten Datenstrom auf sich häufig wiederholende Eingabekombinationen sowie die kurz darauf via Netzwerk empfangenen Reaktionen des Servers Rechners 2 auf Bildschirmsignalisierungen. Aus diesen Untersuchungen werden Korrelationen abgeleitet und in der Objekt-Datenbank abgespeichert. Somit wird die Objektdatenbank automatisch mit Informationen gefüllt (trainiert), die es S1 ermöglichen, Veränderungen der Bildschirmdarstellungen automatisch zu berechnen und die Bildschirmdarstellung oder Teile der Darstellung des Client Rechner 1 entsprechend lokal zu steuern.In a further refinement of the method, the client server architecture according to the invention (supplemented by S1 and S2) is expanded so that additional suitable software or hardware (referred to below as S3) is used to automatically create the object database. S3 examines the client computer 1 sent data stream to frequently repeated input combinations as well as the shortly thereafter received via network reactions of the server computer 2 on screen signaling. Correlations are derived from these investigations and stored in the object database. Thus, the object database is automatically filled (trained) with information that enables S1 to automatically calculate changes in the screen representations and the screen presentation or parts of the representation of the client computer 1 to control locally accordingly.

Bei der in 1 gezeigten Netzwerkarchitektur können bei der Kommunikation zwischen Client Rechner 1 und Server Rechner 2 (und umgekehrt) vom jeweiligen Client Rechner 1 (oder Server Rechner 2) zur Kommunikation mit dem Server Rechner 2 (oder Client Rechner 1) zunächst erzeugte Daten-Pakete – z.B. TCP-Daten-Pakete (TCP = Transmission Control Protocol) – in entsprechende Daten-Pakete eines hiervon unterschiedlichen Protokolls, z.B. in entsprechende UDP-Pakete umgewandelt, und diese – über das o.g. Netzwerk 3 – an den Server Rechner 2 (oder den Client Rechner 1) übertragen werden.At the in 1 shown network architecture can be used in communication between client computers 1 and server computers 2 (and vice versa) from the respective client computer 1 (or server machine 2 ) for communication with the server computer 2 (or client machine 1 ) initially generated data packets - for example, TCP data packets (TCP = Transmission Control Protocol) - converted into corresponding data packets of a different protocol, eg into corresponding UDP packets, and these - via the above-mentioned network 3 - to the server computer 2 (or the client machine 1 ) be transmitted.

Entsprechend umgekehrt können – vom jeweiligen Server Rechner 2 (oder Client Rechner 1) – die vom Client Rechner 1 (oder vom Server Rechner 2) empfangenen Daten-Pakete – z.B. die o.g. UDP-Daten-Pakete – in entsprechende Daten-Pakete eines hiervon unterschiedlichen Protokolls, z.B. – zurück – in entsprechende TCP-Daten-Pakete umgewandelt werden.Accordingly vice versa can - from the server server 2 (or client machine 1 ) - that from the client computer 1 (or from the server computer 2 ) received data packets - eg the above-mentioned UDP data packets - are converted into corresponding data packets of a different protocol, for example - back - into corresponding TCP data packets.

Gemäß TCP-Protokoll ist vorgesehen, dass der (korrekte) Empfang jedes einzelnen Daten-Pakets durch den jeweiligen Empfänger an den jeweiligen Sender (rück-)bestätigt wird – das UDP-Protokoll sieht demgegenüber keine entsprechenden (Rück-)Bestätigungs-Mechanismen vor.According to TCP protocol It is intended that the (correct) reception of each individual data packet by the respective recipient to the respective transmitter (back) is confirmed - sees the UDP protocol In contrast, no corresponding (back) confirmation mechanisms in front.

Beim vorliegenden Ausführungsbeispiel kann stattdessen z.B. jeweils vor bzw. nach einer vorbestimmten Anzahl an – zwischen dem Client Rechner 1 und Server Rechner 2 ausgetauschten – UDP-Paketen die Anzahl der übermittelten bzw. im folgenden zu übermittelten Pakete (d.h. die Anzahl an Paketen einer „Paket-Serie") übertragen werden. Mit jedem Paket können Daten übermittelt werden, die kennzeichnen, um das wievielte Paket innerhalb der jeweiligen Paket-Serie es sich jeweils handelt. Hierdurch kann vom jeweiligen Empfänger (d.h, vom Client Rechner 1, oder vom Server Rechner 2) ermittelt werden, ob ein Paket – und wenn ja, welches – nicht bzw. nicht korrekt angekommen ist. Dieses Paket kann dann – einzeln – angefordert werden. Hierdurch ist – ohne aufwändigen (Rück-)Bestätigungs-Mechanismus – sichergestellt, dass innerhalb der Netzwerkarchitektur keine Daten verloren gehen.In the present embodiment may instead, for example, each before or after a predetermined number of - between the client computer 1 and server computers 2 UDP packets, the number of packets transmitted or subsequently transmitted (ie, the number of packets in a "packet series") can be transmitted with each packet, identifying the number of packets within each packet It can be done by the respective recipient (ie, by the client computer 1 , or from the server computer 2 ) determine whether a package - and if yes, which - has not arrived or not correctly. This package can then be requested individually. This ensures - without elaborate (feedback) confirmation mechanism - that no data is lost within the network architecture.

Zusätzlich zu den obigen Ausführungen können – um in gewissen, im folgenden erläuterten Fällen einen unnötigen Daten-Verkehr zum und vom Server Rechner 2 einzuschränken – in diesen Fällen nur bzw. ein möglichst großer Anteil an Nutzdaten übertragen werden. Hierzu können vom Server Rechner 2 zum Client Rechner 1 zu übertragende Bildschirminhalte auf dem Server Rechner 2 untersucht werden, ob sie nicht durch eine geeignete Codierung ersetzt werden können. Die Bildschirminhalte sind in der Regel als Objekte dargestellt, z.B. Comboboxen, oder Felder zum Ausfüllen, denen dann eindeutige, an den Client Rechner 1 zu übertragende Codes zugeordnet werden. Die Objekte sind im Betriebssystem des Client Rechners 1 vorhanden, sofern es sich nicht um applikationsspezifische Objekte handelt, die dem jeweiligen Client Rechner 1 (genauer: S1) per Customizing durch S3 zur Verfügung gestellt werden müssen. Beim vorliegenden Ausführungsbeispiel werden dem Client Rechner 1 vorteilhaft durch den Server Rechner 2 nicht mehr der „Bildschirm" bzw. die gesamten eine entsprechenden Anzeige am Bildschirm veranlassende Daten der zentralen Anwendung zur Verfügung gestellt; stattdessen wird dem Client Rechner 1 lediglich mitgeteilt, wo welche Objekte auf dem Bildschirm zu plazieren sind, und welche Merkmale diese Objekte aufweisen sollen. Das Ausfüllen der Objekte erfolgt dann lokal am Client Rechner 1, und es werden dem Server Rechner 2 lediglich die eingetippten neuen Daten mitgeteilt. Hierdurch ergeben sich zwei Vorteile:

  • a) Die übertragene Datenmenge wird – im wesentlichen – auf die eigentlichen Nutzdaten reduziert; und
  • b) die Verzögerung zwischen einer Eingabe und der Reaktion des Server Rechners 2 wird reduziert.
In addition to the above explanations, in order to avoid unnecessary data traffic to and from the server computer in certain cases explained below 2 - in these cases only or the largest possible amount of user data is transmitted. This can be done by the server computer 2 to the client computer 1 screen content to be transferred on the server computer 2 be examined whether they can not be replaced by a suitable coding. The screen contents are usually represented as objects, eg comboboxes, or fields to fill in, which are then unique to the client computer 1 be assigned to be transmitted codes. The objects are in the operating system of the client computer 1 available, as long as they are not application-specific objects that belong to the respective client computer 1 (more precisely: S1) must be made available in Customizing by S3. In the present embodiment, the client are computers 1 advantageous by the server computer 2 no longer the "screen" or the entire on-screen display a corresponding cause of the central application provided, instead, the client becomes a computer 1 just communicated where which objects are to be placed on the screen and which features these objects should have. The filling of the objects then takes place locally on the client computer 1 , and it will be the server calculator 2 only the typed new data communicated. This results in two advantages:
  • a) The transferred amount of data is - essentially - reduced to the actual payload; and
  • b) the delay between an input and the response of the server computer 2 is reduced.

Claims (10)

Datenkommunikationssystem, mit mindestens einem Client (1), und mindestens einem Server (2), wobei eine Einrichtung (S1) vorgesehen ist, mit welcher an einem Bildschirm des Clients (1) angezeigte Bildschirminhalte in Abhängigkeit von vom Server (2) empfangenen Steuerdaten gesteuert werden, und wobei der Server (2) Mittel aufweist zum Untersuchen von vom Server (2) an den Client (1) zu übertragenden Bildschirminhalten dahingehend, ob statt der Bildschirminhalte eine diesen dann zuzuordnende Codierung übertragen werden kann.Data communication system, with at least one client ( 1 ), and at least one server ( 2 ), wherein a device (S1) is provided, with which on a screen of the client ( 1 ) displayed screen contents depending on the server ( 2 ) are controlled, and wherein the server ( 2 ) Means for examining from the server ( 2 ) to the client ( 1 ) to be transmitted screen contents to the effect whether instead of the screen contents this then assigning coding can be transmitted. Datenkommunikationssystem nach Anspruch 1, mit Mitteln zum Zuordnen einer Codierung zu den vom Server (2) an den Client (1) zu übertragenden Bildschirminhalten, falls statt der Bildschirminhalte die diesen dann zuzuordnende Codierung übertragen werden kann.Data communication system according to claim 1, comprising means for assigning an encoding to that of the server ( 2 ) to the client ( 1 ) to be transmitted screen contents, if instead of the screen contents this then attributed coding can be transmitted. Datenkommunikationssystem nach Anspruch 1 oder 2, bei welchem die Bildschirminhalte als Objekte dargestellt sind, und über die Objekte entsprechende Nutzdaten in den Client (1) eingegeben werden können.Data communication system according to Claim 1 or 2, in which the screen contents are represented as objects, and user data corresponding to the objects is stored in the client ( 1 ) can be entered. Datenkommunikationssystem nach Anspruch 3, bei welchem lediglich die eingegebenen Nutzdaten, nicht aber sonstige die Objekte kennzeichnende Daten vom Client (1) an den Server (2) übertragen werden.Data communication system according to claim 3, in which only the input user data, but not other data characterizing the objects from the client ( 1 ) to the server ( 2 ) be transmitted. Datenkommunikationssystem nach einem der Ansprüche 3 bis 4, bei welchem am Client (1) eingegebene Steuerdaten, die eine veränderte Darstellung der Objekte am Bildschirm des Clients hervorrufen sollen, – ohne vorherige Zwischenschaltung des Servers (2), oder ohne Abwarten einer Antwort vom Server (2) – eine veränderte Darstellung der Objekte am Bildschirm des Clients (1) bewirken.Data communication system according to one of claims 3 to 4, wherein at the client ( 1 ) inputted control data, which are to cause a modified representation of the objects on the screen of the client, - without prior interposition of the server ( 2 ), or without waiting for a response from the server ( 2 ) - a modified representation of the objects on the screen of the client ( 1 ) cause. Datenkommunikationssystem nach einem der vorhergehenden Ansprüche, bei welchem der Client (1) oder die Einrichtung (S1) und der Server (2) drahtlos miteinander verbunden sind.Data communication system according to one of the preceding claims, in which the client ( 1 ) or the device (S1) and the server ( 2 ) are wirelessly connected to each other. Datenkommunikationssystem nach einem der vorhergehenden Ansprüche, bei welchem die Kommunikation zwischen dem Client (1) oder der Einrichtung (S1) und dem Server (2) unter Verwendung von dem UDP-Protokoll entsprechenden Daten-Paketen erfolgt.Data communication system according to one of the preceding claims, in which the communication between the client ( 1 ) or the device (S1) and the server ( 2 ) using data packets corresponding to the UDP protocol. Datenkommunikationssystem nach Anspruch 7, bei welchem bei der Übertragung der UDP-Pakete eine Kennung übertragen wird, die anzeigt, wie viele UDP-Pakete zu einer zu übertragenden UDP-Paket-Serie gehören.A data communication system according to claim 7, wherein in the transmission UDP packets transmitted an identifier which indicates how many UDP packets to transfer UDP package series belong. Datenkommunikationssystem nach Anspruch 8, bei welchem bei der Übertragung eines UDP-Pakets eine Kennung übertragen wird, die anzeigt, um das wievielte UDP-Paket einer entsprechenden UDP-Paket-Serie es sich handelt.A data communication system according to claim 8, wherein in the transmission transmit an identifier to a UDP packet which indicates to how many UDP packets a corresponding UDP packet series it is about. Datenkommunikationsverfahren, insbesondere zur Verwendung bei einem Datenkommunikationssystem mit mindestens einem Client (1), und mindestens einem Server (2) nach einem der Ansprüche 1 bis 9, wobei an einem Bildschirm des Clients (1) angezeigte Bildschirminhalte in Abhängigkeit von vom Server (2) empfangenen Steuerdaten gesteuert werden, wobei das Verfahren den Schritt aufweist: – Untersuchen von vom Server (2) an den Client (1) zu übertragenden Bildschirminhalten durch den Server (2) dahingehend, ob statt der Bildschirminhalte eine diesen dann zuzuordnende Codierung übertragen werden kann.Data communication method, in particular for use in a data communication system having at least one client ( 1 ), and at least one server ( 2 ) according to one of claims 1 to 9, wherein on a screen of the client ( 1 ) displayed screen contents depending on the server ( 2 ), the method comprising the step of: - examining from the server ( 2 ) to the client ( 1 ) to be transmitted screen contents by the server ( 2 ) to the effect whether instead of the screen contents a then assigning this coding can be transmitted.
DE102004043868A 2004-09-10 2004-09-10 Data communication system, as well as data communication methods Expired - Fee Related DE102004043868B4 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
DE102004043868A DE102004043868B4 (en) 2004-09-10 2004-09-10 Data communication system, as well as data communication methods
DE202004021156U DE202004021156U1 (en) 2004-09-10 2004-09-10 Data communication system
PCT/EP2005/054411 WO2006027367A1 (en) 2004-09-10 2005-09-07 Data communication system and data communication method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102004043868A DE102004043868B4 (en) 2004-09-10 2004-09-10 Data communication system, as well as data communication methods

Publications (2)

Publication Number Publication Date
DE102004043868A1 DE102004043868A1 (en) 2006-03-30
DE102004043868B4 true DE102004043868B4 (en) 2007-01-11

Family

ID=35355797

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102004043868A Expired - Fee Related DE102004043868B4 (en) 2004-09-10 2004-09-10 Data communication system, as well as data communication methods

Country Status (2)

Country Link
DE (1) DE102004043868B4 (en)
WO (1) WO2006027367A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7449410B2 (en) 2005-08-02 2008-11-11 Micron Technology, Inc. Methods of forming CoSi2, methods of forming field effect transistors, and methods of forming conductive contacts

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020109718A1 (en) * 2001-02-14 2002-08-15 Mansour Peter M. Platform-independent distributed user interface server architecture

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6538667B1 (en) * 1999-07-23 2003-03-25 Citrix Systems, Inc. System and method for providing immediate visual response to user input at a client system connected to a computer system by a high-latency connection
US20010047422A1 (en) * 2000-01-21 2001-11-29 Mcternan Brennan J. System and method for using benchmarking to account for variations in client capabilities in the distribution of a media presentation
DE10200165A1 (en) * 2002-01-04 2003-07-10 Klaus Rock Method for reducing the latency in interactive data communication via a satellite network

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020109718A1 (en) * 2001-02-14 2002-08-15 Mansour Peter M. Platform-independent distributed user interface server architecture

Also Published As

Publication number Publication date
WO2006027367A1 (en) 2006-03-16
DE102004043868A1 (en) 2006-03-30

Similar Documents

Publication Publication Date Title
DE69923827T2 (en) Method for connection establishment
DE60109602T2 (en) METHOD AND DEVICE FOR EFFICIENT REDUCTION OF GRAPHICAL DISPLAY DATA FOR THEIR TRANSMISSION THROUGH A TRANSMISSION PROTOCOL FOR LOW BAND WIDTHS
DE60309201T2 (en) METHOD AND SYSTEM FOR TRANSMITTING EVENTS, INCLUDING MULTIMEDIA DATA
EP1712065B1 (en) Method for realizing a presence service and presence system
EP1466425B1 (en) Method for the reduction of latency during interactive data communication via a satellite network
DE10350894B4 (en) Method for transmitting data
DE19848618A1 (en) System and method for remote maintenance and / or remote diagnosis of an automation system via email
DE102004043868B4 (en) Data communication system, as well as data communication methods
DE102014201948B4 (en) Method for data transmission, communication network and vehicle
DE602004012707T2 (en) System and method for processing font data
DE102015120888B4 (en) Method for remotely controlling a graphical display unit
DE202004021156U1 (en) Data communication system
EP1656783B1 (en) Method for transmitting wap push messages
DE112013005157B4 (en) Systems and methods for sharing bandwidth across a variety of video data streams
EP3225012B1 (en) Method for communicating between at least two terminals
EP1832132B1 (en) System and method for delivering data between a data provider and a mobile terminal
EP1661357B1 (en) Method and device for handling modifications of network addresses during mobile data transmission
EP3518470A1 (en) Method for communicating data in an industrial network in particular, device for carrying out the method, computer program and computer-readable medium
DE10001179A1 (en) ISDN-D channel data communications involves using signaling channel with free bandwidth provided for transfer of signaling information for transmission of useful information
EP1623342A2 (en) Method for reducing latency periods during interactive data communication between a terminal server and a terminal server client in a geostationary satellite network
WO2004090748A2 (en) Method and system for producing web pages adapted to a client character
DE102006033301A1 (en) Methods and apparatus for caching data in a cellular network
DE102004048343B4 (en) Method for reducing the latency in interactive data communication between a terminal server and a terminal server client in a telecommunications network, in particular a GSM or a UMTS network
DE19748867B4 (en) Communication method and device
DE19958942C2 (en) Procedures for the transmission and presentation of information

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8364 No opposition during term of opposition
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee

Effective date: 20120403