Add parameter --dstq and some refactoring and improve command model