Avançar para o conteúdo principal
BlogueComputaçãoTirar partido da computação de ponta para serviços de transmissão em direto de baixa latência

Tirar partido da computação de ponta para serviços de transmissão em direto de baixa latência

Por que razão tirar partido da computação de ponta é crucial para os serviços de transmissão em direto

Se faz parte de uma organização que gere um serviço de transmissão em direto e se deparou com um aumento inesperado do tráfego ou uma interrupção, a sua equipa teve provavelmente de se esforçar para resolver problemas e solucionar atrasos. Esta interrupção pode tornar-se um problema significativo para os espectadores e um enorme desafio para a sua equipa.

A raiz do problema reside frequentemente na capacidade do seu fornecedor de serviços na nuvem para lidar eficazmente com picos súbitos de tráfego e reencaminhar o tráfego em caso de falha. Se o fornecedor de serviços de computação em nuvem não conseguir dimensionar os recursos com rapidez suficiente para acomodar o aumento da procura, a plataforma de transmissão pode ceder à pressão, resultando em tempo de inatividade, fluxos com atrasos ou mesmo falhas completas.

Ao investir em infra-estruturas escaláveis, como servidores distribuídos e soluções baseadas na nuvem, e ao tirar partido da computação periférica e de uma poderosa rede de distribuição de conteúdos (CDN), pode garantir que os utilizadores desfrutam de experiências em direto ininterruptas, que os conteúdos chegam ao espetador de forma fiável e que os serviços de streaming mantêm a sua reputação num mundo cada vez mais competitivo.  

Neste blogue, vamos apresentar as ferramentas que muitos dos nossos clientes utilizam para um streaming fiável. 

Aproveitando os pontos de presença da Akamai

Uma CDN como a Akamai fornece servidores de borda descentralizados e localizados, estrategicamente posicionados nas proximidades dos usuários finais. Os servidores de borda atuam como pontos de presença (PoPs) que servem como hubs intermediários entre o data center central e o dispositivo do usuário. Quando o utilizador solicita um vídeo, o conteúdo é entregue a partir do servidor periférico mais próximo, em vez de percorrer todo o caminho a partir do centro de dados central. Assim, quando o tráfego é elevado, estes servidores podem dividir e distribuir o conteúdo simultaneamente a utilizadores em diferentes regiões, sem atrasos. 

A imagem acima mostra a rede distribuída da Akamai. Essa arquitetura foi projetada para ser dimensionada dinamicamente para lidar com picos de tráfego e flutuações na demanda. Essa elasticidade garante que a infraestrutura permaneça responsiva e resiliente, mesmo sob as condições mais exigentes. Esta proximidade reduz significativamente o tempo que o conteúdo demora a chegar ao seu dispositivo, resultando numa menor latência e numa experiência de streaming mais suave para os utilizadores finais. 

Como a Akamai ajuda os serviços de transmissão ao vivo a obter baixa latência

Para oferecer uma experiência de qualidade aos seus espectadores on-line, você precisa garantir que suas VMs não estejam adicionando latência adicional às suas transmissões ao vivo. A Akamai oferece suporte à latência de 10 segundos de ponta a ponta, com ondas manuais, para transmissões ao vivo lineares e ao vivo. Veja como a Akamai ajuda os serviços de streaming ao vivo a obter baixa latência:

  1. Transcodificação ao vivo em tempo real
    Um sistema de transcodificação ao vivo precisa de ser dimensionado para lidar com picos de carga de vídeo em tempo real. Qualquer latência adicionada durante a transcodificação acaba por ser transmitida ao utilizador final, resultando numa experiência de visualização inferior à ideal.
  2. Tamanhos de segmentos pequenos
    A arquitetura da Akamai foi criada para lidar de forma fiável com tamanhos de segmentos pequenos (até 2 segundos) para streaming baseado em HTTP, para permitir que os jogadores reduzam rapidamente as quedas de largura de banda, evitem paragens de jogadores e reduzam eficazmente os buffers do lado do cliente.
  3. Transferências HTTP codificadas em pedaços
    O suporte a transferências codificadas em pedaços desde a ingestão até o Edge para iniciar transferências assim que os dados estiverem disponíveis ajuda a minimizar as latências.
  4. Pré-busca a partir do Edge
    Os servidores Edge irão pré-buscar o próximo conjunto de segmentos para uma determinada taxa de bits e colocá-lo em cache localmente, uma vez que o segmento anterior já foi recebido e está a ser reproduzido. Isso permite que os segmentos estejam prontamente disponíveis e reduz o risco de latência adicional.

Vamos ver como um de nossos clientes usou a Akamai para escalonar sua transmissão ao vivo com esse processo.

Como dimensionar o seu serviço de transmissão em direto na periferia

O nosso mecanismo de transmissão em direto é conseguido através do Media Services Live (MSL) da Akamai. O MSL foi concebido para entregar eficazmente conteúdos de vídeo em direto a audiências globais, tirando partido da extensa rede de servidores de ponta da Akamai distribuídos por diversas localizações geográficas.

Vamos dar uma olhada na arquitetura de referência acima, que detalha tanto o fluxo de trabalho de ingestão quanto o fluxo de trabalho de entrega para um evento de streaming ao vivo com a Akamai. Se pretende melhorar os seus serviços de transmissão em direto, é assim que sugiro que configure o MSL para gerir a transmissão em direto de um evento. 

Etapa 1: Codificação e ingestão

Em primeiro lugar, é necessário capturar o conteúdo de vídeo em direto no local de transmissão. Depois de obter o conteúdo, é necessário configurar um codificador para converter o feed de vídeo bruto num formato digital, como HTTP Live Streaming (HLS) ou Real-Time Messaging Protocol (RTMP). Em seguida, utilizará o IAS (Ingest Acceleration Source) da Akamai, que é descarregado através do portal do cliente da Akamai. O IAS pega o fluxo do codificador e o encaminha pelo nosso protocolo de transporte UDP proprietário. Em seguida, é necessário configurar o IAS para receber o fluxo do codificador. 

Em seguida, é necessário configurar o Ingest Acceleration Target (IAT) na rede da Akamai e garantir que o IAT esteja configurado para descodificar o fluxo de volta ao seu formato original. Em seguida, conectamos o IAT ao software de ponto de entrada da Akamai para processamento adicional. Nesta fase de codificação e ingestão, muitas pessoas enfrentam o problema da perda de pacotes. O streaming de vídeo ao vivo é altamente sensível à perda de pacotes, que pode degradar a qualidade do fluxo, causar buffering e levar a uma experiência de visualização insatisfatória. No entanto, os clientes que utilizam a Akamai para o streaming em direto não têm esta experiência porque a tecnologia de aceleração baseada em UDP que a Akamai utiliza ajuda a atenuar os efeitos da perda de pacotes, assegurando que os pacotes de dados são entregues de forma mais fiável e rápida, mesmo em condições de rede instáveis. Outra razão pela qual esta tecnologia é crucial no processo de transmissão em direto é que a transmissão tradicional baseada em TCP pode sofrer de elevada latência devido aos seus mecanismos de controlo de congestionamento e de correção de erros. O streaming ao vivo requer baixa latência para garantir que os espectadores recebam o conteúdo em tempo real. A aceleração baseada em UDP da Akamai oferece maior taxa de transferência e menor latência, minimizando essas despesas gerais, o que é crucial para o conteúdo ao vivo, em que a entrega em tempo hábil é essencial.

Etapa 2: Distribuição de nível médio e armazenamento opcional

Em seguida, você precisa direcionar o fluxo de vídeo processado para os servidores de nível intermediário da Akamai. Esses servidores atuam como intermediários entre o servidor de ingestão e a rede de entrega de borda. Os servidores de camada intermediária distribuem ainda mais o fluxo de vídeo, garantindo que ele seja replicado e armazenado em cache em vários pontos da rede para equilibrar a carga e melhorar a redundância. Quando um provedor de nuvem lida com streaming ao vivo, é importante que esse balanceamento de carga seja tratado corretamente, pois, caso contrário, você terá gargalos no processo. Ao utilizar a rede de entrega de borda da Akamai, está a impedir que um único servidor se torne um estrangulamento, garantindo que nenhum servidor individual seja sobrecarregado por demasiados pedidos. Isso se torna especialmente importante durante eventos de alto tráfego.

Opcionalmente, é possível armazenar o conteúdo de vídeo no sistema NetStorage da Akamai. O NetStorage garante que o conteúdo esteja sempre disponível e possa ser recuperado rapidamente, se necessário. Isso fornece uma solução de armazenamento escalonável e segura que pode servir como backup ou para reprodução sob demanda. 

Passo 3: Escudo de origem

Em seguida, enviamos o vídeo para o Origin Shield, que ajuda a gerenciar picos de tráfego, atuando como um buffer entre os servidores de ingestão e a CDN da Akamai. Durante os horários de pico ou picos inesperados de visualização, o Origin Shield pode lidar com o aumento da carga, evitando que os servidores de ingestão fiquem sobrecarregados. Isso garante que o sistema possa acomodar um grande número de espectadores sem degradação do desempenho. O Origin Shield também otimiza a eficiência do cache. Ao adicionar uma camada adicional de cache, o Origin Shield reduz a frequência com que as solicitações precisam retornar aos servidores de origem. Isto diminui a carga nos servidores de origem, conserva a largura de banda e acelera a entrega de conteúdos aos utilizadores finais. Para os utilizadores finais, isto traduz-se num acesso mais rápido ao conteúdo, reduzindo a latência e melhorando a experiência do espetador.

Etapa 4: Configuração da entrega e entrega ao utilizador final

Agora, é altura de distribuir o conteúdo. Quando você distribui o conteúdo globalmente para diferentes regiões, pode haver diferentes condições de rede, requisitos regulamentares ou preferências do espetador. Para resolver isso, nossos clientes usam as Akamai Delivery Accounts. As Akamai Delivery Accounts correspondem a diferentes configurações e definições para a entrega do conteúdo e permitem que os provedores de conteúdo definam diferentes configurações, como políticas de cache, protocolos de segurança e otimizações de entrega especificamente para cada região. Cada conta de entrega pode ter configurações específicas adaptadas às necessidades de várias regiões, dispositivos ou tipos de conteúdo. Isto é importante porque os fornecedores de conteúdos precisam de distribuir os seus conteúdos de forma eficiente e flexível por vários canais de entrega.

Por fim, o conteúdo de vídeo é entregue aos utilizadores finais através de uma variedade de dispositivos, como computadores, smartphones, tablets e smart TVs. Os servidores periféricos enviam o fluxo de vídeo para o dispositivo do leitor com uma latência mínima, garantindo uma experiência de visualização suave e de alta qualidade.

Conclusão

Há muitos factores a ter em conta quando se constrói uma solução de transmissão em direto. Em primeiro lugar, é necessário ter em conta a latência e o armazenamento em buffer, especialmente durante eventos em direto em que a transmissão em tempo real é fundamental. Uma latência elevada pode levar a atrasos na transmissão em direto, o que deixará os utilizadores finais muito descontentes. Também é necessário arquitetar a perda de pacotes, que pode degradar a qualidade do vídeo ou causar interrupções. Com a perda de pacotes, os seus utilizadores finais terão de enfrentar fluxos inconsistentes e pouco fiáveis, o que conduzirá a uma má experiência de visualização. Por último, tem de ser capaz de escalar e equilibrar a carga. Você pode enfrentar sobrecargas e falhas no servidor, resultando em interrupções de serviço e na incapacidade de lidar com cargas de pico com eficiência. A rede de entrega optimizada da Akamai resolve todos estes problemas através da sua aceleração baseada em UDP, da sua rede de ingestão e da sua CDN escalável.

A utilização da Akamai para streaming ao vivo garante uma entrega eficiente, escalável e de baixa latência de streams de vídeo ao vivo, proporcionando uma excelente experiência aos utilizadores finais. Ao aproximar o poder de processamento da borda da rede com a Akamai, os serviços de streaming podem otimizar o desempenho e melhorar a escalabilidade. 

Para seguir um tutorial passo a passo sobre transcodificação de vídeo, siga esta ligação para converter um ficheiro mp4 para o formato HLS. Também pode ler os nossos documentos sobre a API de Provisionamento de Transmissão em Direto dos Serviços Multimédia.

Para saber mais sobre como implementar isto, subscreva a nossa newsletter, ligue-se a nós no Twitter ou no LinkedIn, ou subscreva o nosso canal no YouTube.

Se você ou sua organização está pensando em otimizar suas soluções de transcodificação de vídeo e Kubernetes, você pode experimentar as soluções da Linode inscrevendo-se para obter $100 em créditos gratuitos

Comentários

Deixe uma resposta

O seu endereço de correio electrónico não será publicado. Os campos obrigatórios estão marcados com *