Project

General

Profile

Actions

Feature #4219

closed

ContentStore hit/miss counters

Added by Junxiao Shi over 6 years ago. Updated about 6 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
Management
Target version:
Start date:
Due date:
% Done:

100%

Estimated time:
3.00 h

Description

Provide counters for CS hits and CS misses.
They are useful for understanding the effectiveness of in-network caching for deployed applications.

This issue includes:

  1. Determine whether these counters belong to ForwarderStatus or Content Store manager (#4050).
  2. Update Management protocol.
  3. Modify ndn-cxx and NFD according to protocol.

Related issues 1 (0 open1 closed)

Related to NFD - Feature #4050: Content Store ManagerClosedJunxiao Shi

Actions
Actions #1

Updated by Alex Afanasyev over 6 years ago

The first commit should simply introduce the corresponding signals, which will allow ndnSIM to finally implement CS stats.

I will (minor) vote for a separate CS status dataset, as it may be not just a number, but a number per different prefixes (e.g., if someone requested per-prefix tracking; either run-time or config-time setting). This feature was requested several times, but we never implemented in ndnSIM.

Actions #2

Updated by Davide Pesavento over 6 years ago

Actions #3

Updated by Junxiao Shi over 6 years ago

  • Status changed from New to In Progress
  • Assignee set to Junxiao Shi
  • Target version set to v0.6
  • % Done changed from 0 to 20

https://gerrit.named-data.net/4166 exports the counters from Forwarder.

Actions #4

Updated by Junxiao Shi over 6 years ago

  • % Done changed from 20 to 30

CsMgmt rev1 has the protocol design for exposing the counters in management.

Actions #5

Updated by Davide Pesavento over 6 years ago

ControlCommand management-module: fib

Is "fib" intended or a typo?

Actions #6

Updated by Junxiao Shi over 6 years ago

  • Target version changed from v0.6 to v0.7

Is "fib" intended or a typo?

Corrected in CsMgmt rev2. TLV-TYPE numbers are assigned as well.

Actions #7

Updated by Junxiao Shi over 6 years ago

  • % Done changed from 30 to 40

https://gerrit.named-data.net/4362 encode/decode CS Information dataset

Actions #8

Updated by Junxiao Shi over 6 years ago

I renamed CsStatus to CsInfo in CsMgmt to better match the dataset name.

Actions #9

Updated by Davide Pesavento over 6 years ago

Junxiao Shi wrote:

I renamed CsStatus to CsInfo in CsMgmt to better match the dataset name.

It would be more sensible to do the reverse and call everything *Status for consistency.

Actions #10

Updated by Junxiao Shi over 6 years ago

I renamed CsStatus to CsInfo in CsMgmt to better match the dataset name.

It would be more sensible to do the reverse and call everything *Status for consistency.

No. CS behavior configuration, to be added in #4050, is not "status".

Actions #11

Updated by Davide Pesavento over 6 years ago

Junxiao Shi wrote:

It would be more sensible to do the reverse and call everything *Status for consistency.

No. CS behavior configuration, to be added in #4050, is not "status".

Seems like a completely arbitrary distinction to me. I don't see any practical differences between "status" and "info" in this context.

Actions #12

Updated by Junxiao Shi over 6 years ago

"status" is more dynamic. "info" is more static. The planned fields are mostly dynamic, so I'd use "info" as the majority of this dataset belong to "info".

Actions #13

Updated by Junxiao Shi about 6 years ago

  • % Done changed from 40 to 70

https://gerrit.named-data.net/4423 implements NFD management side of the protocol.

4423,1 test log:

$ nfd-start
$ ndnpingserver /A &
$ ndnping -i 1 -c 1000 -n 20000 /A
$ ndnping -a -i 1 -c 1000 -n 20000 /A
$ ndnping -a -i 1 -c 1000 -n 20000 /A
$ ndnpeek -fp /localhost/nfd/cs/info | hexdump -C
00000000  80 08 81 02 07 d0 82 02  03 f8                    |..........|
0000000a

Explanation:

  1. First ndnping command causes 20000 CS misses, and makes the CS cache 1000 Data.
  2. Second and third ndnping commands send Interest with same name (specified through -n argument), and cause 2000 CS hits.
  3. ndnpeek command retrieves the dataset, which indicates 2000 hits and 1016 misses. The additional 16 misses come from management commands.
Actions #14

Updated by Junxiao Shi about 6 years ago

  • Status changed from In Progress to Code review
  • % Done changed from 70 to 100

https://gerrit.named-data.net/4428 nfdc cs info command.
The dataset is also included in nfdc status report.

Actions #15

Updated by Junxiao Shi about 6 years ago

  • Status changed from Code review to Closed
Actions

Also available in: Atom PDF