A distributed virtual switch