Skip to content

feat: agent - eBPF Enhance HTTP2 Protocol Inference#9662

Merged
yinjiping merged 4 commits intomainfrom
enhance_http2_infer
May 21, 2025
Merged

feat: agent - eBPF Enhance HTTP2 Protocol Inference#9662
yinjiping merged 4 commits intomainfrom
enhance_http2_infer

Conversation

@yinjiping
Copy link
Copy Markdown
Contributor

@yinjiping yinjiping commented May 17, 2025

This PR is for:

  • Agent

Affected branches

  • main
  • v6.6
  • v6.5
  • v6.4

@yinjiping yinjiping marked this pull request as draft May 17, 2025 02:16
@yinjiping yinjiping force-pushed the enhance_http2_infer branch from d26340b to 44ab759 Compare May 20, 2025 04:02
@yinjiping
Copy link
Copy Markdown
Contributor Author

yinjiping commented May 20, 2025

使用FASTCGI测试示例:

char data[] =
"\x01\x01\x00\x01\x00\x08\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00"
"\x01\x04\x00\x01\x02\x20\x00\x00\x0C\x0A\x51\x55\x45\x52\x59\x5F"
"\x53\x54\x52\x49\x4E\x47\x73\x3D\x2F\x68\x65\x61\x6C\x74\x68\x7A"
"\x0E\x03\x52\x45\x51\x55\x45\x53\x54\x5F\x4D\x45\x54\x48\x4F\x44"
"\x47\x45\x54\x0C\x00\x43\x4F\x4E\x54\x45\x4E\x54\x5F\x54\x59\x50"
"\x45\x0E\x00\x43\x4F\x4E\x54\x45\x4E\x54\x5F\x4C\x45\x4E\x47\x54"
"\x48\x0B\x0A\x53\x43\x52\x49\x50\x54\x5F\x4E\x41\x4D\x45\x2F\x69"
"\x6E\x64\x65\x78\x2E\x70\x68\x70\x0B\x08\x52\x45\x51\x55\x45\x53"
"\x54\x5F\x55\x52\x49\x2F\x68\x65\x61\x6C\x74\x68\x7A\x0C\x0A\x44"
"\x4F\x43\x55\x4D\x45\x4E\x54\x5F\x55\x52\x49\x2F\x69\x6E\x64\x65"
"\x78\x2E\x70\x68\x70\x0D\x14\x44\x4F\x43\x55\x4D\x45\x4E\x54\x5F"
"\x52\x4F\x4F\x54\x2F\x76\x61\x72\x2F\x77\x77\x77\x2F\x68\x74\x6D"
"\x6C\x2F\x70\x75\x62\x6C\x69\x63\x0F\x08\x53\x45\x52\x56\x45\x52"
"\x5F\x50\x52\x4F\x54\x4F\x43\x4F\x4C\x48\x54\x54\x50\x2F\x31\x2E"
"\x31\x0E\x04\x52\x45\x51\x55\x45\x53\x54\x5F\x53\x43\x48\x45\x4D"
"\x45\x68\x74\x74\x70\x11\x07\x47\x41\x54\x45\x57\x41\x59\x5F\x49"
"\x4E\x54\x45\x52\x46\x41\x43\x45\x43\x47\x49\x2F\x31\x2E\x31\x0F"
"\x0C\x53\x45\x52\x56\x45\x52\x5F\x53\x4F\x46\x54\x57\x41\x52\x45"
"\x6E\x67\x69\x6E\x78\x2F\x31\x2E\x32\x32\x2E\x31\x0B\x0B\x52\x45"
"\x4D\x4F\x54\x45\x5F\x41\x44\x44\x52\x31\x37\x32\x2E\x31\x38\x2E"
"\x38\x2E\x32\x32\x0B\x05\x52\x45\x4D\x4F\x54\x45\x5F\x50\x4F\x52"
"\x54\x35\x35\x38\x35\x30\x0B\x0B\x53\x45\x52\x56\x45\x52\x5F\x41"
"\x44\x44\x52\x31\x37\x32\x2E\x31\x38\x2E\x38\x2E\x38\x35\x0B\x02"
"\x53\x45\x52\x56\x45\x52\x5F\x50\x4F\x52\x54\x38\x30\x0B\x00\x53"
"\x45\x52\x56\x45\x52\x5F\x4E\x41\x4D\x45\x0F\x03\x52\x45\x44\x49"
"\x52\x45\x43\x54\x5F\x53\x54\x41\x54\x55\x53\x32\x30\x30\x0F\x1E"
"\x53\x43\x52\x49\x50\x54\x5F\x46\x49\x4C\x45\x4E\x41\x4D\x45\x2F"
"\x76\x61\x72\x2F\x77\x77\x77\x2F\x68\x74\x6D\x6C\x2F\x70\x75\x62"
"\x6C\x69\x63\x2F\x69\x6E\x64\x65\x78\x2E\x70\x68\x70\x09\x00\x50"
"\x41\x54\x48\x5F\x49\x4E\x46\x4F\x09\x0E\x48\x54\x54\x50\x5F\x48"
"\x4F\x53\x54\x31\x37\x32\x2E\x31\x38\x2E\x38\x2E\x38\x35\x3A\x38"
"\x30\x30\x0F\x10\x48\x54\x54\x50\x5F\x55\x53\x45\x52\x5F\x41\x47"
"\x45\x4E\x54\x6B\x75\x62\x65\x2D\x70\x72\x6F\x62\x65\x2F\x31\x2E"
"\x33\x30\x30\x2B\x0B\x03\x48\x54\x54\x50\x5F\x41\x43\x43\x45\x50"
"\x54\x2A\x2F\x2A\x0F\x05\x48\x54\x54\x50\x5F\x43\x4F\x4E\x4E\x45"
"\x43\x54\x49\x4F\x4E\x63\x6C\x6F\x73\x65\x01\x04\x00\x01\x00\x00"
"\x00\x00\x01\x05\x00\x01\x00\x00\x00\x00";

ebpf捕获:
image

如果禁用FASTCGI,这个数据将不会被识别成任何协议,而之前的版本的deepflow-agent(禁用FASTCGI识别)将会被识别成HTTP2。

@yinjiping yinjiping marked this pull request as ready for review May 20, 2025 04:30
@yinjiping yinjiping enabled auto-merge (squash) May 21, 2025 01:38
@yinjiping yinjiping merged commit 0b26d5d into main May 21, 2025
8 checks passed
@yinjiping yinjiping deleted the enhance_http2_infer branch May 21, 2025 02:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants