100% Free Forever
AI-Powered Learning
Industry Expert Content
Certificates & Badges
Learn At Your Own Pace
Computer Science

Computer Networks

IntermediateConcept3.5K learners

Computer networks are interconnected systems of devices that communicate by exchanging data over shared communication links, using standardized protocols to address, route, and reliably deliver information. , the OSI or TCP/IP models) that…

Definition

Computer networks are interconnected systems of devices that communicate by exchanging data over shared communication links, using standardized protocols to address, route, and reliably deliver information. They range from local area networks (LANs) connecting devices in a building to the global internet, and are structured conceptually into layers (e.g., the OSI or TCP/IP models) that separate concerns like addressing, transport, and application logic.

Overview

Computer networking is organized around layered protocol stacks that separate responsibilities so each layer can evolve independently. The TCP/IP model, which underlies the modern internet, is commonly simplified into four layers: link (physical transmission, e.g., Ethernet, Wi-Fi), internet (addressing and routing via IP), transport (end-to-end delivery via TCP or UDP), and application (protocols like HTTP, DNS, SMTP). The more academic seven-layer OSI model further separates presentation and session concerns for teaching purposes. At the transport layer, TCP provides reliable, ordered, connection-oriented delivery with retransmission and flow control, making it suitable for web traffic and file transfer, while UDP offers a lightweight, connectionless alternative favored for real-time applications like video calls and gaming where occasional loss is preferable to added latency. IP addressing (IPv4/IPv6) and routing protocols determine how packets traverse intermediate networks to reach their destination, with DNS translating human-readable domain names into IP addresses. Key concepts include the client-server and peer-to-peer communication models, network topology (star, mesh, bus), switching versus routing, NAT for address translation, and security layers like TLS that encrypt traffic between endpoints. Modern networking also spans wireless standards (Wi-Fi, cellular), content delivery networks (CDNs) that cache content geographically closer to users, and load balancers that distribute traffic across servers. Understanding networking fundamentals underpins nearly all distributed systems and system design work, since latency, bandwidth, and reliability constraints imposed by the network shape architectural decisions throughout software engineering.

Key Concepts

  • Layered protocol stack (TCP/IP or OSI) separating link, network, transport, application concerns
  • TCP provides reliable, ordered delivery; UDP offers low-latency, best-effort delivery
  • IP addressing and routing move packets between networks
  • DNS resolves domain names to IP addresses
  • TLS/SSL secures data in transit between endpoints
  • Switching and routing hardware direct traffic within and between networks
  • CDNs and load balancers optimize latency and distribute traffic at scale

Use Cases

Designing client-server communication for web and mobile applications
Choosing TCP vs. UDP for real-time versus reliable data transfer
Configuring DNS records for a domain and its subdomains
Setting up load balancers to distribute traffic across backend servers
Securing API traffic with TLS/HTTPS
Troubleshooting latency and packet loss in distributed systems
Architecting CDN caching strategies for global content delivery

Frequently Asked Questions

From the Blog