SlideShare a Scribd company logo
Pertemuan-11.
Application Layer
Jaringan Komputer
Teknik Informatika
Universitas Yudharta Pasuruan
2012

MOCHAMAD SIRODJUDIN, S.Kom, MM
www.sirodjudin.com
Client and Server
Aplikasi jaringan secara umum terdiri
atas dua bagian, yaitu: Client side dan
Server side.
 Masing-masing bagian melakukan
process secara terpisah. Process
yang dimaksud misalnya: request,
reply de-el-el.

Proses Komunikasi
Di dalam jaringan komunikasi dua
buah processes dari dua buah
terminal yang berbeda saling
berinteraksi melalu jaringan.
 Kedua processes tersebut
berkomunikasi dengan cara
mengirimkan dan menerima pesan.
 Sebuah process mengirim dan
menerima pesan ke jaringan melalui
socket.

Ilustrasi Socket
API


Karena socket merupakan interface /
antar muka antara Application Layer
dan Transport Layer di dalam sebuah
host, maka Socket dapat juga disebut
sebagai API (Application
Programmer’s Interface).
Pengalamatan
Agar sebuah process dapat
berkomunikasi dengan process yang
sama pada host yang lain, setiap
process memiliki identifikasi berupa
Port Number.
 Contoh:
HTTP  Port 80
FTP  Port 21 dan 22
SMTP  Port 25

Parameter dalam
Application Layer
Reliable Data Transfer
- no data loss: e-mail, web transfer,
file transfer, de-el-el.
- lost tolerant: aplikasi audio/video.
 Kecukupan bandwidth
 Timing

W 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).

Ilustrasi WWW

Source: www.tcpipguide.com
Overview HTTP
Digunakan untuk mengakses WWW
berupa object: HTML file, JPEG image,
GIF image, Java applet, audio de-el-el.
 Format URL:
http://www.stikom.edu:80/index.html

Overview 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)

Protokol HTTP
HTTP pada sisi client meminta
koneksi TCP ke Server WWW melalui
socket dengan nomor 80.
 HTTP pada sisi client meminta file
dengan mengirim pesan HTTP
request ke server WWW.
 HTTP pada sisi server menerima
pesan melalui socket, selanjutnya
object dikirim melalui HTTP response.
 HTTP pada sisi server menutup
koneksi TCP.

Ilustrasi Protokol HTTP
Message Sequence Diagram:
HTTP
Server

t
ction reques
TCP conne

TCP connection rep
ly
GET http://
< fi l e >

Client
Metode Koneksi HTTP
Terdapat dua metode koneksi pada
HTTP: Persistent Connection dan
Non-Persistent Connection.
 Non-Persistent Connection:
- Digunakan pada HTTP/1.0
- Pada non-persistent connection
hanya 1 object ditransmisikan pada
saat koneksi TCP terjadi. Koneksi
TCP harus dibangun kembali untuk
setiap transmisi object berikutnya.

Metode Koneksi HTTP


Persistent Connection:
- Digunakan pada HTTP/1.1
- Pada persistent connection, koneksi
TCP yang baru tidak perlu dibangun
untuk setiap object yang
ditransmisikan oleh server. Koneksi
dibatasi oleh lifetime. Beberapa object
dapat ditransfer selama lifetime masih
ada.
HTTP Request Message
HTTP Request message berbentuk:
GET /direktori/file.html HTTP/1.1
Host: www.stikom.edu
Connection: close
User-agent: Mozilla/4.0
Accept-language: en
HTTP 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.

HTTP 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.
HTTP Response Message
HTTP Response Message berbentuk:
HTTP/1.1 200 OK
Date: Fri, 17 Mar 2006 05:56:46 GMT
Server: Apache
Last-Modified: Tue, 06 Sep 2005 00:49:44 GMT
Content-Length: 714
Connection: close
Content-Type: text/html
<html>
<head>
<title>::: STIKOM Website :::</title>
</head>
</html>
Connection closed by foreign host.
HTTP Response Message
Dalam HTTP Response Message
terdapat 3 blok utama: Status Line,
Header Lines dan Entity Body.
 Status Line berisi status code dengan
perincian:
200 OK:
Permintaan mendapatkan response
dengan sukses.

HTTP Response Message
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.
Ilustrasi: GET
Ilustrasi: HEAD
Ilustrasi: POST
Melihat Proses HTTP dari
Dekat
Dengan Method: GET
telnet omega.stikom.edu 80
GET /~jusak/index.html HTTP/1.0
Dengan Method: HEAD
telnet omega.stikom.edu 80
HEAD /~jusak/index.html HTTP/1.0
Authorization
Beberapa HTTP sever membutuhkan
autorisasi.
 Client mengirimkan permintaan ke server
(dengan header biasa), Server merespon
dengan tambahan informasi header
berupa: WWW-Authenticate:.
 Status code: 401 Authorization Required.
 Client menerima respon tsb, dan
mengirim username serta password.
 Client mengirim ulang permintaan di atas
dengan header: Authorization:.

Cookies
Cookies (RFC 2109) digunakan oleh
server HTTP untuk menganalisa dan
menelusuri kebiasaan user.
 Cookies tersimpan dalam terminal
(dikelola oleh browser) di mana user
melakukan akses internet.
 Sebuah database tersimpan dalam
jaringan pengelola server HTTP
sebagai acuan untuk melakukan
analisa terhadap karakteristik user.

Cookies (Step-by-step)
Ketika client meminta informasi ke
HTTP server, server akan membuat
sebuah nomor identifikasi yang unik dan
meletakkannya pada database.
 Selanjutnya server merespon client
dengan header Set-Cookie: yang berisi
nomor identifikasi.
 Saat Client menerima HTTP response,
browser menambah informasi tsb ke file
cookie yang dikelola oleh browser.

Contoh: HTTP Response
[jusak@omega ~]$ telnet www.amazon.com 80
Trying 207.171.166.102...
Connected to www.amazon.com (207.171.166.102).
Escape character is '^]'.
HEAD /index.html HTTP/1.0
HTTP/1.1 302
Date: Mon, 20 Mar 2006 07:51:51 GMT
Server: Server
Set-Cookie: session-id-time=1143446400; path=/;
domain=.amazon.com; expires=Monday, 27-Mar-2006 08:00:00
GMT
Set-Cookie: session-id=103-8579567-0915805; path=/;
domain=.amazon.com; expires=Monday, 27-Mar-2006 08:00:00
GMT
Location:
http://www.amazon.com/exec/obidos/subst/misc/404.html/1038579567-0915805
Vary: Accept-Encoding,User-Agent
Connection: close
Content-Type: text/html
Connection closed by foreign host.
Cookies (Step-by-step)
Informasi yang ditambahkan ke dalam
file cookie meliputi: hostname dari
server dan nomor identifikasi.
 Setiap kali client mangakses server
yang sama, browser akan melakukan
ekstrasi nomor identifikasi dalam file
cookie, dan mengirikannya ke server.
 Dengan cara demikian server dapat
menelusuri kebiasaan dari client tsb.

Web 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.

Conditional 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.0
User-agent: Mozilla/4.0
If-Modified-since: Mon, 20 Mar
2006 15:16:10
Conditional 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).

More Related Content

What's hot

Modul membangun-aplikasi-sms-gateway-dengan-delphi-7-mysql blog1
Modul membangun-aplikasi-sms-gateway-dengan-delphi-7-mysql blog1Modul membangun-aplikasi-sms-gateway-dengan-delphi-7-mysql blog1
Modul membangun-aplikasi-sms-gateway-dengan-delphi-7-mysql blog1
Afif Saja
 
Tugas atpi 1 dea alifa d & kamilah kinanti
Tugas atpi 1 dea alifa d & kamilah kinantiTugas atpi 1 dea alifa d & kamilah kinanti
Tugas atpi 1 dea alifa d & kamilah kinanti
Febriy Y
 
Aplikasi Aplikasi untuk Server
Aplikasi Aplikasi untuk ServerAplikasi Aplikasi untuk Server
Aplikasi Aplikasi untuk Server
umaasyitah
 
Tugas 2 0317-nurul azmi-1412510587
Tugas 2 0317-nurul azmi-1412510587Tugas 2 0317-nurul azmi-1412510587
Tugas 2 0317-nurul azmi-1412510587
nurul azmi
 
Pertemuan 8 mail server
Pertemuan 8 mail serverPertemuan 8 mail server
Pertemuan 8 mail server
jumiathyasiz
 

What's hot (17)

Ftp server
Ftp serverFtp server
Ftp server
 
Kelompok 7
Kelompok 7Kelompok 7
Kelompok 7
 
Pbw week 01 basics
Pbw week 01   basicsPbw week 01   basics
Pbw week 01 basics
 
Modul membangun-aplikasi-sms-gateway-dengan-delphi-7-mysql blog1
Modul membangun-aplikasi-sms-gateway-dengan-delphi-7-mysql blog1Modul membangun-aplikasi-sms-gateway-dengan-delphi-7-mysql blog1
Modul membangun-aplikasi-sms-gateway-dengan-delphi-7-mysql blog1
 
Ftp server
Ftp serverFtp server
Ftp server
 
Tugas atpi 1 dea alifa d & kamilah kinanti
Tugas atpi 1 dea alifa d & kamilah kinantiTugas atpi 1 dea alifa d & kamilah kinanti
Tugas atpi 1 dea alifa d & kamilah kinanti
 
Tugas 2 – 0317 (individu) andrian lesmana
Tugas 2 – 0317 (individu) andrian lesmanaTugas 2 – 0317 (individu) andrian lesmana
Tugas 2 – 0317 (individu) andrian lesmana
 
Materi asj kelas xii
Materi asj kelas xiiMateri asj kelas xii
Materi asj kelas xii
 
FTP
FTP FTP
FTP
 
Jarkom - Jilid V.4
Jarkom  - Jilid V.4Jarkom  - Jilid V.4
Jarkom - Jilid V.4
 
Penjelasan Materi Web Server
Penjelasan Materi Web Server Penjelasan Materi Web Server
Penjelasan Materi Web Server
 
Socket Programming UDP Echo Client Server (Python)
Socket Programming  UDP Echo Client Server  (Python)Socket Programming  UDP Echo Client Server  (Python)
Socket Programming UDP Echo Client Server (Python)
 
FTP Server
FTP ServerFTP Server
FTP Server
 
Aplikasi Aplikasi untuk Server
Aplikasi Aplikasi untuk ServerAplikasi Aplikasi untuk Server
Aplikasi Aplikasi untuk Server
 
Tugas 2 0317-nurul azmi-1412510587
Tugas 2 0317-nurul azmi-1412510587Tugas 2 0317-nurul azmi-1412510587
Tugas 2 0317-nurul azmi-1412510587
 
Web Services
Web ServicesWeb Services
Web Services
 
Pertemuan 8 mail server
Pertemuan 8 mail serverPertemuan 8 mail server
Pertemuan 8 mail server
 

Viewers also liked

transport layer protocol
transport layer protocoltransport layer protocol
transport layer protocol
ahmad amiruddin
 
membuat desain sistem keamanan jaringan
membuat desain sistem keamanan jaringanmembuat desain sistem keamanan jaringan
membuat desain sistem keamanan jaringan
ahmad amiruddin
 
Evidence of photoshoot
Evidence of photoshootEvidence of photoshoot
Evidence of photoshoot
Podge0123
 
Production schedule 3
Production schedule 3Production schedule 3
Production schedule 3
Phoenix Smith
 
Chx.na.descontaminacao.escovas.dentais.2013
Chx.na.descontaminacao.escovas.dentais.2013Chx.na.descontaminacao.escovas.dentais.2013
Chx.na.descontaminacao.escovas.dentais.2013
Tainá Barros
 
introduction to security
introduction to securityintroduction to security
introduction to security
ahmad amiruddin
 
update on sudden cardiac death in athletes and young generation
update on sudden cardiac death in athletes and young generationupdate on sudden cardiac death in athletes and young generation
update on sudden cardiac death in athletes and young generation
Tamer Taha
 

Viewers also liked (20)

internet layer protokol
internet layer protokolinternet layer protokol
internet layer protokol
 
transport layer protocol
transport layer protocoltransport layer protocol
transport layer protocol
 
protokol routing
protokol routingprotokol routing
protokol routing
 
routing
routingrouting
routing
 
referensi osi
referensi osireferensi osi
referensi osi
 
data link layer
data link layerdata link layer
data link layer
 
membuat desain sistem keamanan jaringan
membuat desain sistem keamanan jaringanmembuat desain sistem keamanan jaringan
membuat desain sistem keamanan jaringan
 
Evidence of photoshoot
Evidence of photoshootEvidence of photoshoot
Evidence of photoshoot
 
Nuevos sistemas operativos.
Nuevos sistemas operativos.Nuevos sistemas operativos.
Nuevos sistemas operativos.
 
Production schedule 3
Production schedule 3Production schedule 3
Production schedule 3
 
Chx.na.descontaminacao.escovas.dentais.2013
Chx.na.descontaminacao.escovas.dentais.2013Chx.na.descontaminacao.escovas.dentais.2013
Chx.na.descontaminacao.escovas.dentais.2013
 
plant parts
plant partsplant parts
plant parts
 
Jonathan's Celebration of Life
Jonathan's Celebration of LifeJonathan's Celebration of Life
Jonathan's Celebration of Life
 
Quotes About Lawyers 2
Quotes About Lawyers 2Quotes About Lawyers 2
Quotes About Lawyers 2
 
Non cardiac surgery in cardiac patients mo
Non cardiac surgery in cardiac patients moNon cardiac surgery in cardiac patients mo
Non cardiac surgery in cardiac patients mo
 
introduction to security
introduction to securityintroduction to security
introduction to security
 
firewall
firewallfirewall
firewall
 
How accurate electrocardiogram predict LV diastolic dysfunction?
How accurate electrocardiogram predict LV diastolic dysfunction?How accurate electrocardiogram predict LV diastolic dysfunction?
How accurate electrocardiogram predict LV diastolic dysfunction?
 
update on sudden cardiac death in athletes and young generation
update on sudden cardiac death in athletes and young generationupdate on sudden cardiac death in athletes and young generation
update on sudden cardiac death in athletes and young generation
 
security
securitysecurity
security
 

Similar to application layer

Laporan pemrograman visual3
Laporan pemrograman visual3Laporan pemrograman visual3
Laporan pemrograman visual3
Fenty Hidayati
 
Tugas atpi cornelia matthiasjanu
Tugas atpi cornelia matthiasjanuTugas atpi cornelia matthiasjanu
Tugas atpi cornelia matthiasjanu
Febriy Y
 
Application Layer
Application LayerApplication Layer
Application Layer
rosmida
 
Pertemuan 09 client server
Pertemuan 09   client serverPertemuan 09   client server
Pertemuan 09 client server
aingaingaing
 
World wide web
World wide webWorld wide web
World wide web
peces123
 
Pengertian dhcp,dns,dan http aryandi triyanto (10) xi tkj 2
Pengertian dhcp,dns,dan http aryandi triyanto (10) xi tkj 2Pengertian dhcp,dns,dan http aryandi triyanto (10) xi tkj 2
Pengertian dhcp,dns,dan http aryandi triyanto (10) xi tkj 2
aryandi572
 
Pengertian dhcp,dns,dan http aryandi triyanto (10) xi tkj 2
Pengertian dhcp,dns,dan http aryandi triyanto (10) xi tkj 2Pengertian dhcp,dns,dan http aryandi triyanto (10) xi tkj 2
Pengertian dhcp,dns,dan http aryandi triyanto (10) xi tkj 2
aryandi572
 
Pengertian dhcp,dns,dan http aryandi triyanto (10) xi tkj 2
Pengertian dhcp,dns,dan http aryandi triyanto (10) xi tkj 2Pengertian dhcp,dns,dan http aryandi triyanto (10) xi tkj 2
Pengertian dhcp,dns,dan http aryandi triyanto (10) xi tkj 2
aryandi572
 

Similar to application layer (20)

Materi 1 Kuliah Pemrograman Web
Materi 1 Kuliah Pemrograman Web Materi 1 Kuliah Pemrograman Web
Materi 1 Kuliah Pemrograman Web
 
Laporan pemrograman visual3
Laporan pemrograman visual3Laporan pemrograman visual3
Laporan pemrograman visual3
 
Sister 06 - client server
Sister   06 - client serverSister   06 - client server
Sister 06 - client server
 
Jeni web programming-bab 1-pengenalan pemrograman web
Jeni web programming-bab 1-pengenalan pemrograman webJeni web programming-bab 1-pengenalan pemrograman web
Jeni web programming-bab 1-pengenalan pemrograman web
 
Tugas atpi cornelia matthiasjanu
Tugas atpi cornelia matthiasjanuTugas atpi cornelia matthiasjanu
Tugas atpi cornelia matthiasjanu
 
Application Layer
Application LayerApplication Layer
Application Layer
 
Pertemuan 09 client server
Pertemuan 09   client serverPertemuan 09   client server
Pertemuan 09 client server
 
World wide web
World wide webWorld wide web
World wide web
 
TugaS II so- II
TugaS II so- II TugaS II so- II
TugaS II so- II
 
apliccation layer
apliccation layerapliccation layer
apliccation layer
 
Kelompok 7
Kelompok 7Kelompok 7
Kelompok 7
 
Presentation1
Presentation1Presentation1
Presentation1
 
Jarkom Pertemuan 9
Jarkom Pertemuan 9Jarkom Pertemuan 9
Jarkom Pertemuan 9
 
Pengertian dhcp,dns,dan http aryandi triyanto (10) xi tkj 2
Pengertian dhcp,dns,dan http aryandi triyanto (10) xi tkj 2Pengertian dhcp,dns,dan http aryandi triyanto (10) xi tkj 2
Pengertian dhcp,dns,dan http aryandi triyanto (10) xi tkj 2
 
Pengertian dhcp,dns,dan http aryandi triyanto (10) xi tkj 2
Pengertian dhcp,dns,dan http aryandi triyanto (10) xi tkj 2Pengertian dhcp,dns,dan http aryandi triyanto (10) xi tkj 2
Pengertian dhcp,dns,dan http aryandi triyanto (10) xi tkj 2
 
Pengertian dhcp,dns,dan http aryandi triyanto (10) xi tkj 2
Pengertian dhcp,dns,dan http aryandi triyanto (10) xi tkj 2Pengertian dhcp,dns,dan http aryandi triyanto (10) xi tkj 2
Pengertian dhcp,dns,dan http aryandi triyanto (10) xi tkj 2
 
Pengertian dhcp,dns,dan http aryandi triyanto (10) xi tkj 2
Pengertian dhcp,dns,dan http aryandi triyanto (10) xi tkj 2Pengertian dhcp,dns,dan http aryandi triyanto (10) xi tkj 2
Pengertian dhcp,dns,dan http aryandi triyanto (10) xi tkj 2
 
4d484d50f29c1ad46785b29570b6f793.pdf
4d484d50f29c1ad46785b29570b6f793.pdf4d484d50f29c1ad46785b29570b6f793.pdf
4d484d50f29c1ad46785b29570b6f793.pdf
 
Tugas 2 0317-dewi apriliani-1412510602
Tugas 2 0317-dewi apriliani-1412510602Tugas 2 0317-dewi apriliani-1412510602
Tugas 2 0317-dewi apriliani-1412510602
 
Tugas 2 0317-imelda felicia-1412510545
Tugas 2 0317-imelda felicia-1412510545Tugas 2 0317-imelda felicia-1412510545
Tugas 2 0317-imelda felicia-1412510545
 

More from ahmad amiruddin

enkripsi and authentication
enkripsi and authenticationenkripsi and authentication
enkripsi and authentication
ahmad amiruddin
 
penerapan ip address subnet
penerapan ip address subnetpenerapan ip address subnet
penerapan ip address subnet
ahmad amiruddin
 
ip address and subnet address
ip address and subnet addressip address and subnet address
ip address and subnet address
ahmad amiruddin
 
konsep dasar jaringan komputer
konsep dasar jaringan komputerkonsep dasar jaringan komputer
konsep dasar jaringan komputer
ahmad amiruddin
 
mengadministrasi server dalam jaringan
mengadministrasi server dalam jaringanmengadministrasi server dalam jaringan
mengadministrasi server dalam jaringan
ahmad amiruddin
 

More from ahmad amiruddin (6)

enkripsi and authentication
enkripsi and authenticationenkripsi and authentication
enkripsi and authentication
 
penerapan ip address subnet
penerapan ip address subnetpenerapan ip address subnet
penerapan ip address subnet
 
manajemen ip
manajemen ipmanajemen ip
manajemen ip
 
ip address and subnet address
ip address and subnet addressip address and subnet address
ip address and subnet address
 
konsep dasar jaringan komputer
konsep dasar jaringan komputerkonsep dasar jaringan komputer
konsep dasar jaringan komputer
 
mengadministrasi server dalam jaringan
mengadministrasi server dalam jaringanmengadministrasi server dalam jaringan
mengadministrasi server dalam jaringan
 

application layer

  • 1. Pertemuan-11. Application Layer Jaringan Komputer Teknik Informatika Universitas Yudharta Pasuruan 2012 MOCHAMAD SIRODJUDIN, S.Kom, MM www.sirodjudin.com
  • 2. Client and Server Aplikasi jaringan secara umum terdiri atas dua bagian, yaitu: Client side dan Server side.  Masing-masing bagian melakukan process secara terpisah. Process yang dimaksud misalnya: request, reply de-el-el. 
  • 3. Proses Komunikasi Di dalam jaringan komunikasi dua buah processes dari dua buah terminal yang berbeda saling berinteraksi melalu jaringan.  Kedua processes tersebut berkomunikasi dengan cara mengirimkan dan menerima pesan.  Sebuah process mengirim dan menerima pesan ke jaringan melalui socket. 
  • 5. API  Karena socket merupakan interface / antar muka antara Application Layer dan Transport Layer di dalam sebuah host, maka Socket dapat juga disebut sebagai API (Application Programmer’s Interface).
  • 6. Pengalamatan Agar sebuah process dapat berkomunikasi dengan process yang sama pada host yang lain, setiap process memiliki identifikasi berupa Port Number.  Contoh: HTTP  Port 80 FTP  Port 21 dan 22 SMTP  Port 25 
  • 7. Parameter dalam Application Layer Reliable Data Transfer - no data loss: e-mail, web transfer, file transfer, de-el-el. - lost tolerant: aplikasi audio/video.  Kecukupan bandwidth  Timing 
  • 8. W 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). 
  • 10. Overview HTTP Digunakan untuk mengakses WWW berupa object: HTML file, JPEG image, GIF image, Java applet, audio de-el-el.  Format URL: http://www.stikom.edu:80/index.html 
  • 11. Overview 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) 
  • 12. Protokol HTTP HTTP pada sisi client meminta koneksi TCP ke Server WWW melalui socket dengan nomor 80.  HTTP pada sisi client meminta file dengan mengirim pesan HTTP request ke server WWW.  HTTP pada sisi server menerima pesan melalui socket, selanjutnya object dikirim melalui HTTP response.  HTTP pada sisi server menutup koneksi TCP. 
  • 14. Message Sequence Diagram: HTTP Server t ction reques TCP conne TCP connection rep ly GET http:// < fi l e > Client
  • 15. Metode Koneksi HTTP Terdapat dua metode koneksi pada HTTP: Persistent Connection dan Non-Persistent Connection.  Non-Persistent Connection: - Digunakan pada HTTP/1.0 - Pada non-persistent connection hanya 1 object ditransmisikan pada saat koneksi TCP terjadi. Koneksi TCP harus dibangun kembali untuk setiap transmisi object berikutnya. 
  • 16. Metode Koneksi HTTP  Persistent Connection: - Digunakan pada HTTP/1.1 - Pada persistent connection, koneksi TCP yang baru tidak perlu dibangun untuk setiap object yang ditransmisikan oleh server. Koneksi dibatasi oleh lifetime. Beberapa object dapat ditransfer selama lifetime masih ada.
  • 17. HTTP Request Message HTTP Request message berbentuk: GET /direktori/file.html HTTP/1.1 Host: www.stikom.edu Connection: close User-agent: Mozilla/4.0 Accept-language: en
  • 18. HTTP 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. 
  • 19. HTTP 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.
  • 20. HTTP Response Message HTTP Response Message berbentuk: HTTP/1.1 200 OK Date: Fri, 17 Mar 2006 05:56:46 GMT Server: Apache Last-Modified: Tue, 06 Sep 2005 00:49:44 GMT Content-Length: 714 Connection: close Content-Type: text/html <html> <head> <title>::: STIKOM Website :::</title> </head> </html> Connection closed by foreign host.
  • 21. HTTP Response Message Dalam HTTP Response Message terdapat 3 blok utama: Status Line, Header Lines dan Entity Body.  Status Line berisi status code dengan perincian: 200 OK: Permintaan mendapatkan response dengan sukses. 
  • 22. HTTP Response Message 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.
  • 26. Melihat Proses HTTP dari Dekat Dengan Method: GET telnet omega.stikom.edu 80 GET /~jusak/index.html HTTP/1.0 Dengan Method: HEAD telnet omega.stikom.edu 80 HEAD /~jusak/index.html HTTP/1.0
  • 27. Authorization Beberapa HTTP sever membutuhkan autorisasi.  Client mengirimkan permintaan ke server (dengan header biasa), Server merespon dengan tambahan informasi header berupa: WWW-Authenticate:.  Status code: 401 Authorization Required.  Client menerima respon tsb, dan mengirim username serta password.  Client mengirim ulang permintaan di atas dengan header: Authorization:. 
  • 28. Cookies Cookies (RFC 2109) digunakan oleh server HTTP untuk menganalisa dan menelusuri kebiasaan user.  Cookies tersimpan dalam terminal (dikelola oleh browser) di mana user melakukan akses internet.  Sebuah database tersimpan dalam jaringan pengelola server HTTP sebagai acuan untuk melakukan analisa terhadap karakteristik user. 
  • 29. Cookies (Step-by-step) Ketika client meminta informasi ke HTTP server, server akan membuat sebuah nomor identifikasi yang unik dan meletakkannya pada database.  Selanjutnya server merespon client dengan header Set-Cookie: yang berisi nomor identifikasi.  Saat Client menerima HTTP response, browser menambah informasi tsb ke file cookie yang dikelola oleh browser. 
  • 30. Contoh: HTTP Response [jusak@omega ~]$ telnet www.amazon.com 80 Trying 207.171.166.102... Connected to www.amazon.com (207.171.166.102). Escape character is '^]'. HEAD /index.html HTTP/1.0 HTTP/1.1 302 Date: Mon, 20 Mar 2006 07:51:51 GMT Server: Server Set-Cookie: session-id-time=1143446400; path=/; domain=.amazon.com; expires=Monday, 27-Mar-2006 08:00:00 GMT Set-Cookie: session-id=103-8579567-0915805; path=/; domain=.amazon.com; expires=Monday, 27-Mar-2006 08:00:00 GMT Location: http://www.amazon.com/exec/obidos/subst/misc/404.html/1038579567-0915805 Vary: Accept-Encoding,User-Agent Connection: close Content-Type: text/html Connection closed by foreign host.
  • 31. Cookies (Step-by-step) Informasi yang ditambahkan ke dalam file cookie meliputi: hostname dari server dan nomor identifikasi.  Setiap kali client mangakses server yang sama, browser akan melakukan ekstrasi nomor identifikasi dalam file cookie, dan mengirikannya ke server.  Dengan cara demikian server dapat menelusuri kebiasaan dari client tsb. 
  • 32. Web 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. 
  • 33. Conditional 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.0 User-agent: Mozilla/4.0 If-Modified-since: Mon, 20 Mar 2006 15:16:10
  • 34. Conditional 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).