Hi there,
I’m now using wowza origin-edge architecture to do live streaming. Currently, my system looks like: two encoders->two Wowza origin servers->two edge servers->AWS ELB->AWS cloud front. Our system needs to be very robust so I put redundancy in every layer.
However, I found that every time a master playlist request is sent to the edge server, the edge server returns a master playlist as follow,
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=250000
chunklist_w4135965.m3u8
if I further request the chunklist_w4135965.m3u8 media playlist, it returns
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-ALLOW-CACHE:NO
#EXT-X-TARGETDURATION:10
#EXT-X-MEDIA-SEQUENCE:2140
#EXTINF:9.009,
media_w4135965_2140.ts
#EXTINF:9.009,
media_w4135965_2141.ts
the sequence w4135965 (do you call it session id?) seems to be random and different to any client. This makes the segments not cacheable.
Even if I replace the origin-edge servers with Wowza Http origin servers according to this article: https://www.wowza.com/docs/how-to-configure-a-wowza-server-as-an-http-caching-origin, the Wowza servers still return playlists containing that sequence. And for a Wowza server, the sequence is fixed but for different servers, their sequences are still different. As you see, in our system, we need multiple origin servers and the random sequences really suck.
Hope someone could solve my problem.
Thanks!
Yorick