Are you asking me?
Remember, this topic is about Highwinds CDN implementation. Highwinds doesn't reserve its datacenters exclusively for one type of usage (i.e. exclusive datacenter for rtmp streaming).
To your proposal:
Yes, it is possible, but it requires the full reconfiguration on the Highwinds' side. Note, the Highwinds software will report "404 not found" if client will request the SMIL name which doesn't match physical FLV file. Thus, we have to resolve the file name (low vs high quality version) before actually knowing the streaming server IP address and thus - before _definst_ connection. That's the way their system works.
The "image bwcheck" gives the same result as with _definst_ bwcheck. The bandwidth checking procedure, in fact, determines networking conditions between the client and the server (datacenter).
On load balancing:
I'm not an expert in Highwinds system architecture, however I'm quite sure that they perform the following computations while serving the SMIL files.
Given this, we can also assume that "step1" above will select the same datacenter for 2 subsequent requests.
And the conclusion here is that bwcheck and streaming connections will be served by the same datacenter and via the same network route, but obviously with different server farms within that datacenter (for http and rtmp serving). Again, I'm talking about Highwinds only.
All said is checked and confirmed with traceroutes. If you worrying about changing network conditions and datacenter load, you could disable the caching of bwcheck result or set the caching time to be very low.
Remember, this topic is about Highwinds CDN implementation. Highwinds doesn't reserve its datacenters exclusively for one type of usage (i.e. exclusive datacenter for rtmp streaming).
To your proposal:
Yes, it is possible, but it requires the full reconfiguration on the Highwinds' side. Note, the Highwinds software will report "404 not found" if client will request the SMIL name which doesn't match physical FLV file. Thus, we have to resolve the file name (low vs high quality version) before actually knowing the streaming server IP address and thus - before _definst_ connection. That's the way their system works.
The "image bwcheck" gives the same result as with _definst_ bwcheck. The bandwidth checking procedure, in fact, determines networking conditions between the client and the server (datacenter).
On load balancing:
I'm not an expert in Highwinds system architecture, however I'm quite sure that they perform the following computations while serving the SMIL files.
- The HTTP requests of every kind go to closest datacenter (by BGP routing). This applies both to GIF files and SMIL files (which are not physical files, but scripts). Note: not the least loaded in terms of computing power, but closest and least loaded in terms of network load between the user and remote system (there is also the possibility to prioritize datacenter usage).
- SMIL output contains hostname of the streaming server, which is selected (with load balancing) from the RTMP-streaming server farm in this given datacenter (selected on step 1).
- GIF file request will be REDIRECTED to and served by the ordinary HTTP server selected from HTTP server farm in this given datacenter (again, with load balancing).
Given this, we can also assume that "step1" above will select the same datacenter for 2 subsequent requests.
And the conclusion here is that bwcheck and streaming connections will be served by the same datacenter and via the same network route, but obviously with different server farms within that datacenter (for http and rtmp serving). Again, I'm talking about Highwinds only.
All said is checked and confirmed with traceroutes. If you worrying about changing network conditions and datacenter load, you could disable the caching of bwcheck result or set the caching time to be very low.