Chapter 5 Transport layer With special emphasis on Transmission Control Protocol (TCP)

Slides:



Advertisements
Similar presentations
Layer 3 of the TCP/IP protocol stack. Transport layer.
Advertisements

Umut Girit  One of the core members of the Internet Protocol Suite, the set of network protocols used for the Internet. With UDP, computer.
Cisco 2 - Routers Perrine. J Page 14/30/2015 Chapter 10 TCP/IP Protocol Suite The function of the TCP/IP protocol stack is to transfer information from.
CISCO NETWORKING ACADEMY Chabot College ELEC Transport Layer (4)
CCNA – Network Fundamentals
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public ITE PC v4.0 Chapter 1 1 OSI Transport Layer Network Fundamentals – Chapter 4.
Transmission Control Protocol (TCP)
Intermediate TCP/IP TCP Operation.
CISCO NETWORKING ACADEMY PROGRAM (CNAP)
Chapter 7: Transport Layer
© 2008 Cisco Systems, Inc. All rights reserved.Cisco ConfidentialPresentation_ID 1 Chapter 7: Transport Layer Introduction to Networking.
© 2008 Cisco Systems, Inc. All rights reserved.Cisco ConfidentialPresentation_ID 1 Chapter 7: Transport Layer Introduction to Networking.
Lecture 7 Transport Layer
UDP & TCP Where would we be without them!. UDP User Datagram Protocol.
Chapter 7 – Transport Layer Protocols
Copyright 1999, S.D. Personick. All Rights Reserved. Telecommunications Networking II Lecture 32 Transmission Control Protocol (TCP) Ref: Tanenbaum pp:
CCNA 1 v3.1 Module 11 Review.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 OSI Transport Layer Network Fundamentals – Chapter 4.
William Stallings Data and Computer Communications 7 th Edition (Selected slides used for lectures at Bina Nusantara University) Transport Layer.
1 CCNA 2 v3.1 Module Intermediate TCP/IP CCNA 2 Module 10.
TCP. Learning objectives Reliable Transport in TCP TCP flow and Congestion Control.
WXES2106 Network Technology Semester /2005 Chapter 8 Intermediate TCP CCNA2: Module 10.
Chapter 4 OSI Transport Layer
Gursharan Singh Tatla Transport Layer 16-May
Process-to-Process Delivery:
1 Transport Layer Computer Networks. 2 Where are we?
Networking Basics TCP/IP TRANSPORT and APPLICATION LAYER Version 3.0 Cisco Regional Networking Academy.
1 Semester 2 Module 10 Intermediate TCP/IP Yuda college of business James Chen
1 Chapter Overview TCP/IP DoD model. 2 Network Layer Protocols Responsible for end-to-end communications on an internetwork Contrast with data-link layer.
Jaringan Komputer Dasar OSI Transport Layer Aurelio Rahmadian.
© 2008 Cisco Systems, Inc. All rights reserved.Cisco ConfidentialPresentation_ID 1 Chapter 7: Transport Layer Introduction to Networking.
Transport Layer Layer #4 (OSI-RM). Transport Layer Main function of OSI Transport layer: Accept data from the Application layer and prepare it for addressing.
1 7-Oct-15 OSI transport layer CCNA Exploration Semester 1 Chapter 4.
1 Version 3.0 Module 11 TCP Application and Transport.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 OSI Transport Layer Network Fundamentals – Chapter 4.
1 LAN Protocols (Week 3, Wednesday 9/10/2003) © Abdou Illia, Fall 2003.
TCP : Transmission Control Protocol Computer Network System Sirak Kaewjamnong.
University of the Western Cape Chapter 12: The Transport Layer.
TCP/IP Transport and Application (Topic 6)
Routers and Routing Basics CCNA 2 Chapter 10.
TCP1 Transmission Control Protocol (TCP). TCP2 Outline Transmission Control Protocol.
Transport Layer Moving Segments. Transport Layer Protocols Provide a logical communication link between processes running on different hosts as if directly.
CCNA 1 v3.0 Module 11 TCP/IP Transport and Application Layers.
Transport Layer COM211 Communications and Networks CDA College Theodoros Christophides
Networking Basics CCNA 1 Chapter 11.
Institute of Technology Sligo - Dept of Computing Chapter 12 The Transport Layer.
Chapter 9: Transport Layer
Page 12/9/2016 Chapter 10 Intermediate TCP : TCP and UDP segments, Transport Layer Ports CCNA2 Chapter 10.
UDP & TCP Where would we be without them!. UDP User Datagram Protocol.
1 Version 3.1 Module 10 Intermediate TCP/IP (Layer 4)
01_NF_Ch04 – OSI Transport Layer ( 傳輸層 ) Source: CCNA Exploration.
© 2002, Cisco Systems, Inc. All rights reserved..
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).
Cisco I Introduction to Networks Semester 1 Chapter 7 JEOPADY.
1 14-Jun-16 S Ward Abingdon and Witney College CCNA Exploration Semester 1 OSI transport layer CCNA Exploration Semester 1 Chapter 4.
1 Transmission Control Protocol (TCP) RFC: Introduction The TCP is intended to provide a reliable process-to-process communication service in a.
© 2006 Cisco Systems, Inc. All rights reserved.Cisco Public 1 OSI transport layer CCNA Exploration Semester 1 – Chapter 4.
Chapter 7: Transport Layer
The Transport Layer Implementation Services Functions Protocols
Chapter 9: Transport Layer
Instructor Materials Chapter 9: Transport Layer
Process-to-Process Delivery:
Process-to-Process Delivery: UDP, TCP
Computer Networks Protocols
Transport Layer 9/22/2019.
Presentation transcript:

Chapter 5 Transport layer With special emphasis on Transmission Control Protocol (TCP)

Contents Need for TCP TCP functions – Segmentation – Reliability – Flow-control – Multiplexing – Connection establishment TCP Header UDP 2

The need for a Transport layer The network layer (IP) sends packets of data to their correct destinations with best effort – Packets may get lost in transit The maximum packet size in IP is 65,536 bytes – What happens if the application wants to send a file of size 5,000,000 bytes? Port addressing – Distinguish between applications on computers 3

The Transport layer in the stack

Transport Control Protocol (TCP) These (and other related jobs) are performed by the Transport layer TCP is a highly reliable host-to-host transport layer protocol over packet switched networks – Defined in RFC 793 (Sep 1981)RFC 793 5

Transport layer - reference TCP – RFC 793 (Sep 1981) RFC 793 UDP – RFC 768 (Aug 1980) RFC 768 6

TCP – Overview of operation At the sending end, the application creates the data to be sent and passes it to its TCP module for transmission At the receiving end, TCP collects all fragments from IP, reassembles them into the original data and passes it to the receiving application 7

TCP functions TCP provides a reliable application-to- application communication service over a network of arbitrary complexity and unreliability – Applications (such as browsers and ) simply pass the data to be transferred to TCP and leave all communication complexities to TCP 8

TCP functions TCP corrects for all possible imperfections of IP Therefore TCP has to perform many tasks – Segmentation – Reliability – Multiplexing – Flow-control – Connection establishment 9

TCP functions - segmentation TCP allows IP to transfer arbitrarily large data blocks – Accomplished by breaking data into segments – A sequence number is assigned to each datagram – Sequence numbers help receiver order datagrams even when received out of order 10

Sequence numbers 11

TCP functions - segmentation Advantages – Errors are less likely in smaller segments – Less retransmission if error is introduced in a segment – Easier for routers to hold segments in memory if onward route is busy Disadvantages 12

TCP functions - reliability TCP recovers from network damage to data Basic mechanism Datagrams may also get duplicated – Sequence numbers help identify these duplicates 13

Sequence numbers and reliability 14

TCP functions - reliability Datagrams may get seriously damaged during transmission – If datagrams are further fragmented by IP, some IP fragments may get lost during transmission – Such damage is corrected by adding a checksum to each datagram and comparing it at the receiver 15

TCP functions - multiplexing Modern computers are capable of multi- tasking TCP supports multiplexing by providing multiple port addresses within each host A network address and port address together is called a socket 16

Port addresses and multiplexing 17

TCP ports and airport gates 18

TCP port assignment On the sender side, the operating system assigns one of the free ports to an application that requires network connectivity How do you know what port to connect to on the receiver side? 19

Standard ports – Assigned by IANA: Internet Assigned Numbers Authority To see list – In Windows: C:/Windows/System32/drivers/etc/services – In UNIX/ Linux /etc/services Used ports displayed by netstat utility 20

Standard ports Typically ports 1 – 1023 are reserved for defined services – Applications may use the remaining port numbers 1024 – Common ports – 80 : web (http) – 25 : (smtp) – 443: SSL (https) – 445: microsoft-ds (smb) 21

etc\services file 22

Viewing ports usage with netstat Ports on local desktopPorts on remote servers 23

Viewing ports usage with netstat Invoking applicationInvoked port 24

TCP functions – flow control If the receiver is slow, it will not be able to process the packets reaching it Therefore, TCP enables the receiver to limit the sender’s data rate If sender is slow, it only tests the patience of receivers 25

V. simple flow control mechanism 26

TCP functions – flow control Flow control mechanism shown earlier is called stop-and-wait – Sender waits for ACK before sending next datagram TCP flow control is accomplished by returning a “window” with every ACK “Window” indicates how many bytes of data the sender may transmit before receiving any more ACK 27

TCP flow control with window size 28

Sliding window Flow control is the regulation by the receiver of the amount of data the sender may send Creates a “sliding window” at the sender Packets that have received permission for transmission are within the window Window slides as receiver acknowledges packets or modifies window size 29

Sliding window 30

TCP functions – connection establishment Sequence numbers are core part of TCP It is not a good idea to reuse the same sequence numbers in succession Hence, before communication starts, sender and receiver negotiate a set of sequence numbers to use in TCP – Called 3-way handshake 31

Using an initial sequence number

3-way handshake 33

TCP Header 34

TCP header fields Port addresses have 16 bits – 2 16 possible ports – 2 16 = 65,536 ports possible per host – If computing resources are available, a single computer running TCP can support 65,536 simultaneous network connections Compare to telephone – no concept of port – only one network connection possible at a time 35

TCP header fields Sequence and acknowledgment numbers have 32 bits – Sequence number is the sequence number of the first data byte in the datagram – Acknowledgments are cumulative ACK 1079 implies that all data till byte number 1078 have been received correctly Initial sequence number for connection is chosen from an ascending clock 36

TCP header fields Data offset is the number of 32-bit words in the TCP header Control fields – ACK: 1 implies that the value of the acknowledgment field is meaningful – RST: Reset the connection – SYN: 1 implies that the segment is trying to synchronize sequence numbers – FIN: Sender has no more data to send 37

TCP header fields Window size – Number of data octets the sender of this information is willing to accept, beginning with the acknowledged segment Checksum – Verification of TCP header, IP header and TCP data 38

User Datagram Protocol (UDP) Defined in RFC 768 (1980) Many applications do not need TCP, e.g.. – When applications send very small amounts of data (DNS), – Prefer speed to reliability (voice) In these cases, if we can avoid TCP, we eliminate the overhead of keeping track of sequence numbers, window sizes etc. 39

UDP Header 40

Summary Why segmentation Why sequence numbers Why sliding window Why port numbers Why three-way handshake Why UDP

Case study – the financial industry Most financial transactions occur on computer networks – Securities markets, credit cards, bank transfers In securities markets, low latency is considered very important – The delays from TCP handshaking and flow control are unacceptable Alternate transport protocols are used

Hands-on exercise netstat In Windows – netstat /? Displays help – netstat –n – netstat –f – netstat –b Requires administrative privileges

Network design exercise Data rate from database transactions – Conversion from bytes to bits Data rate from phone calls