Untuk membangun sebuah aplikasi yang berbasis socket, kita dapat menggunakan 2 jenis socket yang berbeda yaitu :
STREAM SOCKET >< DATAGRAM SOCKET
a. Stream Socket menggunakan TCP (Transmission Control Protocol), salah satu jenis protokol yang memungkinkan sekumpulan komputer untuk berkomunikasi dan bertukar data didalam suatu jaringan
b. Datagram Socket menggunakan UDP (User Datagram Protocol), salah satu protokol lapisan transport TCP/IP yang mendukung komunikasi yang tidak handal (unreliable), tanpa koneksi antara host-host dalam jaringan yang menggunakan TCP/IP
TCP dan UDP sama-sama berfungsi sebagai protokol pertukaran data, berikut perbedaanya
UDP tidak memerlukan proses koneksi terlebih dahulu untuk dapat mengirimkan data, paket-paket data yang dikirimkan UDP bisa jadi melalui rute yang berbeda-beda, sehingga hasil yang diterima bisa jadi tidak berurutan.
Contohnya jika aplikasi socket pengirim mengirimkan berturut-turut pesan 1, pesan 2, dan pesan 3, maka aplikasi socket penerima belum tentu mendapatkan pesan yang berurutan dimulai dari pesan 1, pesan 2, dan terakhir pesan 3. Bisa saja pesan 2 terlebih dulu diterima, menyusul pesan-pesan yang lain, atau berbagai kemungkinan lainnya. Bahkan, dapat terjadi pesan yang dikirimkan tidak sampai ke penerima karena kegagalan pengiriman paket data.
Sedangkan,
TCP mengharuskan terjadinya koneksi terlebih dahulu, kemudian mengirimkan paket-paket data secara berurutan, penerima juga dijamin akan menerima data dengan urutan yang benar, dimulai dari data pertama yang dikirimkan hingga data terakhir. TCP dapat menangani data yang hilang, rusak, terpecah, ataupun terduplikasi.
Dari sekilas perbedaan ini, kita dapat menarik kesimpulan bahwa aplikasi socket yang menggunakan TCP memerlukan pertukaran data dua arah yang valid. Sedangkan, aplikasi socket yang menggunakan UDP lebih memprioritaskan pada pengumpulan data.
Karena itu aplikasi socket dengan TCP sering diterapkan untuk aplikasi chat, transfer file, ataupun transaksi-transaksi penting. Sedangkan aplikasi socket dengan UDP cocok diterapkan untuk aplikasi monitoring jaringan, game online, dan aplikasi-aplikasi broadcast.
--------------------------------------------------------------------------------------------------------
Setelah mengetahui perbedaan dari kedua jenis socket, berikut adalah Python programming socket yang pernah saya coba.
Prosedur :
1. Menyiapkan dua buah PC yang sudah terinstall python dan python bisa dipanggil di CMD
Pastiin saat install kalian klik 'Add Python..' yaa
2. Mengkoneksikan kedua PC dengan cara :
a. Kedua PC berada di satu jaringan yang sama (maksudnya menggunakan jaringan wifi yang
sama, disini saya menggunakan hotspot dari hp lalu di tethringkan ke kedua PC)
b. Setelah satu jaringan, buka commandprompt di masing-masing PC lalu 'ipconfig' untuk
mengetahui masing-masing IP lalu melakukan PING IP sendiri maupun IP PC yang lain untuk
memastikan kedua PC benar-benar sudah terkoneksi.
c. Ingat" IP pada PC server dan client karena setiap script nantinya harus diganti dengan IP" itu.
3. Menuliskan script python socket programming ini, kalau aku menggunakan Notepad++ lalu disimpan dengan format python. Berikut adalah script-script yang sudah pernah aku coba,
a. TCP/IP
-->Save at Server PC (Server.py)
-->Save at Client PC (Client.py)
Begini cara menggunakannya,
- Membuka idle python di kedua PC, lalu open file Server.py dan Client.py di masing-masing PC lalu buka lagi idle yang masih kosong.
- Perhatikan script pada client.py, ubah nilai HOST menjadi IP Server.
- Pada PC server, klik f5. Lalu diikuti dengan PC client yang juga klik f5.
Nanti tampilannya seperti ini,
Begini cara menggunakannya,TCP dan UDP sama-sama berfungsi sebagai protokol pertukaran data, berikut perbedaanya
UDP tidak memerlukan proses koneksi terlebih dahulu untuk dapat mengirimkan data, paket-paket data yang dikirimkan UDP bisa jadi melalui rute yang berbeda-beda, sehingga hasil yang diterima bisa jadi tidak berurutan.
Contohnya jika aplikasi socket pengirim mengirimkan berturut-turut pesan 1, pesan 2, dan pesan 3, maka aplikasi socket penerima belum tentu mendapatkan pesan yang berurutan dimulai dari pesan 1, pesan 2, dan terakhir pesan 3. Bisa saja pesan 2 terlebih dulu diterima, menyusul pesan-pesan yang lain, atau berbagai kemungkinan lainnya. Bahkan, dapat terjadi pesan yang dikirimkan tidak sampai ke penerima karena kegagalan pengiriman paket data.
Sedangkan,
TCP mengharuskan terjadinya koneksi terlebih dahulu, kemudian mengirimkan paket-paket data secara berurutan, penerima juga dijamin akan menerima data dengan urutan yang benar, dimulai dari data pertama yang dikirimkan hingga data terakhir. TCP dapat menangani data yang hilang, rusak, terpecah, ataupun terduplikasi.
Dari sekilas perbedaan ini, kita dapat menarik kesimpulan bahwa aplikasi socket yang menggunakan TCP memerlukan pertukaran data dua arah yang valid. Sedangkan, aplikasi socket yang menggunakan UDP lebih memprioritaskan pada pengumpulan data.
Karena itu aplikasi socket dengan TCP sering diterapkan untuk aplikasi chat, transfer file, ataupun transaksi-transaksi penting. Sedangkan aplikasi socket dengan UDP cocok diterapkan untuk aplikasi monitoring jaringan, game online, dan aplikasi-aplikasi broadcast.
--------------------------------------------------------------------------------------------------------
Setelah mengetahui perbedaan dari kedua jenis socket, berikut adalah Python programming socket yang pernah saya coba.
Prosedur :
1. Menyiapkan dua buah PC yang sudah terinstall python dan python bisa dipanggil di CMD
Pastiin saat install kalian klik 'Add Python..' yaa
Maksudku bisa terpanggil di command prompt itu kaya gini,
a. Kedua PC berada di satu jaringan yang sama (maksudnya menggunakan jaringan wifi yang
sama, disini saya menggunakan hotspot dari hp lalu di tethringkan ke kedua PC)
b. Setelah satu jaringan, buka commandprompt di masing-masing PC lalu 'ipconfig' untuk
mengetahui masing-masing IP lalu melakukan PING IP sendiri maupun IP PC yang lain untuk
memastikan kedua PC benar-benar sudah terkoneksi.
c. Ingat" IP pada PC server dan client karena setiap script nantinya harus diganti dengan IP" itu.
3. Menuliskan script python socket programming ini, kalau aku menggunakan Notepad++ lalu disimpan dengan format python. Berikut adalah script-script yang sudah pernah aku coba,
a. TCP/IP
-->Save at Server PC (Server.py)
-->Save at Client PC (Client.py)
Begini cara menggunakannya,
- Membuka idle python di kedua PC, lalu open file Server.py dan Client.py di masing-masing PC lalu buka lagi idle yang masih kosong.
- Perhatikan script pada client.py, ubah nilai HOST menjadi IP Server.
- Pada PC server, klik f5. Lalu diikuti dengan PC client yang juga klik f5.
Nanti tampilannya seperti ini,
server.py sebelum client belum masuk ke chat area (belum klik f5)
server.py ketika client.py sudah klik f5
Tampilan client.py ketika client server sudah berhasil melakukan chat. chat diakhiri client dengan text 'bye'
b. UDP
-->Save at Server PC (Serverudp.py)
-->Save at Client PC (Clientudp.py)
a. Pada sisi server, membuka program serverudp.py lalu menuliskan IP komputer server di local
address.
b. Pada sisi client, membuka program clientudp.py lalu menuliskan local address sesuai dengan local address server.
c. Membuka command prompt dan memanggil program serverudp.py maupun clientudp.py di masing-masing PC.
Tampilannya seperti ini,







omg bagus banget berguna banget!!!!!! makasih yaaaaa
BalasHapuskak ini saya mau coba pemrograman kk tpi kok gagal koneksi yah?? padahal konek ke inteternet yang sama
BalasHapusthxu for sharing!
BalasHapuswahh sangat bermanfaat
BalasHapusinsightful sekaliii, luar biasa!
BalasHapus