Analysing (A)
Questions may cover for 2024: the internet protocol suite and its four abstraction layers (application, transport, internet, and link), application layer protocols (HTTP / HTTPS), transport layer protocols (TCP and UDP)
Key aspects of NETWORK COMMUNICATION PROTOCOLS
Networking protocols are organized into four layers:
Application Layer: Manages communication between software applications and network services.
Transport Layer: Ensures reliable data transfer and manages data segmentation.
Network Layer: Handles routing data packets across networks using IP addresses.
Link Layer: Manages physical connections, local network communication, and hardware-level error handling.
Application Layer
Application is the layer that handles the end user interaction with the internet. For example HTTPS (Hypertext Transfer Protocol Secure) which is used by the web browsers, or DNS (Domain Name System) which creates human readable network names such as “www.google.com” instead of something like 192.168.1.1.
--> Examples of Application Layer Protocols
TELNET, TELetype NETwork 🔵 FTP, File Transfer Protocol 🔵 TFTP, Trivial File Transfer Protocol 🔵 NFS, Network File System 🔵 SMTP, Simple Mail Transfer Protocol 🔵 LPD, Line Printer Daemon 🔵 X window 🔵 SNMP, Simple Network Management Protocol 🔵 DNS, Domain Name System 🔵 DHCP, Dynamic Host Configuration Protocol 🔵 HTTP, Hypertext Transfer Protocol /HTTPS, Hypertext Transfer Protocol Secure 🔵 POP, Post Office Protocol 🔵 IRC, Internet Relay Chat 🔵 MIME, Multipurpose Internet Mail Extension
Transport Layer
Sitting below the application layer, the transport layer ensures reliable data transfer between devices,. It manages data segmentation, reassembly, error checking, and flow control. Protocols like TCP (Transmission Control Protocol) and UDP (User Datagram Protocol) operate at this layer.
--> Examples of Application Layer Protocols
ATP, AppleTalk Transaction Protocol 🔵 CUDP, Cyclic UDP 🔵 DCCP, Datagram Congestion Control Protocol 🔵 FCP, Fibre Channel Protocol 🔵 IL, IL Protocol 🔵 MPTCP, Multipath TCP 🔵 NORM, NACK-Oriented Reliable Multicast 🔵 RDP, Reliable Data Protocol 🔵 RUDP, Reliable User Datagram Protocol 🔵 SCTP, Stream Control Transmission Protocol 🔵 SPX, Sequenced Packet Exchange 🔵 SST, Structured Stream Transport 🔵 TCP, Transmission Control Protocol 🔵 UDP, User Datagram Protocol 🔵 UDP-Lite 🔵 µTP, Micro Transport Protocol
Network Layer
The network layer focuses on routing data packets across networks. It deals with addressing and logical network topology. IP (Internet Protocol) is a key protocol at this layer, responsible for assigning unique IP addresses to devices and forwarding data packets based on these addresses.
--> Examples of Network Layer Protocols
ARP, Address Resolution Protocol 🔵 ICMP, Internet Control Message Protocol 🔵 IPv4, Internet Protocol Version 4 🔵 IPv6, Internet Protocol Version 6
Link Layer
The link layer is the lowest layer and deals with physical connections and local network communications. It manages the physical addressing of devices on a network (like MAC addresses) and handles error detection and correction at the hardware level
-- > Examples of Data Link Layer Protocols
SDLC, Synchronous Data Link Protocol 🔵 HDLC, High-Level Data Link Protocol🔵 SLIP, Serial Line Interface Protocol 🔵 PPP, Point to Point Protocol 🔵 LCP, Link Control Protocol 🔵 LAP, Link Access Procedure 🔵 NCP, Network Control Protocol
Relevant algorithms or other mechanisms behind NETWORK COMMUNICATION PROTOCOLS
1. TCP/IP Protocol Suite: The foundation of internet communication, including protocols like TCP, IP, UDP, and ICMP, ensuring reliable data transmission, addressing, and error handling.
2. DNS (Domain Name System): Resolves domain names to IP addresses, using protocols like UDP and TCP, and algorithms like iterative and recursive querying.
3. ➡️SSL/TLS (Secure Sockets Layer/Transport Layer Security): Encryption protocols that secure data transmitted over the internet, using algorithms like RSA and AES.
4. See above for MORE protocols
How NETWORK COMMUNICATION PROTOCOLS is used, is implemented, or occurs, giving examples
TCP
Also known as Transmission Control Protocol, breaking up data sent over networks into small container of data known as packets.
Packets can be as large as 1500 bytes. They contain many items of metadata, or data that contains information about other data. Items include sequence numbers, checksums, etc. [min 20B TCP header]
Sequence numbers allow packets that arrive out of order to be ordered correctly.
Checksums are like a unique fingerprint, used to verify that a received packet and a sent packet are the same.
Email commonly uses TCP. This is because TCP is reliable and secure, whilst sacrificing speed. Email does not require high speed, but reliability and security are important for ensuring the email is sent and that it is hard to read for attackers.
UDP
UDP (User Datagram Protocol)
Connectionless (No need to establish a connection prior to data transfer)
Relies on the receiver to sort out the data
Packets can be duplicated or out of order
Minimum security (only using checksums)
Has a larger byte capacity (65535B) [min 8B UDP header]
UDP is used for streaming softwares such as video games, and live online communication services, such as zoom and discord voice chats since they require larger packets to be sent.
More possible examples:
1. Data Transmission:
Protocols facilitate the exchange of data between devices. For instance, when you browse a website, your web browser uses the HTTP protocol to request web pages from a server. The server responds with the requested content using the same protocol.
2. Addressing and Routing:
Protocols ensure data reaches the correct destination. In IP-based networks, routers use the IP addresses in data packets to route them through the network to the intended recipient. For instance, when you send an email, the SMTP protocol uses recipient email addresses to route the email to the appropriate server.
3. Data Integrity and Reliability:
Protocols guarantee the integrity of data during transmission. TCP, for example, breaks data into segments, sends them, and verifies their arrival. If a segment is lost, TCP requests retransmission. This ensures that data, like file downloads, arrives intact even in unreliable networks.
4. Encryption and Security:
Protocols like SSL/TLS secure data transmission. When you visit a website with HTTPS (HTTP over TLS), the protocol encrypts data exchanged between your browser and the server, protecting sensitive information from eavesdropping.
5. Voice and Video Communication:
VoIP (Voice over Internet Protocol) protocols like SIP (Session Initiation Protocol) enable voice and video calls over the internet. Skype and Zoom use SIP to initiate and manage multimedia communication.
6. Remote Access:
Protocols like SSH provide secure remote access to devices. When administrators use SSH to access a server remotely, the protocol encrypts the communication, safeguarding sensitive data.
7. TCP:
Although TCP is a reliable and secure form of data transmission, it can’t carry as much information as UDP. It is also slower than UDP in the process of transmission, since it has more protocols it needs to go through.
In all these instances, network communication protocols establish the rules and standards for effective communication, ensuring that data flows smoothly across networks while maintaining integrity, security, and reliability.
Key problems or issues related to NETWORK COMMUNICATION PROTOCOLS and how these have been or may be addressed
TCP and UDP Hybrid Approach:
To overcome TCP and UDP limitations, a combined approach is utilized.
TCP secures connections for tasks like retrieving graphical data (websites).
UDP serves real-time functions such as voice calls and live updates (e.g., Discord).
Addressing Scalability:
As networks grow, scalability becomes challenging, straining protocols designed for smaller scales.
Solutions like CIDR improve IP address allocation, and IPv6 adoption expands address space.
Security Enhancement:
Security vulnerabilities can lead to breaches and unauthorized access.
Protocols like SSL/TLS and IPSec provide encryption and authentication, while updates address vulnerabilities.
Interoperability Challenges:
Different protocols may not seamlessly work together, causing communication issues.
Standardization and gateways bridge gaps between protocols, ensuring compatibility.
Congestion and Performance:
High data traffic causes network congestion, leading to performance degradation.
Quality of Service (QoS) prioritizes critical traffic, and load balancing prevents overloads.
Ensuring Reliability and Fault Tolerance:
Protocols must ensure reliable data transmission despite network failures.
Redundancy and failover mechanisms like BGP ensure fault tolerance.
Complex Configurations:
Configuring protocols, especially in large networks, can be complex.
Automated tools like DHCP simplify IP allocation, while SDN centralizes management.
Latency in Real-time Communication:
Real-time applications like VoIP face latency challenges.
QoS mechanisms minimize latency for critical applications.
IoT Connectivity Challenges:
IoT devices' diverse requirements necessitate accommodating various device types and data.
IoT-specific protocols like MQTT and CoAP facilitate lightweight communication.
Future-Proofing Through Evolution:
Evolving technology demands adaptable protocols.
Ongoing research leads to new protocols and enhancements.
Balancing the advantages and challenges of network communication protocols is essential for optimizing modern communication. Integrating the strengths of protocols like TCP and UDP, while addressing issues like security and scalability, contributes to efficient and effective data transmission across diverse contexts.