cisco40 40x40f oracle40 oracle40 lgo4

¿Por qué una partida online ocupa menos ancho de banda que una página web?

videojis

 

Mientras que una página web puede tardar varios segundos en cargar por completo, videojuegos como Battlefield o League of Legends son capaces de hacernos jugar con muchísimos jugadores de todo el mundo en tiempo real. ¿Cómo es posible que un videojuego online sea tan rápido, y una página web convencional sea tan lenta?

Los videojuegos con multijugador en línea están a la orden del día, y entender el por qué no es complicado: es muy atractiva la idea de jugar con (o contra) otros jugadores de todo el mundo. Desde batallar en una guerra con un soldado hasta echar un partido de fútbol, pasando por la estrategia o las carreras, es difícil encontrar un juego donde no se explote ese factor multijugador.

La cuestión es que estos videojuegos son capaces de gestionar una cantidad de datos brutal en milésimas de segundo. Pongamos un Call of Duty como ejemplo: el resto de jugadores tienen que recibir nuestra posición, dirección y altura en el mapa, el arma que estamos usando, el momento exacto en el que disparamos, la trayectoria de la bala… así con todos. Y en un mundo en el que tenemos que esperar varios segundos para cargar una página web como esta, ¿cómo es posible que los videojuegos sean tan rápidos?

El secreto de esta velocidad está en el método que utiliza cada uno para enviar los datos. Mientras que una página web suele utilizar TCP, un protocolo estable que garantiza que la información llega a su destino, los servidores de videojuegos suelen usar UDP, un protocolo similar que no garantiza la llegada de los datos a su destino pero a cambio nos da mucha más rapidez.

Sabiendo esto, podemos dibujar el camino que seguimos en ambas situaciones, y nos queda algo tal que así, como explica Cekuro en Reddit.

Página web:

Yo: ¿Cuál es la IP de esta página web?
DNS: Aquí tienes la IP
Yo: Quiero hablar contigo, página web, ¿estás aquí?
Página web: Estoy aquí, he recibido tu solicitud
Yo: De acuerdo, estás aquí
Yo: Quiero esta página, sitio web
Página web: De acuerdo, aquí tienes una lista de otros sitios que necesitas para entender mi página web
(Repite este proceso x veces hasta conseguir toda la información)

Videojuego online:

Yo: Servidor, quiero participar en esta partida
Servidor: Vale, te veo participando
Yo y Servidor al mismo tiempo: aquí está lo que tengo, no me importa si lo has recibido o no
Yo y Servidor al mismo tiempo: aquí está lo que tengo, no me importa si lo has recibido o no
Yo y Servidor al mismo tiempo: aquí está lo que tengo, no me importa si lo has recibido o no

Es un análisis muy resumido de lo que ocurre, pero ahí es donde radica la diferencia entre la carga de una página web y una partida online, y explica por qué se puede enviar tan rápido la información en una partida multijugador en línea. También explica esa sensación que a veces tienes de haber disparado a alguien, pero no haberle alcanzado en el juego: la información puede no haber llegado a tiempo por la latencia, o directamente no haber llegado.

Pero no es el único motivo, porque además de utilizar protocolos más rápidos, en una partida online los jugadores tienen que enviar y recibir muy poca información del servidor.

Piensa que el resto de jugadores y tu tienen el mismo juego, una copia exacta e idéntica, así que no tienes que estar enviando datos de más, ni el servidor tiene que realizar cálculos que aumenten la latencia. Recibes los datos en tu consola u ordenador, y el videojuego se encarga de realizar todos los cálculos necesarios en local. Y, para que una página web fuese igual de rápido, tendrías que tener descargado todo Internet.

Además, los desarrolladores se esfuerzan al máximo para reducir los datos que tienes que enviar. De esta forma, acciones como correr y disparar sólo suponen un envío de unos pocos bytes, y el resto de jugadores las pueden recibir en cuestión de milisegundos. También existen trucos para reducir aún más la información que se envía: por ejemplo, Left 4 Dead siempre envía al servidor las coordenadas X e Y de los zombies, pero sólo envía la coordenada Z (altitud) si esta varía.

Cursos disponibles
Inscribite hoy mismo!
Networking Essentials
Inicia: 05/04/2024
Online | Regular
IT Essentials v7: Hardware and Software
Inicia: 08/04/2024
Online | Regular
DBA 2 Programación SQL en Bases de Datos ORACLE
Inicia: 12/04/2024
Online | Regular
DBA 2 Programación SQL en Bases de Datos ORACLE
Inicia: 12/04/2024
Online | Regular
DBA I Diseño de Bases de Datos Relacional Oracle
Inicia: 16/04/2024
Online | Regular
ver todas