Wikipedia · einfach zusammengefasst · Stand
Echo (Informatik)
Echo ist ein einfaches allgemeines Konzept in der Informatik, das sich an das akustische Echo anlehnt. ... Der ICMP-Standard wird in dem RFC 792 festgelegt. Zu …
Inhalt5 Abschnitte
Grundidee
Echo ist in der Informatik ein einfaches allgemeines Konzept: Eine Eingabe, meistens eine Zeichenkette, wird entgegengenommen und unverändert wieder ausgegeben. Es ähnelt damit der identischen Abbildung in der Mathematik. Besonders im Netzwerkbereich gehört oft eine Verzögerung zwischen Eingabe und Ausgabe beziehungsweise zwischen Senden und Empfangen dazu, ähnlich wie beim akustischen Echo.
Das Konzept kommt in vielen Bereichen vor: auf Kommandozeilen fast aller Betriebssysteme, in Programmiersprachen als Ausgabekommando und in der Rechnerkommunikation.
Ausgabe auf Kommandozeilen
Das Kommando echo gehört bei den meisten Kommandozeilen zum Standardbefehlsumfang. Es dient dazu, Zeichenketten und Variablen auf einem Ausgabegerät auszugeben, zum Beispiel auf dem Bildschirm, in einem Terminal oder in einer Datei. Es kann direkt in der Kommandozeile oder in einem Shellskript verwendet werden. Auf Großrechnern sowie unter DOS und Windows heißt eine solche Skriptausführung auch Stapelverarbeitung.
Wenn die Ausgabe in eine Datei umgeleitet wird, kann echo eine Textdatei erstellen oder Text an eine vorhandene Textdatei anhängen. Unterstützt wird echo unter anderem von der Kommandozeile von CTSS, der Multics-Shell, der Bourne-again shell „bash“, der C-Shell, COMMAND.COM, cmd.exe, der Windows PowerShell und auch von der Konsole des Computerspiels Half-Life.
Manche Skriptsprachen bieten ebenfalls ein echo-Kommando, sind aber nicht unbedingt für die direkte Nutzung in einer Kommandozeile gedacht. Ein Beispiel dafür ist PHP, das echo vor allem in Skriptdateien verwendet.
Echo zur Befehlsanzeige
Auf frühen Betriebssystemen für Großrechner der 1960er Jahre gab es eine Funktion, Kommandos vor ihrer Ausführung auszugeben. Unter CTSS, dem Compatible Time-Sharing System von 1961, wurden Kommandos mit vorgestelltem ECHO vor der Ausführung ausgegeben. Bei Skripten, die mit RUNCOM ausgeführt wurden, erschienen nur Kommandos mit vorgestelltem $ vor der Ausführung auf dem Bildschirm oder einem anderen Ausgabegerät.
Unter Unix gibt es eine ähnliche Funktion. In der Unix-Shell Bash kann mit set -x die Ausgabe jedes einzelnen Kommandos in einem Shellskript eingeschaltet und mit set +x wieder ausgeschaltet werden.
Unter DOS und Windows ist das Verhalten umgekehrt organisiert: Stapelverarbeitungsdateien geben standardmäßig jede Zeile auf dem Bildschirm aus, bevor sie als Kommando ausgeführt wird. Mit @ECHO OFF wird diese Ausgabe abgeschaltet, mit ECHO ON wieder eingeschaltet. Für ein einzelnes Kommando kann ein vorangestelltes @ die Ausgabe dieser einzelnen Zeile unterdrücken.
Echo in Netzwerken
In Rechnernetzen wird das Echo-Konzept ebenfalls häufig verwendet. In der Internetprotokollfamilie gibt es das Echo-Protokoll für einen Echo-Netzwerkdienst. Ein Server, der diesen Dienst bereitstellt, sendet die von einem Client empfangenen Daten unverändert zurück. Die Spezifikation steht in RFC 862 und RFC 347.
Der ICMP-Standard definiert außerdem die Nachrichtentypen echo request, also Echo-Anfrage, und echo reply, also Echo-Antwort. Diese Nachrichten heißen auch Ping- beziehungsweise Pong-Pakete. Sie dienen vor allem Diagnosezwecken, etwa um zu prüfen, ob ein Rechner im Netzwerk erreichbar ist. Dabei wird an einen Zielrechner eine Nachricht mit Nutzdaten gesendet, die üblicherweise mit Buchstaben des Alphabets gefüllt sind. Der Zielrechner schickt dieselben Nutzdaten unverändert zurück. Wenn die Antwort eintrifft, wird die Zeit für Hin- und Rückübertragung ausgewertet. Das nutzt zum Beispiel das Ping-Kommandozeilenprogramm, das in vielen Betriebssystemen zum Standardlieferumfang gehört. Der ICMP-Standard ist in RFC 792 festgelegt.
Weitere Anwendungen
Beim Telnet-Protokoll bezeichnet Echo eine Option, die festlegt, ob die über die Telnet-Verbindung zurückgesendeten Zeichen ausgegeben werden sollen oder nicht. Diese Bedeutung ähnelt den on- und off-Parametern beim echo-Kommando von cmd.exe. Die Spezifikation steht in RFC 857.
Ein weiteres Beispiel ist der Echo-Mailer. Er schickt den Inhalt jeder empfangenen E-Mail einschließlich Kopfdaten an den Absender zurück.