An alternate implementation of TCP for ns-3 is provided by the Network Simulation Cradle (NSC) project. More...
Collaboration diagram for NscTcp:Classes | |
| struct | IInterruptCallback |
| Struct interface to NSC soft interrupt capabilities. More... | |
| struct | INetDatagramSocket |
| Struct interface to NSC Datagram (i.e., UDP) Sockets. More... | |
| struct | INetStack |
| Struct interface to NSC stack. More... | |
| struct | INetStreamSocket |
| Struct interface to NSC Stream (i.e., TCP) Sockets. More... | |
| struct | ISendCallback |
| Struct interface to NSC send capabilities. More... | |
| class | ns3::Ns3NscStack |
| This object represents the underlying nsc stack, which is aggregated to a Node object, and which provides access to the sysctls of the nsc stack through attributes. More... | |
| class | ns3::NscInterfaceImpl |
| Nsc interface implementation class. More... | |
| class | ns3::NscStackStringAccessor |
| This object represent the underlying nsc stack attributes and provide a ns-3-like system to access them though sysctls. More... | |
| class | ns3::NscTcpL4Protocol |
| Nsc wrapper glue, to interface with the Ipv4 protocol underneath. More... | |
| class | ns3::NscTcpSocketFactoryImpl |
| socket factory implementation for creating instances of NSC TCP More... | |
| class | ns3::NscTcpSocketImpl |
| Socket logic for the NSC TCP sockets. More... | |
Enumerations | |
| enum | nsc_errno { NSC_EUNKNOWN = -1, NSC_EADDRINUSE = -10, NSC_EADDRNOTAVAIL = -11, NSC_EAGAIN = -12, NSC_EALREADY = -25, NSC_ECONNREFUSED = -32, NSC_ECONNRESET = -33, NSC_EHOSTDOWN = -50, NSC_EHOSTUNREACH = -51, NSC_EINPROGRESS = -60, NSC_EISCONN = -61, NSC_EMSGSIZE = -70, NSC_ENETUNREACH = -82, NSC_ENOTCONN = -86, NSC_ENOTDIR = -87, NSC_ESHUTDOWN = -130, NSC_ETIMEDOUT = -140 } |
| List of network stack errors that may happen in a simulation, and can be handled by the simulator in a sane way. More... | |
An alternate implementation of TCP for ns-3 is provided by the Network Simulation Cradle (NSC) project.
NSC is a separately linked library that provides ported TCP stacks from popular operating systems such as Linux and FreeBSD. Glue code such as the ns-3 NSC code allows users to delegate Internet stack processing to the logic from these operating systems. This allows a user to reproduce with high fidelity the behavior of a real TCP stack.
| enum nsc_errno |
List of network stack errors that may happen in a simulation, and can be handled by the simulator in a sane way.
Note that NSC handles several errors internally though nsc_assert, BUG() and friends, because they (should) never happen in a simulation (e.g. ESOCKTNOSUPPORT).
These values are returned by the various methods provided by nsc. They must always be < 0, as values >= 0 are a success indicator; e.g. send_data() will return the number of bytes sent or one of the nsc_errno numbers below, accept() will return 0 on success or one of the nsc_errno numbers below, etc.
Definition at line 41 of file sim_errno.h.