You are on page 1of 7

Aplikacijski sloj

Internet je najveća mreža na svijetu, a svoju popularnost može zahvaliti


prvenstveno brojnim uslugama, servisima i aplikacijama koje nudi. Ljudi koriste
Internet zbog servisa kao što su internetske stranice (eng. Web pages), elektronička
pošta (eng. Email), elektronička trgovina (eng. E-Commerce), razmjena datoteka i
multimedijalnih sadržaja (P2P programi, E-mule...), instant poruke (eng. Instant
Messaging) i brojni drugi.

Mrežni model je prikazan kroz 5 slojeva na slici sljedećoj slici:

Na vrhu ovog modela nalazi se aplikacijski sloj, koji definira vezu između krajnje
aplikacije i mreže. Aplikacijski sloj priprema podatke koji se trebaju poslati na
mrežu.

Internet stranica može sadržavati tekst, slike, ali i animacije. Zapravo u današnje
vrijeme, moderne internetske stranice različitog su sadržaja koji uključuje
multimedijalne, tekstualne i interaktivne komponente. Za mrežu je, nebitno koji se
podatak prenosi, jer su svi podaci na onom donjem, fizičkom sloju (engl. Physical
Layer) predstavljeni pomoću signala i za fizički sloj je potpuno nebitno kakav tip
podatka putuje mrežom. Na višim slojevima tip podataka dobiva na važnosti.

Na aplikacijskom sloju definisana su pravila kojima će krajnje aplikacije prenositi


podatke između sebe. Podsjetimo se primjera ljudskog razgovora koji nam
pomaže shvatiti odnose unutar mreže.

Neka od osnovnih pravila svake ljudske komunikacije su jezik i bonton. Jezik definira
konstrukciju rečenice, izgovor i pisanje pojedinih riječi i sl., dok bonton definira
pravila ponašanja. Bez poštivanja pravila određenih jezikom i bontonom bilo bi
gotovo nemoguće komunicirati, pa čak i postaviti najjednostavnije pitanje.
Postoje definisana pravila razgovora ili protokol kojim se razgovara.

Dvije aplikacije u mreži također razgovaraju predefiniranim protokolom. Protokoli


računarskih mreža objedinjuju sve ono što je definisano bontonom, jezikom, ali i
pismom. Osnovne uloge protokola u računarskim mrežama su:

 definicija naredbi i njihova značenja (jednako kao i značenja pojedinih riječi u


govoru i pismu)
 definicija pravila ponašanja na mreži (ko, kada i na koji način smije komunicirati, zapravo
bonton ponašanja na mreži)
 definišu koje se informacije mogu sa njima prenositi.

Čitava ideja modela slojeva, leži u tome da slojevi definišu funkcije. Na tim slojevima
egzistiraju protokoli koji te funkcije ostvaruju. Odnosno pružaju te funkcije svom sloju. Na
samom vrhu je aplikacijski sloj čija je zadaća pakovanje podataka u poruku, definiranje
izgleda te poruke, te prosljeđivanje te poruke nižem, transportnom sloju.

Zadaća aplikacijskog protokola je da sadržaj internetske stranice upakuje i pripremi te proslijedi


dalje. Ovdje treba sagledati i malo širi aspekt komunikacije na mreži. S jedne strane je korisnik
za svojim računarom na kojem putem aplikacije za pregled internet stranica (eng. Web
browser) zadaje zahtjev (eng. Request) za prikazom stranice. Taj zahtjev se putem mreže
prosljeđuje na server (eng. Server) koji tu stranicu ima pohranjenu u svojoj memoriji. Server
odgovara na zahtjev (eng. Reply) i internet stranica se prikazuje u korisnikovom internet
pretraživaču. Ovdje je još bitno napomenuti da kao što je i korisnik na svojoj strani koristio
aplikaciju za pregled internet stranica (na primjer, Internet Explorer, Mozzila Firefox, Opera…),
tako i server na svojoj strani mora imati pokrenutu aplikaciju, ili bolje rečeno servis, koji
poslužuje internetske stranice. Ni u jednom trenutku aplikacije i servisi nisu pitali niti ih se tiče
kojim načinima će se informacija prenijeti na drugu stranu. Njima je samo bilo bitno da
raspoznaju što ih se pita, pronađu to što se traži, te pošalju odgovor. Slično kao što je to
prilikom razmjene sadržaja internet stranica, događa se i u bilo kojoj drugoj komunikaciji na
mreži. Radi li se o elektroničkoj pošti, razmjeni datoteka ili nečem trećem, osnova komunikacije
je zahtjev jedne strane i odgovor druge (eng. Request/Reply), a ovo ujedno i definira odnos
Server/Klijent (eng. Server/Client). Primjer ovog slučaja može se vidjeti na slici 6.1.2

Slika Zahtjev/Odgovor princip rada

Serveri obično ne poslužuju samo jednog klijenta. Internet serveri koji pružaju usluge
internet stranica, elektronske pošte ili drugih sadržaja mogu posluživati na hiljade korisnika
(klijenata) u jednom trenutku.
Programi aplikacijskog sloja
U sklopu cijele priče o mrežama nalaze se, naravno, programi. Programi aplikacijskog sloja
sastavni su dio aplikacijskog sloja pomoću kojih korisnici dobivaju pristup na mrežu. Naprimjer,
internetskim pretraživačem (eng. Internet Browser) korisnici mogu pristupati serverima internet
stranica te pregledavati iste, programi za čitanje elektronske pošte omogućavaju povezivanje na
servere, na kojima se nalaze direktoriji pretinci pošte, te preuzimati poštu, P2P programima
korisniku je omogućeno povezivanje s hiljadama drugih korisnika ovakvih sistema te dijeljenje i
preuzimanje datoteka. Može se reći da bez korisničkih programa računarska mreža ne bi imala
posebnog smisla.

Jesu li korisnički programi jedina vrsta programa koja se pojavljuje na aplikacijskom sloju?
Odgovor na to pitanje leži u činjenici da se nikako ne smije zaboraviti na servere. Kako korisnik
raznih korisničkih programa pristupa sadržajima na serverima, tako i serveri moraju imati
pokrenute programe za "posluživanje". S obzirom na prirodu rada računara, oni ove programe
vide kao procese pokrenute u radnoj memoriji. Proces je dakle, programski kod koji obitava
u radnoj memoriji računara s ciljem izvršavanja određenih radnji.
Zahtjevi koji se nalaze pred korisničkim procesima mogu se svesti na sljedeće:

 slanje zahtjeva na servere


 obrada primljenih odgovora
 dekodiranje, dekomprimiranje i prikaz podataka.

Zahtjevi koji se nalaze pred serverskim procesima

 odgovaranje na zahtjeve većeg broja klijenata


 obrada primljenih zahtjeva
 kodiranje, komprimiranje i priprema podataka za slanje.

Ključna razlika između serverskih i klijentskih procesa je u tome što serverski procesi moraju biti
u stanju odgovarati na zahtjeve većeg broja klijenata. Rješenje ovog problema je ili
pokretati zasebne procese za svakog klijenta ili pokretati nove podprocese (eng. threads).
Ovisno o programskoj implementaciji, danas se mogu susresti oba rješenja, no modernije
aplikacije koriste drugo rješenje.

Klijentski programi mogu biti izvedeni na dva načina. Prvi je implementacija mrežne podrške u
sam program. To su mrežno-svjesni programi (eng. Network-Aware programs), a drugi način je
pružanje mrežne podrške programima putem servisa (eng. Service) specijalno namijenjenih tom
zadatku. Primjer pristup datotekama na lokalnoj mreži ili korištenje mrežnih pisača.

Protokoli aplikacijskog sloja


Programi su korisnički osnov aplikacijskog sloja, a protokoli (eng. Protocols) su mrežni osnov.
Naime, protokoli aplikacijskog sloja definišu pravila komunikacije između dva aplikacijska
procesa na udaljenim računarima (eng. host).

Protokoli aplikacijskog sloja (eng. Application Layer Protocols) definišu sljedeća pravila:

 uspostavljaju dosljedna pravila za razmjenu podataka između programa i servisa


pokrenutih na računarima koja sudjeluju u komunikaciji
 specificiraju kako su podaci unutar poruka strukturirani i definišu tipove poruka koje se
šalju na mrežu. Ove poruke mogu biti zahtjevi, potvrde, traženi podaci, statusne poruke ili
poruke greške
 definišu protokolne dijaloge, osiguravajući da poslane poruke dobivaju ispravne odgovore
od aplikacijskih procesa.

Danas na računarskim mrežama postoje brojne različite aplikacije koje pružaju različite usluge,
te se za njih moraju osigurati potrebni protokoli. Očigledno je da zbog velikog broja
aplikacija postoji i velik broj aplikacijskih protokola. Iz tog razloga graniči s nemogućim
poznavati svaki protokol, no neki su protokoli toliko poznati i svakodnevno korišteni da su
postali neizostavni dio Interneta.
Svaki protokol ima jasno definisanu ulogu i njegove karakteristike opisane su kroz mehanizme
rada i oblike poruka koje se šalju tim protokolom.

Programi mogu, ako je to potrebno, koristiti više protokola. Primjer, jedan protokol koriste
za uspostavu komunikacije, a drugi za sami prenos podataka. Tabela prikazuje neke poznatije
aplikacijske protokole, te prateće programe. Posebno valja ponoviti da se programi,
odnosno pokrenuti procesi, na klijentu i serveru razlikuju.

Klijentski
Protokol Objašnjenje Serverski programi
programi

Hyper Text Protokol za razmjenu Internet Explorer, Microsoft Internet


Transfer sadržaja internet Mozilla Firefox, Information Server (HTTP
Protocol (HTTP) stranica Opera servis), Apache

Microsoft Internet
Protokol za preuzimanje SmartFTP, FTP
File Transfer Information Server (FTP
i postavljanje datoteka Explorer, FileZilla
Protocol (FTP) servis), Apache FTP Server,
na server Client
FileZilla Server

Microsoft Outlook,
Simple Mail Lotus Notes, Microsoft Server (SMTP
Transfer Protokol za slanje servis), Microsoft Exchange
Mozilla
elektronske pošte
Protocol (SMTP) Server, ESMTP
Thunderbird

Microsoft Outlook, Microsoft Server (POP


Post Office Protokol za primanje Lotus Notes, servis), Microsoft Exchange
Protocol (POP) elektronske pošte Mozilla Server
Thunderbird

Microsoft Outlook,
Internet Napredniji protokol za Lotus Notes,
Message Access primanje elektronske Mozilla Microsoft Exchange Server
Protocol (IMAP) pošte
Thunderbird

Domain Name Protokol namijenjen za Svi korisnički


System protokol doznavanje IP adrese programi koji Microsoft Server (DNS
iz
(DNS) imena računara i koriste domenski servis)
obrnuto sistem imenovanja

Dynamic Host Protokol za dinamičku DHCP je na DHCP serverski servis


Configuration konfiguraciju klijenata klijentskim postoji u mnogo varijanti,
Protocol (DHCP) na TCP/IP mrežama računarima gotovo svaki proizvođač
mrežne serverske
pokrenut u obliku programske podrške ima i
pozadinskog servisa svoju verziju DHCP
servera

Protokol za razmjenu
Server Message SMB servis na serverskoj
datoteka u lokalnim Windows Explorer
Block (SMB) strani
mrežama

Protokol namijenjen za Većinom je sam Telnet


povezivanje na udaljeni putty, TeraTerm, serverski servis
Telnet protokol uređaj/računar, te minicom, ugrađen u operativni
izvršavanje naredbi i HyperTerminal sistem
funkcija preko mreže

Jedan od brojnih Shareza, LimeWire,


Gnutella protokola za razmjenu Morpheus, Shareza, LimeWire,
datoteka u P2P BearShare Morpheus, BearShare
mrežama

Tablica Pregled osnovnih protokola aplikacijskog sloja

You might also like