Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Unusual bandwidth problem?

2 views
Skip to first unread message

Wavelen Warren Fielder II

unread,
Jan 28, 2001, 10:58:20 AM1/28/01
to
I have two boxes.  Box A is a 2xPII400Mhz system with a 3c905 10/100Mbps NIC, and Box B is a SUN Ultra 1.

The problem:  If I ftp a file from box A -> box B, my transfer-rates max ~240KB/sec.  If, I ftp a file from box B -> box A, my tranfer-rates max ~7000KB/sec.

For some reason, it appears that my box A is being limited somehow.  Box A is capable of receiving at great speeds, but when I transmit data from that box, it's significantly slower.

I tried changing values in tcp_xmit_hiwat, etc., but it doesn't seem to have helped one bit.  Has anyone seen this before?  Thanks in advance!
 

--
Internet: wfie...@ev1.net
 

Kai Leibrandt

unread,
Jan 28, 2001, 2:47:48 PM1/28/01
to
This is to do with full duplex on one of your machines. Make sure they both
are either full (better) or both at half (not so good but better than the
situation you find yourself in now). In fact, I bet you your 3c905 is a B or
C and has half-duplex/100Mbit.

We had the same problem with a few Indigo 2's and I didn't know what was
wrong until I had a look at our switch. Have a look at your switch, it
should tell you which one is the culprit.

HTH

Kai.

>"Wavelen Warren Fielder II" <wfie...@ev1.net> wrote in message
news:3A74419B...@ev1.net...

Wavelen Warren Fielder II

unread,
Jan 28, 2001, 4:26:01 PM1/28/01
to
The switch shows that everything is working at 100Mbps, and at Full-duplex.  Is it possible the switch could be mistaken about the duplex mode?  I tried another patch cable, but that didn't help either.  It's very strange.

I went to DOS, and tried changing some settings on the card.  At this time, it's set to auto-sense (N-WAY).  There was an option for Normal, minimum CPU, and maximize network.  I tried changing those parameters, and it really didn't make any difference.  I didn't try to force 100Mbps -- I let it auto-sense.

--
Internet: wfie...@ev1.net
 

Wavelen Warren Fielder II

unread,
Jan 28, 2001, 8:16:50 PM1/28/01
to
I just edited the /kernel/drv/elxl.conf file to always use full-duplex, and 100Mbps, but the results are still the same.  The NIC receives data at an astonishing rate, but transmitting data is slow -- somwhere ~230KB/sec.  Is there possibly something wrong with the driver, itself?  I did install MU3 not too long ago.
 
--
Internet: wfie...@ev1.net
 

Casper H.S. Dik - Network Security Engineer

unread,
Jan 29, 2001, 5:01:56 AM1/29/01
to
[[ PLEASE DON'T SEND ME EMAIL COPIES OF POSTINGS ]]

Wavelen Warren Fielder II <wfie...@ev1.net> writes:


>The switch shows that everything is working at 100Mbps, and at Full-duplex. Is
>it possible the switch could be mistaken about the duplex mode? I tried
>another patch cable, but that didn't help either. It's very strange.


So what does the Sun think?


ndd /dev/hme link_speed link_mode

should print:
1

1

Casper
--
Expressed in this posting are my opinions. They are in no way related
to opinions held by my employer, Sun Microsystems.
Statements on Sun products included here are not gospel and may
be fiction rather than truth.

Casper H.S. Dik - Network Security Engineer

unread,
Jan 29, 2001, 5:00:31 AM1/29/01
to
[[ PLEASE DON'T SEND ME EMAIL COPIES OF POSTINGS ]]

Wavelen Warren Fielder II <wfie...@ev1.net> writes:


Double check that your Ultra has consistent full-duplex settings with
the switch it connects to. Typical half/full duplex mismatches will give
such problems on the receiving end.

(Make sure you use binary ftp and run tests ftp'ing to /dev/null)

keith...@my-deja.com

unread,
Jan 29, 2001, 2:54:49 PM1/29/01
to
Below is a copy of the Sun fast ethernet psd. I has alot of good info
on has to check/force link mode and duplex. Hope you find it useful.
I would advise you call the Sun solution center and log a ticket on
this. It may be a bug.

Have you loaded the latest patchs, 109866-03 for solaris 8 or 109620-02
for Solaris 7?

For what its worth: I have talked with several people that know more
about the kernel and drivers that I do. They tell me that the elxl
driver is not nearly as good as it could be. The iprb driver(intel pro
100b) is much better. Maybe you should try another interface card that
uses a different driver. You might see some difference in performance.


3.2: How to set the SunFastEthernet device to Force 10 or 100Mb speed
and half or full duplex mode?

INFODOC 16144 How to force the HME card to work at 100mb (full-duplex).

INFODOC 16070 How to set hme parameter for more than one hme interface

SRDB 12605 Full duplex support on Sun ethernet drivers.

SRDB 16143 How to force the HME card to work at 10mb (full-duplex).

SRDB 13206 Forcing network speed to 100 Mbps

INFODOC 16728 How does 100baseT ethernet auto-negotiation work? and what
are the hme and qfe driver defaults

INFODOC 18262 How do I troublehsoot 100Mb fastethernet 802.3
autonegotiation problems.

INFODOC 13122 Forcing Network Speed Between 10Mbps and 100Mbps

----------------------

Reference the "Platform Notes: The hme Fast Ethernet Device Driver
Solaris 2.5" guide for further detailed information.

Page 21 describes that the parameters in the /etc/system file
"...configure the hme driver parameters for all SUNW,hme devices in the
system..."

Page 18 identifies how to change the instance of the interface that the
parameters you are changing will affect with the ndd command.

Pages 22-24 describe how to set the parameters per instance of the hme
interface in the hme.conf file.

----------------------

The communication mode of the hme interface may be changed to adjust to
different environments and link partner capabilities. Since
auto-negotiation and 100BaseT full-duplex is relatively new, forcing the
speed and
tested different modes may be necessary on new installations of 100Mb
cards and hubs or switches ,If "late collisions" errors, poor throughput
and other network problems occur.

On hme interfaces To change the mode, it is usually recommended to add
commands to the /etc/system file, then reboot the system, as described
below. With Autonegotiation turned off the hme driver will use the
highest speed and mode that is enabled.

See below information on examples of /etc/system and ndd.

Use the ndd -get utility to check the link mode and speed along with
checking the capabilities of the hub/switch/link partner. \N

Note - The the link_speed/link_mode/auto_neg will display the last known
register value of the link. if the link is not brought down/up or "ndd
-set /dev/hme adv_autoneg_cap 0" is not done last.

Examples: Check the present link information:

# ndd -set /dev/hme instance 0 ( this selects hme device instance
0 = hme0, instance 1 = hme1 )

# ndd -get /dev/hme transceiver_inuse ( 0=internal rj45 100baseTx
connector, 1=external mii transeiver)

# ndd -get /dev/hme link_status ( 0=down, 1=up )

# ndd -get /dev/hme link_speed ( 0=10Mb, 1=100Mb )

# ndd -get /dev/hme link_mode ( 0=half duplex, 1=full duplex )

To check what we are setup for:

# ndd -set /dev/hme instance 0

( 1= on, 0 = off :not advertised)

# ndd -get /dev/hme adv_autoneg_cap

# ndd -get /dev/hme adv_100fdx_cap

# ndd -get /dev/hme adv_100hdx_cap

# ndd -get /dev/hme adv_100T4_cap

# ndd -get /dev/hme adv_10hdx_cap

# ndd -get /dev/hme transceiver_inuse

To Check what the the link partner(Switch ot MII transceiver)
capabilites:

# ndd -set /dev/hme instance 0

( 0=link parnter not adv this feature, 1= link partner has this
capability)

# ndd /dev/hme lp_autoneg_cap

# ndd /dev/hme lp_100fdx_cap

# ndd /dev/hme lp_100hdx_cap

# ndd /dev/hme lp_100T4_cap

# ndd /dev/hme lp_10fdx_cap

# ndd /dev/hme lp_10hdx_cap

SunFastEthernet 2.0

(For on-board FastEthernet, SunSwift Sbus Adaptor, and SunFastEthernet
Adaptor 2.0:)

The three methods to change the hme driver speed and duplex mode
capabilities.

1. /etc/system addtiions.

To adjust the hme parmeters in system as described above: This
will set all hme instances to the new settings when the driver is loaded
on bootup.
a. Become superuser.

b. Add the following lines to the /etc/system file using a
text editor.

To Force 10Mb half Duplex :

( Standard 10baseT using shared Hub or 10Base2 using
Mii to Aui adaptor)

set hme:hme_adv_autoneg_cap=0

set hme:hme_adv_100fdx_cap=0

set hme:hme_adv_100hdx_cap=0

set hme:hme_adv_10hdx_cap=1

To force 100Mb Full duplex: Ref: Bug Id: 1257858
Synopsis: Full-duplex operation is not enabled automatically by the hme
driver.

( using a 100Mb Ethernet Switch that is compliant
with 803.3u Full-duplex or to another Sun hme device)

set hme:hme_adv_autoneg_cap=0

set hme:hme_adv_100fdx_cap=1

To force 100Mb Half duplex :

( Common configuration using a 100BaseT Ethernet
Switch in half-duplex or 100BaseT shared Hub.

set hme:hme_adv_autoneg_cap=0

set hme:hme_adv_100fdx_cap=0

set hme:hme_adv_100hdx_cap=1

To force 100Mb Half duplex 100BaseT4 :

( Using 8-wire 100BaseT4 MII transceiver
configuration)

set hme:hme_adv_autoneg_cap=0

set hme:hme_adv_100fdx_cap=0

set hme:hme_adv_100hdx_cap=0

set hme:hme_adv_100T4_cap=1

To force 10Mb Full duplex :

( Uncommon 10Mb Full-Duplex Ethernet Switch
configuration)

set hme:hme_adv_autoneg_cap=0

set hme:hme_adv_100fdx_cap=0

set hme:hme_adv_100hdx_cap=0

set hme:hme_adv_10fdx_cap=1

set hme:hme_adv_10hdx_cap=0

c. Save the /etc/system file.

d. Save all files and exit all programs. Exit the
windowing system.

e. Reboot the system by typing init 6 at the #
prompt. (This halts and reboots the system.)

use the ndd -get utility along with checking the
capabilities of the hub/switch/link partner.

2. Manual ndd (1M) commands:

example: turn off auto negotiation and force 100 MB
full-duplex: You can also force the speed/ settings with:

ndd -set /dev/hme instance X <--- set to the Interface in
Question

ndd -set /dev/hme use_int_xcvr 1 <--- force to use
internal Tx (100TX rj45 port)

ndd -set /dev/hme adv_100hdx_cap 0 <--- force OFF 100Mb
half duplex

ndd -set /dev/hme adv_100T4_cap 0 <--- force OFF 100Mb T4

ndd -set /dev/hme adv_100fdx_cap 1 <--- force ON 100Mb
full duplex

ndd -set /dev/hme adv_autoneg_cap 0 <--- force OFF
autonegotiation (FORCE mode)

example to foarce hme0 to 100 Full Duplex # ndd -set
/dev/hme instance 0

# ndd -set /dev/hme adv_10hdx_cap 0

# ndd -set /dev/hme adv_100fdx_cap 1

# ndd -set /dev/hme adv_autoneg_cap 0

Example of setting 2nd hme interface (hme1) to force 100mb
half-duplex internal transceiver

# ndd -set /dev/hme instance 1 (selects device hme1)

# ndd -set /dev/hme use_int_xcvr 1

# ndd -set /dev/hme adv_100hdx_cap 1

# ndd -set /dev/hme adv_100fdx_cap 0

# ndd -set /dev/hme adv_autoneg_cap 0

3. Example of create /kernel/drv/hme.conf ( see Manual ! )

( turn off autonegotiation, turn on 100 Full, force
100BaseTX port, change Interpacket gap))
name="hme" class="sbus"


reg=0xe,0x8c00000,0x00000108,0xe,0x8c02000,0x00002000,0xe,


0x8c04000,0x00002000,0xe,0x8c06000,0x00002000,0xe,0x8c07000, 0x00000020

adv_autoneg_cap=0 adv_100fdx_cap=1 use_int_xcvr=1
ipg1=10 ipg2=8;

SunOS 4.1.4

The hmespeed utility for SunOS4.x will allow changing the speed but not
the duplex. This is a known limitation of the 4.x hme driver and
recommend to upgrade to Solaris2.x.

Ref bugid: 1265738 Synopsis: Cannot force Fast Ethernet 2.0 on 4.1.4 to
100mbit,half duplex,

-------------- hmespeed : usage: %%s interface < auto | 100 | 10 >

example:

hmespeed hme1 100

hme device settings can be changed with adb by an experienced
administrator for testing purposes by using hmepeed and/or adb.

Full Duplex 100baseT link negotiation for Sun 4.1.4 systems with a HME
board is not supported but can be attempted by using adb, setting the
following values in /vmunix. You will need to reboot the system for them
to
take effect.

hme_adv_autoneg_cap = 0 hme_adv_100fdx_cap = 1

Example: root {106)> cp /vmunix /vmunix.old

root {107}> adb -w /vmunix

[1] hme_adv_autoneg_cap?X

_hme_adv_autoneg_cap:

_hme_adv_autoneg_cap: f000000

[2] hme_adv_autoneg_cap?W 0

_hme_adv_autoneg_cap: 0xf000000 = 0x0

[3] hme_adv_autoneg_cap?X

_hme_adv_autoneg_cap:

_hme_adv_autoneg_cap: 0

[4] hme_adv_100fdx_cap?X

_hme_adv_100fdx_cap:

_hme_adv_100fdx_cap: f000000

[5] hme_adv_100fdx_cap?W 1

_hme_adv_100fdx_cap: 0xf000000 = 0x1

[6] hme_adv_100fdx_cap?X

_hme_adv_100fdx_cap:

_hme_adv_100fdx_cap: 1

[enter a ^D to exit from adb]

root {108}> fastboot

OpenBoot Prom - the transfer speed can also be set at the OK prompt if
needed for diskless client boot.

ok show-devs

------------

/iommu@f,e0000000/sbus@f,e0001000/SUNW,hme@3,8c00000

------------
ok nvedit

0: probe-all install-console banner(return)

1: apply transfer-speed=10
/iommu@f,e0000000/sbus@f,e0001000/SUNW,hme@3,8c00000 (Control C)

ok nvstore

ok setenv use-nvramrc? true

SunFastEthernet 1.0:

Use the be_speed program which is included in patch#
101820

On Solaris 2.3 command /usr/sbin/be_speed is available .
This command can be used to force the interface
speed. Thie be_speed is not deliverd as standard with
Solaris 2.4 & 2.5 and should be manually copied from
patch 101820 if needed. (bug 1194402. )

Example: force the speed to 100Mbps:

Put this in /etc/rc2.d/S69inet

/usr/sbin/be_speed be0 100

On SunOS 4.x use /usr/bin/be_speed that was loaded from
the FastEthernet 1.x cdrom
This can be added to rc.boot or rc.local.

/usr/bin/be_speed be0 10

**Note
Since FastEthernet is relatively new, full-duplex connection may not
implement
the same timing and flow-control or a firmware upgrade is required.
SunService is not responsible for troubleshooting Full-Duplex issues and
recommend
that Half-Duplex be used if problems are encountered ( collisions, poor
performance).

Check with the Switch Vendor or see if the manufacturer is part of the
FastEthernet Alliance and implements the
802.3u Full-Duplex Extension Standard without flow control and if there
is a firmware or software upgrade.

If the link partner is another Sun Fast Ethernet interface, full-duplex
is
a stable configuration and supported by SunService.

See section "4.3: What is Full Duplex Ethernet? Is the Sun Fast ethernet
full-duplex capable?" for more information."


In article <3A74419B...@ev1.net>,
Wavelen Warren Fielder II <wfie...@ev1.net> wrote:
>
> --------------8534BD0CE5A37E38BD4022B3
> Content-Type: text/plain; charset=us-ascii
> Content-Transfer-Encoding: 7bit

> --------------8534BD0CE5A37E38BD4022B3
> Content-Type: text/html; charset=us-ascii
> Content-Transfer-Encoding: 7bit
>
> <!doctype html public "-//w3c//dtd html 4.0 transitional//en">
> <html>
> I have two boxes.&nbsp; Box A is a 2xPII400Mhz system with a 3c905
10/100Mbps
> NIC, and Box B is a SUN&nbsp;Ultra 1.
> <p>The problem:&nbsp; If I ftp a file from box A -> box B, my
transfer-rates
> max ~240KB/sec.&nbsp; If, I ftp a file from box B -> box A, my
tranfer-rates
> max ~7000KB/sec.
> <p>For some reason, it appears that my box A is being limited
somehow.&nbsp;


> Box A is capable of receiving at great speeds, but when I transmit
data
> from that box, it's significantly slower.

> <p>I tried changing values in tcp_xmit_hiwat, etc., but it doesn't
seem
> to have helped one bit.&nbsp; Has anyone seen this before?&nbsp;
Thanks
> in advance!
> <br>&nbsp;
> <pre>--
> Internet: wfie...@ev1.net</pre>
> &nbsp;</html>
>
> --------------8534BD0CE5A37E38BD4022B3--
>
>


Sent via Deja.com
http://www.deja.com/

Wavelen Warren Fielder II

unread,
Jan 29, 2001, 8:13:43 PM1/29/01
to
Both, my SS5 and U1 report what you stated below.  I know the problem isn't with the Sun systems.  I can tranfer files between the two with no problems.  The x86 with elxl can receive files at good speeds, but when I try to send files from that computer to any of the others, the problem occurs.  It even happens trying to send data to a Windows 10Mbps computer.  The tranfers are ~230KB/sec.

Thanks for the input.  I'm still working on a solution.

--
Internet: wfie...@ev1.net
 

Wavelen Warren Fielder II

unread,
Feb 3, 2001, 10:50:38 AM2/3/01
to
The problem wasn't always this way.  I believe one of the patches might have done something to create this problem.  Stupid me, I never save the backout data.  So, it might be a driver problem.

Wavelen Warren Fielder II

unread,
Feb 3, 2001, 8:34:33 PM2/3/01
to
I just noticed something strange with my problem. Okay, I am have slow
tranfer-rates sending files from box A to box B -- via ftp, and samba.
I thought the problem was with everything, but it appears that is not
the case.

I tried something today, and it startled me. I setup a nfs share on box
A. Then, I mounted the share on box B. I copied a file from box A to
box B, and it was really quick!

So, whatever the problem is, it doesn't appear to affect NFS at the
slightest. It does affect ftp, and samba, though. Any ideas? Thanks
in advance.


Wavelen Warren Fielder II

unread,
Feb 4, 2001, 12:24:40 PM2/4/01
to
Someone suggested that it might be something wrong with the tcp?  So, I tried using scp to copy a file from box A to box B, and it was fast.  So, now, I think it's just something to do with ftp and samba?  Maybe, one of the patches I installed from Solaris created this?  Maybe, it's something in the kernel?

Wavelen Warren Fielder II wrote:

--
Internet: wfie...@ev1.net
 

0 new messages