diff options
author | Ole Troan <ot@cisco.com> | 2018-06-07 10:17:57 +0200 |
---|---|---|
committer | Damjan Marion <dmarion@me.com> | 2018-06-11 10:25:59 +0000 |
commit | d723161e038d00e59766aa67a6a0dcc350227e4b (patch) | |
tree | 24f5a1d87ebdc0012f28d42aa80a9f5d760073bf /src/vnet/ipip | |
parent | f4fd0d4217ab6c41fe6b093871bd40ac130e6486 (diff) |
MTU: Software interface / Per-protocol MTU support
This patch separates setting of hardware interfaec and software
interface MTU. Software MTU is L2 payload MTU (i.e. not including L2
header). Per-protocol MTU for IPv4, IPv6 and MPLS can also be set.
Currently only IP4, IP6 are enabled in adjacency / rewrite code.
Documentation in src/vnet/MTU.md
Change-Id: Iee2fd6f0bbc8210748dd8e073ab9fab87d323690
Signed-off-by: Ole Troan <ot@cisco.com>
Diffstat (limited to 'src/vnet/ipip')
-rw-r--r-- | src/vnet/ipip/ipip.c | 4 | ||||
-rw-r--r-- | src/vnet/ipip/sixrd.c | 2 |
2 files changed, 2 insertions, 4 deletions
diff --git a/src/vnet/ipip/ipip.c b/src/vnet/ipip/ipip.c index c39d27d5e4f..a47704a62e6 100644 --- a/src/vnet/ipip/ipip.c +++ b/src/vnet/ipip/ipip.c @@ -526,10 +526,8 @@ ipip_add_tunnel (ipip_transport_t transport, hi->min_packet_bytes = 64 + sizeof (ip6_header_t); } - hi->per_packet_overhead_bytes = /* preamble */ 8 + /* inter frame gap */ 12; - /* Standard default ipip MTU. */ - hi->max_l3_packet_bytes[VLIB_RX] = hi->max_l3_packet_bytes[VLIB_TX] = 9000; + vnet_sw_interface_set_mtu (vnm, sw_if_index, 9000); t->tunnel_src = *src; t->tunnel_dst = *dst; diff --git a/src/vnet/ipip/sixrd.c b/src/vnet/ipip/sixrd.c index cfdd0f87e3a..38ca899f274 100644 --- a/src/vnet/ipip/sixrd.c +++ b/src/vnet/ipip/sixrd.c @@ -337,7 +337,7 @@ sixrd_add_tunnel (ip6_address_t * ip6_prefix, u8 ip6_prefix_len, t->dev_instance = t_idx; t->user_instance = t_idx; - hi->max_l3_packet_bytes[VLIB_RX] = hi->max_l3_packet_bytes[VLIB_TX] = 1480; + vnet_sw_interface_set_mtu (vnet_get_main (), t->sw_if_index, 1480); ipip_tunnel_db_add (t, &key); |