Freebsd atau Linux? sebagai router BGP lebih dari 100mbps

10

Saya membangun server untuk bertindak sebagai router perbatasan BGP untuk uplink 100mbps saya di ISP.

Saya membutuhkan fitur ini:

1) Dual stack BGP peering / routing (setidaknya 100Mbps, mungkin lebih). 2) Potensi feed BGP internet penuh. 3) Beberapa fungsionalitas ACL dasar.

Perangkat kerasnya adalah ram L3426 / 8G. NIC akan menjadi on-board port ganda Broadcom 5716.

Saya telah bekerja dengan Linux secara luas sebelumnya dan tampaknya mampu menangani 100mbps, tetapi saya mendengar FreeBSD lebih cepat pada hal-hal jaringan. Yang mana yang harus saya gunakan? Dan apakah kita memiliki beberapa angka tolok ukur kinerja di luar sana?

Bersulang.

petrus
sumber
1
alasan mengapa Anda tidak menggunakan router cisco bgp? Sayangnya sebagian besar ISP yang membiarkan pelanggan menjalankan bgp menentukan persyaratan ini untuk 'kompatibilitas'
The Unix Janitor
9
Em, pertama kali saya mendengar tentang pembatasan itu, dan saya bekerja pada jaringan yang dimulai dengan Quagga / Debian di Dell PowerEdge, hingga kit Juniper dan Cisco sekarang. Juga berurusan dengan BANYAK penyedia transit dan pertukaran yang berbeda. Jika ISP menerapkan pembatasan seperti itu, gantilah dengan orang yang kompeten.
Niall Donegan
1
Catatan, karena ini adalah router saya sangat menyarankan untuk meletakkan kartu NIC di sana sebagai cadangan. Jika onboard yang rusak, Anda mengganti mobo daripada mengganti kartu PCIe cepat.
Chris S
1
Anda membuang-buang uang. Sebuah kotak murah dari Mikrotik (misalnya, RougerBoard 1100AH) dapat menangani ini dengan harga lebih murah dan berbasis linux.
TomTom
Beberapa orang menyarankan untuk menggunakan nic khusus dan bukan Broadcom on-board. Blog Serverfault memiliki beberapa posting menarik tentang ini.
ollybee

Jawaban:

11

Kami telah melakukan ini untuk infrastruktur kritis selama bertahun-tahun. Kami mengambil tiga umpan BGP hulu penuh melalui Quagga bgpddan menggunakan 658MB RAM untuk menjalankan keseluruhan sistem. Untuk tujuan ini, Debian jauh lebih solid daripada OS lain dalam pengalaman kami (dan itu juga membutuhkan lebih sedikit pembaruan keamanan dengan jejak instalasi minimumnya, menyebabkan reboot jauh lebih sedikit daripada dua OS lain yang kami coba). Kami menggunakan Ksplice jadi kami hanya melakukan boot untuk pembaruan paket penting. Jangan khawatir tentang kompatibilitas dengan vendor lain di ISP Anda ... RIPE the RIR gunakan Quagga!

Anehnya perangkat keras itu tidak begitu penting, itu semua tentang NIC. Fast CPU pada dasarnya hanya berarti awalan memuat lebih cepat jika Anda me-refresh sesi (dengan asumsi Anda punya GB RAM dan mereka memuat ke memori) sehingga Quad Core entry-level secara besar-besaran ditentukan. Kami menghabiskan waktu lama untuk mencoba NIC yang berbeda dan dalam pengalaman kami yang terbaik adalah kartu Intel yang menggunakan igbdriver (sekitar £ 100 / NIC kami menggunakan: 82576, ET Dual Port Server Adapter) dengane1000datang kedua. Ada beberapa pertimbangan seperti bagaimana NIC Anda masuk dan keluar berbicara ke mainboard tetapi untuk sub 250Mbps Anda mungkin tidak akan memperhatikan jika Anda menggunakan NIC ini. Kami telah mengusir serangan DDoS UDP yang canggih menggunakan arsitektur ini (menggunakan paket UDP terkecil yang harus ditangani oleh router). Ingatlah bahwa mampu memproses jumlah paket tertinggi adalah apa yang paling Anda perhatikan dan belum tentu throughputnya, diukur dalam Mbps. Untuk uang yang sangat sedikit, kami telah menetapkan router multihomed Gigabit yang dapat menangani paket ukuran Internet standar, yaitu operasi normal, hingga 850Mbps!

Saya mulai dengan Cisco ( bgpdkonfigurasi hampir identik, jadi jika Anda memiliki pengalaman dengan kit Cisco, ini adalah transisi yang sangat cepat) tetapi karena Linux sangat mudah ditempa (misalnya dapat menambahkan beberapa skrip sumber daya rendah ke router Anda untuk membantu dengan pelaporan dan admin) IMHO membuatnya sangat kuat (dan diremehkan) untuk jenis pengaturan ini. Anda tidak bisa salah membaca beberapa arsip milis Nanog jika Anda masih ragu atau butuh bantuan lebih lanjut.

Ini akan membantu Anda memulai dengan cepat di Debian: Tutorial Quagga Mudah

Jonathan Ross
sumber
Manfaat lain dari menjalankan Linux adalah Anda dapat dengan mudah membentuk traffic Anda dengan tckurva pembelajaran awal setelah tc. Namun satu kata peringatan adalah menjalankan IPtables pada kotak penerusan Anda secara signifikan mengurangi kinerja kernel selama serangan dari apa yang kami lihat.
Jonathan Ross
Saya ingin mendengar lebih banyak tentang masalah motherboard <-> nic. Juga, berapa banyak pps yang berhasil Anda tangani?
Joris
Pada ukuran paket rata-rata kami (sebagian besar HTTP, SMTP, DNS) kami harus mengelola 850Mbps dupleks. DDoS adalah 120.000 pps paket UDP 64 byte. Efeknya diabaikan pada kinerja, tetapi kami tidak mendorong banyak lalu lintas saat melanda.
Jonathan Ross
Kami memilih motherboard dengan dua slot PCIe cepat yang tidak terhubung sehingga buffer tidak mengalami hambatan. Saya lupa terminologi karena sudah lama sejak kami membeli perangkat keras. Satu untuk keluar, satu untuk masuk. Cukup standar hari ini.
Jonathan Ross
5

Keduanya adalah platform yang mampu. Jalankan sesuatu yang solid seperti Debian atau Centos, pada perangkat keras tingkat server yang baik. Pastikan Anda menentukan server dengan Intel Server NIC, mereka jauh lebih baik daripada Broadcomm untuk stabilitas.

Sejauh BSD vs Linux, itu mudah .. Pilih mana saja yang paling kompeten dengannya.

Tom O'Connor
sumber
5
+1, FreeBSD biasanya bisa menghilangkan Linux dalam benchmark, tetapi perbedaannya (jika ada) sangat kecil sehingga Anda cukup memilih platform yang paling nyaman bagi Anda.
Chris S
3

Saya telah melihat Celerons tua menangani 80-90Mb / s lalu lintas normal pada pengaturan Debian / Quagga dengan 3 umpan penuh tanpa berkeringat. Namun, kualifikasi ada lalu lintas "normal", terutama HTTP / SMTP dan DNS. Mesin yang sama telah jatuh datar di wajah mereka selama situasi DDOS di mana Paket Per Detik pergi ke sejumlah paket UDP terutama konyol.

Biasanya bukan bandwidth yang biasanya Anda khawatirkan, tetapi PPS yang akan Anda tangani.

Sayangnya, saya tidak dapat membantu Anda di Linux VS BSD untuk merutekan bagian kinerja dari pertanyaan, tetapi seharusnya tidak membuat perbedaan pada perangkat keras komoditas saat ini untuk beberapa koneksi 100Mb.

Niall Donegan
sumber
2
"kinerja routing" tidak. Sebenarnya itu adalah "kinerja penerusan".
poige
Polisi yang adil, guv! :)
Niall Donegan
0

Quagga (Zebra) berfungsi di Linux dan BSD. Kinerja jaringan Linux tidak lebih buruk daripada BSD. Jadi, Anda harus mempertimbangkan kriteria tambahan untuk memilih platform.

poige
sumber
0

Titik data:

Saya menjalankan sepasang server Dell R200 di Fedora, salah satunya telah melihat puncak 500 Mbps dengan NAT, iptables, LVS, quagga, bgpd melalui tautan 1GigE. Pada 100Mbps, perangkat keras modern apa pun seharusnya berfungsi dengan baik. Untuk menangani tabel penuh, Anda harus dapat berkonsultasi dengan persyaratan RAM yang sesuai dari Cisco atau Juniper dan pergi dari sana. 1 GB RAM harus cukup bahkan tanpa penyaringan. Router saya berjalan dengan konfigurasi 2 GB tetapi saya hanya mengambil rute default.

dmourati
sumber