> -----Original Message----- > From: Mohan Krishna Ghanta Krishnamurthy > Sent: Monday, April 09, 2018 12:24 > To: tipc-discussion@lists.sourceforge.net; Jon Maloy > <jon.ma...@ericsson.com>; ma...@donjonn.com; > ying....@windriver.com; Mohan Krishna Ghanta Krishnamurthy > <mohan.krishna.ghanta.krishnamur...@ericsson.com> > Subject: [net-next 1/3] tipc: set default MTU for UDP media > > Currently, all bearers are configured with MTU value same as the underlying > L2 device. However, in case of bearers with media type UDP, higher > throughput is possible with a fixed and higer MTU value than adapting to the
higer/higher I think we ins this case also should emphasize *emulated* MTU value > underlying L2 MTU. > > In this commit, we introduce a parameter mtu in struct tipc_media and a > default value is set for UDP. A default value of 14k was determined by > experimentation and found to have a higher throughput than 16k. MTU for > UDP bearers are assigned the above set value of media MTU. > > Acked-by: Ying Xue <ying....@windriver.com> > Acked-by: Jon Maloy <jon.ma...@ericsson.com> Still acked by me ///jon > Signed-off-by: GhantaKrishnamurthy MohanKrishna > <mohan.krishna.ghanta.krishnamur...@ericsson.com> > --- > include/uapi/linux/tipc_config.h | 5 +++++ > net/tipc/udp_media.c | 4 ++-- > 2 files changed, 7 insertions(+), 2 deletions(-) > > diff --git a/include/uapi/linux/tipc_config.h > b/include/uapi/linux/tipc_config.h > index 3f29e3c8ed06..4b2c93b1934c 100644 > --- a/include/uapi/linux/tipc_config.h > +++ b/include/uapi/linux/tipc_config.h > @@ -185,6 +185,11 @@ > #define TIPC_DEF_LINK_WIN 50 > #define TIPC_MAX_LINK_WIN 8191 > > +/* > + * Default MTU for UDP media > + */ > + > +#define TIPC_DEF_LINK_UDP_MTU 14000 > > struct tipc_node_info { > __be32 addr; /* network address of node */ > diff --git a/net/tipc/udp_media.c b/net/tipc/udp_media.c index > e7d91f5d5cae..9783101bc4a9 100644 > --- a/net/tipc/udp_media.c > +++ b/net/tipc/udp_media.c > @@ -713,8 +713,7 @@ static int tipc_udp_enable(struct net *net, struct > tipc_bearer *b, > err = -EINVAL; > goto err; > } > - b->mtu = dev->mtu - sizeof(struct iphdr) > - - sizeof(struct udphdr); > + b->mtu = b->media->mtu; > #if IS_ENABLED(CONFIG_IPV6) > } else if (local.proto == htons(ETH_P_IPV6)) { > udp_conf.family = AF_INET6; > @@ -803,6 +802,7 @@ struct tipc_media udp_media_info = { > .priority = TIPC_DEF_LINK_PRI, > .tolerance = TIPC_DEF_LINK_TOL, > .window = TIPC_DEF_LINK_WIN, > + .mtu = TIPC_DEF_LINK_UDP_MTU, > .type_id = TIPC_MEDIA_TYPE_UDP, > .hwaddr_len = 0, > .name = "udp" > -- > 2.1.4 ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot _______________________________________________ tipc-discussion mailing list tipc-discussion@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/tipc-discussion