Re: Barrier Message Timeout - 500ms - Rational behind the value
Hi Michal ,
Thank you for your response , I agree with you , I need some clarity on your response
Also there is a complementary parameter - amount of messages in outbound queue without barrier inside. The more messages kept in queue the higher throughput you shall get.
Question : My understanding is that you are referring to Maximum outbound queue depth which is 25600 by default , here if we are sending the flow via SAL-RPC and barrier timer is 500 ms
how to achieve flow throughput of 1000 flows/sec ( total number of non-barrier message kept in queue as 1000) , since RPC call form northbound takes ( 500ms + 20 ms ) for writing single flow (assuming writing each flow sequentially in loop), throughput is less even you are sending 1000 flows/sec. If am sending via RPC how to keep 1000 openflow messages in queue without barrier ? is there any other parameter which is controlling the same ?
From: Michal Rehak -X (mirehak - PANTHEON TECHNOLOGIES at Cisco) <mirehak@...>
Sent: Thursday, February 16, 2017 2:21 PM
To: Muthukrishnan Thangasamy; openflowplugin-dev@...
Subject: Re: [openflowjava-dev] Barrier Message Timeout - 500ms - Rational behind the value
there is no golden standard behind this value. Setting it to 100ms or even lower value will result into low latency system but this also decreases throughput of system.
If you have few switches and little no big requirement on flows per second throughput then 100ms might suit better to your setup. On the other hand if there are hundreds of devices and throughput of thousands of flows per second required then 500ms or even higher will improve overall performance.
Also there is a complementary parameter - amount of messages in outbound queue without barrier inside. The more messages kept in queue the higher throughput you shall get. But there is memory cost and also by extending size of those queues (per device) there comes overload
risk of md-sal notification queue.
True - this value might be configurable. But that would solve the situation only for static requirements.
From: openflowjava-dev-bounces@... <openflowjava-dev-bounces@...> on behalf of Muthukrishnan Thangasamy <muthukrishnan.t@...>
Sent: Wednesday, February 15, 2017 08:13
Subject: [openflowjava-dev] Barrier Message Timeout - 500ms - Rational behind the value
Dear Team ,
I have been working in Lithium and Boron Stable Version .
Lets take Boron , In openflowplugin.cfg default timer for barrier message is 500ms is there any
rational behind the same ? why not 100ms ?
If I push via SAL-FLOW RPC , total time taken for flow push = Time taken for flow push + barrier delay = ~ 30 ms + 520 ms (barrier ).
If I change the value from 500ms to 100 ms I am getting drastic performance improvement in flow push processing . Can anyone tell why we have gone for 500ms as default timer value ?
How we have arrived this golden value of 500ms ?
File : openflowplugin.cfg
"#Timeout interval in milliseconds between each barrier message.
#Default value is set to 500 milliseconds