update connection context design: server & client side can use different layers/protocols