EEC-484/584 Computer Networks Lecture 14 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.

Slides:



Advertisements
Similar presentations
Transport Layer3-1 Transport Overview and UDP. Transport Layer3-2 Goals r Understand transport services m Multiplexing and Demultiplexing m Reliable data.
Advertisements

Introduction 1-1 Chapter 3 Transport Layer Intro and Multiplexing Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley.
Transport Layer 3-1 Transport services and protocols  provide logical communication between app processes running on different hosts  transport protocols.
EEC-484/584 Computer Networks Lecture 12 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
CPSC 441: Intro, UDP1 Transport Layer Instructor: Carey Williamson Office: ICT Class Location:
EEC-484/584 Computer Networks Lecture 15 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
EEC-484/584 Computer Networks Lecture 12 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
Computer Communication Digital Communication in the Modern World Transport Layer Multiplexing, UDP
Chapter 3: Transport Layer
EEC-484/584 Computer Networks Lecture 12 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
EEC-484/584 Computer Networks Lecture 6 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
EEC-484/584 Computer Networks Lecture 7 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
Introduction to Transport Layer. Transport Layer: Motivation A B R1 R2 r Recall that NL is responsible for forwarding a packet from one HOST to another.
Transport Layer3-1 Transport Layer Our goals: r understand principles behind transport layer services: m multiplexing/demultipl exing m reliable data transfer.
EEC-484/584 Computer Networks Lecture 14 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
Lecture 8 Chapter 3 Transport Layer
EEC-484/584 Computer Networks Lecture 13 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
CPSC 441: Intro, UDP1 Instructor: Anirban Mahanti Office: ICT Class Location: ICT 121 Lectures: MWF 12:00 – 12:50 Notes.
EEC-484/584 Computer Networks Lecture 13 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
2: Application Layer 1 1DT066 Distributed Information System Chapter 3 Transport Layer.
Some slides are in courtesy of J. Kurose and K. Ross Review of Previous Lecture Electronic Mail: SMTP, POP3, IMAP DNS Socket programming with TCP.
3-1 Transport services and protocols r provide logical communication between app processes running on different hosts r transport protocols run in end.
8-1 Transport Layer Our goals: r understand principles behind transport layer services: m multiplexing/demultipl exing m reliable data transfer m flow.
EEC-484/584 Computer Networks Lecture 6 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
Transport Layer Transport Layer. Transport Layer 3-2 Chapter 3 Transport Layer Computer Networking: A Top Down Approach Featuring the Internet,
IP-UDP-RTP Computer Networking (In Chap 3, 4, 7) 건국대학교 인터넷미디어공학부 임 창 훈.
Review: –What is AS? –What is the routing algorithm in BGP? –How does it work? –Where is “policy” reflected in BGP (policy based routing)? –Give examples.
Data Communications and Computer Networks Chapter 3 CS 3830 Lecture 12 Omar Meqdadi Department of Computer Science and Software Engineering University.
CS 1652 The slides are adapted from the publisher’s material All material copyright J.F Kurose and K.W. Ross, All Rights Reserved Jack Lange.
Network LayerII-1 RSC Part III: Transport Layer 1. Basic Concepts Redes y Servicios de Comunicaciones Universidad Carlos III de Madrid These slides are,
Transport Layer 3-1 Chapter 3 Transport Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 All.
Transport Layer 3-1 Chapter 3 Transport Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 Part.
Chapter 3 Transport Layer
Transport Layer3-1 Chapter 3: Transport Layer Our goals: r understand principles behind transport layer services: m multiplexing/demultipl exing m reliable.
Transport Layer3-1 Chapter 3 Transport Layer Computer Networking: A Top Down Approach Featuring the Internet, 2 nd edition. Jim Kurose, Keith Ross Addison-Wesley,
Transport Layer1 Ram Dantu (compiled from various text books)
Transport Layer Moving Segments. Transport Layer Protocols Provide a logical communication link between processes running on different hosts as if directly.
Lecture91 Administrative Things r Return homework # 1 r Review some problems in homework # 1 r Questions about grading? Yona r WebCT for CSE245 is working!
CS 3830 Day 13 Introduction 1-1. Announcements r Quiz 3: Wednesday, Oct 10 r Prog3 due Wednesday, Oct 10 Transport Layer 3-2.
Transport Layer3-1 Chapter 3 Transport Layer Computer Networking: A Top Down Approach 4 th edition. Jim Kurose, Keith Ross Addison-Wesley, July A.
Transport Layer 3-1 Chapter 3 Outline r 3.1 Transport-layer services r 3.2 Multiplexing and demultiplexing r 3.3 Connectionless transport: UDP.
Chapter 3: Transport Layer Our goals: r understand principles behind transport layer services: m multiplexing/demultipl exing m reliable data transfer.
Transport Layer3-1 Chapter 3 Transport Layer Computer Networking: A Top Down Approach Featuring the Internet, 3 rd edition. Jim Kurose, Keith Ross Addison-Wesley,
Transport Layer 3-1 Internet Transport Layer Lecture 8 Dr. Najla Al-Nabhan.
Prof. Younghee Lee 1 1 Computer Networks u Lecture 5: Transport services and protocols Prof. Younghee Lee * Some part of this teaching materials are prepared.
MULTIPLEXING/DEMULTIPLEXING, CONNECTIONLESS TRANSPORT.
Transport Protocols.
Transport Layer3-1 Chapter 3: Transport Layer Our goals: r understand principles behind transport layer services: m multiplexing/demultipl exing m reliable.
Chi-Cheng Lin, Winona State University CS412 Introduction to Computer Networking & Telecommunication Data Link Layer Part II – Sliding Window Protocols.
Introduction 1-1 source application transport network link physical HtHt HnHn M segment HtHt datagram destination application transport network link physical.
2: Transport Layer 11 Transport Layer 1. 2: Transport Layer 12 Part 2: Transport Layer Chapter goals: r understand principles behind transport layer services:
Ch 3. Transport Layer Myungchul Kim
CSEN 404 Transport Layer I Amr El Mougy Lamia Al Badrawy.
Transport Layer3-1 Transport Layer Never take life seriously. Nobody gets out alive anyway.
Introduction to Networks
Chapter 3 Transport Layer
Chapter 3 outline 3.1 Transport-layer services
CS 1652 Jack Lange University of Pittsburgh
Introduction to Networks
Transport Layer Our goals:
EEC-484/584 Computer Networks
September 19th, 2013 CS1652 Jack Lange University of Pittsburgh
Transport Layer Our goals:
EEC-484/584 Computer Networks
EEC-484/584 Computer Networks
CSCD 330 Network Programming
EEC-484/584 Computer Networks
Transport Layer Our goals:
Presentation transcript:

EEC-484/584 Computer Networks Lecture 14 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer Networking book, and on materials supplied by Dr. Louise Moser at UCSB and Prentice-Hall)

2 Spring Semester 2007EEC-484/584: Computer NetworksWenbing Zhao Outline Quiz#3 results Introduction to transport layer Multiplexing/demultiplexing Sliding window protocols

3 Spring Semester 2007EEC-484/584: Computer NetworksWenbing Zhao EEC 484/584 Quiz#3 Results High: 98, low: 50, average: 85 Q1: 26/30, Q2: 26/30, Q3: 8/10, Q4: 8/10, Q5: 18/20

4 Spring Semester 2007EEC-484/584: Computer NetworksWenbing Zhao Transport Layer Our goals: Understand principles behind transport layer services: –multiplexing/demult iplexing –reliable data transfer –flow control –congestion control Learn about transport layer protocols in the Internet: –UDP: connectionless transport –TCP: connection- oriented transport –TCP congestion control

5 Spring Semester 2007EEC-484/584: Computer NetworksWenbing Zhao Transport vs. Data Link Layer Similarities: deal with error control, sequencing, flow control Difference: operating environments Environment of the data link layer Environment of the transport layer

6 Spring Semester 2007EEC-484/584: Computer NetworksWenbing Zhao Transport vs. Network Layer Network layer: logical communication between hosts Transport layer: logical communication between processes –Relies on, enhances, network layer services

7 Spring Semester 2007EEC-484/584: Computer NetworksWenbing Zhao Internet Transport-Layer Protocols Reliable, in-order delivery (TCP) –congestion control –flow control –connection setup Unreliable, unordered delivery: UDP –no-frills extension of “best- effort” IP Services not available: –delay guarantees –bandwidth guarantees application transport network data link physical application transport network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical logical end-end transport

8 Spring Semester 2007EEC-484/584: Computer NetworksWenbing Zhao Multiplexing/Demultiplexing application transport network link physical P1 application transport network link physical application transport network link physical P2 P3 P4 P1 host 1 host 2 host 3 = process= socket delivering received segments to correct socket Demultiplexing at rcv host: gathering data from multiple sockets, enveloping data with header (later used for demultiplexing) Multiplexing at send host:

9 Spring Semester 2007EEC-484/584: Computer NetworksWenbing Zhao How Demultiplexing Works Host receives IP datagrams –Each datagram has source IP address, destination IP address –Each datagram carries 1 transport-layer segment –Each segment has source, destination port number Host uses IP addresses & port numbers to direct segment to appropriate socket source port #dest port # 32 bits application data (message) other header fields TCP/UDP segment format

10 Spring Semester 2007EEC-484/584: Computer NetworksWenbing Zhao Principles of Reliable Data Transfer characteristics of unreliable channel will determine complexity of reliable data transfer protocol (rdt)

11 Spring Semester 2007EEC-484/584: Computer NetworksWenbing Zhao Reliable Data Transfer: Sliding Window Protocols Recall that we have studies several simplex reliable transfer protocols in data link layer Here we study a few more realistic protocols –A One-Bit Sliding Window Protocol –A Protocol Using Go Back n –A Protocol Using Selective Repeat

12 Spring Semester 2007EEC-484/584: Computer NetworksWenbing Zhao Sliding Window Protocols Full-duplex: Use same connection for data in both directions (A  B and B  A) Interleave data and ack packets –B piggybacks its ack for A ’ s packet onto B ’ s next packet –Savings of header in separate ack packet If B sends data infrequently, use timeout to determine when B should send ack in separate ack packet

13 Spring Semester 2007EEC-484/584: Computer NetworksWenbing Zhao Sliding Window Protocols Each packet contains sequence number in ranges 0..2 n -1 (for n-bit sequence numbers) Sending window – list of consecutive sequence numbers of packets that sender is permitted to send st outstanding packet Last packet sent ack A new packet sent (if send window allows) Sent window enlarges when more packet is sent Sent window shrinks when the ack corresponding to the 1 st outstanding packet Is received

14 Spring Semester 2007EEC-484/584: Computer NetworksWenbing Zhao Sliding Window Protocols When new packet arrives from application layer, it is given next highest sequence number, and upper edge of window is incremented When ack arrives from receiver, lower edge of window is incremented Within sending window, packets sent but not acked –Sender must keep those packets for possible retransmission –If max window size = w, need w buffers

15 Spring Semester 2007EEC-484/584: Computer NetworksWenbing Zhao Sliding Window Protocols Receiving window – list of consecutive sequence numbers of packets that receiver is permitted to accept When packet with (seq num = lower edge of window) arrives –Packet is passed to higher layer –Ack is generated –Window slid down by 1 (remains same size as was initially)

16 Spring Semester 2007EEC-484/584: Computer NetworksWenbing Zhao One-Bit Sliding Window Protocol A sliding window of size 1, with a 3-bit sequence number Initially After first packet sent After first packet received After first ack received

17 Spring Semester 2007EEC-484/584: Computer NetworksWenbing Zhao One-Bit Sliding Window Protocol No duplicate, no omissions, no deadlock, but inefficient  The notation is (seq, ack, packet number)  An asterisk indicates where a packet is delivered Normal case Abnormal case

18 Spring Semester 2007EEC-484/584: Computer NetworksWenbing Zhao Sliding Window Protocols: Pipelining Problem of one-bit sliding window protocol: –Sender blocks till receives acks Solution: pipelining –Allow sender to send up to w packets before blocking With pipelining, if packet in middle is lost or damaged, what to do with the packets following it ? Solution: two strategies –Go Back n - all the packets following it are discarded –Selective repeat – nack the lost/damaged packet and retransmit that packet

19 Spring Semester 2007EEC-484/584: Computer NetworksWenbing Zhao Pipelining and Error Recovery Go back n: Effective receiver window size is 1 Packets discarded

20 Spring Semester 2007EEC-484/584: Computer NetworksWenbing Zhao Pipelining and Error Recovery Selective repeat Can you think of an alternative to go-back-n and selective-repeat? Packets buffered

21 Spring Semester 2007EEC-484/584: Computer NetworksWenbing Zhao Go Back n Sender –Stores all packets in output buffer –Must get acks in order in which packets are sent Receiver –Discards all packets following lost or damaged one Works well –If transmission errors rare and few retransmissions –If lot of traffic in both directions

22 Spring Semester 2007EEC-484/584: Computer NetworksWenbing Zhao Selective Repeat Receiver accepts and buffers packets following lost or damaged packets Both sender and receiver maintain windows –Sender ’ s window starts at 0, grows to MAX SEQ –Receiver ’ s window fixed at MAX SEQ Receiver has buffer reserved for each seq num in its window

23 Spring Semester 2007EEC-484/584: Computer NetworksWenbing Zhao Selective Repeat When packet arrives, receiver checks if seq num in window If so and if not already received, this packet is accepted and stored If all lower numbered packets delivered, this packet is delivered as well

24 Spring Semester 2007EEC-484/584: Computer NetworksWenbing Zhao Non-Sequential Receive Problem New range of valid sequence numbers for receiver can overlap old range Overlap can contain duplicates Example: n = 3-bit seq num (8 possible numbers, 0 through 7, back to 0)

25 Spring Semester 2007EEC-484/584: Computer NetworksWenbing Zhao Non-Sequential Receive Problem Sender sends 0,1,2,3,4,5,6 Receiver –Receives 0,1,2,3,4,5,6 –Sends ack but ack gets lost –Expects to receive 7,0,1,2,3,4,

26 Spring Semester 2007EEC-484/584: Computer NetworksWenbing Zhao Non-Sequential Receive Problem Sender times out, retransmits 0,1,2,3,4,5,6 Receiver checks 0 is in new window, thinks new 0 because has sent ack for old 6, waits for

27 Spring Semester 2007EEC-484/584: Computer NetworksWenbing Zhao Non-Sequential Receive Problem Sender receives ack for 0-6, sends 7 Receiver receives 7, delivers 7 and old 0 (as new 0 !)

28 Spring Semester 2007EEC-484/584: Computer NetworksWenbing Zhao Non-Sequential Receive Problem The problem is caused by the overlap of sequence number between the new receiving window and the old receiving window Overlap

29 Spring Semester 2007EEC-484/584: Computer NetworksWenbing Zhao Non-Sequential Receive Problem Solution: –make sure no overlap when receiver advances its window –Make window size w =1/2 range of seq numbers No Overlap

30 Spring Semester 2007EEC-484/584: Computer NetworksWenbing Zhao Selective Repeat If no reverse traffic before timer goes off, separate ack is sent When receiver suspects error, sends NAK back to sender (request for retransmission) Two circumstances that trigger NAK –Damaged packet arrives –Packet other than expected one arrives, suspect expected one is lost Receiver sends only one NAK for packet expected