In this paper we investigate a number of network virtualization models for OpenFlow networks. Specifically, we investigate three sub-modules of the system - the control channel and the software and hardware parts of an OpenFlow switch. We propose a number of extensions to the OpenFlow specification for this purpose and present a model of a full solution that compared to existing systems provides stricter isolation between different virtual networks while at the same time providing more flexibility.