Application Layer.pdf
Transcript
Application Layer OSI Model Layers: The application layer in the TCP/IP model encompasses the functions of the application, presentation, and session layers in the OSI model. Interface Role: It serves as the interface between applications used for communication and the underlying networ...
Application Layer OSI Model Layers: The application layer in the TCP/IP model encompasses the functions of the application, presentation, and session layers in the OSI model. Interface Role: It serves as the interface between applications used for communication and the underlying network infrastructure for message transmission. Common Protocols: Some widely known protocols at the application layer include HTTP, FTP, TFTP, IMAP, and DNS. Presentation Layer Functions Data Formatting: Ensures data is presented in a compatible format for the destination device. Data Compression: Compresses data for eIicient transmission and allows decompression at the destination. Data Encryption: Encrypts data for secure transmission and decrypts it upon receipt. Session Layer Functions Dialog Management: Creates and maintains communication sessions between source and destination applications. Information Exchange: Manages the initiation, maintenance, and termination of dialogs, as well as recovery from disruptions. TCP/IP Application Layer Protocols General Functions: Specify format and control information for common internet communications. Ensure compatibility between source and destination devices during communication sessions. Protocols: DNS (Domain Name System/Service) Ports: TCP/UDP 53 Function: Translates domain names (e.g., cisco.com) into IP addresses. DHCP (Dynamic Host Configuration Protocol) Ports: UDP client 68, server 67 Function: Dynamically assigns and reclaims IP addresses. HTTP (Hypertext Transfer Protocol) Ports: TCP 80, 8080 Function: Facilitates the exchange of text, graphics, sound, video, and other multimedia files on the World Wide Web. Client-Server Model Application Layer Processes: Both client and server processes operate at the application layer. Roles: Client: The device requesting information. Server: The device responding to the request. Protocols: Application layer protocols define the format and structure of requests and responses exchanged between clients and servers. Peer-to-Peer Networks Network Structure: In P2P networks, computers are connected directly and can share resources without a dedicated server. Roles of Peers: Each connected device, known as a peer, can act as both a server and a client. Dynamic Roles: A computer may function as a server for one transaction while acting as a client for another, with roles determined on a per- request basis. Peer-to-Peer Applications Dual Role in Communication: P2P applications enable devices to function as both clients and servers within the same communication session. Hybrid P2P Systems: Some applications use a hybrid model, where peers connect to an index server to find the location of resources stored on other peers. In P2P applications, each computer can serve as a client or a server for others on the network. Common P2P networks include: BitTorrent Direct Connect eDonkey Freenet When you enter a web address (URL) into a web browser, a series of steps occur to display the requested web page: Step 1: URL Interpretation The browser breaks down the URL into three components: Protocol: http (indicates the communication protocol) Server Name: www.cisco.com (the domain name of the server) Filename: index.html (the specific resource requested) Step 2: DNS Resolution and HTTP Request The browser consults a name server to resolve the domain name (www.cisco.com) into an IP address, allowing it to connect to the server. The client then sends an HTTP GET request to the server, asking for the index.html file. Step 3: Server Response The server processes the request and responds by sending the HTML code for the requested web page. Step 4: Page Rendering The browser interprets the HTML code and renders the web page for display in the browser window. HTTP and HTTPS HTTP is a request/response protocol used for communication between clients (such as web browsers) and web servers. It specifies the format and transmission of messages over the internet. HTTPS is the secure version of HTTP, providing encrypted communication and secure identification of a network web server. Common HTTP Message Types: GET: A client request for data. The client (e.g., a web browser) sends a GET request to the web server to fetch resources like HTML pages. POST: Used to upload data files to the web server. Commonly used for submitting form data. PUT: Used to upload resources or content to the web server, such as images or files. SMTP, POP, and IMAP SMTP (Simple Mail Transfer Protocol): Port: 25 Function: Used by the client to send email to the server. The client connects to the server SMTP process, which handles sending the email. If the recipient's server is not online or busy, SMTP will spool (queue) the message for later delivery. POP (Post OWice Protocol): Port: 110 Function: Used by the client to retrieve emails from the server. POP downloads emails from the server to the client device, typically removing them from the server after download. IMAP (Internet Message Access Protocol): Port: 143 Function: Used by the client to retrieve emails from the server. Unlike POP, IMAP allows for managing and organizing emails directly on the server, keeping the emails synchronized across multiple devices. Message Management: IMAP allows users to manage and organize their emails directly on the server. Message Storage: Copies of emails are downloaded to the client, but the original messages remain on the server until manually deleted by the user. Synchronization: Any changes (e.g., deletions) made on the client are synchronized with the server, ensuring that actions like message deletions are reflected across all devices accessing the account. Domain Name Service (DNS)* Purpose: Converts numeric IP addresses into easy-to- remember domain names. Example: http://www.cisco.com is easier to remember than 198.133.219.25. Protocol: Defines an automated service that matches domain names with their corresponding numeric addresses. Components: Includes the format for DNS queries, responses, and data. DNS Message Format Resource Records: Store information to resolve domain names. Types of Records: A: IPv4 address of an end device. NS: Authoritative name server. AAAA: IPv6 address of an end device (pronounced quad-A). MX: Mail exchange record. Query Process: The DNS server first checks its own records. If the name is not found, it queries other servers. Upon finding a match, the result is returned to the requesting server and cached for future queries. DNS Message Format* Message Components: Question: Contains the query for resolving a domain name. Answer: Provides the response with the requested resource records. Authority: Lists authoritative name servers for the domain. Additional Information: Includes extra data relevant to the query or response. This format is used consistently across client queries, server responses, error messages, and resource record transfers. DNS Hierarchical System Database Structure: DNS servers manage name-to-IP mappings for specific portions of the DNS structure. Request Handling: If a DNS server cannot resolve a request within its own zone, it forwards the request to another DNS server in the relevant zone for translation. Top-Level Domains (TLDs):.com: Business or industry.org: Non-profit organization.au: Australia The nslookup Command : Queries DNS servers to resolve host names into IP addresses. Troubleshoots name resolution issues and verifies the status of name servers. Functionality: Displays the default DNS server configured on your host when nslookup is issued. Allows entering a host or domain name at the nslookup prompt for resolution. Dynamic Host Configuration Protocol (DHCP) Purpose: Automates the assignment of IPv4 addresses, subnet masks, gateways, and other network parameters. Provides dynamic addressing compared to static addressing, which requires manual IP configuration. Operation: When a host connects to the network, it requests an IP address from the DHCP server. The DHCP server assigns an address from a configured range (pool) to the host. Usage: DHCP: Typically used for general-purpose hosts like end-user devices. Static Addressing: Used for network devices that require fixed IPs, such as routers, switches, servers, and printers. The DHCP Process:* 1. DHCP Discover (DHCPDISCOVER) Action: Client broadcasts a message to locate available DHCP servers. 2. DHCP OWer (DHCPOFFER) Action: DHCP server responds with an oIer of IP lease to the client. If multiple oIers are received, the client must choose one. 3. DHCP Request (DHCPREQUEST) Action: Client sends a request specifying the chosen server and lease oIer. 4. DHCP Acknowledgment (DHCPACK) Action: Server confirms the lease to the client with an acknowledgment message. 5. DHCP Negative Acknowledgment (DHCPNAK) Action: If the oIer is invalid, the server sends a negative acknowledgment, and the client must start the process over with a new DHCPDISCOVER message. FTP Data Transfer Process: 1. Control Connection Action: The client establishes a connection to the server using TCP port 21. Purpose: Handles client commands and server responses. 2. Data Connection Action: The client sets up a separate connection to the server using TCP port 20. Purpose: Manages the actual data transfer. This connection is created each time data is transferred. 3. Data Transfer Direction: Data can be transferred either from the client to the server (upload) or from the server to the client (download). Server Message Block (SMB) Overview: Protocol Type: Client/server, request-response file sharing. Server Function: Servers share resources with clients on the network. SMB Message Functions: 1. Session Management: Start, authenticate, and terminate sessions. 2. Resource Control: Control file and printer access. 3. Communication: Send and receive messages between devices. Connection Characteristics: Long-Term Connection: Clients establish a persistent connection to servers. Resource Access: Once connected, clients can access server resources as if they were local.