<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>TCP | FreeBSD Foundation</title>
	<atom:link href="https://freebsdfoundation.org/tag/tcp/feed/" rel="self" type="application/rss+xml" />
	<link>https://freebsdfoundation.org</link>
	<description>A non-profit organization dedicated to supporting and building the FreeBSD Project</description>
	<lastBuildDate>Wed, 10 Jul 2019 21:43:41 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://freebsdfoundation.org/wp-content/uploads/2015/12/favicon.png</url>
	<title>TCP | FreeBSD Foundation</title>
	<link>https://freebsdfoundation.org</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Summary of Five New TCP Congestion Control Algorithms Project</title>
		<link>https://freebsdfoundation.org/blog/summary-of-five-new-tcp-congestion-control-algorithms-project/</link>
		
		<dc:creator><![CDATA[Dru Lavigne]]></dc:creator>
		<pubDate>Tue, 08 Mar 2011 04:55:27 +0000</pubDate>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[funded project]]></category>
		<category><![CDATA[TCP]]></category>
		<guid isPermaLink="false">https://www.freebsdfoundation.org/?p=1244</guid>

					<description><![CDATA[<p>Grenville Armitage has provided a summary of the completed TCP Congestion Control Algorithms project: Background TCP is a crucial part of any modern operating system. FreeBSD&#8217;s standard &#8220;NewReno&#8221; congestion control (CC) is not able to fully utilize the high capacity links available today. A range of newer CC algorithms have emerged (and continue to emerge) [&#8230;]</p>
<p>The post <a href="https://freebsdfoundation.org/blog/summary-of-five-new-tcp-congestion-control-algorithms-project/">Summary of Five New TCP Congestion Control Algorithms Project</a> first appeared on <a href="https://freebsdfoundation.org">FreeBSD Foundation</a>.</p>]]></description>
										<content:encoded><![CDATA[<section class="block block-classic-editor">
<p>Grenville Armitage has provided a summary of the completed TCP Congestion Control Algorithms project:</p>
<h3>Background</h3>
<p>TCP is a crucial part of any modern operating system. FreeBSD&#8217;s standard &#8220;NewReno&#8221; congestion control (CC) is not able to fully utilize the high capacity links available today. A range of newer CC algorithms have emerged (and continue to emerge) from the networking research community over the past 15+ years. These include traditional loss-based algorithms (where packet losses indicate network congestion) and delay-based algorithms (where changes in Round Trip Time, RTT, are used to infer network congestion).</p>
<p>However, to date FreeBSD&#8217;s TCP stack has not had an easy-to-use mechanism for introducing new CC algorithms. In recent years the Centre for Advanced Internet Architectures (CAIA) at Swinburne University of Technology has (with the support of the Cisco University Research Program Fund at Community Foundation Silicon Valley) been developing a range of extensions to the FreeBSD TCP stack. These included a modular framework for adding new CC algorithms and new modular implementations of the existing NewReno algorithm, four other algorithms from the literature (H-TCP, CUBIC, Vegas and HD) and a novel algorithm developed at CAIA (CHD). In mid-2010 the FreeBSD Foundation funded CAIA to complete, tidy up and commit a number of these key enhancements to the FreeBSD TCP stack.</p>
<h3>Delivered</h3>
<p>Our project, &#8220;Five New TCP Congestion Control Algorithms for FreeBSD&#8221;, has delivered the following enhancements to FreeBSD&#8217;s TCP stack:</p>
<ul>
<li>Modular congestion control framework.</li>
<li>Khelp (Kernel Helper) and Hhook (Helper Hook) frameworks.</li>
<li>Basic Khelp/Hhook (Kernel help/hook) integration with the TCP stack.</li>
<li>ERTT (Enhanced Round Trip Time) Khelp module for delay-based TCP algorithms.</li>
<li>Modularised implementations of NewReno, CUBIC and HTCP loss-based TCP CC algorithms.</li>
<li>Modularised implementations of Vegas, &#8220;HD&#8221; and &#8220;CHD&#8221; delay-based TCP CC algorithms.</li>
<li><a href="https://freebsdfoundation.org/wp-content/uploads/2015/12/CAIA-TR-110228A.pdf" target="_blank" rel="">Technical report</a> comparing the computational overhead associated with TCP before and after integrating the new frameworks and modularised NewReno algorithm</li>
</ul>
<h3>Benefits</h3>
<p>Each congestion control algorithm is implemented as a loadable kernel module. Algorithms can be selected to suit the application/network characteristics and requirements of the host&#8217;s installation. The modular CC framework also makes it much easier for developers to implement new algorithms, allowing FreeBSD&#8217;s TCP to be at the forefront of advancements in this area, while still maintaining the stability of its network stack.</p>
<p>CUBIC and HTCP are variants of TCP that provide significant performance improvements (relative to NewReno) over high bandwidth, high latency paths. Vegas, HD, and CHD utilise RTT fluctuations to provide a more timely indication of network congestion &#8212; by not forcing network queues to overflow, delay-based CC algorithms can help to keep queuing delays low along a network path. CHD is also tolerant of packet losses that are unrelated to congestion (such as can occur over wireless links).</p>
<p>In addition, the Khelp/Hhook frameworks provide useful kernel infrastructure which are not specific to the TCP stack and we anticipate they will be used elsewhere in the kernel in the future to provide other unrelated enhancements to FreeBSD.</p>
<h3>Participants</h3>
<p>Code development, testing, and documentation: David Hayes and Lawrence Stewart</p>
<p>Editorial review of code and documentation: Rui Paulo and Bjoern Zeeb</p>
<p>Project supervision: Grenville Armitage</p>
<p>Project URL: <a title="http://caia.swin.edu.au/freebsd/5cc/" href="http://caia.swin.edu.au/freebsd/5cc/" target="_blank">http://caia.swin.edu.au/freebsd/5cc/</a></p>
</section><p>The post <a href="https://freebsdfoundation.org/blog/summary-of-five-new-tcp-congestion-control-algorithms-project/">Summary of Five New TCP Congestion Control Algorithms Project</a> first appeared on <a href="https://freebsdfoundation.org">FreeBSD Foundation</a>.</p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Five new TCP Congestion Control Algorithms Project</title>
		<link>https://freebsdfoundation.org/blog/five-new-tcp-congestion-control-algorithms-project/</link>
		
		<dc:creator><![CDATA[Dru Lavigne]]></dc:creator>
		<pubDate>Sat, 04 Dec 2010 05:35:53 +0000</pubDate>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[funded project]]></category>
		<category><![CDATA[TCP]]></category>
		<guid isPermaLink="false">https://www.freebsdfoundation.org/?p=250</guid>

					<description><![CDATA[<p>The FreeBSD Foundation is pleased to announce that Swinburne University&#8217;s Technology&#8217;s Centre for Advanced Internet Architectures has been awarded a grant to implement five new TCP congestion control algorithms in FreeBSD. Correctly functioning congestion control (CC) is crucial to the efficient operation of the Internet and IP networks in general. CC dynamically balances a flow&#8217;s [&#8230;]</p>
<p>The post <a href="https://freebsdfoundation.org/blog/five-new-tcp-congestion-control-algorithms-project/">Five new TCP Congestion Control Algorithms Project</a> first appeared on <a href="https://freebsdfoundation.org">FreeBSD Foundation</a>.</p>]]></description>
										<content:encoded><![CDATA[<section class="block block-classic-editor">
<p>The FreeBSD Foundation is pleased to announce that Swinburne University&#8217;s Technology&#8217;s Centre for Advanced Internet Architectures has been awarded a grant to implement five new TCP congestion control algorithms in FreeBSD.</p>
<p>Correctly functioning congestion control (CC) is crucial to the efficient operation of the Internet and IP networks in general. CC dynamically balances a flow&#8217;s throughput against the inferred impact on the network, lowering throughput to protect the network as required.</p>
<p>The FreeBSD operating system&#8217;s TCP stack currently utilizes the defacto standard NewReno loss-based CC algorithm, which has known problems coping with many aspects of modern data networks like lossy or large bandwidth/delay paths. There is significant and ongoing work both in the research community and industry to address CC related problems, with a particular focus on TCP because of its ubiquitous deployment and use.</p>
<p>Swinburne University of Technology&#8217;s ongoing work with FreeBSD&#8217;s TCP stack and congestion control implementation has progressively matured. This project aims to refine their prototypes and integrate them into FreeBSD.</p>
<p>The project will conclude in January 2011.</p>
<h3>Addendum:</h3>
<p>The five protocols are:</p>
<ul>
<li><a href="http://tools.ietf.org/id/draft-leith-tcp-htcp-06.txt" target="_blank">H-TCP</a> for high bandwidth-delay product paths</li>
<li><a href="http://tools.ietf.org/id/draft-rhee-tcp-cubic-00.txt" target="_blank">CUBIC</a> for fast long-distance networks</li>
<li><a href="http://www.cs.arizona.edu/projects/protocols/" target="_blank">Vegas</a> for end to end congestion avoidance</li>
<li>and 2 new algorithms <a href="http://caia.swin.edu.au/urp/newtcp/tools.html" target="_blank">Hamilton Delay and CAIA-Hamilton Delay</a></li>
</ul>
</section><p>The post <a href="https://freebsdfoundation.org/blog/five-new-tcp-congestion-control-algorithms-project/">Five new TCP Congestion Control Algorithms Project</a> first appeared on <a href="https://freebsdfoundation.org">FreeBSD Foundation</a>.</p>]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
