KVM Network Model

[1] Userspace Virtio network architecture
[2] Vd-t,sriov architecture
[3] Vhost_net architecture
[4] Vhost over sriov & macvtap architecture

      +--------------+
      |  Guest VM    |
      | +--+    +--+ |
      +-|  |----|  |-+
        |tx|    |rx|
      +-+--+----+--+-+
      |    QEMU  ^  |
      |    v     /   |
      |    +----+    |
      +----| tap|----+
  +--------|    |--------+
  |        +----+        |
  |Kernel/HV  ^          |
  |           |          |
  |           v          |
  |       +------+       |
  |       |bridge|       |
  |       +------+       |
  |           ^          |
  |           |          |
  |           v          |
  |       +------+       |
  +-------| NIC  |-------+
          +------+
              ^
              |
              v

      +------------------------+
      |     Guest VM           |
      |              +--+ +--+ |
      +--------------|tx|-|rx|-+
                     +--+ +--+
                       ^   ^
                         /
                         |
                         v
      +--------+   +-----------+
      | QEMU   |   | VF NIC #2 |
      +--------+   +-----------+
  +----------------------+  ^
  | Kernel/HV            |  |
  |    +-----------+     |  |
  |    | VF NIC #1 |     |  |
  |    +-----------+     |  |
  |           ^          |  |
  |           |          |  |
  |           v          |  v
  |       +--------------+----+
  +-------| Physical NIC      |
          +-------------------+
              ^
              |
              v

      +------------------------+
      |     Guest VM           |
      |              +--+ +--+ |
      +--------------|tx|-|rx|-+
                     +--+ +--+
       +--------+      ^   ^
       | QEMU   |        /
       +--------+        |
  +----------------------|------+
  | Kernel/HV            v      |
  |                 +-------+   |
  |             +-> | vhost |   |
  |             |   +-------+   |
  |             v               |
  |       +------+              |
  |       | tap  |              |
  |       +------+              |
  |           ^                 |
  |           |                 |
  |           v                 |
  |       +------+              |
  |       |bridge|              |
  |       +------+              |
  |           ^                 |
  |           |                 |
  |           v                 |
  |       +------+              |
  +-------| NIC  |--------------+
          +------+
              ^
              |
              v

      +------------------------+
      |     Guest VM           |
      |              +--+ +--+ |
      +--------------|tx|-|rx|-+
                     +--+ +--+
       +--------+      ^   ^
       | QEMU   |        /
       +--------+        |
  +----------------------|------+
  | Kernel/HV            v      |
  |                 +-------+   |
  |             +-> | vhost |   |
  |             |   +-------+   |
  |             v               |
  |       +---------+           |
  |       | macvtap |           |
  |       +---------+           |
  |           ^                 |
  |           |                 |
  |           v                 |
  | +-----------+ +-----------+ |
  | | VF NIC #2 | | VF NIC #1 | |
  | +-----------+ +-----------+ |
  |           ^      ^          |
  |           |      |          |
  |           v      v          |
  |       +---------------+     |
  +-------| Physical NIC  |-----+
          +---------------+
                  ^
                  |
                  v

2 thoughts on “KVM Network Model

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.