Lesson 1: Study Guide Flashcards
What are the advantages and disadvantages of a layered architecture?
Advantages:
1. scalability (can expand with users/devices or complexity)
2. modularity (components/layers are separated and independent)
3. flexibility to add or delete components, which make for cost-effective implementations.
Disadvantages:
1. Some layers’ functionality depends on the information from other layers, which can violate the goal of layer separation.
2. One layer may duplicate lower-layer functionalities. For example, the functionality of error recovery can occur in lower layers but also in upper layers as well.
3. Some additional overhead (extra/redundant processing at header) that is caused by the abstraction between layers.
What are the differences and similarities between the OSI model and the five-layered Internet model?
Differences: OSI has 7 layers, 5 layer does not contain a presentation layer and session layer; application, presentation, and session layers are combined and called the application layer. (People Dont Need Those Stupid Packets** A**nyway)
Similarities: application, transport, network, datalink, and physical layer.
What are sockets?
The interface/software between the application layer and the transport layer. It enables a computer to communicate with another by acting as an endpoint (3-way handshake). It has 2 components: IP Address (of the device) and Port Number (identifies which application on that device). A server socket is created to listen for incoming connection requests, a client creates a socket (with a temporary port) to request to connect. The server creates a new socket for the client connection. This allows for multiple concurrent connections between clients and server.
Analogy: Server ip address = street name, server port number = house, server main socket = mailbox
Describe each layer of the OSI model, and its popular protocols
Physical (Layer 1): responsible for the transmission of raw bitstreams over a physical medium (wired or wireless). Protocols depend on data link protocol, for example Ethernet has a different physical layer protocol for each type of wire (fiber optics protocol, coaxial cable).
Data Link (Layer 2): reliable node-to-node data transfer, error detection, and manages how data is packaged into frames for transmission. Protocols include: Ethernet, Point-to-Point Protocol (PPP), and WiFi. Packet = frame
Network (Layer 3): determines the best path (routing) for data to travel across the network from one internet host to another. IP header is added. IP and routing protocols.Packet = datagram
Transport (Layer 4): ensures data transfer between end systems/hosts. creates, manages, then closes the data transmissoin. 2 protocols: TCP - provides connection-oriented services such as flow control, congestion control, and segmentation of data into packets, garaunteed delivery of application messages from source to destination host. UDP - connectionless (no 3-way handshake), no garauntee of message delivery (best-effort), no reliability, flow/congestion control, no error-recovery. Packet = segment
Session (Layer 5): manages transport streams within the same session between applications (like tying video and audio streams together in a teleconf session)
Presentation (Layer 6): translates data between the application layer and the network
Application (Layer 7): provides user interface for user to communicate with network. Common protocols are HTTP (web browsing), FTP, SMTP (email), DNS. Packet = message
What is encapsulation, and how is it used in a layered model?
as data moves down the layers, allows layers/protocols to communicate with each other by receiving a message (payload) from the layer above it and adding its own header information to it (e.g. receiving server info). Protocols can also encapsulate each other within the same layer (e.g. TLS can encapsulate HTTP data to add security)
What is the end-to-end (e2e) principle?
current internet architecture design that the network core should be simple and minimal, while the end systems (application layer) should carry the intelligence.
What are the examples of a violation of e2e principle?
- Traffic filters
- Firewalls - at the periphary of the network, intermediate device that monitors traffic into network between two end hosts. violates e2e because communication should be left at the endpoints (client/server).
- NAT (Network Address Translation) boxes - a device that allows multiple devices on a private network (home WiFi) share a public IP address. When a private IP (your laptop) requests to access a website, NAT replaces the private device a public IP address then sends the request. Violation due to modifying the packet.
What is the EvoArch model?
explains how the layered internet architecture evolved into a hour glass shape (network layer is the waist). consists of these components: layers, edges, nodes (fitness level, evolutionary value)
Explain a round in the EvoArch model
the model is executed over rounds, which evolves the architecture. Each round has 3 steps:
1. add new nodes randomly into layers
2. from top to bottom layers: connect new nodes based on layer generality probabilities (the more general the layer, such as layer 1, the higher the prob), update the value of each node
3. remove nodes that should die (low evolutionary value)
execution of rounds stops when certain number of nodes is reached
What are the ramifications of the hourglass shape of the internet?
the waist (IP layer) is the standard way for all devices to connect on the internet, so it is resistant to change (and costly to do so). the top and bottom layers are wide and diverse, allowing for scalability and innovation
Repeaters, hubs, bridges, and routers operate on which layers?
Repeaters and Hubs: physical layer (L1) - provide connectivity between hosts on same network. just forward signals
Bridges and Layer2-Switches: data link layer (L2) - provide communication between hosts not directly connected on same physical segment (but same network) and manage traffic based on MAC addresses
Routers and Layer3-Switches: network (L3)
What is a bridge, and how does it “learn”?
a device with multiple inputs and outputs that transfers frames. a learning bridge manages a forwarding table which allows it to only forward frames based on specific ports and where the hosts are.
What is a distributed algorithm?
a method where multiple devices (nodes) work together to solve a problem. it is decentralized (no controller). Example is the spanning tree algorithm.
Explain the Spanning Tree Algorithm
All switches work together to create a loop-free network. The switch (node) selects which link/path (port) to take to avoid loops. The algorithm runs in rounds where each round sends a message: current node ID, root ID, distance to root ID. Paths are decided if perceived message shows a smaller root, same root but shorter distance, or same distance but lesser ID.
What is the purpose of the Spanning Tree Algorithm?
to create a loop-free network topology