<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
    <!ENTITY rfc1323 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.1323.xml'>
    <!ENTITY rfc2119 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.2119.xml'>
    <!ENTITY rfc2883 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.2883.xml'>
    <!ENTITY rfc3168 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.3168.xml'>
    <!ENTITY rfc3465 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.3465.xml'>
    <!ENTITY rfc4138 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.4138.xml'>
    <!ENTITY rfc4782 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.4782.xml'>
]>

<rfc category="bcp" ipr="full3978" docName="draft-irtf-tmrg-tests-01.txt">

<?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?>

<?rfc toc="yes" ?>
<?rfc symrefs="yes" ?>
<?rfc sortrefs="yes"?>
<?rfc iprnotified="no" ?>
<?rfc strict="yes" ?>
<?rfc compact="yes" ?> <!-- new sections on same page -->
<?rfc subcompact="yes" ?>
<?rfc emoticonic="yes" ?>

    <front>
        <title>Common TCP Evaluation Suite</title>
        <author initials="L.L.H." surname="Andrew, Ed." fullname="Lachlan Andrew">
            <organization>
	    CAIA, Swinburne University of Technology
	    </organization>
	    <address>
		<postal>
		    <street>PO Box 218</street>
		    <city>Hawthorn</city>
			    <region>Vic</region>
			    <code>3122</code>
		    <country>Australia</country>
		</postal>
		<email>landrew@swin.edu.au</email>
	    </address>
        </author>
        <author initials="S." surname="Floyd, Ed." fullname="Sally Floyd">
	    <organization>
	    ICSI Center for Internet Research
	    </organization>
	    <address>
	        <postal>
		<street>1947 Center Street, Suite 600</street>
	        <city>Berkeley</city>
			<region>CA</region>
			<code>94704</code>
   		<country>USA</country>
		</postal>
		<email>floyd@icir.org</email>
	    </address>
        </author>
        <author initials="G." surname="Wang, editor" fullname="Gang Wang">
	    <organization>
	    NEC, China
	    </organization>
	    <address>
	        <postal>
		<street>Innovation Plaza, Tsinghua Science Park, 1 Zhongguancun East Road</street>
		<city>Beijing</city>
		    <code>100084</code>
		<country>China</country>
		</postal>
		<email>wanggang@research.nec.com.cn</email>
	    </address>
        </author>
        <date/>
	<area>Transport</area>
	<!-- <workgroup>TMRG</workgroup> -->
        <abstract><t>
	This document presents an evaluation test suite for the initial
	evaluation of proposed TCP modifications.  The goal of the test
	suite is to allow researchers to quickly and easily evaluate
	their proposed TCP extensions in simulators and testbeds using
	a common set of well-defined, standard test cases, in order to
	compare and contrast proposals against standard TCP as well as
	other proposed modifications.  This test suite is not intended to
	result in an exhaustive evaluation of a proposed TCP modification
	or new congestion control mechanism. Instead, the focus is on
	quickly and easily generating an initial evaluation report that
	allows the networking community to understand and discuss the
	behavioral aspects of a new proposal, in order to guide further
	experimentation that will be needed to fully investigate the
	specific aspects of a new proposal.
	</t></abstract>
    </front>

    <middle>
	<!--
        <section title="Requirements notation">
	    <t>(Do we need this for a Best Current Practice RFC?)</t>
            <t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL",
            "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY",
            and "OPTIONAL" in this document are to be interpreted as
            described in <xref target="RFC2119"/>.</t>
        </section>
	-->




<section title="Introduction">
<t>
This document describes a common test suite for the initial evaluation of
new TCP extensions. It defines a small number of evaluation scenarios,
including traffic and delay distributions, network topologies, and
evaluation parameters and metrics.  The motivation for such an evaluation
suite is to help researchers in evaluating their proposed modifications
to TCP.  The evaluation suite will also enable independent duplication
and verification of reported results by others, which is an important
aspect of the scientific method that is not often put to use by the
networking community.  A specific target is that the evaluations should
be able to be completed in three days of simulations, or in a reasonable
amount of effort in a testbed.
</t>

<t>
This document is an outcome of a ``round-table'' meeting on TCP evaluation, 
held at Caltech on
November 8-9, 2007.
This document is the first step in constructing the evaluation suite;
the goal is for the evaluation suite to be adapted in response from
feedback from the networking community.

<!--
% Lachlan's rewrite (same time as Lars...)
\ignore{
In order to evaluate congestion control algorithms, it is important both that
sufficiently diverse, realistic and informative scenarios are explored, and
that results from different research teams can be compared.  This document
presents a draft test suite aiming to fulfill both objectives.  It summarizes
the outcome of a ``round-table'' meeting on 8-9 November, 2007.

Rather than seeking to be a complete all-encompassing benchmark, this suite
aims to be a minimal set of tests, intended to be able to be simulated in three
days, which protocol designers should perform on their proposals before
bringing the proposal to the community.  As such, one aim was that the results
can be presented compactly.

The tests were chosen, where possible, to be able to be performed by
simulation and in test-beds, with attention also paid to the ability to perform
semi-analytic or analytic studies.  Not all tests will be feasible by all
methods, however it is hoped that subsets of these tests will be implemented in
common simulators (NS2, Omnet++) and in public testbeds.
}

%In an effort to raise the bar of congestion control algorithm evaluation, the authors, and several other peers, met on a round-table <xref target="roundtable"/> to discuss basic scenarios and metrics to consider whenever evaluating new congestion control proposals. The purpose of this document is to provide a summary of the round-table agreements, recommendations and underlying rational for this entry-level TCP evaluation. The goal is that researchers comply on executing these bare minimum experiments as a side validation and baseline, every time they bring up new proposals to the community. Therefore, avoiding cases of resulting discrepancy and testbed condition differences. Moreover, the evaluation scope is not exhaustive and it should comprise roughly 3 simulation days and/or few network emulation hours, turning easy to include as a side result on any companion technical report.
%\footnote{Any opinions, findings and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the authors' affiliations}




% moved when I rewrote the abstract, maybe some of this is usable here - Lars

%to comply on executing these bare minimum experiments as a side validation and baseline, every time they bring up new proposals to the community. Therefore, avoiding cases of resulting discrepancy and testbed condition differences. Moreover, the evaluation scope is not exhaustive and it should comprise roughly 3 simulation days and/or few network emulation hours, turning easy to include as a side result on any companion technical report.

%In an effort to raise the bar of congestion control algorithm evaluation, the authors, and several other peers, met on a round-table <xref target="roundtable"/> to discuss basic scenarios and metrics to consider whenever evaluating new congestion control proposals.

%is to provide a summary of the round-table agreements, recommendations and underlying rational for this entry-level TCP evaluation.
-->
</t>
</section>

<section anchor="sec:crossTraffic" title="Traffic generation">
<t>
Congestion control concerns the response of flows to bandwidth limitations
or to the presence of other flows.
For a realistic testing of a congestion control protocol, we design
scenarios to
use reasonably-typical traffic;  most scenarios use traffic generated
from a traffic generator, with a range of start times for user sessions, 
connection sizes, and the like,  
mimicking the traffic patterns 
commonly observed in the Internet.  Cross-traffic and reverse-path traffic
have the
desirable 
effect of reducing the occurrence of pathological conditions 
such as global synchronization
among competing flows that might otherwise be mis-interpreted as normal average behaviours of
those protocols&nbsp;<xref target="FK03"/>, <xref target="MV06"/>.
This traffic must be reasonably realistic for the tests to predict
the behaviour of congestion control protocols in real networks, and also 
well-defined 
so that statistical noise does not mask important effects. 
</t>

<t>
It is important that the same ``amount'' of congestion or cross-traffic be used
for the testing scenarios of different congestion control algorithms.  
This is complicated by the fact that packet arrivals and even flow arrivals 
are influenced by the behavior of the algorithms. 
For this reason, a pure packet-level generation of traffic where 
generated traffic does not respond to the
behaviour of other present flows is not suitable. Instead, 
emulating application or user behaviours at the end points using reactive
protocols such as TCP in a closed-loop fashion
results in a closer approximation of cross-traffic,
where user behaviours are modeled by well-defined parameters
for source inputs (e.g., request sizes for HTTP), 
destination inputs (e.g., response
size), and think times between pairs of source 
and destination inputs.  
By setting appropriate parameters for the traffic generator,
we can emulate non-greedy user-interactive traffic 
(e.g., HTTP 1.1, SMTP and Telnet) 
as well as greedy traffic (e.g., P2P and long file downloads). 
This approach models protocol reactions to the congestion caused 
by other flows in the common paths, although it fails to model the reactions 
of users themselves to the presence of the congestion. 
</t>

<t>
While the protocols being tested may differ,
it is important that we maintain the same ``load'' or level of congestion
for the experimental scenarios. 
To enable this, we use a hybrid of open-loop and close-loop approaches.
For this test suite, network traffic consists of sessions corresponding to individual users.
Because users are independent, these session arrivals are well modeled by an
open-loop Poisson process.  A session may consist of a single greedy
TCP flow, multiple greedy flows separated by user ``think'' times, or a single 
non-greedy flow with embedded think times. 
The session arrival process forms a Poisson process&nbsp;<xref target="HVA03"/>.
Both the think times and burst sizes have heavy-tailed distributions, with 
the exact
distribution based on empirical studies.  The think times and
burst sizes will be chosen independently.  This is unlikely to be the case in
practice, but we have not been able to find any measurements of the joint
distribution.  We invite researchers to study this joint distribution, and
future revisions of this test suite will use such statistics when they are
available.
</t>

<t>
There are several traffic generators available that implement a similar approach
to that discussed above. For now, we are planning to use the
Tmix&nbsp;<xref target="Tmix"/> traffic generator. 
Tmix represents each TCP connection by a connection vector
consisting of a sequence of (request-size, response-size, think-time) triples,
thus representing bi-directional traffic.
Connection vectors used for traffic generation can be obtained from Internet traffic traces. 
By taking measurement from various points of the Internet such as
campus networks, DSL access links, and IPS core backbones, we can obtain sets of
connection vectors for different levels of congested links. We plan to publish these
connection vectors as part of this test suite. 
A draft set of connection vectors is avilable at
<eref target="http://wil.cs.caltech.edu/suite/TrafficTraces.php"/>.


<!---------------------------->
</t>
<section title="Loads">
<t>
For most current traffic generators, the traffic is specified by an 
arrival rate for independent user sessions, along with specifications of
connection sizes, number of connections per sessions, user wait
times within sessions, and the like. 
For many of the scenarios, such as the basic scenarios in 
<xref target="sec:General"/>, each scenario is run for a range of loads,
where the load is varied by varying the
rate of session arrivals.  
For a given congestion control mechanism,
experiments run with different loads are likely
to have different packet drop rates, and different
levels of statistical multiplexing.
</t>

<t>
Because the session arrival times
are specified independently of the transfer times, one way to specify the
load would be as
    A = E[f]/E[t],
where &nbsp;E[f]&nbsp; is the mean session size (in bits transferred), 
&nbsp;E[t]&nbsp; is the mean session inter-arrival time in seconds, 
and  &nbsp;A&nbsp;  is the load in bps.
</t>

<t>
It is important to test congestion control in ``overloaded'' conditions.
However, if  &nbsp;A>c&nbsp;,  where &nbsp;c&nbsp; is the capacity of the bottleneck link,
then the system has no equilibrium.  Such cases are studied in
<xref target="sec:transient"/>.  In long-running experiments with &nbsp;A>c&nbsp;, 
the expected
number of flows would
increase without bound.  This means that the measured results would be very
sensitive to the duration of the simulation.
</t>

<t>
Instead, for equilibrium experiments, we measure the load as the
``mean number of jobs in an M/G/1 queue using processor sharing,'' where a job
is a user session.  This reflects the fact that TCP
aims at processor sharing of variable sized files.  Because processor sharing
is a symmetric discipline&nbsp;<xref target="Kelly79"/>, the mean number of flows is equal to
that of an M/M/1 queue, namely &nbsp;rho/(1-rho)&nbsp;, where
&nbsp;rho=lambda S/C&nbsp;, and &nbsp;lambda&nbsp; [flows per second] is the arrival rate of
jobs/flows, &nbsp;S&nbsp; [bits] is the mean job size and &nbsp;C&nbsp; [bits per second]
is the bottleneck capacity.
For small loads, say 10%,
this is essentially equal to the fraction of the capacity.  However, for
overloaded systems, the fraction of the bandwidth used will be much less than
this measure of load.
</t>

<t>
In order to improve the traffic generators used in these scenarios,
we invite researchers to explore how the user behavior, as reflected 
in the connection sizes, user wait times, and number
of connections per session,
might be affected by the level of congestion experienced
within a session&nbsp;<xref target="RMC03"/>.  
</t>
</section>
<section title="Equilibrium">
<t>
In order to minimize the dependence of the results on the experiment durations,
scenarios should be as stationary as possible.  To this end, experiments will
start with &nbsp;rho/(1-rho)&nbsp; active cross-traffic flows,
with traffic of the specified load.
</t>
<t>
|* This is insufficient if the traces have very long pauses between bursts,
because this initial loading has all finished by the time the number of actual
tmix sessions builds up.  It may be better to start with several (many?)
pre-existing connection vectors instead of greedy sources. |
</t>
<t>
|*It is still an open issue whether to use tests with &nbsp;rho>1&nbsp;.
If such tests are used, the initial number of flows will need to be
defined.|
</t>

<t>
Note that the distribution of the durations of the active flows at a given time
is (often significantly) different from the distribution of flow durations,
skewed toward long flows.  For simplicity, this will be ignored and the
initial flow sizes will be drawn from the general flow size distribution.

<!---------------------------->
</t>
</section>
<section title="Packet size distribution">
<t>
For flows generated by the traffic generator, 10% use 536-byte packets,
and 90% 1500-byte packets.  The packet size of each flow will be
specified along with the start time and duration, to maximize the
repeatability.
</t>
</section>
<section anchor="sec:RTTs" title="Round Trip Times">
<t>
Most tests use a simple dumbbell
topology with a central link that connects two routers, as illustrated in
<xref target="General-dumbbell"/>. Each router is connected to three nodes by edge links.
In order to generate a typical range of round trip times,
edge links have different delays.
On one side, the one-way propagation delays are: 0&nbsp;ms, 12&nbsp;ms and 25&nbsp;ms;
on the other: 2&nbsp;ms, 37&nbsp;ms, and 75&nbsp;ms.
Traffic is uniformly shared among the nine source/destination pairs,
giving a distribution of per-flow RTTs in the absence of queueing delay
shown in <xref target="tab:RTTs"/>. 
These RTTs are computed for a dumbbell topology with a delay of 0 ms
for the central link.
The delay for the central link is given in the specific scenarios
in the next section.
 
<figure anchor="General-dumbbell">
<artwork>
<![CDATA[
Node 1                                                      Node 4
       \_                                                _/
         \_                                            _/
           \_ __________   Intermediate   __________ _/
             |          |     link       |          |
Node 2 ------| Router 1 |----------------| Router 2 |------ Node 5
            _|__________|                |__________|_
          _/                                          \_
        _/                                              \_
Node 3 /                                                  \ Node 6
]]>
</artwork>
<postamble>A dumbbell topology</postamble>
</figure>

For dummynet experiments, delays can be obtained by specifying the delay 
of each flow. 

<figure anchor="tab:RTTs">
<artwork>
<![CDATA[
         ------------------------------------------
         | Path | RTT || Path | RTT || Path | RTT |
         |------+-----++------+-----++------+-----|
         | 1-4  | 4   || 1-5  | 74  || 1-6  | 150 |
         | 2-4  | 28  || 2-5  | 98  || 2-6  | 174 |
         | 3-4  | 54  || 3-5  | 124 || 3-6  | 200 |
         ------------------------------------------
]]>
</artwork>
<postamble>RTTs of the paths between two nodes, in milliseconds.
|* These RTTs are subject to change, based on comparison between the resulting
packet-weighted RTT distribution and measurements|
|* I'd like to change the RTT 1-4 to 3ms or 5ms instead of 4ms... -- LA|
</postamble>
</figure>
</t>
</section>
</section>

<section title="Scenarios">
<t>
It is not possible to provide TCP researchers with a complete set of scenarios 
for
an exhaustive evaluation of a new TCP extension; especially because the
characteristics of a new extension will often require experiments with specific
scenarios that highlight its behavior. On the other hand, an
exhaustive evaluation of a TCP extension will need to include several
standard scenarios, and it is the focus of the test suite described
in this section to define this initial set of test cases.

<!---------------------------->
</t>
<section anchor="sec:General" title="Basic scenarios">
<t>
The purpose of the basic scenarios is to explore the behavior of a TCP
extension over different link types. The scenarios use the dumbbell topology of
<xref target="sec:RTTs"/>, with the link delays modified as specified below.
</t>

<t>
This basic topology is used to instantiate several basic scenarios, by appropriately choosing capacity and delay parameters for the individual links. Depending on the configuration, the bottleneck link may be in one of the edge links or the central link. 

</t>
<section title="Topology and background traffic">
<t>
The basic scenarios are for a single topology, with a range of capacities and
RTTs.  For each scenario, traffic levels of uncongested, mild congestion, and
moderate congestion are specified; these are explained below.
</t>

<t>
|*Data Center:|  The data center scenario models a case where bandwidth is plentiful and link delays are generally low. It uses the same configuration for the central link and all of the edge links. 
All links have a capacity of either
1&nbsp;Gbps, 2.5&nbsp;Gbps or 10&nbsp;Gbps; links from nodes 1, 2 and&nbsp;4 have a one-way
propagation delay of 1&nbsp;ms, while those from nodes 3, 5 and&nbsp;6 have
10&nbsp;ms&nbsp;<xref target="WCL05"/>, and the common link has 0&nbsp;ms delay.
</t>

<t>
Uncongested:         TBD &nbsp; &nbsp;
Mild congestion:     TBD &nbsp; &nbsp;
Moderate congestion: TBD
</t>

<t>
|*Access Link:|  The access link scenario
models an access link connecting an institution (e.g., a university
or corporation) to an ISP.  The central and edge links are all 100&nbsp;Mbps. 
The one-way propagation delay of the central link is 2&nbsp;ms, while the edge links
have the delays given in <xref target="sec:RTTs"/>.  Our goal in assigning delays
to edge links is only to give a realistic distribution of
round-trip times for traffic on the central link.
</t>

<t>
Uncongested:         TBD &nbsp; &nbsp;
Mild congestion:     TBD &nbsp; &nbsp;
Moderate congestion: TBD
</t>

<t>
|*Trans-Oceanic Link:|  The trans-oceanic scenario
models a test case where mostly lower-delay edge links feed into a high-delay
central link. 
The central link is 1&nbsp;Gbps, with a one-way propagation delay of 65&nbsp;ms. 
The edge links have the same bandwidth as the central link, with
the one-way delays given in <xref target="sec:RTTs"/>. 
An alternative would be to use smaller delays for the edge links,
with one-way delays for each set of three edge links of 5, 10, and 25&nbsp;ms.
|*Implementations may use a smaller bandwidth for the trans-oceanic link,
for example to run a simulation in a feasible amount of time.
In testbeds, one of the metrics should be the number of timeouts in
servers, due to implementation issues when running at high speed.|
<!--Cesar knows of transoceanic links with one-way delay of 50 ms and 65 ms 
   respectively - Sally.
 From Melbourne to LA is 85 ms one way - email from Lachlan. -->
</t>

<t>
Uncongested:         TBD &nbsp; &nbsp;
Mild congestion:     TBD &nbsp; &nbsp;
Moderate congestion: TBD
</t>

<t>
|*Geostationary Satellite:|  The geostationary
satellite scenario models an asymmetric test case with a high-bandwidth
downlink and a low-bandwidth uplink
<xref target="HK99"/>, <xref target="GF04"/>. The capacity of the
central link is 40&nbsp;Mbps with a one-way propagation delay of 300&nbsp;ms.
The downlink
capacity of the edge links is also 40&nbsp;Mbps, but their uplink capacity
is only 4&nbsp;Mbps.
<!--Why are the \emph{edged} links asymmetric?  It would be easier if it
were just the central (satellite) link. -->
Edge one-way delays are as given in <xref target="sec:RTTs"/>.
Note that ``downlink'' is towards the router for edge links attached to the
first router, and away from the router for edge links on the other router.
</t>

<t>
Uncongested:         TBD &nbsp; &nbsp;
Mild congestion:     TBD &nbsp; &nbsp;
Moderate congestion: TBD
</t>

<t>
|*Wireless Access:|  The wireless access scenario
models wireless access to the wired backbone.
The capacity of the central link is 100&nbsp;Mbps with 2&nbsp;ms 
of one-way
delay. All links to Router&nbsp;1 are wired. Router&nbsp;2 has a shared wireless link of
nominal bit rate 11&nbsp;Mbps (to
model IEEE&nbsp;802.11b links) or 54&nbsp;Mbps (IEEE&nbsp;802.11a/g) with
a one-way delay of 1us connected to dummy nodes 4', 5' and 6',
which are then connected to nodes 4, 5 and 6 by wired links of delays
2, 37 and
75&nbsp;ms.  This is to achieve the same RTT distribution as the other scenarios,
while allowing a CSMA model to have realistic delay for a WLAN.
</t>

<t>
Note that wireless links have many other unique properties not captured by
delay and bitrate.  
In particular, the physical layer might suffer from propagation effects
that result in packet losses, and the MAC layer might add high
jitter under contention or large steps in bandwidth due to adaptive
modulation and coding.
Specifying these properties is beyond the scope of
the current first version of this test suite.
</t>

<t>
Uncongested:         TBD &nbsp; &nbsp;
Mild congestion:     TBD &nbsp; &nbsp;
Moderate congestion: TBD
</t>

<t>
|*Dial-up Link:|
The dial-up link scenario models a network with
a dial-up link of 64&nbsp;kbps and a one-way delay of 5&nbsp;ms for the central
link.
|*modems are asymmetric, 56k downlink and 33.6k or 48k uplink.
Should we change this?|
This could be thought of as modeling a scenario reported as typical
in Africa, with many users sharing a single low-bandwidth dial-up
link.
</t>

<t>
Uncongested:         TBD &nbsp; &nbsp;
Mild congestion:     TBD &nbsp; &nbsp;
Moderate congestion: TBD
</t>

<t>
|*Traffic:|
For each of the basic scenarios, three cases are tested:
uncongested; mild congestion, and moderate congestion.
All cases will use scaled versions of the traces
available at &lt;http://wil.cs.caltech.edu/suite&gt;.
|*The exact traffic loads and run times
for each scenario still need to be agreed upon.
There is ongoing debate about whether &nbsp;rho>1&nbsp; is needed
to get moderate to high congestion.  If &nbsp;rho>1&nbsp; is used, note that the
results will depend heavily on the run time, because congestion
will progressively build up.  In those cases, metrics which consider this
non-stationarity may be more useful than average quantities.|
In the default case, the reverse path has
a low level of traffic (10% load). 
The buffer size at the two routers is set to the maximum
bandwidth-delay-product for a 100&nbsp;ms flow 
(i.e., a maximum queueing delay of 100&nbsp;ms),
with drop-tail queues in units of packets.
Each run will be for at least a hundred seconds, and the metrics will
not cover the initial warm-up times of each run.
(Testbeds might use longer run times, as should simulations with smaller
bandwidth-delay products.)
</t>

<t>
As with all of the scenarios in this document, the basic scenarios
could benefit from more measurement studies about characteristics
of congested links in the current Internet, and about trends
that could help predict the characteristics of congested links in
the future.
This would include more measurements on typical packet drop rates,
and on the range of round-trip times for traffic on congested links.
</t>

<t>
For the access link scenario, more extensive simulations or
experiments will be run, 
with both drop-tail and RED queue management, with
drop-tail queues in units of both bytes and packets,
and with RED queue management both in byte mode and in packet mode.
Specific TCP extensions may require the
evaluation of associated AQM mechanisms. 
For the access link scenario, simulations or experiments will
also include runs with a reverse-path load equal to the
forward-path load.
For the access link scenario, additional experiments will
use a range of buffer sizes, including 20% and 200% of the
bandwidth-delay product for a 100&nbsp;ms flow.

</t>
</section>
<section title="Flows under test">
<t>
For this basic scenario, there is no differentiation between
``cross-traffic'' and the ``flows under test''.  The aggregate traffic is
under test, with the metrics exploring both
aggregate traffic and distributions of flow-specific metrics.

</t>
</section>
<section title="Outputs">
<t>
For each run, the following metrics will be collected,
for the central link in each direction: the aggregate link utilization, the average packet drop rate,
and the average queueing delay, all over the second half of the run.
|*This metric could be difficult to gather in emulated testbeds since routers
statistics of queue utilization are not always reliable and depend on
time-scale.|
Separate statistics should be reported for each direction in the satellite and
wireless access scenarios, since those networks are asymmetric.

|*Should "over the second half of the run" be "starting after 50s"?  Sally used
the second half of the run, for 100s simulations, but we to get non-random
results, we should run for longer.  The warm-up time doesn't need to scale up
with the run length.|
</t>

<t>
Other metrics of interest for general
scenarios can be grouped in two sets: flow-centric and stability. The
flow-centric metrics include the sending rate, good-put, cumulative loss and
queueing delay trajectory for each flow, over time,
and the transfer time per flow versus file size.
|*Testbeds could use monitors in the TCP layer (e.g., Web100) to estimate
the queueing delay and loss.|
|*NS2 flowmon has problems, because it seems not to release memory associated
with terminated flows. |
Stability properties of interest include the
standard deviation of the throughput and the queueing delay for the
bottleneck link and for flows&nbsp;<xref target="WCL05"/>. The worst case stability is also considered.
<!---------------------------->
</t>
</section>
</section>
<section title="Delay/throughput tradeoff as function of queue size">
<t>
Different queue management mechanisms
have different delay-throughput tradeoffs. E.g., Adaptive Virtual
Queue&nbsp;<xref target="KS01"/> gives low delay, at the expense of lower throughput.
Different congestion control mechanisms may have different tradeoffs,
which these tests aim to illustrate.

</t>
<section title="Topology and background traffic">
<t>
These tests use the topology of <xref target="sec:RTTs"/>.
This test is run for the access link scenario in 
<xref target="sec:General"/>.
</t>

<t>
For each Drop-Tail scenario set, five tests are run, with buffer sizes of
10%, 20%, 50%, 100%, and 200% of the Bandwidth Delay Product (BDP)
for a 100&nbsp;ms flow. For each AQM scenario (if used), five tests are run,
with a target average queue size of 2.5%, 5%, 10%, 20%, and 50%
of the BDP, with a buffer equal to the BDP.

</t>
</section>
<section title="Flows under test">
<t>
The level of traffic from the traffic generator
will be specified 
so that when a buffer size of 100% of the BDP is used with
Drop Tail queue management, there is a moderate level of congestion
(e.g., 1-2% packet drop rates when Standard TCP is used). Alternately,
a range of traffic levels could be chosen, with a scenario set run for
each traffic level (as in the examples cited below).

</t>
</section>
<section title="Outputs">
<t>
For each test, three figures are kept, the average throughput, the average
packet drop rate, and the average queueing delay over the second half
of the test.
</t>

<t>
For each set of scenarios, the output is two graphs. For the
delay/bandwidth graph, the x-axis shows the average queueing delay,
and the y-axis shows the average throughput. For the drop-rate graph,
the x-axis shows the average queueing delay, and the y-axis shows
the average packet drop rate. Each pair of graphs illustrates the
delay/throughput/drop-rate tradeoffs for this congestion control
mechanism. For an AQM mechanism, each pair of graphs also illustrates
how the throughput and average queue size vary (or don't vary) as a
function of the traffic load. Examples of delay/throughput tradeoffs appear in Figures 1-3 of&nbsp;<xref target="FS01"/>
and Figures 4-5 of&nbsp;<xref target="AHM08"/>.

<!---------------------------->
</t>
</section>
</section>
<section anchor="sec:convergence" title="Ramp up time: completion time of one flow">
<t>
These tests aim to determine how quickly existing flows make room for new flows.
</t>
<section title="Topology and background traffic">
<t>
Dumbbell.  At least three capacities should be used, as close as possible to:
56&nbsp;kbps, 10&nbsp;Mbps and 1&nbsp;Gbps.  The 56&nbsp;kbps case is included to
investigate the performance using mobile handsets.
</t>

<t>
For each capacity, three RTT scenarios should be tested, in which the existing
and newly arriving flow have RTTs of (74&nbsp;ms, 74&nbsp;ms), (124&nbsp;ms, 28&nbsp;ms) and
(28&nbsp;ms, 124&nbsp;ms).
|*Was (80,80), (120,30), (30,120), but the above are taken from Table 1 to
simplify implementation.  OK? |
</t>

<t>
Throughout the experiment, there is also 10% bidirectional cross traffic,
as described in <xref target="sec:crossTraffic"/>, using the mix of RTTs described
in <xref target="sec:RTTs"/>.  All traffic is from the new TCP extension.
</t>
</section>
<section title="Flows under test">
<t>
Traffic is dominated by two long lived flows, because we believe that to be the
worst case, in which convergence is slowest.
</t>

<t>
One flow starts in ``equilibrium'' (at least having finished
normal slow-start).  A new flow then starts; slow-start is disabled by setting
the initial slow-start threshold to the initial CWND.  Slow start is disabled
because this is the worst case, and could happen if
a loss occurred in the first RTT.

|* Roman Chertov has suggested doing some tests with slow start enabled too.
Will there be time?  Wait until initial NS2 implementation is available to
test |
</t>

<t>
The experiment ends once the new flow has run for five minutes.
Both of the flows use 1500-byte packets.

</t>
</section>
<section title="Outputs">
<t>
The output of these experiments are the time until the &nbsp;1500(10^n)&nbsp;th byte of
the new flow is received, for &nbsp;n = 1,2,...&nbsp;.  This measures how quickly the
existing flow releases capacity to the new flow, without requiring a definition
of when ``fairness'' has been achieved.  By leaving the upper limit on &nbsp;n&nbsp;
unspecified, the test remains applicable to very high-speed networks.
</t>

<t>
A single run of this test cannot achieve
statistical reliability by running for a long time.  Instead, an average over
at least three runs should be taken.  Each run must use different
cross traffic, as specified in <xref target="sec:crossTraffic"/>.

<!---------------------------->
</t>
</section>
</section>
<section anchor="sec:transient"
         title="Transients: release of bandwidth, arrival of many flows">
<t>

These tests investigate the impact of a sudden change of congestion level.
They differ from the "Ramp up time" test in that the congestion here is caused
by unresponsive traffic.

</t>
<section title="Topology and background traffic">
<t>
The network is a single bottleneck link, with bit
rate 100&nbsp;Mbps, with a buffer of 1024 packets (120% BDP at 100&nbsp;ms).
</t>

<t>
The transient traffic is generated using UDP, to avoid overlap with the
scenario of <xref target="sec:convergence"/> and isolate the behavior of the flows
under study.
Three transients are tested:
<list style="numbers">
<t> step decrease from 75&nbsp;Mbps to 0&nbsp;Mbps, </t>
<t> step increase from 0&nbsp;Mbps to 75&nbsp;Mbps, </t>
<t> 30 step increases of 2.5&nbsp;Mbps at 1&nbsp;s intervals,
simulating a ``flash crowd'' effect. </t>
</list>
These transients occur after the flow under test has exited slow-start, and
remain until the end of the experiment.
</t>

<t>
There is no TCP cross traffic
as described in <xref target="sec:crossTraffic"/>
in this experiment. 
because flow arrivals/departures occur on timescales long compared with these effects.

</t>
</section>
<section title="Flows under test">
<t>
There is one flow under test: a long-lived flow in the same direction as the
transient traffic, with a 100&nbsp;ms RTT.

</t>
</section>
<section title="Outputs">
<t>
For the decrease in cross traffic, the metrics are
(i)&nbsp;the time taken for the
flow under test to increase its window to 60%, 80% and 90% of its BDP, and
(ii)&nbsp;the maximum
change of the window in a single RTT while the window is increasing to that
value.
</t>

<t>
For cases with an increase in cross traffic, the metric is
the number of packets dropped by the cross traffic from the start of the
transient until 100&nbsp;s after the transient.  This measures the harm caused by
algorithms which reduce their rates too slowly on congestion.

<!--
\ignore{
%</t>
</section>
<section anchor="Preliminary remark" title="Preliminary Remark">
<t>
%The scenarios that are defined in this article are designed to be executed both as simulations (e.g., in NS-2 or instrumented testbeds) or as experiments in real networks. In the latter case, it might occur that some metrics used are not suited for real life experiments, especially in high-speed networks where the classical methods to inspect flows at packet level (e.g., tcpdump) are not able to keep up with the packet rates. We then should define alternate metrics based on the completion time that can be easily measured in high-speed environments (for instance completion time), allowing to capture similar properties of the congestion control mechanism we want to evaluate.

</t>
</section>
<section title="Definitions">
<t>
This scenario investigates the impact of a sudden change
of congestion level on a given congestion control method. The congestion level
is defined as the proportion of the bottleneck capacity (C) that tries to be
used by concurrent traffic. Mild congestion, for instance, corresponds to cases
where only a small fraction of the bottleneck is used by background traffic
(e.g., 0.1*C).
</t>

<t>
A sudden change of congestion level is defined using three parameters: 
<list style="numbers">
<t> rate range, describing the maximum range in terms of congestion level that will be reached by the transient event;</t>
<t> duration range, describing the duration in seconds of the transient event;</t>
<t> shape, describing the way the transient event occur. It can be anything ranging from a instantaneous rise, a step function or a peak.  </t>
</list>

A increasing transient event is a transient event where the congestion level is increasing. A decreasing transient event is a transient event where the congestion level is decreasing. 
</t>

<t>

In this scenario, we are only considering the effect of a transient event on a congestion control mechanism, which is why the flow involved in this scenario should be out of the slow-start phase and in steady state.

</t>
</section>
<section title="Scenario description">
<t>
We are considering a file transfer of &nbsp;V&nbsp; amount of data by
between a single pair of end-nodes with a &nbsp;C_a&nbsp; capacity, under
a given &nbsp;RTT&nbsp; and &nbsp;C&nbsp; capacity bottleneck. Additional
pairs of nodes are used to generate cross-traffic and congestion.
&nbsp;T_transient&nbsp; is the time at which the transient event
occurs. It is defined as the time necessary to transfer a given portion
of &nbsp;V&nbsp; (e.g., 10%). To have an absolute time scale, we choose
to set &nbsp;T_transient&nbsp; to 10&nbsp;s. In this case, &nbsp;V&nbsp;
value can be set to e.g., &nbsp;100*max(C,C_a)&nbsp;.


%% include figure to describe this instead
%% express V as a function of the RTT, cwnd ?

We note &nbsp;V_before&nbsp; (resp. &nbsp;V_after&nbsp;) the
date volume transfered before (resp. after) the transient event
occurred. &nbsp;R_before&nbsp; (resp. &nbsp;R_after&nbsp;)
corresponds to the average transfer rate before (resp. after) the
transient event. &nbsp;T_real&nbsp; is the time necessary to perform
&nbsp;T_ref&nbsp;, the time needed to perform the same transfer without
perturbation.
</t>

<t>
The transient shapes that are considered in this scenario are the following:

<list style="numbers">
<t> instantaneous increase, </t>
<t> instantaneous decrease, </t>
<t> successive increase of &nbsp;n&nbsp; regular steps, simulating a ``flash crowd'' effect. </t>
</list>

The duration of the transient events is infinite (i.e., last for the rest of the scenario). The rate of the transient events  
The transient events are generated using UDP flows with the same RTT as the file transfer. UDP flows are used instead TCP flows to avoid interactions with intra or inter-fairness between TCP flows. The congestion level generated by these flows is around 100% of the bottleneck capacity.

</t>
</section>
<section title="Metrics">
<t>
The following metrics taken from&nbsp;<xref target="TMRGMetrics"/>, <xref target="Transient"/> are used to capture the effect of the transient event on the congestion level:

<list style="symbols">
<t> Smoothness: the maximum reduction that occurs in one RTT after an increasing transient event</t>
<t> Aggressiveness: the maximum increase that occurs in one RTT after an decreasing transient event</t>
</list>

To avoid measurements problems in high-speed test-beds as stated in <xref target="Preliminary remark"/>,
we also add the Adaptation Cost metric, the relative cost of having a transient event during a transfer, expressed using completion times. With the previous definitions, the adaptation cost could be expressed as
</t>
<t>
cost = (T_real/T_ref) - (R_before/R_after) - (V_before/T_ref)*(1/R_before) + 1/R_after.

}
-->


<!---------------------------->
</t>
</section>
</section>
<section title="Impact on standard TCP traffic">
<t>
Many new TCP proposals achieve a gain, &nbsp;G&nbsp;, in their own throughput at the
expense of a loss, &nbsp;L&nbsp;, in the throughput of standard TCP flows sharing a
bottleneck, as well as by increasing the link utilization.
In this context a "standard TCP flow" is defined as a flow using
<xref target="RFC2883">SACK TCP</xref>, but without
<xref target="RFC3168">ECN</xref>.
|*What about: |
<xref target="RFC1323">Window scaling</xref> (yes),
<xref target="RFC4138">FRTO</xref> (yes),
<xref target="RFC3465">ABC</xref> (no)?

The intention is for a "standard TCP flow" to correspond to
TCP as commonly deployed in the Internet today (with the notable exception of
CUBIC, which runs by default on the majority of web servers).
This scenario quantifies this tradeoff.

</t>
<section title="Topology and background traffic">
<t>
The dumbbell of <xref target="sec:RTTs"/> is used with the same capacities as for the
convergence tests (<xref target="sec:convergence"/>).
All traffic in this scenario comes from the flows under test.

</t>
</section>
<section title="Flows under test">
<t>
The scenario is performed by conducting pairs of experiments, with identical
flow arrival times and flow sizes.  Within each experiment, flows are divided
into two camps.  For every flow in camp&nbsp;A, there is a flow with the same
size, source and destination in camp&nbsp;B, and vice versa.  The start time of the
two flows are within 2&nbsp;s.
</t>

<t>
The file sizes and start times
are as specified in <xref target="sec:crossTraffic"/>, with start times scaled to
achieve loads of 50% and 100%.  In addition, both camps have a long-lived
flow.  The experiments last for 1200 seconds.
</t>

<t>
In the first experiment, called BASELINE, both camp&nbsp;A and camp&nbsp;B use standard
TCP.  In the second, called MIX, camp&nbsp;A uses standard TCP and camp&nbsp;B uses the
new TCP extension.
</t>

<t>
The rationale for having paired camps is to remove the statistical uncertainty
which would come from randomly choosing half of the flows to run each
algorithm.  This way, camp&nbsp;A and camp&nbsp;B have the same loads.

</t>
</section>
<section title="Outputs">
<t>
The gain achieved by the new algorithm and loss incurred by standard TCP
are given by &nbsp;G=T(B)_Mix/T(B)_Baseline&nbsp; and
&nbsp;L=T(A)_Mix/T(A)_Baseline&nbsp;
where &nbsp;T(x)&nbsp; is the throughput obtained by camp &nbsp;x&nbsp;,
measured as
the amount of data acknowledged by the receivers (that is, ``goodput''),
and taken over the last 8000 seconds of the experiment.
</t>

<t>
The loss, &nbsp;L&nbsp;, is analogous to the ``bandwidth stolen from TCP'' in&nbsp;<xref target="SA03"/>
and ``throughput degradation'' in&nbsp;<xref target="SSM07"/>.
</t>

<t>
A plot of &nbsp;G&nbsp; vs &nbsp;L&nbsp; represents the tradeoff between
efficiency and loss.
</t>
</section>

<section title="Suggestions">
<t>
Other statistics of interest are the values of &nbsp;G&nbsp; and &nbsp;L&nbsp; for each quartile of
file sizes.  This will reveal whether the new proposal is more aggressive in
starting up or more reluctant to release its share of capacity.
</t>

<t>
As always, testing at other loads and averaging over multiple runs are
encouraged.

<!---------------------------->
</t>
</section>
</section>
<section title="Intra-protocol and inter-RTT fairness">
<t>
These tests aim to measure bottleneck bandwidth sharing
among flows of the same protocol with the same RTT, which represents
the flows going through the same routing path.   
The tests also measure inter-RTT fairness, the 
bandwidth sharing among flows 
of the same protocol where routing paths have a common 
bottleneck segment but might have different overall paths 
with different RTTs. 

</t>
<section title="Topology and background traffic">
<t>
The topology, the capacity and cross traffic
conditions of these tests are the same as in <xref target="sec:convergence"/>. 
The bottleneck buffer is varied from 25% to 200% BDP for a 100&nbsp;ms flow,
increasing by factors of 2.

</t>
</section>
<section title="Flows under test">
<t>
We use two flows of the same protocol for this experiment. 
The RTTs of the flows range from 10&nbsp;ms to 160&nbsp;ms
(10&nbsp;ms, 20&nbsp;ms, 40&nbsp;ms, 80&nbsp;ms, and 160&nbsp;ms)
such that the ratio of the minimum
RTT over the maximum RTT is at most 1/16.
|*In case a testbed doesn't support up to 160&nbsp;ms RTT, the RTTs may
be scaled down in proportion to the maximum RTT supported in that environment.|
</t>

<t>
Intra-protocol fairness: For each run, two flows with the same RTT, 
taken from the range of RTTs above start randomly within the first 10% of the experiment.
The order in which these flows start doesn't matter. An additional test of interest,
but not part of this suite, would involve two extreme cases - 
two flows with very short or long RTTs 
(e.g., the delay less then 1-2&nbsp;ms represents communication happen in the data-center 
and the delay larger than 600&nbsp;ms considers communication over satellite).
</t>

<t>
Inter-RTT fairness: For each run, one flow with a fixed RTT of 160&nbsp;ms starts first, 
and another flow with a different RTT taken from the range of RTTs above, joins afterward.
The starting times of both two flows are randomly chosen within 
the first 10% of the experiment as before. 

</t>
</section>
<section title="Outputs">
<t>
The output of this experiment is the ratio of the average throughput 
values of the two flows.  The output also includes the packet drop rate
for the congested link.

<!---------------------------->
</t>
</section>
</section>
<section title="Multiple bottlenecks">
<t>
These experiments explore the relative bandwidth for a flow
that traverses multiple bottlenecks, and flows with the same round-trip time
that each traverse only one of the bottleneck links.

</t>
<section title="Topology and background traffic">
<t>
The topology is a ``parking-lot'' topology with
three (horizontal) bottleneck links and four (vertical) access links.
The bottleneck links have a rate of 100&nbsp;Mbps,
and the access links have a rate of 1&nbsp;Gbps. 
</t>

<t>

All flows have a round-trip time of 60&nbsp;ms, to enable the effect
of traversing multiple bottlenecks to be distinguished from that
of different round trip times.  This can be achieved as in
<xref target="fig:multihop-asymmetric"/> by (a)&nbsp;the second access link
having a one-way delay of 30&nbsp;ms (b)&nbsp;the bottleneck link to which
it does not connect having a one-way delay of 30&nbsp;ms and (c)&nbsp;all
other links having negligible delay.  This can be extended to more than
three bottlenecks as shown in <xref target="fig:multihop-continued"/>, by
assigning a delay of 30&nbsp;ms to every alternate access link, and to
zero or one of the bottleneck links.)

For the special case of three hops, an alternative is for all links to have
a one-way delay of 10&nbsp;ms, as shown in <xref target="fig:multihop-symmetric"/>.
It is not clear whether there are interesting performance differences between
these two topologies, and if so, which is more typical of the actual internet.
</t>

<figure anchor="fig:multihop-asymmetric">
<artwork>
<![CDATA[
 > - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - >
  _____ 100M 0ms ____________ 100M 0ms _____________ 100M 30ms ____
 |   ................  |   ................  |   ................  |
1G   :              : 1G   :              : 1G   :              : 1G
 |   :              :  |   :              :  |   :              :  |
0ms  :              : 30ms :              : 0ms  :              : 0ms
 |   ^              V  |   ^              V  |   ^              V  |
]]>
</artwork>
<postamble>Basic multi-hop topology.</postamble>
</figure>

<figure anchor="fig:multihop-continued">
<artwork>
<![CDATA[
    -------+------+------+------+------+-------###### 
    |......#......|......#......|......#......|......|
    |:    :#:    :|:    :#:    :|:    :#:    :|:    :|
    |:    :#:    :|:    :#:    :|:    :#:    :|:    :|
    |:    :#:    :|:    :#:    :|:    :#:    :|:    :|
    |^    V#^    V|^    V#^    V|^    V#^    V|^    V|

       ### 30ms one-way       ---  0ms one-way
]]>
</artwork>
<postamble>Extension to 7-hop parking lot.  (Not part of the basic test
suite.)</postamble>
</figure>

<figure anchor="fig:multihop-symmetric">
<artwork>
<![CDATA[
 > - - - - - - - - - - - - - - - - - - - - - - - - - - -  - - - >
  _____ 100M 10ms __________ 100M 10ms ___________ 100M 10ms ___ 
 |   ...............  |   ...............  |   ...............  |
1G   :             : 1G   :             : 1G   :             : 1G
 |   :             :  |   :             :  |   :             :  |
10ms :             : 10ms :             : 10ms :             : 10ms
 |   ^             V  |   ^             V  |   ^             V  |
]]>
</artwork>
<postamble>Alternative highly symmetric multi-hop topology.</postamble>
</figure>

<t>
Throughout the experiment, there is 10% bidirectional cross traffic on
each of the three bottleneck links,
as described in <xref target="sec:crossTraffic"/>. 
The cross-traffic flows all traverse two access links and a single
bottleneck link.
</t>

<t>
All traffic uses the new TCP extension.

</t>
</section>
<section title="Flows under test">
<t>
In addition to the cross-traffic,
there are four flows under test, all with traffic in the same direction
on the bottleneck links.
The multiple-bottleneck flow
traverses no access links and all three bottleneck links.
The three single-bottleneck flows each traverse two access links
and a single bottleneck link, with one flow for each bottleneck link.
The flows start in quick
succession, separated by approximately 1&nbsp;second.  These flows last at least
5&nbsp;minutes.
</t>

<t>
An additional test of
interest would be to have a longer, multiple-bottleneck flow 
competing against shorter single-bottleneck flows.

</t>
</section>
<section title="Outputs">
<t>
The output for this experiment is the ratio between the average
throughput of the single-bottleneck flows and the 
throughput of
the multiple-bottleneck flow, measured over the second half of the experiment.
Output also includes the packet drop rate for the congested link.
</t>
</section>
</section>

<section anchor="sec:impl" title="Implementations">
<t>
There are two on-going implementation efforts.
</t>
<t>
A testbed implementation is jointly being developed by the Centre for Advanced
Internet Architectures (CAIA) at Swinburne University of technology and by
Netlab at Caltech.  It will eventually be available for public use through the
web interface <eref
target="http://wil-ns.cs.caltech.edu/testing/benchmark/tmrg.php"/>.
</t>
<t>
A simulation implementation in ns is being developed by NEC Labs, China.
Contributions can be made via its source forge page,
<eref target="http://sourceforge.net/projects/tcpeval/"/>.
</t>
</section>

<section anchor="sec:conc" title="Conclusions">
<t>
An initial specification of an evaluation suite
for TCP extensions has been described.  Future versions will include: detailed
specifications, with modifications for simulations
and testbeds; more measurement results about
congested links in the current Internet; alternate
specifications; and specific sets of scenarios that can be run in
a plausible period of time in simulators and testbeds, respectively.
</t>

<t>
Several software and hardware implementations of these tests are being
developed for use by the community.
An implementation is being developed on WAN-in-Lab&nbsp;<xref target="LATL07"/>, which will allow
users to upload Linux kernels via the web and will run tests similar to those
described here.  Some tests will be modified to suit the hardware available in
WAN-in-Lab.  An NS-2 implementation is also being developed at NEC.  We invite
others to contribute implementations on other simulator platforms, such as
OMNeT++ and OpNet.
</t>
</section>

<section title="Acknowledgements">
<t>
This work is based on a paper by
Lachlan Andrew,
Cesar Marcondes,
Sally Floyd,
Lawrence Dunn,
Romaric Guillier,
Wang Gang,
Lars Eggert,
Sangtae Ha and
Injong Rhee.
</t>

<t>
The authors would also like to thank Roman Chertov, Doug Leith, Saverio Mascolo, 
Ihsan Qazi, Bob Shorten, David Wei and Michele Weigle for valuable feedback.


</t>
</section>
</section>

        <section title="IANA Considerations">
        <t>None.</t>
        </section>

        <section title="Security Considerations">
        <t>None.</t>
        </section>
    </middle>

    <back>
	<!--
        <references title='Normative References'>&rfc2119;</references>
        <references title='Normative References'>
	    <rfc include="reference.I-D.ietf-v6ops-3gpp-analysis" ?>
	</references>
	-->
        <references title='Informative References'>
<reference anchor="FK03">
  <front>
    <title>Internet Research Needs Better Models</title>
    <author initials="S." surname="Floyd" fullname="S. Floyd">
      <organization/>
    </author>
    <author initials="E." surname="Kohler" fullname="E. Kohler">
      <organization/>
    </author>
  </front>
  <seriesInfo name="SIGCOMM Computer Communication Review (CCR)"
              value="vol. 33, no. 1, pp. 29-34, 2003"/>
</reference>

<reference anchor="MV06">
<front>
<title>The Effect of Reverse Traffic on the Performance of New TCP Congestion Control Algorithms for Gigabit Networks</title>
<author initials="S." surname="Mascolo" fullname="S. Mascolo">
  <organization/>
</author>
<author initials="F." surname="Vacirca" fullname="F. Vacirca">
  <organization/>
</author>
  </front>
  <seriesInfo name="PFLDnet" value="2006"/>
</reference>

<reference anchor="HVA03">
<front>
<title>The Impact of the Flow Arrival Process in Internet Traffic</title>
<author initials="N." surname="Hohn" fullname="N. Hohn"><organization/></author>
<author initials="D." surname="Veitch" fullname="D. Veitch"><organization/></author>
<author initials="P." surname="Abry" fullname="P. Abry"><organization/></author>
</front>
<seriesInfo name="Proc. IEEE International Conference on Acoustics, Speech, and Signal Processing (ICASSP'03)" value="vol. 6, pp. 37-40, 2003"/>
</reference>

<reference anchor="Tmix">
  <front>
  <title>Tmix: a tool for generating realistic TCP application workloads in ns-2</title>
<author initials="M.C." surname="Weigle" fullname="M. C. Weigle">
  <organization/>
</author>
<author initials="P." surname="Adurthi" fullname="P. Adurthi">
  <organization/>
</author>
<author initials="F." surname="Hernandez-Campos" fullname="F. Hernandez-Campos">
  <organization/>
</author>
<author initials="K." surname="Jeffay" fullname="K. Jeffay">
  <organization/>
</author>
<author initials="F.D." surname="Smith" fullname="F. D. Smith">
  <organization/>
</author>
  
  </front>
  <seriesInfo name="SIGCOMM Computer Communication Review (CCR)"
              value="vol. 36, no. 3,pp. 65-76, 2006"/>
</reference>

<reference anchor="Kelly79">
<front>
<title>Reversibility and stochastic networks</title>
<author initials="F.P." surname="Kelly" fullname="F. P. Kelly">
  <organization/>
</author>
</front>
<seriesInfo name="Wiley" value="1979"/>
</reference>

<reference anchor="RMC03">
<front>
<title>User Patience and the Web: a Hands-on Investigation</title>
<author initials="D." surname="Rossi" fullname="D. Rossi"><organization/></author>
<author initials="M." surname="Mellia" fullname="M. Mellia"><organization/></author>
<author initials="C." surname="Casetti" fullname="C. Casetti"><organization/></author>
</front>
<seriesInfo name="IEEE Globecom" value="2003"/>
</reference>

<reference anchor="WCL05">
<front>
<title>Time for a TCP Benchmark Suite?</title>
<author initials="D." surname="Wei" fullname="D. Wei"><organization/></author>
<author initials="P." surname="Cao" fullname="P. Cao"><organization/></author>
<author initials="S." surname="Low" fullname="S. Low"><organization/></author>
</front>
  <seriesInfo name="[Online]. Available: http://wil.cs.caltech.edu/pubs/DWei-TCPBenchmark06.ps" value="2006"/>
  <format type="PS" target="http://wil.cs.caltech.edu/pubs/DWei-TCPBenchmark06.ps"/>
</reference>

<reference anchor="HK99">
<front>
<title>Transport Protocols for Internet-Compatible Satellite Networks</title>
<author initials="T." surname="Henderson" fullname="T. Henderson">
  <organization/>
</author>
<author initials="R." surname="Katz" fullname="R. Katz">
  <organization/>
</author>
</front>
<seriesInfo name="IEEE Journal on Selected Areas in Communications (JSAC)"
            value="vol. 17, no. 2, pp. 326-344, 1999"/>
</reference>

<reference anchor="GF04">
<front>
<title>Modeling Wireless Links for Transport Protocols</title>
<author initials="A." surname="Gurtov" fullname="A. Gurtov"><organization/></author>
<author initials="S." surname="Floyd" fullname="S. Floyd"><organization/></author>
  </front>
  <seriesInfo name="SIGCOMM Computer Communication Review (CCR)" value="vol. 34, no. 2, pp.  85-96, 2004"/>
</reference>

<reference anchor="KS01">
<front>
<title>Analysis and Design of an Adaptive Virtual Queue (AVQ) Algorithm for Active Queue Management</title>
<author initials="S." surname="Kunniyur" fullname="S. Kunniyur"><organization/></author>
<author initials="R." surname="Srikant" fullname="R. Srikant"><organization/></author>
</front>
<seriesInfo name="Proc. SIGCOMM'01" value="pp.  123-134, 2001"/>
</reference>

<reference anchor="FS01">
<front>
<title>Adaptive RED: An Algorithm for Increasing the Robustness of RED</title>
<author initials="S." surname="Floyd" fullname="S. Floyd"><organization/></author>
<author initials="R." surname="Gummadi" fullname="R. Gummadi"><organization/></author>
<author initials="S." surname="Shenker" fullname="S. Shenker"><organization/></author>
</front>
<seriesInfo name=" ICIR, Tech. Rep., 2001. [Online].
  Available: http://www.icir.org/floyd/papers/adaptiveRed.pdf" value=""/>
</reference>

<reference anchor="AHM08">
<front>
<title>Active Queue Management for Fair Resource Allocation in Wireless Networks</title>
<author initials="L.L.H." surname="Andrew" fullname="Lachlan L.H. Andrew">
  <organization/>
</author>
<author initials="S.V." surname="Hanly" fullname="Stephen V. Hanly">
  <organization/>
</author>
<author initials="R.G." surname="Mukhtar" fullname="Rami G. Mukhtar">
  <organization/>
</author>
</front>
<seriesInfo name="IEEE Transactions on Mobile Computing" value="vol. 7, 2008"/>
<format type="PDF" target="http://netlab.caltech.edu/lachlan/abstract/CLAMP-TMC07.pdf"/>
</reference>

&rfc1323;
&rfc2883;
&rfc3168;
&rfc3465;
&rfc4138;
<!--&rfc3649;
&rfc4782;-->

<reference anchor="SA03">
<front>
<title>A HighSpeed TCP Study: Characteristics and Deployment Issues</title>
<author initials="E." surname="Souza" fullname="E. Souza"><organization/></author>
<author initials="D." surname="Agarwal" fullname="D. Agarwal"><organization/></author>
</front>
<seriesInfo name="LBNL, Technical Report" value="LBNL-53215, 2003"/>
</reference>

<reference anchor="SSM07">
<front>
<title>Assessing Interactions among Legacy and High-Speed TCP Protocols</title>
<author initials="H." surname="Shimonishi" fullname="H. Shimonishi"><organization/></author>
<author initials="M." surname="Sanadidi" fullname="M. Sanadidi"><organization/></author>
<author initials="T." surname="Murase" fullname="T. Murase"><organization/></author>
</front>
<seriesInfo name="Proc. Workshop on Protocols for Fast Long-Delay Networks (PFLDNet)" value="2007"/>
</reference>

<reference anchor="LATL07">
    <front>
    <title>A WAN-in-Lab for protocol development</title>
    <author initials="G.S." surname="Lee" fullname="G.S. Lee">
        <organization/>
    </author>
    <author initials="L.L.H." surname="Andrew" fullname="L.L.H. Andrew">
        <organization/>
    </author>
    <author initials="A." surname="Tang" fullname="A. Tang">
        <organization/>
    </author>
    <author initials="S.H." surname="Low" fullname="S.H. Low">
        <organization/>
    </author>
    </front>
    <seriesInfo name="PFLDnet" value="2007"/>
    <format type="PDF" target="http://netlab.caltech.edu/lachlan/abstract/PFLDnet07.pdf"/>
</reference>
	</references>


    </back>

</rfc>
