implementing basic signalling protocol