[Fwd: Strange networking behaviour in storage server]

InterNetX - Juergen Gotteswinter jg at internetx.com
Sun Jun 14 13:30:39 UTC 2015



Am 13.06.2015 um 11:31 schrieb Edward Tomasz Napierała:
> On 0601T0902, Karli Sjöberg wrote:
>> mån 2015-06-01 klockan 10:33 +0200 skrev Andreas Nilsson:
>>>
>>>
>>> On Mon, Jun 1, 2015 at 10:14 AM, Karli Sjöberg <karli.sjoberg at slu.se>
>>> wrote:
>>>         -------- Vidarebefordrat meddelande --------
>>>         > Från: Karli Sjöberg <karli.sjoberg at slu.se>
>>>         > Till: freebsd-fs at freebsd.org <freebsd-fs at freebsd.org>
>>>         > Ämne: Strange networking behaviour in storage server
>>>         > Datum: Mon, 1 Jun 2015 07:49:56 +0000
>>>         >
>>>         > Hey!
>>>         >
>>>         > So we have this ZFS storage server upgraded from 9.3-RELEASE
>>>         to
>>>         > 10.1-STABLE to overcome not being able to 1) use SSD drives
>>>         as
>>>         > L2ARC[1]
>>>         > and 2) not being able to hotswap SATA drives[2].
>>>         >
>>>         > After the upgrade we´ve noticed a very odd networking
>>>         behaviour, it
>>>         > sends/receives full speed for a while, then there is a
>>>         couple of
>>>         > minutes
>>>         > of complete silence where even terminal commands like an
>>>         "ls" just
>>>         > waits
>>>         > until they are executed and then it starts sending full
>>>         speed again. I
>>>         > ´ve linked to a screenshot showing this send and pause
>>>         behaviour. The
>>>         > blue line is the total, green is SMB and turquoise is NFS
>>>         over jumbo
>>>         > frames. It behaves this way regardless of the protocol.
>>>         >
>>>         > http://oi62.tinypic.com/33xvjb6.jpg
>>>         >
>>>         > The problem is that these pauses can sometimes be so long
>>>         that
>>>         > connections drop. Like someone is copying files over SMB or
>>>         iSCSI and
>>>         > suddenly they get an error message saying that the transfer
>>>         failed and
>>>         > they have to start over with the file(s). That´s horrible!
>>>         >
>>>         > So far NFS has proven to be the most resillient, it´s stupid
>>>         simple
>>>         > nature just waits and resumes transfer when pause is over.
>>>         Kudus for
>>>         > that.
>>>         >
>>>         > The server is driven by a Supermicro X9SRL-F, a Xeon 1620v2
>>>         and 64GB
>>>         > ECC
>>>         > RAM. The hardware has been ruled out, we happened to have a
>>>         identical
>>>         > MB
>>>         > and CPU lying around and that didn´t improve things. We have
>>>         also
>>>         > installed a Intel PRO 100/1000 Quad-port ethernet adapter to
>>>         test if
>>>         > that would change things, but it hasn´t, it still behaves
>>>         this way.
>>>         >
>>>         > The two built-in NIC's are Intel 82574L and the Quad-port
>>>         NIC's are
>>>         > Intel 82571EB, so both em(4) driven. I happen to know that
>>>         the em
>>>         > driver
>>>         > has updated between 9.3 and 10.1. Perhaps that is to blame,
>>>         but I have
>>>         > no idea.
>>>         >
>>>         > Is there anyone that can make sense of this?
>>>         >
>>>         > [1]:
>>>         > https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=197164
>>>         >
>>>         > [2]:
>>>         > https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=191348
>>>         >
>>>         > /K
>>>         >
>>>         >
>>>         
>>>         
>>>         Another observation I´ve made is that during these pauses, the
>>>         entire
>>>         system is put on hold, even ZFS scrub stops and then resumes
>>>         after a
>>>         while. Looking in top, the system is completly idle.
>>>         
>>>         Normally during scrub, the kernel eats 20-30% CPU, but during
>>>         a pause,
>>>         even the [kernel] goes down to 0.00%. Makes me think the
>>>         networking has
>>>         nothing to do with it.
>>>         
>>>         What´s then to blame? ZFS?
>>>         
>>>         /K
>>>         _______________________________________________
>>>         freebsd-fs at freebsd.org mailing list
>>>         http://lists.freebsd.org/mailman/listinfo/freebsd-fs
>>>         To unsubscribe, send any mail to
>>>         "freebsd-fs-unsubscribe at freebsd.org"
>>>
>>>
>>> Hello,
>>>
>>>
>>> does this happen when clients are only reading from server? 
>>
>> Yes it happens when clients are only reading from the server.
>>
>>> Otherwise I would suspect that it could be caused by ZFS writing out a
>>> large chunck of data sitting in its caches, and until that is complete
>>> I/O is stalled.
>>
>> That´s what so strange, we have three more systems set up about the same
>> size and none of others are acting this way.
>>
>> The only thing I can think of that differs that we haven´t tested ruling
>> out yet is ctld, the other systems are still running istgt as their
>> iSCSI daemon.
> 
> So, were you able to rule out ctld?
> 
> Do you have local, or terminal, access to the machine?  When the problem
> manifests, do local commands work?  In other words, is the whole machine
> wedged, or just the network?  If it's just the network, it might be
> caused by ctld consuming all available mbufs.  You could run "netstat -m"
> before and after to check that.
> 

You already checked (doublechecked) HBA Firmware etc? Cabling is fine?

I expect you already disabled tso, gro, rxcsum, txcsum on your NIC(s). I
had similar effects, with all those fancy uberfeatures enabled.

Give it a try... ifconfig foo0 -rxcsum -txcsum -tso -gro

Capturing a few MB of Traffic before/after could be also very helpful to
see if...


> _______________________________________________
> freebsd-fs at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-fs
> To unsubscribe, send any mail to "freebsd-fs-unsubscribe at freebsd.org"
> 


More information about the freebsd-fs mailing list