ECE 428 Transport-level Protocols (Layer 4) TCP: Transmission Control Protocol UDP: User Datagram Protocol

Size: px
Start display at page:

Download "ECE 428 Transport-level Protocols (Layer 4) TCP: Transmission Control Protocol UDP: User Datagram Protocol"

Transcription

1 ECE 428 Transport-level Protocols (Layer 4) TCP: Transmission Control Protocol UDP: User Datagram Protocol 1

2 Need for a Protocol above IP layer IP layer Delivers packets to a host from another host Delivery: best-effort basis Can reorder, lose, duplicate Is not sure if data has been delivered (no end-to-end ACK) Thus, need for an upper layer protocol TCP Deliver data to applications <= end-to-end semantics Maintain data flow between applications. Receiver s view» Reliable: Ordered, without loss, no duplicate. Drop data belonging to an earlier association between applications.» Flow control Sender s view: Confirmed delivery Congestion control: by the sender <= Reduce network congestion 2

3 Transport-level protocols TCP: Operates in a connection-oriented mode. Establish a connection between two applications Identify and discard old data segments from an earlier connection. Data transfer Flow and congestion control is done on a connection basis. Other desirable features: ordered, no loss, no duplicate. Disconnection Do it in a graceful manner so that segments are not transmitted when there is no one to receive it. User Datagram Protocol (UDP): Just send 3

4 TCP Header Source Port Destination Port Header Length Sequence Number Acknowledgment Number Reserved U A P R S F Window size Checksum Urgent Pointer H e a d e r Options Padding Data U: URG (Urgent) A: ACK P: PSH (Push) R: RST (Reset) S: SYN (Sync.) F: FIN (Finish) 4

5 TCP: Application Context Client Server Read/Write Port TCP Connection Read/Write Port TCP IP/DLC/ MAC/PHY Internet IP/DLC/ MAC/PHY Ports - Reserved for well-known services - Telnet/23, SMTP/25, FTP/20,21, HTTP/80, BGP/179, RIP/520, DNS/53, lp/515 - Free ports (allocated by the OS) 5

6 Source/destination Ports TCP: Header Port: A 16 bit local unique number on the host <= OS Port + Host IP => Unique end point of an application (Src Port + IP, Dst Port + IP): Unique connection ID Source and destination IP: NOT part of a TCP segment 32-bit seq. number SYN = 0 (DATA segment) Position of the first data byte of this segment in the sender s data stream SYN = 1 ISN to be used in the sender s byte stream. (in fact, ISN+1) Different each time a host requests a connection 6

7 TCP: Header 32-bit ACK number Valid if ACK = 1 Identifies the sequence number of the NEXT data byte that the sender of the ACK expects to receive. Header length in 4-byte units Lets the receiver know the beginning of the data area due to the variable length of the Option field. Reserved (6 bits) For future use. All 0 s. 7

8 TCP: Header URG: 1 => Urgent Pointer is valid ACK: 1 => ACK Seq# is valid PSH: 1 : The receiving TCP module passes the data to the application immediately 0 : The receiving TCP module may delay the data RST: 1 => Tells the receiver to abort the conn. SYN: This bit requests a connection FIN 1 : Sender has no more data to send, but is ready to receive. 8

9 Window Size TCP: Header The number of bytes the sender is willing to receive. Used in flow control and congestion control Checksum: For error detection Urgent Pointer: Valid if URG = 1 Urgent data Start byte is not specified, but it is considered to be the start of the seg. Final byte in receiver s buffer: Seq# + Urgent Ptr. The sender can send control information to the receiver to be processed on a priority basis. 9

10 Options MSS TCP: Header The Max Segment Size accepted by the sender Specified during connection set up Window Scale Allows the use of a larger advertised Window Size TimeStamp Intended to be used on high-speed connection Sequence number may wrap around during a connection. New segments are distinguished from old segments. Also used in Round-Trip Time (RTT) calculation 10

11 TCP Connection: General TCP connection A short- or long-term association between two apps. Comm params are exchanged before data segments: ISN Receive Window (RWND) Max Segment Size (MSS) Start of a connection is known to both the parties so that an old (terminated) connection has no impact. Bidirectional (Full-duplex) 11

12 TCP Conn.: Established in two ways Server Client Peer Peer Listen (Passive) Active Active Active Most common Possible mode The server must be running, and attached to a port known to the client. 12

13 TCP Connection: 3-way handshake Use the fields necessary to understand it Connection request (SYN) Sequence number Acknowledgement (ACK) Window size 13

14 TCP Connection: 3-way handshake Active open Client Seg(Seq# = 8000,SYN) Server Passive open Seg(Seq#=15000, Ack = 8001, SYN+ACK, RWND = 5000) Seg(Seq#=8000, Ack = 15001, ACK, RWND = 10000) 14

15 TCP Connection: 3-way handshake SYN segment from client to server» SYN = 1» A random initial Seq# (ISN)» RWND is undefined (defined later )» Options SYN segment from server to client SYN = 1 A random initial Seq# (ISN) ACK = 1 (servers acks the received SYN segment) Ack Seq.#: The sequence # of first data byte to be received RWND: Receive window size ACK from client to server ACKs the second SYN segment RWND 15

16 TCP: Connection Management State Diagram Timeout/RST LISTEN/ (Create TCB) SYN/ SYN, ACK RST/ CLOSED LISTEN CLOSE/ SEND/ SYN CONNECT/ (Create TCB) SYN CLOSE or Time-out or RST/ (Delete TCB) SYN_RCVD SYN/ SYN, ACK SYN_SENT CLOSE/ FIN CLOSE/ FIN ACK/ ESTABLISHED FIN/ ACK SYN,ACK/ ACK CLOSE_WAIT FIN_WAIT1 ACK/ FIN/ ACK CLOSING FIN,ACK/ ACK ACK/ CLOSE/ FIN LAST_ACK ACK/ FIN_WAIT2 FIN/ ACK TIME_WAIT 2MSL Time-out/ (Delete TCB) 16

17 Client/Server Communication and State Transitions 17

18 Client Active open Active close 2MSL timer Closed SYN SENT Established FIN WAIT-1 FIN WAIT-2 Data TCP Operation SYN SYN+ACK Transfer ACK FIN ACK FIN Closed LISTEN SYN RCVD Established CLOSE WAIT LAST ACK Server Passive open Inform app. Passive close Client states TIME WAIT Closed ACK Closed Server states 18

19 TCP: Flow Control FC: Regulates the amount of data a source can send before receiving an ACK. Using a Sliding Window Protocol The bytes within the window are the bytes that can be in transit. The (sender s) window is opened/ closed. 19

20 TCP: Flow Control Window Size = min(rwnd, CWND) RWND: Receiver s window The receiver sends this info to the sender in a segment There is a field for this in segment header. CWND: Congestion window Used for congestion control Managed by the sender 20

21 TCP: Flow Control Silly Window Syndrome: TCP/IP header = 40 bytes (#of data bytes/total segment length) is very low. Can occur if the sender and/or the receiver is very slow. Syndrome created by sender (Nagle s solution) Sender sends the first segment even if it is a small one. Next, the sender waits until» An ACK is received, OR» A maximum-size segment is accumulated. Before sending the next segment and repeat the next... Syndrome created by receiver Clark s solution: Send an ACK, and close the window until another segment can be received or buffer is ½ empty. Delayed ACK: at most 500 ms; 21

22 Mechanisms for detecting TCP: Error Control Corrupted segments, lost segments, out-of-order segments, duplicated segments Mechanisms for error detection and correction Checksum (header + data) ACK Timeout (a retransmission timer for each segment) 22

23 ACK Types Positive ACK TCP: ACK ACK (flag) = 1 ACK Sequence# => The expected sequence number Selective ACK There is no provision for SACK in TCP header Some implementations use an Option field 23

24 ACK Generation Rules When an in-order data segment is received, delay the ACK until Another data segment is received, OR 500 ms has elapsed. When an out of sequence segment with a higher sequence # arrives Send an ACK with the expected seq# Ask for fast retransmission: Send 3 ACKs. When a missing segment arrives, send an ACK to announce the next seq# expected. If a duplicate segment arrives, immediately send an ACK. 24

25 Central to error control Retransmission occurs TCP: Retransmission When a retransmission timer expires Sender starts a Retrans. Time-Out (RTO) timer for each segment sent (except for ACK segments) Three duplicate ACKs are received A mechanism for fast retransmission Useful when the receiver notices one missing segment, but the subsequent segments are just fine.. Note: Out-of-order segments are simply buffered. Earlier implementations simply dropped those. 25

26 TCP: Congestion Control : Host H Internet (Net of routers) H Total Output rate No congestion Network capacity congestion H : H Network input Network output Total Input rate Too many packets are sent in Congestion 26

27 TCP: Causes of congestion Packets arriving on different input links want to go out on the same output link Queue builds up for the outgoing link. Router starts dropping packets. Slow routers Queues build up if computing tasks take too much time. Queuing buffers, updating tables, running routing protocols 27

28 General Principles of CC Static decisions - Decide when to accept new traffic - Decide when to discard packets (Congestion prevention policy) Dynamic decisions (in 3 parts) - Monitor the system to know when and where congestion occur. - Pass on this information to where action can be taken. - Adjust system operation to correct the problem. 28

29 Congestion Control Dynamic decision A variety of metrics can be used to monitor a system. Fraction of all packets discarded due to lack of buffer Average queue length Number of retransmitted packets Average packet delay Dissemination of congestion information A field can be reserved in packet header to carry this info. Hosts and routers can send probe packets to enquire. Flow adjustment Deny service to some users. Degrade service to some users. Have users schedule their demand in a more predictable manner. 29

30 Congestion Control Congestion Prevention Policies DLC level Don t discard out-of-sequence packets. Selective-Repeat is better than Go-back-N. May not use a separate packet to ACK (use piggyback). Network level Spread traffic over many paths. Use a good discard policy File transfer: Drop new packets Real-time: Drop old packets TCP level. Next 30

31 TCP: Congestion Control Achieved by putting one more condition for FC Actual Window Size = min (RWND, CWND) Main idea Slow start but quickly speed up to a threshold Congestion avoidance beyond threshold, increase linearly Congestion detection Go back to slow start. 31

32 TCP: Congestion Control Slow start Initially, CW = 1: Transmit 1 segment (MSS) If ACK received before TO CW = 2 (= CW x 2): Transmit 2 segments (MSS) If ACKs received before TO CW = 4 (= CW x 2): Transmit 4 segments (MSS) If ACKs received before TO CW = 8 (= CW x 2): Transmit 8 segments (MSS) : Continue until you hit a threshold: Congestion Threshold (CT) Normally, CT = 64 KBytes Congestion Avoidance: Additive Inc. Each time the whole window of segments is ACKed CW = CW + 1 CWmax = RWND Congestion Detection RTO timer goes off 3 copies of an ACK are received Update CT and CW RTO timer goes off CT = CW/2 and CW = 1 3 ACKs received CT = CW/2 and CW = CT 32

33 TCP: Congestion Control Example: SS-AIMD CW Time 33

34 Four kinds of timers TCP: Timers Retransmission Time-Out (RTO) timer Persistence timer Keepalive timer TIME-WAIT timer 34

35 Operation TCP: Timers (RTO)» For each segment transmitted (except ACK), start an RTO» If RTO goes off, retransmit the segment and restart RTO» If ACK is received before the RTO goes off, kill RTO RTT S (RTT Smoothed) After first measurement RTT S = RTT M After another measurement RTT S = (1 α )RTT S + α.rtt M RTT D (RTT Deviation) RTO After first measurement RTT D = RTT M /2 After another measurement RTT D = (1 β )RTT D + β. RTT S RTT M Original Initial value After a measurement RTO = RTT S + 4. RTT D 35

36 Problem Solution TCP: Timers (Persistence) A receiver can close the sender s window and reopen it with an ACK If the ACK is lost, there is deadlock. When a sending TCP receives a segment with RWND = 0, start a persistence timer. Persistence timer goes off: Send a probe segment (1 byte data) to alert the receiver. Persistence timer value» Initially: Equal to RTO» Subsequently: Doubled with each retransmission of the probe.» Saturates at 60 sec. 36

37 TCP: Timers (Keepalive and TIME-WAIT) Keepalive Timer To sustain mostly idle connections (as between BGP routers) Each time the server hears from a client Reset the timer: Length = 2 hours. If the server does not hear from the client for two hours» Send a probe segment. If there is no response after 10 probes (75 sec apart)» Assume that the client is down. TIME-WAIT Timer (2.MSL) Used during connection termination. 37

38 OS Support for TCP-based Network I/O 38

39 Server s calls OS Support for TCP-based Network I/O sockfd = socket(protocol options, ) status = bind(sockfd, *myaddress, ) status = listen(sockfd, backlog)» Convert the socket to a passive socket; -1 for error confd = accept(socketfd, *clientaddress, )» Returns a connected socket for a client; -1 for error status = read(confd, *buf, len) Client s calls sockfd = socket(protocol options, ) status = connect(sockfd, *serveraddress, )) status = write(sockfd, *buf, len) 39

40 OS Support for TCP-based Network I/O Interested in network programming? UNIX Network Programming The Socket Networking API Vol. 1, 3 rd Edition W. Richard Stevens, et al. Addison Wesley 40

Transport Layer Protocols

Transport Layer Protocols Transport Layer Protocols Version. Transport layer performs two main tasks for the application layer by using the network layer. It provides end to end communication between two applications, and implements

More information

B-2 Analyzing TCP/IP Networks with Wireshark. Ray Tompkins Founder of Gearbit www.gearbit.com

B-2 Analyzing TCP/IP Networks with Wireshark. Ray Tompkins Founder of Gearbit www.gearbit.com B-2 Analyzing TCP/IP Networks with Wireshark June 15, 2010 Ray Tompkins Founder of Gearbit www.gearbit.com SHARKFEST 10 Stanford University June 14-17, 2010 TCP In this session we will examine the details

More information

Computer Networks UDP and TCP

Computer Networks UDP and TCP Computer Networks UDP and TCP Saad Mneimneh Computer Science Hunter College of CUNY New York I m a system programmer specializing in TCP/IP communication protocol on UNIX systems. How can I explain a thing

More information

Computer Networks. Chapter 5 Transport Protocols

Computer Networks. Chapter 5 Transport Protocols Computer Networks Chapter 5 Transport Protocols Transport Protocol Provides end-to-end transport Hides the network details Transport protocol or service (TS) offers: Different types of services QoS Data

More information

Outline. TCP connection setup/data transfer. 15-441 Computer Networking. TCP Reliability. Congestion sources and collapse. Congestion control basics

Outline. TCP connection setup/data transfer. 15-441 Computer Networking. TCP Reliability. Congestion sources and collapse. Congestion control basics Outline 15-441 Computer Networking Lecture 8 TCP & Congestion Control TCP connection setup/data transfer TCP Reliability Congestion sources and collapse Congestion control basics Lecture 8: 09-23-2002

More information

Transport Layer. Chapter 3.4. Think about

Transport Layer. Chapter 3.4. Think about Chapter 3.4 La 4 Transport La 1 Think about 2 How do MAC addresses differ from that of the network la? What is flat and what is hierarchical addressing? Who defines the IP Address of a device? What is

More information

TCP Performance Management for Dummies

TCP Performance Management for Dummies TCP Performance Management for Dummies Nalini Elkins Inside Products, Inc. Monday, August 8, 2011 Session Number 9285 Our SHARE Sessions Orlando 9285: TCP/IP Performance Management for Dummies Monday,

More information

First Midterm for ECE374 03/09/12 Solution!!

First Midterm for ECE374 03/09/12 Solution!! 1 First Midterm for ECE374 03/09/12 Solution!! Instructions: Put your name and student number on each sheet of paper! The exam is closed book. You have 90 minutes to complete the exam. Be a smart exam

More information

This sequence diagram was generated with EventStudio System Designer (http://www.eventhelix.com/eventstudio).

This sequence diagram was generated with EventStudio System Designer (http://www.eventhelix.com/eventstudio). Client App Network Server App 25-May-13 15:32 (Page 1) This sequence diagram was generated with EventStudio System Designer (http://www.eventhelix.com/eventstudio). TCP is an end to end protocol which

More information

ICOM 5026-090: Computer Networks Chapter 6: The Transport Layer. By Dr Yi Qian Department of Electronic and Computer Engineering Fall 2006 UPRM

ICOM 5026-090: Computer Networks Chapter 6: The Transport Layer. By Dr Yi Qian Department of Electronic and Computer Engineering Fall 2006 UPRM ICOM 5026-090: Computer Networks Chapter 6: The Transport Layer By Dr Yi Qian Department of Electronic and Computer Engineering Fall 2006 Outline The transport service Elements of transport protocols A

More information

TCP/IP Optimization for Wide Area Storage Networks. Dr. Joseph L White Juniper Networks

TCP/IP Optimization for Wide Area Storage Networks. Dr. Joseph L White Juniper Networks TCP/IP Optimization for Wide Area Storage Networks Dr. Joseph L White Juniper Networks SNIA Legal Notice The material contained in this tutorial is copyrighted by the SNIA. Member companies and individuals

More information

Chapter 5. Transport layer protocols

Chapter 5. Transport layer protocols Chapter 5. Transport layer protocols This chapter provides an overview of the most important and common protocols of the TCP/IP transport layer. These include: User Datagram Protocol (UDP) Transmission

More information

TCP over Multi-hop Wireless Networks * Overview of Transmission Control Protocol / Internet Protocol (TCP/IP) Internet Protocol (IP)

TCP over Multi-hop Wireless Networks * Overview of Transmission Control Protocol / Internet Protocol (TCP/IP) Internet Protocol (IP) TCP over Multi-hop Wireless Networks * Overview of Transmission Control Protocol / Internet Protocol (TCP/IP) *Slides adapted from a talk given by Nitin Vaidya. Wireless Computing and Network Systems Page

More information

[Prof. Rupesh G Vaishnav] Page 1

[Prof. Rupesh G Vaishnav] Page 1 Basics The function of transport layer is to provide a reliable end-to-end communications service. It also provides data transfer service for the user layers above and shield the upper layers from the

More information

La couche transport dans l'internet (la suite TCP/IP)

La couche transport dans l'internet (la suite TCP/IP) La couche transport dans l'internet (la suite TCP/IP) C. Pham Université de Pau et des Pays de l Adour Département Informatique http://www.univ-pau.fr/~cpham Congduc.Pham@univ-pau.fr Cours de C. Pham,

More information

Visualizations and Correlations in Troubleshooting

Visualizations and Correlations in Troubleshooting Visualizations and Correlations in Troubleshooting Kevin Burns Comcast kevin_burns@cable.comcast.com 1 Comcast Technology Groups Cable CMTS, Modem, Edge Services Backbone Transport, Routing Converged Regional

More information

Improving the Performance of TCP Using Window Adjustment Procedure and Bandwidth Estimation

Improving the Performance of TCP Using Window Adjustment Procedure and Bandwidth Estimation Improving the Performance of TCP Using Window Adjustment Procedure and Bandwidth Estimation R.Navaneethakrishnan Assistant Professor (SG) Bharathiyar College of Engineering and Technology, Karaikal, India.

More information

TCP in Wireless Mobile Networks

TCP in Wireless Mobile Networks TCP in Wireless Mobile Networks 1 Outline Introduction to transport layer Introduction to TCP (Internet) congestion control Congestion control in wireless networks 2 Transport Layer v.s. Network Layer

More information

q Connection establishment (if connection-oriented) q Data transfer q Connection release (if conn-oriented) q Addressing the transport user

q Connection establishment (if connection-oriented) q Data transfer q Connection release (if conn-oriented) q Addressing the transport user Transport service characterization The Transport Layer End-to-End Protocols: UDP and TCP Connection establishment (if connection-oriented) Data transfer Reliable ( TCP) Unreliable / best effort ( UDP)

More information

TCP Flow Control. TCP Receiver Window. Sliding Window. Computer Networks. Lecture 30: Flow Control, Reliable Delivery

TCP Flow Control. TCP Receiver Window. Sliding Window. Computer Networks. Lecture 30: Flow Control, Reliable Delivery TCP Flow Control Computer Networks The receiver side of a TCP connection maintains a receiver buffer: Lecture : Flow Control, eliable elivery application process may be slow at reading from the buffer

More information

Ethernet. Ethernet. Network Devices

Ethernet. Ethernet. Network Devices Ethernet Babak Kia Adjunct Professor Boston University College of Engineering ENG SC757 - Advanced Microprocessor Design Ethernet Ethernet is a term used to refer to a diverse set of frame based networking

More information

Mobile Communications Chapter 9: Mobile Transport Layer

Mobile Communications Chapter 9: Mobile Transport Layer Mobile Communications Chapter 9: Mobile Transport Layer Motivation TCP-mechanisms Classical approaches Indirect TCP Snooping TCP Mobile TCP PEPs in general Additional optimizations Fast retransmit/recovery

More information

La couche transport dans l'internet (la suite TCP/IP)

La couche transport dans l'internet (la suite TCP/IP) La couche transport dans l'internet (la suite TCP/IP) C. Pham RESO-LIP/INRIA Université Lyon 1 http://www.ens-lyon.fr/~cpham Basé sur les transparent de Shivkumar Kalyanaraman La couche transport dans

More information

Final for ECE374 05/06/13 Solution!!

Final for ECE374 05/06/13 Solution!! 1 Final for ECE374 05/06/13 Solution!! Instructions: Put your name and student number on each sheet of paper! The exam is closed book. You have 90 minutes to complete the exam. Be a smart exam taker -

More information

CSE 473 Introduction to Computer Networks. Exam 2 Solutions. Your name: 10/31/2013

CSE 473 Introduction to Computer Networks. Exam 2 Solutions. Your name: 10/31/2013 CSE 473 Introduction to Computer Networks Jon Turner Exam Solutions Your name: 0/3/03. (0 points). Consider a circular DHT with 7 nodes numbered 0,,...,6, where the nodes cache key-values pairs for 60

More information

Prefix AggregaNon. Company X and Company Y connect to the same ISP, and they are assigned the prefixes:

Prefix AggregaNon. Company X and Company Y connect to the same ISP, and they are assigned the prefixes: Data Transfer Consider transferring an enormous file of L bytes from Host A to B using a MSS of 1460 bytes and a 66 byte header. What is the maximum value of L such that TCP sequence numbers are not exhausted?

More information

TCP/IP Fundamentals. OSI Seven Layer Model & Seminar Outline

TCP/IP Fundamentals. OSI Seven Layer Model & Seminar Outline OSI Seven Layer Model & Seminar Outline TCP/IP Fundamentals This seminar will present TCP/IP communications starting from Layer 2 up to Layer 4 (TCP/IP applications cover Layers 5-7) IP Addresses Data

More information

TCP and Wireless Networks Classical Approaches Optimizations TCP for 2.5G/3G Systems. Lehrstuhl für Informatik 4 Kommunikation und verteilte Systeme

TCP and Wireless Networks Classical Approaches Optimizations TCP for 2.5G/3G Systems. Lehrstuhl für Informatik 4 Kommunikation und verteilte Systeme Chapter 2 Technical Basics: Layer 1 Methods for Medium Access: Layer 2 Chapter 3 Wireless Networks: Bluetooth, WLAN, WirelessMAN, WirelessWAN Mobile Networks: GSM, GPRS, UMTS Chapter 4 Mobility on the

More information

Question: 3 When using Application Intelligence, Server Time may be defined as.

Question: 3 When using Application Intelligence, Server Time may be defined as. 1 Network General - 1T6-521 Application Performance Analysis and Troubleshooting Question: 1 One component in an application turn is. A. Server response time B. Network process time C. Application response

More information

Networking Overview. (as usual, thanks to Dave Wagner and Vern Paxson)

Networking Overview. (as usual, thanks to Dave Wagner and Vern Paxson) Networking Overview (as usual, thanks to Dave Wagner and Vern Paxson) Focus For This Lecture Sufficient background in networking to then explore security issues in next few lectures Networking = the Internet

More information

TCP/IP Networking for Wireless Systems. Integrated Communication Systems Group Ilmenau University of Technology

TCP/IP Networking for Wireless Systems. Integrated Communication Systems Group Ilmenau University of Technology TCP/IP Networking for Wireless Systems Integrated Communication Systems Group Ilmenau University of Technology Content Internet Protocol Suite Link Layer: Ethernet, PPP, ARP, MAC Addressing Network Layer:

More information

Access Control: Firewalls (1)

Access Control: Firewalls (1) Access Control: Firewalls (1) World is divided in good and bad guys ---> access control (security checks) at a single point of entry/exit: in medieval castles: drawbridge in corporate buildings: security/reception

More information

Names & Addresses. Names & Addresses. Hop-by-Hop Packet Forwarding. Longest-Prefix-Match Forwarding. Longest-Prefix-Match Forwarding

Names & Addresses. Names & Addresses. Hop-by-Hop Packet Forwarding. Longest-Prefix-Match Forwarding. Longest-Prefix-Match Forwarding Names & Addresses EE 122: IP Forwarding and Transport Protocols Scott Shenker http://inst.eecs.berkeley.edu/~ee122/ (Materials with thanks to Vern Paxson, Jennifer Rexford, and colleagues at UC Berkeley)

More information

First Midterm for ECE374 03/24/11 Solution!!

First Midterm for ECE374 03/24/11 Solution!! 1 First Midterm for ECE374 03/24/11 Solution!! Note: In all written assignments, please show as much of your work as you can. Even if you get a wrong answer, you can get partial credit if you show your

More information

IP address format: Dotted decimal notation: 10000000 00001011 00000011 00011111 128.11.3.31

IP address format: Dotted decimal notation: 10000000 00001011 00000011 00011111 128.11.3.31 IP address format: 7 24 Class A 0 Network ID Host ID 14 16 Class B 1 0 Network ID Host ID 21 8 Class C 1 1 0 Network ID Host ID 28 Class D 1 1 1 0 Multicast Address Dotted decimal notation: 10000000 00001011

More information

Pig Laboratory. Additional documentation for the laboratory. Exercises and Rules. Tstat Data

Pig Laboratory. Additional documentation for the laboratory. Exercises and Rules. Tstat Data Pig Laboratory This laboratory is dedicated to Hadoop Pig and consists of a series of exercises: some of them somewhat mimic those in the MapReduce laboratory, others are inspired by "real-world" problems.

More information

COMP 3331/9331: Computer Networks and Applications. Lab Exercise 3: TCP and UDP (Solutions)

COMP 3331/9331: Computer Networks and Applications. Lab Exercise 3: TCP and UDP (Solutions) COMP 3331/9331: Computer Networks and Applications Lab Exercise 3: TCP and UDP (Solutions) AIM To investigate the behaviour of TCP and UDP in greater detail. EXPERIMENT 1: Understanding TCP Basics Tools

More information

TOE2-IP FTP Server Demo Reference Design Manual Rev1.0 9-Jan-15

TOE2-IP FTP Server Demo Reference Design Manual Rev1.0 9-Jan-15 TOE2-IP FTP Server Demo Reference Design Manual Rev1.0 9-Jan-15 1 Introduction File Transfer Protocol (FTP) is the protocol designed for file sharing over internet. By using TCP/IP for lower layer, FTP

More information

Exercises TCP/IP Networking. Solution. With Solutions

Exercises TCP/IP Networking. Solution. With Solutions Exercises TCP/IP Networking Solution. With Solutions Jean-Yves Le Boudec Fall 2010 Exercises marked with a were given at exams in the past. 1 Module 1: TCP/IP Architecture Exercise 1.1 Elaine is setting

More information

Midterm Exam CMPSCI 453: Computer Networks Fall 2011 Prof. Jim Kurose

Midterm Exam CMPSCI 453: Computer Networks Fall 2011 Prof. Jim Kurose Midterm Exam CMPSCI 453: Computer Networks Fall 2011 Prof. Jim Kurose Instructions: There are 4 questions on this exam. Please use two exam blue books answer questions 1, 2 in one book, and the remaining

More information

Lecture 2-ter. 2. A communication example Managing a HTTP v1.0 connection. G.Bianchi, G.Neglia, V.Mancuso

Lecture 2-ter. 2. A communication example Managing a HTTP v1.0 connection. G.Bianchi, G.Neglia, V.Mancuso Lecture 2-ter. 2 A communication example Managing a HTTP v1.0 connection Managing a HTTP request User digits URL and press return (or clicks ). What happens (HTTP 1.0): 1. Browser opens a TCP transport

More information

What is a DoS attack?

What is a DoS attack? CprE 592-YG Computer and Network Forensics Log-based Signature Analysis Denial of Service Attacks - from analyst s point of view Yong Guan 3216 Coover Tel: (515) 294-8378 Email: guan@ee.iastate.edu October

More information

Higher Layer Protocols: UDP, TCP, ATM, MPLS

Higher Layer Protocols: UDP, TCP, ATM, MPLS Higher Layer Protocols: UDP, TCP, ATM, MPLS Massachusetts Institute of Technology Slide 1 The TCP/IP Protocol Suite Transmission Control Protocol / Internet Protocol Developed by DARPA to connect Universities

More information

Transport and Network Layer

Transport and Network Layer Transport and Network Layer 1 Introduction Responsible for moving messages from end-to-end in a network Closely tied together TCP/IP: most commonly used protocol o Used in Internet o Compatible with a

More information

Overview of TCP/IP. TCP/IP and Internet

Overview of TCP/IP. TCP/IP and Internet Overview of TCP/IP System Administrators and network administrators Why networking - communication Why TCP/IP Provides interoperable communications between all types of hardware and all kinds of operating

More information

IP Network Layer. Datagram ID FLAG Fragment Offset. IP Datagrams. IP Addresses. IP Addresses. CSCE 515: Computer Network Programming TCP/IP

IP Network Layer. Datagram ID FLAG Fragment Offset. IP Datagrams. IP Addresses. IP Addresses. CSCE 515: Computer Network Programming TCP/IP CSCE 515: Computer Network Programming TCP/IP IP Network Layer Wenyuan Xu Department of Computer Science and Engineering University of South Carolina IP Datagrams IP is the network layer packet delivery

More information

Protocols and Architecture. Protocol Architecture.

Protocols and Architecture. Protocol Architecture. Protocols and Architecture Protocol Architecture. Layered structure of hardware and software to support exchange of data between systems/distributed applications Set of rules for transmission of data between

More information

Objectives of Lecture. Network Architecture. Protocols. Contents

Objectives of Lecture. Network Architecture. Protocols. Contents Objectives of Lecture Network Architecture Show how network architecture can be understood using a layered approach. Introduce the OSI seven layer reference model. Introduce the concepts of internetworking

More information

2057-15. First Workshop on Open Source and Internet Technology for Scientific Environment: with case studies from Environmental Monitoring

2057-15. First Workshop on Open Source and Internet Technology for Scientific Environment: with case studies from Environmental Monitoring 2057-15 First Workshop on Open Source and Internet Technology for Scientific Environment: with case studies from Environmental Monitoring 7-25 September 2009 TCP/IP Networking Abhaya S. Induruwa Department

More information

Chapter 11. User Datagram Protocol (UDP)

Chapter 11. User Datagram Protocol (UDP) Chapter 11 User Datagram Protocol (UDP) The McGraw-Hill Companies, Inc., 2000 1 CONTENTS PROCESS-TO-PROCESS COMMUNICATION USER DATAGRAM CHECKSUM UDP OPERATION USE OF UDP UDP PACKAGE The McGraw-Hill Companies,

More information

8-bit Microcontroller. Application Note. AVR460: Embedded Web Server. Introduction. System Description

8-bit Microcontroller. Application Note. AVR460: Embedded Web Server. Introduction. System Description AVR460: Embedded Web Server Introduction Intelligent homes will be connected to the Internet and require a microcontroller to communicate with the other network devices. The AVR embedded web server can

More information

High Speed Internet Access Using Satellite-Based DVB Networks

High Speed Internet Access Using Satellite-Based DVB Networks High Speed Internet Access Using Satellite-Based DVB Networks Nihal K. G. Samaraweera and Godred Fairhurst Electronics Research Group, Department of Engineering University of Aberdeen, Aberdeen, AB24 3UE,

More information

Effect of Packet-Size over Network Performance

Effect of Packet-Size over Network Performance International Journal of Electronics and Computer Science Engineering 762 Available Online at www.ijecse.org ISSN: 2277-1956 Effect of Packet-Size over Network Performance Abhi U. Shah 1, Daivik H. Bhatt

More information

First Midterm for ECE374 02/25/15 Solution!!

First Midterm for ECE374 02/25/15 Solution!! 1 First Midterm for ECE374 02/25/15 Solution!! Instructions: Put your name and student number on each sheet of paper! The exam is closed book. You have 90 minutes to complete the exam. Be a smart exam

More information

Transport Layer and Data Center TCP

Transport Layer and Data Center TCP Transport Layer and Data Center TCP Hakim Weatherspoon Assistant Professor, Dept of Computer Science CS 5413: High Performance Systems and Networking September 5, 2014 Slides used and adapted judiciously

More information

Data Networks Summer 2007 Homework #3

Data Networks Summer 2007 Homework #3 Data Networks Summer Homework # Assigned June 8, Due June in class Name: Email: Student ID: Problem Total Points Problem ( points) Host A is transferring a file of size L to host B using a TCP connection.

More information

Overview. Securing TCP/IP. Introduction to TCP/IP (cont d) Introduction to TCP/IP

Overview. Securing TCP/IP. Introduction to TCP/IP (cont d) Introduction to TCP/IP Overview Securing TCP/IP Chapter 6 TCP/IP Open Systems Interconnection Model Anatomy of a Packet Internet Protocol Security (IPSec) Web Security (HTTP over TLS, Secure-HTTP) Lecturer: Pei-yih Ting 1 2

More information

Lecture 15: Congestion Control. CSE 123: Computer Networks Stefan Savage

Lecture 15: Congestion Control. CSE 123: Computer Networks Stefan Savage Lecture 15: Congestion Control CSE 123: Computer Networks Stefan Savage Overview Yesterday: TCP & UDP overview Connection setup Flow control: resource exhaustion at end node Today: Congestion control Resource

More information

TCP over Wireless Networks

TCP over Wireless Networks TCP over Wireless Networks Raj Jain Professor of Computer Science and Engineering Washington University in Saint Louis Saint Louis, MO 63130 Audio/Video recordings of this lecture are available at: http://www.cse.wustl.edu/~jain/cse574-10/

More information

Introduction to TCP/IP

Introduction to TCP/IP Introduction to TCP/IP Raj Jain The Ohio State University Columbus, OH 43210 Nayna Networks Milpitas, CA 95035 Email: Jain@ACM.Org http://www.cis.ohio-state.edu/~jain/ 1 Overview! Internetworking Protocol

More information

D. SamKnows Methodology 20 Each deployed Whitebox performs the following tests: Primary measure(s)

D. SamKnows Methodology 20 Each deployed Whitebox performs the following tests: Primary measure(s) v. Test Node Selection Having a geographically diverse set of test nodes would be of little use if the Whiteboxes running the test did not have a suitable mechanism to determine which node was the best

More information

Application Level Congestion Control Enhancements in High BDP Networks. Anupama Sundaresan

Application Level Congestion Control Enhancements in High BDP Networks. Anupama Sundaresan Application Level Congestion Control Enhancements in High BDP Networks Anupama Sundaresan Organization Introduction Motivation Implementation Experiments and Results Conclusions 2 Developing a Grid service

More information

We will give some overview of firewalls. Figure 1 explains the position of a firewall. Figure 1: A Firewall

We will give some overview of firewalls. Figure 1 explains the position of a firewall. Figure 1: A Firewall Chapter 10 Firewall Firewalls are devices used to protect a local network from network based security threats while at the same time affording access to the wide area network and the internet. Basically,

More information

A Survey on Congestion Control Mechanisms for Performance Improvement of TCP

A Survey on Congestion Control Mechanisms for Performance Improvement of TCP A Survey on Congestion Control Mechanisms for Performance Improvement of TCP Shital N. Karande Department of Computer Science Engineering, VIT, Pune, Maharashtra, India Sanjesh S. Pawale Department of

More information

Chapter 6 Congestion Control and Resource Allocation

Chapter 6 Congestion Control and Resource Allocation Chapter 6 Congestion Control and Resource Allocation 6.3 TCP Congestion Control Additive Increase/Multiplicative Decrease (AIMD) o Basic idea: repeatedly increase transmission rate until congestion occurs;

More information

Kap. 2. Transport - Schicht

Kap. 2. Transport - Schicht Kap. 2 Transport - Schicht 2-2 Transport-Schicht Transport-Schicht: bietet eine logische Kommunikation zw. Anwendungen TCP: - Verbindungsorientiert mittels 3-Way-Handshake - zuverlässiger Datentransport

More information

Lecture Objectives. Lecture 07 Mobile Networks: TCP in Wireless Networks. Agenda. TCP Flow Control. Flow Control Can Limit Throughput (1)

Lecture Objectives. Lecture 07 Mobile Networks: TCP in Wireless Networks. Agenda. TCP Flow Control. Flow Control Can Limit Throughput (1) Lecture Objectives Wireless and Mobile Systems Design Lecture 07 Mobile Networks: TCP in Wireless Networks Describe TCP s flow control mechanism Describe operation of TCP Reno and TCP Vegas, including

More information

Transport layer protocols for ad hoc networks

Transport layer protocols for ad hoc networks Transport layer protocols for ad hoc networks Lecturer: Dmitri A. Moltchanov E-mail: moltchan@cs.tut.fi http://www.cs.tut.fi/kurssit/tlt-2616/ Which transport layer protocol? Classification of transport

More information

Understanding Layer 2, 3, and 4 Protocols

Understanding Layer 2, 3, and 4 Protocols 2 Understanding Layer 2, 3, and 4 Protocols While many of the concepts well known to traditional Layer 2 and Layer 3 networking still hold true in content switching applications, the area introduces new

More information

Network Layer: Network Layer and IP Protocol

Network Layer: Network Layer and IP Protocol 1 Network Layer: Network Layer and IP Protocol Required reading: Garcia 7.3.3, 8.1, 8.2.1 CSE 3213, Winter 2010 Instructor: N. Vlajic 2 1. Introduction 2. Router Architecture 3. Network Layer Protocols

More information

CS 457 Lecture 19 Global Internet - BGP. Fall 2011

CS 457 Lecture 19 Global Internet - BGP. Fall 2011 CS 457 Lecture 19 Global Internet - BGP Fall 2011 Decision Process Calculate degree of preference for each route in Adj-RIB-In as follows (apply following steps until one route is left): select route with

More information

Network-Oriented Software Development. Course: CSc4360/CSc6360 Instructor: Dr. Beyah Sessions: M-W, 3:00 4:40pm Lecture 2

Network-Oriented Software Development. Course: CSc4360/CSc6360 Instructor: Dr. Beyah Sessions: M-W, 3:00 4:40pm Lecture 2 Network-Oriented Software Development Course: CSc4360/CSc6360 Instructor: Dr. Beyah Sessions: M-W, 3:00 4:40pm Lecture 2 Topics Layering TCP/IP Layering Internet addresses and port numbers Encapsulation

More information

Per-Flow Queuing Allot's Approach to Bandwidth Management

Per-Flow Queuing Allot's Approach to Bandwidth Management White Paper Per-Flow Queuing Allot's Approach to Bandwidth Management Allot Communications, July 2006. All Rights Reserved. Table of Contents Executive Overview... 3 Understanding TCP/IP... 4 What is Bandwidth

More information

Recent advances in transport protocols

Recent advances in transport protocols Recent advances in transport protocols April 12, 2013 Abstract Transport protocols play a critical role in today s Internet. This chapter first looks at the evolution of the Internet s Transport Layer

More information

Voice over IP: RTP/RTCP The transport layer

Voice over IP: RTP/RTCP The transport layer Advanced Networking Voice over IP: /RTCP The transport layer Renato Lo Cigno Requirements For Real-Time Transmission Need to emulate conventional telephone system Isochronous output timing same with input

More information

RARP: Reverse Address Resolution Protocol

RARP: Reverse Address Resolution Protocol SFWR 4C03: Computer Networks and Computer Security January 19-22 2004 Lecturer: Kartik Krishnan Lectures 7-9 RARP: Reverse Address Resolution Protocol When a system with a local disk is bootstrapped it

More information

An enhanced TCP mechanism Fast-TCP in IP networks with wireless links

An enhanced TCP mechanism Fast-TCP in IP networks with wireless links Wireless Networks 6 (2000) 375 379 375 An enhanced TCP mechanism Fast-TCP in IP networks with wireless links Jian Ma a, Jussi Ruutu b and Jing Wu c a Nokia China R&D Center, No. 10, He Ping Li Dong Jie,

More information

Command Manual - Network Protocol Quidway S3000 Series Ethernet Switches. Table of Contents

Command Manual - Network Protocol Quidway S3000 Series Ethernet Switches. Table of Contents Table of Contents Table of Contents Chapter 1 ARP Configuration Commands... 1-1 1.1 ARP Configuration Commands... 1-1 1.1.1 arp static... 1-1 1.1.2 arp timer aging... 1-2 1.1.3 debugging arp packet...

More information

Final Exam. Route Computation: One reason why link state routing is preferable to distance vector style routing.

Final Exam. Route Computation: One reason why link state routing is preferable to distance vector style routing. UCSD CSE CS 123 Final Exam Computer Networks Directions: Write your name on the exam. Write something for every question. You will get some points if you attempt a solution but nothing for a blank sheet

More information

Troubleshooting Tools

Troubleshooting Tools Troubleshooting Tools An overview of the main tools for verifying network operation from a host Fulvio Risso Mario Baldi Politecnico di Torino (Technical University of Turin) see page 2 Notes n The commands/programs

More information

Servicesin ns-3. Outline SIMULACIÓN DE PROTOCOLOS DE ENRUTAMIENTO PARA REDES MÓVILES AD-HOC MEDIANTE HERRRAMIENTA DE SIMULACIÓN NS-3

Servicesin ns-3. Outline SIMULACIÓN DE PROTOCOLOS DE ENRUTAMIENTO PARA REDES MÓVILES AD-HOC MEDIANTE HERRRAMIENTA DE SIMULACIÓN NS-3 SIMULACIÓN DE PROTOCOLOS DE ENRUTAMIENTO PARA REDES MÓVILES AD-HOC MEDIANTE HERRRAMIENTA DE SIMULACIÓN NS-3 Servicesin Outline 1. Services in Sockets UDP TCP Bulk Application FTP On off Application 2.

More information

IP - The Internet Protocol

IP - The Internet Protocol Orientation IP - The Internet Protocol IP (Internet Protocol) is a Network Layer Protocol. IP s current version is Version 4 (IPv4). It is specified in RFC 891. TCP UDP Transport Layer ICMP IP IGMP Network

More information

Computer Networks Network architecture

Computer Networks Network architecture Computer Networks Network architecture Saad Mneimneh Computer Science Hunter College of CUNY New York - Networks are like onions - They stink? - Yes, no, they have layers Shrek and Donkey 1 Introduction

More information

Architecture and Performance of the Internet

Architecture and Performance of the Internet SC250 Computer Networking I Architecture and Performance of the Internet Prof. Matthias Grossglauser School of Computer and Communication Sciences EPFL http://lcawww.epfl.ch 1 Today's Objectives Understanding

More information

Internet Protocols. Background CHAPTER

Internet Protocols. Background CHAPTER CHAPTER 3 Internet Protocols Background The Internet protocols are the world s most popular open-system (nonproprietary) protocol suite because they can be used to communicate across any set of interconnected

More information

Introduction to Socket Programming Part I : TCP Clients, Servers; Host information

Introduction to Socket Programming Part I : TCP Clients, Servers; Host information Introduction to Socket Programming Part I : TCP Clients, Servers; Host information Keywords: sockets, client-server, network programming-socket functions, OSI layering, byte-ordering Outline: 1.) Introduction

More information

COMP 361 Computer Communications Networks. Fall Semester 2003. Midterm Examination

COMP 361 Computer Communications Networks. Fall Semester 2003. Midterm Examination COMP 361 Computer Communications Networks Fall Semester 2003 Midterm Examination Date: October 23, 2003, Time 18:30pm --19:50pm Name: Student ID: Email: Instructions: 1. This is a closed book exam 2. This

More information

Layer Four Traceroute (and related tools) A modern, flexible path-discovery solution with advanced features for network (reverse) engineers

Layer Four Traceroute (and related tools) A modern, flexible path-discovery solution with advanced features for network (reverse) engineers Layer Four Traceroute (and related tools) A modern, flexible path-discovery solution with advanced features for network (reverse) engineers So, what is path discovery and why is it important? Path discovery

More information

Host Fingerprinting and Firewalking With hping

Host Fingerprinting and Firewalking With hping Host Fingerprinting and Firewalking With hping Naveed Afzal National University Of Computer and Emerging Sciences, Lahore, Pakistan Email: 1608@nu.edu.pk Naveedafzal gmail.com Abstract: The purpose

More information

Design and Implementation of the lwip TCP/IP Stack

Design and Implementation of the lwip TCP/IP Stack Design and Implementation of the lwip TCP/IP Stack Swedish Institute of Computer Science February 20, 2001 Adam Dunkels adam@sics.se Abstract lwip is an implementation of the TCP/IP protocol stack. The

More information

CPS221 Lecture: Layered Network Architecture

CPS221 Lecture: Layered Network Architecture CPS221 Lecture: Layered Network Architecture Objectives last revised 9/10/12 1. To discuss the OSI layered architecture model 2. To discuss the specific implementation of this model in TCP/IP Materials:

More information

Introduction to Cisco IOS Flexible NetFlow

Introduction to Cisco IOS Flexible NetFlow Introduction to Cisco IOS Flexible NetFlow Last updated: September 2008 The next-generation in flow technology allowing optimization of the network infrastructure, reducing operation costs, improving capacity

More information

Networks: IP and TCP. Internet Protocol

Networks: IP and TCP. Internet Protocol Networks: IP and TCP 11/1/2010 Networks: IP and TCP 1 Internet Protocol Connectionless Each packet is transported independently from other packets Unreliable Delivery on a best effort basis No acknowledgments

More information

Route Discovery Protocols

Route Discovery Protocols Route Discovery Protocols Columbus, OH 43210 Jain@cse.ohio-State.Edu http://www.cse.ohio-state.edu/~jain/ 1 Overview Building Routing Tables Routing Information Protocol Version 1 (RIP V1) RIP V2 OSPF

More information

Top 10 Tips for z/os Network Performance Monitoring with OMEGAMON. Ernie Gilman IBM. August 10, 2011: 1:30 PM-2:30 PM.

Top 10 Tips for z/os Network Performance Monitoring with OMEGAMON. Ernie Gilman IBM. August 10, 2011: 1:30 PM-2:30 PM. Top 10 Tips for z/os Network Performance Monitoring with OMEGAMON Ernie Gilman IBM August 10, 2011: 1:30 PM-2:30 PM Session 9917 Agenda Overview of OMEGAMON for Mainframe Networks FP3 and z/os 1.12 1.

More information

Cisco Configuring Commonly Used IP ACLs

Cisco Configuring Commonly Used IP ACLs Table of Contents Configuring Commonly Used IP ACLs...1 Introduction...1 Prerequisites...2 Hardware and Software Versions...3 Configuration Examples...3 Allow a Select Host to Access the Network...3 Allow

More information

Basic Networking Concepts. 1. Introduction 2. Protocols 3. Protocol Layers 4. Network Interconnection/Internet

Basic Networking Concepts. 1. Introduction 2. Protocols 3. Protocol Layers 4. Network Interconnection/Internet Basic Networking Concepts 1. Introduction 2. Protocols 3. Protocol Layers 4. Network Interconnection/Internet 1 1. Introduction -A network can be defined as a group of computers and other devices connected

More information

Advanced Networking Voice over IP: RTP/RTCP The transport layer

Advanced Networking Voice over IP: RTP/RTCP The transport layer Advanced Networking Voice over IP: RTP/RTCP The transport layer Renato Lo Cigno Requirements For Real-Time Transmission Need to emulate conventional telephone system Isochronous output timing same with

More information

TCP in Wireless Networks

TCP in Wireless Networks Outline Lecture 10 TCP Performance and QoS in Wireless s TCP Performance in wireless networks TCP performance in asymmetric networks WAP Kurose-Ross: Chapter 3, 6.8 On-line: TCP over Wireless Systems Problems

More information

Network Programming TDC 561

Network Programming TDC 561 Network Programming TDC 561 Lecture # 1 Dr. Ehab S. Al-Shaer School of Computer Science & Telecommunication DePaul University Chicago, IL 1 Network Programming Goals of this Course: Studying, evaluating

More information