A Discrete-Event Network Simulator
API
IPv6 classes and sub-modules
+ Collaboration diagram for IPv6 classes and sub-modules:

Modules

 ICMPv6 protocol and associated headers.
 
 IPV6 Header extension system.
 

Classes

struct  ns3::Ipv6RawSocketImpl::Data
 IPv6 raw data and additional information. More...
 
class  ns3::NdiscCache::Entry
 A record that holds information about a NdiscCache entry. More...
 
struct  ns3::Ipv6RawSocketImpl::Icmpv6Filter
 Struct to hold the ICMPv6 filter. More...
 
class  ns3::Ipv6
 Access to the IPv6 forwarding table, interfaces, and configuration. More...
 
class  ns3::Ipv6AddressGenerator
 This generator assigns addresses sequentially from a provided network address; used in topology code. More...
 
class  ns3::Ipv6AutoconfiguredPrefix
 Router prefix information. More...
 
class  ns3::Ipv6EndPoint
 A representation of an IPv6 endpoint/connection. More...
 
class  ns3::Ipv6EndPointDemux
 Demultiplexer for end points. More...
 
class  ns3::Ipv6Header
 Packet header for IPv6. More...
 
class  ns3::Ipv6Interface
 The IPv6 representation of a network interface. More...
 
class  ns3::Ipv6InterfaceAddress
 IPv6 address associated with an interface. More...
 
class  ns3::Ipv6InterfaceContainer
 Keep track of a set of IPv6 interfaces. More...
 
class  ns3::Ipv6L3Protocol
 IPv6 layer implementation. More...
 
class  ns3::Ipv6PacketFilter
 Ipv6PacketFilter is the abstract base class for filters defined for IPv6 packets. More...
 
class  ns3::Ipv6PacketInfoTag
 This class implements a tag that carries socket ancillary data to the socket interface. More...
 
class  ns3::Ipv6PacketProbe
 This class is designed to probe an underlying ns3 TraceSource exporting a packet, an IPv6 object, and an interface. More...
 
class  ns3::Ipv6PmtuCache
 This class implements the Path MTU cache, as defined by RFC 1981. More...
 
class  ns3::Ipv6QueueDiscItem
 Ipv6QueueDiscItem is a subclass of QueueDiscItem which stores IPv6 packets. More...
 
class  ns3::Ipv6RawSocketFactory
 API to create IPv6 RAW socket instances. More...
 
class  ns3::Ipv6RawSocketFactoryImpl
 Implementation of IPv6 raw socket factory. More...
 
class  ns3::Ipv6RawSocketImpl
 IPv6 raw socket. More...
 
class  ns3::NdiscCache
 IPv6 Neighbor Discovery cache. More...
 

Enumerations

enum  ns3::Ipv6L3Protocol::DropReason {
  ns3::Ipv6L3Protocol::DROP_TTL_EXPIRED = 1, ns3::Ipv6L3Protocol::DROP_NO_ROUTE, ns3::Ipv6L3Protocol::DROP_INTERFACE_DOWN, ns3::Ipv6L3Protocol::DROP_ROUTE_ERROR,
  ns3::Ipv6L3Protocol::DROP_UNKNOWN_PROTOCOL, ns3::Ipv6L3Protocol::DROP_UNKNOWN_OPTION, ns3::Ipv6L3Protocol::DROP_MALFORMED_HEADER, ns3::Ipv6L3Protocol::DROP_FRAGMENT_TIMEOUT
}
 Reason why a packet has been dropped. More...
 
enum  ns3::Ipv6Header::DscpType {
  ns3::Ipv6Header::DscpDefault = 0x00, ns3::Ipv6Header::DSCP_CS1 = 0x08, ns3::Ipv6Header::DSCP_AF11 = 0x0A, ns3::Ipv6Header::DSCP_AF12 = 0x0C,
  ns3::Ipv6Header::DSCP_AF13 = 0x0E, ns3::Ipv6Header::DSCP_CS2 = 0x10, ns3::Ipv6Header::DSCP_AF21 = 0x12, ns3::Ipv6Header::DSCP_AF22 = 0x14,
  ns3::Ipv6Header::DSCP_AF23 = 0x16, ns3::Ipv6Header::DSCP_CS3 = 0x18, ns3::Ipv6Header::DSCP_AF31 = 0x1A, ns3::Ipv6Header::DSCP_AF32 = 0x1C,
  ns3::Ipv6Header::DSCP_AF33 = 0x1E, ns3::Ipv6Header::DSCP_CS4 = 0x20, ns3::Ipv6Header::DSCP_AF41 = 0x22, ns3::Ipv6Header::DSCP_AF42 = 0x24,
  ns3::Ipv6Header::DSCP_AF43 = 0x26, ns3::Ipv6Header::DSCP_CS5 = 0x28, ns3::Ipv6Header::DSCP_EF = 0x2E, ns3::Ipv6Header::DSCP_CS6 = 0x30,
  ns3::Ipv6Header::DSCP_CS7 = 0x38
}
 DiffServ Code Points Code Points defined in Assured Forwarding (AF) RFC 2597 Expedited Forwarding (EF) RFC 2598 Default and Class Selector (CS) RFC 2474 More...
 
enum  ns3::NdiscCache::Entry::NdiscCacheEntryState_e {
  ns3::NdiscCache::Entry::INCOMPLETE, ns3::NdiscCache::Entry::REACHABLE, ns3::NdiscCache::Entry::STALE, ns3::NdiscCache::Entry::DELAY,
  ns3::NdiscCache::Entry::PROBE, ns3::NdiscCache::Entry::PERMANENT
}
 The Entry state enumeration. More...
 
enum  ns3::Ipv6Header::NextHeader_e {
  ns3::Ipv6Header::IPV6_EXT_HOP_BY_HOP = 0, ns3::Ipv6Header::IPV6_IPV4 = 4, ns3::Ipv6Header::IPV6_TCP = 6, ns3::Ipv6Header::IPV6_UDP = 17,
  ns3::Ipv6Header::IPV6_IPV6 = 41, ns3::Ipv6Header::IPV6_EXT_ROUTING = 43, ns3::Ipv6Header::IPV6_EXT_FRAGMENTATION = 44, ns3::Ipv6Header::IPV6_EXT_CONFIDENTIALITY = 50,
  ns3::Ipv6Header::IPV6_EXT_AUTHENTIFICATION = 51, ns3::Ipv6Header::IPV6_ICMPV6 = 58, ns3::Ipv6Header::IPV6_EXT_END = 59, ns3::Ipv6Header::IPV6_EXT_DESTINATION = 60,
  ns3::Ipv6Header::IPV6_SCTP = 135, ns3::Ipv6Header::IPV6_EXT_MOBILITY = 135, ns3::Ipv6Header::IPV6_UDP_LITE = 136
}
 IPv6 next-header value. More...
 
enum  ns3::Ipv6InterfaceAddress::Scope_e { ns3::Ipv6InterfaceAddress::HOST, ns3::Ipv6InterfaceAddress::LINKLOCAL, ns3::Ipv6InterfaceAddress::GLOBAL }
 Address scope. More...
 
enum  ns3::Ipv6InterfaceAddress::State_e {
  ns3::Ipv6InterfaceAddress::TENTATIVE, ns3::Ipv6InterfaceAddress::DEPRECATED, ns3::Ipv6InterfaceAddress::PREFERRED, ns3::Ipv6InterfaceAddress::PERMANENT,
  ns3::Ipv6InterfaceAddress::HOMEADDRESS, ns3::Ipv6InterfaceAddress::TENTATIVE_OPTIMISTIC, ns3::Ipv6InterfaceAddress::INVALID
}
 State of an address associated with an interface. More...
 

Detailed Description

Enumeration Type Documentation

Reason why a packet has been dropped.

Enumerator
DROP_TTL_EXPIRED 

Packet TTL has expired.

DROP_NO_ROUTE 

No route to host.

DROP_INTERFACE_DOWN 

Interface is down so can not send packet.

DROP_ROUTE_ERROR 

Route error.

DROP_UNKNOWN_PROTOCOL 

Unknown L4 protocol.

DROP_UNKNOWN_OPTION 

Unknown option.

DROP_MALFORMED_HEADER 

Malformed header.

DROP_FRAGMENT_TIMEOUT 

Fragment timeout.

Definition at line 80 of file ipv6-l3-protocol.h.

DiffServ Code Points Code Points defined in Assured Forwarding (AF) RFC 2597 Expedited Forwarding (EF) RFC 2598 Default and Class Selector (CS) RFC 2474

Enumerator
DscpDefault 
DSCP_CS1 
DSCP_AF11 
DSCP_AF12 
DSCP_AF13 
DSCP_CS2 
DSCP_AF21 
DSCP_AF22 
DSCP_AF23 
DSCP_CS3 
DSCP_AF31 
DSCP_AF32 
DSCP_AF33 
DSCP_CS4 
DSCP_AF41 
DSCP_AF42 
DSCP_AF43 
DSCP_CS5 
DSCP_EF 
DSCP_CS6 
DSCP_CS7 

Definition at line 45 of file ipv6-header.h.

The Entry state enumeration.

Enumerator
INCOMPLETE 

No mapping between IPv6 and L2 addresses.

REACHABLE 

Mapping exists between IPv6 and L2 addresses.

STALE 

Mapping is stale.

DELAY 

Try to wait contact from remote host.

PROBE 

Try to contact IPv6 address to know again its L2 address.

PERMANENT 

Permanent Mapping exists between IPv6 and L2 addresses.

Definition at line 351 of file ndisc-cache.h.

IPv6 next-header value.

Enumerator
IPV6_EXT_HOP_BY_HOP 
IPV6_IPV4 
IPV6_TCP 
IPV6_UDP 
IPV6_IPV6 
IPV6_EXT_ROUTING 
IPV6_EXT_FRAGMENTATION 
IPV6_EXT_CONFIDENTIALITY 
IPV6_EXT_AUTHENTIFICATION 
IPV6_ICMPV6 
IPV6_EXT_END 
IPV6_EXT_DESTINATION 
IPV6_SCTP 
IPV6_EXT_MOBILITY 
IPV6_UDP_LITE 

Definition at line 82 of file ipv6-header.h.

Address scope.

Enumerator
HOST 

Localhost (::1/128)

LINKLOCAL 

Link-local address (fe80::/64)

GLOBAL 

Global address (2000::/3)

Definition at line 59 of file ipv6-interface-address.h.

State of an address associated with an interface.

Enumerator
TENTATIVE 

Address is tentative, no packet can be sent unless DAD finished.

DEPRECATED 

Address is deprecated and should not be used.

PREFERRED 

Preferred address.

PERMANENT 

Permanent address.

HOMEADDRESS 

Address is a HomeAddress.

TENTATIVE_OPTIMISTIC 

Address is tentative but we are optimistic so we can send packet even if DAD is not yet finished.

INVALID 

Invalid state (after a DAD failed)

Definition at line 44 of file ipv6-interface-address.h.