Lect3..ppt - 09/12/04 CIS 4100 Systems Performance and Evaluation Lecture 3 by Zornitza Genova Prodanoff.

Slides:



Advertisements
Similar presentations
Prentice HallHigh Performance TCP/IP Networking, Hassan-Jain Chapter 2 TCP/IP Fundamentals.
Advertisements

CCNA – Network Fundamentals
© 2007 Cisco Systems, Inc. All rights reserved.ICND1 v1.0—1-1 Building a Simple Network Understanding the TCP/IP Transport Layer.
BZUPAGES.COM 1 User Datagram Protocol - UDP RFC 768, Protocol 17 Provides unreliable, connectionless on top of IP Minimal overhead, high performance –No.
Copyright 1999, S.D. Personick. All Rights Reserved. Telecommunications Networking II Lecture 32 Transmission Control Protocol (TCP) Ref: Tanenbaum pp:
Introduction 1 Lecture 14 Transport Layer (Transmission Control Protocol) slides are modified from J. Kurose & K. Ross University of Nevada – Reno Computer.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 OSI Transport Layer Network Fundamentals – Chapter 4.
Chapter 3 Transport Layer slides are modified from J. Kurose & K. Ross CPE 400 / 600 Computer Communication Networks Lecture 12.
Transport Layer 3-1 outline r TCP m segment structure m reliable data transfer m flow control m congestion control.
Transport Layer 3-1 Fast Retransmit r time-out period often relatively long: m long delay before resending lost packet r detect lost segments via duplicate.
Transport Layer3-1 Congestion Control. Transport Layer3-2 Principles of Congestion Control Congestion: r informally: “too many sources sending too much.
Transport Layer 3-1 Outline r TCP m Congestion control m Flow control.
Week 9 TCP9-1 Week 9 TCP 3 outline r 3.5 Connection-oriented transport: TCP m segment structure m reliable data transfer m flow control m connection management.
1 © 2003, Cisco Systems, Inc. All rights reserved. CCNA 1 v3.0 Module 11 TCP/IP Transport and Application Layers.
1 Chapter 3 Transport Layer. 2 Chapter 3 outline 3.1 Transport-layer services 3.2 Multiplexing and demultiplexing 3.3 Connectionless transport: UDP 3.4.
Data Communication and Networks
Department of Electronic Engineering City University of Hong Kong EE3900 Computer Networks Transport Protocols Slide 1 Transport Protocols.
Process-to-Process Delivery:
TRANSPORT LAYER T.Najah Al-Subaie Kingdom of Saudi Arabia Prince Norah bint Abdul Rahman University College of Computer Since and Information System NET331.
TCP: flow and congestion control. Flow Control Flow Control is a technique for speed-matching of transmitter and receiver. Flow control ensures that a.
1 Transport Layer Computer Networks. 2 Where are we?
Chapter 9.
Presentation on Osi & TCP/IP MODEL
3: Transport Layer3b-1 Principles of Congestion Control Congestion: r informally: “too many sources sending too much data too fast for network to handle”
Transport Layer3-1 Chapter 3 outline r 3.1 Transport-layer services r 3.2 Multiplexing and demultiplexing r 3.3 Connectionless transport: UDP r 3.4 Principles.
Transport Layer3-1 Chapter 3 outline r 3.1 Transport-layer services r 3.2 Multiplexing and demultiplexing r 3.3 Connectionless transport: UDP r 3.4 Principles.
Transport Layer3-1 Chapter 3 outline 3.1 Transport-layer services 3.2 Multiplexing and demultiplexing 3.3 Connectionless transport: UDP 3.4 Principles.
Copyright 2003 CCNA 1 Chapter 9 TCP/IP Transport and Application Layers By Your Name.
Huda AL_Omairl - Network 71 Protocols and Network Software.
Principles of Congestion Control Congestion: informally: “too many sources sending too much data too fast for network to handle” different from flow control!
TCP/IP Transport and Application (Topic 6)
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 2.5 Internetworking Chapter 25 (Transport Protocols, UDP and TCP, Protocol Port Numbers)
Copyright 2002, S.D. Personick. All Rights Reserved.1 Telecommunications Networking II Topic 20 Transmission Control Protocol (TCP) Ref: Tanenbaum pp:
CCNA 1 v3.0 Module 11 TCP/IP Transport and Application Layers.
1 TCP: Reliable Transport Service. 2 Transmission Control Protocol (TCP) Major transport protocol used in Internet Heavily used Completely reliable transfer.
HighSpeed TCP for High Bandwidth-Delay Product Networks Raj Kettimuthu.
Transport Layer 3-1 Chapter 3 Transport Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March
1 Transport Layer Lecture 10 Imran Ahmed University of Management & Technology.
1 CS 4396 Computer Networks Lab TCP – Part II. 2 Flow Control Congestion Control Retransmission Timeout TCP:
Computer Networks23-1 PART 5 Transport Layer. Computer Networks23-2 Position of Transport Layer Responsible for the delivery of a message from one process.
Chapter 16 Protocols and Layering. Network Communication Protocol an agreement that specifies the format and meaning of messages computers exchange Network.
ECE 4110 – Internetwork Programming
Transport Layer3-1 Chapter 3 outline r 3.1 Transport-layer services r 3.2 Multiplexing and demultiplexing r 3.3 Connectionless transport: UDP r 3.4 Principles.
© Janice Regan, CMPT 128, CMPT 371 Data Communications and Networking Congestion Control 0.
IP1 The Underlying Technologies. What is inside the Internet? Or What are the key underlying technologies that make it work so successfully? –Packet Switching.
1 Computer Communication & Networks Lecture 23 & 24 Transport Layer: UDP and TCP Waleed Ejaz
Data Communications and Networks Chapter 6 – IP, UDP and TCP ICT-BVF8.1- Data Communications and Network Trainer: Dr. Abbes Sebihi.
McGraw-Hill Chapter 23 Process-to-Process Delivery: UDP, TCP Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
TCP/IP1 Address Resolution Protocol Internet uses IP address to recognize a computer. But IP address needs to be translated to physical address (NIC).
1 TCP ProtocolsLayer name DNSApplication TCP, UDPTransport IPInternet (Network ) WiFi, Ethernet Link (Physical)
Process-to-Process Delivery:
Application – Transport – Network
Chapter 3 outline 3.1 transport-layer services
Chapter 6 TCP Congestion Control
Introduction to Networks
COMP 431 Internet Services & Protocols
PART 5 Transport Layer Computer Networks.
Chapter 3 outline 3.1 Transport-layer services
Magda El Zarki Professor, ICS UC, Irvine
Internet and Intranet Protocols and Applications
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 6 TCP Congestion Control
CS4470 Computer Networking Protocols
TCP Overview.
Transport Layer: Congestion Control
Chapter 3 outline 3.1 Transport-layer services
Process-to-Process Delivery: UDP, TCP
TCP flow and congestion control
Presentation transcript:

Lect3..ppt - 09/12/04 CIS 4100 Systems Performance and Evaluation Lecture 3 by Zornitza Genova Prodanoff

ZGP002 Lecture Outline Chapter 2: Types of networks Network protocols Client/Server Model Peer-to-Peer Model Web services protocols

ZGP003 Communication Protocols Communication is between two remote processes Protocol is a set of rules –Addressing –Routing –Error detection –Error recovery –Sequence control –Flow control

ZGP004 Communication Protocols (Continued) Connection oriented protocols (e.g. TCP) –Brake the message into fragments –Once connection is established no fragment routing occurs –Ensure that all fragments are processed in original order –Used for applications communicating through large messages Connectionless protocols (e.g. UDP) –Each message is routed independently –Used when messages are smaller than the max. fragment size –Order of arrival is not important - a single fragment is sent

ZGP005 Protocol specification Syntax: message format and fields (bits) designation Semantics: actions taken by each entity when events occur E.g. fragment loss, timeout, message arrival Complex design – Solution: use layered approach - Abstract from details (at each layer) and let the protocols at other layers handle them Communication Protocols (Continued)

ZGP006 Type of Networks (Continued)

ZGP007 Client/Server Performance (continued)

ZGP008 The two most important protocols in the Internet are the Internet Protocol (IP) and the Transmission Control Protocol (TCP) - Suite of protocols known as TCP/IP Figure 2.7 shows the layering of important TCP/IP-based protocols IP is a network layer protocol on top of which we find two transport layer protocols: TCP-a connection-oriented protocol- and User Datagram Protocol (UDP)-a connectionless protocol Simple Mail Transfer Protocol (used to send ), and Telnet (an interactive login protocol) use TCP Network File System (NFS) [8], Domain Name Server (DNS), and Simple Network Management Protocol (SNMP) are built on top of UDP Communication Protocols: Internet Protocols

ZGP009 Client/Server Performance (continued)

ZGP0010 Internet Protocol: Specifies formats of packets sent across the Internet Connectionless protocol Source to destination forwarding of packets (called datagrams) Every host connected to the Internet has a unique address, called IP Address Address representation is dotted decimal notation, e.g Prefix (identifies a network) and suffix (identifies a host) address bits Communication Protocols: IP

ZGP0011

ZGP0012 Client/Server Performance (continued)

ZGP0013 Transport Control Protocol: Connection oriented protocol TCP guarantees that all the packets of a message are received in their original sequence TCP guarantees that data is delivered without loss or modification of bits Packets are called segments Connection establishment through three-way-handshake Full-duplex communication Communication Protocols: TCP

ZGP0014 Client/Server Performance (continued)

ZGP0015 TCP uses ACKs (acknowledgement messages), timeouts, and retransmissions for error control ACK are cumulative Flow control is implemented by TCP through a sliding window mechanism -The window size is the maximum number of bytes that can be sent before an acknowledgement is received -Window size is limited by  the buffer size at the receiver  by network congestion as estimated by the sender Communication Protocols: TCP

ZGP0016 B is limiting bandwidth RTT is round trip time MSS is maximum segment size W c is the current window size W m is the maximum window size (prevents buffer overflow) W c doubles every RTT but cannot exceed the receivers window W m Communication Protocols: TCP

ZGP0017 “Sliding window” flow control The rate with which sender can send data is determined by the rate of incoming ACKs for previous segments The rate of incoming ACKs is determined by the bottleneck in the round trip path (destination or the network) W m is advertised by the receiver If network congestion is detected, the sender will reduce its window size W c to reduce its transmission rate Communication Protocols: TCP

ZGP0018 Client/Server Performance (continued)

ZGP0019 Slow start phase and Congestion avoidance phase Consider Figure 2.10 During slow start Wc is initialized to one segment and is increased by one for every ACK received Once segments are sent an ACK is received after one RTT unit Wc doubles every RTT unit Communication Protocols: TCP (continued)

ZGP0020 Network congestion can be detected by TCP through −the receipt of a duplicate ACK, which indicates that the receiver received an out-of-sequence segment −or by a timeout at the sender The current value of the window size is saved in a variable called slow start threshold window size, W ssthr, and W c, is reduced TCP Reno: If a duplicate ACK is received, W, is divided by two and TCP enters congestion avoidance phase (described in Figure 2.11) TCP Reno: If a timeout occurs, Wc is set to one and TCO goes back to slow start Communication Protocols: TCP (continued)

ZGP0021 When Wc reaches Wssthr, TCP enters congestion avoidance During congestion avoidance the window size Wc is incremented by one every RTT unit Communication Protocols: TCP (continued)

ZGP0022 In the example of Fig. 2.11, a duplicate ACK is received at time 5. Then, half of the current value of Wc, i.e., 8, is stored in Wssthr and the TCP connection enters a congestion avoidance phase. Another duplicate ACK is received at time 20. The value of Wssthr is set to 7 (14 / 2). If a timeout occurs, then Wc, is set to one and TCP goes back to slow start Communication Protocols: TCP (continued)

ZGP0023 In Fig. 2.11, a timeout occurred at time 10 and the TCP connection enters a slow start phase When Wc, reaches Wsethr during slow start, TCP switches to congestion avoidance. For example, at time 13 in Fig. 2.11, Wc, reaches the current value of Wssthr, which is 8, and the connection enters a congestion avoidance phase. Communication Protocols: TCP (continued)

ZGP0025 TCP and congestion control The throughput X TCP of a TCP connection, measured in segments per second −decreases with RTT, −decreases with the probability p that packets are dropped −increases with the receiver advertised window size Wr measured in segments −decreases with the value of the TCP timeout To ( Based on Padhye’s expression for X TCP for a TCP Reno connection) A Model is implemented in the TCPModel. XLS Communication Protocols: TCP (continued)

ZGP0026 Communication Protocols: TCP (Continued) Fig shows variation of the TCP throughput in KB/sec as a function of p and for four values of W m : 10, 20, 30, and 40 segments TCP timeout (To) = 2 seconds Maximum segment size of 1,460 bytes Limiting bandwidth of the connection between sender and receiver equal to 12,500 KB/sec RTT = 0.04 seconds

ZGP0027 Client/Server Performance (continued)

ZGP0028 Communication Protocols: TCP (Continued) As W m increases, the throughput increases The benefits of a larger window decrease as the packet loss probability increases because more data has to be retransmitted in case of packet losses

ZGP0029 The best-case throughput of a TCP connection is obtained when the window size W c, reaches the receiver maximum window size W m and no congestion occurs The throughput is given by segments per second or bytes/sec where MSS is the maximum segment size The throughput of a TCP connection cannot exceed the limiting bandwidth B, in bytes/sec, of the network connecting the sender and receiver => Communication Protocols: TCP (Continued)

ZGP0030 Then, the maximum throughput is achieved when the windows size given in segments, is equal to The numerator is called the bandwidth-delay product. During slow start, TCP operates with windows that are below the window size that would be achieved during congestion avoidance. −problem for short-lived connections that may never achieve the maximum throughput under an optimal window size Communication Protocols: TCP (Continued)

ZGP0031 Table 2.1 shows the bandwidth-delay product, and the optimum receiver window size,, in segments, assuming a segment size of 1,460 bytes, for various types of networks. As shown by the table, high-bandwidth, low-latency networks require large window sizes for the throughput of the TCP connection to use as much of the network bandwidth as possible. Communication Protocols: TCP (Continued)

ZGP0032 Client/Server Communication