2. AGENDA
1. Multicasty – to każdy wiedzieć musi
2. Podstawowe polecenia diagnostyczne
3. Problemy z rejestracją w sieci multicast
3. Multicasty – to każdy wiedzieć musi
Multicasty:
Ruch UDP
Best effort
Dynamiczna zmiana stanów rozgłaszania multicastów i
sygnalizacji na urządzeniach
Kontrola rozgłaszania na poziomie aplikacji
Replikacja
Wymaga zarejestrowania się zarówno nadawcy jak i
odbiorcy
4. Multicasty – to każdy wiedzieć musi
Jeden nadawca – wielu odbiorców
Nadawca ma określony adres z klas A, B lub C
Odbiorca jest dla nadawcy nieznany, dane są wysyłane
na adres grupy z kasy D
5. Multicasty – to każdy wiedzieć musi
Trzy tryby pracy:
Dense Mode – założenie, że każda podsieć chce
otrzymywać rozsyłany content. Routery muszą jawnie
zadeklarować, że nie mają klientów zainteresowanych
odbieraniem danych i odświeżać tą informację
Sparse Mode – budowane jest jednokierunkowe drzewo
ze zdefiniowanego w sieci punktu (RP) do odbiorców,
którzy muszą jawnie zadeklarować chęć odbioru danych.
W kolejnych etapach możliwa jest przebudowa tego
drzewa tak by jego podstawą było źródło danych.
6. Multicasty – to każdy wiedzieć musi
Sparse-Dense Mode
Tryb hybrydowy. Grupy dla których zdefiniowany jest
RP traktowane są jako sparse mode, pozostałe
obsługiwane są jak dense mode.
Tryb ten jest niezbędny jeżeli do rozsyłania informacji o
RP stosujemy mechanizm Auto-RP ale nie
wykorzystujemy Auto-RP Listener’a.
7. Multicasty – to każdy wiedzieć musi
Sposoby budowania drzewa rozgłaszania multicastów:
Shared Tree – podstawą budowy drzewa jest RP, który jest
punktem do którego rejestrują się odbiorcy, zarządza on
rozsyłaniem ruchu do nich.
8. Multicasty – to każdy wiedzieć musi
Sposoby budowania drzewa rozgłaszania
multicastów:
Source Tree –podstawą budowy drzewa jest nadawca dla
danej grupy. Dla każdego odbiorcy budowany jest osobny
wpis (S,G)
9. Multicasty – to każdy wiedzieć musi
Any Source Multicast (ASM)
Klasyczny tryb działania PIM-SM
Rozgłaszanie za pomocą Shared Tree i Source Tree
Dla Shared Tree istnieją RP
Source Specific Multicast (SSM)
Rozgłaszanie za pomocą Source Tree
Nie istnieje RP
Adres grupy z zakresu 232.0.0.0/8 (IPv4) i FF3x::/96
(IPv6)
Bidirectional PIM (BiDir)
10. Multicasty – to każdy wiedzieć musi
(*,G) – oznaczenie dla Shared Tree
Budowany od RP
Znamy adres grupy, nie znamy nadawcy
(S,G) – oznaczenie dla Source Tree
Budowany od źródła
Znamy adres nadawcy i adres grupy
IIF – Incoming Interface
Interfejs w kierunku źródła (Source) lub RP (Shared)
OIL – Outgoing Interface List
Lista interfejsów na które rozgłaszany jest multicast
11. Multicasty – to każdy wiedzieć musi
RP – Randezvous Point. Dla trybu Sparse punkt
referencyjny dla budowy wspólnego drzewa
rozgłaszania multicastów.
FHR – First Hop Router. Pierwszy router w ścieżce
nadawania multicastów. Odpowiedzialny m.in. za
rejestrację źródła w RP.
LHR – Last Hor Router. Ostatni router w ścieżce
nadawania multicastów, znajduje się najbliżej
odbiorcy
12. Multicasty – to każdy wiedzieć musi
Reverse Path Forwarding Check
Służy zapobieganiu powstawania pętli przy rozsyłaniu
kopii danych do grupy multicast
Weryfikacja odbywa się na bazie adresu źródłowego
nadawcy:
Jeżeli najlepsza ścieżka w tablicy routingu do nadawcy jest
przez interfejs, z którego pakiet został odebrany należy go
przetworzyć
Jeżeli otrzymano pakiet przez inny interfejs należy go odrzucić
Jeżeli ten sam pakiet zostanie odebrany z kilku źródeł
jedynie raz zostanie on zreplikowany
13. Reverse Path Forwarding Check
Podlegają mu zarówno pakiety z danymi (data
plane) jak i część pakietów kontrolnych protokołów
(control plane):
PIM (*,G) Join – wysyłane zawsze najkrótszą ścieżką do
RP
Adresy BSR/RP przesyłane w wiadomościach BSR
Dla każdego pakietu przesyłanego w ramach data plane
16. Podstawowe polecenia diagnostyczne
R8#show ip mroute
IP Multicast Routing Table
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, E -
Extranet,
X - Proxy Join Timer Running, A - Candidate for MSDP
Advertisement,
U - URD, I - Received Source Specific Host Report,
Z - Multicast Tunnel, z - MDT-data group sender,
Y - Joined MDT-data group, y - Sending to MDT-data group,
V - RD & Vector, v - Vector
Outgoing interface flags: H - Hardware switched, A - Assert winner
(*,G)
Shared Tree
(S,G)
Source Tree
Informacja o RP dla Shared TreeFlagi stanu
17. Podstawowe polecenia diagnostyczne
R8#sh ip igmp interface
Ethernet0/0 is up, line protocol is up
Internet address is 10.0.89.8/24
IGMP is enabled on interface
Current IGMP host version is 2
Current IGMP router version is 2
IGMP query interval is 60 seconds
IGMP configured query interval is 60 seconds
IGMP querier timeout is 120 seconds
IGMP configured querier timeout is 120 seconds
IGMP max query response time is 10 seconds
Last member query count is 2
Last member query response interval is 1000 ms
Inbound IGMP access group is not set
IGMP activity: 1 joins, 0 leaves
18. Podstawowe polecenia diagnostyczne
R8#show ip igmp groups
IGMP Connected Group Membership
Group Address Interface Uptime Expires Last Reporter Group Accounted
224.100.0.1 Ethernet0/0 00:07:19 00:02:56 10.0.89.8
224.0.1.40 Ethernet0/1 00:30:09 00:02:47 10.0.78.8
19. Podstawowe polecenia diagnostyczne
R8#sh ip igmp groups detail
Flags: L - Local, U - User, SG - Static
Group, VG - Virtual Group,
SS - Static Source, VS - Virtual
Source,
Ac - Group accounted towards access
control limit
Interface: Ethernet0/0
21. Kiedy najczęściej powstają problemy
Wiele protokołów IGP w sieci i redystrybucje
pomiędzy nimi – możliwy brak stabilności tras i
asymetrie routingu
PIM nie jest uruchomiony na wszystkich
interfejsach
Połączenia typu NBMA
Duża liczba tuneli transportujących multicasty
Problemy z wydajnością sprzętu
Zła architektura sieci i rozmieszczenie RP
22. Generalne zasady diagnostyki
Rozpoczynamy sprawdzanie w przeciwnym
kierunku niż ma miejsce przepływ danych, czyli od
odbiorcy do nadawcy
Problem może dotyczyć tylko wybranej grupy odbiorców
– szukajmy ich cech wspólnych
Na każdym z routerów w ścieżce wykonujemy
kompletną diagnostykę
23. PROBLEM: Nie buduje się drzewo (S,G)
Problem: w tablicy mroute na LHR widzimy wpisy
(*,G) dla naszej grupy
Nadawca jest aktywny
Ścieżka badana na podstawie wpisów (*,G) jest
prawidłowa
Brak wpisów (S,G)
24. PROBLEM: Nie buduje się drzewo (S,G)
Rozwiązanie:
Potrzebujemy odbiornik!
Drzewo SSM nie buduje się jeżeli nie ma zarejestrowanego
odbiorcy dla danej grupy multicastów
Prawidłowo zarejestrowany odbiorca to taki, który wysłał PIM
Join dla danej grupy
25. PROBLEM: Otrzymujemy zduplikowane
pakiety
Problem: Stacja końcowa co jakiś czas otrzymuje
zduplikowane, pakiety dla grupy, którą nasłuchuje
Możliwa przyczyna: dane rozsyłane w trybie dense
Router okresowo rozsyła dane na wszystkich
interfejsach (flooding)
Jeżeli brak chętnych do odbioru danych na danym
interfejsie rozsyłanie jest zaprzestawane (pruning) aż do
wygaśnięcia timerów
Jeżeli w danym segmencie są dwa routery które mogą do
stacji końcowych przesyłać multicasty dokonują one
między sobą elekcji forwardera.
Gdy timery wygasną proces floodingu, pruningu i elekcji
są powtarzane co może skutkować zduplikowanymi
26. PROBLEM: Otrzymujemy zduplikowane
pakiety
Rozwiązanie:
Zmiana trybu dense na sparse
Krótkotrwałe okresy otrzymywania zduplikowanych
pakietów mogą być wynikiem problemów sprzętowych,
na przykład przeładowania karty liniowej w urządzeniu.
Nie przejmować się – to zadanie aplikacji odpowiednio
obsłużyć odbierany ruch
27. Proces rejestracji w PIM-SM
R1R2 R3
R7 R8
E0/2E0/0 E0/1E0/2
E0/1
E0/2
E0/0
FHRRP
LHR
SOURCE
RECEIVER
1
1. Nadawca rozpoczyna
transmisję danych
2. FHR rejestruje źródło w RP
za pomocą PIM Register
3. Na RP i wszystkich routerach
na ścieżce do źródła
powstają wpisy
(*,G) oraz (S,G)
2
(*,G)
(S,G)
(*,G)
(S,G)
28. Proces rejestracji w PIM-SM
R1R2 R3
R7 R8
E0/2E0/0 E0/1E0/2
E0/1
E0/2
E0/0
FHRRP
LHR
SOURCE
RECEIVER
1
1. Odbiorca wysyła IGMP
Membership Report w
segmencie LAN – odbiera
go R8
2. R8 wysyła żądanie rejestracji
do RP za pomocą PIM Join
3. Stany (*,G) tworzą się na
wszystkich routerach w
ścieżce do RP
2
1
2
2
(*,G
)
(*,G
)
(*,G
)
29. Proces rejestracji w PIM-SM
R1R2 R3
R7 R8
E0/2E0/0 E0/1E0/2
E0/1
E0/2
E0/0
FHRRP
LHR
SOURCE
RECEIVER
1
1. Ruch zaczyna być
przekazywany w
oparciu o zbudowane
Shared Tree
2
1
2
2
30. PROBLEM: Odbiorca nie może
zarejestrować się
Problem 1:
Jesteśmy pewni, że odbiorca wysyła IGMP Membership
Report
Pakiet poprawnie dociera do pierwszego routera w jego
ścieżce do RP
Zgłoszenie rejestracji nie jest przetwarzane przez router
ani przesyłane dalej
R1 R2 R3
R7 R8
E0/2 E0/0 E0/1
E0/2
E0/1
E0/2
E0/0
FHR RP
LHR
SOURCE
RECEIVER
IGMP Report
31. PROBLEM: Odbiorca nie może
zarejestrować się
Możliwe przyczyny:
W ścieżce L2 pomiędzy odbiorcą a routerem następuje
filtracja pakietów IGMP
Access-lista na interfejsie routera
PIM nie jest uaktywniony na interfejsie w kierunku
odbiorcy
R8#sh run int e0/0
Building configuration...
Current configuration : 83 bytes
!
32. PROBLEM: Odbiorca nie może
zarejestrować się
Możliwe przyczyny:
PIM nie jest uaktywniony na interfejsie w kierunku
odbiorcy
Ethernet0/0 is up, line protocol is up
Internet address is 10.0.89.8/24
Broadcast address is 255.255.255.255
Address determined by setup command
MTU is 1500 bytes2
Helper address is not set
Directed broadcast forwarding is disabled
Multicast reserved groups joined: 224.0.0.5 224.0.0.6
Outgoing access list is not set
Brak rejestracji do
interesującej grupy
(224.10.0.1)
33. PROBLEM: Odbiorca nie może
zarejestrować się
Możliwe przyczyny:
PIM nie jest uaktywniony na interfejsie w kierunku
odbiorcy
R8#conf t
Enter configuration commands, one per line. End with CNTL/Z.
R8(config)#int e0/0
R8(config-if)#ip pim sparse-mode
R8#sh ip igmp groups
IGMP Connected Group Membership
Group Address Interface Uptime Expires Last Reporter
Group Accounted
34. PROBLEM: Odbiorca nie może
zarejestrować się
Problem 2:
Na routerze LHR widać żądanie rejestracji
PIM Join nie jest przesyłany wewnątrz sieci
Możliwe przyczyny (1):
Problem z przekazaniem IGMP Membership Report
przez router – brak wiedzy o RP
R8#show ip pim rp 224.10.0.1
Group: 224.10.0.1, RP: 10.10.0.1, v2, uptime 03:30:41, expires 00:02:19
R8#show ip mroute
IP Multicast Routing Table
35. PROBLEM: Odbiorca nie może
zarejestrować się
Problem 2:
Na routerze LHR widać żądanie rejestracji
PIM Join nie jest przesyłany wewnątrz sieci
R1 R2 R3
R7 R8
E0/2 E0/0 E0/1
E0/2
E0/1
E0/2
E0/0
FHR RP
LHR
SOURCE
RECEIVER
?
?
36. PROBLEM: Odbiorca nie może
zarejestrować się
Możliwe przyczyny (1):
Problem z wysłaniem PIM Join przez router – brak
wiedzy o RP
R8#sh ip pim rp mapping 224.10.0.1
PIM Group-to-RP Mappings
Group(s) 224.0.0.0/4
RP 10.10.0.1 (?), v2
Info source: 10.10.0.1 (?), via bootstrap, priority 0, holdtime 150
Uptime: 03:49:01, expires: 00:02:03
37. PROBLEM: Odbiorca nie może
zarejestrować się
Możliwe przyczyny (1):
Problem z wysłaniem PIM Join przez router – brak
wiedzy o RP
Jak router może nauczyć się gdzie jest RP?
Auto-RP
BSR
Static
38. PROBLEM: Odbiorca nie może
zarejestrować się
Możliwe przyczyny (2):
Problem z wysłaniem PIM Join przez router – brak
wiedzy o ścieżce do RP
R8#show ip mroute
(*, 224.10.0.1), 00:33:17/00:02:36, RP 192.168.2.2, flags: SJCL
Incoming interface: Null, RPF nbr 0.0.0.0
Outgoing interface list:
Ethernet0/0, Forward/Sparse, 00:33:17/00:02:36
R8#show ip rpf 192.168.2.2
failed, no route exists
39. PROBLEM: Odbiorca nie może
zarejestrować się
Możliwe przyczyny (3):
Problem z wysłaniem PIM Join przez router –
nieprawidłowa ścieżka do RP
R8#show ip pim rp mapping 224.10.0.1
PIM Group-to-RP Mappings
Group(s) 224.0.0.0/4
RP 10.10.0.1 (?), v2
Info source: 10.10.0.1 (?), via bootstrap, priority 0, holdtime 150
Uptime: 04:13:05, expires: 00:02:06
Znamy adres IP RP
Znamy ścieżkę do RP
40. PROBLEM: Odbiorca nie może
zarejestrować się
Możliwe przyczyny (3):
Problem z wysłaniem PIM Join przez router –
nieprawidłowa ścieżka do RP
R1 R2 R3
R7 R8
E0/2 E0/0 E0/1
E0/2
E0/1
E0/2
E0/0
FHR RP
LHR
SOURCE
RECEIVER
?
?
41. PROBLEM: Odbiorca nie może
zarejestrować się
Możliwe przyczyny (3):
Problem z wysłaniem PIM Join przez router –
nieprawidłowa ścieżka do RP
R8#sh ip mroute 224.10.0.1
(*, 224.10.0.1), 2d04h/00:02:22, RP 10.10.0.2, flags: SJCL
Incoming interface: Null, RPF nbr 0.0.0.0
Outgoing interface list:
Ethernet0/0, Forward/Sparse, 2d04h/00:02:21
R8#show ip rpf 10.10.0.1
PIM nie wie skąd
ruch ma przychodzić
PIM nie zna swojego
sąsiada dla tej grupy
Reguła RPF dla multicast
nie jest spełniona!
42. PROBLEM: Odbiorca nie może
zarejestrować się
Możliwe przyczyny (3):
Problem z wysłaniem PIM Join przez router –
nieprawidłowa ścieżka do RP
Gdzie jest problem?:
Brak aktywacji PIM na wskazanym interfejsie
Asymetria routingu
Load balancing
43. Możliwe przyczyny (3):
Problem z wysłaniem PIM Join
przez router – nieprawidłowa
ścieżka do RP
R8#sh ip mroute 224.10.0.1
(*, 224.10.0.1), 00:17:20/00:02:41, RP 10.10.0.2, flags:
SJCL
Incoming interface: Ethernet0/2, RPF nbr 10.0.38.3
PROBLEM: Odbiorca nie może
zarejestrować się
44. Problem rozwiązany :)
Mamy wszystkie informacje niezbędne
do zbudowanie drzewa i rozesłania
PIM Join (*,G)
R8#sh ip mroute 224.10.0.1
(*, 224.10.0.1), 00:17:20/00:02:41, RP 10.10.0.1, flags: SJCL
Incoming interface: Ethernet0/2, RPF nbr 10.0.38.3
Outgoing interface list:
PROBLEM: Odbiorca nie może
zarejestrować się
45. A co jeżeli problem występuje gdzieś
na ścieżce do RP?
Powtarzamy cała diagnostykę na
kolejnych routerach w ścieżce
Monotonne ale skuteczne
PROBLEM: Odbiorca nie może
zarejestrować się
46. PROBLEM: Nadawca nie rejestruje się w
RP
Problem 1:
Router FHR nie odbiera i nie przetwarza multicastów
R1 R2 R3
R7 R8
E0/2 E0/0 E0/1
E0/2
E0/1
E0/2
E0/0
FHR RP
LHR
SOURCE
RECEIVER
47. PROBLEM: Nadawca nie rejestruje się w
RP
Problem 1:
Router FHR nie odbiera i nie przetwarza multicastów
Możliwe przyczyny:
W ścieżce L2 pomiędzy odbiorcą a routerem następuje
filtracja pakietów IGMP
Access-lista na interfejsie routera
PIM nie jest uaktywniony na interfejsie w kierunku
odbiorcy
48. PROBLEM: Nadawca nie rejestruje się w
RP
Problem 2:
Rejestracja źródła strumienia dla grupy nie jest
przesyłana do RP
R1 R2 R3
R7 R8
E0/2 E0/0 E0/1
E0/2
E0/1
E0/2
E0/0
FHR RP
LHR
SOURCE
RECEIVER
1
2
1. Ruch Multicast
2. PIM Register
49. PROBLEM: Nadawca nie rejestruje się w
RP
Możliwe przyczyny:
Router FHR nie zna RP dla grupy
Router FHR nie wie jak dotrzeć do RP
Router FHR nie wie kto jest prawidłowym sąsiadem na ścieżce
do RP – zła ścieżka do RP
R1#show ip mroute
(*, 224.0.1.40), 01:07:32/00:02:32, RP 0.0.0.0, flags: DCL
Incoming interface: Null, RPF nbr 0.0.0.0
Outgoing interface list:
Loopback0, Forward/Sparse-Dense, 01:07:32/00:00:00
50. PROBLEM: Nadawca nie rejestruje się w
RP
Możliwe przyczyny:
Router FHR nie zna RP dla grupy
Router FHR nie wie jak dotrzeć do RP
Router FHR nie wie kto jest prawidłowym sąsiadem na
ścieżce do RP – zła ścieżka do RP
R1#show ip mroute 224.10.0.1 count
IP Multicast Statistics
3 routes using 1520 bytes of memory
2 groups, 0.50 average sources per group
Forwarding Counts: Pkt Count/Pkts per second/Avg Pkt Size/Kilobits per
second
51. PROBLEM: Nadawca nie rejestruje się w
RP
W kolejnym kroku RP buduje drzewo (S,G) w
kierunku źródła danych
R1 R2 R3
R7 R8
E0/2 E0/0 E0/1
E0/2
E0/1
E0/2
E0/0
FHR RP
LHR
SOURCE
RECEIVER
52. PROBLEM: Nadawca nie rejestruje się w
RP
W kolejnym kroku RP buduje drzewo (S,G) w
kierunku źródła danych
R1 R2 R3
R7 R8
E0/2 E0/0 E0/1
E0/2
E0/1
E0/2
E0/0
FHR RP
LHR
SOURCE
RECEIVER
Source Tree
(S,G)
Shared
Tree (*,G)
53. Podsumowanie
Rzeczy, które musimy sprawdzić w pierwszej
kolejności:
Sprawdzamy czy ip multicast-routing jest aktywny
Czy PIM jest aktywny na interfejsach (loopback też!)
Jeżeli korzystamy z PIM-SM lub PIM-BiDir
sprawdzamy czy RP jest skonfigurowany i poprawnie
rozgłaszany (AutoRP, BSR, Static)
Czy routing dla unicast działa poprawnie
Czy spełniona jest reguła RPF
Czy mechanizmy bezpieczeństwa nie blokują ruchu
(ACLki, policery, multicast boundary, BSR boundary,
wartości TTL itp.)