A Discrete-Event Network Simulator
API
Loading...
Searching...
No Matches
ns3::TcpOptionEnd Class Reference

Defines the TCP option of kind 0 (end of option list) as in RFC 793 More...

#include "tcp-option-rfc793.h"

+ Inheritance diagram for ns3::TcpOptionEnd:
+ Collaboration diagram for ns3::TcpOptionEnd:

Public Member Functions

 TcpOptionEnd ()
 
 ~TcpOptionEnd () override
 
uint32_t Deserialize (Buffer::Iterator start) override
 Deserialize the Option from a buffer iterator.
 
TypeId GetInstanceTypeId () const override
 Get the most derived TypeId for this Object.
 
uint8_t GetKind () const override
 Get the ‘kind’ (as in RFC 793 ) of this option.
 
uint32_t GetSerializedSize () const override
 Returns number of bytes required for Option serialization.
 
void Print (std::ostream &os) const override
 Print the Option contents.
 
void Serialize (Buffer::Iterator start) const override
 Serialize the Option to a buffer iterator.
 
- Public Member Functions inherited from ns3::TcpOption
 TcpOption ()
 
 ~TcpOption () override
 
- Public Member Functions inherited from ns3::Object
 Object ()
 Constructor.
 
 ~Object () override
 Destructor.
 
void AggregateObject (Ptr< Object > other)
 Aggregate two Objects together.
 
void Dispose ()
 Dispose of this Object.
 
AggregateIterator GetAggregateIterator () const
 Get an iterator to the Objects aggregated to this one.
 
template<typename T >
Ptr< T > GetObject () const
 Get a pointer to the requested aggregated Object.
 
template<>
Ptr< ObjectGetObject () const
 Specialization of () for objects of type ns3::Object.
 
template<typename T >
Ptr< T > GetObject (TypeId tid) const
 Get a pointer to the requested aggregated Object by TypeId.
 
template<>
Ptr< ObjectGetObject (TypeId tid) const
 Specialization of (TypeId tid) for objects of type ns3::Object.
 
void Initialize ()
 Invoke DoInitialize on all Objects aggregated to this one.
 
bool IsInitialized () const
 Check if the object has been initialized.
 
void UnidirectionalAggregateObject (Ptr< Object > other)
 Aggregate an Object to another Object.
 
- Public Member Functions inherited from ns3::SimpleRefCount< Object, ObjectBase, ObjectDeleter >
 SimpleRefCount ()
 Default constructor.
 
 SimpleRefCount (const SimpleRefCount &o)
 Copy constructor.
 
uint32_t GetReferenceCount () const
 Get the reference count of the object.
 
SimpleRefCountoperator= (const SimpleRefCount &o)
 Assignment operator.
 
void Ref () const
 Increment the reference count.
 
void Unref () const
 Decrement the reference count.
 
- Public Member Functions inherited from ns3::ObjectBase
virtual ~ObjectBase ()
 Virtual destructor.
 
void GetAttribute (std::string name, AttributeValue &value, bool permissive=false) const
 Get the value of an attribute, raising fatal errors if unsuccessful.
 
bool GetAttributeFailSafe (std::string name, AttributeValue &value) const
 Get the value of an attribute without raising errors.
 
void SetAttribute (std::string name, const AttributeValue &value)
 Set a single attribute, raising fatal errors if unsuccessful.
 
bool SetAttributeFailSafe (std::string name, const AttributeValue &value)
 Set a single attribute without raising errors.
 
bool TraceConnect (std::string name, std::string context, const CallbackBase &cb)
 Connect a TraceSource to a Callback with a context.
 
bool TraceConnectWithoutContext (std::string name, const CallbackBase &cb)
 Connect a TraceSource to a Callback without a context.
 
bool TraceDisconnect (std::string name, std::string context, const CallbackBase &cb)
 Disconnect from a TraceSource a Callback previously connected with a context.
 
bool TraceDisconnectWithoutContext (std::string name, const CallbackBase &cb)
 Disconnect from a TraceSource a Callback previously connected without a context.
 

Static Public Member Functions

static TypeId GetTypeId ()
 Get the type ID.
 
- Static Public Member Functions inherited from ns3::TcpOption
static Ptr< TcpOptionCreateOption (uint8_t kind)
 Creates an option.
 
static TypeId GetTypeId ()
 Get the type ID.
 
static bool IsKindKnown (uint8_t kind)
 Check if the option is implemented.
 
- Static Public Member Functions inherited from ns3::Object
static TypeId GetTypeId ()
 Register this type.
 
- Static Public Member Functions inherited from ns3::ObjectBase
static TypeId GetTypeId ()
 Get the type ID.
 

Additional Inherited Members

- Public Types inherited from ns3::TcpOption
enum  Kind {
  END = 0 , NOP = 1 , MSS = 2 , WINSCALE = 3 ,
  SACKPERMITTED = 4 , SACK = 5 , TS = 8 , UNKNOWN = 255
}
 The option Kind, as defined in the respective RFCs. More...
 
- Protected Member Functions inherited from ns3::Object
 Object (const Object &o)
 Copy an Object.
 
virtual void DoDispose ()
 Destructor implementation.
 
virtual void DoInitialize ()
 Initialize() implementation.
 
virtual void NotifyNewAggregate ()
 Notify all Objects aggregated to this one of a new Object being aggregated.
 
- Protected Member Functions inherited from ns3::ObjectBase
void ConstructSelf (const AttributeConstructionList &attributes)
 Complete construction of ObjectBase; invoked by derived classes.
 
virtual void NotifyConstructionCompleted ()
 Notifier called once the ObjectBase is fully constructed.
 

Detailed Description

Defines the TCP option of kind 0 (end of option list) as in RFC 793

Definition at line 21 of file tcp-option-rfc793.h.

Constructor & Destructor Documentation

◆ TcpOptionEnd()

ns3::TcpOptionEnd::TcpOptionEnd ( )

Definition at line 22 of file tcp-option-rfc793.cc.

◆ ~TcpOptionEnd()

ns3::TcpOptionEnd::~TcpOptionEnd ( )
override

Definition at line 27 of file tcp-option-rfc793.cc.

Member Function Documentation

◆ Deserialize()

uint32_t ns3::TcpOptionEnd::Deserialize ( Buffer::Iterator start)
overridevirtual

Deserialize the Option from a buffer iterator.

Parameters
startthe buffer iterator
Returns
the number of deserialized bytes

Implements ns3::TcpOption.

Definition at line 67 of file tcp-option-rfc793.cc.

References GetKind(), GetSerializedSize(), NS_LOG_WARN, and ns3::Buffer::Iterator::ReadU8().

+ Here is the call graph for this function:

◆ GetInstanceTypeId()

TypeId ns3::TcpOptionEnd::GetInstanceTypeId ( ) const
overridevirtual

Get the most derived TypeId for this Object.

This method is typically implemented by ns3::Object::GetInstanceTypeId but some classes which derive from ns3::ObjectBase directly have to implement it themselves.

Returns
The TypeId associated to the most-derived type of this instance.

Reimplemented from ns3::TcpOption.

Definition at line 42 of file tcp-option-rfc793.cc.

References GetTypeId().

+ Here is the call graph for this function:

◆ GetKind()

uint8_t ns3::TcpOptionEnd::GetKind ( ) const
overridevirtual

Get the ‘kind’ (as in RFC 793 ) of this option.

Returns
the Option Kind

Implements ns3::TcpOption.

Definition at line 83 of file tcp-option-rfc793.cc.

References ns3::TcpOption::END.

Referenced by Deserialize(), and Serialize().

+ Here is the caller graph for this function:

◆ GetSerializedSize()

uint32_t ns3::TcpOptionEnd::GetSerializedSize ( ) const
overridevirtual

Returns number of bytes required for Option serialization.

Returns
number of bytes required for Option serialization

Implements ns3::TcpOption.

Definition at line 54 of file tcp-option-rfc793.cc.

Referenced by Deserialize().

+ Here is the caller graph for this function:

◆ GetTypeId()

TypeId ns3::TcpOptionEnd::GetTypeId ( )
static

Get the type ID.

Returns
the object TypeId

Definition at line 32 of file tcp-option-rfc793.cc.

References ns3::TypeId::SetParent().

Referenced by ns3::TcpOption::CreateOption(), and GetInstanceTypeId().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ Print()

void ns3::TcpOptionEnd::Print ( std::ostream & os) const
overridevirtual

Print the Option contents.

Parameters
osthe output stream

Implements ns3::TcpOption.

Definition at line 48 of file tcp-option-rfc793.cc.

◆ Serialize()

void ns3::TcpOptionEnd::Serialize ( Buffer::Iterator start) const
overridevirtual

Serialize the Option to a buffer iterator.

Parameters
startthe buffer iterator

Implements ns3::TcpOption.

Definition at line 60 of file tcp-option-rfc793.cc.

References GetKind(), and ns3::Buffer::Iterator::WriteU8().

+ Here is the call graph for this function:

The documentation for this class was generated from the following files: