OSI transport layer
CCNA Exploration Semester 1 Chapter 4
2006 Cisco Systems, Inc. All rights reserved.
Cisco Public
OSI transport layer
OSI model layer 4 TCP/IP model Transport layer Application Presentation Session Transport Network Data link Physical
HTTP, FTP, TFTP, SMTP etc
Data stream
Application Transport Internet Network Access
Segment TCP, UDP
Packet Frame Bits IP Ethernet, WAN technologies
2006 Cisco Systems, Inc. All rights reserved.
Cisco Public
Transport layer topics
Roles of the transport layer TCP: Transport Control Protocol
UDP: User Datagram Protocol
2006 Cisco Systems, Inc. All rights reserved.
Cisco Public
Purpose of transport layer
Responsible for the overall end-to-end transfer of application data.
2006 Cisco Systems, Inc. All rights reserved.
Cisco Public
Transport layer
Enables multiple applications on the same device to send data over the network at the same time Provides reliability and error handling if required. (Checks if data has arrived and re-sends if it has not.)
2006 Cisco Systems, Inc. All rights reserved.
Cisco Public
Transport Layer TCP and UDP
2006 Cisco Systems, Inc. All rights reserved.
Cisco Public
Why two transport protocols?
Some applications need their data to be complete with no errors or gaps and they can accept a slight delay to ensure this. Reliable They use TCP. Some applications can accept occasional errors or gaps in the data but they cannot accept any delay. They use UDP.
Fast
2006 Cisco Systems, Inc. All rights reserved.
Cisco Public
TCP
Sets up a connection with the receiving host before sending data. Checks if segments have arrived and resends if they were lost. (Reliability) Sorts segments into the right order before reassembling the data. Sends at a speed to suit the receiving host. (Flow control) But this takes time and resources.
2006 Cisco Systems, Inc. All rights reserved.
Cisco Public
UDP
Connectionless. Does not contact receiving host before sending data. Does not check if data arrived and does not re-send. Does not sort into the right order. Best effort.
Low overhead.
Used for VoIP, streaming video, DNS, TFTP
2006 Cisco Systems, Inc. All rights reserved.
Cisco Public
TCP and UDP headers
2006 Cisco Systems, Inc. All rights reserved.
Cisco Public
10
Port numbers
Used by TCP and UDP as a form of addressing. Identifies the application and the conversation.
Common application protocols have default port numbers e.g. 80 for HTTP 110 for POP3 mail 20/21 for FTP 23 for Telnet
2006 Cisco Systems, Inc. All rights reserved.
Cisco Public
11
Port numbers
Client PC uses port 49152. Chosen at random. Remembers this to identify application and conversation.
Client PC uses port 80. Identifies HTTP as application. Requesting a web page.
Port + IP address = socket. E.g. 192.168.2.12:80
12
2006 Cisco Systems, Inc. All rights reserved.
Cisco Public
Port numbers
The Internet Assigned Numbers Authority (IANA) assigns port numbers. Well Known Ports (0 to 1023) - Reserved for common services and applications such as HTTP, FTP, Telnet, POP3, SMTP. Registered Ports (1024 to 49151) - Assigned to user processes or applications. Can be dynamically selected by a client as its source port. Dynamic or Private or Ephemeral Ports (49152 to 65535) Can be assigned dynamically to client applications when initiating a connection.
2006 Cisco Systems, Inc. All rights reserved.
Cisco Public
13
Netstat
Shows protocol, local address and port number, foreign address and port number.
Unexpected connections may mean there is a security problem.
2006 Cisco Systems, Inc. All rights reserved.
Cisco Public
14
Segment and sequence
Both TCP and UDP split application data into suitably sized pieces for transport and re-assemble them on arrival.
TCP has sequence numbers in the segment headers. It re-assembles segments in the right order.
UDP has no sequence numbers. It assembles datagrams in the order they arrive.
2006 Cisco Systems, Inc. All rights reserved.
Cisco Public
15
Connection oriented
TCP sets up a connection between end hosts before sending data The two hosts go through a synchronization process to ensure that both hosts are ready and know the initial sequence numbers. This process is the Three-way handshake When data transfer is finished, the hosts send signals to end the session.
2006 Cisco Systems, Inc. All rights reserved.
Cisco Public
16
Three way handshake
Send SYN seq = x Receive SYN ack = y seq = x+1
Receive SYN seq = x Send SYN ack = y seq = x+1
Send ACK ack = y+1
Receive ACK ack = y+1
2006 Cisco Systems, Inc. All rights reserved.
Cisco Public
17
Terminating connection
2006 Cisco Systems, Inc. All rights reserved.
Cisco Public
18
Expectational acknowledgement
TCP checks that data has been received. The receiving host sends an acknowledgement giving the sequence number of the byte that it expects next.
2006 Cisco Systems, Inc. All rights reserved.
Cisco Public
19
Window size
Controls how many bytes are sent before an acknowledgement is expected.
2006 Cisco Systems, Inc. All rights reserved.
Cisco Public
20
Lost segments
Send bytes 1 to 2999 Receive 1 to 2999, send ACK 3000
Send bytes 3000 to 4999
Receive 3000 to 3999, send ACK 4000 (bytes 4000 to 4999 were lost)
Send bytes 4000 to 5999
Lost segments are re-sent. If no ACK send them all again
2006 Cisco Systems, Inc. All rights reserved.
Cisco Public
21
Flow control
The initial window size is agreed during the three-way handshake. If this is too much for the receiver and it loses data (e.g. buffer overflow) then it can decrease the window size. If all is well then the receiver will increase the window size.
2006 Cisco Systems, Inc. All rights reserved.
Cisco Public
22
Comparison of TCP and UDP
Both TCP and UDP use port numbers Both split up application data if necessary
TCP sets up a connection
TCP uses acknowledgements and re-sends TCP uses flow control
TCP can re-assemble segments in the right order if they arrive out of sequence
UDP has less overhead so is faster
2006 Cisco Systems, Inc. All rights reserved.
Cisco Public
23
Summary
Hierarchical Design model addresses performance, scalability, maintainability & manageability issues.
Traffic Analysis is used to monitor network performance. Hierarchical Design Model is composed of 3 layers:
Access Distribution
Core
Switches selected for each layer must meet the needs of each hierarchical layer as well as the needs of the business.
2006 Cisco Systems, Inc. All rights reserved. Cisco Public
24
Labs & Activities
Type PT Lab PT Lab Detail 1.2.4 1.3.1 1.3.2 1.3.3
Mandatory* Mandatory Mandatory Review carefully
* If no previous Packet Tracer experience, else strongly recommended
2006 Cisco Systems, Inc. All rights reserved.
Cisco Public
25
2006 Cisco Systems, Inc. All rights reserved.
Cisco Public
26