Usuário:X spager/EBPF
BPF_logo.png | |
Autor | Alexei Starovoitov, Daniel Borkmann[1][2] |
Desenvolvedor | Open source community, Meta, Google, Isovalent, Microsoft, Netflix[1] |
Lançamento | 2014[3] |
Escrito em | C |
Sistema operacional | Linux, Windows[4] |
Gênero(s) | Sistema de tempo de execução |
Licença | Linux: GPL Windows: MIT License |
Página oficial | ebpf |
Repositório | Linux: git Windows: github |
eBPF é uma tecnologia que pode executar programas em um contexto privilegiado, como o kernel do sistema operacional . [5] É o sucessor do mecanismo de filtragem Berkeley Packet Filter (BPF, com o "e" originalmente significando "estendido") no Linux e também é usado em outras partes do kernel do Linux. Ele é usado para estender com segurança e eficiência os recursos do kernel em tempo de execução, sem exigir alterações no código-fonte do kernel ou carregar módulos do kernel . [6] A segurança é fornecida por meio de um verificador no kernel que executa análise estática de código e rejeita programas que travam, travam ou interferem negativamente no kernel. [7] [8]
Este modelo de validação difere dos ambientes em sandbox, onde o ambiente de execução é restrito e o tempo de execução não tem insights sobre o programa. [9] Exemplos de programas que são rejeitados automaticamente são programas sem fortes garantias de saída (ou seja, loops for/while sem condições de saída) e programas que desreferenciam ponteiros sem verificações de segurança. [10]
Projeto
[editar | editar código-fonte]Os programas carregados que passaram no verificador são interpretados ou compilados just-in-time no kernel (compilados JIT) para desempenho de execução nativo. O modelo de execução é orientado a eventos e, com poucas exceções , é executado até a conclusão, o que significa que os programas podem ser anexados a vários pontos de gancho no kernel do sistema operacional e executados após o acionamento de um evento. Os casos de uso de eBPF incluem (mas não estão limitados a) redes como XDP, rastreamento e subsistemas de segurança . [5] Dado que a eficiência e flexibilidade do eBPF abriram novas possibilidades para resolver problemas de produção, Brendan Gregg apelidou o eBPF de "superpoderes para Linux". [11] Linus Torvalds disse: "O BPF tem sido realmente muito útil, e o verdadeiro poder dele é como ele permite que as pessoas criem códigos especializados que não são habilitados até serem solicitados". [12] Devido ao seu sucesso no Linux, o tempo de execução do eBPF foi portado para outros sistemas operacionais como o Windows .
História
[editar | editar código-fonte]O eBPF foi construído sobre o Berkeley Packet Filter (cBPF). No nível mais baixo, introduziu o uso de dez registradores de 64 bits (em vez de dois registradores longos de 32 bits para cBPF), semântica de salto diferente, uma instrução de chamada e convenção de passagem de registrador correspondente, novas instruções e uma codificação diferente para estes. instruções. [13]
Data | Evento |
---|---|
Abril de 2011 | O primeiro compilador jit dentro do kernel Linux do clássico Berkley Packet Filter é mesclado.[14] |
Janeiro de 2012 | O primeiro caso de uso não relacionado a redes do clássico Berkeley Packet Filter, seccomp-bpf,[15] aparece. Permite que chamadas de sistema sejam filtradas usando um politica implementada através e instruções BPF. |
Março de 2014 | David S. Miller, primary maintainer of the Linux networking stack, accepted the rework of the old in-kernel BPF interpreter. It was replaced by an eBPF interpreter and the Linux kernel internally translates classic BPF (cBPF) into eBPF instructions.[16] |
Março de 2015 | The ability to attach eBPF to kprobes as first tracing use case was merged.[18] In the same month, initial infrastructure work got accepted to attach eBPF to the networking traffic control (tc) layer allowing to attach eBPF to the core ingress and later also egress paths of the network stack, later heavily used by projects such as Cilium.[19][20][21] |
Agosto de 2015 | The eBPF compiler backend got merged into LLVM 3.7.0 release.[22] |
Setembro de 2015 | Brendan Gregg announced a collection of new eBPF-based tracing tools as the bcc project, providing a front-end for eBPF to make it easier to write programs.[23] |
Julho de 2016 | eBPF got the ability to be attached into network driver's core receive path. This layer is known today as eXpress DataPath (XDP) and was added as a response to DPDK to create a fast data path which works in combination with the Linux kernel rather than bypassing it.[24][25][26] |
Agosto de 2016 | Cilium was initially announced during LinuxCon as a project providing fast IPv6 container networking with eBPF and XDP. Today, Cilium has been adopted by major cloud provider's Kubernetes offerings and is one of the most widely used CNIs.[27][21][28] |
Novembro de 2016 | Netronome added offload of eBPF programs for XDP and tc BPF layer to their NIC.[29] |
Maio de 2017 | Meta's layer 4 load-balancer, Katran, went live. Every packet towards facebook.com since then has been processed by eBPF & XDP.[30] |
Novembro de 2017 | eBPF becomes its own kernel subsystem to ease the continuously growing kernel patch management. The first pull request by eBPF maintainers was submitted.[31] |
Setembro de 2017 | Bpftool was added to the Linux kernel as a user space utility to introspect the eBPF subsystem.[32] |
Janeiro de 2018 | A new socket family called AF_XDP was published, allowing for high performance packet processing with zero-copy semantics at the XDP layer.[33] Today, DPDK has an official AF_XDP poll-mode driver support.[34] |
Fevereiro de 2018 | The bpfilter prototype has been published, allowing translation of a subset of iptables rulesets into eBPF via a newly developed user mode driver. The work has caused controversies due to the ongoing nftables development effort and has not been merged into mainline.[35][36] |
Outubro de 2018 | The new bpftrace tool has been announced by Brendan Gregg as DTrace 2.0 for Linux.[37] |
Novembro de 2018 | eBPF introspection has been added for kTLS in order to support the ability for in-kernel TLS policy enforcement.[38] |
Novembro de 2018 | BTF (BPF Type Format) has been added to the Linux kernel as an efficient meta data format which is approximately 100x smaller in size than DWARF.[39] |
Dezembro de 2019 | The first 880-page long book on BPF, written by Brendan Gregg, was released.[40] |
Março de 2020 | Google upstreamed BPF LSM support into the Linux kernel, enabling programmable Linux Security Modules (LSMs) through eBPF.[41] |
Setembro de 2020 | The eBPF compiler backend for GNU Compiler Collection (GCC) was merged.[42] |
Marca
[editar | editar código-fonte]O alias eBPF é frequentemente usado de forma intercambiável com BPF, [43] por exemplo pela comunidade do kernel Linux. eBPF e BPF são chamados de nomes de tecnologia como LLVM . [2] O eBPF evoluiu do Berkeley Packet Filter como uma versão estendida, mas seu caso de uso superou a rede, e hoje o eBPF como pseudo-acrônimo é o preferido. [2]
A abelha é o logotipo oficial da eBPF. No primeiro Summit da eBPF houve votação e a mascote abelha foi batizada de “eBee”. [44] [45] O logotipo foi originalmente criado por Vadim Shchekoldin. [45] Mascotes eBPF não oficiais anteriores existiram no passado, [46] mas não foram amplamente adotados.
Governança
[editar | editar código-fonte]A Fundação eBPF foi criada em agosto de 2021 com o objetivo de expandir as contribuições feitas para ampliar os poderosos recursos do eBPF e crescer além do Linux. [1] Os membros fundadores incluem Meta, Google, Isovalent, Microsoft e Netflix . O objetivo é arrecadar, orçamentar e gastar fundos em apoio a vários projetos de código aberto, dados abertos e/ou padrões abertos relacionados às tecnologias eBPF [47] para impulsionar ainda mais o crescimento e a adoção do ecossistema eBPF. Desde o início, Red Hat, Huawei, Crowdstrike, Tigera, DaoCloud, Datoms, FutureWei também aderiram. [48]
Adoção
[editar | editar código-fonte]O eBPF foi adotado por vários usuários de produção em larga escala, por exemplo:
- A Meta usa eBPF através do seu load blancer Katran para todo trafego para facebook.com[49][50][51][30]
- O Google usa eBPF no GKE, ele desenvolve e usa BPF LSM para substituir audit e usa eBPF para networking[28][52][53][54]
- Cloudflare uses eBPF for load-balancing and DDoS protection and security enforcement[55][56][57][58][59]
- Netflix uses eBPF for fleet-wide network observability and performance diagnosis[60][61]
- Dropbox uses eBPF through Katran for layer 4 load-balancing[62]
- Android uses eBPF for NAT46 and traffic monitoring[63][64][65]
- Samsung Galaxy uses eBPF for Networking solutions [66]
- Yahoo! Inc uses eBPF through Cilium for layer 4 load balancing[67]
- LinkedIn uses eBPF for infrastructure observability[68]
- Alibaba uses eBPF for Kubernetes Pod load-balancing[69]
- Datadog uses eBPF for Kubernetes Pod networking and security enforcement[70][71][72]
- Trip.com uses eBPF for Kubernetes Pod networking[73][74]
- Shopify uses eBPF for intrusion detection through Falco[75]
- DoorDash uses eBPF through BPFAgent for kernel level monitoring[76]
- Microsoft ported eBPF and XDP to Windows[77][78][79]
- Seznam uses eBPF through Cilium for layer 4 load-balancing[80]
- DigitalOcean uses eBPF and XDP to rate limit access to internal services in their virtual network[81]
- CapitalOne uses eBPF for Kubernetes Pod networking[82]
- Bell Canada uses eBPF to moderize telco networking with SRv6[83]
- Elastic_NV uses eBPF for code profiling as part of their observability offering [84]
- Apple uses eBPF for Kubernetes Pod security[85]
- Sky uses eBPF for Kubernetes Pod networking[86]
- Walmart uses eBPF for layer 4 load-balancing[87][88]
- Huawei uses eBPF through their DIGLIM secure boot system[89]
- Ikea uses eBPF for Kubernetes Pod networking[90]
- The New York Times uses eBPF for networking[91]
- Red Hat uses eBPF at scale for load balancing and tracing in their private cloud
- Palantir Technologies uses eBPF to debug networking problems in large scale Kubernetes clusters[92]
Segurança
[editar | editar código-fonte]Devido à facilidade de programação, o eBPF tem sido usado como uma ferramenta para implementar ataques de canal lateral de temporização microarquitetural, como Spectre, contra microprocessadores vulneráveis. [93] Embora o eBPF sem privilégios tenha implementado mitigações contra ataques de execução transitórios, [94] o uso sem privilégios foi finalmente desabilitado pela comunidade do kernel por padrão para proteger contra uso contra futuras vulnerabilidades de hardware. [95]
Veja também
[editar | editar código-fonte]Referências
- ↑ a b c «Meta, Google, Isovalent, Microsoft and Netflix Launch eBPF Foundation as Part of the Linux Foundation». Linux Foundation. 12 de Agosto de 2021. Consultado em 1 de Julho de 2022 Erro de citação: Código
<ref>
inválido; o nome ":1" é definido mais de uma vez com conteúdos diferentes - ↑ a b c «BPF Internals». USENIX LISA 2021 conference. 1 de Junho de 2021. Consultado em 1 de Julho 2022
- ↑ «eBPF and Kubernetes: Little Helper Minions for Scaling Microservices». CNCF KubeCon + CloudNativeCon Europe 2020. 19 de Agosto de 2020. Consultado em 1 de Julho de 2022
- ↑ «Making eBPF work on Windows». Microsoft Open Source Blog. 10 de Maio de 2021. Consultado em 1 de Julho de 2022
- ↑ a b «eBPF Documentation: What is eBPF?». eBPF.io. Consultado em 1 de Julho de 2022 Erro de citação: Código
<ref>
inválido; o nome ":8" é definido mais de uma vez com conteúdos diferentes - ↑ «eBPF - Rethinking the Linux Kernel». QCon 2020. Consultado em 1 de Julho de 2022
- ↑ «Safe Programs The Foundation of BPF.». eBPF Summit 2021. 8 de Novembro de 2020. Consultado em 1 de Julho de 2022
- ↑ «BPF and Spectre: Mitigating transient execution attacks». POPL 2022 conference. 22 de Janeiro de 2022. Consultado em 1 de Julho de 2022
- ↑ «eBPF - The Silent Platform Revolution from Cloud Native» (PDF). SIGCOMM 2023, 1st Workshop on eBPF and Kernel Extensions. 10 de Setembro de 2023. Consultado em 5 de Outubro de 2023
- ↑ Hedam, Niclas (26 de Maio de 2023). «eBPF - From a Programmer's Perspective» (PDF) (em inglês). doi:10.13140/RG.2.2.33688.11529/4
- ↑ «Linux BPF Superpowers». Brendan Gregg's Blog. 5 de Março de 2016. Consultado em 1 de Julho de 2022
- ↑ «Linus Torvalds talks about coming back to work on Linux». zdnet Interview with Linus Torvalds. 23 de Outubro de 2018. Consultado em 1 de Julho de 2022
- ↑ «Classic BPF vs eBPF». LWN. Março de 2014. Consultado em 6 de Janeiro de 2023
- ↑ «net: filter: Just In Time compiler». lore.kernel.org. Abril de 2011. Consultado em 1 de Julho de 2022
- ↑ «Yet another new approach to seccomp». LWN. 1 de Janeiro de 2012. Consultado em 1 de Julho de 2022
- ↑ «BPF updates». lore.kernel.org. Março de 2014. Consultado em 1 de Julho de 2022
- ↑ «Happy birthday BPF!». lore.kernel.org. Setembro de 2014. Consultado em 1 de Julho de 2022
- ↑ «tracing: attach eBPF programs to kprobes». lore.kernel.org. Março de 2015. Consultado em 1 de Julho de 2022
- ↑ «eBPF support for cls_bpf». lore.kernel.org. Março de 2015. Consultado em 1 de Julho de 2022
- ↑ «net, sched: add clsact qdisc». lore.kernel.org. Janeiro de 2016. Consultado em 1 de Julho de 2022
- ↑ a b «eBPF-based Networking, Observability, Security». cilium.io. Janeiro de 2016. Consultado em 1 de Julho 2022
- ↑ «LLVM 3.7 Release Notes». releases.llvm.org. Agosto de 2015. Consultado em 1 de Julho de 2022
- ↑ «bcc: Taming Linux 4.3+ Tracing Superpowers». brendangregg.com. Setembro de 2015. Consultado em 1 de Julho 2022
- ↑ «Add driver bpf hook for early packet drop and forwarding». lore.kernel.org. Julho de 2016. Consultado em 1 de Julho de 2022
- ↑ «eCHO episode 9: XDP and Load Balancing». youtube.com. Junho de 2021. Consultado em 1 de Julho de 2022
- ↑ Høiland-Jørgensen, Toke; Brouer, Jesper Dangaard; Borkmann, Daniel; Fastabend, John; Herbert, Tom; Ahern, David; Miller, David (Dezembro de 2018). «The eXpress data path: Fast programmable packet processing in the operating system kernel». Proceedings of the 14th International Conference on emerging Networking EXperiments and Technologies. pp. 54–66. ISBN 9781450360807. doi:10.1145/3281411.3281443
- ↑ removed
- ↑ a b «New GKE Dataplane V2 increases security and visibility for containers». cloud.google.com. Maio de 2021. Consultado em 16 de Agosto de 2022
- ↑ «nfp ring reconfiguration and XDP support». lore.kernel.org. Novembro de 2016. Consultado em 1 de Julho 2022
- ↑ a b «XDP 1.5 Years In Production. Evolution and Lessons Learned.». lpc.events. Novembro de 2018. Consultado em 16 de Agosto de 2022
- ↑ «pull-request: bpf 2017-11-23». lore.kernel.org. Novembro de 2017. Consultado em 1 de Julho de 2022
- ↑ «tools: add bpftool». lore.kernel.org. Setembro de 2017. Consultado em 1 de Julho de 2022
- ↑ «Introducing AF_XDP support». lore.kernel.org. Janeiro de 2018. Consultado em 1 de Julho de 2022
- ↑ «AF_XDP Poll Mode Driver». doc.dpdk.org. Agosto de 2022. Consultado em 16 de Agosto de 2022
- ↑ «BPF comes to firewalls». lwn.net. Fevereiro de 2018. Consultado em 1 de Julho de 2022
- ↑ «Why is the kernel community replacing iptables with BPF?». cilium.io. Abril de 2018. Consultado em 1 de Julho de 2022
- ↑ «bpftrace (DTrace 2.0) for Linux 2018». brendangregg.com. Outubro de 2018. Consultado em 16 de Agosto de 2022
- ↑ «Combining kTLS and BPF for Introspection and Policy Enforcement» (PDF). vger.kernel.org. Novembro de 2018. Consultado em 1 de Julho de 2022
- ↑ «BTF deduplication and Linux kernel BTF». nakryiko.com. Novembro de 2018. Consultado em 1 de Julho de 2022
- ↑ «BPF Performance Tools (book)». brendangregg.com. Dezembro de 2019. Consultado em 16 de Agosto de 2022
- ↑ «MAC and Audit policy using eBPF (KRSI)». lore.kernel.org. Março de 2020. Consultado em 16 de Agosto de 2022
- ↑ «BPF in GCC». lwn.net. Setembro de 2020. Consultado em 16 de Agosto de 2022
- ↑ Brendan Gregg (Dezembro de 2019). BPF Performance Tools. [S.l.]: Addison-Wesley. ISBN 978-0136554820
- ↑ «eBPF Summit Day Two». cilium.io. Outubro de 2020. Consultado em 1 de Julho de 2022
- ↑ a b «What is the bee named?». ebpf.io. Consultado em 1 de Julho de 2022
- ↑ «eBPF: One Small Step». Brendan Gregg's Blog. Maio de 2015. Consultado em 1 de Julho de 2022
- ↑ «eBPF Foundation Charter». ebpf.foundation. Junho de 2021. Consultado em 16 de Agosto de 2022
- ↑ «eBPF Foundation Governance». ebpf.foundation. Agosto de 2022. Consultado em 16 de Agosto de 2022
- ↑ «Open-sourcing Katran, a scalable network load balancer». fb.com. Maio de 2018. Consultado em 16 de Agosto de 2022
- ↑ «BPF at Facebook». youtube.com. Dezembro de 2019. Consultado em 16 de Agosto de 2022
- ↑ «From XDP to socket». lpc.events. Setembro de 2021. Consultado em 16 de Agosto de 2022
- ↑ «eCHO episode 29: BPF LSM with KP Singh». youtube.com. Novembro de 2021. Consultado em 16 de Agosto de 2022
- ↑ «BPF security auditing at Google - Brendan Jackman/KP Singh». youtube.com. Novembro de 2021. Consultado em 16 de Agosto de 2022
- ↑ «Replacing HTB with EDT and BPF». netdevconf.info. Julho de 2020. Consultado em 16 de Agosto de 2022
- ↑ «Cloudflare architecture and how BPF eats the world». blog.cloudflare.com. Maio de 2019. Consultado em 16 de Agosto de 2022
- ↑ «It's crowded in here!». blog.cloudflare.com. Outubro de 2019. Consultado em 16 de Agosto de 2022
- ↑ «Production ready eBPF, or how we fixed the BSD socket API». blog.cloudflare.com. Fevereiro de 2022. Consultado em 16 de Agosto de 2022
- ↑ «Live-patching security vulnerabilities inside the Linux kernel with eBPF Linux Security Module». blog.cloudflare.com. Junho de 2022. Consultado em 16 de Agosto de 2022
- ↑ «Unimog - Cloudflare's edge load balancer». blog.cloudflare.com. Setembro 2020. Consultado em 16 de Agosto de 2022
- ↑ «How Netflix uses eBPF flow logs at scale for network insight». netflixtechblog.com. Junho 2021. Consultado em 16 de Agosto de 2022
- ↑ «Extending Vector with eBPF to inspect host and container performance». netflixtechblog.com. Fevereiro de 2019. Consultado em 16 de Agosto de 2022
- ↑ «Dropbox traffic infrastructure: Edge network». dropbox.tech. Outubro de 2018. Consultado em 16 de Agosto de 2022
- ↑ «eBPF Traffic Monitoring». source.android.com. Agosto de 2022. Consultado em 16 de Agosto de 2022
- ↑ «Extending the Kernel with eBPF». source.android.com. Agosto de 2022. Consultado em 16 de Agosto de 2022
- ↑ «NAT46 translation with BPF». lore.kernel.org. Abril de 2022. Consultado em 16 de Agosto de 2022
- ↑ «BPF for Android: How we leverage BPF for our networking solutions - Madhan Raj Kanagarathinam». www.youtube.com. Fevereiro de 2024. Consultado em 19 de Fevereiro de 2022
- ↑ Software L4 Load Balancing for Kubernetes Services at Yahoo! – Karthikeyan Thangaraj, Verizon Media (em inglês), consultado em 3 de fevereiro de 2024
- ↑ «Skyfall: eBPF agent for infrastructure observability». www.linkedin.com (em inglês). Consultado em 3 de fevereiro de 2024
- ↑ «How Does Alibaba Cloud Build High-Performance Cloud-Native Pod Networks in Production Environments?». alibabacloud.com. Setembro de 2020. Consultado em 16 de Agosto de 2022
- ↑ «Datadog on eBPF». datadogon.datadoghq.com. Fevereiro 2021. Consultado em 16 de Agosto de 2022
- ↑ «Runtime Security Monitoring with eBPF» (PDF). sstic.org. Fevereiro 2021. Consultado em 16 de Agosto de 2022
- ↑ «Our eBPF Journey at Datadog - Laurent Bernaille & Tabitha Sable, Datadog». youtube.com. Novembro de 2020. Consultado em 16 de Agosto de 2022
- ↑ «User Story - How Trip.com uses Cilium». cilium.io. Fevereiro de 2020. Consultado em 16 de Agosto de 2022
- ↑ «Trip.com: Stepping into Cloud Native Networking Era with Cilium+BGP». arthurchiao.art. Novembro de 2020. Consultado em 16 de Agosto de 2022
- ↑ Keynote: Open Source Intrusion Detection for Containers at Shopify - Shane Lawrence & Kris Nóva (em inglês), consultado em 9 de fevereiro de 2024
- ↑ Rogers, Patrick (15 de agosto de 2023). «BPFAgent: eBPF for Monitoring at DoorDash - DoorDash Engineering Blog». DoorDash Engineering Blog (em inglês). Consultado em 9 de fevereiro de 2024
- ↑ «Making eBPF work on Windows». cloudblogs.microsoft.com. Maio 2021. Consultado em 16 de Agosto de 2022
- ↑ «Getting Linux based eBPF programs to run with eBPF for Windows». cloudblogs.microsoft.com. Fevereiro 2022. Consultado em 16 de Agosto de 2022
- ↑ «Progress on making eBPF work on Windows». cloudblogs.microsoft.com. Novembro 2019. Consultado em 16 de Agosto de 2022
- ↑ «Cilium Standalone Layer 4 Load Balancer XDP». cilium.io. Julho de 2022. Consultado em 16 de Agosto de 2022
- ↑ Rate limiting access to internal services in a virtual network – Nick Bouliane, DigitalOcean (em inglês), consultado em 4 de fevereiro de 2024
- ↑ «Building a Secure and Maintainable PaaS - Bradley Whitfield, Capital One». youtube.com. Novembro de 2020. Consultado em 16 de Agosto de 2022
- ↑ Why eBPF is changing the telco networking space – Daniel Bernier, Bell Canada (em inglês), consultado em 9 de fevereiro de 2024
- ↑ Elastic Universal Profiling (em inglês), consultado em 26 de fevereiro de 2024
- ↑ «Think eBPF for Kernel Security Monitoring - Falco at Apple- Eric Sage & Melissa Kilby, Apple». youtube.com. Outubro de 2021. Consultado em 16 de Agosto de 2022
- ↑ «eBPF & Cilium at Sky – Sebastian Duff, Anthony Comtois, Jospeh [sic] Samuel, Sky». youtube.com. Agosto de 2021. Consultado em 16 de Agosto de 2022
- ↑ «Running and orchestrating multiple XDP and TC programs – Brian Merrell, Walmart». youtube.com. Agosto de 2021. Consultado em 16 de Agosto de 2022
- ↑ «High Performance Load Balancing @Walmart – Kanthi Pavuluri & Karan Dalal, Walmart». youtube.com. Agosto de 2021. Consultado em 16 de Agosto de 2022
- ↑ «DIGLIM eBPF: secure boot at application level with minimal changes to distros - Roberto Sassu». youtube.com. Agosto de 2022. Consultado em 16 de Agosto de 2022
- ↑ «IKEA Private Cloud, eBPF Based Networking, Load Balancing, and Observability with... Karsten Nielsen». youtube.com. Maio 2022. Consultado em 16 de Agosto de 2022
- ↑ Panel Discussion: Is There Actually a Byte Behind All the Buzz? eBPF in Production! (em inglês), consultado em 9 de fevereiro de 2024
- ↑ Using user-space tracing to solve DNS problems – Andrius Grabauskas, Palantir (em inglês), consultado em 9 de fevereiro de 2024
- ↑ «Reading privileged memory with a side-channel». googleprojectzero.blogspot.com. 3 de Janeiro de 2018. Consultado em 16 de Agosto de 2022
- ↑ «BPF and Spectre: Mitigating transient execution attacks». popl22.sigplan.org. Consultado em 16 de Agosto de 2022
- ↑ «bpf: Disallow unprivileged bpf by default». kernel.org. Consultado em 16 de Agosto de 2022
Leitura adicional
[editar | editar código-fonte]- Gregg, Brendan (Dezembro de 2019). BPF Performance Tools. [S.l.]: Addison-Wesley. ISBN 978-0136554820
- David Calavera, Lorenzo Fontana (Dezembro de 2019). Linux Observability With BPF. [S.l.]: O'Reilly Media, Incorporated. ISBN 978-1492050209
- Gregg, Brendan (Dezembro de 2020). Systems Performance, Second edition. [S.l.: s.n.] ISBN 978-0136820154
- Rice, Liz (Abril de 2022). What Is eBPF?. [S.l.: s.n.] ISBN 978-1492097259
- Rice, Liz (Abril de 2023). Learning eBPF: Programming the Linux Kernel for Enhanced Observability, Networking, and Security. [S.l.]: O'Reilly Media. ISBN 978-1098135126
links externos
[editar | editar código-fonte]- eBPF.io - Introdução, tutoriais e recursos da comunidade eBPF (em inglês)
- eBPF.foundation - site da Fundação eBPF da Linux Foundation (em inglês)
- Documentário eBPF - Documentário sobre os primórdios da eBPF (em inglês)
[[Categoria:Software usando a licença MIT]] [[Categoria:Softwares de sistema livres]] [[Categoria:Software livre programado em C]] [[Categoria:!Páginas com traduções não revistas]]