OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

virtio-comment message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: Re: [virtio-comment] [PATCH v2 01/11] transport-fabrics: introduce Virtio Over Fabrics overview




On 5/4/2023 4:19 AM, zhenwei pi wrote:
In the past years, virtio supports lots of device specifications by

PCI/MMIO/CCW. These devices work fine in the virtualization environment.

Introduce Virtio Over Fabrics transport to support "network defined
s/network defined/network attached

peripheral devices". With this transport, Many Virtio based devices
transparently work over fabrics.
I am not sure transparently.
Probably just better to say works over fabrics.

Note that the balloon device may not
make sense. Shared memory regions won't work.


Signed-off-by: zhenwei pi <pizhenwei@bytedance.com>
---
  content.tex           |  1 +
  transport-fabrics.tex | 31 +++++++++++++++++++++++++++++++
  2 files changed, 32 insertions(+)
  create mode 100644 transport-fabrics.tex

diff --git a/content.tex b/content.tex
index cff548a..f899c3a 100644
--- a/content.tex
+++ b/content.tex
@@ -582,6 +582,7 @@ \chapter{Virtio Transport Options}\label{sec:Virtio Transport Options}
  \input{transport-pci.tex}
  \input{transport-mmio.tex}
  \input{transport-ccw.tex}
+\input{transport-fabrics.tex}
\chapter{Device Types}\label{sec:Device Types} diff --git a/transport-fabrics.tex b/transport-fabrics.tex
new file mode 100644
index 0000000..0dc031b
--- /dev/null
+++ b/transport-fabrics.tex
@@ -0,0 +1,31 @@
+\section{Virtio Over Fabrics}\label{sec:Virtio Transport Options / Virtio Over Fabrics}
+
+This section defines specification to Virtio that enables operation over other
+interconnects. A central goal of Virtio Over Fabrics is to maintain consistency
We have 3 different terminology.
network based
fabrics
and here interconnects

best to drop and stick to fabrics.

+with the PCI device, so Virtio based devices transparently work over PCI or
+fabrics.
+
+Virtio Over Fabrics uses reliable connection to transmit data, the reliable
+connection betweens two rules:
+
s/betweens/between

"betweens two rules" is not reading right.

Virtio over fabrics uses underlying reliable transport to exchange data (as it is received also reliably).

because it may be multiple connections.


+\begin{itemize}
+\item An initiator functions as an Virtio Over Fabrics client. An initiator
+typically serves the same purpose to a machine as a Virtio device, issues
+commands to remote side.
+\item A target functions as an Virtio Over Fabrics server. An target typically
+handles commands from the initiator side and responses completions.
+\end{itemize}
+
+Virtio Over Fabrics has the following differences from the PCI based
+specification:
+
+\begin{itemize}
+\item Instead of memory sharing mechanism of virtqueue, there is a one-to-one
+mapping between virtqueue and the reliable connection which executes the vring
+data transmission.
vring is not a well defined spec term today. It is mostly refers to legacy part of the spec.
So need to reword this.

+\item An additional control connection is required to execute control commands
+which is similar to read/write register on a PCI device.
+\item Virtio Over Fabrics does not define an interrupt mechanism that allows an
+initiator to generate a host interrupt. It is the responsibility of the host
+fabric interface to generate host interrupts.
Please change to notifications as we try to keep the layer as much as possible between interrupt and notifications.

+\end{itemize}


[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]