1 - Overview of Networks

Don't do program 1 too much until you've done the first week's lab.

The fun thing here is that this class will not be a well-ordered course. It's not like any other class where you go bottom-up or top-down. We'll try to go through it like that, but it's not that clean anyways.

"What was mainstream 10 years ago and we stopped using 5 years ago we will probably be mainstream 5 years from now” - Prof. Hugh Smith

What is a Network?

We can have a big cloud representing the internet connection between two computers.

Terms to Define

Here are a few terms that we'll cover. We'll go more in-depth during the quarter, so these may change over time.

Your ISP just carries your traffic. If it's small it may connect to a larger provider.

The last mile is just the edge of the neighborhood or community that the ISP serves, so then multiple of these neighborhoods connect to a larger ISP network, and so on.

There's three steps to make a connection work:

  1. Setup
  2. Use
  3. Teardown

For example, telephone operators did this back in the day. This is more reliable than Connection-Less (Protocol).

This is a communication method that allows data to be sent between two devices without establishing a connection between them first.

This is useful where it's okay to have a little bits of loss. For example, a phone call over the internet.

Note

There really is no way to have a connection-less Client Server protocol. There may be an example but not really for this course.

Written in bytes per second (or other magnitudes), which is the amount of data passing through the medium per second. Typically on networks we use bits rather than bytes, just because they started like that.

K means a 1000 or 1024? In networks we only care about base 10, but in computers themselves (ie: OS's) they use powers of 2.

K: 103
M: 106
G: 109
...

In packet switching we have header information which is addressing information, then we have our data.

How it works in the network:

This is the physical wiring of the network (ie: the ethernet connections, WIFI connections, etc.). There's also a logic topology where we dictate what happens logically when there are tears in the topology.

Bus

A common wire that everyone can see when many devices talk on the same wire:

This forces only one device to be able to talk at a time on the network. Notice this happens in WiFi between cell towers.

Ring

Some benefits of this is that:

  • Redundancy (having multiple vertices to travel along allows for multiple viable paths)

Star

A device with many connections specifically to it. For example, a router follows a star topology.

Tree/Hierarchical

The benefit is that you can address requests pretty easy (the path is pretty clear). However, adjacent nodes in the tree (in-order traversal) may have to take considerably longer.

What does ethernet do? The network we physically wire is a tree structure with loops near the bottom, using a Spanning Tree Protocol to logically take links down such that we get that tree structure back:

This helps get us the advantage of loops (see that section) when we need it.

Ad-hoc

Whenever any topology isn't conforming to one of the above, then it is ad-hoc. For example, the added connection in the figure above makes it an ad-hoc connection.