Creo que es justo decir que no todos los dispositivos obtendrían una respuesta . De hecho, probablemente rompería Internet .
Primero algunos numeros
- En promedio, los servicios de Google son 40,000 consultas por segundo .
- Akamai podría atender alrededor de 2 millones de solicitudes por segundo desde su CDN. Eso representa entre el 15 y el 30% del tráfico web, por lo que el tráfico web mundial puede ser de 13 millones de solicitudes por segundo .
- Hay 6.4 mil millones de dispositivos conectados .
- Tener todos los dispositivos conectados a la vez a Google generaría un tráfico 500 veces mayor que el tráfico web mundial y 160,000 veces mayor que el volumen de búsqueda promedio de Google.
Eso va a romper las cosas. Pero las fallas pueden ocurrir en muchos lugares . Si ocurren suficientes fallas antes de que las solicitudes lleguen a Google, es posible que no se eliminen los servidores de Google. Sin embargo, eso es probablemente un escenario optimista.
Todos se conectan a través de una red. Es probable que un volumen tan alto de tráfico acabe con algunas redes incluso antes de que el tráfico llegue a Google. Las redes pueden experimentar un servicio degradado (por ejemplo, respuestas más lentas), fallas parciales (por ejemplo, el 80% de las conexiones fallan) o un colapso completo de la red (no hay tráfico). Las redes fallidas reducirían el tráfico enviado a los servidores de Google.
- ¿Qué puedo hacer en mi vida para beneficiar a la humanidad?
- ¿Es posible vivir por 1,000 o más? Como podría ser posible?
- ¿Quién fue el primer humano en la Tierra según la mitología hindú? ¿Por qué?
- Si necesitamos evacuar la Tierra y solo se pueden salvar 100 personas, ¿cuál sería el desglose de la demografía (niveles de educación, religión, edades, etc.)?
- ¿Qué pasaría si todos en el planeta fueran multimillonarios?
¿Por qué podría fallar una red?
- Ancho de banda limitado. Una solicitud web no es particularmente grande, en particular cuando se compara con el ancho de banda como la transmisión de video. Sin embargo, una gran afluencia de solicitudes podría saturar el ancho de banda de algunas redes, al menos por un momento.
- Conexiones limitadas. Parte del tráfico tiene que pasar por un dispositivo con estado, como un firewall que reconoce el contenido. (Al igual que en las redes corporativas y el Gran Cortafuegos de China). Estos dispositivos deben realizar un seguimiento de todas las conexiones que se realizan a través de ellos y casi seguramente se sobrecargarían si cada dispositivo intentara establecer una conexión. Puede continuar sirviendo una fracción del tráfico, o puede fallar por completo.
- El colapso de enrutamiento. Si una red falla, otras redes no pueden enrutar el tráfico a través de ella. Esta es una situación común en Internet (los cables de fibra óptica se cortan sorprendentemente a menudo) y existen mecanismos para mantener las cosas funcionando. En particular, si una ruta deja de estar disponible, se seleccionará una nueva ruta. Sin embargo, múltiples fallas simultáneas en la red podrían resultar en que sucedan cosas malas.
- Las redes pueden redirigir su tráfico a una red ya sobrecargada , causando una mayor degradación en esa red. El problema puede agravarse según el tiempo de recuperación de las redes y la actualización de las rutas para enviar tráfico a las redes viables.
- Internet puede convertirse en particiones. Eso significa que una mitad de Internet no puede alcanzar la otra mitad. No son solo malas noticias para Google. Muchas de las grandes empresas de tecnología distribuyen su computación en todo el mundo y confían en la replicación entre centros de datos para mantener la consistencia. Si bien muchos sistemas pueden tolerar inconsistencias transitorias, una interrupción prolongada puede tener efectos visibles para el usuario, así como crear una acumulación de datos que deben ser replicados. Los intentos de replicación pueden complicar aún más los problemas de la red.
- Reintentos Muchas partes de la pila de redes desde la capa de hardware hasta la capa de aplicación usan un algoritmo de retroceso exponencial para reintentar la solicitud. Así que habría una segunda ola de solicitudes ligeramente retrasada. Luego una tercera ola de solicitud más retrasada. Y una cuarta ola, etc. Estos reintentos agravarían los problemas. Eventualmente (después de unos pocos segundos a unas pocas docenas de segundos), los errores darán como resultado un fallo grave y pondrán fin a los reintentos.
Supongamos que Internet no se rompió por completo y un gran volumen de tráfico de búsqueda llegó a Google . Hay algunos resultados posibles:
- La propia red de Google se cae. La red podría caerse por completo, pero es más probable que continúe funcionando de forma degradada. Sin embargo, en este escenario, algunas de las técnicas de recuperación estándar no estarán disponibles. Por ejemplo, si hay un problema en Europa, normalmente sería posible redirigir el tráfico a América del Norte. Pero el problema está ocurriendo en todas partes para que el remedio no esté disponible.
- Los servidores perimetrales de Google manejan las solicitudes. Si el tráfico solo implica solicitudes de la página de inicio (que es contenido estático) y no búsquedas reales, puede ser que la caché de borde sea suficiente para servir el contenido estático. Probablemente habrá una congestión en la red que resulte en que no se atiendan todas las solicitudes. También existe la posibilidad de que los servidores perimetrales sean el cuello de botella, por ejemplo, debido a que alcanza el número máximo de conexiones simultáneas o se demora demasiado en atender las solicitudes.
- Los servicios de búsqueda de Google se sobrecargan. Si el tráfico involucra búsquedas reales, es difícil imaginar cómo Google podría manejar un volumen tan alto de tráfico. Los centros de datos tienen márgenes para dar cuenta de aumentos inesperados en el tráfico, sin embargo, esos márgenes se saturarán rápidamente. La pila de búsqueda es compleja y algunos servicios fallarían más rápido que otros. Por ejemplo, una consulta puede devolver los resultados web, pero no los resultados de las noticias. En cualquier caso, la pila de búsqueda podría, en el mejor de los casos, servir solo una pequeña fracción del tráfico.
La mayor parte del tráfico se extinguiría en un minuto. ¿Cuánto tardaría en recuperarse Internet después de que no esté del todo claro? Algunos sistemas pueden quedar sin conexión debido a la oleada y requieren algún tipo de intervención manual. Las tablas de enrutamiento necesitarían estabilizarse. Probablemente alguna funcionalidad regresará en un par de minutos y la mayoría de la funcionalidad se restaurará en una o dos horas. Un puñado de sistemas podría estar fuera durante días.
Sería un día interesante por cierto.