Eu que percebo de programação do século XXI não tenho bem a certeza de ter percebido o queres fazer.
O protocolo HTTP provavelmente seria bastante ineficiente para isto, pois terias de interpretar potencialmente mensagens relativamente grandes. O protocolo HTTP consiste numa mensagem de Request e uma mensagem de Response.
A mensagem de request começa com a linha que descreve o verbo/acção (PUT, GET, DELETE, PUSH, etc.) que queres executar sobre o objecto identificado pelo URL. O Response devolve o resultado dessa operação através de códigos predefinidos (ex.: 200 = OK, 404 = Not found, etc.)
Ambos os tipos de mensagem são constituídos também por um conjunto de Headers standard ou não e cada um com o seu significado (ex.: Content-Type: "plain text"), seguido do corpo (body) da mensagem em si (que numa página Web tipicamente é o conteúdo HTML mas pode transportar qualquer tipo de ficheiro e/ou formato).
Neste caso, provavelmente poderias simplificar a mensagem e usares só a estrutura mínima que precisares. No entanto, isto são mensagens transmitidas em formato texto. Não sei que processadores tens disponíveis para isto mas pelo menos precisarás de fazer o parse da mensagem dos cabeçalhos da mensagem e por exemplo admitir que o corpo já vem com os bytes no formato correcto para ti.
Descrevi muito sucintamente a estrutura da mensagem HTTP que é normalmente usada numa comunicação RESTful, ou seja, o servidor apenas recebe requests dos clientes e devolve as responses. Não há uma comunicação activa por parte do servidor em enviar requests aos clientes (invertendo os papéis). O que não impede de o fazeres caso te dê jeito.
Para implementar webservers o que não faltam são linguagens e frameworks

Posso dizer que neste momento tenho usado muito o NodeJS que usa Javascript como linguagem de programação (na verdade como gosto de linguagens mais tipificadas, uso o Typescript que é convertido para javascript).
Diz-me em que posso ajudar se precisares de mais alguma orientação.