Hi All,

As we all know, OVS(and practically most OF switches) can be configured to 
buffer missed packets and to send only the headers to the controller as 
packet-in messages(containing the buffer_id). 

From previous 
discussions(https://www.mail-archive.com/discuss@openvswitch.org/msg16624.html 
<https://www.mail-archive.com/discuss@openvswitch.org/msg16624.html>), I learnt 
that the buffer size for each flow is 256 (in # of packets). Another 
thread(http://openvswitch.org/pipermail/discuss/2013-October/011580.html 
<http://openvswitch.org/pipermail/discuss/2013-October/011580.html>) pointed to 
the actual implementation of the buffering, but that wasn’t in the latest build 
of OVS anymore(i.e., 2.6). 

So my questions will be:

1. What is the latest implementation regarding the packet buffering behavior in 
OVS?

2. If the buffer is allocated per “flow”, what is the definition of flow here, 
five-tuple?

3. Where are some of the key files that I might find useful if I want to, for 
example, tweak the buffer size?

4. What is the design principle behind this size? Why can’t it be larger or 
smaller?

5. Is it still true that, for multiple missed packets buffered on switch(which 
generate multiple packet-ins), the controller has to send out the same amount 
of packet-outs to properly deal with these packets? Or, can the controller send 
out one packet-out(or flow-mod), and it instructs the switch to process other 
packets of the same flow that are buffered on switch?

----------
I know I have asked a couple questions, but any information or insight 
regarding any of the questions will be very much welcomed. Thanks.

Best,
Yikai
_______________________________________________
discuss mailing list
discuss@openvswitch.org
http://openvswitch.org/mailman/listinfo/discuss

Reply via email to