Project

General

Profile

Actions

Feature #4327

closed

Feature #1624: Design and Implement Congestion Control

Congestion mark integration test case

Added by Eric Newberry about 7 years ago. Updated almost 7 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
Integration Tests
Target version:
-
Start date:
Due date:
% Done:

100%

Estimated time:

Description

Implement the congestion mark integration test case proposed by Klaus in #3797 note 57. The below is modified and extended from his note.

Topology:

C -- A -- D

Setup:

  1. Start NFD on nodes A, C, and D.
  2. Node D runs the producer for the prefixes /arizona/cs, /ucla/cs, and /ucsd/caida. The producer app will copy any congestion marks from a received Interest back to the corresponding Data packet.
  3. The routes for all prefixes are configured as follows: C->A, A->D.

TestCase1:

  1. Node C (the consumer) sends an Interest for /arizona/cs.
  2. Node A, on prefix /arizona/cs uses the CongestionMarkStrategy, and adds a congestion mark (value=7) to the traversing Interest.
  3. Node D will propagate the congestion mark on the outgoing Interest. Node D will also add the mark to the returning Data packet.
  4. Check if the consumer app on C receives a Data packet satisfying its Interest, which contains the congestion mark of value=7. Fail if there is a timeout, or missing congestion mark.

TestCase2:

  1. Node C sends an Interest for /ucla/cs.
  2. Check that C receives a Data packet which does not contain a congestion mark. Fail if there is a timeout or received congestion mark.

TestCase3:

  1. Node C (the app) sends an Interest for /ucsd/caida.
  2. Node C, for prefix /ucsd/caida uses the CongestionMarkStrategy to add a congestion mark (value=2) to the traversing Interests.
  3. Node A, for prefix /ucsd/caida uses the CongestionMarkStrategy to update the congestion mark (to value=3), overriding the existing mark.
  4. Check that the consumer on node C receive a Data satisfying its Interest with a congestion mark of value=3. Fail on a timeout or congestion mark of different value.

This test case could be extended to check whether congestion marks can be added to Data packets (from inside the forwarding strategy). However, this is not currently supported (see #4290).


Files

4396-10.txz (85.3 KB) 4396-10.txz Junxiao Shi, 12/22/2017 08:09 AM

Related issues 2 (0 open2 closed)

Blocked by NFD - Feature #3797: Congestion Control: generic congestion marksClosedEric Newberry

Actions
Blocked by NFD - Bug #3609: Build error when configured as --with-other-testsClosedEric Newberry

Actions
Actions

Also available in: Atom PDF