Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Test ride con Gowow Ori: elettrico e off-road vanno incredibilmente d'accordo
Test ride con Gowow Ori: elettrico e off-road vanno incredibilmente d'accordo
Abbiamo provato per diversi giorni una new entry del mercato italiano, la Gowow Ori, una moto elettrica da off-road, omologata anche per la strada, che sfrutta una pendrive USB per cambiare radicalmente le sue prestazioni
Recensione OnePlus 15: potenza da vendere e batteria enorme dentro un nuovo design
Recensione OnePlus 15: potenza da vendere e batteria enorme dentro un nuovo design
OnePlus 15 nasce per alzare l'asticella delle prestazioni e del gaming mobile. Ma non solo, visto che integra un display LTPO 1,5K a 165 Hz, OxygenOS 16 con funzioni AI integrate e un comparto foto con tre moduli da 50 MP al posteriore. La batteria da 7.300 mAh con SUPERVOOC 120 W e AIRVOOC 50 W è la ciliegina sulla torta per uno smartphone che promette di offrire un'esperienza d'uso senza alcun compromesso
AMD Ryzen 5 7500X3D: la nuova CPU da gaming con 3D V-Cache per la fascia media
AMD Ryzen 5 7500X3D: la nuova CPU da gaming con 3D V-Cache per la fascia media
Vediamo come si comporta il Ryzen 5 7500X3D, nuovo processore di casa AMD che fonde 6 core Zen 4 con la tecnologia 3D V-Cache, particolarmente utile in scenari come il gaming. Annunciato a un prezzo di listino di 279€, il nuovo arrivato sarà in grado di diventare un riferimento per i sistemi budget? Ecco cosa ne pensiamo.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 15-07-2006, 00:01   #1
MEMon
Senior Member
 
Iscritto dal: Dec 2002
Messaggi: 3359
[JAVA]UDP Multicast

Raga sto cercando di fare un multicast con il protocollo udp per inviare un datagram a tanti utenti in una volta sola.
Ho provato diverso codice ma non va, il client non riceve.
Non è che il problema è che lo testo in locale?
MEMon è offline   Rispondi citando il messaggio o parte di esso
Old 15-07-2006, 00:56   #2
The3DProgrammer
Senior Member
 
Iscritto dal: May 2000
Messaggi: 1459
Quote:
Originariamente inviato da MEMon
Raga sto cercando di fare un multicast con il protocollo udp per inviare un datagram a tanti utenti in una volta sola.
Ho provato diverso codice ma non va, il client non riceve.
Non è che il problema è che lo testo in locale?

se per locale intendi sulla tua macchina la risposta è si. Se invece intendi sulla tua LAN (con locale intesa come non connessa ad internet), il problema credo sia nel codice, a meno che il tuo router nn sia in grado di gestire i gruppi multicast.

ciao

EDIT: dimenticavo, se posti il codice ci togliamo anche qualke dubbio

Ultima modifica di The3DProgrammer : 15-07-2006 alle 01:04.
The3DProgrammer è offline   Rispondi citando il messaggio o parte di esso
Old 15-07-2006, 01:32   #3
MEMon
Senior Member
 
Iscritto dal: Dec 2002
Messaggi: 3359
Ciao, io intendo propria sulla stessa macchina(ho un solo pc ), non c'è modo di testare il codice?
Io sto utilizzando pèer la prima volta questo protocollo e quindi devo sempre testare cioè che scrivo, non posso rompere le palle sempre a qualcuno...
A scanso di equivoci il codice è molto semplice ed è questo:
MULTICAST SENDER (SERVER)
Codice:
import java.net.*;
import java.io.*;

public class MulticastSender
{
public static void main( String[] argv )
{
try
{
// get the InetAddress of the MCAST group
InetAddress ia = InetAddress.getByName("228.5.6.7");

// get the port that we will be listening on
int recvPort =6789;

// create a datagram with a suitable message
String str = "Hello from: "+InetAddress.getLocalHost();
byte[] data = str.getBytes();
DatagramPacket dp = new DatagramPacket(data, data.length, ia, recvPort);

// create a multicast socket bound to any local port
MulticastSocket ms = new MulticastSocket();

//Join the multicast group
ms.joinGroup(ia);

// send the message with a Time-To-Live (TTL)=1
ms.send(dp, (byte)1);

// tidy up - leave the group and close the socket
ms.leaveGroup(ia);
ms.close();
}
catch (IOException e) {
System.out.println(e);
}
}
}
MULTICAST RECEIVER
Codice:
import java.net.*;
import java.io.*;

public class MulticastReceiver
{
public static void main( String[] argv )
{
try
{
// get the InetAddress of the MCAST group
InetAddress ia = InetAddress.getByName("228.5.6.7");

// get the port that we will be listening on
int port = 6789;

// create a multicast socket on the specified local port number
MulticastSocket ms = new MulticastSocket( port );

// create an empty datagram packet
DatagramPacket dp = new DatagramPacket(new byte[128], 128);

//Join a multicast group and wait for some action
ms.joinGroup(ia);
System.out.println( "waiting for a packet from "+ia+"...");
ms.receive(dp);

// print out what we received and quit
System.out.println( new String(dp.getData() ));

ms.leaveGroup(ia);
ms.close();
}
catch (IOException e) {
System.out.println(e);
}
}
}
In pratica avvio il receiver il quale rimane in attesa di un pacchetto, poi avvio il sender ma al receiver non arriva nulla...
MEMon è offline   Rispondi citando il messaggio o parte di esso
Old 15-07-2006, 12:04   #4
The3DProgrammer
Senior Member
 
Iscritto dal: May 2000
Messaggi: 1459
il codice mi sembra corretto, ad okkio. Che io sappia non puoi testarlo sul tuo host ma necessiti di un router (almeno nei progetti che ho realizzato in cui ho usato multicast ho fatto così) che supporti i gruppi multicast. Cmq a scanso di equivoci googla un po per vedere se trovi una soluzione

ciauz
The3DProgrammer è offline   Rispondi citando il messaggio o parte di esso
Old 15-07-2006, 12:17   #5
lovaz
Senior Member
 
L'Avatar di lovaz
 
Iscritto dal: Jul 2002
Messaggi: 4334
Puoi usare qemu:
http://fabrice.bellard.free.fr/qemu/
in modo da avere una macchina virtuale con cui comunicare.
Di solito lo uso per testare applicazioni Java RMI.

A proposito, java rmi e' di piu' alto livello, non dovresti preoccuparti
del protocollo.
lovaz è offline   Rispondi citando il messaggio o parte di esso
Old 15-07-2006, 13:12   #6
MEMon
Senior Member
 
Iscritto dal: Dec 2002
Messaggi: 3359
Che immagine di OS mi consigli di usare? basta anche il Freedos?
MEMon è offline   Rispondi citando il messaggio o parte di esso
Old 15-07-2006, 13:27   #7
MEMon
Senior Member
 
Iscritto dal: Dec 2002
Messaggi: 3359
Ma poi non ho capito una cosa, utilizzando questo metodo, è SICURO che andrà sempre o dipende dal sistema operativo, dal modem, dalla rete?
Se si tratta di una rete locale c'è caso che non vadi? Se invece si parla di internet va sempre?
Non ho ben capito...perchè altrimenti non perdo tempo a cercare di testare il codice multicast, ma me lo scrivo io una sorta di multicast.
Quello che devo fare tanto penso si possare fare anche senza multicast, in pratica ho un server e diversi client, i client mandano i loro dati al server il quale li spedisce a tutti i client connessi, non credo sia difficile da fare anche senza multicast.
MEMon è offline   Rispondi citando il messaggio o parte di esso
Old 15-07-2006, 13:34   #8
The3DProgrammer
Senior Member
 
Iscritto dal: May 2000
Messaggi: 1459
Quote:
Originariamente inviato da MEMon
Ma poi non ho capito una cosa, utilizzando questo metodo, è SICURO che andrà sempre o dipende dal sistema operativo, dal modem, dalla rete?
Se si tratta di una rete locale c'è caso che non vadi? Se invece si parla di internet va sempre?
Non ho ben capito...perchè altrimenti non perdo tempo a cercare di testare il codice multicast, ma me lo scrivo io una sorta di multicast.
Quello che devo fare tanto penso si possare fare anche senza multicast, in pratica ho un server e diversi client, i client mandano i loro dati al server il quale li spedisce a tutti i client connessi, non credo sia difficile da fare anche senza multicast.
C'è da precisare una cosa: internet NON E' multicast. Si, è vero, ci sono tentativi di standardizzazione in corso, esistono isole multicast connesse in tunneling, ma cmq non è possibile essere sicuri che un programma che usi i gruppi multicast funzioni. Anche perkè tra l'altro, come hai detto MulticastSocket si basa su UDP, il che è tutto dire. Questo discorso vale anche per le LAN, anche se oramai quasi tutti i router supportano i gruppi multicast ed è molto difficile che un pacchetto UDP si perda su una LAN. Per cui ti consiglio di usare i socket classici o RMI, soprattutto se devi realizzare qualkosa che richieda sicurezza in termini di ricezione dei pacchetti e di arrivo in ordine (che so, un protocollo di sincronizzazione od altro....).

ps. xlovaz:

tra l'altro nn è necessario usare 2 macchine x testare programmi che usano RMI, basta avviare + server sulla stessa macchina su porte diverse

ciauz
The3DProgrammer è offline   Rispondi citando il messaggio o parte di esso
Old 15-07-2006, 18:55   #9
recoil
Senior Member
 
L'Avatar di recoil
 
Iscritto dal: Jul 2002
Città: Milano
Messaggi: 19148
Quote:
Originariamente inviato da The3DProgrammer
Anche perkè tra l'altro, come hai detto MulticastSocket si basa su UDP, il che è tutto dire.
anche perché multicast su TCP...

riesci a provare con una macchina linux? almeno abiliti facilmente il multicast, usando windows come router non so se funziona... ci sarà il modo, ma non lo conosco
recoil è offline   Rispondi citando il messaggio o parte di esso
Old 16-07-2006, 11:52   #10
SlayQL
Member
 
Iscritto dal: Sep 2005
Messaggi: 114
Quote:
Originariamente inviato da MEMon
Ma poi non ho capito una cosa, utilizzando questo metodo, è SICURO che andrà sempre o dipende dal sistema operativo, dal modem, dalla rete?
Se si tratta di una rete locale c'è caso che non vadi? Se invece si parla di internet va sempre?
Non ho ben capito...perchè altrimenti non perdo tempo a cercare di testare il codice multicast, ma me lo scrivo io una sorta di multicast.
Quello che devo fare tanto penso si possare fare anche senza multicast, in pratica ho un server e diversi client, i client mandano i loro dati al server il quale li spedisce a tutti i client connessi, non credo sia difficile da fare anche senza multicast.
E' sicuro che andra' sempre in lan ( se l'hai testato in lan ) in quanto la JVM e' la stessa per tutte le macchine, nn dipende dal SO, ne tanto meno dalla macchina sulla quale gira.

Se provi su internet il codice che hai scritto non ti andra' mai perche' hai settato il TimeToLive a 1
SlayQL è offline   Rispondi citando il messaggio o parte di esso
Old 16-07-2006, 12:14   #11
lovaz
Senior Member
 
L'Avatar di lovaz
 
Iscritto dal: Jul 2002
Messaggi: 4334
Quote:
Originariamente inviato da The3DProgrammer
ps. xlovaz:

tra l'altro nn è necessario usare 2 macchine x testare programmi che usano RMI, basta avviare + server sulla stessa macchina su porte diverse

ciauz
Sì, lo so, ma ogni tanto è bene provare con 2 macchine,
per vedere come va in presenza di firewall, per esempio,
o se l'hostname è settato correttamente con rmid, rmiregistry, ecc.

Comunque uso frodo, o damn small se mi serve la grafica.

Non credo esista java per freedos.
lovaz è offline   Rispondi citando il messaggio o parte di esso
Old 16-07-2006, 20:14   #12
The3DProgrammer
Senior Member
 
Iscritto dal: May 2000
Messaggi: 1459
Quote:
Originariamente inviato da lovaz
Sì, lo so, ma ogni tanto è bene provare con 2 macchine,
per vedere come va in presenza di firewall, per esempio,
o se l'hostname è settato correttamente con rmid, rmiregistry, ecc.

Comunque uso frodo, o damn small se mi serve la grafica.

Non credo esista java per freedos.

c'hai ragione
The3DProgrammer è offline   Rispondi citando il messaggio o parte di esso
Old 06-08-2006, 16:07   #13
MEMon
Senior Member
 
Iscritto dal: Dec 2002
Messaggi: 3359
Quote:
Originariamente inviato da The3DProgrammer
C'è da precisare una cosa: internet NON E' multicast. Si, è vero, ci sono tentativi di standardizzazione in corso, esistono isole multicast connesse in tunneling, ma cmq non è possibile essere sicuri che un programma che usi i gruppi multicast funzioni. Anche perkè tra l'altro, come hai detto MulticastSocket si basa su UDP, il che è tutto dire. Questo discorso vale anche per le LAN, anche se oramai quasi tutti i router supportano i gruppi multicast ed è molto difficile che un pacchetto UDP si perda su una LAN. Per cui ti consiglio di usare i socket classici o RMI, soprattutto se devi realizzare qualkosa che richieda sicurezza in termini di ricezione dei pacchetti e di arrivo in ordine (che so, un protocollo di sincronizzazione od altro....).

ps. xlovaz:

tra l'altro nn è necessario usare 2 macchine x testare programmi che usano RMI, basta avviare + server sulla stessa macchina su porte diverse

ciauz
Ritiro su la questione xkè ho nuovamente bisogno di alcune info su multicast.
Se ho capito bene se devo realizzare un'applicazione per INTERNET non posso usare il multicast?

Serve solo per le LAN? Volevo chiarare questa cosa...
MEMon è offline   Rispondi citando il messaggio o parte di esso
Old 09-08-2006, 18:34   #14
recoil
Senior Member
 
L'Avatar di recoil
 
Iscritto dal: Jul 2002
Città: Milano
Messaggi: 19148
Quote:
Originariamente inviato da MEMon
Ritiro su la questione xkè ho nuovamente bisogno di alcune info su multicast.
Se ho capito bene se devo realizzare un'applicazione per INTERNET non posso usare il multicast?

Serve solo per le LAN? Volevo chiarare questa cosa...
il multicast non serve solo per le LAN, funziona anche in internet
ad esempio rosso alice usa multicast, sempre se ricordo bene l'ip che ho visto
recoil è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Test ride con Gowow Ori: elettrico e off-road vanno incredibilmente d'accordo Test ride con Gowow Ori: elettrico e off-road va...
Recensione OnePlus 15: potenza da vendere e batteria enorme dentro un nuovo design   Recensione OnePlus 15: potenza da vendere e batt...
AMD Ryzen 5 7500X3D: la nuova CPU da gaming con 3D V-Cache per la fascia media AMD Ryzen 5 7500X3D: la nuova CPU da gaming con ...
SONY BRAVIA 8 II e BRAVIA Theatre System 6: il cinema a casa in formato compatto SONY BRAVIA 8 II e BRAVIA Theatre System 6: il c...
KTC H27E6 a 300Hz e 1ms: come i rivali ma a metà prezzo KTC H27E6 a 300Hz e 1ms: come i rivali ma a met&...
Uno smartphone super economico ma potent...
Offerte Black Friday: PlayStation 5 ora ...
Samsung alza i listini fino al 60%: sta ...
Black Friday anticipato: maxi TV QLED a ...
Windows 26: un concept mostra come potre...
I 4 portatili tuttofare super scontati: ...
Black Friday anticipato: monitor da gami...
Tadus T16.20: arriva il trattore elettri...
Col braccio meccanico sposta e organizza...
YouTube TV e Disney fanno pace: tornano ...
AMD ha in mano un terzo del mercato dell...
Circolare tra i quartieri centrali di Lo...
Netflix aumenta ancora i prezzi: rincari...
Tim Cook potrebbe lasciare Apple gi&agra...
Fire TV Stick 4K Select a prezzo da urlo...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 10:58.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v