reorganized the source code, solution structure about some specific protocol implementations