Tomasz Zajda - Fotolia

What are protocol endpoints in vSphere VVOLs and how do they work?

VMware's new VVOLs feature allows storage functionality to be distributed on a per-VM basis. Protocol endpoints are integral to proper allocation.

A little background on the architecture of VMware vSphere Virtual Volumes (VVOLs) is helpful to explain this concept. A vSphere VVOLs-enabled storage array uses a pool of raw storage known as a storage container for the storage of virtual machines (VMs). VMs are made up of at least three objects known as VVOLs. Each VVOL, depending on the storage array, can have a unique set of capabilities such as performance characteristics, encryption or any other attribute the array can provide. A protocol endpoint (PE) acts as a proxy to direct the information coming from the ESXi host server to the correct VVOL on the array. Another way to understand a PE is to think of it as I/O demultiplexer that allows a single endpoint to be seen by vSphere but passes the data to the correct VVOL on the storage container.

On a SAN-based storage system the PE appears as a small LUN, and on a NAS-based storage system it appears as a mount point. Data does not get stored on a PE -- it is only transferred to a vSphere VVOL in a storage container from an ESXi host. Each storage container must have one or more protocol endpoints associated with it, but a PE can only be associated with a single storage container. However, unified arrays (arrays that support SAN and NAS) can have multiple PEs that point to the same storage container. Multiple ESXi hosts can be attached to the same protocol endpoint.

The array is responsible for the creation and presentation of the protocol endpoint. After creation, an endpoint will be visible to the vSphere client and can be mapped to a datastore with a specific type of vSphere VVOL. On the vSphere Web Client a SAN-based PE will appear as T10-based LUN World Wide Name, while a NAS-based endpoint will appear as a DNS name or IP address and the share name.

To view and/or manage the properties, paths and datastores associated with a PE you can navigate from the vSphere Web Client to Manage > Storage > Protocol Endpoints, and select the endpoint to examine or manage. For example, the multipathing policy of a PE could be modified from this location.

Next Steps

Understanding VMware Virtual Volumes

Dig Deeper on Storage architecture and strategy