Bilgisayar ağı programlama, çalışmak için ağ iletişimini kullanabilecek programlar yapma sürecini açıklar. Bu yöntem kullanılarak yapılan programlara - esas olarak diğer ağ bağlantılı programların çalışmasını gerektiren herhangi bir program - dağıtık bir sistem adı verilir. Bu programlar temel olarak üç kategoriye ayrılır: bağlı, bağlı olmayan veya eşler arası. Bu kategoriler, geniş anlamda, programın ağ bağlantısını kullanma şeklini ve diğer uçtaki programlarla olan ilişkisini tanımlar.
Bilgisayar ağı programlaması hakkında konuşurken, "ağ" terimi çok geniştir. Tek bir kişinin bağlı sistemler arasında erişimi paylaştığı yerel sistemlerden ve sistemlerin binlerce mil uzakta olabileceği tam açık İnternet erişiminden gelen her şeyi kapsar. Programlar, amaç, konum veya mesafeye bakılmaksızın, doğru çalışması için hepsinin farklı yerlerde birden fazla parçaya ihtiyacı vardır.
Bu programları tanımlamak için kullanılan ortak terim 'dağıtık sistemdir'. Bu, temel olarak programın ayrı bölümlerinin birden fazla yere dağıtıldığı anlamına gelir. Program tek bir sistem gibi davranır, ancak ağın bu sistemlerin etkileşim kurmasına izin vermesini gerektirir.
Genel olarak, bilgisayar ağı programlaması üç kategoriye ayrılır. Bağlı bir sistem, çalışması için iki veya daha fazla sistemin sürekli iletişim kurmasını gerektirir. Bunlar çoğu zaman tek bir istemcinin büyük bir sunucuya bağlandığı istemci / sunucu ilişkileridir. Bu durumlarda, genellikle adil bir eşitsizlik vardır, genellikle bağlı sistemin yarısı çok daha önemlidir veya diğerlerinden daha fazla işlevselliğe sahiptir.
Bağlı olmayan bilgisayar ağı programlaması, birbiriyle konuşması gereken, ancak bağımsız olarak çalışacak sistemler oluşturur. Bu model birçok uygulamaya sahip olsa da, yaygın bir geçerli kullanım kimlik doğrulama sunucusudur. Bu kurulumda, bir program bir yerde dolu ve eksiksizdir, ancak farklı bir program tarafından talimat verilmedikçe çalışmaz. Bir kullanıcı programı kullanmaya çalıştığında, kimlik doğrulama sunucusunu izin için sorgular ve sunucu yanıt verir. Sunucudaki bilgiler program için gerekli değildir, ancak iletişim kuramadıkça çalışmaz.
Üçüncü tip bilgisayar ağı programlaması eşler arasıdır. Bu tarzda, programlar hem bir istemci hem de bir sunucudur, aynı anda hem bilgi gönderip hem de alırlar. Bu programlar tipik olarak aynı tipteki diğer programlara bağlanır ve binlerce olmasa da yüzlerce bağımsız sistemden oluşan kapalı bir sistem oluşturur. Bu, genellikle bilgisayar ağı programlama stillerinin en dengeli olanıdır çünkü her bir program aynıdır.


