Title: CISCO NETWORKING ACADEMY PROGRAM CNAP
1CISCO NETWORKING ACADEMY PROGRAM (CNAP) SEMESTER
1/ MODULE 11
TCP/IP Application and Transport
2CISCO NETWORKING ACADEMY PROGRAM SEMESTER 1/
MODULE 11
TCP/IP Application and Transport
Introduction to Transport Layer
- The TCP/IP transport layer does the work of
transporting data between applications on source
and destination devices. - Ensure that segments delivered will be
acknowledged to the sender - Provide for retransmission of any segments that
are acknowledged - Put segments back into their correct sequence at
the destination - Provide congestion avoidance and control
3CISCO NETWORKING ACADEMY PROGRAM SEMESTER 1/
MODULE 11
TCP/IP Application and Transport
TCP/IP Transport Layer
- The primary functions that occur
- To transport and regulate the flow of information
from source to destination, reliably and
accurately. - To provide end-to-end control, provided by
sliding windows and - To ensure a reliability in sequencing numbers and
acknowledgments - There are two protocols in TCP/IP
- transport layer
- User Datagram Protocol (UDP)
- Transmission Control Protocol (TCP)
Flow Control Analogy
4CISCO NETWORKING ACADEMY PROGRAM SEMESTER 1/
MODULE 11
TCP/IP Application and Transport
Flow Control
- To regulate the flow of information from source
to destination, reliably and accurately, host
tries to ensure that data is not lost - The two hosts then establish a data-transfer rate
that is agreeable to both - End-to-end control, provided by sliding windows,
and reliability in sequencing numbers and
acknowledgments
5CISCO NETWORKING ACADEMY PROGRAM SEMESTER 1/
MODULE 11
TCP/IP Application and Transport
Session Establishment, Maintenance and Termination
- Multiple applications can share the same
transport connection in the OSI reference model. - Transport functionality is accomplished on a
segment-by-segment basis - Transport layer can multiplex upper-layer
conversations based on a segment-by-segment
basis.
6CISCO NETWORKING ACADEMY PROGRAM SEMESTER 1/
MODULE 11
TCP/IP Application and Transport
Session Establishment, Maintenance and Termination
Three-Way Handshake
- One function of the transport layer is to
establish a connection-oriented session between
similar devices at the application layer. - The connection is established and the transfer of
data begins after all synchronization has
occurred. - During transfer, the two machines continue to
communicate with their protocol software to
verify that data is received correctly. - Congestion can occur during data transfer for two
reasons. - high-speed computer might be capable of
generating traffic faster than a network can
transfer it. - many computers simultaneously need to send
datagrams to a single destination
7CISCO NETWORKING ACADEMY PROGRAM SEMESTER 1/
MODULE 11
TCP/IP Application and Transport
Session Establishment, Maintenance and Termination
- When datagrams arrive too quickly for a host or
gateway to process, the host or gateway
eventually exhausts its memory and must discard
additional datagrams that arrive (Congestion). - the transport function can issue a not ready
indicator to the sender. When the receiver can
handle additional data, the receiver sends a
ready transport indicator. When this indicator
is received, the sender can resume the segment
transmission
Flow Control
8CISCO NETWORKING ACADEMY PROGRAM SEMESTER 1/
MODULE 11
TCP/IP Application and Transport
Three-Way Handshake
- TCP is a connection-oriented protocol.
- TCP requires connection establishment before data
transfer begins. - For a connection to be established or
initialized, the two hosts must synchronize their
Initial Sequence Numbers (ISNs). - Each side must also receive the INS from the
other side and send a confirming ACK.
9CISCO NETWORKING ACADEMY PROGRAM SEMESTER 1/
MODULE 11
TCP/IP Application and Transport
Windowing and Acknowledgement
Low throughput
- Windowing is a flow control mechanism requiring
that the source device receive an acknowledgment
from the destination after transmitting a certain
amount of data.
10CISCO NETWORKING ACADEMY PROGRAM SEMESTER 1/
MODULE 11
TCP/IP Application and Transport
Windowing and Acknowledgement
- The number of data packets the sender is allowed
to have outstanding without having received an
acknowledgment is known as the window size, or
window. - Windowing requires that the source device receive
an acknowledgment from the destination after
transmittinga certain amount of data. - The receiving TCP process reports a window to
the sending TCP. - TCP window sizes are variable during the
lifetime of a connection. - Each acknowledgement contains a window
advertisement that indicates the number of bytes
the receiver can accept.
11CISCO NETWORKING ACADEMY PROGRAM SEMESTER 1/
MODULE 11
TCP/IP Application and Transport
Windowing and Acknowledgement
- Reliable delivery guarantees that a stream of
data sent from one device is delivered through a
data link to another device without duplication
or data loss. - Positive acknowledgment with retransmission is
one technique that guarantees reliable delivery
of data. - TCP uses expectational acknowledgments.
- Expectational acknowledgements mean that the
acknowledgment number refers to the packet that
is next expected.
12CISCO NETWORKING ACADEMY PROGRAM SEMESTER 1/
MODULE 11
TCP/IP Application and Transport
Acknowledgement
- Each segment is numbered before transmission
- At the receiving station, TCP reassembles the
segments into a complete message.
- If a sequence number is missing in the series,
that segment is retransmitted. - Segments that are not acknowledged within a given
time period will result in a retransmission.
13CISCO NETWORKING ACADEMY PROGRAM SEMESTER 1/
MODULE 11
TCP/IP Application and Transport
Positive Acknowledgement and Retransmission
- It is used to provide reliability.
- Positive acknowledgment requires a recipient to
communicate with the source and send back an
acknowledgment message when the data is received.
- The sender keeps a record of each data packet
(TCP segment), that it sends and expects an
acknowledgment. - Once the source sends a packet, it starts a timer
and waits for an acknowledgment before sending
the next packet. - If the timer expires before the source receives
an acknowledgment, the source retransmits the
packet and starts the timer over again.
14CISCO NETWORKING ACADEMY PROGRAM SEMESTER 1/
MODULE 11
TCP/IP Application and Transport
TCP Congestion Control
- TCP also maintains a congestion-control window.
- This window is normally the same size as the
window of the receiver. - However, this window is cut in half when a packet
is lost, perhaps as a result of network
congestion. - This approach permits the window to be expanded
or contracted as necessary to manage buffer space
and processing.
15CISCO NETWORKING ACADEMY PROGRAM SEMESTER 1/
MODULE 11
TCP/IP Application and Transport
Transmission Control Protocol (TCP)
- connection-oriented
- reliable
- divides outgoing messages into segments
- reassembles messages at the destination station
- re-sends anything not received
- reassembles messages from incoming segments
- The protocols that use TCP include
- FTP (File Transfer Protocol)
- HTTP (Hypertext Transfer Protocol)
- SMTP (Simple Mail Transfer Protocol)
- Telnet
16CISCO NETWORKING ACADEMY PROGRAM SEMESTER 1/
MODULE 11
TCP/IP Application and Transport
Transmission Control Protocol
- Source port Number of the calling port
- Destination port Number of the called port
- Sequence number Number used to ensure correct
sequencing of the arriving data - Acknowledgment number Next expected TCP octet
- HLEN Number of 32-bit words in the header
- Reserved Set to zero
17CISCO NETWORKING ACADEMY PROGRAM SEMESTER 1/
MODULE 11
TCP/IP Application and Transport
Transmission Control Protocol
- Code bits Control functions, such as setup and
termination of a session - Window Number of octets that the sender is
willing to accept - Checksum Calculated checksum of the header and
data fields - Urgent pointer Indicates the end of the urgent
data - Option One option currently defined, maximum
TCP segment size - Data Upper-layer protocol data
18CISCO NETWORKING ACADEMY PROGRAM SEMESTER 1/
MODULE 11
TCP/IP Application and Transport
User Datagram Protocol
- connectionless
- unreliable
- transmit messages (called user datagrams)
- provides no software checking for message
delivery (unreliable) - does not reassemble incoming messages
- uses no acknowledgments
- provides no flow control
UDP Segment Format
No sequence or acknowledgement fields
19CISCO NETWORKING ACADEMY PROGRAM SEMESTER 1/
MODULE 11
TCP/IP Application and Transport
User Datagram Protocol
- The protocols that use TCP include
- TFTP (Trivial File Transfer Protocol)
- SNMP (Simple Network Management Protocol)
- DHCP (Dynamic Host Control Protocol)
- DNS (Domain Name System)
20CISCO NETWORKING ACADEMY PROGRAM SEMESTER 1/
MODULE 11
TCP/IP Application and Transport
Port Number
- Both TCP and UDP use port (socket) numbers to
pass information to the upper layers. - Port numbers are used to keep track of different
conversations crossing the network at the same
time. - Port numbers have the following assigned ranges
- Numbers below 1024 are considered well-known
ports numbers. - Numbers above 1024 are dynamically assigned ports
numbers. - Registered port numbers are those registered for
vendor-specific applications. Most of these are
above 1024. - The source host dynamically assigns originating
source port numbers. These numbers are always
greater than 1023.
21CISCO NETWORKING ACADEMY PROGRAM SEMESTER 1/
MODULE 11
TCP/IP Application and Transport
Port Numbers
22CISCO NETWORKING ACADEMY PROGRAM SEMESTER 1/
MODULE 11
TCP/IP Application and Transport
Introduction to Application Layer
- TCP/IP application layer combine the functions of
three upper layers together. - This design assures that the TCP/IP model
provides maximum flexibility at the application
layer for developers of software. - Application Layer is responsible for
- Identifying and establishing the availability of
intended communication partner - Synchronizing cooperating applications
- Establishing agreement on procedures for error
recovery - Controlling data integrity
23CISCO NETWORKING ACADEMY PROGRAM SEMESTER 1/
MODULE 11
TCP/IP Application and Transport
Introduction to Application Layer
- TCP/IP application Examples
- Domain Name System (DNS)
- File Transfer Protocol (FTP)
- Hypertext Transfer Protocol (HTTP)
- Simple Mail Transfer Protocol (SMTP)
- Simple Network Management Protocol (SNMP)
- Telnet
24CISCO NETWORKING ACADEMY PROGRAM SEMESTER 1/
MODULE 11
TCP/IP Application and Transport
Domain Name System
- The Domain Name System (DNS) is a system used on
the Internet for translating names of domains and
their publicly advertised network nodes into IP
addresses. - Examples
- .th Thailand, .us United States , .uk
United Kingdom
- Domain name server is a device on a network
- It responds to requests from clients to translate
a domain name into the associated IP address. - The DNS system is set up in a hierarchy that
creates different levels of DNS servers. - If a local DNS server is able to translate a
domain name into its associated IP address, it
does so, and returns the result to the client. - If it cannot translate the address, it passes the
request up to the next higher-level DNS server on
the system
25CISCO NETWORKING ACADEMY PROGRAM SEMESTER 1/
MODULE 11
TCP/IP Application and Transport
Domain Name System
- There are also generic names, which examples
include the following - .edu educational sites
- .com commercial sites
- .gov government sites
- .org non-profit sites
- .net network service
26CISCO NETWORKING ACADEMY PROGRAM SEMESTER 1/
MODULE 11
TCP/IP Application and Transport
File Transfer Protocol and Trivial File Transfer
Protocol
- FTP
- FTP is a reliable, connection-oriented service
that uses TCP to transfer files between systems
that support FTP - FTP is designed to download files or upload
files.
- TFTP
- is a connectionless service that uses UDP.
- TFTP is used on the routers and switches to
transfer files between systems that support TFTP - TFTP operates faster than FTP
- TFTP has no provisions for user authentication.
27CISCO NETWORKING ACADEMY PROGRAM SEMESTER 1/
MODULE 11
TCP/IP Application and Transport
Hypertext Transfer Protocol
- HTTP works with the World Wide Web, which is the
fastest growing and most used part of the
Internet. - One of the main reasons for the extraordinary
growth of the Web is the ease with which it
allows access to information. - A Web browser (along with all the other network
applications covered in this chapter) is a
client-server application, which means that it
requires both a client and a server component in
order to function. - The Web pages are created with a format language
called Hypertext Markup Language (HTML). - The Web page contains, often hidden within its
HTML description, an address location known as a
Uniform Resource Locator (URL).
28CISCO NETWORKING ACADEMY PROGRAM SEMESTER 1/
MODULE 11
TCP/IP Application and Transport
Simple Mail Transfer Protocol
- Email servers communicate with each other using
the Simple Mail Transfer Protocol (SMTP) to send
and receive mail. - The SMTP protocol transports email messages in
ASCII format using TCP. - Mail can be collected by using program that
access the mail server files directly or collect
their mail using one of many network protocols - POP3 and IMAP4, which both use TCP to
transport data.
29CISCO NETWORKING ACADEMY PROGRAM SEMESTER 1/
MODULE 11
TCP/IP Application and Transport
Simple Network Management
- The Simple Network Management Protocol (SNMP) is
an application layer protocol that facilitates
the exchange of management information between
network devices. - SNMP enables network administrators to manage
network performance, find and solve network
problems,and plan for network growth. - SNMP uses UDP as its transportlayer protocol.
- SNMP three components
- Network management system (NMS)
- Managed devices
- Agents
30CISCO NETWORKING ACADEMY PROGRAM SEMESTER 1/
MODULE 11
TCP/IP Application and Transport
Telnet
- Terminal emulation (Telnet) software provides the
ability to remotely access another computer. - It allows you to log in to an Internet host and
execute commands. - A Telnet client is referred to as a local host,
and a Telnet server, which uses special software
called a daemon, is referred to as a remote host.