I do not use IB but another broker. In my opinion this is how it functions. I use a REST based API. I open socket streaming which allows me to receive updated market data in a realtime. When the Brokers ticker plant gets a real time update from the exchange, their system processes an event that pushes each change element downstream. Have been using this platform for a an year and works well. https://developer.tradier.com/documentation/overview/streaming