Pemrograman Socket dengan TCP
Konsep client-server merupakan dasar dari setiap transaksi yang terjadi pada setiap aplikasi jaringan. Server berfungsi sebagai pengatur sumber daya yang ada. Server menyediakan layanan untuk kebutuhan client dengan memanfaatkan sumber daya yang ada. Proses client-server dapat dijalankan pada sebuah komputer tunggal atau dapat juga satu komputer berfungsi sebagai server dan satu atau beberapa komputer berfungsi sebagai client.
Socket pertama kali diperkenalkan oleh unix BSD, sehingga sering disebut sebagai socket BSD. Socket merupakan antarmuka antara application process dan transport layer. Socket merupakan mekanisme yang memungkinkan terjadinya pertukaran data antar program atau proses baik dalam satu mesin maupun antar mesin.
1. Program 1
- Program
- output
2. Program 2
- Program
- Output
Tugas 1
1. Analisa cara kerja program diatas
Jawab: Pada bagian program 1 terdapat import socket dan juga import sys yang mana pada bagian program nya digunakan parameter dan saat dilakukan run atau berhasil membuat socket maka akan muncul tulisan "Socket Created" namun jika gagal dalam membuat socketnya maka akan terdapat tulisan "Failed to create a socket"disertai alasannya lalu setelah itu terdapat sys.exit(). Kemudian akan dilakuakan pembuatan suatu inputan yang mana pada bagian ini terdapat target_host yang mana target host tersebut akan disambungkan dan juga terdapat target portnya. Lalu pada programnya juga terdapat try yang mana jika socket terkonek maka akan muncul "Socket Connected to" namun jika error maka akan keluaran "Failed connected to". Pada saat dilakukan run di cobakan untuk menyambungkan kke targetnya yaitu google dengan port 80, saat disambungkan ke google maka socket dapat connect ke google.
Pada program 2
Pada program 2 ini akan dilakukan pengecekan terhadap html dari www.linux.org yang mana pada programnya terdapat import socket, host, port,bufsiz dan juga ADDR lalu pada bagian ini juga terdapat while, if dan break. Pada outputnya muncul htnl dari linux yang sebelumnya telah kita masukkan host dan port nya pada programnya
2. Jelaskan perbedaan dari 2 program tersebut
Jawab: Pada program 1 kita akan menyambungkan socket yang mana jika tersambung akan ditampilkan pesan bahwasanya socket tersebut tersambung sedangkan program nomor 2 kita akan melhat html dari www.linux.org
3. Program 3
- Program
- Output
- Program
- Output
Tugas 2
1. Analisa cara kerja 2 program tersebut.
Jawab: Pada bagian server akan memberikan respon terhadap apa yang diinputkan oleh client yang mana nantinya akan muncul. Pada outputnya nanti akan terdapat "Server waiting for connection" yang mana ia menunggu koneksi dari client. Sedangkan pada bagian client kita akan melakukakan inputan terhadap histname, port dan juga nanti akan terdapat pertanyaan apakah kita akan mengirim data lebih ke port lalu klik y, selanjutnya kita akan inputkan payload yang disini kita bebas mengisikan apa saja yang nantinya akan muncul pada bagian server. Server juga mengirimkan tanggal dan waktu kepada bagiam client.
Latihan
1. Buatlah program client dan server dimana client dapat menerima pertanyaan dari
server dan mengirimkan kembali jawaban dari user ke server
Jawab:
2. Buatlah program client dan server dimana server menyediakan layanan
perhitungan luas bangun datar (persegi, persegi panjang, segitiga), client dapat
memilih jenis bangun datar dan mengirimkan informasi ukuran (sisi untuk persegi,
panjang dan luas untuk persegi panjang dan segitiga) untuk perhitungan,
kemudian menampilkan hasil dari server.
Jawab:
3. Tambahkan error handling pada program tcp_server3.py, tcp_client3.py, latihan1
dan latihan2
Jawab:
a. tcp_server3
d. Latihan2
0 comments:
Post a Comment