  Due to the intrinsically inefficient service provisioning in traditional
networks, Network Function Virtualization (NFV) keeps gaining attention from
both industry and academia. By replacing the purpose-built, expensive,
proprietary network equipment with software network functions consolidated on
commodity hardware, NFV envisions a shift towards a more agile and open service
provisioning paradigm with much lower capital expenditure (CapEx) and
operational expenditure (OpEx). Nonetheless, just like any complex system, NFV
platforms commonly consist of abounding software and hardware components and
usually incorporate disparate design choices based on distinct motivations or
use cases. This broad collection of convoluted alternatives makes it extremely
arduous for network operators to make proper choices. Although numerous efforts
have been devoted to investigating different aspects of NFV, none of them
specifically focused on NFV platforms or attempted to explore the design space.
In this paper, we present a comprehensive survey on NFV platform design. Our
study solely targets existing NFV platform implementations. We begin with an
architectural view of the standard reference NFV platform and present our
taxonomy of existing NFV platforms based on the principal purpose of design.
Then we thoroughly explore the design space and elaborate on the implementation
choices each platform opts for. We believe that our study gives a detailed
guideline for network operators or service providers to choose or implement the
most appropriate NFV platforms based on their respective requirements. Note
that this report serves as a complementary document for a published IEEE TNSM
paper [1]. We will periodically update this document to include the newly
proposed NFV platforms and design choices.
