<!-- 
RSS generated by JIRA (8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d) at Wed Feb 07 19:55:00 UTC 2024

It is possible to restrict the fields that are returned in this document by specifying the 'field' parameter in your request.
For example, to request only the issue key and summary append 'field=key&field=summary' to the URL of your request.
-->
<rss version="0.92" >
<channel>
    <title>OpenDaylight JIRA</title>
    <link>https://jira.opendaylight.org</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-us</language>    <build-info>
        <version>8.20.10</version>
        <build-number>820010</build-number>
        <build-date>22-06-2022</build-date>
    </build-info>


<item>
            <title>[CONTROLLER-1229] TCP Options incorrect - optimized for throughput not latency</title>
                <link>https://jira.opendaylight.org/browse/CONTROLLER-1229</link>
                <project id="10113" key="CONTROLLER">controller</project>
                    <description>&lt;p&gt;TCP Basics - if you want to implement a command/reply protocol you have to set TCP_NODELAY.&lt;/p&gt;

&lt;p&gt;This is doubly so when using Netty and abstractions on top of it which form the full command (or response) in one write buffer to write out. In such double-buffering environments the additional buffering in the kernel which happens when not setting NO_DELAY makes no sense and can only do harm in terms of latency.&lt;/p&gt;

&lt;p&gt;References (I can probably start with TCP Illustrated here):&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_MRG/1.2/html/Realtime_Tuning_Guide/sect-Realtime_Tuning_Guide-Application_Tuning_and_Deployment-TCP_NODELAY_and_Small_Buffer_Writes.html&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_MRG/1.2/html/Realtime_Tuning_Guide/sect-Realtime_Tuning_Guide-Application_Tuning_and_Deployment-TCP_NODELAY_and_Small_Buffer_Writes.html&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;or&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://www.techrepublic.com/article/tcp-ip-options-for-high-performance-data-transmission/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://www.techrepublic.com/article/tcp-ip-options-for-high-performance-data-transmission/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;and even the (reference) ssh implementation. Quoting from the source of openssh:&lt;/p&gt;

&lt;p&gt;        if (setsockopt(fd, IPPROTO_TCP, TCP_NODELAY, &amp;amp;opt, sizeof opt) == -1)&lt;br/&gt;
                error(&quot;setsockopt TCP_NODELAY: %.100s&quot;, strerror(errno));&lt;/p&gt;

&lt;p&gt;Patch to follow shortly.&lt;/p&gt;</description>
                <environment>&lt;p&gt;Operating System: All&lt;br/&gt;
Platform: All&lt;/p&gt;</environment>
        <key id="25783">CONTROLLER-1229</key>
            <summary>TCP Options incorrect - optimized for throughput not latency</summary>
                <type id="10104" iconUrl="https://jira.opendaylight.org/secure/viewavatar?size=xsmall&amp;avatarId=10303&amp;avatarType=issuetype">Bug</type>
                                                <status id="5" iconUrl="https://jira.opendaylight.org/images/icons/statuses/resolved.png" description="A resolution has been taken, and it is awaiting verification by reporter. From here issues are either reopened, or are closed.">Resolved</status>
                    <statusCategory id="3" key="done" colorName="green"/>
                                    <resolution id="10000">Done</resolution>
                                        <assignee username="-1">Unassigned</assignee>
                                    <reporter username="aivanov@brocade.com">Anton Ivanov</reporter>
                        <labels>
                    </labels>
                <created>Mon, 30 Mar 2015 12:36:13 +0000</created>
                <updated>Tue, 25 Jul 2023 08:23:58 +0000</updated>
                            <resolved>Fri, 19 Jun 2015 12:24:25 +0000</resolved>
                                                                    <component>netconf</component>
                        <due></due>
                            <votes>0</votes>
                                    <watches>1</watches>
                                                                                                                <comments>
                            <comment id="50345" author="aivanov@brocade.com" created="Mon, 30 Mar 2015 12:52:55 +0000"  >&lt;p&gt;Gerrits:&lt;br/&gt;
stable/helium: &lt;a href=&quot;https://git.opendaylight.org/gerrit/17341&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://git.opendaylight.org/gerrit/17341&lt;/a&gt;&lt;br/&gt;
master: &lt;a href=&quot;https://git.opendaylight.org/gerrit/#/c/17339/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://git.opendaylight.org/gerrit/#/c/17339/&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="50346" author="aivanov@brocade.com" created="Mon, 30 Mar 2015 13:44:03 +0000"  >&lt;p&gt;This is cosmetic for now, because Netty sets the option as it should (in a duble buffering design) to noDelay. &lt;/p&gt;

&lt;p&gt;However as netty behavior is guaranteed and it should be documented in case netty is replaced one day.&lt;/p&gt;

&lt;p&gt;So this at present is a cosmetic issue - the initializer should specify the desired behaviour explicitly so it is known and documented (despite NO_DELAY being the netty default at present).&lt;/p&gt;</comment>
                            <comment id="50347" author="mmarsale@cisco.com" created="Fri, 19 Jun 2015 12:24:25 +0000"  >&lt;p&gt;Commit has already been merged into protocol-framework some time ago, closing.&lt;/p&gt;</comment>
                    </comments>
                    <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                            <customfield id="customfield_11400" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                        <customfield id="customfield_10208" key="com.atlassian.jira.plugin.system.customfieldtypes:textfield">
                        <customfieldname>External issue ID</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2914</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10201" key="com.atlassian.jira.plugin.system.customfieldtypes:url">
                        <customfieldname>External issue URL</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue><![CDATA[https://bugs.opendaylight.org/show_bug.cgi?id=2914]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10000" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0|i02pa7:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                </customfields>
    </item>
</channel>
</rss>