Netzwerken unter FreeDOS - mTCP
mTCP:
2009 schrieb Michael B. Brutman (vgl.: http://www.brutman.com/ (*01)),
ein Programmierer und DOS Enthusiast, einen neuen TCP/IP Kernel für
DOS, genannt: "mTCP" (vgl.: http://www.brutman.com/mTCP/ (*02)). Er
testete diesen Kernel auf einem PCjr (vgl.: http://en.wikipedia.org/
wiki/IBM_PCjr (*03)) aus dem Jahr 1983. Laut seiner Webseite möchte
er einen modernen TCP/IP Kernel erstellen, der eine kleine Größe hat
und eine hohe Leistung bietet. Das Programm arbeitet bereits sehr gut,
es wird regelmäßig aktualisiert.
Lizenz:
mTCP ist Freie Software. Am 27. Mai 2011 veröffentlichte Michael
Brutmann es unter den Bedingungen von GPL Version 3. Der Quellcode
ist erhältlich unter http://www.brutman.com/mTCP/mTCP.html (*04).
Anwendungen:
Wie WatTCP ist mTCP eine Library (Bibliothek) die mit dem Anwendungs-
code verlinkt ist, d.h. sie ist in die Anwendungen eingebaut. Im Sommer
2010 waren die folgenden Anwendungen auf seiner Webseite erhältlich:
* dhcp.exe -- ein DHCP Client
* ftpsrv.exe -- ein FTP Server
* dnstest.exe -- ein DNS Resolver
* ftp.exe -- ein FTP Client
* ircjr.exe -- ein IRC Client
* nc.exe -- ein Netcat Utility
* telnet.exe -- Telnet
* sntp.exe -- ein NTP (Netzwerk Zeit Protokoll) Client
* ping.exe -- Ping Utility
Konfiguration:
mTCP verwendet Pakettreiber. Es benötigt eine Konfigurationsdatei an
einer Stelle, die in einer Umgebungsvariablen steht, z.B.:
set MTCPCFG=c:\mtcp\tcp.cfg
Die Konfigurationsdatei sieht wie folgt aus:
--- TCP.CFG ---
PACKETINT 0x60
IPADDR 192.168.1.50
NETMASK 255.255.255.0
GATEWAY 192.168.1.1
NAMESERVER 192.168.1.1
MTU 1500
Wenn Sie in Ihrem Netzwerk einen DHCP Server laufen haben, müssen Sie
die statische Adressen nicht auflisten. Stattdessen müssen Sie nur
den Vektor des Pakettreibers und den Namen der Maschine in der TCP.CFG
definieren:
--- TCP.CFG ---
PACKETINT 0x60
HOSTNAME PCjr
Danach starten sie DHCP.EXE. Das Programm wird die Konfigurationsdatei
mit all den Informationen, die es vom Server bekommt, aktualisieren.
Performance:
Bei einem ersten Test war die FTP Anwendung von mTCP schneller als alle
anderen getesteten Programme. Tatsächlich lud es eine Binärdatei
siebenmal schneller herunter als Arachne und zehnmal schneller als NCSA
Telnet!
Der Testcomputer war ein Compaq Contura Aero 486SL mit 33 MHz und 20
MB RAM. Das Betriebssystem war FreeDOS 1.0. Die heruntergeladene Datei
war eine mp3 mit 4 MB Dateigröße.
Ergebnisse:
mTCP FTP 15 Sek.
curl 23 Sek.
WatTCP FTP 51 Sek.
Watt-32 FTP32 51 Sek.
Datalight Sockets FTP Client 69 Sek.
Arachne 1.93 104 Sek.
NCSA Telnet FTP 149 Sek.
CUTCP FTP v. 2.2 155 Sek.
EZ-NOS2 231 Sek.
Natürlich hängen die Ergebnisse von der verwendeten Testhardware ab.
Zum Vergleich: Auf einem viel moderneren Laptop (IBM X60T, 3 GB RAM,
OS: Ubuntu 8.04) wurde die gleiche Datei von Filezilla in fünf
Sekunden heruntergeladen.
Zusammenfassung:
mTCP scheint gut zu arbeiten. Seine Geschwindigkeit sieht vielver-
sprechend aus. Seine Veröffentlichung als Freie Software im Jahr
2011 ist ein großer Schritt vorwärts für FreeDOS. Die Entwicklung
von mTCP sollte von jedem, der an DOS und FreeDOS Netzwerken interes-
siert ist, verfolgt werden.
(*01) Der Link ist zwar ok, siehe aber auch:
https://web.archive.org/web/20220806055530/http://www.brutman.com/
(*02) Der Link ist zwar ok, siehe aber auch:
https://web.archive.org/web/20220902221003/http://www.brutman.com/mTCP/
(*03) Der Link ist zwar ok, siehe aber auch:
http://www.brutman.com/PCjr/pcjr.html
(*04) Der Link ist zwar ok, siehe aber auch:
https://web.archive.org/web/20220906052213/https://www.brutman.com/
mTCP/mTCP.html (alles in einer Zeile, kein Leerzeichen!)
Copyright © 2007 Ulrich Hansen, Mainz (Germany), 2010 und 2020
von W. Spiegl an die FreeDOS-Hilfe angepasst.
Weitergehende Informationen finden Sie hier.
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.2 or
any later version published by the Free Software Foundation.
A copy of the license is included in the section entitled
"GNU Free Documentation License 1.2".