Este pretende ser un pequeño manual y tutorial para aumentar nuestro rendimiento de conexion en la velocidad de internet, tanto para envio como recepcion de datos asi como una mejora sustancial de nuestras latencias de linea. Fuente (confirmada) del artículo original de licencia Creative Commons: 86400.es
Lo primero de todo, TCP/IP tiene que ver con dos protocolos (TCP Transmission Control Protocol o Protocolo de Control de Transmisión) e IP (Internet Protocol o Protocolo de Internet) . Según el RFC 1180 (un tutorial de TCP/IP) "Puede incluir otros protocolos, aplicaciones e incluso otro medio de red. Un ejemplo de estos protocolos son: UDP, ARP, y ICMP. Un ejemplo de estas aplicaciones son: TELNET, FTP y rcp. Una forma de llamarlo con más precisión sería "tecnología internet". Una red que usa tecnología internet se le llama "internet". Así que este protocolo hace que las comunicaciones por Internet seán posibles. Con lo que tendría sentido decir que si sabemos configurar y modificar los valores que usa este protocolo en nuestro sistema operativo podríamos acelerar de alguna forma la conexión a Internet, ¿no?
Analicemos algunos de los parámetros comunes cuyos cambios en el TCP/IP pueden suponer alguna diferencia:
Tamaño de entrada de datos de Windows
Esto se refiere al tamaño de datos en kilobits que es recibido antes que una confirmación de esos datos (ACK) se devuelve al otro lado de la conexión TCP para verificar que los datos que se enviaron fueron enviados correctamente. Si el remitente no recibe esa señal de confirmación en un intervalo de tiempo designado, el paquete debe ser retransmitido. Esta es una de las razones por las que al protocolo TCP se le considera un protocolo fiable basado en conexiones.
El tamaño de entrada de datos por defecto en Windows 9X y en NT es de 8K y en 2000, ME y XP de 16K. Si dispones de una conexión de banda ancha podrías cambiar este valor a algo más alto, como 32K o 64K, y ver los resultados. Es decir, podría incrementar la velocidad de tu conexión ligeramente cuando se transfiere un montón de datos porque Windows no tendría que enviar tantas confirmaciones. El problema podría venir si por alguna razón las confirmaciones ACK no se reciben bien en el otro lado de la conexión, podrías tener que retransmitir muchos datos. Así, si tu conexión empieza a experimentar mucha latencia el cambio podría dar más problemas que ayuda, debido a la cantidad de errores y datos que se tendrían que retransmitir. En algunos casos podrías resolver el problema habilitando las Confirmaciones Selectivas (o Selective Acknowledgements o SACK).
Con las SACK activadas el que recibe los datos puede confirmar la recepción de paquetes de datos específicos no contiguos en una cadena de datos y forzar al remitente a enviar sólo los paquetes perdidos en lugar de todos los que se han dejado de recibir desde que se recibió el último ACK bueno.
¿Qué significa ésto para tí? Bien, si estás en una conexión módem, olvídalo, 16K será el máximo que podrás recibir y cualquier cambio que hagas hará que tengas más latencia a la larga. Algunas personas que navegan con conexión por satélite con altas latencias de transmición debido al pequeño ancho de banda de subida tampoco se podrán beneficiar de ésto. Pero si tienes una conexión de banda ancha, una ADSL con poca latencia o una conexión por cable podrías intentar ajustar éstos valores para ver si notas alguna diferencia y tu velocidad de conexión aumenta ligeramente.
NOTA: Si no sabes lo que estás haciendo, mejor haz una copia de seguridad de tu registro de Windows o pide a un amigo que sepa que te revise estos cambios.
* Ve al registro de Windows, para ello, pulsa en Inicio -> Ejecutar -> teclea regedit -> dale al Enter
* Busca en el árbol de la izquierda lo siguiente: HKEY_LOCAL_MACHINE -> SYSTEM -> CurrentControlSet -> Services -> Tcpip -> Parameters
* Menu Edición -> Nuevo -> Valor DWORD
* Como nombre ponle "GlobalMaxTcpWindowSize" (sin las comillas)
* Como valor (en Hex) pon 00007FFF para 32K o 0000FFFF para 64K (según lo explicado antes)
* Pulsa Aceptar y cierra la ventana
Deberías antes de hacer este cambio realizar un test de velocidad de tu conexión y volverlo a hacer después de hacer este cambio. Si tienes problemas o no te supone ninguna mejora, simplemente puedes borrar esta nueva variable DWORD que acabas de crear.
Es bueno realizar el test al menos 5 veces en cada prueba para sacar una media, ya que las velocidades pueden varias un poco, y sobre todo, cerrar cualquier programa que use Internet: messenger, explorer, correo electrónico, etc…
Prueba real
Antes de realizar el cambio, 5 pruebas:
822.49 Kbps
825.60 Kbps
845.63 Kbps
819.20 Kbps
819.20 Kbps
Poniéndolo a 32K
855.78 Kbps
852.67 Kbps
832.31 Kbps
835.49 Kbps
863.22 Kbps
Poniéndolo a 64K
842.37 Kbps
838.70 Kbps
856.01 Kbps
835.49 Kbps
832.31 Kbps
Por tanto, en mi caso, se podría decir que 32K es el mejor rendimiento y ha mejorado sensiblemente la velocidad de mi conexión.
Unidad de transmisión máxima
Esto es el tamaño del paquete en bytes más grande posible que puede ser enviado o recibido en una conexión de red en un dispositivo físico.
Este es uno de los parámetros más populares para cambiar al trucar el TCP/IP. Una condición llamada fragmentación ocurrirá si se recibe un envio con una MTU más pequeña que la longitud del envio. Como los fragmentos necesitan ser reensamblados, ésto puede reducir el funcionamiento de la conexión. Cuando dos máquinas negocian una conexión el tamaño MTU se determina usando el más pequeño de los dos durante el proceso de negociación. El problema esta que si el número es todavía más alto que uno de los routers, ocurrirá una fragmentación para que ese router pueda manegar el paquete de datos. En teoría si el tamaño de MTU puede ajustarse óptimamente al tamaño MTU del router del ISP, puedes reducir esa fragmentación en un punto donde tus datos casi siempre pasarán, por consiguiente, reduciéndolo también en la conexión en su totalidad también.
El valor MTU por defecto en Windows es de 1500 bytes porque es el valor por defecto para una LAN (red de área local) porque generalmente están a una velocidad mayor que las grandes redes WAN (redes de área grande) que van a 1000Gbps, 100Mbps y 10Mbps. Las conexiones a Internet generalmente no se acercan a estas velocidades y por tanto usarán un valor MTU más pequeño que las conexiones WAN.
Las recomendaciones comunes para las conexiones por módem es de 576 bytes, y un valor entre 1400 y 1480 se recomienda para la ADSL corriendo con PPPOE (las ADSL normales de España), y 1500 para las demás.
Como el valor MTU requiere de más de una variable en el registro de Windows, se ofrecen las instrucciones para cambiar éste valor para optimizar las conexiones PPPOE de Windows XP y 2000, que son las que más se usan en España en estos momentos (las ADSL de toda la vida).
DE NUEVO NOTA: Si no sabes lo que estás haciendo, mejor haz una copia de seguridad de tu registro de Windows o pide a un amigo que sepa que te revise estos cambios.
* Ve al registro de Windows, para ello, pulsa en Inicio -> Ejecutar -> teclea regedit -> dale al Enter
* Busca en el árbol de la izquierda lo siguiente: HKEY_LOCAL_MACHINE -> SYSTEM -> CurrentControlSet -> Services -> NDIS -> Parameters
* Botón derecho sobre Parameters -> Nueva -> Clave
* Le ponemos el nombre de "0? (sin las comillas) a esa "subcarpeta" que se ha creado.
* Ahora dentro de ella, creamos un nuevo valor DWORD como antes llamado "ProtocolType" sin comillas.
* Como valor (en Hex) ponemos 800
* Creamos otro valor DWORD, llamado "PPProtocolType" y le ponemos como valor 21 (en Hex)
* Y creamos otro DWORD llamado "ProtocolMTU" con el valor 1450 en decimal
* Pulsa Aceptar y cierra la ventana
De nuevo me remito a realizar los pertinentes grupos de pruebas y valorar si ha ido bien o no.
Prueba real
Estaba a 32K según el cambio de arriba, así que:
855.78 Kbps
852.67 Kbps
832.31 Kbps
835.49 Kbps
863.22 Kbps
Después del cambio:
852.45 Kbps
856.01 Kbps
866.65 Kbps
856.01 Kbps
859.13 Kbps
Se podría decir que algo ha mejorado la conexión con los dos cambios, unas 30 Kbps de media. Lógicamente, no se puede asegurar que esto funcione, pero espero que os hayais entretenido y aprendido un poco más cómo funcionan las conexiones entre los ordenadores y el envío de datos y paquetes.
A mi no me funciona esto :S
img249.imageshack.us/my.php?image=tcpipqo4.jpg
Ese es el error al crear la nueva entrada
Si te fijas, es por que se valor de Global ya lo tienes en esa misma carpeta mas arriba. Por tanto solo has de modifiacrlo por el valor correspondiente a lo que quieras poner en esa entrada, y no crear otra.
Saludos!
muy bueno mahou, sobre todo para culturilla general, por que hay una cosa que no se y a ver si tu qu lo has hecho me puedes responder.
esta es mi teoria, el ping no es mas que uno o mas paquetes ICMP (forma parte del TCP/IP) por lo tanto si tu varias el tamaño del paquete, estas variando el tamaño del ping, osea que tarda mas en salir, por lo tanto posiblemente el retardo que se este produciendo cada vez que pasa por un router es mayor.
pero mi duda es si eso que dices solo afecta a los paquetes de datos, ya que yo no me atreveria a llamar al icmp un paquete de "datos" ya que su contenido no va ningun dato a "entregar", solo la ip de destino, el numero de saltos o TTl, y tal.
osea sube el ping con eso??
En teoria si. Lo probe y funciona igual.
En teoria y despues de varias pruebas, te dire que el ping tiende a bajar. En casi todos los casos.
Lo unico que retrasa o aumenta la latencia y el ping es cuando al que le envias los paquetes de datos o pings etc tiene una ventana de recepcion menor que la de tu sistema, o sea, si tu configuras tu sistema a 64k y el que recibe lo tiene a 16k, caso de servers de webs o incluso algunos usuarios con versiones mas antiguas de windows, ahi si se nota ese retardo.
Pero tambien para eso windows tiene sus herramientas,en la opcion de conexion al configurarla, podemos en la pestaña ICMP activar varias casillas tales como la de permitir paquete de control de flujo saliente, que nos puede ayudar en esos casos a regular o adpatar nuestro envio al tamaño de recepcion de la ventana del destinatario.
(en mi caso lo tengo modificado al valor maximo de ventana, de 64 k, lo cual a mi personalmente me funciona mejor ya que mi ping baja unos 20-25 puntos, pero sin embargo donde mas gano es mis KB de subida que va 40 KB por encima de mis medidas con 32K)
Y aún hay mas cosas, por ejemplo el comando de ping, solo testea la distancia al objeto o server al que deseamos enviar algo. Nada mas.Por tanto, lo que de verdad retarda las conexiones es el paquete de datos que enviamos, dependiendo de su tamaño y de su destino puede ser mas rapido o mas lento.Pero siempre ira en funcion de la latencia de lineas.Ahora bien, lo que si nos aumentara con estos pasos es la capacidad en Kb de descarga y subida de nuestra linea digamos hasta su total uso factible o teorico.
Como siempre, en España despues estamos sometidos a la tirania de proveedores y el abuso de ancho de banda que suele ser insuficiente.
Espero haber aclarado algo mas el asunto.
Saludos!
tienes razon he leido por algun sitio, que el paquete icmp, tiene un tamaño fijo, independientemente de tamaños de ventanas mtu´s y tal
Un comentario al respecto, tened en cuenta que dependiendo de las redes de las que estemos hablando y de los administradores que las gestionen mediante reglas de prioridad se puede hacer que los paquetes ICMP tengan más prioridad que los UDP por ejemplo (los usados en juegos) por lo que puede darse el caso de que tengas muy buen ping haciendo ping desde msdos y sin embargo el juego te dé lagazos.
Un RFC no es un tutorial, es un documento técnico que define un protocolo.
Sobre la latencia en los juegos... (que poco tiene que ver con el ancho de banda) me supongo que a estas alturas los programadores jugarán con diversos parámetros del protocolo de red para que baje la latencia. Obviamente esos parámetros pertenecen al protocolo UDP, que es más rápido que TCP ya que no necesita de ACK's (no se realiza conexión, solo se reciben y envian datos). Es por esto que desde hace tiempo los videojuegos utilizan UDP para el envio de datos masivo y una conexión TCP para datos de control (que no deberían perderse, como saber que estas muerto, las puntuaciones, etc). Así el ping no depende de la conexión TCP sino de lo rápido que lleguen los datos vía UDP y la única forma de mejorar esto es con prioridad de paquetes, cosa a la que solo tienen acceso los administradores de red (nuestros queridos ISP) o bien enrutandonos al servidor desde otra localización. El otro cabo suelto (el de las MTU, MSS, tamaño máximo de ventana(solo afecta a TCP), etc) se supone que lo controlan los programadores ya que son ellos los que crean los paquetes a enviar y por tanto el valor de esas variables. De todos modos este es el punto que menos va a afectar a la latencia ya que no solo depende de nuestra máquina sino también del servidor Y de nuestro modem Y todos los routers de los ISP hasta llegar al servidor (cada uno puede tener una diferente MTU, lo que provocaría fragmentación de paquetes si éstos ocupan más que la misma).
Muy cierto #8.
Y ahora es donde viene la gran pregunta, sabiendo como saben que el mercado de Adsl y cable lo copan por completo los gamers y los emuleros, ¿por que las compañias no diversifican sus ofertas de lineas en funcion de ellos? me refiero a lo que todos hemos pensado mas de una vez, lineas de baja latencia para gamers. Seguramente a las compañias de ADSL y CABLE les saldria rentable esas vias de negocio.
Mucho mas que tener que estar capando puertos o desviando por enrutamientos diversos en funcion de saturaciones de ancho de banda en los diferentes bucles.
Lo sencillo seria lo que tienen por ejemplo en Holanda, Lineas de baja latencia y de hasta 6 megas solo para gamers.Y realmente funcionan de lujo.
España como siempre, no tiene vision de negocio y futuro.Actualmente del mercado de adsl e internet residencial el 78% lo copamos los gamers. Si dieran un servicio de ese tipo todos saldriamos beneficados.
En fin, velita a San Cristobal y a ver si las Telecos se dan cuenta del asunto.
mahou no corras, que para los ISP, deberian tener otras prioridades, las cuales enumero pero seguro que se me escaran algunas, las enumero por orden de ocurrencia, no de importancia.
1º mejorar el sistema de att al cliente
2º salir del ranking de las mas denunciadas ante omics, ocus, etc etc
3º dar un servicio decente, y que las incidencias se resuelvan en un margen logico.
4º mejorar centrales, cableados, ampliar redes, y anchos de banda.
5º bajar los precios, y subir el ancho de banda, el cual en otros paises de europa son minimo entre 5 y 10 megas por 15-20 euros.
6º tratar de reducir los tiempos de altas bajas y cambio de operador, que en algunos casos son 1 mes.
7º no realizar altas fraudulentas, ni robo de clientes.
8º aumentar el ancho de banda upstream
9 preveer saturaciones de centrales antes de que ocurra, y realizar ampliaciones antes de la saturacion.
10 mejorar la seguridad que los clientes tienen sobre el servicio, ya que hoy dia la seguridad del cliente en su operador es 0.
cuando consigan eso..... hablaremos de fast path, linea de gamers, de emuleros, y de lo que quieras.
jajjaja. muy bueno!!
Owned Telecos by Casti!!! /Ostiazo mode PRO ON!
y eso lo redacte en 5 minutos, que si siguiera pensando saldrian otras 10 minimo
fastpath en españa es y sera para unos pocos.....
mucho tendran q cambiar las cosas para conseguirlo.
ono es un timo!!!!
Mahou tengo una pregunta para ti?
Mira tengo un Motorola SURFboard SBG900 de WIFI(creo que era asi)
Y entre las 8 y las 11 de t2s los dias tengo el ping de 600 y a las 11 de 20,pero t2s los dias sin excepcion,que puede ser?estado intentado encriptar la red pero........
Eso se llama saturacion de tu compañia.
Ni mas ni menos.
Te estan timando.
Cambia de proveedor si puedes.
ono entrega la red encriptada por defecto, o al menos antes era asi, es cuestion de que sepas el user pass del router, y mires si la tienes encriptada o abierta, mira la liosta de clientes conectados y prueba el ping en ese horario pero conectando por cable. pasa un antivirus, no sea que tengas un gusano enviando Spam, y este programado a esas horas
puede ser tambien que estes sufriendo "vampirismo" en tu conex.
Por ultimo cuando trabajaba para ONO, se reparaba siempre que el ping fuese superior a 120
Mahou lo mismo que puse el decalogo de las operadoras, si tengo tiempo hago el decalogo del cliente ISP, por que seguro en uno de los puntos esta ese, no culpes a tu operador de todos los problemas de conexión
Gracias por la información Mahou antes tenía 6763´8 Kbps de media y depués de los cambios del registro me da 8590´2.
