* Standard esistenti: LANS usano in modo schiacciante Ethernet (e le sue varianti come Wi-Fi, che utilizza 802.11). Ethernet è una tecnologia matura, ben supportata e altamente ottimizzata. L'implementazione di HDLC richiederebbe la creazione di un'infrastruttura e driver completamente nuovi, aggirando tutto hardware e software esistenti progettati per Ethernet.
* Complessità: HDLC è un protocollo più complesso di Ethernet. L'implementarlo correttamente in Java richiederebbe uno sforzo e competenze significative nella programmazione di rete e nella progettazione del protocollo. Dovresti gestire la formattazione del frame, il rilevamento degli errori, il controllo del flusso e potenzialmente varie modalità HDLC (risposta normale, risposta asincrona, bilanciata asincrona).
* Mancanza di supporto hardware: La maggior parte delle schede di interfaccia di rete (NICS) non sono progettate per funzionare direttamente con HDLC. Probabilmente dovresti lavorare a un livello molto basso (possibilmente manipolare direttamente i registri della NIC) per inviare e ricevere frame HDLC. Questo è difficile e dipendente dalla piattaforma.
* Interoperabilità: Se hai costruito una LAN basata su HDLC, non sarebbe in grado di interagire con reti esistenti basate su Ethernet. Ciò limita gravemente il suo uso pratico.
Se * devi * utilizzare HDLC per un motivo molto specifico (ad esempio, un sistema incorporato altamente specializzato o un progetto di ricerca), ecco come potresti affrontarlo in Java:
1. Accesso di rete di basso livello: Probabilmente dovresti utilizzare le librerie NIO (Nuove I/O) di Java per ottenere l'accesso diretto all'interfaccia di rete. Questo è molto avanzato e soggetto a errori. Potrebbe anche essere necessario utilizzare JNI (interfaccia nativa Java) per chiamare il codice nativo (C/C ++) per l'interazione di basso livello con l'hardware.
2. Implementazione del frame HDLC: Dovresti creare classi Java per rappresentare frame HDLC, inclusi campi per indirizzo, controllo e informazioni.
3. Rilevamento e correzione degli errori: Implementare i calcoli CRC (Cyclic Recundancy Check) per il rilevamento degli errori. Dovrai anche gestire le ritrasmissioni se vengono rilevati errori.
4. Controllo del flusso: Implementa un meccanismo di controllo del flusso (come la finestra scorrevole) per impedire al mittente di schiacciare il ricevitore.
5. Test: Test rigorosi sono essenziali a causa della complessità di HDLC.
In sintesi: Sebbene tecnicamente possibile, costruire una LAN con sede a HDLC in Java è un'impresa significativamente impegnativa con pochi benefici pratici. Attaccarsi con protocolli Ethernet standard è fortemente raccomandato per qualsiasi applicazione LAN nel mondo reale. Se questo è un esercizio accademico, concentrarsi su un aspetto più piccolo e gestibile di HDLC (ad esempio, l'analisi dei frame) sarebbe un obiettivo più realistico.
hardware © www.354353.com