Comprehensive Study Guide to Computer Networks and Internet Infrastructure
Fundamentals of Networking and Computing Systems
Net: Short for network, defined as a system of interconnected computers, devices, and servers that share resources and data.
Computing Device: A machine capable of running a program.
Examples include computers, tablets, servers, routers, and smart sensors.
Computing System: A group of computing devices and programs working together to accomplish a common purpose.
Computing Network: A group of interconnected computing devices capable of sending or receiving data.
Internet: A global network of interconnected computers and devices that communicate with each other using standardized protocols to exchange data, access websites, services, and applications.
World Wide Web (www): A system of linked pages, programs, and files accessible over the Internet.
Path: The series of connections between computing devices on a network, starting with a sender and ending with a receiver.
Bandwidth: The maximum amount of data that can be sent in a fixed amount of time, usually measured in bits per second.
Router: A specialized type of computer that forwards data across a network.
Internet Protocols and IP Addressing
Protocol: An agreed-upon set of rules that specify the behavior of a system.
Internet Protocol (IP): A protocol for sending data across the Internet that assigns unique numbers to each connected device.
Open Protocol Standard: IP is an open protocol used by all devices, ensuring that any device can connect to another simply by knowing its IP address.
Public IP Address Assignment: Public IP addresses are assigned by an Internet Service Provider (ISP). Each device receives a unique IP address, functioning similarly to a telephone number.
Binary Conversion: The IP addresses of both the sender and receiver are converted into binary so that devices know which incoming messages are intended for them and which device should receive a response.
IP Address: The unique number assigned to each individual device connected to the Internet.
Data Transmission: Packets, Datastreams, and Transport Protocols
Datastream: Information passed through the Internet in packets.
Packet: A chunk of data sent over a network.
Larger original messages are divided into smaller packets prior to transmission.
Packets travelling over a network may arrive at their destination in order, out-of-order, or not at all.
Packet Metadata: Data added to packets to assist in routing them through the network and reassembling the original message at the destination.
Transmission Control Protocol (TCP): A protocol responsible for sending and receiving packets of data over a network.
Performs error-checking to ensure all packets are received and properly ordered.
User Datagram Protocol (UDP): A protocol for sending packets quickly with minimal error-checking and no resending of dropped packets.
Hypertext Transfer Protocol (HTTP): A protocol for computers to request and share the pages, files, and resources that make up the World Wide Web on the Internet.
Domain Name System (DNS) and Domain Structure
Domain Name System (DNS): The system responsible for translating domain names (such as
khanacademy.comorcode.org) into IP addresses.Because IP addresses are not human-friendly, DNS provides humans an easy way to identify destinations on the Internet.
Typing a domain name like
www.wikipedia.orgallows a computer to connect directly to the servers powering Wikipedia.
Domain Mapping and Scalability:
Behind the scenes, each domain name maps directly to an IP address.
When a URL is typed into a browser's address bar, the computer resolves its corresponding IP address.
Domain names are structured in parts to ensure domain name management load is distributed across different levels, making the system globally scalable.
Hierarchical Structure Format:
Formatted as
[third-level-domain].[second-level-domain].[top-level-domain].
Top-Level Domain (TLD):
A limited set of top-level domains exist.
Common TLDs include
.com,.org, and.edu.
Second-Level Domain:
Unique to the company or organization that registers it, such as
wikipedia,code, orkhanacademy.
Third-Level Domain (Subdomain):
Owned by the same entity holding the second-level domain.
Directs users to a specific subset of the website, such as
www.wikipedia.comores.khanacademy.org(the Spanish-language Khan Academy site).
Network Reliability: Redundancy and Fault Tolerance
Redundancy: The inclusion of extra components (hardware, devices, or connections) so that a system can continue operating even if individual components fail.
Fault Tolerant: The ability of a computer system to continue functioning even in the event of individual component failures.
Benefits of Network Redundancy:
Allows the network to be fault-tolerant.
If part of the network fails or experiences a bottleneck, messages can still be routed and sent to their destination.
Issues and Trade-offs of Building Redundancy:
Requires additional infrastructure and hardware devices on the network.
Can be expensive or difficult to build and maintain.
Social, Legal, and Ethical Dimensions of the Internet
Social Dilemma of the Internet: Numerous systemic issues arise from entities taking advantage of "open protocols".
Net Neutrality:
A raging legal debate concerning the principle that Internet service providers (ISPs) should enable access to all content and applications regardless of the source.
Prohibits favoring, prioritizing, throttling, or blocking particular products, services, or websites.
Internet Censorship:
The attempt by authorities or groups to control or suppress what can be accessed, published, or viewed on the Internet by certain people.
Protection: Can be used to protect populations (e.g., preventing access to child pornography).
Restriction: Can also be used to limit free speech and restrict access to information.
Digital Divide:
Differing levels of access to computing devices and the Internet based on socioeconomic, geographic, or demographic characteristics.
Internet Governance and Technical Standards
Internet Engineering Task Force (IETF):
An open international community composed of network designers, engineers, researchers, and volunteers.
Collaborates to develop and promote technical standards and protocols for the Internet.