Advanced Topics - Networking

Introduction to TCP/IP

TCP/IP is the fundamental protocol suite for communication over the internet. It defines how data is packaged, addressed, transmitted, and routed across networks.

It's a layered model, with TCP (Transmission Control Protocol) providing reliable data transfer and IP (Internet Protocol) handling addressing and routing.

TCP vs. UDP

TCP (Transmission Control Protocol) provides reliable, ordered, and error-checked delivery of data. It uses acknowledgements and retransmissions to ensure data integrity.

UDP (User Datagram Protocol) is a connectionless protocol, offering faster speeds but without guaranteed delivery or order. It's suitable for applications like streaming and online gaming where occasional loss is acceptable.

IP Addressing and Routing

IP addresses are unique identifiers assigned to each device on a network. Routing is the process of determining the best path for data to travel from one point to another.

The IP protocol handles routing by using routing tables.

DNS (Domain Name System)

DNS translates human-readable domain names (like example.com) into IP addresses that computers use.

HTTP and HTTPS

HTTP is the foundation of web browsing, establishing a connection between a web browser and a web server.

HTTPS is the secure version of HTTP, encrypting data transmitted between the browser and server.

Wireless Networking (Wi-Fi)

Wi-Fi enables wireless connectivity between devices, utilizing radio waves to transmit data.

Layer 7 (Application Layer)

Layer 7 protocols (like HTTP, SMTP, FTP) handle data-level application tasks such as sending emails and web pages.

JavaScript

JavaScript is a scripting language primarily used for web browser interactivity and client-side development.

SVG (Scalable Vector Graphics)

SVG is a vector graphics format suitable for icons, logos, and illustrations, allowing for scalable images without loss of quality.

CSS (Cascading Style Sheets)

CSS defines the visual presentation of HTML content, such as colors, fonts, and layout.