I’m trying to understand how flashing the spark core over the cloud works. I’m a newbie. From whatever limited knowledge I have about networking, for the cloud to reach the core directly, it would need port forwarding. But clearly it works without it. So my next guess would be that Spark Core polls from the cloud. Is that true? If not, how does it work?
That’s correct. When the spark is connected to the cloud, it maintains a TCP connection with the cloud server farm from the core to the cloud. Since it’s an outbound connection, the NAT and masquerading addresses works as normal. The cloud can then send messages on the response side of that connection, such as events subscribed to or OTA flash events.