Feature #4542
closedSupport for PPPoE with MTU/MRU > 1492 (i.e. 1500)
0%
Description
pfSense v2.2.1 uses mpd v5.7 (Version 5.7 (root@pfSense_RELENG_2_2_amd64-pfSense-job-08 16:46 13-Feb-2015)) for pppoe support. This doesn't have support for RFC-4638 (Accommodating a Maximum Transit Unit/Maximum Receive Unit (MTU/MRU) Greater Than 1492 in the Point-to-Point Protocol over Ethernet (PPPoE)).
The web UI seems to support configuring mpd with an MTU/MRU greater than 1492. The underlying interface can be configured with a MTU of 1508 or greater.
Adding support negiotiating the maximum ppp payload would allow last mile connections to avoid links with an MTU less than 1500 (when the underlying access network allows baby jumbo frames).
Links¶
- http://tools.ietf.org/html/rfc4638
- http://sourceforge.net/projects/mpd/
- https://redmine.pfsense.org/issues/2209
Related discussions:
Files
Updated by Greg B over 9 years ago
Updated by pf 3000 over 9 years ago
Bug
ping -D -s 1472 yahoo.com PING yahoo.com (98.138.253.109): 1472 data bytes 36 bytes from localhost (127.0.0.1): frag needed and DF set (MTU 1492) Vr HL TOS Len ID Flg off TTL Pro cks Src Dst 4 5 00 05dc bc40 0 0000 40 01 3ec0 2.97.192.51 98.138.253.109 36 bytes from localhost (127.0.0.1): frag needed and DF set (MTU 1492) Vr HL TOS Len ID Flg off TTL Pro cks Src Dst 4 5 00 05dc d846 0 0000 40 01 0000 2.97.192.51 98.138.253.109 36 bytes from localhost (127.0.0.1): frag needed and DF set (MTU 1492) Vr HL TOS Len ID Flg off TTL Pro cks Src Dst 4 5 00 05dc f4f7 0 0000 40 01 3ec0 2.97.192.51 98.138.253.109
Expected behavior
ping -D -s 1472 www.dslreports.com PING www.dslreports.com (64.91.255.98): 1472 data bytes 1480 bytes from 64.91.255.98: icmp_seq=0 ttl=47 time=122.827 ms 1480 bytes from 64.91.255.98: icmp_seq=1 ttl=47 time=123.011 ms 1480 bytes from 64.91.255.98: icmp_seq=2 ttl=47 time=122.368 ms 1480 bytes from 64.91.255.98: icmp_seq=3 ttl=47 time=122.715 ms 1480 bytes from 64.91.255.98: icmp_seq=4 ttl=47 time=122.640 ms
Assumption here is WAN interface is gigabit capable & PPPoE over optical FTTX connection.
RFC 4638 is standard in ISP fiber optic equipment OSes, from but not limited to Cisco, Juniper, and Huawei. PPPoE needs updating, which at the moment only supports legacy copper connections like DSL and cable.
Updated by Greg B over 9 years ago
I'm assuming that support for rfc4638 in 'mpd5' is the blocker. An upstream ticket http://sourceforge.net/p/mpd/bugs/54/ has been created for this.
Updated by Greg B over 9 years ago
There has been some changes in the upstream issue [[http://sourceforge.net/p/mpd/bugs/54/]] (patches and some testing/validation) Is there any chance this work could be included in a v2.2.x build please?
Updated by David Wood over 9 years ago
Though it adds little to the patches and commentary I've posted in the Sourceforge bug at https://sourceforge.net/p/mpd/bugs/54/#14d2 , I have made a few pertinent comments at https://forum.pfsense.org/index.php?topic=93902.msg555400#msg555400 .
If I had access to a pfSense 2.2 build VM, I'd complete this work. As it is, I hope the backport of the RFC 4638 code to mpd 5.7, the testing I've carried out and the documentation I have created means the majority of the work is now complete.
Updated by Greg B over 9 years ago
- File 1 of 3 - First_attempt_to_add_PPP-Max-Payload_tag_.patch 1 of 3 - First_attempt_to_add_PPP-Max-Payload_tag_.patch added
- File 2 of 3 - Second_attempt_to_add_PPP-Max-Payload_tag_.patch 2 of 3 - Second_attempt_to_add_PPP-Max-Payload_tag_.patch added
- File 3 of 3 - patch-rfc4638-supplementary-against-cvs.patch 3 of 3 - patch-rfc4638-supplementary-against-cvs.patch added
Included are the three patches to mpd. These are authored by Dmitry and David Wood (see upstream ticket).
Residuals:
- Kernel patches from current are not included here.
- Patches to the pfSense scripts to set any additional configuration properties are not included.
Updated by David Wood over 9 years ago
The patches in comment #7 are the patches against mpd CVS HEAD. I suggest using the patches against mpd 5.7, as that is a more conservative change than switching to an unreleased version of mpd with around two years of unreleased changes.
I'm now working on full integration of RFC 4638 WAN support into pfSense and hope to submit pull requests for pfSense 2.2 in the next few days. I can then look at adding this support to pfSense HEAD.
Updated by David Wood about 9 years ago
A pull request for the kernel and mpd5 changes has been submitted - https://github.com/pfsense/pfsense-tools/pull/12
I continue to work on the GUI changes.
Updated by Chris Buechler about 9 years ago
- Category set to Interfaces
- Target version set to 2.3
Updated by Chris Buechler about 9 years ago
- Assignee set to Luiz Souza
to Luiz to review pull request (which we'll need to move to 2.3 or have it re-submitted to https://github.com/pfsense/FreeBSD-ports repo)
additional comments on the pull request.
Thanks David!
Updated by David Wood about 9 years ago
The work in progress GUI changes are in the RELENG_2_2-rfc4638 branch of davidjwood/pfsense on GitHub - https://github.com/davidjwood/pfsense/tree/RELENG_2_2-rfc4638 . As only etc/inc/interfaces.inc has been modified, the changes should be relatively straightforward to merge to the pfSense master branch (pfSense 2.3).
Instructions on how to install RFC 4638 client support on top of 2.2.4-RELEASE amd64 and some documentation is at https://forum.pfsense.org/index.php?topic=100219.0
Updated by David Wood about 9 years ago
This work is complete and pull requests against pfSense 2.3 have been submitted:
mpd5 changes: https://github.com/pfsense/FreeBSD-ports/pull/1
pfSense support: https://github.com/pfsense/pfsense/pull/1959
Updated by David Wood about 9 years ago
The mpd5 changes have been merged into pfsense/FreeBSD-ports master (which will become 2.3). The pull request against pfsense/pfsense is still outstanding.
An unofficial patch for 2.2.4-RELEASE and 2.2.5-RELEASE is available (amd64 full installs only): https://forum.pfsense.org/index.php?topic=102079.0
Updated by David Wood almost 9 years ago
The unofficial patch has been updated for 2.2.6-RELEASE (still amd64 full installs only): https://forum.pfsense.org/index.php?topic=102079.0
Updated by David Wood almost 9 years ago
Following the merge of the pull request in https://github.com/pfsense/pfsense/commit/bba669d9cbe52bd84e02f749df0fd83aac6871c2 , this is tested and confirmed working in 2.3.a.20160105.0829 on amd64. Log output from my test run can be found at https://github.com/pfsense/pfsense/pull/1959#issuecomment-169066182 .
Updated by Jim Thompson almost 9 years ago
thanks for all the hard work and your continued support, David.
Updated by Chris Buechler almost 9 years ago
- Status changed from New to Resolved
- Affected Architecture added
- Affected Architecture deleted (
All)
works in all my testing too. Thanks David!