Unit 5 (1) (1796)
Unit 5 (1) (1796)
Unit 5 (1) (1796)
2. Acknowledgment:
• In reliable protocols like TCP, the receiver sends acknowledgments (ACKs) to the sender to confirm
that data has been successfully received. If the sender doesn't receive an ACK within a specified
time, it assumes that an error occurred and retransmits the data.
3.Retransmission:
• If errors are detected or acknowledgments are not received, the sender retransmits the data. This
ensures that data reaches the destination intact.
• Flow control is the mechanism used to manage the rate of data transmission between devices,
preventing congestion and ensuring efficient communication. Key aspects of flow control include:
1.Congestion Avoidance:
• Congestion occurs when the network is carrying more data than it can handle. Flow control helps
avoid congestion by regulating the flow of data.
- The window size determines how much data can be in transit at any given time. Adjusting the window size
dynamically helps optimize the use of network resources.
4.Buffering:
- Buffers are used to temporarily store data during communication. Flow control ensures that the sender
doesn't overwhelm the receiver's buffer, preventing data loss.
Relationship between Error Control and Flow Control:
1.Interdependence:
- Error control and flow control are closely related. Effective error control prevents data corruption, which is
especially important in scenarios where retransmission might contribute to congestion.
2.Optimizing Performance:
- Both mechanisms work together to optimize the performance of the communication process. Flow control
prevents congestion, while error control ensures the integrity of the transmitted data.
3.TCP as an Example:
- In TCP, acknowledgment and retransmission (error control) work alongside the sliding window protocol
(flow control) to ensure reliable and efficient data transfer.
Overview of Application Layer Protocol
• The Application Layer is the topmost layer in the OSI model and the TCP/IP protocol suite. It
provides network services directly to end-users or applications and serves as the interface between
software applications and the network. The protocols and services at this layer facilitate
communication between different software applications, allowing them to exchange data over a
network
• Key Characteristics of the Application Layer:
1.User Interface: The Application Layer provides a user interface and network services to end-users
or applications.
• It allows applications to communicate with the network and with each other.
2.High-Level Protocols:
• Application layer protocols operate at a higher level than transport layer protocols (e.g., TCP and
UDP).
• These protocols define the rules and conventions for communication between applications.
3.Network Services:
• The layer offers various network services such as file transfers, email, remote login, and web
browsing.
• It abstracts the complexities of network communication, providing a simplified interface for
applications.
4.End-to-End Communication:
• The Application Layer ensures end-to-end communication between applications running on
different devices.
• It takes care of data encoding, encryption, and formatting for application-level data exchange.
Common Application Layer Protocols:
1.Security:
• Security concerns include encryption of data, authentication, and authorization.
• Protocols like HTTPS (HTTP Secure) address security concerns for web communication.
2.Interoperability:
• Ensuring that applications developed by different vendors can communicate effectively.
• Adherence to standardized protocols helps achieve interoperability.
3.Scalability:
• As the number of users and applications on a network grows, the Application Layer must scale to handle
increased traffic and demand.
4.Reliability:
• Ensuring reliable end-to-end communication is crucial.
• Some protocols, like TCP, provide reliable and connection-oriented communication.
DNS Protocol
• Domain Name System (DNS) Protocol, which is an application layer protocol responsible for
translating human-readable domain names into IP addresses and managing the distribution of
domain-related information.
1.Purpose of DNS:
Domain Name Resolution: DNS is designed to resolve domain names (e.g., www.example.com) to IP
addresses that computers use to identify each other on a network.
Human-Readable Addresses:
• It provides a human-readable way to access resources on the internet, making it more user-friendly
than using numerical IP addresses.
2.DNS Components:
DNS Servers:
• DNS operates in a hierarchical and distributed manner. It involves multiple DNS servers organized
into a hierarchy, each responsible for specific tasks.
DNS Resolver:
• Devices on a network use DNS resolvers (often provided by ISPs) to query DNS servers and resolve
domain names.
• DNS servers and resolvers cache information to reduce the need for repeated queries. Cached
information expedites the resolution process and reduces the load on DNS servers.
• MX Records:
• Specifies the mail servers responsible for receiving email on behalf of the domain.
• CNAME Records:
• Provides an alias for another domain.
5. DNSSEC (DNS Security Extensions):
• Digital Signatures:
• DNSSEC adds an extra layer of security by incorporating digital signatures to DNS data. This
helps in ensuring the authenticity and integrity of DNS responses.
• Preventing DNS Spoofing:
• DNSSEC helps prevent attacks such as DNS cache poisoning and man-in-the-middle attacks by
validating the authenticity of DNS data.
6. DNS Messages and Protocol:
• DNS Query and Response Messages:
• DNS messages have specific formats for queries and responses, containing information like the
query type, query class, and resource records.
• UDP and TCP:
• DNS primarily uses UDP for its transport layer communication. However, for large responses or
zone transfers, it can switch to TCP.
7. Anycast DNS:
• Distribution of DNS Servers:
• Anycast is a network addressing and routing methodology where a single destination IP
address is shared by multiple servers. Anycast DNS improves performance and resilience.
8. Challenges and Considerations:
• DNS Amplification Attacks:
• Large-scale attacks can leverage DNS servers to amplify their impact. DNS operators
implement measures to mitigate such attacks.
• Privacy Concerns:
• DNS queries can reveal sensitive information. Efforts, such as DNS over HTTPS (DoH) or
DNS over TLS (DoT), aim to enhance the privacy and security of DNS transactions.
WWW & HTTP Protocol.
• World Wide Web (WWW) and the Hypertext Transfer Protocol (HTTP), two fundamental
components of modern internet communication.
• Stateless Protocol: Each request from a client to a server is independent and doesn't retain
information about previous requests. This simplicity aids scalability.
• Connectionless: HTTP doesn't maintain a persistent connection between the client and server. Each
request/response is a separate transaction.
• Text-Based Protocol: HTTP messages are human-readable and consist of headers and an optional
body.
• HTTP Methods:
• GET: Retrieves information from the server. Used for fetching web pages and resources.
• POST: Sends data to the server to be processed. Commonly used in forms and data submission.
• PUT and DELETE: Used for updating or deleting resources on the server, respectively.
• HEAD: Retrieves metadata about a resource without fetching the resource itself.
• HTTP Status Codes:
• 2xx (Successful): Indicates that the request was successfully received, understood, and accepted.
• 3xx (Redirection): Indicates further action needs to be taken in order to complete the request.
• 4xx (Client Error): Indicates that the client seems to have made an error.
• 5xx (Server Error): Indicates that the server failed to fulfill a valid request.
• HTTP Headers:
• Request Headers: Include information about the client and the requested resource.
• Response Headers: Provide information about the server's response.
• HTTP Cookies:
• Cookies are small pieces of data stored on the client's machine. They are sent with each subsequent
request to provide state information or authentication.
• Secure HTTP (HTTPS):
• HTTPS (HTTP Secure) is an extension of HTTP that adds a layer of encryption using SSL/TLS
protocols. It ensures secure data transfer between the client and server.
• Evolution:
• HTTP/1.0, HTTP/1.1, and HTTP/2 are different versions of the HTTP protocol, with each version
introducing improvements in terms of performance, efficiency, and security.
•Challenges and Advancements:
• Performance:
• Efforts like HTTP/2 and HTTP/3 aim to improve performance by optimizing the way data is
transmitted between clients and servers.
• Security:
• HTTPS adoption has become crucial to ensuring the confidentiality and integrity of data
exchanged between clients and servers.
• Web Accessibility:
• Efforts are ongoing to ensure that the Web is accessible to people with disabilities, promoting
inclusivity and usability.
• Mobile and IoT Integration:
• The Web is evolving to accommodate the growing number of devices, including smartphones,
tablets, and Internet of Things (IoT) devices.
• Thankyou