- Beranda
- Programmer Forum
Thread Tempat Bertanya - Coolpie menjawab
...
TS
veritas72
Thread Tempat Bertanya - Coolpie menjawab
Kenalin gan, ane coolpie (http://kask.us/hbbSQ) 
Udah minimal 10 tahun berkiprah di bidang profesional IT,
Ane pengen bisa bagi2 pandangan dan jawaban bagi rekan2
yang ada pertanyaan2 tentang dunia IT apa saja, mulai dari pemrograman,
ato apapun, selama ane bisa jawab ane usahakan jawab dengan
sejelas mungkin.
Daftar artikel share:
Slides2 ane (bisa didownload):
- Dasar IT, Algoritma, Struktur Data dan Pemrograman - Slideshare
Artikel Berseri
Analogi-analogi Pemrograman dan Seputaran Dunia IT
Cheers
--
Tentang coolpie: http://kask.us/hbbSQ
Terima murid utk ditutor privat IT (bisa online)
(serius only)

Udah minimal 10 tahun berkiprah di bidang profesional IT,
Ane pengen bisa bagi2 pandangan dan jawaban bagi rekan2
yang ada pertanyaan2 tentang dunia IT apa saja, mulai dari pemrograman,
ato apapun, selama ane bisa jawab ane usahakan jawab dengan
sejelas mungkin.
Daftar artikel share:
- Share #1 - Tips dan Buku Referensi utk Programmer Pemula - Link
- Share #2 - Tipe-tipe/Jenis-jenis/Paradigma Pemrograman - Link
- Share #3 - Buku dan Referensi Java - Link
- Share #4 - Buku-buku Klasik Esensial Computer Science/Teknik Informatika - Link
- Share # 5 - Konsep-konsep Dasar Pemrograman - Algoritma Level 1 dan 2 - Link
- Share #6 - Aspek-aspek dari TI - Link
- Share #7 - Abstract Class dan Interface - Link
- Share #8 - Konsep Protocol - Link
Slides2 ane (bisa didownload):
- Dasar IT, Algoritma, Struktur Data dan Pemrograman - Slideshare
Artikel Berseri
Analogi-analogi Pemrograman dan Seputaran Dunia IT
Cheers--
Tentang coolpie: http://kask.us/hbbSQ
Terima murid utk ditutor privat IT (bisa online)

(serius only)
Spoiler for WHY COOLPIE:
Diubah oleh veritas72 14-09-2017 16:43
nona212 dan alditsri1234 memberi reputasi
2
47.2K
377
Komentar yang asik ya
Mari bergabung, dapatkan informasi dan teman baru!
Programmer Forum
20.3KThread•5.1KAnggota
Tampilkan semua post
TS
veritas72
#363
Protocol
Coolpie Note -- 8 September 2017
================================
Kita sebagai orang IT sering mendengar istilah
HTTP, TCP, IP, FTP, dll.
Apa kesamaan dari istilah2 tersebut,...
mereka adalah sama-sama Protocol.
Hmmm, coba kita ambil HTTP sebagai contoh,
kita dan bahkan orang awam sering memakai web/internet,
dan melihat alamat http://....
Tapi tau ga sebenarnya apa HTTP itu ? Perannya bagaimana ?
HTTP adalah singkatan dari Hypertext Transfer Protocol,
atau protokol untuk mentransfer/mengirim teks-hiper (hypertext).
Tapi sebelum itu kita coba bahas apa arti kata protokol.
Memakai bahasa sederhana, protokol dapat didefinisikan sebagai:
"prosedur/panduan/aturan formal langkah-langkah untuk berkomunikasi antara dua atau lebih pihak".
Contoh protokol dalam kehidupan sehari-hari:
Etika menelpon; dalam menelpon tentunya ada "prosedur" yang umumnya kita ikuti, yaitu sebagai contoh:
A: Menginisiasi komunikasi, memasukkan nomor yg akan di telpon,
setelah ada nada sambung mengatakan "Halo ...", untuk mencek apakah pihak disana bisa
mendengar.
B: Mengangkat telpon, mendengar kata "Halo", dan merespon "Ya Halo", untuk merespon
bahwa kita mendengar suara dari pihak A dan siap untuk berkomunikasi.
A: Merespon dengan "Ya... saya A, bertujuan untuk ..."
.... bla bla, komunikasi antara A dan B berlangsung...
A: Menutup pembicaraan, kira-kira: "OK B, demikian informasi dari saya, terimakasih"
B: Merespon kembali: "OK terimakasih"
A: Menutup telpon
B: Menutup telpon
Jadi jika kita lihat dalam berkomunikasi ada aturan langkah2 yang harus diikuti
agar komunikasi dapat berjalan dengan baik (tidak miskomunikasi).
Kalau kita lihat dari contoh diatas ada beberapa bagian dari tahapan komunikasi:
- Inisiasi/setup: halo... saya a, halo saya b
- Komunikasi/pertukaran data: pembicaraan utama
- Terminasi: Ok demikian, terimakasih; terimakasih, menutup telpon
Nah begitu juga struktur umum dari sebuah protokol.
Sekarang ke contoh teknis di HTTP:
Siapa saja entitas yang berkomunikasi, dalam hal ini adalah dua program/aplikasi
yaitu "Web Browser -- Firefox, Chrome, IE, Opera, dll" dan Web Server.
Web Browser atau disebut juga Web Client, adalah program yang memerlukan/meminta
suatu data (umumnya hypertext/HTML) dari program lain yang memiliki data tersebut
yaitu Web Server.
Jadi bisa dibayangkan Web Server ini mempunyai/memegang berbagai data yang disebut juga
dengan "resource"; untuk membedakan resource satu dengan yang lain tentu saja
perlu ada "pengalamatan" resource. Inilah yang disebut dengan istilah URL
(Uniform Resource Locator), yaito format yang menyatakan "alamat" suatu resource
tertentu di web server yang dapat "diminta".
Contoh alamat resource/URL: http://facebook.com/hello.php
Artinya kita meminta resource "login.php" dari web server pada komputer "facebook.com"
tentu saja transfernya dilakukan melalui jaringan Internet.
Proses yang terjadi pada akses ini adalah:
1) User: memasukkan URL "http://facebook.com/login.php" pada browser dan menekan go atau enter.
2) Web Browser: membuat pesan HTTP request dengan format seperti dibawah:
3) Web Browser: mengirimkan pesan HTTP yang berbentuk permintaan (HTTP request) ini
ke Web Server facebook.com via jaringan Internet.
4) Web Server: menerima pesan HTTP request, mencek keberadaan resource, melakukan otorisasi, dan jika OK
mengirimkan pesan HTTP kembali yang menyatakan kode status pemrosesan apakah sukses atau gagal,
dan juga resource (data teks atau byte) yang diminta; pesan kembalian ini disebut HTTP Response.
Note: jika resource yang diminta adalah suatu "program", misalnya script PHP, JSP, servlet, dst,
maka program tersebut akan dijalankan,
dan hasil dari program adalah resource yang akan dikembalikan -- ini dasar konsep web programming.
Untuk mudahnya misalkan resource yang diminta (hello.php) outputnya adalah content dengan tipe/format HTML.
Maka respon dari Web Server adalah:
Pesan HTTP Response ini akan dikirimkan kembali ke Web Browser via koneksi yang sudah disetup (koneksi TCP).
5) Web Browser: menerima respon HTTP, melihat bahwa statusnya OK (kode 200), dan melihat bahwa tipe content/isi
yang dikirim adalah HTML (text/html), maka akan dilakukan aksi yang sesuai untuk HTML,
dalam hal ini isi HTML akan dirender (ditampilkan) pada tampilan browser sehingga
terbentuk tampilan website yang kita lihat.
6) User: user melihat halaman website/resource yang diminta (hello.php).
Jadi seperti kita lihat, pola suatu protokol adalah sama, baik protokol "menelpon" dan protokol web (HTTP),
dalam arti ada aturan yang harus diikuti antar dua belah pihak dalam berkomunikasi/bertukar data.
Secara ringkas aturan protokol HTTP dapat ditulis sebagai berikut:
1) Meminta resource -- HTTP Request
2) Kembalian / respon beserta resource yang diminta -- HTTP Response
Jadi HTTP termasuk protokol yang simple, hanya ada dua aktivitas, yaitu request (permintaan),
dan response (respon beserta resource/content yang diminta).
Dalam tiap aktivitas tersebut entitas yang berkomunikasi, dalam hal ini Web Browser dan Web Server
saling bertukar pesan dalam bentuk "pesan HTTP" / HTTP Message, dengan format/pola diatas.
--
PS: Mencari murid privat baru; SERIUS ONLY yang berminat silakan PM.
================================
Kita sebagai orang IT sering mendengar istilah
HTTP, TCP, IP, FTP, dll.
Apa kesamaan dari istilah2 tersebut,...
mereka adalah sama-sama Protocol.
Hmmm, coba kita ambil HTTP sebagai contoh,
kita dan bahkan orang awam sering memakai web/internet,
dan melihat alamat http://....
Tapi tau ga sebenarnya apa HTTP itu ? Perannya bagaimana ?
HTTP adalah singkatan dari Hypertext Transfer Protocol,
atau protokol untuk mentransfer/mengirim teks-hiper (hypertext).
Tapi sebelum itu kita coba bahas apa arti kata protokol.
Memakai bahasa sederhana, protokol dapat didefinisikan sebagai:
"prosedur/panduan/aturan formal langkah-langkah untuk berkomunikasi antara dua atau lebih pihak".
Contoh protokol dalam kehidupan sehari-hari:
Etika menelpon; dalam menelpon tentunya ada "prosedur" yang umumnya kita ikuti, yaitu sebagai contoh:
A: Menginisiasi komunikasi, memasukkan nomor yg akan di telpon,
setelah ada nada sambung mengatakan "Halo ...", untuk mencek apakah pihak disana bisa
mendengar.
B: Mengangkat telpon, mendengar kata "Halo", dan merespon "Ya Halo", untuk merespon
bahwa kita mendengar suara dari pihak A dan siap untuk berkomunikasi.
A: Merespon dengan "Ya... saya A, bertujuan untuk ..."
.... bla bla, komunikasi antara A dan B berlangsung...
A: Menutup pembicaraan, kira-kira: "OK B, demikian informasi dari saya, terimakasih"
B: Merespon kembali: "OK terimakasih"
A: Menutup telpon
B: Menutup telpon
Jadi jika kita lihat dalam berkomunikasi ada aturan langkah2 yang harus diikuti
agar komunikasi dapat berjalan dengan baik (tidak miskomunikasi).
Kalau kita lihat dari contoh diatas ada beberapa bagian dari tahapan komunikasi:
- Inisiasi/setup: halo... saya a, halo saya b
- Komunikasi/pertukaran data: pembicaraan utama
- Terminasi: Ok demikian, terimakasih; terimakasih, menutup telpon
Nah begitu juga struktur umum dari sebuah protokol.
Sekarang ke contoh teknis di HTTP:
Siapa saja entitas yang berkomunikasi, dalam hal ini adalah dua program/aplikasi
yaitu "Web Browser -- Firefox, Chrome, IE, Opera, dll" dan Web Server.
Web Browser atau disebut juga Web Client, adalah program yang memerlukan/meminta
suatu data (umumnya hypertext/HTML) dari program lain yang memiliki data tersebut
yaitu Web Server.
Jadi bisa dibayangkan Web Server ini mempunyai/memegang berbagai data yang disebut juga
dengan "resource"; untuk membedakan resource satu dengan yang lain tentu saja
perlu ada "pengalamatan" resource. Inilah yang disebut dengan istilah URL
(Uniform Resource Locator), yaito format yang menyatakan "alamat" suatu resource
tertentu di web server yang dapat "diminta".
Contoh alamat resource/URL: http://facebook.com/hello.php
Artinya kita meminta resource "login.php" dari web server pada komputer "facebook.com"
tentu saja transfernya dilakukan melalui jaringan Internet.
Proses yang terjadi pada akses ini adalah:
1) User: memasukkan URL "http://facebook.com/login.php" pada browser dan menekan go atau enter.
2) Web Browser: membuat pesan HTTP request dengan format seperti dibawah:
Code:
GET /login.php HTTP/1.1
Host: facebook.com
3) Web Browser: mengirimkan pesan HTTP yang berbentuk permintaan (HTTP request) ini
ke Web Server facebook.com via jaringan Internet.
4) Web Server: menerima pesan HTTP request, mencek keberadaan resource, melakukan otorisasi, dan jika OK
mengirimkan pesan HTTP kembali yang menyatakan kode status pemrosesan apakah sukses atau gagal,
dan juga resource (data teks atau byte) yang diminta; pesan kembalian ini disebut HTTP Response.
Note: jika resource yang diminta adalah suatu "program", misalnya script PHP, JSP, servlet, dst,
maka program tersebut akan dijalankan,
dan hasil dari program adalah resource yang akan dikembalikan -- ini dasar konsep web programming.
Untuk mudahnya misalkan resource yang diminta (hello.php) outputnya adalah content dengan tipe/format HTML.
Maka respon dari Web Server adalah:
Code:
HTTP/1.1 200 OK
Content-Type: text/html
Content-Length: 138
<html>
<head>
<title>Contoh Halaman</title>
</head>
<body>
Hello World, halaman sederhana
</body>
</html>
Pesan HTTP Response ini akan dikirimkan kembali ke Web Browser via koneksi yang sudah disetup (koneksi TCP).
5) Web Browser: menerima respon HTTP, melihat bahwa statusnya OK (kode 200), dan melihat bahwa tipe content/isi
yang dikirim adalah HTML (text/html), maka akan dilakukan aksi yang sesuai untuk HTML,
dalam hal ini isi HTML akan dirender (ditampilkan) pada tampilan browser sehingga
terbentuk tampilan website yang kita lihat.
6) User: user melihat halaman website/resource yang diminta (hello.php).
Jadi seperti kita lihat, pola suatu protokol adalah sama, baik protokol "menelpon" dan protokol web (HTTP),
dalam arti ada aturan yang harus diikuti antar dua belah pihak dalam berkomunikasi/bertukar data.
Secara ringkas aturan protokol HTTP dapat ditulis sebagai berikut:
1) Meminta resource -- HTTP Request
Code:
GET [alamat resource] [versi protokol HTTP]
Host: [nama host yang dituju]
2) Kembalian / respon beserta resource yang diminta -- HTTP Response
Code:
[versi protokol HTTP] [status code] [deskripsi status]
Content-Type: [tipe dari content/resource]
Content-Length: [jumlah byte dari content]
[baris kosong]
[data dari content/resource]
Jadi HTTP termasuk protokol yang simple, hanya ada dua aktivitas, yaitu request (permintaan),
dan response (respon beserta resource/content yang diminta).
Dalam tiap aktivitas tersebut entitas yang berkomunikasi, dalam hal ini Web Browser dan Web Server
saling bertukar pesan dalam bentuk "pesan HTTP" / HTTP Message, dengan format/pola diatas.
--
PS: Mencari murid privat baru; SERIUS ONLY yang berminat silakan PM.

0

,