A component-based architecture for protocol design and development in SDR frameworks