generic profile provides a starting point for investigating packets in the networking stack. It defines a wide set of probes in various places and enables automatic collector selection.
What it enables
Probes
The generic profile attaches probes at key points throughout the network stack: Receive path:tp:net:netif_receive_skb- Packet reception at network interfacetp:net:netif_rx- Early packet receptiontp:net:napi_gro_receive_entry- GRO (Generic Receive Offload) entrytp:net:napi_gro_frags_entry- GRO fragments entrykprobe:arp_process- ARP packet processingkprobe:ip_rcv/kprobe:ipv6_rcv- IPv4/IPv6 reception
kprobe:tcp_v4_rcv/kprobe:tcp_v6_rcv- TCP receptionkprobe:tcp_gro_receive/kprobe:tcp6_gro_receive- TCP GROkprobe:tcp_rcv_established- TCP established statekprobe:tcp_rcv_state_process- TCP state processingkprobe:__tcp_retransmit_skb- TCP retransmissionskprobe:udp_rcv/kprobe:udpv6_rcv- UDP receptionkprobe:udp_gro_receive/kprobe:udp6_gro_receive- UDP GROkprobe:icmp_rcv/kprobe:icmpv6_rcv- ICMP reception
tp:net:net_dev_queue- Packet queuingtp:net:net_dev_start_xmit- Packet transmission startkprobe:ip_output/kprobe:ip6_output- IPv4/IPv6 outputkprobe:skb_scrub_packet- Packet scrubbing (namespace transitions)
Collectors
The profile enables automatic collector selection, which typically includes:skb- Socket buffer metadataskb-drop- Drop reason informationskb-tracking- Packet tracking across the stack
Usage
The generic profile is ideal when you’re not sure where in the networking stack your issue might be occurring. It provides broad visibility across the entire path.
Use cases
- Initial investigation: Starting point when the root cause is unknown
- Protocol debugging: Tracing packets through different protocol layers
- Path analysis: Understanding the complete journey of a packet
- Performance analysis: Identifying bottlenecks in the network stack
