Posts

Showing posts from May, 2023

CST311 Module 5

     This week's focus was on the network layer, covering topics such as the function of routers, IPv4 and IPv6 addressing, and the role of NAT. A network router is responsible for the routing and forwarding of packets within a network. Routing involves determining the path for packets to reach their intended destination IP addresses, while forwarding is the actual transmission of these packets to the target destinations along the route. When it comes to device addressing, the currently most common method is IPv4, which has a format such like 192.168.0.1. However, the increasing demand for unique IP addresses and the gradual exhaustion of available IPv4 addresses is encouraging a wider adoption of IPv6. Although IPv6 was introduced decades ago, its adoption has been relatively slow. One of the notable features of IPv6 is its utilization of a 128-bit address length, allowing for an extensive pool of unique IP addresses. Network Address Translation (NAT) enables systems, s...

CST311 Module 4

 This week had a larger focus on network security such as cryptography, message integrity, end-to-end authentication, and securing TCP connections. The core concepts of network security are confidentiality, authentication, message integrity, and access / availability. The some primary issues of security on the internet are the possibilities of eavesdropping, impersonation, hijacking, and denial of service. A fix for some of these issues is cryptography -- where users have sets of keys such as private and public keys that allow them to authenticate their own messages to others and authenticate the messages sent by other users. For data integrity, systems can utilize hash keys which allow users to verify that a file was received exactly as it was sent -- with no changes being made to it in between. TCP connections can be secured using TLS.

CST311 Module 3

 This week we primarily looked at the transport layer -- with protocols such as UDP and TCP. Overall between the two of them, it seems as though TCP is used most often due to a couple of its features but UDP still has it place in the internet. TCP and UDP both original from and are targeted towards certain ports on two systems. From the source system, packets are multiplexed and on the target system packets are demultiplexed. In contrast to UDP which is a connectionless protocol, TCP has a good basis for reliable data transfer through its use of sequence and acknowledge numbers which allow two systems to determine if packets had been successfully received or not. Beyond this, TCP has a section for specific flags such as the FIN flag which can help systems communicate to each other that a transmission is ending.

CST311 Module 2

This week covered more topics related to computer networking. We covered network applications and the different programs that run on devices such as end systems and servers. Some examples include email, text messaging, and social networking. We covered two structures of network applications - client-server and peer-to-peer. In client-server, communication occurs between a single client and a server, while peer-to-peer communication occurs between two or more end systems. Both of these structures can use TCP and UDP protocols, which rely on unique IP addresses and ports for communication. Unlike SSL, these protocols do not have built-in encryption. We covered DNS, which provides an abstraction layer to make IP addresses more user-friendly. DNS allows for alias linking to multiple IP addresses for different servers or multiple aliases linking to the same server. HTTP and SMTP were also covered in this week's material. HTTP is the common pull protocol used for transferring web objects...

CST 311 Module 1

 Week Summary: This week was the first week of the CST 311 course. The lecture material covered a plethora of content such as: a overview of the internet as a whole; network core and edge infrastructure such as network routers, switches, and end user devices; where network delay and packet loss originates from; different protocols used in networking and their layers; a general overview of network security practices and concepts; and a small section on the history of computer networking. The lab material this week mainly covered the use of mininet. Mininet is a small command line based operating system that allows the user to simulate network setups. We access it through VirtualBox and using SSH through another program such as PuTTY or Windows Terminal.