<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://en.formulasearchengine.com/index.php?action=history&amp;feed=atom&amp;title=Multiple-conclusion_logic</id>
	<title>Multiple-conclusion logic - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://en.formulasearchengine.com/index.php?action=history&amp;feed=atom&amp;title=Multiple-conclusion_logic"/>
	<link rel="alternate" type="text/html" href="https://en.formulasearchengine.com/index.php?title=Multiple-conclusion_logic&amp;action=history"/>
	<updated>2026-04-18T12:28:48Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.0-wmf.28</generator>
	<entry>
		<id>https://en.formulasearchengine.com/index.php?title=Multiple-conclusion_logic&amp;diff=12516&amp;oldid=prev</id>
		<title>en&gt;Westerdundrun: added Wiki link - Timothy Smiley</title>
		<link rel="alternate" type="text/html" href="https://en.formulasearchengine.com/index.php?title=Multiple-conclusion_logic&amp;diff=12516&amp;oldid=prev"/>
		<updated>2010-12-30T21:52:18Z</updated>

		<summary type="html">&lt;p&gt;added Wiki link - Timothy Smiley&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;The &amp;#039;&amp;#039;&amp;#039;additive-increase/multiplicative-decrease&amp;#039;&amp;#039;&amp;#039; (&amp;#039;&amp;#039;&amp;#039;AIMD&amp;#039;&amp;#039;&amp;#039;) algorithm is a feedback control algorithm best known for its use in [[Transmission Control Protocol|TCP]] [[TCP congestion avoidance algorithm|Congestion Avoidance]]. AIMD combines linear growth of the congestion window with an exponential reduction when a congestion takes place. Multiple flows using AIMD congestion control will eventually converge to use equal amounts of a contended link.&amp;lt;ref name=chui1989&amp;gt;{{cite journal|last=Chiu|first=Dah-Ming|coauthors=Raj Jain|title=Analysis of increase and decrease algorithms for congestion avoidance in computer networks|journal=Computer Networks and ISDN systems|year=1989|volume=17|pages=1–14}}&amp;lt;/ref&amp;gt; The related schemes of multiplicative-increase/multiplicative-decrease (MIMD) and additive-increase/additive-decrease (AIAD) do not converge.&lt;br /&gt;
&lt;br /&gt;
== Algorithm ==&lt;br /&gt;
&lt;br /&gt;
The approach taken is to increase the transmission rate (window size), probing for usable bandwidth, until loss occurs. The policy of additive increase may, for instance, increase the congestion window by a fixed amount every [[round trip time]]. When congestion is detected, the transmitter decreases the transmission rate by a multiplicative factor; for example, cut the congestion window in half after loss. The result is a saw-tooth behavior that represents the probe for bandwidth.&lt;br /&gt;
&lt;br /&gt;
AIMD requires a binary signal of congestion. Most frequently, packet loss serves as the signal; the multiplicative decrease is triggered when a timeout or acknowledgement message indicates a packet was lost. It is also possible for in-network mechanisms to mark congestion (without discarding packets) as in [[Explicit Congestion Notification]] (ECN).&lt;br /&gt;
&lt;br /&gt;
=== Mathematical Formula ===&lt;br /&gt;
&lt;br /&gt;
Let &amp;#039;&amp;#039;w&amp;#039;&amp;#039;(&amp;#039;&amp;#039;t&amp;#039;&amp;#039;) be the sending rate (e.g. the [[congestion window]]) during time slot &amp;#039;&amp;#039;t&amp;#039;&amp;#039;, &amp;#039;&amp;#039;a&amp;#039;&amp;#039; (&amp;lt;math&amp;gt;a &amp;gt; 0&amp;lt;/math&amp;gt;) be the additive increase parameter, and &amp;#039;&amp;#039;b&amp;#039;&amp;#039; (&amp;lt;math&amp;gt;0 &amp;lt; b &amp;lt; 1&amp;lt;/math&amp;gt;) be the multiplicative decrease factor.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
w(t + 1) = \begin{cases}&lt;br /&gt;
  w(t) + a &amp;amp; \text{ if congestion is not detected} \\&lt;br /&gt;
  w(t) \times b &amp;amp; \text{ if congestion is detected}&lt;br /&gt;
\end{cases}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In TCP, after [[slow start]], the additive increase parameter &amp;#039;&amp;#039;a&amp;#039;&amp;#039; is typically one MSS ([[maximum segment size]]) per [[round-trip time]], and the multiplicative decrease factor &amp;#039;&amp;#039;b&amp;#039;&amp;#039; is typically 1/2.&lt;br /&gt;
&lt;br /&gt;
== Protocols ==&lt;br /&gt;
&lt;br /&gt;
AIMD congestion avoidance is or was used in:&lt;br /&gt;
* [[Transmission Control Protocol]] (TCP)&lt;br /&gt;
* [[Stream Control Transmission Protocol]] (SCTP) &lt;br /&gt;
* [[Transport_Layer#Comparison_of_OSI_transport_protocols|OSI Transport Class 4]]&amp;lt;ref name=chui1989/&amp;gt;&lt;br /&gt;
* [[DCCP]] (in some modes)&amp;lt;ref&amp;gt;{{cite web|last=Floyd|title=4341: RFC Profile for Datagram Congestion Control Protocol (DCCP) Congestion Control ID 2: TCP-like Congestion Control|url=https://tools.ietf.org/html/rfc4341}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
* [[DECnet]]&amp;lt;ref name=chui1989/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
* [[TCP congestion avoidance algorithm]]&lt;br /&gt;
* [[TCP Reno]]&lt;br /&gt;
* [[congestion window]]&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{DEFAULTSORT:Additive increase multiplicative decrease}}&lt;br /&gt;
[[Category:Transport layer protocols]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Compu-network-stub}}&lt;/div&gt;</summary>
		<author><name>en&gt;Westerdundrun</name></author>
	</entry>
</feed>