Flex Gate Highperformance Heterogeneous Gateway in Data Centers

  • Slides: 28
Download presentation
Flex. Gate: High-performance Heterogeneous Gateway in Data Centers Kun Qian, Sai Ma, Mao Miao,

Flex. Gate: High-performance Heterogeneous Gateway in Data Centers Kun Qian, Sai Ma, Mao Miao, Jianyuan Lu, Tong Zhang, Peilong Wang, Chenghao Sun, Fengyuan Ren

Cloud Data Centers Britain Northern China Germany Shang Hai US West US East Hang

Cloud Data Centers Britain Northern China Germany Shang Hai US West US East Hang Zhou Middle East Japan India Singapore Southern China Regions Indonesia Australia Hong Kong 19 Malaysia 110+ Access points 1500+ Edge points

Data Center Gateway Data center gateway needs to support: • Various functions NAT, Vx.

Data Center Gateway Data center gateway needs to support: • Various functions NAT, Vx. LAN encap. /decap. ACL Monitoring, Metering, Qo. S mapping

Data Center Gateway Data center gateway needs to support: • Various functions • High

Data Center Gateway Data center gateway needs to support: • Various functions • High throughput

Data Center Gateway Data center gateway needs to support: • Various functions • High

Data Center Gateway Data center gateway needs to support: • Various functions • High throughput • Large number of flows

Software Gateway Cluster Supporting traffic at terabits per second needs dozens of servers. •

Software Gateway Cluster Supporting traffic at terabits per second needs dozens of servers. • High expenditure • Hard for operation and maintenance

Programmable Hardware Supporting flexible packet processing at up to 6. 5 Tbps. Limited processing

Programmable Hardware Supporting flexible packet processing at up to 6. 5 Tbps. Limited processing and storage resources: • • Up to 12/32 match-action stages in each pipeline. Each physical stage contains up to 1. 5 MB SRAM and 160 KB TCAM.

Heterogeneous Gateway Software gateway and programmable hardware complementary.

Heterogeneous Gateway Software gateway and programmable hardware complementary.

Observation 1. Functions serve different proportions of traffic Fundamental functions services (e. g. ,

Observation 1. Functions serve different proportions of traffic Fundamental functions services (e. g. , Vx. LAN encap. /decap. ) match all incoming traffic. Widely-used functions (e. g. , IP NAT) handle a large percentage of traffic (~99%). Some functions only serve small portions of traffic. Port NAT and SNAT serve 0. 11% and 0. 83% of traffic respectively.

Observation 2. Pareto principle in rule matching In each function, different rules serve different

Observation 2. Pareto principle in rule matching In each function, different rules serve different percentage of traffic. 5% of rules serve more than 90% of traffic.

Basic idea 1. Functions serve different proportions of traffic. Arranging frequently-used functions in hardware

Basic idea 1. Functions serve different proportions of traffic. Arranging frequently-used functions in hardware 2. Pareto principle in rule matching. Placing hot rules in hardware

Flex. Gate

Flex. Gate

Flex. Gate

Flex. Gate

Pipeline Load Balance Load balancer in ingress pipeline. All functions are implemented in the

Pipeline Load Balance Load balancer in ingress pipeline. All functions are implemented in the egress pipeline.

Pipeline Load Balance How to balance load to different pipelines? Round-robin load balance? Semantic

Pipeline Load Balance How to balance load to different pipelines? Round-robin load balance? Semantic inconsistency 5 -tuple load balance? Waste storage resource

e. IP/v. IP Inbound Outbound Succeeding matchings are mostly based on e. IP/v. IP.

e. IP/v. IP Inbound Outbound Succeeding matchings are mostly based on e. IP/v. IP.

e. IP/v. IP Load Balance Inbound packets are hashed to different pipelines according to

e. IP/v. IP Load Balance Inbound packets are hashed to different pipelines according to the destination IP field (e. IP). Outbound packets are hashed to different pipelines according to the source IP field in Vx. LAN header (v. IP). So workload is balanced and storage resource in all pipelines can be maximally utilized.

Packet Transfer

Packet Transfer

Packet Transfer 2

Packet Transfer 2

Scalability Programmable hardware and software cluster are decoupled and exchange data through network. So

Scalability Programmable hardware and software cluster are decoupled and exchange data through network. So they can employ independent scale-up mechanisms. Hardware: Serial extension Supporting complex functions. Parallel extension Supporting higher throughput. Software: Deploying more servers.

Evaluation Programmable hardware: Tofino DFN-T 10 -032 D Software gateway cluster: 4 commodity servers.

Evaluation Programmable hardware: Tofino DFN-T 10 -032 D Software gateway cluster: 4 commodity servers. 12 physical stages. Each stage contains 1. 28 MB SRAM 67. 6 KB TCAM 1 GHz clock 3. 2 Tbps throughput Traffic: Average throughput: 1. 29 Tbps Peak throughput: 1. 53 Tbps 32 2. 5 GHz cores. 256 GB memory.

Evaluation

Evaluation

Evaluation Pipeline load balance

Evaluation Pipeline load balance

Evaluation Transfer load balance

Evaluation Transfer load balance

Evaluation Overall latency

Evaluation Overall latency

Conclusion Flex. Gate: Programmable hardware + software cluster 1. Offloading widely-used functions in hardware.

Conclusion Flex. Gate: Programmable hardware + software cluster 1. Offloading widely-used functions in hardware. 2. Offloading hot rules in hardware. e. IP/v. IP pipeline load balance to split workload. Programmable hardware and software cluster can employ independent scale-up mechanisms.

Thanks !

Thanks !

Q&A

Q&A