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