Check out the new USENIX Web site. next up previous
Next: 4.4 Performance Up: 4 VNET: A simple Previous: 4.2 A bridge with

4.3 Interface

Figure 2: VNET interface.
\begin{figure}\centerline{
\small
\begin{tabular}{ll}
Command & Description\\
\...
... & \\
\hspace{0.1in} macaddress+ & \\
\end{tabular}\normalsize
}\end{figure}

VNET servers are run on the Host and the Proxy. A VNET client can contact any server to query status or to instruct it to perform an action on its behalf. The basic protocol is text-based, making it readily scriptable, and bootstraps to binary mode when a Handler is established. Optionally, it can be encrypted for security. Figure 2 illustrates the interface that a VNET Server presents.

Session establishment and teardown: The establishment of session with a VNET server is initiated by a VNET client or another server using the HELLO command. The client authenticates by presenting a password or by using an SSL certificate. Session teardown is initiated by the VNET client using the DONE command.

Handler establishment and teardown: After a VNET client has established a session with a VNET server, it can ask the server to establish a Handler with another server. This is accomplished using the HANDLE command. As shown in Figure 2, the arguments to this command are the parameters that define a Handler as described earlier. Here, local_config and remote_config refer to the Handler roles. In response to a HANDLE command, the server will establish a session with the other server in the Handler pair, authenticating as before. It will then issue a BEGIN command to inform the other VNET server of its intentions. If the other server agrees, both servers will bootstrap to a binary protocol for communicating Ethernet packets. The Handler will remain in place until one of the servers closes the TCP connection between them. This can be initiated by a client using the CLOSE command, directed at either server.

Status Enquiry: A client can discover a server's available network interfaces (DEVICES?) and what Handlers it is currently participating in (HANDLERS?).


next up previous
Next: 4.4 Performance Up: 4 VNET: A simple Previous: 4.2 A bridge with
Ananth Sundararaj 2004-02-17