ความสัมพันธ์ TCAM ในสถาปัตยกรรมการสลับฮาร์ดแวร์


10

ฉันคุ้นเคย (ระดับสูง) กับวิธีที่ Ternary Content Addressable Memory ทำงาน แต่ฉันยังสับสนว่า TCAM เกี่ยวข้องกับ ASIC อย่างไรและเมื่อใดที่ส่วนประกอบเหล่านี้อาจรวมกับ CPU เพื่อประสิทธิภาพการสลับที่ดีกว่า ... (โดยเฉพาะเมื่อผู้ขายมักทำการตลาดใช้งาน ของผู้ประกอบการค้า / ซิลิกอนที่กำหนดเองหรือ ASICs ที่กำหนดเองสำหรับผลิตภัณฑ์ใหม่และให้บริการแล้วมันปรากฏสับสน)

ฉันคุ้นเคยกับ Cisco IOS เช่นความสามารถในการแบ่งพื้นที่เพิ่มเติมสำหรับประสิทธิภาพ TCAM สำหรับคุณสมบัติเช่น qos, acl และการค้นหาเส้นทาง ฉันยังเข้าใจถึงคุณสมบัติต่าง ๆ เช่น NAT จะยังคงต้องพึ่งพาการประมวลผลของ CPU แต่ฉันก็ลำบากโดยเฉพาะ

  1. TCAM เป็นส่วนหนึ่งของสถาปัตยกรรมฮาร์ดแวร์เดียวกันเช่นภายในหรือภายนอกกับ ASIC เองหรือไม่
  2. TCAM สามารถปรับขนาดได้ (ตัวอย่างเช่นผู้ผลิตสามารถเพิ่ม TCAM ให้กับแพลตฟอร์มเพื่อเพิ่มประสิทธิภาพและคุณสมบัติที่กำหนดเองได้มากขึ้น) หรือมีข้อ จำกัด ตามสิ่งต่าง ๆ เช่นการใช้พลังงาน
  3. รอบการทำงานของ TCAM และ ASIC นั้นทำงานคู่ขนานกับ CPU เลยหรือไม่สำหรับคุณสมบัติเช่น NAT หรือฉันควรคิดว่ามันเป็นสิ่งที่เป็นอิสระหรือไม่?

คำตอบ:


14

TCAMเป็นหน่วยความจำประเภทหนึ่งซึ่งใช้ทรานซิสเตอร์ 10-12 ตัวในการจัดเก็บบิตเดียว จากการเปรียบเทียบ Static RAM ( SRAM ) ใช้เวลาเพียง 6 ทรานซิสเตอร์ในการจัดเก็บบิตเดียวและ Dynamic RAM ( DRAM ) ใช้เวลาหนึ่งทรานซิสเตอร์และตัวเก็บประจุ ความทรงจำประเภทต่าง ๆ เหล่านี้สามารถเป็นได้ทั้งแบบภายในและภายนอกกับแบบ ASIC เหตุผลหนึ่งที่ทำให้ความทรงจำทั้งหมดบนชิปคือว่าพวกเขาสามารถวิ่งในอัตรานาฬิกาที่สูงกว่าเมื่อภายนอกกับชิป เหตุใดจึงเลือกหน่วยความจำประเภทหนึ่งมากกว่าอีกประเภทหนึ่ง สิ่งนี้จะทำอย่างไรกับลักษณะของหน่วยความจำSRAMสามารถเข้าถึงได้ทุกนาฬิกาDRAMต้องการการรีเฟรชเป็นระยะดังนั้นจึงไม่สามารถเข้าถึงได้ทุกนาฬิกาและTCAMให้ความสามารถในการประกอบการได้

TCAM s สามารถปรับขนาดได้ตราบใดที่คุณมีพื้นที่บนชิปเพื่อยกตัวอย่างหรือยึดหมุดบนแพ็คเกจเพื่อเชื่อมต่อกับชิปภายนอก ปัญหากับTCAMคือพวกเขาใช้เวลา 2 เท่าของพื้นที่SRAMและ 12x พื้นที่ของDRAM มันไม่สมเหตุสมผลที่จะใช้TCAMสำหรับการดำเนินการเดียวกันกับที่คุณสามารถทำได้แบบอัลกอริธึม (HASH, * พยายาม) กับหน่วยความจำประเภทอื่น มันเป็นการแลกเปลี่ยนระหว่างประสิทธิภาพการใช้อัลกอริธึมและพื้นที่บนชิปที่จะเลือก การใช้พลังงานของTCAMเพิ่มขึ้นตามสัดส่วนเชิงเส้นตามขนาด TCAMขนาดใหญ่ส่วนใหญ่(มากกว่า 2M รายการ) ตอนนี้ใช้เทคนิคอัลกอริทึมเพื่อให้สามารถประหยัดพลังงานได้

NAT / PAT เป็นคุณสมบัติที่ซับซ้อนซึ่งโดยทั่วไปต้องใช้ CPU หรือ Network Processor (NPU) เพื่อจัดการกับการแก้ไข โฟลว์แพ็กเก็ตทั่วไปสำหรับ NAT คือแพ็กเก็ตแรกไปที่ CPU / NPU และรายการโฟลว์ถูกติดตั้งในโฟลว์ตารางหรือตาราง ACL พร้อมข้อมูลเกี่ยวกับวิธีการแปลแพ็กเก็ตถัดไปในโฟลว์ มีหลายรูปแบบที่แตกต่างกันของ NAT / PAT และมีหลายวิธีในการเพิ่มประสิทธิภาพแต่ละอันในชิป NAT ที่ง่ายที่สุดกำลังเขียน IP ใหม่และไม่ต้องกังวลหากคุณแบ่งที่อยู่ที่ฝังไว้ในเพย์โหลดไม่ต้องแก้ไขปัญหา

มีอีกรุ่นหนึ่งของ BRKARC-3466 ซึ่งเปิดตัวที่ CiscoLive 2013 ในเมลเบิร์นซึ่งครอบคลุมบางส่วนของแนวคิดระดับสูงที่อยู่เบื้องหลังการค้นหาซึ่งหายไปจากออร์แลนโดปี 2013 หนังสืออ้างอิงที่ดีเกี่ยวกับเรื่องนี้คืออัลกอริทึมเครือข่าย: วิธีการแบบสหวิทยาการในการออกแบบอุปกรณ์เครือข่ายที่รวดเร็วโดย George Varghese


4

ASIC ถือเป็นชิปชนิดหนึ่ง ปกติแล้วมันจะถูกสร้างขึ้นเพื่อทำบางสิ่งบางอย่างในฮาร์ดแวร์ที่มิฉะนั้นจะทำคือซอฟต์แวร์ ดังนั้น Cisco สามารถสร้าง ASIC เพื่อทุกสิ่งที่ต้องการ ขึ้นอยู่กับรุ่นของสวิตช์ที่มี 1 หรือหลาย ASIC TCAM เป็นการออกแบบหน่วยความจำเนื่องจากมักจะพบในระบบแชสซีที่มีการใช้งานเป็น 1 ใน ASIC จำนวนมาก TCAM ใช้สำหรับฟังก์ชั่นการค้นหาเฉพาะเช่น routing (CEF) หรือ ACLS ดังนั้นหาก ASIC ไม่จำเป็นต้องทำการค้นหาแบบนั้นมันจะทำงานแยกต่างหากจาก TCAM ในทางกลับกัน ASICs ที่จัดการ QoS ทำงานด้วยถุงมือกับ TCAM การนำเสนอด้านล่างเกี่ยวกับซิสโก้สดกล่าวถึงบางส่วนของการแลกเปลี่ยนการออกแบบและเป็นสถานที่ที่ดีที่จะได้รับความเข้าใจในสิ่งที่จะเข้าสู่การออกแบบสวิทช์

BRKARC-3466 - สำรวจวิศวกรรมที่อยู่เบื้องหลังการสร้างสวิตช์ (2013 Orlando) ประกอบด้วยรายการของ asics และข้อมูลการออกแบบสวิตช์ทั่วไปมากมาย

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