CN notes 前情提要:傳送門
目錄:▶ What are the advantages and disadvantages of a layered architecture▶ What are the differences and similarities between the OSI model and the five-layered Internet model?▶ What are sockets?▶ Describe each layer of the OSI model.▶ What is encapsulation, and how is it used in a layered model?▶ What is the end-to-end (e2e) principle?▶ What are the examples of a violation of e2e principle?▶ What is the EvoArch model?▶ Explain a round in the EvoArch model.▶ What are the ramifications of the hourglass shape of the internet?▶ Repeaters, hubs, bridges, and routers operate on which layers?▶ What is a bridge, and how does it “learn”?▶ What is a distributed algorithm?▶ Explain the Spanning Tree Algorithm.▶ What is the purpose of the Spanning Tree Algorithm?
What are the advantages and disadvantages of a layered architecture?
Advantages
- Scalability
- Modularity
- Flexibility
Disadvantages
- Some layers’ functionality depends on the information from other layers, violating the goals of separation.
- One layer may duplicate lower layer functionalities. For example, error recovery occurring in multiple layers.
- Additional overhead is incurred by the abstraction necessary between layers.
繼續閱讀|回目錄
What are the differences and similarities between the OSI model and the five-layered Internet model?
額外一提,友人告訴我他以前大學老師教他一個口訣來記這七層,我覺得挺有幫助的,口訣是:
Please Do Not Throw Sausage Pizza Away.
繼續閱讀|回目錄
What is encapsulation, and how is it used in a layered model?
Encapsulation
The sending host sends an application layer message M
to the transport layer. The transport layer receives the message, and it appends the transport layer header information (Ht
). The application message along with the transport layer header is called segment (or transport-layer segment). The segment thus encapsulates the application layer message.
At each layer the message is a combination of two parts:
- The payload which is the message from the layer above
- The new appended header information
De-encapsulation
At the receiving end, the process is reversed, with headers being stripped off at each layer.
繼續閱讀|回目錄
What is the end-to-end (e2e) principle?
The end-to-end (e2e) principle is a design choice that characterized and shaped the current architecture of the Internet. The e2e principle suggests that specific application-level functions usually cannot, and preferably should not be built into the lower levels of the system at the core of the network.
繼續閱讀|回目錄
What are the examples of a violation of e2e principle?
Violations of the e2e principle typically refer to scenarios where it is not possible to implement a functionality entirely at the end hosts, such as firewalls and Network Address Translation (NAT) boxes.
繼續閱讀|回目錄
What is the EvoArch model?
A research model that can help to study layered architectures and their evolution in a quantitative manner. Through this model researchers were able to explain how the hierarchical structure of the layer architecture eventually lead to the hourglass shape.
繼續閱讀|回目錄
Explain a round in the EvoArch model.
At each round, we perform the following steps:
- Introduce new nodes and place them randomly at layers
- Examine all layers from top to bottom and perform:
— connect the new nodes that we may have just introduced to that layer, by choosing substrates based on the generality probabilities of the layer below s(l−1), and by choosing products for them based on the generality probability of the current layer s(l).
— update the value of each node at each layer l, given that we may have new nodes added to the same layer l.
— examine all nodes, in order of decreasing value in that layer, and remove the nodes that should die. - Stop the execution of the model when the network reaches a given number of nodes.
繼續閱讀|回目錄
What are the ramifications of the hourglass shape of the internet?
- Many technologies that were not originally designed for the internet have been modified so that they have versions that can communicate over the internet (such as Radio over IP).
- It has been a difficult and slow process to transition to IPv6, despite the shortage of public IPv4 addresses.
繼續閱讀|回目錄
Repeaters, hubs, bridges, and routers operate on which layers?
- Repeaters and hubs operate on Layer 1 (Physical layer).
- Bridges operate on Layer 2 (Data-link layer).
- Routers operate on Layer 3 (Network layer)
繼續閱讀|回目錄
What is a bridge, and how does it “learn”?
A device with multiple inputs/outputs that transfers frames from an input to one or multiple outputs. It learns from each frame it receives by populating a forwarding table so that it forwards frames on specific ports instead of broadcasting everywhere.
繼續閱讀|回目錄
What is a distributed algorithm?
Direct nodes send information to one another, and then they resend their results back after performing their own calculations, so the calculations are not happening in a centralized manner.
繼續閱讀|回目錄
Explain the Spanning Tree Algorithm.
The algorithm runs in “rounds” and at every round each node sends to each neighbor node a configuration message with three fields:
— the sending node’s ID
— the ID of the roots as perceived by the sending node
— the number of hops between that (perceived) root and the sending node.
At the very first round of the algorithm, every node thinks that it is the root. Each node sends a configuration message with the sending node’s ID, root as perceived by this node, and number of hops from this node to its root. When a node receives a message, it updates its root if it finds a lower ID root, better path to the root, or equal path to the root if the sender of the message has a lower ID.
繼續閱讀|回目錄
What is the purpose of the Spanning Tree Algorithm?
The goal of the spanning tree algorithm is to have the bridges select which links (ports) to use for forwarding eliminating loops. (i.e. helps to prevent broadcast storms).
繼續閱讀|回目錄