Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Difference with other go ebpf libraries #10

Closed
tamalsaha opened this issue Jul 13, 2019 · 2 comments
Closed

Difference with other go ebpf libraries #10

tamalsaha opened this issue Jul 13, 2019 · 2 comments
Labels
question Further information is requested

Comments

@tamalsaha
Copy link

tamalsaha commented Jul 13, 2019

Thanks for open sourcing this. I am curious to understand what are the differences among this and other goebpf libraries?

@belyalov belyalov added the question Further information is requested label Jul 14, 2019
@belyalov
Copy link
Contributor

Thanks for question! :)

So, I'd say that main difference is our library intended to be really simple to use but still preserves low level API so you can do basic things (load / attach / work with maps) in a real simple way, e.g. (snipped from readme.md):

    bpf.LoadElf("test.elf")
    xdp := bpf.GetProgramByName("xdp_test")
    xdp.Load()
    xdp.Attach("eth0")
    // etc

If I would compare it to libraries you mentioned above:

  • iovisor gobpf - is go bindings for bcc framework (developed by the same team, iovisor)
  • newtools ebpf - we found it a bit complicated to use, however I believe it does the same thing as Dropbox's ebpf library.
  • andrewkroh go-ebpf - I personally haven't tried this library, from brief look it is unclear how to use it, so can't describe the difference.

Hope it helps you.

@tamalsaha
Copy link
Author

Thanks for the response!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Further information is requested
Projects
None yet
Development

No branches or pull requests

2 participants