Unit3-part2
Unit3-part2
The TCP/IP model is a fundamental framework for networking. It stands for Transmission
Control Protocol/Internet Protocol, which are the core protocols of the Internet. This
model defines how data is transmitted over networks, ensuring reliable communication
between devices. It consists of four layers: the Link Layer, the Internet Layer, the
Transport Layer, and the Application Layer. Each layer has specific functions that help
manage different aspects of network communication, making it essential for
understanding and working with modern networks.
The main work of TCP/IP is to transfer the data of a computer from one device to another.
The main condition of this process is to make data reliable and accurate so that the
receiver will receive the same information which is sent by the sender. To ensure that,
each message reaches its final destination accurately, the TCP/IP model divides its data
into packets and combines them at the other end, which helps in maintaining the
accuracy of the data while transferring from one end to another end.
In this example, the Internet Layer plays a crucial role in delivering the email from your
computer to your friend’s computer. It uses IP addresses and routing tables to determine
the best route for the packets to take, and it ensures that the packets are delivered to the
correct destination. Without the Internet Layer, it would not be possible to send data
across the Internet.
UDP - User Datagram Protocol:
It is a connectionless protocol, with a minimum of initializing protocol mechanisms. The
protocol is used extensively in applications requiring low-latency and loss tolerating
connections, where the loss of some data is not a concern.
UDP Characteristics
Connectionless: UDP is a connectionless protocol, meaning there is no need for a
handshake to start communication.
No Acknowledgment: The sender transmits data without waiting for confirmation from the
receiver, so no acknowledgment is needed.
Low Overhead: Since there’s no need to maintain a connection, UDP has minimal
overhead, making it efficient.
Order less: Data packets can arrive out of order.
Speed: UDP is faster than similar protocols because it uses fewer resources and operates
with minimal delay.
How UDP Works: UDP is simple and one of the most basic transport layer protocols. Data
is sent from one system to another without connection setup. Each data packet, called a
datagram, contains a header with source and destination port numbers, packet length, and
a checksum. This header helps route the datagram properly within an IP network. When
sent, the receiving host checks the port number and forwards the data to the right
application.
Uses of UDP:
DNS Lookups: UDP helps fetch the IP address of a domain quickly, which is crucial for
web browsing.
Streaming and Gaming: UDP is ideal for live video, audio streaming, and online
gaming due to its speed and efficiency.
Multicasting: UDP is perfect for one-to-many communications, sending data to multiple
recipients without the need for individual connections.
Advantages of UDP:
Small 8-byte header means less data is transmitted.
No handshake is needed, so data is sent faster.
Lost packets aren’t retransmitted, which prevents network congestion.
Supports broadcasting and multicasting.
No need for acknowledgment from the receiver.
Disadvantages of UDP:
Lost packets are not compensated for.
No strong error-checking, which means data can be corrupted.
Data may arrive out of order, requiring reorganization at the receiver’s end.
Network congestion can cause packet loss or delays.
UDP prioritizes speed and efficiency over reliability, making it suitable for real-time
applications where minor data loss is acceptable, such as video streaming and gaming.
However, because it doesn’t require a handshake, it can be vulnerable to attacks like
UDP flooding, so security measures should be considered when using it.
Multipath Transmission Control Protocol (MPTCP):
It is an extension of the traditional TCP (Transmission Control Protocol). It was developed to
enable a single network connection to use multiple paths simultaneously, which can
enhance the network's overall throughput, reliability, and fault tolerance.
Key Features of MPTCP:
1. Multipath Capability: Unlike standard TCP, which relies on a single path between the
sender and receiver, MPTCP can split data across multiple paths, allowing a device to send
and receive data over several network interfaces (e.g., Wi-Fi and cellular data at the same
time).
2. Improved Bandwidth Utilization: By aggregating the bandwidth of different paths,
MPTCP can increase the total data transfer rate.
3. Fault Tolerance: If one network path fails (e.g., Wi-Fi disconnects), MPTCP can
seamlessly continue data transmission over the remaining paths without dropping the
connection.
4. Congestion Control: MPTCP uses mechanisms to manage congestion and ensure that
data transfer is efficient across all paths.
How It Works:
MPTCP operates as an extension of standard TCP and provides a way to establish a
connection that can include multiple subflows (individual TCP connections). These
subflows are managed together and share a common connection identifier, allowing them
to appear as a single connection to higher-level protocols and applications.
Use Cases:
Mobile Devices: MPTCP is particularly useful for smartphones and tablets that can
connect to different networks (e.g., LTE and Wi-Fi) at the same time.
Data Centers: In server-to-server communication, MPTCP can be used to improve the
data transfer rate and resilience across redundant network paths.
IoT: Devices that can operate over multiple network connections benefit from MPTCP for
increased reliability and speed.
Benefits:
Higher Throughput: By leveraging multiple paths, MPTCP can achieve higher aggregate
data transfer rates than a single TCP connection.
Increased Reliability: If one network path becomes unavailable, the protocol can
seamlessly shift traffic to other available paths, ensuring continuous service.
Better Resource Utilization: Utilizes available network resources more effectively
compared to traditional single-path TCP.
Challenges:
Compatibility: MPTCP requires support from both endpoints (sender and receiver), which
may not be present in all network devices or software.
Complexity: Managing multiple paths can add complexity to network protocols,
especially regarding congestion control and security.
Overhead: The protocol has additional overhead due to the need to manage multiple
paths, which could lead to potential performance issues in constrained environments.
MPTCP has been adopted in certain operating systems like Linux and iOS, and is also
considered for deployment in mobile and cloud computing environments to enhance
network resilience and performance.
DCCP (Datagram Congestion Control Protocol):
Network Congestion:
Congestion occurs in large networks when overloading of network nodes causes
deterioration in services. It may result from slow routers or CPUs, insufficient buffers, or
inefficient queue management in operating systems.
DCCP is a transport-level, message-based protocol that simplifies secure connection
management, congestion control, and feature negotiation. Unlike TCP, it doesn’t guarantee
in-order delivery or support sequential delivery like SCTP.DCCP is ideal for applications
with time-sensitive data (e.g., online gaming, internet telephony, streaming media) where
out-dated messages quickly lose relevance. Connection setup in DCCP is similar to TCP.
DCCP is a transport layer protocol offering congestion control for applications using UDP. It
balances data transmission efficiency and network resource management.
Key Features:
Advantages:
Congestion Control: Prevents network overload with built-in algorithms, unlike UDP.
Quality of Service (QoS): Prioritizes traffic for critical applications like VoIP and video
streaming.
Flexibility: Supports multiple congestion control algorithms tailored to application needs.
Compatibility: Works seamlessly with IP networks and traditional protocols like
TCP/UDP.
Real-World Applications:
Streaming Media: Ensures low latency and smooth performance in video conferencing.
Gaming: Enhances reliability and reduces delays in online gaming.
Telemetry: Efficiently transmits large datasets from remote devices in congested
networks.
Remote Access: Provides secure and reliable connections for accessing servers remotely.
DCCP ensures optimal data transmission, making it ideal for real-time, high-priority
applications.
Key Features
Transport Layer Protocol: Operates alongside TCP and UDP, combining TCP's
reliability with UDP's message-oriented delivery.
Multi-Stream Transmission: Enables concurrent data transmission in messages, reducing
delays.
Multihoming Support: Allows endpoints to use multiple IP addresses, improving
reliability by rerouting traffic if a primary path fails.
Technical Aspects
Reliability and Security: Features flow control, congestion control, and resistance to
attacks like Denial of Service (DoS).
Applications
Advantages
Limitations
TLS (Transport Layer Security) is a protocol that helps keep data safe when it’s sent over the
internet. It came from an older protocol called SSL (Secure Socket Layer). TLS makes
sure that no one can spy on or change the messages sent between a user (like when you use
a web browser) and a website.
Features:
Encryption: It scrambles data so that only the sender and the receiver can understand it.
Works Everywhere: Most web browsers, operating systems, and websites support TLS.
Flexible: It can use different ways to protect data, making it adaptable to different needs.
Easy to Use: People using TLS usually don’t have to do anything extra because it works
behind the scenes.
Keeps Data Safe: Ensures data isn’t stolen or changed by others.
TLS Working:
1. Starting Connection: Your device (client) connects to a website (server) over the internet.
2. Sharing Information: Your device tells the server which versions of TLS it supports and
what types of encryption it can use.
3. Server Response: The server picks the highest version of TLS that both can use and
chooses an encryption method from the client’s options.
4. Server’s Certificate: The server sends its certificate to prove its identity to the client. The
client checks this certificate to make sure it’s trusted.
5. Exchanging Keys: Both the client and server share keys that they use to create a secure
way to send and receive data.
6. Secure Communication: Now that both sides have set up their encryption, they can send
information safely.
TLS Handshake: The handshake is the process where the client and server set up a secure
connection. This includes agreeing on the TLS version, choosing an encryption method,
and exchanging keys to make a secure session.
Keep it Updated: Make sure the TLS version and settings are current to stay protected.
Use Strong Encryption: Turn off older, less secure encryption methods.
Update Certificates: Use strong certificates and renew them regularly.
TLS is Essential ? : TLS helps protect your data as it moves across the internet. It stops
hackers and other bad actors from stealing or changing your information. As technology
changes, TLS keeps updating to stay ahead of new threats, making it a key part of online
safety.
Features of DTLS:
1. Security: DTLS provides confidentiality, authentication, and integrity for data transmitted
over a network, similar to TLS.
2. Reliability over Datagram: Unlike TLS, which relies on the reliable transport of TCP,
DTLS operates over unreliable transport protocols like UDP. DTLS includes mechanisms
to handle out-of-order delivery, packet loss, and retransmissions.
3. Low Latency: Since it uses UDP, DTLS is well-suited for applications requiring low-
latency communication, as there is no overhead from establishing a TCP connection.
4. Adapted from TLS: DTLS inherits most of its features and structure from TLS, such as
the handshake process, cipher suites, and certificate-based authentication.
1. Handshake:
o Similar to TLS, the handshake establishes a secure channel. However, DTLS adapts the
handshake to tolerate packet loss and reordering.
2. Encryption and Authentication:
o Once the handshake is complete, DTLS uses symmetric encryption to protect the data and
message authentication codes (MACs) to ensure integrity.
3. Packet Loss Handling:
o DTLS includes mechanisms for retransmitting lost handshake packets and managing out-
of-sequence packets.
Applications of DTLS:
1. VoIP: Secure Real-Time Transport Protocol (SRTP) often uses DTLS for key exchange.
2. Online Gaming: Provides security without the overhead of TCP, preserving
responsiveness.
3. IoT: Secures lightweight, real-time communication in constrained devices.
4. Video Conferencing: Protects the data streams in real-time communication.
DTLS is a robust choice for securing applications that require real-time communication and
cannot tolerate the delays introduced by TCP.