FlexRAN: A flexible and programmable platform for software-defined radio access networks