Computer Networks: Key Concepts & Protocols
Computer Networks: Key Concepts & Protocols
Electronic mail architecture typically uses the Client-Server model of communication over the TCP/IP network, facilitating reliable transmission. The protocol often involves Simple Mail Transfer Protocol (SMTP) to send messages from a client's machine to a mail server and from one server to another. The Post Office Protocol (POP) or Internet Message Access Protocol (IMAP) is used by clients to retrieve emails from the server. This layered interaction ensures messages successfully reach their destination or reveal failure notifications if they do not . The standardized mail format includes headers and body that organize and transport data reliably within networks .
NAT (Network Address Translation) modifies network address information in the packet headers while in transit across a traffic routing device, generally to remap one IP address space into another. It helps conserve global address space and also adds a layer of security by creating a type of firewall between private networks and the public Internet, making internal addresses not directly accessible externally . However, NAT can complicate some protocols and applications that rely on the ability to initiate connections, as they may conflict with the NAT process .
The Go-back-N protocol is an error control mechanism in data communication that uses a sliding window method for sending multiple frames before needing an acknowledgment for the first one, increasing the efficiency of frame delivery. The finite state machine (FSM) in Go-back-N tracks the state of each frame (sent, acknowledged, or needing retransmission) and dictates actions upon various events, such as timeouts or receipt of acknowledgment. The sender continues sending up to N frames but if an error or lost frame is detected, it goes back and retransmits from the erroneous frame, ensuring orderly and complete transmission .
ALOHA is a simple communication scheme in which each source sends packets whenever it has data to send. There are two versions: Pure ALOHA and Slotted ALOHA. Pure ALOHA has a high collision probability since packets are sent as soon as they are ready, regardless of the state of the network. Slotted ALOHA improves efficiency by dividing time into slots and allowing packet transmission only at the beginning of a time slot, reducing collisions . On the other hand, CSMA/CA (Carrier Sense Multiple Access with Collision Avoidance) listens to the communication medium before sending to minimize collisions. If the channel is busy, CSMA/CA will delay transmission, reducing the chance of collision, particularly useful in wireless networks where collision detection is challenging .
The persistence methods in CSMA affect how and when a node should attempt to retransmit following a sense of the channel being busy. The three types are 1-persistent, p-persistent, and non-persistent methods. In 1-persistent, stations transmit immediately when the channel becomes idle, leading to a higher chance of collisions. In p-persistent, after sensing an idle channel, a station transmits with a probability p, reducing collision rates. Non-persistent methods wait a random time after sensing the channel busy, generally leading to fewer collisions and lower network traffic congestion . The choice of method impacts network efficiency by balancing transmission attempts and collision probabilities .
CSMA/CD (Carrier Sense Multiple Access with Collision Detection) operates by sensing the carrier wave before transmitting, reducing collisions on a network. If a device detects that the network channel is free, it sends data. During transmission, if it detects a collision, it stops the transmission, waits for a random time, and then tries sending again. The flowchart includes stages such as sensing the channel, sending, detecting collisions, and waiting for retransmission . This protocol is predominantly used in wired networks like Ethernet, where it is feasible to detect collisions .
The DNS is structured as a hierarchical and decentralized naming system for computers and services, utilizing domain names translated into IP addresses. The process begins when a DNS query is made by a host. In recursive resolution, the DNS server responds to the client by querying other DNS servers on behalf of the client until an appropriate response is obtained. Iterative resolution requires the client to query each sequential DNS server, using the referrals received. This process involves various DNS servers including root servers, .com nameservers, and authoritative servers, efficiently resolving the domain to IP conversions necessary for internet navigation .
IPv4 datagrams incorporate security features such as the Internet Protocol Security (IPsec) suite that provides authentication, integrity, and confidentiality to data transmitted across IP networks. These features help protect against man-in-the-middle attacks and eavesdropping by encrypting data and ensuring it comes from a verified source . However, IPv4 lacks built-in security and requires additional measures like IPsec to ensure complete protection, highlighting its limitations relative to more recent protocols such as IPv6 which have integrated security features .
DHCP (Dynamic Host Configuration Protocol) automates the assignment of IP addresses in networks, reducing administrative overhead and ensuring efficient IP address management. When a device connects to a network, the DHCP server assigns it an IP address from a defined range, known as a pool, for a specific lease time. This dynamic allocation prevents IP conflicts and accommodates devices that frequently connect and disconnect, such as laptops and mobile devices, ensuring actual network usage aligns with available resources . This flexibility streamlines network management and supports scalability .
Connection-oriented services like TCP (Transmission Control Protocol) establish a connection-oriented session before data transfer, ensuring that packets are delivered in sequence, reliable data transfer, and error recovery. This involves a three-way handshake process for establishing and terminating connections, along with acknowledgment of received packets . Conversely, connection-less services like UDP (User Datagram Protocol) lack the overhead of connection establishment and maintenance, facilitating faster data transmission but without guarantees for delivery order or error correction . This difference impacts their respective use cases, with TCP suited for applications demanding reliability, like web pages and file transfers, and UDP ideal for real-time applications where speed is crucial, like video streaming .