Project

General

Profile

Feature #4299

ndncatchunks: Print summary for all pipeline types

Added by Klaus Schneider over 3 years ago. Updated over 3 years ago.

Status:
Closed
Priority:
Normal
Start date:
09/22/2017
Due date:
% Done:

100%

Estimated time:

Description

Currently, the summary only works for the AIMD pipeline. The code should be refactored to also make it work for the fixed-window or any other pipeline.


Related issues

Blocks ndn-tools - Feature #4289: ndncatchunks: React to congestion marksClosedChavoosh Ghasemi

Actions
#1

Updated by Klaus Schneider over 3 years ago

This is just a simple task for Chavoosh to get started with the coding procedure.

#2

Updated by Davide Pesavento over 3 years ago

  • Tracker changed from Bug to Feature
  • Subject changed from ndncatchunks: Print summary for all pipelines to ndncatchunks: Print summary for all pipeline types
  • Description updated (diff)

The function PipelineInterestsAimd::printSummary() should be moved to PipelineInterests::printSummary()

It's not so simple. Several quantities printed by PipelineInterestsAimd::printSummary are not available in the base class. Moreover, the fixed-window pipeline simply does not track things such as the # of loss events and the # of retransmitted Interests, so it cannot print them.

Shuo started doing this, not sure in what state the code was but you may take a look: https://gerrit.named-data.net/3746

#3

Updated by Klaus Schneider over 3 years ago

Davide Pesavento wrote:

The function PipelineInterestsAimd::printSummary() should be moved to PipelineInterests::printSummary()

It's not so simple. Several quantities printed by PipelineInterestsAimd::printSummary are not available in the base class. Moreover, the fixed-window pipeline simply does not track things such as the # of loss events and the # of retransmitted Interests, so it cannot print them.

Totally agree that it's not quite as simple.

For getting Chavoosh started, I think it's fine to just have some basic output for all pipelines (like completion time and throughput). And then the specific pipeline (like AIMD) can overwrite the printSummary() to include parts that are not available in other pipelines.

Shuo started doing this, not sure in what state the code was but you may take a look: https://gerrit.named-data.net/3746

Good point.

#4

Updated by Chavoosh Ghasemi over 3 years ago

  • Status changed from New to Code review
  • % Done changed from 0 to 100
#5

Updated by Chavoosh Ghasemi over 3 years ago

Klaus Schneider wrote:

Davide Pesavento wrote:

The function PipelineInterestsAimd::printSummary() should be moved to PipelineInterests::printSummary()

It's not so simple. Several quantities printed by PipelineInterestsAimd::printSummary are not available in the base class. Moreover, the fixed-window pipeline simply does not track things such as the # of loss events and the # of retransmitted Interests, so it cannot print them.

Totally agree that it's not quite as simple.

For getting Chavoosh started, I think it's fine to just have some basic output for all pipelines (like completion time and throughput). And then the specific pipeline (like AIMD) can overwrite the printSummary() to include parts that are not available in other pipelines.

Shuo started doing this, not sure in what state the code was but you may take a look: https://gerrit.named-data.net/3746

Good point.

Davide Pesavento wrote:

The function PipelineInterestsAimd::printSummary() should be moved to PipelineInterests::printSummary()

It's not so simple. Several quantities printed by PipelineInterestsAimd::printSummary are not available in the base class. Moreover, the fixed-window pipeline simply does not track things such as the # of loss events and the # of retransmitted Interests, so it cannot print them.

Shuo started doing this, not sure in what state the code was but you may take a look: https://gerrit.named-data.net/3746

Tracking statistical info of packet delivery is still is pipelines' responsibility. E.g. if AIMD wants to use printSummary() method it should gather statics of packet delivery and pass them to printSummary() method. Simply put, this method is nothing more than a printer, where receives its info through arguments.

I have moved printSummary method to pipeline-interests.cpp file. However, I cannot push my changes. I will fix the problem and push them.

#6

Updated by Klaus Schneider over 3 years ago

Were you able to push to gerrit?

You can post your error message here, so we can help.

#7

Updated by Klaus Schneider over 3 years ago

  • Related to Feature #4289: ndncatchunks: React to congestion marks added
#8

Updated by Klaus Schneider over 3 years ago

  • % Done changed from 100 to 50
#10

Updated by Davide Pesavento over 3 years ago

  • Related to deleted (Feature #4289: ndncatchunks: React to congestion marks)
#11

Updated by Davide Pesavento over 3 years ago

  • Blocks Feature #4289: ndncatchunks: React to congestion marks added
#12

Updated by Davide Pesavento over 3 years ago

  • Status changed from Code review to Closed
  • % Done changed from 50 to 100

Also available in: Atom PDF