100% menganggap dokumen ini bermanfaat (1 suara)
252 tayangan12 halaman

Pemrograman Dasar Jaringan Komputer

Dokumen tersebut merupakan laporan praktikum jaringan komputer mengenai protokol TCP dan UDP. Ringkasan dari dokumen tersebut adalah sebagai berikut: Dokumen tersebut menjelaskan pengamatan praktikum mengenai protokol TCP dan UDP dimana dijelaskan cara kerja program client dan server pada masing-masing protokol serta modifikasi source code untuk mengirim balasan nama atau pesan berdasarkan input NIM.

Diunggah oleh

Rizal
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd
100% menganggap dokumen ini bermanfaat (1 suara)
252 tayangan12 halaman

Pemrograman Dasar Jaringan Komputer

Dokumen tersebut merupakan laporan praktikum jaringan komputer mengenai protokol TCP dan UDP. Ringkasan dari dokumen tersebut adalah sebagai berikut: Dokumen tersebut menjelaskan pengamatan praktikum mengenai protokol TCP dan UDP dimana dijelaskan cara kerja program client dan server pada masing-masing protokol serta modifikasi source code untuk mengirim balasan nama atau pesan berdasarkan input NIM.

Diunggah oleh

Rizal
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 12

LABORATORIUM JARINGAN KOMPUTER

PROGRAM TEKNOLOGI INFORMASI DAN ILMU KOMPUTER


UNIVERSITAS BRAWIJAYA
Nama
NIM
Kelas
Bab
Jenis Tugas
Asisten

: Rizal Darmawansyah
: 145150201111058
: Informatika B
: II Dasar Pemrograman Jaringan
: Latihan Praktikum / Tugas Praktikum / Kesimpulan
: Imam Syafii Al Ghozaly

A, Pengamatan Praktikum Dengan TCP


1. Jelaskan apa yang terjadi ketika program server-tcp dijalankan?

Server akan berjalan secara terus menerus dan menunggu request dari client.
Server akan terus membuka socket hingga ada request koneksi yang dating.
2. Pada baris program server-tcp jelaskan maksud dari masing-masing baris.
server-tcp.py
1
2
3
4
5
6
7
8
9
1
0
1
1
1
2

from socket import *


serverPort = 12000
serverSocket = socket(AF_INET,SOCK_STREAM)
serverSocket.bind(("",serverPort))
serverSocket.listen(1)
print"Server Ready"
while 1:
connectionSocket, addr = serverSocket.accept()
sentence = connectionSocket.recv(1024)
capitalizedSentence=sentence.upper()
connectionSocket.send(capitalizedSentence)
connectionSocket.close()

Penjelasan syntax
1 Mengimpor library socket pada python
2 Inisialisasi port untuk server degnan alamat 12000

LABORATORIUM JARINGAN KOMPUTER


PROGRAM TEKNOLOGI INFORMASI DAN ILMU KOMPUTER
UNIVERSITAS BRAWIJAYA
3

Menyimpan nilai kembalian dari socket dengan isi parameter ip digunakan dan
protokol yang digunakan
4 Melakukan proses binding/pengikatan dengan parameter ip server dan nomer
dari serverPort (welcoming socket)
5 Proses server dalam menunggu request dari client
6 Menampilkan output Server Ready
7 Melakukan perulangan selama nilai dari serverSocket adalah 1
8 Untuk menerima request koneksi yang datang yang disimpan pada
connectionSocket dan alamat klien yang di simpan pada addr
9
Menyimpan data yang dikirim oleh client dengan batas maksimal 1024 byte
1
Mengubah data dari client menjadi huruf besar dan disimpan pada
0
capitalizedSentence
Mengirim data yang telah diproses oleh server kepada client
11
Menutup socket yang terkoneksi dengan client
1
2
3. Jelaskan apa yang terjadi ketika program klien-tcp dijalankan?

Program gagal dijalankan dikarenakan koneksi secara TCP membutuhkan server


dan client yang saling terhubung. Ketika server tidak dijalankan maka pihak client
tidak akan dapat melakukan request koneksi kepada server sehingga transfer data tidak
akan dapat dijalankan.
4. Pada baris program klien-tcp jelaskan maksud dari masing-masing baris.
klien-tcp.py
1
2
3
4
5
6
7
8

from socket import *


serverName = "localhost"
serverPort = 12000
clientSocket = socket(AF_INET, SOCK_STREAM)
clientSocket.connect((serverName,serverPort))
sentence = raw_input("Input lowercase sentence:")
clientSocket.send(sentence)
modifiedSentence = clientSocket.recv(1024)

LABORATORIUM JARINGAN KOMPUTER


PROGRAM TEKNOLOGI INFORMASI DAN ILMU KOMPUTER
UNIVERSITAS BRAWIJAYA
9
1
0

print "From Server:", modifiedSentence


clientSocket.close()

Penjelasan syntax
1 Mengimpor library socket pada python
2 Inisialisasi nama server yang digunakan dengan nama localhost
3 Inisialisasi port untuk server dengan alamat 12000
4 Menyimpan nilai kembalian dari socket dengan isi parameter ip yang ingin
digunakan dan protokol yang digunakan
5 Melakukan koneksi kepada server dengan parameter nama sever dan port dari
server
6 Mempersilahkan user untuk memasukkan pesan/data yang ingin dikirim kepada
server dan disimpan pada sentence
7
Mengirim inputan data yang dimasukkan oleh user
8
Menyimpan data yang telah dikirim oleh server dengan batas maksimum 1024
9 byte data yang masuk
1 Menampilkan data balasan dari server
Menutup socket yang sedang terhubung dengan server
0
5. Apa yang terjadi ketika program klien-tcp dan server-tcp dijalankan secara bersamaan,
dan apa yang terjadi ketika pada klien-tcp menuliskan kata halo?

Pada hasil screenshot diatas menunjukkan request connection pada socket client
telah di terima oleh server dan server menunggu data yang ditransfer oleh client.
Ketika data dikirim dengan kata halo maka pesan tersebut akan diterima server yang
kemudian dikonversi oleh server menjadi huruf besar. Setelah dikonversi, data tersebut
dikirimkan kembali oleh server kepada client dan serverpun menutup socket yang
sedang terrhubung oleh client. Setelah itu data tersebut akan di terima oleh client

LABORATORIUM JARINGAN KOMPUTER


PROGRAM TEKNOLOGI INFORMASI DAN ILMU KOMPUTER
UNIVERSITAS BRAWIJAYA
berupa kata HALO. Kemudian client menutup socket yang sedang terhubung sedang
dengan server.
B. Pengamatan Praktikum dengan UDP
1. Jelaskan apa yang terjadi ketika program server-udp dijalankan?

Server akan berjalan secara terus menerus dan menunggu request dari client.
Server akan terus membuka socket hingga ada request koneksi yang datang.
2. Pada baris program server-udp jelaskan maksud dari masing-masing baris.
server-udp.py
1
2
3
4
5
6
7
8
9
1
0

from socket import *


serverPort = 12000
serverSocket = socket(AF_INET, SOCK_DGRAM)
serverSocket.bind(("", serverPort))
print "The server is ready to receive"
while 1:
message, clientAddress = serverSocket.recvfrom(2048)
modifiedMessage = message.upper()
serverSocket.sendto(modifiedMessage, clientAddress)

Penjelasan syntax
1 Mengimpor library socket pada python
2 Inisialisasi port untuk server degnan alamat 12000
3 Menyimpan nilai kembalian dari socket dengan isi parameter ip dan dgram
yang digunakan
4 Melakukan proses binding/pengikatan dengan parameter ip server dan nomer
dari serverPort (welcoming socket)
5 Menampilkan output The server is ready to receive
6 Melakukan perulangan selama nilai sama dengan 1
7 Menyimpan data yang dikirim oleh client pada message dengan batas maksimal
2048 byte
8

LABORATORIUM JARINGAN KOMPUTER


PROGRAM TEKNOLOGI INFORMASI DAN ILMU KOMPUTER
UNIVERSITAS BRAWIJAYA

Mengubah data dari client menjadi huruf besar dan disimpan pada
modificationMessage
Mengirim data yang telah diproses oleh server kepada client dengan parameter
isi pesan dan alamat dari client

3. Jelaskan apa yang terjadi ketika program klien-udp dijalankan?

Client berhasil dijalankan dikarenakan pada UDP tidak dibutuhkan server dan
client yang saling terhubung sehingga tanpa ada server, client pun dapat dijalankan
dan mentransfer data tanpa mempedulikan keutuhan data yang dikirim.
4. Pada baris program klien-udp jelaskan maksud dari masing-masing baris.
klien-udp.py
1
2
3
4
5
6
7
8
9
1
0

from socket import *


serverName = "localhost"
serverPort = 12000
clientSocket = socket(AF_INET, SOCK_DGRAM)
message = raw_input("Input lowercase sentence:")
clientSocket.sendto(message,(serverName, serverPort))
modifiedMessage, serverAddress = clientSocket.recvfrom(2048)
print modifiedMessage
clientSocket.close()

Penjelasan syntax
1 Mengimpor library socket pada python
2 Inisialisasi nama server yang digunakan dengan nama localhost
3 Inisialisasi port untuk server dengan alamat 12000
4 Menyimpan nilai kembalian dari socket dengan isi parameter ip dan dgram
yang digunakan
5 Mempersilahkan user untuk memasukkan pesan/data yang ingin dikirim kepada
server dan disimpan pada message
6 Mengirim inputan data yang dimasukkan oleh user dengan parameter message,
nama server dan port dari server
7

LABORATORIUM JARINGAN KOMPUTER


PROGRAM TEKNOLOGI INFORMASI DAN ILMU KOMPUTER
UNIVERSITAS BRAWIJAYA

8
9

Menyimpan data yang telah dikirim oleh server dengan batas maksimum 2048
byte dan disimpan pada modifiedMessage
Menampilkan data balasan dari server
Menutup socket yang sedang terhubung dengan server

5. Apa yang terjadi ketika program klien-udp dan server-udp dijalankan secara
bersamaan, dan apa yang terjadi ketika pada klien-udp menuliskan kata halo?

Pada hasil screenshot diatas ketika data dikirim dengan kata halooleh client
maka pesan tersebut akan diterima server yang kemudian dikonversi oleh server
menjadi huruf besar. Setelah dikonversi, data tersebut dikirimkan kembali oleh server
kepada client Setelah itu data tersebut akan di terima oleh client berupa kata HALO.
Kemudian client menutup socket yang sedang terhubung dengan server

LABORATORIUM JARINGAN KOMPUTER


PROGRAM TEKNOLOGI INFORMASI DAN ILMU KOMPUTER
UNIVERSITAS BRAWIJAYA

Nama
NIM
Kelas
Bab
Jenis Tugas
Asisten

: Rizal Darmawansyah
: 145150201111058
: Informatika B
: II Dasar Pemrograman Jaringan
: Latihan Praktikum / Tugas Praktikum / Kesimpulan
: Imam Syafii Al Ghozaly

A. Soal
1. Modifikasi source code server TCP dan UDP sehingga ketika client mengirimkan
NIM kalian, server akan membalas dengan dengan nama kalian dan jika client
mengirimkan selain NIM kalian, server akan membalas dengan "Maaf anda tidak
dikenal" sebanyak 1 kali.
2. Tulislah source code dari masing-masing program dengan menggunakan protokol
TCP dan UDP beserta penjelasan per baris.
3. Screenshot saat server sedang berjalan dan client sudah menerima kedua balasan dari
server (balasan nama dan "Maaf anda tidak dikenal").
B. Source Code
1. TCP Socket
Bab2server-tcp-tugas.py
1
2
3
4
5
6
7
8
9
1
0
1
1
1
2
1
3
1
4
1

from socket import *


serverPort = 12000
serverSocket = socket(AF_INET,SOCK_STREAM)
serverSocket.bind(("",serverPort))
serverSocket.listen(1)
print"Server Ready"
while 1:
connectionSocket, addr = serverSocket.accept()
sentence = connectionSocket.recv(1024)
if(sentence=="145150201111058"):
capitalizedSentence="Rizal Darmawansyah \n"
else:
capitalizedSentence="Maaf Anda Tidak Dikenal"
connectionSocket.send(capitalizedSentence)
connectionSocket.close()

LABORATORIUM JARINGAN KOMPUTER


PROGRAM TEKNOLOGI INFORMASI DAN ILMU KOMPUTER
UNIVERSITAS BRAWIJAYA
5

Bab2klien-tcp-tugas.py
1
2
3
4
5
6
7
8
9
1
0

from socket import *


serverName = "localhost"
serverPort = 12000
clientSocket = socket(AF_INET, SOCK_STREAM)
clientSocket.connect((serverName,serverPort))
sentence = raw_input("Masukkan NIM anda:")
clientSocket.send(sentence)
modifiedSentence = clientSocket.recv(1024)
print "From Server: \n", modifiedSentence
clientSocket.close()

2. UDP Socket
Bab2server-udp-tugas.py
1
2
3
4
5
6
7
8
9
1
0
1
1
1
2

from socket import *


serverPort = 12000
serverSocket = socket(AF_INET, SOCK_DGRAM)
serverSocket.bind(("", serverPort))
print "The server is ready to receive"
while 1:
message, clientAddress = serverSocket.recvfrom(2048)
if(message=="145150201111058"):
modifiedMessage="Rizal Darmawansyah"
else:
modifiedMessage="Maaf Anda Tidak Dikenal"
serverSocket.sendto(modifiedMessage, clientAddress)

Bab2klien-udp-tugas.py
1
2
3
4
5
6
7
8
9

from socket import *


serverName = "localhost"
serverPort = 12000
clientSocket = socket(AF_INET, SOCK_DGRAM)
message = raw_input("Masukkan NIM anda:")
clientSocket.sendto(message,(serverName, serverPort))
modifiedMessage, serverAddress = clientSocket.recvfrom(2048)
print modifiedMessage
clientSocket.close()

C. Pembahasan
1. TCP Socket
bab2server-tcp-tugas.py
1 Mengimpor library socket pada python
2 Inisialisasi port untuk server degnan alamat 12000
3 Menyimpan nilai kembalian dari socket dengan isi parameter ip digunakan dan
protokol yang digunakan
4 Melakukan proses binding/pengikatan dengan parameter ip server dan nomer

LABORATORIUM JARINGAN KOMPUTER


PROGRAM TEKNOLOGI INFORMASI DAN ILMU KOMPUTER
UNIVERSITAS BRAWIJAYA
dari serverPort (welcoming socket)
5 Proses server dalam menunggu request dari client
6 Menampilkan output Server Ready
7 Melakukan perulangan selama nilai dari serverSocket adalah 1
8 Untuk menerima request koneksi yang datang yang disimpan pada
connectionSocket dan alamat klien yang di simpan pada addr
9 Menyimpan data yang dikirim oleh client dengan batas maksimal 1024 byte
1 Persyaratan if jika nilai dari sentence adalah 145150201111058
0 Inisialisasi variable capitalizedSentence dengan nilai Rizal Darmawansyah
11 Selain itu
1 Inisialisasi variable capitalizedSentence dengan nilai NIM tidak dikenal
2 Mengirim data yang telah diproses oleh server kepada client
1 Menutup socket yang terkoneksi dengan client
3
1
4
1
5

1
2
3
4
5
6
7
8
9
1
0

bab2klien-tcp-tugas.py
Mengimpor library socket pada python
Inisialisasi nama server yang digunakan dengan nama localhost
Inisialisasi port untuk server dengan alamat 12000
menyimpan nilai kembalian dari socket dengan isi parameter ip yang ingin
digunakan dan protokol yang digunakan
Melakukan koneksi kepada server dengan parameter nama sever dan port dari
server
Mempersilahkan user untuk memasukkan pesan/data yang ingin dikirim kepada
server dan disimpan pada sentence
Mengirim inputan data yang dimasukkan oleh user
Menyimpan data yang telah dikirim oleh server dengan batas maksimum 1024
byte data yang masuk
Menampilkan data balasan dari server
Menutup socket yang sedang terhubung dengan server

2. UDP Socket
bab2server-tcp-tugas.py
1 Mengimpor library socket pada python
2 Inisialisasi port untuk server degnan alamat 12000
3 Menyimpan nilai kembalian dari socket dengan isi parameter ip dan dgram
yang digunakan
4 Melakukan proses binding/pengikatan dengan parameter ip server dan nomer
dari serverPort (welcoming socket)
5 Menampilkan output The server is ready to receive
6 Melakukan perulangan selama nilai sama dengan 1

LABORATORIUM JARINGAN KOMPUTER


PROGRAM TEKNOLOGI INFORMASI DAN ILMU KOMPUTER
UNIVERSITAS BRAWIJAYA
7

Menyimpan data yang dikirim oleh client pada message dengan batas maksimal
2048 byte
8 Persyaratan jika nilai dari message adalah 145150201111058
9 Inisialisasi variabel modifiedMessage dengan Rizal Darmawansyah
1 Selain itu
0 Inisialisasi variabel modifiedMessage dengan Maaf Anda Tidak Dikenal
11 Mengirim data yang telah diproses oleh server kepada client dengan parameter
1 isi pesan dan alamat dari client
2

1
2
3
4
5
6
7
8
9

bab2klien-tcp-tugas.py
Mengimpor library socket pada python
Inisialisasi nama server yang digunakan dengan nama localhost
Inisialisasi port untuk server dengan alamat 12000
Menyimpan nilai kembalian dari socket dengan isi parameter ip dan datagram
yang digunakan
Mempersilahkan user untuk memasukkan pesan/data yang ingin dikirim kepada
server dan disimpan pada message
Mengirim inputan data yang dimasukkan oleh user dengan parameter message,
nama server dan port dari server
Menyimpan data yang telah dikirim oleh server dengan batas maksimum 2048
byte dan disimpan pada modifiedMessage
Menampilkan data balasan dari server
Menutup socket yang sedang terhubung dengan server

C. Screenshot
1. TCP Socket

2. UDP Socket

LABORATORIUM JARINGAN KOMPUTER


PROGRAM TEKNOLOGI INFORMASI DAN ILMU KOMPUTER
UNIVERSITAS BRAWIJAYA

Nama
NIM
Kelas
Bab
Jenis Tugas
Asisten

: Rizal Darmawansyah
: 145150201111058
: Informatika B
: II Dasar Pemrograman Jaringan
: Latihan Praktikum / Tugas Praktikum / Kesimpulan
: Imam Syafii Al Ghozaly

Pemrograman socket merupakan sebuah pemrograman yang digunakan untuk


melakukan transfer data melalu satu mesin menuju mesin yang lain dengan bantuan socket.
Socket sendiri adalah sebuah mekanisme komuniakasi antar mesin dalam bertukar data
berbasis protocol internet. Dengan menggunakan pemrograman socket, developer dapat
melakukan pertukaran data antar aplikasi dengan menggunakan internet dan dapat dilakukan
secara bebas tanpa ada batasan.
Dalam pemrograman soket terdapat 2 macam yaitu TCP dan UDP. Keduanya
memiliki fungsi yang yaitu sebagai jalan penghubung antara server dan client. Yang
membedakan dari keduanya adalah cara kerjanya. Pada TCP client dan server harus
terhubung dengan syarat server siap untuk menerima request connection dari client. Dalam
proses di TCP terdapat proses tree way handshaking dimana handshake yang pertama adalah
ketika server dan client mencoba untuku saling terhubung. Kemudian server menunggu

LABORATORIUM JARINGAN KOMPUTER


PROGRAM TEKNOLOGI INFORMASI DAN ILMU KOMPUTER
UNIVERSITAS BRAWIJAYA
transfer data dari client. Ketika client mengirimkan data kepada server, proses tersebut
merupakan handshake yang kedua. Setelah itu server membaca data yang dikirim oleh client
yang kemudian di proses dan server membalas pesan tersebut. Proses tersebut adalah
handshake yang ketiga. Setelah itu pesan diterima oleh client dan keduanya metutup socket
yang tsedang terhubung.
Berbeda dengan TCP, proses pada UDP tidak memerlukan server dan client yang
saling terhubung. Client dapat mengirimkan pesan walaupun server dalam keadaan mati.
Ketika server hidup, server akan membalas pesan terbaru yang dikirim oleh client sehingga
pesan yang lama akan hilang. UDP tidak terlalu mementingkan keutuhan data yang dikirim
karena lebih mengejar real-time dan ketepatan waktu.
Socket merupakan mekanisme komunikasi yang memungkinkan terjadinya pertukaran
data antar program atau proses baik pada satu mesin atau antar mesin. Fasilitas socket
tersedia pada sistem operasi yang berkomunikasi dengan protocol TCP/IP. Dalam protokol
jaringan TCP/IP, sebuah port adalah mekanisme yang mengizinkan sebuah komputer untuk
mendukung beberapa sesi koneksi dengan komputer lainnya dan program di dalam jaringan.
Port dapat mengidentifikasikan aplikasi dan layanan yang menggunakan koneksi di dalam
jaringan TCP/IP. Sehingga, port juga mengidentifikasikan sebuah proses tertentu di mana
sebuah server dapat memberikan sebuah layanan kepada klien atau bagaimana sebuah klien
dapat mengakses sebuah layanan yang ada dalam server. Port dibagi menjadi 3 bagian yaitu:
1. Well-Known Port
Port yang berkisar antara 0 hingga 1023. Port number yang termasuk ke dalam wellknown port, selalu merepresentasikan layanan jaringan yang sama, dan ditetapkan oleh
Internet Assigned Number Authority (IANA).
2. Registered Port
Port-port yang digunakan oleh vendor-vendor komputer atau jaringan yang berbeda
untuk mendukung aplikasi dan sistem operasi yang mereka buat. Registered port juga
diketahui dan didaftarkan oleh IANA tapi tidak dialokasikan secara permanen, sehingga
vendor lainnya dapat menggunakan port number yang sama
3. Dynamic/Private Port
port-port yang ditetapkan oleh sistem operasi atau aplikasi yang digunakan untuk
melayani request dari pengguna sesuai dengan kebutuhan. Dynamically Assigned Port
berkisar dari 1024 hingga 65536 dan dapat digunakan atau dilepaskan sesuai kebutuhan.

Anda mungkin juga menyukai