PCI (Planex Communications Inc.) FXG-08TXJ Gigabit Switch

As you may remember, I had been having all kinds of problems getting a D-Link DGS-1008D gigabit ethernet switch to work reliably. (You can read the previous episode in that saga.)

Unfortunately I had not been able to find anyone selling any other brand of switch than the D-Link ones. Through Google I was able to find some other options available in Taiwan. I finally was able to purchase a PCI FXG-08TXJ 8-port gigabit ethernet switch for TW$3100 (US$94). (You can read about my search over on Forumosa.com.)

Many of my readers probably don’t recognize the PCI brand name. It’s a Japanese company who primarily sell in Japan, but many of their products are also available in Taiwan. I had previously had an 802.11b PCMCIA card from them long ago. Their full name is Planex Communications Inc. The one drawback to their products is that most of their written materials are in Japanese. That’s not too big a problem considering the main alternative here is to get something all in Chinese.

The PCI switch itself is enclosed in an all-metal silver colored case. It feels nice and solid, whereas the D-Link has a plastic case and feels cheaply made. The PCI switch has the ethernet ports and all LEDs on the front panel and the power jack on the back panel. The D-Link had LEDs in front and ethernet ports and power in back. Personally I prefer both ethernet and LEDs in front. As a nice touch, they also include a small pigtail for the power brick so that you can only use one power outlet on your power strip.

Plugging everything in, it all worked right away with all computers linking at gigabit speeds. I’ve been using it for one week and there have been zero instances of link being dropped and no other oddities noticed. It just works. The switch supports up to 9.5K sized Jumbo Frames. After installing it I reconfigured the systems with Realtek 8169 cards to use 7K Jumbo Frames (the max size they support). My laptop has a Broadcom 5788 gigabit chipset which does not appear to support Jumbo Frames, so it was left at the standard 1500 byte frame size.

Performance Testing:

Computers:
minquan: Solaris 10 6/06 P4-3.0ghz 1gb Realtek 8169 MTU7000
jinzhou: Solaris 11 b41 P2-450mhz dual CPU 384mb Realtek 8169 MTU7000
songjiang: Windows XP SP2 P4-2.53ghz 2gb Realtek 8169 MTU7000
noraneko: Windows XP SP2 PM-2.0ghz 1gb Broadcom 5788 MTU1500

Testing Scheme:

server: iperf -s -m -M 100000 -w 1M -l 24k
client: iperf -c server -m -M 100000 -w 1M -l 24k -t 60

With minquan as server:
jinzhou: 268 Mbits/sec
songjiang: 578 Mbits/sec
noraneko: 493 Mbits/sec

With jinzhou as server:
minquan: 774 Mbits/sec
songjiang: 558 Mbits/sec
noraneko: 432 Mbits/sec

With songjiang as server:
minquan: 580 Mbits/sec
jinzhou: 265 Mbits/sec
noraneko: 332 Mbits/sec

With noraneko as server:
minquan: 612 Mbits/sec
jinzhou: 255 Mbits/sec
songjiang: 284 Mbits/sec

Performance testing was a bit interesting. The ancient 450mhz system did quite poorly as a client but quite well as a server. (Note: In iperf the definition of client and server are kind of backwards. The client sends data and the server receives.) I read elsewhere that the Realtek chipset is very CPU intensive compared to others, and indeed during heavy network usage I see that the CPU is pegged on jinzhou. Apparently the Intel chipsets are the most CPU efficient and also can more easily attain speeds above 800 Mbits/sec. They are a bit more expensive though. This system really needs a motherboard/cpu upgrade.

The laptop system (noraneko) does better but still nothing spectacular. The lack of Jumbo Frames support is probably what is holding it back. songjiang and minquan both turn in quite respectable benchmark results. Also of note, the Solaris scores tend to be better all other things considered. Keep in mind that these are just informal performance tests of raw network performance and don’t take into account actual performance which would be affected by disk speed and protocol efficiency.

All in all a pretty good result this time. I might replace the Realtek boards with Intel ones at some point, though they do pretty well for being 1/3 the price of an Intel board.

Lyrics: Soldier Jane (Beck)

Yet another example where looking up the lyrics on the net results in painfully incorrect lyrics. I’m not saying this is 100% right, but this is a hell of a lot better than what’s out there. I’ve also added a ‘歌詞 / Lyrics’ category now that there are a few of those on this blog. (By the way, the new Beck album is good!)

Artist: Beck
Song: Soldier Jane
Album: The Information

No one cares what dress she wears at all
Tattered rags and paper bags and all
She’s the one sleeping in the dirt
Drag her down, don’t let her drown in dirt

Lovers drag their canes across the gates
Gamblers light candles for the days
No one wake her up, she’s sleeping still
So put a candle on her window sill

Soldier Jane, don’t be afraid
Take your heart out of the shell
Take your heart out of the shell
Throw it away

Stars, they strike the darkness in the room
Knives, they take the poison from the wound
Cars, they drive us down into the ruins
We sweep our cares away with dirty brooms

Soldier Jane, don’t be afraid
Take your heart out of the shell
Take your heart out of the shell
Throw it away

Robert Anton Wilson needs your help

Noted sci-fi and philosophy author Robert Anton Wilson (The Illuminatus Trilogy, et al) is having trouble covering his medical costs and rent. As you may know from his writings he suffered from polio as a child but had mostly been cured of it. However, he is now suffering from debilitating post-polio syndrome, may not have much longer to live, and has been unable to cover both his medical bills and rent. Some of his friends have started a donation drive so that he can continue to live in his home and receive medical care for however long he can stay with us.

Here are some things you can do to help:

Send a donation to his PayPal account: olgaceline@gmail.com

Send a check payable to Robert Anton Wilson by mail to:

Dennis Berry
c/o Futique Trust
P.O. Box 3561
Santa Cruz, CA 95063

Order books (Bob’s non-fiction works and other authors) from New Falcon Publications who will be donating 7% of all online orders to Robert Anton Wilson during October.

Order his other books and souvenirs through his official website. (He’ll get an extra cut when ordering from Amazon through his website due to being an Amazon affiliate.)

Make a prayer or offering to Goddess Eris.

(Disclaimer: I provide hosting services for Robert Anton Wilson’s official website.)

Still problems

The busted-ass D-Link switch replacement is still having problems:

On the main solaris box dropped link 4 times since last night

On the secondary solaris box dropped link 4 times since last night

On the windows PC I don’t have link stats but it dropped 31 packets to the router in that amount of time. 31 may not seem like much, but it’s about 31 higher than it should be.

Anyone have any ideas where to look for a non-D-Link gigabit switch in Taipei?

D-Link DGS-1008D Repair

For those who missed the previous episode in this saga here’s a summary: 1) Bought D-Link DGS-1008D 2) It dies 3) Return to shop for replacement 4) It dies.

I sent the second one in for repairs and got back a replacement (different serial number) for it yesterday. It’s still alive so far.

I also got the Gigabit card in my windows box working reliably. Previously it would cause noise on the sound card and give erratic performance. After poking around I found that the Realtek gigabit card and my M-Audio Revolution 7.1 sound card were both insisting on latching on to IRQ 21. After moving PCI cards around and disabling some unused devices in the BIOS, the Realtek decided to try out IRQ 16, and now no longer causes my sound card to make rude noises.

Performance between my XP box and main Solaris server are pretty ripping now. However, my older Solaris server barely breaks 200mbps, just about double a plain old fast ethernet board can do. It’s an old Pentium 2 450mhz system, so I guess that’s about all one can expect from such ancient technology. I guess I’ll have to get a new motherboard/cpu to build the RAID-Z file server now. (The main Solaris box is a small-form-factor PC which only has room for 2 hard drives, so it can at best do RAID-1.)

Resolution Changer

We’ve probably all come across annoying programs that insist in taking over your monitor to run in ‘full screen’ mode, but are designed only for a particular monitor resolution, leaving nice big black borders when running a higher resolution.

I’ve been using just such a program a lot lately that is designed to only run at 800×600 resolution. Even on my laptop this ends up with huge amounts of wasted space, plus all the text and images are a bit too small to see comfortably. I’ve been manually switching my display to 800×600, but that gets old fast. I figured there must be a better way to do this.

It turns out that there is, and it’s a tiny program called Resolution Changer. This little gem weighs in at only 84k (when’s the last time you installed anything smaller than a megabyte?) and can switch to arbitrary resolutions, run a program, and then when the program finishes switch back to the original resolution.

I downloaded this program, and copied it into “C:\Program Files\reschange\”. Then I went to the shortcut which starts the annoying program and edited the properties so that this:

“C:\Program Files\reschange\reschange.exe” -width=800 -height=600

was added to the start of the “Target:” in front of the program executable that was previously there.

Voila! Now when I click to start that program, my display changes to 800×600. When I exit the program it switches right back to the original resolution.

Sometimes it’s best NOT to follow directions…

Had a problem with my main Solaris server in Taipei today which runs Solaris 10 6/06. It hung and when I rebooted it came up with this error:

WARNING – The following files in / differ from the boot archive:
cannot find: /etc/devices/mdi_ib_cache: No such file or directory
/kernel/drv/md.conf
The recommended action is to reboot and select “Solaris failsafe”
option from the boot menu. Then follow prompts to update the
boot archive.

I rebooted into failsafe mode and blindly followed the directions given:

/dev/dsk/c0d0s0 is under md control, skipping.
To manually recover the boot archive on a root mirror,mount the first
side (the one that the system boots from) and run:

bootadm update-archive -R <mount_point>

In summary, I did the following:

# mount /dev/dsk/c0d0s0 /mnt
# bootadm update-archive -R /mnt
Creating ram disk on /mnt
updating /mnt/platform/i86pc/boot_archive…this may take a minute
# reboot

WRONG! WRONG! WRONG!

This ended up updating the boot archive on only one side of the mirror. The other side of the mirror was not modified. Hence, the mirrors became out of sync. However, the configuration is still set to boot from a mirrored device. This quickly gets you to this point on reboot:

NOTICE: /: unexpected free inode 9864, run fsck(1M)
The / file system (/dev/md/rdsk/d1) is being checked.

WARNING – Unable to repair the / filesystem. Run fsck
manually (fsck -F ufs /dev/md/rdsk/d1).

Yes, you really only need to update the boot archive on the first device in the mirror as that’s the one the system boots from. However, once it’s bootstrapped the kernel, it’s going to mount the full mirror, and the full mirror now has different contents on each side. Depending on what’s read from which side of the mirror, you’re likely to end up with some inconsistency detected.

The correct way to do things would be:

# mount /dev/dsk/c0d0s0 /mnt
# vi /mnt/etc/vfstab
(Change root mount device to the unmirrored device /dev/dsk/c0d0s0.)
# bootadm update-archive -R /mnt
Creating ram disk on /mnt
updating /mnt/platform/i86pc/boot_archive…this may take a minute
# reboot

You would then need to rebuild the mirrored root after you get the system back up.

However, that is not the end of the story. It turns out that all this boot archive rebuilding won’t fix this particular problem. This error message is normally generated when the files in the bootstrap image don’t match those in the actual filesystem. This is your heads up that the state during bootstrap doesn’t match what’s on the actual root filesystem. Going through the exercise of rebuilding the boot archive is supposed to get things back to a point where the bootstrap image and the filesystem match.

However, in this case the file /etc/devices/mdi_ib_cache is missing on the actual root filesystem. So the error message is actually wrong. If you rebuild the boot archive it’ll fail to add the file, because it doesn’t exist. And the next time you boot it’ll give you the same error again. The error is that a file is missing on the actual root filesystem, not that the boot archive doesn’t match the root filesystem.

And it turns out this file is completely unimportant. If it’s screwed up or missing, the system will replace it automatically and merrily go on its way. In other words, it’s absolutely no big deal if it’s missing on reboot.

The original error message I saw also had this advice:

To continue booting at your own risk, clear the service:
# svcadm clear system/boot-archive

This ‘at your own risk’ option actually turns out in this case to be the correct remedy for this problem.

So to summarize:

  1. The original error message misstates the problem as files being different instead of one being missing
  2. The recommended fix does not solve the problem
  3. The instructions for the recommended fix gives specific advice for mirrored filesystems that will damage your filesystem and waste lots of time undoing the damage
  4. The missing file is actually completely unimportant
  5. The ‘at your own risk’ option is the correct way to solve the problem

It looks like everything but point 3 is covered by BugID 6256649, however the public description is not useful. I didn’t find a bug report covering the problem with the instructions for rebuilding the boot archive on mirrored filesystems being wrong.

I also don’t know why the thing hung in the first place. Nothing in /var/adm/messages.