Multicasty zastosowanie i działanie



Podobne dokumenty
Budowa sieci. Łukasz Bromirski Kraków, 09/ Cisco Systems, Inc. All rights reserved. 1

Protokół PIM Sparce Mode

Transmisje grupowe dla IPv4, protokół IGMP, protokoły routowania dla transmisji grupowych IPv4.

Podstawy multicast - IGMP, CGMP, DVMRP.

Przypadki z życia multicastów. Piotr Wojciechowski (CCIE #25543)

Protokół PIM Dense Mode

Koncepcja komunikacji grupowej

DLACZEGO QoS ROUTING

Dlaczego? Mało adresów IPv4. Wprowadzenie ulepszeń względem IPv4 NAT CIDR

Podstawy MPLS. PLNOG4, 4 Marzec 2010, Warszawa 1

Sieci komputerowe - administracja

DR INŻ. ROBERT WÓJCIK DR INŻ. JERZY DOMŻAŁ ADRESACJA W SIECIACH IP. WSTĘP DO SIECI INTERNET Kraków, dn. 24 października 2016r.

DR INŻ. ROBERT WÓJCIK DR INŻ. JERZY DOMŻAŁ PODSTAWY RUTINGU IP. WSTĘP DO SIECI INTERNET Kraków, dn. 7 listopada 2016 r.

ARP Address Resolution Protocol (RFC 826)

Uproszczenie mechanizmów przekazywania pakietów w ruterach

Warstwa sieciowa. Model OSI Model TCP/IP. Aplikacji. Aplikacji. Prezentacji. Sesji. Transportowa. Transportowa

Przesyłania danych przez protokół TCP/IP

ZiMSK NAT, PAT, ACL 1

Adresowanie grupowe. Bartłomiej Świercz. Katedra Mikroelektroniki i Technik Informatycznych. Łódź, 25 kwietnia 2006

router wielu sieci pakietów

ADRESY PRYWATNE W IPv4

Protokoły sieciowe - TCP/IP

Wykład 3: Internet i routing globalny. A. Kisiel, Internet i routing globalny

DR INŻ. ROBERT WÓJCIK DR INŻ. JERZY DOMŻAŁ

IPv6 Protokół następnej generacji

QoS w sieciach IP. Parametry QoS ( Quality of Services) Niezawodność Opóźnienie Fluktuacja ( jitter) Przepustowość ( pasmo)

Plan wykładu. Wyznaczanie tras. Podsieci liczba urządzeń w klasie C. Funkcje warstwy sieciowej

Internet Control Message Protocol (ICMP) Łukasz Trzciałkowski

Warstwa sieciowa. mgr inż. Krzysztof Szałajko

Sieci Komputerowe. Wykład 1: TCP/IP i adresowanie w sieci Internet

Adresy w sieciach komputerowych

MODEL WARSTWOWY PROTOKOŁY TCP/IP

Sieci komputerowe - Protokoły wspierające IPv4

Materiały przygotowawcze do laboratorium

ISP od strony technicznej. Fryderyk Raczyk

Sieci komputerowe. Router. Router

Adresy IP v.6 IP version 4 IP version 6 byte 0 byte 1 byte 2 byte 3 byte 0 byte 1 byte 2 byte 3

Routing. mgr inż. Krzysztof Szałajko

ANALIZA BEZPIECZEŃSTWA SIECI MPLS VPN. Łukasz Polak Opiekun: prof. Zbigniew Kotulski

Komunikacja w sieciach komputerowych

Praktyczne aspekty implementacji IGP

Routing dynamiczny... 2 Czym jest metryka i odległość administracyjna?... 3 RIPv RIPv Interfejs pasywny... 5 Podzielony horyzont...

MPLS. Krzysztof Wajda Katedra Telekomunikacji, 2015

Internet Protocol v6 - w czym tkwi problem?

IP Anycast. Ochrona i skalowanie usług sieciowych. Łukasz Bromirski lbromirski@cisco.com

PBS. Wykład Routing dynamiczny OSPF EIGRP 2. Rozwiązywanie problemów z obsługą routingu.

Plan i problematyka wykładu. Sieci komputerowe IPv6. Rozwój sieci Internet. Dlaczego IPv6? Przykład zatykania dziur w funkcjonalności IPv4 - NAT

1. Podstawy routingu IP

Video Transport Network - sposoby na przesłanie multicastu

Podstawy Informatyki. Inżynieria Ciepła, I rok. Wykład 13 Topologie sieci i urządzenia

Multicasty w zaawansowanych usługach Internetu nowej generacji

Routing - wstęp... 2 Routing statyczny... 3 Konfiguracja routingu statycznego IPv Konfiguracja routingu statycznego IPv6...

52. Mechanizm trasowania pakietów w Internecie Informacje ogólne

Wybrane metody obrony przed atakami Denial of Service Synflood. Przemysław Kukiełka

ZiMSK. VLAN, trunk, intervlan-routing 1

Internet Control Messaging Protocol

LABORATORIUM SIECI KOMPUTEROWYCH (compnet.et.put.poznan.pl)

MPLS VPN. Architektura i przegląd typów. lbromirski@cisco.com rafal@juniper.net. PLNOG, Kraków, październik 2012

Charakterystyka grupy protokołów TCP/IP

Sieci komputerowe - Wstęp do intersieci, protokół IPv4

Wykład Nr Sieci bezprzewodowe 2. Monitorowanie sieci - polecenia

Funkcje warstwy sieciowej. Podstawy wyznaczania tras. Dostarczenie pakietu od nadawcy od odbiorcy (RIP, IGRP, OSPF, EGP, BGP)

Routing. część 2: tworzenie tablic. Sieci komputerowe. Wykład 3. Marcin Bieńkowski

MODEL OSI A INTERNET

Materiały przygotowawcze do laboratorium 3

Routing. część 2: tworzenie tablic. Sieci komputerowe. Wykład 3. Marcin Bieńkowski

Unicast jeden nadawca i jeden odbiorca Broadcast jeden nadawca przesyła do wszystkich Multicast jeden nadawca i wielu (podzbiór wszystkich) odbiorców

Instrukcja do laboratorium 1

Routing i protokoły routingu

Sieci komputerowe. Tadeusz Kobus, Maciej Kokociński Instytut Informatyki, Politechnika Poznańska

ZiMSK. Routing statyczny, ICMP 1

ZiMSK. Routing dynamiczny 1

Sieci komputerowe. Wykład 3: Protokół IP. Marcin Bieńkowski. Instytut Informatyki Uniwersytet Wrocławski. Sieci komputerowe (II UWr) Wykład 3 1 / 24

Model OSI. mgr inż. Krzysztof Szałajko

Instrukcja do laboratorium 1. Podstawowa konfiguracja środowiska MPLS (Multi-Protocol Label Switching)

Zarządzanie ruchem w sieci IP. Komunikat ICMP. Internet Control Message Protocol DSRG DSRG. DSRG Warstwa sieciowa DSRG. Protokół sterujący

Laboratorium - Przeglądanie tablic routingu hosta

Podstawy Transmisji Danych. Wykład IV. Protokół IPV4. Sieci WAN to połączenia pomiędzy sieciami LAN

Analysis of PCE-based path optimization in multi-domain SDN/MPLS/BGP-LS network

Sterowanie ruchem w sieciach szkieletowych

Systemy operacyjne i sieci komputerowe Szymon Wilk Adresowanie w sieciach Klasy adresów IP a) klasa A

Sieci komputerowe. Wykład 3: Protokół IP. Marcin Bieńkowski. Instytut Informatyki Uniwersytet Wrocławski. Sieci komputerowe (II UWr) Wykład 3 1 / 25

Plan wykładu. Warstwa sieci. Po co adresacja w warstwie sieci? Warstwa sieci

Zarządzanie ruchem i jakością usług w sieciach komputerowych

LABORATORIUM SIECI KOMPUTEROWYCH (compnet.et.put.poznan.pl)

Początkowe uzasadnienie: 32-bitowa przestrzeń adresowa wyczerpie się w 2008 r. Dodatkowe uzasadnienie:

Warstwa sieciowa rutowanie

PBS. Wykład Podstawy routingu. 2. Uwierzytelnianie routingu. 3. Routing statyczny. 4. Routing dynamiczny (RIPv2).

Stos TCP/IP Warstwa Internetu. Sieci komputerowe Wykład 4

Wykład 2: Budowanie sieci lokalnych. A. Kisiel, Budowanie sieci lokalnych

Instrukcja do laboratorium 2. Podstawowa konfiguracja środowiska MPLS (Multi-Protocol Label Switching)

Bezpieczeństwo w M875

Zarządzanie przepływem

PORADNIKI. Routery i Sieci

Nowa sieć HAWE Telekom. Od L2 do wielousługowej sieci IP/MPLS

Podstawy Sieci Komputerowych Laboratorium Cisco zbiór poleceń

WYŻSZA SZKOŁA ZARZĄDZANIA I MARKETINGU BIAŁYSTOK, ul. Ciepła 40 filia w EŁKU, ul. Grunwaldzka

Zapytanie ofertowe. zakup routera. Przedmiotem niniejszego zamówienia jest router spełniający następujące wymagania:

Sieci komputerowe. Dr inż. Robert Banasiak. Sieci Komputerowe 2010/2011 Studia niestacjonarne

Połączenie sieci w intersieci ( internet ) Intersieci oparte o IP Internet

Transkrypt:

Multicasty zastosowanie i działanie Bartłomiej Anszperger Network Consulting Engineer banszper@cisco.com 1

Agenda Po co nam w ogóle ten cały mutlicast? ;-) Podstawy technologii mutlicast Protokoły PIM Punkty Rendezvous (RP) MPLS a Multicast Mulitcast w praktyce czyli co warto robić a o czym zapomnieć 2

Po co nam w ogóle ten cały mutlicast? 3

Ruch typu Unicast a Multicast Serwer Unicast Ilość strumieni Router Multicast Serwer Multicast: Router Bezpołączeniowy tryb transmisji danych: bazuje na ruchu UDP brak gwarancji dostarczenia pakietów do odbiorców (best effort delivery) brak mechanizmów unikania natłoku Możliwość pojawienia się zduplikowanych pakietów IP, brak gwarancji kolejności dostarczenia pakietów (out of order delivery) Konieczność sygnalizacji chęci odbioru tego typu ruchu Ograniczenie powielania ruchu poprzez wyznaczenie drzewa dystrybucyjnego którego korzeniem jest źródło 4

Mechanizm Reverse Path Forwarding Sprawdzenie RPF Bazuje na adresie źródła multicastowego Znajdź najlepszą drogę w tablicy routingu do źródła Przez znaleziony interfejs wyślij wiadomość PIM Join w kierunku źródła Wiadomość ta jest przesyłana przez wszystkie routery aż do źródła tworząc drzewo dystrybucyjne Ruch mulitcastowy jest przesyłany wzdłuż gałęzi powstałego drzewa Dla każdego routera, ruch multicastowy jest przesyłany dalej tylko i wyłącznie jeśli został odebrany na interfejsie RPF B E0 ŹR A Join Join E E2 R1 10.1.1.1 E1 C D Unicast Route Table Network Interface 10.1.0.0/24 E0 5

Mechanizm Reverse Path Forwarding Sprawdzenie RPF Co jeśli mamy kilka ścieżek o równym koszcie prowadzących do źródła? nie możemy użyć obu! B ŹR A 10.1.1.1 C Tie-breaker użyj najwyższego adresu IP D 1.1.1.1 Join E 1.1.2.1 E0 E1 Unicast Route Table Network Intfc Nxt-Hop 10.1.0.0/24 E0 1.1.1.1 10.1.0.0/24 E1 1.1.2.1 R1 F E2 6

Drzewa dystrybucyjne Drzewo najkrótszej ścieżki/źródłowe Źródło 1 Notacja: (S, G) S = Źródło G = Grupa Źródło 2 A B D F C E Odbiorca 1 Odbiorca 2 7

Drzewa dystrybucyjne Drzewo współdzielone Źródło 1 Notacja: (*, G) * = Wszystkie źródła G = Grupa Źródło 2 A B D (RP) F C E (RP) PIM Rendezvous Point Drzewo współdzielone Drzewo źródłowe Odbiorca 1 Odbiorca 2 8

Drzewa dystrybucyjne Drzewa najkrótszej ścieżki/źródłowe zużywają więcej pamięci O (S x G), ale zapewniają optymalną ścieżkę do źródła sygnału multicastowego, minimalizując opóźnienia wiadomości kontrolne PIM są wysyłane na adres źródła Drzewa współdzielone zużywają mniej pamięci O(G), ale ruch jest przesyłany mniej optymalna ścieżką wprowadzając dodatkowe opóźnienia wiadomości kontrolne PIM są wysyłane na adres RP W każdym przypadku drzewa budowane są za pomocą wiadomości PIM Join/Prune 9

Przesyłanie ruchu multicast Multicast Routing is backwards from Unicast Routing Dla ruchu typu unicast transmisja odbywa się na podstawie informacji o docelowym adresie IP adres ten jednoznacznie determinuje miejsce wysłania pakietu (interfejs, adres następnego routera) przesyłanie odbywa się w trybie hop-by-hop Dla ruchu mutlicast istotny jest również adres źródła pakietu: docelowy adres IP nie wskazuje jednoznacznie gdzie wysłać pakiet przesyłanie jest zorientowane połączniowo odbiorcy muszą się najpierw podłączyć do odpowiedniego drzewa multicast owego algorytm budowy takich drzew oparty jest o specjalny protokół (np. PIM) i wykorzystuje informacje z tablicy routingu oraz mechanizm RPF (Reverse Path Forwarding) drzewa dystrybucyjne umożliwiają stwierdzenie, gdzie należy przesyłać ruch multicastowy dla danej grupy i są budowane w sposób dynamiczny 10

Gdzie możemy zastosować multicast? Dowolna aplikacja z wieloma odbiorcami jeden do wielu, wielu do wielu Dystrybucja na żywo sygnału video Systemy pracy grupowej Exabytes per month 60 30 0 Mobility Business Internet Business IP WAN Consumer Internet Consumer IPTV/CATV 2008 2009 2010 2011 2012 2013 Aplikacje dostarczające dane w sposób periodyczny technologia push notowania giełdowe, wyniki sportowe, gazety, ogłoszenia Replikacja serwerów/serwisów Redukcja zużycia zasobów sieci więcej niż wiele połączeń typu punkt-punkt Wykrywanie zasobów sieciowych np. sąsiednich routerów Rozproszone, interaktywne symulacje (DIS - distributed interactive simulation) gry wojenne wirtualna rzeczywistość 11

Podstawy technologii multicast 12

Komponenty sieci multicast ISP A MSDP ISP B Źródło multicast X DR RP RP Źródło multicast Y ISP B IGMP Snooping PIM Snooping ISP A MBGP DR IGMP PIM-SM: ASM, SSM, BiDir MVPN DR Campus Multicast Stacje końcowe (do routerów) IGMP Przełączniki L2 (optymalizacja L2) IGMP snooping i PIM snooping Routery (protokół przesyłania multicast u) PIM sparse mode lub bidirectional PIM Interdomain Multicast Routing ruchu multicast pomiędzy domenami IP MBGP Wykrywanie źródeł multicast owych MSDP z PIM-SM Source Specific Multicast SSM 13

Koncepcja grupy multicastowej IP Musisz być członkiem grupy by odbierać dane dla tej grupy Nadawca i Odbiorca Członek Grupy 3 Nadawca Jeśli wysyłasz ruch na adres grupy to wszyscy członkowie danej grupy otrzymują te dane A B D Nie należy do grupy Nie musisz należeć do danej grupy by móc nadawać dane do jej członków C Członek Grupy 1 E Członek Grupy 2 Odbiorca Odbiorca 14

Adresacja ruchu multicast warstwa 2 Jakiego adresu MAC użyć dla danej grupy? 1110 32 Bity 28 Bitów 32 adresy IP Multicast 5 Bitów Straconych 224.1.1.1 239.255.0.1 224.129.1.1 225.1.1.1 225.129.1.1. 238.1.1.1 238.129.1.1 239.1.1.1 239.129.1.1 01-00-5e-7f-00-01 25 Bitów 23 Bity 48 Bitów 1 adres multicast MAC 0x0100.5E01.0101 Uwaga: adresy 32 grup multicastowych są mapowane do tego samego adresu MAC 15

Adresacja Multicast Addressing ruchu multicast w sieci IPv4 Nagłówek IPv4 Version IHL Type of Service Total Length Identification Flags Fragment Offset Time to Live Protocol Header Checksum Źródło Source Source Address 1.0.0.0-223.255.255.255 (dowolny adres z klas A, B, C) Cel Destination Destination Address 224.0.0.0-239.255.255.255 (Klasa D) - zakres adresacji dla grup Options Padding 16

Adresacja ruchu multicast - Klasa D Klasa D: 224/4 = 224.0.0.0-239.255.255.255 Zarezerwowane adresy o znaczeniu lokalnym (link-local) 224.0.0.0 224.0.0.255 Pakiety zawsze wysyłane z wartością TTL (time to live) = 1 Przykłady 224.0.0.1 wszystkie systemy w danej podsieci 224.0.0.2 wszystkie routery w danej podsieci 224.0.0.5 wszystkie routery OSPF 224.0.0.13 wszystkie routery PIMv2 224.0.0.22 IGMPv3 Inne zarezerwowane adresy 224.0.1.0 224.0.1.255 Pakiety transmitowane z wartością TTL > 1 Przykłady 224.0.1.1 NTP (Network Time Protocol) 224.0.1.32 Mtrace 224.0.1.78 Tibco Multicast1 17

Adresacja ruchu multicast - Klasa D Zakres typu administratively scoped addresses 239.0.0.0 239.255.255.255 zakres do prywatnego użytku podobny do zakresów opisanych w RFC1918 dla adresów typu unicast nie używany w globalnej sieci Internet Zakres dla SSM (Source Specific Multicast) 232.0.0.0 232.255.255.255 planowany do wykorzystania dla transmisji internetowych GLOP - RFC 2770 233.0.0.0 233.255.255.255 Zapewnia unikalny zakres (/24) adresów grupwych bazujących na numerze autonomicznym (AS autonomus system) nadawcy 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 233 16 bits AS local bits +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 18

Protokół IGMPv3 Subskrypcja do grupy 1.1.1.10 1.1.1.11 1.1.1.12 H1 H2 H3 v3 Report (224.0.0.22) Group: 224.1.1.1 Exclude: <puste> 1.1.1.1 rtr-a Internet Group Management Protocol (IGMP) służy do komunikacji pomiędzy odbiorcami a routerami celem ustalenia przynależności odbiorców do grup Odbiorca rejestrujący się do grupy wysyła wiadomość IGMPv3 Report na adres 224.0.0.22 19

Protokół IGMPv3 Subskrypcja do grupy i konkretnego źródła 1.1.1.10 1.1.1.11 1.1.1.12 H1 H2 H3 v3 Report (224.0.0.22) Group: 224.1.1.1 Include: 10.0.0.1 1.1.1.1 rtr-a Wiadomość IGMPv3 Report zawiera wymienione konkretne źródła, od których odbiorca chciałby wyłącznie odbierać ruch 20

Protokół IGMPv3 Sprawdzanie stanu członków grupy 1.1.1.10 1.1.1.11 1.1.1.12 H1 H2 H3 v3 Report (224.0.0.22) v3 Report v3 Report (224.0.0.22) (224.0.0.22) 1.1.1.1 Query Router wysyła cyklicznie wiadomości typu Query na adres 224.0.0.1 Wszyscy odbiorcy IGMPv3 odsyłają wiadomość IGMP Membership Report z pełną listą grup, do której są zarejestrowani 21

Protokoły PIM 22

Stan protokołu PIM Jest to stan grup multicastowych w rozumieniu routera, na którym wykonywane jest polecenie Reprezentowany przez wpisy w tablicy routingu multicastowego (mroute) używana przy podejmowaniu decyzji o przekazywaniu ruchu dalej składa się z wpisów (*, G) i (S, G) każdy wpis zawiera informację RPF interfejs wejściowy sąsiad RPF (router upstream) każdy wpis zawiera interfejsy wyjściowe OIL (Outgoing Interface List) może być pusty (NULL) 23

Przykład stanu tabeli mroute R2# show ip mroute Flags: D - Dense, S - Sparse, B - Bidir Group, s - SSM Group, C - Connected, L - Local, P - Pruned, R - RP-bit set, F - Register flag, T - SPT-bit set, J - Join SPT, M - MSDP created entry, X - Proxy Join Timer Running, A - Candidate for MSDP Advertisement, U - URD, I - Received Source Specific Host Report Outgoing interface flags: H - Hardware switched Timers: Uptime/Expires Interface state: Interface, Next-Hop or VCD, State/Mode (*, 224.1.1.1), 2w1d/00:00:00, RP 172.16.25.1, flags: SJC Incoming interface: Serial0/1, RPF nbr 172.16.4.1 Outgoing interface list: Ethernet0/1, Forward/Sparse-Dense, 2w1d/00:01:40 Serial0/0, Forward/Sparse-Dense, 00:4:52/00:02:08 (172.16.8.2, 224.1.1.1), 00:00:10/00:02:59, flags: CJT Incoming interface: Serial0/1, RPF nbr 172.16.4.1 Outgoing interface list: Ethernet0/1, Forward/Sparse-Dense, 00:00:10/00:02:49 Serial0/0, Forward/Sparse-Dense, 00:4:52/00:02:08 24

Protokoły PIM Tryb dense (gęsty) PIM-DM używa modelu w którym ruch wysyłany jest domyślnie do wszystkich i zatrzymywany dopiero gdy wprost sobie to zażyczymy cykl się powtarza (domyślnie w ciągu 3 minut) Tryb rzadki (sparse) PIM-SM używa modelu w którym ruch wysyłany jest tylko na żądanie wprost sygnalizowana chęć dołączenia do drzewa dystrybucji używa Rendezvous Point (RP) - nadawcy i odbiorcy spotykają się w tym punkcie by powiadomić się o swoim istnieniu różne warianty: ASM - Any Source Multicast/RP/SPT/drzewo współdzielone SSM - Source Specific Multicast, brak RP, tylko drzewo źródłowe (SPT) BiDir - Bidirectional PIM, brak SPT, tylko drzewo współdzielone 25

Protokół PIM-Sparse Mode Rejestracja odbiorcy RP (*, G) Join Drzewo współdzielone Stan (*, G) tworzony tylko wzdłuż gałęzi drzewa współdzielonego Odbiorca 26

Protokół PIM-Sparse Mode Rejestracja nadawcy (1) DA = 239.10.244.1 SA = 10.0.0.1 DA = 10.2.2.2 SA = 10.0.0.1 DA = 239.10.244.1 SA = 10.0.0.1 Źródło 10.0.0.1 DA = 239.10.244.1 SA = 10.0.0.1 RP 10.2.2.2 DA = 239.10.244.1 SA = 10.0.0.1 Ruch multicast Drzewo współdzielone Drzewo źródłowe (S, G) Register (S, G) Join (unicast) Odbiorca 239.10.244.1 Stan (S, G) tworzony tylko wzdłuż gałęzi drzewa źródłowego 27

Protokół PIM-Sparse Mode Rejestracja nadawcy (2) DA = 239.10.244.1 SA = 10.0.0.1 Źródło 10.0.0.1 DA = 239.10.244.1 SA = 10.0.0.1 RP 10.2.2.2 DA = 239.10.244.1 SA = 10.0.0.1 Ruch multicast Ruch (S, G) dociera do RP poprzez drzewo źródłowe Drzewo współdzielone Drzewo źródłowe (S, G) Register (S, G) Register-Stop (unicast) (unicast) Odbiorca 239.10.244.1 RP wysyła wiadomość Register-Stop do routera źródłowego 28

Protokół PIM-Sparse Mode Rejestracja nadawcy (3) DA = 239.10.244.1 SA = 10.0.0.1 Źródło 10.0.0.1 DA = 239.10.244.1 SA = 10.0.0.1 RP 10.2.2.2 Ruch multicast Drzewo współdzielone Drzewo źródłowe DA = 239.10.244.1 SA = 10.0.0.1 Odbiorca 239.10.244.1 Ruch multicast jest przesyłany do RP wzdłuż drzewa źródłowego Do odbiorców ruch dociera od RP poprzez drzewo współdzielone 29

Protokół PIM-Sparse Mode Przełączanie na drzewo źródłowe (1) DA = 239.10.244.1 SA = 10.0.0.1 DA = 239.10.244.1 SA = 10.0.0.1 Źródło 10.0.0.1 RP 10.2.2.2 Ruch multicast Drzewo współdzielone Drzewo źródłowe (S, G) Join DA = 239.10.244.1 SA = 10.0.0.1 Odbiorca 239.10.244.1 Router odbiorcy znając adres źródła wysyła w jego kierunku PIM Join Tworzony jest nowy stan (S, G) wzdłuż gałęzi drzewa źródłowego 30

Protokół PIM-Sparse Mode Przełączanie na drzewo źródłowe (2) DA = 239.10.244.1 SA = 10.0.0.1 DA = 239.10.244.1 SA = 10.0.0.1 Źródło 10.0.0.1 RP 10.2.2.2 Ruch multicast Drzewo współdzielone Drzewo źródłowe (S, G)RP-bit Prune DA = 239.10.244.1 SA = 10.0.0.1 Odbiorca 239.10.244.1 Ruch mutlicast zaczyna być przesyłany wzdłuż gałęzi nowego drzewa źródłowego Wiadomość (S, G)RP-bit Prune jest wysyłana wzdłuż starego drzewa celem uniknięcia duplikacji pakietów 31

Protokół PIM-Sparse Mode Przełączanie na drzewo źródłowe (3) DA = 239.10.244.1 SA = 10.0.0.1 DA = 239.10.244.1 SA = 10.0.0.1 Żródło 10.0.0.1 RP 10.2.2.2 Ruch multicast Drzewo współdzielone Drzewo źródłowe DA = 239.10.244.1 SA = 10.0.0.1 Odbiorca 239.10.244.1 Ruch (S, G) jest przesyłany do odbiorcy poprzez optymalną ścieżkę (drzewo źródłowe) 32

Protokół PIM-Sparse Mode Przełączanie na drzewo źródłowe (4) DA = 239.10.244.1 SA = 10.0.0.1 DA = 239.10.244.1 SA = 10.0.0.1 Źródło 10.0.0.1 RP 10.2.2.2 Ruch multicast Drzewo współdzielone Drzewo źródłowe (S, G) Prune DA = 239.10.244.1 SA = 10.0.0.1 Odbiorca 239.10.244.1 Ruch (S, G) nie musi być już odbierany przez RP (nie ma innych odbiorców) co jest sygnalizowane za pomocą wiadomości (S,G) Prune 33

Protokół PIM-Sparse Mode Przełączanie na drzewo źródłowe (5) DA = 239.10.244.1 SA = 10.0.0.1 DA = 239.10.244.1 SA = 10.0.0.1 Źródło 10.0.0.1 RP 10.2.2.2 Ruch multicast Drzewo współdzielone Drzewo źródłowe DA = 239.10.244.1 SA = 10.0.0.1 Odbiorca 239.10.244.1 Ruch (S, G) jest transmitowany tylko i wyłącznie w sposób optymalny poprzez drzewo źródłowe 34

Protokół PIM-Sparse Mode Podsumowanie Efektywny do dystrybucji multicastów dla rzadko rozproszonych w sieci odbiorców Zalety ruch wysyłany jest tylko do odbiorców, którzy wprost wyrazili zainteresowanie treścią oszczędzamy pasmo może przełączyć sposób konstrukcji drzewa (a zatem ścieżkę przez sieć) dla źródeł nadających dużą ilość danych niezależny od protokołu routingu unicastowego 35

Protokół PIM SSM - Source Specific Multicast Po co w modelu ASM potrzebujemy współdzielonego drzewa? hosty i router, do którego są podłączone muszą nauczyć się, gdzie znajduje się aktywne źródło ruchu dla grupy A co gdybyśmy od razu znali adres źródła które chcemy odbierać? host może użyć IGMPv3 by zasygnalizować zapotrzebowanie dla konkretnej pary (S,G) współdzielone drzewo i RP nie są w tej sytuacji potrzebne, różne źródła mogą współdzielić ten sam numer grupy i nie przeszkadzać sobie na wzajem...tak powstał: Source Specific Multicast (SSM) RFC 3569: An Overview of Source Specific Multicast (SSM) 36

Tryb PIM Source Specific DA = 239.10.244.1 SA = 10.0.0.1 Źródło 10.0.0.1 Odbiorca uczy się źródła i grupy Wysyła join IGMPv3 (S,G) Pierwszy router wysyła PIM Join bezpośrednio do źródła Ruch jest odrzucany na A! (S, G) Join IGMPv3 (S, G) Join A B C D D F Zewnętrzne źródło informacji o źródłach Na przykład: serwer WWW Odbiorca 1 239.10.244.1 37

Tryb PIM Source Specific Źródło 10.0.0.1 Drzewo źródłowe powstaje bez udziału drzewa współdzielonego DA = 239.10.244.1 SA = 10.0.0.1 DA = 239.10.244.1 SA = 10.0.0.1 A B C D DA = 239.10.244.1 SA = 10.0.0.1 E F Odbiorca 1 239.10.244.1 38

PIM SSM Podsumowanie Idealny dla aplikacji, w których jedno źródło wysyła do wielu odbiorców Używa uproszczonego protokołu PIM-SM Rozwiązuje problem przydziału adresów multicastowych ruch danych oddzielony zarówno przez źródło jak i grupę (nie tylko przez grupę jak w przypadku SM) dostawcy treści mogą używać tych samych numerów grup (S,G) jest unikalne Umożliwia lepsze zapobieganie atakom DoS fałszywe źródło ruchu nie może nadawać do grupy nawet jeśli będzie nadawać, być może nie trafi w konkretną parę (S,G) 39

A co z ruchem multicast typu wiele-dowielu? Tworzy ogromne tablice (S,G) problem z utrzymaniem dużych tablic stanów multicastowych staje się złożony nawet dla platform z szybką pamięcią podręczną duża ilość interfejsów wyjściowych (OIL) pogarsza problem w platformach sprzętowych Użycie drzew współdzielonych nieco łagodzi problem redukcja ilości stanów (S, G) stan (S, G) tylko wzdłuż drzewa źródłowego do RP niestety nadal zwykle oznacza to zbyt dużo wpisów (S, G) 40

Bidirectional PIM Jak to wygląda? Odbiorca RP Nadawca/ odbiorca Współdzielone drzewo Odbiorca 41

Bidirectional PIM Jak to wygląda? (10.0.0.1, 239.10.244.1) (10.1.0.1, 239.10.244.1) (10.2.0.1, 239.10.244.1) (*, 239.10.244.1) Odbiorca/Nadawca 10.1.0.1 239.10.244.1 RP Nadawca/ odbiorca 10.0.0.1 239.10.244.1 Wspóldzielone drzewo Ruch ze źródła Odbiorca/Nadawca 10.2.0.1, 239.10.244.1 Ruch ze źródła przekazywany dwukierunkowo przy pomocy stanu (*,G) 42

Bidir PIM Podsumowanie W znaczny sposób minimalizuje ilość wpisów w tablicy multicastowej eliminuje wszystkie stany (S,G) w sieci drzewa współdzielone między źródłami i RP również są wyeliminowane ruch ze źródła trafia zarówno w górę jak i w dół drzewa współdzielonego aplikacje wiele-do-wielu mogą się łatwo skalować dowolna liczba źródeł nie wprowadza dodatkowego obciążenia dla sieci 43

Punkty Rendezvous (RP) 44

Skąd sieć wie gdzie jest RP? Konfiguracja statyczna AutoRP ręcznie na każdym routerze w domenie PIM rozwiązanie firmowe Cisco pozwoliło rozpowszechnić zastosowanie PIM-SM PIMv2 BSR draft-ietf-pim-sm-bsr standard 45

BSR z 10,000 metrów G C-BSR D C-BSR A C-BSR F B C BSR Msgs Wiadomości BSR są przekazywane hop-by-hop E 46

BSR z 10,000 metrów C-BSR z najwyższym priorytetem zostaje BSRem G D BSR A F B C E 47

BSR z 10,000 metrów G D BSR A F C-RP B C C-RP E 48

BSR z 10,000 metrów G D BSR A F C-RP B C C-RP BSR Msgs BSR rozgłasza RP-Set (224.0.0.13) E 49

MPLS a Multicast 50

Label Switched Multicast pakiety multicastowe IP transportowane z wykorzystaniem enkapsulacji mpls (RFC5332) etykiety przydzielane są z tej samej puli (etykiety są globlane) alokacja etykiet odbywa się za pomocą RSVP-TE bądź LDP które zostały zmodyfikowane by wspierać ścieżki LSP typ P2MP, MP2MP Zalety współdzielenie control plane z ruchem unicast ten sam paradygmat przesyłu poprzez sieć możliwość wykorzystania funkcjonalności takich jak Fast ReRoute (FRR) rezerwacja pasma 51

MLDP P2MP - Sygnalizacja Label Mapping Liść CE Odbiorca Odbiorca Liść CE Źródło Router Wejściowy (Root) Odbiorca Liść CE 1. Routery wyjściowe (liście) otrzymują komunikat PIM Join 2. Przesyłaja komunikat label mapping poprzez MLDP i sieć do routera wejściowego (root) 3. Router wejściowy otrzymuje pojedyncze uaktualnienie MLDP 52

MLDP P2MP Stany w sieci PE P Liść CE Odbiorca Odbiorca Źródło Router Wejściowy (Root) 1. Control Plane: 1 P2MP LSP 2. DataPlane: 1 P2MP LSP (replikacja) Liść 3. Kiedy router wyjściowy nie chce już dłużej otrzymywać ruchu multicastowego wysyła odpowiedni komunikat do routera P Liść CE CE Odbiorca 53

MLDP MP2MP - Sygnalizacja Label Mapping DO root a Liść CE Odbiorca/ Nadawca Nadawca/Odbiorca Odbiorca/ Nadawca Liść CE Router Wejściowy (Root) Label Mapping OD root a Liść CE Odbiorca/ Nadawca 1. Router wyjściowy wysła komunikat MLDP label mapping do routera wejśćiowego (dokładnie tak jak w P2MP) 2. Na każdym łączu, wiadomość label mapping jest przesyłana w odwrotnym kierunku tworząc dwukierunkową ścieżkę MP2MP LSP 54

RSVP-TE - Sygnalizacja BGP Auto Discovery bądź konfiguracja statyczna Odbiorca Liść CE Odbiorca Liść CE Źródło Router Wejściowy (Root) Resv Path Odbiorca Liść CE 1. Router wyjściowy wysyła wiadomość BGP Auto Discovery do routera wejściowego 2. Router wejściowy (root) wysyła wiadomość typu RSVP-TE Path do routerów wyjściowych 3. Routery wyjściowe odpowiadają za pomocą wiadomości RSVP-TE Resv (standardowy sposób działania RSVP) 55

RSVP-TE - Stany w sieci PE P Liść CE Odbiorca Odbiorca Źródło Router Wejściowy (Root) Liść Liść CE CE Odbiorca 1. Control Plane: 3 P2P sub-lsp od routera wejściowego do wyjściowego 2. Data Plane: 1 P2MP (replikacja) 3. Kiedy router wyjściowy nie chce już odbierać ruchu multicastowego, wysyła wiadomość kontrolną do routera wejściowego celem usunięcia LSP do niego 56

Mulitcast w praktyce czyli co warto robić a o czym zapomnieć 57

Praktyczne porady Który PIM? SSM dla aplikacji jeden do wielu - uproszczenie sieci, brak RP BiDir dla aplikacji wiele do wielu (np. mvpn, OTV) redukcja ilości stanów w sieci ASM do każdego innego zastosowania Mutlicast w MPLS mldp dla aplikacji wiele do wielu (np. mvpn) P2MP TE dla aplikacji jeden do wielu Konwergencja sieci mulitcast zależy od konwegencji sieci unicast! Nie zapomnij o bezpieczeństwie w sieci mulitcast! Zabezpiecz się zarówno od strony odbiorców jak i źródeł Jeśli to konieczne chroń treści które przesyłasz Nie zapominaj o atakach DoS (w tym na L2) które ze wzgledu na naturę routingu multicastowego (utrzymywanie stanów) w niezabezpieczonej sieci dosyć łatwo przeprowadzić 58

Podsumowanie 59

Podsumowanie Mutlicast stanowi coraz znaczniejszą część ruchu przesyłanego w sieciach IP przekazy na żywo, TV, aplikacje biznesowe to tylko niektóre przykłady usług, z których korzystamy na co dzień Wszystkie mechanizmy, protokoły i funkcjonalności wymagane do skutecznej implementacji sieci mutlicastowej są w fazie swojej dojrzałości i stabilności Dziękuję za uwagę! 60