Selasa, 13 Oktober 2009

Membaca hasil traceroute dengan tepat



Untuk mengetahui jalur yang ditempuh untuk mencapai suatu node, traceroute mengirimkan 3 buah paket probe tipe UDP dari port sumber berbeda, dengan TTL bernilai 1. Saat paket tersebut mencapai router next-hop, TTL paket akan dikurangi satu sehingga menjadi 0, dan router next-hop akan menolak paket UDP tersebut sembari mengirimkan paket ICMP Time-to-Live Exceeded ke node asal traceroute tersebut. Dengan cara ini, pengirim traceroute tahu alamat IP pertama dari jalur yang ditempuh.



Kemudian, sumber traceroute mengirimkan 3 buah paket UDP lagi dengan nilai TTL yang dinaikkan 1 (TTL = 2), sehingga router pertama di jalur menuju tujuan traceroute akan melewatkan paket UDP tersebut ke router selanjutnya. Router hop kedua akan melihat bahwa paket tersebut sudah expired (TTLnya jadi 1, setelah dikurangi oleh router pertama). Maka, seperti halnya router pertama, router tersebut akan mengirimkan paket ICMP Time-to-Live Exceeded ke sumber traceroute. Sekarang, sumber traceroute telah mengetahui hop kedua dari jalur menuju tujuan traceroute.

Sumber traceroute akan mengirimkan lagi paket UDP dengan TTL ditambah 1 (TTL = 3). Router hop ketiga akan membalas dengan paket ICMP Time-to-Live Exceeded ke sumber traceroute, sehingga sumber traceroute mengetahui alamat IP router hop ketiga. Proses ini akan diulang terus paket UDP yang dikirimkan mencapai alamat IP tujuan traceroute.

Tiga buah paket UDP traceroute adalah jumlah paket default dari aplikasi traceroute. Inilah mengapa kita melihat tiga buah tampilan latensi saat melihat hasil traceroute yang dijalankan.



Tidak semua aplikasi traceroute menggunakan UDP. Windows menggunakan paket ICMP, sedangkan sejumlah aplikasi tertentu menggunakan paket TCP.

Cara menghitung latensi tiap hop adalah dengan mengukur selisih antara timestamp paket probe yang dikirimkan dengan timestamp dari paket ICMP TTL exceeded yang diterima. Router yang berada sepanjang jalur pengiriman tidak akan melakukan pemrosesan data timestamp. Dari cara ini, yang kita ketahui hanyalah waktu total pulang-pergi dari sumber ke router hop tertentu. Delay yang terjadi sepanjang perjalanan kembali ke sumber juga akan berpengaruh.

Kemudian, alamat IP dari interface manakah yang kita lihat dari hasil traceroute?



Alamat IP yang kita lihat dari hasil traceroute adalah IP dari interface ingress router. Sebenarnya, RFC 1812 menyebutkan bahwa sumber ICMP haruslah dari interface egress. Namun, hal ini akan menyebabkan hasil traceroute menjadi kacau.

Interpretasi DNS dari Hasil Traceroute

Dengan traceroute, kita dapat menganalisis informasi mengenai lokasi router, tipe dan kapasitas interface, tipe dan fungsi router, serta batas-batas network yang dilalui, berdasarkan DNS interface yang dilalui.



Dari gambar di atas, terlihat informasi kapasitas tiap link yang dilalui (OC 48, dll), tipe interface dari router (10GE, Sonet, dll), serta lokasi dari setiap router (Amsterdam [ams], New York [nyc], dll), dengan melihat entry DNSnya.

Memahami Delay di Jaringan

Tiga jenis delay di jaringan yang umum ditemui :

Serialization delay; delay yang disebabkan karena frame data harus dikirimkan dengan ukuran tertentu dan waktu tertentu pula (berkaitan dengan clocking).
Delay antrian; waktu yang dihabiskan selama paket berada dalam antrian router sebelum dikirim.
Delay pengiriman; waktu yang diperlukan untuk mengirimkan paket melintasi suatu link. Delay ini benar-benar bergantung pada media fisik yang digunakan untuk transmisi : kecepatan cahaya pada FO, atau kecepatan perambatan sinyal listrik pada media kabel.
Bagaimana cara mengidentifikasi apakah suatu latensi normal atau tidak? Pertama, kita harus menghitung perkiraan delay propagasi normalnya. Ini dapat dilakukan berdasarkan keterangan lokasi fisik antara dua router beserta media fisik link yang digunakan. Kemudian, kita bandingkan dengan hasil dari traceroute. Apabila perbedaannya cukup besar, berarti terdapat permasalahan pada hop tersebut.

Prioritization dan rate limiting pada router

Router yang ada saat ini memiliki karakteristik untuk menjadikan paket ICMP sebagai prioritas terakhir dalam pemrosesan. Kemudian, ada proses-proses tertentu pada router yang menyebabkan CPU router menjadi tinggi, misalnya proses BGP scanner pada Cisco. Hal ini akan mempengaruhi proses pembuatan paket ICMP TTL exceeded, sehingga dapat membuat penafsiran traceroute yang salah.

Selanjutnya, setiap vendor router menerapkan pembatasan pembuatan paket ICMP. Ini dimaksudkan untuk mengurangi beban CPU router dari hal-hal yang kurang penting. Hal ini juga dapat mempengaruhi hasil delay dari traceroute.

Jalur Asimetris (asymmetric path)

Hop-hop yang ditampilkan traceroute hanya menjelaskan mengenai arah pengiriman paket dari sumber traceroute ke tujuan. Di sisi lain, kita tidak mengetahui jalur pengiriman paket dari router perantara ke arah kita (sumber traceroute). Ini akan menjadi masalah ketika jalur pengiriman paket traceroute berbeda dengan jalur pengiriman ICMP TTL exceeded.

Permasalahan jalur asimetris sering terjadi pada router yang berada di perbatasan domain AS. Ini karena terdapat perbedaan penerapan policy routing pada dua domain AS yang berbatasan tersebut. Permasalahan ini sering terjadi pada suatu domain yang bersifat multi-homing.

Multiple Path dan Load Balancing

Misalnya dengan menggunakan tools level3 ini kita mendapatkan hasil berikut :



pada hop 2,3, dan 7, terlihat bahwa ada beberapa node yang dilewati. Ini terjadi karena paket probe yang dikirim traceroute bersumber dari port yang berbeda, kemudian pada router hop tersebut diterapkan policy equal-cost multi-path, sehingga pada sebuah hop dapat terlihat ada beberapa rute yang ditempuh. Pada contoh di atas, hop 2, 3, dan 7 mengirimkan dua paket pada jalur yang sama, sedangkan satu paket yang lain pada jalur yang berbeda.

MPLS dan Traceroute

Hampir semua jaringan core berbasis MPLS. Router core tersebut bisa jadi tidak berisi tabel routing global. Bagaimana caranya router tersebut mengirimkan paket ICMP? Caranya adalah dengan menggunakan ICMP tunneling : jika menghasilkan ICMP berdasarkan suatu paket pada sebuah LSP, maka taruh ICMP tersebut pada LSP yang sama. Namun, solusi ini akan membuat hasil traceroute menjadi aneh. Semua paket ICMP TTL exceeded harus dikirimkan menuju ujung LSP terlebih dahulu sebelum dikirimkan kembali ke sumber traceroute. Ini menyebabkan setiap hop di LSP terlihat memiliki RTT yang sama dengan tujuan traceroute.



Pada contoh di atas, hop ketiga sampai dengan node tujuan memiliki RTT yang hampir sama, bahkan ada node transit yang RTTnya lebih besar dibandingkan dengan node tujuan. Ini karena di jaringan core AT&T digunakan MPLS.

Sumber : disini, disini dan disini



Tidak ada komentar:

Posting Komentar