Tuesday, October 29, 2019

CST 325

This week, we learned about how vectors and scalars are connected, how vectors are used to think about space, how different equations can represent surfaces, and how to create rays with implicit surfaces.

This week, we learned about vector operations and their history. In a vector is a displacement/oriented magnitude where an origin is not needed with a magnitude: the length of a segment. The Pythagorean theorem is used to calculate the magnitude. A unit vector is a vector with a hat and magnitude 1. In vector normalization, the unit vector v with a hat, is found by dividing the vector by the magnitude.

In vector addition, the x1 and y2 are added across and is commutative. In vector subtraction, they are subtracted across in the same way but they are anti-commutative. Vector multiplication by a scalar is multiplied across. In vector multiplication, there is no multiplication symbol because that is the cross product. In scalar division, you can divide by a scalar. In the vector dot product, the dot product of a and b is the sum of a*b. The vector cross product has a specific pattern that is hard to describe in words so it's better to see a picture example.

Saturday, October 19, 2019

CST 311 W 8


This week, we learned about securing TCP, network layer security IPSEC and VPN, securing wireless LANs, and operational security firewalls and intrusion detection.

TCP connections can be secured with Secure Sockets Layer (SSL). SSL is widely used by e-commerce and web-server authenticators to ensure confidentiality, integrity and authentication of the site. It is supported by almost all web servers and browsers and is identified as HTTP but with an S at the end. It is available to all TCP applications and sits between the Application and TCP. It involves a handshake, key derivation, data transfer, and connection closure. A and B use their certificates to authenticate each other and exchange the shared secret, then use the secret to make keys to exchange messages with. The data is transferred in parts and then the connection is closed.

Virtual Private Networks (VPN) are used to provide more security for private networks when using public WIFI or less secured home WIFI. The data is encrypted before it enters the public internet.

WIFI Each packet is separately encrypted and can be decrypted even if previous packets are lost. This can be implemented in hardware and software.  WEP can be broken however, so WEP2 is used.

Firewalls are used to isolate an organization from the internet by filtering packets. Firewalls are used to prevent DOS attacks, modification/access of data, and only allows authenticated users to use their network. Stateless packet filtering involves an internet network with a router firewall. The router filters packets by source/destination IP, TCP/UDP source and destination port numbers, ICMP message types, and TCP SYN and ACK bits. Stateless packet filtering may block IP protocol 17 and the entirety of port 23 resulting in UDP and telenet connections being blocked. If an organization doesn’t want TCP connections from the outside, they would drop all TCP SYN packets except to their web server.  Stateful packet filtering tracks the status of every TCO connection and drop packets that don’t make sense and won’t admit packets if they created inactive connections at the firewall.

Tuesday, October 15, 2019

CST 311 W 7


This week, we learned about the link layer, error detection and correction, MAC protocols, and LANs and switches. In chapter 8, we learned about network security, principles of cryptography, message integrity and digital signatures, and end point authentication.
The link layer transfers datagrams from one node to an adjacent node over a link. Error detection and correction is not 100% reliable but is done through single- and two-dimensional bit parity. In 2d bit parity, single bit errors are found and corrected using the checksum.
MAC protocols are distributed algorithms that find how nodes share a channel. The communication uses the channel. MAC protocols have 3 classes: channel partitioning, random access, and taking turns. Channel partitioning divides the channel into smaller pieces like time slots, frequency or code then allocates each piece to a node for use. The random-access protocol doesn’t divide the channel and can allow collusions which are bad. It can recover from collisions, however. In taking turns, the nodes take turns vu the nodes with more to send take longer.
In the ARP: address resolution protocol, it determines the interface’s MAC address from its IP address. It contains an ARP table which has each IP node on a LAN where the IP/MAC address for some LAN nodes are known. It also has the TTL: Time to Live time where the address mapping expires after about 20 minutes. If the nodes are on the same LAN, and the destinations MAC address is not on the ARP table, the source will broadcast the ARP query with the destinations IP address. The destinations MAC address will be FF-FF-FF-FF-FF-FF. The destination will get this ARP packet and reply to the source with their MAC address. The source saves the UP to MAC address in the ARP table until the info times out.  
Ethernet is the most popular Lan wired technology and widespread with rates of 10Mbps-10Gbps. In the past, the bus architecture was used but it often has collisions. Now, the star architecture is used where a switch is in the center and the nodes don’t have collisions. The Ethernet switch is a link-layer device that stores and forwards ethernet frames. It looks at the MAC address and forwards the frames to other links where the frame needs to be forwarded.  Hosts have a dedicated connection to a switch where packets are buffered.

Tuesday, October 8, 2019

CST 311 W6


This week we learned about routing and forwarding, Dijkstra’s Routing Algorithm for Link-state, the Distance Vector Routing Algorithm, intra-As Routing and OSPF, routing among ISPs and BGP, software defined networking, ICMP and traceroute, network management and SNMP.  

The two network-layer functions are forwarding in the data plane, and routing in the control plane.  Forwarding is where packets are moved from the routers input to the routers output. Routing is where the source to destination route taken by packets is determined. There are two ways to structure the network control plane: per-router control/traditional or using a logically centralized control/software defined networking. The per-router control plane is where routing algorithms in every router interact to make forwarding tables. In the logically centralized control plane, a remote controller interacts with the control agents in routers to make the forwarding tables.
            Dijkstra’s routing algorithm is a link-state routing algorithm where link costs are known to all of the nodes and they complete the least cost paths from a starting/source node to all of the other nodes, repeating k times. The algorithms complexity is O(n^2) and O(nlogn) in the best case.

            The Distance Vector Algorithm is where each node sends its cost to its neighbors and updates its own cost with the Bellman-Ford equation where the least-cost path from x to y is computed by the minimum value of the cost to its neighbor added to the cost from the neighbor to the destination. This algorithm is iterative due to the local link cost change, distributed because of the changes only occurring when a DV is changed, and asynchronous because of the update message from the neighbor. Due to its distributed nature, a cost change can result in a cascading effect to the other nodes and may result in a count to infinity problem.

            Intra-AS routing is where routing is among hosts and routers in the same AS/network. They all run the same intra-domain protocol but routers in different AS run different intra-domain routing protocols. The gateway router at the edge of the network links to the other routers in the other AS’es. Intra-As Routing is also known as interior gateway protocols (IGP): including Routing Information Protocol (RIP), Open Shortest Path First (IS-IS or OSPF), and Interior Gateway Routing Protocol (IGRP Cisco property until 2016)

Inter-AS routing is the routing between the various AS’es including the gateways to perform inter-domain routing. The different AS finds what destinations are reachable and propagate reachability to all routers in AS1.

In OSPF, it is open source and uses the link-state algorithm to link the state packet distribution, make a topology map, and compute the route with Dijkstra’s algorithm. It floods the link-state ads to all other routers in the AS by IP.


Tuesday, October 1, 2019

Week 5 CST 311: Intro to Networks


In Chapter 4, we learned about the Network Layer (the Data Plane). The topics covered: What’s inside a router, IPv4 datagram format and address, IP Address and DHCP, IPv6, NAT, and software-defined Networking.
A router is made of a routing processor, high-speed switching fabric, and I/O ports. The routing processor controls routing and manages the control plane/software which operates in milliseconds. The rest is part of the forwarding data plane/hardware which operates in nanoseconds.
The IPv4 datagram is 32 bits which includes the version, length of header, type of data, total length, flags and fragments for fragmentation, the time to live, upper layer, and checksum for error detection. The next parts included are the 32 bit source IP and 32 bit destination IP. After, there are options and then the data/TCP or UDP segment. The overhead of an IPv4 datagram is 20 bytes for TCP and 20 bytes of IP for a total of 40 bytes of app layer overhead.
The IP address is hardcoded by the system admin or from DHCP (Dynamic Host Configuration Protocol) where an address is gotten from the server. The DHCP allows the host to get an IP from the network server dynamically when it joins the network. It includes an address lease that can be renewed, addresses that can be reused, reserved, and mobile support. It includes 4 steps: Discover, Offer, Request, and ACK.
The NAT(Network address translation) is used because a local network just uses one IP for all devices. All of the datagrams that leave the local network have the same NAT IP address but different source and port numbers. It also allows the devices to change their addresses without notifying the rest of the world, change ISP without changing the addresses of the devices in the local network, and doesn’t allow the devices in the local network to be addressable to the outside world. The NAT replaces the source IP and port of every outgoing datagram to their own IP with port who servers will reply to. The incoming datagrams replace with NAT IP and port with the correct local source IP and port which are found in the NAT translation table.
IPv6 was created because 32-bit addresses are almost completely used up. It also allows for faster processing/forwarding and helps facilitate QoS/Quality of Service. It also allows for encryption and authentication with end to end integrity. It has a fixed length 40 byte header with no fragmentation. Its header includes the priority, flow label, and next header, payload length, hop limit. More importantly, it includes the source address 128 bits and destination address 128 bits with the data at the end. The IPv6 address notation includes 128 bits made of 8 16 bit segments or hextets between 0000 and FFFF separated by colons. Compared to IPv4, there is no checksum, the options field is allowed but not inside the header, and there are no fragmentation fields. The IPv6 datagram uses tunneling to be carried inside a IPv4 datagram as a payload for use with the IPv4 routers.
Routers make a flow table and distribute it by a logically centralized routing controller. In the control plane, the logically centralized routing controller is present. In the data plane, it includes the local flow table with its headers, counters, and actions. The flow is defined in the header fields. In generalized forwarding, the simple packet handling rules include: pattern, actions, priority, and counters.

cst 499 week 8

This week, we finished writing the paper in order to do the best job possible even if it was a little bit late. Now that everything is done,...