Erlang, ese lenguaje que no hablas pero que permite que lo hagas todos los días

Erlang es el lenguaje de programación que utilizan universalmente las centralitas de telefonía para su funcionamiento. Su gran ventaja es que permite actualizaciones “en caliente” sin que el sistema se interrumpa.

Fue diseñado en la compañía Ericsson para realizar aplicaciones distribuidas, tolerantes a fallos, soft-real-time y de funcionamiento ininterrumpido. Proporciona el cambio en caliente de código de forma que éste se puede cambiar sin parar el sistema.

Aunque se utiliza en telecomunicaciones, también se emplea en banca, comercio electrónico, y mensajería instantánea.

Originalmente, Erlang era un lenguaje propietario de Ericsson, pero fue cedido como software de código abierto en 1998. La implementación de Ericsson es principalmente interpretada pero también incluye un compilador HiPE (sólo soportado en algunas plataformas).

Aunque comúnmente se considera que Erlang se forma a partir de las palabras Ericsson Language, en realidad su nombre proviene del matemático e ingeniero danés Agner Krarup Erlang (1878-1929) que inventó los campos de Ingeniería de tráfico (Telecomunicaciones) y la Teoría de colas.

Mientras trabajó para la CTC (Copenhagen Telephone Company), a Erlang se le presentó el problema clásico de la determinación de cuántos circuitos eran necesarios para proveer un servicio telefónico aceptable. Erlang puso manos a la obra investigando directamente el problema en el terreno. El problema que Erlang abordó fue el de tratar de diseñar una red de teléfonos: ¿cuántas “redes troncales” se necesitan para una determinada cantidad de llamadas entre habitantes de un pueblo y otro? A comienzos del siglo XX, para poder hablar por teléfono era imprescindible que hubiera una operadora que recibía en una “central” o “conmutador” el pedido de una persona que quería comunicarse con otra. Uno podría pensar el sistema de la siguiente forma: cada casa tenía un cable que la unía con la central telefónica. Cuando dos personas querían hablar entre sí, una de ellas llamaba a la central en donde una operadora recibía ese llamado y hacía un puente con el cable que unía la central con la casa de la otra persona. El sistema era increíblemente lento.

Cuando había que intercomunicar dos de estos pueblos, ¿cuántos troncos era necesario tender para dar un servicio razonable a una ciudad? No se puede poner solamente uno, porque eso implicaría demoras enormes por la cantidad de llamadas bloqueadas, pero tampoco se puede poner uno para cada teléfono (que sería el otro extremo) por lo costoso que significaría hacerlo y el desaprovechamiento que habría porque, ¿cuán baja será la probabilidad de que todos los usuarios necesitaran hacer llamadas entre dos pueblos al mismo tiempo? La compañía de teléfonos necesitaba una suerte de acuerdo entre estos dos extremos: un solo cable para todos, o que cada persona/teléfono tuviera un cable asignado. Por otro lado, además del número de llamados simultáneo, hay que atender el otro factor: ¿cuánto tiempo dura cada llamada? Esto es un dato que hay que estimar también. Había gente que hablaba una hora por teléfono y otras que solo necesitaban un minuto. Es decir, el tiempo es un factor también. Después de años de estudio, Erlang publicó sus resultados en un trabajo central: “Telephone Waiting Times” (“La espera para hablar por teléfono”).

Tan importante fue su contribución al campo de las telecomunicaciones que la medida del tráfico telefónico se realiza en Erlangs (la unidad es el Erlang) desde 1946, cuando así lo acordó el Comité Internacional Consultivo de Teléfonos y Telégrafos (CCITT)

Alf

Propietario de www.faq-mac.com.

0 0 votos
Article Rating
Subscribe
Notify of
0 Comments
Opiniones Inline
Ver todos los comentarios
0
Me encantaría saber tu opinión, por favor, deja un comentariox
()
x