Monday, December 29, 2014

Sekilas Tentang Address Resolution Protocol (ARP)

Address Resolution Protocol (ARP) adalah protocol yang digunakan untuk menerjemahkan IP address menjadi MAC Address dalam suatu jaringan. Contohnya ketika suatu packet data masuk/datang kesuatu gateway, maka gateway tersebut menggunakan protocol ARP untuk menentukan ke MAC Address mana packet tersebut akan diteruskan. ARP menggunakan routing table untuk menerjemahkan IP ke MAC Address. Jika ternyata ARP tidak menemukan MAC address yang cocok untuk IP data, maka ARP akan mengirimkan broadcast message ke seluruh komputer yang ada dalam suatu jaringan lokal. Broadcast message ini berisi 1 resolution request atau response. Ukuran message tersebut juga bergantung pada ukuran alamat layer atas dan bawah dari ARP. Ukuran alamat layer atas dan bawah dapat diketahui dari header yang digunakan oleh packet ARP seperti terlihat di bawah :


Hardware Type (HTYPE). Pada gambar di atas HTYPE ini adalah 2 byte dan mementukan type dari network protocol. Contoh untuk Ethernet, HTYPE ini bernilai 1.

Protocol Type (PTYPE). PTYPE ini juga 2 byte, berguna untuk menentukan protocol internetwork dimana ARP request ditujukan. Untuk IPv4, PTYPE = 0x0800. Nilai-nilai yang lain dapat dilihat di EtherType.

Hardware Length (HLEN), menunjukkan panjang alamat hardware.

Protocol Length (PLEN), menunjukkan panjang address yang digunakan oleh protocol layer atasnya.

Operation, menunjukkan operasi apa yang dilakukan pengirim. Operasinya bisa request atau reply.

Sender Hardware Address (SHA). Pada ARP request field ini digunakan untuk menunjukkan alamat komputer yang mengirim ARP request. Pada ARP reply, field ini menunjukkan alamat komputer ARP request ini ditujukan (Alamat komputer yang mac Addressnya g' diketahui wkwkw...).

Target Hardware Address (THA). Pada ARP request (broadcast) field ini kosong/ignore. Pada ARP reply, field ini menunjukkan alamat pengirim ARP request.

Ilustrasi yang lebih jelas untuk penggunaan ARP bisa dilihat pada gambar di bawah :

Terlihat pada, Sender mempunyai data yang akan dikirim ke alamat IP 10.199.64.105. Tetapi sender tidak mengetahui MAC address dari IP tersebut, sehingga sender mengirimkan ARP broadcast ke semua komputer yang berada dalam jaringan lokalnya (agk mubasyir yah...). Komputer-komputer lain yang menerima ARP broadcast tersebut mengecek, jika ternyata bukan untuk dirinya maka ARP tersebut dibuang saja, tetap jika ARP tersebut ditujukan untuk dirinya, maka dia akan membalas dengan MAC Address yang dia miliki. Setelah itu routing table akan diupgrade pada masing-masing komputer dan komunikasi data selanjutnya dapat dilakukan.

Ok, berikutnya kita akan mencoba-coba perintah "arp" ini pada bacth programming. Jadi silahkan buka command prompt pada windows. perintah pertama adalah "arp -a", seperti terlihat :


arp -a ini berguna untuk menunjukkan semua entry cached arp (mkn boleh dibilang routing tabel apa yah...? :D) pada komputer yang kita miliki, baik itu yang berupa static ataupun yang dinamic. Jika arp -a diatas dieksekusi (tekan enter aja), hasilnya :


Nah dari situ kita dapat mengetahui komputer kita terhubung(dapat terhubung) ke komputer mana saja dalam jaringan lokal. Kemudian Physical(MAC) Addressnya juga dapat diketahui. Jika ditambahkan IP address dibelakang -a, maka yang ditampilkan hanya MAC address dari IP address tersebut, contoh :

Kemudian, "arp -g" nah command ini sama persis dengan "arp -a". Kemudian "arp -d" digunakan untuk mendelete entry ARP. Caranya "arp -d IP". Next, "arp -s" digunakan untuk menambah entry baru pada cached ARP,

Kemudian, beberapa command lagi seperti arp -v, arp -n, dsb yang saya belum tau sendiri hohoho... :D


Saturday, December 27, 2014

360 Rotation Degrees in Blender

Pada postingan ini akan diperlihatkan cara sederhana untuk melakukan rotasi kamera 360 derajat terhadap object. Pertama-tama silahkan buat project baru diblender, disini digunakan blender versi 2.72. Project yang dibuat default saja, kemudian tambahkan object-object dalam main screenya. Object-objectnya terserah saja, disini digunakan seperti terlihat dibawah :


Kemudian tambahkan "empty object" tepat ditengah-ditengah seperti posisi 3D cursor:


Terus, Jadikan empty object dan kamera menjadi "parented". Caranya klik kamera, kemudian tekan shift tekan empty objectnya. Kemudian tekan Ctrl+P :


Nah.. Sampai disini, jika empty object tersebut kita pindah-pindahkan, maka kamera juga akan ikut berpindah. Terus, secara default jumlah frame di blender adalah 250, Jadi sebaiknya diganti saja menjadi 72 atau 100 terserah saja, semakin besar jumlah framenya maka kecepatan rotasinya jg akan semakin lambat, Di sini digunakan 72 frame saja :


Kemudian tepat di frame 1, masukan keyFrame type rotasi (tekan i kemudian pilih rotasi), keyFrame ini untuk empty object (jadi bukan untuk kamera):


Next, pindah ke frame terakhir (disini frame 72), terus rotasi empty objectnya terhadap sumbu z sebesar 360 derajat. Caranya tekan R kemudian Z terus ketik 360. Kemudian tekan N, maka akan muncul menu disebelah kanan, nah dibagian transform, ganti nilai sumbu Z menjadi 360, seperti terlihat di bawah :

Setelah itu insert KeyFrame kembali. Nah sampai disini kita sudah dapat melihat rotasi 360 derajatnya (tekan Alt+A untuk melihat hasilnya). Namun kecepatan rotasinya tidak linear, oleh sebab itu buka "Graph Editor" :


Di menu "key" pilih "Interpolation Mode", dan pilih "Linear" :


Ok, silahkan kembali ke 3D View, dan tekan Alt+A untuk melihat hasilnya :


Huhuhu... Maaf animasinya berguncang... :D. Tapi sampai disini kita sudah dapat melihat rotasi 360 derajatnya. Untuk animasi diatas, mungkin rendering image dari camera view agk lebih stabil. Untuk itu perlu ditambahkan pencahayaan dan warna dari tiap object diubah :


Siip, Jika dilihat dari kamera view, hasilnya :


Sekian.... Semoga bermanfaat... :-)