Study sets, textbooks, questions
Upgrade to remove ads
ECE407 Network Layer Study Guide
Introduction to Computer Networking
Terms in this set (62)
Explain the difference between routing and forwarding.
FORWARDING: move packets from a router's input link to appropriate router output link
ROUTING: determine route taken by packets from source to destination(routing algorithms)
Given a network topology and forwarding tables, explain how the packets are forwarded.
Network Topology - the arrangement of the elements (links, nodes, etc.) in a communications network
Forwarding Tables - used in network bridging, routing, and similar functions to find the proper output network interface to which the input interface should forward a packet
Explain the differences between per-router control plane and a centralized control plane.
PER-ROUTER CONTROL PLANE: individual routing algorithm components in each and every router interact in the control plane
CENTRALIZED CONTROL PLANE: remote controller computes, installs forwarding tables in routers; Software-Defined Networking SDN
Give examples of services a network layer can provide.
Transport segment from sending to receiving host, sender: encapsulates segments into datagrams, passes to link layer, receiver: delivers segments to transport layer protocol, there are network layer protocols in every internet device, hosts and routers, routers: examine header fields in all IP datagrams passing through it, moves datagrams from input ports to output ports to transfer datagrams along end-end path
FORWARDING AND ROUTING
Given a network topology, fill in the corresponding forwarding tables to reach a given goal for either virtual circuit networks or datagram networks.
Forwarding table takes IP, MAC, and router ports and organizes them for quick transmission
Explain how longest prefix matching works.
When looking for forwarding table entry for given destination addresses, use longest prefix matching that matches destination address
often performs using ternary content addressable memories(TCAMs), content addressable: present address to TCAM: retrieve address in one clock cycle, regardless of table size
Explain the roles of the main components in a router (input/output ports, switching fabric, routing processor).
INPUT/OUTPUT PORTS: line termination(bit level reception), link layer protocol(ethernet), lookup, forwarding, queueing(use header field values, lookup output port using forwarding table in input port memory)
SWITCHING FABRIC: transfer packet from input link to appropriate output link, switching rate at which packets can be transferred from input to outputs, often measured as multiple of input/output line rate, N inputs: switching rate N times line rate desirable, 3 types - memory, bus, interconnection network
ROUTING PROCESSOR: routing, management control plane(software), operates in millisecond time frame
Explain the properties of the main switching fabric types (memory bus, crossbar).
MEMORY: first generation routers, traditional computers with switching under direct control of CPU, packet copied to system's memory, speed limited by memory bandwidth(2 bus crossings per datagram)
BUS: datagram from input port memory to output port memory via a shared bus, bus contention(switching speed limited by bus bandwidth), 32Gbps - sufficient speed for access routers
CROSSBAR(interconnection network): initially developed to connect processors in multiprocessor, multistage switch - nxn switch from multiple stages of smaller switches, exploiting parallelism fragments datagram into fixed length cells on entry, switch cells through the fabric then reassemble datagram at exit, scaling, using multiple switching planes in "parallel", up to 100Tbps
Explain the head-of-line blocking problem.
input port queuing, queued datagram at front of queue prevents others in queue from moving forward, if switch fabric slower than input ports combined, queuing may occur at input queues, queuing delay and loss due to input buffer overflow
Explain how scheduling priorities are implemented at the network layer, and give examples of applications that can benefit from properties.
Priority Scheduling: arriving traffic classified, queued by class, any header fields can be used for classification, send packet from highest priority queue that has buffered packets, FCFS(first come first served) within priority class
Explain the role of fields in the IP datagram.
IP Version number, header length(bytes), type of service(diffserve[0:5] or ECN[6:7]), TTL: remaining max hops decremented at each router, upper layer protocol(TCP/UDP), total datagram length(bytes), fragmentation/reassembly, header checksum, 32 bit source IP, destination IP(~1500 bytes, as much as 64KB), options(timestamp, record route taken), payload data(UDP or TCP segment)
Overhead: 20 bytes of TCP + 20 bytes of IP = 40 bytes + application layer overhead for TCP & IP
Explain how multiplexing demultiplexing is implemented in IP. Compare with multiplexing in the transport layer.
Transport layer multiplexing encapsulates data chunks from the source host with header information in order to create segments which are passed to the network layer. The segments are later demultiplexed by sending the arriving segments data to the corresponding transport process socket.
You can use IP multiplexing to optimize IPv4 and IPv6 traffic in environments where packet-per second transmission limitations cause inefficient bandwidth utilization, such as a satellite network. IP multiplexing addresses this constraint by bundling smaller packets into one larger UDP packet, known as superframe. The router then send the superframe to the destination router which demultiplexes the individual packets out of the superframe and routes them to their final destination.
Explain how IP fragmentation works.
IP fragmentation is splitting up larger datagrams into smaller datagrams (fragments) for transmission through a network. Fragments are reassembled in end systems rather than in network routers.
When a destination host receives a series of datagrams from the same source, it must first determine if the datagrams are fragments of some larger datagram, and when the first and last packets are transmitted. In IPv4, there are identification, flag, and fragmentation offset fields in the IP header. Typically the sending host increments the identification number for each datagram it sends.
When fragmentation is necessary, the source, destination, and identification number stay the same for each fragment. As a result the destination can examine multiple packets from the same host and decide which ones may be fragmented.
Because IP is unreliable, some fragments may not arrive. As a result, the last fragment has the flag bit set to 0, all others have it set to 1. Additionally, the offset field is used to determine where the fragment fits the original datagram.
Explain the reasons for IP fragmentation.
The maximum amount of data that a link-layer frame can carry is called the Maximum Transmission Unit (MTU). The MTU is a hard limit on the length of the datagram. Because different links may have different MTUs fragmentation may be necessary to transmit data along different links.
Given an oversized IP packet, compute the fields relevant to fragmentation for each of the fragments.
length, identification, fragmentation flag, offset
Explain the dotted notation for IP addresses.
IP addresses. These are typically written in so-called dotted-decimal notation, in which each byte of the address is written in its decimal form and is separated by a period(dot) from other bytes in the address. For example, consider the IP address 18.104.22.168. The 193 is the decimal equivalent of the first 8 bits of the address; the 32 is the decimal equivalent of the second 8 bits of the address, and so on.
Explain the definition of a subnet in the IP sense.
device interfaces that can physically reach each other without passing through a router, have common high order bits
Network Layer slide 45
Given a network of computers assign valid IP addresses to each interface of each router and host.
subnet mask ("/24" - high order 24 bits: subnet part of IP address), detach each interface from its host or router, creating islands of isolated networks
Network Layer slide 46
Explain the classful and CIDR addressing in the Internet.
CIDR(Classless InterDomain Routing) - subnet portion of addresses of arbitrary length, address format, a.b.c.d/x, where x is # bits in subnet portion of address
11001000 00010111 001000(subnet) 0 00000000(host)
Class A: 8 bits for subnet part, 24 for host (22.214.171.124 - 126.96.36.199)
Class B: 16 bits for subnet part, 16 for host (188.8.131.52 - 184.108.40.206)
Class C: 24 bits for subnet part, 8 for host (220.127.116.11 - 18.104.22.168)
Explain the role of a subnet mask.
To isolate the subnet, identify the network, the host, and the process
highest order bits of the IP address
Explain how a datagram goes from source to destination (on the same network and on different networks).
match plus action abstraction - match bits in arriving packet headers in any layer, take action, matching over many fields(link, network, transport layer), local actions - drop, forward, modify, or send matched packet to controller, program network wide behaviors
Explain the roles of the DHCP messages (discover/offer/request/ACK).
Dynamic Host Configuration Protocol(DHCP): dynamically get address from a server
DISCOVER - host broadcasts discover message(optional)
OFFER - DHCP server responds with DHCP offer message(optional)
REQUEST - host requests IP address
ACK - DHCP server sends address and ACk
Explain how the organizations get their addresses assigned.
The organization/network would have their subnet allocated from a portion of its providers ISP's address space
Explain routing by longest prefix.
when looking for forwarding table entry for given destination address, use longest address prefix that matches destination address, used to connect input to outputs from the forwarding table
Explain the need for NAT.
Network Address Translation: helps IPv4 address space exhaustion, all devices on a network share 1 IPv4 address as far as the outside world is concerned, all datagrams leaving local network have same source IP address
Explain how NAT works.
All the devices in the local network have 32 bit addresses in private IP address space that can only be used in local network
NAT router must transparently replace the source IP and port # for every outgoing datagram to the NAT's IP and port #, responses will have NAT IP and port # for destination; the NAT must remember every source IP/port# to NAT IP/port # translation pair; incoming datagrams replace NAT IP/port in the destination fields with the corresponding translated IP/port stored in the NAT table
Given a scenario with computers on both sides of a NAT enabled router and different connections between computers show how the packets get "translated" and the evolution of the translation table.
NAT table at each local network and then the NAT network acts as a singular device
Explain what are the problems introduced by NAT.
Routers should only process up to layer 3, address shortage should be solved by IPv6, violates the end-to-end argument with port # manipulation by network-layer device
Explain how NAT traversal can be accomplished.
you must perform PAT - port address translation
Explain the role of the fields in the IPv6 header.
PRIORITY: identify priority among datagrams in flow
IPv6 Address: 128 bits, source and destination
FLOW LABEL: identify datagrams in same flow
Explain why IPv6 tunneling is needed and how it works.
The IPv6 datagram is carried as payload in IPv4 datagrams along IPv4 routers (packet within a packet)
For IPv4 to IPv6 conversions
Given an example of a network topology for IPv6 tunneling, find what fields have what values.
The entire IPv6 datagram is help within the IPv4 payload, so it is a typical IPv4 datagram but the values in the payload are formatted as an IPv6 datagram
Explain and give examples of the following OpenFlow termms: pattern, match, action, priority, counters.
PATTERN: the way to map what ports match up
MATCH: pattern values in packet header fields
ACTION: for matched packet: drop, forward, modify, matched packet or send matched packet to controller
PRIORITY: disambiguate overlapping patterns
COUNTERS: #bytes and #packets
Explain the differences between destination based forwarding and generalized forwarding.
DESTINATION FORWARDING: traditional method of forwarding, forwards based only on destination IP address
GENERALIZED FORWARDING: forward based on any set of header field values
Given a service to be implemented, give examples of generalized matching rules/action pairs to implement the service.
generalized forwarding: match + action
router: match longest destination IP prefix -> forward out a link
switch: match destination MAC -> forward or flood
firewall: match IP and TCP port numbers -> permit or deny
NAT: match IP and port -> rewrite(translate) address and port
Given a network topology, show the relevant OpenFlow messages for setting up a given forwarding behavior.
router: longest prefix IP -> forward
switch: MAC -> forward
firewall: IP&port -> approval
NAT: translate IP&port
Given a network of computers, find a graph representation corresponding to that topology.
Network Layer slide 90
Give examples of good weights to be assigned to the edges of the routing graphs.
Weighted Fair Queuing(WFQ) - weight of 1 / sum of all weights
Network Layer slide 37
Given an objective (e.g. minimum hop count, minimum power, minimum delay), find a good cost measure to assign weights in routing protocols.
Network Layer slide 37
Explain how each step in link state routing works.
1) Discover its neighbors and build its neighbor table.
2) Measure the cost (delay, bandwidth, etc.) to each of its neighbors.
3) Construct and send a routing update telling all it has learned to all the routers in the network.
4) Apply the Dijkstra's algorithm to construct the shortest path to all possible destinations.
Explain how Dijkstra's algorithm works.
Discover neighbors and learn network address.
Measure the delay or cost to each.
Construct packet telling all it learned.
Send packet to all routers.
Compute shortest path.
Given a network topology or graph and weights on the edges, show Dijkstra's algorithm works by building the table in the textbook (for each step).
Explain how Dijkstra is used by real routing protocol in the Internet. Give examples of such protocols.
IP routing to find Open shortest Path First: Open Shortest Path First (OSPF) is a link-state routing protocol that is used to find the best path between the source and the destination router using its own Shortest Path First. Dijkstra's algorithm is widely used in the routing protocols required by the routers to update their forwarding table. The algorithm provides the shortest cost path from the source router to other routers in the network.
Explain how distance vector routing works.
determines the best route for data packets based on distance. Distance-vector routing protocols measure the distance by the number of routers a packet has to pass, one router counts as one hop. Some distance-vector protocols also take into account network latency and other factors that influence traffic on a given route. To determine the best route across a network, routers, on which a distance-vector protocol is implemented, exchange information with one another, usually routing tables plus hop counts for destination networks and possibly other traffic information. Distance-vector routing protocols also require that a router informs its neighbors of network topology changes periodically.
Given a network topology (or a graph) and weights on the edges, show how distance vector works by updating the forwarding tables as updates are received.
Distance is based on number of router hops in link, some factors such as latency considered
Explain how distance vector is used in real Internet protocols. Give examples of such protocols.
RIP (Routing Information Protocol) - one of the oldest distance-vector routing protocols which employs the hop count as a routing metric. RIP prevents routing loops by implementing a limit on the number of hops allowed in a path from source to destination. The largest number of hops allowed for RIP is 15, which limits the size of networks that RIP can support.
Explain how oscillations are possible for Dijkstra's algorithm is link costs depend on the traffic load. Comment on possible counter-measures.
if the link costs are equal to the amount of traffic carried(or delay or congestion) in the Link State algorithm the oscillation occurs, not to use amount of traffic as link cost to avoid oscillation
Explain how the poisoned reverse solution can alleviate the count to infinity problem.
uses the split horizon with poison reverse technique to reduce the chance of forming loops and uses a maximum number of hops to counter the 'count to infinity' problem. These measures avoid the formation of routing loops in some, but not all, cases. The addition of a hold time (refusing route updates for a few minutes after a route retraction) avoids loop formation in virtually all cases, but causes a significant increase in convergence times.
Explain why flat routing does not scale (several reasons here).
flat routing does not scale with network size, each node cannot be expected to store route to every destination or destination network(storage), convergence times increase, total message count increases(communication), administrative autonomy - each internetwork may want to run its network independently(hide topology information from competitors
solution: hierarchy via autonomous systems
Explain how hierarchical routing solves the problem of scale.
route aggregation allows for efficient advertising of routing information, categorize IPs by ISPs
Explain the notion of an autonomous system in the Internet.
a collection of connected IP routing prefixes under the control of one or more network operators on behalf of a single administrative entity or domain that presents a common, clearly defined routing policy to the Internet.
Explain how datagrams are routed in hierarchical routing.
The ISPs have an over arching IP that acts as a large subnet, "send me anything with addresses beginning 22.214.171.124/20
set of routers under a single technical administration, use an interior gateway protocol IGP and common metrics to route packets within autonomous systems, connect to other ASes using gateway routers, use an exterior gateway protocol EGP to route packet to other AS's
Explain how and why two different routing algorithms have to run on the gateways.
IGP - interior gateway protocol(OSPF, RIP), similar to an internetwork
EGP - exterior gateway protocol(BGP version 4), pairs of routers exchange routing info over TCP connections port 179, one TCP connect for every pair of neighboring gateway routers, called BGP peers, exchange routing info as messages, TCP connection + messsages -> BGP session
Explain the difference between IGP and EGP routing protocols.
IGP used for intra-autonomous system routing inside an autonomous system, used for routing within a routing domain, within control of single organization, provides best path determination within its own individual network(schools, colleges, companies)
EGP - used for inter autonomous system routing, routing between autonomous systems, under control of different administrations, uses BGP protocol - path vector protocol that can use many different attributes to measure routes, normally between ISPs
Explain why there are different objectives for IGP and EGP routing protocols.
IGP - determine best route between end users, uses distance vector routing(RIP) and link-state routing protocol(OSPF) open shortest path first
EGP - used for determining network reachability between autonomous systems and makes use of UDP to resolve routes within AS
Explain how RIP, OSPF, and BGP work (no more detail than covered in class).
RIP - is a dynamic routing protocol which uses hop count as a routing metric to find the best path between the source and the destination network. It is a distance vector routing protocol which has AD value 120 and works on the application layer of OSI model. RIP uses port number 520
OSPF - is a routing protocol for Internet Protocol (IP) networks. It uses a link state routing (LSR) algorithm and falls into the group of interior gateway protocols (IGPs), operating within a single autonomous system (AS). It is defined as OSPF Version 2 for IPv4. The updates for IPv6 are specified as OSPF Version 3. OSPF supports the Classless Inter-Domain Routing (CIDR) addressing model. OSPF is a widely used IGP in large enterprise networks. IS-IS, another LSR-based protocol, is more common in large service provider networks.
BGP - Border Gateway Protocol (BGP) is a standardized exterior gateway protocol designed to exchange routing and reachability information among autonomous systems (AS) on the Internet. BGP is classified as a path-vector routing protocol, and it makes routing decisions based on paths, network policies, or rule-sets configured by a network administrator. BGP used for routing within an autonomous system is called Interior Border Gateway Protocol, Internal BGP (iBGP). In contrast, the Internet application of the protocol is called Exterior Border Gateway Protocol, External BGP (eBGP).
Explain why areas have been introduced in OSPF.
It is replacing RIP, it uses link-state routing and Dijkstra's algorithm, works great in different WAN environments like point to point, non broad cost multi-access, point to multipoint, frame-relay and in LAN environment. OSPF is also a great routing protocol for dialup scenarios and in heterogeneous organization which use to own different companies or business having with different vendors' devices. In such environments OSPF is better choice because of it flexibility and following great features.
Explain how areas can lead to suboptimal paths in OSPF.
Two paths to a particular router is learned, the one with longest prefix match is taken, if there is any disruption the longer path will be followed creating a loop back reverse through the original path
Explain how policies can result in sub-optimal paths in BGP.
It prioritizes weight when selecting paths, if this path is disrupted, such as in OSPF, a loop can be created around the other path and back through the original path
Explain the main difference between a distributed controller and a logically centralized controller, and its implications for the decoupling of network software and hardware.
Distributed - easy to maintain and update, redundancy(data centers, content distribution networks), allow services to be provided from multiple locations
Centralized - upgrades and changes requires system wide down time, SDN, within a private cloud
Give examples when SDN can implement functionality unavailable to traditional control plane.
logically centralized control and configuration management often in private/public cloud
Given an example of network topology and application, show the messages that would be sent in response to an event (or to setup a desired behavior).
Connection intra and inter networks, with autonomous systems, connections between routers, switches, nodes, servers, and computers
Sets with similar terms
Chapter 6: Network layer
CCNA 1 Chapter 6
CCNA-1 V5.0 Ch 6 - Networks - 2
Other sets by this creator
ECE407 Link Layer Study Guide
ECE407 TCP Study Guide
ECE407 Transport Layer Study Guide
ECE407 Wireshark Study Guide
Other Quizlet sets
World Civ final exam multiple choice review
Chapter 1: Introduction to Phlebotomy, Chapter 2:…
Christian Theology 2 Final Exam- Dr. Brad Reynolds…
Computer Science Final S2