Fully Functional Rate Limiter Design on Programmable Hardware Switches