Software Defined Networks provide the ability to manage networks from a centralised point through separating control plane from the data plane. This brings opportunities in terms of manageability, flexibility and cost savings in network operations. This centralisation, however, also brings about a potentially serious performance bottleneck and poses a scalability issue in high performance networks. This paper investigates performance of Software Defined Networks in general, and the OpenFlow protocol, to provide insight into the components of control path delay incurred by packets and ways to optimise flow forwarding. Two Openflow controllers (Floodlight and Pox) were used to validate performance measurements in relation to their theoretical composition. Secondly, the packet processing dynamics of switches, in particular OpenVSwitch are examined, looking at the control packet forwarding behaviour in the kernel module to meet high performance network and traffic engineering demand.