Upload
jonny
View
95
Download
3
Embed Size (px)
DESCRIPTION
TCP/IP - Aplikacioni sloj. Aplikacioni sloj. Aplikacioni sloj. Klijent - server model TELNET FTP Elektronska pošta (SMTP, POP3) DNS. Klijent-server model. - PowerPoint PPT Presentation
Citation preview
TCP/IP
TCP/IP - Aplikacioni sloj
TCP/IP
Aplikacioni sloj
SMTP FTP TELNET DNS HTTP
Aplikacije
TCP UDPTransport
Aplikacija
Prezentacija
Sesija
IP
ICMP IGMP
ARP RARP
Mreza
“Host-mreza” protokoli
Veza
Fiz. sloj
TCP/IP
Aplikacioni sloj Klijent-server model TELNET FTP Elektronska pošta (SMTP, POP3) DNS
TCP/IP
Klijent-server model Klijent, aplikacioni program koji se izvršava na lokalnoj mašini,
zahteva uslugu (servis) od drugog aplikacionog programa, server, koji se izvršava na udaljenoj mašini.
Server nudi usluge mnogim klijentima. Relacija tipa: ˝više-prema-jedan˝: više klijenata može koristiti servise jednog servera
Klijentski program se izvršava samo onda kada je usluga servera potrebna.
Serverski program, radi sve vreme, zato što unapred ne zna kada će neki klijent zatražiti uslugu.
Internet
Klijent Server
TCP/IP
TELNET Klijent-server program opšte namene Omogućiti korisniku da pristupi aplikacionom programu na
udaljenom računaru: korisnik se prijavi za rad (login-uje) na udaljenom
računaru koristi aplikacije dostupne na udaljenom računaru i
prenosi rezultate nazad na svoj računar Lokalni terminal se ponaša kao da je terminal udaljenog
sistema
TCP/IP
TELNET - koncepti Sistemi sa raspodelom vremena
Više korisnika putem izdvojenih terminala koriste jedan veliki računar.
Terminal (tastatura + monitor) se koristi za unos podataka i prikaz razultata. Obrada se vrši na centralnom računaru
Iluzija da svaki korisnik radi na posebnom sistemu.
TCP/IP
Lokalni login
Terminal drajver
Operativnisistem
. . .
. . .
Aplikacioni programi
Terminal
TCP/IP
Udaljeni login
Terminal drajver
Operativnisistem
. . .
Terminal
TCP
IP
veza
fiz.
TELNET klijent
Pseudoterminal drajverOperativni
sistem
. . .
. . .
Aplikacioni programi
TCP
IP
veza
fiz.
TELNET server
Internet
TCP/IP
NVT Različiti računari i operativni sistemi koriste različita
kodiranja karaktera i prepoznaju različite specijalne kombinacije karaktera
NVT (Network Virtual Terminal - mrežni virtuelni terminal) - definiše univerzalni skup karaktera
TELNET klijentTerminal
Internet
TELNET server
Pseudoterminal drajver
Skup karaktera lokalnog racunara
NVT skup karaktera Skup karaktera udaljenog racunara
TCP/IP
NVT skup karaktera Definiše dva skupa 8-bitnih karaktera:
Za podatke Za kontrolne informacije
Podatak Kontrolni karakter
ASCII
TCP/IP
Neki kontrolni karakteri
TCP/IP
Ugrađivanje
TELENT koristi istu TCP konekciju za prenos podataka i kontrolnih karaktera.
To se poštiže ugradnjom kontrolnih karaktera u tok bajtova
Server Klijent
IACa ECeliftac 1
IAC (Interpret As Control - interpretiraj kao kontrolu) označava početak niza
kontrolnih karaktera
TCP/IP
Opcije
TELNET pruža mogućnost klijentu i serveru da se dogovore oko opcija koje će koristiti tokom sesije.
Opcije su dodatne mogućnosti raspoložive korisnicima sa naprednijim terminalima.
Korisnici sa jednostavnijiim terminalima mogu koristiti podrazumevane opcije.
TCP/IP
OpcijeKôd Opcija Značenje
0 Binary 8-bitni (binarni) prenos
1 Echo Svi primljeni podaci se vraćaju drugoj strani
3 Suppress go ahead Ignoriši go-ahead opciju
5 Status Zahteva status TELENT-a
6 Timing mark Definiše vremenski marker
24 Terminal type Postavlja tip terminala
32 Terminal speed Postavlja brzinu terminala
34 Line mode Promena na linijski način rada
TCP/IP
NVT skup karaktera za pregovaranjeKarakter Decimalno Binarno Značenje
WILL 251 11111011 1. Ponuda dozvole2. Prihvatanje tražene dozvole
WONT 252 11111000 1. Odbijanje tražene dozvole2. Ponuda zabrane3. Prihvatanje ponuđene zabrane
DO 253 11111001 1. Prihvatanje tražene dozvole2. Traženje dozvole
DONT 254 1111110 1. Neprihvatanje ponuđene dozvole
2. Prihvatanje ponuđene zabrane3. Traženje zabrane.
TCP/IP
Pregovaranje - ponuda dozvole
WILL
DO ili DONT
Da li da dozvolim opciju?
Dozvoli (ili Nemoj da dozvoliš)Predajnik Prijemnik
TCP/IP
Pregovaranje - traženje dozvole
DO
WILL ili WONT
Tražim od tebe da dozvoliš opciju.
Hoću (ili Neću)Predajnik Prijemnik
TCP/IP
Pregovaranje - ponuda zabrane
WONT
DONT
Ne želim više da koristim ovu opciju
Nemoj više da je koristišPredajnik Prijemnik
TCP/IP
Pregovaranje - traženje zabrane
DONT
WONT
Nemoj više da koristiš ovu opciju
Neću je više koristitiPredajnik Prijemnik
TCP/IP
Pregovaranje - primer
Klijent
ECHO DO IAC
ECHOWILLIAC
Tražim od tebe da dozvoliš opciju Echo.
Dozvoliću opciju Echo.
Server
TCP/IP
Pregovaranje oko podopcija
Karakter Decimalno Binarno Značenje
SE 240 11110000 Kraj podopcije
SB 250 11111010 Početak podopcije
Pojedine opcije zahtevaju dodatne informacije.
Klijent i server razmenjuju dodatne informacije kroz proceduru pregovaranje oko podopcija
NVT karakteri za pregovaranje oko podopcija
TCP/IP
Pregovaranje oko podopcija - primer
Klijent
Terminal Type WILL IAC
DOIAC
Da li da dozvolim opciju ˝terminal type˝
Dozvoli opciju ˝terminal type˝
Server
Terminal Type
IACSB´V´ Terminal Type´T´IACSE
Postavljam tip terminala na ´VT´
TCP/IP
Simetrija
Klijent i server su ravnopravni.
Na početku sesije obe strane koriste podrazumevane opcije.
Ako bilo koja strana želi da dozvoli neku opciju, ona je može ponuditi ili zatražiti
Koncept pregovaranja omogućava lako proširenje TELNET-a
TCP/IP
Kontrola servera
Kôd Decimalno Binarno Značenje
IP 244 11110100 Prekid (interrupt) procesa
AO 245 11110101 Prekid (abort) procesa
AYT 246 11110110 Da li si tamo?
EC 247 11110111 Brisanje karkatera
EL 248 11110000 Brisanje linije
NVT karakteri koji se koriste za kontrolu aplikacije koja se izvršava na udaljenom serveru.
TCP/IP
Primer kontrole servera - prekid aplikacije
TCP/IP
Out-of-band signalizacija Da bi u svim situacijama obezbedio dejstvo kontrolnih karaktera, TELENT koristi out-of-band signalizaciju.
Kod out-of-band signalizacije, kontrolni karakteri se šalju udaljenom procesu izvan redosleda
Klijent
Podaci IAC PodaciIPDM
Server
Urgentni pointer
odbacuju seprihvataju se
TCP/IP
Načini rada Podrazumevani Karakter-orijentisani Linijski
TCP/IP
Podrazumevani način rada Eho obavlja klijent Klijent šalje severu liniju teksta Klijent je spreman da prihvati novu liniju od
korisnika tek kada od severa dobije komandu GA (Go Ahead)
TCP/IP
Podrazumevani način rada - primerKlijent Server
GO AHEAD
WILL TERMINAL TYPE
WILL TERMINAL SPEED
DO TERMINAL TYPE
DONT TERMINAL SPEED
GO AHEAD
GO AHEAD
Login:
milan
Password:
****
GO AHEAD
GO AHEAD
GO AHEAD
cp file1 file2
Microsoft Word Document
TCP/IP
Karakter-orijentisani način rada Eho karaktera obavlja server
Klijent šalje serveru svaki pojedinačni karakter kojeg korisnik unese preko tastature. Server vraća nazad primljene karaktere, a klijent ih prikazuje na ekranu.
Nije efikasan jer generiše nepotrebno veliki mrežni saobraćaj. Jedan karakter - tri TCP segmenta.
TCP/IP
Linijski način rada Editovanje linije teksta se obavlja na strani
klijenta (eho, brisanje, umetanje karaktera i sl.) Serveru se šalju komplente linije Za razliku od podrazumevanog načina rada,
linijski način rada omogućava punu-dupleks komunikaciju, jer klijent može, bez čekanja na komandu GA, da pošalje serveru više linija teksta, jednu za drugom
TCP/IP
FTPFTP (File Transfer Protocol – Protokol za prenos fajlova) je aplikacioni protokol za kopiranje fajlova sa jednog na neki
drugi host.
TCP/IP
FTP konekcije
Proces za prenos
podataka
Upravljacki proces
Proces korisnickog interfejsa
Korisnik
Internet
TCP/IP Proces za prenos
podataka
Upravljacki proces
Hard disk
FTP klijent FTP server
Hard disk
Upravljačka konekcija
Konekcija za prenos podataka
FTP zahteva dve TCP konekcije.Dobro-poznati port 21 se koristi za upravljačku
konekciju, a port 20 za konekciju za prenos podatakaUpravljačka konekcija je otvorena za sve vreme
trajanja sesijeKonekcija za prenos podataka se otvara, a onda i
zatvara za prenos svakog pojedinačnog fajla
TCP/IP
Otvaranje upravljačke konekcije
Proces za prenos
podataka
Upravljacki proces
Proces za prenos
podataka
Upravljacki proces
21
ServerKlijent
Proces za prenos
podataka
Upravljacki proces
Proces za prenos
podataka
Upravljacki proces
21
ServerKlijent
62012
Aktivno otvoren port
(1)
Server je izvršio pasivno otvaranje dobro-poznatog porta 21 i čeka na
klijenta.
(2)
Klijent koristi dinamički prort i inicira aktivno otvaranje konekcije sa
serverom.
TCP/IP
(3)Server izvršava aktivno otvaranje
konekcije sa klijentom koristeći dobro-poznati port 20 za sebe i
primljeni dinamički broj porta za klijenta.
Kreiranje konekcije za prenos podataka
Proces za prenos
podataka
Upravljacki proces
Proces za prenos
podataka
Upravljacki proces
21
ServerKlijent
62012
63000
Pasivnootvoren port
Proces za prenos
podataka
Upravljacki proces
Proces za prenos
podataka
Upravljacki proces
21
ServerKlijent
62012
63000
Pasivnootvoren port
PORT 63000
Proces za prenos
podataka
Upravljacki proces
Proces za prenos
podataka
Upravljacki proces
21
ServerKlijent
62012
63000 20Aktivno
otvoren port
(1)Klijent, a ne server, izvršava pasivno
otvaranje dinamičkog porta.
(2)Klijent šalje broj dinamičkog porta
serveru, korišćenjem komande PORT (prenosi se preko upravljačke konekcije)
TCP/IP
Komunikacija preko upravljačke konekcije
Upravljački proces
Upravljački proces
NVT ASCII
Upravljačka konekcija
Klijent Server
Komunikacija se stvaruje putem komandi i odziva kodiranih u NVT skupom karatkera.
TCP/IP
Komunikacija preko konekcije za podatke
Proces za prenos
podataka
Proces za prenos
podatakaKonekcija za prenos podataka
Klijent Server
Lokalni tipovi podataka i strukture
Lokalni tipovi podataka i strukture
Klijent definiše: tip fajla, struktura podataka i
način prenosa.
Za prenos fajlova.
Prenosu svakog fajla prethodi priprema prenosa preko upravljačke konekcije, kojom se definiše tip, strukutra i način prenosa fajla.
TCP/IP
Komande
Odzivi
Komande
Upravljačka konekcije
TCP/IP
Komande za pristup
Komanda Argument(i) Opis
USER User id Korisničko ime
PASS User password Korisnička lozinka
ACCT Nalog koji se menja Podaci o nalogu
REIN Ponovna inicijalizacija
QUIT Logout (odjavljivanje)
ABOR Poništavanje prethodne komande
TCP/IP
Komande za menadžment fajlovaKoman. Argument(i) Opis
CWD Ime direktorijuma Promena radnog direktorijuma
CDUP Prelazak na roditeljski direktorijum
DELE Ime fajla Brisanje fajla
LIST Ime direktorijuma Listanje poddirektorijuma ili fajlova
NLIST Ime direktorijuma Listanje imena direktorijuma ili fajlova
MKD Ime direktorijuma Kreiranje novog direktorijuma
PWD Prikazivanje imena radnog direktorijuma
RMD Ime direktorijuma Brisanje direktorijuma
RNFR Ime fajla (staro ime fajla) Identifikuje fajla čije se ime menja
RNTO Ime fajla (novo ime fajla) Promena imena fajla
SMNT Ime fajl-sistema Priključivanje fajl-sistema.
TCP/IP
Komande za formatiranje podataka
Komanda Argument(i) Opis
TYPE A (ASCII), E (EBCDIC), I (Image) Definisanje tipa fajla
STRU F (File), R (Record), P (Page) Definisanje strukture fajla
MODE S (Stream), B (Block), C (Compressed) Definisanje načina prenosa
TCP/IP
Komande za definisanje porta
Komanda Argument(i) Opis
PORT 6-cifreni idnetifikator Klijent bira port
PASV Server bira port.
TCP/IP
Komande za prenos fajlovaKom. Argument(i) Opis
RETR Ime fajla(ova) Preuzimanje fajla. Fajl se prenosi sa servera na klijenta.
STOR Ime fajla(ova) Smeštanje fajla. Fajl (ili fajlovi) se prenosi sa klijenta na server
APPE Ime fajla(ova) Slično STOR s tom razlikom da ako fajl postoji, podaci se dodaju fajlu
STOU Ime fajla(ova) Isto kao STOR, s tim da se očekuje da ime fajla bude jedinstveno u direktorijumu. Ako fajl sa datim imenom postoji, postojeći fajl neće biti prebrisan.
ALLO Ime fajla(ova) Rezerviše prostor za smeštanje fajla na serveru.
REST Ime fajla(ova) Pozicionira marker fajla na navedenu poziciju u fajlu.
STAT Ime fajla(ova) Vraća status fajla.
TCP/IP
Ostale komande
Komanda Argument(i) Opis
HELP Traži informacije o serveru.
NOOP Testiranje da li je server ˝živ˝
SITE Komande Za komande specifične za konkretan sajt
SYST Traži informaciju o operativnom sistemu servera
TCP/IP
Odzivi Odziv se sastoji od trocifarskog koda (xyz) i
pratećeg teksta
TCP/IP
Prva cifra odziva Prva cirfra. Prva cifra odziva definiše status kmande. Na
ovoj poziciji može se naći jedna od pet cifara (1-5): 1yz (pozitivan preliminarni odziv). Akcija zahtevana komandom je
startovana. Kada završi akciju, server će poslati još jedan odziv. 2yz (konačni pozitivan odziv). Akcija je završena. Server je spreman
da prihvati sledeću komandu. 3yz (pozitivan među-odziv). Komanda je prihvaćena, ali su
neophodne dodatne informacije. 4yz (prolazni negativan odziv). Akcija nije startovana, jer server
trenutno nije u mogućnosti da je izvrši. Ista komanda može biti poslata kasnije.
5yz (konačni negativni odziv). Komanda nije prihvaćena i ne bi trebalo pokušavati ponovo.
TCP/IP
Druga cirfra odziva Druga cifra. Druga cifra odziva takođe
definiše status komande. Na ovoj poziciji meže se naći jedna od šest cifara (1-6): x0z - odziv se odnosi na sintaksu komande x1z - odziv je informativne prirode x2z - odziv se odnosi na konekciju x3z - odziv se odnosi na autorizaciju korisnika x4z - značenje nije definisano x5z - odziv se odnosi na fajl sistem
TCP/IP
Treća cifra odziva Treća cifra ukazuje na dodatne informacije
TCP/IP
Prenos fajlova - tri operacije1. Fajl se kopira sa serverskog na klijentski računar. Ova
operacija se pod kontrolom komande RETR i zove se preuzimanje fajla.
2. Fajl se kopira sa klijentskog na serverski računar. Ova operacija je pod kontrolom komande STOR i zove se smeštanje fajla.
3. Server šalje klijentu spisak direktorijuma ili imena fajlova. Ova operacija je pod kontrolom komande LIST.
TCP/IP
Primer - listanje sadržaja direktorijuma
Upravljački proces
Upravljački proces
Klijent Server
220 (Servis je spreman)
USER petar
PASS ****
331 (Korisničko ime OK. Lozinka?)
150 (Sledi otvaranje kon. za podatke)
PORT 7777
230 (Login OK)
LIST predavanja/IT
226 (Konekcija za podatke OK)
236 (Zatvaranje kon. za podatke)
QUIT
221 (Zatvaranje servisa)
Spisak fajlova ili direktorijuma
Spisak fajlova ili direktorijuma
PRENOSPODATAKA
Proces za prenos
podataka
Proces za prenos
podataka
Klijent Server
Upravljačka konekcija Konekcija za podatke
Microsoft Word Document
TCP/IP
Elektronska pošta
Elektronska pošta (e-mail) je sigurno jedan od najpopularnijih i najstarijih mrežnih servisa.
Na početku ere Interneta, poruke koje su slate elektronskom poštom bile su kratke i isključivo tekstualne. Danas je elektronska pošta mnogo složenija i omogućava
prenos ne samo teksta, već i audio i video zapisa.
TCP/IP
Arhitektura elektronske pošte
Arhitekturu e-mail sistema istražićemo kroz opis četiri tipična scenarija. Počećemo sa najjednostavnijom, a završiti sa najsloženijom i u isto vreme
najčešćom situacijom
TCP/IP
Prvi scenario
Ana Milan
Sistem
UA UA
Poštanski sandučići
UA - Korisnički agent
Pošiljalac i primalac e-mail-a su korisnici (ili aplikacioni programi) na istom sistemu - dovoljna su dva korisnička agenta
TCP/IP
Drugi scenario
Ana
Sistem(mail server)
UA
MTAklijent Internet
MTAserver
Milan
UA
Sistem(mail server)
Red čekanja
Pošiljalac i primalac e-mail-a su korisnici (ili aplikacioni programi) na dva različita sistema. Potrebna su dva korisnička agenta (UA) i par agenata za prenos
prouka MTA (klijent i server)
MTA - Agent za prenos poruka
TCP/IP
Treći scenario
Ana
Sistem(mail server)
UA
MTAklijent Internet
MTAserver
Milan
UA
Sistem(mail server)
Red čekanja
MTAklijent
LAN
MTAserver
Pošiljalac nije direktno povezan sa svojim sistemom, već preko LAN-a.
Potrebna su dva korisnička agenta i dva para agentata za prenos prouka (klijent i server)
TCP/IP
Četvrti scenario - najčešći
Milan UAMAAklijent
LAN
Ana
Sistem(mail server)
UA
MTAklijent Internet
MTAserver
Sistem(mail server)
MTAklijent
LAN
MTAserver
MAAserver
Kada su i pošiljalac i primalac povezani sa mail serverom preko LAN-a, potrebna su dva korisnička agenta, dva para MTA (klijent i server) i jedan par agentata za preuzimanje
pourka MAA (klijent i server)
MAA - Agent za preuzimanje poruka
TCP/IP
Push vs. pop
MTAklijent
MTAserver
Klijent šalje (push) poruku
MAAklijent
MAAserver
Klijent preuzima (poll) poruku
TCP/IP
Korisnički agent Softverski paket (program kao npr. Microsoft
Outlook) za kompoziciju (kreiranje) poruka, čitanje poruka, odgovaranje na i prosleđivanje poruka. Kreiranje poruka. Čitanje poruka. Odgovaranje na poruku. Prosleđivanje poruka. Mailbox-ovi. Korisnički agent obično kreira dva mailbox-
a: za primljene poruke (inbox) i poslate poruke (outbox).
TCP/IP
Format elektronskog pisma
Tel
oZ
agla
vlje
Ko
vert
a
Koverta
Poruka
TCP/IP
Email adresa
Lokalni deo Ime domena
Adresa poštanskog
sandučeta na mail severu
Ime domena mail servera
@
TCP/IP
MIME
MIME (Multipurpose Internet Mail Extensions – višenamenska proširenja Internet pošte) je dodatni protokol koje omogućava prenos ne-ASCII sadržaja u e-mail poruci.
TCP/IP
MIME - princip
UA
MIME
MTA
UA
MIME
MTA
ne-ASCII kod
7-bitni NVT ASCII
7-bitni NVT ASCII
7-bitni NVT ASCII
ne-ASCII kod
Korisnik Korisnik
TCP/IP
MIME zaglavlja
MIME-Version: 1.1Content-Type: tip/podtipContent-Transfer-Encoding: tip kodiranjaContent-Id: identifikator porukeContent-Description: tekstualni opis netekstualnog sadrzaja
Telo elektronskog pisma
Zaglavlje elektronskog pisma
MIME zaglavlja
TCP/IP
MIME tipovi i podtipovi
Tip Podtip Opis
Text
Plane Neformatirani tekst
Enriched Tekst sa jednostavnim formatiranjem
HTML HTML format
ImageGif Slike u GIF formatu
Jpeg Slike u JPEG formatu
Audio Basic Zvuk
Video Mpeg Film u MPEG formatu
TCP/IP
MIME tipovi i podtipovi
Tip Podtip Opis
ApplicationOcet-stream sekvenca bajtova
Postscript dokument za štampanje u PostScript formatu
Message
Rfc822 MIME RFC 822 poruka
Partial Poruka je podeljena na delove
External-body Poruka se mora preneti nezavisno
Multipart
Mixed Nezavisni delovi definisanom redosledu
Alternative Više poruka različitog formata
Parallel Delovi moraju biti prikazani istovremeno
Digest Svaki deo je jedna kompletna RFC 822 poruka
TCP/IP
Multipart poruka
Content-Type: multipart/alternative; boundary=qwerqcewfqweffqe
--qwerqcewfqweffqeContent-Type: text/enriched;
Happy birthday to youHappy birthday to youHappy birthday dear <bold> Tanja </bold>Happy birthday to you
--qwerqcewfqweffqeContent-Type: message/external-body;access-tipe=”ftp”;site=”music.com”name=”birthday.snd”
Content-type:audio&basicContent-transfer-encoding: base64--qwerqcewfqweffqe--
Za
glavlje
po
ruke
Telo
poruke
TCP/IP
Tip kodiranja (Content-Transfer-Encoding)
Tip Opis
7bit NVT ASCII karakteri i kratke linije
8bit Ne-ASCII karakteri i kratke linije
Binary Jedinstveni ne-ASCII karakteri sa linijama neograničene dužine
Base64 6-bitni blokovi podataka su kodirani 8-bitnim ASCII karakterima
Quated-printable Ne-ASCII karakteri su kodirani parom znak jednakosti i ASCII kod
TCP/IP
Base64 kodiranje
11001100 10000001 00111001
Base64konvertor
110011(51)
001000(8)
000100(4)
111001(57)
01111010 01001001 01000101 00110101
5EIz
Ne-ASCIIpodaci
ASCIIpodaci
TCP/IP
Base64 - tabela kodiranja
TCP/IP
Binarni fajl kodiran šemom Base64
SVNBKjAwKiAgICAgICAgICAqMDAqICAgICAgICAgICowMSo5ODc2NTQzMjEgICAgICAqMTIqODAwNTU1MTIzNCAgICAgKjkxMDYwNyowMTExKlUqMDAyMDAqMTEwMDAwNzc3KjAqVCo+CkdTKlBPKjk4NzY1NDMyMSo4MDA1NTUxMjM0KjkyMDUwMSoyMDMyKjc3MjEqWCowMDIwMDMKU1QqODUwKjAwMDAwMDAwMQpCRUcqMDAqTkUqTVMxMTEyKio5MjA1MDEqKkNPTlRSQUNUIwpSRUYqSVQqODEyODgyNzc2MwpOMSpTVCpNQVZFUklDSyBTWVNURU1TCk4zKjMzMTIgTkVXIEhBTVBTSElSRSBTVFJFRVQKTjQqU0FOIEpPU0UqQ0EqOTQ4MTEKUE8xKjEqMjUqRUEqKipWQypUUDhNTSpDQipUQVBFOE1NClBPMSoyKjMwKkVBKioqVkMqVFAxLzQqQ0IqVEFQRTEvNElOQ0gKUE8xKjMqMTI1KkVBKioqVkMqRFNLMzEvMipDQipESVNLMzUKQ1RUKjMKU0UqMTEqMDAwMDAwMDAxCkdFKjEqNzcyMQpJRUEqMSoxMTAwMDA3NzcK
TCP/IP
Quated-printable kodiranje
00100110&
0100110L
10011101ne-ASCII
001110019
01001011K
Quated-printable
00100110&
0100110L
00111110=
001110019
01001011K
001110019
01000100D
Kombinacija ASCII i ne-ASCII podataka
ASCII podaci
TCP/IP
SMTP - Agent za prenos poruka
Pošiljac
LAN
Mail server Internet Mail server
Primalac
LAN
SMTP SMTP
TCP/IP
SMTP - Komande i odzivi
MTAklijent
MTAserver
Komande
Odzivi
TCP/IP
Format komandi
Ključna_reč : argument(i)
TCP/IP
KomandeKljučna reč Argumenti
HELO Ime hosta pošiljaoca
MAIL FROM Pošiljalac poruke
RCPT TO Primalac poruke
DATA Telo poruke
QUIT
RSET
VRFY Ime primaoca koje treba verifikovati
NOOP
TURN
EXPN Mailing lista koju treba proširiti
HELP Ime komande
SEND FROM Primalac poruke
SMOL FROM Primalac poruke
SMAL FROM Primalac poruke
TCP/IP
Odzivi Odzivi se prenose od servera ka klijentu. Odziv je tro-cifarski
numerički kôd. Posle kôda, u istoj liniji, može da sledi tekstualna informacija.
Značenja prve cifre su: 2yz (konačni pozitivan odziv). Akcija je završena. Server je spreman
da prihvati sledeću komandu. 3yz (pozitivan među-odziv). Komanda je prihvaćena, ali su
neophodne dodatne informacije. 4yz (prolazni negativan odziv). Akcija nije startovana, jer server
trenutno nije u mogućnosti da je izvrši. Ista komanda može biti poslata kasnije.
5yz (permanentni negativan odziv). Komanda nije prihvaćena i ne bi trebalo pokušavati ponovo.
Druga i treća cifra pružaju dodatne informacije o odzivu.
TCP/IP
Faze prenosa poruke Uspostavljanje veze Prenos poruke Raskidanje veze
TCP/IP
Uspostavljanje veze
MTAklijent
MTAserver
220 service is ready
HELO: elfak.ni.ac.yu
250 OK
TCP/IP
Prenos porukeMTAklijent
MTAserver
MAIL FROM: [email protected]
250 OK
RCPT TO: [email protected]
250 OK
DATA
354 start mail input
From: Ana Petrovic
To: Milan Petkovic
Date: 25/10/06
Subject: Pozdrav
Milane,
Obavestavam te da sam primila ...
Puno pozdrava,
Ana
.
250 OK
Ko
vertaZ
ag
lavlje
Te
lo
Microsoft Word Document
TCP/IP
Raskidanje veze
MTAklijent
MTAserver
QUIT
221 Service closed
TCP/IP
POP3 - Agent za preuzimanje poruka
Anapošiljac
LAN
Mail server Internet Mail server
Milanprimalac
LAN
SMTP SMTPPOP3IMAP4
TCP/IP
POP3 - tri faze Autorizacija
Provera prava pristupa korisnika mailbox-u na mail serveru (putem korisničkog imena i lozinke)
Transakcije Korisnik može da pregleda sadžaj mailbox-a i
preuzme poruke Ažuriranje
Brisanje preuzetih mejlova iz mailbox-a
TCP/IP
POP3 - PrimerPOP3server
POP3klijent
USER ana
+OK
PASS *****
+OK
LIST
1 25052 14302.
E-mail 1
Au
toriza
cija
+OK POP3 server je spreman
RETR 1
+OK
DELE 1
+OK
QUIT
E-mail 2
RETR 2
+OK
DELE 2
Tra
nsa
kcijaA
žurira
nje
Microsoft Word Document
TCP/IP
DNS
160.136.4.100www.elfak.ni.ac.yuDNS
DNS (Domain Name System - Sistem imenâ domena) - servis za pronalaženje IP adrese hosta poznatog simboličkog imena
TCP/IP
DNSDNS klijent: zeli da
posalje poruku hostu elfak.ni.ac.yu DNS server
Upit (elfak.ni.ac.yu ?)
Odgovor (160.136.4.23)
DNS baza zapisa
Host: elfak.ni.ac.yuIP: 160.136.4.23
Salje poruku na
160.136.4.23
TCP/IP
Prostor imena domena
edu com gov org au yu
TCP/IP
Imena domena i labele
Koren
yu
ac
ni
elfak
golijat
Labela
golijat.elfak.ni.ac.yu.
elfak.ni.ac.yu.
ni.ac.yu.
ac.yu.
yu.
Ime domena
TCP/IP
FQDN i PQDN FQDN - puno ime domena
golijat.elfak.ni.ac.yu. PQDN - delimično ime domena
golijat golijat.elfak golijat.elfak.ni golijat.elfak.ni.ac.yu
TCP/IP
Domeni
Domen
Domen
Domen
com edu
Domen
Domen
Domen je podstablo prostora imena domena. Ime domena je ime domena čvora na vrhu podstabla
TCP/IP
Podela prostora imena Hijerarhija DNS servera Zona Root server Primarni i sekundarni serveri
TCP/IP
Hijerarhija DNS servera
TCP/IP
Zone i domeni
com
yahoo
Zona
Domen
Zona i domen
Koren
Oblast odgovornosti DNS severa se naziva zonom. Zona se može definisati kao povezani deo stabla.
TCP/IP
Primarni i senkundarni serveri Primarni server je onaj koji na svom hard disku čuva fajl o
zoni za koju je odgovoran. Primarni server kriera održava i ažurira zonski fajl.
Sekundarni server informacije o zoni dobija od nekog drugog servera (primarnog ili sekundarnog). Sekundarni serveri ne kreiraju niti ažuriraju zonske fajlove. Ako je ažuruiranje neophodno, ono se obavlja na primarnom serveru, koji potom sekundarnim serverima šalje ažurnu verziju.
I primarni i seknundarni serveri su odgovorni za zonu koju pokrivaju. Ideja nije da se sekundarni severi postave na niži nivo odgovornosti u odnosu na primarni server, već da se postigne redundantnost tako da u slučaju da jedan server otkaže preostali mogu nastaviti da opslužuju klijente
TCP/IP
Root server
Root (ili vršni) server je server čiju zonu čini čitavo stablo.
Vršni server obično ne čuva bilo kakve informacije o domenima, već delegira svoju odgovornost na druge servere, čuvajući samo reference na
te servere.
Postoji nekoliko vršnih server, distribuiranih po celom svetu, od kojih svaki pokriva celokupan prostor imena domena.
TCP/IP
DNS na Internetu
com gov mil edu org net jp de yu us
philips
semiconductors
yahoo yale
cs eng
ai linda
robot
co ac
bg ni ns
elfak
genericki nacionalni
TCP/IP
Generički domeniOznaka Opis
com komercijalne organizacije
edu obrazovne institucije
gov vladine institucije
int međunarodne organizacije
mil vojne grupacije
net centri za podršku mreži
org neprofitne organizacije
aero avio-kompanije
biz komercijalne organizacije i firme (slično .com)
coop organizacije za kooperativno poslovanje
info informacioni servisi
museum muzeji i druge neprofitne organizacije
name lična imena (pojedinci)
pro profesionalne individualne organizacije
TCP/IP
Razrešavanje imenaProces preslikavanja imena na adrese ili adresa na imena naziva se
razrešavanjem ili rezolucijom (od name-address resolution)
1. Host kome je potrebno preslikavanje, bilo imena na adrese bilo adresa na imena, poziva DNS klijenta koji se naziva razrešivačem.
2. Razrešivač se obraća najbližem DNS serveru za zahtevom za razrešavanje.
3. Ako poseduje traženu informaciju, server vraća odgovor razrešivaču; inače, server upućuje rezrešivač na nekog drugog servera ili se sam obraća drugim serverima.
4. Kada dobije rezultat preslikavanja, razrešivač najpre interpretira odgovor, da bi proverio da li odgovor sadrži traženo razrešavanje ili grešku, i konačno, isporučuje rezultat procesu koji je zahtevao razrešavanje.
TCP/IP
Rekurzivno razrešavanje
Klijent
edu
Root server
com
yahoo.comfhda.edu
1
10
TCP/IP
Iterativno razrešavanje
Klijent
edu
Root server
com
yahoo.comfhda.edu
1
2
3
4
5
6
7
89
10
TCP/IP
KeširanjeServer, svaki put kada primi odgovor na upti poslat drugom serveru, smešta
informacije iz odgovora u svoju keš memoriju, za slučaj da kasnije ponovo bude potrebna.
Problem: Keširana preslikavanja nekog servera potiču iz nekog drugog domena, za koji taj server nije odgovoran, a promena učinjena na udaljenom domenu se neće preneti, sama od sebe u njegovu keš
memoriju
Rešenje: kada odgovara na upit koji se odnosi na domen za koji je nadležan, sever preslikavanju koje vraća pridodaje i vreme života (TTL -
time-to-live ). TTL je vreme u sekundama koje definiše koliko dugo infomacija iz odgovora može boraviti u keš memoriji bilo kog severa koji
dođe u njen posed. Posle tog vremena, preslikavanje se smatra zastarelim, a svaki sledeći upit mora ponovo biti proleđen nadležnom
serveru
TCP/IP
DNS poruke
Zaglavlje
Sekcija za pitanja
Zaglavlje
Sekcija za pitanja
Sekcija za odgovore
Sekcija za nadležnosti
Sekcija za dodatne informacije
Upit Odziv
TCP/IP
Zaglavlje
Identifikacija Markeri
Broj zapisa za pitanjaBroj zapisa za odgovore(sve nule u poruci upita)
Broj zapisa za nadležnosti(sve nule u poruci upita)
Broj dodatnih zapisa(sve nule u poruci upita)
TCP/IP
MarkeriQR AA TC RD RA rCodeOpCode Tri nule
QR - upit/odziv OpCode - tip upita/odziva (0 - standardni, 1 -
inverzni upit/odziv i 2 za zahtev za status servera) AA - autorizovani server TT - odziv je skraćen na 512 bajta RD - klijent zahteva rekurzivno razrešavanje RA - server podržava rekurziju rCode - informacija o grešci
TCP/IP
Tipovi zapisa Zapis za pitanja Zapis za resurse
TCP/IP
Zapis za pitanja
Ime upita
Tip upita Klasa upita
e l f a k 2 n i 2 a c 2 y u 05
TCP/IP
Tipovi upitaTip Mnemonik Opis
1 A IP Adresa
2 NS Server imena. Identifikuje nadležni server zone.
5 CNAME Kanoničko ime. Definiše alternativno ime oficijelnog imena hosta.
6 SOA Označava početak zone. Obično prvi zapis u fajlu zone.
11 WKS Dobro-poznati servis. Definiše mrežni servis kojeg pruža host.
12 PTR Pointer. Koristi se za konverziju IP adrese u ime domena.
13 HINFO Informacije o hostu. Sadrži opis hardvera i operativnog sistema hosta
15 MX Mail izmenjivač (server). Saadrži IP adresu mail servera domena.
28 AAAA Adresa. IPv6 adresa.
252 AXFR Traži se prenos celokupne zone.
255 ANY Traže se svi zapisi.
TCP/IP
Zapisi resursa
Ime domena
Tip domena Klasa domena
Vreme života
Podaci o resursu
Dužina polja za podat
TCP/IP
Primer
0x1333 0x0100
1 0
0 0
5 ‘e’ ‘l’ ‘f’
‘a’ ‘k’ 2 ‘n’
‘i’ 2 ‘a’ ‘c’
2 ‘y’ ‘u’ 0
1 1
0x1333 0x8180
1 1
0 0
5 ‘e’ ‘l’ ‘f’
‘a’ ‘k’ 2 ‘n’
‘i’ 2 ‘a’ ‘c’
2 ‘y’ ‘u’ 0
1 1 0xC0
0xC0 1nastavaku sl. lin.
1200nastavaku sl. lin.
4 153
18 8 105
Upit Odziv