improved the protocol architecture