Project

General

Profile

Actions

Feature #5138

closed

Configure default MTU for UDP faces

Added by Junxiao Shi almost 4 years ago. Updated over 3 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
Faces
Target version:
Start date:
Due date:
% Done:

100%

Estimated time:
3.00 h

Description

Currently, nfdc face create command allows setting MTU when creating or updating a UDP face.
This allows the operator to select NDNLPv2 fragmentation instead of IP fragmentation, which is effective in working around networks that blocks/drops IPv4 fragments or IPv6 fragments.
However, MTU option is unavailable for on-demand faces: all on-demand UDP transports are created with the default MTU of MAX_NDN_PACKET_SIZE i.e. 8800 octets.

In global NDN testbed operations, it has been discovered that some NAT middleboxes and firewalls could block egress IPv4 fragments, causing UDP connections between unrestricted end hosts and testbed routers to become unreliable or fail, when a large packet is transmitted from the testbed router to the end host.
It is necessary for the testbed router in such environments to lower the MTU of on-demand UDP faces, so that outgoing packets would use NDNLP fragmentation.

This issue is to introduce a configuration option:

face_system
{
  udp
  {
    unicast_mtu 1452
  }
}

This face_system.udp.unicast_mtu option accepts a positive number that sets the MTU for on-demand UDP faces.
It also serves as the default MTU for UDP faces created through the nfdc face create command when the mtu option is unspecified.
It shall be an error to set a value that is smaller than MIN_MTU or greater than MAX_NDN_PACKET_SIZE.


Related issues 1 (0 open1 closed)

Related to NFD - Feature #4005: NDNLPv2 fragmentation instead of IP fragmentation on UDP tunnelsClosedEric Newberry

Actions
Actions

Also available in: Atom PDF