Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Programacin II
Introduccin
UNIX ocupa un lugar especial en el mundo de las redes en general, y en el mundo de Internet en particular, porque la mayora de los protocolos de Internet se implementaron inicialmente en plataformas UNIX. Adems, la mayora de los servicios de Internet se proporcionan an mediante servicios que se ejecutan en computadores basados en UNIX.
Fundamentos de la Redes
Razones para utilizar redes de computadores: Compartir recursos de computacin. Como medio de comunicacin (barato, rpido y seguro) Eficiencia de costos de procesamiento. Por el mismo precio se obtiene ms potencia de clculo con una red de estaciones de trabajo que con un minicomputador o un mainframe. Mayor disponibilidad. Si se utiliza un nico minicomputador o un mainframe, todos los trabajos se detienen si algo falla en el computador. En una red, si uno de los computadores sufre un fallo, el resto de los equipos de la red sigue funcionando y permite seguir trabajando.
Modelos de Red
Algunos aspectos para el diseo e implementacin de redes: El tipo de medio fsico de comunicacin o canal de comunicacin. La topologa de la red, esto es, la disposicin fsica de los elementos de la red (Por ejemplo: bus, anillo, etc.) Los protocolos (conjuntos de reglas) que se utilizan para permitir que un elemento de una red acceda al medio fsico antes de iniciar la transmisin de datos. Los protocolos que se utilizan para rutear los datos de las aplicaciones (por ejemplo una pgina web) desde un elemento de una LAN a otro, o de un elemento de una red a un elemento de otra red en una interred. Los protocolos utilizados para el transporte de datos entre un proceso de un host y un proceso de otro host. Los protocolos utilizados por el software para proporcionar aplicaciones especficas, tales como telnet o ftp.
3
2 1
Red
Enlace de Datos Fsica
3
2
Red
Enlace
Dispositivo / Fsica
5 Aplicacin
4 Transporte 3 Red
2 Enlace
1 Fsica
La mayora de estos protocolos quedan fuera del alcance de este curso. Slo trataremos brevemente los temas ms relevantes.
TCP y UDP
La funcin de la capa de transporte es transmitir datos de aplicacin desde nuestro computador a otro computador remoto y viceversa. Este servicio de entrega puede ser sencillo, limitndose a hacer lo posible, pero sin garantizar la entrega de los datos (servicio UDP), o puede ser del tipo que garantiza una entrega segura y ordenada de los datos de aplicacin (servicio TCP) Como es posible que mltiples procesos de cliente y de servidor estn utilizando TCP y/o UDP simultneamente, estos protocolos identifican a cada proceso que se ejecuta mediante un entero positivo de 16 bits (entre 0 y 65.535) que se denomina nmero de puerto. Los nmeros de puerto del 0 al 1.023 son los que se denominan puertos conocidos y estn controlados por la Internet Assigned Numbers Authority. (IANA). Los servicios conocidos (como ftp y telnet) reciben puertos que se encuentran dentro del rango de puertos conocidos.
Direcciones IP
Todo datagrama IP contiene en su interior la direccin IP del remitente y la del destinatario. La direccin IP del remitente permite al receptor identificar al remitente y responderle. Los hosts y los routers llevan a cabo el enrutamiento examinando la direccin IP del destinatario presente en los datagramas IP. En IPv4 la direccin IP est dividida en tres campos:
La clase de direccin, ID de red, ID de elemento.
La clase de direccin identifica el nmero de bits que se utilizan en los campos de ID de red e ID de elemento. Este mtodo da lugar a cinco clases de direccin: A, B, C, D y E.
Clases de Direcciones IP
31
24 23
16 15
8 7
Clase A:
Clase B: Clase C: Clase D: Clase E:
O
31
ID de Red
24 23 16 15
ID de Host
8 7 0
1O
31
ID de Red
24 23 16 15
ID de Host
8 7 0
1 1O
31 24 23
ID de Red
16 15 8 7
ID de Host
0
1 1 1O
31
1 1 1 1O
Nombres simblicos
Las personas prefieren utilizan nombres simblicos en lugar de direcciones numricas. Los nombres son ms fciles de recordar, especialmente con la transicin a direcciones de 128 bits en IPv6. Adems, los nombres pueden permanecer igual aunque cambien las direcciones numricas. Al igual que la direccin IP, el nombre simblico de un elemento de internet tiene que ser nico. Internet permite usar nombres simblicos dentro de un esquema jerrquico de nominacin. Los nombres simblicos tienen el formato siguiente: nombre_host.nombre_donminio En donde nombre_dominio es el nombre simblico que alude al lugar del host y que es asignado por parte del Network Information Center (NIC). El nombre_dominio consta de de dos (o ms) cadenas separadas mediante un punto (.)
Servidores de nombres
Como el software de Internet emplea direcciones IP y las personas prefieren utilizar nombres simblicos, el software de aplicacin traduce los nombres simblicos a direcciones de Internet equivalentes. Esta traduccin implica el uso de un servicio que proporciona Internet y que recibe el nombre de Sistema de Nombres de Dominio (DNS). El DNS implementa una base de datos distribuida formada por relaciones de nombres y direcciones. Existe un conjunto de computadores dedicados en los que es ejecutan procesos servidores denominados servidores de nombres que admiten solicitudes del software de aplicacin y cooperan para hacer relacionar los nombres de dominio con las direcciones IP correspondientes. Todas las organizaciones tienen al menos un servidor de nombres que normalmente es el programa BIND (Berkley Internet Name Domain). Las aplicaciones emplean funciones de resolucin tales cmo:
gethostbyname gethostbyaddr
El comando ifconfig permite visualizar la direccin IP y otras informaciones relativas a la interfaz de nuestro computador con la red. El comando nslookup sirve para encontrar la direccin IP de un computador cuyo nombre se le pasa como parmetro.
Software de Aplicacin
Los comandos hostname y uname permiten ver el nombre del host al que estamos conectados. Los comandos rwho y rusers permiten visualizar informacin relativa a los usuarios que estn utilizando actualmente hosts en nuestra red. El comando ruptime permite visualizar el estado de todos los hostos conectados a nuestra LAN. El comando ping permite combrobar el estado de una red o de un host en particular. Para esto enva un datagrama IP al Host para comprobar si se encuentra en la red. El comando finger permite visualizar informacin relativa a los usuarios de un host local o remoto. El comando talk permite comunicarnos interactivamente (chatear) con un usuario de nuestro propio host o de algn host remoto. El comando traceroute sirve para mostrar la ruta (los nombres de los routers que hay en la ruta) entre nuestro host y un host remoto. Adems, nos da una idea de la rapidez de la ruta. Para ms informacin sobre estos comandos dirijase a las pginas de manual de los mismos.
Conexin Remota
El protocolo Telnet tiene como objetivo permitirnos establecer conexiones con hosts remotos a travs de una red. Este protocolo no slo permite conectarse a hosts basados en UNIX, sino a cualquier host que soporte este protocolo y tenga un servicio telnet en funcionamiento. Una vez establecida la conexin, nuestra terminal acta como si fuese una terminal conectada al host remoto. El puerto conocido para el servicio telnet es el nmero 23. El comando UNIX para ejecutar un cliente telnet es telnet. El cliente telnet funciona en 2 modos: En modo de entrada y en modo de rdenes. Cuando el comando se ejecuta sin parmetros, el cliente entra en modo de rdenes, y muestra un prompt del tipo telnet>. Cuando se ejecuta con un argumento, el cliente muestra el indicador login: para que ingresemos nuestro usuario. Otro comando para establecer una conexin remota con otro UNIX es el comando rlogin
Transferencia de Archivos
El comando ftp (File transfer program) permite transferir archivos desde y hacia un host remoto. Cuando se ejecuta el comando ftp, empieza a ejecutarse en nuestro host un cliente ftp, que intenta establecer una conexin con el servidor ftp que se ejecuta en el host remoto. Una vez establecida la conexin ftp, se pueden ejecutar varias rdenes para hacer un uso efectivo de esta utilidad (Por ejemplo descargar o levantar archivos). Sin embargo, es preciso disponer de los permisos de acceso adecuados para poder transferir archivos al sitio remoto. La mayora de los sitios requieren que tengamos un usuario / password vlido para establecer la conexin, aunque tambin existen sistemas que permiten un acceso del tipo annimo.
Preguntas