Materia 66.62 Redes de Computadoras Departamento de Electrónica Facultad de Ingeniería Universidad de Buenos Aires Balance de carga y ruteo de camino múltiple (Multipath routing & load balancing) Ing. Marcelo Utard Ing. Pablo Ronco Lunes 28 de Septiembre de 2009 FIUBA - 6662 - MultiPath Routing & Load Balancing - M. Utard - P. Ronco - Sept/09Pag. 1 Agenda Introducción Topología mallada Multipath routing Load Balancing IP Routing CIDR MPR Multi-Path Routing Implementaciones: Cisco, Juniper Conclusiones Bibliografía Nota: abordamos este tema para IP meshed networks, no para ad-hoc mobile wireless networks. FIUBA - 6662 - MultiPath Routing & Load Balancing - M. Utard - P. Ronco - Sept/09Pag. 2
Introducción Meshed Networks Topologías de red estrella o árbol singlepath Topologías de red malladas multipath FIUBA - 6662 - MultiPath Routing & Load Balancing - M. Utard - P. Ronco - Sept/09Pag. 3 Introducción Multipath routing Ruteo por caminos múltiples Mayor tolerancia a fallas FIUBA - 6662 - MultiPath Routing & Load Balancing - M. Utard - P. Ronco - Sept/09Pag. 4
Introducción Load-balance Balanceo de carga Mayor throughput (bandwith aggregation) Mejor aprovechamiento de la red (ancho de banda de los links) FIUBA - 6662 - MultiPath Routing & Load Balancing - M. Utard - P. Ronco - Sept/09Pag. 5 Ruteo IP CIDR CIDR (Classless Internet Domain Routing) seleciona en su IP Routing Table la ruta para llegar al destino en función de: Dirección destino del datagrama IP Dirección destino de la ruta Máscara de la ruta Métrica de la ruta Nota: los Cisco utilizan Distancia & Métrica FIUBA - 6662 - MultiPath Routing & Load Balancing - M. Utard - P. Ronco - Sept/09Pag. 6
Ruteo IP CIDR Algoritmo CIDR: para cada ruta de la IP Routing Table hace la AND de dirección destino del datagrama máscara de la ruta si = dirección destino de la ruta, se dice que matchea esa ruta. FIUBA - 6662 - MultiPath Routing & Load Balancing - M. Utard - P. Ronco - Sept/09Pag. 7 Ruteo IP CIDR Si no matchea ninguna ruta, descarta el datagrama Si matchea sólo una ruta, hace forwarding del datagrama hacia la interfaz y el next hop de dicha ruta Si matchea varias rutas de <> máscara, selecciona la de máscara más larga. (recorre la tabla en orden decreciente de longitud de máscara) Si matchea varias rutas de = máscara, significa que hay caminos múltiples FIUBA - 6662 - MultiPath Routing & Load Balancing - M. Utard - P. Ronco - Sept/09Pag. 8
Routing Table Configuración de las rutas en la Routing Table Ruteo estático Ruteo dinámico vía Routing Protocols Multi-Path Routing & Load balancing con Static Routing con Routing Protocols FIUBA - 6662 - MultiPath Routing & Load Balancing - M. Utard - P. Ronco - Sept/09Pag. 9 Multi-Path Routing MPR Multi-Path Routing los routers implementan algoritmos de ruteo que aprovechan los caminos múltiples de las topologías malladas haciendo balanceo de carga. Pueden ser configurados para seleccionar la mejor ruta (menor métrica) hacer balanceo de carga con las rutas de = métrica con las rutas de <> métrica FIUBA - 6662 - MultiPath Routing & Load Balancing - M. Utard - P. Ronco - Sept/09Pag. 10
Multi-Path Routing MPR Load Balancing Variantes:de implementación: ECMP (Equal Cost MultiPath) vs Non ECMP Per Packet o Per Flow (Destination) SMPR (Static) vs AMPR (Adaptive) RFC 2991 y 2992 FIUBA - 6662 - MultiPath Routing & Load Balancing - M. Utard - P. Ronco - Sept/09Pag. 11 MPR ECMP & Non ECMP ECMP (Equal Cost MultiPath) balancea el tráfico entre todos los caminos disponibles con igual costo (métrica) para el mismo destino. Non ECMP balancea el tráfico entre todos los caminos disponibles con distintos costo para el mismo destino. FIUBA - 6662 - MultiPath Routing & Load Balancing - M. Utard - P. Ronco - Sept/09Pag. 12
Static & Adaptive MPR SMPR (Static MultiPath Routing) Balancea el tráfico sin tener en cuenta el estado de la red (en términos de performance) AMPR (Adaptive MultiPath Routing) Balancea el tráfico en función del estado de la red Debe recibir información del estado de la red Funciona para flujos de larga duración y en redes con gran cantidad de tráfico (backbone de ISPs) FIUBA - 6662 - MultiPath Routing & Load Balancing - M. Utard - P. Ronco - Sept/09Pag. 16
Load Balancing MPR en CISCO Funcionalidad incluida en el IOS (el sistema operativo de los routers Cisco) Opera por defecto en modo ECMP Soporta ECMP (variance=1): Static Routes RIP, RIP v2, OSPF, IGRP, EIGRP BGP Soporta Non ECMP (variance>1): GRP, EIGRP Distribución de carga en función de la métrica Per-Flow & Per-Packet Load Balancing FIUBA - 6662 - MultiPath Routing & Load Balancing - M. Utard - P. Ronco - Sept/09Pag. 17 Load Balancing MPR en JUNIPER Funcionalidad incluida en el sistema operativo de los routers Juniper Opera por defecto hasta 4 caminos Soporta ECMP Static Routes RIP, RIP v2, OSPF BGP No Soporta Non ECMP Per-Flow & Per-Packet Load Balancing FIUBA - 6662 - MultiPath Routing & Load Balancing - M. Utard - P. Ronco - Sept/09Pag. 18
Conclusiones Las redes de topología mallada ofrecen caminos multiples para alcanzar cada destino. Los routers pueden utilizar el mejor de los caminos múltiples, lo cual permite mejorar la disponibilidad (tolerancia a fallas) En los routers se pueden aplicar técnicas de Traffic Engeneering como MultiPath Routing y Load Balancing para aprovechar los recursos de la red y obtener mejor performance (througput). La mayoría de los fabricantes de routers implementa ECMP. Por ahora, los avances para optimizar MPR están aún en investigación. FIUBA - 6662 - MultiPath Routing & Load Balancing - M. Utard - P. Ronco - Sept/09Pag. 19 Bibliografía "Internetworking with TCP/IP; Vol. I: Principles, Protocols and Architecture, 5th. Edition", Douglas E. Comer, Prentice Hall 2006 "Internetworking Technologies Handbook", M. Ford, H.K.Lew, S. Spanier, T. Stevenson, Cisco Press 1997 RFC2991 - Multipath Issues in Unicast and Multicast Next-Hop RFC2992 - Analysis of an Equal-Cost Multi- Path Algorithm Cisco Web Site www.cisco.com Juniper Web Site www.juniper.com Apuntes www.fiuba6662.com.ar FIUBA - 6662 - MultiPath Routing & Load Balancing - M. Utard - P. Ronco - Sept/09Pag. 20
Muchas gracias por su atención Ing. Marcelo Utard Ing. Pablo Ronco 22