Saturday, June 17, 2023

Computer Networking: Journal 8

Well... sigh of relief... the time has come. This will be my final journal for my Introduction to Computer Networking course.

As it stands now, I learned quite a lot, but that was definitely without some major obstacles and hurdles to overcome.

For starters, the concepts in this course were very low-level and hard to grasp at times. The labs did help a bit to reinforce the concepts in a practical sense, but it was still not an easy thing to do. That said, I learned quite a few interesting commands apart from the networking knowledge that I will probably end up using in my own personal projects or career endeavors.

By far, the most difficult part of this entire course was the finale of Project 4. Project 4 not only incorporated most of the stuff we learned throughout this entire course but also put our team's effort, patience, and dedication to the test. As a team, we easily dumped 30+ hours into the final project.

Overall, I am glad I took this course, but I am also glad it is over.

Tuesday, June 13, 2023

Computer Networking: Journal 7

This week in my computer networking class, we further learned about the link layer. which encompasses broadcast channels and point-to-point communication. What I found interesting is how even though the link later is implemented in hardware, the link layer also involves many software components to make it work. Also, the link layers main purpose is to move datagrams between neighboring nodes, offering additional services such as framing, link access, reliable delivery, and error detection/correction.  Multiple access protocols are employed for regulating transmission on shared broadcast channels, categorized as channel partitioning, random access, and taking-turns protocols. The Address Resolution Protocol (ARP) is responsible for translating IP addresses to MAC addresses at the link layer. All in all, this was an interesting week further exploring and expanding the link layer.

Tuesday, June 6, 2023

Computer Networking: Journal 6

This week in my computer networking class, we explored various topics, but it was Dijkstra's algorithm that captivated my attention the most. Dijkstra's algorithm is a powerful tool for finding the shortest path within a network.

One aspect that intrigued me was the design and building of the routing tables. Although initially I kind of found it a bit challenging, I found the process of building the tables surprisingly intuitive and enjoyable after I started to get the hang of it. A well-designed table plays a vital role in guiding routing decisions and improving the efficiency of data transmission paths and makes it easier to see what is going on from a bird eye' perspective.

In conclusion, this week's exploration of Dijkstra's algorithm in my computer networking class was truly fascinating. The practical applications of this algorithm in finding the shortest path within a network opened my eyes to the intricate world of data transmission optimization.