Newsgroup: it.fan.marco-ditri
Titolo: mistero

Vorrei che qualcuno mi spiegasse una cosa che non riesco a capire: ho a
casa un pc con win98 (lo utilizzo fondamentalmente come postaizione di
editing audio) con una commercialissima scheda di rete d-link 10/100 da 4
soldi. Ho inoltre un portatile toshiba con scheda di rete 3com 10 Mbit. I
due pc sono connessi tra loro tramite un hub digicom a 10Mbit. Sul
portatile ho installato sia Win98 sia Debian Woody. Se faccio partire
win98 sul portatile, e provo a copiare dei files dal laptop verso il
desktop, la spia delle collisioni sull hub si accende in continuazione (e'
praticamente sempre accesa).
Riavvio il portatile, faccio partire Debian, monto la partizione win.
Faccio partire una copia degli STESSI FILE, che vengono letti dalla STESSA
PARTIZIONE, con lo stesso hub, le stesse schede e gli stessi cavi. La spia
delle collisioni non si accende _mai_ e la copia impiega circa la meta'
del tempo (cronometrato sulla copia di una iso da 700 Mb). A parte le
facili battute su win98, qualcuno e' in grado di spiegarmi *tecnicamente*
per quale motivo accade una cosa del genere?

per quale motivo accade una cosa del genere?
La butto la': il driver Windows 98 cerca di andare in full duplex
quando non e' il caso, oppure c'e' qualche bugfix relativa a quel
particolare chipset (a proposito, che chipset e'?).
Per esempio potrebbe essere che le 3Com, notoriamente schizzinose
(almeno _tutte_ quelle che ho visto, anche se funzionano bene fra
di loro), vadano male con la DLink scrausa quando questa cerca di
attingere la velocita' massima.
Linux non conosce di preciso il chipset DLink, ergo ne2k_pci_open
lo configura in modo "compatibile", e funziona alla grande.
Leonardo che come sparo cazzate io, oh!, 'un ce n'e'!
make: *** No rule to make target `love'.  Stop.

 configura in modo "compatibile", e funziona alla grande.
hmm mi stai dicendo che win98 quando va a negoziare l'inizio del traffico
"si accorge" che dall'altro lato c'e' una scheda DLink e in quanto tale
cerca di mandargli i dati ad una determinata velocita'? La D-Link e'
installata sul pc desktop che RICEVE i dati (la copia la faccio partire
dal portatile), dovrebbe essere sempre la 3com che imposta la velocita' di
trasmissione, no?
In che senso poi dici che linux "non conosce" quella scheda? Di quel
chipset il modulo e' integrato nel kernel, su quel pc tempo fa avevo
installato anche Debian e la scheda me l'aveva riconosciuta con il kernel
bf24 standard (lo stesso che utilizzo sul portatile).. o c'e' differenza
tra "rinoscere" una scheda locale e "riconoscere" una scheda verso la
quale e' destinato il traffico?
(questa del riconoscimento della scheda che riceve il traffico mi suona
del tutto nuova.....)

 delle collisioni non si accende _mai_ e la copia impiega circa la meta'
Che la spia della collisione non si accenda mai e` abbastanza strano. 
Comunque per quanto riguarda win98 potrebbe essere un problema di mtu
troppo basso. Per sapere che mtu hai su win98 prova a dare il comando
C:\> ping -f -l <L> <altro-pc>
dove <altro-pc> e` l'ip dell'altro computer e <L> e` la dimensione in
byte del pacchetto inviato. Comincia con <L> intorno a 1470 e vedi se
la risposta e` corretta. Eventualmente diminuisci <L> per ottenere la
risposta al ping. Se il valore di <L> a cui ottieni la risposta sara`
al di sotto di 1450 puoi cambiare il valore del parametro mtu con una
modifica al registry di win o ad esempio con questa utility freeware:
http://www.netlocity.net/
-- 
Vincenzo

 Che la spia della collisione non si accenda mai e` abbastanza strano.
io inizialmente pensavo che l'hub fosse un po' scrausetto (l'ho rimediato
in un ufficio, era buttato in un angolo inutilizzato). Pero' sono rimasto
anche io molto sorpreso quando ho notato che con Debian la spia della
collisione non si accende _mai_ .
cmq provo e magari vi faccio sapere. Ipitizzo: non e' che e' proprio
buggato l'algoritmo di timing di win98 (prendetela con le pinze, l'ho
sparata li, io di reti e tcp/ip non ci capisco quasi un cazzo). Io ho
riscontrato differenze molto molto significative nel download di un file
da internet nella nostra lan aziendale. I pc che hanno win98 o winxp,
scaricano da internet con Internet Explorer ad una velocita' media di
10-15 Kb al secondo nei momenti in cui la connettivita' e' piu'
congestionata. Ma se faccio partire su un pc con debian in  wget il
download dello stesso file, nello _stesso_ istante, raggiungo
tranquillamente i 30k e a volte anche oltre.

"si accorge" che dall'altro lato c'e' una scheda DLink
No... la mia ipotesi e' che Windows 98 veda che la scheda afferma di
essere capace di Full Duplex. Quindi gli dice, _sempre_: vai pure in
full duplex. Cosa che la scheda, in condizioni ottimali, farebbe con
ottimi risultati (es. parlando con la propria gemella).
Pero' il full duplex di _quella_ scheda fa casino con una scheda che
e' di diverso modello. E quando le due schede parlano si danno sulla
voce l'una con l'altra.
Linux riconosce il "tipo generale" della scheda ("NE2000 PCI", tanto
per dire), ma non si fida a mandarla col full duplex, e la lascia in
half duplex. In questo modo non ci sono problemi.
Oppure, anziche' il duplex potrebbero essere dei ritardi incorporati
nel driver; Win98 usa ritardi insufficienti, Linux no. Nel codice ho
cercato DLINK e ho trovato un po' di usleep(), qua e la'. Potrebbero
averci qualcosa a che fare.
Io personalmente posso garantire che le 3Com quando parlano solo con
altre 3Com e i cavi so' bboni, vanno assai meglio delle altre schede
esistenti - ma fa' tanto che qualcosa non sia 100% DOC, e hai finito
di vivere :-( (chissa', forse cercano di overcloccare la rete...?)
Leonardo


 voce l'una con l'altra.
Occhio che c'e` un hub di mezzo. L'hub non puo` funzionare in modalita`
full-duplex. Due schede collegate su un concentratore non si 'vedranno'
mai tra loro 'fisicamente'. La negoziazione del modo (half/full duplex)
si effettua sempre tra i due dispositivi collegati fisicamente. In ogni
caso potrebbe essere che win98 dica effetivamente alla scheda di andare
in full-duplex fregandosene dell'autonegoziazione. Una prova da fare e`
quella di forzare l'half-duplex nell'impostazione del driver.
-- 
Vincenzo



ho controllato: la scheda viene impostata correttamente (il valore "full
duplex" e' su Dibabled).
Ricapitolando: La scheda D-link e' sul pc desktop, con win98. La scheda
3com pcmcia e' sul laptop, Win 98 e Debian. Su entrambi i pc in win98, il
valore Full Duplex e' Disabled. In mezzo c'e' un hub digicom. Se avvio
win98 su tutti e due i pc e faccio partire una copia in rete, collisioni a
non finire sull'hub. Se faccio partire Debian sul laptop e provo a fare
la stessa operazione, la luce delle collisioni non si accende mai, e
l'operazione e' molto piu' rapida.
Io non riesco a trovare una spiegazione razionale.

 casa un pc con win98 (lo utilizzo fondamentalmente come postaizione di
io, per esempio, se voglio che xp si connetta a linux ad una
velocita' decente con la realtek 8139 100 devo settarla (in xp)
a 10 full, se la metto a 100 (full o half) faccio prima a
spostare i file con il floppy... (iptraf mi da attorno ai
600/800 kbits/sec...)
se poi hai proprio fretta tramite ftp poi fai ancora prima che
non tramite smb (e non credo sia colpa di samba...)
ah, qui ho uno switch per cui credo che non c'entrino le
collisioni ;)
-- 
nebbia