Как сказал Зихотки, вы будете нарушать SRP, если передадите эту ответственность контроллеру. Это шаблон, ориентированный на манипулирование данными, и как таковой он не должен беспокоить контроллер ... что может привести к двум нарушениям: одному для SRP и другому для принципа SoC.
Что касается того, кто несет ответственность, это то, что должно быть определено вашей архитектурой. Предложение StartRequest / EndRequest кажется достаточно убедительным.