pub(crate) struct TraceTag {
pub worker_id: u32,
pub ttl: u8,
pub ts14: u16,
}Fields§
§worker_id: u32Sending worker id (≤10 bits, up to 1024 workers).
ttl: u8Probe TTL — the hop count that triggers the reply.
ts14: u16Low 14 bits of the send time in milliseconds.
Implementations§
Source§impl TraceTag
impl TraceTag
Sourcepub fn encode_split(&self) -> (u16, u16)
pub fn encode_split(&self) -> (u16, u16)
ICMP encoded in the ICMP identifier (16 bit) and sequence number (16 bit) fields UDP encoded in the IPv4 identifier or IPv6 flow label (16 bit) and UDP checksum (16 bit)
Sourcepub fn decode_split(id_field: u16, seq_field: u16) -> Self
pub fn decode_split(id_field: u16, seq_field: u16) -> Self
Inverse of TraceTag::encode_split.
Sourcepub fn encode_tcp_seq(&self) -> u32
pub fn encode_tcp_seq(&self) -> u32
Encoded in the 32 bit seq value for TCP
Sourcepub fn decode_tcp_seq(seq: u32) -> Self
pub fn decode_tcp_seq(seq: u32) -> Self
Inverse of TraceTag::encode_tcp_seq.
Auto Trait Implementations§
impl Freeze for TraceTag
impl RefUnwindSafe for TraceTag
impl Send for TraceTag
impl Sync for TraceTag
impl Unpin for TraceTag
impl UnsafeUnpin for TraceTag
impl UnwindSafe for TraceTag
Blanket Implementations§
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request§impl<L> LayerExt<L> for L
impl<L> LayerExt<L> for L
§fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
Applies the layer to a service and wraps it in [
Layered].