server-side protocol decoder