Abstract
DESCRIPTION:
INTRODUCTION
Peer-to-peer networking has been a topic that has piqued my interest since I started university. When I started learning about peer-to-peer networking in Go I ran into problems trying to establish connections when devices were not on the same local network. This turned into hours and hours of learning, finally gaining a deep understanding of networking devices and protocols. In the end, I didn’t give up and learned how to punch holes through networking devices to establish peer-to-peer connections over the internet. In this talk, I am going to share with you what I learned and how you can use Go and the go-libp2p module to punch holes through your networking devices to establish peer-to-peer connections.
CONCLUSION
I believe the go-libp2p module is the right choice for writing peer-to-peer networking applications in Go. I have shown you how to establish peer-to-peer connections over the internet with the ability to punch holes through networking devices. Now you have the information and tools you need to introduce peer-to-peer networking in your solutions when it’s the right choice. I hope in the future you consider peer-to-peer networking and the use of the go-libp2p module.
KEY TAKEAWAYS
* Awareness of go-libp2p existence: how easy it is to set up even complex p2p networks using Go
* Basic understanding of peer-to-peer networking, use cases, challenges that they impose, and how we are solving them.
* Awareness of the NAT hole punching procedure
ADDITIONAL NOTES:
TARGET AUDIENCE
* Go developers who find the topic of peer-to-peer networking interesting
* People that would like to know how to do p2p in go
* Intermedia Go developer with some networking experience