Struct smoltcp::phy::DeviceCapabilities [−][src]
A description of device capabilities.
Higher-level protocols may achieve higher throughput or lower latency if they consider the bandwidth or packet size limitations.
Fields (Non-exhaustive)
Struct {{ .. }}
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.max_transmission_unit: usize
Maximum transmission unit.
The network device is unable to send or receive frames larger than the value returned by this function.
For Ethernet devices, this is the maximum Ethernet frame size, including the Ethernet header (14 octets), but not including the Ethernet FCS (4 octets). Therefore, Ethernet MTU = IP MTU + 14.
Note that in Linux and other OSes, “MTU” is the IP MTU, not the Ethernet MTU, even for Ethernet devices. This is a common source of confusion.
Most common IP MTU is 1500. Minimum is 576 (for IPv4) or 1280 (for IPv6). Maximum is 9216 octets.
max_burst_size: Option<usize>
Maximum burst size, in terms of MTU.
The network device is unable to send or receive bursts large than the value returned by this function.
If None
, there is no fixed limit on burst size, e.g. if network buffers are
dynamically allocated.
checksum: ChecksumCapabilities
Checksum behavior.
If the network device is capable of verifying or computing checksums for some protocols, it can request that the stack not do so in software to improve performance.
Trait Implementations
impl Clone for DeviceCapabilities
[src]
fn clone(&self) -> DeviceCapabilities
[src]
pub fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl Debug for DeviceCapabilities
[src]
impl Default for DeviceCapabilities
[src]
fn default() -> DeviceCapabilities
[src]
Auto Trait Implementations
impl RefUnwindSafe for DeviceCapabilities
impl Send for DeviceCapabilities
impl Sync for DeviceCapabilities
impl Unpin for DeviceCapabilities
impl UnwindSafe for DeviceCapabilities
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,