Cookie
Electronic Team, Inc. uses cookies to personalize your experience on our website. By continuing to use this site, you agree to our cookie policy. Click here to learn more.

Trasmetti i dati con dispositivo seriale, tramite UDP

Serial to Ethernet Connector ti consente di trasmettere dati e messaggi a tutti i computers sulla tua LAN, usando l’UDP.
14-giorni disponibili di prova gratuita
Il prezzo della licenza parte da $259.95
Disponibile per

Seriale a UDP: Maggiore flessibilità nella comunicazione dei dati

Maggiore flessibilità è fornita quando si usa il protocollo UDP grazie alla sua capacità di incapsulare tutti i dati da una porta seriale. Puoi configurare messaggi di trasmissione per semplificare l'invio di informazioni a tutti i dispositivi di rete. Non sono richieste impostazioni aggiuntive per chiunque ascolti sulla porta specificata, per ricevere i messaggi.
Segnali da dispositivi seriali, in ricezione da molteplici sistemi

Come condividere i dispositivi di trasmissione, tramite UDP

1
Installa Serial to Ethernet Connector sulla macchina connessa al dispositivo avente porta COM, che verrà usato per inviare dati.
Assicurati di ottenere la versione corretta per il tuo sistema operativo
2
Avvia Serial to Ethernet Connector e crea una connessione UDP usando l’interfaccia dell’applicazione. L’indirizzo di trasmissione è la tua sottorete di rete, ad esempio 196.178.0.255. Su computer con più reti, puoi configurare trasmissioni designate per ogni rete usando la porta UDP.
Seleziona la “Connessione UDP” ed impostala
3
Ora puoi trasmettere dati dalla porta seriale del dispositivo a un numero illimitato di dispositivi o applicazioni di rete. Puoi impostare più connessioni con porte fisiche o virtuali per un sistema che invia tutti i dati generati da qualsiasi nodo a tutti i computers cliente.
Il dispositivo trasmesso apparirà sugli altri computer nell’elenco delle connessioni a sinistra
Nota: La trasmissione Broadcast è una tecnica comunemente usata per trasmettere informazioni generate da un mittente a tutti i dispositivi collegati alla rete. Viene usata di solito per inviare messaggi a tutti i nodi di rete o per eseguire la scoperta dei dispositivi.

La configurazione delle impostazioni per supportare la trasmissione potrebbe richiedere di specificare un indirizzo che raggiunga tutti i dispositivi di rete. Le reti IP usano comunemente 255.255.255.255 per comunicare con tutti i nodi di rete. Le impostazioni per la trasmissione si basano sulle tecnologie impiegate in un determinato ambiente di elaborazione.

Cosa dicono i clienti

4.9 punteggio complessivo, basato su 372 utenti recensioni
Usato da più di 150+ imprese mondiali di successo

Domande frequenti

UDP di per sé non vincola l'invio e la ricezione allo stesso numero di porta: un endpoint UDP ha una porta locale su cui ascolta e una porta di destinazione a cui invia, e queste possono essere diverse. Le impostazioni della connessione UDP di SEC espongono la configurazione di indirizzamento e delle porte, quindi le disposizioni asimmetriche delle porte di invio/ricezione sono esattamente ciò che UDP è progettato per supportare.

Configura tutto con attenzione in modo che entrambe le estremità siano concordi: qualunque porta a cui invii deve essere la porta su cui l'estremità remota è in ascolto, e viceversa per la direzione di ritorno. Poiché in UDP non esiste un handshake di connessione che rilevi per te un'incongruenza, un numero di porta errato si traduce semplicemente in silenzio — pacchetti inviati nel vuoto senza alcun errore. Conferma i nomi esatti dei campi e la disposizione nella finestra di dialogo della connessione UDP corrente durante la configurazione.

VERIFICARE prima della pubblicazione: confermare i campi esatti delle porte di invio/ricezione e le opzioni nella finestra di dialogo della connessione UDP della build corrente.

Risposta di Bohdan Miniv · QA Engineering
Crea una connessione UDP sulla macchina collegata al dispositivo e imposta la sua destinazione all'indirizzo di broadcast della tua rete — l'indirizzo host con tutti 1 per la tua sottorete (per una maschera 255.255.255.0 è l'indirizzo .255 del tuo intervallo) — insieme alla porta UDP che i tuoi listener useranno. Qualsiasi macchina su quella sottorete con un'applicazione in ascolto su quella porta riceverà quindi i dati, senza che sia necessaria alcuna configurazione per-listener dal loro lato.

Un paio di punti pratici: su un host con più interfacce di rete, imposta il broadcast per la rete specifica che intendi usare, così da non inviare sul segmento sbagliato; e scegli una porta che non sia già in uso da qualcos'altro sulla sottorete. L'indirizzo di broadcast esatto dipende dalla tua maschera di sottorete, quindi basati sulla tua configurazione di rete effettiva piuttosto che su un valore fisso.

Risposta di Bohdan Miniv · QA Engineering
Sì, con un paio di approcci a seconda di cosa si intende per "più destinazioni". Se vuoi che ogni macchina sul segmento locale riceva i dati, un singolo broadcast (domanda precedente) è il modo più semplice: un datagramma che la rete consegna a tutti i listener sulla porta. Se vuoi un insieme specifico di destinazioni, puoi indirizzare UDP a indirizzi particolari e, per un gruppo definito su una rete configurata correttamente, il multicast è l'opzione progettata appositamente.

Due limiti concreti determinano la scelta. Il broadcast non attraversa i router — rimane all'interno della subnet locale — quindi "più destinazioni" su altre subnet o su internet non possono essere raggiunte tramite broadcast; useresti UDP indirizzato (unicast) verso ciascuna, oppure TCP. E UDP non offre alcuna garanzia di consegna a nessuna di esse, quindi se tutti i destinatari devono ricevere in modo affidabile ogni messaggio, UDP è il trasporto sbagliato indipendentemente da come lo indirizzi.

Risposta di Nikolai Svarachevsky · Lead Developer
RFC 2217 è un insieme di estensioni di Telnet, e Telnet funziona su TCP perché la negoziazione del controllo della porta dipende dalle garanzie di TCP. L'impostazione di un baud rate o la commutazione di una linea di segnale avvengono con comandi in-band che devono arrivare in modo affidabile e nell'ordine corretto, e le due estremità si confermano a vicenda durante la negoziazione. Si tratta intrinsecamente di uno scambio orientato alla connessione.

UDP non fornisce connessione, né ordinamento, né consegna garantita — un comando potrebbe andare perso o arrivare fuori sequenza rispetto ai dati che doveva accompagnare, lasciando così le due estremità in disaccordo sullo stato della porta. Quindi UDP in SEC serve rigorosamente solo per trasportare dati grezzi, in genere broadcast unidirezionale; tutto ciò che richiede controllo di parametri o segnali funziona su TCP in modalità Telnet. Il trasporto e l'insieme delle funzionalità sono necessariamente legati tra loro.

Risposta di Nikolai Svarachevsky · Lead Developer
Usa i controlli di pacchettizzazione di SEC per accumulare i byte prima che vengano inviati. Puoi trattenere i dati finché non arriva un carattere delimitatore specifico, finché non è trascorso un determinato intervallo di tempo, oppure finché un blocco non raggiunge una dimensione scelta — quindi SEC emette i byte raccolti come un unico datagramma invece di inviarli poco alla volta in frammenti. Per un protocollo orientato ai messaggi, attivare l’invio sul carattere di fine messaggio è di solito il modo più pulito per ottenere un messaggio per pacchetto.

Una cosa da tenere presente, specifica di UDP: un datagramma più grande dell’MTU della rete verrà frammentato a livello IP e, con UDP, la perdita di un qualsiasi frammento comporta lo scarto dell’intero datagramma. Quindi cerca, dove possibile, di fare in modo che ogni messaggio accumulato rientri in un singolo pacchetto delle dimensioni dell’MTU, invece di costruire datagrammi molto grandi. I messaggi piccoli e autonomi sono ciò che UDP gestisce meglio.

Risposta di Nikolai Svarachevsky · Lead Developer
Per una connessione server TCP in modalità raw, sì — l'impostazione Invia dati a ha un'opzione Ultimo attivo che restituisce i dati solo al client che ha risposto per ultimo, insieme a Ricevi dati da per il lato in ingresso. Se il tuo obiettivo è "rispondere a chiunque abbia appena fatto una richiesta", questo è il modo documentato per farlo, e TCP è la scelta naturale perché ogni client ha una propria connessione tracciata.

Nello specifico, tramite broadcast UDP, questo non si applica allo stesso modo — il broadcast è un modello in uscita uno-a-molti senza una connessione per-client su cui basare una risposta. Quindi, se hai bisogno dell'instradamento di ritorno all'ultimo mittente, usa un server TCP raw con Invia dati a → Ultimo attivo anziché il broadcast UDP. Se ti serve specificamente su UDP, descrivi il flusso esatto da supportare e confermeremo cosa consente la build attuale.

Risposta di Bohdan Miniv · QA Engineering
Serial to Ethernet Connector
Trasmetti il dispositivo con porta seriale tramite UDP
14-giorni disponibili di prova gratuita
Il prezzo della licenza parte da $259.95
Disponibile per