SlideShare a Scribd company logo
1 of 75
Download to read offline
Meet-cute between
eBPF and Kernel Tracing
Viller Hsiao <villerhsiao@gmail.com>
Jul. 5, 2016
03/09/2016 2
Who am I ?
Viller Hsiao
Embedded Linux / RTOS engineer
   http://image.dfdaily.com/201
2/5/4/634716931128751250504b
050c1_nEO_IMG.jpg
03/09/2016 3
BPF
Berkeley Packet Filter
by Steven McCanne and Van Jacobson, 1993
03/09/2016 4
Who am I ?
Viller Hsiao
Embedded Linux / RTOS engineer
   http://image.dfdaily.com/201
2/5/4/634716931128751250504b
050c1_nEO_IMG.jpg
03/09/2016 5
Berkeley Packet Filter
Packet filter: tcpdump -nnnX port 3000
03/09/2016 6
network
stack
sniffer
kernel
user
net if
Applications
tcpdump ­nnnX  port 3000
port 3000
VM filter
http://www.ic
onsdb.com/ico
ns/download/g
ray/empty-fil
ter-512.png
In­kernel Packet Filter
03/09/2016 7
Berkeley Packet Filter
Improve unix packet filter
03/09/2016 8
Berkeley Packet Filter
Improve unix packet filter
Replace stack-based VM with register-based VM
03/09/2016 9
Berkeley Packet Filter
Improve unix packet filter
Replace stack-based VM with register-based VM
20 times faster than original design
03/09/2016 10
In­Kernel VM for Filtering
Flexibility
Efficiency Security
03/09/2016 11
BPF in Linux
a.k.a. Linux Socket Filter
kernel 2.1.75, in 1997
03/09/2016 12
Areas Use BPF
in Linux Nowadays
●
Linux­3.4 (2012), Seccomp filters of syscalls (chrome sandboxing)
●
Packet classifier for traffic contol 
●
Actions for traffic control
●
Xtables packet filtering
●
Tracing
03/09/2016 13
Story today,
When kernel tracing meets ebpf
http://2.blog.xuite.net/2/4/7/8/11001626/blog_70864/txt/17378250/0.jpg
03/09/2016 14
Examples of BPF Program
  ldh [12]
  jne #0x806, drop
  ret #­1
  drop: ret #0
ARP packets
ICMP
random packet sampling
1 in 4
  ldh [12]
  jne #0x800, drop
  ldb [23]
  jneq #1, drop
  ld rand                
  mod #4
  jneq #1, drop
  ret #­1
  drop: ret #0
helper
extensions
03/09/2016 15
BPF Example: Translate to Binary
$ ./bpf_asm ­c foo
 Opcode   JT   JF          K
{ 0x28,       0,    0,   0x0000000c },
{ 0x15,       0,    1,   0x00000806 },
{ 0x06,       0,    0,   0xffffffff },
{ 0x06,       0,    0,   0000000000 },
03/09/2016 16
Userspace Application
struct sock_filter code[] = {
{ 0x28,  0,  0, 0x0000000c },
{ 0x15,  0,  8, 0x000086dd },
       …
};
struct sock_fprog bpf = {
.len = ARRAY_SIZE(code),
.filter = code,
};
sock = socket(PF_PACKET, SOCK_RAW, htons(ETH_P_ALL));
if (sock < 0)
/* ... bail out ... */
ret = setsockopt(sock, SOL_SOCKET, SO_ATTACH_FILTER, &bpf, sizeof(bpf));
if (ret < 0)
/* ... bail out ... */
BPF Binary
03/09/2016 17
BPF JIT Compiler
in 2011
●
Linux­3.0, by Eric Dumazet
●
Architecture support
– x86_64, SPARC, PowerPC, ARM, ARM64, MIPS and 
s390
  $ echo 1 > /proc/sys/net/core/bpf_jit_enable
03/09/2016 18
extended BPF
Linux-3.15
by Alexei Starovoitov, 2013
03/09/2016 19
Classic BPF
vs
Internal BPF (a.k.a extended BPF)
03/09/2016 20
eBPF Design Goals
●
Just­in­time map to modern 64­bit CPU with minimal 
performance overhead
●
Write programs in restricted C and compile into BPF with 
GCC/LLVM
●
Guarantee termination and safety of BPF program in kernel 
with simple algorithm
03/09/2016 21
cBPF vs eBPF
BPF eBPF
registers A, X R0 ­ R10
width 32 bit  64 bit
opcode op:16, jt:8, jf:8, k:32 op:8, dst_reg:4, src_reg:4, off:16, imm:32
JIT support
x86_64, SPARC, 
PowerPC, ARM, 
ARM64, MIPS and 
s390
x86­64, aarch64, s390x
03/09/2016 22
BPF Calling Convention
●
R0
●
Return value from in­kernel function, and exit value for eBPF 
program
●
R1 – R5
●
Arguments from eBPF program to in­kernel function
●
R6 – R9
●
Callee saved registers that in­kernel function will preserve
●
R10
●
Read­only frame pointer to access stack
03/09/2016 23
Designed to be JITed
for 64­bit Architecture
 /* restore ctx for next call */
    bpf_mov R6, R1x
    bpf_mov R2, 2
    bpf_mov R3, 3
    bpf_mov R4, 4
    bpf_mov R5, 5
    bpf_call foo
 /* save foo() return value */
    bpf_mov R7, R0
 /* restore ctx for next call */
    bpf_mov R1, R6
    bpf_mov R2, 6
    bpf_mov R3, 7
    bpf_mov R4, 8
    bpf_mov R5, 9
    bpf_call bar
    bpf_add R0, R7
    bpf_exit
    push %rbp
    mov %rsp,%rbp
    sub $0x228,%rsp
    mov %rbx,­0x228(%rbp)
    mov %r13,­0x220(%rbp)
    mov %rdi,%rbx
    mov $0x2,%esi
    mov $0x3,%edx
    mov $0x4,%ecx
    mov $0x5,%r8d
    callq foo
    mov %rax,%r13
    mov %rbx,%rdi
    mov $0x2,%esi
    mov $0x3,%edx
    mov $0x4,%ecx
    mov $0x5,%r8d
    callq bar
    add %r13,%rax
    mov ­0x228(%rbp),%rbx
    mov ­0x220(%rbp),%r13
    leaveq
    retq
x86_64
03/09/2016 24
How does it work?
03/09/2016 25
BPF Internals (1)
subsys
BPF
binary
kernel
user
    app
BPF VM
03/09/2016 26
BPF  Internals (2)
BPF
binary
subsys
BPF
binary
kernel
user
Interpreter
JIT
bpf syscall
BPF_PROG_LOAD
    app
03/09/2016 27
BPF  Internals (3)
BPF
binary
subsys
BPF
binary
kernel
user
Interpreter
JIT
bpf syscall
verifier
    app
03/09/2016 28
BPF Verifier
●
Do static check in verifier as possible
●
Directed Acyclic Graph(DAG) program
– Max 4096 instructions
– No loop
– unreachable insns exist
●
Instruction walk
– Read a never­written register
– Do arithmetic of two valid pointer
– Load/store registers of invalid types
– Read stack before writing data into
03/09/2016 29
BPF  Internals (4)
BPF
binary
MAP
subsys
BPF
binary
kernel
user
Interpreter
JIT
bpf syscall
verifier
BPF_MAP_CREATE
BPF_MAP_LOOKUP_ELEM
BPF_MAP_UPDATE_ELEM
….
    app
03/09/2016 30
BPF MAP
●
BPF_MAP_TYPE_HASH
●
BPF_MAP_TYPE_ARRAY
●
BPF_MAP_TYPE_PROG_ARRAY
●
BPF_MAP_TYPE_PERF_EVENT_ARRAY
map1 map2 map3
Tracing
prog_1
sock
prog_3
Tracing
prog_2
sk_buff on
eth0
Tracepoint
Event C
Tracepoint
Event B
Tracepoint
Event A
03/09/2016 31
BPF  Internals (5)
BPF
binary
MAP
subsys
BPF
binary
kernel
user
Interpreter
JIT
bpf syscall
verifier
BPF_PROG_RUN
    app
03/09/2016 32
BPF  Internals  (6)
BPF
binary
MAP
helper
subsys
Other
subsys
BPF_PROG_RUN
BPF
binary
kernel
user
Interpreter/ JIT
bpf syscall
verifier
    app
03/09/2016 33
BPF Helpers
map netsystem
perf trace
●
bpf_func_id
03/09/2016 34
BPF  Internals (7)
BPF
binary
MAP
helper
subsys
Other
subsys
BPF_PROG_RUN
BPF
binary
kernel
user
Interpreter/JIT
bpf syscall
verifier
    app
03/09/2016 35
Kernel Instrumentation
03/09/2016 36
Dynamic Probe
Kernel
user
Kprobe
Kretprobe
Jprobe
Uprobe
03/09/2016 37
Kprobe
INST BREAK
register_kprobe()
pre_handler()
post_handler()
address
sym + offset
Write kernel module
to register a kprobe
03/09/2016 38
Kprobe
BREAKBREAK INST
pre_handler()
post_handler()
exception
address
Note: More details are not revealed
03/09/2016 39
Kprobe­based Event Tracing
# echo 'r:myretprobe do_sys_open $retval' >> /sys/kernel/tracing/kprobe_events
# echo 1 > /sys/kernel/tracing/events/kprobes/myretprobe/enable
# cat /sys/kernel/tracing/trace
# tracer: nop
#
#           TASK­PID   CPU#  ||||    TIMESTAMP  FUNCTION
#              | |       |   ||||       |         |
              sh­746   [000] d...   40.96: myretprobe: (SyS_open+0x2c/0x30 <­ do_sys_open) arg1=0x3
              sh­746   [000] d...   42.19: myretprobe: (SyS_open+0x2c/0x30 <­ do_sys_open) arg1=0x3
…..
03/09/2016 40
Uprobe
 echo 'p:myapp /bin/bash:0x4245c0' > /sys/kernel/tracing/uprobe_events
●
Linux­3.5
●
userspace breakpoints in kernel
03/09/2016 41
User Tools for Kprobe
●
tracefs files
●
systemtap
03/09/2016 42
ftrace
●
Linux­2.6.27
●
Linux kernel internal tracer
03/09/2016 43
ftrace Interface
tracefs (debugfs in past) 
README
available_events
available_filter_functions
available_tracers
buffer_size_kb
buffer_total_size_kb
current_tracer
dyn_ftrace_total_info
enabled_functions
events
free_buffer
instances
kprobe_events
kprobe_profile
max_graph_depth
options
per_cpu
printk_formats
saved_cmdlines
saved_cmdlines_size
set_event
set_event_pid
set_ftrace_filter
set_ftrace_notrace
set_ftrace_pid
set_graph_function
set_graph_notrace
trace
trace_clock
trace_marker
trace_options
trace_pipe
tracing_cpumask
tracing_on
tracing_thresh
$ ls /sys/kernel/tracing
03/09/2016 44
ftrace Function Tracer
  void Func ( … )
  {
      Line 1;
      Line 2;
      …
  }
  
  void Func ( … )
  {
      mcount (pc, ra);
      Line 1;
      Line 2;
      …
  }
gcc ­pg
03/09/2016 45
Dynamic Function Tracer
Function trace enabled
on Func()
  
  void Func ( … )
  {
      nop;
      Line 1;
      Line 2;
      …
  }
  
  void Func ( … )
  {
      mcount (pc, ra);
      Line 1;
      Line 2;
      …
  }
Function trace disabled
on Func()
03/09/2016 46
Tracepoint
     #include <trace/events/subsys.h>
 
     DEFINE_TRACE(subsys_eventname);
 
     void somefct(void)
     {
         ...
         trace_subsys_eventname(arg, task);
         ...
     }
    DECLARE_TRACE( subsys_eventname,
                                    TP_PROTO(int firstarg, struct task_struct *p),
                                    TP_ARGS(firstarg, p));
include/trace/events/subsys.h
subsys/file.c
03/09/2016 47
perf
Statistics data
$ perf stat my­app args
Sampling record
$ perf record my­app args
perf­tool
perf framework
kernel
user
HW
event
perf_event
SW
event
PMU
trace
event
trace
point
dynamic
event
kprobe
uprobe
03/09/2016 48
Summary of Kernel Tracing
http://www.slideshare.net/brendangregg/linux-systems-performance-2016
03/09/2016 49
https://i.ytimg.com/vi/elc3FdKxaOk/maxresdefault.jpg
Before BPF Integration
Complex filters and scripts can be expensive
Components are isolated
03/09/2016 50
People desire more powerful tool 
like dtrace
Some attemptation: systemtap, ktap
03/09/2016 51
Linux­4.1
“One of the more interesting features in this cycle is the 
ability to attach eBPF programs (user­defined, sandboxed 
bytecode executed by the kernel) to kprobes. This allows 
user­defined instrumentation on a live kernel image that 
can never crash, hang or interfere with the kernel 
negatively. “
~Ingo Molnár 
https://lkml.org/lkml/2015/4/14/232
03/09/2016 52
Instrument powered by eBPF
“If DTrace is Kixy Hawk, eBPF is a jet engine”
~ Brendan Gregg
http://www.ait.org.tw/infousa/zhtw/american_story/assets/es/nc/es_nc_kttyhwk_1_e.jpg
03/09/2016 53
Attach to Kprobe
as well as tracepoint
By Alexei Starovoitov
– tracing: attach BPF programs to kprobes
– tracing: allow BPF programs to call bpf_ktime_get_ns()
– tracing: allow BPF programs to call bpf_trace_printk()
prog_fd = bpf_prog_load(...);
struct perf_event_attr attr = {
.type = PERF_TYPE_TRACEPOINT,
.config = event_id, /* ID of just created kprobe event */
};
event_fd = perf_event_open(&attr,...);
ioctl(event_fd, PERF_EVENT_IOC_SET_BPF, prog_fd);
03/09/2016 54
BPF for Tracing
●
The output data is not limited to PMU counters but data like 
time latencies, cache misses or other things users want to 
record.
http://www.slideshare.net/brendangregg/linux-bpf-superpowers
03/09/2016 55
Ftrace Filter Interpreter on eBPF
(not merged yet?)
"field1 == 1 || field2 == 2"
03/09/2016 56
The Evolution of
eBPF Userspace Utilities 
http://www.bitrebels.com/wp-content/uploads/2011/04/Evolution-Of-Man-Parodies-333.jpg
03/09/2016 57
Program on eBPF
Restrict C
BPF Binary 
LLVM
( up 3.7)
userspace
program
eBPF
assembly
or
Kernel
03/09/2016 58
Write a eBPF Program in C Looks Good.
But,
What's the rule of “restrict C” ?
03/09/2016 59
Restrict C [9]
●
No support for 
– Global variables 
– Arbitrary function calls, 
– Floating point, varargs, exceptions, indirect jumps, arbitrary 
pointer arithmetic, alloca, etc.  
●
Kernel rejects all programs that it cannot prove safe
– programs with loops 
– with memory accesses via arbitrary pointers. 
03/09/2016 60
BPF Utilities 1:
Kernel Samples
foo_user.c     +      foo_kern.c
All prog/data needed
when loading bpf
●
bpf programs
●
map
●
license
●
… etc  
Userspace
●
Load BPF
●
Cretae maps
●
Flow control
●
Data presentaion
03/09/2016 61
foo_kern.c
struct bpf_map_def SEC("maps") my_map = {
.type = BPF_MAP_TYPE_PERF_EVENT_ARRAY,
.max_entries = 32, ….
};
SEC("kprobe/sys_write")
int bpf_prog1(struct pt_regs *ctx)
{
u64 count;
u32 key = bpf_get_smp_processor_id();
char fmt[] = "CPU­%d   %llun";
count = bpf_perf_event_read(&my_map, key);
bpf_trace_printk(fmt, sizeof(fmt), key, count);
return 0;
}
u32 _version SEC("version") = LINUX_VERSION_CODE;
BPF
programs
MAPs
Others
03/09/2016 62
foo_user.c
 
Take kprobe as example
map 1
map 2
bpf_prog1
bpf_prog2
bpf_prog3
version
sec(“maps”)
sec(“kprobe/prog1”)
sec(“kprobe/prog2”)
sec(“kprobe/prog3”)
sec(“version”)
foo_kern.c foo_kern.o
(elf)
clang
­­target=bpf
Create map
(maps section)
Load bpf_progx
(kprobe/xxx, license,
 … sections)
Setup 
/sys/.../krpobe_events
(kprobe/xxx sections)
libbpf
foo_user.c
bpf_prog_load
03/09/2016 63
BPF Utilities 2:
BCC in IOVisor
The project enables developers to build, innovate, and 
share open, programmable data plane with dynamic IO and 
networking functions
https://www.iovisor.org/sites
/cpstandard/files/pages/image
s/io_visor.jpg
03/09/2016 64
BPF Compiler Collection
Frontend
python, lua
llvm library
BPF bytecode
libbcc.so
BPF C text/code
BCC module
BCC
bpf syscallperf event / trace_fs
User
program
03/09/2016 65
BPF_HASH(start, struct request *);
void trace_start(struct pt_regs *ctx, struct request *req) {
                  …...
}
void trace_completion(struct pt_regs *ctx, struct request *req) {
u64 *tsp, delta;
tsp = start.lookup(&req);
if (tsp != 0) {
delta = bpf_ktime_get_ns() ­ *tsp;
bpf_trace_printk("%d %x %dn", req­>__data_len,
    req­>cmd_flags, delta / 1000);
start.delete(&req);
}
}
BCC Example: BPF c Program
Simpler than kernel samples
03/09/2016 66
BCC Example: Python Frontend
from bcc import BPF
b = BPF (src_file="disksnoop.c")
b.attach_kprobe (event="blk_start_request", fn_name="trace_start")
b.attach_kprobe (event="blk_mq_start_request", fn_name="trace_start")
b.attach_kprobe (event="blk_account_io_completion",                
                             fn_name="trace_completion")
                    …....
while 1:
(task, pid, cpu, flags, ts, msg) = b.trace_fields()
                    …....
print("%­18.9f %­2s %­7s %8.2f" % (ts, type_s, bytes_s, ms))
03/09/2016 67
Current Tracing Scripts
in BCC
https://raw.githubusercontent.com/iovisor/bcc/master/images/bcc_tracing_tools_2016.png
Tools for BPF­based Linux IO analysis, networking, monitoring, and 
more
03/09/2016 68
BPF Utilities 3:
perf tools
$ perf bpf record --object sample_bpf.o -- -a sleep 4
●
Introduced by Wang Nan
03/09/2016 69
Summary
●
eBPF: In­kernel VM designed to be JITed
●
Used by many subsystems as a filtering engine
– Packet monitor filtering
– Tracing and perf
– Seccomp
– Networking
●
Tools
– BCC 
●
Easy to customized script for probe kernel
●
Kernel >=4.1, LLVM >= 3.7
– perf
03/09/2016 70
Other Topics:
How to use in embedded system?
03/09/2016 71
Other Topics:
Linux­4.7: hist trigger
Another mechanism other than eBPF
http://www.brendangregg.com/blog/2016­06­08/linux­hist­triggers.html
03/09/2016 72
Q & A
9/3/16 73/75
Reference
[1] Alexei Starovoitov (May. 2014), “tracing: accelerate tracing filters with BPF”, KERNEL
PATCH
[2] Alexei Starovoitov, (Feb. 2015), "BPF – in-kernel virtual machine", presented at
Collaboration Summit 2015
[3] Brendan Gregg, (Feb. 2016), "Linux 4.x Performance Using BPF Superpowers ",
presented at Performance@ scale 2016
[4] Elena Zannoni (Jun. 2015), “New (and Exciting!) Developments in Linux Tracing ”,
presented at Linuxcon Japan 2015
[5] Gary Lin (Mar. 2016), “eBPF: Trace from Kernel to Userspace ”, presented at OpenSUSE
Technology Sharing Day 2016
[6] Jonathan Corbet. (May. 2014), “BPF: the universal in-kernel virtual machine ”, LWN
[7] Kernel documentation, “Using the Linux Kernel Tracepoints”
[8] Suchakrapani D. Sharma (Dec. 2014), “Towards Faster Trace Filtersvusing eBPF and JIT ”
[9] Michael Larabel, (Jan. 2015), “
BPF Backend Merged Into LLVM To Make Use Of New Kernel Functionality ”, Phoronix
9/3/16 74/75
● HCSM is the community of Hsinchu Coders in Taiwan.
● iovisor is a project of Linux Foundation
● ARM are trademarks or registered trademarks of ARM Holdings.
● Linux Foundation is a registered trademark of The Linux Foundation.
● Linux is a registered trademark of Linus Torvalds.
● Other company, product, and service names may be trademarks or service marks
of others.
● The license of each graph belongs to each website listed individually.
● The others of my work in the slide is licensed under a CC-BY-SA License.
● License text: http://creativecommons.org/licenses/by-sa/4.0/legalcode
Rights to Copy
copyright © 2016 Viller Hsiao
9/3/16 Viller Hsiao
THE END

More Related Content

What's hot

Introduction to eBPF and XDP
Introduction to eBPF and XDPIntroduction to eBPF and XDP
Introduction to eBPF and XDPlcplcp1
 
BPF - in-kernel virtual machine
BPF - in-kernel virtual machineBPF - in-kernel virtual machine
BPF - in-kernel virtual machineAlexei Starovoitov
 
eBPF - Rethinking the Linux Kernel
eBPF - Rethinking the Linux KerneleBPF - Rethinking the Linux Kernel
eBPF - Rethinking the Linux KernelThomas Graf
 
Introduction to eBPF
Introduction to eBPFIntroduction to eBPF
Introduction to eBPFRogerColl2
 
Security Monitoring with eBPF
Security Monitoring with eBPFSecurity Monitoring with eBPF
Security Monitoring with eBPFAlex Maestretti
 
Staring into the eBPF Abyss
Staring into the eBPF AbyssStaring into the eBPF Abyss
Staring into the eBPF AbyssSasha Goldshtein
 
DockerCon 2017 - Cilium - Network and Application Security with BPF and XDP
DockerCon 2017 - Cilium - Network and Application Security with BPF and XDPDockerCon 2017 - Cilium - Network and Application Security with BPF and XDP
DockerCon 2017 - Cilium - Network and Application Security with BPF and XDPThomas Graf
 
Performance Wins with eBPF: Getting Started (2021)
Performance Wins with eBPF: Getting Started (2021)Performance Wins with eBPF: Getting Started (2021)
Performance Wins with eBPF: Getting Started (2021)Brendan Gregg
 
Fun with Network Interfaces
Fun with Network InterfacesFun with Network Interfaces
Fun with Network InterfacesKernel TLV
 
The TCP/IP Stack in the Linux Kernel
The TCP/IP Stack in the Linux KernelThe TCP/IP Stack in the Linux Kernel
The TCP/IP Stack in the Linux KernelDivye Kapoor
 
Systems@Scale 2021 BPF Performance Getting Started
Systems@Scale 2021 BPF Performance Getting StartedSystems@Scale 2021 BPF Performance Getting Started
Systems@Scale 2021 BPF Performance Getting StartedBrendan Gregg
 
BPF / XDP 8월 세미나 KossLab
BPF / XDP 8월 세미나 KossLabBPF / XDP 8월 세미나 KossLab
BPF / XDP 8월 세미나 KossLabTaeung Song
 
LISA2019 Linux Systems Performance
LISA2019 Linux Systems PerformanceLISA2019 Linux Systems Performance
LISA2019 Linux Systems PerformanceBrendan Gregg
 
Linux Profiling at Netflix
Linux Profiling at NetflixLinux Profiling at Netflix
Linux Profiling at NetflixBrendan Gregg
 
Building Network Functions with eBPF & BCC
Building Network Functions with eBPF & BCCBuilding Network Functions with eBPF & BCC
Building Network Functions with eBPF & BCCKernel TLV
 
Xdp and ebpf_maps
Xdp and ebpf_mapsXdp and ebpf_maps
Xdp and ebpf_mapslcplcp1
 
eBPF - Observability In Deep
eBPF - Observability In DeepeBPF - Observability In Deep
eBPF - Observability In DeepMydbops
 
High-Performance Networking Using eBPF, XDP, and io_uring
High-Performance Networking Using eBPF, XDP, and io_uringHigh-Performance Networking Using eBPF, XDP, and io_uring
High-Performance Networking Using eBPF, XDP, and io_uringScyllaDB
 

What's hot (20)

Introduction to eBPF and XDP
Introduction to eBPF and XDPIntroduction to eBPF and XDP
Introduction to eBPF and XDP
 
BPF - in-kernel virtual machine
BPF - in-kernel virtual machineBPF - in-kernel virtual machine
BPF - in-kernel virtual machine
 
eBPF - Rethinking the Linux Kernel
eBPF - Rethinking the Linux KerneleBPF - Rethinking the Linux Kernel
eBPF - Rethinking the Linux Kernel
 
Linux Network Stack
Linux Network StackLinux Network Stack
Linux Network Stack
 
Introduction to eBPF
Introduction to eBPFIntroduction to eBPF
Introduction to eBPF
 
Security Monitoring with eBPF
Security Monitoring with eBPFSecurity Monitoring with eBPF
Security Monitoring with eBPF
 
Staring into the eBPF Abyss
Staring into the eBPF AbyssStaring into the eBPF Abyss
Staring into the eBPF Abyss
 
DockerCon 2017 - Cilium - Network and Application Security with BPF and XDP
DockerCon 2017 - Cilium - Network and Application Security with BPF and XDPDockerCon 2017 - Cilium - Network and Application Security with BPF and XDP
DockerCon 2017 - Cilium - Network and Application Security with BPF and XDP
 
Performance Wins with eBPF: Getting Started (2021)
Performance Wins with eBPF: Getting Started (2021)Performance Wins with eBPF: Getting Started (2021)
Performance Wins with eBPF: Getting Started (2021)
 
Fun with Network Interfaces
Fun with Network InterfacesFun with Network Interfaces
Fun with Network Interfaces
 
The TCP/IP Stack in the Linux Kernel
The TCP/IP Stack in the Linux KernelThe TCP/IP Stack in the Linux Kernel
The TCP/IP Stack in the Linux Kernel
 
Systems@Scale 2021 BPF Performance Getting Started
Systems@Scale 2021 BPF Performance Getting StartedSystems@Scale 2021 BPF Performance Getting Started
Systems@Scale 2021 BPF Performance Getting Started
 
BPF / XDP 8월 세미나 KossLab
BPF / XDP 8월 세미나 KossLabBPF / XDP 8월 세미나 KossLab
BPF / XDP 8월 세미나 KossLab
 
LISA2019 Linux Systems Performance
LISA2019 Linux Systems PerformanceLISA2019 Linux Systems Performance
LISA2019 Linux Systems Performance
 
Linux Profiling at Netflix
Linux Profiling at NetflixLinux Profiling at Netflix
Linux Profiling at Netflix
 
Building Network Functions with eBPF & BCC
Building Network Functions with eBPF & BCCBuilding Network Functions with eBPF & BCC
Building Network Functions with eBPF & BCC
 
Xdp and ebpf_maps
Xdp and ebpf_mapsXdp and ebpf_maps
Xdp and ebpf_maps
 
eBPF - Observability In Deep
eBPF - Observability In DeepeBPF - Observability In Deep
eBPF - Observability In Deep
 
High-Performance Networking Using eBPF, XDP, and io_uring
High-Performance Networking Using eBPF, XDP, and io_uringHigh-Performance Networking Using eBPF, XDP, and io_uring
High-Performance Networking Using eBPF, XDP, and io_uring
 
eBPF Workshop
eBPF WorkshopeBPF Workshop
eBPF Workshop
 

Viewers also liked

twlkh-linux-vsyscall-and-vdso
twlkh-linux-vsyscall-and-vdsotwlkh-linux-vsyscall-and-vdso
twlkh-linux-vsyscall-and-vdsoViller Hsiao
 
EBPF and Linux Networking
EBPF and Linux NetworkingEBPF and Linux Networking
EBPF and Linux NetworkingPLUMgrid
 
Linux Networking Explained
Linux Networking ExplainedLinux Networking Explained
Linux Networking ExplainedThomas Graf
 
Velocity 2015 linux perf tools
Velocity 2015 linux perf toolsVelocity 2015 linux perf tools
Velocity 2015 linux perf toolsBrendan Gregg
 
LinuxCon 2015 Linux Kernel Networking Walkthrough
LinuxCon 2015 Linux Kernel Networking WalkthroughLinuxCon 2015 Linux Kernel Networking Walkthrough
LinuxCon 2015 Linux Kernel Networking WalkthroughThomas Graf
 
The Next Linux Superpower: eBPF Primer
The Next Linux Superpower: eBPF PrimerThe Next Linux Superpower: eBPF Primer
The Next Linux Superpower: eBPF PrimerSasha Goldshtein
 
ebpf and IO Visor: The What, how, and what next!
ebpf and IO Visor: The What, how, and what next!ebpf and IO Visor: The What, how, and what next!
ebpf and IO Visor: The What, how, and what next!Affan Syed
 
Linux Performance Analysis: New Tools and Old Secrets
Linux Performance Analysis: New Tools and Old SecretsLinux Performance Analysis: New Tools and Old Secrets
Linux Performance Analysis: New Tools and Old SecretsBrendan Gregg
 
Linux Systems Performance 2016
Linux Systems Performance 2016Linux Systems Performance 2016
Linux Systems Performance 2016Brendan Gregg
 
Broken Linux Performance Tools 2016
Broken Linux Performance Tools 2016Broken Linux Performance Tools 2016
Broken Linux Performance Tools 2016Brendan Gregg
 
Yet another introduction to Linux RCU
Yet another introduction to Linux RCUYet another introduction to Linux RCU
Yet another introduction to Linux RCUViller Hsiao
 
OpenEmbedded & BitBake - Denx
OpenEmbedded & BitBake - DenxOpenEmbedded & BitBake - Denx
OpenEmbedded & BitBake - Denxyang firo
 
Trace kernel code tips
Trace kernel code tipsTrace kernel code tips
Trace kernel code tipsViller Hsiao
 
mbed-os 3.0 modules dependency graph
mbed-os 3.0 modules dependency graphmbed-os 3.0 modules dependency graph
mbed-os 3.0 modules dependency graphViller Hsiao
 
Linux Tracing Superpowers by Eugene Pirogov
Linux Tracing Superpowers by Eugene PirogovLinux Tracing Superpowers by Eugene Pirogov
Linux Tracing Superpowers by Eugene PirogovPivorak MeetUp
 
Cilium - Fast IPv6 Container Networking with BPF and XDP
Cilium - Fast IPv6 Container Networking with BPF and XDPCilium - Fast IPv6 Container Networking with BPF and XDP
Cilium - Fast IPv6 Container Networking with BPF and XDPThomas Graf
 
Linux 4.x Tracing Tools: Using BPF Superpowers
Linux 4.x Tracing Tools: Using BPF SuperpowersLinux 4.x Tracing Tools: Using BPF Superpowers
Linux 4.x Tracing Tools: Using BPF SuperpowersBrendan Gregg
 
Linux 4.x Tracing: Performance Analysis with bcc/BPF
Linux 4.x Tracing: Performance Analysis with bcc/BPFLinux 4.x Tracing: Performance Analysis with bcc/BPF
Linux 4.x Tracing: Performance Analysis with bcc/BPFBrendan Gregg
 
Evolving Virtual Networking with IO Visor
Evolving Virtual Networking with IO VisorEvolving Virtual Networking with IO Visor
Evolving Virtual Networking with IO VisorLarry Lang
 
KubeCon EU 2016: Using Traffic Control to Test Apps in Kubernetes
KubeCon EU 2016: Using Traffic Control to Test Apps in KubernetesKubeCon EU 2016: Using Traffic Control to Test Apps in Kubernetes
KubeCon EU 2016: Using Traffic Control to Test Apps in KubernetesKubeAcademy
 

Viewers also liked (20)

twlkh-linux-vsyscall-and-vdso
twlkh-linux-vsyscall-and-vdsotwlkh-linux-vsyscall-and-vdso
twlkh-linux-vsyscall-and-vdso
 
EBPF and Linux Networking
EBPF and Linux NetworkingEBPF and Linux Networking
EBPF and Linux Networking
 
Linux Networking Explained
Linux Networking ExplainedLinux Networking Explained
Linux Networking Explained
 
Velocity 2015 linux perf tools
Velocity 2015 linux perf toolsVelocity 2015 linux perf tools
Velocity 2015 linux perf tools
 
LinuxCon 2015 Linux Kernel Networking Walkthrough
LinuxCon 2015 Linux Kernel Networking WalkthroughLinuxCon 2015 Linux Kernel Networking Walkthrough
LinuxCon 2015 Linux Kernel Networking Walkthrough
 
The Next Linux Superpower: eBPF Primer
The Next Linux Superpower: eBPF PrimerThe Next Linux Superpower: eBPF Primer
The Next Linux Superpower: eBPF Primer
 
ebpf and IO Visor: The What, how, and what next!
ebpf and IO Visor: The What, how, and what next!ebpf and IO Visor: The What, how, and what next!
ebpf and IO Visor: The What, how, and what next!
 
Linux Performance Analysis: New Tools and Old Secrets
Linux Performance Analysis: New Tools and Old SecretsLinux Performance Analysis: New Tools and Old Secrets
Linux Performance Analysis: New Tools and Old Secrets
 
Linux Systems Performance 2016
Linux Systems Performance 2016Linux Systems Performance 2016
Linux Systems Performance 2016
 
Broken Linux Performance Tools 2016
Broken Linux Performance Tools 2016Broken Linux Performance Tools 2016
Broken Linux Performance Tools 2016
 
Yet another introduction to Linux RCU
Yet another introduction to Linux RCUYet another introduction to Linux RCU
Yet another introduction to Linux RCU
 
OpenEmbedded & BitBake - Denx
OpenEmbedded & BitBake - DenxOpenEmbedded & BitBake - Denx
OpenEmbedded & BitBake - Denx
 
Trace kernel code tips
Trace kernel code tipsTrace kernel code tips
Trace kernel code tips
 
mbed-os 3.0 modules dependency graph
mbed-os 3.0 modules dependency graphmbed-os 3.0 modules dependency graph
mbed-os 3.0 modules dependency graph
 
Linux Tracing Superpowers by Eugene Pirogov
Linux Tracing Superpowers by Eugene PirogovLinux Tracing Superpowers by Eugene Pirogov
Linux Tracing Superpowers by Eugene Pirogov
 
Cilium - Fast IPv6 Container Networking with BPF and XDP
Cilium - Fast IPv6 Container Networking with BPF and XDPCilium - Fast IPv6 Container Networking with BPF and XDP
Cilium - Fast IPv6 Container Networking with BPF and XDP
 
Linux 4.x Tracing Tools: Using BPF Superpowers
Linux 4.x Tracing Tools: Using BPF SuperpowersLinux 4.x Tracing Tools: Using BPF Superpowers
Linux 4.x Tracing Tools: Using BPF Superpowers
 
Linux 4.x Tracing: Performance Analysis with bcc/BPF
Linux 4.x Tracing: Performance Analysis with bcc/BPFLinux 4.x Tracing: Performance Analysis with bcc/BPF
Linux 4.x Tracing: Performance Analysis with bcc/BPF
 
Evolving Virtual Networking with IO Visor
Evolving Virtual Networking with IO VisorEvolving Virtual Networking with IO Visor
Evolving Virtual Networking with IO Visor
 
KubeCon EU 2016: Using Traffic Control to Test Apps in Kubernetes
KubeCon EU 2016: Using Traffic Control to Test Apps in KubernetesKubeCon EU 2016: Using Traffic Control to Test Apps in Kubernetes
KubeCon EU 2016: Using Traffic Control to Test Apps in Kubernetes
 

Similar to Meet cute-between-ebpf-and-tracing

Kernel Recipes 2016 - The kernel report
Kernel Recipes 2016 - The kernel reportKernel Recipes 2016 - The kernel report
Kernel Recipes 2016 - The kernel reportAnne Nicolas
 
[발표자료] 오픈소스 기반 고가용성 Pacemaker 소개 및 적용 사례_20230703_v1.1F.pptx
[발표자료] 오픈소스 기반 고가용성 Pacemaker 소개 및 적용 사례_20230703_v1.1F.pptx[발표자료] 오픈소스 기반 고가용성 Pacemaker 소개 및 적용 사례_20230703_v1.1F.pptx
[발표자료] 오픈소스 기반 고가용성 Pacemaker 소개 및 적용 사례_20230703_v1.1F.pptxssuserf8b8bd1
 
Francesco Versaci - Flink in genomics - efficient and scalable processing of ...
Francesco Versaci - Flink in genomics - efficient and scalable processing of ...Francesco Versaci - Flink in genomics - efficient and scalable processing of ...
Francesco Versaci - Flink in genomics - efficient and scalable processing of ...Flink Forward
 
Extensive Introduction to ModSecurity and the OWASP Core Rule Set
Extensive Introduction to ModSecurity and the OWASP Core Rule SetExtensive Introduction to ModSecurity and the OWASP Core Rule Set
Extensive Introduction to ModSecurity and the OWASP Core Rule SetChristian Folini
 
Alfresco Workshop: Installing Alfresco Content Services and Alfresco Governan...
Alfresco Workshop: Installing Alfresco Content Services and Alfresco Governan...Alfresco Workshop: Installing Alfresco Content Services and Alfresco Governan...
Alfresco Workshop: Installing Alfresco Content Services and Alfresco Governan...Lighton Phiri
 
Package a PyApp as a Flatpak Package: An HTTP Server for Example @ PyCon APAC...
Package a PyApp as a Flatpak Package: An HTTP Server for Example @ PyCon APAC...Package a PyApp as a Flatpak Package: An HTTP Server for Example @ PyCon APAC...
Package a PyApp as a Flatpak Package: An HTTP Server for Example @ PyCon APAC...Jian-Hong Pan
 
Efficient System Monitoring in Cloud Native Environments
Efficient System Monitoring in Cloud Native EnvironmentsEfficient System Monitoring in Cloud Native Environments
Efficient System Monitoring in Cloud Native EnvironmentsGergely Szabó
 
Linux networking is Awesome!
Linux networking is Awesome!Linux networking is Awesome!
Linux networking is Awesome!Cumulus Networks
 
Building Scalable Data Center Networks
Building Scalable Data Center NetworksBuilding Scalable Data Center Networks
Building Scalable Data Center NetworksCumulus Networks
 
Launch and Environment Constraints Overview
Launch and Environment Constraints OverviewLaunch and Environment Constraints Overview
Launch and Environment Constraints OverviewCsaba Fitzl
 
Quick start with pallaral meta on window10 virtual desktop-virtualbox linux u...
Quick start with pallaral meta on window10 virtual desktop-virtualbox linux u...Quick start with pallaral meta on window10 virtual desktop-virtualbox linux u...
Quick start with pallaral meta on window10 virtual desktop-virtualbox linux u...Thomas K. Y. Lam
 
Rust & Python : Python WA October meetup
Rust & Python : Python WA October meetupRust & Python : Python WA October meetup
Rust & Python : Python WA October meetupJohn Vandenberg
 
Newstalk week 20/2014
Newstalk week 20/2014Newstalk week 20/2014
Newstalk week 20/2014Dusan Klinec
 
Time Sensitive Networking in the Linux Kernel
Time Sensitive Networking in the Linux KernelTime Sensitive Networking in the Linux Kernel
Time Sensitive Networking in the Linux Kernelhenrikau
 
Improved kernel based port-knocking in linux
Improved kernel based port-knocking in linuxImproved kernel based port-knocking in linux
Improved kernel based port-knocking in linuxdinomasch
 
Postgresql on NFS - J.Battiato, pgday2016
Postgresql on NFS - J.Battiato, pgday2016Postgresql on NFS - J.Battiato, pgday2016
Postgresql on NFS - J.Battiato, pgday2016Jonathan Battiato
 

Similar to Meet cute-between-ebpf-and-tracing (20)

Kernel Recipes 2016 - The kernel report
Kernel Recipes 2016 - The kernel reportKernel Recipes 2016 - The kernel report
Kernel Recipes 2016 - The kernel report
 
shilpi
shilpishilpi
shilpi
 
Shilpi
ShilpiShilpi
Shilpi
 
[발표자료] 오픈소스 기반 고가용성 Pacemaker 소개 및 적용 사례_20230703_v1.1F.pptx
[발표자료] 오픈소스 기반 고가용성 Pacemaker 소개 및 적용 사례_20230703_v1.1F.pptx[발표자료] 오픈소스 기반 고가용성 Pacemaker 소개 및 적용 사례_20230703_v1.1F.pptx
[발표자료] 오픈소스 기반 고가용성 Pacemaker 소개 및 적용 사례_20230703_v1.1F.pptx
 
Francesco Versaci - Flink in genomics - efficient and scalable processing of ...
Francesco Versaci - Flink in genomics - efficient and scalable processing of ...Francesco Versaci - Flink in genomics - efficient and scalable processing of ...
Francesco Versaci - Flink in genomics - efficient and scalable processing of ...
 
Extensive Introduction to ModSecurity and the OWASP Core Rule Set
Extensive Introduction to ModSecurity and the OWASP Core Rule SetExtensive Introduction to ModSecurity and the OWASP Core Rule Set
Extensive Introduction to ModSecurity and the OWASP Core Rule Set
 
Alfresco Workshop: Installing Alfresco Content Services and Alfresco Governan...
Alfresco Workshop: Installing Alfresco Content Services and Alfresco Governan...Alfresco Workshop: Installing Alfresco Content Services and Alfresco Governan...
Alfresco Workshop: Installing Alfresco Content Services and Alfresco Governan...
 
Package a PyApp as a Flatpak Package: An HTTP Server for Example @ PyCon APAC...
Package a PyApp as a Flatpak Package: An HTTP Server for Example @ PyCon APAC...Package a PyApp as a Flatpak Package: An HTTP Server for Example @ PyCon APAC...
Package a PyApp as a Flatpak Package: An HTTP Server for Example @ PyCon APAC...
 
Efficient System Monitoring in Cloud Native Environments
Efficient System Monitoring in Cloud Native EnvironmentsEfficient System Monitoring in Cloud Native Environments
Efficient System Monitoring in Cloud Native Environments
 
Linux networking is Awesome!
Linux networking is Awesome!Linux networking is Awesome!
Linux networking is Awesome!
 
Building Scalable Data Center Networks
Building Scalable Data Center NetworksBuilding Scalable Data Center Networks
Building Scalable Data Center Networks
 
Launch and Environment Constraints Overview
Launch and Environment Constraints OverviewLaunch and Environment Constraints Overview
Launch and Environment Constraints Overview
 
Quick start with pallaral meta on window10 virtual desktop-virtualbox linux u...
Quick start with pallaral meta on window10 virtual desktop-virtualbox linux u...Quick start with pallaral meta on window10 virtual desktop-virtualbox linux u...
Quick start with pallaral meta on window10 virtual desktop-virtualbox linux u...
 
Rust & Python : Python WA October meetup
Rust & Python : Python WA October meetupRust & Python : Python WA October meetup
Rust & Python : Python WA October meetup
 
ChainerUI v0.2, v0.3
ChainerUI v0.2, v0.3ChainerUI v0.2, v0.3
ChainerUI v0.2, v0.3
 
Newstalk week 20/2014
Newstalk week 20/2014Newstalk week 20/2014
Newstalk week 20/2014
 
Time Sensitive Networking in the Linux Kernel
Time Sensitive Networking in the Linux KernelTime Sensitive Networking in the Linux Kernel
Time Sensitive Networking in the Linux Kernel
 
Improved kernel based port-knocking in linux
Improved kernel based port-knocking in linuxImproved kernel based port-knocking in linux
Improved kernel based port-knocking in linux
 
161215
161215161215
161215
 
Postgresql on NFS - J.Battiato, pgday2016
Postgresql on NFS - J.Battiato, pgday2016Postgresql on NFS - J.Battiato, pgday2016
Postgresql on NFS - J.Battiato, pgday2016
 

Recently uploaded

SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsChristian Birchler
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...OnePlan Solutions
 
Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringHironori Washizaki
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalLionel Briand
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf31events.com
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfFerryKemperman
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Mater
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作qr0udbr0
 
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfExploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfkalichargn70th171
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样umasea
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationBradBedford3
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Matt Ray
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odishasmiwainfosol
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsSafe Software
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Developmentvyaparkranti
 

Recently uploaded (20)

SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
 
Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their Engineering
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive Goal
 
Odoo Development Company in India | Devintelle Consulting Service
Odoo Development Company in India | Devintelle Consulting ServiceOdoo Development Company in India | Devintelle Consulting Service
Odoo Development Company in India | Devintelle Consulting Service
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdf
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作
 
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfExploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion Application
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
 
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort ServiceHot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data Streams
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Development
 

Meet cute-between-ebpf-and-tracing