Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/NetSys/NetBricks
/ types & classes
Types & classes
118 in github.com/NetSys/NetBricks
⨍
Functions
801
◇
Types & classes
118
Class
Acl
test/acl-fw/src/nf.rs:11
Interface
Act
framework/src/operators/act.rs:4
Class
AddMetadataBatch
framework/src/operators/add_metadata.rs:12
Class
BarrierHandle
A handle to schedulers paused on a barrier.
framework/src/scheduler/context.rs:16
Interface
Batch
Public trait implemented by every packet batch type. This trait should be used as a constraint for any functions or places where a Batch type is requi
framework/src/operators/mod.rs:57
Interface
BatchIterator
An interface implemented by all batches for iterating through the set of packets in a batch. This is private to the framework and not exposed. # Safe
framework/src/operators/iterator.rs:20
Class
Bitmask
framework/src/native/libnuma.rs:92
Class
CacheAligned
framework/src/allocators/cache_aligned.rs:13
Class
CompositionBatch
`CompositionBatch` allows multiple NFs to be combined. A composition batch resets the packet pointer so that each NF can treat packets as originating
framework/src/operators/composition_batch.rs:13
Class
ControlListener
test/sctp-test/src/control.rs:7
Class
ControlListener
test/sctp-test/control-test/src/control.rs:6
Class
CpMergeableStoreControlPlane
framework/src/state/cp_mergeable.rs:31
Class
CpMergeableStoreDataPath
framework/src/state/cp_mergeable.rs:21
Class
DepTask
test/embedded-scheduler-dependency-test/src/main.rs:9
Class
DeparsedBatch
framework/src/operators/deparsed_batch.rs:9
Class
Directory
framework/src/shared_state/directory.rs:26
Class
DirectoryEntry
framework/src/shared_state/directory.rs:22
Class
DirectoryHeader
framework/src/shared_state/directory.rs:13
Class
DpMergeableStore
framework/src/state/dp_mergeable.rs:20
Class
EmbeddedScheduler
This scheduler is designed to allow NetBricks to be embedded in other vswitches (e.g., Bess). As a result it neither does any of the resource accounti
framework/src/scheduler/embedded_scheduler.rs:24
Class
Empty
test/lpm-embedded/src/nf.rs:23
Class
Empty
test/lpm/src/nf.rs:23
Class
EmptyMetadata
Null metadata associated with packets initially.
framework/src/common/mod.rs:5
Interface
EndOffset
A trait implemented by all headers, used for reading them from a mbuf.
framework/src/headers/mod.rs:13
Interface
Executable
framework/src/scheduler/mod.rs:13
Class
FilterBatch
framework/src/operators/filter_batch.rs:12
Class
Flow
framework/src/utils/flow.rs:12
Class
FlowUsed
test/nat/src/nf.rs:14
Class
GroupBy
framework/src/operators/group_by.rs:15
Class
GroupByProducer
framework/src/operators/group_by.rs:27
Class
IOScheduler
framework/src/control/mod.rs:20
Class
IPLookup
test/lpm-embedded/src/nf.rs:12
Class
IPLookup
test/lpm/src/nf.rs:12
Enum
InsertionResult
Results from inserting into `ReorderedBuffer`
framework/src/state/reordered_buffer/reordered_buffer.rs:8
Class
IpHeader
framework/src/headers/ip.rs:14
Class
Ipv4Prefix
framework/src/utils/flow.rs:21
Class
MacAddress
framework/src/headers/mac.rs:10
Class
MacHeader
framework/src/headers/mac.rs:71
Class
Maglev
test/maglev/src/nf.rs:14
Class
MapBatch
framework/src/operators/map_batch.rs:13
Class
MergeBatch
framework/src/operators/merge_batch.rs:10
Class
MergeableStoreCP
framework/src/state/mergeable.rs:27
Class
MergeableStoreDP
framework/src/state/mergeable.rs:103
Class
MpscConsumer
framework/src/queues/mpsc_mbuf_queue.rs:239
Class
MpscProducer
framework/src/queues/mpsc_mbuf_queue.rs:215
Class
MpscQueue
A multiproducer single consumer queue for mbufs. The main difference when compared to `std::sync::mpsc` is that this does not use a linked list (to av
framework/src/queues/mpsc_mbuf_queue.rs:22
Class
MutableAddMetadataBatch
framework/src/operators/add_metadata_mut.rs:12
Class
NetBricksContext
framework/src/scheduler/context.rs:36
Class
NetbricksConfiguration
`NetBricks` control configuration. In theory all applications create one of these, either through the use of `read_configuration` or manually using ar
framework/src/config/mod.rs:9
Class
NullHeader
framework/src/headers/null_header.rs:6
Class
NumaBitmap
framework/src/native/libnuma.rs:87
Class
Packet
framework/src/interface/packet.rs:12
Class
PacketBatch
Base packet batch structure, this represents an array of mbufs and is the primary interface for sending and receiving packets from DPDK, allocations,
framework/src/operators/packet_batch.rs:13
Class
PacketCreator
test/packet_generation/src/nf.rs:9
Class
PacketDescriptor
framework/src/operators/iterator.rs:6
Interface
PacketRx
Generic trait for objects that can receive packets.
framework/src/interface/mod.rs:10
Interface
PacketRxTx
framework/src/interface/mod.rs:19
Interface
PacketTx
Generic trait for objects that can send packets.
framework/src/interface/mod.rs:15
Class
ParsedBatch
framework/src/operators/parsed_batch.rs:10
Class
ParsedDescriptor
A struct containing the parsed information returned by the `PayloadEnumerator`.
framework/src/operators/iterator.rs:32
Class
PayloadEnumerator
An enumerator over both the header and the payload. The payload is represented as an appropriately sized slice of bytes. The expectation is therefore
framework/src/operators/iterator.rs:44
Class
PmdPort
A DPDK based PMD port. Send and receive should not be called directly on this structure but on the port queue structure instead.
framework/src/interface/port/phy_port.rs:17
Class
PollHandle
framework/src/control/linux/epoll.rs:10
Class
PollScheduler
framework/src/control/linux/epoll.rs:50
Class
PortConfiguration
Configuration for each port (network device) in `NetBricks`.
framework/src/config/mod.rs:82
Class
PortQueue
framework/src/interface/port/phy_port.rs:29
Class
PortStats
Statistics for PMD port.
framework/src/interface/port/mod.rs:12
Class
QueueMetadata
framework/src/queues/mpsc_mbuf_queue.rs:14
Class
ReceiveBatch
framework/src/operators/receive_batch.rs:9
Class
ReorderedBuffer
A structure for storing data that might be received out of order. This allows data to be inserted in any order, but then allows ordered read from data
framework/src/state/reordered_buffer/reordered_buffer.rs:299
Class
ResetParsingBatch
framework/src/operators/reset_parse.rs:9
Class
RestoreHeader
framework/src/operators/restore_header.rs:10
Class
RingBuffer
A ring buffer which can be used to insert and read ordered data.
framework/src/state/ring_buffer.rs:6
Class
Runnable
Used to keep stats about each pipeline and eventually grant tokens, etc.
framework/src/scheduler/standalone_scheduler.rs:10
Class
Runnable
Used to keep stats about each pipeline and eventually grant tokens, etc.
framework/src/scheduler/embedded_scheduler.rs:6
Interface
Scheduler
framework/src/scheduler/mod.rs:31
Enum
SchedulerCommand
Messages that can be sent on the scheduler channel to add or remove tasks.
framework/src/scheduler/standalone_scheduler.rs:48
Interface
SctpControlAgent
framework/src/control/sctp.rs:12
Class
SctpControlServer
framework/src/control/sctp.rs:20
Class
Segment
framework/src/state/reordered_buffer/reordered_buffer.rs:23
Class
SegmentList
A linked list of segments, this tries to avoid allocations whenever possible. In steady state (regardless of bad choices made by the developer) there
framework/src/state/reordered_buffer/reordered_buffer.rs:45
Class
SendBatch
framework/src/operators/send_batch.rs:10
Class
SharedMemory
framework/src/shared_state/mod.rs:11
Class
SharedVec
FIXME: While WIP
framework/src/shared_state/shared_vec.rs:8
Class
StandaloneScheduler
A very simple round-robin scheduler. This should really be more of a DRR scheduler.
framework/src/scheduler/standalone_scheduler.rs:34
Enum
State
framework/src/state/reordered_buffer/reordered_buffer.rs:15
Interface
TcpControlAgent
framework/src/control/tcp.rs:12
Class
TcpControlServer
framework/src/control/tcp.rs:20
Class
TcpHeader
framework/src/headers/tcp.rs:8
Class
TransformBatch
framework/src/operators/transform_batch.rs:13
Class
UdpHeader
framework/src/headers/udp.rs:9
Class
Unit
test/nat/src/nf.rs:12
Class
VirtualPort
framework/src/interface/port/virt_port.rs:10
Class
VirtualQueue
framework/src/interface/port/virt_port.rs:16
Class
bitmask
native/init.c:22
Class
ether_hdr
native/ethpacket.c:22
Class
ether_hdr
native/test/test.c:50
Class
ipv4_hdr
native/utils.c:12
Class
node
native/test/test.c:11
Class
rte_eth_conf
native/ring.c:50
next →
1–100 of 118, ranked by callers