Sim, o Android mantém uma conexão ativa com os servidores do Google, mas não usa muita energia ou dados, porque nenhum tráfego é enviado até que algo envie uma mensagem do GCM para um aplicativo no seu telefone. Há apenas uma conexão no telefone, usada por todos os aplicativos: a instalação de um novo aplicativo que usa o GCM não adiciona carga extra.
A primeira etapa no GCM é que um servidor de terceiros (como um servidor de email) envia uma solicitação ao servidor GCM do Google. Este servidor envia a mensagem para o seu dispositivo através dessa conexão aberta. O sistema Android examina a mensagem para determinar para qual aplicativo ele é e inicia o aplicativo. O aplicativo deve ter se registrado no Android para usar o GCM e deve ter a permissão relevante. Quando o aplicativo é iniciado, ele pode criar uma notificação imediatamente com os dados da mensagem. As mensagens do GCM são muito limitadas em tamanho; portanto, o aplicativo pode abrir uma conexão normal com o servidor de terceiros para obter mais informações (por exemplo, baixar os cabeçalhos de novos emails).
A vantagem do uso de notificações por push é que os aplicativos não precisam ser executados em intervalos regulares para verificar novos dados, economizando energia e dados. A vantagem de ter um mecanismo centralizado como o GCM é que o dispositivo precisa apenas de uma conexão de rede aberta e o sistema GCM do Android é a única coisa que precisa continuar sendo executada, em vez de cada aplicativo ter que permanecer em execução em segundo plano para manter sua própria rede conexão com seu próprio servidor.