La programación de redes de computadoras implica escribir programas de computadora que permiten que los procesos se comuniquen entre sí a través de una red de computadoras . [1]
En términos generales, la mayoría de las comunicaciones se pueden dividir en orientadas a conexión y sin conexión . El hecho de que una comunicación sea orientada a conexión o sin conexión se define por el protocolo de comunicación y no por la interfaz de programación de aplicaciones (API) . Algunos ejemplos de protocolos orientados a conexión son el Protocolo de control de transmisión (TCP) y el Intercambio de paquetes secuenciados (SPX) , y algunos ejemplos de protocolos sin conexión son el Protocolo de datagramas de usuario (UDP) , "IP sin formato" e Intercambio de paquetes entre redes (IPX) .
En las comunicaciones orientadas a la conexión, las partes de la comunicación suelen tener diferentes funciones. Una de las partes suele estar esperando conexiones entrantes; a esta parte se la suele denominar " servidor ". La otra parte es la que inicia la conexión; a esta parte se la suele denominar " cliente ".
En las comunicaciones sin conexión, una parte ("servidor") suele estar esperando un paquete entrante y la otra parte ("cliente") suele ser la que envía un paquete no solicitado al "servidor".
La programación de redes tradicionalmente cubre diferentes capas del modelo OSI/ISO (la mayor parte de la programación a nivel de aplicación pertenece a L4 y superiores). La siguiente tabla contiene algunos ejemplos de protocolos populares que pertenecen a diferentes capas OSI/ISO y las API más populares para ellos.
La programación de redes implica escribir programas que se comuniquen con otros programas a través de una red informática.