<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=utf-8"><meta name=Generator content="Microsoft Word 15 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
pre
        {mso-style-priority:99;
        mso-style-link:"HTML Preformatted Char";
        margin:0in;
        margin-bottom:.0001pt;
        font-size:10.0pt;
        font-family:"Courier New";
        color:black;}
span.HTMLPreformattedChar
        {mso-style-name:"HTML Preformatted Char";
        mso-style-priority:99;
        mso-style-link:"HTML Preformatted";
        font-family:"Courier New";
        color:black;}
.MsoChpDefault
        {mso-style-type:export-only;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style></head><body lang=EN-US link=blue vlink="#954F72"><div class=WordSection1><p class=MsoNormal>Hello Prabhu, </p><p class=MsoNormal><o:p>&nbsp;</o:p></p><p class=MsoNormal>Thanks for your detailed reply.</p><p class=MsoNormal><o:p>&nbsp;</o:p></p><p class=MsoNormal>I have understood your points and will try to work in that direction.</p><p class=MsoNormal><o:p>&nbsp;</o:p></p><p class=MsoNormal>Can you just let me know how can I manage the buffer size using Linux tc utility, as I tried to understand Linux tc but was not able to figure out the way for managing the buffer size for each queue configured for each port of the switch.</p><p class=MsoNormal><o:p>&nbsp;</o:p></p><p class=MsoNormal>I read somewhere that txqueuelen can be used for reducing the size of the queue for each port which is 1000 by default, but could not verify it.</p><p class=MsoNormal><o:p>&nbsp;</o:p></p><p class=MsoNormal>I am able to shape the traffic as per the bandwidth requirements by using minimum and maximum rates using tc linux and htb, but I am not able to figure out the way for buffer size.</p><p class=MsoNormal><o:p>&nbsp;</o:p></p><p class=MsoNormal>I appreciate your time and cooperation for my research.</p><p class=MsoNormal><o:p>&nbsp;</o:p></p><p class=MsoNormal>Regards,</p><p class=MsoNormal>Ankur  </p><p class=MsoNormal><o:p>&nbsp;</o:p></p><div style='mso-element:para-border-div;border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in'><p class=MsoNormal style='border:none;padding:0in'><b>From: </b><a href="mailto:wsuprabhu@gmail.com">Prabhu</a><br><b>Sent: </b>Sunday, November 19, 2017 12:03 PM<br><b>To: </b><a href="mailto:sankur91@gmail.com">ANKUR SHETH</a>; <a href="mailto:blp@ovn.org">Ben Pfaff</a>; <a href="mailto:ryu-devel@lists.sourceforge.net">ryu-devel@lists.sourceforge.net</a>; <a href="mailto:ovs-discuss@openvswitch.org">ovs-discuss@openvswitch.org</a>; <a href="mailto:lartc@vger.kernel.org">lartc@vger.kernel.org</a><br><b>Subject: </b>Re: Regarding Buffer size</p></div><p class=MsoNormal><o:p>&nbsp;</o:p></p><p>Hello Ankur,</p><p>Buffer Size management is out of scope for Openvswitch and RYU SDN Controller. </p><p>I have been investigating on several approaches to use queue based solutions for one of the problem that I was looking to solve. </p><p>From my understanding, </p><p>1. You should be use <b>tc </b>linux utility to define queue size (or) buffer size with limits such as no.of.packets it can buffer and associate it with the port</p><p>2. Openvswitch do not have direct control over the property that you are looking for (manipulating buffer properties which can be done using tc).</p><p>3. RYU SDN controller does not have API complex queue management</p><p class=MsoNormal style='margin-bottom:12.0pt'><br>Also, you should be aware that OVS process packets in two modes fast path and slow path. You may have to decide where to place the buffer and depending on that you may have to either modify kernel or you can completely achieve you goal with performance tradeoff.<br><br><br>NOTE: The above given description is based on my understanding, please correct it in case of being wrong.<br><br><br><br><br><br>Thanks,<br>Prabhu<br><br><o:p></o:p></p><div><p class=MsoNormal>On 11/19/2017 01:38 AM, ANKUR SHETH wrote:<br>&nbsp;&nbsp;&nbsp; <br>Hello all, <o:p></o:p></p></div><blockquote style='margin-top:5.0pt;margin-bottom:5.0pt'><pre><o:p>&nbsp;</o:p></pre><pre>I actually intend to control the buffer size for the ingress as well</pre><pre>as egress traffic from the  openvswitch.</pre><pre><o:p>&nbsp;</o:p></pre><pre>I know that ovs internally uses linux tc utility to control the</pre><pre>traffic, but even after referring to tc command manual I am not able</pre><pre>to figure out how to manage the queue size of the buffers.</pre><pre><o:p>&nbsp;</o:p></pre><pre>I am excited about working on queue management on ovs switches using</pre><pre>RYU SDN controller, but I am unable to find the correct direction even</pre><pre>after understanding linux tc.</pre><pre><o:p>&nbsp;</o:p></pre><pre>Could you please suggest on how I can achieve it or guide me to some</pre><pre>documentation. Any help is appreciated.</pre><pre><o:p>&nbsp;</o:p></pre><pre>Regards,</pre><pre>Ankur</pre></blockquote><p class=MsoNormal><o:p>&nbsp;</o:p></p><p class=MsoNormal><span style='color:black'><o:p>&nbsp;</o:p></span></p></div></body></html>