Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine porta Logan in un'avventura inedita, violenta e fortemente narrativa, costruita attorno alla sua natura di combattente e al difficile rapporto con il proprio passato. Insomniac Games punta su combattimenti spettacolari, progressione e personalizzazione, inserendo l'azione in un mondo segnato dalla persecuzione dei mutanti. Un viaggio intenso, che alterna mattanza, esplorazione e momenti sorprendentemente emotivi.
DJI Romo 2: tante novità lo rendono un robot completo
DJI Romo 2: tante novità lo rendono un robot completo
Romo 2 è la seconda generazione di robot lavapavimenti di DJI, un modello che si caratterizza per la precisione nel sistema di navigazione e per il funzionamento particolarmente silenzioso. Con le modifiche introdotte in questa seconda versione, e un posizionamento di prezzo più allineato alla concorrenza, rappresenta una valida alternativa sul mercato delle soluzioni di pulizia domestica
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED
Il primo Sony con retroilluminazione True RGB alla prova del banco di misura e dei contenuti: luminanza enorme, colori accurati in HDR e un antiriflesso molto efficace. I limiti sono due sole HDMI 2.1 e il blooming fuori asse
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 01-06-2010, 17:08   #1
seibi
Member
 
Iscritto dal: Oct 2009
Messaggi: 30
[java] Network Monitor

ciao a tutti, devo realizzare un progetto di network monitor per monitorare le prestazioni di una rete... tra le funzioni richiesta vi è un test di velocita di trasmissione dati... l'architettura è formata da un server e da vari Client dislocati sulle varie macchine che compongono la rete... la mia domanda è come posso far comunicare due client senza passare per il server al quale sono connessi???
devo creare una nuova serversocket??

grazie in anticipo

OS : win
seibi è offline   Rispondi citando il messaggio o parte di esso
Old 01-06-2010, 17:21   #2
nuovoUtente86
Senior Member
 
Iscritto dal: Mar 2007
Messaggi: 7863
il test del throughput visto dal livello applicazione lo puoi fare in java attraverso i socket. Se ti interessano invece statistiche dei livelli più bassi devi poggiarti alle API del SO.
Quanto al tipo di architettura, se client/server o p2p dipende dalle tue specifiche esigenze, ma questo poco interessa poi ai fini della scelta del livello trasporto e quindi dell' implementazione in JAVA.
nuovoUtente86 è offline   Rispondi citando il messaggio o parte di esso
Old 01-06-2010, 17:25   #3
seibi
Member
 
Iscritto dal: Oct 2009
Messaggi: 30
si anche io volevo farlo attraverso le socket, ma non riesco a mettere in contatto tra di loro due client? devo per caso creare una ServerSocket su uno dei client?

grazie per la risposta
seibi è offline   Rispondi citando il messaggio o parte di esso
Old 01-06-2010, 17:31   #4
nuovoUtente86
Senior Member
 
Iscritto dal: Mar 2007
Messaggi: 7863
Quote:
Originariamente inviato da seibi Guarda i messaggi
si anche io volevo farlo attraverso le socket, ma non riesco a mettere in contatto tra di loro due client? devo per caso creare una ServerSocket su uno dei client?

grazie per la risposta
si per instaurare una connessione TCP c'è bisogna che una delle 2 entità coinvolte faccia binding su una porta.
nuovoUtente86 è offline   Rispondi citando il messaggio o parte di esso
Old 01-06-2010, 17:40   #5
seibi
Member
 
Iscritto dal: Oct 2009
Messaggi: 30
ho fatto una prova...allora la situazione è questa:

Server e client1 sono sulla stessa macchina

client2 è su un'altra;

la serversocket la crea client1, però quando in client2 mi vado a connettere attraverso Socket s = new Socket(nomepc,porta) mi da errore (connection timeout), mentre se uso Socket s = new Socket(IP,porta) funziona .

cosa pensate possa essere?
seibi è offline   Rispondi citando il messaggio o parte di esso
Old 01-06-2010, 17:44   #6
nuovoUtente86
Senior Member
 
Iscritto dal: Mar 2007
Messaggi: 7863
se passi un riferimento mnemonico all' host, devi essere sicuro che l' infrastruttura di rete sia in grado di risolverlo, in questo caso attraverso netbios o un local DNS.
nuovoUtente86 è offline   Rispondi citando il messaggio o parte di esso
Old 01-06-2010, 18:06   #7
seibi
Member
 
Iscritto dal: Oct 2009
Messaggi: 30
a quanto pare non ho chiare delle cose sulle socket.... perchè se io su entrambe i client faccio

InetAddress address = InetAddress.getByName(nome pc);
System.out.println(address);


il risultato della sistem.out è sempre lo stesso in entrambe i casi.... :S cambia solo il nome del pc ma l'ip è lo stesso NOME PC/IP
seibi è offline   Rispondi citando il messaggio o parte di esso
Old 01-06-2010, 18:14   #8
nuovoUtente86
Senior Member
 
Iscritto dal: Mar 2007
Messaggi: 7863
se tu metti localhost oppure il nome del pc-locale avrai sicuramente una risoluzione (almeno che non sia corrotto il file hosts). Se metti il nome di un altro pc, lavorando si windows al 99% riuscirai a risolverlo tramite netbios, ma se questi è disabilitato oppre la rete è mista è necessario che quel nome venga risolto da un DNS.
Ora credo il tuo caso rientri nelle ipotesi più semplici.
Alternativamente puoi creare all' interno del tuo protocollo un sistema proprietario di naming, in grado di associare ad un nome il corrispettivo host.
nuovoUtente86 è offline   Rispondi citando il messaggio o parte di esso
Old 01-06-2010, 18:28   #9
seibi
Member
 
Iscritto dal: Oct 2009
Messaggi: 30
si il mio è il caso piu semplice...però non riesco ancora a capire una cosa...

perchè se faccio:
InetAddress address = InetAddress.getByName(nomePClocale);
System.out.println(address);


e

InetAddress ia = InetAddress.getLocalHost();
System.out.printlm(ia.getHostAddress());

nella stessa classe ottengo due IP diversi??? non dovrebbe essere identico
seibi è offline   Rispondi citando il messaggio o parte di esso
Old 01-06-2010, 18:30   #10
nuovoUtente86
Senior Member
 
Iscritto dal: Mar 2007
Messaggi: 7863
uno ti restituisce l' indirizzo di loopback, l' altro quello dell' interfaccia di rete.
nuovoUtente86 è offline   Rispondi citando il messaggio o parte di esso
Old 01-06-2010, 18:34   #11
seibi
Member
 
Iscritto dal: Oct 2009
Messaggi: 30
Quote:
Originariamente inviato da nuovoUtente86 Guarda i messaggi
uno ti restituisce l' indirizzo di loopback, l' altro quello dell' interfaccia di rete.
e io quando creo la socket per la connessione verso laltro client devo usare quello di loopback e quindi il primo vero?
seibi è offline   Rispondi citando il messaggio o parte di esso
Old 01-06-2010, 18:38   #12
seibi
Member
 
Iscritto dal: Oct 2009
Messaggi: 30
la mia difficoltà è nel reperire l'IP del client per metterlo nel primo campo del metodo socket...io del client ho a disposizione il nome
seibi è offline   Rispondi citando il messaggio o parte di esso
Old 01-06-2010, 18:39   #13
nuovoUtente86
Senior Member
 
Iscritto dal: Mar 2007
Messaggi: 7863
devi utilizzare il primo, che non è quello di loopback.
Probabilmente ti è utile capire un po come funziona il protocollo ip (ed eventualmente trasporto), in modo da maneggiare meglio i Socket, che ne rappresentano un' astrazione.
nuovoUtente86 è offline   Rispondi citando il messaggio o parte di esso
Old 02-06-2010, 02:20   #14
seibi
Member
 
Iscritto dal: Oct 2009
Messaggi: 30
grazie per i preziosi consigli, ho quasi risolto tutti i problemi tranne questo:
ho bisogno di convertire un indirizzo IP che ho sotto forma di stringa in oggetto InetAddress....come posso farE???
seibi è offline   Rispondi citando il messaggio o parte di esso
Old 02-06-2010, 09:40   #15
nuovoUtente86
Senior Member
 
Iscritto dal: Mar 2007
Messaggi: 7863
come hai già fatto nei post precedenti va bene.
nuovoUtente86 è offline   Rispondi citando il messaggio o parte di esso
Old 02-06-2010, 11:58   #16
seibi
Member
 
Iscritto dal: Oct 2009
Messaggi: 30
ho finalmente impostato la connessione UDP però quando vado a spedire un pacchetto dal client 1 al client 2 il pacchetto arriva solo nel caso 1->2 .

nel caso 2->1 il serverUDP rimane in attesa del pacchetto...

ho fatto delle prove e questo succede solo quando a fare da server è il client che non è in locale con il SERVERCENTRALE.

può essere che visto che è in locale la send arriva prima delle receive?
seibi è offline   Rispondi citando il messaggio o parte di esso
Old 02-06-2010, 18:47   #17
seibi
Member
 
Iscritto dal: Oct 2009
Messaggi: 30
perfetto, ho risolto quasi tutto...!! grazie per i preziosissimi consigli!! ora mi manca solo costruire un grafo dove rappresentare la velocità di connessione tra i vari client....ma esiste qualche libreria grafica di java che faccia questo?
seibi è offline   Rispondi citando il messaggio o parte di esso
Old 03-06-2010, 08:30   #18
banryu79
Senior Member
 
L'Avatar di banryu79
 
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
Quote:
Originariamente inviato da seibi Guarda i messaggi
ora mi manca solo costruire un grafo dove rappresentare la velocità di connessione tra i vari client....ma esiste qualche libreria grafica di java che faccia questo?
Prova a dare un'occhiata a JGraph o a JUNG.
Oppure prova a cercare in questa lista: http://www.dmoz.org/Science/Math/Com...Graph_Drawing/
__________________

As long as you are basically literate in programming, you should be able to express any logical relationship you understand.
If you don’t understand a logical relationship, you can use the attempt to program it as a means to learn about it.
(Chris Crawford)
banryu79 è offline   Rispondi citando il messaggio o parte di esso
Old 03-06-2010, 09:27   #19
nuovoUtente86
Senior Member
 
Iscritto dal: Mar 2007
Messaggi: 7863
Quote:
Originariamente inviato da seibi Guarda i messaggi
ho finalmente impostato la connessione UDP però quando vado a spedire un pacchetto dal client 1 al client 2 il pacchetto arriva solo nel caso 1->2 .

nel caso 2->1 il serverUDP rimane in attesa del pacchetto...

ho fatto delle prove e questo succede solo quando a fare da server è il client che non è in locale con il SERVERCENTRALE.

può essere che visto che è in locale la send arriva prima delle receive?
In ogni caso, il test lo svilupperei su TCP, per dare un misura di reale utilizzo della connessione.
nuovoUtente86 è offline   Rispondi citando il messaggio o parte di esso
Old 03-06-2010, 11:35   #20
seibi
Member
 
Iscritto dal: Oct 2009
Messaggi: 30
Quote:
Originariamente inviato da nuovoUtente86 Guarda i messaggi
In ogni caso, il test lo svilupperei su TCP, per dare un misura di reale utilizzo della connessione.
li dovevo fare tutti e due, TCP e UDP, cmq ora ho risolto, mi funzionano tutti e due
seibi è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa Marvel's Wolverine, la recensione: Logan torna p...
DJI Romo 2: tante novità lo rendono un robot completo DJI Romo 2: tante novità lo rendono un ro...
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED Sony Bravia 9 II: il True RGB alla prova, dove l...
Geely EX5, un mese al volante: il SUV elettrico cinese che ci ha sorpreso (quasi) senza riserve Geely EX5, un mese al volante: il SUV elettrico ...
Mova Z70 Ultra Roller Complete: motore potente, rullo di lavaggio e l'IA a guidare Mova Z70 Ultra Roller Complete: motore potente, ...
La Serie A con DAZN e Amazon Prime con l...
Giochi Ubisoft su Steam senza Ubisoft Co...
Miami Beach ha autorizzato la maxi opera...
Apple regala un altro anno di funzioni s...
Alla fine è successo davvero: Vol...
Il meglio di Amazon del weekend in uno s...
Speciale TV in offerta su Amazon: Hisens...
Non c'è pace per Trezor: 347.000 e-mail ...
È un portatile Dell e li vale tut...
Apple iPhone 17 Pro Max 256GB a 1.195€ (...
GPT-6 Astra è davvero AGI o non s...
LG OLED G6S 48'' a 845€ e G6 55'' a 1368...
Mantax Otax: il malware Android che crip...
Musk incassa un altro maxi contratto IA:...
Le vendite di EV sono esplose in tutto i...
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: 22:59.


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