-
Notifications
You must be signed in to change notification settings - Fork 49
Closed
Description
Currently the flow records from ebpf agent provide two timestamps : 1) connection start, and 2) connection end.
Additionally, we could have connection setup timestamp, which is either (SYN+ACK), or ACK+Seq1 timestamp depending on the direction of the flow.
The logic could :
Ingress:
- Store timestamp (t2) when ACK+SEQ1 packet is received. Incoming SYN packet timestamp (t1) is already stored.
- Store timestamp (t2) when SYN+ACK packet is received. Outgoing SYN packet timestamp (t1) would already be stored. Mostly this case is already captured in eBPF data path, since we store the timestamp when an entry is created in the map. In this case SYN+ACK packet will create a new entry in the map.
Using existing marker stored (for SYN+ACK, SYN) in TCP flags, we can calculate t2-t1 in user space to get connection setup time.
This connection setup RTT can be captured per flow, and exported. The consumer can then estimate the Path RTT based on the moving average or some other calculation.
CC : @eranra @jotak @msherif1234
Metadata
Metadata
Assignees
Labels
No labels