Está en la página 1de 21

UNIVERSIDAD

NACIONAL DE LOJA

INGENIERA EN ELECTRNICA
Y TELECOMUNICACIONES
SEXTO MODULO

ANLISIS ESTADSTICO DE
REDES DE DATOS
INFORME
DOCENTE: ING. JUAN PABLO CABRERA
Por:

NGEL EDUARDO TANDAZO G.


LOJA ECUADOR

TALLER DE ANLISIS ESTADSTICO DE REDES DE DATOS


Introduccin
Con el propsito de evaluar el comportamiento de un diseo para una determinada red de
telecomunicaciones, se hace necesario generar un modelo que permita calcular los parmetros ms
relevantes que la caracterizan. Bajo condiciones normales, la red mueve gran cantidad de informacin
que determina el comportamiento de la misma. El clculo de variables como el trfico en la red,
probabilidad de bloqueo y utilizacin de la red son parte fundamental en la planeacin de la red y
establecen los objetivos de calidad sobre los cuales esta se mantendr.
Por otro lado, en los escenarios reales, el escenario disponible para almacenar los paquetesenespera
para ser procesados en un dispositivo de interconectividad, est limitado. Eso hace que los paquetes
que no puedan ser almacenados en el mismo buffer se puedan perder, ya que IP es un protocolo en
el que la transmisin de paquetes no est garantizada.
Como una fase inicial, se pretende caracterizar el trfico de una red, calculando y graficando algunos
parmetros importantes. En general, algunas de las tareas involucradas en este laboratorio son:

Leer y procesar un archivo de datos organizados en reas columnas

Uso de las funciones estadsticas, como el clculo de la media, varianza, etc.

El taller consta de varias partes, como se darn cuenta los ejercicios propuestos son muy similares,
solo se trabajan con diferentes datos, una vez realicen el primer script de Matlab, los siguientes scipt
son modificaciones pequeas del primer programa.
En el informe no olviden etiquetar y nombrar todas las grficas, incluyendo las unidades que se
manejan.

Parte 1: Trafico de Poisson


Supongamos que queremos predecir el retardo y desempeo en un buffer de un enlace de red que
opera a una capacidad de X Mbps. La situacin se ilustra en la siguiente figura, donde los paquetes
son presentados como cajas rectangulares

C
LLEGADA

SALIDA
Figure 1. Esquema del proceso a realizar

UNIVERSIDAD NACIONAL DE LOJA

Para llevar a cabo un anlisis de este enlace, necesitaremos hacer suposiciones sobre el trfico que
llega al enlace. La descripcin de trafico debe especificar dos cosas, una es el espacio entre llegadas
de los paquetes y la otra el tamao de los paquetes (en bytes) que llegan al buffer.
Un modelo muy popular para representar el nmero de llegadas de paquetes en un intervalo de
tiempo es el proceso de Poisson. En un proceso de Poisson la tasa , es el nmero de (arribos) eventos
en un intervalo de tiempo.
En un proceso de Poisson, el tiempo entre dos (arribos) eventos sigue una distribucin exponencial.
En los siguientes ejercicios se pide que generen trfico de Poisson para permitir estudiar sus
propiedades.
Los archivos que se usaran en la primera parte, tienen el siguiente formato:
Columna 1: nmero de la secuencia (nmero de paquete recibido, iniciar en 1)
Columna 2: tiempo (en microsegundos)
Columna 3: tamao del paquete (en bytes)

EJERCICIO 1: GENERACIN DE TRFICO DE POISSON

EJERCICIO 1: GENERACIN DE TRFICO DE POISSON


Considere un patrn de llegadas de paquetes de flujo de datos, donde todos los paquetes tienen un
tamao constante de 100bytes y en donde las llegadas de paquetes siguen un proceso de Poisson. La
tasa promedio del trfico del flujo es de 10Mbps.

Determinar la taza de este proceso de Poisson

Escribir un programa en Matlab que pueda generar una muestra de la llegada en base al
parmetro calculado

Sugerencia: la funcin de Matlab poissrnd

El intervalo de tiempo para la generacin de la trama (traza, muestra) ser de 100 segundos

Verifique la media de la velocidad de bits del flujo

Calcular la media y la varianza de los tiempos entre la llegada de eventos (arribos)


consecutivos. Compare con los valores tericamente esperados.

UNIVERSIDAD NACIONAL DE LOJA

CONCEPTOS NECESARIOS EN ESTA SECCIN


Comando poissrnd.- este comando nos genera nmeros aleatorios de la funcin de Poisson
R = poissrnd (LAMBDA) devuelve una matriz de nmeros al azar elegido de la Distribucin de
Poisson con parmetro LAMBDA. El tamao de R es el tamao de LAMBDA. R = poissrnd
(LAMBDA, M, N,...) o R = poissrnd ([... M, N,] LAMBDA,) devuelve un M-por-N-por-... matriz.
Ref. Tomada del softw are de Matlab 2012b, seccin ayuda poissrnd
Comando random.- este comando nos generada aleatoriamente matrices aleatorias de una
distribucin especificada. R = random (NOMBRE, A) devuelve una matriz de nmeros al azar
elegido de la distribucin de probabilidad de un parmetro especificado por el nombre conel
parmetro valores de A. Nombre se optara como Poisson para hallar la distribucin aleatoria
de Poisson.
Ref. Tomada del softw are de Matlab 2012b, seccin ayuda random
Comando mean.- Este comando devuelve el valor medio. Para los vectores, media (x) es el
valor medio de los elementos de X. Para matrices, media (x) es un vector fila que contiene el
valor medio de cada columna.
Ref. Tomada del softw are de Matlab 2012b, seccin ayuda mean
Comando var.- Este comando devuelve el valor de varianza. Para los vectores, var (x) es la
varianza de los elementos de X.
Ref. Tomada del softw are de Matlab 2012b, seccin ayuda var
Comando xlswrite.- este comando nos permite escribir en un archivo de Excel datos desde
Matlab. Se usa xlswrite(archivo, matriz a guardar)
Ref. Tomada del softw are de Matlab 2012b, seccin ayuda xlsw rite

Poisson (datos y clculos)


Teora Poisson
A () le corresponde la velocidad de llegadas en unidad de tiempo en este caso sern
segundos. La media de llegadas es () por el tiempo. La expresiones de Poisson sern las
siguientes:
() () =

(varianza) 2 =
UNIVERSIDAD NACIONAL DE LOJA

Calculo de ()
Para obtener en relacin de ms de un millos de datos a 100 segundos calculamos ().
100 bytes sera el tamao del paquete
1byte=8bits
800 bits
1048576 datos a procesarse
* nos pide el calculo de cada dato por segundo entonces quedaria:
10 Megabytes
taza promedio
1048576 bytes por segundo de taza promedio
tamao/tazapromedio x=(100/1048576)*10^7 bytes por segundo
lambda=

95,37

DESARROLLO DEL EJERCICIO


Determinar la tasa ()
De los datos sabemos que el tamao de cada paquete es: 100 bytes.
El promedio del trfico de flujo es de 10 Mbps que equivalentes a bps seran:
10 (1024)(1024) = 10485760
Por peticin de valores en bytes su valores de divisin o multiplicacin seria de 1024 bytes, donde
1byte=8bits.
Calculando (), con el uso de una regla de tres obtendramos lo siguiente:
10Mbps

1s

100 bytes

100(1)
= 9,56674
10485760

Programa en Matlab para la generacin de la muestra de llegada en funcin del valor ()


El siguiente cdigo, lo que datos que se obtendrn son los siguientes:
1. Clculo del valor de ()
2. Generacin de una matriz de 3 columnas que contenga los datos de la siguiente manera:
a. 1ra columna ser la secuencia
b. 2da columna contendr el tiempo en segundos
c. 3ra columna el tamao del paquete, una constante de 100bytes
d. Se genera una matriz en la cual se acumula solo el valor de Poisson generado en ese
instante.
Observacin: Usando el siguiente cdigo y generando dicha cantidad de datos, para rellanar toda una
columna de Excel y aproximarnos al mximo a los 100 segundos, el tiempo estimado que se us para
el clculo del mismo fue de 3 horas y media aproximadamente. Cantidad de datos=1048.576 datos x
3 columnas).
UNIVERSIDAD NACIONAL DE LOJA

CDIGO EN MATLAB
clc;
% generacin de la trama de 100 segundos
%taza de paquete es de 100 bytes
%tasa promedio 10Mbytes=10M*1024K*1024bytes=10485760bytes=tp
%regla de 3 para hallar tp= valor enviado en un segundo
%tp ----------> se enva en un segundo
%100 bytes----> en cuanto tiempo se enva
%x=(100bytes)/(1048760bytes)=9.536743*exp(-07)
%lambda=x*10exp(06)
tzp=10*1024*1024; %tasa promedio
Pesopaq=100; %peso del paquete ser una constante
vlambda=(100/(tzp))*10^7; % valor de lambda para clculo de Poisson
nfpoisson=0;
acupoisson=0;
for i=1:1048576
if i==1
npoisson=random('Poisson',vlambda); %generacin de un numero
aleatorio de Poisson con valor lambda
acupoisson=npoisson; %acumulamos el valor aleatorio hallado
% se crea una matriz de 3 columnas [numero muestra, valor de
Poisson, tamao del paquete]
acu=[i,npoisson,100];% acumulacin del valor de Poisson en la
matriz
nfpoisson=npoisson;
else
npoisson=random('Poisson',vlambda); %generacin de un numero
aleatorio de poisson con valor lambda
acupoisson=[acupoisson;npoisson];% acumulamos en matriz 1xn los
valores de Poisson hallados
%como ya hay un numero anterior se le suma el nuevo para hacer un
%valor creciente
nfpoisson=nfpoisson+npoisson; %creando el valor de Poisson en forma
creciente por suma
% se crea una matriz de 3 columnas [Fila anterior;[numero muestra,
valor de Poisson, tamao del paquete]]
acu=[acu;i,nfpoisson,100];% acumulacin el valor dela fila anterior
y concatena el nuevo debajo de ella
end
end

Figure 2. Valor calculado de Lambda. Grafica obtenida del software de Matlab

UNIVERSIDAD NACIONAL DE LOJA

Figure 3 Tablas de datos generados con los valores a la izquierda del vector de 3 dimensiones (secuencia, tiempo, tamao); a
la derecha los valores aleatorios de Poisson en determinado tiempo. Graficas obtenidas del resultado en Microsoft Excel 2013

Concluida la etapa de generacin de datos para las tramas, procedemos a guardar el archivo en un
documento de Excel como respaldo de informacin para ahorrar tiempo.
CDIGO EN MATLAB
%guardando el paquete en un archivo de Excel
%guardando en Excel la matriz de 3 columnas
xlswrite('C:\Users\Usuario\Documents\MATLAB\Datospoisson.xlsx',acu,'A','A1'
);
%guardando en Excel la matriz de los datos de Poisson generados
aleatoriamente
xlswrite('C:\Users\Usuario\Documents\MATLAB\solopoisson.xlsx',acu,'A','A1')
; %guardando en Excel la matriz de 1 columna

Procedemos a calcular a varianza y la media del vector de los datos aleatorios creados.
CDIGO EN MATLAB
Mediapoissonfinal=mean(acupoisson(:,1)) %calculo de la media de los valores
de poisson generados aleatoriamente
Varpoissonfinal=var(acupoisson(:,1)) % calculamos el valor de la varianza
de poisson generados aleatoriamente

UNIVERSIDAD NACIONAL DE LOJA

Figure 4. Median y Varianza de los datos aleatorios de Poisson. Grafica obtenida del Software de Matlab 2013b

Mediapoisson=mean(acu(:,2)) %calculo de la media de los valores de Poisson


de los valores acumulados o suma sucesiva
Varpoisson=var(acu(:,2)) % calculamos el valor de la varianza de Poisson de
los valores acumulados o suma sucesiva

Figure 5 Media y Varianza del tiempo en segundos (10^5). Grfica Obtenida del software de Matlab 2013b.

%graficacion del vector de valores acumulados o suma sucesiva


plot(acu(:,2))
grid on
title('Valores Acumulados de Poisson generados')

Figure 6. Grafica del tiempo seria el valor acumulado. Grfica Obtenida del software de Matlab 2013b.

%graficacion del vector de valores aleatorios de Poisson


figure
plot(acupoisson)
grid on
title('Valores de Poisson generados')

UNIVERSIDAD NACIONAL DE LOJA

Figure 7 Graficas de los valores aleatorios generados por Poisson. Grfica Obtenida del software de Matlab 2013b.

%graficacion de los 3 parametros que pide el formato


[secuencia,tiempo,tamao]
figure
plot(acu)
grid on
title('Valores de Poisson generados')
legend('Secuencia del valor','Acumulado de Poisson','Tamao del paquete')
%en la grfica acumulado de Poisson se hara referencia al tiempo.

Figure 8. Grafica de los valores de la matriz de dimensin 3 (secuencia, tiempo, tamao) . grafica obtenida de Matlab 2013b.

UNIVERSIDAD NACIONAL DE LOJA

EJERCICIO 2: TRFICO DE POISSON A DIFERENTES ESCALAS


En este punto, se creara muestras de diferentes longitudes, y comparan en graficas a diferentes
escalas de tiempo.

Considere la traza de Poisson del ejercicio anterior

Crear tres grficos que muestran los datos generados por la traza, visto en diferentes escalas

de tiempo. Cada grafico tiene 100 puntos de datos


Grafique el contenido de los vectores en tres grficos por separado, con el nmero de paquetes en el
eje X, y el nmero de bytes en el eje Y. los puntos de datos deben ser representados como barras
verticales (por ejemplo, utilizando la funcin bar() de Matlab).

Grafica 1: generar un vector con 100 elementos, donde cada elemento almacena el nmero de bytes
de la traza de Poisson que llega en un intervalo de 1s.

1er elemento: #bytes llegados, el intervalo [0,1s]

2do elemento: #bytes en el intervalo [1,2s]

DESARROLLO DEL EJERCICIO A 1 SEGUNDO


En nuestro cdigo para poder generar una grfica con valores limitados a 1 segundo, dentro del ciclo
for; limitamos un valor exponencial de bsqueda de tiempo dentro de la matriz de 3 por milln de
daos generada, el cual nos permitir obtener datos como en que secuencia se ha llegado al tiempode
1s=10^6; y as sucesivamente para obtener los 100 datos para nuestra grfica, del paquete generado
de 1048576 datos de tiempo obtenidos. Se hace referencia que 100*10^6 sera igual a 100 segundos.

Dentro del for buscamos el avance del tiempo de milln a milln que sera para nosotros
en este caso segundo a segundo.
Al hallar ese valor obtenemos tambin el valor de su secuencia.
El valor para la grfica seria el valor de la secuencia multiplicada por el valor del tamao
del paquete que en este caso es una constante que seria 100, o a la vez podramos sumar
todos los valores hasta ese lmite dado. Y as sucesivamente hasta los 100 datos.
Hay que tomar en cuenta que a partir del segundo dato o en el segundo mayor igual a 2
se le restara el paquete anterior, porque de no restar nos quedara una grfica casi lineal
creciente y no unas barras con valores de cada uno en su intervalo
UNIVERSIDAD NACIONAL DE LOJA

10

Programa en Matlab para la generacin y creacin de las grficas a 1 segundo:


%% para la Grafica 1
% en este caso para pasar a 1s el exponencial ser a la 6 pero este
% exponencial servir para limitar paquetes a 1 segundo de bsqueda para
armar la grafica
a=1;
vecmult=0;
for a=1:100
cont2=a*10^6; %exponencial que asimila los segundos
valA1=0;
i=1;
for i=1:cont2
valA1=acu(i,2); % reviso el acumulado fila a fila y agrego este valor
if valA1>=cont2 % reviso si he llagado a mi limite ejm 1s, 2s 100s
break % obligo a terminar mi for interno y el externo continuara
end
end
[I,J]=find(acu==valA1); % al valor hallado busco la secuencia del mismo,
este estar almacenado dentro de I
if length(I)==2 % consulto si la secuencia contiene mas de un elemento
veperado=I(2,:); % tomo elultimo elemento que correponde a la secuencia
exacta
else
veperado=I; % acumulo la secuencia esperada
end
% acumulacion del vector del valor multiplicativo por el tamao del paquete
if vecmult==0 % para valor inicial igual a cero
vecmult=veperado; % reemplazo el cero por su primer valor
else
vecmult=[vecmult;veperado]; % agrego fila a fila el siguiente valor
end
end
%multiplicando el valor por el tamao de paquetes por la secuencia y nos
dar la obtencin de 1 segundo; este valor ser para la grfica de barras
%100 barras de 1 segundo cada una
vecmultaf=100*vecmult; %multiplimos la secuencia por el tamao
i=1;
for i=1:100 % se inicia un ciclo para obtener las 100 muestras
rest=vecmultaf(i,1); %pasamos el valor de i,1 a una variable
if i==1 % si es el primer valor lo reemplazamos en vez de un cero a la
matriz
barras=rest; % la matriz barras contendr el valor a graficar
else % cuando sea el valor mayor a 2 se procede a concatenar filas
cambio=rest-(vecmultaf((i-1),1)); % restamos el valor actual del
anterior
barras=[barras;cambio]; % concatenamos en el vector el valor actual
y los anteriores
end
end
%Graficando las Barras con 1 segundo entre muestra
bar(barras)
grid on
title('Grafica con intervalos de 1 segundo')

UNIVERSIDAD NACIONAL DE LOJA

11

Figure 9. Grfico con 100 dato correspondiente a 100 segundos. Grafica obtenida del software de Matlab2012b.

Grafica 2: generar un vector con 100 elementos, donde cada elemento almacena el nmero de bytes,
la traza del trfico de Poisson que llegan en un periodo de tiempo de 100ms. Se selecciona al azar el
tiempo de inicio.

Elija un punto de partida al azar, ejemplo t=30s

Elemento 1: # bytes desde el intervalo [30,30,1s]

Elemento 2: # bytes desde el intervalo [30,1 30,2s]

DESARROLLO DEL EJERCICIO A 100 MILISEGUNDOS


En nuestro cdigo para poder generar una grfica con valores limitados a 100 milisegundos,
procedemos a tomar el mismo cdigo utilizado en la GRAFICA 1, y le modificamos simplemente el
valor exponencial el cual nos queda relacionado as:
Si 1s=10^6 por lo tanto para milisegundos seria 1ms=10^5
Procedemos a usar todo el paquete de datos generados y extraemos valores a milisegundos
segn la relacin que estamos haciendo
A continuacin se describe del proceso para obtener los 100 datos en milisegundos para la grfica de
barras que queremos obtener.

UNIVERSIDAD NACIONAL DE LOJA

12

Buscamos el valor en milisegundos dado por la relacin que hicimos de tiempo


Al hallar ese valor obtenemos tambin el valor de su secuencia.
El valor para la grfica seria el valor de la secuencia multiplicada por el valor del tamao
del paquete que en este caso es una constante que seria 100, o a la vez podramos sumar
todos los valores hasta ese lmite dado. Y as sucesivamente hasta los 100 datos.
Hay que tomar en cuenta que a partir del segundo dato o en el segundo mayor igual a 2
se le restara el paquete anterior, porque de no restar nos quedara una grfica casi lineal
creciente y no unas barras con valores de cada uno en su intervalo

Programa en Matlab para la generacin y creacin de las grficas a 100 milisegundos:


%% Para la Grafica 2
%Generacin de las trazas con una dimensin de 100ms
% en este caso para pasar a 100ms el exponencial ser a la 5
a=1;
vecmult2=0;
for a=1:100
cont22=a*10^5; % exponencial que asimila los milisegundos
valA12=0;
i=1;
for i=1:cont22
valA12=acu(i,2); % reviso el acumulado fila a fila y agrego este valor
if valA12>=cont22
break
end
end
[I,J]=find(acu==valA12); C
if length(I)==2
veperado2=I(2,:);
else
veperado2=I;
end
% acumulacin del vector del valor multiplicativo por el tamao del paquete
if vecmult2==0 % para valor inicial igual a cero
vecmult2=veperado2; % reemplazo el cero por su primer valor
else
vecmult2=[vecmult2;veperado2]; % agrego filas del siguiente valor
end
end
%multiplicando el valor por el tamao de paquetes y obteniendo los datos
%para 100 milisegundos para obtener el valor para grafica de barras
%100 barras de 100 milisegundos cada una
vecmultaf2=100*vecmult2; % multiplico la secuencia por el tamao
i=1;
% este for es para no crear una matriz creciente de valor si no para
obtener una matriz con datos en sus intervalos dados
for i=1:100 % se inicia un ciclo para obtener las 100 muestras
rest2=vecmultaf2(i,1); %pasamos el valor de i,1 a una variable
if i==1 % si es el primer valor lo reemplazamos en vez de un cero a la
matriz
barras2=rest2; % la matriz barras contendr el valor a graficar
else % cuando sea el valor mayor a 2 se procede a concatenar filas
cambio=rest2-(vecmultaf2((i-1),1)); % restamos el valor actual del
anterior
barras2=[barras2;cambio]; % concatenamos en el vector el valor
actual y los anteriores
end

UNIVERSIDAD NACIONAL DE LOJA

13

end
%Graficando las Barras con 100 milisegundos entre muestra
bar(barras2)
grid on
title('Grafica con intervalos de 100 mili segundos')

Figure 10. Grfico de barras con muestras obtenidas a milisegundos. Grafica obtenida del software de Matlab2012b.

UNIVERSIDAD NACIONAL DE LOJA

14

Grafica 3: Generar un vector con 100 elementos, donde cada elemento almacena el nmero de bytes,
la traza del trfico de Poisson que llegan un periodo de tiempo de 10 ms. Seleccione el tiempode inicio
al azar.

Elija un punto de partida al azar, ejemplo t=50.2s

Elemento 1: # Bytes desde el intervalo [50.2, 50.21s]

Elemento 2: # bytes desde el intervalo [50.21, 50.22s]

DESARROLLO DEL EJERCICIO A 10 MILISEGUNDOS


Haciendo uso del cdigo inicial o del cdigo de la GRAFICA 2, para poder generar una grfica con
valores limitados a 10 milisegundos, modificamos el parmetro de bsqueda exponencial el cual nos
dar una relacin as:
Si 100ms=10^5 por lo tanto para 10milisegundos seria 10ms=10^4
Procedemos a usar todo el paquete de datos generados y extraemos valores a milisegundos
segn la relacin que estamos haciendo
Y aplicamos similares procesos como los que hicimos en las Grficas 1 y 2, para obtener los 100 datos
en milisegundos para la grfica de barras que queremos obtener.
Programa en Matlab para la generacin y creacin de las grficas a 10 milisegundos:
%% Para la Grafica 3
%Generacin de las trazas con una dimensin de 10ms
% en este caso para pasar a 10ms el exponencial ser a la 4
a=1;
vecmult3=0;
for a=1:100
cont3=a*10^4; % exponencial que har tomar valores en milisegundos
valA3=0;
i=1;
for i=1:cont3
valA3=acu(i,2); % reviso el acumulado fila a fila y agrego este valor
if valA3>=cont3
break
end
end
[I,J]=find(acu==valA3); % extraigo el valor de secuencia
if length(I)==2
veperado3=I(2,:);
else
veperado3=I;

UNIVERSIDAD NACIONAL DE LOJA

15

end
% acumulacin del vector del valor multiplicativo por el tamao del paquete
if vecmult3==0 % para valor inicial igual a cero
vecmult3=veperado3; % reemplazo el cero por su primer valor
else
vecmult3=[vecmult3;veperado3]; % agrego filas del siguiente valor
end
end
%multiplicando el valor por el tamao de paquetes y obteniendo los datos
%para 10 milisegundos para obtener el valor para grafica de barras
%100 barras de 10 milisegundos cada una
vecmultaf3=100*vecmult3;
i=1;
for i=1:100 % se inicia un ciclo para obtener las 100 muestras
rest3=vecmultaf3(i,1); %pasamos el valor de i,1 a una variable
if i==1 % si es el primer valor lo reemplazamos en vez de un cero a la
matriz
barras3=rest3; % la matriz barras contendra el valor a graficar
else % cuando sea el valor mayor a 2 se procede a concatenar filas
cambio3=rest3-(vecmultaf3((i-1),1)); % restamos el valor actual del
anterior
barras3=[barras3;cambio3]; % concatenamos en el vector el valor
actual y los anteriores
end
end
%Graficando las Barras con 10 milisegundos entre muestra
bar(barras3)
grid on
title('Grafica con intervalos de 10 mili segundos')

Figure 11 Grafica de muestras obtenidas a 10 milisegundos. Imagen obtenida del software de Matlab 2012b.

UNIVERSIDAD NACIONAL DE LOJA

16

A continuacin se muestran las tres graficas de las cuales se puede apreciar la diferencia entre ellas
ya que cada una de ellas cumple con:
1ra Grafica con valores obtenidos a 1 segundo
2da Grafica con valores obtenidos a 100 milisegundos
3ra Grafica con valores obtenidos a 10 milisegundos

Figure 12. Grafica 1 obtenida con valores a 1 segundo

Figure 13 Grafica 2 obtenida con valores a 100 milisegundos

Figure 14 Grafica 3 obtenida con valores a 10 milisegundos

UNIVERSIDAD NACIONAL DE LOJA

17

EJERCICIO 1.3 TRAFICO CON TAMAO DE PAQUETES CON


DISTRIBUCIN EXPONENCIAL
Para esta parte, el tamao de paquetes que llegan no es constante, considere un patrn de llegadade
paquetes de un flujo de datos, donde los paquetes l legan con una separacin igual de 80us
(microsegundos), y con una distribucin, del tamao de paquete, exponencial con parmetro de
tamao promedio de

= 100

CONCEPTOS NECESARIOS EN ESTA SECCIN


Comando exprnd.- este comando genera arreglos al azar de la distribucin exponencial.
R = exprnd (MU) devuelve una matriz de nmeros al azar elegido de la distribucinexponencial
con un parmetro . El tamao de R es el tamao de MU.
Ref. Tomada del softw are de Matlab 2012b, seccin ayuda exprnd

DESARROLLO DEL EJERCICIO


Determinar los parmetros
De los datos sabemos que el tamao promedio es: 100 bytes.
Tiempo de la secuencia es igual a: 80us
Para conseguir los datos aleatorios exponenciales en nuestro caso generaremos un total de
informacin similar al ejercicio 1. Esto sera un total de filas de 1048576
Para lo consiguiente del orden de nuestro exponencial seria
= ( , , )

Una vez definidos los parmetros, procedemos con el cdigo el cual se desarrolla de la siguiente
manera:
Generacin de la matriz exponencial
Concatenacin dentro de un ciclo repetitivo de los valores
o Secuencia
o Tiempo
o Valor exponencial aleatorio
Respaldamos datos en Excel
Obtenemos valores de media y varianza, tambin graficamos los vectores
Programa en Matlab para la generacin de una distribucin exponencial:
% generacin de la trama exponencial

UNIVERSIDAD NACIONAL DE LOJA

18

% valor final en Excel 1048576


clc;
nexponencial=exprnd(100,1048576,1);%creacin de ms de milln de datos
exponenciales
% el for es para generar una matriz de 3 columnas con los datos [secuencia,
tiempo acumulado, exponencial generado]
for i=1:1048576
if i==1
acuexponencial=nexponencial(i,1); %acumulamos el valor aleatorio
hallado
% se crea una matriz de 3 columnas [numero muestra, tiempo
acumulado, valor exponencial]
sepaq=80; % tamao de la separacin del paquete
acuexp=[i,sepaq,acuexponencial];% acumulacin del valor exponencial
en la matriz
nfpoisson=nexponencial;
else
sepaq=sepaq+80; % tamao de la separacion del paquete
acuexponencial=nexponencial(i,1); %acumulamos el valor aleatorio
hallado
acuexp=[acuexp;i,sepaq,acuexponencial];% acumulacion el valor dela
fila anterior y concatena el nuevo debajo de ella
end
end

Figure 15. Matriz de datos obtenidos desde Matlab [secuencia, tiempo, valor exponencial aleatorio].
Graficas obtenidas desde Microsoft Excel 2013

%guardando el paquete en un archivo de Excel


xlswrite('C:\Users\Usuario\Documents\MATLAB\Datosexponenciales.xlsx',acuexp
,'A','A1');

UNIVERSIDAD NACIONAL DE LOJA

19

Mediaexponencial=mean(acuexp(:,3)) %calculo de la media de los valores


exponenciales
Varexponencial=var(acuexp(:,3)) % calculamos el valor de la varianza de los
valores exponenciales

Figure 16. Media y Varianza de los valores exponenciales aleatorios obtenidos. Grafica obtenida de Software Matlab 2012b.

Mediaacuulado=mean(acuexp(:,2)) %calculo de la media de los valores de


tiempo acumulado
Varacumulado=var(acuexp(:,2)) % calculamos el valor de la varianza de
tiempo acumulado

Figure 17. Media y Varianza del tiempo acumulado. Grafica obtenida del Software Matlab 2012b.

% graficamos los valores exponenciales hallados


plot(acuexp(:,3))
grid on
title('Valores exponenciales generados','x')
% graficamos los valores almacenados en la matriz [secuencia, tiempo,
exponencial hallado]

UNIVERSIDAD NACIONAL DE LOJA

20

Valores exponenciales generados


1400

1200

1000

800

600

400

200

10

12
5

x 10

Figure 18. Grafica de los valores aleatorios exponenciales, generados en el proceso, aproximadamente a 1 mi lln de datos.
Grafica obtenida del Software de Matlab 2012b.

figure
plot(acuexp)
grid on
title('Valores exponenciales generados')
legend('Secuencia del valor','Acumulado del Exponencial','Valor exponencial
Aleatorio')

Valores exponenciales generados

x 10

Secuencia del valor


Acumulado del Exponencial
Valor exponencial Aleatorio

10

12
5

x 10

Figure 19. Grafica de la matriz generada [secuencia, tiempo, exponencial aleatorio].


Grafica obtenida del Software de Matlab 2012b.

UNIVERSIDAD NACIONAL DE LOJA

21

También podría gustarte