0% menganggap dokumen ini bermanfaat (0 suara)
236 tayangan15 halaman

Socket

Pengertian socket adalah titik komunikasi antar komputer pada jaringan yang memungkinkan pertukaran data. Terdapat dua jenis socket utama yaitu TCP socket yang menggunakan koneksi terhubung dan UDP socket yang tidak terhubung. Pemrograman socket digunakan untuk membangun aplikasi jaringan berbasis client-server dengan menggunakan protokol TCP atau UDP.
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
0% menganggap dokumen ini bermanfaat (0 suara)
236 tayangan15 halaman

Socket

Pengertian socket adalah titik komunikasi antar komputer pada jaringan yang memungkinkan pertukaran data. Terdapat dua jenis socket utama yaitu TCP socket yang menggunakan koneksi terhubung dan UDP socket yang tidak terhubung. Pemrograman socket digunakan untuk membangun aplikasi jaringan berbasis client-server dengan menggunakan protokol TCP atau UDP.
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/ 15

Pengertian Socket

Socket adalah sebuah Class yang disediakan oleh beberapa


bahasa pemrograman. Dengan socket, sebuah aplikasi di suatu komputer
dapat Tentu saja aplikasi di komputer yang dihubungi menerima koneksi juga
menggunakan socket. Dengan kata lain socket adalah suatu Class
yang digunakan oleh aplikasi untuk saling berhubungan. berikut
ini menunjukkan bagaimana suatu aplikasi berhubungan dengan aplikasi
lainnya.

Paradigma pada aplikasi jaringan berlaku model client-server. Aplikasi yang


menginisialisasi koneksi, disebut aplikasi client. Sedangkan aplikasi
yang menerima inisialisasi disebut sebagai aplikasi server. Oleh karena itu,
jika kita membangun suatu aplikasi jaringan yang lengkap, maka kita harus
membuat aplikasi client maupun aplikasi server.
Lebih lanjut mengenai socket, ada dua jenis socket yang bisa digunakan
untuk membangun aplikasi, yakni TCP Socket dan UDP Socket. Perbedaan
utamanya adalah, di model TCP digunakan konsep connection oriented dan
reliable data transfer, sedangkan di model UDP digunakan konsep
connectionless oriented dan unreliable data transfer. Sebuah aplikasi dapat
menggunakan salah satu dari jenis Socket tersebut disesuaikan
dengan peruntukan aplikasi tersebut. Aplikasi berbasis TCP biasanya adalah
aplikasi yang membutuhkan ketepatan data hingga 100% tapi tidak
memperdulikan
lama pengiriman, sedangkan aplikasi berbasis UDP biasanya adalah
aplikasi yang tidak terlalu mempedulikan ketepatan data tapi sangat peduli
dengan delay pengiriman. Contoh aplikasi TCP adalah web browser,
sedangkan UDP adalah Video Converence.

Untuk membangun aplikasi hal pertama yang perlu dilakukan


adalah menganalisa jenis aplikasi kita, kebutuhan bandwidth,
kebutuhan ketersampaian data dan sensitifitas terhadap delay. Berdasarkan
hal ini kita bisa menentukan protokol apa yang kita gunakan, entah TCP atau
UDP.

Pemrograman Socket Menggunakan TCP

Cara kerja aplikasi yang menggunakan TCP dapat digambarkan oleh di


bawah ini :

Detail dari proses tersebut adalah :


1. Untuk bisa melakukan koneksi client server, program server harus
berjalan terlebih dahulu
2. Di sisi server disediakan sebuah socket, yang disebut welcoming
socket yang fungsinya untuk mendeteksi adanya permintaan
koneksi dari sisi client.
3. Di sisi client terdapat client socket. Jika ingin menghubungi server,
maka melalui client socket-nya, client membuat inisialisai koneksi
ke welcoming socket milik server, dengan mode three-way
handshake.
4. Setelah welcoming socket menerima inisialisasi koneksi dari client
socket, aplikasi server akan membuat connection socket di sisi
server. Dengan connection socket ini, client socket dan connection
socket berinteraksi satu sama lain untuk mengirim dan menerima
data.
5. Client membaca data yang dikirim oleh server dari client socketnya. Kemudian menampilkan data tersebut di monitor.

Pemrograman Socket Menggunakan UDP

Contoh aplikasi untuk UDP socket berikut ini menggunakan kasus yang sama
dengan kasus yang digunakan oleh TCP socket, yaitu :
1. Client membaca inputan dari keyboard, kemudian mengirimkan
hasilnya ke server melalui socket-nya.
2. Server membaca data yang dikirim oleh client di connection socket
3. Server mengubah data menjadi huruf besar
4. Server mengirimkan data yang telah diubah menuju client melalui
socket-nya.
5. Client membaca data yang dikirim oleh server dari client socketnya. Kemudian menampilkan data tersebut di monitor
Perbedaan utama antara aplikasi berbasis TCP dengan aplikasi berbasis
UDP adalah di aplikasi UDP tidak ada welcoming socket. Pada UDP tidak
ada socket khusus untuk permintaan inisialisai koneksi. Setiap data yang
datang ditangani lansung oleh server socket.

Pengertian socket adalah interface pada jaringan yang menjadi titik


komunikasi antarmesin pada Internet Protocol, dan tentunya tanpa
komunikasi ini, tidak akan ada pertukaran data dan informasi jaringan.
Socket terdiri dari elemen-elemen utama sebagai berikut:

Protokol.
Local IP.
Local Port.
Remote IP.
Remote Port.

Komunikasi socket jaringan memang tidak mengenal lelah, pertukaran data


terjadi terus-menerus dan memegang peranan vital.
Bayangkan sebuah server game online yang berkomunikasi tanpa henti,
dimainkan oleh entah berapa banyak client yang tersebar. Ini merupakan
salah satu contoh aplikasi dari sekian banyak aplikasi yang menggunakan
socket jaringan untuk saling berkomunikasi dan bertukar data.
Jika oleh karena suatu hal komunikasi berhenti karena maintenance,
kerusakan, ataupun sebab lainnya, maka dapat dipastikan para
penggunanya akan kecewa. Maka dari itu, komunikasi jaringan selalu
diusahakan tidak terhenti. Demikianlah tugas berat yang harus dilakukan
socket jaringan

PEMROGRAMAN SOCKET
A. Sejarah Socket
Socket adalah mekanisme komunikasi yang memungkinkan terjadinya
pertukaran data antar program atau proses baik dalam satu mesin
maupun antar mesin. Gaya pemrograman socket sendiri berawal dari
sistem Unix BSD yang terkenal dengan kepeloporannya pada bidang
penanganan jaringan, sehingga sering disebut BSD Socket. Socket
pertama kali diperkenalkan di sistem Unix BSD versi 4.2 tahun 1983
sebagai kelanjutan dari implementasi protokol TCP/IP yang muncul
pertama kali pada sistem Unix BSD 4.1 pada akhir 1981. Hampir setiap
variant Unix dan Linux mengadopsi BSD Socket. Pada lingkungan Unix,
socket memberikan keleluasaan pemrograman gaya Unix yang
terkenal dengan ideologinya, Semua di Unix/Linux adalah file.
Komunikasi antar program dapat berlangsung lewat penggunaan
deskriptor file standar Unix dengan bantuan socket.
Keunggulan dari penggunaan socket adalah anda dapat melakukan
komunikasi antar proses/program melalui jaringan berbasis yang TCP/IP
tentunya, bahkan dengan program lain yang berjalan pada platform
non-unix seperti Microsoft Windows, sepanjang program tersebut
berbicara dalam protokol transfer yang sama. Fasilitas-fasilitas yang
disediakan oleh mesin unix seperti rlogin, ssh, ftp, dan lain-lain
menggunakan socket sebagai sarana komunikasi mereka. Socket
dibentuk dan digunakan dengan cara yang berbeda. Komunikasi socket
terutama diciptakan untuk tujuan menjembatani komunikasi antara
dua buah program yang dijalankan pada mesin yang berbeda. Jangan
khawatir, ini tentu saja berarti dua program pada mesin yang sama
dapat juga saling berkomunikasi. Kelebihan lain dari komunikasi socket
adalah mampu menangani banyak klien sekaligus (multiple clients).
B. Jenis Socket
Ada dua golongan socket di Unix yang paling umum dipakai yaitu:
1. Socket Lokal atau AF_UNIX
Socket Lokal adalah socket yang melakukan komunikasi dengan
perantaraan sebuah file yang biasanya diletakkan pada direktori
/tmp atau /usr/tmp ataupun /var/tmp. Socket semacam ini
digunakan umumnya terbatas untuk komunikasi antar aplikasi
dalam satu mesin.
2. Socket Networking atau AF_INET
Socket Networking ditujukan untuk komunikasi antar aplikasi antar
mesin dalam lingkungan jaringan TCP/IP. Identifikasi socket
dilakukan dengan sebuahservice identifier yaitu berupa nomor port
TCP/IP yang dapat di sambung oleh client.

Socket Networking memiliki beberapa jenis, yang paling umum digunakan


yaitu:
a. Socket Stream atau SOCK_STREAM
Socket Stream adalah socket komunikasi full-duplex berbasis aliran
(stream) data. Pada model komunikasi Socket Stream, koneksi dua
aplikasi harus dalam kondisi tersambung dengan benar untuk dapat
bertukar data. Ini dapat dianalogikan seperti komunikasi telepon. Jika
sambungan telepon di salah satu titik putus, maka komunikasi tidak
dapat terjadi. Koneksi model seperti ini akan menjamin data dapat
dipertukarkan dengan baik, namun memiliki kelemahan dalam hal
penggunaan jalur data yang relatif besar dan tidak boleh terputus.
b. Socket Datagram atau SOCK_DGRAM
Socket Datagram berkomunikasi dengan cara yang berbeda. Socket ini
tidak membutuhkan koneksi yang tersambung dengan benar untuk
mengirimkan dan menerima data. Model koneksi semacam ini tidak
dapat menjamin data dapat dipertukarkan dengan baik, namun
memiliki keunggulan dalam hal penggunaan jalur data yang minimal.
Socket Datagram dapat dianalogikan dengan komunikasi yang terjadi
pada kelas, misalnya pada saat guru melakukan broadcasting materi
pelajaran untuk diterima oleh setiap murid. Tidak ada yang dapat
menjamin materi pelajaran dapat diterima oleh semua murid dengan
baik, kecuali diterapkan metoda rechecking. Rechecking ini dapat
dilakukan baik oleh guru maupun murid. Guru bertanya untuk
memastikan jawaban dari murid benar, atau murid bertanya untuk
memastikan kebenaran materi yang diterimanya. Socket Datagram
pun menggunakan metoda ini untuk menjamin pengiriman data dapat
dilakukan dengan baik.

C. Sekilas Tentang Socket, TCP Dan UDP


1. Mengenal Socket
Pengertian socket adalah interface pada jaringan yang menjadi titik
komunikasi antarmesin pada Internet Protocol, dan tentunya tanpa
komunikasi ini, tidak akan ada pertukaran data dan informasi
jaringan.
Socket terdiri dari elemen-elemen utama sebagai berikut:
1. Protokol.
2. Local IP.
3. Local Port.

4. Remote IP.
5. Remote Port.
Dalam komunikasi antara dua pihak, tentunya harus digunakan
kesepakatan aturan dan format yang sama agar komunikasi dapat
dimengerti. Seperti halnya dua orang yang menggunakan bahasa
yang sama, maka bahasa di sini berfungsi sebagai protokol. Protokol
yang digunakan dalam socket dapat menggunakan TCP ataupun
UDP.
Contoh komunikasi sederhana adalah komunikasi antara komputer
A dan komputer B. Baik komputer A maupun komputer B harus
memiliki identitas unik, yang direpresentasikan oleh IP masingmasing. Komunikasi yang terjadi melalui port, sehingga baik
komputer A maupun komputer B harus memiliki port yang dapat
diakses satu sama lain.
2. TCP dan UDP
Pemrograman socket adalah cara untuk menggunakan
komponen/API (Application Programming Interface) socket untuk
membuat sebuah aplikasi.
Aplikasi socket umumnya terdiri dari dua kategori berdasarkan
pengiriman datanya, yaitu:
a. Datagram socket (menggunakan UDP).
b. Stream socket (menggunakan TCP).
Terdapat perlakuan yang berbeda antara UDP dan TCP, walaupun
sama-sama berfungsi sebagai protokol pertukaran data.
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.
Tidak demikian halnya dengan stream socket yang menggunakan TCP.
Jenis ini 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.

D. Port dan Winsock


1. Port
Salah satu elemen penting yang digunakan dalam aplikasi socket
adalah port. Port merupakan sebuah koneksi data virtual yang
digunakan aplikasi untuk bertukar data secara langsung.
Terdapat banyak port di dalam sebuah sistem komputer dengan
fungsinya masing-masing. Sebagai contoh, dalam mengirim e-mail
digunakan service SMTP yang umumnya menggunakan port 25.
Sementara service POP3 untuk menerima e-mail menggunakan port
110, port 80 digunakan untuk HTTP, port 443 digunakan untuk
HTTPS, dan seterusnya.
Nomor-nomor port dikategorikan dalam tiga jenis sebagai berikut:
a. Well-known ports.

Merupakan port yang telah digunakan secara internal oleh


sistem Windows, misalnya port untuk koneksi Internet, service
FTP, dan seterusnya. Port yang telah digunakan ini adalah port 0
sampai dengan port 1023.
b. Registered ports.
Port ini dapat digunakan dalam aplikasi Anda, range-nya adalah
port 1024 hingga port 49151, cukup banyak port yang tersedia
yang bebas Anda pilih sehingga Anda tidak perlu kuatir
kekurangan port untuk aplikasi Anda.

c. Dynamic/Private ports.
Dari port 49152 sampai dengan port 65535.
2. Winsock
Untuk pemrograman aplikasi socket berbasis Windows, maka
komponen API yang sering digunakan adalah Winsock (Win-dows
Socket API) yang mendukung interface standar TCP/IP, yang
merupakan protokol jaringan paling popular saat ini (contoh
protokol jaringan yang lain adalah NetBIOS, IPX dari Novell,
AppleTalk dari Apple, dan sebagainya).
Pengertian TCP/IP (TCP over IP) mungkin dapat menjadi sedikit
rancu jika diartikan TCP/IP hanya mengizinkan pengiriman TCP (dan
tidak UDP), padahal seperti yang telah kita bahas, pengiriman
socket dapat melalui TCP maupun UDP.
Pengertian TCP/IP di sini sebenarnya digunakan untuk menunjukkan
teknologi jaringan/Internet, termasuk di dalamnya adalah UDP. Jika
Anda menggunakan UDP, dapat juga disebut sebagai UDP/IP (UDP
over IP), tetapi umumnya istilah ini jarang digunakan dan istilah
TCP/IP telah mencakup, baik TCP maupun UDP.
Pada bahasa pemrograman visual seperti Visual Basic/Delphi, Anda
dapat menggunakan control Winsock yang telah disediakan untuk
mengembangkan aplikasi socket.
Walaupun kita akan mencontohkan aplikasi socket dalam
environment Windows, Anda tidak perlu khawatir jika aplikasi socket
yang menggunakan Winsock tidak dapat berkomunikasi dengan
aplikasi socket berbasis Unix/Linux, karena komunikasi tetap dapat
terjadi selama aplikasi tersebut menggunakan protokol jaringan
yang sama.
Bagi Anda yang terpaksa hanya menggunakan satu komputer,
dapat memanfaatkan alamat localhost atau 127.0.0.1 yang
mengizinkan dua aplikasi berjalan pada satu mesin komputer dan
berkomunikasi satu sama lain.
3. Tools Tambahan
Aplikasi socket merupakan aplikasi jaringan dan jika Anda
mendalami seluk-beluk jaringan, tentu akan familiar dengan tools
tambahan yang umumnya digunakan dalam jaringan. Tools ini
kemungkinan dapat berguna untuk diimplementasikan ke dalam
aplikasi socket Anda.

Tools yang dimaksud, antara lain:


a. Ping.
Ping digunakan untuk memeriksa keberadaan remote host
dengan jalan mengirimkan sinyal kepada remote
host. Keberadaan remote host dapat ditentukan dengan melihat
response yang diterima. Ping juga dapat digunakan untuk
mengukur kecepatan transfer data. Salah satu contoh
penggunaan ping dalam aplikasi socket adalah memeriksa server
yang tersedia sebelum mengirimkan data (dengan asumsi
tersedia lebih dari 1 server).
b. Telnet.
Telnet merupakan singkatan dari TELecommunication NET-work.
Umumnya istilah telnet saat ini merujuk pada aplikasi telnet
client yang tersedia pada kebanyakan operating sys-tem. Telnet
mengizinkan Anda mengakses remote host dan menggunakan
service-nya. Sebagai contoh, Anda dapat mengirimkan e-mail
melalui telnet yang menggunakan port 25 (service SMTP) pada
remote host tertentu. Jika Anda telah masuk ke dalam
environment telnet, command line yang digunakan adalah
command berbasis Unix/Linux. Aplikasi socket dapat dimodifikasi
bekerja seperti telnet dengan mengakses remote host dan port
tertentu. Di dalam aplikasi socket, Anda dapat mengambil dan
mengolah response yang didapat dari remote host.
c. Netstat.
Netstat menampilkan status jaringan yang terjadi. Dapat
menampilkan port yang sedang terkoneksi, atau dalam kondisi
menunggu/listening, juga menampilkan protokol yang digunakan,
apakah TCP atau UDP. Dengan Netstat, Anda dapat mengetahui
koneksi jaringan yang terjadi, hal ini dapat dimanfaatkan di
dalam aplikasi socket, misalnya untuk melihat port yang sedang
aktif dan digunakan.
Ada kalanya Anda perlu menjalankan tools jaringan yang telah
disebutkan di atas melalui aplikasi Anda. Untuk keperluan ini,
Anda dapat menggunakan shell command yang disediakan oleh
bahasa pemrograman yang Anda gunakan.
Misalnya pada Visual Basic, dapat digunakan perintah Shell
diikuti parameter yang diperlukan.

Jika ingin mengolah response yang dihasilkan oleh tools tertentu,


Anda dapat menuliskan hasilnya pada sebuah file teks,
contohnya jika Anda menjalankan perintah netstat an > hasil.txt
pada Command Prompt Windows, maka informasi mengenai
koneksi yang aktif akan tersimpan dalam file hasil.txt, di mana
Anda dapat mengolah file hasil.txt tersebut lebih lanjut di dalam
aplikasi Anda.

E. Socket Programming
Socket adalah sebuah cara untuk berkomunikasi dengan program atau
node lain menggunakan file deskriptor. Di UNIX (dimana socket
diciptakan) kita sering mendengar slogan: everything is a file, jadi
untuk berkomunikasi dengan program atau node lain semudah kita
membaca dan menulis file deskriptor. Antarmuka socket dan file
adalah mirip, jika pada file kita membukanya dengan open()
sedangkan pada socket kita manggunakan socket(). Pada file
deskriptor yang menjadi tujuan adalah sebuah file, sedangkan pada
socket adalah komputer atau node lain. Intinya ketika kita telah
terhubung dengan socket(), maka antarmukanya sama saja dengan
sebuah file. Sebuah abstraksi perangkat lunak yang digunakan sebagai
suatu terminal dari suatu hubungan antara dua mesin atau proses
yang saling berinterkoneksi
Penggunaan socket programming memungkinkan adanya komunikasi
antara client dan server. Salah satu contoh sederhana penggunaan
socket programming adalah pembuatan program untuk chatting.
Program tersebut sebenarnya merupakan bentuk aplikasi berupa
komunikasi antara client dan server. Ketika seorang user (client)
melakukan koneksi ke chat server, program akan membuka koneksi ke
port yang diberikan, sehingga server perlu membuka socket pada port
tersebut dan mendengarkan koneksi yang datang. Socket sendiri
merupakan gabungan antara host-adress dan port adress. Dalam hal
ini socket digunakan untuk komunikasi antara client dan server.
Socket merupakan fasilitas IPC (Inter Proses Communication) untuk
aplikasi jaringan. Agar suatu socket dapat berkomunikasi dengan
socket lainnya, maka socket butuh diberi suatu alamat unik sebagai
identifikasi. Alamat socket terdiri atas Alamat IP dan Nomer Port.
Contoh alamat socket adalah 192.168.29.30: 3000, dimana nomer
3000 adalah nomer portnya. Alamat IP dapat menggunakan alamat
Jaringan Lokal (LAN) maupun alamat internet. Jadi socket dapat
digunakan untuk IPC pada LAN maupun Internet.

F. Model Aplikasi Client Server

Untuk membuat aplikasi socket yang sederhana diperlukan dua


aplikasi. Yaitu, pertama adalah aplikasi server yang akan menerima
data, sedangkan aplikasi kedua adalah aplikasi client yang
mengirimkan data pada server. Baik aplikasi server dan aplikasi client
mendefinisikan port yang sama sebagai jalur komunikasi.
Obyek socket pada sisi client dan server berbeda sedikit. Pada sisi
aplikasi server, suatu socket server dibentuk dan melakukan
operasilisten/menunggu. Operasi ini pada intinya menunggu
permintaan koneksi dari sisi client. Sedangkan pada sisi client,
dibentuk suatu socket biasa.
Pada saat socket client, informasi alamat socket server dilewatkan
sebagai argumen dan socket client akan otomatis mencoba meminta
koneksi ke socket server. Pada saat permintaan koneksi client sampai
pada server, maka server akan membuat suatu socket biasa. Socket ini
yang nantinya akan berkomunikasi dengan socket pada sisi client.
Setelah itu socket server dapat kembali melakukan listen untuk
menunggu permintaan koneksi dari client lainnya. Langkah ini
umumnya hanya dilakukan jika aplikasi server mengimplementasikan
multithreading.
Setelah tercipta koneksi antara client dan server, maka keduanya
dapat saling bertukar pesan. Salah satu atau keduanya kemudian
dapat mengakhiri komunikasi dengan menutup socket.
Untuk protokol UDP, perbedaanya adalah socket di sisi server sama
dengan socket di sisi client, dan tidak ada operasi listen pada sisi
server. Kemudian saat paket data dikirimkan, alamat socket penerima
harus disertakan sebagai argumen.
Program Aplikasi Client Server bisa dibuat dengan menggunakan Visual
Basic 6, NET, Delphi, dan lain sebagainya. Sebagai contoh

yaitu Aplikasi Client Server sederhana dengan Delphi dimana tugas


aplikasi server cukup sederhana, yaitu hanya siap sedia menerima
data yang masuk pada sebuah port.
a. Dasar Pemrograman Socket Menggunakan Delphi
Apa yang harus dipersiapkan oleh seorang programmer dalam
membuat program mengunakan socket ini? Yaitu:
1. Komponen Pengirim dan Penerima
Pertama kali anda harus tahu terlebih dahulu mekanisme dari
socket ini. Sebagai contoh logikanya, jika seseorang mengirim suatu
barang pasti ada penerimanya. Begitu juga di socket, jika
mengirimkan data harus ada yang menerima. Kalau anda sudah
mengerti apa yang sudah dijelaskan tadi, maka yang mengirim
adalah komponen TClientSocket dan yang menerima
adalahTServerSocket.
2. Tujuan Pengiriman
Selanjutnya jika seseorang akan mengirim suatu surat maka harus
ada alamat tujuan pengiriman. Jika di socket ini disebut sebagai
host atau IP Address dan Port. Jadi pada saat TClientSocket akan
mengirim pesan harus diisi terlebih dahulu IP Address dan port tadi.
3. Status Penerimaan
Setelah TClientSocket mengirim sinyal untuk terhubung
ke TServerSocketmaka perlu adanya status bahwa keduanya telah
terhubung. Atau bahkan jika diantara keduanya sudah tidak
terhubung lagi. Ini sangat penting mengingat pada saat akan
mengirim data, harus mengetahui terlebih dahulu status
keterhubungan ini.
b. Pengolahan Data
Komunikasi data antara server dan client di atas merupakan bentuk
komunikasi satu arah sederhana. Data yang dikirimkan dari client pun
merupakan data mentah yang tidak memerlukan pengolahan data
lebih lanjut.
Anda dapat membuat sendiri function dan rutin untuk mengolah data
yang dikirim dan diterima sesuai dengan kebutuhan aplikasi, karena
data yang dikirimkan antarmesin bisa jadi sangat bervariasi. Misalnya
saja aplikasi server/client Anda memerlukan pertukaran data identitas
mesin, tanggal, jam, header pesan, isi pesan, dan lain sebagainya.
Anda dapat mengirimkannya dalam format tertentu, misalnya bentuk

string dengan karakter pemisah untuk membedakan masing-masing


field.
Dalam komunikasi data di dalam jaringan, Anda perlu
mempertimbangkan besarnya data yang lalu-lalang pada jaringan, baik
dengan menggunakan TCP maupun UDP. Keduanya harus dipersiapkan
untuk mampu menangani data yang besar jika memang pengguna
aplikasi socket Anda sangat luas. Pastinya tidak terdapat masalah yang
berarti jika Anda mencobanya dengan dua atau beberapa komputer
dalam sebuah jaringan lokal, tetapi coba bayangkan seberapa besar
total data yang harus dikirim dan diterima pada sebuah aplikasi,
misalnya game online. Pada contoh game online, sebuah server harus
dipersiapkan untuk mampu melayani sedemikian banyak client, dan
jaringan yang digunakan bukan lagi jaringan lokal, tetapi sudah
merupakan jaringan Internet, di mana siapapun dapat menggunakan
aplikasi Anda selama ia memiliki koneksi Internet.
Mungkin Anda bertanya, jika data yang keluar-masuk memerlukan
pengolahan lebih lanjut, mengapa tidak digunakan database, sehingga
Anda tidak perlu pusing membuat rutin atau modul untuk mengolah
data yang dikirim/diterima melalui komunikasi socket? Pada umumnya,
aplikasi socket client/server memang menggunakan database pada sisi
server, tetapi jika aplikasi socket mengharuskan sisi client
menggunakan database tertentu, maka akan membatasi penggunaan
aplikasi itu sendiri.
Selain itu, kegunaan komunikasi socket adalah agar dapat berjalan
lintas platform. Tidak peduli operating system apa yang digunakan
pengguna aplikasi, komunikasi socket tetap berjalan selama digunakan
protokol yang sama. Sebenarnya jika Anda melihat software database
seperti SQL Server, intinya juga merupakan aplikasi socket, di mana
menggunakan port tertentu sebagai jalur komunikasi, tetapi software
tersebut telah dikemas menjadi produk database yang spesifik.

G. Trouble Shooting Jaringan


Kadang sebagai admin jaringan, kita kerap kali menemukan masalahmasalah, untuk itu diperlukan ilmu yang mempelajari tentang trouble
shooting jaringan. Di sini akan dijabarkan beberapa trouble shooting
dan penanganannya :
1. Antar komputer 1 dan lainnya tidak bisa berkomunikasi :
a. Cek apakah pembagian IP pada class yang sama
b. Cek apakah komputer dalam 1 workgroup yang sama

c. Restart Komputer
2. Komputer sudah diset dengan ip calss yang benar dan dalam 1
workgroup tetapi tidak dapat berkomunikasi
a. Cek apakah LAN card rusak, yaitu dengan menjalankan perintah
ping 127.0.0.1 atau ping localhost.
b. Cek Apakah Kabel LAN sudah benar pembuatannya, untuk
komputer yang melewati Hub tidak perlu crossing pada kabelnya,
tetapi untuk komputer yang tidak melewati Hub harus memakai
metode crossing 1-3, 2-6.

Anda mungkin juga menyukai