Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix for mtu issues with kernelvethpair #452

Merged
merged 1 commit into from
Nov 22, 2021

Conversation

edwarnicke
Copy link
Member

This probably fixes:
networkservicemesh/sdk#1148

The underlying issue was that the end of the vethpair to which
VPP was attaching with afpacket was not getting its MTU set correctly.
As a result, if an oversized packet was sent over it, it would be fragmented
by the kernel to a size that matches the mtu on the end of the veth pair
that was in the NSC network namespace.

The resulting packet would still be to large for the MTU of the end of the
vethpair attached to the VPP instance, and would be dropped there.

The second fragment, being smaller, would be smaller than the MTU of the
end of the vethpair to which VPP was attached with af-packet, and so get
through.

Signed-off-by: Ed Warnicke hagbard@gmail.com

This *probably* fixes:
networkservicemesh/sdk#1148

The underlying issue was that the end of the vethpair to which
VPP was attaching with afpacket was not getting its MTU set correctly.
As a result, if an oversized packet was sent over it, it would be fragmented
by the kernel to a size that matches the mtu on the end of the veth pair
that was in the NSC network namespace.

The resulting packet would *still* be to large for the MTU of the end of the
vethpair attached to the VPP instance, and would be dropped there.

The second fragment, being smaller, would be smaller than the MTU of the
end of the vethpair to which VPP was attached with af-packet, and so get
through.

Signed-off-by: Ed Warnicke <hagbard@gmail.com>
@denis-tingaikin denis-tingaikin merged commit 7958db6 into networkservicemesh:main Nov 22, 2021
nsmbot pushed a commit to networkservicemesh/cmd-nsc-vpp that referenced this pull request Nov 22, 2021
…k-vpp@main

PR link: networkservicemesh/sdk-vpp#452

Commit: 7958db6
Author: Ed Warnicke
Date: 2021-11-22 09:09:20 -0600
Message:
  - Fix for mtu issues with kernelvethpair (#452)
This *probably* fixes:
networkservicemesh/sdk#1148

The underlying issue was that the end of the vethpair to which
VPP was attaching with afpacket was not getting its MTU set correctly.
As a result, if an oversized packet was sent over it, it would be fragmented
by the kernel to a size that matches the mtu on the end of the veth pair
that was in the NSC network namespace.

The resulting packet would *still* be to large for the MTU of the end of the
vethpair attached to the VPP instance, and would be dropped there.

The second fragment, being smaller, would be smaller than the MTU of the
end of the vethpair to which VPP was attached with af-packet, and so get
through.

Signed-off-by: NSMBot <nsmbot@networkservicmesh.io>
nsmbot pushed a commit to networkservicemesh/cmd-nse-icmp-responder-vpp that referenced this pull request Nov 22, 2021
…k-vpp@main

PR link: networkservicemesh/sdk-vpp#452

Commit: 7958db6
Author: Ed Warnicke
Date: 2021-11-22 09:09:20 -0600
Message:
  - Fix for mtu issues with kernelvethpair (#452)
This *probably* fixes:
networkservicemesh/sdk#1148

The underlying issue was that the end of the vethpair to which
VPP was attaching with afpacket was not getting its MTU set correctly.
As a result, if an oversized packet was sent over it, it would be fragmented
by the kernel to a size that matches the mtu on the end of the veth pair
that was in the NSC network namespace.

The resulting packet would *still* be to large for the MTU of the end of the
vethpair attached to the VPP instance, and would be dropped there.

The second fragment, being smaller, would be smaller than the MTU of the
end of the vethpair to which VPP was attached with af-packet, and so get
through.

Signed-off-by: NSMBot <nsmbot@networkservicmesh.io>
nsmbot pushed a commit to networkservicemesh/cmd-nse-firewall-vpp that referenced this pull request Nov 22, 2021
…k-vpp@main

PR link: networkservicemesh/sdk-vpp#452

Commit: 7958db6
Author: Ed Warnicke
Date: 2021-11-22 09:09:20 -0600
Message:
  - Fix for mtu issues with kernelvethpair (#452)
This *probably* fixes:
networkservicemesh/sdk#1148

The underlying issue was that the end of the vethpair to which
VPP was attaching with afpacket was not getting its MTU set correctly.
As a result, if an oversized packet was sent over it, it would be fragmented
by the kernel to a size that matches the mtu on the end of the veth pair
that was in the NSC network namespace.

The resulting packet would *still* be to large for the MTU of the end of the
vethpair attached to the VPP instance, and would be dropped there.

The second fragment, being smaller, would be smaller than the MTU of the
end of the vethpair to which VPP was attached with af-packet, and so get
through.

Signed-off-by: NSMBot <nsmbot@networkservicmesh.io>
nsmbot pushed a commit to networkservicemesh/cmd-forwarder-vpp that referenced this pull request Nov 22, 2021
…k-vpp@main

PR link: networkservicemesh/sdk-vpp#452

Commit: 7958db6
Author: Ed Warnicke
Date: 2021-11-22 09:09:20 -0600
Message:
  - Fix for mtu issues with kernelvethpair (#452)
This *probably* fixes:
networkservicemesh/sdk#1148

The underlying issue was that the end of the vethpair to which
VPP was attaching with afpacket was not getting its MTU set correctly.
As a result, if an oversized packet was sent over it, it would be fragmented
by the kernel to a size that matches the mtu on the end of the veth pair
that was in the NSC network namespace.

The resulting packet would *still* be to large for the MTU of the end of the
vethpair attached to the VPP instance, and would be dropped there.

The second fragment, being smaller, would be smaller than the MTU of the
end of the vethpair to which VPP was attached with af-packet, and so get
through.

Signed-off-by: NSMBot <nsmbot@networkservicmesh.io>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants