WO2006037600A1 - Verfahren zur reduzierung der latenzzeit bei der interaktiven datenkommunikation zwischen einem terminal server und einem terminal-server client in einem drahtlosen telekommunikationsnetzwerk - Google Patents

Verfahren zur reduzierung der latenzzeit bei der interaktiven datenkommunikation zwischen einem terminal server und einem terminal-server client in einem drahtlosen telekommunikationsnetzwerk Download PDF

Info

Publication number
WO2006037600A1
WO2006037600A1 PCT/EP2005/010664 EP2005010664W WO2006037600A1 WO 2006037600 A1 WO2006037600 A1 WO 2006037600A1 EP 2005010664 W EP2005010664 W EP 2005010664W WO 2006037600 A1 WO2006037600 A1 WO 2006037600A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
terminal server
data packets
client
window
Prior art date
Application number
PCT/EP2005/010664
Other languages
English (en)
French (fr)
Inventor
Klaus Rock
Ute Rock
Original Assignee
Rock Technologies Inc.
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 Rock Technologies Inc. filed Critical Rock Technologies Inc.
Publication of WO2006037600A1 publication Critical patent/WO2006037600A1/de

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/16Central resource management; Negotiation of resources or communication parameters, e.g. negotiating bandwidth or QoS [Quality of Service]
    • H04W28/18Negotiating wireless communication parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/06Optimizing the usage of the radio link, e.g. header compression, information sizing, discarding information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/02Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
    • H04W84/04Large scale networks; Deep hierarchical networks

Definitions

  • the invention relates to a method for reducing the visible latency in the interactive data communication between a terminal server and a connected thereto via a wireless telecommunications network, in particular a GSM, GPRS, UMTS network or other radio data network terminal server client, according to the preamble of claim 1.
  • a wireless telecommunications network in particular a GSM, GPRS, UMTS network or other radio data network terminal server client
  • Wireless networks differ from wired networks in many ways.
  • computer applications and protocols that work in a hard-wired network without problems in a wireless network do not work as efficiently as you would expect or simply do not work.
  • the consequence is that computer applications that have been developed and tested for a wired network can not be operated in a wireless network or only with great effort.
  • computers are developed applications and protocols for use in standard workstations connected to a server via a local area network.
  • One problem with this is that the wireless networks often used for data transmission have a completely different physical behavior than, for example, local Ethernet networks.
  • the common belief that the protocols used in data transmission behave just as well in a wireless as in an Internet network is not correct.
  • TCP Transmission Control Protocol
  • GSM Global System for Mobile communications
  • the connection can be interrupted by a mobile phone moving in a position in which radio waves can not be radiated or reflected in the waves by different objects and thereby mutually cancel each other out.
  • An example of this may be a passage through a tunnel.
  • the network itself may be the cause of such fluctuating capacities, such as the updating of a GPRS cell, which is caused when a subscriber switches from one base station to another base station. The result is very often the loss of capacity, which can range from a few microseconds to several seconds.
  • Most implementing protocols use congestion control methods with congestion avoidance algorithms which often mistakenly view the network as congested and therefore simply reduce the transmission speed. As a consequence, the transmission rate will not be increased again if the network resumes its proper condition after some time. In practice, this means that eg GPRS can not provide the desired or requested capacity of, for example, 20 Kbits / sec.
  • Latency is the time it takes a packet of data to get from the sender to the receiver source and back again.
  • this runtime is usually very low and a fluctuation of the duration usually does not exist.
  • the cause of a change in this runtime can certainly be attributed to congestion or other problems in the network, so that the implemented protocols can act defensively and reduce the transmission speed to counteract such congestion.
  • a data network defines a parameter designated as "QoS" that part of the overall system which is responsible for the data transmission itself for the repeated transmission of erroneous data packets or not.
  • TCP and UDP protocols check whether faulty data packets exist or not, they can not determine the exact part of the faulty data packet, so that often entire blocks of data packets are discarded and retransmitted again. This means that even if only a small part of a large data packet is faulty, the data packet as a whole is discarded. Therefore, even error-free data packets are transmitted once more as a whole.
  • Behavior of the network may be quite significant so that proper operation of the application, e.g. no longer possible at all.
  • a mobile radio data network such as a mobile radio network, e.g. A GPRS or Wi-Fi network
  • a mobile radio network e.g. A GPRS or Wi-Fi network
  • Each Mobufunk cell temporarily changes its associated service.
  • movement causes an increase in the runtime and a change in the available bandwidth, which leads to further problems when operating in particular server-based interactive applications.
  • satellite links are ideally suited for the transmission of mass data, such as analog and digital television broadcasts, videos and Internet downloads, which is due to the fact that no interactive queries and acknowledgments need to be transmitted via the satellite ,
  • This mass data is sent to the geostationary satellite via so-called satellite HUBS (uplinks) and their associated central server computers as a continuous data stream, and distributed by the latter in the area of the footprint of the satellite to a multiplicity of satellite reception systems.
  • satellite HUBS uplinks
  • central server computers as a continuous data stream, and distributed by the latter in the area of the footprint of the satellite to a multiplicity of satellite reception systems.
  • the data communication via geostationary satellites involves the problem that the transit time of an electromagnetic signal from a transmitter on the earth to the satellite and from there to the receiver is approximately 0.24 seconds. such that a response sent by the receiver without a time delay reaches the transmitter due to the additionally resulting electronic time losses during the signal conversion earliest only after about 0.7 to 2 seconds.
  • interactive client-server applications such as ERP software with data-driven applications, e.g. in terrestrial connections with a large number of users in an advantageous manner with the help of operating systems such as UNIX or Windows 2000 Server, etc., can be performed on high-latency wireless wireless data networks in practice usually not readily feasible.
  • WO 01/08378 A1 proposes to speed up the visual response behavior of a client computer in the case of client-server systems which are operated via a terrestrial network in that the client computer, based on an input, has an anticipated display of the screen content calculated, which is output on the screen of the client computer, before the generated based on the input data from the server actual screen presentation is transmitted from the server to the client for illustration on the screen.
  • the font Apart from the fact that the font contains no concrete information on how and by what sizes the prediction or prediction of the expected representation of the screen content, the font also gives no indication to use the method described there in a network in which the data transmitted via a geostationary satellite essentially without acknowledgments to the physically by the signal propagation delays latency - which is considerably larger compared to the caused by the load of the server time delay - when entering data in data fields on the client computer on to reduce.
  • a terminal server with a running terminal server application and a terminal server client via a telecommunications network, in particular a detoxlatentes wireless radio data network, coupled to each other for data exchange.
  • a data processing program in particular in the form of a database program with data entry form (GUI), a spreadsheet program, a word processing program or even an e-mail creation program is executed by a user of the terminal server client computer
  • Data is entered via an input medium connected to the terminal server client.
  • GUI database program with data entry form
  • the input of the data is in this case in particular form-based in data fields of a form (GUI), the position at which the data, e.g. Numbers, letters or other characters within a data field can be entered by a prompt, e.g. a cursor mark appears on the terminal server client screen.
  • GUI graphical user interface
  • the data fields preferably coincide with the input fields of the data input screen or the table shown on the screen, whereas in the case of a word processor or an e-mail program, the data fields may correspond to a complete text line, for example.
  • the data fields are traversed according to a processing sequence specified by parameters, in which the user completes the input of the data within a data field by inputting a command.
  • a command can be entered eg by pressing the "RETURN” key, the "TAB” key or one of the arrow keys etc. on a keyboard, and leads to an input prompt, eg a cursor mark in a currently processed data field is placed in a previous or subsequent data field.
  • the data input fields are from the terminal server in the case of such client-server connections - where the execution and graphical representation of the verar ⁇ processing program solely by the server, and the client only takes over the function of an intelligent terminal, via which the graphical representations in Form of an interactive user program only the user to be displayed - usual way as data packets over the network to the terminal server client transferred, and represented by this with the help of a dedicated processor and a corresponding video card on a screen or other display medium.
  • the input of further data into an associated data field is signaled by the input request, which is located at the respective position within a data field at which further data is to be input.
  • the data and / or commands entered via the input medium at the terminal server client are transmitted in the form of further data packets without or at least substantially no acknowledgments by the terminal server via the high-latency radio data network (mobile radio or satellite-based) to the terminal terminal.
  • Server which uses the new data entered after transmission in the execution of the data processing program to generate a new screen presentation, which in turn is transmitted in the form of data packets to the terminal server client, the associated new screen display using its graphics card calculated from the data packets and brought to the display on the display medium.
  • the inventive method is characterized in that the object parameters for the GUI display and processing order of the data fields and preferably also for all other visible objects of a data entry form are also transmitted to the terminal server client via the high-latency radio data network, and that on the terminal server client runs a standalone program routine which, when inputting given commands via the input medium, the screen dependency independently modifies the parameters of the processing order in such a way that the prompt is moved within a data field in the next or previous data field according to the processing order.
  • the terminal server client preferably sends all standard operating system messages back to the terminal server according to another idea underlying the invention.
  • the advantage of the method according to the invention is that the data input from a large number of terminal server client computers, e.g. practically over the entire footprint of a geostationary satellite or in a mobile one
  • Radio data network can be arranged distributed over a large area, can be done centrally at a speed that is otherwise achieved only in the interactive data input via a terrestrial data network, in which the physical delay times or latencies are orders of magnitude much smaller than that in distresslatenten wireless data networks Case is.
  • HTML-based applications where the HTML pages are downloaded from a web server and then displayed by a complex browser software running on the client, this is typically not the case because the HTML code is interpreted by the browser software or is compiled, which is known to easily occur errors in the transmitted data crashes of the browser software.
  • the terminal server is operated under a window-oriented operating system, wherein the screen representations transmitted to the terminal server client prior to being transmitted to the terminal server client on the terminal server by a window program routine of the operating system of the terminal server based on window and object parameters.
  • the window-oriented operating system is preferably the Windows 2000, 2003 or 200X server marketed by the Microsoft Corporation, in which the data processing programs for each of the client computers connected to the terminal server run on a virtual desktop in the main memory of the server.
  • the Representation of the window representations generated by a respective data processing program is controlled by the so-called window manager, wherein each object which is to be displayed by a data processing program on the screen of the terminal server client computer, created on the virtual desktop, and by the window manager is managed.
  • Each object which z..B.
  • the data fields, scroll bars, buttons as well as the windows and frames thereof may themselves be described by the window manager on the basis of associated parameters, the parameters for representing the data fields beispiels ⁇ , in addition to a numbering, the processing sequence directly or indirectly determines the position of the data field on the screen, the font, the font size and the position of the cursor, etc. include.
  • the parameters for the processing sequence of the data fields within the window manager are used by the independent program routine to accelerate the screen display on the terminal server-client computer when data is entered into the data fields.
  • a e.g. On the terminal server running further program routine or a utility preferably prefers to create a copy or at least a partial copy of the window and object parameters, which the window program routine of the operating system of the terminal server - in the case of Windows 200X Server the Window Manager - used to create the active screen image of the currently running data processing program.
  • This copy or partial copy of the window manager which has a small size compared to pure pixel graphics due to the object-oriented description, is then sent via the high-latency radio data network to the terminal server client and read by the stand-alone program routine.
  • the standalone program routine analyzes the commands and / or data entered via the input medium prior to transmission to the terminal server, e.g. by known
  • the standalone program routine autonomously changes the active screen representation depending on the processing order and the window and object parameters such that the prompt occurs upon the occurrence of a given command, e.g. "ARROW UP", which is assigned to a return jump in a previous data field, is set to the beginning of the preceding data field.
  • a given command e.g. "ARROW UP”
  • the result is a liquid interactive display on the screen despite the comparatively large physical latency of 0.7 to 2 seconds.
  • the independent program routine analyzes the position of a data display device, in particular a mouse pointer, assigned to the input medium, and independently changes the view of the associated object in the active screen display in a predetermined manner, if the position of the Organizeein ⁇ direction corresponds to a predetermined position or a range in the activeillerdar ⁇ position.
  • the object is preferably a button which, for example, is illuminated or otherwise graphically changed when the mouse pointer is in the region of the button in order to signal to the user that the button is activated when a command is entered.
  • a further increase in the execution speed of the interactive user program on the client screen can be achieved in that the independent program routine simultaneously monitors whether a command, in particular a mouse click, is entered.
  • a command in particular a mouse click
  • such an object is a known scroll bar which, by clicking on the data display device, alters both its representation in a predefined manner and also shifts at least part of the content of the active image display.
  • the shifting of the screen display preferably takes place in this case in that the entire content of the screen display defined by the copy of the window manager in the terminal server client is shifted in a known manner overall in the memory of the graphics card of the client before the screen presentation by the client Terminal server recalculated and transmitted to the client.
  • the locally generated screen display in such operations corresponds to a large extent with that of Servers compute, and for example 0.7 to several seconds later, to the client via the high-latency radio data network sent screen display, but which is ultimately the authoritative representation that overwrites the locally generated representation.
  • the screen images are preferably transmitted by their own suitably configured and optimized protocol, and may also include uncompressed or compressed bitmap files which are transmitted to the terminal server client. However, according to the preferred embodiment of the invention, preferably only that part of the screen display is transmitted via the geostationary satellite, which has changed from the previous representation.
  • the data volumes transmitted via a high-latency radio data network as well as the number of transmissions - which is often also referred to as traffic - can be greatly reduced in an advantageous manner, in particular in combination with a transmission without or substantially without acknowledgments.
  • the transmission of the further data packets from the terminal server client to the terminal server takes place essentially without a confirmation of the reception of the transmitted further data packets by the terminal server, whereby the traffic is repeated beträcht ⁇ Lich reduce, and the speed at which the interactive fürspro ⁇ program for the user runs on the screen of the terminal server client can increase.
  • a reconfirmation only in the case of commands that cause a major operation on the server e.g. cause extensive reordering of the database, be provided with a back confirmation to make sure that no unnecessary waiting times are generated.
  • a further reduction of the data volumes transmitted via a high-latency radio data network can be achieved according to the invention by examining the further data packets for redundant data before sending them to the terminal server, and removing determined redundant data from the further data packets or by data already entered be replaced.
  • the data packets generated by the terminal server can also be checked for redundant data before being sent to the terminal server client, and redundant data determined can be removed from the data packets or replaced by data held in the terminal server.
  • a plurality of the data packets to be transmitted between the terminal server and the terminal server client via the radio data network and / or further data packets can be used the combined larger data packets and / or the combined larger further data packets have an optimized size, such that a transmission over the highly-latent radio data network without fragmentation of the data packets and / or data packets further data packets takes place.
  • the optimized size of the larger data packets and / or the larger further ⁇ packets is preferably determined here by the terminal server in the establishment of a scarflatenten wireless data network for the respective connection to the terminal server client on the basis of connection-specific parameters.
  • Fig. 1 is a schematic overview of a high-capacity radio data network according to the invention with the associated computer components and program routines to illustrate the operation of the method according to the invention.
  • a terminal server client computer 2 is connected via a combinlatentes radio data network 4 with a terminal server 6, which is indicated in the figure for illustrative reasons only in dashed lines.
  • the high-latency radio data network 4 comprises a first client-side transmitting and receiving station 8 and a server-side transmitting and receiving station 10, which are coupled to one another via a mobile radio station or a geostationary satellite 12 for data exchange.
  • one, two or more data processing programs 14 are executed on the terminal server 6 and run separately in associated closed sessions or sessions 16 on a virtual desktop of the terminal server 6.
  • a single data processing program 14 which serves to enter customer master data which is filled with the corresponding data using a predefined processing sequence with the aid of a prompt 7, as is known from form processing programs, word processing programs or spreadsheet programs .
  • the processing sequence of the data fields 18, their position, width, height and also the type of font used therein is controlled by a window program routine 20 of the running on the terminal server 6 operating system.
  • the window program routine 20 preferably contains in tabular form all the window and object parameters that are needed to generate the screen display of the data processing program 14 on the virtual desktop of the terminal server 6.
  • each data field 18 is assigned an associated ordinal number # 1, # 2, # 3, etc., which specifies the parameter for the processing sequence of the data fields 18.
  • the terminal server client 2 runs an independent program routine 22, which from a further program routine 24 on the terminal server 6 via the harnesslatente wireless data network 4, a copy or partial copy of the window program routine 20, or the windows and Obtains object parameters for displaying the windows and objects, which latter may include, for example, buttons 36 or scroll bars 38 as well as the data fields 18 themselves.
  • the transfer of the copy or partial copy 34 of the window and object parameters of the window program routine 20 is preferably carried out at the start of the data processing program 14 on the terminal server 6 as well as a change to a completely new screen display after it has been generated by the data processing program 14.
  • the screen image of the data processing program generated on the terminal server 6 by means of the window program routine 20 is then transmitted via the high-latency radio data network 4 to the terminal server client 2 in the form of data packets essentially without acknowledgments, and on the screen 26 of the client 2 in the form of an interactive user program, as indicated schematically by the arrow 28.
  • the terminal server client 2 is further connected to a data input medium in the form of a keyboard 30 and a data display device in the form of a mouse 32, via which the user inputs data and commands received from the terminal server client 2 via the high-latency Radio data network 4 are sent as additional data packets to the terminal server 6.
  • the data processing program 14 generates a new updated screen display of the interactive user profile as a function of the further data packets.
  • the commands and data entered via the keyboard 30 or mouse 32 are typically input as ASCII Character is analyzed by the stand-alone program routine 22 running on the terminal server client 2, and the command prompt 7 is moved locally depending on the respective command or character, while the commands and / or characters are delayed via the high-latency radio data network 4 Terminal server 6 are transmitted and billed by this, and the updated screen presentation is sent back to the client 2.
  • the independent program routine 22 recognizes this on the basis of the copy or partial copy 34 of the window and object parameters. Now, if e.g. entered by the user on the keyboard 30 by pressing the appropriate key, it is detected by the stand-alone program routine 22 by means of an appropriate query, and in the copy 34 of the window and object parameters, the associated parameters for the previous data field 18 with the ordinal # 2 read.
  • the object parameters associated with the data field 18 with the ordinal number # 2 for the position, width, height and font, etc. are output via the independent program routine 22. passed to the operating system of the terminal server client 2, which in turn controls the graphics card of the terminal server client in a known manner with appropriate commands to the representation of the second order number # 2 To change data field 18 on the screen 26 to the effect that the input request is 7 set to the left edge of the data field to enter via the keyboard 30 more data in the data field can.
  • the updated screen representation of the interactive user program is calculated by the terminal server 6 and sent via the high-latency radio data network 4 to the terminal server client 2, the locally generated screen image of the interactive user program on the Screen 26 replaced by the screen display calculated by the terminal server 6.
  • the terminal server 6 preferably only the changed parts of the screen display are overwritten.
  • the independent program routine 22 sets the input request 7 when entering a further command, e.g. when pressing the "ENTER” or "TAB” key in the manner described above by querying the copy or partial copy 34 of the window and object parameters at the beginning of the data field 18 with the next higher ordinal number # 4.
  • the window program routine 22 on the terminal server 6 also contains objects of the screen display (controls), which can be configured in FIG. 1 as, for example, the mouse 32 activatable buttons 36 or scroll bars 38, and preferably also by way of copy or partial copy 34 of the window and object parameters are transmitted via the scarflatente wireless data network 4 to the terminal server client 2.
  • the standalone program routine 22 in the preferred embodiment of the invention also monitors the position of the mouse pointer, and for example, changes the style or style of the button 36 when the position of the mouse pointer corresponds to the area on the screen 26 in which the button 36 is located.
  • the independent program routes 22 compare the x and y coordinates of each object in the copy 34 of the window and object parameters with the current mouse position, and if there is a match, the further object parameters. from the copy 34 of the window and object parameters, for example, by the associated row of an associated table is read out.
  • the object 36 is to be activated by clicking with the mouse 32, e.g. to leave the input mask, this can be signaled by the generation of a locally generated by the further program routine 22 acoustic signal.
  • this can be signaled by the generation of a locally generated by the further program routine 22 acoustic signal.
  • clicking on the button 36 or entering a corresponding command via the keyboard 30 is read from the standalone program routine to eg locally display the screen representation of a superordinate level of the data processing program 14, from which the mask representation shown in FIG. 1 has been changed, before this representation is calculated by the terminal server 6 and delayed via the high-latency radio data network 4 to the terminal server Client 2 is sent for display on the screen 26.
  • a subroutine routine running in the operating system of the terminal server client 2 can be called up, which shifts the entire screen representation according to the specifications of the copy 34 of the window and object parameters by changing the contents of the memory of the graphics card of the Clients 2 is manipulated in a known manner.
  • the method according to the invention can also be used very advantageously in existing mobile radio networks, in particular in GSM networks with frequencies in the range of 900 or 1800 MHz, or even in UMTS networks.
  • GSM networks with frequencies in the range of 900 or 1800 MHz, or even in UMTS networks.
  • UMTS networks can also be used very advantageously in existing mobile radio networks, in particular in GSM networks with frequencies in the range of 900 or 1800 MHz, or even in UMTS networks.
  • a further advantage of the method according to the invention which emerges in particular with the use of GSM mobile radio devices for data transmission, is that the amount of data transmitted is considerably reduced compared with methods according to the prior art.
  • the number of exchanged between client and server Reduced data packets from more than 1300 to less than 100 data packets, which reduced responsiveness to interactive work with the database application.
  • the otherwise usual delays in the data input which are caused by the generally unavoidable long propagation times / RTT (round trip time), which in the mobile radio range e.g. 700-4000 ms, be reduced in an advantageous manner to such an extent that they are no longer perceived as disturbing by the database application operator.
  • RTT round trip time
  • the data packets are provided with a coding, which is preferably designed as a continuous identification number.
  • the terminal server client checks, based on the current identification number of the data packet currently being received, whether or not it matches the expected number of the consecutive numbering received from the Identification numbers of the previously received data packets is determined. If the identification number does not correspond to the expected sequential number after a certain waiting time, since, for example, a data packet has not been transmitted properly in the meantime, the terminal server client sends a corresponding request via a special, provided retransmission channel (resend) to the terminal server. to resend the missing data packet.
  • resend special, provided retransmission channel
  • the terminal server client detects, for example by means of a corresponding program routine that the Data packet 1004 has not been transmitted, and requests it from the terminal server for retransmission.
  • Database program which is executed in dependence on commands and data, which are input via an input medium (30) connected to the terminal server client (2), screen representations of an interactive user program with several, after one by parameter (# 1 , # 2, # 3) given sequence of processing passed through data fields (18), in the form of
  • Data packets are transmitted to the terminal server client (2) essentially without any acknowledgments and are displayed by the latter on a display medium (26), wherein on the display medium (26) by a prompt (7) the input of further data into a corresponding data field (18) is signaled via the input medium, which in the form of further data packets via the
  • Telecommunications network (4) to the terminal server (6) characterized in that the parameters (# 1, # 2, # 3) for the processing order of the data fields (18) via the telecommunications network (4) to the terminal server Client (2) are transmitted, and that runs on the terminal server client (2) an independent Programm ⁇ routine (22), which when entering predetermined commands on the Eingabe ⁇ medium (30, 32), the screen as a function of the parameters (# 1, # 2, # 3) for the processing order independently changed in such a way that the prompt (7) within a data field (18) is moved in the next or previous data field after the processing order.
  • an independent Programm ⁇ routine 22

Abstract

Ein Verfahren zur Reduzierung der Latenzzeit bei der interaktiven Datenkommunikation zwischen einem Terminal-Server (6) und einem Terminal-Server-Client (2), die über ein hochlatentes Funkdatennetzwerk (4), miteinander verbunden sind, wobei auf dem Terminal-Server (6) ein Datenverarbeitungsprogramm (14), insbesondere ein Datenbankprogramm, ausgeführt wird, welches in Abhängigkeit von Befehlen und Daten, die über ein mit dem Terminal-Server-Client (2) verbundenes Eingabemedium (30) eingegebenen werden, Bildschirmdarstellungen eines interaktiven Anwenderprogramms mit mehreren, nach einer durch Parameter (#1, #2, #3) vorgegebenen Bearbeitungsreihenfolge durchlaufenen Datenfeldern (18) erzeugt, die in Form von Datenpaketen im wesentlichen ohne Rückbestätigungen auf den Terminal-Server-Client (2) übertragen und von diesem auf einem Anzeigemedium (26) dargestellt werden, wobei auf dem Anzeigemedium (26) durch eine Eingabeaufforderung (7) die Eingabe von weiteren Daten in ein zugehöriges Datenfeld (18) über das Eingabemedium signalisiert wird, die in Form von weiteren Datenpaketen über das Telekommunikationsnetzwerk (4) an den Terminal-Server (6) übertragen werden, zeichnet sich dadurch aus, dass die Parameter (#1, #2, #3) für die Bearbeitungsreihenfolge der Datenfelder (18) über das Telekommunikationsnetzwerk (4) an den Terminal-Server-Client (2) übertragen werden, und dass auf dem Terminal-Server-Client (2) eine eigenständige Programmroutine (22) abläuft, die bei der Eingabe vorgegebener Befehle über das Eingabemedium (30, 32) die Bildschirmdarstellung in Abhängigkeit von den Parametern (#1, #2, #3) für die Bearbeitungsreihenfolge in der Weise selbständig verändert, dass die Eingabeaufforderung (7) innerhalb eines Datenfeldes (18) in das nach der Bearbeitungsreihenfolge nächste oder vorhergehende Datenfeld bewegt wird.

Description

VERFAHREN ZUR REDUZIERUNG DER LATENZZEIT BEI DER INTERAKIVEN DATENKOMMUNIKATION ZWISCHEN EINEM TERMINAL SERVER UND EINEM TERMINAL-SERVER CLIENT IN EINEM DRAHTLOSEN TELEKOMMUNIKATIONSNETZWERK
Die Erfindung betrifft ein Verfahren zur Reduzierung der sichtbaren Latenzzeit bei der interaktiven Datenkommunikation zwischen einem Terminal Server und einem mit diesem über ein drahtloses Telekommunikationsnetzwerk, insbesondere ein GSM, GPRS, UMTS- Netzwerk oder ein sonstiges Funkdatennetzwerk, verbundenen Terminal-Server Client, gemäß dem Oberbegriff von Anspruch 1.
Hintergründe
Drahtlose Netzwerke (Mobilfunk- sowie satellitengestützte Datennetze) unterscheiden sich von verdrahteten Netzwerken in vielerlei Hinsicht. Dies führt dazu, dass Computer Anwendungen und Protokolle welche in einem fest verdrahteten Netzwerk ohne Probleme funktionieren in einem drahtlosen Netzwerk nicht so effizient arbeiten wie man eigentlich annimmt oder schlicht gar nicht funktionieren. Die Konsequenz ist, das Computer Anwendungen die für ein verdrahtetes Netzwerk entwickelt und getestet wurden, in einem drahtlosen Netzwerk nicht oder nur mit hohem Aufwand betrieben werden können.
Ferner werden Computer Anwendungen und Protokolle zum Einsatz auf Standard Arbeitsplätzen entwickelt, die über ein lokales Netzwerk mit einem Server verbunden sind. Ein Problem hierbei besteht darin, dass die dabei zur Datenübertragung oftmals eingesetzten drahtlosen Netzwerke ein komplett anderes physikalisches Verhalten als z.B. lokale Ethernet Netzwerke aufweisen. Die häufig verbreitete Vorstellung, dass sich die bei der Datenübertragung eingesetzten Protokolle genau so in einem drahtlosen wie in einem Ehternet Netzwerk verhalten ist jedoch nicht richtig.
Demgemäß führen bekannte Standard Protokolle wie insbesondere TCP (Transmission Control Protocol) z.B. bei der Übertragung von TCP/IP Datenpaketen häufig zu schwerwiegenden Problemen in einem GSM-, GPRS-, VSAT-, DVB-RCS- oder einem sonstigen drahtlosen Netzwerk mit einer hohen Laufzeit.
Allgemein bekannte Probleme in drahtlosen Datennetzen:
Schwankende Kapazitäten
Die gemachten Annahmen im Zusammenhang mit verdrahteten Netzwerken unterscheiden sich erheblich von denen in einem drahtlosen Netzwerk. So ist es z.B. richtig anzunehmen, dass verlorene Datenpakete in einem verdrahteten Netzwerk durch eine Überlastung verursacht worden sind, so dass dieses Problem mit einem speziellen Überlastungs- Kontrol-Algorithmus, welcher die Geschwindigkeit entsprechend reduziert, gelöst werden kann. In einem drahtlosen Netzwerk kommt es demgegenüber zu unterschiedlichen Kapazitätsverlusten, weshalb diese ein viel größeres Problem darstellen.
So kann z.B. die Verbindung dadurch unterbrochen werden dass ein Mobil Telefon sich in einer Position bewegt in der Radio Wellen nicht abgestrahlt werden können oder in der Wellen von verschiedenen Objekten reflektiert werden und sich dadurch gegenseitig auslöschen. Ein Beispiel hierfür kann eine Durchfahrt durch einen Tunnel sein. Auch kann das Netzwerk selbst Ursache solcher schwankender Kapazitäten sein wie z.B. die Aktualisierung einer GPRS Zelle, die verursacht wird, wenn ein Teilnehmer von einer Basis Station zu einer anderen Basis Station wechselt. Das Ergebnis ist sehr oft der Verlust an Kapazität, welcher sich zwischen ein paar Mikrosekunden und mehreren Sekunden bewegen kann. Die meisten implementieren Protokolle verwenden Überlastungskontroll-Methoden mit Überlastungs-Vermeidungs-Algorithmen welche das Netzwerk oftmals fälschlicherweise als Überlastet ansehen und daher einfach die Übertragungsgeschwindigkeit reduzieren. Als Konsequenz wird die Übertragungsgeschwindigkeit nicht wieder heraufgesetzt, wenn das Netzwerk nach einiger Zeit seinen ordnungsgemäßen Zustand erneut angenommen hat. In der Praxis bedeutet dies, dass z.B. GPRS nicht die gewünschte, bzw. angeforderte Kapazität von z.B. 20 Kbits/Sec bereitstellen kann.
Lange und heftig schwankende Laufzeiten
Die Latenzzeit ist die Zeit die ein Datenpaket benötigt um von der Absender- zur Empfängerquelle und wieder zurück zu gelangen.
In einem verdrahteten Netzwerk, wie z.B. einer DSL Verbindung, ist diese Laufzeit gewöhnlich sehr gering und eine Schwankung der Laufzeit in der Regel nicht vorhanden. Die Ursache einer Änderung dieser Laufzeit kann mit Sicherheit auf die Überlastung oder andere Probleme im Netzwerk zurückgeführt werden, so dass die implementierten Protokolle defensiv handeln und die Übertragungsgeschwindigkeit reduzieren können um einer solchen Überlastung entgegenzuwirken.
In einem drahtlosen Netzwerk sind jedoch lange und heftig schwankende Laufzeiten die Regel. In einem Mobilfunkdatennetz, wie z.B. in einem GPRS Netzwerk, schwanken diese Laufzeiten sehr heftig und können bis zu mehrere Sekunden betragen. Protokolle die für fest verdrahteten Netzwerke entwickelt wurden interpretieren daher diese Situation völlig falsch.
Fehlerhafte Datenübertragung
In einem verdrahteten Datennetzwerk gibt es selten fehlerhafte Datenübertragungen, wohingegen diese in drahtlosen Datennetzen - abhängig von den jeweiligen Kommunikationsparametern - vergleichsweise oft vorkommen können. In einem GPRS Datennetzwerk definiert z.B. ein als „QoS" bezeichneter Parameter den Teil des Gesamtsystems welcher für den Datenfunk selber für das wiederholte Senden fehlerhafter Datenpakete zuständig ist oder nicht.
Dies ist von Bedeutung, da bessere QoS Parameter nicht für alle Benutzer verfügbar sind. Obgleich die bekannten TCP und UDP Protokoll prüfen ob fehlerhafte Datenpakete vorhanden sind oder nicht, können sie nicht den exakten Teil des fehlerhaften Datenpaketes ermitteln, so dass häufig ganze Blöcke von Datenpaketen verworfen und noch einmal erneut übertragen werden. Das bedeutet, dass auch wenn nur ein kleiner Teil eines grossen Datenpaketes fehlerhaft ist, das Datenpaket als ganzes verworfen wird. Es werden daher auch fehlerfreie Datenpakete noch einmal als ganzes übertragen.
Zeitweilige Unterbrechungen
In einem fest verdrahteten Netzwerk ist der totale Verlust eines Dienstes selten und der Benutzer kann erwarten, dass er nach einem erneuten Start des Dienstes oder einer Anwendung an der Stelle weiter arbeiten kann an der er zuletzt unterbrochen wurde.
In einem drahtlosen Netzwerk wird der Benutzer hingegen mit ständigen Unterbrechungen seines Dienstes konfrontiert, wobei eine zusätzliche Schwierigkeit darin besteht, dass sein
System automatisch wieder verbunden wird, da in einem solchen Falle jedes mal eine andere IP Adresse zugeordnet wird (dies ist typisch für eine GPRS -Verbindung). Die
Konsequenz daraus ist, dass der Benutzer sehr oft aufgefordert wird seine gesamt
Anwendung komplett neu zu starten inklusive der gesamten Anmeldeprozedur des entsprechenden Dienstes. Unberechenbarkeit
Das Hauptproblem in drahtlosen Netzwerken ist die Tatsache das es nicht möglich ist im
Voraus zu erkennen, was ein Netzwerk als nächstes tut. Wenn beispielsweise eine GPRS Anwendung in einem realen Netzwerk in einem Büro getestet wird, kann nur davon ausgegangen werden, dass die Anwendung in diesem Netzwerk und nur in diesem Büro ordnungsgemäß arbeitet. Wenn hingegen die in diesem Netzwerk herrschenden
Bedingungen einfach auf ein anderes Netzwerk übertragen werden, ändert sich das
Verhalten des Netzwerks unter Umständen ganz erheblich, so dass ein ordnungsgemäßer Betrieb der Anwendung z.B. überhaupt nicht mehr möglich ist.
Wechselt beispielsweise ein Benutzer einer mobilen Anwendung oder eines Spiels in ein mobiles Datenfunknetzwerk, wie z.B. ein GPRS oder WLAN-Netzwerk, so kann es vorkommen, dass plötzlich auch eine Mobilfunk-Zelle gewechselt wird. Jede Mobüfunk- Zelle wiederum ändert vorübergehend ihren zugeordneten Service. Zusätzlich verursacht Bewegung eine Erhöhung der Laufzeit sowie eine Änderung der verfügbaren Bandbreite, was beim Betreiben von insbesondere serverbasierenden interaktiven Anwendungen zu weiteren Problemen führt.
Besonderheiten satellitengestützter Datennetze
Bei der Datenkommunikation über Satellitennetzwerke werden bevorzugter Weise geostationäre Satelliten eingesetzt, die in einer Entfernung von ca. 36 000 km über der Erdoberfläche positioniert werden und sich mit der Erde unter Beibehaltung einer im Wesentlichen festen Position gegenüber der Erdoberfläche mitbewegen. Hierdurch erscheint es von der Erde aus betrachtet so, als wenn der Satellit stationär über dem unterhalb des Satelliten gelegenen Gebiet der Erdoberfläche stehen würde, in welchem die Kommunikation mit dem Satelliten möglich ist. Dieses Gebiet wird häufig auch als „Footprint" bezeichnet. Es gibt mittlerweile zahlreiche Satelliten, die sich praktisch wie Perlen auf einer Schnur in einem Abstand von ca. 36 000 km über dem Äquator aufreihen.
Satellitenverbindungen eignen sich aufgrund ihrer hohen Bandbreite und Übertragungs- Sicherheit bestens zur Übertragung von Massendaten, wie beispielsweise analogen und digitalen Fernsehsendungen, Videos sowie Internet-Downloads, was darauf zurückzu¬ führen ist, dass hierbei keine interaktiven Abfragen und Rückbestätigungen über den Satelliten übertragen werden müssen.
Diese Massendaten werden über sogenannte Satelliten-HUBS (Uplinks) und mit diesen verbundene zentrale Server-Rechner als fortlaufender Datenstrom an den geostationären Satelliten gesendet, und von diesem im Bereich des Footprints des Satelliten an eine Vielzahl von Satelliten-Empfangsanlagen verteilt.
Aufgrund dieses großen Abstandes und der endlichen Ausbreitungsgeschwindigkeit von elektromagnetischen Signalen tritt bei der Datenkommunikation über geostationäre Satelliten das Problem auf, dass die Laufzeit eines elektromagnetischen Signals von einem Sender auf der Erde zum Satelliten und von dort aus zum Empfänger ca. 0,24 Sekunden beträgt, so dass eine vom Empfänger ohne Zeitverzögerung abgesandte Antwort den Sender infolge der sich zusätzlich ergebenden elektronischen Zeitverluste bei der Signalwandlung frühestens erst nach ca. 0,7 bis 2 Sekunden erreicht.
Bekannte Probleme zentralisierter Terminal Server Anwendungen in einem hochlatenten drahtlosen Funkdatennetzwerk
Für die interaktive Datenkommunikation zwischen einer Terminal-Server Anwendung und einem Terminal-Server-Client, bei der auf dem Terminal-Server die eigentliche Datenverarbeitung und Logik ausgeführt wird, und der Terminal-Server-Client lediglich die Funktion eines intelligenten Terminals übernimmt, welches aus den über ein hochlatentes drahtloses Funkdatennetzwerk vom Terminal-Server übertragenen Daten eine interaktive Bildschirmdarstellung für den Benutzer des Terminal-Server-Clients erzeugt, führt diese häufig auch als Latenzzeit bezeichnete Zeitverzögerung zwangsweise dazu, dass ein vom Benutzer des Terminal-Server-Clients z.B. über eine Tastatur eingegebenes Zeichen oder eine Mausbewegung frühestens nach 1 bis 2 Sekunden durch ein entsprechendes Echo des Terminal-Servers auf dem Bildschirm des Terminal-Server- Clients bestätigt wird. Obgleich das erfindungsgemäße Verfahren prinzipiell bei allen bekannten Telekommunikationsnetzwerken angewandt werden kann, wird dieses bevorzugt bei hochlatenten drahtlosen Funkdatennetzwerken eingesetzt und demgemäß nachfolgend auch anhand von solchen beschrieben.
Aufgrund dieser bei der interaktiven Datenkommunikation nicht hinnehmbaren Zeitverzögerung von ca. 0,7 bis zu mehreren Sekunden, die bei jeder Eingabe des Benutzers über die Tastatur, Maus oder sonstige Dateneingabeeinrichtung des Terminal- Server-Clients auftritt, sind interaktive Client-Server-Anwendungen, wie z.B. ERP- Software mit datengetriebenen Anwendungen, die z.B. bei terrestrischen Verbindungen bei einer großen Anzahl von Benutzern in vorteilhafter Weise mit Hilfe von Betriebssystemen wie UNIX oder Windows 2000 Server etc., durchgeführt werden können, über hochlatente drathlose Funkdatennetzwerke in der Praxis in der Regel nicht ohne weiteres realisierbar.
Hierbei ist es insbesondere störend, dass bei Datenbankanwendungen, die auf dem Terminal-Server ausgeführt werden, und bei denen die Dateneingabe in entsprechende Datenfelder oder Dateneingabefelder erfolgt, die auf dem Terminal-Server-Client in Form eines interaktiven Anwenderprogramms dargestellt und nacheinander in einer vorgege¬ benen Reihenfolge durchlaufen werden, bei der Eingabe von Zahlen und Buchstaben in die einzelnen Felder oder auch beim Wechsel von einem Datenfeld zum nächsten Datenfeld sehr große Zeitverzögerungen entstehen, die ein Arbeiten in der Praxis sehr mühsam, wenn gar unmöglich machen. Aus der nicht vorveröffentlichten DE-A- 102 00 165 des Anmelders ist es bekannt, die Latenzzeit bei der interaktiven Datenkommunikation zwischen einem Terminal-Server- Client und einem Terminal-Server, die über ein einen geostationären Satelliten enthal- tendes Satellitennetzwerk miteinander verbunden sind, zur beschleunigten Ausführung eines auf dem Terminal-Server-Client ablaufenden interaktiven Anwenderprogramms dadurch zu reduzieren, dass die Übertragung der Datenpakete vom Terminal-Server-Client zum Terminal-Server und/oder zurück im Wesentlichen ohne Rückbestätigungen erfolgt.
Weiterhin wird in der WO 01/08378 Al vorgeschlagen, bei Client-Server Systemen, die über ein terrestrisches Netzwerk betrieben werden, das visuelle Antwortverhalten eines Client-Rechners dadurch zu beschleunigen, dass der Client-Rechner auf eine Eingabe hin eine voraussichtliche Darstellung des Bildschirminhalts errechnet, die auf dem Bildschirm des Client-Rechners ausgegeben wird, bevor die anhand der eingegebenen Daten vom Server erzeugte tatsächliche Bildschirmdarstellung vom Server an den Client zur Darstel¬ lung auf dem Bildschirm übertragen wird.
Abgesehen davon, dass die Schrift keine konkreten Angaben darüber enthält, wie und anhand von welchen Größen die Vorausberechnung oder Vorhersage der voraussichtlichen Darstellung des Bildschirminhalts erfolgt, gibt die Schrift ebenfalls keinen Hinweis darauf, das dort beschriebene Verfahren bei einem Netzwerk einzusetzen, bei dem die Daten über einen geostationären Satelliten im Wesentlichen ohne Rückbestätigungen übertragen wer¬ den, um die physikalisch durch die Signallaufzeiten bedingte Latenzzeit - die verglichen mit der durch die Auslastung des Servers bedingten zeitlichen Verzögerung erheblich größer ist - bei der Eingabe von Daten in Datenfelder am Client-Rechner weiter zu verringern.
Demgemäß ist es eine Aufgabe der vorliegenden Erfindung, ein Verfahren zu schaffen, mit dem sich die Arbeitsgeschwindigkeit von durch einen Terminal-Server über ein Telekommunikationsnetzwerk auf dem Anzeigemedium eines Terminal-Server-Clients bereitgestellten interaktiven Anwenderprogrammen, bei denen eine Eingabe von Daten in vorgegebene Datenfelder erfolgt, weiter erhöhen lässt. Diese Aufgabe wird gemäß der Erfindung durch die Merkmale von Anspruch 1 gelöst.
Weitere Merkmale der Erfindung sind in den Unteransprüchen enthalten.
Gemäß der Erfindung sind ein Terminal-Server mit einer laufenden Terminal Server Anwendung und ein Terminal-Server-Client über ein Telekommunikationsnetzwerk, insbesondere ein hochlatentes drahtloses Funkdatennetzwerk , zum Datenaustausch miteinander gekoppelt. Auf dem Terminal-Server wird ein Datenverarbeitungsprogramm, insbesondere in Form eines Datenbankprogramms mit Dateneingabeformular (GUI), eines Tabellenkalkulationsprogramms, eines Textverarbeitungsprogramms oder auch eines Programms zur Erstellung von E-mails, ausgeführt, bei dem von einem Benutzer des Terminal-Server-Client Rechners Daten über ein mit dem Terminal-Server-Client verbundenes Eingabemedium eingegebenen werden.
Die Eingabe der Daten erfolgt hierbei insbesondere formularbasiert in Datenfelder eines Formulars (GUI), wobei die Position, an der die Daten, z.B. Zahlen, Buchstaben oder sonstige Zeichen innerhalb eines Datenfeldes eingegeben werden, durch eine Eingabeaufforderung, z.B. eine Cursormarke, auf dem Bildschirm des Terminal-Server- Clients angezeigt wird. Im Falle einer Datenbankanwendung oder eines Tabellenkalkulationsprogramm stimmen die Datenfelder vorzugsweise mit den am Bildschirm dargestellten Eingabefeldern der Dateneingabemaske, bzw. der Tabelle überein, wohingegen die Datenfelder im Falle einer Textverarbeitung oder eines E-mail-Programms beispielsweise einer vollständigen Textzeile entsprechen können.
Wie bei derartigen Programmen üblich, werden die Datenfelder nach einer durch Parameter vorgegebenen Bearbeitungsreihenfolge durchlaufen, indem der Benutzer die Eingabe der Daten innerhalb eines Datenfeldes durch Eingabe eines Befehls abschließt. Ein solcher Befehl kann z.B. durch Drücken der „RETURN"-Taste, der „TAB"-Taste oder einer der Pfeiltasten etc. auf einer Tastatur eingegeben werden, und führt dazu, dass eine Eingab¬ eaufforderung, z.B. eine Cursormarke in einem gerade bearbeiteten Datenfeld in ein vorhergehendes oder nachfolgendes Datenfeld gesetzt wird. Die Dateneingabefelder werden vom Terminal-Server in der bei derartigen Client-Server Verbindungen - bei denen die Ausführung und grafische Darstellung des Datenverar¬ beitungsprogramms allein durch den Server erfolgt, und der Client lediglich die Funktion eines intelligenten Terminals übernimmt, über welches die grafischen Darstellungen in Form eines interaktiven Anwenderprogramms lediglich dem Benutzer angezeigt werden - üblichen Weise als Datenpakete über das Netzwerk an den Terminal-Server-Client übertragen, und von diesem mit Hilfe eines eignen Prozessors sowie einer entsprechenden Grafikkarte auf einem Bildschirm oder einem sonstigen Anzeigemedium dargestellt. Dabei wird die Eingabe von weiteren Daten in ein zugehöriges Datenfeld durch die Eingabe¬ aufforderung signalisiert, die sich an der jeweiligen Position innerhalb eines Datenfeldes befindet, an der weitere Daten eingegeben werden sollen.
Die über das Eingabemedium am Terminal-Server-Client eingegebenen Daten und/oder Befehle werden in erfindungsgemäßer Weise in Form von weiteren Datenpaketen ohne oder zumindest im Wesentlichen ohne Rückbestätigungen durch den Terminal-Server über das hochlatente Funkdatennetzwerk (Mobilfunk oder satellitengestützt) an den Terminal-Server übertragen, der die eingegebenen neuen Daten nach der Übertragung bei der Ausführung des Datenverarbeitungsprogramms dazu heranzieht, eine neue Bildschirmdarstellung zu erzeugen, die wiederum in Form von Datenpaketen an den Terminal-Server-Client übertragen wird, der die zugehörige neue Bildschirmdarstellung mit Hilfe seiner Grafikkarte aus den Datenpaketen errechnet und zur Anzeige auf dem Anzeigemedium bringt. Im Wesentlichen ohne Rückbestätigungen bedeutet hierbei, dass eine Rückbestätigung z.B. nur zum Verbindungsaufbau, oder zum Initialisieren oder Starten und/oder zum Beenden des interaktiven Anwenderprogramms übersandt wird, wohingegen während der Ausführung des interaktiven Anwenderprogramms bevorzugt keine Rückbestätigungen des Empfangs der übertragenen Datenpakete übersandt werden. Jedoch ist ebenfalls eine Übersendung von Rückbestätigungen z.B. nach 50, 100 oder mehr Datenpaketen denkbar, ohne dass das erfindungsgemäße Grundprinzip verlassen wird.
Das erfindungsgemäße Verfahren zeichnet sich dadurch aus, dass die Objekt-Parameter für die GUI-Darstellung und Bearbeitungsreihenfolge der Datenfelder sowie bevorzugt auch für allen anderen sichtbaren Objekte eines Dateneingabeformulars ebenfalls mit über das hochlatente Funkdatennetzwerk an den Terminal-Server-Client übertragen werden, und dass auf dem Terminal-Server-Client eine eigenständige Programmroutine abläuft, die bei der Eingabe vorgegebener Befehle über das Eingabemedium die Bildschirmdarstellung in Abhängigkeit von den Parametern für die Bearbeitungsreihenfolge in der Weise selbständig verändert, dass die Eingabeaufforderung innerhalb eines Datenfeldes in das nach der Bearbeitungsreihenfolge nächste oder vorhergehende Datenfeld bewegt wird.
Damit die in der Terminal Server Anwendung eingesetzte Logik auf Ereignisse reagieren kann, sendet der Terminal-Server-Client gemäß einem weiteren der Erfindung zugrunde liegenden Gedanken bevorzugt alle Standard-Betriebssystem Meldungen zurück an den Terminal Server.
Durch das erfindungsgemäße Verfahren ergibt sich der Vorteil, dass die Dateneingabe von einer großen Anzahl von Terminal-Server-Client-Rechnern, die z.B. praktisch über den gesamten Footprint eines geostationären Satelliten oder aber in einem mobilen
Funkdatennetzwerk über eine große Fläche verteilt angeordnet sein können, zentral mit einer Geschwindigkeit erfolgen kann, die sonst nur bei der interaktiven Dateneingabe über ein terrestrisches Datennetzwerk erreicht wird, bei welchem die physikalischen Verzögerungszeiten oder Latenzzeiten um Größenordnungen viel kleiner sind, als dies bei hochlatenten Funkdatennetzwerken der Fall ist.
Durch den Einsatz von intelligenten Terminals, die über den geostationären Satelliten oder allgemein ein Telekommunikationsnetzwerk mit einer hohen Latenzzeit mit dem Terminal- Server-Rechner verbunden sind, ergibt sich neben niedrigen Anschaffungs-, Betriebs- und Wartungskosten zudem der Vorteil, dass von den Terminal-Server-Client-Rechnern aus keine oder nur in sehr aufwendiger Weise größere Datenmanipulationen an den Daten des Terminal-Servers vorgenommen werden können, wenn die Terminal-Server-Client konstruktionsbedingt keine weiteren Einrichtungen zur Datenübertragung, wie beispielsweise Schnittstellen für Massenspeichermedien oder Netzwerkschnittstellen, besitzen. Weiterhin ergibt sich durch die Übertragung der Daten über ein hochlatentes Funkdatennetzwerk in Verbindung mit einer sonst nur bei terrestrischen Netzwerken eingesetzten Server-basierenden Datenverarbeitung, bei der das Datenverarbeitungsprogramm als solches ausschließlich auf dem Server abläuft, und nur die Bilddarstellungen an den Client zur Darstellung übertragen werden, der Vorteil, dass die Datenpakete vom Server zum Client und auch in umgekehrter Richtung im Wesentlichen ohne Rückbestätigungen oder Acknowledgements versandt werden können, ohne dass ein Fehler, der bei der Übersendung der Datenpakete oder weiteren Datenpakete auftritt, zu einem Absturz des Datenverarbeitungsprogramms auf dem Server führt.
Dies ist beispielsweise bei HTML-basierenden Anwendungen, bei denen die HTML-Seiten von einem Webserver heruntergeladen, und dann durch eine auf dem Client ablaufende komplexe Browsersoftware dargestellt werden, in der Regel nicht der Fall, da der HTML- Code von der Browsersoftware interpretiert oder kompiliert wird, wodurch bei Fehlern in den übertragenen Daten bekanntlich leicht Abstürze der Browsersoftware auftreten.
Bei dem erfindungsgemäßen Verfahren führt ein solcher Datenverlust hingegen lediglich zu einer unpräzisen Darstellung des gerade bearbeiteten Datenfeldes, da vorzugsweise lediglich die geänderten Bereiche der Bildschirmdarstellung übertragen werden, die jedoch nach der Eingabe eines nächsten Zeichens oder Befehls wieder korrigiert werden, wenn der Server die nächste Bildschirmdarstellung nach beispielsweise 2 Sekunden errechnet und an den Client zur Darstellung übersendet.
Gemäß der bevorzugten Ausführungsform der Erfindung wird der Terminal Server unter einem fenster-orientierten Betriebssystem betrieben wird, wobei die an den Terminal- Server-Client übertragenen Bildschirmdarstellungen vor der Übersendung an den Terminal-Server-Client auf dem Terminal-Server durch eine Fenster-Programmroutine des Betriebssystems des Terminal- Servers auf der Basis von Fenster- und Objektparametern erzeugt werden. Das fenster-orientierte Betriebssystem ist vorzugsweise das von der Fa. Microsoft Corporation vertrieben Windows 2000, 2003 oder 200X Server, bei dem die Datenverarbeitungsprogrammen für jeden der mit dem Terminal-Server verbundenen Client-Rechner auf einem virtuellen Desktop im Arbeitsspeicher des Servers ablaufen. Die Darstellung der von einem jeweiligen Datenverarbeitungsprogramm erzeugten Fenster- Darstellungen wird hierbei durch den sogenannten Window-Manager gesteuert, wobei jedes Objekt, welches von einem Datenverarbeitungsprogramm auf dem Bildschirm des Terminal-Server-Client Rechners dargestellt werden soll, auf dem virtuellen Desktop angelegt, und durch den Window-Manager verwaltet wird. Jedes Objekt, welches z..B. die Datenfelder, Rollbalken, Schaltflächen sowie auch die Fenster und Rahmen derselben selbst sein können, wird hierbei durch den Window-Manager anhand von zugehörigen Parametern beschrieben, wobei die Parameter zur Darstellung der Datenfelder beispiels¬ weise neben einer Nummerierung, welche die Bearbeitungsreihenfolge direkt oder indirekt festlegt, auch die Position des Datenfeldes auf dem Bildschirm, die Schriftart, die Schriftgröße sowie die Position des Cursors etc. mit beinhalten.
Bei dem erfindungsgemäßen Verfahren werden die Parameter für die Bearbeitungs¬ reihenfolge der Datenfelder innerhalb des Window-Managers von der eigenständigen Programmroutine dazu verwendet, die Bildschirmdarstellung auf dem Terminal-Server- Client Rechner bei der Eingabe von Daten in die Datenfelder zu beschleunigen.
Hierzu wird durch eine z.B. auf dem Terminal-Server ablaufende weitere Programmroutine oder ein Dienstprogramm bevorzugt durch Eingriff in das Betriebssystem eine Kopie oder zumindest eine Teilkopie der Fenster- und Objektparameter erstellt, die die Fenster- Programmroutine des Betriebssystems des Terminal-Servers - im Falle von Windows 200X Server der Window-Manager - zur Erzeugung der aktiven Bildschirmdarstellung des gerade ablaufenden Datenverarbeitungsprogramms verwendet. Diese Kopie oder Teilkopie des Window-Managers, die aufgrund der objektorientierten Beschreibung eine verglichen mit reinen Pixelgrafiken geringe Größe aufweist wird dann über das hochlatente Funkdatennetzwerk an den Terminal-Server-Client übersandt, und von der eigenständigen Programmroutine gelesen.
Die eigenständige Programmroutine analysiert die über das Eingabemedium eingegebenen Befehle und/oder Daten vor dem Übersenden an den Terminal-Server z.B. durch bekannte
„IF - THEN"- Abfragen, und ändert die aktive Bildschirmdarstellung auf dem Bildschirm des Terminal-Server-Clients durch Eingriff in den Grafikspeicher des Clients in Abhängig- keit von der Bearbeitungsreihenfolge sowie den Fenster- und Objektparametern in der Kopie des Window-Managers selbständig dahingehend, dass z.B. die Eingabeaufforderung an den Anfang des Datenfeldes mit der nächsten Ordnungsnummer gesetzt wird, wenn die „ENTER" Taste oder die "PFEIL nach unten " Taste gedrückt wird. Hierbei wird in vorteil- hafter Weise immer nur dasjenige Datenfeld geändert, welches gerade angesprungen wurde, ohne dass die gesamte Bildschirmdarstellung durch den Client neu berechnet wird.
In entsprechender Weise ändert die eigenständige Programmroutine die aktive Bildschirm¬ darstellung in Abhängigkeit von der Bearbeitungsreihenfolge sowie den Fenster- und Objektparametern in der Weise selbständig dahingehend, dass die Eingabeaufforderung beim Auftreten eines vorgegebenen Befehls, z.B. " PFEIL aufwärts", der einem Rück¬ sprung in ein vorhergehendes Datenfeld zugeordnet ist, an den Anfang des vorhergehenden Datenfeldes gesetzt wird.
Durch die lokale Änderung des jeweiligen Datenfeldes, welches gemäß der vom Window- Manager bestimmten Reihenfolge als nächstes angesprungen wird, ergibt sich trotz der vergleichsweise großen physikalischen Latenzzeit von 0,7 bis 2 Sekunden eine flüssige interaktive Darstellung am Bildschirm.
Wie der Anmelder gefunden hat, ist dies in überraschender Weise auch darauf zurück zu führen, dass die bei den beschriebenen Betriebssystemen im Falle von Datenübertragungen über terrestrische Datennetze aufgrund der hohen Störanfälligkeit sowie des Routing erforderlichen Rückbestätigungen für den sicheren Erhalt der übersandten Daten, im Wesentlichen entfallen, oder zumindest auf ein absolutes Mindestmaß reduziert werden können, da die Übertragung der Daten über hochlatente Funkdatennetzwerke in der Regel mit einer kalkulierbaren Störanfälligkeit verbunden ist.
Sollte es aufgrund der fehlenden Rückbestätigungen bei der Übersendung der Befehle und Daten doch einmal passieren, dass ein Datenpaket bei der Übersendung vom Server zum Client verloren geht, so führt dies nur kurzzeitig zu einer fehlerhaften Grafikdarstellung, die jedoch auf dem Bildschirm des Clients nach sehr kurzer Zeit automatisch korrigiert wird, wenn der Server eine aktualisierte Darstellung übersendet. Gemäß einer Weiterbildung des der Erfindung zugrundeliegenden Gedankens kann es weiterhin vorgesehen sein, dass die eigenständige Programmroutine die Position einer dem Eingabemedium zugeordneten Datenzeigeeinrichtung, insbesondere eines Mauszeigers, analysiert, und die Ansicht des zugehörigen Objekts in der aktiven Bildschirmdarstellung in einer vorbestimmten Weise selbständig ändert, wenn die Position der Datenzeigeein¬ richtung einer vorgegebenen Position oder einem Bereich in der aktiven Bildschirmdar¬ stellung entspricht. Das Objekt ist hierbei vorzugsweise eine Schaltflächen die z.B. erhellt oder in sonstiger Weise grafisch verändert wird, wenn der Mauszeiger sich im Bereich der Schaltfläche befindet, um dem Benutzer zu signalisieren, dass bei der Eingabe eines Befehls die Schaltfläche aktiviert wird.
Hierbei lässt sich eine weitere Steigerung der Ausführungsgeschwindigkeit des interaktiven Anwenderprogramms auf dem Client-Bildschirm dadurch erreichen, dass die eigenständige Programmroutine gleichzeitig überwacht, ob ein Befehl, insbesondere ein Mausklick, eingegeben wird. Ein solches Objekt ist beispielsweise ein bekannter Rollbalken, der durch Anklicken des mit der Datenzeigeeinrichtung sowohl seine Darstellung in einer vorgegebenen Weise ändert, als auch zumindest einen Teil des Inhalts der aktiven Bild¬ schirmdarstellung verschiebt. Das Verschieben der Bildschirmdarstellung geschieht hierbei vorzugsweise dadurch, dass der gesamte, durch die Kopie des Window-Managers im Terminal-Server-Client definierte Inhalt der Bildschirmdarstellung in bekannter Weise insgesamt im Speicher der Grafikkarte des Clients verschoben wird, bevor die Bildschirm¬ darstellung durch den Terminal-Server neu berechnet und an den Client übertragen wird. Aufgrund der Verwendung der Parameter aus der Kopie des Window-Managers auf dem Terminal-Server-Client stimmt die lokal erzeugte Bildschirmdarstellung bei derartigen Operationen, die keine durch das Datenverarbeitungsprogramm auf dem Server hervorge¬ rufene Änderung der Bildschirmdarstellung erzeugten, in hohem Maße mit der vom Server berechneten, und z.B. 0,7 bis mehreren Sekunden später an den Client über das hochlatente Funkdatennetzwerk übersandten Bildschirmdarstellung überein, die jedoch letztendlich die maßgebliche Darstellung ist, die die lokal erzeugte Darstellung überschreibt. Die Bildschirmdarstellungen werden vorzugsweise durch ein eigenes entsprechend ausgestaltetes und optimiertes Protokoll übertragen, und können ebenfalls unkomprimierte oder komprimierte Bitmap-Dateien umfassen, die an den Terminal-Server-Client über¬ tragen werden. Gemäß der bevorzugten Ausführungsform der Erfindung wird vorzugs- weise jedoch lediglich derjenige Teil der Bildschirmdarstellung über den geostationären Satelliten übertragen, der sich gegenüber der vorhergehenden Darstellung geändert hat.
Hierdurch können die über ein hochlatentes Funkdatennetzwerk übertragenen Datenmengen sowie die Anzahl der Übertragungen - die häufig auch als Traffic bezeichnet wird - insbesondere in Kombination mit einer Übertragung ohne oder im wesentlichen ohne Rückbestätigungen, in vorteilhafter Weise sehr stark reduziert werden.
Gemäß einer weiteren Ausführungsform der Erfindung erfolgt hierbei zusätzlich auch die Übertragung der weiteren Datenpakete vom Terminal-Server-Client an den Terminal- Server im Wesentlichen ohne eine Rückbestätigung des Empfangs der übersandten weite¬ ren Datenpakete durch den Terminal-Server, wodurch sich der Traffic nochmals beträcht¬ lich reduzieren, und die Arbeitsgeschwindigkeit, mit der das interaktive Anwendungspro¬ gramm für den Benutzer auf dem Bildschirm des Terminal-Server-Clients abläuft, steigern lassen. So kann es beispielsweise sein, dass eine Rückbestätigung nur im Falle von Befeh- len, die eine größere Rechenoperation auf dem Server, z.B. eine umfangreiche Neusor¬ tierung des Datenbestandes bewirken, mit einer Rückbestätigung versehen werden, um sicher zu gehen, dass keine unnötigen Wartezeiten erzeugt werden.
Wie der Anmelder weiterhin erkannt hat, entstehen durch das Fortlassen von Rückbe- stätigungen nicht nur bei der Übersendung der Datenpakete vom Server an den Client große Geschwindigkeitsvorteile, sondern es wurde auch beobachtet, dass selbst eine Redu¬ zierung der Rückbestätigungen beim Übersenden der weiteren Datenpakete vom Terminal- Server-Client an den Terminal-Server bei den oben beschriebenen Datenverarbeitungs¬ programmen keine nennenswerten Beeinträchtigungen für den Benutzer der Programme mit sich bringt. Eine weitere Reduzierung der über ein hochlatentes Funkdatennetzwerk übertragenen Datenmengen lässt sich in erfindungsgemäßer Weise dadurch erreichen, dass die weiteren Datenpakete vor dem Versenden an den Terminal-Server auf redundante Daten hin untersucht, und ermittelte redundante Daten aus den weiteren Datenpaketen entfernt oder durch bereits eingegeben Daten ersetzt werden.
In entsprechender Weise können auch die vom Terminal-Server erzeugten Datenpakete vor dem Versenden an den Terminal-Server-Client auf redundante Daten hin untersucht und ermittelte redundante Daten aus den Datenpaketen entfernt oder durch im Terminal-Server vorgehaltene Daten ersetzt werden.
Gemäß einer weiteren Ausführungsform der Erfindung, bei der die zur Verfügung stehend Bandbreite des hochlatenten Funkdatennetzwerkes in optimaler Weise ausgenutzt wird, können mehrere der zwischen dem Terminal-Server und dem Terminal-Server-Client über das Funkdatennetzwerk zu übertragenden Datenpakete und/oder weiteren Datenpakete zur größeren Datenpaketen und/oder größeren weiteren Datenpaketen zusammengefasst wer¬ den, wobei die zusammengefassten größeren Datenpakete und/oder die zusammengefassten größeren weiteren Datenpakete eine optimierte Größe aufweisen, derart, dass eine Übertra¬ gung über das hochlatente Funkdatennetzwerk ohne eine Fragmentierung der Datenpakete und/oder weiteren Datenpakete erfolgt.
Die optimierte Größe der größeren Datenpakete und/oder der größeren weiteren Daten¬ pakete wird hierbei vorzugsweise durch den Terminal-Server bei der Einrichtung eines hochlatenten Funkdatennetzwerkes für die jeweilige Verbindung zum Terminal-Server- Client auf der Basis von verbindungsspezifischen Parametern bestimmt.
Hierdurch lässt sich die Latenzzeit bei der Arbeit mit zentralisierten interaktiven Anwendungen in den beschriebenen hochlatenten Funkdatennetzwerken in vorteilhafter Weise weiter verkürzen.
Die Erfindung wird nachfolgend mit Bezug auf die Zeichnung anhand einer bevorzugten Ausführungsform beschrieben. In der Zeichnung zeigt
Fig. 1 eine schematische Übersichtsdarstellung eines erfindungsgemäßen hochlatenten Funkdatennetzwerkes mit den zugehörigen Rechnerkomponenten und Programmroutinen zur Verdeutlichung der Arbeitsweise des erfindungsgemäßen Verfahrens.
Wie in Fig. 1 dargestellt ist, ist ein Terminal-Server-Client Rechner 2 über ein hochlatentes Funkdatennetzwerk 4 mit einem Terminal-Server 6 verbunden, der in der Figur aus darstellungstechnischen Gründen lediglich in gestrichelten Linien angedeutet ist.
Das hochlatente Funkdatennetzwerk 4 umfasst eine erste clientseitige Sende- und Empfangsstation 8 sowie eine serverseitige Sende- und Empfangsstation 10, die über eine Mobilfunkstation oder einen geostationären Satelliten 12 zum Datenaustausch miteinander gekoppelt sind.
Auf dem Terminal-Server 6 werden je nach Anzahl der mit diesem verbundenen Terminal- Server-Client Rechner 2 ein, zwei oder mehrere Datenverarbeitungsprogramme 14 ausgeführt, die in zugehörigen abgeschlossenen Sitzungen oder Sessions 16 getrennt auf einem virtuellen Desktop des Terminal-Servers 6 ablaufen.
Im vorliegenden Falle ist zur besseren Übersichtlichkeit lediglich eine einziges Datenverarbeitungsprogramm 14 gezeigt, welches der Eingabe von Kundenstammdaten dient, die anhand einer vorgegebenen Bearbeitungsreihenfolge mit Hilfe einer Eingabeaufforderung 7 mit den entsprechenden Daten ausgefüllt werden, wie dies von Formularbearbeitungsprogrammen, Textverarbeitungsprogrammen oder auch Tabellenkalkulationsprogrammen her bekannt ist. Die Bearbeitungsreihenfolge der Datenfelder 18, deren Position, Breite, Höhe sowie auch die Art der darin verwendeten Schrift wird hierbei durch eine Fenster-Programmroutine 20 des auf dem Terminal-Server 6 ablaufenden Betriebssystems gesteuert. Die Fenster-Programmroutine 20 enthält dabei vorzugsweise in tabellarischer Form sämtliche Fenster- und Objektparameter, die zur Erzeugung der Bildschirmdarstellung des Datenverarbeitungsprogramms 14 auf dem virtuellen Desktop des Terminal-Servers 6 benötigt werden.
Wie der Fig. 1 weiterhin entnommen werden kann, ist jedem Datenfeld 18 eine zugehörige Ordnungsziffer #1, #2, #3 etc. zugeordnet, welche den Parameter für die Bearbeitungs¬ reihenfolge der Datenfelder 18 angibt.
Auf dem Terminal-Server-Client 2 läuft eine eigenständige Programmroutine 22 ab, die von einer weiteren Programmroutine 24 auf dem Terminal-Server 6 über das hochlatente Funkdatennetzwerk 4 eine Kopie oder Teilkopie der Fenster-Programmroutine 20, bzw. der darin verwendeten Fenster- und Objektparameter zur Darstellung der Fenster und Objekte erhält, welch letztere beispielsweise Schaltflächen 36 oder Rollbalken 38 wie auch die Datenfelder 18 selbst umfassen können. Die Übertragung der Kopie oder Teilkopie 34 der Fenster- und Objektparameter der Fenster-Programmroutine 20 erfolgt dabei vorzugsweise beim Start des Datenverarbeitungsprogramms 14 auf dem Terminal-Server 6 sowie bei einem Wechsel zu einer vollständig neuen Bildschirmdarstellung, nachdem diese vom Datenverarbeitungsprogramm 14 erzeugt wurde.
Die auf dem Terminal-Server 6 mit Hilfe der Fenster-Programmroutine 20 erzeugte Bildschirmdarstellung des Datenverarbeitungsprogramms wird anschließend über das hochlatente Funkdatennetzwerk 4 an den Terminal-Server-Client 2 in Form von Datenpaketen im Wesentlichen ohne Rückbestätigungen übertragen, und auf dem Bildschirm 26 des Clients 2 in Form eines interaktiven Anwenderprogramms dargestellt, wie dies schematisch durch den Pfeil 28 angedeutet ist. Der Terminal-Server-Client 2 ist weiterhin mit einem Daten-Eingabemedium in Form einer Tastatur 30 sowie einer Datenzeigeeinrichtung in Form einer Maus 32 verbunden, über die vom Benutzer Daten und Befehle eingegeben werden, die vom Terminal-Server-Client 2 über das hochlatente Funkdatennetzwerk 4 als weitere Datenpakete an den Terminal-Server 6 übersendet werden. Das Datenverarbeitungsprogramm 14 erzeugt in Abhängigkeit von den weiteren Datenpaketen eine neue aktualisierte Büdschirmdarstellung des interaktiven Anwenderpro- gramms, die anschließend wieder in Form von Datenpaketen bevorzugt nach einem eigenen optimierten Protokoll über das hochlatente Funkdatennetzwerk 4 an den Terminal- Server-Client 2 übersendet werden, um diejenigen Teile der Bildschirmdarstellung des interaktiven Anwenderprogramms auf dem Bildschirm 26 zu aktualisieren, die vom Datenverarbeitungsprogramm 14 als letztes geändert wurden.
Um Verzögerungen bei der Dateneingabe in die Datenfelder 18 aufgrund der physikalisch bedingten großen Latenzzeit von in der Regel mehr als 0,7 Sekunden zu verringern, werden die über die Tastatur 30 oder die Maus 32 eingegebenen Befehle und Daten - deren Eingabe in der Regel als ASCII-Zeichen erfolgt - von der auf dem Terminal-Server-Client 2 ablaufenden eigenständigen Programmroutine 22 analysiert, und die Eingabeaufforderung 7 in Abhängigkeit von dem jeweiligen Befehl oder Zeichen lokal weiterbewegt, während die Befehle und/oder Zeichen verzögert über das hochlatente Funkdatennetzwerk 4 an den Terminal-Server 6 übertragen und von diesem verrechnet werden, und die aktualisierte Bildschirmdarstellung an den Client 2 zurückgesandt wird.
Befindet sich die Eingabeaufforderung 7 beispielsweise im Datenfeld 18 mit der Ordnungsziffer #3, so erkennt die eigenständige Programmroutine 22 dies anhand der Kopie oder Teilkopie 34 der Fenster- und Objektparameter. Wird nun z.B. vom Benutzer auf der Tastatur 30 der Befehl " PFEIL aufwärts " durch Drücken der entsprechenden Taste eingegeben, so wird dies von der eigenständigen Programmroutine 22 anhand einer entsprechenden Abfrage erkannt, und in der Kopie 34 der Fenster- und Objektparameter die zugehörigen Parameter für das vorhergehende Datenfeld 18 mit der Ordnungsziffer #2 gelesen.
Ohne auf die vom Terminal-Server 6 aufgrund des Befehls aktualisierte neue Bild¬ schirmdarstellung des aktiven Anwenderprogramms zu warten, werden über die eigenständige Programmroutine 22 die dem Datenfeld 18 mit der Ordnungsziffer #2 zugeordneten Objektparameter für die Position, Breite, Höhe und Schriftart etc. an das Betriebssystem des Terminal-Server-Clients 2 übergeben, welches die Grafikkarte des Terminal-Server-Clients wiederum in bekannter Weise mit entsprechenden Befehlen ansteuert, um die Darstellung des mit der Ordnungsziffer #2 versehenen zweiten Datenfelds 18 auf dem Bildschirm 26 dahingehend zu ändern, dass die Eingabeauf¬ forderung 7 an den linken Rand des Datenfeldes gesetzt wird, um über die Tastatur 30 weitere Daten in das Datenfeld eingeben zu können.
Wenn nach einer gewissen Verzögerungszeit von beispielsweise 1 Sekunde oder mehr die aktualisierte Bildschirmdarstellung des interaktiven Anwenderprogramms vom Terminal- Server 6 errechnet und über das hochlatente Funkdatennetzwerk 4 an den Terminal- Server-Client 2 übersandt wurde, wird die lokal erzeugte Bildschirmdarstellung des interaktiven Anwenderprogramms auf dem Bildschirm 26 durch die vom Terminal-Server 6 berechnete Bildschirmdarstellung ersetzt. Hierbei werden wie bereits zuvor ausgeführt, vorzugsweise nur die geänderten Teile der Bildschirmdarstellung überschrieben.
In entsprechender Weise setzt die eigenständige Programmroutine 22 die Eingabeauffor¬ derung 7 bei der Eingabe eines weiteren Befehls, z.B. beim Drücken der "ENTER" oder "TAB" - Taste in der zuvor beschriebenen Weise durch Abfrage der Kopie oder Teilkopie 34 der Fenster- und Objektparameter an den Anfang des Datenfeldes 18 mit der nächst höheren Ordnungsziffer #4.
Weiterhin kann es vorgesehen sein, dass die Fenster-Programmroutine 22 auf dem Terminal-Server 6 ebenfalls Objekte der Bildschirmdarstellung enthält (Controls), die in Fig. 1 beispielsweise als mit der Maus 32 aktivierbare Schaltflächen 36 oder Rollbalken 38 ausgebildet sein können, und die vorzugsweise ebenfalls im Wege der Kopie oder Teilkopie 34 der Fenster- und Objektparameter mit über das hochlatente Funkdatennetzwerk 4 auf den Terminal-Server-Client 2 übertragen werden.
Die eigenständige Programmroutine 22 überwacht bei der bevorzugten Ausführungsform der Erfindung ebenfalls die Position des Mauszeigers, und ändert beispielsweise den Stil oder die Darstellungsart der Schaltfläche 36, wenn die Position des Mauszeigers dem Bereich auf dem Bildschirm 26 entspricht, in dem sich die Schaltfläche 36 befindet. Hierzu kann es vorgesehen sein, dass die eigenständige Programmrouten 22 die x- und y- Koordi¬ naten eines jeden Objekts in der Kopie 34 der Fenster- und Objektparameter mit der aktu¬ ellen Mausposition vergleicht, und bei einer Übereinstimmung die weiteren Objektpara- meter aus der Kopie 34 der Fenster- und Objektparameter heraussucht, z.B. indem die zugehörige Zeile einer zugeordneten Tabelle ausgelesen wird.
Wenn das Objekt 36 durch Anklicken mit der Maus 32 aktiviert werden soll, um z.B. die Eingabemaske zu verlassen, so kann dies durch die Erzeugung eines durch die weitere Programmroutine 22 lokal erzeugten akustischen Signals signalisiert werden. In gleicher Weise ist es möglich, zur weiteren Beschleunigung der Darstellung des interaktiven Anwenderprogramms eine Kopie der Fenster- und Objektparameter der vorhergehenden Bildschirmdarstellung des interaktiven Anwenderprogramms im Speicher des Clients 2 vorzuhalten, die beim Anklicken der Schaltfläche 36 oder der Eingabe eines entsprechen¬ den Befehls über die Tastatur 30 von der eigenständigen Programmroutine ausgelesen wird, um z.B. die Bildschirmdarstellung einer übergeordneten Ebene des Datenverar¬ beitungsprogramms 14, von der aus in die in Fig. 1 gezeigte Maskendarstellung gewechselt wurde, lokal anzuzeigen, bevor diese Darstellung vom Terminal-Server 6 berechnet und verzögert über das hochlatente Funkdatennetzwerk 4 an den Terminal-Server-Client 2 zur Darstellung auf dem Bildschirm 26 übersandt wird.
Schließlich kann beim Anklicken des Rollbalkens 38 mit dem Mauszeiger eine im Betriebssystem des Terminal-Server-Clients 2 laufende Unterprogrammroutine aufgerufen werden, die die gesamte Bildschirmdarstellung anhand der Vorgaben der Kopie 34 der Fenster- und Objektparameter verschiebt, indem der Inhalt des Speichers der Grafikkarte des Clients 2 in bekannter Weise manipuliert wird.
Wie die Anmelder gefunden haben, lässt sich das erfindungsgemäße Verfahren auch sehr vorteilhaft bei bestehenden Mobilfunknetzen, insbesondere bei GSM- Netzen mit Frequenzen im Bereich von 900, bzw. 1800 Mhz einsetzen, bzw. auch bei UMTS- Netzwerken. Gleiches gilt für ähnliche bekannte Funknetz werke.
Hierbei ergibt sich gegenüber bekannten Lösungen der besondere Vorteil, dass trotz der sehr geringen Übertragungsraten von z.B. lediglich 9600 Baud bei der Ausführung einer interaktiven Datenbankanwendung über ein GSM-Mobilfunknetz, - z.B. auf einem Mobilfunktelefon, einem PDA ( Personal Digital Assistent) oder einem Laptop, der über ein GSM-Modem auf einen Terminal-Server-Rechner zugreift - Antwortzeiten von weniger als 1 Sekunde erzielt werden, wohingegen dieselbe Anwendung beim Einsatz von Verfahren nach dem Stand der Technik erheblich länger benötigen, da in der Regel Tastatur- oder Mausbewegungen zu einer Datenübertragung vom Terminal-Server Client zum Terminal-Server-Rechner führen, die infolge der Addition der einzelnen Antwortzeiten bereits bei der Eingabe von einzelnen Worten zu Reaktionszeiten führen, die im Bereich von mehreren Sekunden liegen.
Ein weiterer Vorteil des erfindungsgemäßen Verfahrens, der insbesondere beim Einsatz von GSM-Mobilfunkgeräten zur Datenübertragung hervortritt, besteht darin, dass die übertragene Datenmenge - verglichen mit Verfahren nach dem Stand der Technik - erheblich reduziert wird. So konnte z.B. in einer Datenbankanwendung, die über einen Laptop und ein angeschlossenes GSM-Mobilfunkmodem auf dem Terminal-Server gestartet wurde, und bei der lediglich eine Suchanfrage und ein Ändern eines Artikels sowie ein Abspeichern eines kurzen Textes durchgeführt wurden, die Anzahl der zwischen Client und Server ausgetauschten Datenpakete von mehr als 1300 auf weniger als 100 Datenpakete reduziert werden, wodurch sich die Antwortzeiten bei der interaktiven Arbeit mit der Datenbankanwendung in entsprechendem Maße verringerten.
Durch den Einsatz des erfindungsgemäßen Verfahrens können somit die sonst üblichen Verzögerungen bei der Dateneingabe, die durch die in der Regel unvermeidbaren langen Laufzeiten/RTT (Round Trip Time), die im Mobilfunkbereich z.B. 700 - 4000 ms betragen, bedingt werden, in vorteilhafter Weise auf ein solches Maß reduziert werden, dass sie vom Bediener der Datenbankanwendung nicht mehr als störend wahrgenommen werden.
Gemäß einem weiteren der Erfindung zugrunde liegenden Gedanken werden die Datenpakete mit einer Kodierung versehen, die bevorzugt als eine fortlaufende Identifikationsnummer ausgestaltet ist. Unmittelbar nach dem Empfang eines übertragenen Datenpakets überprüft der Terminal-Server-Client anhand der aktuellen Identifikationsnummer des gerade empfangenen Datenpakets, ob diese mit der erwarteten Nummer der laufenden Nummerierung übereinstimmt oder nicht, die aus den Identifikationsnummern der zuvor empfangenen Datenpakete bestimmt wird. Sofern die Identifikationsnummer nach einer gewissen Wartezeit nicht der erwarteten fortlaufenden Nummer entspricht, da z.B. ein Datenpaket zwischenzeitlich nicht ordnungsgemäß übertragen wurde, übersendet der Terminal-Server-Client eine entsprechende Auforderung über einen speziellen hierfür vorgesehen Retransmission-Kanal (Resend) an den Terminal Server, das fehlende Datenpaket erneut zu übersenden. Wurden beispielsweise zuvor Datenpakete mit den Identifikationsnummern 1000, 1001, 1002 und 1003 empfangen, und besitzt das aktuell empfangene Datenpaket nach einer gewissen Wartezeit von z.B. 10 Sekunden die Identifikationsnummer 1005, so erkennt der Terminal-Server-Client z.B. mittels einer entsprechenden Programmroutine, dass das Datenpaket 1004 nicht übertragen wurde, und fordert dieses vom Terminal-Server zur erneuten Übertragung an.
Das zuvor gesagte gilt entsprechend bevorzugt auch in der umgekehrten Richtung bei den vom Terminal-Server-Client an den Terminal Server übersandten weiteren Datenpakten.
Liste der Bezugszeichen
2 Terminal-Server-Client
4 Hochlatentes Funkdatennetzwerk
6 Terminal-Server
7 Eingabeaufforderung
8 Clientseitige Bodenstation 10 Serverseitige Bodenstation
12 Mobilfunkstation/geostationärer Satellit
14 Datenverarbeitungsprogramm
16 Sitzung/Session auf Terminal-Server
18 Datenfeld
20 Fenster-Programmroutine
22 eigenständige Programmroutine
24 weitere Programmroutine
26 Bildschirm
28 Pfeil
30 Tastatur
32 Maus
34 Kopie/Teilkopie der Fenster- und Objektparameter auf Terminal-Server-Client
36 Schaltfläche
38 Rollbalken
#1, #2, #3 Ordnungsziffern
Ansprüche
1. Verfahren zur Reduzierung der Latenzzeit bei der interaktiven Datenkommunikation zwischen einem Terminal-Server (6) und einem Terminal-Server-Client (2), die über ein Telekommunikationsnetzwerk, insbesondere ein GSM, UMTS -Netzwerk oder ein sonstiges Funknetzwerk, miteinander verbunden sind, wobei auf dem Terminal- Server (6) ein Datenverarbeitungsprogramm (14), insbesondere ein
Datenbankprogramm, ausgeführt wird, welches in Abhängigkeit von Befehlen und Daten, die über ein mit dem Terminal-Server-Client (2) verbundenes Eingabemedium (30) eingegebenen werden, Bildschirmdarstellungen eines interaktiven Anwender¬ programms mit mehreren, nach einer durch Parameter (#1, #2, #3) vorgegebenen Bearbeitungsreihenfolge durchlaufenen Datenfeldern (18) erzeugt, die in Form von
Datenpaketen im wesentlichen ohne Rückbestätigungen auf den Terminal-Server- Client (2) übertragen und von diesem auf einem Anzeigemedium (26) dargestellt werden, wobei auf dem Anzeigemedium (26) durch eine Eingabeaufforderung (7) die Eingabe von weiteren Daten in ein zugehöriges Datenfeld (18) über das Eingabe- medium signalisiert wird, die in Form von weiteren Datenpaketen über das
Telekommunikationsnetzwerk (4) an den Terminal-Server (6) übertragen werden, d a d u r c h g e k e n n z e i c h n e t, dass die Parameter (#1, #2, #3) für die Bearbeitungsreihenfolge der Datenfelder (18) über das Telekommunikationsnetzwerk (4) an den Terminal-Server-Client (2) übertragen werden, und dass auf dem Terminal-Server-Client (2) eine eigenständige Programm¬ routine (22) abläuft, die bei der Eingabe vorgegebener Befehle über das Eingabe¬ medium (30, 32) die Bildschirmdarstellung in Abhängigkeit von den Parametern (#1, #2, #3) für die Bearbeitungsreihenfolge in der Weise selbständig verändert, dass die Eingabeaufforderung (7) innerhalb eines Datenfeldes (18) in das nach der Bearbeitungsreihenfolge nächste oder vorhergehende Datenfeld bewegt wird.

Claims

2. Verfahrennach Anspruch 1, dadurch gekennzeichnet, dass der Terminal Server (6) unter einem fenster-orientierten Betriebssystem betrieben wird, wobei die an den Terminal-Server-Client (2) übertragenen Bildschirmdarstel¬ lungen vor der Übersendung an den Terminal-Server-Client (2) auf dem Terminal- Server (6) durch eine Fenster-Programmroutine (20) des Betriebssystems des Terminal-Servers (6) auf der Basis von Fenster- und Objektparametern erzeugt werden.
3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, dass die eigenständige Programmroutine (22) die Parameter (#1, #2, #3) für die Bearbeitungsreihenfolge der Datenfelder durch Zugriff auf die Fenster- Programmroutine (20) des Betriebssystems des Terminal-Servers (6) erhält.
4. Verfahren nach Anspruch 2 oder 3, dadurch gekennzeichnet, dass die eigenständige Programmroutine (22) eine Kopie (34) oder Teilkopie der Fenster- und Objektparameter erhält, die die Fenster-Programmroutine (20) des Betriebs¬ systems des Terminal-Servers (6) zur Erzeugung der aktiven Bildschirmdarstellung verwendet.
5. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die eigenständige Programmroutine (22) zusätzlich zu den Parametern (#1, #2, #3) für die Bearbeitungsreihenfolge die Art und/oder den Stil und/oder die Größe der in einem Datenfeld (18) verwendeten Schrift erhält.
6. Verfahren nach einem der Ansprüche 2 bis 5, dadurch gekennzeichnet, dass das die eigenständige Programmroutine (22) die Parameter (#1, #2, #3) für die Bearbeitungsreihenfolge der Datenfelder (18) und/oder die Fenster- und Objektparameter durch eine auf dem Terminal-Server (6) laufende weitere Programmroutine (24) erhält.
7. Verfahren nach einem der Ansprüche 2 bis 6, dadurch gekennzeichnet, dass die eigenständige Programmroutine (22) die über das Eingabemedium (30, 32) eingegebenen Befehle und/oder Daten vor dem Übersenden an den Terminal-Server (6) analysiert, und die aktive Bildschirmdarstellung in Abhängigkeit von der Bearbeitungsreihenfolge (#1, #2, #3) sowie den Fenster- und Objektparametern selbständig ändert.
8. Verfahren nach Anspruch 7, dadurch gekennzeichnet, dass die eigenständige Programmroutine (22) die aktive Bildschirmdarstellung in
Abhängigkeit von der Bearbeitungsreihenfolge (#1, #2, #3) sowie den Fenster- und Objektparametern in der Weise selbständig ändert, dass die Eingabeaufforderung (7) beim Auftreten eines vorgegebenen Befehls, der einem Rücksprung in ein vorher¬ gehendes Datenfeld (18) zugeordnet ist, an den Anfang des vorhergehenden Daten- feldes (18) setzt.
9. Verfahren nach Anspruch 7 oder 8, dadurch gekennzeichnet, dass die eigenständige Programmroutine (22) die aktive Bildschirmdarstellung in Abhängigkeit von der Bearbeitungsreihenfolge (#1, #2, #3) sowie den Fenster- und
Objektparametern in der Weise selbständig ändert, dass die Eingabeaufforderung (7) beim Auftreten eines vorgegebenen Befehls, der einem Vorspringen in ein nachfolgendes Datenfeld (18) zugeordnet ist, an den Anfang des nachfolgenden Datenfeldes (18) setzt.
10. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die eigenständige Programmroutine (22) die Position einer dem Eingabemedium zugeordneten Datenzeigeeinrichtung (32), insbesondere eines Mauszeigers, analysiert, und die Ansicht eines in der aktiven Bildschirmdarstellung enthaltenen Objekts (36,
38) in vorgegebener Weise selbständig ändert, wenn die Position der Datenzeige¬ einrichtung (32) einer vorgegebenen Position oder einem Bereich in der aktiven Bildschirmdarstellung entspricht.
11. Verfahren nach Anspruch 7 und 10, dadurch gekennzeichnet, dass die eigenständige Programmroutine (22) die Ansicht des in der aktiven Bildschirmdarstellung enthaltenen Objekts (36) in der vorgegebenen Weise selbständig ändert, wenn die Position der Datenzeigeeinrichtung (32) einer vorgegebenen Position oder einem Bereich in der aktiven Bildschirmdarstellung entspricht und über das Eingabemedium (30, 32) im Wesentlichen gleichzeitig ein vorgegebener Befehl eingegeben wird.
12. Verfahren nach Anspruch 11, dadurch gekennzeichnet, dass das Objekt eine Schaltfläche (36) ist, die beim Anklicken mit der Datenzeigeeinrich¬ tung (32) die Darstellungsart wechselt.
13. Verfahren nach Anspruch 11, dadurch gekennzeichnet, dass das Objekt ein Rollbalken (38) ist, und dass beim Anklicken des Rollbalkens mit der Datenzeigeeinrichtung (32) sowohl die Darstellung des Rollbalkens (38) in einer vorgegebenen Weise geändert, als auch zumindest ein Teil des Inhalts der aktiven Bildschirmdarstellung verschoben wird.
14. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die Bildschirmdarstellungen zumindest teilweise in Form von Bitmap-Dateien an den Terminal-Server-Client (6) übertragen werden.
15. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die Übertragung der Bildschirmdarstellungen nach einem Protokoll erfolgt.
16. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass das Übertragen der weiteren Datenpakete vom Terminal-Server-Client (2) an den Terminal-Server (6) im wesentlichen ohne eine Rückbestätigung des Empfangs der übersandten weiteren Datenpakete durch den Terminal-Server (6) erfolgt.
17. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die weiteren Datenpakete vor dem Versenden an den Terminal-Server (6) auf redundante Daten hin untersucht, und ermittelte redundante Daten aus den weiteren Datenpaketen entfernt oder durch bereits eingegeben Daten ersetzt werden.
18. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die vom Terminal-Server (6) erzeugten Datenpakete vor dem Versenden an den Terminal-Server-Client (2) auf redundante Daten hin untersucht und ermittelte redundante Daten aus den Datenpaketen entfernt oder durch im Terminal-Server (6) vorgehaltene Daten ersetzt werden.
19. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass mehrere der zwischen dem Terminal-Server (6) und dem Terminal-Server-Client (2) zu übertragenden Datenpakete und/oder weiteren Datenpakete zu größeren Datenpaketen und/oder größeren weiteren Datenpaketen zusammengefasst werden.
20. Verfahren nach Anspruch 19, dadurch gekennzeichnet, dass die zusammengefassten größeren Datenpakete und/oder die zusammengefassten größeren weiteren Datenpakete eine optimierte Größe aufweisen, derart, dass eine Übertragung über das Telekommunikationsnetzwerk ohne eine Fragmentierung der Datenpakete erfolgt.
21. Verfahren nach Anspruch 20, dadurch gekennzeichnet, dass die optimierte Größe der größeren Datenpakete und/oder der größeren weiteren Datenpakete durch den Terminal-Server (6) bei der Einrichtung des Telekommu¬ nikationsnetzwerks (4) für die jeweilige Verbindung zum Terminal-Server-Client (2) auf der Basis von verbindungsspezifischen Parametern bestimmt wird.
22. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass das Telekommunikationsnetzwerk ein Mobilfunknetzwerk, insbesondere GSM- oder UMTS- Netzwerk ist.
23. Verfahren nach Anspruch 22, dadurch gekennzeichnet, dass der Termial-Server-Client ein Mobiltelefon oder PDA ist, welches über eine GSM-oder UMTS- Funkverbindung mit dem Terminal-Server zum Datenaustausch verbunden ist.
24. Verfahren nach einem der Ansprüche 1 bis 22, dadurch gekennzeichnet, dass der Termial-Server-Client ein mobiler, mit einem GSM- oder UMTS- Mobiltelefon zum Datenaustausch verbundener Rechner ist, der über eine GSM-oder UMTS- Funkverbindung mit dem Terminal-Server zum Datenaustausch verbunden ist.
25. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die übertragenen Datenpakete und/oder weiteren Datenpakete mit einer fortlaufenden Identifikationsnummer versehen sind, anhand von welcher der Terminal-Server-Client und/oder der Terminal-Server auf Basis der zuvor übersandten Datenpakete und/oder weiteren Datenpakete die Vollständigkeit der Datenübertragung überprüft.
26. Mobil telefon zur Durchführung des Verfahrens nach einem der Ansprüche 1 bis 25,
PCT/EP2005/010664 2004-10-01 2005-10-04 Verfahren zur reduzierung der latenzzeit bei der interaktiven datenkommunikation zwischen einem terminal server und einem terminal-server client in einem drahtlosen telekommunikationsnetzwerk WO2006037600A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102004048343.4A DE102004048343B4 (de) 2004-10-01 2004-10-01 Verfahren zur Reduzierung der Latenzzeit bei der interaktiven Datenkommunikation zwischen einem Terminal Server und einem Terminal-Server Client in einem Telekommunikationsnetzwerk, insbesondere einem GSM oder einem UMTS Netzwerk
DE102004048343.4 2004-10-01

Publications (1)

Publication Number Publication Date
WO2006037600A1 true WO2006037600A1 (de) 2006-04-13

Family

ID=35510901

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2005/010664 WO2006037600A1 (de) 2004-10-01 2005-10-04 Verfahren zur reduzierung der latenzzeit bei der interaktiven datenkommunikation zwischen einem terminal server und einem terminal-server client in einem drahtlosen telekommunikationsnetzwerk

Country Status (2)

Country Link
DE (1) DE102004048343B4 (de)
WO (1) WO2006037600A1 (de)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001008378A1 (en) * 1999-07-23 2001-02-01 Citrix Systems, Inc. A system and method for providing immediate visual response to user input at a client system
DE10200165A1 (de) * 2002-01-04 2003-07-10 Klaus Rock Verfahren zur Reduzierung der Latenzzeit bei der interaktiven Datenkommunikation über ein Satellitennetzwerk
US20030212740A1 (en) * 2002-05-13 2003-11-13 Rebecca Berrigan Asynchronous data validation
WO2004088949A2 (de) * 2003-04-02 2004-10-14 Rock Technologies Limited Verfahren zur reduzierung der latenzzeit bei der interaktiven datenkommunikation zwischen einem terminal server und einem terminal-server client in einem geostationären satellitennetzwerk

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1151375A4 (de) 1999-02-02 2003-10-22 Mentat Inc Internet über satellit

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001008378A1 (en) * 1999-07-23 2001-02-01 Citrix Systems, Inc. A system and method for providing immediate visual response to user input at a client system
DE10200165A1 (de) * 2002-01-04 2003-07-10 Klaus Rock Verfahren zur Reduzierung der Latenzzeit bei der interaktiven Datenkommunikation über ein Satellitennetzwerk
US20030212740A1 (en) * 2002-05-13 2003-11-13 Rebecca Berrigan Asynchronous data validation
WO2004088949A2 (de) * 2003-04-02 2004-10-14 Rock Technologies Limited Verfahren zur reduzierung der latenzzeit bei der interaktiven datenkommunikation zwischen einem terminal server und einem terminal-server client in einem geostationären satellitennetzwerk

Also Published As

Publication number Publication date
DE102004048343A1 (de) 2006-04-13
DE102004048343B4 (de) 2022-09-22

Similar Documents

Publication Publication Date Title
DE60112107T2 (de) Verfahren und Vorrichtung zur effizientes Verringerung von graphischen Anzeigedaten für ihre Übertragung mittels eines Übertragungsprotokolls für niedrige Bandbreiten
EP1466425B1 (de) Verfahren zur reduzierung der latenzzeit bei der interaktiven datenkommunikation über ein satellitennetzwerk
DE69931215T2 (de) Verfahren und Rechnerprogrammprodukt zum effizienten und sicheren Senden von kleinen Datennachrichten von einem Sender zu einer grossen Anzahl von Empfangssystemen
DE69935554T2 (de) Verfahren und Rechnerprogrammprodukt zum effizienten und zuverlässigen Übertragen von kleinen Datennachrichten von einem Sendesystem zu einer grossen Anzahl von Empfangssystemen
DE60309201T2 (de) Verfahren und system zur übertragung von ereignissen, einschliesslich multimedia daten
EP1316012A2 (de) Verfahren und anordnung zur synchronisation eines auf einem ersten rechner ablaufenden programms mit einem auf einem server ablaufenden programm, computerlesbares speichermedium und computerprogramm-element
DE60214399T2 (de) Endgeräte, die so ausgelegt sind, dass sie als relaisserver zum verteilen von paketen in einem client-server-netzwerk wirken
WO2023036597A1 (de) Verfahren und system zur steuerung einer übertragung von daten in abhängigkeit wenigstens eines attributs einer datei
WO2006037600A1 (de) Verfahren zur reduzierung der latenzzeit bei der interaktiven datenkommunikation zwischen einem terminal server und einem terminal-server client in einem drahtlosen telekommunikationsnetzwerk
EP1362283B1 (de) Verfahren und vorrichtung zum darstellen eines aus pixeln aufgebauten bildes
WO2004088949A2 (de) Verfahren zur reduzierung der latenzzeit bei der interaktiven datenkommunikation zwischen einem terminal server und einem terminal-server client in einem geostationären satellitennetzwerk
DE102015120888B4 (de) Verfahren zum Steuern einer graphischen Anzeigeeinheitaus der Ferne
DE19619491C2 (de) Verfahren zur Übertragung und Installation und/oder Aktualisierung von Software und/oder Daten
DE102004043868B4 (de) Datenkommunikationssystem, sowie Datenkommunikationsverfahren
DE102018129614A1 (de) Mit einer Funktionalität zur Operationsbeteiligung versehenes Computer-Eingabesystem und Eingabeverfahren
EP3838709B1 (de) Verfahren zur übergabe von telegrammen von einer streckenzentrale an ein fahrzeug und streckenzentrale
DE69734196T2 (de) Effiziente Darstellung und Uebertragung von Objekten mit Varianten
EP3507943A1 (de) Verfahren zur kommunikation in einem kommunikationsnetzwerk
WO2007009838A1 (de) Datenübertragungsverfahren und datenübertragungssystem
DE602004002104T2 (de) Ultraleicht browser
EP3275104B1 (de) Verfahren zur drahtlosen datenübertragung über zwei drahtlos-datenübertragungskanäle sowie datenübertragungseinrichtung
DE102020003383A1 (de) Verfahren zum Speichern und Verfahren zum Übermitteln von mindestens einem Datenstück, entsprechende Computerprogrammprodukte und Vorrichtungen
DE202004021156U1 (de) Datenkommunikationssystem
DE19964082C1 (de) Verfahren und Vorrichtung zur Simulation von Benutzereingaben
DE102020214357A1 (de) Computerimplementiertes Verfahren zum Übertragen von Nachrichten in einem auf einem MQTT-Protokoll basierenden Kommunikationsnetzwerk

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KM KP KR KZ LC LK LR LS LT LU LV LY MA MD MG MK MN MW MX MZ NA NG NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SM SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LT LU LV MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 69(1) EPC OF 200707

122 Ep: pct application non-entry in european phase

Ref document number: 05800860

Country of ref document: EP

Kind code of ref document: A1