Kratak vodič za programiranje soketa za TCP / IP računarske mreže

Socket programiranje povezuje server i klijent računare

Programiranje soketa je osnovna tehnologija iza komunikacija na TCP / IP mrežama. Socket je jedna krajnja tačka dvosmerne veze između dva programa koji se pokreću na mreži. Utičnica obezbeđuje dvosmernu komunikacionu krajnju tačku za slanje i prijem podataka sa drugim soketom. Priključci soketa obično rade između dva različita računara na lokalnoj mreži ( LAN ) ili preko interneta, ali se takođe mogu koristiti za interproces komunikaciju na jednom računaru.

Sockets and Addresses

Konačne tačke soketa na TCP / IP mrežama imaju jedinstvenu adresu koja je kombinacija IP adrese i broja TCP / IP porta . Pošto je utičnica vezana za određeni broj porta, TCP sloj može identifikovati aplikaciju koja bi trebala primiti podatke poslate njemu. Prilikom kreiranja novog soketa, biblioteka soketa automatski generira jedinstveni broj porta na tom uređaju. Programator takođe može odrediti brojeve portova u određenim situacijama.

Kako funkcionišu serverski utičnici

Obično se server pokreće na jednom računaru i ima priključak koji je vezan za određeni port. Server čeka drugog računara da napravi zahtev za povezivanje. Klijentski računar zna ime hosta serverskog računara i broj porta na kojem server sluša. Klijentski računar se identifikuje i-ako sve ide ispravno - server dozvoljava klijentovom računaru da se poveže.

Socket biblioteke

Umesto da direktno kode direktno na API soket niskog nivoa, mrežni programeri obično koriste biblioteke socket-a. Dve najčešće korišćene biblioteke soketa su Berkeley Sockets za Linux / Unix sisteme i WinSock for Windows sisteme.

Biblioteka soketa pruža skup API funkcija sličnih onima koji programeri koriste za rad sa datotekama, kao što su open (), read (), write () i close ().