vmm: Add a virtual networking layer
authorBarret Rhoden <brho@cs.berkeley.edu>
Mon, 9 Jan 2017 19:41:47 +0000 (14:41 -0500)
committerBarret Rhoden <brho@cs.berkeley.edu>
Tue, 10 Jan 2017 00:02:13 +0000 (19:02 -0500)
commitdc51020ec7e7b764da2515dd6491a9b1eb838c53
treecdf789e6aa05e27197e58600e65a27a31be6c8ef
parent54d9ed08de86e49a6fd08aa1ccdf827597292398
vmm: Add a virtual networking layer

Guests and Akaros can now both use the network concurrently.  The guest's
traffic is run through a NAT layer inside the VMM.  Akaros can port forward
to the guest.  The host also can reach the guest via those port forwards on
127.0.0.1.  The guest can reach the host at its router IP.

Pass an option file to vmrunkernel with -n, and read vnet_opts_example to
see what you can play with.  By default, the network will look like qemu's
user-mode networking to the guest (10.0.2.15 for the guest, 10.0.2.2 for
the router/host).

Signed-off-by: Barret Rhoden <brho@cs.berkeley.edu>
Makefile
tests/vmm/vmrunkernel.c
user/vmm/include/vmm/net.h [new file with mode: 0644]
user/vmm/include/vmm/virtio_net.h
user/vmm/nat.c [new file with mode: 0644]
user/vmm/virtio_net.c