Na verdade, acho que você conseguiu isso de trás pra frente. No nível baixo da internet, não existe o polling. Tudo na internet realmente empurra.
Mensagens na Internet são feitas de pacotes, que são basicamente grupos de elétrons viajando pelos fios. Do ponto de vista do computador, os pacotes simplesmente aparecem como elétrons descendo um fio ou ondas eletromagnéticas sendo detectadas pelo rádio. Nada pede pacotes, eles recebem pacotes enviados pelo meio de comunicação.
Quando você visita um site, o que acontece é que você envia um monte de pacotes para o servidor, que responde enviando um monte de pacotes de volta. Pensamos nisso como pesquisa, porque você enviou os pacotes primeiro instanciando a solicitação. Mas no nível baixo da internet, o que aconteceu foi que você enviou mensagens para o servidor, e o servidor apenas enviou mensagens para você mais tarde.
For example, the Dropbox server, at the very low level, cannot push an electron to my router, notifying my Macbook, because what if there is a firewall, then somehow, on my side, there must be some kind of polling at low level, or else the Dropbox server cannot push through my firewall.
Não, o firewall aceita todos os elétrons em todos os pacotes que são enviados para ele. Simplesmente joga fora os pacotes que julga suspeitos. No caso de dropbox, porque o seu computador estava falando com dropbox, ele não considera o pacote suspeito e, portanto, encaminha os pacotes.
That is, my Macbook has to constantly ask the wireless router, "any thing new for me?"
Não, o seu Macbook nunca pergunta se há algo novo. Em vez disso, escuta um sinal sem fio do roteador. O roteador basicamente assume que o Macbook sempre quer as mensagens e as envia assim que elas chegam.
Isn't it similar to the case that, if JavaScript on a browser had no two-way connection (before HTML5), somehow we can still have the web server "notify the browser's JavaScript code", but there will be some kind of polling underneath written in JavaScript, to simulate a two-way connection?
Não, o JavaScript foi restrito devido a uma peculiaridade de como ele foi desenvolvido. A tecnologia de internet subjacente sempre apoiou totalmente a comunicação bidirecional.