CDN - Multiple origins and edge servers clarification

Hi,

I have a question on how multiple origin servers will work for streaming and playing with edge servers through CDN. Based on this link https://docs.flashphoner.com/display/WCS52EN/CDN+2.0, it seems multiple origins and edge servers are supported.

But my question is what will be the cdn_point_of_entry for edge servers if there are multiple origin servers.

Lets say, I have 10 origin servers and 10 edge servers behind separate load balancer,s user-A publishes to origin-A server and user-B publishes to origin-B server.

If an end user user-C tries to play the stream of user-B from edge server, how will the CDN pull the data from origin-B server. Will the origin-B contacts origin-A automatically?
 

Max

Administrator
Staff member
Good day.
In CDN, each node established signaling connection with all the CDN nodes (everyone-to-everyone)
The parameter cdn_point_of_entry defines node address to be connected first. If this address is available, the current CDN state will be received from this node. Then, connection will be established with all the nodes listed in the state.
The example in documentation shows only one entry point for all the nodes, but this is not mandatory. The only requrement to CDN node which configured as entry point is to be alwasy online.
So you can configure one Origin (e.g. Origin A) to be the entry poing for one group of Edges and another Origin (Origin B) for another group. But Origin A should be entry point for Origin B too, in this case those two groups will enter to one CDN.
If an end user user-C tries to play the stream of user-B from edge server, how will the CDN pull the data from origin-B server. Will the origin-B contacts origin-A automatically?
1) User C requests stream of user B to play from Edge C
2) Edge C choose the playback route according to current CDN state
3) Edge C pulls the stream of user B from Origin B
 
Okay Max. Thanks for the response. I have configured the Origin (2 servers behind a load balancer) and Edge servers (2 servers behind a load balancer).
I can abe to publish the stream to origin servers. But when I tried to view through the stream using HLS from edge servers I am recieving CORS issue.

I am HLS player is hosted in domain (like demo.com) and edge server endpoint is like (edge-demo.com).

https://docs.flashphoner.com/display/WCS52EN/In+a+browser+via+HLS
I have configured "Access-control" as specified in above link in all of the origin and edge servers and restarted the webserver. But still recieving the CORS issue.

Do I need to configure anything additonally?
 

Max

Administrator
Staff member
But when I tried to view through the stream using HLS from edge servers I am recieving CORS issue.
Most of browsers work properly with Access-Control headers.
We encountered similar issuses on Mac OS Safari 10. What is your browser version and OS?

Alternatively you can setup nginx as a reverse proxy on your domain demo.com which will proxy HLS requests to WCS server. In such a case all requests will be served by your domain and cross domain issues should be fixed.
 
Update: CORS issue got fixed by following the link in above thread.

Max, but it doesn't reflect immediately after restarting the server. Is there any cache configuration with flashphoner properties file?

Also, can you share any good tuning and performance recommendations for CDN streaming, because I am planning to use this service very efficiently.
 

Max

Administrator
Staff member
Good day.
Max, but it doesn't reflect immediately after restarting the server. Is there any cache configuration with flashphoner properties file?
No, configuration changes are applied right after server restart. It seems like browser cache/cookies issue.
Also, can you share any good tuning and performance recommendations for CDN streaming, because I am planning to use this service very efficiently.
Please read this articles: 1, 2, 3.
 
Top