<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-2676275251897061304</id><updated>2011-08-17T23:58:21.147-07:00</updated><title type='text'>Dhie</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://lidiachaniago.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2676275251897061304/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://lidiachaniago.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>lidiachaniago</name><uri>http://www.blogger.com/profile/01262455735193640538</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/-4sI6n8wiMSE/TkIA1tCwaMI/AAAAAAAAAFs/ST7mkeeeqV0/s220/02012010%2528004%25293354.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>1</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-2676275251897061304.post-3653590599003055491</id><published>2009-01-07T17:45:00.000-08:00</published><updated>2009-01-07T22:06:30.829-08:00</updated><title type='text'>Perumpamaan Socket</title><content type='html'>Bayangkan socket seperti sebuah alat komunikasi , telpon. Sedangkan kita , manusia , sebagai aplikasi . Untuk berhubungan dengan aplikasi lain , socket perlu membuka koneksi terlebih dahulu . Sama halnya dengan telpon , kita memutar nomor seseorang untuk membentuk koneksi terlebih dahulu . Setelah terbentuk koneksi barulah kita saling bertukar data alias ngobrol . Jono sebagai orang yang menginisialisasi koneksi disebut client , sedangkan teman Jono , Jini , yang dihubungi diibaratkan server.&lt;br /&gt;&lt;br /&gt;Kronologisnya seperti ini :&lt;br /&gt;&lt;br /&gt;Jono : tit tut tot tut tet ... ( ketik nomor telpon -&gt; alamat server IP + Port )&lt;br /&gt;&lt;br /&gt;IP itu seperti nomor telpon , sedangkan port ibarat nama teman . Dalam satu komputer ada beberapa aplikasi kan..?? nah aplikasi2 ini dibedakan berdasarkan portnya . Berarti .. tidak mungkin ada dua aplikasi menggunakan port yang sama dalam satu komputer. ... jika teman kita ada , maka berbahagialah kita jika dia mengangkat telpon .. :) dan terbentuklah koneksi ..&lt;br /&gt;&lt;br /&gt;Jono : halo Jini&lt;br /&gt;Jini : halo jg...&lt;br /&gt;&lt;br /&gt;nah .. ini namanya bertukar data . Pertukaran data ini harus mengikuti kesepakatan format terlebih dahulu . Ini dikenal juga sebagai protokol . Kalau di dunia internet banyak contohnya : http , ftp , irc dsb . Kalau misalnya formatnya salah , akan ditolak oleh server..misalnya mengirimkan data ftp ke server http . Biasanya tuh.. yang namanya server melayani request dari client .&lt;br /&gt;&lt;br /&gt;Jono : minta alamat Rio&lt;br /&gt;&lt;br /&gt;Rini akan memproses permintaan tersebut , mencari alamat Rio , mencatatnya . Seperti itulah tipikal aplikasi socket , ada request .. diproses kemudian dikirim responnya.&lt;br /&gt;&lt;br /&gt;Rini : jl. Sarijadi 169 Bandung&lt;br /&gt;&lt;br /&gt;Terkadang..server juga bisa proaktif mengirimkan data terlebih dahulu..&lt;br /&gt;Kalau sudah selesai ngobrolnya.. maka salah satu bisa memutuskan koneksi . .misalnya Jini menutup duluan ( ga sopan banget :p ) , telepon di Jono berbunyi tiiiitt.. mengindikasikan koneksi putus. Jono-pun menutup telpon alias menutup socket .selesailah satu proses dasar pengiriman data dengan telpon/socket .&lt;br /&gt;&lt;br /&gt;Karakteristik :&lt;br /&gt;&lt;br /&gt;Proses diatas merupakan salah satu karakteristik dari socket TCP . Ada dua jenis socket yang umum yaitu TCP dan UDP .&lt;br /&gt;&lt;br /&gt;- untuk bertukar data harus membentuk koneksi dulu..&lt;lihat&gt;Socket UDP tidak perlu membentuk koneksi dahulu langsung aja jrot jrot..kirim data . Mungkin ibaratnya seperti interkom , tidak peduli ada orang yang jawab langsung aja ngomong .&lt;br /&gt;&lt;br /&gt;- data TCP berupa stream Misalkan telpon yang digunakan menggunakan fasilitas VOIP , dilewatkan jaringan internet . VOIP karena lewat internet , pas lagi trafik gede sangat lambat sekali . Suaranya akan terdengar patah2 . Misalnya Jini memberikan informasi alamat2 warung tegal di bandung :Jalan Dipatiukur 56 . Jalan dayeuhkolot 201.&lt;br /&gt;&lt;br /&gt;Keduanya sepakat menggunakan . ( titik ) sebagai pembatas . Menggunakan socket TCP bisa terjadi beberapa kemungkinan sbb :&lt;br /&gt;1. Jono menerima data lengkap : Jalan Dipatiukur 56 . Jalan dayeuhkolot 201.&lt;br /&gt;2. Jono menerima data parsial :&lt;br /&gt;    data1 : Jalan Dipatiukur 56. Jal&lt;br /&gt;    data2 : an dayeuhkolot 201.&lt;br /&gt;&lt;br /&gt;Tapi karena sepakat bahwa tanda . ( titik ) sebagai pembeda alamat , Jono dengan mudah mendapatkan alamat2 tersebut. Di jaringan pun demikian , TCP adalah stream oriented . Data yang diterima dapat utuh , terpecah2 menjadi beberapa bagian . Oleh karena itu , sangat amat penting bagi aplikasi untuk menghadapi masalah seperti ini dengan membuat metoda untuk membedakan message . Diantaranya :&lt;br /&gt;- Tambahkan trailing di belakang message : pada contoh diatas digunakan . ( titik )&lt;br /&gt;- Tambahkan indikator panjang message di depan :&lt;br /&gt;&lt;br /&gt;misalnya kalau message diatas diformat akan menjadi :&lt;br /&gt;24Jalan Dipatiukur5628Jalan dayeuhkolot 201&lt;br /&gt;-24 adalah panjang message 1 (termasuk 24)&lt;br /&gt;-28 adalah panjang message 2 (termasuk 28)&lt;br /&gt;Meskipun Jono akan pusing mbacanya.. tapi kalau dia tekun pasti bisa...&lt;br /&gt;&lt;br /&gt;UDP adalah data oriented . Tidak senjelimet TCP , UDP bisa mengirimkan data secara terpisah . Jadi penerimaan datanya seperti ini :&lt;br /&gt;message1 : Jalan Dipatiukur 56&lt;br /&gt;message 2 : Jalan dayeuhkolot 201&lt;br /&gt;&lt;br /&gt;- TCP menjamin urutan message&lt;br /&gt;Lihat contoh sebelumnya .. message diterima sesuai urutannya . Message 2 akan selalu diterima setelah message 1 .Tidak demikian dengan UDP , tidak menjamin urutan message . Message 2 bisa saja datang duluan sebelum message 1. UDP memungkinkan hal ini .&lt;br /&gt;&lt;br /&gt;- TCP menjamin data sampai di tujuan&lt;br /&gt;Data yang dikirimkan dijamin sampai ke tujuannya sesuai dengan urutannya . Jika ditengah jalan ada masalah , TCP cukup pintar untuk mengirimkan kembali message sesuai dengan urutannya . Jadi penerima menerima datanya dengan utuh. Tapi.. inga inga !! jika terjadi error permanen ditengah jalan seperti server mati , link putus , listrik mati , TCP tidak bisa menjamin . UDP lain lagi , tidak menjamin data sampai ditujuan . Message bisa hilang ditengah jalan . Server maupun client gak akan tahu kenapa message itu pergi . Namun , dengan menggunakan aplikasi masalah ini bisa dipecahkan . Misalnya dengan memberi nomor urut di dalam data yang kita kirimkan , dengan demikian penerima bisa mengetahui urutan messagenya . Jika ada message yang hilang , penerima bisa merequest kembali pengirim untuk mengirimkan lagi message tersebut.&lt;br /&gt;&lt;br /&gt;Keliatan gak ?? bagian yang menerangkan TCP itu lebih banyak dibandingkan UDP . Memang , TCP lebih kompleks proses algoritmanya dibanding UDP . Oleh karena itu , keduanya digunakan sesuai karakteristiknya :&lt;br /&gt;TCP -&gt; Transaksi bank , Transfer file , dsb...&lt;br /&gt;UDP -&gt; Multiplayer game , network monitoring&lt;br /&gt;&lt;br /&gt;Udah dulu yach...artikel ni lid ambil dr bayufa di Benpinter.net .... s'moga berguna bwt temen2 smuanya....!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2676275251897061304-3653590599003055491?l=lidiachaniago.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lidiachaniago.blogspot.com/feeds/3653590599003055491/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2676275251897061304&amp;postID=3653590599003055491' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2676275251897061304/posts/default/3653590599003055491'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2676275251897061304/posts/default/3653590599003055491'/><link rel='alternate' type='text/html' href='http://lidiachaniago.blogspot.com/2009_01_01_archive.html#3653590599003055491' title='Perumpamaan Socket'/><author><name>lidiachaniago</name><uri>http://www.blogger.com/profile/01262455735193640538</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://3.bp.blogspot.com/-4sI6n8wiMSE/TkIA1tCwaMI/AAAAAAAAAFs/ST7mkeeeqV0/s220/02012010%2528004%25293354.jpg'/></author><thr:total>0</thr:total></entry></feed>
