Key Concepts in Computer Networking and Routing Protocols

1. Understanding Shadow Copies in Routers

Shadow copies are used in routers because the forwarding decision is made locally at each input port, without invoking the centralized routing processor. Decentralized forwarding avoids creating a forwarding processing bottleneck at a single point within the router.

2. Three Types of Switching Fabrics

  • Switching via memory: Fabric switching with the use of CPU.
  • Switching via a bus: Fabric switching via shared buses on input and output ports.
  • Switching via interconnection network: Fragmenting datagrams into fixed-length cells and switching cells through the fabric.

3. Understanding HOL Blocking

Head-of-Line (HOL) blocking occurs when a queued packet in an input queue must wait for transfer through the fabric because it is blocked by another packet at the head of the line. It occurs at the input port.

4. RIP and OSPF Router Advertisements

With OSPF, a router periodically broadcasts routing information to all other routers in the Autonomous System (AS), not just to its neighboring routers. This routing information sent by a router has one entry for each of the router’s neighbors; the entry gives the distance from the router to the neighbor. A RIP advertisement sent by a router contains information about all the networks in the AS, although this information is only sent to its neighboring routers.

5. Virtual Circuit vs. Datagram Architecture

This section discusses the advantages, disadvantages, and overhead of virtual circuit and datagram architectures.

6. When to Use Virtual Circuit vs. Datagram

This section explains the scenarios where each architecture is most suitable.

7. Delta Network Self-Routing Property

A Delta network has a self-routing property.

  • The path for a cell to reach its destination can be determined directly from its routing tag (i.e., destination port ID).
  • Stage k of the Multistage Interconnection Network (MIN) looks at bit k of the tag.
  • If bit k is 0, the cell is sent out the upper port.
  • If bit k is 1, the cell is sent out the lower port.

8. Detecting Loops in BGP

The Border Gateway Protocol (BGP) propagates and obtains reachability of all neighboring Autonomous Systems (AS). The attributes AS-PATH and NEXT-HOP are used for routing. The router verifies all the AS numbers. If it finds its own number, it will discard the advertisement to prevent looping. In this way, BGP detects and prevents loops.

9. Limitations of Intra-AS Routing Algorithms

Intra-AS Routing, also known as Interior Gateway Protocols (IGP), includes:

  • RIP (Routing Information Protocol): Limited to networks with a diameter of 15 hops. If no advertisement is heard after 180 seconds, the neighbor/link is declared dead.
  • OSPF (Open Shortest Path First): All OSPF messages are authenticated to prevent malicious intrusion.
  • IGRP (Interior Gateway Routing Protocol): Similar to RIP but with advanced features like OSPF. Uses TCP to exchange routing updates.

Inter-AS algorithms like BGP can also be used in these networks.

  • Similar to the Distance Vector protocol.
  • Avoids the count-to-infinity problem by identifying yourself in a path advertised to you.

10. Policy’s Role in Routing

Among ASs, policy issues dominate. Traffic originating in a given AS may need to avoid passing through another specific AS. Similarly, an AS may want to control what transit traffic it carries between other ASs. BGP carries path attributes and provides for controlled distribution of routing information to enable such policy-based routing decisions.

Within an AS, everything is nominally under the same administrative control, and thus policy issues play a much less important role in choosing routes within the AS.

  • Inter-AS: Administrators want control over how traffic is routed and who routes through their network, hence policy plays a major role.
  • Intra-AS: Single administrator, so no policy decisions are needed.

They also vary in both scale and performance.

11. BGP NEXT-HOP and AS-PATH Attributes

  • The BGP NEXT-HOP attribute tells the receiver of the advertisement the node to send packets to in order to reach the advertised prefix destination.
  • The BGP AS-PATH attribute contains the AS numbers for each AS that the announcement for the prefix passed through.
  • It is used to detect and prevent routing loops.

12. Connecting Routers to Multicast Groups

This section discusses the criteria for routers to connect to multicast groups and the characteristics of different tree structures.

13. Goal of Multicast Routing

  • Efficient data distribution: Send only one copy of the packet over each link, not n.
  • Anonymous group addressing: For example, to get a phone number, you call any operator.

14. Characteristics of TCP Data Stream

  • Stream Data Transfer: Applications transfer a contiguous stream of bytes. TCP packs this byte stream into packets (TCP segments) and passes them to the IP layer for transmission.
  • Reliability: TCP ensures reliable data delivery.
  • Flow Control: TCP manages the rate of data transmission.
  • Multiplexing: Multitasking is achieved through the use of port numbers.
  • Connections: Devices establish a connection before sending data using TCP. The connection is uniquely identified by the address and port number.
  • Full Duplex: TCP provides for concurrent data streams in both directions.

15. TCP’s Go-Back-N Acknowledgement

The Go-Back-N acknowledgment structure is a pipeline protocol. TCP does hop-by-hop flow control using a Go-Back-N approach.

Steps in Go-Back-N:

  • Pipelined protocol where the sender can have up to N unacknowledged packets in the pipeline.
  • The receiver only sends a cumulative acknowledgment.
  • The sender has a timer for the oldest unacknowledged packet.
  • When the timer expires, it retransmits all unacknowledged packets.

16. TCP Slow Start Process

This section explains the TCP Slow Start process and what happens when a timeout occurs.

17. Slow Start to Congestion Avoidance

This section describes when the TCP Slow Start transition ends and congestion avoidance begins.

18. Three Application Architectures

This section details the characteristics of the three application architectures.

19. Purpose and Characteristics of Cookies

This section explains the purpose and characteristics of cookies.

20. BitTorrent in Point-to-Point

This section discusses the BitTorrent concept in point-to-point communications.