Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 04 Jul 2011 11:30:51 +0300
From:      Adrian Minta <gygy@stsnet.ro>
To:        Eugene Grosbein <egrosbein@rdtc.ru>
Cc:        freebsd-net@freebsd.org
Subject:   Re: FreeBSD 8.2 and MPD5 stability issues - update
Message-ID:  <4E117A3B.4070400@stsnet.ro>
In-Reply-To: <4E10C97C.2030200@rdtc.ru>
References:  <f9d8cfb9ee20ba5ab730820fc5c45962.squirrel@mail.stsnet.ro> <4E10C8F3.2050006@rdtc.ru> <4E10C97C.2030200@rdtc.ru>

next in thread | previous in thread | raw e-mail | index | archive | help
On 07/03/2011 10:56 PM, Eugene Grosbein wrote:
>>
>> There is internal queue of messages in the mpd-5.5 with length 8129.
>> Messages are generated based on various events and enqueued there, then processed.
>>
>> Mpd uses GRED algorithm to prevent overload: it accepts all new L2TP connections
>> when queue has 10 or less slots occupied (unprocessed events).
>>
>> It drops all connections then it has over 60 slots occupied.
> s/all/new incoming/
>
>> In between, it drops new message with probability equal to (q-10)*2 percents
> s/message/L2TP connection/
>
>> where q is number of occupied queue slots. These constants are hardcoded in its src/ppp.h
>>
>> Each time it decided to ignore incoming L2TP requests it notes that in the log,
>> as you have already seen.
> Eugene Grosbein
>
>
Hi Eugene,
if I undestand corectly, in order to increase the connection rate I need 
to replace 60 with 600 and 10 with 100 like this:

   #define SETOVERLOAD(q)        do {                                    \
                                     int t = (q);                        \
                                     if (t > 600) {                      \
                                         gOverload = 100;                \
                                     } else if (t > 100) {               \
                                         gOverload = (t - 100) * 2;      \
                                     } else {                            \
                                         gOverload = 0;                  \
                                     }                                   \
                                 } while (0)

  Is this enough, or I need to modify something else ?

-- 
Best regards,






Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4E117A3B.4070400>