Feature #2879
closedNDNLPv2: Packet and Fields
100%
Description
Implement NDNLPv2 functionality.
This issue includes these parts of #2841 API:
Field
concept checkSequenceField FragIndexField FragCountField NackField NextHopFaceIdField CachingPolicyField IncomingFaceIdField
typedefs- templates and specializations to support above typedefs
Packet
class field accessors and encoding/decoding procedures
Updated by Junxiao Shi over 9 years ago
This is an "oversized" issue, estimated to be 9 hours.
I find it unreasonable to split into "field declarations" and "Packet
class", because what goes into field declarations would affect how methods in Packet
class are implemented.
Updated by Junxiao Shi over 9 years ago
- Blocked by Feature #2875: NDNLPv2: TLV-TYPE codes added
Updated by Junxiao Shi over 9 years ago
- Blocked by Feature #2876: NDNLPv2: simple value type declaration added
Updated by Junxiao Shi over 9 years ago
- Blocked by Feature #2878: NDNLPv2: Nack abstraction added
Updated by Eric Newberry over 9 years ago
- Status changed from New to In Progress
Updated by Junxiao Shi over 9 years ago
- Blocked by Feature #2998: Block::insert and Block::erase added
Updated by Junxiao Shi over 9 years ago
Reply to note-7:
Protocol requires header fields in LpPacket to appear in the order of increasing TLV-TYPE codes.
Suppose LpPacket already has header 82 and header 85, and now header 84 is being added.
It's inconvenient to maintain the order with Block::push_back
and Block::erase
alone; Block::insert
would allow inserting header 84 before header 85.
Updated by Junxiao Shi over 9 years ago
- Blocks Feature #2930: Face: send and receive NACK added
Updated by Junxiao Shi over 9 years ago
#2998 is mostly complete but not yet merged. This issue can proceed as follows:
- Create a local branch dev2879.
- Locally replace
encoding/block.*
with files in latest commit of #2998. - Start development, commit locally when appropriate.
- If you want to submit to Gerrit, mark -2 to prevent accidental merge.
When #2998 is merged:
- Merge master branch into feature-ndnlp branch. This has to be a separate commit with minimal changes in other files.
- Wait for the merge commit to get merged into feature-ndnlp branch.
- In dev2879 branch, revert changes to
encoding/block.*
. - Rebase dev2879 onto feature-ndnlp.
- Continue development.
- Upload to Gerrit as usual. If you've previously posted -2, unset it.
Updated by Eric Newberry over 9 years ago
Updated by Junxiao Shi over 9 years ago
#2998 is merged now. This issue should proceed as follows:
- Merge master branch into feature-ndnlp branch. This has to be a separate commit with minimal changes in other files.
- Wait for the merge commit to get merged into feature-ndnlp branch.
- Develop on top of feature-ndnlp after the merge.
- Upload to Gerrit as usual.
You MAY start development before the merge commit is approved, but then you'll have to deal with the rebasing mess.
Updated by Eric Newberry over 9 years ago
The API and unit tests have been completed. I'm waiting on Gerrit 2254 to be merged before submitting for code review.
Updated by Alex Afanasyev over 9 years ago
what's a point of waiting? Git provides enough mechanisms to update multiple commits when necessary. Rebasing or merging would not affect your new code in any way.
I cannot understand Junxiao's statements that he will need something to be meeged before he can start working on dependent code. This is not a productive development process. Working on multiple dependent commits in progress is what a lot of people including me are doing all the time.
Updated by Eric Newberry over 9 years ago
- Status changed from In Progress to Code review
Updated by Junxiao Shi over 9 years ago
- Blocked by Bug #3070: Block::remove unexpected semantics added
Updated by Junxiao Shi over 9 years ago
- Status changed from Code review to Closed