Submit Hint Search The Forums LinksStatsPollsHeadlinesRSS
14,000 hints and counting!

Help | 25 comments | Create New Account
Click here to return to the 'Help' hint
The following comments are owned by whoever posted them. This site is not responsible for what they say.
Authored by: VictorsMax on Jan 17, '03 08:45:14AM

So I tried the following:
sudo ifconfig en0 mediaopt full-duplex
sudo ifconfig en0 media 10baseT/UTP mediaopt full-duplex

After which i did a ifconfig and got the following:

inet6 fe80::230:65ff:febe:4438%en0 prefixlen 64 scopeid 0x4
inet netmask 0xffffff00 broadcast
ether 00:30:65:be:44:38
media: 10baseT/UTP <full-duplex> (10baseT/UTP <half-duplex>) status: active

Question is: What does the (10baseT/UTP <half-duplex>) mean?

It appears that the NIC is set to full duplex, but when I do a file transfer test. I am actually communicating in half-duplex mode. Transferring a 1.5 meg file takes 4 minutes!!! As a baseline, I booted into OS 9 with Apple's duplexer tool and was able to transfer the same file in under a minute.
I've also tried disabling the half-duplex setting via a following command:
sudo ifconfig en0 -mediaopt half-duplex
sudo ifconfig en0 media 10baseT/UTP mediaopt full-duplex -mediaopt half-duplex
Both commands seem to do absolutely nothing in terms of disabling half-duplex. The -mediaopt parameter can be found in the man pages for ifconfig.

Any assistance in this full-duplex matter would be greatly appreciated.

[ Reply to This | # ]
Authored by: mellon on Jan 24, '03 05:55:21PM

The reason you're getting such poor performance when you configure the adapter in full-duplex mode is probably that the device into which it is plugged is configured to run full-duplex. When you configure MacOS to run full-duplex, it *says* it's full-duplex, but it's actually running in half-duplex.

I discovered this the hard way on Monday when I tried to transfer 80g of data over a crossover cable. The only way I was able to get decent performance out of the connection was to configure both ends half-duplex. If I configured both ends full-duplex, performance was about what you're reporting.


[ Reply to This | # ]
Authored by: ajoakland on Jul 09, '03 11:45:55AM


You must be careful with auto-negotiate. One person said things must be auto-neg on both ends (mac & switch). This typically causes many problems. Only one end (client OR the switch) NOT both can be auto-negotiate. Non-compatible NIC and switches/hubs/routers will get into an continuous auto-neg handshake that will KILL your throughput.

ALSO, full-duplex is only good if you have a high quality infrastructure. If the datalines sitting in your walls are not "perfect" your full-duplex setting could cause so many errors, that you performance drops to NIL. I tend to FORCE 100Half-Duplex, and avoid most problems.

Servers, in server-rooms, with short cable runs to their switch, can usually handle the 100Full. (assuming the hardware involved allow it)

Summary: go ahead and push things to 100Half, then on a machine by machine basis, attempt 100Full, checking for throughput. Under no circumstances have Auto-Neg on both ends.


[ Reply to This | # ]