Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!


In search of the lowest latency VPS provider to CloudFlare SF edge
New on LowEndTalk? Please Register and read our Community Rules.

All new Registrations are manually reviewed and approved, so a short delay after registration may occur before your account becomes active.

In search of the lowest latency VPS provider to CloudFlare SF edge

tonypushmoretonypushmore Member
edited August 2022 in General

Using an API (weather/gps signals) behind CloudFlare SF edge which I need to access from the fastest VPS provider.

How would you approach this kind of objective?

I checked different ping/looking glass tools and found for example Vultr Mumbai has 0.3ms to CF (104.18.10.119, 104.18.11.119), while Vultr USA has 1ms or more.

I'm sure there are faster options than Vulr Mumbai but what are ways to find the fastest VPS provider?

Comments

  • can i ask what u r doing?
    sounds interesting

  • @tonypushmore said:
    Using an API (weather/gps signals) behind CloudFlare SF edge which I need to access from the fastest VPS provider.

    How would you approach this kind of objective?

    I checked different ping/looking glass tools and found for example Vultr Mumbai has 0.3ms to CF (104.18.10.119, 104.18.11.119), while Vultr USA has 1ms or more.

    I'm sure there are faster options than Vulr Mumbai but what are options to find the fastest VPS provider?

    What location?

  • @c1vhosting said:
    What location?

    Source location doesn't matter, can be any country. Destination CloudFlare San-Francisco: 104.18.11.119 and 104.18.10.119

  • @tonypushmore said:

    @c1vhosting said:
    What location?

    Source location doesn't matter, can be any country. Destination CloudFlare San-Francisco: 104.18.11.119 and 104.18.10.119

    It seems to be an anycast IP address. I'm getting 9ms from Italy (it doesn't pass through the peering, with 1.1.1.1 and other CF IPs I have 0.5ms)

    Thanked by 1tonypushmore
  • emgemg Veteran
    edited August 2022

    Sorry, but I can't help here. This is a replacement for my erroneous post. Please move on to the next post.

    (I posted the ping times from two of my VPSs, both under 3 ms. Then I re-read your post and realized that you are getting results under 1 ms already. I mis-read "0.3" as "3 ms" in your original post. Oops.)

    Thanked by 1tonypushmore
  • ralfralf Member

    @tonypushmore said:
    Using an API (weather/gps signals) behind CloudFlare SF edge which I need to access from the fastest VPS provider.

    There's no point optimising for fastest connection to CloudFlare, as by design it's got many PoP so that you will get onto their network quickly from anywhere.

    If you're accessing an API that ultimately lives on a server somewhere, find out where that server is, and get a VPS closest to the PoP nearest that. If that too is multi-homed to different regions, then maybe it just doesn't matter much where you access it from.

    Your best bet would be to time the complete HTTPS connection for request and response to a URL that you know CF will have to forward to the original server, and do this from various places around the world. This is then actually measuring and optimising for your use case.

  • eva2000eva2000 Veteran
    edited August 2022

    @tonypushmore said: Using an API (weather/gps signals) behind CloudFlare SF edge which I need to access from the fastest VPS provider.

    How would you approach this kind of objective?

    Simple, setup multiple origin servers in Europe, America, Asia and the Pacific. Then use Cloudflare Load Balancer with Geo Steering or lowest latency route-based steering so that visitors from specific regions hit CF datacenters in those regions and connect to your origin in that region. This benefits both Cloudflare CDN cached and non-cached requests.

    I do this, and it's the lowest latency possible if your app/site can handle multiple origins across many web hosts/datacenters. Depending on your visitor's geography, I'd estimate it to be between a minimum of 20-50% faster latency than Cloudflare CDN cached requests without a Cloudflare Load Balancer/multiple region-based origins implemented, and without Cloudflare Tiered Caching enabled. Cloudflare Tiered Caching would help but only for cached requests. Non-cached requests won't benefit from Tiered Caching.

    You can get closer performance to CF LB/multi origin setup if you leverage paid Cloudflare Argo Smart Routing too but that would help only in ~50-67% of the time based on the percentage of requests I get Cloudflare Argo smart routed.

    Give you an idea for my traffic being 50% USA and split EU and Asia for remainder - this is for TTFB response time from app/sites/forums. So this is for a mix of cached/non-cached requests.

    • Without CF Argo Smart Routing & no CF LB/multi origins = ~470ms
    • With CF Argo Smart Routing & no CF LB/multi origins = ~170ms
    • With CF Load Balancer Latency based routing to 16-26 origin servers in 16+ cities = ~35-100ms

    Note, for Cloudflare Tiered Cache on non-Enterprise CF plans, be aware that where you host your origin as if origin server is a Bandwidth Alliance partner https://www.cloudflare.com/bandwidth-alliance/, then it will override Tiered Caching https://developers.cloudflare.com/cache/about/tiered-cache/#bandwidth-alliance. Vultr is a Cloudflare Bandwidth Alliance partner so that will override Cloudflare Tiered Caching.

    Bandwidth Alliance
    For Enterprise users, any Tiered Cache option you enable takes precedence over the Bandwidth Alliance. For all other users, the Bandwidth Alliance takes precedence. Tiered Cache is still a valuable option to enable because the Bandwidth Alliance may not always be an available option, and in those instances, the Tiered Cache configuration will be used.

    Thanked by 1tonypushmore
  • Thanks guys for suggestions.

    I'm really looking into sub 0.1ms optimization and don't control the API behind it nor can I find the origin servers. It's really a request-side challenge.

    So far, I have gone the furthest by using various ping tools and selecting providers based on latency, but I believe there is a better way.

    I might be wrong here but is there any provider having direct connection or closest to CloudFlare anycast Load Balancers? Maybe hosting cloudflare anycast server?
    Surprisingly based on my testings big providers have higher latency.

  • Have you tried a provider who has Railgun?

  • HxxxHxxx Member

    @eva2000 I gotta ask man. You are always extremely knowledgeable about Cloudflare. Do you use Cloudflare intensively or do you work at some support level or engineering over there?

    Always a pleasure to read your replies. Keep up the good work Sir.

  • eva2000eva2000 Veteran
    edited August 2022

    @johnnyquestion said: Have you tried a provider who has Railgun?

    Railgun is for accelerating uncacheable content i.e. dynamically generated HTML and serving up just the compressed diff changes in binary format via a permanent TCP connection (like rsync would only transfer the parts that changed) on subsequently repeated page loads via a Railgun listener (installed on origin server) and sender (installed within each CF datacenter). Though Cloudflare support and development have fallen behind for Railgun binary itself. There really isn't a repo/binary for Railgun for newer operating systems. Rumour is Cloudflare will eventually deprecate Railgun and roll it into Cloudflare Tunnel.

    For now, I still use Cloudflare Railgun, but I also use Cloudflare Tunnel as well as currently they do different things.

    Cloudfalre Tunnel is just a persistent multiplexed HTTP/2 or QUIC based TLS encrypted stream based tunnel routed via Argo Smart Routing, which doesn’t accelerate anything like Railgun would https://developers.cloudflare.com/cloudflare-one/connections/connect-apps/

    @tonypushmore said: I'm really looking into sub 0.1ms optimization and don't control the API behind it nor can I find the origin servers. It's really a request-side challenge.

    Unless you host inside Cloudflare's actual datacenter, 0.1ms is impossible unless you mean 0.1s = 100ms ?

    @tonypushmore said: I might be wrong here but is there any provider having direct connection or closest to CloudFlare anycast Load Balancers? Maybe hosting cloudflare anycast server?

    Yes that is possible if you use Cloudflare Network Interconnect https://www.cloudflare.com/network-interconnect/

    Directly connect your on-premises networks to Cloudflare's network
    Your networks are at the core of delivering end-user experiences and supporting business initiatives. But often, the performance of your network traffic can be unpredictable due to intermediate networks outside of your control.

    Connect your network infrastructure directly to Cloudflare's network for a more reliable and secure experience than connecting over the public Internet.

    as to

    @Hxxx said: @eva2000 I gotta ask man. You are always extremely knowledgeable about Cloudflare. Do you use Cloudflare intensively or do you work at some support level or engineering over there?

    Always a pleasure to read your replies. Keep up the good work Sir.

    I have used Cloudflare extensively for the past 11yrs. I am also officially a Cloudflare MVP since 2018 (an unpaid enthusiast position similar to Microsoft's MVP) https://community.cloudflare.com/t/cloudflare-mvp/36581, so I also get closer access to CF folks and their product/service offerings - which comes in handy for my own private paid client consulting work and tighter Cloudflare integration plans for my Centmin Mod LEMP stack project too ^_^

    Where possible, I have played with or used every Cloudflare product/service from free plan all the way to enterprise plan besides the advanced stuff like Cloudflare Network Interconnect or Cloudflare Magic Transit https://www.cloudflare.com/magic-transit/. Guess I still have a few things to eventually try :smiley:

    Thanked by 1SashkaPro
  • yoursunnyyoursunny Member, IPv6 Advocate

    @eva2000 said:

    @tonypushmore said: I'm really looking into sub 0.1ms optimization and don't control the API behind it nor can I find the origin servers. It's really a request-side challenge.

    Unless you host inside Cloudflare's actual datacenter, 0.1ms is impossible unless you mean 0.1s = 100ms ?

    What if you can host inside Cloudflare data center?
    It's called Workers and it can do anything (with paid Unbound usage model).

    Thanked by 1johnnyquestion
  • eva2000eva2000 Veteran
    edited August 2022

    @yoursunny said: What if you can host inside Cloudflare data center?
    It's called Workers and it can do anything (with paid Unbound usage model).

    +1 indeed if you're web application can utilise CF workers and can leverage CF worker based caching or storage i.e. KV etc then definitely :) But once you need to fetch remotely outside of the CF network, then that will be the slowest part of the request compared to CF Load Balancer and multi-region based origin pools.

    You can even use CF Workers with CF Load Balancer and multi-region based origin pools.

    Thanked by 1yoursunny
  • This is from AlphaVPS Sofia loc.
    --- 104.18.11.119 ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time 3000ms rtt min/avg/max/mdev = 0.391/0.410/0.447/0.021 ms
    --- 104.18.10.119 ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time 3000ms rtt min/avg/max/mdev = 0.409/0.457/0.492/0.031 ms

    Make MTR from your home to those 2 ips and check where is the last hop and get server in that loc
    In my case last hop was 185.1.40.27 which is Sofia, Bulgaria hence the results.

  • Lmao why is there only one comment trying to educate this guy about anycast.

    The latency to CF edge doesn’t matter. The only thing that matters is total request time. If the origin servers are in Ireland, your edge ping from Mumbai literally doesn’t matter.

  • @iwaswrongonce said: The latency to CF edge doesn’t matter. The only thing that matters is total request time. If the origin servers are in Ireland, your edge ping from Mumbai literally doesn’t matter.

    This.

    When a client connects to your website, that request generally goes to the closest Cloudflare POP and from that POP, the request goes to your server (the origin). It's much better to ensure that your server is geographically located somewhat close to where most of your clients are and that your server provider has good peering & transit.

    Of course, you can do multiple servers + traffic steering, setup your own anycast, etc but those come with a different set of challenges.

  • What are some of the multi data center ping tools?

  • @iwaswrongonce said: Lmao why is there only one comment trying to educate this guy about anycast.

    Original poster was asking about the connection between the CF edge and origin server not the connection between visitor and CF edge. Both can be separately optimized. The CF edge to origin server would via geographic placement of the origin server relative to visitors' geography and also via CF products like CF Argo Smart Routing, CF Tunnels and CF Load Balancer.

    @tonypushmore said: What are some of the multi data center ping tools?

    Be aware that such tools can also be skewed by where they host the tools

    Thanked by 1tonypushmore
  • ralfralf Member

    @eva2000 said:
    Original poster was asking about the connection between the CF edge and origin server not the connection between visitor and CF edge. Both can be separately optimized. The CF edge to origin server would via geographic placement of the origin server relative to visitors' geography and also via CF products like CF Argo Smart Routing, CF Tunnels and CF Load Balancer.

    I'm not sure, maybe you're right, but to be this read like he wanted to access some API that he knows is somewhere behind CF and wants the best VPS to access that, which is why I answered the way I did.

    @tonypushmore said:
    Using an API (weather/gps signals) behind CloudFlare SF edge which I need to access from the fastest VPS provider.

    Of course, it's still basically the same problem in reverse. Put the VPS wherever you can find that's closest to the other machine.

  • tonypushmoretonypushmore Member
    edited August 2022

    @iwaswrongonce said: The latency to CF edge doesn’t matter. The only thing that matters is total request time. If the origin servers are in Ireland, your edge ping from Mumbai literally doesn’t matter.

    Good point, latency check is wrong.

  • eva2000eva2000 Veteran
    edited August 2022

    @iwaswrongonce said: The latency to CF edge doesn’t matter.

    It does for Cloudflare as by default it doesn't cache HTML unless you tell it to do so. So HTML page requests will reach back to the origin where ever it's hosted. See my TTFB optimization guide for Cloudflare at https://community.cloudflare.com/t/improving-time-to-first-byte-ttfb-with-cloudflare/390367/

  • NeoonNeoon Community Contributor, Veteran

    @iwaswrongonce said:
    If the origin servers are in Ireland, your edge ping from Mumbai literally doesn’t matter.

    It does, some CF locations are congested, despite having a CF POP in our local IX, I get 3 times the latency it actually should get.

    Its not my ISP, CF does not give a fuck since years to fix it.
    Routing can be a gamble, even if you know the API server sits in Ireland and you get even a VPS in the same DC, you may still have shit request times.

    If you want to have the lowest possible latency, you would need to buy multiple vps's just for that purpose.

  • @eva2000 said:

    @iwaswrongonce said: The latency to CF edge doesn’t matter.

    It does for Cloudflare as by default it doesn't cache HTML unless you tell it to do so. So HTML page requests will reach back to the origin where ever it's hosted. See my TTFB optimization guide for Cloudflare at https://community.cloudflare.com/t/improving-time-to-first-byte-ttfb-with-cloudflare/390367/

    His comment is about accessing an API behind CF. Purely dynamic uncached content.

    You keep posting this kind of stuff but you’re still not grokking it: the single optimization to make is total request latency. That’s it. He has no control over the CF settings or origin config.

Sign In or Register to comment.