pub struct TcpOption { /* private fields */ }
Expand description
A TCP option.
Implementations§
Source§impl TcpOption
impl TcpOption
Sourcepub fn nop() -> Self
pub fn nop() -> Self
NOP: This may be used to align option fields on 32-bit boundaries for better performance.
Sourcepub fn timestamp(my: u32, their: u32) -> Self
pub fn timestamp(my: u32, their: u32) -> Self
Timestamp: TCP timestamps, defined in RFC 1323, can help TCP determine in which order packets were sent. TCP timestamps are not normally aligned to the system clock and start at some random value.
Sourcepub fn mss(val: u16) -> Self
pub fn mss(val: u16) -> Self
MSS: The maximum segment size (MSS) is the largest amount of data, specified in bytes, that TCP is willing to receive in a single segment.
Sourcepub fn wscale(val: u8) -> Self
pub fn wscale(val: u8) -> Self
Window scale: The TCP window scale option, as defined in RFC 1323, is an option used to increase the maximum window size from 65,535 bytes to 1 gigabyte.
Sourcepub fn sack_perm() -> Self
pub fn sack_perm() -> Self
Selective acknowledgment (SACK) option, defined in RFC 2018 allows the receiver to acknowledge discontinuous blocks of packets which were received correctly. This options enables use of SACK during negotiation.
Sourcepub fn selective_ack(acks: &[u32]) -> Self
pub fn selective_ack(acks: &[u32]) -> Self
Selective acknowledgment (SACK) option, defined in RFC 2018 allows the receiver to acknowledge discontinuous blocks of packets which were received correctly. The acknowledgement can specify a number of SACK blocks, where each SACK block is conveyed by the starting and ending sequence numbers of a contiguous range that the receiver correctly received.