Похоже, вам может понадобиться сохранить ссылку на транспорт (или протокол) вместе с байтами, которые только что поступили по этому протоколу в вашем объекте 'события'. Таким образом, ответы, которые поступают на соединение, выходят на том же соединении.
Если что-то не нужно обрабатывать последовательно, возможно, вам следует подумать о настройке функторов, которые могут обрабатывать данные параллельно, чтобы устранить необходимость в очереди. Просто помните, что вам нужно будет защитить критические разделы вашего кода.
Edit:
Судя по вашему другому вопросу об оценке дизайна вашего сервера, может показаться, что параллельная обработка может оказаться невозможной для вашей ситуации, поэтому мое первое предложение остается в силе.