Modern tactical operations have complex communication and computing requirements that cannot be supported by today's mobile ad hoc networks. The emerging Software Defined Networking (SDN) paradigm has the potential to enable the redesign and successful deployment of these systems. An SDN-based approach, however, will also bring new challenges since the SDN architecture was not designed to accommodate the requirements of an ad hoc network environment. Unreliability and dynamism may fragment the tactical network making the centralized SDN controller unsafe. To address these issues, in this paper, we propose flexible protocols that split the control of the ad hoc network between the centralized SDN controller and the data plane nodes. The latter can dynamically decide whether to follow the controller instructions or adapt to network changes in a distributed manner. We implement a proof-of-concept prototype of a flexible SDN ad hoc system and perform experiments to measure its performance benefits over traditional OpenFlow. Going a step further, we study theoretical, yet practical, methods of managing the overheads of flexible control which are crucial for the successful large-scale deployment of these systems. Evaluations on a real tactical ad hoc network dataset demonstrate that up to 50% more packets can be routed to their destinations if flexible SDN control is enabled, while the extra overheads are one order of magnitude lower than the control message overheads of traditional OpenFlow systems.