tcp_connect_v4接口

tcp_connect_v4接口的调用栈,是用户态调用connect接口进入该路径。

cpp 复制代码
​
#!/usr/bin/env bpftrace

#include <linux/net.h>
#include <linux/skbuff.h>
#include <uapi/linux/in.h>

kprobe:tcp_v4_connect {
    printf("sa_family:0x%x\n", ((struct sockaddr_in *)arg1)->sin_family);
    printf("sin_port:0x%x\n", ((struct sockaddr_in *)arg1)->sin_port);
    printf("saddr:0x%x\n", ((struct sockaddr_in *)arg1)->sin_addr.s_addr);
    @[kstack] = count();
}

END {
}

调用栈如下:

cpp 复制代码
Attaching 2 probes...
sa_family:0x2
sin_port:0x5000
saddr:0x8871b40a
sa_family:0x2
sin_port:0xf0d2
saddr:0x100007f
sa_family:0x2
sin_port:0x1600
saddr:0xe435864
^C

@[
    tcp_v4_connect+1
    __inet_stream_connect+209
    inet_stream_connect+54
    __sys_connect+150
    __x64_sys_connect+22
    do_syscall_64+51
    entry_SYSCALL_64_after_hwframe+68
]: 3
相关推荐
侠客行031711 小时前
Mybatis连接池实现及池化模式
java·mybatis·源码阅读
蛇皮划水怪11 小时前
深入浅出LangChain4J
java·langchain·llm
老毛肚13 小时前
MyBatis体系结构与工作原理 上篇
java·mybatis
风流倜傥唐伯虎13 小时前
Spring Boot Jar包生产级启停脚本
java·运维·spring boot
Yvonne爱编码13 小时前
JAVA数据结构 DAY6-栈和队列
java·开发语言·数据结构·python
Re.不晚13 小时前
JAVA进阶之路——无奖问答挑战1
java·开发语言
你这个代码我看不懂13 小时前
@ConditionalOnProperty不直接使用松绑定规则
java·开发语言
chian-ocean13 小时前
深入 CANN:使用 `tbe-op` 构建自定义高性能算子
网络
fuquxiaoguang14 小时前
深入浅出:使用MDC构建SpringBoot全链路请求追踪系统
java·spring boot·后端·调用链分析
琹箐14 小时前
最大堆和最小堆 实现思路
java·开发语言·算法