Number Systems. Network Layer. IPv4 subnetting. ICMP
Published: 2023-06-08 05:45:02

Hey there, guys! I hope you're all doing well. As part of my weekly updates on computer networks, I wanted to share some exciting topics.

Firstly, we delved into the world of **Number Systems**. This topic focused on binary and **_IPv4_** addresses, and we learned how to convert from binary to decimal, from hexadecimal to decimal and vice versa. Understanding number systems is critical in computer networking because computers use binary, and it's essential to know how to convert between different number systems to communicate effectively.

Let's start with binary. It's a base-2 number system that only uses two digits, 0 and 1, to represent values. In computer networking, we use binary to represent IP addresses. IP addresses are unique numerical identifiers assigned to devices on a network. IPv4 addresses are 32-bit addresses, which means they're made up of four 8-bit numbers separated by dots. For example, 192.168.1.1 is an IPv4 address. To convert from binary to decimal, we multiply each binary bit by its corresponding value and add up the results. It's a straightforward process, but it can be time-consuming when dealing with large numbers.


![Number System](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3vaka6y6ulpha10ic31u.png)

The next number system we learned about was hexadecimal, a base-16 number system that uses 16 digits, 0-9 and A-F, to represent values. We use hexadecimal to make it easier to read and write binary numbers. For example, 1100 in binary is equivalent to C in hexadecimal. To convert from hexadecimal to decimal, we use the same process as converting binary to decimal but with the corresponding values of each hexadecimal digit.

Moving on to the **Network Layer**, we discussed **IPv4** and **IPv6** packets and how a host routes. The Network Layer is responsible for routing data across multiple networks, making it a crucial layer in the OSI (Open Systems Interconnection) model.

![Layer 3](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/uxavjjculbx3llv4zact.png)


We use IPv4 and IPv6 packets to communicate between devices on different networks. IPv4 addresses are the most common type of IP address used today, but as the number of devices connected to the internet continues to grow, we'll eventually run out of IPv4 addresses. That's where IPv6 comes in. IPv6 uses a 128-bit address, which means we have an almost unlimited number of IP addresses available.

IP addressing leads us to our next topic, IPv4 subnetting. IPv4 addresses consist of a network portion and a host portion. The network portion identifies the network, while the host portion identifies the device on the network. Subnetting is the process of dividing a network into smaller subnetworks, allowing us to manage and allocate IP addresses more efficiently. It's a vital skill for any network administrator to have.


![Subnetting](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/dq7o1v1b0vnzqgrs5hlp.png)



Finally, we discussed **ICMP** (Internet Control Message Protocol), a protocol used to send error messages and operational information about network conditions. ICMP messages are essential for troubleshooting network issues, and we use them to send a ping or **Traceroute** test. A ping test sends an ICMP echo request to a host and waits for a response, while a Traceroute test sends a series of ICMP packets to a host and records the response times at each hop in the path to the host.


![ICMP](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/umy3d80rfl9m3ggoyj2d.png)


In conclusion, I hope this week's blog post has provided you with some valuable insights into the world of computer networking. Understanding number systems, the Network Layer, IP addressing, subnetting, and ICMP is crucial for building and maintaining computer networks. Whether you're a student, an IT professional, or just someone interested in technology, there's always something new to learn. So keep exploring, keep learning, and who knows, you might just discover the next big thing in computer networking! I hope this blog post has helped you understand these topics better, and I look forward to sharing more insights with you in the future!