En cuanto a lo de la velocidad me temo que si, es decir que siempre lo maximo que vas a tener va a ser los 128kbits o la conexion que tengas, claro que si uno de los ordenadores no esta bajando nada, entonces tendras todo el ancho de banda para el otro ordenador.
Ahora en cuanto a las diferencias entre hubs, switchs y routers:
Un hub funciona cogiendo los paquetes que le llegan a cualquiera de los puertos y repitiendolos por todos, de esta manera a todos los ordenadores de la red les llega el trafico destinado a uno solo de ellos, pero como las tarjetas de red funcionan en principio solo escuchando los paquetes que van destinado a su direccion MAC, cada ordenador solo ve los paquetes que van destinados a el aunque a cada tarjeta de red lleguen todos.
Un switch funciona de una manera un poco mas compleja, en vez de repetir a todos los puertos todos los paquetes que le llegan, lo que hace es mirar en la cabecera ethernet de cada paquete que le llega y lo manda exclusivamente a el puerto al que esta conectada la tarjeta de red con la mac que pone en la cabecera de el paquete de origen.
Los switches son mas caros por que son mas complejos y por ejemplo es lo que se utiliza en las redes de cable, esto es asi para que un ordenador de un usuario no reciba los paquetes que no van destinados a el, por que la limitacion de las tarjetas de red de solo escuchar los paquetes que tienen como destino su propia mac, se puede desactivar poniendo a la tarjeta en modo promiscuo, de esta manera la tarjeta escucha todos los paquetes, los suyos y los ajenos, y en este caso cualquier usuario podria espiar el trafico de todos los usuarios de su misma red; tambien se usan en redes grandes intercalandolos, agrupando varios hubs a un switch que a su vez esta conectado de la misma manera a otros hubs, de esta forma se reduce en gran medida el trafico global de la red, si miras el siguiente grafico lo entenderas
RED A*****************************RED B
HUB-------|*************************|----------HUB
HUB-------|*************************|----------HUB
HUB-------+-----------SWITCH-------------+-----HUB
*********************|
*********************|
*********************|
**************----------+----------
********RED C |*******|*******|
*************HUB****HUB*****HUB
("grafico" corregido, gracias a lofter por el aviso)
Intenta ignorar los * los he puesto para que no se desplace el "grafico".
Si un paquete con origen en un tarjeta de red conectada a un hub de la RED A tiene como destino una tarjeta de la RED C, el paquete solo se repetira en las tarjetas que esten conectadas en el mismo hub que la tarjeta de origen y destino, eso quiere decir, que si hay 8 ordenadores conectados a cada hub el paquete solo se enviara a esos 16 ordenadores, pero si en lugar los switches ponemos hubs, entonces el paquete llegaria a 8 ordenadores por hub x 3 hubs por red x 3 redes, en total 72 ordenadores, como ves poniendo un switch en un lugar adecuado en una gran red se puede reducir en gran cantidad el trafico todal de la red, en esta red de ejemplo la disminucion del trafico seria 71/16 = 4.5, o sea, en el peor de los casos, que es cuando se manda un paquete entre ordenadores situados en distintas redes se reduciria en 4.5 veces en el peor de los casos, y en 9 veces si el origen y el destino estan conectados al mismo hub; por eso el uso de los switchs esta recomendado en el caso de grandes redes, por que compensan el precio con la reduccion de trafico, pero para redes pequeñas resultan muy caros.
En cuanto al router, tiene similitudes con un switch por que sabe discriminar los paquetes por la cabecera, pero
con un par de salvedades, los routers que yo sepa (que conste que ni tengo ni he tenido jamas ni routers, hubs ni switchs),los routers funcionan basicamente enmascarando el trafico de entrada, vamos, la parte que esta conectada a internet, sea una conexion adsl, wan, frame relay, x25 etc, haciendo que el trafico de la entrada se redirija a un ordenador especifico de la red interna dependiendo de varios parametros:
Filtros que indiquen que el trafico de entrada destinado a cierto puerto sea redirigido a un ordenador especifico de la red local, esto es util por ejemplo si tenemos una red con varios ordenadores con un servicio en cada ordenador, por ejemplo si en un paquete de entrada desde internet seta dirigido a el puerto 25 que lo mande al ordenador que tiene el servidor smtp, si es el 80 mandandolo al ordenador que tiene el servidor de paginas web y asi sucesivamente.
Filtros que indiquen que el trafico que venga de una ip especifica se dirija a un ordenador especifico, creo que esto serviria por ejemplo entre otras cosas, para establecer canales vpn entre ordenadores de confianza localizados fuera de la red local.
NAT, el NAT funciona de la siguente manera, cuando un ordenador de la red local realiza una peticion a un ordenador de fuera de la red, lease internet, por ejemplo en el caso de una pagina web, el ordenador de la red interna con ip 192.168.0.10 por ejemplo, se intenta conectar a la pagina de altavista, por poner otro ejemplo, entonces el router apunta en una tabla el intento de conexion de el ordenador interno y la ip a la que se trata de conectar, entonces manda el paquete a altavista pero con la ip publica del router, no la del ordenador local, a altavista en este ejemplo, entonces cuando el servidor de altavista contesta la peticion, el router recibe en el interface de internet el paquete de altavista y comprueba en la tabla de NAT si algun ordenador de la red interna se ha conectado recientemente a esa ip y en ese puerto, y en ese caso redirige el paquete de altavista a la ip del ordenador local, el 192.168.0.10 en este caso y se completa la transaccion y el ordenador local ve la pagina; esto es totalmente transparente para el ordenador de fuera de la red, es decir altavista en este caso jamas sabria que realmente esta hablando con el ordenador de la red interna.
Hay dos tipos de NAT los que toman la decision de encaminamiento basado en el origen del primer paquete que seria el caso anterior, y los que enrutan dependiendo de la direccion de destino, en linux se los conoce como SNAT o enmascaramiento y DNAT.
Esto es a grandes rasgos, siento haberme extendido tanto pero estaba aburrido y creo que es mejor que leas todo de un tiron y luego algunas correcciones en vez de 100 posts.
P.D. Si con esto no te queda claro, no te preocupes, es algo que puede llevar su tiempo el entenderlo en profundidad.