Bjoern A. Zeeb <bzeeb-li...@lists.zabbadoz.net> wrote:
> 
> On 22 Dec 2017, at 20:30, Michael Grimm wrote:

>> Hi —
>> 
>> [  I am including freebsd...@freebsd.org now and removing 
>> freebsd-j...@freebsd.org             ]
>> [  Thread starts at 
>> https://lists.freebsd.org/pipermail/freebsd-net/2017-December/049470.html  ]
>>>> 
>>>> (#) there is a *dramatic* performance loss (TCP) when:
>>>> 
>>>>    (-) fetching files from outside through PF/extIF via bridge to jail
> …
>>>> 
>>>> Thanks for your suggestions so far, but I am lost here. Any ideas?
>>> 
>>> It seems to me some kind of bug in the PF.
>>> I personally never tried it, I use ipfw and it works just fine.
>> 
>> Before testing IPFW (which I have never used before) I'd like to ask the 
>> experts in freebsd...@freebsd.org about possible tests/tweaks regarding PF.
> 
> OK, too complicated setups; I am not getting it fully.

;-)

> Can you please just describe the one case that doesn’t work well in all 
> detail and ignore all the others for a moment?
> 
> (a) what’s the external host interface?

vtnet

> (b) pf runs on the base system?

yes

> (c) you are bridging into a VNET-jail?  How exactly?  Are you bridging to 
> epairs?

yes, I am bridging epairs

> (d) where exactly are you NATing?

I am NATing IPv4 and IPv6 at the host' PF ffirewall

> (e) why are you bridging and NATing?  That makes little sense to me.  
> Couldn’t you NAT and forward or just bridge?

hmm, that has been developed by myself over the years. I do "consider" my jails 
as jails with their own network stack, like isolated "VM". 

> (f) what’s inside the VNET jail?  Another pf or anything?

no more firewall, my jails are merely service jails (dns, mail, web, …)

> (g) out of curiosity, does dmesg on the base system indicate anything?

No.

> To understand your performance problem better:
> 
> (1) you are doing a fetch of a rather large file to test from within the VNET 
> jail?  Or what are you fetching?  Are you using fetch?

yes, I do something like the following with the jail:

wget 
https://download.freebsd.org/ftp/releases/ISO-IMAGES/11.1/FreeBSD-11.1-RELEASE-amd64-bootonly.iso
 -O /dev/null

> (2) if you fetch from within the same VNET jail does that perform?
> (3) if you fetch something to the VNET jail from the base system just going 
> through your internal setup but not leaving the machine, does that still 
> perform?
> (4) if you fetch something to the VNET jail from the same LAN (if possible to 
> test) does that perform?
> (5) if you fetch something to the VNET jail from a close by location does 
> that make a difference to something on the other side of the planet?

I will skip these questions for the time being, because I did solve my issue 15 
minutes before your mail ;-) And I feel sorry for all your now "wasted" efforts 
in trying to help me.

As I am using vtnet interface in a cloud environment (Public Cloud by OVH) I 
did read the vtnet(4) man pages and stumbled about "LOADER TUNABLES" like:

        hw.vtnet.lro_disable
        hw.vtnet.X.lro_disable
             This tunable disables LRO.  The default value is 0.

Well, without knowing and understanding the implications of those loader 
tunables I did disabled them step by step, and bingo, setting …

        hw.vtnet.lro_disable="1"

… in /boot/loader.conf" and performance is back from KB/s to MB/s.



I really do not understand what I have done and why it is working and whether 
that will have negative implications for my servers. Perhaps someone of you 
experts could help me understand it.

Because I am leaving in some hours for Xmas vacations, I won't be able to come 
back to this issue for some days now. 

I'd like to thank all of you for your patience and help, and:

Merry Christmas and with kind regards,
Michael






_______________________________________________
freebsd-net@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "freebsd-net-unsubscr...@freebsd.org"

Reply via email to