Anda di halaman 1dari 7

Lusy Dwi Oktaviani

115060807113050
1. Buat program client server dengan protokol UDP.
Jika client mengirimkan pesan "today" maka server mengembalikan tanggal hari ini.
Jika client mengirimkan pesan "yesterday" maka server akan mengembalikan tanggal kemarin
Jika client mengirimkan pesan "tomorrow" maka server akan mengembalikan tanggal besok
Jawab:
Membuat program server dengan isi kode di bawah ini kemudian file tersebut disimpan dengan nama
hari_server_udp.py:
# Import obejct socket
import socket
#definisi variable yang akan digunakan
PORT = 55555
SERVER_IP_ADDRESS = '127.0.0.1'
#inisiasi obejct soket untuk UDP
# socket.SOCK_DGRAM tipe socketnya adalah UDP
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
#bind kealamat tertentu
sock.bind((SERVER_IP_ADDRESS, PORT))
#iterasi untuk menjaga server tetap on
while True:
#menerima kiriman client
message_from_client, address = sock.recvfrom(65536)
#membuat kondisi yang disesuaikan dengan kiriman user
#jika user mengirim pesan today maka print today dan variable result dimasukan nilai 06-102014
if(message_from_client=='today'):
print("today")
result = "06-10-2014 "
#jika user mengirim pesan yesterday maka print yesterday dan variable result dimasukan
nilai 05-10-2014
elif(message_from_client=='yesterday'):
print("yesterday")
result = "05-10-2014 "

Lusy Dwi Oktaviani


115060807113050

#jika user mengirim pesan tomorrow maka print tomorrow dan variable result dimasukan
nilai 07-10-2014
elif(message_from_client=='tomorrow'):
print("tomorrow")
result = "07-10-2014 "
#kirim lagi ke client
sock.sendto(result, address)
#menutup socket
sock.close()

Membuat program client dengan isi kode di bawah ini kemudian file tersebut disimpan dengan nama
hari_client_udp.py:
# Import obejct socket
import socket
#definisi variable yang akan digunakan
PORT = 55555
SERVER_IP_ADDRESS = '127.0.0.1'
#inisiasi obejct soket untuk UDP / user datagram protokol
# socket.SOCK_DGRAM : tipe socektnya adalah UDP
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
#mengirim message
#nilai variable x adalah masukan dari user yang nanti akan dimunculkan tulisan "masukan kode"
terlebih dahulu
x= raw_input('masukan kode = ')
#mengirim yang dibuat pengkodisian
#jika user memasukan nilai x adalah 1 maka dikirimkan kata today ke server
if (x=='today') :
sock.sendto('today', (SERVER_IP_ADDRESS,PORT))

Lusy Dwi Oktaviani


115060807113050
#jika user memasukan nilai x adalah 2 maka dikirimkan kata yesterday ke server
elif (x=='yesterday') :
sock.sendto('yesterday', (SERVER_IP_ADDRESS,PORT))
#jika user memasukan nilai x adalah 3 maka dikirimkan kata tomorrow ke server
elif (x=='tomorrow') :
sock.sendto('tomorrow', (SERVER_IP_ADDRESS,PORT))
#menerima kiriman data dari server
message_from_server, address=sock.recvfrom(65535)
#cetak pesan dari server
print("Pesan dari server" ,message_from_server)

Output:
Buka Command prompt kemudian panggil file yang disimpan yang dijadikan sebagai server dan client.

Gambar 1. Output dari server

Lusy Dwi Oktaviani


115060807113050

Gambar 2. Output dari client

2. Buatlah program client-server untuk membalik sebuah kata


Client mengirim kata yang akan dibalik
Server membalik kata tersebut dan mengirim balik ke client
Jawab:
Membuat program server dengan isi kode di bawah ini kemudian file tersebut disimpan dengan nama
balik_server.py (format file .py):
import socket
#definisi variabel global
PORT=55555
SERVER_IP_ADDRESS='127.0.0.1'
#inisiasi object socket untuk UDP
#AF_INET :socket berbasis internet
#, socket.SOCK_DGRAM :tipe socketnya adalah UDP
sock=socket.socket(socket.AF_INET,socket.SOCK_DGRAM)

Lusy Dwi Oktaviani


115060807113050

#bind ke alamat dan port tertentu


#bind untuk mengikat ke alamat dan port tertentu sehingga hanya dapat menerima pesan dari
alamat dan port tertentu
sock.bind((SERVER_IP_ADDRESS,PORT))
#Iterasi untuk menjaga server tetap berjalan
while True:
#menerima kiriman client
message_from_client, address = sock.recvfrom(65536)
#pesan dalam bentuk str disimpan ke variable text
teks = message_from_client
#menampilkan kalimat/kata yang dikirimkan dari client
print("kata dari client : "+ message_from_client)
#memberikan nilai variable result sesuai nilai str variable tapi Stringnya dipotong-potong
dan disusun dari belakang kedepan
result = teks[::-1]
#memunculkan tulisan setelah dibalik
print ("Kata Setelah dibalik: " +result)
#kirim lagi ke client
sock.sendto(result, address)
#menampilkan tulisan bahwa pesan sudah dikirim
print("pesan telah dikirim")
#menutup socket
sock.close()

Lusy Dwi Oktaviani


115060807113050

Membuat program client dengan isi kode di bawah ini kemudian file tersebut disimpan dengan nama
balik_client.py (format file .py):
import socket
#definisi variabel global
PORT=55555
SERVER_IP_ADDRESS='127.0.0.1'
#inisiasi object socket untuk UDP
#AF_INET :socket berbasis internet
#, socket.SOCK_DGRAM :tipe socketnya adalah UDP
sock=socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
print("*******Membalik Kata*******")
x= raw_input('Masukan Kata=')
#mengirim message
sock.sendto(x , (SERVER_IP_ADDRESS,PORT))
#menerima kiriman data dari server
message_from_server, address=sock.recvfrom(65535)
#cetak pesan dari server
print("Pesan dari server" ,message_from_server)

Output:
Buka Command prompt kemudian panggil file yang disimpan yang dijadikan sebagai server dan client.

Lusy Dwi Oktaviani


115060807113050

Gambar 3. Output dari server

Gambar 4. Output dari client

Anda mungkin juga menyukai