Friday 15 June 2012

Socket data tcp dan udp

Mengenal Socket
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.

apa itu tcp dan udp, juga cara kerja tcp dan udp

Konsep dasar dan perbedaan antara Protocol TCP dan UDP




Konsep Dasar TCP
TCP ( Transmission Control Protocol ) merupakan protocol transport yang andal ( reliable ), hal ini dikarenakan protokol TCP mempunyai mekanisme yang memastikan packet dapat diterima oleh client. Pada saat TCP mengirimkan data ke penerima, TCP akan memberikan state acknowledgement. Apabila state acknowledgement tidak diterima, maka TCP akan secara otomatis mengirim ulang data dan menunggu dengan selang waktu tertentu namun apabila dalam selang waktu tertentu TCP gagal mengirimkan data, maka koneksi akan dihentikan.
TCP client dapat membangun koneksi yang disediakan oleh server, saling menukar data melalui koneksi yang dibangun dan kemudian menghentikan koneksi. Sebagai protokol jaringan yang andal, protokol ini bekerja berkelanjutan untuk menjamin pengiriman semua data, dan sesuai dengan urutan pengirimannya. Sehingga kita tahu bahwa client menerima tepat seperti yang kita kirim. Karena inilah aplikasi yang perlu mempertukarkan data dalam volume besar biasanya menggunakan TCP.

Sebagai catatan, TCP tidak menjamin data akan diterima oleh si penerima apabila koneksi tidak dimungkinkan terbangun ( misal: server sedang down, salah konfigurasi IP, kabel tidak dibuat dengan baik, salah melakukan netmasking dll ), sebaliknya TCP dapat menjamin pengiriman data ke si penerima apabila koneksi memang memungkinkan terbangun dan memberikan pesan kesalahan ( koneksi terputus atau tidak menerima acknowledgement ) kepada user apabila koneksi tidak memungkinkan dibangun.
TCP memiliki algoritma yang digunakan untuk memperkirakan round-trip time ( RTT ) yaitu waktu yang dibutuhkan pada saat pengiriman data antara client dan server. RTT yang dihasilkan bersifat dinamis, sehingga TCP dapat memperkirakan berapa lama harus menunggu acknowledgement pada koneksi yang dibangun. Sebagai contohnya, RTT yang didapat dari LAN biasanya hanya dalam besaran milisecond sementara untuk WAN, RTT bisa dalam besaran second. TCP selalu menghitung RTT dari koneksi yang dibangun secara terus – menerus, hal ini dikarenakan RTT banyak dipengaruhi oleh keadaan traffic jaringan yang selalu berubah – ubah setiap waktu.
TCP dapat mengurutkan setiap byte data yang dikirim. Sebagai contohnya, asumsikan suatu aplikasi mengirimkan 2048 bytes data ke TCP socket, yang menyebabkan TCP akan mengirim sebanyak 2 segment. Segment yang pertama mengirimkan data dengan urutan 1 – 1024 dan segment yang kedua akan mengirimkan data dengan urutan 1025 – 2048. Apabila segment yang diterima tidak sesuai dengan segment yang dikirim, maka TCP si penerima akan meminta pengiriman ulang 2 segment tersebut berdasarkan urutan yang benar sebelum dikirim ke level aplikasi si penerima. Apabila TCP menerima duplikasi data dari pengirim ( misal network memperkirakan ada segment data yang hilang, sehingga meminta pengiriman ulang, padahal segment data tersebut tidak benar – benar hilang dikarenakan network overload), maka TCP dapat mendeteksi duplikasi data tersebut dan membuang data yang tidak digunakan.
>> State – state TCP pada saat terjadi koneksi
TCP States

Pada saat suatu aplikasi socket melakukan koneksi, kita dapat melihat state – state yang dialami oleh aplikasi socket tersebut. State – state yang dilakukan oleh TCP pada saat melakukan koneksi yaitu :
1. LISTEN
2. SYN-SENT
3. SYN-RECEIVED
4. ESTABLISHED
5. FIN-WAIT-1
6. FIN-WAIT-2
7. CLOSE-WAIT
8. CLOSING
9. LAST-ACK
10. TIME-WAIT
11. CLOSED
LISTEN
menunggu connection request dari client. ( di set oleh TCP Server )
SYN-SENT
client telah mengirim paket SYN dan ACK ke TCP Server , kemudian client menunggu paket SYN dan ACK balasan dari Server.
SYN-RECEIVED
menunggu dari TCP Client untuk mengembalikan state acknowledgment setelah mengirim state acknowledgment ke TCP Client.
ESTABLISHED
Koneksi telah dibangun, client server siap untuk mengirim dan menerima data.
TIME-WAIT
merupakan waktu yang dibutuhkan untuk memastikan TCP menerima state acknowledgment pada saat menghentikan koneksi.
State – state diatas dapat dilihat dengan menggunakan perintah netstat pada command line.
Konsep UDP
UDP ( User Datagram Protocol ) adalah transport layer yang tidak andal ( unreliable ), connectionless dan merupakan kebalikan dari transport layer TCP. Dengan menggunakan UDP, setiap aplikasi socket dapat mengirimkan paket – paket yang berupa datagram. Istilah datagram diperuntukkan terhadap paket dengan koneksi yang tidak andal ( unreliable service ). Koneksi yang andal selalu memberikan keterangan apabila pengiriman data gagal, sedangkan koneksi yang tidak andal tidak akan mengirimkan keterangan meski pengiriman data gagal.
UDP tidak menjamin kevalidan data saat data sampai ke si penerima. Datagram yang sampai mempunyai kemungkinan tidak sampai, rusak, duplikasi atau hilang tanpa diketahui penyebabnya. Penggunaan UDP lebih tepat diperuntukkan untuk data – data kecil dengan jumlah banyak. Dengan perilaku UDP yang tidak berusaha untuk mengecek apakah data yang dikirim telah sampai atau tidak membuat UDP lebih cepat dan lebih efisien. Aplikasi – aplikasi yang bersifat real time seringkali menggunakan UDP sebagai protokolnya, hal tersebut dikarenakan paket yang hilang lebih bisa ditolerir daripada paket yang datang terlambat ( contoh aplikasi realtime: Video Streaming ). Tidak seperti TCP, UDP juga menyediakan jenis paket broadcast (mengirim paket ke local network) dan multicast (mengirim paket ke semua subscriber).
Dalam UDP, client tidak membangun koneksi dengan server, melainkan client hanya mengirim paket data ke server tanpa mengecek apakah server tersebut telah siap atau tidak. Sama halnya dengan server tidak menerima koneksi dengan fungsi accept, namun server hanya menjalankan perintah untuk menerima data, server akan terus menunggu sampai data diterima.
Perbedaan antara UDP dan TCP adalah :
a. Protokol TCP
TCP( Transmission Control Protocol ) adalah salah satu jenis protokol transfer data. TCP mempunyai karakteristik sebagai protokol yang berorientasi koneksi (Connection oriented). Sebelum terjadi proses tranfer data, maka yang pertama dilakukan adalah kedua belah pihak melakukan caal request dan call accept. Protokol TCP menggunakan jalur data full duplex yang berarti antara kedua host terdapat dua buah jalur, jalur masuk dan jalur keluar sehingga data dapat dikirimkan secara simultan.
Sebuah circuit virtual disiapkan sebelum packet-packet dikirimkan. Pada masing-masing packet terdapat virual circuit identifier yang berisi alamat tujuan packet tersebut. Data yang dikirimkan dalam sebuah protokol TCP maka akan diurutkan dengan sebuah nomor urut dan akan mengharap packet positive acknowledgment. Apabila tidak ada packet positive acknowledgment, maka packet akan dikirim ulang. Oleh karena itu, protokol TCP reliable. Akan tetapi karena harus mengecek setiap packet yang dikirmkan, maka protokol TCP relatif lambat. Pada TCP, hanya bisa melakukan koneksi one-to-one dan tidak bisa melakukan koneksi one-to-many. Karena rute-rute packet sudah ditentukan sebelumnya, maka akan lebih sulit bagi jaringan untuk beradaptasi dengan kemacetan. Apabila sebuah simpul/node mengalami kerusakan/kegagalan, maka seluruh virtual circuit yang melewati simpul tersebut akan hilang.
b.Protokol UDP
UDP ( User Datagram Protocol) adalah jenis transfer data yang lain dari TCP. UDP mempunyai karateristik connectionless (tidak berbasis koneksi). Dengan kata lain, data yang dikirimkan dalam bentuk packet tidak harus melakukan call setup seperti pada TCP. Selain itu, data dalam protokol UDP akan dikirimkan sebagai datagram tanpa adanya nomor identifier. Sehingga sangat besar sekali kemungkinan data sampai tidak berurutan dan sangat mungkin hilang/rusak dalam perjalananan dari host asal ke host tujuan. Tergantung pada host penerima/tujuan, apakah akan meminta kembali pakcet yang rusak atau hilang.
Kelebihan UDP adalah pada saat digunakan pada lightweight protokol, misalnya saja DNS(Domain Name Service). Selain itu protokol UDP lebih fleksibel karena misalnya saja terjadi kemacetan pada salah satu bagian jaringan, maka datagram dapat dialihkan menghindari bagian yang mengalami kemacetan tersebut. Kemudian apabila sebuah simpul(node) mengalami kerusakan/kegagalan, maka pacekt packet berikutnya dapat menemukan jalan/rute pengganti yang melewati simpul tersebut.
1. UDP adalah “datagram-oriented”, sedangkan TCP adalah “session-oriented”. Datagram adalah paket informasi self-contained. UDP berhubungan dengan datagram atau paket individu yang dikirim dari client ke server dan atau sebaliknya.
2. UDP adalah connection-less. Client tidak membangun koneksi ke server sebelum mengirim data, client hanya mengirim data secara langsung.
3. UDP adalah protokol yang tidak andal, dalam artian :
* Paket dapat hilang. UDP tidak dapat mendeteksinya, sehingga pada program aplikasi client – server, metode transmisi ulang dikarenakan data rusak atau hilang harus dilakukan pada level aplikasi. Biasanya aplikasi menunggu hingga timeout habis, dan kemudian mencoba lagi.
* Paket dapat mengalami kerusakan. Paket UDP berisi checksum semua data dalam paket. Checksum ini memungkinkan UDP mendeteksi kapan suatu paket mengalami kerusakan. Jika hal ini terjadi, maka paket tersebut dikeluarkan, dan sebagaimana biasa aplikasilah yang mendeteksi hal ini dan melakukan transmisi ulang seperlunya.
* Karena UDP adalah datagram-oriented dan pada level protokol setiap paket berdiri sendiri, maka UDP tidak memiliki konsep paket sesuai urutan, yang selanjutnya berarti tidak memerlukan nomor urut pada paket tersebut.
* Karena UDP tidak memerlukan mekanisme kontrol yang rumit, maka UDP dapat dianggap lebih mudah dan lebih kecil ( dalam hal baris data dan memori ) untuk diimplementasikan. Namun hal tersebut juga membuat UDP tidak cocok untuk sejumlah besar data.
Port in UDP
Tidak ada perbedaan fungsi yang signifikan antara port di UDP dan TCP. Seperti halnya TCP, port dalam UDP menggunakan 16-bit integer, port – port yang bisa digunakan adalah antara 1 sampai 65535. Port – port yang digunakan dibagi menjadi 3 bagian yaitu well-known port ( antara 1 – 1023), registered port ( 1024 – 49151 ) dan ephemeral port ( 49152 – 65535 ).
Port in TCP
Aplikasi client menggunakan nomor port untuk memberitahu mesin tujuan dan service TCP mana yang diinginkannya. Server untuk aplikasi tertentu menggunakan well-known port untuk mengetahui koneksi dari client yang meminta servicenya.
Port – port yang digunakan dalam transport layer menggunakan 16-bit integer (0 – 65535), dengan satu sama lain harus berbeda (unique).
Pada saat client ingin membangun koneksi dengan Server, client harus mengetahui port dari server yang dituju dan protokol apa yang digunakan (UDP or TCP or SCTP).
Client di sisi sebaliknya, umumnya menggunakan ephemeral port atau biasa disebut short-lived ports. Nomor pada port ephemeral yang digunakan oleh client diberikan oleh Transport Protocol. Client tidak perlu tahu nomor port ephemeral yang digunakan, yang jelas semua port ephemeral yang digunakan pasti bersifat unique.
The Internet Assigned Numbers Authority (IANA) telah mengelompokkan nomor – nomor port yang dibagi menjadi tiga bagian :
1. well-known ports: 0 – 1023. Pada range ini merupakan nomor – nomor port yang telah digunakan oleh IANA. Contoh nya adalah Web server yang menggunakan port 80, FTP menggunakan 21 dll.
2. Registered ports: 1024 – 49252. Nomor – nomor port pada range ini tidak digunakan oleh IANA, IANA mengelompokkan port – port ini untuk dapat digunakan sebagai server untuk TCP atau UDP. Contohnya antara port 6000 sampai 6063 digunakan untuk X Windows server. Aplikasi yang kita gunakan juga bisa menggunakan port ini.
3. Private ports: 49152 – 65535. Nomor – nomor port pada range ini adalah ephemeral port. Namun tentu saja tidak menutup kemungkinan nilai ephemeral port mempunya nilai diluar range ini, hal tersebut bergantung juga dari Sistem Operasi yang digunakan.
Jadi dapat disimpulkan bahwa koneksi TCP memiliki 1 buah local ip address, local port number, foreign ip address dan foreign port number.
Contoh aplikasi – aplikasi yang menggunakan well-known port dan TCP sebagai transport layernya adalah : SMTP, POP, e-mail IMAP, HTTP, telnet dll.

apa itu firewall mikrotik

Firewall Mikrotik

Dalam dunia jaringan komputer maka istilah Firewall sering kali kita dengar. Terutama bagi karyawan yang perusahaannya memiliki jaringan komputer untuk menghubungkan komputer-komputer di setiap divisinya.

Mangle di mikrotik

Mangle di mikrotik

-----------------------------------------------------
Mangle merupakan metode bandwidth manajemen, kalau seandainya ingin bandwidth tersebut dibagi sama rata oleh Mikrotik.

setting blackberry sebagAI modem 2

Cara Menggunakan BlackBerry Sebagai Modem

Berikut Saya akan membahas tentang cara untuk menjadikan handset/hanphone Blackberry sebagai standart modem di operating system Wndows XP, Windows Vista/7. Tulisan ini Saya posting hanya sebagai catatan Saya apabila suatu saat Saya lupa, dan juga mungkin ada teman-teman yang belum tahu silahkan langsung di simak saja ....




Langkah 1
Instal BlackBerry Desktop Software versi 4,1 atau yang lebih baru pada laptop atau komputer pribadi.
Jika Anda menginstal BlackBerry Desktop Software, driver yang memungkinkan 

Setting blackberry menjadi modem

CARA SETTING BLACKBERRY MENJADI MODEM





Cara setting Blackberry sebagai modem , Pada Postingan Sebelumnya Saya Telah Membahas Cara Upgrade Operating Sistem / OS Blackberry dan Juga Cara Instal Blackberry dan kali ini adalah Setting BB sebagai Modem Memang Sekarang Blackberry lagi trend di kalangan anak muda, tidak seperti sebelumnya, blackberry adalah barang mewah dan hanya di pakai oleh kalangan Bussinesmen saja, sesuai dengan perkembangannya dan berkembangnya dunia internet mobile maka sekarang blackberry sudah merambah di semua segmen pasar, kali ini kita akan membahas Cara setting Blackberry sebagai modem, langsung saja berikut langka untuk mengatur /setting blackberry sebagai modem agar bisa di kita connect ke PC atau Laptop dan bisa terhubung ke internet;
Blackberry Sebagai Modem di Windows XP / VISTA

Handset Blackberry anda ternyata dapat digunakan sebagai modem untuk koneksi ke internet.

Caranya adalah sebagai berikut:
1. Pastikan Desktop Manager anda telah terinstall minimal versi 4. Cara mengecek versi desktop
manager anda adalah sebagai berikut buka desktop manager – Help – General..

http://id-blogku.blogspot.com/2011/12/cara-setting-blackberry-sebagai-modem.html

2. Hubungkan BlackBerry handset dengan PC/Laptop menggunakan USB kabel. Kemudian buka
Desktop Manager anda dari PC/laptop. Penggunaan BlackBerry sebagai modem hanya
berjalan apabila desktop manager dijalankan
3. Pastikan Modem Driver berfungsi. Dari PC/laptop, klik Setting - Control panel - Phone and
Modems Options. Pada Tab Modem , akan terlihat Standard Modem baru pada port yang baru
(misalnya COM3, COM6 atau COM 11).


Kemudian klik Properties - Diagnostics - Query Modem lalu
akan terlihat seperti salah satu dibawah ini :
ATQ0V1E0 - OK
AT+GMM - BlackBerry IPmodem
AT+FCLASS=? - OK
AT#CLS=? - OK
AT+GCI? - OK
AT+GCI=? - OK
ATI1 - Research In Motion / BlackBerry IPmodem
ATI2 - Research In Motion / BlackBerry IPmodem
ATI3 - Research In Motion / BlackBerry IPmodem
ATI4 - Research In Motion / BlackBerry IPmodem
ATI5 - Research In Motion / BlackBerry IPmodem
ATI6 - Research In Motion / BlackBerry IPmodem

kemudian klik Properties - Advanced dan tambahkan Extra Initialization sbb:
AT+cgdcont=1,"IP","indosatgprs"

http://id-blogku.blogspot.com/2011/12/cara-setting-blackberry-sebagai-modem.html
ADD A NEW INTERNET CONNECTION
Tutup Phone and Modem Options serta Control Panel. Buat koneksi baru dengan cara sebagai
berikut :
1. Klik Start - Connect To - Show all connections - Create a new connection - Next
2. Pilih "Connect To The Internet" - Next
3. Pilih "Set up my connection manually" - Next
4. Pilih "Connect using a dial-up modem" - Next.

5. Cek mark pada Standard Modem ( jika ditanyakan ).
6. Beri nama koneksi tersebut dengan nama seperti "BlackBerry Modem", klik Next.
7. Pada layar berikutnya pilih nomor telephone berikut, tergantung dari masing2 kartu yg
digunakan. Jika anda menggunakan GSM : masukkan no phone *99***1# atau *99#
8. Klik Next. Kosongkan User name dan password
9. Klik Finish.
Kemudian silahkan coba Browsing ke Internet menggunakan koneksi yang baru dibuat diatas

apa itu blackberry

BlackBerry adalah perangkat selular yang memiliki kemampuan layanan push e-mail, telepon, sms, menjelajah internet, messenger (Blackberry Messenger/BBM), dan berbagai kemampuan nirkabel lainnya.

apa itu modem dan fungsinya

Apa sh Modem itu dan fungsi modem...

fungsi modemApa Itu Modem Dan Apa Fungsi Modem? Modem, adalah kependekan dari modulator-demodulator merupakan perangkat elektronik yang mengubah sinyal digital komputer ke dalam

Cara menggunakan HP sebagai modem internet



Cara menggunakan HP sebagai modem>>>>>>

Sekarang banyak media yang bisa digunakan sebagai perangkat berinternet, diantaranya modem USB, modem ADSL dan tentu saja handphone. Handphone disini yang bisa digunakan

cara hitung kekuatan sinyal wireless

Menghitung Kekuatan Sinyal Wireless

Wednesday · Posted in , ,
Wireless LAN Kalkulator
Berbagai pertanyaan bisa muncul saat membuat koneksi nirkabel. Sebagai contoh, apakah kekuatan transmisi yang tersedia melalui jarak tertentu, apa yang mungkin pemisahan maksimum pemancar dan

Istilah umum radio wireless

Istilah istilah umum Radio Wireless (dB, dBm, dBi, ...)

Artikel berikut ini disadur dari berbagai sumber dan disederhanakan agar lebih mudah dimengerti bagi para pemain baru ataupun mereka yang tertarik dengan dunia Radio Wireless.


perhitungan matematika wireless

Perhitungan Matematika Wireless

Akses internet dari kamar sewa/kost dengan biaya flat bulanan yang terjangkau tentunya sangat menyenangkan,apalagi bagi mahasiswa yang tugas-tugas kuliahnya memrlukan akses internet. Beberapa kota besar sudah ada ISP(Internet Service Provider) yang melayani koneksi internet personal via Wireless LAN

7 kalimat inspiratif pendiri GOOGLE (Larry Page)

Jakarta - Larry Page termasuk nama paling tenar di dunia teknologi. Bersama Sergey Brin, dia mendirikan Google yang kini menjelma menjadi perusahaan mesin cari online terbesar di dunia.


Banyak hal yang bisa dipelajari dari kesuksesan Larry Page yang kini berstatus sebagai CEO Google. Tidak