Software Defined Networking & Peer-to-Peer Networking
Software Defined Networking
Open & Programmable
Traditional network
Network Device
Network Device
Network Device
Network Device
Control plane
Data plane
– decoupled –
[centralized]
Physically centralized controller leads to single point of failure and lacks scalability.
Logically centralized controller
Traditional network device does not support SDN.
Peer-to-Peer System
each peer functions both as a client and as a server simultaneously
Overlay Network
versus
peer-to-peer network
Distributed Hash Table
package kademliago
import "crypto/rand"
const IdByteSize = 20
type Node struct {
Id []byte
UdpPort string
IpAddress string
}
func NewNode(udpPort string, ipAddress string) *Node {
id := make([]byte, IdByteSize)
rand.Read(id)
return &Node{id, udpPort, ipAddress}
}
the two are