Реализации хранятся в стандартных библиотеках языков и в системных утилитах, типа curl
Когда вы на каком-нибудь языке используете системную библиотеку, которая реалзует например http, то каждая умеет делать запрос согласно протоколу — указывать метод, адрес, keep-aliveб тело и прочие штуки; умеет делать сам запрос (отправяет пакеты) и умеет получать ответ
Иногда программисты пишут свои протоколы, для этого тоже есть все в языках во всех