Co to jest programowanie sieci komputerowej?
Programowanie sieci komputerowej opisuje proces tworzenia programów, które potrafią wykorzystywać komunikację sieciową do działania. Programy wykonane przy użyciu tej metody - zasadniczo każdy program wymagający działania innych programów sieciowych - są nazywane systemem rozproszonym. Programy te zasadniczo dzielą się na trzy kategorie: połączone, niepołączone lub peer-to-peer. Kategorie te opisują ogólnie sposób, w jaki program korzysta z połączenia sieciowego i jego relacje z programami na drugim końcu.
Mówiąc o programowaniu sieci komputerowej, pojęcie „sieć” jest bardzo szerokie. Obejmuje wszystko od lokalnych intranetów, w których jedna osoba dzieli dostęp między podłączonymi systemami, a także pełny dostęp do Internetu, gdzie systemy mogą znajdować się w odległości tysięcy mil. Bez względu na cel, lokalizację lub odległość między programami wszystkie potrzebują wielu elementów w różnych miejscach, aby działać poprawnie.
Często używanym terminem opisującym te programy jest „system rozproszony”. Zasadniczo oznacza to, że poszczególne części programu zostały rozmieszczone w wielu lokalizacjach. Program działa jak pojedynczy system, ale wymaga sieci, aby umożliwić tym systemom interakcję.
Zasadniczo programowanie sieci komputerowej dzieli się na trzy kategorie. Podłączony system wymaga, aby dwa lub więcej systemów stale się komunikowało, aby działać. Są to często relacje klient-serwer, w których wielu pojedynczych klientów łączy się z jednym dużym serwerem. W takich przypadkach występuje na ogół znaczna nierówność, zwykle połowa podłączonego systemu jest o wiele ważniejsza lub ma więcej funkcji niż druga.
Niepołączone programowanie sieci komputerowej tworzy systemy, które muszą ze sobą rozmawiać, ale będą działać niezależnie. Chociaż ten model ma wiele aplikacji, powszechnym bieżącym zastosowaniem jest serwer uwierzytelniania. W tej konfiguracji program jest pełny i kompletny w jednym miejscu, ale nie będzie działał, chyba że otrzyma inne instrukcje. Gdy użytkownik spróbuje użyć programu, zapyta serwer uwierzytelniający o zgodę, a serwer odpowie. Informacje na serwerze są niepotrzebne dla programu, ale nie będą działać, dopóki nie będą mogły się komunikować.
Trzeci rodzaj programowania sieci komputerowych to peer-to-peer. W tym stylu programy są zarówno klientem, jak i serwerem, jednocześnie wysyłając i odbierając informacje. Programy te zazwyczaj łączą się z innymi programami tego samego typu, tworząc zamknięty system składający się z setek, jeśli nie tysięcy, niezależnych systemów. Jest to ogólnie najbardziej zrównoważony styl programowania w sieci komputerowej, ponieważ każdy program jest zasadniczo taki sam.