Network works one way only

This is a discussion on Network works one way only within the Linux Networking forums, part of the Linux Forums category; Hi! My network works just in one-way mode: To write to the file server works, but to read from ...


Go Back   Usenet Forums > Linux Forums > Linux Networking

FAQ Members List Calendar Search Today's Posts Mark Forums Read
  #1 (permalink)  
Old 04-29-2004
Dr. Oliver Muth
 
Posts: n/a
Default Network works one way only

Hi!

My network works just in one-way mode:
To write to the file server works, but to read from it is real hard.

For testing purposes I connected now my laptop directly with the server.
(Ethernet cable, no Switch, 100Mbs).
Server and Laptop run Debian sarge (testing), kernel 2.4.25.

Samba:
Write to server: 4,4 MB/s
Read from server: 16 KB/s !!

nfs V3 (via tcp):
Write to server: 187 KB/s
Read from Server: 4 KB/s !!

nfs V3 (via udp, wsize=rsize=8192)
Write to server: 290 KB/s
Read from server: 0 KB/s stalls!!
Log message: server not responding, still trying.

I am (obviously ;-) ) no network expert, but since reading from the server
with nfs/udp did not work at all, I asked Ethereal.
Result:
One of my computers swallows all fragmented nfs-Packets.
The server is convinced of having sent them, but the client never receives them.
Why?

And why are there these enormous differences between reading and writing even
with the TCP connection?
(No, I did not use a floppy as test media ;-) )

System description:
Server hardware:
Athlon 2200+ on ASROCK K7VT2 with VIA Rhine II Ethernet on board
Client hardware:
IPC-Laptop with SiS 900 Ethernet on board
(but other clients make no difference...)
NO firewall, iptables are empty, policies on ACCEPT.
If helpful I can post an output of ethereal or nfsstat.

Any help is appreciated!

Oliver
Reply With Quote
  #2 (permalink)  
Old 04-29-2004
Alexander Clouter
 
Posts: n/a
Default Re: Network works one way only

On 2004-04-29, Dr. Oliver Muth <Dr.O.Muth@gmx.de> wrote:
> Hi!
>
> My network works just in one-way mode:
> To write to the file server works, but to read from it is real hard.
>
> For testing purposes I connected now my laptop directly with the server.
> (Ethernet cable, no Switch, 100Mbs).
> Server and Laptop run Debian sarge (testing), kernel 2.4.25.
>
> Samba:
> Write to server: 4,4 MB/s
> Read from server: 16 KB/s !!
>

you are mixing your network duplexes. Please force all your duplex settings
to half-duplex!

This could of been worked out with 30 seconds of Google'ing.....

Cheers

Alex
Reply With Quote
  #3 (permalink)  
Old 05-10-2004
Dr. Oliver Muth
 
Posts: n/a
Default Re: Network works one way only

Hi Alexander

Thanks for your help (and apologies for not rsponding earlier).
Mii-tool reported for both network cards:
eth0: negotiated 100baseTx-FD, link OK

I changed to half-duplex, and it actually solved the problem.
But why?
Why can't I run both cards in full-duplex mode?
Or does one of the cards wrongly report its capabilities?

Best regards

Oliver

On Thu, 29 Apr 2004 22:15:25 +0100, Alexander Clouter wrote:
> On 2004-04-29, Dr. Oliver Muth <Dr.O.Muth@gmx.de> wrote:
>> Write to server: 4,4 MB/s
>> Read from server: 16 KB/s !!
>>

> you are mixing your network duplexes. Please force all your duplex settings
> to half-duplex!
>
> This could of been worked out with 30 seconds of Google'ing.....
>
> Cheers
>
> Alex


Reply With Quote
  #4 (permalink)  
Old 05-12-2004
Tauno Voipio
 
Posts: n/a
Default Re: Network works one way only

Dr. Oliver Muth wrote:
> Hi Alexander
>
> Thanks for your help (and apologies for not rsponding earlier).
> Mii-tool reported for both network cards:
> eth0: negotiated 100baseTx-FD, link OK
>
> I changed to half-duplex, and it actually solved the problem.
> But why?
> Why can't I run both cards in full-duplex mode?
> Or does one of the cards wrongly report its capabilities?
>
> Best regards
>
> Oliver


To get *any* advantage of full duplex, the whole path
between the peers must be full duplex, a single hub
on the way spoils it. The full duplex is not of
any significant help if there is not simultaneous
payload traffic in both directions at the same time.

The full duplex setting only prevents the interface
card from listening for traffic on the line before
transmitting, half duplex postpones transmitting till
the line is idle. If there is a full/half mismatch
on any segment, the full duplex end will misbehave
sending on top of other traffic, which creates plenty
of back-offs and retransmits.

There are hubs/switches which mis-negotiate the setting.

IMHO, full duplex is not worth the sweat, unless
the link belongs to a very busy backbone.

Tauno Voipio
tauno voipio @ iki fi

Reply With Quote
  #5 (permalink)  
Old 05-13-2004
Dr. Oliver Muth
 
Posts: n/a
Default Re: Network works one way only

On Wed, 12 May 2004 19:36:05 +0000, Tauno Voipio wrote:

Hi Tauno,

thanks for your good explanation (that even I understood ;-) ).
But there is still a few things that I don't get yet:

> To get *any* advantage of full duplex, the whole path
> between the peers must be full duplex, a single hub
> on the way spoils it.

There is only a cable between the boxes. (Actually two cables and a
plain connector, since my crossover cable is not long enough.)
So, there shouldn't be anything impeding full duplex negotiation.

> The full duplex setting only prevents the interface
> card from listening for traffic on the line before
> transmitting, half duplex postpones transmitting till
> the line is idle. If there is a full/half mismatch
> on any segment, the full duplex end will misbehave
> sending on top of other traffic, which creates plenty
> of back-offs and retransmits.

Why does this selectively filter out fragmented packets?
Ethereal shows that the first fragment goes through,
but all following fragments of the same packet get lost.

And even more confusing to me:
Why does it help to set the interface of the server to half
duplex (with mii-tool) while leaving the interface of the laptop
on full duplex? I can manually set the interface of the laptop to whatever
I want to - it does not matter! Only if I set the server interface to half
duplex, the fragments come through.

BTW: Since it obviously does not have anything at all to to with the
nfs-server, I changed the test now: I use ping -s [packetsize > mtu]
instead of writing to and reading from an nfs-drive.
Of course I checked that the results are the same.

> There are hubs/switches which mis-negotiate the setting.
>
> IMHO, full duplex is not worth the sweat, unless
> the link belongs to a very busy backbone.

OK, but that forces me to always put those interfaces manually
into half duplex mode, since they auto-negotiate full duplex each time.
Isn't there a more elegant fix?

Or is one of the network cards or its driver broken?
How to find out which?

Best regards

Oliver
Reply With Quote
  #6 (permalink)  
Old 05-13-2004
Tauno Voipio
 
Posts: n/a
Default Re: Network works one way only

Dr. Oliver Muth wrote:
> On Wed, 12 May 2004 19:36:05 +0000, Tauno Voipio wrote:
>


>>The full duplex setting only prevents the interface
>>card from listening for traffic on the line before
>>transmitting, half duplex postpones transmitting till
>>the line is idle. If there is a full/half mismatch
>>on any segment, the full duplex end will misbehave
>>sending on top of other traffic, which creates plenty
>>of back-offs and retransmits.

>
> Why does this selectively filter out fragmented packets?
> Ethereal shows that the first fragment goes through,
> but all following fragments of the same packet get lost.


The crucial thing is timing: if the next fragment is
enqueued for sending while the other end is talking,
the fragment will be broken, and all broken packets
are silently discarded (except maybe incrementing
some broken packet status counter).

> And even more confusing to me:
> Why does it help to set the interface of the server to half
> duplex (with mii-tool) while leaving the interface of the laptop
> on full duplex? I can manually set the interface of the laptop to whatever
> I want to - it does not matter! Only if I set the server interface to half
> duplex, the fragments come through.


As above: It seems that your server is faster than
the laptop, and it's trying to talk on top of the
laptpop sends.

It seems that the server is not obeying the laptop
negotiation requests. Please check the settings
at both ends with mii-tool after forcing the laptop
to half-duplex.

> BTW: Since it obviously does not have anything at all to to with the
> nfs-server, I changed the test now: I use ping -s [packetsize > mtu]
> instead of writing to and reading from an nfs-drive.
> Of course I checked that the results are the same.
>
>
> OK, but that forces me to always put those interfaces manually
> into half duplex mode, since they auto-negotiate full duplex each time.
> Isn't there a more elegant fix?
>
> Or is one of the network cards or its driver broken?
> How to find out which?
>


The fix depends on the driver: on many cards the driver accepts
options for the set-up. If the driver is a module, the file
/etc/conf.modules or /etc/modules.conf (depending on distro)
can contain options for the driver. Some distros use a special
tool to collect the module option file from other set-up
files - see the distro documentation.

It's possible that either network adapter is not completely
working up to the MII (Media Independent Interface) negotiation
spec. On all the chips I know, the negotiation is on the
interface chip (or chip set).

It's also possible that the 100BASE-TX FDX is perfectly
correct, but the buffer space on the receiving chip is
not enough for your jumbo packets (several Ethernet frames).

HTH

Tauno Voipio
tauno voipio @ iki fi

Reply With Quote
Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are Off
[IMG] code is Off
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On




All times are GMT +1. The time now is 01:00 AM.


Powered by vBulletin® Version 3.7.3
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO 3.0.0