Gwida qasira għall-Ipprogrammar tas-Socket għan-Netwerks tal-Kompjuter TCP / IP

L-ipprogrammar tas-Socket jgħaqqad kompjuters ta 'servers u klijenti

L-ipprogrammar tas-sokits huwa t-teknoloġija fundamentali wara l-komunikazzjonijiet fuq netwerks TCP / IP . Socket huwa endpoint wieħed ta 'rabta b'żewġ direzzjonijiet bejn żewġ programmi li joperaw fuq netwerk. Is-sokit jipprovdi punt ta 'komunikazzjoni bidirezzjonali biex jintbagħat u jirċievi data ma' sokit ieħor. Il-konnessjonijiet tas-sokit normalment jaħdmu bejn żewġ kompjuters differenti f'netwerk ta 'żona lokali ( LAN ) jew madwar l-internet, iżda jistgħu jintużaw ukoll għal komunikazzjoni interproċessiva fuq kompjuter wieħed.

Sokits u Indirizzi

L-endpoints tas-sokki fuq in-netwerks TCP / IP kull wieħed għandhom indirizz uniku li huwa l-kombinazzjoni ta ' indirizz IP u numru tal-port TCP / IP. Minħabba li s-sokit huwa marbut ma 'numru ta' port speċifiku, is-saff TCP jista 'jidentifika l-applikazzjoni li għandha tirċievi d-dejta mibgħuta lilha. Meta toħloq sokit ġdid, il-librerija tas-sokit awtomatikament tiġġenera numru tal-port uniku fuq dak l-apparat. Il-programmer jista 'wkoll jispeċifika numri tal-port f'sitwazzjonijiet speċifiċi.

Kif jaħdmu sockets tal-Server

Normalment server jopera fuq kompjuter wieħed u għandu sokit li huwa marbut ma 'port speċifiku. Is-server jistenna kompjuter differenti biex jagħmel talba għal konnessjoni. Il-kompjuter klijent jaf l-isem host tal-kompjuter server u n-numru tal-port li fuqu s-server qed jisma. Il-kompjuter klijent jidentifika lilu nnifsu, u - jekk kollox imur dritt - is-server jippermetti lill-kompjuter klijent biex jikkonettja.

Libreriji Socket

Minflok il-kodiċi direttament għal APIs tas-sokit ta 'livell baxx, il-programmaturi tan-netwerk tipikament jużaw libreriji tas-sokit. Żewġ libreriji tas- sokki użati komunement huma Berkeley Sockets għal sistemi Linux / Unix u WinSock għal sistemi Windows.

Librerija tas-sokits tipprovdi sett ta 'funzjonijiet API simili għal dawk li jużaw il-programmaturi biex jaħdmu b'fajls, bħal open (), read (), write (), u close ().