Zamislite da je računar povezan na internet preko jednog kabla (što i jeste slučaj). I svi podaci prolaze kroz taj kabl. Međutim, svi ti podaci pripadaju različitim programima (istovremeno slušamo muziku, pregledamo sajtove, sinhronizujemo slike itd…). Slično je i sa wi-fi mrežom, nema žica, ali se svi podaci slivaju u jedan konektor na matičnoj ploči.
U suprotnom bi se podaci mešali. Tada koristimo virtuelne portove.
Kako da razgraničimo podatke koji pristižu preko fizičkog porta, tako da bi svaki program mogao da razlikuje koji su podaci namenjeni njemu?
Svaki podatak koji prolazi kroz fizički port dobije neki svoj broj. Operativni sistem prati te brojeve, virtuelne portove i onda zna kom programu koji paket podataka da dodeli.
Svaki program prati zaseban port i tako osigurava da ceo protok funkcioniše nesmetano. Na primer, imejl klijent može biti na portu 55, brauzer na 56, ili telegram na portu 65. Tako se ne može desiti da imejl završi u telegramu i slično. Treba imati u vidu i da postoje neki standardni portovi, brojevi koji su unapred određeni za aplikacije.
Ako je neki port zatvoren a podaci dolaze na njega, ti podaci će se ignorisati. Tako blokiranjem portova može nekome da se ograniči internet saobraćaj.