NS-3 based Named Data Networking (NDN) simulator
ndnSIM 2.3: NDN, CCN, CCNx, content centric networks
API Documentation
ndn::lp Namespace Reference


 indicates where a field may occur


class  CachePolicy
 represents a CachePolicy header field More...
struct  Field
 concept check for fields More...
class  Nack
 represents a Network Nack More...
class  NackHeader
 represents a Network NACK header More...
class  Packet


typedef detail::FieldDecl< field_location_tags::Header, Sequence, tlv::SequenceSequenceField
typedef detail::FieldDecl< field_location_tags::Header, uint64_t, tlv::FragIndexFragIndexField
typedef detail::FieldDecl< field_location_tags::Header, uint64_t, tlv::FragCountFragCountField
typedef detail::FieldDecl< field_location_tags::Header, NackHeader, tlv::NackNackField
typedef detail::FieldDecl< field_location_tags::Header, uint64_t, tlv::NextHopFaceIdNextHopFaceIdField
typedef detail::FieldDecl< field_location_tags::Header, CachePolicy, tlv::CachePolicyCachePolicyField
typedef detail::FieldDecl< field_location_tags::Header, uint64_t, tlv::IncomingFaceIdIncomingFaceIdField
typedef detail::FieldDecl< field_location_tags::Header, uint64_t, tlv::CongestionMarkCongestionMarkField
typedef detail::FieldDecl< field_location_tags::Header, uint64_t, tlv::HopCountTagHopCountTagField
typedef detail::FieldDecl< field_location_tags::Fragment, std::pair< Buffer::const_iterator, Buffer::const_iterator >, tlv::FragmentFragmentField
 The value of the wire encoded field is the data between the provided iterators. More...
typedef boost::mpl::set< FragmentField, SequenceField, FragIndexField, FragCountField, NackField, NextHopFaceIdField, CachePolicyField, IncomingFaceIdField, CongestionMarkField, HopCountTagFieldFieldSet
 set of all field declarations More...
typedef uint64_t Sequence
 represents a sequence number More...
typedef SimpleTag< uint64_t, 10 > IncomingFaceIdTag
typedef SimpleTag< uint64_t, 11 > NextHopFaceIdTag
typedef SimpleTag< CachePolicy, 12 > CachePolicyTag
typedef SimpleTag< uint64_t, 13 > CongestionMarkTag
typedef SimpleTag< uint64_t, 0x60000000 > HopCountTag


enum  CachePolicyType { CachePolicyType::NONE = 0, CachePolicyType::NO_CACHE = 1 }
 indicates the cache policy applied to a Data packet More...
enum  NackReason { NackReason::NONE = 0, NackReason::CONGESTION = 50, NackReason::DUPLICATE = 100, NackReason::NO_ROUTE = 150 }
 indicates the reason type of a network NACK More...


std::ostream & operator<< (std::ostream &os, CachePolicyType policy)
template size_t CachePolicy::wireEncode< encoding::EncoderTag > (EncodingImpl< encoding::EncoderTag > &encoder) const
template size_t CachePolicy::wireEncode< encoding::EstimatorTag > (EncodingImpl< encoding::EstimatorTag > &encoder) const
std::ostream & operator<< (std::ostream &os, NackReason reason)
template size_t NackHeader::wireEncode< encoding::EncoderTag > (EncodingImpl< encoding::EncoderTag > &encoder) const
template size_t NackHeader::wireEncode< encoding::EstimatorTag > (EncodingImpl< encoding::EstimatorTag > &encoder) const
template size_t Packet::wireEncode< encoding::EncoderTag > (EncodingImpl< encoding::EncoderTag > &encoder) const
template size_t Packet::wireEncode< encoding::EstimatorTag > (EncodingImpl< encoding::EstimatorTag > &encoder) const


 Field< SequenceField >
 Field< FragIndexField >
 Field< FragCountField >
 Field< NackField >
 Field< NextHopFaceIdField >
 Field< CachePolicyField >
 Field< IncomingFaceIdField >
 Field< CongestionMarkField >
 Field< HopCountTagField >
 Field< FragmentField >

Typedef Documentation

◆ SequenceField

◆ FragIndexField

◆ FragCountField

◆ NackField

◆ NextHopFaceIdField

◆ CachePolicyField

◆ IncomingFaceIdField

◆ CongestionMarkField

◆ HopCountTagField

◆ FragmentField

typedef detail::FieldDecl<field_location_tags::Fragment, std::pair<Buffer::const_iterator, Buffer::const_iterator>, tlv::Fragment> ndn::lp::FragmentField

The value of the wire encoded field is the data between the provided iterators.

During encoding, the data is copied from the Buffer into the wire buffer.

Definition at line 87 of file fields.hpp.

◆ FieldSet

◆ Sequence

typedef uint64_t ndn::lp::Sequence

represents a sequence number

Definition at line 35 of file sequence.hpp.

◆ IncomingFaceIdTag

typedef SimpleTag<uint64_t, 10> ndn::lp::IncomingFaceIdTag

Definition at line 36 of file tags.hpp.

◆ NextHopFaceIdTag

typedef SimpleTag<uint64_t, 11> ndn::lp::NextHopFaceIdTag

Definition at line 43 of file tags.hpp.

◆ CachePolicyTag

Definition at line 50 of file tags.hpp.

◆ CongestionMarkTag

typedef SimpleTag<uint64_t, 13> ndn::lp::CongestionMarkTag

Definition at line 57 of file tags.hpp.

◆ HopCountTag

typedef SimpleTag<uint64_t, 0x60000000> ndn::lp::HopCountTag

Definition at line 64 of file tags.hpp.

Enumeration Type Documentation

◆ CachePolicyType

indicates the cache policy applied to a Data packet


Definition at line 40 of file cache-policy.hpp.

◆ NackReason

enum ndn::lp::NackReason

indicates the reason type of a network NACK


Definition at line 39 of file nack-header.hpp.

Function Documentation

◆ operator<<() [1/2]

std::ostream & ndn::lp::operator<< ( std::ostream &  os,
CachePolicyType  policy 

Definition at line 30 of file cache-policy.cpp.

References NO_CACHE.

◆ CachePolicy::wireEncode< encoding::EncoderTag >()

◆ CachePolicy::wireEncode< encoding::EstimatorTag >()

◆ operator<<() [2/2]

std::ostream & ndn::lp::operator<< ( std::ostream &  os,
NackReason  reason 

Definition at line 30 of file nack-header.cpp.


◆ NackHeader::wireEncode< encoding::EncoderTag >()

◆ NackHeader::wireEncode< encoding::EstimatorTag >()

◆ Packet::wireEncode< encoding::EncoderTag >()

◆ Packet::wireEncode< encoding::EstimatorTag >()

Variable Documentation

◆ Field< SequenceField >

Definition at line 39 of file fields.hpp.

◆ Field< FragIndexField >

Definition at line 44 of file fields.hpp.

◆ Field< FragCountField >

Definition at line 49 of file fields.hpp.

◆ Field< NackField >

Definition at line 54 of file fields.hpp.

◆ Field< NextHopFaceIdField >

Definition at line 59 of file fields.hpp.

◆ Field< CachePolicyField >

Definition at line 64 of file fields.hpp.

◆ Field< IncomingFaceIdField >

Definition at line 69 of file fields.hpp.

◆ Field< CongestionMarkField >

Definition at line 74 of file fields.hpp.

◆ Field< HopCountTagField >

Definition at line 79 of file fields.hpp.

◆ Field< FragmentField >

Definition at line 88 of file fields.hpp.