Alejandro Mi Blog !!♥

miércoles, 20 de septiembre de 2017

Ciclo While  ⧭



El Bucle While o Bucle Mientras es un ciclo repetitivo basado en los resultados de una expresión lógica, se encuentra en la mayoría de los lenguajes de programación estructurados. El propósito es repetir un bloque de código mientras una condición se mantenga verdadera.

¿Cómo funciona un ciclo While?

para comprender mejor el funcionamiento del ciclo While, pongamos un buen ejemplo, imaginemos que por algún motivo queremos pedirle a un usuario una serie de números cualquiera y que sólo dejaremos de hacerlo cuando el usuario ingrese un número mayor a 100. como vemos, aquí no no podríamos utilizar un ciclo For, pues no tenemos ni idea de cuándo cuando al usuario se le va a ocurrir ingresar un número mayor que 100, es algo indeterminado para nosotros, sin embargo el ciclo While nos permite ejecutar una acción de forma infinita hasta que se cumpla alguna condición y específica, en nuestro caso sería que el número ingresado sea mayor a 100.  De modo que el usuario no se ingresa de manera sucesiva los siguientes números 1, 50, 99, 49, 21, 30, 100... nuestros programas no finalizará, pues ninguno de estos números Es mayor que 100, sin embargo si no se ingresa el número 300, el programa finalizará inmediatamente.


Vamos a ver ahora cómo es la sintaxis de ciclo While en c++,  Así estaremos listo para usarlo en nuestro programa de ahora en adelante Cada vez que lo necesitemos.

la sintaxis de un ciclo While es incluso más simple y "Legible" que la de ciclo for en c++, pues simplemente requerimos tener Clara una condición de parada. En realidad, en la mayoría de las lenguajes de alto nivel la manera de escribir un ciclo While (la sintaxis) es incluso muy similar, así que con tan sólo tener bien Clara una condición de finalización para el ciclo tendremos Prácticamente todo hecho.


                            Pseudocódigo  






                        Diagrama de Flujo 


       

                                     

Ciclo While

Estructura









Modelo TCP/IP

                                          MODELO TCP/ IP MODELO


La Internet TCP/IP son una serie de normas que detallan como deben comunicarse los ordenadores y el modo de interconectar las redes para permitir que diferentes sistemas puedan cooperar compartiendo sus recursos

Resultado de imagen para imagenes de modelo tcp/ip

Fue desarrollado por una comunidad de investigadores de una agencia gubernamental norteamericana: ARPA (Advanced Research Projects Agency) bajo petición del Departamento de Defensa Norteamericana con objeto de que los sistemas multifabricante de Defensa pudieran dialogar entre sí y se implementó por primera vez en Diciembre del 69 denominándose ARPAnet.

El nombre TCP / IP Proviene de dos protocolos importantes de la familia, el Transmission Control Protocol (TCP) y el Internet Protocol (IP). Todos juntos llegan a ser más de 100 protocolos diferentes definidos en este conjunto.

Imagen relacionada


El TCP / IP es la base del Internet que sirve para enlazar computadoras que utilizan diferentes sistemas operativos, incluyendo PC, minicomputadoras y computadoras centrales sobre redes de área local y área extensa. TCP / IP fue desarrollado y demostrado por primera vez en 1972 por el departamento de defensa de los Estados Unidos, ejecutándolo en el ARPANET una red de área extensa del departamento de defensa.

Algunos de los motivos de su popularidad son:
·              Independencia del fabricante 
·              Soporta múltiples tecnologías 
·              Puede funcionar en maquinas de cualquier tamaño 
·              Estándar de EEUU desde 1983 
La arquitectura de un sistema en TCP/IP tiene una serie de metas: 
§              La independencia de la tecnología usada en la conexión a bajo nivel y la arquitectura del ordenador 
§              Conectividad Universal a través de la red 
§              Reconocimientos de extremo a extremo 
§              Protocolos estandarizados 

Del conjunto de protocolos TCP/IP algunos actúan a 'bajo nivel' como por ejemplo: IP, TCP, UDP, etc. suministrando las funciones necesarias a otras aplicaciones de 'alto nivel'.
    Otros protocolos realizan tareas específicas como transferencias de ficheros de correo electrónico, o sencillamente averiguar qué usuarios se encuentran conectados a un sistema determinado.

    Inicialmente TCP/IP se utilizó masivamente para conectar minis con mainframes, lo que dio lugar a los servicios TCP/IP más tradicionales.

Una red TCP/IP transfiere datos mediante el ensamblaje de bloques de datos en paquetes, cada paquete comienza con una cabecera que contiene información de control; tal como la dirección del destino, seguido de los datos. Cuando se envía un archivo por la red TCP/IP, su contenido se envía utilizando una serie de paquetes diferentes. El Internet Protocol (IP), un protocolo de la capa de red, permite a las aplicaciones ejecutarse transparentemente sobre redes interconectadas. Cuando se utiliza IP, no es necesario conocer que hardware se utiliza, por tanto ésta corre en una red de área local.

El Transmission Control Protocol (TCP); un protocolo de la capa de transporte, asegura que los datos sean entregados, que lo que se recibe, sea lo que se pretendía enviar y que los paquetes que sean recibidos en el orden en que fueron enviados. TCP terminará una conexión si ocurre un error que haga la transmisión fiable imposible.

En el modelo TCP/IP no es estrictamente necesario el uso de todas las capas sino que, por ejemplo, hay protocolos de aplicación que operan directamente sobre IP y otros que lo hacen por encima de IP. En la imagen se pueden apreciar los 5 niveles de la arquitectura, comparados con los siete de OSI.
.




Similitudes:

Imagen relacionada

  • Ambos tienen capas de transporte y de red similares.

  • Tienen un mismo objetivo en común.

  • Ambos tienen capas de aplicación.

  • Ambos se dividen en capas

  • Ambos son modelos de comunicación.

  • TCP/IP esta influenciado por el modelo OSI.
Diferencias:

Imagen relacionada

  • OSI distingue de forma clara los servicios, interfaces y los protocolos TCP/IP no lo hace así, dejando de forma clara esta separación.

  • TCP/IP parece ser mas simple por que tiene menos capas.
  • TCP/IP fue diseñado como la solución a un problema practico de Ingeniería en cambio OSI fue propuesto como una aproximación técnica.
  • Las capas del modelo TCP/IP tienen muchas mas diversas que las del metodo OSI.
  • Se debe conocer OSI como modelo genérico de red y los protocolos TCP/IP como arquitectura real.
  • Los profesionales de networking deben conocer a ambos: OSI como modelo; TCP/IP como arquitectura real.
  • TCP/IP integra las capas de Aplicación, presentación y sesión del modelo OSI en su capa de Aplicación.

Modelo TCP/IP




La importancia de un sistema de capas

El objetivo de un sistema en capas es dividir el problema en diferentes partes (las capas), de acuerdo con su nivel de abstracción. Cada capa del modelo se comunica con un nivel adyacente (superior o inferior). Por lo tanto, cada capa utiliza los servicios de las capas inferiores y se los proporciona a la capa superior. 

Imagen relacionada

El modelo TCP/IP

El modelo TCP/IP, influenciado por el modelo OSI, también utiliza el enfoque modular (utiliza módulos o capas), pero sólo contiene cuatro: acceso a la red, Internet, transporte y aplicación. 

Como puede verse, las capas del modelo TCP/IP tienen tareas mucho más diversas que las del modelo OSI, considerando que ciertas capas del modelo TCP/IP se corresponden con varios niveles del modelo OSI. 

Las funciones de las diferentes capas son las siguientes: 

Capa de acceso a la red: especifica la forma en la que los datos deben enrutarse, sea cual sea el tipo de red utilizado. 

Capa de Internet: es responsable de proporcionar el paquete de datos (datagrama). 

Capa de transporte: brinda los datos de enrutamiento, junto con los mecanismos que permiten conocer el estado de la transmisión. Comprende a los protocolos TCP y UDP

Capa de aplicación: incorpora aplicaciones de red estándar (Telnet, SMTP, FTP, etc.). 

Resultado de imagen para modelo tcp/IP las mejores imagenes


Encapsulación de datos

Durante una transmisión, los datos cruzan cada una de las capas en el nivel del equipo remitente. En cada capa, se le agrega información al paquete de datos. Esto se llama encabezado, es decir, una recopilación de información que garantiza la transmisión. En el nivel del equipo receptor, cuando se atraviesa cada capa, el encabezado se lee y después se elimina. Entonces, cuando se recibe, el mensaje se encuentra en su estado original: 


En cada nivel, el paquete de datos cambia su aspecto porque se le agrega un encabezado. Por lo tanto, las designaciones cambian según las capas: el paquete de datos se denomina mensaje en el nivel de la capa de aplicación. El mensaje después se encapsula en forma de segmento en la capa de transporte. Una vez que se encapsula el segmento en la capa de Internet, toma el nombre de datagrama. Finalmente, se habla de trama en el nivel de capa de acceso a la red. 

Capa de acceso a la red


Resultado de imagen para modelo tcp/IP las mejores imagenes

La capa de acceso a la red es la primera capa de la pila TCP/IP. Ofrece la capacidad de acceder a cualquier red física, es decir, brinda los recursos que se deben implementar para transmitir datos a través de la red. 

Por lo tanto, la capa de acceso a la red contiene especificaciones relacionadas con la transmisión de datos por una red física, cuando es una red de área local (red en anilloEthernetFDDI), conectada mediante línea telefónica u otro tipo de conexión a una red. Trata los siguientes conceptos: enrutamiento de datos por la conexión, coordinación de la transmisión de datos (sincronización), formato de datos, conversión de señal (análoga/digital), detección de errores a su llegada, etc. 

Afortunadamente, todas estas especificaciones son invisibles al ojo del usuario, ya que en realidad es el sistema operativo el que realiza estas tareas, mientras los controladores de hardware permiten la conexión a la red (por ejemplo, el controlador de la tarjeta de red). 

Capa de Internet


Resultado de imagen para capa de internet del modelo tcp/ip

La capa de Internet es la capa "más importante" (si bien todas son importantes a su manera), ya que es la que define los datagramas y administra las nociones de direcciones IP. Permite el enrutamiento de datagramas (paquetes de datos) a equipos remotos junto con la administración de su división y ensamblaje cuando se reciben. 

La capa de Internet contiene 5 protocolos: IPARPICMP, IGMP y RARP. Los primeros tres protocolos son los más importantes para esta capa. 

Capa de transporte


Resultado de imagen para capa de transporte del modelo tcp/ip

Los protocolos de las capas anteriores permiten enviar información de un equipo a otro. La capa de transporte permite que las aplicaciones que se ejecutan en equipos remotos puedan comunicarse. 

El problema es identificar estas aplicaciones. De hecho, según el equipo y su sistema operativo, la aplicación puede ser un programa, una tarea, un proceso, etc. 

Además, el nombre de la aplicación puede variar de sistema en sistema. Es por ello que se ha implementado un sistema de numeración para poder asociar un tipo de aplicación con un tipo de datos. Estos identificadores se denominan puertos. 

La capa de transporte contiene dos protocolos que permiten que dos aplicaciones puedan intercambiar datos independientemente del tipo de red (es decir, independientemente de las capas inferiores). Los dos protocolos son el TCP y UDP, que se diferencian por el tipo de servicio que ofrecen. TCP, es un protocolo orientado a conexión que brinda detección de errores. En cambio, UDP es un protocolo no orientado a conexión en el que la detección de errores es obsoleta. 

Capa de aplicación


Resultado de imagen para capa de aplicación del modelo tcp/ip

La capa de aplicación se encuentra en la parte superior de las capas del protocolo TCP/IP. Contiene las aplicaciones de red que permiten la comunicación mediante las capas inferiores. Por lo tanto, el software en esta capa se comunica mediante uno o dos protocolos de la capa inferior (la capa de transporte), es decir, TCP o UDP. 

Existen diferentes tipos de aplicaciones para esta capa, pero la mayoría son servicios de red o aplicaciones brindadas al usuario para proporcionar la interfaz con el sistema operativo. Se pueden clasificar según los servicios que brindan: administración de archivos e impresión (transferencia), conexión a la red, conexión remota, diversas utilidades de Internet.

Modelo ISO






El Modelo de Referencia de Ínter conexión de Sistemas Abiertos, conocido mundial mente como Modelo OSI ,fue creado por la ISO (Organización Estándar Internacional) y en él pueden modelarse o diferenciarse diversos dispositivos que reglamenta la ITU (Unión de Telecomunicación Internacional), con el fin de poner orden entre todos los sistemas y componentes requeridos en la transmisión de datos, además de simplificar la interrelación entre fabricantes. Así, todo dispositivo de cómputo y telecomunicaciones podrá ser referencia al modelo y por ende concebido como parte de un sistema dependiente con características muy precisas en cada nivel.
Esta idea da la pauta para comprender que el modelo OSI existe potencialmente en todo sistema de cómputo y telecomunicaciones, pero que solo cobra importancia al momento de concebir o llevar a cabo la transmisión de datos.

Fue desarrollado en 1980 por la ISO, Una federación  global de organizaciones que representa aproximadamente a 130 países.


 El núcleo de este estándar es el modelo de referencia OSI, una normativa formada por siete capas que dene las diferentes fases por las que deben pasar los datos para viajar de un dispositivo a otro sobre una red de comunicaciones. Siguiendo el esquema de este modelo se crearon numerosos protocolos. 

El advenimiento de protocolos más exibles donde las capas no están tan desmarcadas y la correspondencia con los niveles no era tan clara puso a este esquema en un segundo plano. Sin embargo se usa en la enseñanza como una manera de mostrar cómo puede estructurarse una “pila” de protocolos de comunicaciones.

El modelo especíca el protocolo que debe usarse en cada capa, y suele hablarse de modelo de referencia ya que se usa como una gran herramienta para la enseñanza de comunicación de redes.
Se trata de una normativa estandarizada útil debido a la existencia de muchas tecnologías, fabricantes y compañías dentro del mundo de las comunicaciones.







Capas del modelo OSI




CAPA FÍSICA


La capa física, la más baja del modelo OSI, se encarga de la transmisión y recepción de una secuencia no estructurada de bits sin procesar a través de un medio físico. Describe las interfaces eléctrica/óptica, mecánica y funcional al medio físico, y lleva las señales hacia el resto de las capas superiores. Proporciona:
 
·         Codificación de datos: modifica el modelo de señal digital sencillo (1s y 0s) que utiliza el equipo para acomodar mejor las características del medio físico y para ayudar a la sincronizan entre bits y trama. Determina:
 
·         Qué estado de la señal representa un binario 1
·         Como sabe la estación receptora cuándo empieza un "momento bit"
·         Cómo delimita la estación receptora una trama
·         Anexo al medio físico, con capacidad para varias posibilidades en el medio:
 
·         ¿Se utilizará un transceptor externo (MAU) para conectar con el medio?
·         ¿Cuántas patillas tienen los conectores y para qué se utiliza cada una de ellas?
·         Técnica de transmisión: determina si se van a transmitir los bits codificados por especialización de banda base (digital) o de banda ancha (analógica).
·         Transmisión en el medio físico: transmite bits como señales eléctricas u ópticas adecuadas para el medio físico y determina lo siguiente.
 
·         Qué opciones de medios físicos pueden utilizarse
·         Cuántos voltios/db se deben utilizar para representar un estado de señal en particular mediante un medio físico determinado

CAPA DE VÍNCULO DE DATOS

La capa de vínculo de datos ofrece una transferencia sin errores de tramas de datos desde un nodo a otro a través de la capa física, permitiendo a las capas por encima asumir virtualmente la transmisión sin errores a través del vínculo. Para ello, la capa de vínculo de datos proporciona:

 
·         Establecimiento y finalización de vínculos: establece y finaliza el vínculo lógico entre dos nodos.
·         Control del tráfico en tramas: indica al nodo de transmisión que "dé marcha atrás" cuando no haya ningún búfer de trama disponible.
·         Secuenciación de tramas: transmite y recibe tramas secuencialmente.
·         Confirmación de trama: proporciona o espera confirmaciones de trama. Detecta errores y se recupera de ellos cuando se producen en la capa física mediante la retransmisión de tramas no confirmadas y el control de la recepción de tramas duplicadas.
·         Delimitación de trama: crea y reconoce los límites de la trama.
·         Comprobación de errores de trama: comprueba la integridad de las tramas recibidas.
·         Gestión de acceso a medios: determina si el nodo "tiene derecho" a utilizar el medio físico.
CAPA DE RED

La capa de red controla el funcionamiento de la sub red, decidiendo qué ruta de acceso física 

deberían tomar los datos en función de las condiciones de la red, la prioridad de servicio y

otros 

factores. Proporciona:
 
·         Enrutamiento: enruta tramas entre redes.
·         Control de tráfico de subred: los enrutadores (sistemas intermedios de capa de red) pueden indicar a una estación emisora que "reduzca" su transmisión de tramas cuando el búfer del enrutador se llene.
·         Fragmentación de tramas: si determina que el tamaño de la unidad de transmisión máxima (MTU) que sigue en el enrutador es inferior al tamaño de la trama, un enrutador puede fragmentar una trama para la transmisión y volver a ensamblarla en la estación de destino.
·         Asignación de direcciones lógico-físicas: traduce direcciones lógicas, o nombres, en direcciones físicas.
·         Contabilidad del uso de la subred: dispone de funciones de contabilidad para realizar un seguimiento de las tramas reenviadas por sistemas intermedios de subred con el fin de producir información de facturación.

CAPA DE TRANSPORTE

La capa de transporte garantiza que los mensajes se entregan sin errores, en secuencia y sin pérdidas o duplicaciones. Libera a los protocolos de capas superiores de cualquier cuestión relacionada con la transferencia de datos entre ellos y sus pares.


El tamaño y la complejidad de un protocolo de transporte depende del tipo de servicio que pueda obtener de la capa de transporte. Para tener una capa de transporte confiable con una capacidad de circuito virtual, se requiere una mínima capa de transporte. Si la capa de red no es confiable o solo admite data gramas, el protocolo de transporte debería incluir detección y recuperación de errores extensivos.



La capa de transporte proporciona:
 
·         Segmentación de mensajes: acepta un mensaje de la capa (de sesión) que tiene por encima, lo divide en unidades más pequeñas (si no es aún lo suficientemente pequeño) y transmite las unidades más pequeñas a la capa de red. La capa de transporte en la estación de destino vuelve a ensamblar el mensaje.
·         Confirmación de mensajes: proporciona una entrega de mensajes confiable de extremo a extremo con confirmaciones.
·         Control del tráfico en mensajes: indica a la estación de transmisión que "dé marcha atrás" cuando no haya ningún búfer de mensaje disponible.
·         Multiplexación de sesión: multiplexa varias secuencias de mensajes, o sesiones, en un vínculo lógico y realiza un seguimiento de qué mensajes pertenecen a qué sesiones (consulte la capa de sesiones).
Normalmente, la capa de transporte puede aceptar mensajes relativamente grandes, pero existen estrictas limitaciones de tamaño para los mensajes impuestas por la capa de red (o inferior). Como consecuencia, la capa de transporte debe dividir los mensajes en unidades más pequeñas, o tramas, anteponiendo un encabezado a cada una de ellas.


Así pues, la información del encabezado de la capa de transporte debe incluir información de control, como marcadores de inicio y fin de mensajes, para permitir a la capa de transporte del otro extremo reconocer los límites del mensaje. Además, si las capas inferiores no mantienen la secuencia, el encabezado de transporte debe contener información de secuencias para permitir a la capa de transporte en el extremo receptor re colocar las piezas en el orden correcto antes de enviar el mensaje recibido a la capa superior.

CAPA DE SESIÓN

La capa de sesión permite el establecimiento de sesiones entre procesos que se ejecutan en diferentes estaciones. Proporciona:
 
·         Establecimiento, mantenimiento y finalización de sesión: permite que dos procesos de aplicación en diferentes equipos establezcan, utilicen y finalicen una conexión, que se denomina sesión.
·         Soporte de sesión: realiza las funciones que permiten a estos procesos comunicarse a través de una red, ejecutando la seguridad, el reconocimiento de nombres, el registro, etc.




CAPA DE PRESENTACIÓN

La capa de presentación da formato a los datos que deberán presentarse en la capa de aplicación. Se puede decir que es el traductor de la red. Esta capa puede traducir datos de un formato utilizado por la capa de la aplicación a un formato común en la estación emisora y, a continuación, traducir el formato común a un formato conocido por la capa de la aplicación en la estación receptora.


La capa de presentación proporciona:
·         Traducción del código de caracteres, por ejemplo, de ASCII a EBCDIC.
·         Conversión de datos: orden de bits,  punto flotante entre enteros.
·         Compresión de datos: reduce el número de bits que es necesario transmitir en la red.
·         Cifrado de datos: cifra los datos por motivos de seguridad. Por ejemplo, cifrado de contraseña.

CAPA DE APLICACIÓN

El nivel de aplicación actúa como ventana para los usuarios y los procesos de aplicaciones para tener acceso a servicios de red. Esta capa contiene varias funciones que se utilizan con frecuencia:
·         Uso compartido de recursos y re dirección de dispositivos
·         Acceso a archivos remotos
·         Acceso a la impresora remota
·         Comunicación entre procesos
·         Administración de la red
·         Servicios de directorio
·         Mensajería electrónica (como correo)
·         Terminales virtuales de red