CST 311 – Week 5 Learning Journal

This week, we began covering the Network Layer of networking. Specifically, we covered the data plane, which controls the way in which packets find their way from source to destination on a per-router basis. We discovered the logical components of a router, such as forwarding. We summarized the Internet Protocol, including IPv4 and IPv6. We … Read more

CST 311 – Week 4 Learning Journal

This week focused on security. Using the example of Bob, Alice, and Trudy, we had an overview of cryptography. We saw the difference between symmetric and public key encryption, and the importance of having public/private key pairs. We also saw the importance of authentication, in order to combat man-in-the-middle attacks.

CST 311 – Week 3 Learning Journal

This week, we covered the Transport Layer of networking. The transport layer refers to the services which communicate to the application layer processes before they are passed on to the network layer. We focused on the two main transport protocols: TCP and UDP. UDP is a connection-less protocol which provides “best effort” communication, which is … Read more

CST 311 – Week 2 Learning Journal

This week, we learned about the application layer of networks. This is the “Top Layer” of the top-down approach to studying networks. The application layer consists of internet applications, such as E-mail, file sharing, and video streaming. We learned about HTTP, which is the protocol that web browsers use to exchange HTML web pages. We … Read more

CST 311 – Week 1 Learning Journal

This week., we learned at a high level some basic concepts about networking and the internet. We learned about the components of the internet, including the network edge and the network core. We also learned and solved problems relating to delay and throughput, and studied protocol layers. Some concepts about network security were outlined. In … Read more

CST 334 – Week 7 Learning Journal

This week, we covered Concurrency. Specifically, we discussed I/O (input/output), hard disk drives, RAID arrays of hard drives, and files & file systems. We learned methods in which the computer/operating systems handle I/O operations. We also covered the mechanics of hard drives, and the way they interact with the computer. We compared various types of … Read more

CST 334 – Week 6 Learning Journal

This week, we covered semaphores and common concurrency bugs. Semaphores are a type of primitive which work as both locks and condition variables. They were created by Edsgar Djikstra as a solution to many issues related to concurrency. Some concurrency issues we looked at were order violation bugs, atomicity bugs, and deadlock-related bugs.

CST 334 – Week 5 Learning Journal

This week in Operating Systems, we were introduced to Concurrency. This topic revolves around the usage of threads within a single process. A multi-threading (the use of multiple threads) is distinct from multiprogramming (the use of multiple processes) in that threads all live inside the same process; they can share all data. This offers advantages … Read more