Anue Systems contribution to TR 30.3 1 v1.0 - 20050426 Telecommunications Industry...
-
date post
20-Dec-2015 -
Category
Documents
-
view
217 -
download
2
Transcript of Anue Systems contribution to TR 30.3 1 v1.0 - 20050426 Telecommunications Industry...
Anue Systems contribution to TR 30.3 1 v1.0 - 20050426
Telecommunications Industry Association TR41.N.n-YY-MM-XXX
Document Cover Sheet
Project Number PN-3-0062-RV3 (TIA-921C)
Document Title Adding TCP to the TIA-921B Simulation Model
Source Anue Systems
Contact Name: Chip Webb Complete Address: 8310 Capital of Texas Hwy Bldg. 2, Ste. 300 Austin, TX 78731
Phone: 512-600-5403 Fax: Email: [email protected]
Distribution TR-30.3
Intended Purpose of Document (Select one)
For Incorporation Into TIA Publication x For Information Other (describe) -
The document to which this cover statement is attached is submitted to a Formulating Group or sub-element thereof of the Telecommunications Industry Association (TIA) in accordance with the provisions of Sections 6.4.1–6.4.6 inclusive of the TIA Engineering Manual dated March 2005, all of which provisions are hereby incorporated by reference.
Abstract
This presentation is provided for discussion on how to add TCP behavior to the TIA-921B simulation model.
Telecommunications Industry Association TR-30.3/11-08-xxxArlington, VA August xx, 2011
2
Adding TCP to TIA-921B
Problem Statement / OverviewProposed Solution / PurposeHow to add TCP?
L5-L7, what version, options and implementation?LimitationsDiscussion
Anue Systems contribution to TR 30.3
3
Problem Statement / Overview
Our current model has “Firehose” packet generators. The packet generators just replay the packets as read from PCAP files,
with minimal adjustment for rate and burstiness. This means that the packet generators do not react when packets are
lost.
This is not realistic. In a real situation, most interfering streams would automatically slow
down to try and reduce the the cause of packet loss. Lost packets in a stream of interest can make it difficult to analyze stream
quality. This is mainly of interest for OTT (over the top) video since it is carried in TCP
(IPTV is generally carried over UDP).
This makes it more difficult to use the simulator Have to “tune” the simulation parameters
Anue Systems contribution to TR 30.3
4
CORE-to-LAN Simulation Model
Core Network
Interfering Streams
(pcap files)
Interfering Streams
(pcap files)
Test Stream
Test Stream
Access Network1 Gbit/s
(from TR30_3_Liaison_to_ITU-T_SG12 January 2011)
Anue Systems contribution to TR 30.3
5
Proposed Solution & Purpose
Add TCP to the TIA-921B simulation model We have discussed doing this in the past This presentation proposes implementation details to
spark discussion.
Purpose: (twofold) Add realism to the interfering streams Show more realistic effect of congestion on OTT video
Anue Systems contribution to TR 30.3
6
How to add TCP?
Simulator is object oriented C++We have PCAP generators and monitorsAdd two new objects to our simulation
TCPServer TCPClient
The client connects to the serverData can flow in both directionsTCP’s flow control provides congestion
avoidance
Anue Systems contribution to TR 30.3
7
CORE-to-LAN Simulation Model
Core Network
Interfering Streams
(pcap files)
Interfering Streams
(pcap files)
Test Stream
Test Stream
Access Network1 Gbit/s
(from TR30_3_Liaison_to_ITU-T_SG12 January 2011)
TCP Server
TCP Server
TCP Client
TCP Client
Anue Systems contribution to TR 30.3
8
Details, Details, Details…..
But, this creates more questionsHow to model the L5-L7 behavior?What data to use for TCP payload?What TCP version to use?What TCP options to support?What implementation to start from?
Anue Systems contribution to TR 30.3
9
How to model L5-L7 behavior?
Proposal: Focus on bulk data transfer Divide into two sub-cases (possibly simultaneous):
Download from server to client: Client connects to server and downloads a file.
Upload from client to server: Client connects to server and uploads a file.
Ignore “interactive” TCP sessions That is not the focus of our work (sorry Nagle)
In the future we could allow more complex sequences
Anue Systems contribution to TR 30.3
10
L5 (sockets layer)
(Credit: http://edn.embarcadero.com/article/26022)
Anue Systems contribution to TR 30.3
11
What data to use for TCP payload?
Proposal: Read L5 data from files (can be whatever we want) Specify parameters in simparam files Filename Bit rate for transmission of data Number of repetitions Repetition rate
Alternative: Parse and interpret our existing PCAP files But must infer L5 behavior (heuristics?)
Anue Systems contribution to TR 30.3
12
Save TCP streams in PCAP format
Facilitate debug and analysis with wireshark.
Anue Systems contribution to TR 30.3
13
What TCP version to use?
A number of TCP versions exist: BSD variants:Tahoe, Reno, Vegas, New Reno Linux variants: BIC, CUBIC MS: BSD, Compound TCP
For our work, we care mainly about the changes to congestion avoidance
Anue Systems contribution to TR 30.3
14
What options to support?
Window Size settings?Selective acknowledgement?Window scaling?MSS?Proposal:
Focus on Window Size first, scaling second. Others only as needed.
Anue Systems contribution to TR 30.3
15
What implementation to start from?
Most well documented (4.4BSD-Lite: ca 1995) W. Richard Stevens, TCP/IP Illustrated series
I propose to use this as a startingpoint for our work
Add enhancementsas needed
Advantages are simplicity,availability of source code,speed of development,and widely studied (and improved upon).
Anue Systems contribution to TR 30.3
16
TCP/IP Illustrated (vol 1)
Volume 1 has detailed explanations:
Ch 17: Overview of TCP Ch 18: Connection Establish & Termination Ch 19: Interactive (nagling) Ch 20: Bulk xfer (sliding window, slow start) Ch 21: Timeout & Retransmit (fast recovery) Ch 22: Persist Timer (silly window) Ch 23: Keepalive Ch 24: Future stuff
Anue Systems contribution to TR 30.3
17
TCP/IP Illustrated (vol 2)
Volume 2 has source code:
Ch 24: TCP packet format Ch 25: TCP Timers Ch 26: TCP Output Ch 27: TCP Functions Ch 28&29: TCP Input Ch 30: TCP User requests
Anue Systems contribution to TR 30.3
18
Other examples to refer to
Ns2 (good reference, widely studied)Omnet (good, but restrictive license for
commercial use)Opnet (good but source not available)Linux source code (good but complex)Other embedded systems source code and
books.
Anue Systems contribution to TR 30.3
19
Limitations
Although packets will contain L2 and L3 protocol fields, the simulation will not make use of these fields.
As with the current simulation, servers will support a single client. We will model multiple streams by having multiple servers.
Need to define how to get “raw” video dataNeed to define how to model adaptive L5
behavior (like Silverlight)
Anue Systems contribution to TR 30.3
20
Discussion
Anue Systems contribution to TR 30.3
Question: Does this seem like a reasonable approach?
Work estimate: Approximately one month (goal -- August meeting in
Arlington).