Hi,

On 11/06/2014 06:15 AM, Ronciak, John wrote:
> Julia,
>
> First we can't help you with your Realtec issue.  Not our driver.
>
> The only time when you'll notice actual pauses in traffic due to XON/XOFF 
> will be when the link is saturated to the point where packets would be 
> dropped with the HW (on the end that is XON/XOFF enabled).  So in using ping 
> it would be doubtful that you would ever be in a situation where packets 
> would be dropped.
>

Ping was suggested in [1] as a test for whether it's working. I also 
tried saturating the link with UDP packets in the setup with 2 physical 
machines where the link speed was set to 10 Mbps. I used iperf for this 
purpose, started the transmission from first to second machine, and 
simulaneously used the tool from [1] to generate a couple of pause 
frames at arbitrary times on the second machine. I captured the traffic 
at the second machine and considered the timestamps.

According to the standard, the network adapter pauses the transmission 
completely on the reception of a pause frame for the time specified. 
Therefore I would expect to see noticeable variations in the intervals 
between consecutive packets at the time when I generated the pause 
frames. However there were no significant variations to be seen.


Regards,

Julia Niewiejska


[1] http://www.tux.org/pub/sites/www.zip.com.au/%257Eakpm/linux/#flow-ctrl

> Im not sure where you ae going with this.  Do you not believe that packets 
> are being paused to the correct amount of time due the XON/XOFF settings?  
> Also, you should be trying to use a connection to a switch port that is 
> enabled for XON/XOFF.  I think no matter how you are going to test this you 
> will need to use something like pktgen or other type of packet generator to 
> generate enough traffic to saturate the link enough for XON/XOFF to engage.
>
> Cheers,
> John
>
>> -----Original Message-----
>> From: Julia Niewiejska [mailto:julia.niewiej...@fkie.fraunhofer.de]
>> Sent: Wednesday, November 5, 2014 12:19 AM
>> To: e1000-devel@lists.sourceforge.net
>> Subject: [E1000-devel] 802.3x pause frames
>>
>> Hello,
>>
>> I indend to do some experiments with 802.3x pause frames, but I have yet to
>> find a setup that works. I used a tool that generates pause frames [1] in two
>> setups. First one consists of two virtual machines on a VMWare ESXi 5.5
>> server connected with each other through a virtual switch. In second setup
>> two physical machines (Desktop PCs) were connected directly by an ethernet
>> cable. The VMs are running Debian Wheezy 32bit while Debian Testing
>> (Jessie) 64bit is installed on both desktop PCs. Below you will find some
>> information on the ethernet adapters and drivers used in the VM [2], the
>> desktop PC with the more up to date hardware [3] and the older machine
>> [4]. I used the following command to activate flow control:
>>
>> ethtool -A <eth> autoneg off rx on tx on
>>
>> First of all I noticed some discrepancies between the output of mii-tools or
>> ethtool -a and the attempt to change the flow control settings with the
>> command above. Only the Realtek adapter actually output that it didn't
>> support the operation, the other adapters accepted the settings without any
>> error message.
>>
>> In both setups pause frames were generated on one machine while a ping
>> was sent simultaneously, as suggested in [1]. While the VM connection was
>> set to 1 Gbps the whole time, I also tested a 10 Mbps setting on the physical
>> connection. Even though the pause frames were always visible in tcpdump at
>> the receiver, I didn't notice any influence whatsoever in the ping results.
>>
>> Did I miss some important settings that activate pause frame support, or is 
>> it
>> possible that none of those different ethernet adapters and modules that
>> were tested support at least the reception of pause frames?
>> If so, are there any adapters that do support them? I'm also not sure how to
>> interpret the output of ethtool. E.g. what does "Advertised pause frame
>> use" mean, exactly?
>>
>>
>> Many thanks.
>>
>> Julia Niewiejska
>>
>>
>> [1]
>> http://www.tux.org/pub/sites/www.zip.com.au/%257Eakpm/linux/#flow-
>> ctrl
>>
>>
>> ----------------------------------------------
>> [2] Virtual machine on VMWare ESXi 5.5: Debian Wheezy 32bit, kernel 3.2
>>
>> *** lspci -v ***
>>
>> 02:02.0 Ethernet controller: Intel Corporation 82545EM Gigabit Ethernet
>> Controller (Copper) (rev 01)
>>           Subsystem: VMware PRO/1000 MT Single Port Adapter
>>           Physical Slot: 34
>>           Flags: bus master, 66MHz, medium devsel, latency 0, IRQ 16
>>           Memory at fd5a0000 (64-bit, non-prefetchable) [size=128K]
>>           Memory at fdfe0000 (64-bit, non-prefetchable) [size=64K]
>>           I/O ports at 2040 [size=64]
>>           [virtual] Expansion ROM at ebb10000 [disabled] [size=64K]
>>           Capabilities: [dc] Power Management version 2
>>           Capabilities: [e4] PCI-X non-bridge device
>>           Kernel driver in use: e1000
>>
>>
>> *** mii-tool -v ***
>>
>> eth1: negotiated 1000baseT-FD flow-control, link ok
>>     product info: Yukon 88E1011 rev 3
>>     basic mode:   autonegotiation enabled
>>     basic status: autonegotiation complete, link ok
>>     capabilities: 1000baseT-FD 100baseTx-FD 100baseTx-HD 10baseT-FD
>> 10baseT-HD
>>     advertising:  1000baseT-HD 1000baseT-FD 100baseTx-FD 100baseTx-HD
>> 10baseT-FD 10baseT-HD
>>     link partner: 1000baseT-FD 100baseTx-FD 100baseTx-HD 10baseT-FD
>> 10baseT-HD
>>
>>
>>
>> *** ethtool eth1 ***
>>
>> Settings for eth1:
>>           Supported ports: [ TP ]
>>           Supported link modes:   10baseT/Half 10baseT/Full
>>                                   100baseT/Half 100baseT/Full
>>                                   1000baseT/Full
>>           Supported pause frame use: No
>>           Supports auto-negotiation: Yes
>>           Advertised link modes:  10baseT/Half 10baseT/Full
>>                                   100baseT/Half 100baseT/Full
>>                                   1000baseT/Full
>>           Advertised pause frame use: No
>>           Advertised auto-negotiation: Yes
>>           Speed: 1000Mb/s
>>           Duplex: Full
>>           Port: Twisted Pair
>>           PHYAD: 0
>>           Transceiver: internal
>>           Auto-negotiation: on
>>           MDI-X: Unknown
>>           Supports Wake-on: d
>>           Wake-on: d
>>           Current message level: 0x00000007 (7)
>>                                  drv probe link
>>           Link detected: yes
>>
>> *** ethtool -a eth1 ***
>>
>> Pause parameters for eth1:
>> Autonegotiate:  on
>> RX:             off
>> TX:             off
>>
>> ----------------------------------------------
>> [3] Desktop PC 1: Debian Jessie 64bit, kernel 3.16
>>
>> *** lspci -v ***
>>
>> 03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd.
>> RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 0c)
>>           Subsystem: ASUSTeK Computer Inc. Device 8554
>>           Flags: bus master, fast devsel, latency 0, IRQ 44
>>           I/O ports at d000 [size=256]
>>           Memory at f7100000 (64-bit, non-prefetchable) [size=4K]
>>           Memory at f2100000 (64-bit, prefetchable) [size=16K]
>>           Capabilities: [40] Power Management version 3
>>           Capabilities: [50] MSI: Enable+ Count=1/1 Maskable- 64bit+
>>           Capabilities: [70] Express Endpoint, MSI 01
>>           Capabilities: [b0] MSI-X: Enable- Count=4 Masked-
>>           Capabilities: [d0] Vital Product Data
>>           Capabilities: [100] Advanced Error Reporting
>>           Capabilities: [140] Virtual Channel
>>           Capabilities: [160] Device Serial Number 01-00-00-00-68-4c-e0-00
>>           Capabilities: [170] Latency Tolerance Reporting
>>           Kernel driver in use: r8169
>>
>> *** mii-tool -v ***
>>
>> eth0: negotiated 1000baseT-FD flow-control, link ok
>>     product info: vendor 00:07:32, model 0 rev 0
>>     basic mode:   autonegotiation enabled
>>     basic status: autonegotiation complete, link ok
>>     capabilities: 1000baseT-FD 100baseTx-FD 100baseTx-HD 10baseT-FD
>> 10baseT-HD
>>     advertising:  1000baseT-HD 1000baseT-FD 100baseTx-FD 100baseTx-HD
>> 10baseT-FD 10baseT-HD flow-control
>>     link partner: 1000baseT-FD 100baseTx-FD 100baseTx-HD 10baseT-FD
>> 10baseT-HD flow-control
>>
>> *** ethtool eth0 ***
>>
>> Settings for eth0:
>>           Supported ports: [ TP MII ]
>>           Supported link modes:   10baseT/Half 10baseT/Full
>>                                   100baseT/Half 100baseT/Full
>>                                   1000baseT/Half 1000baseT/Full
>>
>>           Supported pause frame use: No
>>
>>           Supports auto-negotiation: Yes
>>
>>           Advertised link modes:  10baseT/Half 10baseT/Full
>>
>>                                   100baseT/Half 100baseT/Full
>>
>>                                   1000baseT/Full
>>
>>           Advertised pause frame use: Symmetric Receive-only
>>
>>           Advertised auto-negotiation: Yes
>>
>>           Link partner advertised link modes:  10baseT/Half 10baseT/Full
>>
>>                                                100baseT/Half
>> 100baseT/Full
>>                                                1000baseT/Half
>> 1000baseT/Full
>>           Link partner advertised pause frame use: Symmetric Receive-only
>>
>>           Link partner advertised auto-negotiation: Yes
>>
>>           Speed: 1000Mb/s
>>
>>           Duplex: Full
>>
>>           Port: MII
>>
>>           PHYAD: 0
>>
>>           Transceiver: internal
>>
>>           Auto-negotiation: on
>>
>>           Supports Wake-on: pumbg
>>
>>           Wake-on: g
>>
>>           Current message level: 0x00000033 (51)
>>
>>                                  drv probe ifdown ifup
>>
>>           Link detected: yes
>>
>> *** ethtool -a eth0 ***
>>
>> Pause parameters for eth0:
>> Cannot get device pause settings: Operation not supported
>>
>>
>> ----------------------------------------------
>> [4] Desktop PC 2: Debian Jessie 64bit, kernel 3.16
>>
>> *** lspci -v ***
>>
>> 00:19.0 Ethernet controller: Intel Corporation 82578DM Gigabit Network
>> Connection (rev 05)
>>           Subsystem: Hewlett-Packard Company Device 304b
>>
>>           Flags: bus master, fast devsel, latency 0, IRQ 43
>>
>>           Memory at f0400000 (32-bit, non-prefetchable) [size=128K]
>>           Memory at f0425000 (32-bit, non-prefetchable) [size=4K]
>>           I/O ports at 2100 [size=32]
>>           Capabilities: [c8] Power Management version 2
>>           Capabilities: [d0] MSI: Enable+ Count=1/1 Maskable- 64bit+
>>           Capabilities: [e0] PCI Advanced Features
>>           Kernel driver in use: e1000e
>>
>> *** mii-tool -v ***
>>
>> eth1: negotiated 1000baseT-FD flow-control, link ok
>>     product info: vendor 00:13:74, model 4 rev 0
>>     basic mode:   autonegotiation enabled
>>     basic status: autonegotiation complete, link ok
>>     capabilities: 1000baseT-FD 100baseTx-FD 100baseTx-HD 10baseT-FD
>> 10baseT-HD
>>     advertising:  1000baseT-FD 100baseTx-FD 100baseTx-HD 10baseT-FD
>> 10baseT-HD flow-control
>>     link partner: 1000baseT-FD 100baseTx-FD 100baseTx-HD 10baseT-FD
>> 10baseT-HD flow-control
>>
>> *** ethtool eth1 ***
>>
>> Settings for eth1:
>>           Supported ports: [ TP ]
>>           Supported link modes:   10baseT/Half 10baseT/Full
>>                                   100baseT/Half 100baseT/Full
>>                                   1000baseT/Full
>>           Supported pause frame use: No
>>           Supports auto-negotiation: Yes
>>           Advertised link modes:  10baseT/Half 10baseT/Full
>>                                   100baseT/Half 100baseT/Full
>>                                   1000baseT/Full
>>           Advertised pause frame use: No
>>           Advertised auto-negotiation: Yes
>>           Speed: 1000Mb/s
>>           Duplex: Full
>>           Port: Twisted Pair
>>           PHYAD: 2
>>           Transceiver: internal
>>           Auto-negotiation: on
>>           MDI-X: off (auto)
>>           Supports Wake-on: pumbg
>>           Wake-on: g
>>           Current message level: 0x00000007 (7)
>>                                  drv probe link
>>           Link detected: yes
>>
>> *** ethtool -a eth1 ***
>>
>> Pause parameters for eth1:
>> Autonegotiate:  on
>> RX:             on
>> TX:             off
>>
>> ------------------------------------------------------------------------------
>> _______________________________________________
>> E1000-devel mailing list
>> E1000-devel@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/e1000-devel
>> To learn more about Intel&#174; Ethernet, visit
>> http://communities.intel.com/community/wired

-- 
Dipl.-Inform. Julia Niewiejska
Kommunikationssysteme (KOM)

Fraunhofer-Institut für Kommunikation, Informationsverarbeitung und
Ergonomie FKIE
Fraunhoferstraße 20
D-53343 Wachtberg
Tel.: +49 (0)228 9435-609
Mail: julia.niewiej...@fkie.fraunhofer.de
http://www.fkie.fraunhofer.de

------------------------------------------------------------------------------
_______________________________________________
E1000-devel mailing list
E1000-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/e1000-devel
To learn more about Intel&#174; Ethernet, visit 
http://communities.intel.com/community/wired

Reply via email to