I would like to report some errors and related information to it.
First of all my setup:
SuperMicro X9DAE Board with Intel® i350 Dual Port Gigabit Ethernet (Vendor 0x8086 Device 0x1521 Subsystem Vendor 0x15d9 Subsystem 0x1521 Version 0x0001)
OS 10.8.3 (12D44)
using AppleIGB.kext in version 4.0.17
en0 connected to a gigabit-port of a managed switch with full speed negotation
What I've seen / detected:
1) Editing files on remote storage servers
I have a 10.5 Server in my network. If I edit larger files (10 MB+) for e.g. in Pages networking is broken down in some cases. I copied the same files to my machine, edited them and copied them back and everything is doing well.
2) Copying larger (15 MB+) files on LAN
2.1) from Mac to LAN-Servers
2.1.1) via Parallels / Win 7 / VMWare Client for ESXi
I've a VMWare ESXi 5.0 Server in my network. I needed to install a new image to setup up a virtual machine. I started my VMWare Client (on Win 7 via Parallels 8.0.x) and connected to my ESXi. I was able to administer everything, I can do Console-Administration etc. But when I start to upload the image file, the networks gets stale. I've monitored that and I've a reproducable case.
Next time I first started a terminal with ping to my router, everything works well until I start this upload. In networking tool of apple I can see that no more packets will be sent.
2.1.2) via Panic's Transmit on SSH
Files up to 550 MB are will have no problem. I started with a larger file of 3.13 GB and I got stale network after 622 MB of 3.13 GB.
Later (after 2.1.3) I tested with a file of 4.5 GB and got stale after 2 GB.
2.1.3) via SSH on scp command line
The same file of 3.13 GB I was able to copy via scp command line to the server without any stale but after a fresh reboot.
2.2) from LAN-Servers to Mac
Copying large files from servers on LAN to Mac is no problem.
3) Copying larger files on WAN
I've a 150 mbit WAN downlink with 5 mbit uplink. Getting files from apples very fast servers with more than 15 MB/sec. is no problem.
4) Managing capabilities of en0
4.1) Manual throttling down config in hardware network panel
I started throttling down the interface by editing the configuration on hardware of system network panel. I put down the speed from auto negotated 1000mbit to 100mbit full duplex and saved the configuration.
When I go back to the panel, it remains an manual config but with 1000baseT.
4.2) Manual throttling down config at managed switch
4.2.1) 100 Mbit Full Duplex
That's why I started throttling down by switch. This is possible, networking service application shows 100MBit/s now.
Now I can the send errors on network interface and collisions when I try to upload the file from 2.1) but other networking like ping is still possible, such as writing more informations to my post.
When I stop the transfer, it stops counting up send errors and collisions.
4.2.2) 100 Mbit Half Duplex
Worst case. Collisions on nearly every network request. Network service application shows 100Mbit/s but many send errors and collisions. An upload of file from 2.1) will take networking offline. Pings are no more submitted, send and receive packet counters are stale.
4.2.3) 1000 Mbit Full Duplex with Flow Control (RX/TX)
Same as without Flow Control.
4.3) Setting of kern.ipc.nmbclusters
I started in terminal, doing su and sudo -s and tried to
sysctl -w kern.ipc.nmbclusters=262144
but it showed that the variable is read only. Then I found a hint
. So I rebooted my system with edited kernel flags. (just add ncl=262144 to kernel flags)
After a reboot sysctl kern.ipc.nmbclusters showed the set value. But transfering the image from 2.1) to the Server will end in a stale network too.
5.) Stale network needs Reboot
But restarting OSX is only possible by hardware reset. I always need to reset my computer by reset button, because it gets stale on reboot.
dmesg does not show any problems on startup, meanwhile operating or on failure.
This looks like a problem with the send buffer to me. And it happens
- always if Parallels Desktop has a started VM
- sometimes if Transmit is used with SSH
- never when SSH is used directly
- always if you try to save files via AFP