Bagikan melalui


Melakukan streaming konten dengan integrasi CDN

logo Media Services v3


Peringatan

Azure Media Services akan dihentikan pada 30 Juni 2024. Untuk informasi selengkapnya, lihatPanduan Penghentian AMS .

Penting

Saat Azure Media Services dihentikan per 30 Juni 2024 dan Azure CDN akan menghentikan Azure CDN Standard dari Akamai pada 31 Oktober 2023 sebaiknya tidak membuat CDN baru untuk digunakan dengan Azure Media Services. Lihat panduan pengulangan Azure Media Services .

Azure Content Delivery Network (CDN) menawarkan solusi global kepada pengembang untuk mengirimkan konten bandwidth tinggi dengan cepat kepada pengguna dengan menyimpan konten mereka di simpul fisik yang ditempatkan secara strategis di seluruh dunia.

CDN menyimpan konten yang dialirkan dari Media Services Streaming Endpoint (asal) per codec, per protokol streaming, per laju bit, format per kontainer, dan per enkripsi/DRM. Untuk setiap kombinasi codec-streaming protocol-container format-bitrate-encryption, akan ada cache CDN terpisah.

Konten populer akan disajikan langsung dari cache CDN selama fragmen video di-cache. Konten langsung kemungkinan akan di-cache karena Anda biasanya memiliki banyak orang yang menonton hal yang sama persis. Konten sesuai permintaan bisa sedikit lebih rumit karena Anda bisa memiliki beberapa konten yang populer dan beberapa yang tidak. Jika Anda memiliki jutaan aset video di mana tidak ada yang populer (hanya satu atau dua penonton seminggu) tetapi Anda memiliki ribuan orang yang menonton semua video yang berbeda, CDN menjadi jauh kurang efektif.

Anda juga perlu mempertimbangkan cara kerja streaming adaptif. Setiap fragmen video individu di-cache sebagai entitasnya sendiri. Misalnya, bayangkan pertama kali video tertentu ditonton. Jika penonton melompat-lompati menonton hanya beberapa detik di sana-sini, hanya fragmen video yang terkait dengan apa yang ditonton orang tersebut di-cache di CDN. Dengan streaming adaptif, Anda biasanya memiliki 5 hingga 7 laju bit video yang berbeda. Jika satu orang menonton satu laju bit dan orang lain menonton laju bit yang berbeda, maka mereka masing-masing di-cache secara terpisah di CDN. Bahkan jika dua orang menonton laju bit yang sama, mereka bisa streaming melalui protokol yang berbeda. Setiap protokol (HLS, MPEG-DASH, Smooth Streaming) di-cache secara terpisah. Jadi setiap laju bit dan protokol di-cache secara terpisah dan hanya fragmen video yang telah diminta yang di-cache.

Kecuali untuk lingkungan pengujian, sebaiknya CDN diaktifkan untuk titik akhir streaming Standar dan Premium. Setiap jenis titik akhir streaming memiliki batas throughput yang didukung yang berbeda.

Sulit untuk membuat perhitungan yang tepat untuk jumlah maksimum aliran bersamaan yang didukung oleh titik akhir streaming karena ada berbagai faktor yang perlu diperhitungkan. Ini termasuk:

  • Laju bit maksimum yang digunakan untuk streaming
  • Perilaku pra-buffer dan peralihan pemutar. Pemain mencoba untuk meledakkan segmen dari asal dan menggunakan kecepatan beban untuk menghitung pengalihan laju bit adaptif. Jika titik akhir streaming mendekati saturasi, waktu respons dapat bervariasi dan pemain mulai beralih ke kualitas yang lebih rendah. Karena ini mengurangi beban pada pemutar Titik Akhir Streaming, skalakan kembali ke kualitas yang lebih tinggi yang menciptakan pemicu pengalihan yang tidak diinginkan.

Secara keseluruhan aman untuk memperkirakan aliran bersamaan maksimum dengan mengambil throughput titik akhir streaming maksimum dan membaginya dengan laju bit maksimum (dengan asumsi semua pemain menggunakan laju bit tertinggi.) Misalnya, Anda dapat memiliki titik akhir streaming Standar yang dibatasi hingga 600 Mbps dan laju bit tertinggi 3Mbp. Dalam hal ini, sekitar 200 aliran bersamaan didukung di laju bit teratas. Ingatlah untuk memperhitungkan persyaratan bandwidth audio juga. Meskipun aliran audio hanya dapat di-streaming pada 128 kps, total streaming bertambah dengan cepat ketika Anda mengalikannya dengan jumlah aliran bersamaan.

Topik ini membahas tentang mengaktifkan integrasi CDN . Ini juga menjelaskan prefetching (penembolokan aktif) dan konsep Origin-Assist CDN-Prefetch.

Pertimbangan

  • Titik akhir streaming hostname dan URL streaming tetap sama apakah Anda mengaktifkan CDN atau tidak.
  • Jika Anda memerlukan kemampuan untuk menguji konten Anda dengan atau tanpa CDN, buat titik akhir streaming lain yang tidak diaktifkan CDN.

Mengaktifkan integrasi Azure CDN

Penting

Anda tidak dapat mengaktifkan CDN untuk akun Azure uji coba atau siswa.

Integrasi CDN diaktifkan di semua pusat data Azure kecuali wilayah Pemerintah Federal dan Tiongkok.

Setelah titik akhir streaming disediakan dengan CDN diaktifkan, ada waktu tunggu yang ditentukan di Media Services sebelum pembaruan DNS dilakukan untuk memetakan titik akhir streaming ke titik akhir CDN.

Jika nanti Anda ingin menonaktifkan/mengaktifkan CDN, titik akhir streaming Anda harus dalam status dihentikan. Setelah titik akhir streaming dimulai, diperlukan waktu hingga empat jam agar integrasi Azure CDN diaktifkan dan agar perubahan aktif di semua POP CDN. Namun, Anda dapat memulai titik akhir streaming dan streaming tanpa gangguan dari titik akhir streaming. Setelah integrasi selesai, aliran dikirimkan dari CDN. Selama periode provisi, titik akhir streaming Anda akan berada dalam status mulai dan Anda mungkin mengamati performa yang terdegradasi.

Saat titik akhir streaming Standar dibuat, titik akhir tersebut dikonfigurasi secara default dengan Standard Verizon. Anda dapat mengonfigurasi penyedia Premium Verizon atau Standard Akamai menggunakan REST API.

Integrasi Azure Media Services dengan Azure CDN diimplementasikan pada Azure CDN dari Verizon untuk titik akhir streaming standar. Titik akhir streaming premium dapat dikonfigurasi menggunakan Standard Verizon atau Premium Verizon. Akamai Standar hanya dapat dikonfigurasi menggunakan REST API atau SDK klien.

Nota

Untuk detail tentang Azure CDN, lihat gambaran umum CDN.

Menentukan apakah perubahan DNS dilakukan

Anda dapat menentukan apakah perubahan DNS dilakukan pada titik akhir streaming (lalu lintas diarahkan ke Azure CDN) dengan menggunakan https://www.digwebinterface.com. Jika Anda melihat azureedge.net nama domain dalam hasil, lalu lintas sekarang sedang diacu ke CDN.

Origin-Assist CDN-Prefetch

Penembolokan CDN adalah proses reaktif. Jika CDN dapat memprediksi objek berikutnya yang akan diminta, CDN dapat secara proaktif meminta dan menyimpan objek berikutnya. Dengan proses ini, Anda dapat mencapai cache-hit untuk semua (atau sebagian besar) objek, yang meningkatkan performa.

Prefetching berusaha untuk memposisikan objek di "tepi Internet" yang mengantisipasi bahwa objek akan diminta oleh pemutar segera, sehingga mengurangi waktu untuk mengirimkan objek tersebut kepada pemutar.

Untuk mencapai tujuan ini, titik akhir streaming (asal) dan CDN perlu bekerja secara langsung dalam beberapa cara:

  • Asal Media Services harus memiliki "kecerdasan" (Origin-Assist) untuk memberi tahu CDN objek mana yang akan diambil sebelumnya berikutnya.
  • CDN melakukan prefetch dan penembolokan (bagian CDN-prefetch). CDN juga perlu memiliki "kecerdasan" untuk:
    • beri tahu asal apakah itu prefetch atau pengambilan biasa
    • menangani respons 404
    • dan cara untuk menghindari perulangan prefetch tanpa akhir

Manfaat

Manfaat fitur Origin-Assist CDN-Prefetch meliputi:

  • Prefetch meningkatkan kualitas pemutaran video dengan melakukan pra-posisi segmen video yang diantisipasi di tepi selama pemutaran, mengurangi latensi kepada penonton, dan meningkatkan waktu pengunduhan segmen video. Ini menghasilkan waktu mulai video yang lebih cepat dan kejadian pembangunan ulang yang lebih rendah.
  • Konsep ini berlaku untuk skenario asal CDN umum dan tidak terbatas pada media.
  • Akamai telah menambahkan fitur ini ke Akamai Cloud Embed (ACE).

Nota

Fitur ini belum berlaku untuk CDN Akamai yang terintegrasi dengan titik akhir streaming Media Services. Namun, ini tersedia untuk pelanggan Media Services yang memiliki kontrak Akamai yang sudah ada sebelumnya dan memerlukan integrasi kustom antara CDN Akamai dan asal Media Services.

Cara kerjanya

Dukungan CDN untuk header Origin-Assist CDN-Prefetch (untuk streaming langsung dan video sesuai permintaan) tersedia untuk pelanggan yang memiliki kontrak langsung dengan CDN Akamai. Fitur ini melibatkan pertukaran header HTTP berikut antara CDN Akamai dan asal Media Services:

Header HTTP Nilai Pengirim Penerima Maksud
CDN-Origin-Assist-Prefetch-Enabled 1 (default) atau 0 CDN Asal Untuk menunjukkan CDN diaktifkan prefetch.
CDN-Origin-Assist-Prefetch-Path Contoh:
Fragmen(video=1400000000,format=mpd-time-cmaf)
Asal CDN Untuk menyediakan jalur prefetch ke CDN.
CDN-Origin-Assist-Prefetch-Request 1 (permintaan prefetch) atau 0 (permintaan reguler) CDN Asal Untuk menunjukkan permintaan dari CDN adalah prefetch.

Untuk melihat bagian dari pertukaran header dalam tindakan, Anda bisa mencoba langkah-langkah berikut:

  1. Gunakan cURL untuk mengeluarkan permintaan ke asal Media Services untuk segmen atau fragmen audio atau video. Pastikan untuk menambahkan header CDN-Origin-Assist-Prefetch-Enabled: 1 dalam permintaan.
  2. Dalam respons, Anda akan melihat header CDN-Origin-Assist-Prefetch-Path dengan jalur relatif sebagai nilainya.

Protokol streaming yang didukung

Fitur Origin-Assist CDN-Prefetch mendukung protokol streaming berikut untuk streaming langsung dan sesuai permintaan:

  • HLS v3
  • HLS v4
  • HLS CMAF
  • DASH (CSF)
  • DASH (CMAF)
  • Streaming lancar

Tanya Jawab Umum

  • Bagaimana jika URL jalur prefetch tidak valid sehingga prefetch CDN mendapatkan 404?

    CDN hanya akan menyimpan respons 404 selama 10 detik (atau nilai lain yang dikonfigurasi).

  • Misalkan Anda memiliki video sesuai permintaan. Jika CDN-prefetch diaktifkan, apakah fitur ini menyiratkan bahwa setelah klien meminta segmen video pertama, prefetch akan memulai perulangan untuk mengambil semua segmen video berikutnya pada laju bit yang sama?

    Tidak, CDN-prefetch dilakukan hanya setelah permintaan/respons yang dimulai klien. CDN-prefetch tidak pernah dipicu oleh prefetch, untuk menghindari perulangan prefetch.

  • Apakah fitur Origin-Assist CDN-Prefetch selalu aktif? Bagaimana cara mengaktifkan/menonaktifkannya?

    Fitur ini nonaktif secara default. Pelanggan perlu mengaktifkannya melalui API Akamai.

  • Untuk streaming langsung, apa yang akan terjadi pada Origin-Assist jika segmen atau fragmen berikutnya belum tersedia?

    Dalam hal ini, asal Media Services tidak akan menyediakan header CDN-Origin-Assist-Prefetch-Path dan CDN-prefetch tidak akan terjadi.

  • Bagaimana cara Origin-Assist CDN-Prefetch bekerja dengan filter manifes dinamis?

    Fitur ini bekerja secara independen dari filter manifes. Ketika fragmen berikutnya berada di luar jendela filter, URL-nya masih akan ditemukan dengan melihat ke manifes klien mentah dan kemudian dikembalikan sebagai header respons prefetch CDN. Jadi CDN akan mendapatkan URL fragmen yang difilter dari manifes DASH/HLS/Smooth. Namun, pemutar tidak akan pernah membuat permintaan GET ke CDN untuk mengambil fragmen tersebut, karena fragmen tersebut tidak termasuk dalam manifes DASH/HLS/Smooth yang dipegang oleh pemutar (pemutar tidak tahu keberadaan fragmen itu).

  • Dapatkah daftar putar DASH MPD/HLS/Manifes Smooth diambil sebelumnya?

    Tidak, DASH MPD, daftar putar master HLS, daftar putar varian HLS, atau URL manifes halus tidak ditambahkan ke header prefetch.

  • Apakah URL prefetch relatif atau absolut?

    Meskipun CDN Akamai memungkinkan keduanya, asal Media Services hanya menyediakan URL relatif untuk jalur prefetch karena tidak ada manfaat yang jelas dalam menggunakan URL absolut.

  • Apakah fitur ini berfungsi dengan konten yang dilindungi DRM?

    Ya, karena fitur ini berfungsi di tingkat HTTP, fitur ini tidak mendekode atau mengurai segmen/fragmen apa pun. Tidak peduli apakah konten dienkripsi atau tidak.

  • Apakah fitur ini berfungsi dengan Server Side Ad Insertion (SSAI)?

    Ini berlaku untuk konten asli/utama (konten video asli sebelum penyisipan iklan) berfungsi, karena SSAI tidak mengubah tanda waktu konten sumber dari asal Media Services. Apakah fitur ini berfungsi dengan konten iklan bergantung pada apakah asal iklan mendukung Origin-Assist. Misalnya, jika konten iklan juga dihosting di Azure Media Services (asal yang sama atau terpisah), konten iklan juga akan diambil sebelumnya.

  • Apakah fitur ini berfungsi dengan konten UHD/HEVC?

    Ya.

Panduan, tutorial, dan sampel

- Cara mengaktifkan pengoptimalan CDN -Cara mengaktifkan Origin Shield

Dapatkan bantuan dan dukungan

Anda dapat menghubungi Media Services dengan pertanyaan atau mengikuti pembaruan kami dengan salah satu metode berikut: