Chapter 3 Application Layer Functionality and Protocols Modified by Profs. Chen and Cappellino
Objectives In this chapter, you will learn to: Describe how the functions of the three upper OSI model layers provide network services to end user applications. Describe how the TCP/IP Application Layer protocols provide the services specified by the upper layers of the OSI model. Define how people use the Application Layer to communicate across the information network. Describe the function of well-known TCP/IP applications, such as the World Wide Web and email, and their related services (HTTP, DNS, SMB, DHCP, SMTP/POP, and Telnet). Describe file-sharing processes that use peer-to-peer applications and the Gnutella protocol. Explain how protocols ensure services running on one kind of device can send to and receive data from many different network devices. Use network analysis tools to examine and explain how common user applications work.
The Application Layer of the OSI and TCP/IP Models Layer _____________ of OSI The top layer of both models It is the layer that provides the __________________________ we use to communicate and the ______________________ over which our messages are transmitted. ___________________________ ______________________ between programs running on the source and destination hosts. The __________________________ protocols fit roughly into the framework of the top three layers of the _________________________ ____________________________ Application Layer protocols
The Presentation Layer of the OSI Model Layer _____________ of OSI Three primary functions: ____________________________ of Application layer data ______________________ of data decompression by the destination device. _________ of the data for transmission decryption of data upon receipt by the destination. Examples include: Motion Picture Experts Group (______). MPEG is a standard for _______________ and coding. Graphics Interchange Format (______), Joint Photographic Experts Group (____________) Compression and coding standards for _______________________ images,
The Session Layer of the OSI Model Layer ___________ of OSI _________________________ between source and destination applications. Handles the ______________ ______________________ _____________________ that are disrupted or idle for a long period of time. ________________, like web browsers or e-mail clients, ________________________ _________________________
Common TCP/IP Application layer protocols Domain Name Service Protocol (________) is used to ____________________________________ Hypertext Transfer Protocol (____________) is used to ______________________________________ Simple Mail Transfer Protocol (______________) is used for the _________________________ and attachments. ______________, a terminal emulation protocol, is used to ________________________ to servers and networking devices ________________________________ File Transfer Protocol (_________) is used for interactive _______________________________________________ Dynamic Host Configuration Protocol (_________) assigns ____________________, subnet mask info, __________ ___________________________________________
Application Layer _______________ The functions associated with the Application layer protocols enable the user to interface with the underlying data network. There are _____________________ programs or processes that provide access to the network: ____________________________ The ______________________________ to communicate over the network. E-mail clients and web browsers are examples of these types of applications. ______________________________ ______________________ may need the __________________________________ to use network resources, like file transfer or network print spooling. Though transparent to the user, these ______ _____________________________________ and prepare the data for transfer.
User Applications, Services and Application Layer Protocols Applications that interact directly with people ____ _________________________________________ Above the Application layer The three components in play… While ______________________ provide people with a ___________________________ and application layer ____________________ establish an _________________________________ ______________________ provide the ____________ ____________________ that govern how data is treated. All three components may be used by a single executable program
Application Layer ______ Functions Application layer protocols are _______________ ______________________________ during a communication session. The protocols implemented on both sides must match. Application layer protocols functions: Protocols establish consistent _____________________ ______________________________________ loaded on the participating devices. Protocols specify ______________________________ _______________________ and the types of messages that are sent between source and destination. These messages can be requests for services, acknowledgments, data, status, or error messages. Protocols also define ________________________ _________________________________________ _____________ in the course of a single conversation.
The ___________________ Model Device ______________ the information is called a ____________ and the device _________ to the request is called a ______ Client and server processes are considered to be in the Application layer. Application layer protocols describe the format of the requests and responses between clients and servers. Control info as well as data is transferred Can anyone think of an example of the client/server model?
Servers In a general networking context, any __________ __________________________________ is functioning as a server. A server is usually a computer that _________ ___________________ with many client systems. Some servers ____________________________ _________________________ to verify if the user has permission to access the requested data A server sometimes _______________________, called a _________________________. _____________________ and are not under an end user's direct control. Daemons _______________________ from a client When daemons "hear" a request from a client, they send requested data to the client in the proper format
Application Layer Services and Protocols what appears to the user as one request for a web page may, in fact, amount to dozens of individual requests. Servers typically have _________ _____________________________________________________ For example, a Telnet server may have many clients requesting connections to it simultaneously
_____________ Network Design: ___________________________ via a network and ________________ (such as printers and files) __________ having a ________________________ Every connected end __________ (known as a peer) can ____________________ ____________________________ One computer might assume the role of server for one transaction while simultaneously serving as a client for another. A simple __________ with two computers _________________, games, internet connection etc. is an example of a peer-to-peer network. Peer-to-peer networks generally ______ _________________________________________________________________ ___________________________ and manage users and resources
Peer-to-Peer Applications A P2P application, allows a device to ________ ______________________________________________________________________ Require that each end device provide a user interface and run a background service. Some P2P applications use a hybrid system where ____________________________ but the _______________ that point to resource locations are stored in a _________________________ In a hybrid system, each peer accesses an index server to get the location of a resource stored on another peer. Peer-to-peer applications can be used on ____ _____________________, ______________ ____________, and across the Internet.
Services and Protocol: Port Numbers _________________ layer uses an addressing scheme called a ____________________ ______________________ and Application layer services that are the source and destination of data. Server programs generally use predefined port numbers that are commonly known by clients. Some of these services and port numbers are: Domain Name System (_______) - _________ Port ____ Hypertext Transfer Protocol (_________) - ____ Port ___ Simple Mail Transfer Protocol (_______) - ____ Port ___ Post Office Protocol (_________) - ______________ ______________ - _____ Port __________ Dynamic Host Configuration Protocol (_______ - _____ Port ______ File Transfer Protocol (________) - _________ Ports ___________ Stay tuned for more on port numbers….
DNS Provides an automated service that _________ _________________ (ex. www.yahoo.com) to the _____________________________ In data networks, devices are labeled with numeric IP addresses used to send and receive messages over the network. Numeric addresses __________________________ so domain names were created as a simple way to remember a website address. Example: www.cisco.com much easier to remember than 198.133.219.25 which is the actual numeric address for this server. Benefit: if a ___________________________ _________________, it is _______________, since the domain name will remain the same DNS uses a distributed set of servers to resolve the domain names associated with IP addresses.
DNS Services and Protocol DNS is a ____________________; Unlike other services which use a client that is an application (such as web browser), the _____________ ___________________________ The DNS client, AKA the ____________, supports name resolution Computer operating systems also have a utility called __________ that allows the ______________ ________________ to resolve a given host name. This utility can be used for troubleshooting and verification purposes
DNS Services and Protocol A DNS server provides the name resolution using the _________________ The DNS server stores different types of resource records used to resolve names. Some are: A - an end device address NS - an authoritative name server _______________________________________________ ________________________________, and not just a cached answer that was given by another name server. CNAME - the canonical name (or _________________ __________________) for an ________; used when multiple services have the single network address but each service has its own entry in DNS MX - mail exchange record; maps a domain name to a list of mail exchange servers for that domain
DNS Services and Protocol When a client makes a query, the _____ _______________ first looks at its own records to see if it can resolve the name. If it is ______ to resolve the name it _______ _________________ for name resolution The request take extra time and consume bandwidth. Once a match is found and returned to the original requesting server, the server temporarily __________________ that matches the name in ______________. Caching reduces both the DNS query data network traffic and the workloads of servers higher up the hierarchy. DNS Client service on ______________ _______________________________ in memory The _______________________ command displays all of the cached DNS entries on a Windows XP machine
DNS Services and Protocol The Domain Name System uses a ________________________________ ____________ to provide name resolution. The _____ servers can correspond with _____ _______, which in turn have records that point to the ________________________ etc. Examples of top-level domains are: .com - a business or industry .org - a non-profit organization .it - Italy For example, as shown in the figure, the root DNS server may not know exactly where the e-mail server mail.cisco.com is located, but it maintains a record for the "com" domain located within the top-level domain. Likewise, the servers within the "com" have a record for the "cisco.com" domain. The servers within the cisco.com domain have an MX record for mail.cisco.com.
WWW Service and HTTP When a web address (or _____) is typed into a web __________, the web _____________________ ________________________________ ____________________ using the HTTP protocol. The browser then _____________________________ www.cisco.com into a numeric IP address, which it uses to connect to the server. Using the HTTP protocol, the ___________________ _____________ to the server asks for file index.html. The __________________________________ for this web page to the browser. Finally, the __________________________ and formats the page for the browser window. Other types of data, may require another service or program, typically referred to as plug-ins
HTTP and HTTPS HTTP specifies a request/response protocol. The three common message types are GET, POST, and PUT. ______________________________________ initiated by entering a URL into the browser. Once the server receives the GET request, it responds with a status line, such as HTTP/1.1 200 OK, and a message of its own, the body of which may be the requested file. _______________________________________________ _____________________________________ ________________________ able to be intercepted and read For secure communication across the Internet, the _____ ____________________ protocol is used for accessing or posting web server information. HTTPS can _________________________________ as it travels between the client and server. Encryption renders data unreadable should it be intercepted HTTPS specifies ____________________________ between the Application layer and the Transport Layer.
E-mail Service and SMTP/POP Protocols E-mail requires several applications and services. Two of the most popular application layer protocols: Simple Mail Transfer Protocol (__________) ___________________________________ uses formats and command defined by the SMTP protocol. Post Office Protocol ___________________ ____________________________________ In order to _________ from an e-mail server, the ____________________________ When people compose e-mail messages, they typically use an application called a Mail User Agent (________), or _______ The MUA comprises two processes: allows messages to be sent places received messages into the client's mailbox. Mail User Agent (MUA), or e-mail client
E-mail Server Processes - MTA and MDA The ____________ operates two separate processes: Mail Transfer Agent (______) The _________ process is used to _______________________ The MTA ____________________ ___________ on another e-mail server. MTA determines- based on the message header, how and where to forward the e-mail. Mail Delivery Agent (______) If the mail is addressed to a user whose mailbox is on the _____________ ___________________________ MTA and MDA
E-mail Server Processes - MTA and MDA The ______ can also ______ ______________, such as ____ ____________________, and return-receipt handling. Other alternatives for e-mail delivery in instead of using MUA, MTA, and MDA. IBM's Lotus Notes, Novell's Groupwise, or Microsoft's Exchange. These systems often have their own internal _______________________________ As another alternative, computers that do not have an MUA can still ______________________ _________ in order to retrieve and send messages in this manner.
E-mail Server Processes - MTA and MDA Recall: POP3 are inbound mail delivery protocols. They deliver e-mail from the e-mail server (MDA) to the client (MUA). SMTP is responsible for the transfer of outbound e-mail from the sending client to the e-mail server the transport of e-mail between e-mail servers (MTA). SMTP enables e-mail to be _______________ ____________________________________ ____________________________ SMTP protocol message format uses a rigid set of commands and replies such as: HELO - identifies the SMTP client process to the SMTP server process EHLO - Is a newer version of HELO, which includes services extensions MAIL FROM - Identifies the sender RCPT TO - Identifies the recipient DATA - Identifies the body of the message
File Transfer Protocol (FTP) _____ an application layer protocol- was developed to ________________________ __________________________ An FTP client is an application that runs on a computer _______________________ file from server ___________________________ file to server. To transfer files, FTP requires two connections between client and server: The ____________________________ to the server on _______________________ It consists of client commands and server replies to _____________ The _____________________________ to the server over _______________________. This connection is for the __________________________________ there is a file transferred.
Dynamic Host Configuration Protocol (_____) A service which __________________________ __________________________________________ _________________ from a DHCP server. When the DHCP server is contacted and an address requested. The ____________________________ from a configured range of addresses called a ______________ and assigns ("leases") it to the host for a set period. If the host is powered down or __________________, the ________ is _____________________________. Helpful with mobile users that come and go on a network. DHCP can run on various devices Dedicated server When connecting to the Internet from home- located at the ISP Home router- for home network
Dynamic Host Configuration Protocol (DHCP) DHCP can pose a security risk because ___ ______________________________________________________________ Many networks use both DHCP (dynamic) and static addressing. DHCP is used for _____________________ such as ______________________ Fixed (________) ____________ are used for network devices such as ______________ ________________________________
DHCP When a DHCP-configured device boots up, The _____________________ packet to identify any available DHCP servers on the network. A ________________________________, which is a lease offer message with an IP address, subnet mask, DNS server, and default gateway. The client may receive multiple DHCP OFFER packets if there is more than one DHCP server on the local network, it ____________________________________ packet that identifies the explicit server of the offer it chose. Assuming that the IP address offered by the server is still valid, the ____________________________ message that acknowledges to the client the lease is finalized. If the ____________________, the selected server will respond with a ______________ message (Negative Acknowledgement). If a DHCP NAK message is returned, then the selection process must begin again from the beginning Once the client has the lease, it must be renewed prior to the lease expiration through another DHCP REQUEST message
File Sharing using the SMB Protocol The Server Message Block (_________) is a _____________________________ It is a request-response protocol, _______________ ____________________________ Once the connection is established, ________ resources can be _______________________________ SMB file-sharing and print services are part of Microsoft networking- starting with Win2000. ______________________________ resource sharing ______________________ operating systems provide a method of sharing resources with Microsoft networks using a version of SMB called ________________. _______________ operating systems also use the ____________________ in resource sharing SMB messages share a common format fixed-sized header followed by a variable-sized parameter and data component SMB messages can: Start, authenticate, and terminate sessions Control file and printer access Allow an file application to send or receive messages to or from another device
P2P Service and Gnutella Protocol Application layer ____________________ With P2P applications based on the Gnutella protocol, people can make _____________ _____________________ for downloading. Gnutella-compatible client software allows users to __________________________________ and to ___________________________ shared by other ___________________________ Popular Gnutella-compatible client applications including: LimeWire, Morpheus, WinMX etc.
P2P Service and Gnutella Protocol P2P applications generally __________ ____________________ to record all the files available on the peers. Devices on the network each tell the other what files are available when queried When a user is connected to a Gnutella service, the client applications will _____________ ________________ to connect to. Those nodes handle queries for resources, replies and control messages which help discover other nodes The actual _____________________________ services. The Gnutella protocol defines five different packet types: ping - for device discovery pong - as a reply to a ping query - for file location query hit - as a reply to a query push - as a download request
Telnet Service and Protocol One of the ___________ Application layer protocol in the TCP/IP suite Telnet provides a standard method of ________ _______________________________________________________________________ Enabled user to ______________________ systems as if directly attached terminals Both the protocol itself and the client software that implements the protocol are commonly referred to as Telnet. A _____________ using Telnet is called a Virtual Terminal (_________) session, or connection. To support Telnet client connections, the ______ _____________________________________ A virtual terminal connection is established from an end device using a _____________________ Example: Hyperterminal On a Microsoft Windows PC, Telnet can be run from the _____________________________ Telnet used to program network devices…
Telnet Service and Protocol Telnet is a client/server protocol and it specifies how a VTY session is established and terminated. Telnet protocol _________________________, _________________ the transport of ________ _______________________ All data exchanged during a Telnet sessions is transported as ________________________ For security, best practice suggests using Secure Shell (_____________) protocol instead of telnet SSH provides ___________________ than Telnet and ____________________________________________