Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/canndrew/netsim
/ types & classes
Types & classes
35 in github.com/canndrew/netsim
⨍
Functions
164
◇
Types & classes
35
Class
BiChannel
A bi-directional channel where both ends can both send and receive items.
src/device/channel.rs:5
Class
BuildConfig
src/iface/create.rs:3
Class
CbData
src/namespace.rs:98
Class
Delay
src/adapter/delay.rs:8
Class
DelayQueue
src/adapter/delay.rs:24
Class
IpChannel
A bi-directional channel for sending/receiving IP packets.
src/device/channel.rs:61
Class
IpHub
A simple IP network hub. Insert any number of interfaces into the hub and any packet received on one will be forwarded to all other interfaces.
src/device/hub.rs:7
Class
IpHubTask
src/device/hub.rs:11
Class
IpIface
A handle to a network interface of a [`Machine`](crate::Machine). This can be dropped to remove the interface. It also implements `Stream`+`Sink` in
src/iface/stream.rs:10
Class
IpIfaceBuilder
Builder for adding an IP interface to a [`Machine`](crate::Machine). Once you're done configuring the interface you must `await` the builder to actua
src/iface/create.rs:15
Enum
IpPacketVersion
src/packet.rs:237
Interface
IpSinkStream
Helper trait for types which are both `Sink`s and `Stream`s of `Box<IpPacket>`.
src/iface/stream.rs:138
Class
Ipv4Hasher
src/packet.rs:16
Class
Ipv4Network
src/network.rs:55
Class
Ipv4NetworkIter
An iterator over the IPv4 addresses in an [`Ipv4Network`](crate::Ipv4Network).
src/network.rs:371
Enum
Ipv4PacketProtocol
src/packet.rs:301
Class
Ipv6Network
src/network.rs:62
Class
Ipv6NetworkIter
An iterator over the IPv6 addresses in an [`Ipv6Network`](crate::Ipv6Network).
src/network.rs:426
Enum
Ipv6PacketProtocol
src/packet.rs:392
Class
Jitter
src/adapter/loss.rs:13
Class
JoinHandle
A handle to a future executing on a [`Machine`](crate::Machine). You can await a `JoinHandle` (or call [`join`](crate::JoinHandle::join)) to get the
src/machine.rs:21
Class
JoinHandle
src/namespace.rs:5
Class
Loss
src/adapter/loss.rs:7
Class
Machine
The entry point for this library. A machine has its own tokio runtime running in a separate network-isolated thread. Use [`spawn`](crate::Machine::sp
src/machine.rs:11
Class
Nat
A simple NAT (network address translation) implementation. For testing network code across NATs.
src/device/nat/mod.rs:14
Class
NatBuilder
Builder for creating a [`Nat`](crate::device::Nat).
src/device/nat/mod.rs:19
Class
NatTask
src/device/nat/mod.rs:113
Class
NetworkParseError
src/network.rs:352
Interface
Pointer
src/packet.rs:189
Class
PortMap
src/device/nat/port_map.rs:3
Enum
Restrictions
src/device/nat/restrictions.rs:3
Interface
SinkStreamExt
Extension trait for types which are both `Sink`s and `Stream`s.
src/stream_ext.rs:4
Class
TcpPacketFlags
src/packet.rs:155
Class
ifaddrmsg
src/sys.rs:5
Class
rtattr
src/sys.rs:15