Suite

Compresser plusieurs couches statiques en une seule couche pour accélérer le chargement des cartes Web ?

Compresser plusieurs couches statiques en une seule couche pour accélérer le chargement des cartes Web ?


Dans notre application Web, de nombreuses couches doivent être chargées, ce qui ralentit le chargement de la carte.

Je cherche un moyen de compresser plusieurs couches statiques en une seule couche pour accélérer le chargement.

Toutes les couches d'une géodatabase d'entreprise (version 10).

Est-il possible de compresser des calques ?


Je vous recommande de consulter la page d'aide intitulée Gestion des performances des services de carte ArcGIS.

En particulier, je pense que vous devriez regarder le point de cette page ci-dessous :

  • Précalculez les résultats des informations lorsque vous pouvez le faire. Par exemple, vous pouvez précalculer les cartes fournies avec ArcGIS for Server et utiliser des services de carte mis en cache ou des couches de fond de carte.

Ce que vous décrivez ressemble à une couche de fond de carte.


Couches de tuiles

ArcGIS Online inclut une variété de fonds de carte qui fournissent un contexte géographique immédiat pour vos couches opérationnelles. Les fonds de carte sont stockés sous forme de couches de tuiles, conçues pour un accès rapide et simple par les cartes Web, les applications Web, ArcGIS et presque toutes les applications logicielles de cartographie. Par exemple, vous pouvez inclure un fond de carte avec des tuiles de rues dans votre quartier pour fournir une référence visuelle pour les panneaux de signalisation dans votre couche d'entités. Les couches de tuiles sont également utiles lorsque vous devez exposer une carte ou une couche sur le Web pour la visualisation de données relativement statiques.

Les couches de tuiles se présentent sous différents formats en fonction des données source d'origine. Les couches de tuiles peuvent être stockées sous forme de tuiles raster pré-rendues ou de tuiles vectorielles. Les tuiles raster et vectorielles sont conçues pour fournir des données cartographiques hautes performances et hautement évolutives à des fins de visualisation.


Les références

Krzic, U., Gunther, S., Saunders, T.E., Streichan, S.J. & Hufnagel, L. Nat. Méthodes 9, 730–733 (2012).

Tomer, R., Khairy, K., Amat, F. & Keller, P.J. Nat. Méthodes 9, 755–763 (2012).

Chen, C.-B. La science 346, 1257998 (2014).

Bosveld, F. et al. La science 336, 724–727 (2012).

Reynaud, E.G., Peychl, J., Huisken, J. & Tomancak, P. Nat. Méthodes 12, 30–34 (2015).

Alberts, B. et al. Biologie moléculaire de la cellule (Garland Science, 2014).

Gilbert, S.F. Biologie du développement (Sinauer Associates, 2014).

Amat, F. et al. Nat. Méthodes 11, 951–958 (2014).

Fowlkes, C.C. et al. Cellule 133, 364–374 (2008).

Schmid, B. et al. Nat. Commun. 4, 2207 (2013).

Frankel, T. La géométrie de la physique : une introduction (Cambridge Univ. Press, 2004).

Rolland-Lagan, A.-G., Bangham, J.A. & Coen, E. Nature 422, 161–163 (2003).

Clark, A.G., Dierkes, K. & Paluch, E.K. Biophys. J. 105, 570–580 (2013).

McDonald, D.M. & Choyke, P.L. Nat. Méd. 9, 713–725 (2003).

Pitrone, P.G. et al. Nat. Méthodes 10, 598–599 (2013).

Sommer, C., Straehle, C., Kothe, U. & Hamprecht, F.A. Ilastik : boîte à outils interactive d'apprentissage et de segmentation. Dans Proc. 8e Symposium international de l'IEEE sur l'imagerie biomédicale (ISBI 2011) 230-233 (IEEE, 2011).

Mullen, P., Tong, Y., Alliez, P. & Desbrun, M. Paramétrage conforme spectral. Calcul. Graphique. Forum 27, 1487–1494 (2008).

Klein, S., Staring, M., Murphy, K., Viergever, M.A. & Pluim, J.P.W. elastix : une boîte à outils pour l'enregistrement d'images médicales basé sur l'intensité. IEEE Trans. Méd. Imagerie 29, 196–205 (2010).

Mickoleit, M. et al. Reconstruction haute résolution du cœur battant du poisson zèbre. Nat. Méthodes 11, 919–922 (2014).


Compresser plusieurs couches statiques en une seule couche pour accélérer le chargement des cartes Web ? - Systèmes d'information géographique

Электронные таблицы, таблицы на веб-сайтах, базы данных - любые данные, на основе которых можно подготовить таблицу с данными о местоположении, можно использовать для экспорта в BatchGeo. сли вы начинаете создание таблицы с нуля, то советуем использовать наш шаблон таблицы. одготовив свои данные, росто скопируйте их BatchGeo, чтобы создать арту с маркерами.

2. роверка и настройки

Мы делаем всё возможное, чтобы угадать нужный столбец с геоинформацией, например: адресами, названиями города, района, почтовыми индексами или широтой и долготой. сли настройки сервиса о умолчанию вас не устраивают, можете задать собственные настройки.

3. еренос объектов на карту

выполняем геокодирование очтовых индексов / адресов и создаём ашу карту. В зависимости от количества адресов в таблице процесс может занять несколько минут, но если у вас указана широта и долгота, то карта будет создана практически мгновенно. акончив картографирование, можете сохранить карту на веб-странице нажав кнопку «охранить и про».


Aquifères et eaux souterraines

Une énorme quantité d'eau existe dans le sol sous vos pieds, et les gens du monde entier en font un grand usage. Mais on ne le trouve qu'en quantités utilisables dans certains endroits souterrains - les aquifères. Lisez la suite pour comprendre les concepts d'aquifères et comment l'eau existe dans le sol.

Eaux souterraines et aquifères

Un trou creusé sur la plage illustre le concept selon lequel le sol, s'il est suffisamment perméable, peut retenir l'eau. La surface supérieure de cette zone de saturation s'appelle la nappe phréatique.

Crédit : Howard Perlman, USGS

Eaux souterraines est l'une de nos ressources les plus précieuses, même si vous ne la voyez probablement jamais ou même ne vous rendez pas compte qu'elle est là.

Avez-vous déjà creusé un trou sur la plage et l'avez-vous regardé se remplir partiellement d'eau du sable sous-jacent ? C'est un excellent moyen d'illustrer le concept selon lequel le sol, s'il est suffisamment perméable, peut retenir l'eau tout en restant solide. La surface supérieure de cette zone remplie d'eau, ou "zone de saturation", est appelée la nappe phréatique. La zone saturée sous la nappe phréatique s'appelle un aquifère, et les aquifères sont d'énormes réservoirs d'eau. Dans notre exemple de trou de sable, vous avez essentiellement creusé un "puits" qui expose la nappe phréatique, avec un aquifère en dessous. A la plage, le niveau de la nappe phréatique est toujours au même niveau que le océan, qui est juste en dessous de la surface de la plage.

Comme vous l'avez peut-être lu, la plupart des espaces vides dans les roches sous la nappe phréatique sont remplis d'eau. Ces roches ont des caractéristiques de porosité et de perméabilité différentes, ce qui signifie que l'eau ne se déplace pas de la même manière dans toutes les roches souterraines.

Lorsqu'une roche aquifère transmet facilement de l'eau aux puits et ressorts, on l'appelle un aquifère. puits peut être foré dans les aquifères et l'eau peut être pompée. Précipitation ajoute éventuellement de l'eau (recharger) dans la roche poreuse de l'aquifère. Le taux de recharge n'est pas le même pour tous les aquifères, cependant, et cela doit être pris en compte lors du pompage de l'eau d'un puits. Pomper trop d'eau trop vite fait baisser l'eau dans l'aquifère et finit par faire en sorte qu'un puits donne de moins en moins d'eau et même se tarir. En fait, pomper trop votre puits peut même entraîner l'assèchement du puits de votre voisin si vous pompez tous les deux à partir du même aquifère.

Visualiser les eaux souterraines

Dans le diagramme ci-dessous, vous pouvez voir comment le sol sous la nappe phréatique (la zone bleue) est saturé d'eau. La "zone non saturée" au-dessus de la nappe phréatique (la zone grise) contient toujours de l'eau (après tout, les racines des plantes vivent dans cette zone), mais elle n'est pas totalement saturée en eau. Vous pouvez le voir dans les deux dessins au bas du diagramme, qui montrent un gros plan de la façon dont l'eau est stockée entre les particules rocheuses souterraines.


2 réponses 2

Stocker les blocs en tant que positions et valeurs est en fait très inefficace. Même sans aucune surcharge causée par la structure ou l'objet que vous utilisez, vous devez stocker 4 valeurs distinctes par bloc. Il serait logique de l'utiliser par rapport à la méthode "stocker des blocs dans des tableaux fixes" (celle que vous avez décrite plus tôt) lorsque seulement un quart des blocs sont solides, et de cette façon, vous ne prenez même pas en compte d'autres méthodes d'optimisation. Compte.

Les octrees sont en fait parfaits pour les jeux basés sur des voxels, car ils se spécialisent dans le stockage de données avec des fonctionnalités plus importantes (par exemple, des correctifs du même bloc). Pour illustrer cela, j'ai utilisé un quadtree (essentiellement des octrees en 2d):

Ceci est mon jeu de départ contenant des tuiles 32x32, ce qui équivaudrait à 1024 valeurs :

Stocker cela sous forme de 1024 valeurs distinctes ne semble pas si inefficace, mais une fois que vous atteignez des tailles de carte similaires à celles des jeux, tels que Terraria, le chargement des écrans prendrait plusieurs secondes. Et si vous l'augmentez à la troisième dimension, il commence à utiliser tout l'espace du système.

Les quadtrees (ou octrees en 3d) peuvent aider la situation. Pour en créer un, vous pouvez soit partir de tuiles et les regrouper, soit partir d'une énorme cellule et la diviser jusqu'à ce que vous atteigniez les tuiles. Je vais utiliser la première approche, car c'est plus facile à visualiser.

Ainsi, lors de la première itération, vous regroupez tout dans des cellules 2x2, et si une cellule ne contient que des tuiles du même type, vous déposez les tuiles et stockez simplement le type. Après une itération, notre carte ressemblera à ceci :

Les lignes rouges marquent ce que nous stockons. Chaque carré est juste 1 valeur. Cela a ramené la taille de 1024 valeurs à 439, soit une diminution de 57%.

Mais vous connaissez le mantra. Allons un peu plus loin et regroupons-les dans des cellules :

Cela a réduit le nombre de valeurs stockées à 367. C'est seulement 36% de la taille d'origine.

Vous devez évidemment faire cette division jusqu'à ce que chaque 4 cellules adjacentes (8 blocs adjacents en 3D) à l'intérieur d'un morceau soit stockée dans une cellule, convertissant essentiellement un morceau en une grande cellule.

Cela présente également d'autres avantages, principalement lors d'une collision, mais vous souhaiterez peut-être créer un octree séparé pour cela, qui ne se soucie que de savoir si un seul bloc est solide ou non. De cette façon, au lieu de vérifier la collision pour chaque bloc à l'intérieur d'un morceau, vous pouvez simplement le faire contre les cellules.


“Est-ce que je le sais déjà ?” Quiz

Le quiz « Est-ce que je le sais déjà ? » vous aide à identifier vos forces et vos lacunes dans les sujets de ce chapitre.

Le quiz de huit questions, dérivé des sections principales de la partie "Sujets de base" du chapitre, vous aide à déterminer comment passer votre temps d'étude limité.

Le tableau 2-1 présente les principaux sujets abordés dans ce chapitre et les questions du quiz « Est-ce que je le sais déjà ? » qui correspondent à ces sujets.

Figure 2-1 La conception de réseau hiérarchique comporte trois couches : noyau, distribution et accès

Chaque couche fournit les fonctionnalités nécessaires au réseau du campus de l'entreprise. Vous n'avez pas besoin d'implémenter les couches en tant qu'entités physiques distinctes. Vous pouvez implémenter chaque couche dans un ou plusieurs périphériques ou en tant que composants d'interface coopérants partageant un châssis commun. Les réseaux plus petits peuvent « réduire » plusieurs couches sur un seul appareil avec uniquement une hiérarchie implicite. Maintenir une conscience explicite de la hiérarchie est utile à mesure que le réseau se développe.

Couche principale

La couche centrale est la dorsale de commutation à grande vitesse du réseau qui est cruciale pour les communications d'entreprise. Il est également appelé l'épine dorsale. La couche centrale doit avoir les caractéristiques suivantes :

Faible latence et bonne maniabilité

Évitement de la manipulation de paquets gourmande en CPU causée par la sécurité, l'inspection, la classification de la qualité de service (QoS) ou d'autres processus

Diamètre limité et constant

Lorsqu'un réseau utilise des routeurs, le nombre de sauts de routeur d'un bord à l'autre est appelé diamètre. Comme indiqué, il est considéré comme une bonne pratique de concevoir pour un diamètre cohérent au sein d'un réseau hiérarchique. Le trajet de n'importe quelle station d'extrémité à une autre station d'extrémité à travers la dorsale doit avoir le même nombre de sauts. La distance entre n'importe quelle station terminale et un serveur sur la dorsale doit également être cohérente.

La limitation du diamètre de l'interréseau offre des performances prévisibles et une facilité de dépannage. Vous pouvez ajouter des routeurs de couche de distribution et des réseaux locaux clients au modèle hiérarchique sans augmenter le diamètre de la couche centrale. L'utilisation d'une implémentation en bloc isole les stations d'extrémité existantes de la plupart des effets de la croissance du réseau.

Couche de distribution

La couche de distribution du réseau est le point d'isolement entre les couches d'accès et de base du réseau. La couche de distribution peut avoir de nombreux rôles, notamment la mise en œuvre des fonctions suivantes :

Connectivité basée sur des règles (par exemple, garantir que le trafic envoyé depuis un réseau particulier est transféré vers une interface tandis que tout le reste du trafic est transféré vers une autre interface)

Redondance et équilibrage de charge

Agrégation des armoires de câblage LAN

Agrégation des connexions WAN

Agrégation ou récapitulation d'adresses ou de zones

Accès départemental ou groupe de travail

Définition de domaine de diffusion ou de multidiffusion

Routage entre les réseaux locaux virtuels (VLAN)

Traductions de médias (par exemple, entre Ethernet et Token Ring)

Redistribution entre les domaines de routage (par exemple, entre deux protocoles de routage différents)

Délimitation entre les protocoles de routage statique et dynamique

Vous pouvez utiliser plusieurs fonctionnalités du logiciel Cisco IOS pour implémenter la stratégie au niveau de la couche de distribution :

Filtrage par adresse source ou destination

Filtrage sur les ports d'entrée ou de sortie

Masquage des numéros de réseau internes par filtrage des routes

Mécanismes de QoS, tels que la file d'attente basée sur la priorité

La couche de distribution fournit une agrégation de routes fournissant un résumé de route au cœur. Dans les réseaux locaux de campus, la couche de distribution assure le routage entre les réseaux locaux virtuels qui appliquent également des politiques de sécurité et de qualité de service.

Couche d'accès

La couche d'accès permet à l'utilisateur d'accéder aux segments locaux du réseau. La couche d'accès est caractérisée par des segments LAN commutés dans un environnement de campus. La microsegmentation à l'aide de commutateurs LAN fournit une bande passante élevée aux groupes de travail en réduisant le nombre de périphériques sur les segments Ethernet. Les fonctions de la couche d'accès sont les suivantes :

Classification et marquage QoS et limites de confiance

Inspection du protocole de résolution d'adresse (ARP)

Listes de contrôle d'accès virtuel (VACL)

Power over Ethernet (PoE) et VLAN auxiliaires pour VoIP

Contrôle d'accès au réseau (NAC)

Vous implémentez des modèles de haute disponibilité au niveau de la couche d'accès. La section “High Availability Network Services” couvre les modèles de disponibilité. Le commutateur LAN dans la couche d'accès peut contrôler l'accès au port et limiter le débit auquel le trafic est envoyé vers et depuis le port. Vous pouvez implémenter l'accès en identifiant l'adresse MAC à l'aide d'ARP, en faisant confiance à l'hôte et en utilisant des listes d'accès.

D'autres chapitres de ce livre couvrent les autres fonctions de la liste.

Pour les environnements de petit bureau/bureau à domicile (SOHO), toute la hiérarchie se réduit aux interfaces sur un seul appareil. L'accès à distance au réseau central de l'entreprise s'effectue via les technologies WAN traditionnelles telles que RNIS, Frame Relay et les lignes louées.Vous pouvez implémenter des fonctionnalités telles que le routage d'accès à la demande (DDR) et le routage statique pour contrôler les coûts. L'accès à distance peut inclure la technologie de réseau privé virtuel (VPN).

Le tableau 2-2 résume les couches hiérarchiques.

Figure 2-2 Conception hiérarchique commutée

La figure 2-3 montre des exemples de conception hiérarchique routée. Dans cette conception, la limite de la couche 3 est poussée vers la couche d'accès. La commutation de couche 3 se produit dans les couches d'accès, de distribution et de base. Le filtrage des routes est configuré sur les interfaces vers la couche d'accès. La récapitulation des routes est configurée sur les interfaces vers la couche principale. L'avantage de cette conception est que l'équilibrage de charge se produit à partir de la couche d'accès puisque les liens vers les commutateurs de distribution sont routés.

Figure 2-3 Conception hiérarchique routée

Une autre solution pour fournir une redondance entre la commutation d'accès et de distribution est le Virtual Switching System (VSS). VSS résout le problème de bouclage STP en convertissant la paire de commutation de distribution en un seul commutateur logique. Il supprime STP et élimine le besoin de Hot Standby Router Protocol (HSRP), Virtual Router Redundancy Protocol (VRRP) ou Gateway Load Balancing Protocol (GLBP).

Avec VSS, la topologie physique change car chaque commutateur d'accès a un seul commutateur de distribution en amont au lieu d'avoir deux commutateurs de distribution en amont. VSS est configuré uniquement sur les commutateurs Cisco 6500 à l'aide du superviseur VSS 720-10G. Comme le montre la figure 2-4, les deux commutateurs sont connectés via des liaisons 10GE appelées liaisons de commutation virtuelles (VSL), ce qui les fait ressembler à un seul commutateur. Les principaux avantages de VSS sont les suivants :

La commutation de couche 3 peut être utilisée vers la couche d'accès, améliorant ainsi la communication non-stop.

Échelle la bande passante du système jusqu'à 1,44 Tbit/s.

Gestion simplifiée d'une configuration unique du commutateur de distribution VSS.

Meilleur retour sur investissement (ROI) via une bande passante accrue entre la couche d'accès et la couche de distribution.

Pris en charge sur les commutateurs Catalyst 4500, 6500 et 6800.

Conception à moyeu et à rayons

Pour la conception de réseaux, la conception en étoile offre de meilleurs temps de convergence que la topologie en anneau. La conception en étoile, illustrée à la figure 2-5, s'adapte également mieux et est plus facile à gérer que les topologies en anneau ou en maillage. Par exemple, la mise en œuvre de politiques de sécurité dans une topologie en maillage complet deviendrait ingérable car vous devriez configurer des politiques à chaque emplacement de point.

Figure 2-5 Conception en étoile

Conception de base effondrée

Une alternative à la hiérarchie à trois couches est la conception du noyau effondré. Il s'agit d'une hiérarchie à deux couches utilisée avec des réseaux plus petits. Il est couramment utilisé sur des sites avec un seul bâtiment avec seulement plusieurs étages. Comme le montre la Figure 2-6, les couches centrale et de distribution sont fusionnées, fournissant tous les services nécessaires à ces couches. Les paramètres de conception pour décider si vous devez migrer vers la hiérarchie à trois couches incluent une capacité et un débit insuffisants au niveau de la couche de distribution, la résilience du réseau et la dispersion géographique.

Figure 2-6 Conception du noyau effondré

Modèle d'architecture d'entreprise Cisco

Le modèle d'architecture d'entreprise Cisco facilite la conception de réseaux plus grands et plus évolutifs.

À mesure que les réseaux deviennent plus sophistiqués, il est nécessaire d'utiliser une approche de conception plus modulaire que les couches centrales, de distribution et d'accès WAN et LAN. L'architecture divise le réseau en zones et modules de réseau fonctionnels. Ces domaines et modules de l'architecture d'entreprise Cisco sont

Module de centre de données d'entreprise

Module télétravailleur d'entreprise

Le modèle d'architecture d'entreprise Cisco maintient le concept de composants de distribution et d'accès connectant les utilisateurs, les services WAN et les fermes de serveurs via un réseau fédérateur de campus à haut débit. L'approche modulaire dans la conception devrait être un guide pour l'architecte du réseau. Dans les réseaux plus petits, les couches peuvent s'effondrer en une seule couche, voire un seul appareil, mais les fonctions restent.

La figure 2-7 montre le modèle d'architecture d'entreprise Cisco. La zone du campus d'entreprise contient une infrastructure de campus qui se compose de couches de base, de distribution de bâtiment et d'accès au bâtiment, avec un module de centre de données. La zone périphérique de l'entreprise comprend les modules Internet, e-commerce, VPN et WAN qui connectent l'entreprise aux installations du fournisseur de services. La zone périphérique SP fournit des services Internet, de réseau téléphonique public commuté (RTPC) et WAN à l'entreprise.

Figure 2-7 Modèle d'architecture d'entreprise Cisco

Les serveurs de gestion de réseau résident dans l'infrastructure du campus mais sont liés à tous les composants du réseau d'entreprise pour la surveillance et la gestion.

La périphérie d'entreprise se connecte au module de distribution de périphérie du campus d'entreprise. Dans les sites de petite et moyenne taille, la distribution périphérique peut s'effondrer dans le composant principal du campus. Il fournit une connectivité aux services sortants qui sont décrits plus en détail dans les sections suivantes.

Module Campus Entreprise

Le campus d'entreprise se compose des sous-modules suivants :

Commutateurs de distribution et d'agrégation du bâtiment

La figure 2-8 montre le modèle Enterprise Campus. L'infrastructure du campus se compose du noyau du campus, de la distribution du bâtiment et des couches d'accès au bâtiment. Le cœur du campus fournit une dorsale commutée à haut débit entre les bâtiments, la batterie de serveurs et vers la périphérie de l'entreprise. Ce segment se compose d'une connectivité redondante et à convergence rapide. La couche de distribution du bâtiment regroupe tous les commutateurs d'accès aux placards et effectue le contrôle d'accès, la qualité de service, la redondance des routes et l'équilibrage de charge. Les commutateurs d'accès au bâtiment fournissent un accès VLAN, PoE pour les téléphones IP et les points d'accès sans fil, la suppression de la diffusion et l'arbre couvrant.

Figure 2-8 Modèle de campus d'entreprise

La batterie de serveurs ou le centre de données fournit un accès haut débit et une haute disponibilité (redondance) aux serveurs. Les serveurs d'entreprise tels que les serveurs de fichiers et d'impression, les serveurs d'applications, les serveurs de messagerie, les serveurs DHCP (Dynamic Host Configuration Protocol) et les serveurs DNS (Domain Name System) sont placés dans la batterie de serveurs. Les serveurs Cisco Unified CallManager sont placés dans la batterie de serveurs pour les réseaux de téléphonie IP. Les serveurs de gestion de réseau sont situés dans la batterie de serveurs, mais ces serveurs sont liés à chaque module du campus pour assurer la surveillance du réseau, la journalisation, les tendances et la gestion de la configuration.

Une infrastructure de campus d'entreprise peut s'appliquer à des emplacements petits, moyens et grands. Dans la plupart des cas, les grands campus ont une conception à trois niveaux avec un composant de placard de câblage (couche d'accès au bâtiment), une couche de distribution de bâtiment et une couche centrale de campus. Les petits campus ont probablement une conception à deux niveaux avec un composant d'armoire de câblage (couche d'accès Ethernet) et un noyau de base (couches de base et de distribution effondrées). Il est également possible de configurer des fonctions de distribution dans un dispositif d'accès au bâtiment multicouche pour maintenir l'accent de la dorsale du campus sur le transport rapide. Les conceptions de réseaux de campus de taille moyenne utilisent parfois une implémentation à trois niveaux ou à deux niveaux, en fonction du nombre de ports, des exigences de service, de la gérabilité, des performances et de la disponibilité requises.

Zone périphérique d'entreprise

Comme le montre la Figure 2-9, la périphérie d'entreprise se compose des sous-modules suivants :

Applications Web et bases de données d'entreprise, réseaux et serveurs de commerce électronique

Connectivité Internet et zone démilitarisée (DMZ)

Connectivité WAN d'entreprise

Figure 2-9 Module de périphérie d'entreprise

Module de commerce électronique

Le sous-module de commerce électronique de la périphérie d'entreprise fournit des réseaux hautement disponibles pour les services commerciaux. Il utilise les conceptions à haute disponibilité du module de batterie de serveurs avec la connectivité Internet du module Internet. Les techniques de conception sont les mêmes que celles décrites pour ces modules. Les appareils situés dans le sous-module e-commerce sont les suivants :

Serveurs Web et applicatifs : Interface utilisateur principale pour la navigation dans le commerce électronique

Serveurs de base de données : Contenir l'application et les informations de transaction

Pare-feu et routeurs pare-feu : Gouverner la communication entre les utilisateurs du système

Systèmes de prévention des intrusions réseau (IPS) : Assurer la surveillance des segments de réseau clés dans le module pour détecter et répondre aux attaques contre le réseau

Switch multicouche avec modules IPS : Assurer le transport du trafic et la surveillance intégrée de la sécurité

Module de connectivité Internet

Le sous-module Internet de la périphérie d'entreprise fournit des services tels que des serveurs publics, des e-mails et DNS. La connectivité à un ou plusieurs fournisseurs de services Internet (FAI) est également fournie. Les composants de ce sous-module sont les suivants :

Pare-feu et routeurs pare-feu : Assurer la protection des ressources, le filtrage avec état du trafic et la terminaison VPN pour les sites distants et les utilisateurs

Routeurs de périphérie Internet : Fournir un filtrage de base et une connectivité multicouche

Serveurs FTP et HTTP : Fournir des applications Web qui interfacent l'entreprise avec le monde via l'Internet public

Serveurs relais SMTP : Agir comme relais entre Internet et les serveurs de messagerie intranet

Serveurs DNS : Servir de serveurs DNS externes faisant autorité pour l'entreprise et relayer les requêtes internes vers Internet

Plusieurs modèles connectent l'entreprise à Internet. La forme la plus simple consiste à avoir un seul circuit entre l'entreprise et le SP, comme illustré à la Figure 2-10. L'inconvénient est que vous n'avez pas de redondance ou de basculement si le circuit tombe en panne.

Figure 2-10 Connexion Internet simple

Vous pouvez utiliser des solutions de multihébergement pour fournir une redondance ou un basculement pour le service Internet. La Figure 2-11 montre quatre options de multi-hébergement Internet :

Option 1: Routeur unique, liens doubles vers un FAI

Option 2: Routeur unique, liens doubles vers deux FAI

Option 3 : Deux routeurs, deux liens vers un FAI

Option 4: Deux routeurs, deux liens vers deux FAI

Figure 2-11 Options de multi-hébergement Internet

L'option 1 fournit la redondance de liaison mais ne fournit pas la redondance du FAI et du routeur local. L'option 2 fournit une redondance de liaison et de FAI mais ne fournit pas de redondance en cas de panne d'un routeur local. L'option 3 fournit une redondance de liaison et de routeur local mais ne prévoit pas une défaillance du FAI. L'option 4 fournit une redondance complète du routeur local, des liaisons et des FAI.

VPN/Accès à distance

Le module VPN/accès distant de la périphérie d'entreprise fournit des services de terminaison d'accès distant, y compris l'authentification pour les utilisateurs et les sites distants. Les composants de ce sous-module sont les suivants :

Pare-feu : Fournir un filtrage avec état du trafic, authentifier les sites distants de confiance et fournir une connectivité à l'aide de tunnels IPsec

Concentrateurs d'accès commuté : Mettre fin aux anciennes connexions d'appel entrant et authentifier les utilisateurs individuels

Appareils de sécurité adaptatifs Cisco (ASA) : Terminez les tunnels IPsec, authentifiez les utilisateurs distants individuels et fournissez des services de pare-feu et de prévention des intrusions

Appareils de système de prévention des intrusions réseau (IPS)

Si vous utilisez un serveur de terminal d'accès distant, ce module se connecte au RTC. Les réseaux d'aujourd'hui préfèrent souvent les VPN aux serveurs de terminaux d'accès à distance et aux liaisons WAN dédiées. Les VPN réduisent les dépenses de communication en tirant parti de l'infrastructure des SP. Pour les applications critiques, les économies de coûts peuvent être compensées par une réduction du contrôle de l'entreprise et la perte de service déterministe. Les bureaux distants, les utilisateurs mobiles et les bureaux à domicile accèdent à Internet via le SP local avec des tunnels IPsec sécurisés vers le sous-module VPN/accès distant via le sous-module Internet.

La figure 2-12 montre une conception VPN. Les succursales obtiennent un accès Internet local auprès d'un FAI. Les télétravailleurs obtiennent également un accès Internet local. Le logiciel VPN crée des tunnels VPN sécurisés vers le serveur VPN situé dans le sous-module VPN de la périphérie de l'entreprise.

Figure 2-12 Architecture VPN

Réseau étendu d'entreprise

La périphérie d'entreprise du WAN d'entreprise comprend l'accès aux WAN. Les technologies WAN comprennent les éléments suivants :

Commutation d'étiquettes multiprotocoles (MPLS)

Réseau optique synchrone (SONET) et hiérarchie numérique synchrone (SDH)

Ligne d'abonné numérique (DSL)

Le chapitre 6, “WAN Technologies and the Enterprise Edge,” et le chapitre 7, “WAN Design,” couvrent ces technologies WAN. Les routeurs du WAN d'entreprise fournissent l'accès WAN, la qualité de service, le routage, la redondance et le contrôle d'accès au WAN. Parmi ces technologies WAN, MPLS est la technologie WAN la plus populaire utilisée aujourd'hui. Pour les réseaux MPLS, les routeurs WAN donnent la priorité aux paquets IP en fonction des valeurs de point de code de services différenciés (DSCP) configurés pour utiliser l'un des nombreux niveaux de QoS MPLS. La Figure 2-13 montre le module WAN se connectant à la périphérie Frame Relay SP. Les routeurs de périphérie d'entreprise du module WAN se connectent aux commutateurs Frame Relay du SP.

Figure 2-13 module WAN

Utilisez les directives suivantes lors de la conception de la périphérie d'entreprise :

Déterminez la connexion nécessaire pour connecter le réseau d'entreprise à Internet. Ces connexions sont affectées au module de connectivité Internet.

Créez le module de commerce électronique pour les clients et partenaires qui ont besoin d'un accès Internet aux applications commerciales et de base de données.

Concevoir le module d'accès distant/VPN pour l'accès VPN au réseau interne depuis Internet. Implémentez la politique de sécurité et configurez les paramètres d'authentification et d'autorisation.

Attribuez les sections de périphérie qui ont des connexions permanentes aux succursales distantes. Attribuez-les au WAN, au réseau métropolitain (MAN) et au module VPN.

Module Edge de fournisseur de services

Le module de périphérie SP, illustré à la Figure 2-14, se compose de services de périphérie SP tels que les suivants :

Figure 2-14 Module de périphérie WAN/Internet SP

Les entreprises utilisent des SP pour acquérir des services réseau. Les FAI offrent aux entreprises un accès à Internet. Les FAI peuvent acheminer les réseaux de l'entreprise vers leur réseau et vers les fournisseurs Internet en amont et homologues. Les FAI peuvent fournir des services Internet via un accès Ethernet, DSL ou T1/DS3. Il est désormais courant pour le SP d'avoir son routeur ISP sur le site du client et de fournir un accès Ethernet au client. La connectivité avec plusieurs FAI a été décrite dans la section “Module de connectivité Internet.”

Pour les services vocaux, les fournisseurs PSTN offrent un accès au réseau vocal public mondial. Pour le réseau d'entreprise, le RTPC permet aux utilisateurs commutés d'accéder à l'entreprise via des technologies sans fil analogiques ou cellulaires. Il est également utilisé pour la sauvegarde WAN à l'aide des services RNIS.

Les SP WAN offrent des services MPLS, Frame Relay, ATM et d'autres services WAN pour la connectivité site à site de l'entreprise avec des connexions permanentes. Ces technologies et d'autres WAN sont décrites au chapitre 6.

Modules à distance

Les modules distants du modèle d'architecture d'entreprise Cisco sont la branche d'entreprise, le centre de données d'entreprise et les modules de télétravailleur d'entreprise.

Module de succursale d'entreprise

La succursale de l'entreprise se compose normalement de bureaux distants ou de bureaux de vente. Ces succursales s'appuient sur le WAN pour utiliser les services et les applications fournis sur le campus principal. L'infrastructure du site distant se compose généralement d'un routeur WAN et d'un petit commutateur LAN, comme illustré à la Figure 2-15. Comme alternative au MPLS, il est courant d'utiliser des technologies VPN IPsec de site à site pour se connecter au campus principal.

Figure 2-15 Module de succursale d'entreprise

Module de centre de données d'entreprise

Le centre de données d'entreprise utilise le réseau pour améliorer le serveur, le stockage et les serveurs d'applications. Le centre de données hors site fournit des services de reprise après sinistre et de continuité des activités pour l'entreprise. Des services WAN hautement disponibles sont utilisés pour connecter le campus de l'entreprise au centre de données distant de l'entreprise. Les composants du centre de données incluent les éléments suivants :

Infrastructure de réseau: Gigabit et 10 Gigabit Ethernet, InfiniBand, transport optique et commutation de stockage

Services interactifs : Services d'infrastructure informatique, services de stockage, sécurité et optimisation des applications

Gestion du CD : Cisco Fabric Manager et Cisco VFrame pour la gestion des serveurs et des services

Le centre de données d'entreprise est traité en détail au chapitre 4, « Conception du centre de données ».

Module télétravailleur d'entreprise

Le module télétravailleur d'entreprise se compose d'un petit bureau ou d'un utilisateur mobile qui a besoin d'accéder aux services du campus d'entreprise. Comme le montre la Figure 2-16, les utilisateurs mobiles se connectent depuis leur domicile, leur hôtel ou d'autres emplacements à l'aide de lignes commutées ou d'accès Internet. Les clients VPN sont utilisés pour permettre aux utilisateurs mobiles d'accéder en toute sécurité aux applications d'entreprise. La solution Cisco Virtual Office fournit une solution pour les télétravailleurs qui est gérée de manière centralisée à l'aide de petits routeurs de services intégrés (ISR) dans la solution VPN. Des fonctionnalités de téléphonie IP sont également fournies dans la solution Cisco Virtual Office, fournissant des services vocaux d'entreprise pour les utilisateurs mobiles.

Figure 2-16 Solution télétravailleur d'entreprise

Le Tableau 2-3 résume l'architecture d'entreprise Cisco.

Figure 2-17 HSRP : Le routeur fantôme représente les vrais routeurs

Dans la Figure 2-17, la séquence suivante se produit :

Le poste de travail est configuré pour utiliser le routeur fantôme (192.168.1.1) comme routeur par défaut.

Lors du démarrage, les routeurs élisent le routeur A comme routeur actif HSRP. Le routeur actif effectue le travail pour le fantôme HSRP. Le routeur B est le routeur de secours HSRP.

Lorsque le poste de travail envoie une trame ARP pour trouver son routeur par défaut, le routeur A répond avec l'adresse MAC du routeur fantôme.

Si le routeur A se déconnecte, le routeur B prend le relais en tant que routeur actif, poursuivant la livraison des paquets du poste de travail. Le changement est transparent pour le poste de travail.

VRRP est un protocole de redondance de routeur défini dans la RFC 3768. La RFC 5768 définit VRRPv3 pour les réseaux IPv4 et IPv6. VRRP est basé sur le HSRP de Cisco, mais n'est pas compatible. VRRP spécifie un protocole d'élection qui attribue dynamiquement la responsabilité d'un routeur virtuel à l'un des routeurs VRRP sur un réseau local. Le routeur VRRP contrôlant les adresses IP associées à un routeur virtuel est appelé le maître, et il transmet les paquets envoyés à ces adresses IP. Le processus d'élection fournit un basculement dynamique dans la responsabilité de transfert en cas d'indisponibilité du maître. Cela permet à n'importe quelle adresse IP de routeur virtuel sur le réseau local d'être utilisée comme routeur de premier saut par défaut par les hôtes finaux. La sauvegarde du routeur virtuel assume la responsabilité du transfert du routeur virtuel en cas de défaillance du maître.

GLBP protège le trafic de données d'un routeur ou d'un circuit défaillant, tel que HSRP, tout en permettant le partage de charge de paquets entre un groupe de routeurs redondants. Les méthodes d'équilibrage de charge avec HSRP et VRRP fonctionnent avec de petits réseaux, mais GLBP permet un équilibrage de charge de premier saut sur des réseaux plus importants.

La différence entre GLBP et HSRP est qu'il permet l'équilibrage de charge entre plusieurs routeurs redondants et jusqu'à quatre passerelles dans un groupe GLBP. Il équilibre la charge en utilisant une seule adresse IP virtuelle et plusieurs adresses MAC virtuelles. Chaque hôte est configuré avec la même adresse IP virtuelle et tous les routeurs du groupe de routeurs virtuels participent au transfert des paquets. Par défaut, tous les routeurs d'un groupe transfèrent automatiquement le trafic et la charge. Les membres du GLBP communiquent entre eux via des messages Hello envoyés toutes les trois secondes à l'adresse de multidiffusion 224.0.0.102, port 3222 du protocole de datagramme utilisateur (UDP). Les avantages du GLBP sont les suivants :

Partage de charge : GLBP peut être configuré de manière à ce que le trafic des clients LAN puisse être partagé par plusieurs routeurs.

Plusieurs routeurs virtuels : GLBP prend en charge jusqu'à 1024 routeurs virtuels (groupes GLBP) sur chaque interface physique d'un routeur.

Préemption: GLBP vous permet de préempter une passerelle virtuelle active avec une sauvegarde de priorité plus élevée.

Authentification: L'authentification par mot de passe texte simple est prise en charge.

Redondance du serveur

Certains environnements nécessitent des serveurs de fichiers et d'applications entièrement redondants (en miroir). Par exemple, dans une société de bourse où les traders doivent accéder aux données pour acheter et vendre des actions, deux serveurs redondants ou plus peuvent répliquer les données. En outre, vous pouvez déployer des serveurs Cisco Unified Communications Manager (CUCM) en grappes pour la redondance. Les serveurs doivent être sur des réseaux différents et utiliser des alimentations redondantes. Pour fournir une haute disponibilité dans le module de batterie de serveurs, vous disposez des options suivantes :

Pièce jointe unique : Ceci n'est pas recommandé car cela nécessite d'autres mécanismes (HSRP, GLBP) pour trouver dynamiquement un autre routeur.

Double fixation : Cette solution augmente la disponibilité en utilisant des cartes d'interface réseau (NIC) redondantes.

Offres groupées de ports Fast EtherChannel (FEC) et Gigabit EtherChannel (GEC) : cette solution regroupe 2 ou 4 liaisons Fast ou Gigabit Ethernet pour augmenter la bande passante.

Redondance d'itinéraire

La conception de routes redondantes a deux objectifs : équilibrer les charges et augmenter la disponibilité.

L'équilibrage de charge

La plupart des protocoles de routage IP peuvent équilibrer les charges sur des liaisons parallèles à coût égal. Utilisez la commande maximum-paths pour modifier le nombre de liens que le routeur équilibrera pour IP, la valeur par défaut est quatre et le maximum est six. Pour prendre en charge l'équilibrage de charge, maintenez la bande passante cohérente au sein d'une couche du modèle hiérarchique afin que tous les chemins aient le même coût. (Le protocole Cisco Enhanced Interior Gateway Routing Protocol [EIGRP] est une exception car il peut équilibrer la charge du trafic sur plusieurs routes ayant des métriques différentes à l'aide d'une fonctionnalité appelée variance.)

Un protocole de routage basé sur les sauts effectue un équilibrage de charge sur des chemins à bande passante inégale tant que le nombre de sauts est égal. Une fois que la liaison la plus lente est saturée, la perte de paquets sur la liaison saturée empêche la pleine utilisation des liaisons de plus grande capacité. Ce scénario est appelé encombrement sténopé. Vous pouvez éviter la congestion par trous d'épingle en concevant et en fournissant des liens à bande passante égale au sein d'une couche de la hiérarchie ou en utilisant un protocole de routage qui prend en compte la bande passante.

L'équilibrage de charge IP dans un routeur Cisco dépend du mode de commutation utilisé par le routeur. Traitez les équilibres de charge de commutation paquet par paquet. La charge de commutation rapide, autonome, silicium, optimale, distribuée et NetFlow s'équilibre destination par destination, car le processeur met en cache les informations utilisées pour encapsuler les paquets en fonction de la destination pour ces types de modes de commutation.

Disponibilité croissante

En plus de faciliter l'équilibrage de charge, les routes redondantes augmentent la disponibilité du réseau.

Vous devez conserver une bande passante cohérente au sein d'un composant de conception donné pour faciliter l'équilibrage de charge. Une autre raison de maintenir la cohérence de la bande passante au sein d'une couche d'une hiérarchie est que les protocoles de routage convergent beaucoup plus rapidement sur plusieurs chemins à coût égal vers un réseau de destination.

En utilisant des conceptions de réseau maillées redondantes, vous pouvez minimiser l'effet des défaillances de liaison. Selon le temps de convergence des protocoles de routage, une seule panne de liaison ne peut pas avoir d'effet catastrophique.

Vous pouvez concevoir des liens réseau redondants pour fournir un maillage complet ou un maillage partiel bien connecté. Dans un réseau à maillage complet, chaque routeur a un lien avec tous les autres routeurs, comme illustré à la Figure 2-18. Un réseau à maillage complet fournit une redondance complète et fournit également de bonnes performances car il n'y a qu'un seul saut entre deux sites. Le nombre de liens dans un maillage complet est n(n𔂿)/2, où n est le nombre de routeurs. Chaque routeur est connecté à tous les autres routeurs. Un réseau à maillage partiel bien connecté fournit à chaque routeur des liens vers au moins deux autres périphériques de routage du réseau.

Figure 2-18 Réseau à maillage complet : chaque routeur a un lien avec tous les autres routeurs du réseau.

Un réseau entièrement maillé peut être coûteux à mettre en œuvre dans les WAN en raison du nombre requis de liens. De plus, les groupes de routeurs qui diffusent des mises à jour de routage ou des annonces de service ont des limites pratiques à l'évolutivité. À mesure que le nombre de pairs de routage augmente, la quantité de bande passante et de ressources CPU consacrées au traitement des diffusions augmente.

Une ligne directrice suggérée est de maintenir le trafic de diffusion à moins de 20 pour cent de la bande passante de chaque lien, ce montant limite le nombre de routeurs homologues qui peuvent échanger des tables de routage ou des annonces de service. Lors de la conception de la bande passante de liaison, réservez 80 % de celle-ci au trafic de données, voix et vidéo afin que le reste puisse être utilisé pour le routage et d'autres trafics de liaison. Lors de la planification de la redondance, suivez les directives pour une conception simple et hiérarchique. La figure 2-19 illustre une conception d'entreprise hiérarchique et redondante classique qui utilise une topologie à maillage partiel plutôt qu'une topologie à maillage complet. Pour les conceptions LAN, les liens entre les couches d'accès et de distribution peuvent être Fast Ethernet, avec des liens vers le cœur à des vitesses Gigabit Ethernet.

Figure 2-19 Conception à maillage partiel avec redondance

Liaison de la redondance des médias

Dans les applications critiques, il est souvent nécessaire de fournir des supports redondants.

Dans les réseaux commutés, les commutateurs peuvent avoir des liens redondants entre eux. Cette redondance est bonne car elle minimise les temps d'arrêt, mais elle peut entraîner des diffusions encerclant en permanence le réseau, ce que l'on appelle une tempête de diffusion. Étant donné que les commutateurs Cisco implémentent l'algorithme Spanning Tree IEEE 802.1d, vous pouvez éviter ce bouclage dans le protocole Spanning Tree (STP). L'algorithme spanning-tree garantit qu'un seul chemin est actif entre deux stations du réseau. L'algorithme permet des chemins redondants qui sont automatiquement activés lorsque le chemin actif rencontre des problèmes.

STP a une limitation de conception d'autoriser seulement l'un des chemins redondants à être actif. VSS peut être utilisé avec les commutateurs Catalyst 6500 pour surmonter cette limitation.

Vous pouvez utiliser EtherChannel pour regrouper des liens pour l'équilibrage de charge. Les liens sont regroupés en puissances de 2 (2, 4, 8 groupes). Il agrège la bande passante des liens. Par conséquent, deux ports 10GE deviennent 20 Gbps de bande passante lorsqu'ils sont regroupés. Pour un équilibrage de charge plus granulaire, utilisez une combinaison d'équilibrage de charge source et destination par port si disponible sur le commutateur. Dans les réseaux actuels, EtherChannel utilise LACP, qui est un protocole de négociation standard défini dans IEEE 802.3ad (une solution plus ancienne incluait le protocole PAgP propriétaire de Cisco). LACP aide à protéger contre les boucles de couche 2 causées par une mauvaise configuration. Un inconvénient est qu'il introduit des frais généraux et des retards lors de la configuration de l'ensemble.

Les liaisons WAN étant souvent des éléments critiques de l'interréseau, les environnements WAN déploient souvent des supports redondants. Comme le montre la Figure 2-20, vous pouvez provisionner des liens de sauvegarde afin qu'ils deviennent actifs lorsqu'un lien principal tombe en panne ou devient encombré.

Figure 2-20 Les liens de sauvegarde peuvent fournir une redondance.

Souvent, les liens de sauvegarde utilisent une technologie différente. Par exemple, il est courant d'utiliser des VPN Internet pour sauvegarder les liens MPLS principaux dans les réseaux actuels. En utilisant des routes statiques flottantes, vous pouvez spécifier que la route de secours doit avoir une distance administrative plus élevée (utilisée par les routeurs Cisco pour sélectionner les informations de routage) afin qu'elle ne soit pas normalement utilisée à moins que la route principale ne tombe en panne.

Lors du provisionnement des liens de sauvegarde, renseignez-vous autant que possible sur le routage du circuit physique. Différents opérateurs utilisent parfois les mêmes installations, ce qui signifie que votre chemin de sauvegarde peut être sujet aux mêmes défaillances que votre chemin principal. Faites un travail d'enquête pour vous assurer que votre sauvegarde agit vraiment comme une sauvegarde.

Cisco prend en charge le protocole MPPP (Multilink Point-to-Point Protocol), qui est une norme IETF (Internet Engineering Task Force) pour l'agrégation du canal B RNIS (ou interface série asynchrone). Il lie plusieurs liaisons WAN en un seul canal logique. MPPP est défini dans la RFC 1990. MPPP ne spécifie pas comment un routeur doit accomplir le processus de prise de décision pour faire apparaître des canaux supplémentaires. Au lieu de cela, il cherche à s'assurer que les paquets arrivent en séquence au routeur de réception. Ensuite, les données sont encapsulées dans PPP et le datagramme reçoit un numéro de séquence. Au niveau du routeur de réception, PPP utilise ce numéro de séquence pour recréer le flux de données d'origine. Plusieurs canaux apparaissent comme un seul lien logique vers les protocoles de couche supérieure. Pour les réseaux Frame Relay, FRF.16.1 Multilink Frame Relay est utilisé pour exécuter une fonction similaire.


Abstrait

Les approches d'apprentissage automatique (ML) sont largement utilisées pour développer des systèmes ou des cadres capables de prédire les propriétés d'intérêt en apprenant et en établissant des relations et des inférences à partir de données. Dans le présent travail, un cadre basé sur ML est proposé pour prédire l'évolution de la distribution des contraintes locales, de l'anisotropie plastique et de la rupture lors de la déformation en traction de l'alliage d'aluminium AlSi10Mg produit par fusion laser sélective (SLM). Le cadre combine les méthodes impliquées dans la fabrication additive (AM) et l'intelligence artificielle (IA). Cela comprend l'impression d'échantillons d'essai par fusion laser sur lit de poudre (LPBF), la tomodensitométrie (CT) à rayons X pour mesurer la distribution des défauts internes, les tests mécaniques avec corrélation d'images numériques (DIC) pour obtenir l'évolution de la contrainte locale, l'extraction et le couplage de CT et les données DIC, et le développement, la validation et l'évaluation d'un modèle de réseau de neurones artificiels (ANN). Les données expérimentales des mesures CT et DIC sont utilisées pour former, valider et évaluer le modèle ANN proposé. Les caractéristiques microstructurales telles que la taille, la forme, la fraction volumique et la distribution de la porosité sont utilisées comme données d'entrée pour le RNA. Le modèle ANN proposé prédit avec succès l'évolution des déformations locales, de l'anisotropie plastique et de la rupture lors de la déformation en traction. L'intensité et l'emplacement des points chauds de déformation ainsi que la forme des bandes de cisaillement et l'emplacement de l'amorçage des fissures sont bien prédits. La recherche actuelle démontre l'applicabilité d'une approche ANN basée sur ML pour prédire les relations microstructure - propriété - performance pour les matériaux d'ingénierie avec des microstructures hétérogènes complexes telles que celles produites de manière additive par SLM. Le succès de l'approche actuelle motive une utilisation plus poussée des techniques ML, en tant que moyen pour le développement accéléré de nouveaux alliages, l'optimisation du processus AM et son applicabilité à grande échelle.


Contenu

Un algorithme d'équilibrage de charge essaie toujours de répondre à un problème spécifique. Entre autres, la nature des tâches, la complexité algorithmique, l'architecture matérielle sur laquelle les algorithmes s'exécuteront ainsi que la tolérance aux erreurs requise, doivent être pris en compte. Par conséquent, des compromis doivent être trouvés pour répondre au mieux aux exigences spécifiques à l'application.

Nature des tâches Modifier

L'efficacité des algorithmes d'équilibrage de charge dépend de manière critique de la nature des tâches. Par conséquent, plus d'informations sur les tâches sont disponibles au moment de la prise de décision, plus le potentiel d'optimisation est grand.

Taille des tâches Modifier

Une parfaite connaissance du temps d'exécution de chacune des tâches permet d'atteindre une répartition de charge optimale (voir algorithme de somme des préfixes). [1] Malheureusement, il s'agit en fait d'un cas idéalisé. Connaître le temps d'exécution exact de chaque tâche est une situation extrêmement rare.

Pour cette raison, il existe plusieurs techniques pour se faire une idée des différents temps d'exécution. Tout d'abord, dans le cas heureux d'avoir des tâches de taille relativement homogène, il est possible de considérer que chacune d'entre elles nécessitera approximativement le temps d'exécution moyen. Si, en revanche, le temps d'exécution est très irrégulier, des techniques plus sophistiquées doivent être utilisées. Une technique consiste à ajouter des métadonnées à chaque tâche. En fonction du temps d'exécution précédent pour des métadonnées similaires, il est possible de faire des inférences pour une tâche future basée sur des statistiques. [2]

Dépendances Modifier

Dans certains cas, les tâches dépendent les unes des autres. Ces interdépendances peuvent être illustrées par un graphe orienté acyclique. Intuitivement, certaines tâches ne peuvent pas commencer tant que d'autres ne sont pas terminées.

En supposant que le temps requis pour chacune des tâches soit connu à l'avance, un ordre d'exécution optimal doit conduire à la minimisation du temps total d'exécution. Bien qu'il s'agisse d'un problème NP-difficile et qu'il puisse donc être difficile à résoudre exactement. Il existe des algorithmes, comme le planificateur de tâches, qui calculent des distributions de tâches optimales à l'aide de méthodes métaheuristiques.

Séparation des tâches Modifier

Une autre caractéristique des tâches critiques pour la conception d'un algorithme d'équilibrage de charge est leur capacité à être décomposées en sous-tâches lors de l'exécution. L'algorithme "Tree-Shaped Computation" présenté plus loin tire largement parti de cette spécificité.

Algorithmes statiques et dynamiques Modifier

Modification statique

Un algorithme d'équilibrage de charge est « statique » lorsqu'il ne prend pas en compte l'état du système pour la répartition des tâches. Ainsi, l'état du système inclut des mesures telles que le niveau de charge (et parfois même la surcharge) de certains processeurs. Au lieu de cela, des hypothèses sur l'ensemble du système sont faites à l'avance, telles que les heures d'arrivée et les besoins en ressources des tâches entrantes. De plus, le nombre de processeurs, leurs puissances respectives et les vitesses de communication sont connus. Par conséquent, l'équilibrage de charge statique vise à associer un ensemble connu de tâches aux processeurs disponibles afin de minimiser une certaine fonction de performance. L'astuce réside dans le concept de cette fonction de performance.

Les techniques d'équilibrage de charge statique sont généralement centralisées autour d'un routeur, ou maître, qui répartit les charges et optimise la fonction de performance. Cette minimisation permet de prendre en compte des informations liées aux tâches à répartir, et d'en déduire un temps d'exécution attendu.

L'avantage des algorithmes statiques est qu'ils sont faciles à mettre en place et extrêmement efficaces dans le cas de tâches assez régulières (comme le traitement des requêtes HTTP d'un site web). Cependant, il existe encore une certaine variance statistique dans l'attribution des tâches qui peut conduire à une surcharge de certaines unités de calcul.

Modification dynamique

Contrairement aux algorithmes de répartition de charge statique, les algorithmes dynamiques prennent en compte la charge actuelle de chacune des unités de calcul (également appelées nœuds) du système. Dans cette approche, les tâches peuvent être déplacées dynamiquement d'un nœud surchargé vers un nœud sous-chargé afin de recevoir un traitement plus rapide. Bien que ces algorithmes soient beaucoup plus compliqués à concevoir, ils peuvent produire d'excellents résultats, en particulier lorsque le temps d'exécution varie fortement d'une tâche à l'autre.

L'architecture d'équilibrage de charge dynamique peut être plus modulaire puisqu'il n'est pas obligatoire d'avoir un nœud spécifique dédié à la répartition du travail. Lorsque des tâches sont affectées de manière unique à un processeur en fonction de son état à un instant donné, il s'agit d'une affectation unique. Si, en revanche, les tâches peuvent être redistribuées en permanence en fonction de l'état du système et de son évolution, on parle d'affectation dynamique. [3] Évidemment, un algorithme d'équilibrage de charge qui nécessite trop de communication pour prendre ses décisions risque de ralentir la résolution du problème global.

Architecture matérielle Modifier

Machines hétérogènes Modifier

Les infrastructures de calcul parallèles sont souvent composées d'unités de puissances de calcul différentes, qui doivent être prises en compte pour la répartition de la charge.

Par exemple, des unités de faible puissance peuvent recevoir des requêtes qui nécessitent une quantité de calcul plus petite ou, dans le cas de tailles de requêtes homogènes ou inconnues, recevoir moins de requêtes que des unités plus grandes.

Mémoire partagée et distribuée Modifier

Les ordinateurs parallèles sont souvent divisés en deux grandes catégories : ceux où tous les processeurs partagent une seule mémoire commune sur laquelle ils lisent et écrivent en parallèle (modèle PRAM), et ceux où chaque unité de calcul a sa propre mémoire (modèle à mémoire distribuée), et où les informations sont échangées par messages.

Pour les ordinateurs à mémoire partagée, la gestion des conflits d'écriture ralentit considérablement la vitesse d'exécution individuelle de chaque unité de calcul. Cependant, ils peuvent parfaitement fonctionner en parallèle. A l'inverse, dans le cas d'un échange de messages, chacun des processeurs peut fonctionner à pleine vitesse. En revanche, lorsqu'il s'agit d'échange de messages collectifs, tous les processeurs sont obligés d'attendre que les processeurs les plus lents démarrent la phase de communication.

En réalité, peu de systèmes entrent exactement dans l'une des catégories. En général, les processeurs disposent chacun d'une mémoire interne pour stocker les données nécessaires aux prochains calculs, et sont organisés en clusters successifs. Souvent, ces éléments de traitement sont ensuite coordonnés via une mémoire distribuée et le passage de messages. Par conséquent, l'algorithme d'équilibrage de charge doit être adapté de manière unique à une architecture parallèle. Sinon, il y a un risque que l'efficacité de la résolution de problèmes parallèles soit considérablement réduite.

Hiérarchie Modifier

En s'adaptant aux structures matérielles vues ci-dessus, il existe deux grandes catégories d'algorithmes d'équilibrage de charge. D'une part, celui où les tâches sont attribuées par « master » et exécutées par des « workers » qui tiennent le maître informé de l'avancement de leur travail, et le maître peut alors se charger d'attribuer ou de réattribuer la charge de travail en cas de dynamique algorithme. La littérature appelle cela l'architecture « Maître-Ouvrier ». D'autre part, le contrôle peut être réparti entre les différents nœuds. L'algorithme d'équilibrage de charge est ensuite exécuté sur chacun d'eux et la responsabilité de l'attribution des tâches (ainsi que de la réattribution et de la division selon le cas) est partagée. La dernière catégorie suppose un algorithme d'équilibrage de charge dynamique.

La conception de chaque algorithme d'équilibrage de charge étant unique, la distinction précédente doit être nuancée. Ainsi, il est également possible d'avoir une stratégie intermédiaire, avec par exemple des nœuds « maîtres » pour chaque sous-cluster, eux-mêmes soumis à un « maître » global. Il existe également des organisations à plusieurs niveaux, avec une alternance entre les stratégies de contrôle maître-esclave et distribuées. Ces dernières stratégies deviennent rapidement complexes et sont rarement rencontrées. Les concepteurs préfèrent des algorithmes plus faciles à contrôler.

Adaptation à des architectures plus grandes (évolutivité) Modifier

Dans le cadre d'algorithmes qui s'exécutent sur le très long terme (serveurs, cloud. ), l'architecture informatique évolue dans le temps. Cependant, il est préférable de ne pas avoir à concevoir un nouvel algorithme à chaque fois.

Un paramètre extrêmement important d'un algorithme d'équilibrage de charge est donc sa capacité à s'adapter à une architecture matérielle évolutive. C'est ce qu'on appelle l'évolutivité de l'algorithme. Un algorithme est dit évolutif pour un paramètre d'entrée lorsque ses performances restent relativement indépendantes de la taille de ce paramètre.

Lorsque l'algorithme est capable de s'adapter à un nombre variable d'unités de calcul, mais que le nombre d'unités de calcul doit être fixé avant exécution, il est dit moulable. Si, en revanche, l'algorithme est capable de traiter un nombre fluctuant de processeurs au cours de son exécution, l'algorithme est dit malléable. La plupart des algorithmes d'équilibrage de charge sont au moins moulables. [4]

Tolérance aux pannes Modifier

Surtout dans les clusters de calcul à grande échelle, il n'est pas tolérable d'exécuter un algorithme parallèle qui ne peut pas résister à la défaillance d'un seul composant. Par conséquent, des algorithmes tolérants aux pannes sont en cours de développement qui peuvent détecter les pannes de processeurs et récupérer le calcul. [5]

Répartition statique en pleine connaissance des tâches : préfixe somme Modifier

Si les tâches sont indépendantes les unes des autres, et si leur temps d'exécution respectif et les tâches peuvent être subdivisés, il existe un algorithme simple et optimal.

En divisant les tâches de manière à donner la même quantité de calcul à chaque processeur, il ne reste plus qu'à regrouper les résultats. En utilisant un algorithme de somme de préfixes, cette division peut être calculée en temps logarithmique par rapport au nombre de processeurs.

Si, cependant, les tâches ne peuvent pas être subdivisées (c'est-à-dire qu'elles sont atomiques), bien que l'optimisation de l'affectation des tâches soit un problème difficile, il est toujours possible d'approcher une répartition relativement juste des tâches, à condition que la taille de chacune d'entre elles soit beaucoup plus petite. que le calcul total effectué par chacun des nœuds. [6]

La plupart du temps, le temps d'exécution d'une tâche est inconnu et seules des approximations grossières sont disponibles. Cet algorithme, bien que particulièrement efficace, n'est pas viable pour ces scénarios.

Répartition de charge statique sans connaissance préalable Modifier

Même si le temps d'exécution n'est pas du tout connu à l'avance, une répartition statique de la charge est toujours possible.

Planification à tour de rôle Modifier

Dans un algorithme à tour de rôle, la première requête est envoyée au premier serveur, puis la suivante au second, et ainsi de suite jusqu'au dernier. Ensuite, il est redémarré, en affectant la requête suivante au premier serveur, et ainsi de suite.

Cet algorithme peut être pondéré de telle sorte que les unités les plus puissantes reçoivent le plus grand nombre de requêtes et les reçoivent en premier.

Statique aléatoire Modifier

L'équilibrage de charge statique aléatoire consiste simplement à affecter de manière aléatoire des tâches aux différents serveurs. Cette méthode fonctionne assez bien. Si, en revanche, le nombre de tâches est connu à l'avance, il est encore plus efficace de calculer à l'avance une permutation aléatoire. Cela évite des coûts de communication pour chaque mission. Il n'y a plus besoin d'un maître de distribution car chaque processeur sait quelle tâche lui est assignée. Même si le nombre de tâches est inconnu, il est toujours possible d'éviter la communication avec une génération d'affectation pseudo-aléatoire connue de tous les processeurs.

La performance de cette stratégie (mesurée en temps d'exécution total pour un ensemble fixe de tâches donné) diminue avec la taille maximale des tâches.

Autres Modifier

Bien sûr, il existe également d'autres méthodes d'affectation :

  • Moins de travail : Attribuez plus de tâches aux serveurs en effectuant moins (la méthode peut aussi être pondérée).
  • Hash : alloue les requêtes selon une table de hachage.
  • Pouvoir de deux choix : choisissez deux serveurs au hasard et choisissez la meilleure des deux options. [7][8]

Schéma Maître-Ouvrier Modifier

Les schémas Master-Worker sont parmi les algorithmes d'équilibrage de charge dynamique les plus simples. Un maître distribue la charge de travail à tous les travailleurs (également parfois appelés « esclaves »). Initialement, tous les travailleurs sont inactifs et le signalent au maître. Le maître répond aux demandes des travailleurs et leur distribue les tâches. Lorsqu'il n'a plus de tâches à donner, il en informe les ouvriers pour qu'ils cessent de demander des tâches.

L'avantage de ce système est qu'il répartit la charge de manière très équitable. En effet, si l'on ne prend pas en compte le temps nécessaire à l'affectation, le temps d'exécution serait comparable à la somme des préfixes vue ci-dessus.

Le problème de cet algorithme est qu'il a du mal à s'adapter à un grand nombre de processeurs en raison du nombre élevé de communications nécessaires. Ce manque d'évolutivité le rend rapidement inutilisable sur de très gros serveurs ou de très gros ordinateurs parallèles. Le maître agit comme un goulot d'étranglement.

Cependant, la qualité de l'algorithme peut être grandement améliorée en remplaçant le maître par une liste de tâches utilisable par différents processeurs. Bien que cet algorithme soit un peu plus difficile à mettre en œuvre, il promet une bien meilleure évolutivité, bien qu'encore insuffisante pour les très grands centres de calcul.

Architecture non hiérarchique, sans connaissance du système : vol de travail Modifier

Une autre technique pour surmonter les problèmes d'évolutivité lorsque le temps nécessaire à l'achèvement des tâches est inconnu est le vol de travail.

L'approche consiste à affecter à chaque processeur un certain nombre de tâches de manière aléatoire ou prédéfinie, puis à permettre à des processeurs inactifs de « voler » du travail à des processeurs actifs ou surchargés. Plusieurs implémentations de ce concept existent, définies par un modèle de division des tâches et par les règles déterminant l'échange entre processeurs. Si cette technique peut être particulièrement efficace, elle est difficile à mettre en œuvre car il faut s'assurer que la communication ne devienne pas l'occupation principale des processeurs au lieu de résoudre le problème.

Dans le cas des tâches atomiques, on peut distinguer deux stratégies principales, celles où les processeurs à faible charge offrent leur capacité de calcul à ceux qui ont la charge la plus élevée, et celles où les unités les plus chargées souhaitent alléger la charge de travail qui leur est assignée. Il a été montré [9] que lorsque le réseau est fortement chargé, il est plus efficace pour les unités les moins chargées d'offrir leur disponibilité et lorsque le réseau est faiblement chargé, ce sont les processeurs surchargés qui nécessitent le support des plus inactifs. Cette règle empirique limite le nombre de messages échangés.

Dans le cas où l'on part d'une seule grande tâche qui ne peut pas être divisée au-delà d'un niveau atomique, il existe un algorithme très efficace "Tree-Shaped computation", [10] où la tâche parent est répartie dans un arbre de travail.

Principe Modifier

Initialement, de nombreux processeurs ont une tâche vide, à l'exception d'un qui travaille séquentiellement dessus. Les processeurs inactifs envoient des requêtes de manière aléatoire à d'autres processeurs (pas nécessairement actifs). Si ce dernier est capable de subdiviser la tâche sur laquelle il travaille, il le fait en envoyant une partie de son travail au nœud demandeur. Sinon, il renvoie une tâche vide. Cela induit une arborescence. Il est alors nécessaire d'envoyer un signal de terminaison au processeur parent lorsque la sous-tâche est terminée, afin qu'il envoie à son tour le message à son parent jusqu'à ce qu'il atteigne la racine de l'arbre. Lorsque le premier processeur, c'est-à-dire la racine, a terminé, un message de terminaison global peut être diffusé. A la fin, il faut assembler les résultats en remontant l'arbre.

Efficacité Modifier

L'efficacité d'un tel algorithme est proche de la somme des préfixes lorsque le temps de découpe et de communication n'est pas trop élevé par rapport au travail à effectuer. Pour éviter des coûts de communication trop élevés, il est possible d'imaginer une liste de jobs sur mémoire partagée. Par conséquent, une requête est simplement la lecture à partir d'une certaine position sur cette mémoire partagée à la demande du processeur maître.

En plus de la résolution efficace des problèmes via des calculs parallèles, les algorithmes d'équilibrage de charge sont largement utilisés dans la gestion des requêtes HTTP où un site avec un large public doit être capable de gérer les requêtes par seconde.

Services basés sur Internet Modifier

L'une des applications d'équilibrage de charge les plus couramment utilisées consiste à fournir un seul service Internet à partir de plusieurs serveurs, parfois appelé batterie de serveurs. Les systèmes à charge équilibrée comprennent les sites Web populaires, les grands réseaux Internet Relay Chat, les sites FTP (File Transfer Protocol) à large bande passante, les serveurs NNTP (Network News Transfer Protocol), les serveurs DNS (Domain Name System) et les bases de données.

DNS à tour de rôle Modifier

Le DNS à répétition alternée est une autre méthode d'équilibrage de charge qui ne nécessite pas de nœud logiciel ou matériel dédié. Dans cette technique, plusieurs adresses IP sont associées à un seul nom de domaine, les clients reçoivent une adresse IP de manière circulaire. L'adresse IP est attribuée aux clients avec une courte expiration, de sorte que le client est plus susceptible d'utiliser une adresse IP différente la prochaine fois qu'il accédera au service Internet demandé.

Délégation DNS Modifier

Une autre technique plus efficace pour équilibrer la charge à l'aide de DNS consiste à déléguer www.example.org en tant que sous-domaine dont la zone est desservie par chacun des mêmes serveurs qui desservent le site Web. Cette technique fonctionne particulièrement bien lorsque les serveurs individuels sont répartis géographiquement sur Internet. Par example:

Sur serveur deux le même fichier de zone contient :

De cette façon, lorsqu'un serveur est en panne, son DNS ne répondra pas et le service Web ne recevra aucun trafic. Si la ligne vers un serveur est encombrée, le manque de fiabilité du DNS garantit que moins de trafic HTTP atteint ce serveur. De plus, la réponse DNS la plus rapide au résolveur est presque toujours celle du serveur le plus proche du réseau, garantissant un équilibrage de charge géosensible [ citation requise ] . Un court TTL sur l'enregistrement A permet de s'assurer que le trafic est rapidement détourné lorsqu'un serveur tombe en panne. Il faut tenir compte de la possibilité que cette technique puisse amener des clients individuels à basculer entre des serveurs individuels en cours de session.

Équilibrage de charge aléatoire côté client Modifier

Une autre approche de l'équilibrage de charge consiste à fournir une liste d'adresses IP de serveur au client, puis à demander au client de sélectionner au hasard l'adresse IP dans la liste sur chaque connexion. [12] [13] Cela repose essentiellement sur tous les clients générant des charges similaires et sur la loi des grands nombres [13] pour obtenir une distribution de charge raisonnablement plate sur les serveurs. Il a été affirmé que l'équilibrage de charge aléatoire côté client a tendance à fournir une meilleure répartition de la charge que le DNS à tour de rôle. Cela a été attribué à des problèmes de mise en cache avec le DNS à tour de rôle, qui, dans le cas de grands serveurs de mise en cache DNS, ont tendance à fausser la distribution pour DNS à tour de rôle, tandis que la sélection aléatoire côté client n'est pas affectée, quelle que soit la mise en cache DNS. [13]

Avec cette approche, la méthode de livraison de la liste d'adresses IP au client peut varier et peut être implémentée sous forme de liste DNS (livrée à tous les clients sans aucun round-robin), ou via un codage en dur dans la liste. Si un « client intelligent » est utilisé, en détectant que le serveur sélectionné de manière aléatoire est en panne et en se connectant à nouveau de manière aléatoire, il fournit également une tolérance aux pannes.

Équilibreurs de charge côté serveur Modifier

Pour les services Internet, un équilibreur de charge côté serveur est généralement un programme logiciel qui écoute sur le port où les clients externes se connectent pour accéder aux services. L'équilibreur de charge transfère les demandes à l'un des serveurs "backend", qui répond généralement à l'équilibreur de charge. Cela permet à l'équilibreur de charge de répondre au client sans que celui-ci ne sache jamais la séparation interne des fonctions. Il empêche également les clients de contacter directement les serveurs principaux, ce qui peut présenter des avantages en matière de sécurité en masquant la structure du réseau interne et en empêchant les attaques sur la pile réseau du noyau ou sur des services indépendants exécutés sur d'autres ports.

Certains équilibreurs de charge fournissent un mécanisme pour faire quelque chose de spécial dans le cas où tous les serveurs principaux ne sont pas disponibles. Cela peut inclure le transfert vers un équilibreur de charge de sauvegarde ou l'affichage d'un message concernant la panne.

Il est également important que l'équilibreur de charge lui-même ne devienne pas un point de défaillance unique. Habituellement, les équilibreurs de charge sont implémentés dans des paires à haute disponibilité qui peuvent également répliquer les données de persistance de session si l'application spécifique l'exige. [14] Certaines applications sont programmées avec une immunité à ce problème, en décalant le point d'équilibrage de charge sur des plates-formes de partage différentiel au-delà du réseau défini. Les algorithmes séquentiels associés à ces fonctions sont définis par des paramètres flexibles propres à la base de données spécifique. [15]

Algorithmes d'ordonnancement Modifier

De nombreux algorithmes de planification, également appelés méthodes d'équilibrage de charge, sont utilisés par les équilibreurs de charge pour déterminer à quel serveur principal envoyer une demande. Les algorithmes simples incluent le choix aléatoire, le round robin ou le moins de connexions. [16] Des équilibreurs de charge plus sophistiqués peuvent prendre en compte des facteurs supplémentaires, tels que la charge signalée par un serveur, les temps de réponse les plus courts, l'état actif/inactif (déterminé par un sondage de surveillance quelconque), le nombre de connexions actives, l'emplacement géographique, les capacités, ou combien de trafic il a récemment été attribué.

Persistance Modifier

Un problème important lors de l'exploitation d'un service à charge équilibrée est de savoir comment gérer les informations qui doivent être conservées à travers les multiples requêtes dans la session d'un utilisateur. Si ces informations sont stockées localement sur un serveur principal, les requêtes suivantes adressées à différents serveurs principaux ne pourront pas les trouver. Il peut s'agir d'informations mises en cache qui peuvent être recalculées, auquel cas l'équilibrage de charge d'une demande vers un autre serveur principal ne fait qu'introduire un problème de performances. [16]

Idéalement, le cluster de serveurs derrière l'équilibreur de charge ne doit pas être sensible à la session, de sorte que si un client se connecte à un serveur principal à tout moment, l'expérience utilisateur n'est pas affectée. Ceci est généralement réalisé avec une base de données partagée ou une base de données de session en mémoire comme Memcached.

Une solution de base au problème des données de session consiste à envoyer toutes les demandes d'une session utilisateur de manière cohérente au même serveur principal. C'est ce qu'on appelle la « persistance » ou « l'adhérence ». Un inconvénient important de cette technique est son absence de basculement automatique : si un serveur principal tombe en panne, ses informations par session deviennent inaccessibles et toutes les sessions qui en dépendent sont perdues. Le même problème concerne généralement les serveurs de base de données centraux, même si les serveurs Web sont « sans état » et non « fixes », la base de données centrale l'est (voir ci-dessous).

L'affectation à un serveur particulier peut être basée sur un nom d'utilisateur, une adresse IP client ou être aléatoire. En raison des modifications de l'adresse perçue du client résultant de DHCP, de la traduction d'adresses réseau et des proxys Web, cette méthode peut ne pas être fiable. Les affectations aléatoires doivent être mémorisées par l'équilibreur de charge, ce qui crée une charge sur le stockage. Si l'équilibreur de charge est remplacé ou tombe en panne, ces informations peuvent être perdues et les affectations peuvent devoir être supprimées après un délai d'expiration ou pendant des périodes de charge élevée pour éviter de dépasser l'espace disponible pour la table d'affectation. La méthode d'attribution aléatoire nécessite également que les clients maintiennent un certain état, ce qui peut être un problème, par exemple lorsqu'un navigateur Web a désactivé le stockage des cookies. Les équilibreurs de charge sophistiqués utilisent plusieurs techniques de persistance pour éviter certains des défauts d'une méthode.

Une autre solution consiste à conserver les données par session dans une base de données. Généralement, cela est mauvais pour les performances car cela augmente la charge sur la base de données : la base de données est mieux utilisée pour stocker des informations moins transitoires que les données par session. Pour éviter qu'une base de données ne devienne un point de défaillance unique et pour améliorer l'évolutivité, la base de données est souvent répliquée sur plusieurs machines et l'équilibrage de charge est utilisé pour répartir la charge de requête sur ces réplicas. La technologie ASP.net State Server de Microsoft est un exemple de base de données de session. Tous les serveurs d'une batterie de serveurs Web stockent leurs données de session sur State Server et n'importe quel serveur de la batterie de serveurs peut récupérer les données.

Dans le cas très courant où le client est un navigateur Web, une approche simple mais efficace consiste à stocker les données par session dans le navigateur lui-même. Une façon d'y parvenir est d'utiliser un cookie de navigateur, horodaté et crypté de manière appropriée. Un autre est la réécriture d'URL. Le stockage des données de session sur le client est généralement la solution préférée : l'équilibreur de charge est alors libre de choisir n'importe quel serveur principal pour gérer une requête. Cependant, cette méthode de gestion des données d'état est mal adaptée à certains scénarios de logique métier complexes, dans lesquels la charge utile de l'état de la session est importante et il n'est pas possible de la recalculer avec chaque requête sur un serveur. La réécriture d'URL présente des problèmes de sécurité majeurs, car l'utilisateur final peut facilement modifier l'URL soumise et ainsi modifier les flux de session.

Une autre solution pour stocker des données persistantes consiste à associer un nom à chaque bloc de données et à utiliser une table de hachage distribuée pour attribuer ce nom de manière pseudo-aléatoire à l'un des serveurs disponibles, puis à stocker ce bloc de données sur le serveur attribué.

Fonctionnalités de l'équilibreur de charge Modifier

Les équilibreurs de charge matériels et logiciels peuvent avoir diverses fonctionnalités spéciales. La caractéristique fondamentale d'un équilibreur de charge est de pouvoir répartir les requêtes entrantes sur un certain nombre de serveurs principaux du cluster selon un algorithme de planification. La plupart des fonctionnalités suivantes sont spécifiques au fournisseur :

Charge asymétrique Un ratio peut être attribué manuellement pour que certains serveurs principaux obtiennent une plus grande part de la charge de travail que d'autres. Ceci est parfois utilisé comme un moyen grossier de tenir compte du fait que certains serveurs ont plus de capacité que d'autres et peuvent ne pas toujours fonctionner comme vous le souhaitez. Activation prioritaire Lorsque le nombre de serveurs disponibles descend en dessous d'un certain nombre ou que la charge devient trop élevée, les serveurs de secours peuvent être mis en ligne. Déchargement et accélération TLS L'accélération TLS (ou son prédécesseur SSL) est une technique de déchargement des calculs de protocoles cryptographiques sur un matériel spécialisé. Selon la charge de travail, le traitement des exigences de cryptage et d'authentification d'une requête TLS peut devenir une partie importante de la demande sur le processeur du serveur Web à mesure que la demande augmente, les utilisateurs verront des temps de réponse plus lents, car la surcharge TLS est répartie entre les serveurs Web. Pour supprimer cette demande sur les serveurs Web, un équilibreur peut mettre fin aux connexions TLS, en transmettant les demandes HTTPS en tant que demandes HTTP aux serveurs Web. Si l'équilibreur lui-même n'est pas surchargé, cela ne dégrade pas sensiblement les performances perçues par les utilisateurs finaux. L'inconvénient de cette approche est que tout le traitement TLS est concentré sur un seul appareil (l'équilibreur) qui peut devenir un nouveau goulot d'étranglement. Certaines appliances d'équilibrage de charge incluent du matériel spécialisé pour traiter TLS. Au lieu de mettre à niveau l'équilibreur de charge, qui est un matériel dédié assez coûteux, il peut être moins coûteux de renoncer au déchargement TLS et d'ajouter quelques serveurs Web. En outre, certains fournisseurs de serveurs tels qu'Oracle/Sun intègrent désormais du matériel d'accélération cryptographique dans leurs processeurs tels que le T2000. F5 Networks intègre une carte matérielle d'accélération TLS dédiée dans son gestionnaire de trafic local (LTM) qui est utilisée pour chiffrer et déchiffrer le trafic TLS. L'un des avantages évidents du déchargement TLS dans l'équilibreur est qu'il lui permet d'effectuer un équilibrage ou une commutation de contenu en fonction des données de la requête HTTPS. Protection contre les attaques par déni de service distribué (DDoS) Les équilibreurs de charge peuvent fournir des fonctionnalités telles que les cookies SYN et la liaison retardée (les serveurs principaux ne voient pas le client tant qu'il n'a pas terminé sa négociation TCP) pour atténuer les attaques par inondation SYN et décharger généralement le travail des serveurs à une plate-forme plus efficace. Compression HTTP La compression HTTP réduit la quantité de données à transférer pour les objets HTTP en utilisant la compression gzip disponible dans tous les navigateurs Web modernes. Plus la réponse est importante et plus le client est éloigné, plus cette fonctionnalité peut améliorer les temps de réponse. Le compromis est que cette fonctionnalité impose une demande de CPU supplémentaire à l'équilibreur de charge et pourrait être effectuée par des serveurs Web à la place. Déchargement TCP Différents fournisseurs utilisent des termes différents pour cela, mais l'idée est que normalement chaque requête HTTP de chaque client est une connexion TCP différente. Cette fonctionnalité utilise HTTP/1.1 pour consolider plusieurs requêtes HTTP provenant de plusieurs clients dans un seul socket TCP vers les serveurs principaux.Mise en mémoire tampon TCP L'équilibreur de charge peut mettre en mémoire tampon les réponses du serveur et transmettre les données aux clients lents, permettant au serveur Web de libérer un thread pour d'autres tâches plus rapidement que s'il devait envoyer l'intégralité de la demande au client directement. Retour direct du serveur Une option pour la distribution de charge asymétrique, où la demande et la réponse ont des chemins réseau différents. Vérification de l'intégrité L'équilibreur interroge les serveurs pour l'intégrité de la couche d'application et supprime les serveurs défaillants du pool. Mise en cache HTTP L'équilibreur stocke le contenu statique afin que certaines requêtes puissent être traitées sans contacter les serveurs. Filtrage de contenu Certains équilibreurs peuvent modifier arbitrairement le trafic en cours de route. Sécurité HTTP Certains équilibreurs peuvent masquer les pages d'erreur HTTP, supprimer les en-têtes d'identification du serveur des réponses HTTP et chiffrer les cookies afin que les utilisateurs finaux ne puissent pas les manipuler. Mise en file d'attente prioritaire Également connue sous le nom de mise en forme de débit, la possibilité d'attribuer une priorité différente à un trafic différent. Commutation sensible au contenu La plupart des équilibreurs de charge peuvent envoyer des demandes à différents serveurs en fonction de l'URL demandée, en supposant que la demande n'est pas chiffrée (HTTP) ou si elle est chiffrée (via HTTPS) que la demande HTTPS est terminée (déchiffrée) à la charge balancier. Authentification du client Authentifiez les utilisateurs par rapport à diverses sources d'authentification avant de leur permettre d'accéder à un site Web. Manipulation du trafic par programmation Au moins un équilibreur permet l'utilisation d'un langage de script pour autoriser des méthodes d'équilibrage personnalisées, des manipulations arbitraires du trafic, etc. Pare-feu Les pare-feu peuvent empêcher les connexions directes aux serveurs principaux, pour des raisons de sécurité du réseau. Système de prévention des intrusions Les systèmes de prévention des intrusions offrent une sécurité de couche application en plus de la couche réseau/transport offerte par la sécurité pare-feu.

Télécommunications Modifier

L'équilibrage de charge peut être utile dans les applications avec des liaisons de communication redondantes. Par exemple, une entreprise peut disposer de plusieurs connexions Internet garantissant l'accès au réseau si l'une des connexions échoue. Un arrangement de basculement signifierait qu'un lien est désigné pour une utilisation normale, tandis que le deuxième lien est utilisé uniquement si le lien principal échoue.

Grâce à l'équilibrage de charge, les deux liens peuvent être utilisés en permanence. Un appareil ou un programme surveille la disponibilité de tous les liens et sélectionne le chemin d'envoi des paquets. L'utilisation de plusieurs liens augmente simultanément la bande passante disponible.

Pont du chemin le plus court Modifier

L'IEEE a approuvé la norme IEEE 802.1aq en mai 2012, [17] également connue sous le nom de Shortest Path Bridging (SPB). SPB permet à toutes les liaisons d'être actives via plusieurs chemins à coût égal, fournit des temps de convergence plus rapides pour réduire les temps d'arrêt et simplifie l'utilisation de l'équilibrage de charge dans les topologies de réseau maillé (partiellement connecté et/ou entièrement connecté) en permettant au trafic de partager la charge sur tous chemins d'un réseau. [18] [19] SPB est conçu pour éliminer virtuellement les erreurs humaines lors de la configuration et préserve la nature plug-and-play qui a établi Ethernet comme protocole de facto à la couche 2. [20]

Routage 1 Modifier

De nombreuses entreprises de télécommunications ont plusieurs itinéraires via leurs réseaux ou vers des réseaux externes. Ils utilisent un équilibrage de charge sophistiqué pour déplacer le trafic d'un chemin à un autre afin d'éviter la congestion du réseau sur un lien particulier, et parfois pour minimiser le coût de transit à travers les réseaux externes ou améliorer la fiabilité du réseau.

Une autre façon d'utiliser l'équilibrage de charge est dans les activités de surveillance du réseau. Les équilibreurs de charge peuvent être utilisés pour diviser d'énormes flux de données en plusieurs sous-flux et utiliser plusieurs analyseurs de réseau, chacun lisant une partie des données d'origine. Ceci est très utile pour surveiller les réseaux rapides comme 10GbE ou STM64, où un traitement complexe des données peut ne pas être possible à la vitesse du fil. [21]

Réseaux de centres de données Modifier

L'équilibrage de charge est largement utilisé dans les réseaux de centres de données pour répartir le trafic sur de nombreux chemins existants entre deux serveurs. [22] Il permet une utilisation plus efficace de la bande passante du réseau et réduit les coûts d'approvisionnement. En général, l'équilibrage de charge dans les réseaux de centres de données peut être classé comme statique ou dynamique.

L'équilibrage de charge statique distribue le trafic en calculant un hachage des adresses source et de destination et des numéros de port des flux de trafic et en l'utilisant pour déterminer comment les flux sont affectés à l'un des chemins existants. L'équilibrage de charge dynamique affecte les flux de trafic aux chemins en surveillant l'utilisation de la bande passante sur différents chemins. L'affectation dynamique peut également être proactive ou réactive. Dans le premier cas, l'affectation est fixée une fois effectuée, tandis que dans le second, la logique du réseau continue de surveiller les chemins disponibles et déplace les flux à travers eux au fur et à mesure que l'utilisation du réseau change (avec l'arrivée de nouveaux flux ou l'achèvement de ceux existants). Un aperçu complet de l'équilibrage de charge dans les réseaux de centres de données a été mis à disposition. [22]


Voir la vidéo: الحصة 03:التنافر الجيولوجي والفجوة الاستراتيغرافيlacune stratigraphique, la discordance géologique