About the talk
Programmable switches have been touted as an attractive alternative for deploying network functions (NFs) such as network address translators (NATs), load balancers, and firewalls. However, their limited memory capacity has been a major stumbling block that has stymied their adoption for supporting state-intensive NFs such as cloud-scale NATs and load balancers that maintain millions of flow-table entries. In this paper, we explore a new approach that leverages DRAM on servers available in typical NFV clusters. Our new system architecture, called TEA (Table Extension Architecture), provides a virtual table abstraction that allows NFs on programmable switches to look up large virtual tables built on external DRAM. Our approach enables switch ASICs to access external DRAM purely in the data plane without involving CPUs on servers. We address key design and implementation challenges in realizing this idea. We demonstrate its feasibility and practicality with our implementation on a Tofino-based programmable switch. Our evaluation shows that NFs built with TEA can look up table entries on external DRAM with low and predictable latency (1.8-2.2 μs) and the lookup throughput can be linearly scaled with additional servers (138 million lookups per seconds with 8 servers).
00:20 Programmable switches for deploying NFS
00:45 Problem: serving demanding workloads
02:10 TEA in action
02:56 Enabling single round-trip lookups
03:53 Efficiently utilizing multiple servers
06:16 Does TEA provide scalable throughput?
07:08 Can TEA support other applications beyond NFS?
07:56 What is the bandwidth overhead of using TEA?
Hi. Bri want. My name is stage of Kim. I'm a first-year PhD student in Carnegie Mellon and just talk. I'm going to reach Naples to Beale Stadium, this evening for functions and programmable switches work with my collaborator said in televised dancing, my advisors to see in you To give you a context of this work recently, programmable ct7 getting a lot of attention in both industry and research Community as a new way of the phone with their function since they provide predictable high performance at lower cost, compared to traditional approaches such as using Standalone.
You about devices are commodity servers. They become an attractive platform for various functions. Hartford wheelchair of that sweet face that their functions and not serve, very demanding trip and work clothes, retail therapy per second, traffic rates. Since a singer programmable switch can process high-traffic made. It seems promising for such a workload meeting message through flowscape for the large number of clothes. And the key reason for this is limited at Sam's Place. On the switch, Witch is a megabyte Princess dream is generally
very expensive, just getting borax and cannot be a good solution. Instead in this work, we try to tackle this problem by answering his question Can we leverage larger and cheaper? External appearance at the lady's is near to switch 80. Turkish question, we developed table extension architectural. Key for programmable switches. By leveraging existing resources in the network in a flexible manner. He provides its scalable solution at lower cost at a high-level keep provide a
virtual so that they can store a large look up, people to external and place a power of its own on cheap aspirin. Wildest idea of using external things to switch racing used to look up an entry for a given Chi-Chi. One. The cheapest Casey fuerst needs a capability of accessing external RAM which is normally not supported by the AC, we need to have a mechanism to provide slow and predictable latency. Once the AC can access external heater, I'm the next step is to locate an access correct cable entry for a given key. This is challenging because
if so we need to buy nothing group Dramatics. Hello me to single vmss look up. He must be able to use the retreat. A plan tree for processing capacity. And the Kiki challenge here is how to defer on the a package responding to the look up without calling the entire pipeline or buffering at the switch, which can consume an excessive amount of resources. And the last challenge is about using working for Surfers, including how to access Lowe's across rivers, and how to deal with Starburst. dress
rehearsals firework, old found his leaner fruity more BLT to device and efficient data structure, called Heath hateful, it allows Herself by offloading that table store to keep people being able asynchronous. Thank you for assisting me in for a small cheap cash to support higher throughput and Ferb station of multiple servers. by combining these ideas, he offers a virtual How to use Chi developers Implement their nsvt API in C4 and then they can compile a Twitter on modified fee for composite which gives them a
binary. At one time, he allows ns2xx look up cables from either on to a stream or external vram. FIFA 98 and run. Time is Marshalls in P4 and using the API speed when I can only for an FC including math and faithful firewall. Fidelity using a test consisting of a toffee, no base programmable, switch in a number of servers with our gaming needs. Let me show you a few performance Reserve silky. The first evaluation question is, does he provide low and predictable? Look, up, latency to
answer this. Reminder to look up latency up in April with different sizes and compare in size and y axis. This research shows that around 2 or 6. How to hook up your phone to look up with a different number of servers in different clothes size which can affect once, you cash it rained here, a number of Freedom servers and y-axis sister at roofers in Mike Williams. Look up per second. You can see here that the traffic can be scaled fighting Wars servers or. So we see that on cheap cash, actually helps improve the through through a lot. Now, let me
close by answering a few frequently asked questions about Keith. The first question is, do we need specialized Hardware to use? Chi No base programmable switch and some servers equipped with arguments without any hardware changes. In our first man, to be your snakes from a gallon of next question is, can he support other applications Beyond never function as a basically, any applications using large key value lookup tables can benefit from people's to external heater on
And the tea affect other work Wilson servers. If you fancy Brooke Lawson servers to avoid impacting other network traffic. He can be configured to use a portion of the program and prioritize other regular traffic. And what about the bandwidth? Overhead of using chi chi, generates one argument, right? And one argument with request for to look up, his interest is the bandwidth consumption office, which part time for that particular packet without affecting the rest of packets. Another commonly asked question
is why he does not use available on a switch? So there are two places where you can find available on a switch. The first one is in the switch concert playing, where you can find a few vegan options, which is on Board of Trade, theorem, which provides some of them as an extension of the AC. Hi works. Are we found it both options suffers from limited access bandwidth and memory size because they are fixed at the hardware design time and it's hard to be scaled out. The second option requires to
add additional components to the cheap. So I are sitting preseason opener cost. So to conclude is talk limited on C memory has been a roadblock for adopting switch. Bassnectar function, especially 40 Mandy Moore close. To solve this problem. Be bilkey it provides a virtual tape last section for enes and realized it with four key ideas. And or evaluation shows that it provides. Slow and predictable, look up plates, and see if it's available through food for various Network function with that. I'm happy to take
any questions. Thank you. Okay, thank you for a very nice talk. I see lots of questions on slacker ready. Again, if you want, you can put them onto in a, if you can unmute yourself. That be great. So there's actually a batch of questions from Andrew Lloyd, Webber. Harvard Praveen, Kumar at Cornell. And Jackie cows are at Johns Hopkins. In this is around the semantics of packet processing is it serializable and also with the semantics when you have updates
to the offload and state so I think you're basically focus on the reading sensitive sensitive like that and no tolerance her and firewall. So I hopped a train is not the time and they are basically this evening search any song by the control plane. So that there's no like ate a related issue and it's for does redemption statement or functions and for a serializability Better to make an elaborate, the question or what is the consistency guarantees? If there's a sequence of packets that are that are accessing
the CD-ROM State? What what is the, what consistency guarantees? If I need to get this request, does not affect the consistency of Memphis win packets. All right, so in the presence of Wright's, it's something like eventual or Queen Mary asks, how do you generate the Artie made requests or using the traffic generator inside a programmable switch? And then I'll just a concussion. 15 t e. R t in Rocky Pirkle, Rd and responses are in Thursday even if rain. So we can craft are getting requests from Ada
County Man. By pretending our team, Heather's to the incoming packets, and weekends are subpar still responds stand by the neck. So yeah, please refer to our paper for more details and then I'm more than happy to discuss more on slack, and crd me Heather's to make it as a request. Okay, one more question. Also, he's curious about the economic factors so are you expensive especially if you need? A lot of them like eight of them. So you have an idea of kind of What kinds of applications, just kind
of which it would be useful for from a cost perspective. Cost perspective. Currently we are targeting deploying these. He kind of is a key idea to NFP cluster. We are, there are already plenty of Sir birds in. Probably like our gaming, Nick star on them on those servers, but Yeah, for the Target and currently like many data centers in their server, so we are kin are still deployed. A key on switches into a computer as well. Okay, I'll take one more question from in a cornfield Simpson at u-dub for the RDMA, read, and write operations. The server-side typically has to register memory regions and
convey. The virtual addresses to the client set up between the servers and the, and the switches are set up. And are there any instances where you need isolation? Pick that up a song by. I mean, through the control panel between the switch control, plane in the RDMA, onion the server running on the server. So when you first initiate any supplies is E15 able system playing in but the amount of you'll talk to each other through. For example, some TCP Auto
Grand connection to set up those like memory reason and exchange the virtual memory address and then I populate a printer memory addressing for May. into the airplane and it's wrong time, but data plan can use that information to locate and retrieve the correct table entry, or given Keys like a flight to Okay, thank you for your presentation. Very interesting talk. So we have some questions for you about, because now you have to look on the table from the server. So what is the typical? I can see between the switch and the Cerberus compared to a local. The top
with your click, was some hint about that so far the latency already had when you access the external cable on a server. Speed run around like to microseconds, protective agency perspective, a year, like answering latency will increase about like to microseconds us to like a local. Look up, please ask Alexa a nanosecond. Yeah, because like like, if you consider something like a wide area is scenario, we are are 50 states. Clearly some like really sick and rainy all of you
sound like a few, just a few microseconds. Decency would be up there, I'm in the suburbs. So how do you determine what kind of stats should be a flower to the server so if is it possible to to say, okay maybe some occasionally are not so sensitive to latency, we can upload to the server application is more sensitive to a license. So do you have any mechanics in to determine how to upload the state in the current design? We cash the frequently accessed N3on on shift pattern
cache in traffic. Eyes is a cute so that I can like I can be served by the extreme Catch either like other applications using key. Then we may need to come up with save a like a more sophisticated like a shin mechanism other than just relying on these cuties. All the question is in your paper. Have you evaluated? What's the cost? If you want to migrate to the table for $10 now? You so it's a in cash, be in a server, but you want to switch the table. So what is it possible in any additional cost?
For example, Junito recompile the switch or is it possible to do that if you want to switch the table from the chest to the server? And from the table from December to the cash. So you can, we change the cash and $0.03 in the cash at prime time without recompile link the switch logic. Is it required to be compelling or calling or be? Considering This Is Love. Large plant trees, like, tens of thousands of people in authority. Yeah, there is one question about you mention to rent, a tiller switch. So back on your funny with Vonage or is now
at number, is to the switches call efficient and any difficulty we could we met with my face. I mean, for the vendors to do you see any vendors, they planning to add more memories in the local switch example. I used in the last a slight, I mean the ones like before. Fine. Let me know if you are aware of one peach Panther cheap vendor of which provide like the extension at 8, to get extension from from my hour and understanding, it's a used 87 limited in our soap.
Okay, let's do one more question. Final one. So, Yeah, someone asking, can we extend T to realize a fake shared memory pool using a stream of all the switches? Basically they're asking whether the switch is supposed to share their number. Instead of using something external server. You already think respect you for sitting idea the other species. So
Buy this talk
Buy this video
Our other topics
With ConferenceCast.tv, you get access to our library of the world's best conference talks.