I've recently refreshed my networking knowledge, and I often hear people saying, "I struggled with networking questions in my interview." So, I thought it would be helpful to create a blog series on Computer Networking to simplify these concepts and make it easy to review them right before interviews. This is the first and introductory part of the series, where we’ll cover the basics of networking. Let’s dive right into it!
Table of Contents
- What is a Network?
- The Internet
- How Did It Start?
- Protocols
- World Wide Web (WWW)
- IP Address
- Port Numbers
- Internet Speed
What is a Network?
In simple terms, it's just computers connected together.
The Internet
The internet is essentially a collection of these computer networks.
How Did It Start?
The Advanced Research Projects Agency (ARPA) initially set up networks across four locations:
- MIT
- Stanford
- UCLA
- Utah
To enable communication between these locations, they developed ARPAnet, which used the TCP/IP protocol (we’ll discuss this in more detail later).
Protocols
Protocols are the rules established by the Internet Society on how data is sent. Examples include TCP, IP, and UDP.
World Wide Web (WWW)
The World Wide Web, commonly called the web, is an information system where documents and other resources are identified by URLs. These resources can be interlinked via hyperlinks and accessed over the internet.This is the first ever website.
IP Address
Every device on the internet that can communicate with others has an IP address.
Format of an IP Address
An IP address is typically in the format:
X.X.X.X
Each "X" can range from 0 to 255.
To check the IP address of your computer, use these commands:
-
Windows:
ipconfig
-
Mac and Linux:
ifconfig
You’ll come across different types of IP addresses: global and local.
- Global IP Address: This is the IP address assigned by your Internet Service Provider (ISP) and is the same for all devices connected to that network.
- Local IP Address: This is the unique identifier for your device within your ISP’s network.
IP addresses are assigned using Dynamic Host Configuration Protocol (DHCP).
If you’re connected to the internet through a modem, that modem assigns IP addresses to all connected devices using DHCP.
When you request data from the internet, that request goes first to your ISP, then to your modem, which uses Network Address Translation (NAT) to decide which device made the request.
Port Numbers
Now, you might wonder: even with IP addresses, how do we know which application requested the data? This is where port numbers come in.
Each port number corresponds to a specific application, allowing data to reach the correct app. For example, all HTTP requests happen on port 80.
Ports are 16-bit numbers and are divided into three ranges:
- Well-Known Ports: 0–1023
- Registered Ports: 1024–49151
- Dynamic or Private Ports: 49152–65535
The well-known ports are system-assigned, registered ports are for specific applications, and dynamic ports are for private use. You can check a detailed list of ports here.
Internet Speed
Let’s talk about speed—not the streamer, but internet speed! A common misconception is that Mbps stands for megabytes per second, but it actually means megabits per second (the same applies to Kbps and Gbps).
- 1 Mbps = 1,000,000 bits per second
It’s a high speed, though people often underestimate it. Wondering how data transfers at such speeds? The internet doesn’t travel through air or clouds; it moves through wires and cables across oceans and land. Check out how these cables are laid at submarinecable.com.
Feel free to connect with me and check out my other work:
LinkedIn: Vignesh J
GitHub (Personal): Vignesh025
GitHub Organization (VigneshDevHub): VigneshDevHub
Join our Open-Source Community on Discord: VigneshDevHub
Top comments (7)
Such an informative blog !!
Looking forward for future blog posts of this series
Thank you so much! 😊 I’m glad you found it informative. I’m excited to share more posts in this series, so stay tuned for the next part.
I am writing similar series for distributed system, that would not only help in interviews but also improve your knowledge base. You can checkout the series in my profile. I publish it every sunday.
Thank you for sharing that! Distributed systems are such an important topic, and it’s great that you're creating resources that help with both interviews and deepening understanding. I'll definitely check out your series
Some comments may only be visible to logged-in visitors. Sign in to view all comments. Some comments have been hidden by the post's author - find out more