Tampilkan postingan dengan label protocol. Tampilkan semua postingan
Tampilkan postingan dengan label protocol. Tampilkan semua postingan

Minggu, 15 April 2012

Aplikasi UDP Chatting Text Sederhana (Visual C#)


Aplikasi chatting sudah mulai banyak dibuat semenjak teknologi internet mulai ada. Dahulu masih terdapat beberapa aplikasi chatting sederhana seperti MIRC dan sekarang kita sudah melihat banyak sekali aplikasi yang digunakan untuk media komunikasi berbasis teks ini dan semakin menarik baik dari segi tampilan maupun performa, salah satu contohnya yaitu yahoo messenger.
Pada postingan kali ini, akan coba dibuat sebuah aplikasi chatting berbasis teks sederhana yang menggunakan protocol UDP sebagai protocol pengiriman datanya. Aplikasi ini dibuat berbasis bahasa pemrograman C# menggunakan visual studio C# 2010.
Ada beberapa bagian dari program yang dianggap memiliki peranan utama pada aplikasi chatting ini yang akan dibahas secara singkat tentang fungsi dan kegunaan dan pengaruhnya terhadap aplikasi secara utuh. Bagian program tersebut adalah sebagai berikut :

using System.Net;
using System.Net.Sockets;
using System.Threading;

bagian program diatas merupakan bagian program yang memanggil library yang akan dipakai sebagai jalur untuk mengakses beberapa fungsi yang diperlukan seperti penggunaan thread, akses port dan socket dan masih banyak lagi.

delegate void AddMessage(string message);

pendeklarasian fungsi AddMessage yang bertipe delegate void, delegate disini digunakan karena adanya pengaksesan sebuah tool (richTextBox) pada 2 buah event yang berbeda.

int port = 11000;
const string broadcastAddress = "192.168.0.255";

bagian program diatas digunakan untuk mendeklarasikan dan mendefinisikan variabel “port” yang mana nantinya nilai variabel ini digunakan sebagai port yang akan digunakan aplikasi untuk mengirimkan dan menerima data. Selain variabel “port”, dideklarasikan serta didefinisikan juga variabel “broadcastAddress” yang mana nantinya variabel ini digunakan untuk mendefinisikan alamat IP tujuan, dari client aplikasi chatting teks ini. Karena nilai pada variabel tersebut adalah IP broadcast, maka nantinya pesan teks yang dikirim akan dikirimkan ke alamat broadcast sehingga setiap client yang terhubung pada satu jaringan akan menerima pesan yang sama. Nilai variabel port dan broadcastAddress ini bisa dirubah sesuai dengan keinginan, atau juga bisa menggunakan nilai inputan dari sebuah textbox pada aplikasi.

UdpClient receivingClient = new UdpClient(11000);
UdpClient sendingClient;
        
Bagian program diatas mendeklarasikan variabel receivingClient dan sendingClient. Pada saat pendeklarasian digunakan tipe UdpClient yang mana tipe ini merupakan hasil akses terhadap library yang telah dijelaskan sebelumnya. Dengan adanya pendeklarasian dengan menggunakan UdpClient ini, menjelaskan bahwa protocol yang digunakan saat pentrasferan data adalah protocol UDP.

Thread receivingThread;
Bagian program ini merupakan pendeklarasian terhadap thread yang akan dibuat dan yang akan digunakan nantinya.

Kamis, 15 Maret 2012

Jarkom dan Transport protocol


Jaringan komputer erat kaitannya dengan komunikasi/pertukaran data antar komputer. Secara prinsip, jaringan komputer terdiri dari node dan link. Dimana node adalah host atau komputer, sedangkan link adalah yang menghubungkan antara node yang satu dengan node yang lainnya sehingga bisa saling berkomunikasi/bertukar data.
Dalam komunikasi atau pertukaran data tersebut, kita akan menjumpai transport protocol yang mengatur pentransmisian data tersebut. Ada 2 jenis transport protocol, yaitu :

1.      TCP (Transmission Control Protocol)
       Karakteristik :
  •   Point to point
  •  Reliable dan stateful
  •  Pipeline, menerapkan flow control window sliding untuk mengontrol kemacetan dan aliran datanya
  •  Terdapat buffer pengirim dan penerima
  •  Full-duplex
  • Connection-oriented
  • Aliran data yang dikontrol

2.      UDP (User Datagram Protocol)
      Karakteristik :
  •  Tidak perlu adanya setup koneksi terlebih dahulu (hal ini dapat menyebabkan tambahan delay)
  •  Sederhana, artinya antara penerima dan pengirim tidak perlu menjaga session atau status koneksi
  • Ukuran header segment sederhana
  • Tidak perlu kontrol kemacetan koneksi, artinya UDP dapat mengirimkan per segment tanpa dipengaruhi oleh kesibukan jaringan.