Professional Documents
Culture Documents
11-Application Layer Protocos
11-Application Layer Protocos
хостот surf.eurecom.fr
бара IP адреса на
gaia.cs.umass.edu 2 4
5 3
1. Контактира со локалниотDNS
server, dns.eurecom.fr
2. dns.eurecom.fr
контактира со root name authorititive name server
local name server dns.umass.edu
server, ако е потребно dns.eurecom.fr
3. root name server го
1 6
контактира authoritative name
server, dns.umass.edu, ако
е потребно
requesting host gaia.cs.umass.edu
surf.eurecom.fr
DNS пример
root name
server
Root name server:
Може да не го знае 2 6
authoritative name server 7 3
Може да го знае
intermediate name server:
кого да контактира за да
го најде authoritative local name intermediate name server
name server dns.umass.edu
server 5
dns.eurecom.fr 4
1 8
authoritative name server
dns.cs.umass.edu
requesting
host
surf.eurecom.fr gaia.cs.umass.edu
DNS записи
DNS: дистрибуирана дата-база чува resource records (RR)
RR format: (name, value, type, ttl)
• Type=A • Type=CNAME
– name е hostname – name is alias name for some
– value е IP адреса “cannonical” (the real) name
www.ibm.com е всушност
Type=NS
servereast.backup2.ibm.com
name е domain (пример,
ova.com) – value е cannonical name
value е IP адреса на
authoritative name server за • Type=MX
овој домен – value е име на mailserver
асоцирано со name
DNS протокол, пораки
DNS протокол : query и reply пораки, двете со ист message format
Name, type
fields
за query
RRs за
одговор на
query
Записи за
authoritative
servers
Додатна корисна
информација
што може да се
искористи
FTP: File Transfer Protocol
1 mail
mail
сервер сервер
2 агент
агент 3 6
4 5
Пример на SMTP интеракција
S = сервер (server); C = клиент (client)
S: 220 fakultet.edu.mk
C: HELO crepes.fr
S: 250 Hello crepes.fr, pleased to meet you
C: MAIL FROM: <trpe@crepes.fr>
S: 250 trpe@crepes.fr... Sender ok
C: RCPT TO: <goran@fakultet.edu.mk>
S: 250 goran@fakultet.edu.mk ... Recipient ok
C: DATA
S: 354 Enter mail, end with "." on a line by itself
C: Dali doagas?
C: .
S: 250 Message accepted for delivery
C: QUIT
S: 221 fakultet.edu.mk closing connection
Формат на mail порака
From: trpe@crepes.fr
MIME верзија
To: goran@fakultet.edu.mk
Subject: Slika od planina.
Метод употребен MIME-Version: 1.0
за кодирање на податоците
Content-Transfer-Encoding: base64
Content-Type: image/jpeg
Мултимедиски податоци
тип, подтип,
декларација на параметри base64 encoded data .....
.........................
......base64 encoded data
Кодирани податоци
MIME типови
Content-Type: type/subtype; parameters
Текст Видео
Примери на подтипови: plain, Примери на подтипови : mpeg,
html quicktime
Слики Апликации
Примери на подтипови: jpeg, gif Другите податоци мораат да
бидат процесирани од
соодветната апликација за да
Аудио може да се види содржината
Примери на подтипови: basic (8- Примери на подтипови :
битен u-law кодиран), msword, octet-stream
32kadpcm (32 kbps кодирање)
Формат на порака составена од повеќе
делови (multipart)
Протоколи за пристап до mail
SMTP SMTP пристапен
протокол агент
агент
• Секоја веб страница има уникатен идентификатор -URL (Uniform Resource Locator)
– Пример за URL: http://www.lokacija.mk/tk/strana.html
• Првиот дел го специфицира протоколот: http
• Хостот-сервер е: www.lokacija.mk
• Патот до веб страницата на тој сервер е: /tk/strana.html
– Генерален пример за http URL:
http: // imenahost [:porta] / pateka [; parametri] [? query]
Пример за web страна
<html>
<body>
<p> Slika 1:
Slika 1:
<img src=“slika01.gif" width="144" height="50">
</p> Slika 2:
<p>
Slika 2:
<img src=“slika02.gif" width="48" height="48">
</p> Slika 3:
<p>
Slika 3:
<img src=“slika03.gif" width=“64" height="48">
</p>
</body>
</html>
22
HTTP комуникација
Се користи TCP:
Клиентот иницира TCP конекција (креира сокет) кон серверот, порта 80
Серверот ја прифаќа TCP конекцијата од клиентот
HTTP пораки (на апликациско ниво) се разменуваат меѓу browser-от (HTTP
клиентот) и веб серверот (HTTP сервер)
TCP конекцијата се затвара
HTTP е “stateless”
Серверот не води евиденција за поминатите барања (request-и) од клиентот
PC
со Mozila
24
HTTP пораки
• HTTP има два типа пораки: request (барање) и response (одговор)
• Пребарувачот (browser) праќа HTTP GET request до веб серверот за да добие
конкретна страна од веб серверот со конкретно URL:
– Барањето се состои од линија текст која започнува со клучниот збор GET и по
него следува URL-то и бројот на HTTP верзијата. На пример:
• GET http://www.feit.ukim.edu.mk/test/ HTTP/1.1
– Откако е воспоставена TCP врската, нема потреба потоа да се праќа целата
URL, на пример:
• GET /test/ HTTP/1.0
HTTP се користи меѓу веб пребарувач и веб сервер. Пребарувачот праќа
барање (request) по што серверот враќа одговор (response).
HTTP/1.0 HTTP/1.1
• GET • GET, POST, HEAD
• POST • PUT – го запишува фајлот на локација
• HEAD – бара од серверот да не му специфицирана во URL полето
праќа одговор за даден објект • DELETE – го брише фајлот специфициран
во URL полето
HTTP пораки
• Одговор пораки за грешка (error messages)
– Кога ќе добие неправилно барање, веб серверот му враќа на веб клиентот порака за
грешка со даден код за грешка кај HTTP
• Пораката за грешка е во HTML формат за да може да ја прикаже клиентот
• Постојаните конекции и должините на пораките
– За да може да опстои перзистентна TCP врска за HTTP, потребно е серверот да ја праќа
должината на одговорот пред секој одговор (response). Ако не ја знае должината серверот
го информира клиентот за тоа, го праќа одговорот и ја затвара TCP конекцијата.
– Како веб серверот ја праќа информацијата за должината на пораките?
• HTTP го позајмува основниот формат од email (RFC 822), секоја порака има заглавие
(header), празна линија (blank line) и содржина (data)
• Секоја линија во заглавието содржи клучен збор (keyword), потоа две точки (:) и
информација
city=Stocholm&country=Sweeden
HTTP барања
HTTP/1.1 200 OK
Date: Mon, 27 Jul 2009 12:28:53 GMT
Server: Apache/2.2.14 (Win32)
Last-Modified: Wed, 22 Jul 2009 19:15:56 GMT
Content-Length: 88
Content-Type: text/html
Connection: Closed
<html>
<body>
<h1>Hello, World!</h1>
</body>
</html>
HTTP одговори