Enum pcap::TimestampType

source ·
#[repr(i32)]
pub enum TimestampType {
    Host,
    HostLowPrec,
    HostHighPrec,
    Adapter,
    AdapterUnsynced,
}
Expand description

Timestamp types

Not all systems and interfaces will necessarily support all of these.

Note that time stamps synchronized with the system clock can go backwards, as the system clock can go backwards. If a clock is not in sync with the system clock, that could be because the system clock isn’t keeping accurate time, because the other clock isn’t keeping accurate time, or both.

Note that host-provided time stamps generally correspond to the time when the time-stamping code sees the packet; this could be some unknown amount of time after the first or last bit of the packet is received by the network adapter, due to batching of interrupts for packet arrival, queueing delays, etc..

Variants

Host

Timestamps are provided by the host machine, rather than by the capture device.

The characteristics of the timestamp are unknown.

HostLowPrec

A timestamp provided by the host machine that is low precision but relatively cheap to fetch.

This is normally done using the system clock, so it’s normally synchornized with times you’d fetch from system calls.

HostHighPrec

A timestamp provided by the host machine that is high precision. It might be more expensive to fetch.

The timestamp might or might not be synchronized with the system clock, and might have problems with time stamps for packets received on different CPUs, depending on the platform.

Adapter

The timestamp is a high-precision time stamp supplied by the capture device.

The timestamp is synchronized with the system clock.

AdapterUnsynced

The timestamp is a high-precision time stamp supplied by the capture device.

The timestamp is not synchronized with the system clock.

Trait Implementations

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more
This method tests for self and other values to be equal, and is used by ==. Read more
This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The resulting type after obtaining ownership.
Creates owned data from borrowed data, usually by cloning. Read more
Uses borrowed data to replace owned data, usually by cloning. Read more
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.