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.

No comments:

Post a Comment

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,...