00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #ifndef __TCP_SOCKET_H__
00024 #define __TCP_SOCKET_H__
00025
00026 #include "socket.h"
00027 #include "ns3/traced-callback.h"
00028 #include "ns3/callback.h"
00029 #include "ns3/ptr.h"
00030 #include "ns3/object.h"
00031 #include "ns3/nstime.h"
00032
00033 namespace ns3 {
00034
00035 class Node;
00036 class Packet;
00037
00038
00039
00040
00041
00042
00043
00044
00045
00046 class TcpSocket : public Socket
00047 {
00048 public:
00049 static TypeId GetTypeId (void);
00050
00051 TcpSocket (void);
00052 virtual ~TcpSocket (void);
00053
00054 private:
00055
00056 virtual void SetSndBufSize (uint32_t size) = 0;
00057 virtual uint32_t GetSndBufSize (void) const = 0;
00058 virtual void SetRcvBufSize (uint32_t size) = 0;
00059 virtual uint32_t GetRcvBufSize (void) const = 0;
00060 virtual void SetSegSize (uint32_t size) = 0;
00061 virtual uint32_t GetSegSize (void) const = 0;
00062 virtual void SetSSThresh (uint32_t threshold) = 0;
00063 virtual uint32_t GetSSThresh (void) const = 0;
00064 virtual void SetInitialCwnd (uint32_t count) = 0;
00065 virtual uint32_t GetInitialCwnd (void) const = 0;
00066 virtual void SetConnTimeout (Time timeout) = 0;
00067 virtual Time GetConnTimeout (void) const = 0;
00068 virtual void SetConnCount (uint32_t count) = 0;
00069 virtual uint32_t GetConnCount (void) const = 0;
00070 virtual void SetDelAckTimeout (Time timeout) = 0;
00071 virtual Time GetDelAckTimeout (void) const = 0;
00072 virtual void SetDelAckMaxCount (uint32_t count) = 0;
00073 virtual uint32_t GetDelAckMaxCount (void) const = 0;
00074
00075 };
00076
00077 }
00078
00079 #endif
00080
00081