Newsgroup: it.comp.reti.ip-admin
Titolo: OT: broadcast/multicast su _tcp_....

Ciao a tutti.
probabilmente e' off-topic, ma volevo chiedere una cosa.
Io devo ricavare con java rmi una sorta di multicast/broadcast fault
tolerant (senza aspettare le nuove estensioni e senza usare il jsdk,
putroppo) basandomi quindi sulla connettivita' tcp/ip. la mia domanda
e': puo' succedere (sia a livello di intranet/internet che a livello
di rete locale) che due nodi a e b possano comunicare sfruttando un
terzo nodo c, senza che sia possibile anche un collegamento "diretto"
(ovviamente virtuale) fra a e b? la mia sensazione, sbirciando almeno
le rfc e per l'esperienza che posso avere su internet, e' che il
routing e' "nascosto" e quindi se non c'e' il route la risposta e' che
non c'e' punto e basta.
insomma, secondo voi se usassi l'algoritmo "naive" (rmi ai singoli
oggetti con attesa della risposta) ci sarebbero problemi? il broadcast
DEVE essere fault tolerant...
grazie in anticipo...
dimenticavo: sono in crosspost fra due gruppi (ip-admin e
reti-locali), se pensate che non sia il caso postate pure e/o
redirigete il followup a uno solo di questi, seguo entrambi i
gruppi...
ciao!
  gabriele
--
gabriele zugliani - student at pisa univ. (dept. of computer science)
linux docs: 
http://ildp.psy.unipd.it
 
http://sunsite.unc.edu/LDP
==> NOTE: TO REPLY PLEASE REMOVE "NZPM" FROM THE ADDRESS.

ARABO ???

ARABO ???
devo dedurre che mi sono spiegato un'attimino da cani? ^_^
intendevo dire: se a e b si possono parlare usando c (cioe' per
esempio a e b vedono c e possono mandargli messaggi, sfruttandolo come
"ripetitore" fra i due) anche a e b si vedono direttamente giusto?
cioe': tutte le macchine sulla rete tcp/ip sono in grado di vedersi (a
meno di firewalls) giusto? detto in un'altro modo: il routing dei
pacchetti e' completamente invisibile al livello delle applicazioni,
esatto? ancora un'altro modo di dirlo: gli unici modi di far non
parlare due macchine su rete tcp/ip e' un firewall oppure il
partizionamento della rete, esatto? cioe', il sistema di routing dei
pacchetti (anche su lan/wan!) se c'e' una strada per un pacchetto la
trova giusto?
l'algoritmo piu' "naive" per il broadcast sia quello "okkei, spedisco
a te, poi a te, poi a te" cioe' il mittente invia uno per uno dei
messaggi point-to-point ai destinatari (putroppo devo usare rmi quindi
niente multicast tcp/ip).
grazie in anticipo....


"ripetitore" fra i due) anche a e b si vedono direttamente giusto?
Sbagliato!
Presupposto che :
1) a e b per non vedersi sono collocati in due reti o sottoreti differenti
2) c è un host multihomed ovvero con più schede di rete o con una scheda e
più indirizzi ip di cui uno appartenente alla rete di a ed uno appartenente
alla rete di b
3) il gateway predefinito di a e b è l'indirizzo di c
Allora :
se c è configurato come router allora a e b si vedono, ma sempre passando
per c.
se c non è configurato come router a vedrà c e b vedrà c, ma a e b non si
vedono.
Nota
Il pacchetto che da a deve raggiungere b :
1) a sottopone l'indirizzo di b ad end con la propria maschera di sottorete
2) a confronta quanto sopra con il proprio indirizzo ip per determinare se
l'indirizzo di b appartiene alla rete locale o remota (nel nostro caso si
tratta di una rete remota)
3) trattandosi di una rete remota, a avvia una richiesta ARP per ottenere
l'indirizzo hardware del gateway predefito.
4) a invia il pacchetto al gateway predefinito
5) Il gateway (c) controlla la propria tabella di routing ed invia il
pacchetto al gateway (secondo ip di c) della rete di b e quindi all'host b
Ciao.