Oleh: antoniusrc | 27 Mei 2008

HTTP (Hypertext Transfer Protocol)

Dalam suatu sistem client/server web menggunakan protokol HTTP untuk melakukan proses transfer data antara browser dan web server. Dalam HTTP client me-request data dan server me-response client dengan menggunakan koneksi TCP (Transmission Control Protocol) pada port 80.

Protokol HTTP didefinisikan oleh Tim Berners-Lee dalam RFC 1945 versi 1.0 dan digunakan sejak tahun 1990. Versi HTTP terbaru adalah HTTP versi 1.1 dengan standar RFC 2616. HTTP merupakan implementasi dari protokol TCP. Pada HTTP terdapat tiga jenis hubungan dengan perantara: proxy, gateway, dan tunnel. Proxy bertindak sebagai agen penerus, menerima request dalam bentuk URI (Uniform Request Identifier) mutlak, mengubah format request dan mengirimkan request ke server yang ditunjukan oleh URI. Gateway berfungsi sebagai agen penerima dan menerjemahkan request ke protokol server yang dilayaninya. Tunnel bertindak sebagai titik relay antara dua hubungan HTTP tanpa mengubah request dan response HTTP. Tunnel digunakan jika komunikasi perlu melalui sebuah perantara dan perantara tersebut tidak mengetahui isi pesan dalam hubungan tersebut.

Perbedaan antara HTTP versi 1.0 dan 1.1 adalah penggunaan hubungan persistent (hubungan secara terus menerus). HTTP/1.0 membuka koneksi untuk tiap permintaan satu URI, sedangkan HTTP/1.1 dapat menggunakan sebuah koneksi TCP untuk beberapa permintaan URI (persistent) dengan perintah “Connection: keep-Alive”, kecuali jika client menyatakan tidak hendak menggunakan hubungan persistent dengan perintah “Connection: close”. HTTP menggunakan port default 80, namun dapat diganti menjadi 1023-65535.

Ada dua macam pertukaran data dalam protokol HTTP yaitu metode GET dan POST. Dalam metode GET data dikirimkan ke server menjadi bagian URL (Uniform Resource Locator). Panjang URL terbatas hingga 1024 bytes sehingga parameter dan nilai yang dikirim dalam metode GET ini menjadi terbatas pula. Sedangkan dalam metode POST parameter dan nilai yang dikirim ke server menjadi bagian dari message body hinggga data yang dikirimkan menjadi lebih besar, yang bisa diset dalam file konfigurasi untuk POST.

Contoh sebuah request data dari client ke server menggunakan Telnet:

telnet> open localhost 80

Trying 127.0.0.1…

Connected to localhost

Escaped character is ‘^]’.

HEAD / HTTP 1.1 <enter>

Host: localhost <enter>

Connection: close <enter>

<enter>

<enter>

Contoh sebuah response data dari server ke client yang diterima melalui Telnet:

HTTP/1.1 200 OK

Date: Mon, 15 Mar 2004 10:05:00 GMT

Server: Apache/2.0.40 (Red Hat Linux)

Accept-Ranges: bytes

X-Powered-By: PHP/4.2.2

Content-Type: text/html; charset=ISO-8859-1

Connection closed by foreign host.


Responses

  1. duh aku gapnet, salam kenal aja.


Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s

Kategori

%d blogger menyukai ini: