Optimisation de réseau d’origine avec Railgun™

Les partenaires optimisés peuvent atteindre les clients internationaux plus rapidement avec Railgun

Railgun veille à ce que la connexion entre votre serveur d'origine et le réseau Cloudflare soit aussi rapide que possible.

Railgun compresse les objets Web jusque-là incachables en employant des techniques similaires à celles employées pour la compression de vidéo en haute qualité. Ceci peut entraîner une amélioration supplémentaire des performances.

À quoi sert Railgun ?

Railgun accélère la connexion entre un serveur d'origine et chaque datacenter Cloudflare afin de permettre le traitement rapide des requêtes qui ne peuvent être traitées directement à partir du cache Cloudflare.

Près de deux tiers des requêtes adressées aux sites inscrits sur le réseau Cloudflare sont traitées directement à partir du cache du datacenter le plus proche de l'internaute. En outre, comme Cloudflare dispose de datacenters dans le monde entier, les pages web bénéficient d'un temps de chargement particulièrement court, que vous soyez à Bangalore, Brisbane, Birmingham ou Boston, et ce même si le serveur d'origine se situe à des milliers de kilomètres.

La capacité de Cloudflare à simuler la proximité entre l'hébergement d'un site web et ses visiteurs se révèle cruciale pour accélérer la navigation sur Internet. Un site hébergé aux États-Unis pourrait, par exemple, se voir fréquenté principalement par des internautes britanniques. Avec Cloudflare, le site sera pris en charge par un datacenter britannique, éliminant ainsi le retard coûteux résultant de la vitesse de transmission.

Le dernier tiers de requêtes reçues par Cloudflare doit toutefois être envoyé au serveur d'origine pour traitement. Ce cas survient lorsque les pages ne peuvent être mises en cache à cause d'une erreur de configuration ou, plus souvent, en raison de modifications fréquentes ou de la personnalisation du contenu de la page web.

La mise en cache du contenu de la page d'accueil du New York Times s'avère difficile, par exemple, car cette dernière doit impérativement rester à jour malgré l'évolution constante de l'actualité. Il en va de même pour un site personnalisé comme Facebook, où chaque utilisateur voit une page différente, même si l'URL est la même pour tous.

Railgun utilise un ensemble de techniques pour accélérer et mettre en cache les pages web jusque-là impossibles à traiter, afin de leur permettre de bénéficier de temps de chargement rapides, même lorsque le serveur d'origine doit d'abord être consulté. En outre, la solution fonctionne également avec les pages qui évoluent rapidement (comme les sites d'actualité) ou le contenu personnalisable.

Les recherches de Cloudflare ont révélé que même si de nombreux sites ne peuvent être mis en cache, leur contenu change très lentement en réalité. La page d'accueil du New York Times, par exemple, varie au fur et à mesure de la publication de nouveaux articles, mais les bases du code HTML de la page demeurent globalement inchangées et la page d'accueil affiche certains articles tout au long de la journée.

À l'exception de quelques fractions du contenu (comme la timeline Twitter ou le fil d'actualité Facebook), le code HTLM de base reste le même pour les sites personnalisés. La transmission de pages web compressées constitue donc un avantage énorme si les éléments fixes d'une page peuvent être détectés, afin de ne procéder à l'envoi que des seules différences.

Fonctionnement

Lorsqu'un serveur Cloudflare reçoit une requête de page web non mise en cache, Cloudflare établit une connexion vers le serveur d'origine afin de demander la page. La solution Railgun accélère et sécurise précisément cette connexion HTTP.

Sans Railgun

Avec Railgun

La solution Railgun se compose de deux composants logiciels : le Listener (émetteur) et le Sender (auditeur). Installé au niveau de votre hôte web, sur un serveur d'origine, le Railgun Listener désigne un petit logiciel, qui s'exécute sur les serveurs standard et répond aux requêtes de Cloudflare en utilisant le protocole binaire chiffré de Railgun.

Le Railgun Sender est installé au sein des datacenters Cloudflare du monde entier et maintient les connexions avec les Railgun Listeners.

À la réception d'une requête HTTP devant être traitée par un serveur d'origine, Cloudflare détermine si cette dernière est destinée à un site web sur lequel Railgun est activé. Si c'est le cas, la requête est envoyée vers le Railgun Sender pour traitement. Sinon, le protocole HTTP standard est employé.

Le Railgun Sender transforme la requête en bloc binaire compressé et le transmet au Railgun Listener correspondant. Le Railgun Listener traduit alors la requête en HTTP et l'envoie au serveur d'origine. Du point de vue de ce dernier, tout se passe comme si la connexion HTTP provenait directement de Cloudflare. Toutefois, comme elle provient de l'infrastructure du partenaire d'hébergement, la requête ne subit pas de retard lié à la latence.

Le nouveau mécanisme de mise en cache de Railgun compare les différentes versions d'une page afin de déterminer ce qui doit être transmis sur Internet vers le Railgun Sender. Cette fonctionnalité permet à Cloudflare d'atteindre un taux de compression de 99,6 % (une page de 100 Ko sera ainsi réduite à 400 octets, par exemple) et un taux d'accélération de 700 %. En fait, avec le protocole binaire de Railgun, les données compressées se révèlent souvent si légères que la réponse tient en un seul paquet TCP.

Les connexions Railgun sont sécurisées par TLS afin d'empêcher l'interception des requêtes transitant par ces dernières. La connexion fait également l'objet d'une sécurisation reposant sur les certificats, de sorte qu'il s'avère impossible de lancer une attaque de l'homme du milieu (on-path). La connexion TCP entre Cloudflare et le serveur d'origine reste active et peut donc être réutilisée pour les requêtes suivantes. La lenteur résultant du démarrage d'une nouvelle connexion TCP s'en trouve donc éliminée.

Multiplexées sur la même connexion, les requêtes de Railgun peuvent être traitées de manière asynchrone, afin de permettre à la solution Railgun de gérer plusieurs requêtes simultanées (sans blocage) et de maximiser l'utilisation de la connexion TCP.

Avec une instance Memcache en cours d'exécution pour seule dépendance, le Railgun Listener constitue un exécutable simple, qui fonctionne sous forme de daemon sur les systèmes Linux 64 bits.

Le Listener ne nécessite qu'un seul port ouvert sur Internet pour permettre aux datacenters Cloudflare de contacter le protocole Railgun. Ce port requiert en outre un accès au site web par HTTP et HTTPS. Idéalement, le Listener doit être installé sur un serveur disposant d'un accès rapide à Internet et d'une latence faible. L'installation s'effectue simplement par l'intermédiaire d'un fichier RPM ou .deb. Pour plus d'informations sur l'installation de Railgun, consultez sa documentation officielle.

La solution Railgun est disponible pour les clients disposant d'une offre Cloudflare Business ou Enterprise, ainsi qu'aux clients hébergés chez un partenaire d'hébergement optimisé.

La solution Cloudflare est facile à configurer



Configurez un domaine en moins de 5 minutes. Conservez votre fournisseur d'hébergement. Aucune modification du code n'est requise.


Des millions de propriétés Internet nous font confiance