Freebsd หรือ Linux ในฐานะเราเตอร์ BGP มากกว่า 100mbps


10

ฉันกำลังสร้างเซิร์ฟเวอร์เพื่อทำหน้าที่เป็นเราเตอร์ชายแดน BGP สำหรับอัปลิงค์ 100mbps ของฉันใน ISP

ฉันต้องการคุณสมบัติเหล่านี้:

1) การ peering BGP คู่ / การกำหนดเส้นทาง (อย่างน้อย 100Mbps อาจมากกว่า) 2) ฟีด BGP สำหรับอินเทอร์เน็ตเต็มรูปแบบ 3) ฟังก์ชัน ACL พื้นฐานบางอย่าง

ฮาร์ดแวร์คือ L3426 / 8G ram NIC จะเป็นพอร์ตคู่ในตัวของ Broadcom 5716

ฉันเคยทำงานกับ Linux มาก่อนและดูเหมือนว่าจะสามารถจัดการได้ 100mbps แต่ฉันได้ยินมาว่า FreeBSD นั้นเร็วกว่าในการทำเครือข่าย ฉันควรใช้อันไหนดี และเรามีหมายเลขมาตรฐานประสิทธิภาพบางส่วนหรือไม่

ไชโย


1
เหตุผลใดที่คุณไม่ได้ใช้เราเตอร์ cisco bgp ขออภัย isp ส่วนใหญ่ที่ให้ลูกค้าเรียกใช้ bgp ระบุข้อกำหนดนี้สำหรับ 'ความเข้ากันได้'
The Unix Janitor

9
Em ครั้งแรกที่ฉันได้ยินข้อ จำกัด นั้นและฉันทำงานบนเครือข่ายที่เริ่มต้นด้วย Quagga / Debian บน Dell PowerEdge สูงสุดถึง Juniper และชุด Cisco ตอนนี้ จัดการกับผู้ให้บริการขนส่งและการแลกเปลี่ยนต่าง ๆ มากมาย หาก ISP กำลังวางข้อ จำกัด ดังกล่าวให้แทนที่ด้วยคนที่มีความสามารถ
Niall Donegan

1
หมายเหตุด้านข้างเนื่องจากเป็นเราเตอร์ฉันขอแนะนำให้ใส่การ์ด NIC ไว้ในนั้นเป็นข้อมูลสำรอง หากออนบอร์ดผิดพลาดคุณกำลังจะเปลี่ยน mobo แทนการแลกเปลี่ยนการ์ด PCIe ที่รวดเร็ว
Chris S

1
คุณกำลังเสียเงิน กล่องราคาถูกจาก Mikrotik (ตัวอย่างเช่น RougerBoard 1100AH) สามารถจัดการกับมันได้ในราคาที่ต่ำกว่าและใช้ลินุกซ์
TomTom

หลายคนแนะนำให้ใช้นิคเฉพาะและไม่ใช่ Broadcom ที่อยู่บนเครื่อง บล็อก Serverfault มีโพสต์ที่น่าสนใจสองสามข้อในเรื่องนี้
ollybee

คำตอบ:


11

เราได้ทำสิ่งนี้เพื่อโครงสร้างพื้นฐานที่สำคัญมาหลายปีแล้ว เราใช้ฟีด BGP upstream สามรายการผ่าน Quagga bgpdและใช้ RAM ขนาดใหญ่ถึง 658MB เพื่อเรียกใช้ทั้งระบบ สำหรับจุดประสงค์นี้ Debian นั้นแข็งแกร่งกว่าระบบปฏิบัติการอื่น ๆ ในประสบการณ์ของเรา (และยังต้องการการปรับปรุงความปลอดภัยน้อยกว่าด้วยการติดตั้งขั้นต่ำทำให้การรีบูตเครื่องน้อยกว่าระบบปฏิบัติการอื่น ๆ ที่เราได้ลองใช้) เราใช้Kspliceเพื่อให้เราทำการบู๊ตเพื่อการอัพเดทแพ็คเกจที่สำคัญเท่านั้น ไม่ต้องกังวลเกี่ยวกับความเข้ากันได้กับผู้ให้บริการรายอื่นใน ISP ของคุณ ... RIPE RIR ใช้ Quagga!

น่าแปลกใจที่ฮาร์ดแวร์ไม่สำคัญขนาดนั้นมันคือทั้งหมดที่เกี่ยวกับนิคส์ ซีพียูเร็วโดยทั่วไปหมายถึงคำนำหน้าโหลดเร็วขึ้นถ้าคุณรีเฟรชเซสชัน (สมมติว่าคุณมี RAM GB และโหลดเข้าสู่หน่วยความจำ) ดังนั้น Quad Core ระดับเริ่มต้นจึงมีความหนาแน่นสูงกว่าปกติ เราใช้เวลานานในการลองใช้ NIC ที่แตกต่างกันและจากประสบการณ์ของเราที่ดีที่สุดคือการ์ด Intel ที่ใช้igbไดรเวอร์ (ประมาณ£ 100 / NIC เราใช้: 82576, ET Dual Port Server Adapter) ด้วยe1000วินาทีต่อมา มีข้อควรพิจารณาบางประการเช่นวิธีการที่ผู้ดูแลระบบและผู้ดูแลระบบของคุณออกไปพูดคุยกับเมนบอร์ด แต่สำหรับ 250Mbps ย่อยคุณอาจไม่สังเกตเห็นถ้าคุณใช้ NIC เหล่านี้ เราได้ต่อต้านการโจมตี UDP DDoS ที่ซับซ้อนโดยใช้สถาปัตยกรรมนี้ (มันใช้แพ็กเก็ต UDP ที่น้อยที่สุดซึ่งเราเตอร์พยายามต่อสู้เพื่อจัดการ) จำไว้ว่าความสามารถในการประมวลผลแพ็กเก็ตจำนวนสูงสุดคือสิ่งที่คุณกังวลมากที่สุดและไม่จำเป็นต้องใช้ปริมาณงานที่วัดเป็น Mbps ด้วยเงินเพียงเล็กน้อยเราได้ระบุเราเตอร์ Gigabit ที่มีหลายรุ่นที่สามารถจัดการแพ็คเก็ตอินเทอร์เน็ตขนาดมาตรฐานเช่นการทำงานปกติสูงสุด 850Mbps!

ฉันเริ่มต้นด้วย Cisco (การกำหนดbgpdค่าใกล้เคียงกันมากดังนั้นถ้าคุณมีประสบการณ์กับชุด Cisco มันเป็นการเปลี่ยนแปลงอย่างรวดเร็ว) แต่เนื่องจาก Linux นั้นอ่อนมาก (เช่นสามารถเพิ่มสคริปต์ทรัพยากรน้อยลงในเราเตอร์ของคุณได้ เพื่อช่วยในการรายงานและผู้ดูแลระบบ) IMHO ทำให้มีประสิทธิภาพอย่างไม่น่าเชื่อ (และ underrated) สำหรับการตั้งค่าประเภทนี้ คุณไม่สามารถไปไกลอย่างผิด ๆ ในการอ่านจดหมายเหตุ Nanog รายชื่อผู้รับจดหมายหากคุณยังมีข้อสงสัยหรือต้องการความช่วยเหลือเพิ่มเติม

สิ่งนี้จะช่วยให้คุณเริ่มต้นได้อย่างรวดเร็วใน Debian: Easy Quagga Tutorial


ประโยชน์อีกประการของการใช้งานลีนุกซ์คือคุณสามารถกำหนดปริมาณข้อมูลของคุณได้อย่างง่ายดายด้วยtcโค้งการเรียนรู้เริ่มต้นของ tc อย่างไรก็ตามคำเตือนคือการใช้ IPtables บนกล่องส่งต่อของคุณจะลดประสิทธิภาพของเคอร์เนลระหว่างการโจมตีจากสิ่งที่เราเห็น
Jonathan Ross

ฉันชอบที่จะได้ยินมากขึ้นเกี่ยวกับปัญหาเมนบอร์ด nic <-> นอกจากนี้คุณสามารถจัดการ pps ได้กี่ครั้ง?
Joris

โดยเฉลี่ยแล้วขนาดแพ็คเก็ตของเรา (HTTP, SMTP, DNS เป็นส่วนใหญ่) เราควรจัดการดูเพล็กซ์ 850Mbps DDoS คือ 120,000 pps ของแพ็คเก็ต UDP 64 ไบต์ เอฟเฟกต์นั้นไม่สามารถแสดงได้อย่างมีประสิทธิภาพ แต่เราไม่ได้เพิ่มการรับส่งข้อมูลจำนวนมากเมื่อถูกโจมตี
Jonathan Ross

เราเลือกใช้มาเธอร์บอร์ดที่มีช่องเสียบ PCIe สองช่องที่ไม่ได้เชื่อมต่ออย่างรวดเร็วดังนั้นบัฟเฟอร์จึงไม่เกิดปัญหาคอขวด ฉันลืมคำศัพท์เพราะเราซื้อฮาร์ดแวร์มาระยะหนึ่งแล้ว หนึ่งเพื่อออกไปข้างนอกหนึ่งสำหรับการเข้า ค่อนข้างเป็นมาตรฐานในทุกวันนี้
Jonathan Ross

5

ทั้งคู่เป็นแพลตฟอร์มที่มีความสามารถ ใช้งานบางอย่างที่มั่นคงเช่น Debian หรือ Centos บนฮาร์ดแวร์ระดับเซิร์ฟเวอร์ที่ดี ตรวจสอบให้แน่ใจว่าคุณระบุเซิร์ฟเวอร์ด้วย Intel Server NICs ดีกว่า Broadcomm เพื่อความเสถียร

เท่าที่ BSD vs Linux มันง่าย .. เลือกว่าคุณเก่งกาจที่สุดกับอะไร


5
+1, FreeBSD สามารถใช้ Linux เป็นเกณฑ์มาตรฐานได้ แต่ความแตกต่าง (ถ้ามี) นั้นเล็กมากจนคุณควรเลือกแพลตฟอร์มที่คุณสะดวกที่สุด
Chris S

3

ฉันเคยเห็น Celerons รุ่นเก่าที่จัดการปริมาณการใช้งานปกติ 80-90Mb / s ในการตั้งค่า Debian / Quagga ด้วยฟีดเต็มรูปแบบ 3 รายการโดยไม่ต้องเหนื่อย อย่างไรก็ตามตัวระบุมีการรับส่งข้อมูล "ปกติ" ส่วนใหญ่เป็น HTTP / SMTP และ DNS เครื่องจักรชนิดเดียวกันได้ตกลงบนใบหน้าของพวกเขาในระหว่างสถานการณ์ DDOS ที่แพ็คเก็ตต่อวินาทีไปจำนวนไร้สาระของแพ็คเก็ต UDP ส่วนใหญ่

ปกติแล้วไม่ใช่แบนด์วิดท์ที่คุณต้องกังวล แต่ PPS ที่คุณจะจัดการ

น่าเสียดายที่ฉันไม่สามารถช่วยคุณใน Linux VS BSD สำหรับการกำหนดเส้นทางส่วนประสิทธิภาพของคำถาม แต่ไม่ควรสร้างความแตกต่างใด ๆ กับฮาร์ดแวร์ชุดข้อมูลปัจจุบันสำหรับการเชื่อมต่อ 100Mb สองสามตัว


2
"ประสิทธิภาพการกำหนดเส้นทาง" ไม่ใช่ มันคือ "ประสิทธิภาพการส่งต่อ" ที่จริงแล้ว
poige

ตำรวจยุติธรรม guv! :)
Niall Donegan

0

Quagga (Zebra) ทำงานได้ทั้งบน Linux และ BSD ประสิทธิภาพเครือข่ายของ Linux นั้นไม่เลวร้ายไปกว่า BSD ดังนั้นคุณเหลือที่จะต้องพิจารณาเกณฑ์เพิ่มเติมเพื่อเลือกแพลตฟอร์ม


0

จุดข้อมูล:

ฉันใช้เซิร์ฟเวอร์ Dell R200 คู่หนึ่งบน Fedora ซึ่งหนึ่งในนั้นมีความเร็วสูงสุด 500 Mbps ด้วย NAT, iptables, LVS, quagga, bgpd ผ่านลิงก์ 1GigE ที่ 100Mbps ฮาร์ดแวร์สมัยใหม่ควรทำอะไรก็ได้ สำหรับการจัดการตารางเต็มคุณควรจะสามารถศึกษาข้อกำหนดของ RAM ที่สอดคล้องกันจาก Cisco หรือ Juniper และไปจากที่นั่น RAM 1 GB ควรเพียงพอแม้ไม่มีการกรอง เราเตอร์ของฉันทำงานด้วยการกำหนดค่า 2 GB แต่ฉันใช้เส้นทางเริ่มต้นเท่านั้น

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.