monarch a tool to emulate transport protocol flows over the internet at large
Download
Skip this Video
Download Presentation
Monarch: A Tool to Emulate Transport Protocol Flows over the Internet at Large

Loading in 2 Seconds...

play fullscreen
1 / 33

Monarch: A Tool to Emulate Transport Protocol Flows over the Internet at Large - PowerPoint PPT Presentation


  • 54 Views
  • Uploaded on

Monarch: A Tool to Emulate Transport Protocol Flows over the Internet at Large. CISC856 TCP/IP and Upper Layer Protocols Spring 2010. Fan Yang [email protected] Thank Andreas Haeberlen, Marcel Dischinger, Krishna P. Gummadi and Stefan Sarois for borrowing some slides. Outline.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' Monarch: A Tool to Emulate Transport Protocol Flows over the Internet at Large' - egan


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
monarch a tool to emulate transport protocol flows over the internet at large

Monarch: A Tool to Emulate Transport Protocol Flows over the Internet at Large

CISC856 TCP/IP and Upper Layer Protocols Spring 2010

Fan [email protected]

Thank Andreas Haeberlen, Marcel Dischinger, Krishna P. Gummadi and Stefan Sarois for borrowing some slides

outline
Outline

How Monarch works

How to choose probe PDUs

Which protocols can Monarch emulate

The sources of inaccuracy

An example of implementation

Conclusion

how monarch works
How Monarch works

TCPSender

Internet

TCPReceiver

Host underour control

TCPSender

TCP-PDU

(1480 bytes)

Internet

ACK TCP-PDU

(20 bytes)

Host underour control

TCPReceiver

Standard TCP

how monarch works1
How Monarch works

Host under our control

TCPSender

TCPSender

TCPReceiver

Internet

TCP-PDU (1480 bytes)

Internet

probe-PDU (1480 bytes)

Response PDU,20 bytes

Internet host(not under ourcontrol)

TCPReceiver

Standard TCP

Monarch

how monarch works2
How Monarch works

TCPSender

TCPSender

TCPReceiver

Internet

Data packets

Internet

Big packets

Small packets

Big packets

Small packets

Response

packets

Probe packets

Path is stressed in the same way

 Similar throughput, delay, loss, etc

?

TCPReceiver

Standard TCP

Monarch

problems
Problems
  • How to choose probe PDU(what types of PDUs can be used)?
how to choose the probe pdu
How to choose the probe PDU?

The probe PDUs should be responded to by most hosts

There should be a way to match the response PDUs to the corresponding probe PDUs

Size of probe PDUs and response PDUs should be similar to that of the regular flows

possible types of probe pdu
Possible types of probe PDU

TCP

UDP

ICMP echo request

ICMP timestamp request

Why do we choose these protocols?

possible types of probe pdu tcp
Possible types of probe PDU(TCP)

Host underour control

Monarch

An ACK TCP-PDU

to a closed port

(1480 bytes)

Internet

RSTTCP-PDU

(20 bytes)

Remote host

TCPReceiver

TCP probe

possible types of probe pdu tcp1
Possible types of probe PDU(TCP)
  • Most hosts should respond to TCP-PDU
  • The sequence number of the RST PDU is equal to the acknowledgment number of the probe ACK PDU
possible types of probe pdu udp
Possible types of probe PDU(UDP)

Host underour control

Monarch

A UDP-PDU

to a closed port

(1480 bytes)

Internet

ICMP-PDU

port unreachable

(32 bytes)

Remote host

UDPReceiver

UDP probe

possible types of probe pdu udp1
Possible types of probe PDU(UDP)
  • Most hosts should respond to UDP-PDU
  • ICMP-PDU will include the IP-PCI of the probe, we can match the probe and the response by the IPid field
tcp probe and udp probe
TCP probe and UDP probe
  • TCP and UDP probes allow the probe PDU size to be varied, while the response packet size is held fixed between 20 and 72 bytes.
  • They are well suited to match the sizes of the data and acknowledgement PDUs for many variants of the popular TCP protocol.
possible types of probe pdu icmp
Possible types of probe PDU(ICMP)

Host underour control

Monarch

ICMP echo PDU

Internet

ICMP-PDU echo PDU

size is similar with the request

Remote host

ICMP

Receiver

ICMP probe

possible types of probe pdu icmp1
Possible types of probe PDU(ICMP)
  • Most hosts should respond to ICMP-PDU
  • The ICMP echo reply has the same sequence number field in ICMP-PCI as the ICMP echo request
icmp probe
ICMP probe
  • The ICMP echo responses are of the same size as their probes, so they are better suited for evaluating transport flows where data flows in both directions
problems1
Problems
  • How to choose probe PDU( what types of PDU can be used)?
  • Which protocols can Monarch emulate?
  • What are sources of inaccuracy?
which protocols can monarch emulate
Which protocols can Monarch emulate?
  • Any transport protocol where the receiver feedback is limited to path latencies and losses can be emulated
    • TCP variations (Tahoe, Reno, NewReno, Vegas, SACK)
    • PCP(Probe Control Protocol)
    • RAP(Rate Adaptation Protocol)
    • TFRC(TCP-Friendly Rate Control)
which protocols can monarch emulate1
Which protocols can Monarch emulate?

Some protocols cannot be used

ECN

Congestionexperienced!

which protocols can monarch emulate2
Which protocols can Monarch emulate?
  • Monarch currently emulates transport flows in the downstream direction
    • i.e. connections in which data flows from the Monarch host to the remote host.
  • Emulating data flows in the upstream direction from the remote host to the Monarch host requires a small probe packet that elicits a large response packet.
    • We have not yet found a probe packet that has this property.
problems2
Problems
  • How to choose probe PDU( what types of PDU can be used)?
  • Which protocols can Monarch emulate?
  • What are sources of inaccuracy?
direction
Direction

Monarch cannot distinguish whether PDU lost occurred on the downstream path or on the upstream path

Upstream losses cause additional retransmissions

self diagnosis
Self-diagnosis

Monarch uses IPIDs to find potential inaccuracies

When a flow has completed, it is classified as:

Confirmed: No upstream loss or upstream reordering

Inaccurate: Upstream loss or upstream reordering

Indeterminate: Not enough information to self-diagnose

ID 17

ID 17

ID 18

ID 19

delayed acks
Delayed ACKs
  • With delayed ACKs, TCP receiver ACK two TCP-PDUs by a single ACK PDU.
  • In contrast, in a Monarch flow, the receiver responds to every probe PDU, which typically doubles the number of PDUs flowing on the reverse path.
  • Is delayed ACKs really an important source of inaccuracy?
firewalls or nats
Firewalls or NATs
  • When Monarch is used on a path that contains middleboxes such as NATs or firewalls, the probes may be answered by the middleboxes rather than the end host.
  • Is firewalls or NATs really an important source of inaccuracy?
implementation
Implementation
  • Example
    • Emulating a TCP flow
conclusion advantages
Conclusion-advantages
  • Monarchenables transport protocols to be evaluated in realistic environments
  • Monarch is highly accurate
    • the emulated flows closely resemble TCP flows in terms of throughput,loss rate, queueing delay, and several other characteristics.
  • Monarch enables protocols to be evaluated on an unprecedented scale, over millions of Internet paths.
conclusion application
Conclusion-application
  • Evaluating different transport protocols
  • Inferring network path properties
paper to read
Paper to read

http://www.cis.udel.edu/~amer/856/monarch.pdf

thank you
Thank you!

Questions?

ad