Rabu, 08 Juni 2016

Routing BGP

1.   Definisi BGP (Broder Gateway Protocol)
BGP (Border Gateway Protocol) adalah sebuah protokol routing inter-Autonomous System dan salah satu jenis routing protokol yang banyak digunakan di ISP besar (Telkomsel) ataupun perbankan, Fungsi utama sistem BGP adalah untuk bertukar informasi network yang dapat dijangkau (reachability) oleh sistem BGP lain, termasuk di dalamnya informasi-informasi yang terdapat dalam list autonomous system (AS).
BGP berjalan melalui sebuah protocol transport, yaitu TCP. AS (Autonomous System), menurut definisi klasik adalah seperangkat router yang berada di bawah otoritas/administrasi teknis tunggal. Untuk merutekan paket antar-AS internal, kita akan membutuhkan Interior Gateway Protocol. Sementara untuk merutekan paket ke AS lain, kita membutuhkan Exterior Gateway Protocol. BGP mempunyai skalabilitas yang tinggi karena dapat melayani pertukaran routing pada beberapa organisasi besar. Oleh karena itu BGP dikenal dengan routing protokol yang sangat rumit dan kompleks.
Setiap orang yang menggunakan internet memiliki paling sedikit satu nomor unik AS (Autonomous System), dan mereka menggunakan BGP untuk menyebarkan jaringan mereka kepada jaringan peer/tetangga.Routing BGP adalah protokol path-vector. Oleh karena itu, BGP mengadvertise hanya jalur yang diperlukan untuk mencapai tujuan tertentu. BGP tidak menjelaskan bagaimana sebuah paket akan dirutekan dalam suatu AS, tidak seperti yang dilakukan OSPF. BGP dapat disebut protokol distance-vector karena memiliki kesamaan walaupun sedikit.


2.    Jenis-Jenis Routing BGP
Routing protokol BGP dibagi menjadi dua subbagian besar yang berbeda berdasarkan fungsi, lokasi berjalannya sesi BGP, dan kebutuhan konfigurasinya yaitu:
·        IBGP(Internal BGP)
Sesuai dengan namanya, Internal BGP atau IBGP adalah sebuah sesi BGP yang terjalin antara dua router yang menjalankan BGP yang berada dalam satu hak administrasi, atau dengan kata lain berada dalam satu autonomous system yang sama. Sesi internal BGP biasanya dibangun dengan cara membuat sebuah sesi BGP antarsesama router internal dengan menggunakan nomor AS yang sama.
Biasanya IBGP berguna untuk memungkinkan router internal saling bertukar rute-rute yang didapat dari dunia luar. Dengan demikian semua router saling dapat mengetahui rute-rute apa saja yang disimpan oleh masing-masing router. Setelah mengetahui lebih banyak rute, maka jalan menuju ke suatu situs di internet memiliki banyak pilihan. 
IBGP biasanya digunakan pada jaringan internal ISP atau perusahaan-perusahaan besar. Tujuannya adalah agar antarsesama router di dalamnya dapat saling bertukar informasi yang didapat dari dunia luar, atau dengan kata lain dari AS number lain. Untuk menjalankan IBGP dalam jaringan internal, sebuah sesi IBGP memerlukan bantuan routing protocol yang lain. Tujuannya adalah agar router tetangga yang menjadi tujuan sesi IBGP dapat dicapai oleh router tersebut. Hal ini diperlukan karena untuk membuka sebuah sesi BGP diperlukan reachability ke tetangga tujuannya. Sebuah sesi IBGP antardua buah router atau lebih tidak memerlukan koneksi secara langsung, atau dengan kata lain tidak memerlukan koneksi Point-to-Point. Kita bisa membangun sesi IBGP antar dua router meskipun keduanya berada dalam jarak yang jauh, asalkan tidak terpisah dalam autonomous system yang lain. Namun syarat untuk membuatnya demikian adalah desain dan implementasi internal routing protocol yang baik. Internal routing protocol sangat berguna untuk melakukan routing terhadap paket-paket komunikasi BGP sehingga bisa sampai dari router asal ke router tujuannya. 

·        EBGP (External BGP) 
Kebalikannya dari IBGP, External BGP atau sering disingkat EBGP berarti sebuah sesi BGP yang terjadi antar dua router atau lebih yang berbeda autonomous systemnya atau berbeda hak administratif. Tidak hanya sekadar beda nomor AS saja, namun benar-benar berbeda administrasinya. Jadi misalnya router Kita dengan router ISP ingin dapat saling bertukar informasi dengan menggunakan bantuan BGP, maka kemungkinan besar Kita akan membuat sesi EBGP. Hal ini dikarena autonomous system router Kita dengan router ISP dibuat berbeda.
Pihak ISP tentu tidak akan memasukkan router BGP Kita dalam autonomous systemnya karena memang bukan hak dan kewajiban mereka untuk mengurus router Kita. Dengan perbedaan autonomous system ini, maka seperangkat peraturan saat melakukan routing update tentu berbeda dengan apa yang ada dalam IBGP. Untuk itulah sesi BGP jenis ini dikategorikan berbeda, yaitu sebagai External BGP. Sesi External BGP biasanya dibuat dengan menggunakan bantuan media point-to-point seperti misalnya line Point-to-Point serial, satelite Point-to-Point, wireless Point-to-Point, dan banyak lagi. Sesi EBGP biasanya terjadi pada router yang letaknya berada di perbatasan antara jaringan Kita dengan jaringan lain, atau sering disebut juga dengan istilah border router. Tujuan utama dibuatnya EBGP adalah untuk memudahkan pendistribusian informasi routing dari pihak luar ke jaringan kita.

3.   Karakteristik BGP
·        Menggunakan algoritma routing distance vektor.Algoritma routing distance vector secara periodik menyalin table routing dari router ke router. Perubahan table routing di update antar router yang saling berhubungan pada saat terjadi perubahan topologi;
·        Digunakan antara ISP dengan ISP dan client-client
·        Digunakan untuk merutekan trafik internet antar autonomous system
·        BGP adalah Path Vector routing protocol.Dalam proses menentukan rute-rute terbaiknya selalu mengacu kepada path yang terbaik dan terpilih yang didapatnya dari router BGP yang lainnya;
·        Router BGP membangun dan menjaga koneksi antar-peer menggunakan port nomor 179
·        Koneksi antar-peer dijaga dengan menggunakan sinyal keepalive secara periodic
·        Metrik (atribut) untuk menentukan rute terbaik sangat kompleks dan dapat dimodifikasi dengan fleksibel
·        BGP memiliki routing table sendiri yang biasanya memuat prefiks-prefiks routing yang diterimanya dari router BGP lain.

4.   Cara Kerja BGP
Routing protokol BGP baru dapat dikatakan bekerja pada sebuah router jika sudah terbentuk sesi komunikasi dengan router tetangganya yang juga menjalankan BGP. Sesi komunikasi ini adalah berupa komunikasi dengan protokol TCP dengan nomor port 179. Setelah terjalin komunikasi ini, maka kedua buah router BGP dapat saling bertukar informasi rute.
Untuk berhasil menjalin komunikasi dengan router tetangganya sampai dapat saling bertukar informasi routing, ada beberapa hal yang perlu diperhatikan:
1.      Kedua buah router telah dikonfigurasi dengan benar dan siap menjalankan routing protokol BGP.
2.      Koneksi antarkedua buah router telah terbentuk dengan baik tanpa adanya gangguan pada media koneksinya.
3.      Pastikan paket-paket pesan BGP yang bertugas membentuk sesi BGP dengan router tetangganya dapat samp dengan baik ke tujuannya.
4.      Pastikan kedua buah router BGP tidak melakukan pemblokiran port komunikasi TCP 179.
5.      Pastikan kedua buah router tidak kehabisan resource saat sesi BGP sudah terbentuk dan berjalan.


5.    Paket-Paket Pada Protokol BGP
Untuk membentuk dan mempertahankan sebuah sesi BGP dengan router tetangganya, BGP mempunyai mekanismenya sendiri yang unik. Pembentukan sesi BGP ini mengkitalkan paket-paket pesan yang terdiri dari empat macam. Paket-paket tersebut adalah sebagai berikut: 
1.      Open Message Sesuai dengan namanya, paket pesan jenis ini merupakan paket pembuka sebuah sesi BGP. Paket inilah yang pertama dikirimkan ke router tetangga untuk membangun sebuah sesi komunikasi. Paket ini berisikan informasi mengenai BGP version number, AS number, hold time, dan router ID. 
2.      Keepalive Message Paket Keepalive message bertugas untuk menjaga hubungan yang telah terbentuk antarkedua router BGP. Paket jenis ini dikirimkan secara periodik oleh kedua buah router yang bertetangga. Paket ini berukuran 19 byte dan tidak berisikan data sama sekali.
3.      Notification Message Paket pesan ini adalah paket yang bertugas menginformasikan error yang terjadi terhadap sebuah sesi BGP. Paket ini berisikan field-field yang berisi jenis error apa yang telah terjadi, sehingga sangat memudahkan penggunanya untuk melakukan troubleshooting.
4.      Update Message Paket update merupakan paket pesan utama yang akan membawa informasi rute-rute yang ada. Paket ini berisikan semua informasi rute BGP yang ada dalam jaringan tersebut. Ada tiga komponen utama dalam paket pesan ini, yaitu Network-Layer Reachability Information (NLRI), path attribut, dan withdrawn routes.

6.  Versi BGP

1.      BGP Versi 1
·        Ukuran message 8 – 1024 byte.
·        Terdapat 8 bit field Direction yang menandkan arah yang diambil oleh informasi routing.
·        Lima kemungkinan field Direction: Up, Down, Horizontal, EGP-derived information, Incomplete
2.      BGP Versi 2
·        Ukuran message 19 – 4096 byte.
·        Menghilangkan konsep up, down, dan horizontal di antara AS-AS
·        Menambahkan konsep path-attribute.
3.      BGP versi 3
·        Ukuran message 19 – 4096 byte
·        Mengklarifikasi prosedur pendistribusian rute-rute BGP di antara speaker-speaker dalam sebuah AS.
·        Meningkatkan restriksi terhadap penggunaan path attribute Next-hop
4.      BGP versi 4
·        Ukuran message 19 – 4096 byte.
·        Path atribute AS telah dimodifikasi sehingga set AS-AS dapat digambarkan sebagaimana AS individual.
·        Inter-AS Metric path attribute telah didefinisikan ulang sebagai Multi-Exit Discriminator path attribute.
·        Local preference path attribute ditambahkan.
·        Aggregator path attribute ditambahkan.
·        Dukungan untuk CIDR (Classless Inter Domain Routing)

7.   Kelebihan dan Kekurangan Routing BGP
·        Beberapa kelebihan routing BGP:
1.      BGP memiliki kemampuan untuk mengontrol dan mengatur trafik-trafik dari sumber berbeda di dalam network multi-home (tersambung ke lebih dari 1 ISP/Internet Service Provider);
2.      Sangat sederhana dalam instalasi

·        Beberapa kekurangan routing BGP:
1.      BGP mempublikasikan rute yang tidak diketahui bagaimana cara mencapainya;

2.      Sangat terbatas dalam mempergunakan topologi.

Tidak ada komentar:

Posting Komentar