Crate net_backend

Source
Expand description

This module defines a trait and implementations thereof for network backends.

Modules§

loopback
Loopback endpoint implementation, which reflects all transmits back as receives.
null
Null (disconnected) endpoint.
resolve
Resolver-related definitions for networking backends.
tests
Types to help test backends.

Structs§

DisconnectableEndpoint
DisconnectableEndpointCachedState
DisconnectableEndpointControl
MultiQueueSupport
Multi-queue related support.
QueueConfig
Per-queue configuration.
RssConfig
RxBufferSegment
An individual segment in guest memory of a receive buffer.
RxId
A receive buffer ID.
RxMetadata
Receive packet metadata.
TxId
A transmit ID. This may be used by multiple segments at the same time.
TxMetadata
Transmit packet metadata.
TxOffloadSupport
The set of supported transmit offloads.
TxSegment
A transmit packet segment.

Enums§

EndpointAction
L3Protocol
The “L3” protocol: the IP layer.
L4Protocol
The “L4” protocol: the TCP/UDP layer.
RxChecksumState
The receive checksum state for a packet.
TxError
TxSegmentType
The segment type.

Traits§

BufferAccess
A trait for providing access to guest memory buffers.
Endpoint
A network endpoint.
Queue
A trait for sending and receiving network packets.

Functions§

linearize
Linearizes the next packet in a list of segments, returning the buffer data and advancing the segment list.
next_packet
Gets the next packet from a list of segments, returning the packet metadata, the segments in the packet, and the remaining segments.
packet_count
Computes the number of packets in segments.