1 / 27

Application Layer: functionality and Protocols

Application Layer: functionality and Protocols. Laurent Babout, PhD, DSc. Based on Cisco material. 1. Objectives of lecture. Define the application layer as the source and destination of data for communication across networks.

abel
Download Presentation

Application Layer: functionality and Protocols

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Application Layer: functionality and Protocols Laurent Babout, PhD, DSc Based on Cisco material 1

  2. Objectives of lecture • Define the application layer as the source and destination of data for communication across networks. • Explain the role of protocols in supporting communication between server and client processes. • Presentation of the features, operation, and use of well-known TCP/IP application layer services (HTTP, DNS, SMTP). 2

  3. Applications – The Interface Between Human and Data Networks #1 • Applications provide the means for generating and receiving data that can be transported on the network 3

  4. Applications – The Interface Between Human and Data Networks #2 • Layer 7: application layer • Interface application / network • Application layer protocols used to exchange data between programs running on the source and destination hosts. 4

  5. Applications – The Interface Between Human and Data Networks #3 • Layer 6: presentation layer • Coding and conversion of Application layer data. • Compression/decompression of the data. • Encryption/decryption of the data. • Layer 5: session layer • create and maintain dialogs between source and .destination applications. • Most applications, like web browsers or e-mail clients, incorporate functionality of the OSI layers 5, 6 and 7. 5

  6. Applications – The Interface Between Human and Data Networks #4 • TCP/IP application protocols: • Specify format • Control information necessary for many of the common Internet communication functions • Common protocols: DNS, HTTP, SMTP, FTP, telnet 6

  7. The Role of Protocols in Supporting Communication #1 • Protocols at layer 7 used for: • Defining processes at either end of the communication • Defining the types of messages • Defining the syntax of messages • Defining the meaning of any informational fields • Defining how message are sent and the expected response • Defining interaction with the next lower layer 7

  8. The Role of Protocols in Supporting Communication #2 • The client-server model 8

  9. The Role of Protocols in Supporting Communication #3 • Server processes may support multiple client: • The Application layer processes and services rely on support from lower layer functions to successfully manage the multiple conversations. 9

  10. The Role of Protocols in Supporting Communication #4 • The peer-to-peer (P2P) model • P2P network • P2P application • P2P network • two or more computers are connected via a network and can share resources (such as printers and files) without having a dedicated server • Every connected end device (known as a peer) can function as either a server or a client. • Resource decentralization 10

  11. The Role of Protocols in Supporting Communication #5 • P2P application: • Each end device is a client and a server • Application should provide user interface and background service • Hybrid system possible • Index server to get location of resource stored on another peer • Once P2P connection, no communication with index server 11

  12. Features, Operation, and Use of TCP/IP Application Layer Services • Most common layer 7 applications protocols • DNS • HTTP • SMTP/POP • FTP • DSCP • Telnet • … • Most TCP/IP protocols defined in RFCs (Request For Comments) of the IETF (Internet Engineering Task Force) 12

  13. DNS #1 • Domain Name Service (DNS) and protocol • Match domain name with IP address • Stored on distributed set of DNS servers • Protocol (defined in RFC1035): • Use a single format called a message • Message format used for client queries, server response, message error and transfer of resource record info between servers 13

  14. DNS #2 • Use nslookup to identify IP of DNS 14

  15. DNS #3 • DNS servers store different types of resource record: • A: and end device (IP) address • NS: an authoritative name server • CNAME: the canonical name (or fully qualified name) for an alias • MX - mail exchange record; maps a domain name to a list of mail exchange servers for that domain • Use ipconfig/displaydns to display some resource records stored in Microsoft memory cache (DNS client service) 15

  16. DNS #4 • Ipconfig/displaydns 5≡ alias (type CNAME) 1≡ end device address (type A) 16

  17. DNS #5 • Over 350 millions urls nowadays, 4.5 million/month • Hierarchical organization • Root server • Top-level domain servers (TLD) • Secondary level domain servers 5 unrestricted TLDs 291 country codes 17

  18. http://www.kis.p.lodz.pl HTTP #1 • HTTP: HyperText Transfer Protocol (defined in RFC2616) • Web browser application: • Check 3 parts of address (i.e. http://www.kis.p.lodz.pl/index.html) • Check server name to convert kis.p.lodz.pl into numeric address • Send GET request to the server and asks for the file index.html • Deciphers the HTML code sent by the server and formats the page 18

  19. HTTP #2 • You can use web-sniffer.net to view http request/response and html source code

  20. HTTP #3 • HTTP Specifies message types for request/response • Three common message types: • GET: request pages from web server • POST: includes data in the message sent to server • PUT: upload resources and content to the web server • HTTP not secure. Instead HTTPS which use encryption and authentification. HTPPS specifies additional rules for passing data between the Application Layer to the Transport Layer.

  21. SMTP/POP #1 • Vocabulary: • POP: Post Office Protocol • SMTP: Simple Mail Transfer Protocol • MUA: Mail User Agent (You when you send/rec an Email) • MTA: Mail Transfer Agent (server receiving or forwarding emails) • MDA: Mail Delivery Agent (server delivering Email to client) 21

  22. SMTP/POP #2 • POP: typically client/server protocol • SMTP: client/server, server/server protocol • Some commands specified in SMTP protocol (defined in RFC2821): • 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

  23. FTP • File Transfer Protocol (defined in RFC959) • A 2-connection step for file transfer between client and server • 1st connection (port 21): control traffic (client command and server replies) • 2nd connection (port 20): data traffic (created every time a file is transferred) • Download/upload • Secure FTP: FTPS / SFTP (SSH)

  24. DHCP #1 • DHCP: Dynamic Host Configuration Protocol • Service • Allow device on network to obtain IP address and other information from a server • Automatic assignment from “pool” of addresses: • IP address, • Subnet • Gateway • … • Address leased for a given period of time • If client system down, address sent back to the “pool” • Home network, DHCP server located at the ISP (Internet Service Provider)

  25. DHCP #2 • DSCP protocol • Discover: client broadcast packet to identify any available DSCP server • Reply from DSCP server with DSCP offer (lease offer of IP, subnet, gateway, DNS server, duration of the lease) • Request: broadcast packet to identify the explicit server • Server sends ACK to acknowledge the lease finalization • See DSCP offer using ipconfig /all

  26. Telnet #1 • Remote access to server via virtual terminal (VTY) • One of the oldest Application layer protocols and services in the TCP/IP suite 26

  27. Telnet #2 • Telnet protocol specifies how a VTY session is established and terminated+control commands • Defined in the RFC854 in 1983 (IETF) • Telnet command made of at least 2 bytes • 1st byte: IAC - Interpret As Command (decimal value: 255) • 2nd byte can be: • AYT – Are You There (246) • EL – Erase Line (248) • IP – Interrupt Process (244) • Telnet clients: PuTTy, TeraTerm… • Secured version: SSH (authentification, encryption)

More Related