Y. Weinsberg, E. Pavlov, Y. Amir, G. Gát, S. Wulff
{"title":"Putting it on the NIC: A case study on application offloading to a network interface card (NIC)","authors":"Y. Weinsberg, E. Pavlov, Y. Amir, G. Gát, S. Wulff","doi":"10.1109/CCNC.2006.1593191","DOIUrl":null,"url":null,"abstract":"We have implemented a firewall application on a Network Interface Card (NIC). We have tested the CPU utilization and the bandwidth in a variety of scenarios. The benefits of offloading code are most pronounced when rejecting packets. Our results suggest significant benefits of offloading applications and in particular firewall logic to a NIC. I. INTRODUCTION There are many communication applications that act on every incoming packet. Offloading such applications to the network interface card (NIC) has many potential advantages. Utilizing the onboard computational power of the NIC can reduce the demands put on the CPU. If the NIC can process incoming information it can avoid costly interrupts to the CPU. In addition, the NIC can serve as a gatekeeper thus avoiding potential threats to the CPU. Furthermore, applications on a NIC can be built such that they are system and OS indepen- dent. An application of particular promise for offloading is a firewall application. Since a firewall is an application that filters packets by a user defined security policy, earlier filtering (especially discarding packets) has a potential for significant improvements in performance. A firewall application on a NIC also has the additional advantage that it is harder for an adversary to modify than a software application running at the host. We have designed and implemented a firewall application which we call SCIRON (Secure-Communication IntegRated Over NIC) on a NIC. The system consists of three elements: The firewall logic, a management console and a policy builder. This paper presents SCIRON, and shows that offloading full applications has significant advantages and market potential more so than TCP offload engines (9) (TOEs) or protocol specific offloaded extensions.","PeriodicalId":194551,"journal":{"name":"CCNC 2006. 2006 3rd IEEE Consumer Communications and Networking Conference, 2006.","volume":"4 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2006-02-13","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"6","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"CCNC 2006. 2006 3rd IEEE Consumer Communications and Networking Conference, 2006.","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/CCNC.2006.1593191","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 6
Abstract
We have implemented a firewall application on a Network Interface Card (NIC). We have tested the CPU utilization and the bandwidth in a variety of scenarios. The benefits of offloading code are most pronounced when rejecting packets. Our results suggest significant benefits of offloading applications and in particular firewall logic to a NIC. I. INTRODUCTION There are many communication applications that act on every incoming packet. Offloading such applications to the network interface card (NIC) has many potential advantages. Utilizing the onboard computational power of the NIC can reduce the demands put on the CPU. If the NIC can process incoming information it can avoid costly interrupts to the CPU. In addition, the NIC can serve as a gatekeeper thus avoiding potential threats to the CPU. Furthermore, applications on a NIC can be built such that they are system and OS indepen- dent. An application of particular promise for offloading is a firewall application. Since a firewall is an application that filters packets by a user defined security policy, earlier filtering (especially discarding packets) has a potential for significant improvements in performance. A firewall application on a NIC also has the additional advantage that it is harder for an adversary to modify than a software application running at the host. We have designed and implemented a firewall application which we call SCIRON (Secure-Communication IntegRated Over NIC) on a NIC. The system consists of three elements: The firewall logic, a management console and a policy builder. This paper presents SCIRON, and shows that offloading full applications has significant advantages and market potential more so than TCP offload engines (9) (TOEs) or protocol specific offloaded extensions.
我们已经在网卡上实现了一个防火墙应用程序。我们测试了各种场景下的CPU利用率和带宽。卸载代码的好处在拒绝数据包时最为明显。我们的结果表明,将应用程序(特别是防火墙逻辑)卸载到网卡上会带来显著的好处。有许多通信应用程序对每个传入包都起作用。将这样的应用程序卸载到网络接口卡(NIC)上有许多潜在的优点。利用网卡的板载计算能力可以减少对CPU的需求。如果网卡可以处理传入的信息,就可以避免代价高昂的CPU中断。此外,网卡可以作为一个看门人,从而避免对CPU的潜在威胁。此外,可以在网卡上构建独立于系统和操作系统的应用程序。一个特别承诺卸载的应用程序是防火墙应用程序。由于防火墙是一个根据用户定义的安全策略过滤数据包的应用程序,因此早期过滤(特别是丢弃数据包)可能会显著提高性能。网卡上的防火墙应用程序还有一个额外的优点,即攻击者比在主机上运行的软件应用程序更难以修改它。我们在网卡上设计并实现了一个防火墙应用程序,我们称之为SCIRON (Secure-Communication IntegRated Over NIC)。该系统由三个元素组成:防火墙逻辑、管理控制台和策略构建器。本文介绍了SCIRON,并表明与TCP卸载引擎(toe)或特定协议的卸载扩展相比,卸载完整应用程序具有显著的优势和市场潜力。