[ LUGOS ] full duplex

Metod Kozelj metod.kozelj na rzs-hm.si
Pon Jan 8 07:38:05 CET 2001


Howdy!

On Sun, 7 Jan 2001, Borut Rozman wrote:

> V mojo slack7.0 mašino sem instaliral 2.17br kernel, naredil bridge iz 2h
> realtek8029 nic karticami in eno ne2000, sedaj bi rad da bi mi realtekove
> delale v full duplex modeu pa mi to nikakor ne uspe saj se v mojem
> workstationu nastavljena 3c509b nikakor noče povezati na full duplex saj je
> transfer tam okoli 300-500k/s kar je slabše kot na half duplex???

A si preprican, da sta obe kartici (realtek in 3c509) full duplex? Ce
nista, potem imas se dober transfer rate.

Sicer pa nasplosno o full-duplexu: ce sta strani precej nesimetricni kar
se tice zmoznosti hitrih prenosov (recimo: ena mrezka bolj slaba, en
racunalnik bolj pocasen, ...) je full duplex "bad thing". Razlog je v tem,
da full duplex praviloma nima kaksne kontrole toka. Kar pomeni, da ce ena
kartica besno oddaja pakete, druga pa jih ne zmore sprejeti, jih bo
enostavno spustila. Prva stran tega ne bo opazila. Potem pa je stvar
visjega protokola, da to preko time-outa ugotovi. Kar je casovno potratno.
Ce imas half duplex, potem v primeru nezmoznosti sprejema druga stran
enostavno povzroci kolizijo (collision) in prva stran paketek takoj zatem
ponovno poslje. Kar je precej manj casovno potratno.

Novejse kartice sicer podpirajo ti. 'flow control', ampak implementacija
je deloma tudi v driverjih. Tega pa vsi driverji/kartice ne podpirajo.

Moje izkusnje pravijo, da se da na relativno nezasedenem mreznem segmentu
tudi pri half-duplex prenosih doseci skoraj maksimalno mozno hitrost. Pri
full-duplex povezavah pa, kot receno, lahko maksimalna hitrost, lahko pa
le 1/2.

Peace!
  Mkx

---- perl -e 'print $i=pack(c5,(41*2),sqrt(7056),(unpack(c,H)-2),oct(115),10);'





Dodatne informacije o seznamu Starilist