Project3 - Congestion Control. Outline Overview Project Specification and Tasks Tools and Time Table.

Slides:



Advertisements
Similar presentations
The BitTorrent Protocol
Advertisements

Camarillo / Schulzrinne / Kantola November 26th, 2001 SIP over SCTP performance analysis
Prentice HallHigh Performance TCP/IP Networking, Hassan-Jain Chapter 2 TCP/IP Fundamentals.
Transmission Control Protocol (TCP)
Guide to TCP/IP, Third Edition
Ensuring the Reliability of Data Delivery © 2004 Cisco Systems, Inc. All rights reserved. Establishing a TCP Connection INTRO v2.0—6-1.
Computer Networks 2 Lecture 2 TCP – I - Transport Protocols: TCP Segments, Flow control and Connection Setup.
TRANSPORT LAYER  Session multiplexing  Segmentation  Flow control (TCP)  Connection-oriented (TCP)  Reliability (TCP)
TCP/IP Protocol Suite 1 Chapter 13 Upon completion you will be able to: Stream Control Transmission Protocol Be able to name and understand the services.
TCP/IP Protocol Suite 1 Chapter 13 Upon completion you will be able to: Stream Control Transmission Protocol Be able to name and understand the services.
Computer Networking Lecture 17 – TCP & Congestion Control Dejian Ye, Liu Xin.
Transport Layer 3-1 outline r TCP m segment structure m reliable data transfer m flow control m congestion control.
Anue Systems contribution to TR v Telecommunications Industry AssociationTR-30.3/11-08-xxx Arlington, VA August xx, 2011.
CSCE 515: Computer Network Programming Chin-Tser Huang University of South Carolina.
1 689 Lecture 2 Review of Last Lecture Networking basics TCP/UDP review.
1 TCP Transport Control Protocol Reliable In-order delivery Flow control Responds to congestion “Nice” Protocol.
Computer Networking Lecture 16 – TCP & Congestion Control Copyright ©, Carnegie Mellon University.
Transmission Control Protocol (TCP) and Packet-Switching Hardware Devang Parekh EE290F 4/15/04.
5/12/05CS118/Spring051 A Day in the Life of an HTTP Query 1.HTTP Brower application Socket interface 3.TCP 4.IP 5.Ethernet 2.DNS query 6.IP router 7.Running.
Chapter 16 Stream Control Transmission Protocol (SCTP)
The Transport Layer.
TCP: flow and congestion control. Flow Control Flow Control is a technique for speed-matching of transmitter and receiver. Flow control ensures that a.
TCOM 509 – Internet Protocols (TCP/IP) Lecture 04_b Transport Protocols - TCP Instructor: Dr. Li-Chuan Chen Date: 09/22/2003 Based in part upon slides.
TCP : Transmission Control Protocol Computer Network System Sirak Kaewjamnong.
CS332, Ch. 26: TCP Victor Norman Calvin College 1.
TCP CS 168 Discussion Week 6 Many thanks to past EE 122 GSIs.
Presented by Rajan Includes slides presented by Andrew Sprouse, Northeastern University CISC 856 TCP/IP and Upper Layer Protocols Date:May 03, 2011.
Transport Layer Moving Segments. Transport Layer Protocols Provide a logical communication link between processes running on different hosts as if directly.
CSE679: Computer Network Review r Review of the uncounted quiz r Computer network review.
P2P Streaming Protocol (PPSP) Requirements draft-zong-ppsp-reqs-03.
Networking Fundamentals. Basics Network – collection of nodes and links that cooperate for communication Nodes – computer systems –Internal (routers,
Computer Networks23-1 PART 5 Transport Layer. Computer Networks23-2 Position of Transport Layer Responsible for the delivery of a message from one process.
VO2-MAGAZINE.jpg Michael Jenkins Presents:
Today’s topic: UDP Reliable communication over UDP.
CS470 Computer Networking Protocols
Stream Control Transmission Protocol
Project 3 Overview Spring 2010 Recitation #9.
Fall 2004FSU CIS 5930 Internet Protocols1 TCP – Data Exchange Reading: Section 24.4.
TCP/IP Protocol Suite 1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 16 Stream Control Transmission.
Trickles :A stateless network stack for improved Scalability, Resilience, and Flexibility Alan Shieh,Andrew C.Myers,Emin Gun Sirer Dept. of Computer Science,Cornell.
TCP as a Reliable Transport. How things can go wrong… Lost packets Corrupted packets Reordered packets …Malicious packets…
CIS679: TCP and Multimedia r Review of last lecture r TCP and Multimedia.
TCP/IP1 Address Resolution Protocol Internet uses IP address to recognize a computer. But IP address needs to be translated to physical address (NIC).
Transmission Control Protocol (TCP) TCP Flow Control and Congestion Control CS 60008: Internet Architecture and Protocols Department of CSE, IIT Kharagpur.
CSEN 404 Transport Layer II Amr El Mougy Lamia AlBadrawy.
Computer Networking Lecture 16 – Reliable Transport.
Distributed Systems 11. Transport Layer
Application – Transport – Network
The Transport Layer Implementation Services Functions Protocols
Chapter 9: Transport Layer
Fast Retransmit For sliding windows flow control we waited for a timer to expire before beginning retransmission of a packet TCP uses an additional mechanism.
TCP Lecture 4.
Instructor Materials Chapter 9: Transport Layer
Introduction to Networks
Transmission Control Protocol (TCP)
Transmission Control Protocol (TCP)
TCP.
PART 5 Transport Layer Computer Networks.
TCP.
Magda El Zarki Professor, ICS UC, Irvine
Introduction of Transport Protocols
TCP - Part II Relates to Lab 5. This is an extended module that covers TCP flow control, congestion control, and error control in TCP.
Process-to-Process Delivery:
Chapter 5 Peer-to-Peer Protocols and Data Link Layer
Project 3 Flow and congestion control
Transport Protocols: TCP Segments, Flow control and Connection Setup
CS4470 Computer Networking Protocols
Transport Protocols: TCP Segments, Flow control and Connection Setup
Process-to-Process Delivery: UDP, TCP
Review of Internet Protocols Transport Layer
Presentation transcript:

Project3 - Congestion Control

Outline Overview Project Specification and Tasks Tools and Time Table

Overview BitTorrent-like file transfer application Reliability and congestion control protocol similar to TCP UDP based and C programming Allow regroup up to 3 members

Project Specification Intro to BitTorrent file transfer protocol Congestion control mechanism to ensure fair and efficient network utilization. Smart optimizations to get the best possible transfer time (extra credit).

Intro to BitTorrent A fixed-size chunk of 512Kbytes in pro3 Verification by rehashing Flooding, no tracker server Single master-file, different ownership BT = TCP, Project3 = UDP Hash( ) = =.torrent

Terminology master-data-file master-chunk-file 1e 34 b4 27 Peer A Peer B 1e 34 has- chunk-file Node.map Peer A Peer B GET b4 b4 27 has- chunk-file GET 34

File Transfer Requesting peer send “WHOHAS ” Responding peer send “IHAVE ” Decide, and send “GET ” Responding peer send multiple “DATA”

Packet Format MagicVersionType Header LenPacket Len Seq Num Ack Num Packet TypeCode WHOHAS0 IHAVE1 GET2 DATA3 ACK4 DENIED5 Packet Header Payload = hash list or data SPLIT PACKET LONGER THAN 1500 BYTES!

Provided Files  hupsim.pl – Emulates network topology using topo.map  sha.[ch] - The SHA-1 hash generator  input buffer.[ch]+bt parse.[ch] - Handle user input  debug.[ch] - helpful utilities for debugging output  peer.c - A skeleton peer file  nodes.map+topo.map - the hidden network topology

Project Tasks 100% Reliability & Sliding Window Congestion control *Intelligent Peer Selection and Caching

100% Reliability & Sliding window Cumulative ACK Duplicate ACK SENDERRECEIVER Last ACKedLast Sent Last Available Next Expected Last Received

Congestion control Slow start : ACK received => window++ Congestion Avoidance : Window size = 1 after a loss (Simple Version) Fast Retransmit : Retransmit after 3 duplicate ACK Fast Recovery : No need to implement (But you may need it in Task3)

Tools Spiffy: Simulating Networks with Loss & Congestion sendto() => spiffy_sendto() Gnuplot and etc

TimeTable DateEventDescription 5/23Project3 releasedSTART EARLY 5/27CheckPoint1 (NO Hand in) WHOHAS flooding and IHAVE response 6/3CheckPoint2 (Hand in) Simple Chunk Download with stop-and-wait 6/8CheckPoint3 (NO Hand in) Sliding window flow-control with reliability 6/15CheckPoint4(Hand in) Simple Congestion Avoidance, with cwnd = 1 after any loss 6/19Early bird deadlineRequired functionality (+10 bonus points) 6/26DeadlineNo penalty

Thanks Good Luck & START EARLY!