iovisor / iovisor/bcc

How to profile the execution time of a packet in kernel processing stack?

Open
#2,086 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
C
Stars
22.7k
Forks
4.1k
Avg merge
10d 4h
Merged PRs (30d)
3

Description

Bcc is a greate tool! And I wonder if there has a way to measure the execution time of each packet in kernel processing (TCP/IP stack and socket processing)? I tried to do that but found that it is hard to identify a specific packet to calculate the latency of a processing step.

For example, the latency of a packet from receiving from NICs to finishing IP processing; and the latency from a socket event being ready, to the time the application proactively calling epoll_wait to poll event.

Hope for any suggestion and possible solution!

Contributor guide

No contributing guide indexed for this repository

Research direction

No file or test is named; start by reviewing BCC’s existing networking and profiling tools around Linux TCP/IP and socket events. Done would require a concrete, documented approach or implementation for correlating packets or socket readiness with processing latency, plus validation, but the issue does not define the expected change.

Written by the indexing model from the issue text.

Assessment

Tech stack
linux
Domain
networking, observability-sre, operating-systems
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.