IT++ Logo
Classes | Public Member Functions | Protected Attributes | Friends | List of all members
itpp::TCP_Packet Class Reference

#include <itpp/protocol/tcp.h>

Inheritance diagram for itpp::TCP_Packet:
itpp::Packet

Classes

struct  TDebugInfo
 ADD DOCUMENTATION HERE. More...
 

Public Member Functions

 TCP_Packet ()
 ADD DOCUMENTATION HERE.
 
 TCP_Packet (const TCP_Packet &packet)
 ADD DOCUMENTATION HERE.
 
virtual ~TCP_Packet ()
 ADD DOCUMENTATION HERE.
 
virtual TCP_Packetclone () const
 ADD DOCUMENTATION HERE.
 
void set_segment (const TCP_Segment &seg)
 ADD DOCUMENTATION HERE.
 
TCP_Segment get_segment () const
 ADD DOCUMENTATION HERE.
 
void set_wnd (unsigned val)
 ADD DOCUMENTATION HERE.
 
unsigned get_wnd () const
 ADD DOCUMENTATION HERE.
 
void set_ACK (Sequence_Number val)
 ADD DOCUMENTATION HERE.
 
Sequence_Number get_ACK () const
 ADD DOCUMENTATION HERE.
 
void set_session_id (int val)
 ADD DOCUMENTATION HERE.
 
int get_session_id () const
 ADD DOCUMENTATION HERE.
 
void set_destination_port (unsigned val)
 ADD DOCUMENTATION HERE.
 
unsigned get_destination_port () const
 ADD DOCUMENTATION HERE.
 
void set_source_port (unsigned val)
 ADD DOCUMENTATION HERE.
 
unsigned get_source_port () const
 ADD DOCUMENTATION HERE.
 
void set_info (unsigned ssThresh, unsigned recWnd, unsigned cWnd, double estRTT, Sequence_Number sndUna, Sequence_Number sndNxt, bool isRtx)
 ADD DOCUMENTATION HERE.
 
virtual void print_header (std::ostream &) const
 ADD DOCUMENTATION HERE.
 
void set_bit_size (int packet_size)
 set size of packet in bits
 
int bit_size ()
 get size of packet in bits
 

Protected Attributes

unsigned fDestinationPort
 ADD DOCUMENTATION HERE.
 
unsigned fSourcePort
 ADD DOCUMENTATION HERE.
 
TCP_Segment fSegment
 data segment to be transmitted
 
Sequence_Number fACK
 acknowledgment (next expected sn)
 
unsigned fWnd
 window size (advertised by receiver)
 
int fSessionId
 session identifier
 
TDebugInfofInfo
 ADD DOCUMENTATION HERE.
 

Friends

std::ostream & operator<< (std::ostream &, TCP_Packet &)
 ADD DOCUMENTATION HERE.
 

Detailed Description

TCP_Packet is an IP packet with additional TCP header fields. Messages of this type are used for communication between TCP sender and receiver (data and ACKs).

The class contains a segment of type TCP_Segment with sequence numbers for begin and end of the segment. This is only used in data packets (i.e. from sender to receiver) while there are also fields containing sequence number for the next expected segment (used to ACK data packets, i.e. from receiver to sender) and for the advertised receiver window.

TCP_Packet has an additional field for the session id which my be compared with the pair (source port, destination port) in a real world TCP/IP packet.

Furthermore, some debug info containing state information for TCP sender or receiver may be attached to the message.

See Also
TCP_Segment
TCP_Packet::TDebugInfo
Author
Grevent
Lorang
Bodamer

Definition at line 211 of file tcp.h.


The documentation for this class was generated from the following file:
SourceForge Logo

Generated on Sat Jul 6 2013 10:54:34 for IT++ by Doxygen 1.8.2