20
Application Layer Application Layer HTTP HTTP Indah Kusumaningrum (6131018) Okky Andriansyah(6131024) Dio Septiyan Nugraha(6111019)

HTTP - Application Layer

Embed Size (px)

DESCRIPTION

Explanation about how http works

Citation preview

Page 1: HTTP - Application Layer

Application LayerApplication LayerHTTPHTTP

Indah Kusumaningrum (6131018)

Okky Andriansyah(6131024)

Dio Septiyan Nugraha(6111019)

Page 2: HTTP - Application Layer

PengalamatanPengalamatan

Agar sebuah process dapat berkomunikasi dengan process yang sama pada host yang lain, setiap process memiliki identifikasi berupa Port Number.

Contoh:HTTP Port 80FTP Port 21 dan 22SMTP Port 25

Page 3: HTTP - Application Layer

W W W dan HTTPW W W dan HTTP

WWW adalah World Wide Web (it’s not ‘World Wide Wait’, hopefully).

World Wide Web adalah sebuah complete system yang terdiri atas 3 komponen utama yang saling terkait, yaitu: HTML (Hypertext Markup Language), HTTP (Hypertext Transfer Protocol) dan URL (Uniform Resource Locator).

Page 4: HTTP - Application Layer

Ilustrasi WWWIlustrasi WWW

Source: www.tcpipguide.com

Page 5: HTTP - Application Layer

Overview HTTP Overview HTTP

Digunakan untuk mengakses WWW berupa object: HTML file, JPEG image, GIF image, Java applet, audio, dll.

Format URL: http://www.stikom.edu:80/index.html

Page 6: HTTP - Application Layer

Overview HTTPOverview HTTP

Browser adalah user agent untuk WWW.

Web Server menyimpan object2 dari WWW yang dapat dipanggil dengan URL.

Version:HTTP/1.0 RFC 1945 (Tahun 1997).HTTP/1.1 RFC 2616 (Tahun 1998)

Page 7: HTTP - Application Layer

Ilustrasi Protokol HTTPIlustrasi Protokol HTTP

Page 8: HTTP - Application Layer

Message Sequence Diagram: Message Sequence Diagram: HTTPHTTP

TCP connection reply

TCP connection request

GET http://

<file>

ServerClient

Page 9: HTTP - Application Layer

Metode Koneksi HTTPMetode Koneksi HTTP

Page 10: HTTP - Application Layer

HTTP Request MessageHTTP Request Message

Page 11: HTTP - Application Layer

HTTP Request MessageHTTP Request Message

Line pertama disebut: request line, line berikutnya disebut sebagai header line.

Request Line berisi: Method, URL dan HTTP version.

Method dapat berupa: GET, POST, HEAD, PUT, COPY, MOVE, PATCH, DELETE.

Page 12: HTTP - Application Layer

HTTP Request MessageHTTP Request Message

Pada header lines: Host merupakan alamat host dimana

object2 web berada. Connection: close, browser

memberitahu server bahwa client tidak menggunakan persistent connection.

User-agent menunjuk pada tipe browser yang dipakai oleh client.

Accept-languange: menunjuk pada bahasa yang digunakan.

Page 13: HTTP - Application Layer

HTTP Request MessageHTTP Request Message

HTTP Request message berbentuk:

GET /direktori/file.html HTTP/1.1

Host: www.stikom.edu

Connection: keep-alive

User-agent: Mozilla/4.0

Accept-language: en

Page 14: HTTP - Application Layer

HTTP Response MessageHTTP Response Message

Dalam HTTP Response Message terdapat 3 blok utama: Status Line, Header Lines dan Entity Body.

Page 15: HTTP - Application Layer

HTTP Response MessageHTTP Response MessageHTTP Response Message berbentuk:

HTTP/1.1 200 OKDate: Fri, 17 Mar 2006 05:56:46 GMTServer: ApacheLast-Modified: Tue, 06 Sep 2005 00:49:44 GMTContent-Length: 714Connection: keep-aliveContent-Type: text/html

<html><head><title>::: STIKOM Website :::</title></head></html>Connection closed by foreign host.

Page 16: HTTP - Application Layer

HTTP Response MessageHTTP Response Message

Status Line berisi status code dengan perincian:

200 OK:

Permintaan mendapatkan response dengan sukses.301 Moved Permanently:Objek yang diminta telah dipindahkan.400 Bad Request:Request tidak dimengerti oleh server.404 Not Found:Document yang diminta tidak ada.505 HTTP Version Not Supported:HTTP protocol yang diminta tidak dikenali oleh server.

Page 17: HTTP - Application Layer

CookiesCookies

Page 18: HTTP - Application Layer

Web CachingWeb Caching

Web Caching menyimpan object yang telah diambil sebelumnya ke dalam terminal dari client atau Web Caching server yang dekat dengan client (disebut Cache server).

Tujuan web caching adalah mengurangi delay saat pengambilan object dan web traffic dari internet.

Page 19: HTTP - Application Layer

Conditional GETConditional GET Client mengetahui bahwa object yang

akan diambil sudah ada di dalam cache atau belum dan atau object tersebut terakhir dimodifikasi atau tidak dengan cara mengirimkan Conditional GET seperti:GET /index.html HTTP/1.0User-agent: Mozilla/4.0If-Modified-since: Mon, 20 Mar 2006 15:16:10

Page 20: HTTP - Application Layer

Conditional GETConditional GET

Jika If-Modified-since berbeda dengan Last-Modified dari object yang dimaksud, server akan mengirimkan object tersebut. Jika sama, server hanya mengirimkan header saja (tanpa object yang dimaksud).