Professional Documents
Culture Documents
Anlisis e implementacin
-20051
ndice
1 Introduccin .................................................................................................................... 3
2 Objetivos ......................................................................................................................... 3
3 Algoritmo de inferencia del rbol.................................................................................. 4
3.1 Criterio de Seleccin ................................................................................................ 5
3.2 rboles Binarios....................................................................................................... 8
3.3 Topologas de rbol Arbitrarias............................................................................... 8
3.4 Clculo de las Prdidas Hacia los Receptores.......................................................... 9
3.5 Condiciones de Borde y Patologas........................................................................ 11
4 Protocolos de Ruteo Multicast ...................................................................................... 11
5 Programas utilizados en la implementacin de la red y mediciones ............................ 14
5.1 VMWare Workstation (www.vmware.com) .......................................................... 15
5.2 VLC (VideoLAN Client, www.videolan.org)........................................................ 16
5.3 Demonios de Ruteo Descartados............................................................................ 17
5.4 XORP (eXtensible Open Router Platform, www.xorp.org)................................... 17
6 Configuracin de la Red Virtual ................................................................................... 18
7 Obtencin de los Nmeros de Secuencia de los Paquetes de Video............................. 20
8 Resultados Obtenidos.................................................................................................... 22
8.1 Red Real ................................................................................................................. 22
8.2 Red Simulada ......................................................................................................... 23
8.2.1 Proceso de reconstruccin del rbol de la red simulada .................................. 24
9 Conclusiones ................................................................................................................ 27
10 Referencias................................................................................................................... 28
11 Anexo 1: Programas de Matlab Realizados ................................................................. 29
12 Anexo 2: Archivo de configuracin utilizado para el router XORP............................ 35
1 Introduccin
El servicio de IP Multicast brinda una manera eficiente de enviar paquetes a
mltiples receptores. Un nico paquete transmitido por la fuente es recibido por un
nmero arbitrario de receptores a lo largo de un rbol de distribucin (en cuya cima se
encuentra el transmisor), mediante la replicacin de los paquetes en determinadas
interfaces de salida de los routers. En principio el servicio de IP Multicast brinda un
servicio de mejor esfuerzo, sin embargo existe un cierto nmero de aplicaciones como
actualizaciones de software, artculos de noticias, etc., que requieren transporte de
paquetes confiable. Para cumplir con este requerimiento se han desarrollado una serie de
protocolos de transporte sobre el servicio no confiable, de los cuales no entraremos en
detalle por carecer de inters para este trabajo.
Uno de los principales retos en el diseo de un protocolo de transporte multicast
confiable es su algoritmo de recuperacin frente a prdidas. Esto ha probado ser difcil de
escalar a un nmero grande de receptores, ya que los paquetes retransmitidos hacia cada
receptor terminan llegando a todos ellos, contaminando la red con una mayora de
paquetes intiles. Para solucionar este problema se han propuesto una serie de ideas que
intentan restringir el alcance del trfico de recuperacin de errores (retransmisiones), a un
mbito local. La idea principal detrs de la recuperacin local es identificar a los grupos
de receptores que compartan patrones de prdida similares, para luego confinar la
recuperacin de errores a estos grupos sin perturbar el resto del rbol. Esencialmente se
requiere que cada receptor descubra a que grupo pertenece y despus busque dentro de
este grupo a los candidatos que puedan retransmitirle el paquete faltante.
2 Objetivos
El objetivo de este trabajo es implementar un algoritmo para obtener una buena
aproximacin de la topologa del rbol de distribucin multicast. Esto se llevar a cabo
estrictamente usando medidas realizadas en las puntas del rbol a las que se tiene acceso
a partir de estadsticas de prdidas realizadas en cada receptor.
Para tal fin, nos basamos en lo expuesto en [1], donde se propone un algoritmo
de inferencia de rbol a partir de medidas multicast. Es importante observar que el
medio ms corto para determinar caminos a travs de Internet es utilizar el comando
traceroute, el mismo es equivalente a enviar n+1 paquetes unicast de eco (ping) a cada
receptor variando el campo ttl, donde n es la cantidad de routers entre la fuente y el
receptor. Por lo tanto si tenemos m receptores, teniendo en cuenta que el comando ping
transfiere dos paquetes (ida y vuelta), estamos inundando la red con 2(n+1)m paquetes, lo
cual puede ser muy perjudicial al trabajar a gran escala en redes con un nmero alto de
receptores. Debido a lo antes mencionado se recurre a enviar paquetes multicast, que por
su naturaleza hacen un uso ms eficiente de la red. (Ver [2]).
Para implementar el algoritmo, nos propusimos trabajar sobre una red fsica real
de modo de enfrentarnos a los pormenores de las mediciones reales, as como tambin
para aprender a configurar una red multicast y trabajar con un flujo real de informacin,
en contraposicin a trabajar con una red simulada. Como no disponamos de una red
fsica real del tamao mnimo indispensable para probar el algoritmo (unas siete
mquinas), optamos por la alternativa de utilizar una red virtual. En esta, si bien no hay
mquinas fsicas, interfaces de red, ni cables que conectar, a todos los otros efectos la
situacin es idntica a la de una red real, necesitndose para ella la instalacin y
configuracin de sistemas operativos, routers multicast, servidores y receptores de video
multicast, capturadores y procesadores de trfico, etc., lo cual se detallar ms adelante.
caractersticas del camino (como ancho de banda de los cuellos de botella y tasas de
prdidas).
El algoritmo de inferencia de rbol intenta reconstruirlo desde los receptores hacia
la fuente, usando informacin de los patrones de prdida en los primeros. Receptores que
tengan patrones de prdida similares, son agregados y representados por un nico nodo
un nivel por arriba del anterior. El nodo agregado puede ser visto a partir de ese momento
como un nico nodo para posteriores agregaciones. El rbol entero ha sido reconstruido
cuando todos los receptores han sido agregados en un nico nodo.
La aplicacin de las tcnicas de agregacin descritas anteriormente requiere el
conocimiento de dos factores: un criterio de seleccin que sea indicativo de cuan cerca se
encuentran los receptores entre s en el rbol, y segundo la necesidad de conocer cuantos
receptores sern agregados juntos en un nico macro nodo representativo en cada paso
del proceso de construccin del rbol.
Anlogamente se define Pa b .
Resolviendo las ecuaciones anterior para Ptab se llega a:
Pabt =
Si Ptab= Pt(ab)c entonces los nodos son agregados como en el caso 1, de otra manera
se agregan como en el caso 2.
En realidad dado que se usan prdidas medidas para aproximar las probabilidades
Pab , Pab , Pba , el criterio de igualdad para el caso 1 es demasiado rgido. Un cumplimiento
estricto de la regla expuesta anteriormente resultara en agregaciones incorrectas. Para
tener en cuenta una cierta variacin, se define el margen de error y se modifica la regla
anterior de la siguiente manera:
Si Pt(ab)c est dentro de % de Ptab, entonces los nodos son agregados como en el
caso 1, de otra manera se lo hace como en el caso 2.
Fig. 5: Para calcular Pa, consideramos el resto de sus compaeros de nodo como
uno solo (b).
Siendo entonces que conocemos una estimacin de Ptab, dada por las prdidas
compartidas reales entre a y b (tomamos la mnima entre todos los receptores del mismo
nivel, que ser la ms prxima a la realidad), el problema se reduce a calcular Pa en
funcin de Ptab y las prdidas totales hacia a, Ptota, estimadas por las prdidas totales de a
divididas por la cantidad de paquetes enviados.
La probabilidad de que un paquete llegue hacia a es:
Patot Pabt
1 Pabt
Este clculo sin embargo no funciona cuando a, en vez de ser un receptor real, es
un macro nodo del modelo de rbol determinado por el algoritmo de inferencia. Esto se
debe a que dichos macro nodos tienen asignadas las prdidas conjuntas totales de los
receptores hijos debajo de ellos, y no las prdidas conjuntas reales, por lo tanto en esos
casos el Pa calculado no es vlido.
Se utiliz este clculo en las rutinas utilizadas y se verific esto ltimo. Las
prdidas calculadas fueron muy precisas para la ltima rama de cada nodo, pero
invlidas para las ramas que terminan en routers como se esperaba.
Para calcular las prdidas en los routers, lo que se hace es tomar la mnima Ptab de
sus nodos hijos, que ser la probabilidad de prdidas totales desde ese router hasta la
fuente. Como el rbol se construye de abajo hacia arriba hay que esperar a calcular las
prdidas de los tramos superiores, para luego calcular las subsiguientes por diferencias.
10
11
conseguir que dichos paquetes le lleguen desde cualquier sitio donde se estn
produciendo.
El principal problema del ruteo multicast es el descubrimiento mutuo de emisores
y receptores. Existen dos estrategias bsicas para esto:
Modo denso: Consiste en difundir los datagramas multicast por toda la red y
esperar a que los routers que no los deseen lo indiquen explcitamente. Este
proceso se conoce como podado del rbol y se realiza mediante mensajes
prune (prune: podar en ingls).
Modo disperso: Consiste en difundir la informacin nicamente a los routers que
previamente la han solicitado. Los routers que deseen adherirse al grupo deben
indicarlo mediante una peticin explcita (mensajes Join).
El modo denso presupone que la mayora de los routers de la red estn interesados
en la emisin en curso. Es adecuado para redes pequeas con una gran capacidad
sobrante, pero no para grandes redes como es el caso de Internet o cuando el ancho de
banda es reducido. No es escalable a redes con muchos routers o con muchos grupos
multicast, pues requiere que cada router mantenga informacin de estado sobre las
emisiones que no quiere recibir.
El modo denso es el ms sencillo de implementar; fue el primero que se utiliz en
Internet y el primero que se estandariz.
El modo disperso requiere que los emisores y receptores indiquen de forma
explcita su deseo, ya que en caso contrario no se les difunde ningn datagrama multicast.
El modo disperso es el ms utilizado actualmente, pues los routers solo han de
mantener informacin de estado cuando realmente deba pasar por ellos trfico multicast,
lo cual se considera que ser en general el caso minoritario.
El protocolo DVMRP (ver [4]), es el protocolo multicast ms antiguo y ms
conocido. Existen implementaciones de DVMRP para muchos routers, y programas que
permiten convertir un host en un router DVMRP. Por ejemplo el programa mrouted es
una implementacin de DVMRP que ha sido adaptada para muchas versiones de UNIX
(Linux, FreeBSD, SunOS, SGI y HP entre otras).
DVMRP ha sido el protocolo multicast mayoritario en MBone (backbone
multicast de Internet), hasta que en 1999-2000 se inici una migracin hacia otros
protocolos ms modernos, fundamentalmente PIM-SM.
DVMRP est diseado a imagen y semejanza de RIP, el tradicional protocolo de
ruteo unicast y adolece de sus mismos problemas, por lo que no debera utilizarse en una
red grande o en produccin. Se encuentra basado en el algoritmo de vector distancia, y a
diferencia de todos los otros protocolos de ruteo multicast construye sus propias rutas
unicast de forma independiente al protocolo de ruteo unicast utilizado, repitiendo por
tanto el trabajo de ste. Su mtrica es nicamente nmero de saltos (como en RIP) y el
valor mximo permitido es de 32. No es posible por tanto crear una red DVMRP en la
que dos routers estn a ms de 32 saltos de distancia. Esto no suele ser un problema ya
que DVMRP permite hacer uso de tneles, con lo que siempre es posible reducir el
nmero de saltos.
La principal diferencia entre DVMRP y PIM-DM es que este ltimo no incluye
un algoritmo para la localizacin de las rutas ptimas hacia los emisores, sino que delega
12
esta tarea en el protocolo de ruteo unicast, cualquiera que este sea (de ah lo de Protocol
Independent). As PIM-DM puede funcionar en combinacin con OSPF. IS-IS, EIGRP,
etc. Incluso es posible utilizar PIM-DM en una red que emplee rutas estticas
nicamente. En realidad DVMRP tambin era independiente del protocolo, ya que
aunque se basa en el algoritmo del vector distancia, realiza su propio clculo de rutas
unicast, no basndose para nada en la informacin suministrada por el protocolo de ruteo
unicast cualquiera que este sea.
Por lo dems el funcionamiento de PIM-DM es bastante similar al de DVMRP.
La informacin se difunde inicialmente a todos los routers de la red por inundacin,
siendo stos los encargados de solicitar el podado (comando prune) si lo desean, y el
posterior injerto (comando graft), si ms tarde desean recibir de nuevo la emisin. La
nica diferencia entre PIM-DM y DVMRP, estriba en la inundacin inicial: mientras que
DVMRP sigue el rbol broadcast truncado, que permite una distribucin ptima en la red
llegando a todos los routers con un nmero mnimo de envos, PIM-DM utiliza
inundacin con lo que se realizan algunos envos innecesarios. Para evitar la creacin de
bucles PIM-DM utiliza la tcnica del encaminamiento por el camino inverso o RPF
check. El RPF check es un mecanismo de seguridad para evitar en lo posible la creacin
de bucles. Su funcionamiento es el siguiente: cuando un router recibe un paquete, obtiene
la direccin de origen del mismo y analiza si la interfaz por la que lo ha recibido,
coincide con la interfaz que el propio router tiene identificada como la de la ruta ptima
hacia ese destino. Si la comprobacin es satisfactoria el paquete se acepta y se
redistribuye por inundacin. Por el contrario si la comprobacin falla, es decir si el
paquete no lleg por la ruta ptima hacia su direccin de origen, el paquete es descartado
por sospecharse que se pueda tratar de un duplicado.
A continuacin se presentan las principales diferencias (algunas ya mencionadas)
entre los protocolos PIM-DM, y DVMRP:
Sin embargo el modo denso tampoco es satisfactorio, sus principales problemas son:
13
Se basa para construir rboles en la tabla de ruteo unicast. Puede usar OSPF, ISIS, EIGRP, etc., incluso rutas estticas.
Al funcionar en modo disperso no se hace inundacin de la informacin.
Problema: como localizamos a los emisores.
Solucin: establecemos un punto de encuentro donde los emisores se registren y
los receptores vayan a preguntar. El punto de encuentro es un router que
denominamos Rendezvous Point.
Es el ms complejo de los protocolos de ruteo multicast en uso actualmente.
Debido a su flexibilidad y escalabilidad PIM-SM es el protocolo que tiene ms
futuro en Internet. MBone est evolucionando hacia PIM-SM.
No vale la pena hacer aqu una descripcin detallada del funcionamiento de este
protocolo (ver [5]).
Los principales problemas que tiene el trfico multicast son los siguientes:
14
15
punto vale aclarar que el disponer de tan solo tres tarjetas de red por cada mquina,
result ser una limitante importante en los tipos de topologas que podamos implementar
para la realizacin de nuestras pruebas.
Otra ventaja significativa del Workstation, es que permite clonar mquinas
virtuales ya existentes, o sea que a partir de una nica mquina virtual es posible crear
copias idnticas diferenciales en las que solo se guardan las diferencias con la mquina
base (en la configuracin del kernel, en las distintas aplicaciones instaladas y en dems
cambios). Esto implica un ahorro de espacio en disco y en el tiempo de instalacin,
considerables.
16
Luego de instalar el software en cada mquina virtual de las puntas de nuestra red,
solo se necesit saber como enviar el stream desde la fuente y como recibirlo en cada
destino.
17
IP: multicasting.
IP: forwarding/gatewaying.
IP: multicast routing.
IP: tunneling.
PIM-SM.
18
19
problemas, aunque no los de mquinas localizadas en otras subredes a pesar de estar los
gateways correctamente configurados. Lo que nos estaba faltando era habilitar el
forwarding de los paquetes entre interfaces a nivel del Kernel de Linux, lo que se hizo
con la siguiente lnea de comando:
echo 1 > /proc/sys/net/ipv4/ip_forward
Para asegurarnos de que esta lnea se ejecutara al iniciarse el sistema tambin la
colocamos en el ya mencionado archivo /etc/rc.local.
20
21
8 Resultados Obtenidos
8.1 Red Real
Con los nmeros de secuencia obtenidos, implementamos el algoritmo propuesto
(no vale la pena entrar aqu en los detalles de la programacin, el cdigo realizado se
encuentra en el anexo 1).
La primera prueba que hicimos fue con una topologa de rbol binario como la
que se muestra a en la figura 7.
A continuacin se muestra el procedimiento que realiza en cada paso el algoritmo
para reconstruir el rbol:
Paso 0: la informacin con la que se cuenta a priori son los receptores, y los
patrones de prdida de cada uno de ellos.
22
limitados por el VMWare Workstation que solo le permite tener a cada mquina virtual un
mximo de tres adaptadores de red, y para la topologa propuesta necesitbamos que R2
tuviera cuatro interfaces. Como nos pareca fundamental probar el algoritmo en
topologas ms complicadas que un rbol binario, donde por ejemplo pueda darse el caso
de tres receptores conectados a un mismo enrutador, decidimos simular los vectores de
nmeros de secuencia con Matlab y generar prdidas aleatorias en ellos.
23
Este diseo intenta probar la robustez del algoritmo frente a las condiciones de
red que por la naturaleza inherente del mismo aparecen como ms desafiantes:
24
Paso 1: Al correr una vez la rutina agregarNodo.m, el algoritmo detecta que los
dos nodos con mayor probabilidad de prdidas comunes reales son los D1 y D2,
combinndolos en un macro nodo. Adems nuestro algoritmo calcula con excelente
precisin las prdidas de los enlaces desde el router C2 hacia estos receptores, y estima
en 4,64% las prdidas totales comunes reales entre D1 y D2, que corresponden a las
prdidas desde el router C2 hasta la fuente, esto se pone en una lnea punteada porque
hasta aqu no sabemos si se agregarn ms nodos antes de llegar a la fuente.
25
26
9 Conclusiones
A lo largo de este trabajo nos enfrentamos con problemticas relacionadas a dos
aspectos distintos. Por un lado, tuvimos que programar el algoritmo de inferencia de
rbol de Ratnasamy y McCanne y luego idear un mtodo para calcular las prdidas en
cada rama del rbol as construido. Por otro lado, la puesta en funcionamiento de la red
multicast virtual, as como la realizacin de las medidas, fueron un trabajo en si mismo
(de hecho lo que nos llev la mayor parte del tiempo insumido en la realizacin de este
trabajo).
Con respecto a la puesta en funcionamiento y medicin sobre la red multicast, se
obtuvo un buen conocimiento prctico puntual de varios de los problemas relacionados
que hay que resolver en estos casos. El ruteo multicast est llamado a ser el estndar para
la difusin masiva de contenido, sobre todo el de tiempo real, y es til tener una idea ms
27
concreta de su funcionamiento. Hay que admitir tambin, sin embargo, que el mtodo
empleado para las mediciones fue seguramente demasiado manual, y si en la prctica uno
no tiene realmente acceso directo a los receptores sino que estos pertenecen a clientes, se
hara necesaria la automatizacin del conteo de paquetes y el envo de los nmeros de
secuencia hacia la fuente, para su posterior anlisis. Adems, enviar un flujo de video,
como hicimos en nuestra experiencia, resultara altamente ineficiente por tratarse de
paquetes pesado que congestionan la red. En la prctica esto se podra realizar con los
mismos paquetes del servicio que se esta prestando (podra ser video, claro est) siempre
que sea un flujo RTP (por contar con nmeros de secuencia pero sin confirmacin) o
alguna transmisin especial con paquetes vacos.
En relacin al testeo de los algoritmos propiamente, podemos afirmar que su
desempeo fue muy bueno, tanto el de inferencia de la estructura de red como el que
ideamos nosotros para calcular los porcentajes de prdida. Sin embargo, lo que faltara
ver es su utilidad en una red real, utilidad que variara segn la movilidad que tenga la
red (los caminos de la misma), ya que lgicamente, estos algoritmos lo que intentan
modelar es la red en un determinado instante.
10 Referencias
[1] S. Ratnasamy, S. McCanne, Inference of Multicast Routing Tree Topologies and
Bottleneck Bandwidths Using End-to-end Measurements, Proc IEEE Infocom 99, 1999.
[2] J. Goyeneche, Multicast over TCP/IP HOWTO, http://jungla.dit.upm.es/~jmseyas/,
1998.
[3] RFC 2236, Internet Group Management Protocol, version 2, 1997.
[4] RFC 1075, Distance Vector Multicast Routing Protocol, 1988.
[5] RFC 2362, Protocol Independent Multicast-Sparse Mode (PIM-SM), 1998.
[6] RFC 3550, "RTP: A Transport Protocol for Real-Time Applications", 2003.
[7] Pginas MAN, http://man.he.net/ .
[8] R. Montaana, Multicast, http://www.uv.es/~montanan/.
28
*TIA.m*
*********
% Tree Inference Algorithm
clear all
close all
%Cargamos en memoria los archivos, cada uno es una columna con los nmeros
%de secuencia de los archivos recibidos por un receptor.
load rtp1awk.txt %datos obtenidos de la fuente (completos)
ref=rtp1awk;
casosPosibles=length(ref);
load rtp4awk.txt
a1=rtp4awk;
load rtp5awk.txt
a2=rtp5awk;
load rtp6awk.txt
a3=rtp6awk;
load rtp7awk.txt
a4=rtp7awk;
VectoresCargados=4; %Sin contar el de referencia
PTabMin=0.005; %Mnimas perdidas compartidas reales entre dos receptores para
juntarlos
MatBin=zeros(length(ref),VectoresCargados); %Matriz binaria donde la posicin (m,n)
indica si el paquete m se perdi en el receptor n+1
%Completo la matriz con los vectores que indican las prdidas de cada receptor
MatBin(:,1)=lostPaks(ref,a1);
MatBin(:,2)=lostPaks(ref,a2);
MatBin(:,3)=lostPaks(ref,a3);
MatBin(:,4)=lostPaks(ref,a4);
MatBin2=MatBin;
margenError=0.12;
while size(MatBin2,2)>1
MatBin2=agregarNodo(MatBin2,margenError,PTabMin);
pause
end
disp('END')
29
************
*TIAsim.m*
************
% Tree Inference Algorithm - Usando red simulada
% clear all
% close all
PTabMin=0.005; %Mnimas perdidas compartidas reales entre dos receptores para
juntarlos
%Creamos la topologia:
%Nodos interiores:
A1=[1:1:20000];
B1=enlace(A1,0.03);
disp('cre B1')
B2=enlace(A1,0.05);
disp('cre B2')
C2=enlace(B1,0.02);
disp('cre C2')
%Extremos:
B3=enlace(A1,0.20);
disp('cre B3')
C1=enlace(B1,0.25);
disp('cre C1')
C3=enlace(B1,0.30);
disp('cre C3')
C4=enlace(B2,0.35);
disp('cre C4')
C5=enlace(B2,0.20);
disp('cre C5')
D1=enlace(C2,0.25);
disp('cre D1')
D2=enlace(C2,0.30);
disp('cre D2')
VectoresCargados=7; %Sin contar el de Referencia
MatBin=zeros(length(A1),VectoresCargados); %Matriz binaria donde la posicin (m,n)
indica si el paquete m se perdi en el receptor n+1
%Completo la matriz con los vectores que indican las prdidas de cada receptor
MatBin(:,1)=lostPaks(A1,B3)';
MatBin(:,2)=lostPaks(A1,C1)';
30
MatBin(:,3)=lostPaks(A1,C3)';
MatBin(:,4)=lostPaks(A1,C4)';
MatBin(:,5)=lostPaks(A1,C5)';
MatBin(:,6)=lostPaks(A1,D1)';
MatBin(:,7)=lostPaks(A1,D2)';
MatBin2=MatBin;
margenError=0.15;
while size(MatBin2,2)>1
MatBin2=agregarNodo(MatBin2,margenError,PTabMin);
end
disp('END')
******************
*AgregarNodo.m*
******************
function MatBin2=agregarNodo(MatBin,margenError,PTabMin)
largo=size(MatBin,2);
casosPosibles=size(MatBin,1);
Pab=zeros(largo);
PAB=zeros(largo);
PTab=zeros(largo);
MatBin2=[];
for m=1:largo
for n=1:largo
if m~=n
AND=MatBin(:,m).*MatBin(:,n);
Pab(m,n)=sum(AND)/casosPosibles;
PAB(m,n)=sum(MatBin(:,m)-AND)/casosPosibles;
end
end
end
%Matriz de true shared losses
for m=1:largo
for n=m+1:largo
PTab(m,n)=(Pab(m,n)*PAB(n,m)+PAB(n,m)*PAB(m,n) + PAB(m,n)*Pab(m,n) +
Pab(m,n)^2-Pab(m,n))/(Pab(m,n) + PAB(n,m)+PAB(m,n)-1);
end
end
31
32
33
*************
*lostPaks.m*
*************
function lostPaks=lostPaksV2(ref,paks)
lostPaks=ref*0;
pointer=1;
%------Loop principal que busca paquetes perdidos------%
for m=1:length(paks)
while paks(m)~=ref(pointer)
lostPaks(pointer)=1;
pointer=pointer+1;
end
pointer=pointer+1;
end
%Condicin de borde final: relleno si se perdieron paquetes justo al final
if paks(length(paks))~=ref(length(ref)),
pointer=pointer+1;
lostPaks(pointer:length(lostPaks))=1;
end
34
}
traceoptions {
flag all {
enabled: true
}
}
}
}
protocols {
igmp {
enabled: true
interface eth0 {
vif eth0 {
enabled: true
}
}
interface eth1 {
vif eth1 {
enabled: true
}
}
traceoptions {
flag all {
enabled: true
}
}
}
}
protocols {
pimsm4 {
enabled: true
interface eth0 {
vif eth0 {
enabled: true
/* dr-priority: 1 */
/* alternative-subnet 10.40.0.0/16 */
}
}
interface eth1 {
vif eth1 {
enabled: true
/* dr-priority: 1 */
/* alternative-subnet 10.40.0.0/16 */
}
36
}
interface register_vif {
vif register_vif {
/* Note: this vif should be always enabled */
enabled: true
}
}
static-rps {
rp 192.168.0.3 {
group-prefix 224.0.0.0/4 {
/* rp-priority: 192 */
/* hash-mask-len: 30 */
}
}
}
bootstrap {
enabled: true
cand-bsr {
scope-zone 224.0.0.0/4 {
/* is-scope-zone: false */
cand-bsr-by-vif-name: "eth0"
bsr-priority: 1
hash-mask-len: 30
}
}
cand-rp {
group-prefix 224.0.0.0/4 {
/* is-scope-zone: false */
cand-rp-by-vif-name: "eth0"
rp-priority: 192
rp-holdtime: 150
}
}
}
switch-to-spt-threshold {
/* approx. 1K bytes/s (10Kbps) threshold */
enabled: true
interval-sec: 100
bytes: 102400
}
traceoptions {
flag all {
37
enabled: true
}
}
}
}
/*
* Note: fib2mrib is needed for multicast only if the unicast protocols
* don't populate the MRIB with multicast-specific routes.
*/
protocols {
fib2mrib {
enabled: true
}
}
/*
* See xorp/mibs/snmpdscripts/README on how to configure Net-SNMP in your host
* before uncommenting the snmp section below.
* Also check that the "bgp4_mib_1657.so" exists in the correct location.
*/
/*
*protocols {
* snmp {
*
mib-module bgp4_mib_1657 {
*
abs-path: "/usr/local/xorp/mibs/bgp4_mib_1657.so"
*
}
* }
*}
*/
38