Download Slide 1

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Remote Desktop Services wikipedia , lookup

Computer network wikipedia , lookup

AppleTalk wikipedia , lookup

Airborne Networking wikipedia , lookup

IEEE 1355 wikipedia , lookup

Deep packet inspection wikipedia , lookup

Zero-configuration networking wikipedia , lookup

Cracking of wireless networks wikipedia , lookup

Communication protocol wikipedia , lookup

UniPro protocol stack wikipedia , lookup

TCP congestion control wikipedia , lookup

Recursive InterNetwork Architecture (RINA) wikipedia , lookup

Internet protocol suite wikipedia , lookup

Transcript
CISCO NETWORKING ACADEMY PROGRAM (CNAP)
SEMESTER 1/ MODULE 11
TCP/IP Application and Transport
CISCO 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
CISCO 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
CISCO 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
CISCO 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.
CISCO 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
CISCO 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
CISCO 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.
CISCO 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.
CISCO 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 transmitting
a 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.
CISCO 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.
CISCO 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.
CISCO 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.
CISCO 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.
CISCO 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
CISCO 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
CISCO 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
CISCO 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
UDP Segment
Format
provides no flow control
No sequence or acknowledgement fields
CISCO 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)
CISCO 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.
CISCO NETWORKING ACADEMY PROGRAM
SEMESTER 1/ MODULE 11
TCP/IP Application and Transport
Port Numbers
CISCO 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
CISCO 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
CISCO 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
CISCO 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
CISCO 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, connectionoriented 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.
CISCO 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).
CISCO 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.
CISCO 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 transport
layer protocol.
SNMP three components:
• Network management system
(NMS)
• Managed devices
• Agents
CISCO 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.