CS6250 Computer Networks Exam 1 UPDATED ACTUAL QUESTIONS AND
CORRECT ANSWERS
What are advantages and disadvantages of a layered Each protocol layer offers different services. Some advantages are scalability,
architecture? flexibility, and ease of adding / removing components making it easier for cost-
effective implementations. Disadvantages include: some layers functionality
depends on the information from the other layer and violates the goal of layer
separation; one layer may duplicate lower layer functionalities; overhead both in
computation and in message headers caused by abstraction barriers between
layers.
What are the differences and similarities of the OSI model The OSI model and the 5-layered Internet Model have many of the same layers,
and five-layered Internet model? with the difference being three of the layers are combined in the 5-layered
model. Specifically the five-layer model combines the application, presentation,
and session layers from the OSI model into a single application layer.
What are sockets? A network socket is a software structure within a network node of a computer
network that serves as an endpoint for sending and receiving data across the
network. The structure and properties of a socket are defined by an application
programming interface (API) for the networking architecture. Sockets are created
only during the lifetime of a process of an application running in the
node.https://en.wikipedia.org/wiki/Network_socket."A process sends messages
into, and receives messages from, the network through a software interface called
a socket. Let's consider an analogy to help us understand processes and sockets.
A process is analogous to a house and its socket is analogous to its door. a
socket is the interface between the application layer and the transport layer within
a host." - Kurose and Ross, 2.1
,Describe each layer of the OSI model. Application layer: Service, Interface, Protocol. Ex: Turn on your smartphone and
look at the list of apps. (HTTP, SMTP, FTP, DNS)
Presentation layer: Plays intermediate role of formatting the information received
from the layer below and delivering it to the application layer. Ex: converting big
endian to little endian.
Session layer: Responsible for the mechanism that manages the different transport
streams that belong to the same session between end-user and application
process. Ex: teleconference app, it is responsible for tying together audio and
video streaming.
Transport layer: Responsible for the end-to-end communication between end
hosts. 2 transport protocols, TCP and UDP. TCP includes a connection-oriented
service to the applications that are running on the layer above, guaranteed
delivery of the application-layer messages, flow control, and congestion control
mechanism. UDP provides a connectionless, best-effort service to the
applications that are running in the layer above without reliability, flow, or
congestion control. In this layer the packet is called a segment.
Network layer: This layer is responsible for moving the packet of information,
called a datagram, from one host to another. The network layer is responsible for
delivering the datagram to the Transport layer on the destination host. In this layer
there are the IP Protocol and the routing tables.
Data Link layer: Packets are referred to as frames. Examples include: ethernet,
ppp, wifi. Responsible for moving the frames from one node (host or router) to
the next node. Services offered by the data link layer protocol include reliable
delivery (transmission of the data from one transmitting node, across one link, to
the receiving node.
Physical layer: This layer is the actual hardware responsible to transfer bits within a
frame between two nodes connected through a physical link. Ex: Ethernet
(twisted-pair copper, coax, fiber-optics).
Provide examples of popular protocols at each layer of Application: NFS, DNS, SNMP, ftp, rcp, telnet, HTTP
the five-layered Internet model. Transport: TCP, UDP
Internet: IP, ARP, ICMP
Data Link: PPP, IEEE 802.2, Ethernet
Physical Network: Token Ring, RS-232
What is encapsulation, and how is it used in a layered Encapsulation is when data (called a header) is appended to the packet through
model? each layer to signify its on the correct path to the destination host.
What is the end-to-end (e2e) principle? A design choice that shaped the current internet architecture. It states the
network core should be simple and minimal, while the end systems should carry
the intelligence. Network functions should be simple and essential commonly
used functions so any host can utilize the service and higher form functions
should be built into the application itself. Lower level layers should be
independent and free to perform only their designed function and the higher-
level layers deal with the more intricate functions that deal with the specific
application.
What are the examples of a violation of e2e principle? Violations include firewalls and traffic filters. Firewalls violate because they are
intermediate devices that are operated between two end hosts and they can drop
the end host communications. Network Address Translation (NAT) boxes are also
a violation because it uses the single public IP address and distributes a new IP
scheme to the hosts connected to it to route data through re-writing the header
info to route to the correct destination host. NAT boxes are a violation because
they are not globally addressable or routable.
, What is the EvoArch model? An hourglass shaped model of the Internet where the outer bands are more
frequently modified or replaced and the further in you go the harder it is for that
layer to be altered or modified.
Explain a round in the EvoArch model. EvoArch is a discrete-time model that is executed over rounds. At each round, we
perform the following steps: A) We introduce new nodes, and we place them
randomly at layers. B) We examine all layers, from the top to the bottom, and we
perform the following tasks: 1) We 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). 2) We update the value of
each node at each layer l, given that we may have new nodes added to the same
layer l. 3) We examine all nodes, in order of decreasing value in that layer, and
remove the nodes that should die. C) Finally, we 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 A. Many technologies that were not originally designed for the internet have been
internet? modified so that they have versions that can communicate over the internet (such
as Radio over IP).
B. It has been a difficult and slow process to transition to IPv6, despite the
shortage of public IPv4 addresses.
Repeaters, hubs, bridges, routers operate on which Repeaters and Hubs work over L1 (Physical Layer)
layers? Bridges and Layer 2-Switches work over L2 (Data link layer)
Routers and Layer 3-Switches work over L3 (Network layer)
What is a bridge, and how does it "learn"? A bridge is a device with multiple inputs/outputs. A bridge transfers frames from
an input to one (or multiple) outputs. Though it doesn't need to forward all the
frames it receives.
A learning bridge learns, populates and maintains a forwarding table. The bridge
consults that table so that it only forwards frames on specific ports, rather than
over all ports. So how does the bridge learn? When the bridge receives any
frame this is a "learning opportunity" to know which hosts are reachable through
which ports. This is because the bridge can view the port over which a frame
arrives and the source host.
What is a distributed algorithm? A distributed algorithm is an algorithm designed to run on computer hardware
constructed from interconnected processors. Distributed algorithms are used in
many varied application areas of distributed computing, such as
telecommunications, scientific computing, distributed information processing, and
real-time process control.
https://en.wikipedia.org/wiki/Distributed_algorithm
CORRECT ANSWERS
What are advantages and disadvantages of a layered Each protocol layer offers different services. Some advantages are scalability,
architecture? flexibility, and ease of adding / removing components making it easier for cost-
effective implementations. Disadvantages include: some layers functionality
depends on the information from the other layer and violates the goal of layer
separation; one layer may duplicate lower layer functionalities; overhead both in
computation and in message headers caused by abstraction barriers between
layers.
What are the differences and similarities of the OSI model The OSI model and the 5-layered Internet Model have many of the same layers,
and five-layered Internet model? with the difference being three of the layers are combined in the 5-layered
model. Specifically the five-layer model combines the application, presentation,
and session layers from the OSI model into a single application layer.
What are sockets? A network socket is a software structure within a network node of a computer
network that serves as an endpoint for sending and receiving data across the
network. The structure and properties of a socket are defined by an application
programming interface (API) for the networking architecture. Sockets are created
only during the lifetime of a process of an application running in the
node.https://en.wikipedia.org/wiki/Network_socket."A process sends messages
into, and receives messages from, the network through a software interface called
a socket. Let's consider an analogy to help us understand processes and sockets.
A process is analogous to a house and its socket is analogous to its door. a
socket is the interface between the application layer and the transport layer within
a host." - Kurose and Ross, 2.1
,Describe each layer of the OSI model. Application layer: Service, Interface, Protocol. Ex: Turn on your smartphone and
look at the list of apps. (HTTP, SMTP, FTP, DNS)
Presentation layer: Plays intermediate role of formatting the information received
from the layer below and delivering it to the application layer. Ex: converting big
endian to little endian.
Session layer: Responsible for the mechanism that manages the different transport
streams that belong to the same session between end-user and application
process. Ex: teleconference app, it is responsible for tying together audio and
video streaming.
Transport layer: Responsible for the end-to-end communication between end
hosts. 2 transport protocols, TCP and UDP. TCP includes a connection-oriented
service to the applications that are running on the layer above, guaranteed
delivery of the application-layer messages, flow control, and congestion control
mechanism. UDP provides a connectionless, best-effort service to the
applications that are running in the layer above without reliability, flow, or
congestion control. In this layer the packet is called a segment.
Network layer: This layer is responsible for moving the packet of information,
called a datagram, from one host to another. The network layer is responsible for
delivering the datagram to the Transport layer on the destination host. In this layer
there are the IP Protocol and the routing tables.
Data Link layer: Packets are referred to as frames. Examples include: ethernet,
ppp, wifi. Responsible for moving the frames from one node (host or router) to
the next node. Services offered by the data link layer protocol include reliable
delivery (transmission of the data from one transmitting node, across one link, to
the receiving node.
Physical layer: This layer is the actual hardware responsible to transfer bits within a
frame between two nodes connected through a physical link. Ex: Ethernet
(twisted-pair copper, coax, fiber-optics).
Provide examples of popular protocols at each layer of Application: NFS, DNS, SNMP, ftp, rcp, telnet, HTTP
the five-layered Internet model. Transport: TCP, UDP
Internet: IP, ARP, ICMP
Data Link: PPP, IEEE 802.2, Ethernet
Physical Network: Token Ring, RS-232
What is encapsulation, and how is it used in a layered Encapsulation is when data (called a header) is appended to the packet through
model? each layer to signify its on the correct path to the destination host.
What is the end-to-end (e2e) principle? A design choice that shaped the current internet architecture. It states the
network core should be simple and minimal, while the end systems should carry
the intelligence. Network functions should be simple and essential commonly
used functions so any host can utilize the service and higher form functions
should be built into the application itself. Lower level layers should be
independent and free to perform only their designed function and the higher-
level layers deal with the more intricate functions that deal with the specific
application.
What are the examples of a violation of e2e principle? Violations include firewalls and traffic filters. Firewalls violate because they are
intermediate devices that are operated between two end hosts and they can drop
the end host communications. Network Address Translation (NAT) boxes are also
a violation because it uses the single public IP address and distributes a new IP
scheme to the hosts connected to it to route data through re-writing the header
info to route to the correct destination host. NAT boxes are a violation because
they are not globally addressable or routable.
, What is the EvoArch model? An hourglass shaped model of the Internet where the outer bands are more
frequently modified or replaced and the further in you go the harder it is for that
layer to be altered or modified.
Explain a round in the EvoArch model. EvoArch is a discrete-time model that is executed over rounds. At each round, we
perform the following steps: A) We introduce new nodes, and we place them
randomly at layers. B) We examine all layers, from the top to the bottom, and we
perform the following tasks: 1) We 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). 2) We update the value of
each node at each layer l, given that we may have new nodes added to the same
layer l. 3) We examine all nodes, in order of decreasing value in that layer, and
remove the nodes that should die. C) Finally, we 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 A. Many technologies that were not originally designed for the internet have been
internet? modified so that they have versions that can communicate over the internet (such
as Radio over IP).
B. It has been a difficult and slow process to transition to IPv6, despite the
shortage of public IPv4 addresses.
Repeaters, hubs, bridges, routers operate on which Repeaters and Hubs work over L1 (Physical Layer)
layers? Bridges and Layer 2-Switches work over L2 (Data link layer)
Routers and Layer 3-Switches work over L3 (Network layer)
What is a bridge, and how does it "learn"? A bridge is a device with multiple inputs/outputs. A bridge transfers frames from
an input to one (or multiple) outputs. Though it doesn't need to forward all the
frames it receives.
A learning bridge learns, populates and maintains a forwarding table. The bridge
consults that table so that it only forwards frames on specific ports, rather than
over all ports. So how does the bridge learn? When the bridge receives any
frame this is a "learning opportunity" to know which hosts are reachable through
which ports. This is because the bridge can view the port over which a frame
arrives and the source host.
What is a distributed algorithm? A distributed algorithm is an algorithm designed to run on computer hardware
constructed from interconnected processors. Distributed algorithms are used in
many varied application areas of distributed computing, such as
telecommunications, scientific computing, distributed information processing, and
real-time process control.
https://en.wikipedia.org/wiki/Distributed_algorithm