From aea4c4d4c3b4293ef401621bfd46b6ee5a87cf1b Mon Sep 17 00:00:00 2001 From: Anders Svensson Date: Fri, 19 Jun 2015 09:35:55 +0200 Subject: Increase send/receive buffers for testsuite SCTP listeners The defaults result in sporadic timeouts in the traffic suite after testing over SCTP was added in commit fadf753b. The behaviour looks to be specific to SLES 11, and is presumably the same resends/congestion that lead to the buffers being increased in the gen_sctp suite in commit 12febf13 (and commented in commit e931991f). The behaviour hasn't been seen on SLES 10. --- lib/diameter/test/diameter_util.erl | 22 ++++++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) (limited to 'lib/diameter') diff --git a/lib/diameter/test/diameter_util.erl b/lib/diameter/test/diameter_util.erl index df7d268429..c9022b9c53 100644 --- a/lib/diameter/test/diameter_util.erl +++ b/lib/diameter/test/diameter_util.erl @@ -380,12 +380,26 @@ tmod(any) -> [diameter_sctp, diameter_tcp]. opts(Prot, T) -> - [{transport_module, M} || M <- tmod(Prot)] - ++ [{transport_config, [{ip, ?ADDR}, {port, 0} | opts(T)]}]. + lists:append([[{transport_module, M}, {transport_config, C}] + || M <- tmod(Prot), + C <- [cfg(M,T) ++ cfg(M) ++ cfg(T)]]). -opts(listen) -> +%% Listening SCTP socket need larger-than-default buffers to avoid +%% resends on some platforms (eg. SLES 11). +cfg(diameter_sctp, listen) -> + [{recbuf, 1 bsl 16}, {sndbuf, 1 bsl 16}]; + +cfg(_, _) -> + []. + +cfg(M) + when M == diameter_tcp; + M == diameter_sctp -> + [{ip, ?ADDR}, {port, 0}]; + +cfg(listen) -> [{accept, M} || M <- [{256,0,0,1}, ["256.0.0.1", ["^.+$"]]]]; -opts(PortNr) -> +cfg(PortNr) -> [{raddr, ?ADDR}, {rport, PortNr}]. %% --------------------------------------------------------------------------- -- cgit v1.2.3