splitted protocol decoding from data fetching