HDLC (hochrangige Datenverbindungssteuerung) * könnte als Datenverbindungsschichtprotokoll für eine LAN in Java verwendet werden, ist jedoch sehr unkonventionell und im Allgemeinen nicht empfohlen. Hier ist der Grund:
* Bestehende Standards: LANs verwenden überwiegend Ethernet (und seine Variationen wie Wi-Fi, die 802.11 verwendet). Ethernet ist eine ausgereifte, gut unterstützte und hoch optimierte Technologie. Die Implementierung von HDLC erfordert eine völlig neue Infrastruktur und Treiber, die alle vorhandenen Hardware und Software für Ethernet umgeht.
* Komplexität: HDLC ist ein komplexeres Protokoll als Ethernet. Die korrekte Implementierung in Java würde erhebliche Anstrengungen und Fachkenntnisse in Bezug auf Netzwerkprogrammierung und Protokolldesign erfordern. Sie müssten die Formatierung von Frame, Fehlererkennung, Durchflussregelung und möglicherweise verschiedene HDLC -Modi verarbeiten (normale Reaktion, asynchrone Reaktion, asynchrone Ausgleich).
* Mangel an Hardwareunterstützung: Die meisten Netzwerk -Schnittstellenkarten (NICs) sind nicht so konzipiert, dass sie direkt mit HDLC zusammenarbeiten. Sie müssten wahrscheinlich auf einem sehr niedrigen Niveau arbeiten (möglicherweise direkt die Register der NIC -Register des NIC manipuliert), um HDLC -Rahmen zu senden und zu empfangen. Dies ist schwierig und plattformabhängig.
* Interoperabilität: Wenn Sie eine HDLC-basierte LAN erstellt haben, könnte dies nicht mit vorhandenen Ethernet-basierten Netzwerken zusammenarbeiten. Dies schränkt seine praktische Verwendung stark ein.
Wenn Sie * HDLC aus einem ganz bestimmten Grund verwenden müssen (z. B. ein hochspezialisiertes eingebettetes System oder ein Forschungsprojekt), können Sie dies in Java angehen:
1. Netzwerkzugriff auf niedriger Ebene: Sie müssen wahrscheinlich die NIO -Bibliotheken von Java (neue I/O) verwenden, um direkten Zugriff auf die Netzwerkschnittstelle zu erhalten. Dies ist sehr fortgeschritten und fehleranfällig. Möglicherweise müssen Sie sogar JNI (Java Native Interface) verwenden, um nativen Code (C/C ++) für die Interaktion mit der Hardware auf niedriger Ebene aufzurufen.
2. Implementierung HDLC -Rahmen: Sie müssten Java -Klassen erstellen, um HDLC -Frames darzustellen, einschließlich Feldern für Adress, Kontrolle und Informationen.
3. Fehlererkennung und Korrektur: Implementieren Sie CRC -Berechnungen (Cyclic Redundancy Check) zur Fehlererkennung. Sie müssen auch Übertragungen abwickeln, wenn Fehler festgestellt werden.
4. Durchflussregelung: Implementieren Sie einen Strömungssteuerungsmechanismus (wie das Schiebenfenster), um zu verhindern, dass der Absender den Empfänger überwältigt.
5. Test: Strenge Tests sind aufgrund der Komplexität von HDLC wesentlich.
Zusammenfassend: Obwohl es technisch möglich ist, ist der Aufbau einer HDLC-basierten LAN in Java ein deutlich herausforderndes Unterfangen mit wenig praktischem Nutzen. Das Festhalten an Standard-Ethernet-Protokollen wird für jede reale LAN-Anwendung stark empfohlen. Wenn es sich um eine akademische Übung handelt, wäre es ein realistischeres Ziel, sich auf einen kleineren, überschaubaren Aspekt von HDLC (z. B. Rahmenanalyse) zu konzentrieren.