Bird
Raised Fist0
Computer Networksknowledge~5 mins

BGP and inter-domain routing in Computer Networks - Time & Space Complexity

Choose your learning style10 modes available
Time Complexity: BGP and inter-domain routing
O(n * m)
Understanding Time Complexity

When studying BGP and inter-domain routing, it is important to understand how the time to process routing updates grows as the network size increases.

We want to know how the routing decisions and message exchanges scale when more networks connect.

Scenario Under Consideration

Analyze the time complexity of the following simplified BGP update processing.


for each received_update in updates:
    for each route in routing_table:
        if route conflicts with received_update:
            update route
    add new routes from received_update

This code processes each BGP update by checking existing routes and updating or adding routes accordingly.

Identify Repeating Operations

Look at the loops and repeated checks in the code.

  • Primary operation: The inner loop that checks each route in the routing table for conflicts.
  • How many times: For each update received, it loops through all routes in the routing table.
How Execution Grows With Input

As the number of updates and routes grows, the work increases.

Input Size (n)Approx. Operations
10 updates, 10 routesAbout 100 checks
100 updates, 100 routesAbout 10,000 checks
1000 updates, 1000 routesAbout 1,000,000 checks

Pattern observation: The number of operations grows quickly as both updates and routes increase, roughly multiplying together.

Final Time Complexity

Time Complexity: O(n * m)

This means the time to process updates grows proportionally to the number of updates times the number of routes.

Common Mistake

[X] Wrong: "Processing each update takes the same fixed time regardless of routing table size."

[OK] Correct: Each update must be checked against many routes, so more routes mean more work and longer processing time.

Interview Connect

Understanding how routing update processing scales helps you explain network performance and design choices clearly in discussions or interviews.

Self-Check

What if the routing table used a data structure that allows faster lookups? How would the time complexity change?

Practice

(1/5)
1. What is the primary purpose of BGP (Border Gateway Protocol) in computer networks?
easy
A. To encrypt data packets for secure communication
B. To exchange routing information between different large networks on the internet
C. To assign IP addresses to devices within a local network
D. To manage wireless connections in home networks

Solution

  1. Step 1: Understand BGP's role

    BGP is designed to connect different large networks, called autonomous systems, on the internet.
  2. Step 2: Identify BGP's function

    It shares routing information to find the best path for data between these networks.
  3. Final Answer:

    To exchange routing information between different large networks on the internet -> Option B
  4. Quick Check:

    BGP = Routing between large networks [OK]
Hint: BGP connects big networks by sharing routes [OK]
Common Mistakes:
  • Confusing BGP with encryption protocols
  • Thinking BGP assigns IP addresses
  • Mixing BGP with local network management
2. Which of the following is the correct syntax to define a BGP neighbor in a router configuration?
easy
A. neighbor 192.168.1.1 remote-as 65001
B. set neighbor 192.168.1.1 as 65001
C. neighbor remote-as 65001 192.168.1.1
D. remote-as neighbor 192.168.1.1 65001

Solution

  1. Step 1: Recall BGP neighbor syntax

    The standard BGP command to define a neighbor includes the keyword 'neighbor', the IP address, and 'remote-as' followed by the AS number.
  2. Step 2: Match syntax to options

    neighbor 192.168.1.1 remote-as 65001 matches this format exactly: 'neighbor 192.168.1.1 remote-as 65001'. Others mix order or keywords incorrectly.
  3. Final Answer:

    neighbor 192.168.1.1 remote-as 65001 -> Option A
  4. Quick Check:

    neighbor IP remote-as AS_number = correct syntax [OK]
Hint: Remember: neighbor IP then remote-as AS number [OK]
Common Mistakes:
  • Swapping the order of IP and AS number
  • Using 'set' instead of 'neighbor'
  • Placing 'remote-as' before IP address
3. Consider the following simplified BGP routing table entries:
AS Path: 65001 65002 65003
AS Path: 65001 65004
AS Path: 65005 65003
Which AS path will BGP prefer to route traffic?
medium
A. AS Path: 65001 65002 65003
B. AS Path: 65001 65004
C. AS Path: 65005 65003
D. All paths are equally preferred

Solution

  1. Step 1: Understand BGP path selection criteria

    BGP prefers the path with the shortest AS path length to reduce the number of hops.
  2. Step 2: Compare AS path lengths

    Paths lengths are: 3 for '65001 65002 65003', 2 for '65001 65004', and 2 for '65005 65003'. Among these, the shortest paths are the ones with length 2.
  3. Step 3: Consider origin and other attributes

    Since no other attributes are given, BGP will prefer the path with the shortest AS path regardless of starting AS. Both '65001 65004' and '65005 65003' have length 2, but BGP prefers the path with the lowest next-hop IP or other tie-breakers. Without additional info, the shortest path is preferred. So either could be correct, but typically the path starting with the local AS is preferred. However, since local AS is not specified, the shortest path is the main factor.
  4. Final Answer:

    AS Path: 65005 65003 -> Option C
  5. Quick Check:

    Shortest AS path length = preferred [OK]
Hint: Shortest AS path usually wins in BGP routing [OK]
Common Mistakes:
  • Choosing longest AS path
  • Ignoring AS path length
  • Assuming all paths are equal
4. A network engineer configures BGP neighbors but notices no routes are exchanged. Which of the following is the most likely cause?
medium
A. The subnet mask on the interface is too large
B. The router's hostname is not set
C. The router is missing a default gateway
D. The neighbor IP address is incorrect or unreachable

Solution

  1. Step 1: Identify common BGP neighbor issues

    If no routes are exchanged, a common cause is that the neighbor IP is wrong or unreachable, preventing session establishment.
  2. Step 2: Evaluate other options

    Hostname settings do not affect BGP neighbor sessions. Missing default gateway or subnet mask issues may affect general connectivity but are less direct causes than neighbor IP errors.
  3. Final Answer:

    The neighbor IP address is incorrect or unreachable -> Option D
  4. Quick Check:

    Neighbor IP correct and reachable = routes exchanged [OK]
Hint: Check neighbor IP and reachability first [OK]
Common Mistakes:
  • Ignoring neighbor IP correctness
  • Blaming unrelated settings like hostname
  • Overlooking basic connectivity issues
5. An ISP uses BGP to connect with multiple other ISPs. They want to prefer routes learned from ISP A over ISP B, even if ISP B's path is shorter. Which BGP feature should they use to achieve this?
hard
A. AS path prepending to make ISP B's path appear longer
B. Changing the router's hostname to ISP A
C. Using a static route instead of BGP
D. Disabling BGP on ISP B's connection

Solution

  1. Step 1: Understand BGP path preference controls

    BGP chooses routes based on path attributes like AS path length. To prefer one ISP's route, you can make the other ISP's path look longer.
  2. Step 2: Apply AS path prepending

    AS path prepending adds extra AS numbers to the path advertised to ISP B, making it appear longer and less preferred.
  3. Step 3: Evaluate other options

    Changing hostname or using static routes won't affect BGP path selection properly. Disabling BGP on ISP B is extreme and not practical.
  4. Final Answer:

    AS path prepending to make ISP B's path appear longer -> Option A
  5. Quick Check:

    AS path prepending = prefer one ISP over another [OK]
Hint: Use AS path prepending to prefer routes [OK]
Common Mistakes:
  • Thinking hostname affects routing preference
  • Using static routes instead of BGP
  • Disabling connections instead of adjusting path attributes
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard