﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc	field_blocks	field_dependson	field_seealso
674	Implement virtio-net driver	Jakub Jermář		"Implement a native HelenOS driver for virtio network device.

 Details::
  Virtio is a [http://docs.oasis-open.org/virtio/virtio/v1.0/cs04/virtio-v1.0-cs04.html specification] for virtual I/O devices that allows to use paravirtualized drivers with an otherwise fully-virtualized guest OS, leading to more efficient I/O.

  Virtio network device (virtio-net) is currently supported by KVM and !VirtualBox.

  The new driver should be realized as a standalone service which plugs itself into the HelenOS networking stack and implements the network interface card interface in the virtio-net specific way.

 What Gains and Benefits will this bring?::
  HelenOS might need a virtio network device driver if we want to run it in a KVM-based hosting (e.g. Google Compute Engine) and serve some web content (e.g. microkernel.info) to the public from it.

 Difficulty::
  medium to high

 Required skills::
  A successful applicant will have good skills of programming in the C language and the ability to learn and use HelenOS specific I/O functions. A successful applicant should have a fair understanding of the workings of the networking stack and the NICF too.

 Documentation::
  * [http://docs.oasis-open.org/virtio/virtio/v1.0/cs04/virtio-v1.0-cs04.html specification Virtio network device]
  * [http://www.helenos.org/doc/helnet.pdf HelenOS NICF documentation]

 Possible mentors::
  HelenOS Core Team, Jakub Jermar"	enhancement	new	major		helenos/net/other	mainline		virtio, net, gsoc18				#675
