Skip to content

Conversation

@opswill
Copy link
Contributor

@opswill opswill commented Nov 7, 2025

pppoe interfaces may lose QoS config on reconnect. This PR reapplies the QoS policy when the interface comes up.

Change summary

  1. QoS Fix: Adds a PPPoE hook script to /etc/ppp/ip-up.d/ to ensure QoS configuration is correctly reapplied and does not get lost when the PPPoE connection reconnects.

  2. Performance Fix: As mentioned in T7965: reapply the QoS policy when the interface reconnect #4816, To avoid the significant BRAS overhead issue caused by Python interpreter startup, the QoS helper is now executed through Bash scripts.

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Code style update (formatting, renaming)
  • Refactoring (no functional changes)
  • Migration from an old Vyatta component to vyos-1x, please link to related PR inside obsoleted component
  • Other (please describe):

Related Task(s)

https://vyos.dev/T7965

Related PR(s)

How to test / Smoketest result

Checklist:

  • I have read the CONTRIBUTING document
  • I have linked this PR to one or more Phabricator Task(s)
  • I have run the components SMOKETESTS if applicable
  • My commit headlines contain a valid Task id
  • My change requires a change to the documentation
  • I have updated the documentation accordingly

@github-actions
Copy link

github-actions bot commented Nov 7, 2025

👍
No issues in PR Title / Commit Title

Copy link
Member

@sarthurdev sarthurdev left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why not have the hooks in the root of src/etc/ppp/ip-up.d merged into a single file?

...

if [[ "$interface" == sstpc* ]]; then
    /etc/ppp/ip-up.d/ppp-hook-scripts/96-vyos-sstpc-callback "$@"
fi

if [[ "$interface" == pppoe* ]]; then
    /etc/ppp/ip-up.d/ppp-hook-scripts/99-vyos-pppoe-callback "$@"
    /etc/ppp/ip-up.d/ppp-hook-scripts/99-vyos-pppoe-qos "$@"
fi

if [ -f "$WLB_PID_FILE" ]; then
    /etc/ppp/ip-up.d/ppp-hook-scripts/99-vyos-pppoe-wlb "$@"
fi

@opswill
Copy link
Contributor Author

opswill commented Nov 14, 2025

@sarthurdev The bash scripts have been merged as you suggested; only one is left in the directory.

@github-actions
Copy link

CI integration 👍 passed!

Details

CI logs

  • CLI Smoketests (no interfaces) 👍 passed
  • CLI Smoketests VPP ❌ failed
  • CLI Smoketests (interfaces only) 👍 passed
  • Config tests 👍 passed
  • Config tests VPP 👍 passed
  • RAID1 tests 👍 passed
  • TPM tests 👍 passed

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Development

Successfully merging this pull request may close these issues.

2 participants