A Discrete-Event Network Simulator
Home
Tutorials ▼
English
Portuguese
Docs ▼
Wiki
Manual
Models
Develop ▼
API
Bugs
API
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
ipv6-extension-header.h
Go to the documentation of this file.
1
/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
2
/*
3
* Copyright (c) 2008-2009 Strasbourg University
4
*
5
* This program is free software; you can redistribute it and/or modify
6
* it under the terms of the GNU General Public License version 2 as
7
* published by the Free Software Foundation;
8
*
9
* This program is distributed in the hope that it will be useful,
10
* but WITHOUT ANY WARRANTY; without even the implied warranty of
11
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
* GNU General Public License for more details.
13
*
14
* You should have received a copy of the GNU General Public License
15
* along with this program; if not, write to the Free Software
16
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17
*
18
* Author: David Gross <gdavid.devel@gmail.com>
19
*/
20
21
#ifndef IPV6_EXTENSION_HEADER_H
22
#define IPV6_EXTENSION_HEADER_H
23
24
#include <vector>
25
#include <list>
26
#include <ostream>
27
28
#include "ns3/header.h"
29
#include "ns3/ipv6-address.h"
30
#include "
ipv6-option-header.h
"
31
32
namespace
ns3
33
{
34
39
class
Ipv6ExtensionHeader
:
public
Header
40
{
41
public
:
46
static
TypeId
GetTypeId
();
47
52
virtual
TypeId
GetInstanceTypeId
()
const
;
53
57
Ipv6ExtensionHeader
();
58
62
virtual
~Ipv6ExtensionHeader
();
63
68
void
SetNextHeader
(uint8_t nextHeader);
69
74
uint8_t
GetNextHeader
()
const
;
75
80
void
SetLength
(uint16_t length);
81
86
uint16_t
GetLength
()
const
;
87
93
virtual
void
Print
(std::ostream &os)
const
;
94
99
virtual
uint32_t
GetSerializedSize
()
const
;
100
105
virtual
void
Serialize
(
Buffer::Iterator
start
)
const
;
106
112
virtual
uint32_t
Deserialize
(
Buffer::Iterator
start);
113
114
private
:
118
uint8_t
m_nextHeader
;
119
123
uint8_t
m_length
;
124
128
Buffer
m_data
;
129
};
130
141
class
OptionField
142
{
143
public
:
148
OptionField
(uint32_t optionsOffset);
149
153
~OptionField
();
154
159
uint32_t
GetSerializedSize
()
const
;
160
165
void
Serialize
(
Buffer::Iterator
start
)
const
;
166
173
uint32_t
Deserialize
(
Buffer::Iterator
start, uint32_t length);
174
179
void
AddOption
(
Ipv6OptionHeader
const
& option);
180
186
uint32_t
GetOptionsOffset
();
187
192
Buffer
GetOptionBuffer
();
193
194
private
:
195
200
uint32_t
CalculatePad
(
Ipv6OptionHeader::Alignment
alignment)
const
;
201
205
Buffer
m_optionData
;
206
210
uint32_t
m_optionsOffset
;
211
};
212
217
class
Ipv6ExtensionHopByHopHeader
:
public
Ipv6ExtensionHeader
,
public
OptionField
218
{
219
public
:
224
static
TypeId
GetTypeId
();
225
230
virtual
TypeId
GetInstanceTypeId
()
const
;
231
235
Ipv6ExtensionHopByHopHeader
();
236
240
virtual
~Ipv6ExtensionHopByHopHeader
();
241
247
virtual
void
Print
(std::ostream &os)
const
;
248
253
virtual
uint32_t
GetSerializedSize
()
const
;
254
259
virtual
void
Serialize
(
Buffer::Iterator
start
)
const
;
260
266
virtual
uint32_t
Deserialize
(
Buffer::Iterator
start);
267
};
268
273
class
Ipv6ExtensionDestinationHeader
:
public
Ipv6ExtensionHeader
,
public
OptionField
274
{
275
public
:
280
static
TypeId
GetTypeId
();
281
286
virtual
TypeId
GetInstanceTypeId
()
const
;
287
291
Ipv6ExtensionDestinationHeader
();
292
296
virtual
~Ipv6ExtensionDestinationHeader
();
297
303
virtual
void
Print
(std::ostream &os)
const
;
304
309
virtual
uint32_t
GetSerializedSize
()
const
;
310
315
virtual
void
Serialize
(
Buffer::Iterator
start
)
const
;
316
322
virtual
uint32_t
Deserialize
(
Buffer::Iterator
start);
323
};
324
329
class
Ipv6ExtensionFragmentHeader
:
public
Ipv6ExtensionHeader
330
{
331
public
:
336
static
TypeId
GetTypeId
();
337
342
virtual
TypeId
GetInstanceTypeId
()
const
;
343
347
Ipv6ExtensionFragmentHeader
();
348
352
virtual
~Ipv6ExtensionFragmentHeader
();
353
358
void
SetOffset
(uint16_t offset);
359
364
uint16_t
GetOffset
()
const
;
365
370
void
SetMoreFragment
(
bool
moreFragment);
371
376
bool
GetMoreFragment
()
const
;
377
382
void
SetIdentification
(uint32_t identification);
383
388
uint32_t
GetIdentification
()
const
;
389
395
virtual
void
Print
(std::ostream &os)
const
;
396
401
virtual
uint32_t
GetSerializedSize
()
const
;
402
407
virtual
void
Serialize
(
Buffer::Iterator
start
)
const
;
408
414
virtual
uint32_t
Deserialize
(
Buffer::Iterator
start);
415
416
private
:
420
uint16_t
m_offset
;
421
425
uint32_t
m_identification
;
426
};
427
432
class
Ipv6ExtensionRoutingHeader
:
public
Ipv6ExtensionHeader
433
{
434
public
:
439
static
TypeId
GetTypeId
();
440
445
virtual
TypeId
GetInstanceTypeId
()
const
;
446
450
Ipv6ExtensionRoutingHeader
();
451
455
virtual
~Ipv6ExtensionRoutingHeader
();
456
461
void
SetTypeRouting
(uint8_t typeRouting);
462
467
uint8_t
GetTypeRouting
()
const
;
468
473
void
SetSegmentsLeft
(uint8_t segmentsLeft);
474
479
uint8_t
GetSegmentsLeft
()
const
;
480
486
virtual
void
Print
(std::ostream &os)
const
;
487
492
virtual
uint32_t
GetSerializedSize
()
const
;
493
498
virtual
void
Serialize
(
Buffer::Iterator
start
)
const
;
499
505
virtual
uint32_t
Deserialize
(
Buffer::Iterator
start);
506
507
private
:
511
uint8_t
m_typeRouting
;
512
516
uint8_t
m_segmentsLeft
;
517
};
518
523
class
Ipv6ExtensionLooseRoutingHeader
:
public
Ipv6ExtensionRoutingHeader
524
{
525
public
:
530
static
TypeId
GetTypeId
();
531
536
virtual
TypeId
GetInstanceTypeId
()
const
;
537
541
Ipv6ExtensionLooseRoutingHeader
();
542
546
virtual
~Ipv6ExtensionLooseRoutingHeader
();
547
552
void
SetNumberAddress
(uint8_t n);
553
558
void
SetRoutersAddress
(std::vector<Ipv6Address> routersAddress);
559
564
std::vector<Ipv6Address>
GetRoutersAddress
()
const
;
565
571
void
SetRouterAddress
(uint8_t index,
Ipv6Address
addr);
572
578
Ipv6Address
GetRouterAddress
(uint8_t index)
const
;
579
585
virtual
void
Print
(std::ostream &os)
const
;
586
591
virtual
uint32_t
GetSerializedSize
()
const
;
592
597
virtual
void
Serialize
(
Buffer::Iterator
start
)
const
;
598
604
virtual
uint32_t
Deserialize
(
Buffer::Iterator
start);
605
606
private
:
610
typedef
std::vector<Ipv6Address>
VectorIpv6Address_t
;
611
615
VectorIpv6Address_t
m_routersAddress
;
616
};
617
622
class
Ipv6ExtensionESPHeader
:
public
Ipv6ExtensionHeader
623
{
624
public
:
629
static
TypeId
GetTypeId
();
630
635
virtual
TypeId
GetInstanceTypeId
()
const
;
636
640
Ipv6ExtensionESPHeader
();
641
645
virtual
~Ipv6ExtensionESPHeader
();
646
652
virtual
void
Print
(std::ostream &os)
const
;
653
658
virtual
uint32_t
GetSerializedSize
()
const
;
659
664
virtual
void
Serialize
(
Buffer::Iterator
start
)
const
;
665
671
virtual
uint32_t
Deserialize
(
Buffer::Iterator
start);
672
};
673
678
class
Ipv6ExtensionAHHeader
:
public
Ipv6ExtensionHeader
679
{
680
public
:
685
static
TypeId
GetTypeId
();
686
691
virtual
TypeId
GetInstanceTypeId
()
const
;
692
696
Ipv6ExtensionAHHeader
();
697
701
virtual
~Ipv6ExtensionAHHeader
();
702
708
virtual
void
Print
(std::ostream &os)
const
;
709
714
virtual
uint32_t
GetSerializedSize
()
const
;
715
720
virtual
void
Serialize
(
Buffer::Iterator
start
)
const
;
721
727
virtual
uint32_t
Deserialize
(
Buffer::Iterator
start);
728
};
729
730
}
// namespace ns3
731
732
#endif
/* IPV6_EXTENSION_HEADER_H */
733
ns3::Ipv6ExtensionRoutingHeader::GetInstanceTypeId
virtual TypeId GetInstanceTypeId() const
Get the instance type ID.
Definition:
ipv6-extension-header.cc:414
ns3::Header
Protocol header serialization and deserialization.
Definition:
header.h:42
ns3::Ipv6ExtensionFragmentHeader::GetInstanceTypeId
virtual TypeId GetInstanceTypeId() const
Get the instance type ID.
Definition:
ipv6-extension-header.cc:323
ns3::Ipv6ExtensionHeader::m_length
uint8_t m_length
The "length" field.
Definition:
ipv6-extension-header.h:123
ns3::Ipv6ExtensionFragmentHeader::GetTypeId
static TypeId GetTypeId()
Get the type identificator.
Definition:
ipv6-extension-header.cc:314
ns3::Ipv6ExtensionHeader::GetSerializedSize
virtual uint32_t GetSerializedSize() const
Get the serialized size of the packet.
Definition:
ipv6-extension-header.cc:83
ns3::Ipv6ExtensionAHHeader::Deserialize
virtual uint32_t Deserialize(Buffer::Iterator start)
Deserialize the packet.
Definition:
ipv6-extension-header.cc:675
ns3::Ipv6ExtensionDestinationHeader::Deserialize
virtual uint32_t Deserialize(Buffer::Iterator start)
Deserialize the packet.
Definition:
ipv6-extension-header.cc:301
ns3::Ipv6ExtensionESPHeader
Header of IPv6 Extension ESP.
Definition:
ipv6-extension-header.h:622
ns3::Ipv6ExtensionLooseRoutingHeader::GetInstanceTypeId
virtual TypeId GetInstanceTypeId() const
Get the instance type ID.
Definition:
ipv6-extension-header.cc:493
ns3::Ipv6OptionHeader
Header for IPv6 Option.
Definition:
ipv6-option-header.h:35
ns3::OptionField::CalculatePad
uint32_t CalculatePad(Ipv6OptionHeader::Alignment alignment) const
Calculate padding.
Definition:
ipv6-extension-header.cc:186
ns3::Ipv6ExtensionRoutingHeader
Header of IPv6 Extension Routing.
Definition:
ipv6-extension-header.h:432
ns3::Ipv6ExtensionRoutingHeader::SetTypeRouting
void SetTypeRouting(uint8_t typeRouting)
Set the "Type of Routing" field.
Definition:
ipv6-extension-header.cc:429
ns3::Ipv6ExtensionFragmentHeader::m_offset
uint16_t m_offset
Offset of the fragment and More Fragment bit.
Definition:
ipv6-extension-header.h:420
ns3::Buffer
automatically resized byte buffer
Definition:
buffer.h:92
ns3::Ipv6ExtensionRoutingHeader::~Ipv6ExtensionRoutingHeader
virtual ~Ipv6ExtensionRoutingHeader()
Destructor.
Definition:
ipv6-extension-header.cc:425
ns3::Ipv6ExtensionRoutingHeader::GetTypeId
static TypeId GetTypeId()
Get the type identificator.
Definition:
ipv6-extension-header.cc:405
ns3::Ipv6ExtensionDestinationHeader::GetSerializedSize
virtual uint32_t GetSerializedSize() const
Get the serialized size of the packet.
Definition:
ipv6-extension-header.cc:287
ns3::Ipv6ExtensionLooseRoutingHeader::Print
virtual void Print(std::ostream &os) const
Print some informations about the packet.
Definition:
ipv6-extension-header.cc:533
ns3::Ipv6ExtensionFragmentHeader::Serialize
virtual void Serialize(Buffer::Iterator start) const
Serialize the packet.
Definition:
ipv6-extension-header.cc:381
ns3::OptionField::m_optionData
Buffer m_optionData
Data payload.
Definition:
ipv6-extension-header.h:205
visualizer.core.start
def start
Definition:
core.py:1482
ns3::OptionField::OptionField
OptionField(uint32_t optionsOffset)
Constructor.
Definition:
ipv6-extension-header.cc:124
ns3::Ipv6ExtensionHopByHopHeader::Serialize
virtual void Serialize(Buffer::Iterator start) const
Serialize the packet.
Definition:
ipv6-extension-header.cc:237
ns3::Ipv6ExtensionFragmentHeader::SetOffset
void SetOffset(uint16_t offset)
Set the "Offset" field.
Definition:
ipv6-extension-header.cc:338
ns3::Ipv6ExtensionESPHeader::GetTypeId
static TypeId GetTypeId()
Get the type identificator.
Definition:
ipv6-extension-header.cc:591
ns3::Ipv6ExtensionHopByHopHeader::GetTypeId
static TypeId GetTypeId()
Get the type identificator.
Definition:
ipv6-extension-header.cc:204
ipv6-option-header.h
ns3::Ipv6ExtensionRoutingHeader::Print
virtual void Print(std::ostream &os) const
Print some informations about the packet.
Definition:
ipv6-extension-header.cc:449
ns3::Ipv6OptionHeader::Alignment
represents the alignment requirements of an option header
Definition:
ipv6-option-header.h:46
ns3::Ipv6ExtensionAHHeader::Ipv6ExtensionAHHeader
Ipv6ExtensionAHHeader()
Constructor.
Definition:
ipv6-extension-header.cc:651
ns3::Ipv6ExtensionHopByHopHeader
Header of IPv6 Extension "Hop by Hop".
Definition:
ipv6-extension-header.h:217
ns3::Ipv6ExtensionLooseRoutingHeader::Serialize
virtual void Serialize(Buffer::Iterator start) const
Serialize the packet.
Definition:
ipv6-extension-header.cc:551
ns3::Buffer::Iterator
iterator in a Buffer instance
Definition:
buffer.h:98
ns3::OptionField::GetSerializedSize
uint32_t GetSerializedSize() const
Get the serialized size of the packet.
Definition:
ipv6-extension-header.cc:134
ns3::Ipv6ExtensionAHHeader::GetTypeId
static TypeId GetTypeId()
Get the type identificator.
Definition:
ipv6-extension-header.cc:637
ns3::Ipv6ExtensionAHHeader::GetSerializedSize
virtual uint32_t GetSerializedSize() const
Get the serialized size of the packet.
Definition:
ipv6-extension-header.cc:664
ns3::Ipv6ExtensionDestinationHeader::~Ipv6ExtensionDestinationHeader
virtual ~Ipv6ExtensionDestinationHeader()
Destructor.
Definition:
ipv6-extension-header.cc:278
ns3::Ipv6ExtensionHeader::m_nextHeader
uint8_t m_nextHeader
The "next header" field.
Definition:
ipv6-extension-header.h:118
ns3::Ipv6ExtensionLooseRoutingHeader::VectorIpv6Address_t
std::vector< Ipv6Address > VectorIpv6Address_t
A vector of IPv6 Address.
Definition:
ipv6-extension-header.h:610
ns3::Ipv6ExtensionLooseRoutingHeader
Header of IPv6 Extension Routing : Type 0 (Loose Routing)
Definition:
ipv6-extension-header.h:523
ns3::OptionField
Option field for an IPv6ExtensionHeader Enables adding options to an IPv6ExtensionHeader.
Definition:
ipv6-extension-header.h:141
ns3::Ipv6ExtensionHeader::GetTypeId
static TypeId GetTypeId()
Get the type identificator.
Definition:
ipv6-extension-header.cc:33
ns3::Ipv6ExtensionRoutingHeader::Deserialize
virtual uint32_t Deserialize(Buffer::Iterator start)
Deserialize the packet.
Definition:
ipv6-extension-header.cc:470
ns3::Ipv6ExtensionAHHeader
Header of IPv6 Extension AH.
Definition:
ipv6-extension-header.h:678
ns3::Ipv6ExtensionDestinationHeader::Serialize
virtual void Serialize(Buffer::Iterator start) const
Serialize the packet.
Definition:
ipv6-extension-header.cc:292
ns3::Ipv6ExtensionESPHeader::~Ipv6ExtensionESPHeader
virtual ~Ipv6ExtensionESPHeader()
Destructor.
Definition:
ipv6-extension-header.cc:609
ns3::Ipv6ExtensionESPHeader::Deserialize
virtual uint32_t Deserialize(Buffer::Iterator start)
Deserialize the packet.
Definition:
ipv6-extension-header.cc:629
ns3::Ipv6ExtensionLooseRoutingHeader::m_routersAddress
VectorIpv6Address_t m_routersAddress
The vector of Routers' IPv6 Address.
Definition:
ipv6-extension-header.h:615
ns3::Ipv6ExtensionFragmentHeader::SetMoreFragment
void SetMoreFragment(bool moreFragment)
Set the status of "More Fragment" bit.
Definition:
ipv6-extension-header.cc:350
ns3::Ipv6ExtensionAHHeader::Serialize
virtual void Serialize(Buffer::Iterator start) const
Serialize the packet.
Definition:
ipv6-extension-header.cc:670
ns3::Ipv6ExtensionFragmentHeader::SetIdentification
void SetIdentification(uint32_t identification)
Set the "Identification" field.
Definition:
ipv6-extension-header.cc:360
ns3::Ipv6ExtensionHeader::Serialize
virtual void Serialize(Buffer::Iterator start) const
Serialize the packet.
Definition:
ipv6-extension-header.cc:88
ns3::Ipv6ExtensionHopByHopHeader::Ipv6ExtensionHopByHopHeader
Ipv6ExtensionHopByHopHeader()
Constructor.
Definition:
ipv6-extension-header.cc:218
ns3::OptionField::m_optionsOffset
uint32_t m_optionsOffset
Offset.
Definition:
ipv6-extension-header.h:210
ns3::Ipv6ExtensionFragmentHeader::~Ipv6ExtensionFragmentHeader
virtual ~Ipv6ExtensionFragmentHeader()
Destructor.
Definition:
ipv6-extension-header.cc:334
ns3::Ipv6ExtensionFragmentHeader::GetSerializedSize
virtual uint32_t GetSerializedSize() const
Get the serialized size of the packet.
Definition:
ipv6-extension-header.cc:376
ns3::Ipv6ExtensionHeader::GetInstanceTypeId
virtual TypeId GetInstanceTypeId() const
Get the instance type ID.
Definition:
ipv6-extension-header.cc:42
ns3::Ipv6ExtensionDestinationHeader::Print
virtual void Print(std::ostream &os) const
Print some informations about the packet.
Definition:
ipv6-extension-header.cc:282
ns3::Ipv6ExtensionHeader::SetNextHeader
void SetNextHeader(uint8_t nextHeader)
Set the "Next header" field.
Definition:
ipv6-extension-header.cc:58
ns3::Ipv6ExtensionAHHeader::~Ipv6ExtensionAHHeader
virtual ~Ipv6ExtensionAHHeader()
Destructor.
Definition:
ipv6-extension-header.cc:655
ns3::Ipv6ExtensionHeader::m_data
Buffer m_data
The data of the extension.
Definition:
ipv6-extension-header.h:128
ns3::OptionField::GetOptionsOffset
uint32_t GetOptionsOffset()
Get the offset where the options begin, measured from the start of the extension header.
Definition:
ipv6-extension-header.cc:191
ns3::Ipv6ExtensionHeader::~Ipv6ExtensionHeader
virtual ~Ipv6ExtensionHeader()
Destructor.
Definition:
ipv6-extension-header.cc:54
ns3::Ipv6ExtensionHopByHopHeader::GetSerializedSize
virtual uint32_t GetSerializedSize() const
Get the serialized size of the packet.
Definition:
ipv6-extension-header.cc:232
ns3::Ipv6ExtensionLooseRoutingHeader::GetRouterAddress
Ipv6Address GetRouterAddress(uint8_t index) const
Get a Router IPv6 Address.
Definition:
ipv6-extension-header.cc:528
ns3::Ipv6ExtensionRoutingHeader::GetTypeRouting
uint8_t GetTypeRouting() const
Get the field "Type of Routing".
Definition:
ipv6-extension-header.cc:434
ns3::Ipv6ExtensionHeader::Print
virtual void Print(std::ostream &os) const
Print some informations about the packet.
Definition:
ipv6-extension-header.cc:78
ns3::Ipv6ExtensionDestinationHeader::GetInstanceTypeId
virtual TypeId GetInstanceTypeId() const
Get the instance type ID.
Definition:
ipv6-extension-header.cc:268
ns3::Ipv6ExtensionRoutingHeader::GetSerializedSize
virtual uint32_t GetSerializedSize() const
Get the serialized size of the packet.
Definition:
ipv6-extension-header.cc:455
ns3::Ipv6ExtensionFragmentHeader::Ipv6ExtensionFragmentHeader
Ipv6ExtensionFragmentHeader()
Constructor.
Definition:
ipv6-extension-header.cc:328
ns3::Ipv6ExtensionFragmentHeader::GetMoreFragment
bool GetMoreFragment() const
Get the status of "More Fragment" bit.
Definition:
ipv6-extension-header.cc:355
ns3::Ipv6ExtensionHeader::Deserialize
virtual uint32_t Deserialize(Buffer::Iterator start)
Deserialize the packet.
Definition:
ipv6-extension-header.cc:97
ns3::Ipv6ExtensionFragmentHeader::m_identification
uint32_t m_identification
Identifier of the packet.
Definition:
ipv6-extension-header.h:425
ns3::Ipv6ExtensionRoutingHeader::GetSegmentsLeft
uint8_t GetSegmentsLeft() const
Get the field "Segments left".
Definition:
ipv6-extension-header.cc:444
ns3::Ipv6ExtensionHeader::GetNextHeader
uint8_t GetNextHeader() const
Get the next header.
Definition:
ipv6-extension-header.cc:63
ns3::Ipv6ExtensionRoutingHeader::Ipv6ExtensionRoutingHeader
Ipv6ExtensionRoutingHeader()
Constructor.
Definition:
ipv6-extension-header.cc:419
ns3::Ipv6Address
Describes an IPv6 address.
Definition:
ipv6-address.h:46
ns3::Ipv6ExtensionLooseRoutingHeader::SetRoutersAddress
void SetRoutersAddress(std::vector< Ipv6Address > routersAddress)
Set the vector of routers' address.
Definition:
ipv6-extension-header.cc:513
ns3::Ipv6ExtensionESPHeader::GetSerializedSize
virtual uint32_t GetSerializedSize() const
Get the serialized size of the packet.
Definition:
ipv6-extension-header.cc:618
ns3::Ipv6ExtensionAHHeader::Print
virtual void Print(std::ostream &os) const
Print some informations about the packet.
Definition:
ipv6-extension-header.cc:659
ns3::OptionField::AddOption
void AddOption(Ipv6OptionHeader const &option)
Serialize the option, prepending pad1 or padn option as necessary.
Definition:
ipv6-extension-header.cc:165
ns3::OptionField::~OptionField
~OptionField()
Destructor.
Definition:
ipv6-extension-header.cc:130
ns3::Ipv6ExtensionFragmentHeader::GetIdentification
uint32_t GetIdentification() const
Get the field "Identification".
Definition:
ipv6-extension-header.cc:365
ns3::Ipv6ExtensionDestinationHeader
Header of IPv6 Extension Destination.
Definition:
ipv6-extension-header.h:273
ns3::OptionField::Deserialize
uint32_t Deserialize(Buffer::Iterator start, uint32_t length)
Deserialize the packet.
Definition:
ipv6-extension-header.cc:154
ns3::OptionField::GetOptionBuffer
Buffer GetOptionBuffer()
Get the buffer.
Definition:
ipv6-extension-header.cc:196
ns3::Ipv6ExtensionHeader
Header for IPv6 Extension.
Definition:
ipv6-extension-header.h:39
ns3::Ipv6ExtensionLooseRoutingHeader::GetRoutersAddress
std::vector< Ipv6Address > GetRoutersAddress() const
Get the vector of routers' address.
Definition:
ipv6-extension-header.cc:518
ns3::Ipv6ExtensionRoutingHeader::m_typeRouting
uint8_t m_typeRouting
Type of routing.
Definition:
ipv6-extension-header.h:511
ns3::Ipv6ExtensionLooseRoutingHeader::GetSerializedSize
virtual uint32_t GetSerializedSize() const
Get the serialized size of the packet.
Definition:
ipv6-extension-header.cc:546
ns3::Ipv6ExtensionFragmentHeader
Header of IPv6 Extension Fragment.
Definition:
ipv6-extension-header.h:329
ns3::Ipv6ExtensionLooseRoutingHeader::Ipv6ExtensionLooseRoutingHeader
Ipv6ExtensionLooseRoutingHeader()
Constructor.
Definition:
ipv6-extension-header.cc:498
ns3::Ipv6ExtensionESPHeader::Ipv6ExtensionESPHeader
Ipv6ExtensionESPHeader()
Constructor.
Definition:
ipv6-extension-header.cc:605
ns3::Ipv6ExtensionHeader::SetLength
void SetLength(uint16_t length)
Definition:
ipv6-extension-header.cc:68
ns3::Ipv6ExtensionHopByHopHeader::~Ipv6ExtensionHopByHopHeader
virtual ~Ipv6ExtensionHopByHopHeader()
Destructor.
Definition:
ipv6-extension-header.cc:223
ns3::Ipv6ExtensionESPHeader::Serialize
virtual void Serialize(Buffer::Iterator start) const
Serialize the packet.
Definition:
ipv6-extension-header.cc:624
ns3::Ipv6ExtensionAHHeader::GetInstanceTypeId
virtual TypeId GetInstanceTypeId() const
Get the instance type ID.
Definition:
ipv6-extension-header.cc:646
ns3::Ipv6ExtensionLooseRoutingHeader::GetTypeId
static TypeId GetTypeId()
Get the type identificator.
Definition:
ipv6-extension-header.cc:484
ns3::Ipv6ExtensionFragmentHeader::Deserialize
virtual uint32_t Deserialize(Buffer::Iterator start)
Deserialize the packet.
Definition:
ipv6-extension-header.cc:391
ns3::Ipv6ExtensionESPHeader::GetInstanceTypeId
virtual TypeId GetInstanceTypeId() const
Get the instance type ID.
Definition:
ipv6-extension-header.cc:600
ns3::Ipv6ExtensionRoutingHeader::m_segmentsLeft
uint8_t m_segmentsLeft
Number of left segments.
Definition:
ipv6-extension-header.h:516
ns3::OptionField::Serialize
void Serialize(Buffer::Iterator start) const
Serialize all added options.
Definition:
ipv6-extension-header.cc:139
ns3::Ipv6ExtensionHopByHopHeader::Deserialize
virtual uint32_t Deserialize(Buffer::Iterator start)
Deserialize the packet.
Definition:
ipv6-extension-header.cc:246
ns3::Ipv6ExtensionFragmentHeader::GetOffset
uint16_t GetOffset() const
Get the field "Offset".
Definition:
ipv6-extension-header.cc:345
ns3::Ipv6ExtensionDestinationHeader::Ipv6ExtensionDestinationHeader
Ipv6ExtensionDestinationHeader()
Constructor.
Definition:
ipv6-extension-header.cc:273
ns3::Ipv6ExtensionHeader::GetLength
uint16_t GetLength() const
Get the length of the extension.
Definition:
ipv6-extension-header.cc:73
ns3::Ipv6ExtensionHopByHopHeader::GetInstanceTypeId
virtual TypeId GetInstanceTypeId() const
Get the instance type ID.
Definition:
ipv6-extension-header.cc:213
ns3::Ipv6ExtensionHopByHopHeader::Print
virtual void Print(std::ostream &os) const
Print some informations about the packet.
Definition:
ipv6-extension-header.cc:227
ns3::Ipv6ExtensionLooseRoutingHeader::SetRouterAddress
void SetRouterAddress(uint8_t index, Ipv6Address addr)
Set a Router IPv6 Address.
Definition:
ipv6-extension-header.cc:523
ns3::Ipv6ExtensionRoutingHeader::Serialize
virtual void Serialize(Buffer::Iterator start) const
Serialize the packet.
Definition:
ipv6-extension-header.cc:460
ns3::Ipv6ExtensionLooseRoutingHeader::SetNumberAddress
void SetNumberAddress(uint8_t n)
Set the number of routers' address.
Definition:
ipv6-extension-header.cc:507
ns3::TypeId
a unique identifier for an interface.
Definition:
type-id.h:49
ns3::Ipv6ExtensionLooseRoutingHeader::Deserialize
virtual uint32_t Deserialize(Buffer::Iterator start)
Deserialize the packet.
Definition:
ipv6-extension-header.cc:569
ns3::Ipv6ExtensionFragmentHeader::Print
virtual void Print(std::ostream &os) const
Print some informations about the packet.
Definition:
ipv6-extension-header.cc:370
ns3::Ipv6ExtensionHeader::Ipv6ExtensionHeader
Ipv6ExtensionHeader()
Constructor.
Definition:
ipv6-extension-header.cc:47
ns3::Ipv6ExtensionLooseRoutingHeader::~Ipv6ExtensionLooseRoutingHeader
virtual ~Ipv6ExtensionLooseRoutingHeader()
Destructor.
Definition:
ipv6-extension-header.cc:503
ns3::Ipv6ExtensionESPHeader::Print
virtual void Print(std::ostream &os) const
Print some informations about the packet.
Definition:
ipv6-extension-header.cc:613
ns3::Ipv6ExtensionDestinationHeader::GetTypeId
static TypeId GetTypeId()
Get the type identificator.
Definition:
ipv6-extension-header.cc:259
ns3::Ipv6ExtensionRoutingHeader::SetSegmentsLeft
void SetSegmentsLeft(uint8_t segmentsLeft)
Set the "Segments left" field.
Definition:
ipv6-extension-header.cc:439
src
internet
model
ipv6-extension-header.h
Generated on Sat Nov 16 2013 16:17:41 for ns-3 by
1.8.5