Project

General

Profile

Actions

Bug #6400

closed

assign_interfaces.php issues with large numbers of interfaces

Added by wot wot over 8 years ago. Updated almost 7 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
Interfaces
Target version:
Start date:
05/24/2016
Due date:
% Done:

100%

Estimated time:
Plus Target Version:
Release Notes:
Affected Version:
2.3.x
Affected Architecture:
All

Description

On a firewall running 2.3.1, after creating ~200 vlans, assign_interfaces.php gets very slow while taking 100% cpu. when selecting "assign interfaces" in the cli/console, a lot of "broken pipe" errors turn up before the usual config dialog begins.

I can help with debugging, the box in question however is in production.


Files

1000-interface-config.xml (230 KB) 1000-interface-config.xml Chris Buechler, 07/11/2016 09:18 PM
config-sanitized.xml (110 KB) config-sanitized.xml Clinton Cory, 04/26/2017 01:43 PM
Actions #1

Updated by Luiz Souza over 8 years ago

  • Assignee set to Luiz Souza
Actions #2

Updated by Gareth Hay over 8 years ago

We have been doing some testing on one of our sites.

Under 2.2.4 no issue with 100 vlans, under 2.3.1-RELEASE-p5 at 40 vlans it takes around 27 seconds to open the page on our boxes and it is noticibly slower as you add vlans one by one.

At 100 vlans we get a 504 Gateway time out.

nginx: 2016/06/23 12:08:23 [error] 17180#0: *134 upstream timed out (60: Operation timed out) while reading response header from upstream, client: X.X.X.X, server: , request: "GET /interfaces_assign.php HTTP/1.1", upstream: "fastcgi://unix:/var/run/php-fpm.socket", host: "X.X.X.X", referrer: "https://X.X.X.X/".

This also happens under the i386 architecture.

Think this is the same as Bug #6520

Actions #3

Updated by Phillip Davis over 8 years ago

Maybe this is somehow related to https://redmine.pfsense.org/issues/6515
When submitting a change in interfaces_assign, interface_configure() is called, and that calls link_interface_to_vips() - the performance of which is improved by the change for 6515, in commit https://github.com/pfsense/pfsense/commit/d75c55fbe2f98dfe782dfc9dc22f76765e4ef3c2
It seems to me it would only help in a situation where there are a number of VIPs on the system, as well as a bunch of interfaces. So I am not sure that it is related, but would be worth applying the changes in that commit and see if anything improves.

Actions #4

Updated by Chris Buechler over 8 years ago

  • File 1000-interface-config.xml 1000-interface-config.xml added
  • Subject changed from assign_interfaces throws "broken pipe" errors to assign_interfaces.php issues with large numbers of interfaces
  • Status changed from New to Confirmed
  • Target version changed from 2.3.2 to 2.4.0
  • Affected Version changed from 2.3 to 2.3.x
  • Affected Architecture All added
  • Affected Architecture deleted (amd64)

Not seeing any issues with 200 assigned interfaces (somewhat slower than 2.2.x, but still usable), but take it up to 1000 and assign_interfaces.php is non-functional. 504 timeout

example config attached.

2.3.2 is too near-term for significant changes, historically things along these lines have lead to regressions for the 99.99999% in interest of fixing the 0.00001%, so pushing this to 2.4.0.

Actions #5

Updated by Clinton Cory over 7 years ago

I'm seeing the same issue with a little over 200 VLAN interfaces on 2.3.3. Attached is the config I used.

Actions #6

Updated by Jonas Dreher over 7 years ago

I'm having the same issue with about 230 VLAN interfaces on 2.3.3.
Assign_Interfaces.php ist not usable and all configurations have to be done via console.

Actions #7

Updated by Jim Pingle over 7 years ago

See also: #7726

Actions #8

Updated by Luiz Souza over 7 years ago

  • Target version changed from 2.4.0 to 2.4.1
Actions #9

Updated by Jim Pingle about 7 years ago

  • Target version changed from 2.4.1 to 2.4.2
Actions #10

Updated by Jim Pingle about 7 years ago

  • Target version changed from 2.4.2 to 2.4.3
Actions #12

Updated by Peter Schofield about 7 years ago

I have submitted a pull request that addresses this, waiting on pfSense devs now.

Actions #13

Updated by Jim Pingle about 7 years ago

  • Status changed from Confirmed to Feedback
  • % Done changed from 0 to 100
Actions #14

Updated by Jim Pingle almost 7 years ago

The previous PR was reverted. Current PR is https://github.com/pfsense/pfsense/pull/3896 and it was merged on Jan 17.

Actions #15

Updated by Anonymous almost 7 years ago

With the attached config's (1000-interface-config.xml) interfaces restored to 2.4.3.a.20180224.1542 running with 4G memory and 4 cores at ~3.5GHz the dashboard, interfaces page and other pages loaded quickly.

Actions #16

Updated by Anonymous almost 7 years ago

Tried logging out, WebGUI hung. Tried console menu options 11/16 to get the WebGUI back to no avail.

Actions #17

Updated by Anonymous almost 7 years ago

Retested With CE 2.4.3.a.20180224.1921 memstick installer and the interface names changed to match the NIC driver being used, performs quickly with no issues loading the dashboard, interfaces page, or other pages. Logging out works and rebooting works.

Actions #18

Updated by Renato Botelho almost 7 years ago

  • Status changed from Feedback to Closed
Actions

Also available in: Atom PDF