Merge remote-tracking branch 'refs/remotes/origin/main'

Signed-off-by: federico polidoro <federico.nicolas.polidoro@gmail.com>

Signed-off-by: federico polidoro <federico.nicolas.polidoro@gmail.com>
This commit is contained in:
2024-10-18 07:40:37 -03:00
14 changed files with 760 additions and 15 deletions

View File

@@ -0,0 +1,23 @@
---
title: "Panel Sistema Gestion Hotelera"
author: "Luca Troiano, Francisco Rose Cerna, Federico Polidoro"
---
![](./header.png)
# 1. Consultas SQL
# 2. Funcionalidad de Drill Down y Drill Up
Al seleccionar una Cadena de hoteles, se muestran los distintos hoteles que pertenecen a esa cadena. Y al seleccionar uno de ellos se muestran los datos especificos de ese en particular.
![](https://fedesrv.ddns.net/files/$/Ld5RF)
# 3. Indicadores Visuales
Cuando
# 4. Sistema Autenticacion
Nosotros estamos usando SHA512 para hashear la contraseña una vez llega al backend (no lo hacemos en el front porque este debe tener una coneccion segura usando TLS) Y comprobamos el hash generado por la contraseña ingresada si coinside con el usuario con el mismo hash. En caso de esto ser verdadero devolvemos un JWT al front el cual se almacena en el LocalStorage de la pagina y cuando se intenta acceder al a los componentes del panel se pide una request POST con en su cuerpo un campo token con el valor del JWT almacenado. En caso de coinsidir con uno que tengamos almacenado se redireccionará hacia el panel.
# 5. Tecnologia y Herramientas
| Back | Front | DB |
|------+-------+-----|
|Aspnet| React |MySql|

Binary file not shown.

After

Width:  |  Height:  |  Size: 69 KiB

Binary file not shown.

127
Discreta/ResumenParcial1.md Normal file
View File

@@ -0,0 +1,127 @@
---
title: Resumen Parcial 1
author: Federico Polidoro
---
# Clase 1
## Grafos
Los grafos pueden ser descriptos como Graficos compuestos por nodos y vertices que conectan dichos nodos. Tales Vertices pueden o no ser Dirijidos.
## Grados
Estos consisten en el numero de la cantidad de aristas a la que esta conectado un vertice o nodo. Pero en el caso de un grafo dirijido vamos a tener un grado de entrada y otro de salida los cuales se cuentan de forma individual las aristas que llegan o salen de ese nodo.
## Ciclos
Es cuando una arista va de un vertice al mismo vertice.
## Tipos de Grafos
Existen diferentes tipos de grafos estos son:
- Dirijido
Es un Grafo en el cual las aristas tienen una direccion predefinida.
- Completo
Es un Grafo donde todos los vertices estan interconectados entre si directamente.
- Ciclo
Es un Grafo donde todos los vertices estan conectados de forma secuencial por ejemplo el a-b-c-d-al Similar al token ring.
- Rueda
Este es como el Grafo ciclo pero hay un nodo extra que esta conectado en el centro con los demás.
- Estrella
Este es similar a como funciona el 802.11 donde todos los vertices estan directamente conecrados con un vertice central.
- Regular
Es un Grafo donde todos los vertices tienen el mismo grado.
- Conexo
Es un Grafo donde no hay vertices sueltos sino que es posible crear un camino de cualquier vertice a cualquier otro.
## Matrices
### Adyacencia
Siempre es cuadrada e contiene una relacion entre los vertices y con cuales estan relacionados
Por ejemplo en un triangulo.
| | A | B | C |
| A | 0 | 1 | 1 |
| B | 1 | 0 | 1 |
| C | 1 | 1 | 0 |
### Incidencia
Una matriz de incidencia tiene la relacion entre el vertice y la arista volviendo al ejemplo
| |e1 |e2 |e3 |
| A | 1 | 1 | 0 |
| B | 0 | 1 | 1 |
| C | 1 | 0 | 1 |
En esa tabla se ve que la arista 1 se conecta entre el nodo a y c, la 2 con a y b y la 3 con b y c. Dado que el ejemplo queria mostrar un triangulo.
# Clase 2
## Grafo Plano
Este es un grafo el cual sus aristas no se cortan entre si al momento de la graficacion. Se puede re ubicar todos los componentes mientras no se alteren sus relaciones, para poder mostrar si es plano o no.
## Arboles
Consiste de un Grafo Conexo sin ciclos. Existe un tipo de arbol dirijido conocido como arbol con raiz
# Clase 3
## Arboles Recubridores
En un marco teorico en el cual necesitas conectar todos los vertices usando la menor cantidad de conexiones posibles lo que estas buscando es una estructura de arbol. Un Arbol recubridor se puede observar en grafos como un subgrafo con forma de arbol y que contiene todos los vertices del grafo dado.
## Minimales
Para ciertas aplicaciones interesa conocer el arbol recubridor de peso minimo, dandole un peso a cada union lo que busca es uno el cual tenga el menor costo de intalacion. (no se si me explico). Tambien existen los maximales que son literalmente lo opuesto.
## Busqueda de Profundidad
Es un algoritmo de busqueda en el cual se empieza elijiendo los nodos más superficiales ( a -> b -> c )
una vez que llegamos al final volvemos para arriba 1 nodo a la vez buscando si hay algun nodo que no hayamos encontrado para ir hacia ese en caso de no haberlo vamos 1 más para arriba
## Busqueda a lo Ancho
Es un algoritmo que intenta recorrer todos los nodos posibles lo que hacemos es tener dos arrays de nodos vistos y lo que hacemos es que primero añadimos los nodos que estan directamente conectados con el nodo que estamos parados al array de nodos vistos y añadimos el nodo en el que estamos parados al array de recorrido. Lo que sigue es ir al siguiente nodo y hacer lo mismo hasta llegar a nuestro destino final. El criterio para recorrer los nodos es que agarramos los que son más cercanos en numero de saltos al nodo inicial primero.
# Clase 4
## Recurrencias
El concepto de la recurrencia viene de lo que en matematicas se llama una sucesion, es decir, un conjunto ordenado de numeros.
# Clase 5
## Recurrencias Lineales
El ejemplo que se da en la clase es un: $a_n = c * a_{n-1}$ donde c es un coeficiente constante
## Primer orden
son las que el offset es de 1 $\pm$
## Segundo orden
es cuando la diferencia entre los offset es 2 $\pm$ . Entre el qde menor offet y el de mayor.
# Clase 6
## Recurrencias No Homogeneas
Una recurrencia no homogenea es cuando dentro de la secuencia esta contiene un elemento el cual no depende de la recurrencia por ejemplo un
$a_n = 2a_{n-1} + 3n$
No es Homogenea mientras que un
$a_n = 2a_{n-1}$
Si lo es, y si quisiera hacer esta ultima en una no homogenea podria hacer:
$a_n = 3a_{n-1} + 3n$
# Clase 7
## Enteros Divisibilidad
Se puede decir que un numero A es divisible por B y tambien por -B, o que B es multiplo de A.
## Primos
De la primaria sabemos que un numero primo es tal que solo puede dividirse por $\pm$ si mismo o $\pm$ 1 y todos los que no cumplen con eso son conocidos como **Compuestos**.
## Teorema de la Aritmetica
Todo numero entero mayor a 1 se puede escribir como producto de numeros primos en forma unica.
## Nota
- MCD,
Maximo comun Divisor
- MCM,
Minimo comun Multiplo

Binary file not shown.

View File

@@ -2,57 +2,202 @@
#+author: Martin Luraschi, Luca Troiano, Roy Herrera, Federico Polidoro #+author: Martin Luraschi, Luca Troiano, Roy Herrera, Federico Polidoro
#+options: num:nil toc:nil #+options: num:nil toc:nil
* 1. - Dar los primeros cinco términos de una sucesión que verifique la relación derecurrencia a_n = n a_{n-1}. * 1. - Dar los primeros cinco términos de una sucesión que verifique la relación derecurrencia a_n = n a_{n-1}.
- a_1 = 1
- a_2 = 2 * a_1 = 2 * 1 = 2
- a_3 = 3 * a_2 = 3 * 2 = 6
- a_4 = 4 * a_3 = 4 * 6 = 24
- a_5 = 5 * a_4 = 5 * 24 = 120
* 2. - Dar los primeros seis términos de una sucesión de términos positivos que verifique la relación de recurrencia a_n = a_{n-1} / a_{n-2}. * 2. - Dar los primeros seis términos de una sucesión de términos positivos que verifique la relación de recurrencia a_n = a_{n-1} / a_{n-2}.
- a_1 = 1
- a_2 = 2
- a_3 = a_2 / a_1 = 2 / 1 = 2
- a_4 = a_3 / a_2 = 2 / 2 = 2
- a_5 = a_4 / a_3 = 1 / 2 = 1/2
- a_6 = a_5 / a_4 = (1/2) / 1 = (1/2)
* 3. - Dar los primeros cinco términos de una sucesión que verifique la relación de recurrencia a_n = a_{n-1} + n^2. * 3. - Dar los primeros cinco términos de una sucesión que verifique la relación de recurrencia a_n = a_{n-1} + n^2.
1. a^1 = a^{1-1} + 1^2 = 1 + 1 = 2
2. a^2 = a^{2-1} + 2^2 = 2 + 4 = 6
3. a^3 = a^{3-1} + 3^2 = 6 + 9 = 15
4. a^4 = a^{4-1} + 4^2 = 15 + 16 = 31
5. a^5 = a^{5-1} + 5^2 = 31 + 25 = 56
* 4. - Dar los primeros cinco términos de una sucesión que verifique la relación de recurrencia a_n = r a_{n-1}. * 4. - Dar los primeros cinco términos de una sucesión que verifique la relación de recurrencia a_n = r a_{n-1}.
1. a^1 = r * a^{1-1} = r*1 = r
2. a^2 = r * a^{2-1} = r*r = r^2
3. a^3 = r * a^{3-1} = r*r^2 = r^3
4. a^4 = r * a^{4-1} = r*r^3 = r^4
5. a^5 = r * a^{5-1} = r*r^4 = r^5
* 5. - Dar los primeros cinco términos de una sucesión que verifique la relación de recurrencia a_n = (n+1)a_{n-2}. * 5. - Dar los primeros cinco términos de una sucesión que verifique la relación de recurrencia a_n = (n+1)a_{n-2}.
1. a_1 = (1+1)a_{1-2} = 2 * a_{-1}
2. a_2 = (2+1)a_{2-2} = 3 * a_{0}
3. a_3 = (3+1)a_{3-2} = 4 * a_{1}
4. a_4 = (4+1)a_{4-2} = 5 * a_{2}
5. a_5 = (5+1)a_{5-2} = 6 * a_{3}
Esto verifica que hay una relacion de recurrencia porque todas los posibles terminos a_n siempre van a incluir un a_{n-2} vease si extiendo el a_5
\begin{center}
a_5 = (5+1)a_{5-2} = 6 * a_{3} = 6 * 4 * a_{1} = 6 * 4 * 2 * a_{-1} = ...
\end{center}
* 6. - Dar los primeros seis términos de una sucesión que verifique la relación de recurrencia a_n = (n+1)a_{n-2} tal que a_0 = 2. * 6. - Dar los primeros seis términos de una sucesión que verifique la relación de recurrencia a_n = (n+1)a_{n-2} tal que a_0 = 2.
0. a_0 = 1 * a_{-2} = 2
1. a_1 = (1+1)a_{1-2} = 2 * a_{-1}
2. a_2 = (2+1)a_{2-2} = 3 * 2 = 6
3. a_3 = (3+1)a_{3-2} = 4 * a_1
4. a_4 = (4+1)a_{4-2} = 5 * 6 = 30
5. a_5 = (5+1)a_{5-2} = 6 * 4 * a_1
* 7. - Dar los primeros seis términos de una sucesión que verifique la relación de recurrencia a_n = n a_{n-1} tal que a_3 = 18. * 7. - Dar los primeros seis términos de una sucesión que verifique la relación de recurrencia a_n = n a_{n-1} tal que a_3 = 18.
1. a_2 = 6
2. a_3 = 3 * a_{3-1} = 18
3. a_4 = 4 * a_{4-1} = 4 * 18 = 72
4. a_5 = 5 * a_{5-1} = 5 * 72 = 360
5. a_6 = 6 * a_{6-1} = 6 * 360 = 2160
6. a_7 = 7 * a_{7-1} = 7 * 2160 = 15120
* 8. - Resolver las relaciones de recurrencia * 8. - Resolver las relaciones de recurrencia
- a. a_n-2/3 a_{n-1} = 0, n \geq 1; a_0 = -1 - a. a_n-2/3 a_{n-1} = 0, n \geq 1; a_0 = -1
\begin{center}
a_{n} = \frac{2}{3} a_{n-1}
a_{1} = -\frac{2}{3}
a_{2} = \frac{2}{3} \left( -\frac{2}{3} \right) = -\frac{4}{9}
a_{3} = -\frac{8}{27}
\end{center}
- b. 2 a_n+1-3 a_n = 0, n \geq 0; a_0 = 1 - b. 2 a_n+1-3 a_n = 0, n \geq 0; a_0 = 1
\begin{center}
a_{n+1} = \frac{3}{2} a_{n}
a_{n} = \frac{3}{2} a_{n-1}
a_{n} = \left( \frac{3}{2} \right)^n a_{0}
a_{n} = \left( \frac{3}{2} \right)^n
\end{center}
- c. 2 a_n+1-3 a_n = 0, n \geq 0; a_0 = -2 - c. 2 a_n+1-3 a_n = 0, n \geq 0; a_0 = -2
\begin{center}
a_{n} = (-2) \left( \frac{3}{2} \right)^{n}
\end{center}
- d. a_n+1 - 5a_n + 6a_{n-1} = 0 n \geq 1; a_0 = 0, a_1 = 2 - d. a_n+1 - 5a_n + 6a_{n-1} = 0 n \geq 1; a_0 = 0, a_1 = 2
\begin{center}
r^2 - 5r + 6 = 0
(r - 2)(r - 3) = 0
a_n = A * 2^n + B * 3^n
a_0 = A * (2)^0 + B * (3)^0 = A + B = 0
A = -B
a_1 = A * (2)^1 + B * (3)^1 = A2 + B3 = 2
A2 + B3 = 2
(-B)2 + B3 = 2
B = 2
A = -B = -2
a_n = -2*2^n+2*3^n
\end{center}
- e. a_n+1 = 4a_n - 5a_{n-1}, n \geq 1; a_0 = -1, a_1 = 3 - e. a_n+1 = 4a_n - 5a_{n-1}, n \geq 1; a_0 = -1, a_1 = 3
\begin{center}
Uh...
\end{center}
- f. a_n = 4 a_{n-1} - 4a_{n-2}, n \geq 2; a_0 = 6, a_1 = 8 - f. a_n = 4 a_{n-1} - 4a_{n-2}, n \geq 2; a_0 = 6, a_1 = 8
\begin{center}
a_n = (6-2n) * 2^n
\end{center}
- g. a_n = 2a_{n-1} - a_{n-2}, n \geq 2; a_0 = 1, a_1 = 2 - g. a_n = 2a_{n-1} - a_{n-2}, n \geq 2; a_0 = 1, a_1 = 2
\begin{center}
a_n = 1 + n
\end{center}
* 9. - Dada la relación de recurrencia 8 a_{n+2} + 4 a_{n+1} - 4 a_n = 0. n \leq 0; Indicar si las siguientes sucesiones pueden ser solución: * 9. - Dada la relación de recurrencia 8 a_{n+2} + 4 a_{n+1} - 4 a_n = 0. n \leq 0; Indicar si las siguientes sucesiones pueden ser solución:
- a. a_n = 3 (-1)^n - a. a_n = 3 (-1)^n
[[./formula que estaba en formato chinhenhonshin hecha por roy 1.png]]
- b. a_n = 3 (-1/2)^n +1 - b. a_n = 3 (-1/2)^n +1
[[./formula que estaba en formato chinhenhonshin hecha por roy 2.png]]
- c. a_n = 4 (-1)^n + (1/2)^n - c. a_n = 4 (-1)^n + (1/2)^n
[[./formula que estaba en formato chinhenhonshin hecha por roy 3.png]]
- d. a_n = -4 (1)^n + (1/2)^n - d. a_n = -4 (1)^n + (1/2)^n
[[./formula que estaba en formato chinhenhonshin hecha por roy 4.png]]
En caso afirmativo, justificar e indicar cuáles serían las condiciones iniciales que
hay que imponer para obtener dicha solución. En caso negativo, justificar.
* 10 - Dada la relación de recurrencia an+2 an = 0, indicar si las siguientes sucesiones pueden ser solución: En caso afirmativo, justificar e indicar cuáles serían las condiciones iniciales que hay que imponer para obtener dicha solución. En caso negativo, justificar.
* 10 - Dada la relación de recurrencia a_{n+2} a_n = 0, indicar si las siguientes sucesiones pueden ser solución:
- a. a_n = 3(1)^n - a. a_n = 3(1)^n
- b. a_n = 3(1/2)^n + 1 [[./formula que estaba en formato chinhenhonshin hecha por roy 5.png]]
- c. a_n = 7 + 2(1)^n
- d. a_n = 1/3 2^n
- e. a_n = 8
En caso afirmativo, justificar e indicar cuáles serían las condiciones iniciales que - b. a_n = 3(1/2)^n + 1
hay que imponer para obtener dicha solución. En caso negativo, justificar. [[./formula que estaba en formato chinhenhonshin hecha por roy 6.png]]
- c. a_n = 7 + 2(1)^n
[[./formula que estaba en formato chinhenhonshin hecha por roy 7.png]]
- d. a_n = 1/3 2^n
[[./formula que estaba en formato chinhenhonshin hecha por roy 8.png]]
- e. a_n = 8
[[./formula que estaba en formato chinhenhonshin hecha por roy 9.png]]
En caso afirmativo, justificar e indicar cuáles serían las condiciones iniciales que hay que imponer para obtener dicha solución. En caso negativo, justificar.
* 13 - Una inversión de $100 iniciales recibe un interés de 10% anual, capitalizado mensualmente. Plantear una relación de recurrencia para calcular el dinero acumulado al cabo de n meses. * 13 - Una inversión de $100 iniciales recibe un interés de 10% anual, capitalizado mensualmente. Plantear una relación de recurrencia para calcular el dinero acumulado al cabo de n meses.
La ecuación de recurrencia necesaria para calcular la ganancia de dinero luego de n meses es:
r = 0.1/12
r = 0.00833
a^n = {1+r} * a^{n-1}
Hay que tener en cuenta que a^0 = 100
* 18 - Hallar una relación de recurrencia para a_n, el número de formas de avanzar n metros dando pasos de 1 o 2 metros. Resolverla. * 18 - Hallar una relación de recurrencia para a_n, el número de formas de avanzar n metros dando pasos de 1 o 2 metros. Resolverla.
La relación de recurrencia, en este caso, será:
\begin{center}
a^n = a^(n-1) + a^(n-2)
\end{center}
Se considerará que a^0 = 1, debido a que, como no hay mas metros que avanzar, la única opción para llegar a destino es no moverse También se considerará que a^1 = 1, debido a que la única opción para llegar a destino es avanzar 1 metro De acuerdo con lo anterior podemos resolver la secuencia planteada
2. a^2 = a^(2-1) + a^(2-2) = 1 + 1 = 2
3. a^3 = a^(3-1) + a^(3-2) = 2 + 1 = 3
4. a^4 = a^(4-1) + a^(4-2) = 3 + 2 = 5
5. a^5 = a^(5-1) + a^(5-2) = 5 + 3 = 8
6. a^6 = a^(6-1) + a^(6-2) = 8 + 5 = 13
* 24 - Resolver las siguientes relaciones de recurrencias no homogéneas
- a. a_n - 3a_{n-1} = 5 7^n; a_0 = 2.
- b. a_{n+1} = a_n + 2^n; a_0 = 0.
- c. a_n = a_{n-1} + 3; a_0 = 1.
- d. a_{n+1} + 2a_n + a_{n-1} = n; a_0 = 1, a_1 = -1.
* 25 - Un préstamo de $2500 se debe pagar en cuotas fijas mensuales de $300, con un interés mensual de 8%. Si an es el dinero adeudado en el mes n, plantear una relación de recurrencia para an. ¿En cuántos meses se saldará la deuda? * 25 - Un préstamo de $2500 se debe pagar en cuotas fijas mensuales de $300, con un interés mensual de 8%. Si an es el dinero adeudado en el mes n, plantear una relación de recurrencia para an. ¿En cuántos meses se saldará la deuda?
\begin{center}
a(n) = a(n-1) * 1,08 - 300
\end{center}
En el mes 15 la deuda queda saldada

4
comunicaciones2/.gitattributes vendored Normal file
View File

@@ -0,0 +1,4 @@
apunte_parcial1.pdf filter=lfs diff=lfs merge=lfs -text
recreadoej1.png filter=lfs diff=lfs merge=lfs -text
simplificacionTCP2Redes.png filter=lfs diff=lfs merge=lfs -text
simplificacionTCP.png filter=lfs diff=lfs merge=lfs -text

47
comunicaciones2/16_10.md Normal file
View File

@@ -0,0 +1,47 @@
# Rip
Es un protocolo para poder descubrir vecinos y definir las rutas segun la cantidad de saltos al destino
Carateristicas (guitarra martin:)
1. Robusteza,
2. Simpleza,
Es un protocolo adaptativo.
Las tablas se publican cada 30s, y si se cae un router en ese entonces no me voy a enterar hasta que pasen otros 30s para tener las nuevas tablas de routeo, el problema con esto es que se dedica mucho ancho de banda a actualizar las tablas.
## Desventajas de rip
Es un protocolo que publica las tablas cada 30s,
Soluciones propuestas:
- Argayo: publicar cada 90s (?)
Con esto lo que arreglamos es la congestion pero además añadimos que en cualquier momento un router puede publicar en cualquier momento que un router se cayó por broadcast.
# OSPF
Es un Protocolo de estado del enlace, Son protocolos que definen la ruta siguiendo metricas las cuales son definidas por los *Sistemas Autonomos* ( **LACNIC** en nuestro caso ).
Las metricas pueden ser:
1. Ancho de Banda.
2. Cantidad de Saltos. (por si el router es viejo).
3. Cualquier otra metrica que se me ocurra
Pero esto solo lo puede hacer de forma interna de un sistema autonomo.
Lo que hace este protocolo es enviar las actualizaciones contra el estado anterior de la red, Osea, cuando se cae un router lo que sucede es que el primero que se entere de eso va a comunicar a los demás que esta caido. o cuando se detecta un router nuevo se da el dato. Pensalo como funciona AV1 cuando haces streaming de video.
---...---
# Pregunta trampa del profe
> **ES MEJOR RIP O OSPF?!?!??**
La realidad es que rip posee una configuracion más simple, pero tiene la contra de que poluye demaciado la red con tabla de ruteo.
Mientras que OSPF si bien tiene menos consumo, no es compatible con RIP, si hay un ruter en la cadena que no tiene soporte de OSPF hay que usar RIP.
No es una solucion que se toma la ligera. mamita no se escribir.
# RIP2
Es como Rip pero solo envia los cambios, sigue sin necesitar un sistema autonomo y continua utilizando la logica de la menor cantidad de saltos.
# BGP

48
comunicaciones2/2.org Normal file
View File

@@ -0,0 +1,48 @@
#+title:2
* Paquete de internet
tambien conocido como datagrama, este posee un encabezado y un payload. no esta orientado a la coneccion por lo que se comunica por meddiaos ya establecidos.
No se envian el orden sino que va con el enrotulamiento que se pueda y el receptor tiene que mantener los paquetes en memoria parra reconstruir la informacion y pasarla a la capa superior
* Ipv4
** header lenght (hlen)
Se usa para sabe desde que bit hasta que bit llega el header
** Type of service
Define una descripcion de lo que tiene el paquete.
** Total Leght
Contiene la longitud total del paquete
** Source Ip / direccion Destino
Ip de origen, Direccion de destino
** Padding
Informacion de relleno cualquiera del disco dde tu pc.
** CheckSum
Cada uno de los bytes de los renglones de la trama se pasan a bits, se suman y al final de invierten. Esto se comprueba contra el campo de checksum del paquete.
** TTL
Es el tiempo de vida de un paquete o a cantidad de saltos que le quedan.
* Tabla de Ruteo
Si en tu tabla de ruteo no tenes una forma de alcanzar a un destino pero se tiene coneccion contra
* Ipv6
** que se quitó
- Header Lenght, \\
~Total tienen todos el mismo tamaño~
- Checksum, \\
~Se deriva a otras capas de la coneccion~
** Link Mtu
Es la capa de enlace de datos.
** Path Mtu
Minimo Mtu ente origen y destino.
* notas
- Mayor Esfuerzo.

View File

@@ -0,0 +1,339 @@
#+title: Resumen parcial 1
#+author: Federico Polidoro
* Clase 1 - Ethernet/Internet
** Ethernet
- Entrega con el mejor esfuerzo \\
El hardware no proporciona informacion sobre si el paquete fue recibido.
- Tecnologia de difusion \\
Todas las estaciones comparten un canal
- Control contra colisiones \\
Usa CSMA/CD
*** Usa los medios de..
1. Utp (T)
2. Coaxial (C o un numero solo | CR)
3. Fibra Optica (F | S | L | E)
*** Trama ethernet
| preambulo | destino | origen | tipo | payload | CRC |
| 8oct | 6oct | 6oct | 2oct | 64 a 1500 oct | 4 oct |
** MAC
Son las direcciones fisicas del hardware que se conecta a la red todos los terminos que te parezcan que se puedan referir a esto son tratados por ogial ( MAC, direccion fisica, hardware unicast addr)
Los tipos de direcciones pueden ser:
- Unidifucion, \\
Pensa en cuando te conectas a un socket solo.
- Difusion, \\
Como cuando mandas un paquete a 192.168.1.255 y el router lo envia por broadcast a todos los dispositivos conectados.
- Multidifucion, \\
Envia a las direcciones especificadas
*** Esquemas de direccionamiento
- Estatico, \\
addr por el fabricante
- Configurable, \\
addr por el usuario
- Dinamico, \\
addr por el software en startup,
** Arquitectura de red
Su objetivo es abstraer los detalles de la red.
esto lo logra a traves de aplicaciones de nivel de sistema opetativo. o a nivel de red.
Para lograrlo a nivel de red se utlizan ruteadores. Estos son dispositivos que se encuentran entre la coneccion de una red con otra, *Los ruteadores utilizan la red de destino no la maquina para rutear el paquete*
*** Propiedades
- Conectividad fin a fin.
- Transparencia
** Modelos
*** OSI
Las capas no definen el protocolo sino funciones de comunicacion que pueden ser cumplidas por los protocolos
Las capas no necesitan saber como funcionan las demás solo como envian o reciben los los datos entre ellas.
*** TCP/IP
Usa menos capas que el modelo OSI
1. Capa de Acceso de red.
2. Capa de Internet.
3. Capa de Transporte.
4. Capa de Aplicación.
** Servicios a Nivel de Red
*** Sin Conexión de entrega de paquetes
- Se rutea basandose en la direccion.
- Cada Paquete se Rutea por separado.
- No garantiza entrega.
- No garantiza orden de llegada.
*** Transporte de flujo confiable
- Establese conexión entre las computadoras.
- Trabaja con acuse de recibo.
** Tecnologia
- Internet no es un nuevo tipo de red, \\
Es un metodo de interconexión.
- Redes WAN Redes LAN, \\
WAN : Mas lentas, Delay mayores, Altas tasas de errores \\
LAN : Rápidas, Bajo Delay, Bajas tasas de errores
* Clase 2 - ARP/RARP
** Direcciones IP
Su objetivo es que cualquier computadora se pueda conectar con cualquier otra.
Las direcciones ipv4 tienen una longitud de 32 bits.
- Son similares a las direcciones mac
- Unicas por host en el internet
- Busca un ruteo eficiente
- Se dividen en dos partes: \\
Host y Red
*** Caracteristicas deseables
- Compacta
- Universales
- Independientes del hardware
*** Direcciones A,B y C
| class | netid | hostid |
|-------|-------|--------|
| A | 8bit | 24bit |
| B | 16bit | 16bit |
| C | 24bit | 8bit |
*** Direcciones
Estas representan una conexión a la red mas no una computadora.
- Cuando el hostid = 0 nos referimos a la red (192.168.1.0)
- Cuando el hostid = 255 representa la ip de broadcast (192.168.1.255)
Al rutear se usa la netid
*** direcciones especiales
- 0.0.0.0 Este host
- red y todo 1 broadcast
- 127.0.0.1 loopback
** Ipv6
*** Limitaciones v4
las ipv4 ya estan agotadas. y no se pueden diferenciar los datagramas udp de los tcp cuando estan encriptados
*** Funcionalidad
- Nuevo header, \\
minimiza el procesamiento
- Más direcciones, \\
Busca eliminar la necesidad de tener nat
- IPsec, \\
Provee Integridad y auth de datos
- ICMPv6, \\
Mejora las interacciones entre nodos
*** Direcciones
Permite 6.6 * 10^{23} direcciones.
y los tipos de direcciones pueden ser:
- Unicast, \\
hacia un dispositivo.
- Multicast, \\
para grupos, nodos o interfaces.
- AnyCast, \\
Unicast a varios dispositivos
** Arp
Para que dos maquinas se comuniquen deben de conocer las direcciones fisicas. El usuario lo que conoce es la direccion ip. por lo que arp en base a una direccion ip te da una direccion mac. Utiliza un broadcast a los dispositivos para que el que tiene la ip coinsidente con la del destino responda con su direccion mac.
*No* es utilizado por ipv6.
Para evitar hacer muchas peticiones se almacena una tabla ARP y normalmente se eliminan las entradas cada 20 mins.
** Rarp
Es lo contrario a arp, con una direccion mac te devuelve una direccion ip. usado en maquinas sin disco duro, muy antiguo.
Reemplazado por Dhcp.
* Clase 3 - ICMP - IP
** Paquetes
Tambien conocidos como datagramas son un servicio no orientado a la coneccion el cual consiste de un header y un payload.
** Headers
Es de una longitud de _20bytes_ en *ipv4*, mientras que *ipv6* es de _40bytes_.
*** Comparacion
En ipv6 se quito la checksum, la flag, el header lenght.
** Mtu
*M*aximun *T*ransfer *U*nit\\
Consiste en el maximo tamaño que puede tenern un datagrama en octetos.
- Link Mtu, \\
define el limite en la capa de datos.
- Path Mtu, \\
define el limite con lo maximo que pueden ofrecer los nodos intermedios entre el emisor y receptor.
- Mtu min ipv6, \\
1280 bytes
** Fragmentacion Ipv4
Los Routers dividen los datagramas en fragmentos que se rutean individualmente. En ipv6 no se fragmentan.
un caso donde se emplea la fragmentacion es cuando un router "a" Tiene un Mtu de 4000 y otro "b" tiene uno de 400 y se quiere enviar un paquete de 4000 octetos. lo que sucede es que el paquete se tiene que fragmentar en 10 fragmentos que se rutean del router "a" al "b". Donde el router "a" se encarga del fragmentado.
*** Reensamblado
Se realiza en el destino final cuando llega el primer fragmento. si el datagrama no se puede completar este se descarta.
** ICMP
Es un mecanismo de reporte de errores utilizado por los routers e informan solo al origen. (internamente funcionan sobre ip)
* Clase 4 - Tcp/ip Core - Udp
** Udp vs Tcp
| Udp | Tcp |
|----------------------------|-------------------------|
| No orientado a la conexion | Orientado a al conexion |
| Mejor Esfuerzo | Lento pero Confiable |
** Udp
Es un protocolo que no maneja conexiones ni tiene interes en que los datos lleguen en forma,
#+begin_quote
La responsabilidad de la correccion de errores corresponde a la aplicacion.
#+end_quote
Trabaja en la capa de transporte.
El maximo tamaño de un datagrama es de 65535 bytes. el header ip es de 20/40 bytes y el udpo es de 8 bytes
*** CheckSum
Es opcional pero recomendada, lo de opcional viene porque udp esta pensado en que las implementaciones operen con la menor cantidad de trabajo computacional.
*** Socket
Un define un punto extremo de la coneccion en el caso de udp/tcp es la direccion ip + puerto.
** Puertos
- Los menores a 1024 son *well known*. En linux los unicos procesos que pueden utilizar estos puertos son los que tienen acceso root.
- Los mayores a 1024 los puede usar cualquiera y pueden tener cualquier servicio.
** Tcp
Utiliza Ip para transmitir datos. Ofrese un servicio de transferencia de dfatos eficiente y confiable a los programas. Compensa las perdidas y retardos sin sobrecargar redes ni enrutadores.
*** Caracteristicas
- Full Duplex (transfiere en ambas direcciones)
- Fiable
*** Confiable
Tiene un handshake de 3 direcciones para asegurar la confiabilidad.
1. El receptor envia ACK cuando llegan los datos
2. El emisor inicia un timer con la emision.
3. Si no llega ACK se Reenvian los datos.
*** Ciclo Tcp
1. Establecimiento de conexion.
2. Transferencia de datos.
3. Cierre de conexion.
*** Viaje en Redondo - Tiempo
\begin{center}
RTT = A * RTT + (1-A) NRTT
\end{center}
Siendo que NRTT sea el ultimo RTT medido
* Clase 6 - SubRedes
** Proxy Arp
Es cuando hay varias subredes y una red "original" y una maquina (M) en la red original la cual le manda una request ARP a la maquina (N) en la subred 1 al estar en otra red la request no le va a llegar. pero como el router de la subred 1 si se entera de la request ARP este le va a reeinviar la request a las maquinas que tiene en la red, en caso de que una responda el router se va a hacer pasar por la maquina que respondio y le va a enviar la direccion mac de la maquina (N) a (M)
** Mascaras
Es una palabra de 32 bit donde los 1 represwentan los bits del netid y los 0 los del hostid. No necesitan ser contiguos pero se recomienda.
En una red tipo c tenemos que tener en cuenta que el ultimo octeto tenemos que definir cuantos bits vamos a usar para diferenciar las subredes
entonces si tenemos una mascara /24 y tenemos que hacer 6 subredes para 25 usuarios hariamos
calcular cantidad de host:
\begin{center}
$2^5 - 2 = 30$
\end{center}
Calculamos la longitud de la mascara de red:
\begin{center}
$32 - 5$
\end{center}
y como vamos a usar 5 bits para los hosts nos quedan 3 (osea 8-5) bits para definir hasta 8 subredes de 30 hosts.
** Vlsm
Con este metodo podemos subnetear para que se refleje la cantidad exacta de hosts necesarios en cada punto de la red. El apunte tambien lo describe como direccionamiento jerarquico.
*** Pre requisitos
1. verificar que los enrutadores con los que se cuenta todos soportan protocolos que permiten VLSM
2. Los enrutadores deben de basarse en "la mayor coinsidencia" Notese que mientras más grande es el numero de bits significativos compartidos entre redes menor es el grupo de ips a las que dirije. entonces la mejor ruta es la que cuenta con el /n mayor
*** Ejemplo simple VLSM
En una empresa con 3 sucursales y una casa central unidas por una red wan
- Londres: 28 hosts.
- n. york: 12 hosts.
- Tokio: 12 hosts.
- Casa central: 60 hosts.
Se Asigna la direccion 192.168.10.0/24
Como solo necesitamos 3 subredes vamos a dejar 2 bit para direccionamiento\\
|#0|192.168.10.0/26|
|#1|192.168.10.64/26|
|#2|192.168.10.128/26|
|#3|192.168.10.192/26|
Entonces para #0:
|1^{er} host|192.168.1.1|
|ultimo host|192.168.1.62|
|broadcast |192.168.1.63|
Si tomamos las de #1 y las asignamos para la sede de londres tendriamos que como londres solo necesita 28 hosts podemos usar una mascara de /27 (32-5) sabiendo que 2^5 = 32. esto nos deja con 3 bit de direccionamiento para poder usar los hosts que sobran en otra subred
#1.0: Londres: 192.168.1.64/27
|1^{er} host|192.168.1.65|
|ultimo host|192.168.1.94|
|broadcast |192.168.1.95|
La sede de n.york necesita 12 hosts y en #1.1 tenemos 32-2 hosts disponibles por lo que subnateamos otra vez con mascara de /28
#1.1.0
|IP Red|192.168.1.96/28|
|1^{er} host|192.168.1.97|
|ultimo host|192.168.1.110|
|broadcast |192.168.1.111|
y para la subred de tokio usamos #1.1.1
|IP Red|192.168.1.112/28|
|1^{er} host|192.168.1.113|
|ultimo host|192.168.1.126|
|broadcast |192.168.1.127|

Binary file not shown.

BIN
comunicaciones2/recreadoej1.png LFS Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.