EDBT 2026 Demo / reviewers in the wild / expert
Haoyu Song 0001
dblp:55/5450-1
· DBLP profile ↗
55ranked-venue papers
15as first author
25since 2021 · last 2026
0000-0001-5377-6628ORCID · conflict
Domains — the database's venue-derived domains; a paper can count in several
Computer networks · 44 · 11 first-author · 22 since 2021Systems, architecture and hardware · 10 · 4 first-author · 3 since 2021Software engineering, systems software and programming languages · 1
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2026 | P4XC: A Unified Compiler Framework for Network Dataplane with Heterogeneous Processors
Zhuang Ling, TianYing Tang, Haoyu Song 0001, Zhikang Chen, Bin Liu 0001 |
IWQoS | 3 |
| 2026 | ALPS: ACK-induced Latency-based Packet Spraying for Multipath Transmission
Jinyu Xiao, Haoyu Song 0001, Zhikang Chen, Ying Wan 0001 |
IWQoS | 2 |
| 2026 | LAPS: Latency Aware Packet Spraying on Unequal-Cost Multi-Path Data Center Networks
Ying Wan 0001, Jinyu Xiao, Haoyu Song 0001, Zhikang Chen, Yunhui Yang, Bin Liu 0001, Tao Huang 0005 |
IEEE Trans. Netw. | 3 |
| 2025 | Hardware-Accelerated Flow Interaction Graph Compression for High-Speed Anomaly Detection
Tong Yun, Yinxin Kuang, Haoyu Song 0001, Zhongyi Gu, Zhuang Ling, Zhiyu Zhang 0012, Chengkang Huang, Yibo Fan, Yang Xu 0010, Jianping Wang 0001, Bin Liu 0001 |
INFOCOM | 3 |
| 2025 | ClubHeap: A High-Speed and Scalable Priority Queue for Programmable Packet Scheduling
Zhikang Chen, Haoyu Song 0001, Zhiyu Zhang 0012, Yang Xu 0010, Bin Liu 0001 |
NSDI | 2 |
| 2025 | DeFlow: Differential flowlet switching for load balancing in datacenter networks
Ying Wan 0001, Haoyu Song 0001, Yi Wang 0004, Ling Qian, Tian Pan 0001 |
Comput. Networks | 2 |
| 2025 | Enhancing Stateful Processing in Programmable Data Planes: Model and Improved ArchitectureabstractStateful data plane network applications are indispensable but their efficiency is hindered by prevalent network device architectures which utilize a Blocking Scheme to maintain state consistency. The Blocking Scheme results in poor throughput and latency performance due to its frequent halts during packet processing. In response to this issue, we propose an innovative Non-Blocking Scheme and construct a theoretical model based on the G/GI/m queueing model. The new scheme leverages the speculative execution method, avoiding unnecessary blocking by taking advantage of the fact that the state update ratio is usually much smaller than the incoming packet rate. In case of speculation failures, the affected packets are reprocessed to guarantee state consistency. We provide an approximate model for the Blocking Scheme, and show that, even with relaxed approximations, the Blocking Scheme still performs worse than the Non-Blocking Scheme. The superior performance of the Non-Blocking Scheme is further corroborated through rigorous simulations, conducted under both realistic and synthetic traces. Based on our model, we propose an enhanced architecture: SN_RAPID (Sequence Number and unidirectional Reverse path-Augmented PIpeline Dataplane), to support speculative execution. The architecture is simpler than the other architectures supporting stateful network functions. Serving as a design foundation for future iterations, we implement a prototype of SN_RAPID in FPGA which can run at line speed, and also develop a software ASIC emulator. The experiments show the superiority of the improved architecture. Hanyi Zhou, Zhikang Chen, Haoyu Song 0001, Bin Liu 0001 |
IEEE Trans. Netw. | 5 |
| 2024 | Empower Programmable Pipeline for Advanced Stateful Packet Processing
Zhikang Chen, Haoyu Song 0001, Yinchao Zhang, Hanyi Zhou, Ruoyu Sun 0009, Wenkuo Dong, Chuwen Zhang, Yang Xu 0010, Bin Liu 0001 |
NSDI | 3 |
| 2024 | OptimusPrime: Unleash Dataplane Programmability through a Transformable ArchitectureabstractNetwork dataplane calls for better programmability. Current programmable network processing chips are based on either pipeline or multi-core Run-To-Completion (RTC) architecture with various trade-offs in flexibility, performance, and cost. The existing attempts to amalgamate the strengths of the two are stilted and inflexible. In this paper, we challenge the status quo by introducing a more fluid and organic programmable chip architecture, OptimusPrime, built from identical hardware blocks. Unlike the conventional static hybrid architecture, OptimusPrime allows each block to be transformed into either a pipeline stage processor or a multi-core RTC processor through software-defined configuration, enabling versatile data plane programming tailored to a wide range of applications (e.g., stateful packet processing and in-network computing). We integrate the C and P4 languages for application programming and develop algorithms to map a user program to the optimal distribution of pipeline stages and RTC cores. We demonstrate the viability of OptimusPrime through practical use cases such as in-network aggregation, in-network caching, and network function integration. We developed an FPGA-based prototype and a software-based ASIC simulator to validate the feasibility of OptimusPrime, which can be used by switches and smartNICs to enhance their programmability to a new level with high performance and low cost. Zhikang Chen, Haoyu Song 0001, Hanyi Zhou, Tong Yun, Wenquan Xu, Tian Pan 0001, Bin Liu 0001 |
SIGCOMM | 4 |
| 2024 | OBMA: Scalable Route Lookups With Fast and Zero-Interrupt UpdatesabstractSoftware-based IP route lookup is a key component for packet forwarding in Software Defined Networks. Running lookup algorithms on commodity CPUs is flexible and scalable, which shows advantages on cost and power consumption over the hardware-based forwarding engines. However, dynamic network functions and services make route updates more frequent than ever. Existing algorithms often fall short of the incremental update requirements. In this paper, we propose the Overlay BitMap Algorithm (OBMA), which contains several variations, to support extraordinary update performance while maintaining the highest-in-class lookup speed and storage efficiency. Starting from the basic OBMA_B, we develop two variations with different tradeoffs for different application scenarios. OBMA_L supports faster lookups than OBMA_B at a small cost of update speed. OBMA_S achieves better storage efficiency than OBMA_B at a small cost of lookup throughput. We run our algorithms on a commodity CPU and evaluate them with real-world route tables and traces. The experiments show that OBMA achieves the lowest memory footprint, the highest update speed, and over 200 Mpps lookup throughput. Specifically, OBMA_S reduces the memory footprint to 3.98 bytes/prefix which is 25.33% smaller that of the state-of-the-art Poptrie; OBMA_L supports 252.02 Mpps lookup throughput with a single thread, and more than 600 Mpps with multiple parallel threads in a single CPU, significantly outperforming the state-of-the-art Poptrie and SAIL; OBMA_B supports updates at a rate of 14.58M updates/s which is 15 times faster than Poptrie. The tests show that the update process has little interference with the lookup process for OBMA, and achieves zero-interrupt to lookups with multiple threads. Chuwen Zhang, Haoyu Song 0001, Ying Wan 0003, Wenquan Xu, Bin Liu 0001 |
IEEE/ACM Trans. Netw. | 3 |
| 2024 | INT-Label: Lightweight In-Band Network-Wide Telemetry via Distributed LabelingabstractIn-band Network Telemetry (INT) enables hop-by-hop device-internal state exposure for maintaining and troubleshooting data center networks. To achievenetwork-widetelemetry coverage, orchestration on top of the INT primitive is required. A straightforward solution would flood the network with INT probe packets for maximum measurement coverage, which leads to a huge bandwidth overhead. A refined solution leverages the SDN controller to collect the network topology information and carry out centralized probing path planning, which, however, is inefficient in reacting to topology changes. To tackle the above problems, we proposeINT-label, a lightweight In-band Network-Wide Telemetry architecture via the distributed labeling approach. INT-label periodically labels the sampled packets with device-internal states. It is cost-effective with a minor bandwidth overhead and able to seamlessly adapt to topology changes. In order to reduce the number of labeled packets, we introduce a times-based probabilistic labeling algorithm, which allows fewer packets to carry more INT information than the interval-based algorithm. In addition, to counteract the degradation of telemetry resolution due to loss of labeled packets, we design a feedback mechanism which can adaptively change the instant labeling frequency. We provide theoretical proof that INT-label can achieve network-wide telemetry. We analyze the impact of transmission delay on coverage rate and labeling times distribution under the INT-label architecture. Evaluation on software P4 switches suggests that INT-label can achieve 99.72% measurement coverage under the labeling frequency of 20 times per second. With the adaptive labeling enabled, even if 60% of the packets are lost, the coverage can still reach 92%. Enge Song, Tian Pan 0001, Haoyu Song 0001, Qiang Fu 0011, Yingjiang Liu, Chenhao Jia, Chuanying Yuan, Minglan Gao, Jiao Zhang 0002, Tao Huang 0005, Yunjie Liu 0001 |
IEEE Trans. Parallel Distributed Syst. | 3 |
| 2023 | FASTeller: A Hardware Partial Aggregator for Accurate Flow Counting in Cloud NetworksabstractAccurate per-flow counting is beyond the capability of network switches due to the sheer flow number. The conventional divide-and-conquer method by distributing the traffic to multiple servers for software processing is costly. The solution therefore quests for a combination of hardware and software where the hardware with limited resources aims to undertake a part of the job and reduce the workload of software, achieving a desirable balance of cost and performance. To this end we design FASTeller to be deployed on SmartNICs. It is tuned to maximize the counting aggregation level in hardware, leaving the server a much lower workload for accurate per-flow counting and sparing the server capacity for post-counting functions such as network intrusion detection. The novelty lies in the multi-tier hardware caching data structure which is tailored for the flow distribution properties of real traffic. We build an FPGA-based prototype and evaluate the performance of FASTeller. The low-cost implementation achieves the highest performance among the methods in comparison and can easily sustain the accurate perflow counting for 100Gbps traffic with the least software load. Tong Yun, Yinxin Kuang, Zhuang Ling, Haoyu Song 0001, Peilong Wang, Chuwen Zhang, Mao Miao, Zhaogeng Li, Donghua Huang, Bin Liu 0001 |
ICNP | 4 |
| 2023 | FlowBench: A Flexible Flow Table Benchmark for Comprehensive Algorithm EvaluationabstractFlow table is a fundamental and critical component in network data plane. Numerous algorithms and architectures have been devised for efficient flow table construction, lookup, and update. The diversity of flow tables and the difficulty to acquire real data sets make it challenging to give a fair and confident evaluation to a design. In the past, researchers rely on ClassBench and its improvements to synthesize flow tables, which become inadequate for today’s networks. In this paper, we present a new flow table benchmark tool, FlowBench. Based on a novel design methodology, FlowBench can generate large-scale flow tables with arbitrary combination of matching types and fields in a short time, and yet keep accurate characteristics to reveal the real performance of the algorithms under evaluation. The open-source tool facilitates researchers to evaluate both existing and future algorithms with unprecedented flexibility. Zhikang Chen, Ying Wan 0001, Ting Zhang 0010, Haoyu Song 0001, Bin Liu 0001 |
INFOCOM | 4 |
| 2023 | ISAC: In-Switch Approximate Cache for IoT Object Detection and Recognition
Wenquan Xu, Haoyu Song 0001, Bin Liu 0001 |
INFOCOM | 3 |
| 2023 | Multi-Stage Flow Table Caching: From Theory to AlgorithmabstractFlow table capacity in programmable switches is constrained due to the limited on-chip hardware resource. The current mainstream approach is to cache only the popular rules in hardware. By taking advantage of traffic locality, the majority of packets can be forwarded directly after matching the rules cached in hardware and the remaining missed packets are handled by software that accommodates the full flow table. Existing works focus on selecting the cache entries for a single-stage flow table to achieve a high cache hit-rate, which cannot adapt to multi-stage flow tables. Due to hardware constraints as well as service requirements, it is often necessary to decompose a single-stage flow table to a multi-stage flow table or directly create multiple stages of tables in hardware. For the first time, we abstract and model the multi-stage flow table caching problem and prove the NP-hardness of the Optimal Multi-stage Flow table Caching (OMFC). Further, we propose a Greedy Caching Algorithm (GCA) for OMFC, which considers both the rule popularity across multiple stages of flow tables and entry popularity within the same stage of flow table when determining the content and size of the multi-stage flow tables. The simulation results show that GCA achieves a l0~30% higher cache hit-rate than the existing algorithms. Ying Wan 0001, Haoyu Song 0001, Tian Pan 0001, Bin Liu 0001, Ling Qian |
ISCC | 2 |
| 2023 | ClickINC: In-network Computing as a Service in Heterogeneous Programmable Data-center NetworksabstractIn-Network Computing (INC) has found many applications for performance boosts or cost reduction. However, given heterogeneous devices, diverse applications, and multi-path network typologies, it is cumbersome and error-prone for application developers to effectively utilize the available network resources and gain predictable benefits without impeding normal network functions. Previous work is oriented to network operators more than application developers. We develop ClickINC to streamline the INC programming and deployment using a unified and automated workflow. Click-INC provides INC developers a modular programming abstractions, without concerning to the states of the devices and the network topology. We describe the ClickINC framework, model, language, workflow, and corresponding algorithms. Experiments on both an emulator and a prototype system demonstrate its feasibility and benefits. Wenquan Xu, Haoyu Song 0001, Zhikang Chen, Wenfei Wu, Guyue Liu, Yinchao Zhang, Zerui Tian, Bin Liu 0001 |
SIGCOMM | 4 |
| 2022 | HybridTSS: A Recursive Scheme Combining Coarse- and Fine- Grained Tuples for Packet ClassificationabstractThe popular OpenFlow virtual switch Open vSwitch (OVS) uses a variant of Tuple Space Search (TSS) for packet classification. Although it is easy for rule updates, the lookup performance is poor. By introducing partial trees into TSS, the recently proposed CutTSS improves the lookup performance of TSS. However, it is challenging to replace TSS in OVS for two reasons: (1) the hand-tuned partitioning heuristics are rule-set dependent; (2) the complex and irregular data structures make it difficult to be integrated and maintained in real systems. To address these issues, we propose HybridTSS, a recursive TSS scheme for fast packet classification in OVS, which exploits three novel ideas: (1) the recursive partitioning based on reinforcement learning balances global rule partitions with low training complexity; (2) a hybrid TSS scheme combining coarse-grained and fine-grained tuples suppresses tuple explosion in TSS; (3) a heterogeneous search algorithm consisting of TSS and linear search adapts to characteristics of rules at different scales for fast lookups. Using ClassBench, we show that, while immune from the main drawbacks of CutTSS, HybridTSS retains the update performance of TSS, and achieves almost an order of magnitude higher lookup performance than TSS, making it an ideal packet classification algorithm for OVS. Yuxi Liu 0017, Yao Xin, Wenjun Li 0004, Haoyu Song 0001, Ori Rottenstreich, Gaogang Xie, Weichao Li 0001, Yi Wang 0004 |
APNet | 4 |
| 2022 | Enabling In-situ Programmability in Network Data Plane: From Architecture to Language
Zhikang Chen, Haoyu Song 0001, Wenquan Xu, Tong Yun, Bin Liu 0001 |
NSDI | 3 |
| 2021 | In-situ Programmable Switching using rP4: Towards Runtime Data Plane ProgrammabilityabstractThe existing chip architecture and programming language are incapable of supporting in-service updates by loading or offloading on-demand protocols and functions at runtime. We examine the fundamental reasons for the inflexibility and design a new In-situ Programmable Switch Architecture (IPSA) as a fix. We further design rP4, a P4 extension, for programming IPSA-based devices. To manifest the in-situ programming feasibility, we develop an rP4 compiler and demonstrate several use cases on both a software switch, ipbm, and an FPGA-based prototype. Our preliminary experiments and analysis show that, compared to PISA, IPSA provides higher flexibility in enabling runtime functional update with limited performance and gate-count penalty. The in-situ programming capability enabled by IPSA and rP4 opens a promising design space for programmable networks. Haoyu Song 0001, Zhikang Chen, Wenquan Xu, Bin Liu 0001 |
HotNets | 2 |
| 2021 | INT-probe: Lightweight In-band Network-Wide Telemetry with Stationary ProbesabstractVisibility is essential for operating and troubleshooting intricate networks. In-band Network Telemetry (INT) has been embedded in the latest merchant silicons to offer high-precision device and traffic state visibility. INT is actually an underlying technique and each INT instance covers only one monitoring path. The network-wide measurement coverage therefore requires a high-level orchestration to provision multiple INT paths. An optimal path planning is expected to produce a minimum number of paths with a minimum number of overlapping links. Eulerian trail has been used to solve the general problem. However, in production networks, the vantage points where one can deploy probes to start and terminate INT paths are constrained. In this work, we propose an optimal path planning algorithm, INT-probe, which achieves the network-wide telemetry coverage under the constraint of stationary probes. INT-probe formulates the constrained path planning into an extended multi-depot k-Chinese postman problem (MDCPP-set) and then reduces it to a solvable minimum weight perfect matching problem. We analyze algorithm's theoretical bound and the complexity. Extensive evaluation on both wide area networks and data center networks with different scales and topologies are conducted. We show INT-probe is efficient, high-performance, and practical for real-world deployment. For a large-scale data center networks with 1125 switches, INT-probe can generate 112 monitoring paths (reduced by 50.4 %) by allowing only 1.79% increase of the total path length, promptly resolving link failures within 744.71ms. Tian Pan 0001, Xingchen Lin, Haoyu Song 0001, Enge Song, Zizheng Bian, Hao Li 0011, Jiao Zhang 0002, Fuliang Li, Tao Huang 0005, Chenhao Jia, Bin Liu 0001 |
ICDCS | 3 |
| 2021 | FastUp: Fast TCAM Update for SDN Switches in Datacenter NetworksabstractTCAM is widely used for flow table lookup in Software-Defined Networking (SDN) switches for datacenter and enterprise networks. While its lookup throughput is unparalleled, TCAM updating, particularly for new rule insertions, can impair the overall system performance. A rule insertion entails two steps: 1) Computing the rule moving operations; and 2) Interrupting the TCAM lookups to apply the operations. In previous work, the performance gain on one step is always at the expense of the performance loss on the other. However, update throughput and latency depend on both. In this paper, we present a faster and more balanced TCAM update scheme, which not only achieves the shortest interrupt time so far but also significantly reduces the computation time. By using a novel sequential stack, FastUp reduces the time and space complexity of the state-of-the-art schemes from$O(m^{2})$and$O(m)$to$O(m\log h)$and$O(h)$, respectively, where$h << m$. Evaluations show that FastUp shortens the computation time and the interrupt time by$100\times$and$1.6\times$, respectively, which is equivalent to update delay${15\times}$reduction and$\mathbf{10\times}$update throughput gain against the state-of-the-art schemes. Moreover, we debunk a common mistake and show the dynamic programming based algorithm cannot be used to solve the reorder problem, and instead we use a bidirectional rule moving method to address the problem. In addition, we propose a practical method to find the theoretical lower bound of interrupt time in relatively large TCAM, which can be used to evaluate the optimality degree of TCAM update schemes. Evaluations show that FastUp achieves 90 % optimality. Ying Wan 0001, Haoyu Song 0001, Hao Che, Yang Xu 0010, Yi Wang 0004, Chuwen Zhang, Zhijun Wang 0001, Tian Pan 0001, Hao Li 0011, Hong Jiang 0001, Chengchen Hu, Bin Liu 0001 |
ICDCS | 2 |
| 2021 | PIPO: Efficient Programmable Scheduling for Time Sensitive NetworkingabstractTime Sensitive Networking (TSN) is an emerging Ethernet technology for real-time systems. To address different Quality-of-Service (QoS) requirements of applications, IEEE 802.1 TSN Task Group has standardized several packet scheduling and shaping algorithms. The software implementation of these algorithms is hard to meet the performance requirements, while the hardware implementation in Application-Specific Integrated Circuit (ASIC) is inflexible. A hardware-programmable scheduler is necessary to deal with this dilemma. Among the existing primitives, the most expressive one is Push-In-Extract-Out (PIEO), but its complexity makes the implementation very expensive. A relatively lower-cost implementation of PIEO cannot guarantee the scheduling correctness for the most critical Time-Triggered (TT) traffic in TSN. As a remedy, in this paper we propose a new Push-In-Pick-Out (PIPO) primitive under a TSN programmable scheduling framework. Composed of simple priority queues, PIPO can express all existing TSN scheduling and shaping algorithms, and is flexible enough to support future ones. Our PIPO implementation guarantees the TT traffic scheduling correctness. The simulation results corroborate the theoretical analysis that the low-cost PIPO can closely approximate PIEO and sustain a high bandwidth utilization. The prototype on Xilinx FPGA shows that, with 2,048 inputs, the PIPO-based scheduler achieves a throughput of 70 Mpps, which is 1.64x higher than the PIEO-based one, but using only 14.7% Look-Up Tables (LUTs) and 40.5% Block RAMs of the latter. Chuwen Zhang, Zhikang Chen, Haoyu Song 0001, Ruyi Yao, Yang Xu 0010, Yi Wang 0004, Ji Miao, Bin Liu 0001 |
ICNP | 3 |
| 2021 | Adaptive Batch Update in TCAM: How Collective Optimization Beats Individual OnesabstractRule update in TCAM has long been identified as a key technical challenge due to the rule order constraint. Existing algorithms take each rule update as an independent task. However, emerging applications produce batch rule update requests. Processing the updates individually causes high aggregated cost which can strain the processor and/or incur excessive TCAM lookup interrupts. This paper presents the first true batch update algorithm, ABUT. Unlike the other alleged batch update algorithms, ABUT collectively evaluates and optimizes the TCAM placement for whole batches throughout. By applying the topology grouping and maintaining the group order invariance in TCAM, ABUT achieves substantial computing time reduction yet still yields the best-in-class placement cost. Our evaluations show that ABUT is ideal for low-latency and high-throughput batch TCAM updates in modern high-performance switches. Ying Wan 0001, Haoyu Song 0001, Yang Xu 0010, Chuwen Zhang, Yi Wang 0004, Bin Liu 0001 |
INFOCOM | 2 |
| 2021 | SODA: Similar 3D Object Detection Accelerator at Network Edge for Autonomous DrivingabstractOffloading the 3D object detection from autonomous vehicles to MEC is appealing because of the gains on quality, latency, and energy. However, detection requests lead to repetitive computations since the multitudinous requests share approximate detection results. It is crucial to reduce such fuzzy redundancy by reusing the previous results. A key challenge is that the requests mapping to the reusable result are only similar but not identical. An efficient method for similarity matching is needed to justify the use case. To this end, by taking advantage of TCAM's ap-proximate matching capability and NMC's computing efficiency, we design SODA, a first-of-its-kind hardware accelerator which sits in the mobile base stations between autonomous vehicles and MEC servers. We design efficient feature encoding and partition algorithms for SODA to ensure the quality of the similarity matching and result reuse. Our evaluation shows that SODA significantly improves the system performance and the detection results exceed the accuracy requirements on the subject matter, qualifying SODA as a practical domain-specific solution. Wenquan Xu, Haoyu Song 0001, Linyang Hou, Xinggong Zhang, Chuwen Zhang, Wei Hu 0003, Yi Wang 0004, Bin Liu 0001 |
INFOCOM | 2 |
| 2021 | T-Cache: Efficient Policy-Based Forwarding Using Small TCAMabstractTernary Content Addressable Memory (TCAM) is widely used by modern routers and switches to support policy-based forwarding due to its incomparable lookup speed and flexible matching patterns. However, the limited TCAM capacity does not scale with the ever-increasing rule table size due to the high hardware cost and high power consumption. At present, using TCAM just as a rule cache is an appealing solution, but one must resolve several tricky issues including the rule dependency and the associated TCAM updates. In this paper, we propose a new approach which can generate dependency-free rules to cache. By removing the rule dependency, the complex TCAM update problem also disappears. We provide the complete T-cache system design including slow path processing and cache replacement, and implement a T-cache prototype on Barefoot Tofino switches. We conduct comprehensive software simulations and hardware experiments based on real-world and synthesized rule tables and packet traces to show that T-cache is efficient and robust for network traffic in various scenarios. Ying Wan 0001, Haoyu Song 0001, Yang Xu 0010, Tian Pan 0001, Chuwen Zhang, Yi Wang 0004, Bin Liu 0001 |
IEEE/ACM Trans. Netw. | 2 |
| 2020 | FastUp: Compute a Better TCAM Update Scheme in Less Time for SDN SwitchesabstractWhile widely used for flow tables in SDN switches, TCAM faces challenges for rule updates. Both the computation time and interrupt time need to be short. We propose FastUp, a new TCAM update algorithm, which improves the previous dynamic programming-based algorithms. Evaluations show that FastUp shortens the computation time by 40~100× and the interrupt time by 1.2~2.5×. In addition, we are the first to prove the NP-hardness of the optimal TCAM update problem, and provide a practical method to evaluate an algorithm's degree of optimality. Experiments show that FastUp's optimality reaches 90%. Ying Wan 0001, Haoyu Song 0001, Hao Che, Yang Xu 0010, Yi Wang 0004, Chuwen Zhang, Zhijun Wang 0001, Tian Pan 0001, Hao Li 0011, Hong Jiang 0001, Chengchen Hu, Zhikang Chen, Bin Liu 0001 |
ICDCS | 2 |
| 2020 | Adaptive Addresses for Next Generation IP Protocol in Hierarchical NetworksabstractWe propose the adaptive addresses under a hierarchical network structure, which can be realized in a newer generation of IP protocol (i.e., IPvn). It minimizes the communication overhead, enables arbitrary address space extension, simplifies both the network data-plane and control-plane, and supports better network security. More importantly, it supports incremental deployment from the network edge and gradual growth towards the core. A clear boundary between IPvn domain and the existing IPv4/IPv6 networks enables transparent cross-domain communication. The clear evolution path makes pre-standard deployment possible. We design both control plane and data plane, prototype the routers within and on the edge of an IPvn domain, and evaluate the performance. We open source the project to encourage further investigation and development. Haoyu Song 0001, Zhaobo Zhang, Yingzhen Qu, James N. Guichard |
ICNP | 1 |
| 2020 | T-cache: Dependency-free Ternary Rule Cache for Policy-based ForwardingabstractTernary Content Addressable Memory (TCAM) is widely used by modern routers and switches to support policy-based forwarding. However, the limited TCAM capacity does not scale with the ever-increasing rule table size. Using TCAM just as a rule cache is a plausible solution, but one must resolve several tricky issues including the rule dependency and the associated TCAM updates. In this paper, we propose a new approach which can generate dependency-free rules to cache. By removing the rule dependency, the TCAM update problem also disappears. We provide the complete T-cache system design including slow path processing and cache replacement. Evaluations based on real-world and synthesized rule tables and traces show that T-cache is efficient and robust for network traffic in various scenarios. Ying Wan 0001, Haoyu Song 0001, Yang Xu 0010, Tian Pan 0001, Chuwen Zhang, Bin Liu 0001 |
INFOCOM | 2 |
| 2020 | PBC: Effective Prefix Caching for Fast Name Lookups
Chuwen Zhang, Haoyu Song 0001, Beichuan Zhang 0001, Yi Wang 0004, Ying Wan 0001, Wenquan Xu, Bin Liu 0001 |
Networking | 3 |
| 2020 | Consistent State Updates for Virtualized Network Function MigrationabstractCombining Network Functions Virtualization (NFV) with Software-Defined Networking (SDN) is an emerging and promising solution to provide scalable and elastic network control and service. In such a system, virtualized Network Functions (NFs) need to be consistently migrated from one instance to another for various purposes, such as resource optimization, fault tolerance, load balancing, etc. These migrations involve simultaneously coordinating updates to the NF state and SDN forwarding state. To solve this problem, we design two consistent NF state update schemes: a controller-forwarding based scheme and a tagging-based scheme. Through analysis of the update process, we demonstrate that they both guarantee loss-free and order-preserving migrations. We further implement a prototype and carry out experiments with diverse traffic settings. Results demonstrate that the controller-forwarding based solution achieves 77 percent migration time compared with the state-of-the-art solution OpenNF, while correcting an error of it. Moreover, the tagging-based solution not only achieves 4.4 percent migration time, but also reduces up to 75 percent controller overhead compared with OpenNF at the cost of adding a tag in the unused fields of packet header. Yujie Liu 0010, Jiaqiang Liu, Yong Li 0008, Haoyu Song 0001, Yue Wang 0007 |
IEEE Trans. Serv. Comput. | 5 |
| 2019 | NetWatch: End-to-End Network Performance Measurement as a Service for CloudabstractAccurate and comprehensive end-to-end network performance measurement is critical for the automatic troubleshooting and optimized provision of various services in Cloud. However, cloud providers and tenants still rely on rudimentary and separate tools for end-to-end performance measurement, which are inflexible, tedious, and error-prone. In this paper, we present NetWatch, a system that provides measurement as a service through open APIs for both cloud providers and tenants to measure end-to-end performance on-demand. In this system, measurement requests are first delivered to NetWatch Controller by open APIs, which transforms the request to configure specific Probes to fulfill the requests by active measurement. We make delicate design choices and address several challenges to enable NetWatch offering accurate and low-overhead measurement service for multiple users simultaneously and efficiently. A prototype implementation and experiments with diverse network settings link and traffic demonstrate that NetWatch can support flexible and accurate measurement of end-to-end network performance with small overhead. Jiaqiang Liu, Shaoran Xiao, Yong Li 0008, Haoyu Song 0001, Depeng Jin, Li Su 0001 |
IEEE Trans. Cloud Comput. | 4 |
| 2018 | OBMA: Minimizing Bitmap Data Structure with Fast and Uninterrupted Update ProcessingabstractSoftware-based IP route lookup is one of the key components in Software Defined Networks. To address challenges on density, power and cost, Commodity CPU is preferred over other platforms to run lookup algorithms. As network functions become richer and more dynamic, route updates are more frequent. Unfortunately, previous works put less effort on fast incremental updates. On the other hand, The cache in CPU could be a performance limiter due to its small size, which requires algorithm designers to give high priority on storage efficiency in addition to time complexity. In this paper, we propose a new route lookup algorithm, OBMA, which improves update performance and storage efficiency while maintaining high lookup speed. The extensive experiments over real-word traces show that OBMA reduces the memory footprint to just 4.52 bytes/prefix, supports update speed up to 7.2 M/s which is 12.5 times faster than the state-of-the-art algorithm Poptrie. Besides, OBMA achieves up to 195.87 Mpps lookup speed with a single thread. Tests on comprehensive performance of lookup and update show that OBMA can sustain high lookup speed with update speed increasing. Chuwen Zhang, Haoyu Song 0001, Ying Wan 0001, Wenquan Xu, Huichen Dai, Yang Li 0062, Bin Liu 0001 |
IWQoS | 3 |
| 2018 | Low Computational Cost Bloom Filters
Jianyuan Lu, Tong Yang 0003, Yi Wang 0004, Huichen Dai, Linxiao Jin, Haoyu Song 0001, Bin Liu 0001 |
IEEE/ACM Trans. Netw. | 7 |
| 2016 | Bandwidth-Greedy Hashing for Massive-Scale Concurrent FlowsabstractThe explosion of network bandwidth poses greatchallenges to data-plane flow processing. Due to the variable andpoor worst-case performance, naive hash table is incapable ofwire-speed processing. State-of-the-art schemes rely on multiplehash functions for enhanced load balancing to improve the worst-case performance. These schemes exploit the memory hierarchyand allocate compact on-chip data structures as the off-chiphash table summaries. However, when the flow number inflates, they fail to scale the on-chip memory consumption gracefully. This work is inspired by modern DRAM's burst-transfer feature. Specifically, we propose bandwidth-greedy hashing which resolveshash collisions with just one DRAM burst. Besides, load balancingefforts are made in an "on-demand" fashion. This radicaldesign surmounts the major obstacle of mapping multiple choicehashing schemes to real-world hierarchical memory systems formassive-scale items. Essentially, this solution follows a designpattern of on-demand load balancing and can be regarded asa generalization of closed hashing. To establish its theoreticalbase, we analyze it via Poisson distribution approximation. Theevaluation on DRAMSim2 reports that our scheme requires onlyone DRAM burst access (in 99.999% cases) and minuscule on-chip memory (less than 16MB, or 1% of the previous) to supportlookups for 100M flows at a throughput of 122.82Mpps. Tian Pan 0001, Bin Liu 0001, Xiaoyu Guo 0008, Yang Li 0062, Haoyu Song 0001 |
ICDCS | 5 |
| 2015 | One-hashing bloom filterabstractBloom filters are widely used in many network applications but the high computation cost limits the system performance. In this paper, we introduce a new variation of Bloom filter named One-Hashing Bloom Filter (OHBF) to solve the problem. OHBF requires only one base hash function plus a few simple operations to implement a Bloom filter. While keeping nearly the same theoretical false positive ratio as an ideal Bloom filter, OHBF significantly reduces the hash computation overhead. We show that the false positive performance of a standard Bloom filter implementation strongly relies on the selection of hash functions, even if these hash functions are considered good. In contrast, OHBF presents consistently better performance with a proven mathematical foundation. OHBF is ideal for high throughput and low latency applications. As OHBF is a fundamental technique in Bloom filter theory, it can be applied to many other Bloom filter variations, such as Counting Bloom Filter and Space-Code Bloom Filter. Jianyuan Lu, Tong Yang 0002, Yi Wang 0004, Huichen Dai, Linxiao Jin, Haoyu Song 0001, Bin Liu 0001 |
IWQoS | 6 |
| 2014 | Forwarding Programming in Protocol-Oblivious Instruction SetabstractProtocol-Oblivious Forwarding (POF) is an enhancement to Open Flow-based SDN forwarding architecture. In this paper, we proposed a basic POF Flow Instruction Set (POF-FIS) which can be used to edit and forward packets as designed on the controller side. Working on the southbound interface of SDN, POF-FIS is independent of target platforms and northbound interfaces. To design the forwarding process on the controller side, users can take advantages of high-level programming languages or directly manipulate the POF-FIS using graphical or command-line user interface. High-speed execution of POF-FIS is very important for network elements, while eliminating the need of hard-coded protocol parsing and packet processing. We show that POF-FIS allows the forwarding capability of the flexible network elements to be fully released to achieve higher performance and more expressive forwarding behavior. Jingzhou Yu, Xiaozhong Wang, Yuanming Zheng, Haoyu Song 0001 |
ICNP | 5 |
| 2013 | LOOP: Layer-based overlay and optimized polymerization for multiple virtual tablesabstractNetwork virtualization allows multiple virtual routers to coexist in the same physical router but offer independent routing services. Each virtual router needs to perform millions of lookups and thousands of updates per second to meet the requirements of high-speed Internet. The coexistence of these virtual routers intensifies scalability challenges to the routing lookup scheme: Can it scale well in storage, lookup speed and update performance as the number of virtual routers increases? In this paper, we propose Layer-based Overlay and Optimized Polymerization (LOOP) which has favorable scalability regardless of the number of virtual routers. Experiments on the general-purpose CPU show that LOOP achieves efficient storage, fast lookup, and fast incremental update. It compacts 18 FIBs with about 7M prefixes in total to only 4.6MB. One single thread can perform about 50M lookups per second on real-world traces. LOOP allows an update thread to run in parallel with lookup threads and barely interrupt them, and pure update testing indicates it can perform about 1M updates per second. One of the key advantages of LOOP is that it supports inserting and deleting virtual routers incrementally so it is ideal for fast and dynamic configuration of virtual networks. Zhian Mi, Tong Yang 0002, Jianyuan Lu, Hao Wu 0023, Yi Wang 0004, Tian Pan 0001, Haoyu Song 0001, Bin Liu 0001 |
ICNP | 7 |
| 2013 | ABC: Adaptive Binary Cuttings for Multidimensional Packet ClassificationabstractDecision tree-based packet classification algorithms are easy to implement and allow the tradeoff between storage and throughput. However, the memory consumption of these algorithms remains quite high when high throughput is required. The Adaptive Binary Cuttings (ABC) algorithm exploits another degree of freedom to make the decision tree adapt to the geometric distribution of the filters. The three variations of the adaptive cutting procedure produce a set of different-sized cuts at each decision step, with the goal to balance the distribution of filters and to reduce the filter duplication effect. The ABC algorithm uses stronger and more straightforward criteria for decision tree construction. Coupled with an efficient node encoding scheme, it enables a smaller, shorter, and well-balanced decision tree. The hardware-oriented implementation of each variation is proposed and evaluated extensively to demonstrate its scalability and sensitivity to different configurations. The results show that the ABC algorithm significantly outperforms the other decision tree-based algorithms. It can sustain more than 10-Gb/s throughput and is the only algorithm among the existing well-known packet classification algorithms that can compete with TCAMs in terms of the storage efficiency. Haoyu Song 0001, Jonathan S. Turner |
IEEE/ACM Trans. Netw. | 1 |
| 2012 | Fast Dynamic Multiple-Set Membership Testing Using Combinatorial Bloom FiltersabstractIn this paper, we consider the problem of designing a data structure that can perform fast multiple-set membership testing in deterministic time. Our primary goal is to develop a hardware implementation of the data structure that uses only embedded memory blocks. Prior efforts to solve this problem involve hashing into multiple Bloom filters. Such approach needs a priori knowledge of the number of elements in each set in order to size the Bloom filter. We use a single-Bloom-filter-based approach and use multiple sets of hash functions to code for the set (group) id. Since a single Bloom filter is used, it does not need a priori knowledge of the distribution of the elements across the different sets. We show how to improve the performance of the data structure by using constant-weight error-correcting codes for coding the group id. Using error-correcting codes improves the performance of these data structures especially when there are a large number of sets. We also outline an efficient hardware-based approach to generate the large number of hash functions that we need for this data structure. The resulting data structure, COMB, is amenable to a variety of time-critical network applications. Fang Hao, Murali S. Kodialam, T. V. Lakshman, Haoyu Song 0001 |
IEEE/ACM Trans. Netw. | 4 |
| 2012 | Efficient Trie Braiding in Scalable Virtual RoutersabstractMany popular algorithms for fast packet forwarding and filtering rely on the tree data structure. Examples are the trie-based IP lookup and packet classification algorithms. With the recent interest in network virtualization, the ability to run multiple virtual router instances on a common physical router platform is essential. An important scaling issue is the number of virtual router instances that can run on the platform. One limiting factor is the amount of high-speed memory and caches available for storing the packet forwarding and filtering data structures. An ideal goal is to achieve good scaling while maintaining total isolation among the virtual routers. However, total isolation requires maintaining separate data structures in high-speed memory for each virtual router. In this paper, we study the case where some sharing of the forwarding and filtering data structures is permissible and develop algorithms for combining tries used for IP lookup and packet classification. Specifically, we develop a mechanism called trie braiding that allows us to combine tries from the data structures of different virtual routers into just one compact trie. Two optimal braiding algorithms and a faster heuristic algorithm are presented, and the effectiveness is demonstrated using the real-world data sets. Haoyu Song 0001, Murali S. Kodialam, Fang Hao, T. V. Lakshman |
IEEE/ACM Trans. Netw. | 1 |
| 2011 | Toward Advocacy-Free Evaluation of Packet Classification AlgorithmsabstractUnderstanding the real performance of a proposed algorithm is a basic requirement for both algorithm designers and implementers. However, this is sometimes difficult to achieve. Each new algorithm published is evaluated from different perspectives and based on different assumptions. Without a common ground, it is almost impossible to compare different algorithms directly. Choosing an incompetent algorithm for an application can incur significant cost. This is especially true for packet classification in network routers, since packet classification is intrinsically a hard problem and all existing algorithms are based on some heuristics and filter set characteristics. The performance of the packet classification subsystem is critical to the overall performance of the network routers. Although numerous algorithms have been proposed so far, a benchmark that can give them consistent evaluation and reveal their comparable performance is still missing. This paper summarizes our efforts toward improving this situation. First, we conduct a high-level survey on the existing algorithms and extract some insights on the general design ideas. Second, we describe an open-source platform dedicated for advocacy-free evaluation of packet classification algorithms. Many representative algorithms are actually implemented under a set of uniform conditions and assumptions. The freely available implementations allow other researchers to easily test them under different scenarios. We also enforce some consistent and fundamental criteria for the algorithm evaluation, so that their performance and potentials are directly comparable, regardless of the actual implementation platforms. This project serves dual purpose: It helps the researchers to accelerate the innovation in the area of packet classification algorithm development by relieving them from the labor of replicating the previous work and by enabling them to quickly compare and evaluate algorithms. Meanwhile, it also helps the system implementers to easily choose the capable algorithm for their particular applications. Aiming to build an open-source library, we encourage external contributions of new algorithm implementations and evaluations under the same framework. We believe the practice will benefit the research and design community as a whole. Haoyu Song 0001, Jonathan S. Turner |
IEEE Trans. Computers | 1 |
| 2010 | Building Scalable Virtual Routers with Trie BraidingabstractMany popular algorithms for fast packet forwarding and filtering rely on the tree data structure. Examples are the trie-based IP lookup and packet classification algorithms. With the recent interest in network virtualization, the ability to run multiple virtual router instances on a common physical router platform is essential. An important scaling issue is the number of virtual router instances that can run on the platform. One limiting factor is the amount of high-speed memory and caches available for storing the packet forwarding and filtering data structures. An ideal goal is to achieve good scaling while maintaining total isolation amongst the virtual routers. However, total isolation requires maintaining separate data structures in high-speed memory for each virtual router. In this paper, we study the case where some sharing of the forwarding and filtering data structures is permissible and develop algorithms for combining tries used for IP lookup and packet classification. Specifically, we develop a mechanism called trie-braiding that allows us to combine tries from the data structures of different virtual routers into just one compact trie. Two optimal braiding algorithms are presented and the effectiveness is demonstrated using the real world data sets. Haoyu Song 0001, Murali S. Kodialam, Fang Hao, T. V. Lakshman |
INFOCOM | 1 |
| 2009 | Scalable IP Lookups using Shape GraphsabstractRecently, there has been much renewed interest in developing compact data structures for packet processing functions such as longest prefix-match for IP lookups. This has been motivated by several factors: (1) The advent of 100 Gbps interfaces necessitating correspondingly fast packet processing algorithms with a compact memory footprint; (2) network virtualization leading to virtualization of physical router platforms making it critical to reduce high-speed memory needs per virtual router; (3) software routers built on multi-core processors requiring the use of compact data-structures that fit in on-chip caches for good performance. In this paper, we revisit this issue of developing compact data structures for key packet-processing functions. We develop a new data structure, called the shape graph, that significantly compacts the trie data-structure used for IP lookups. We accomplish this by identifying considerable structural similarities in IP lookup tries that have not previously been used in the literature for scalable IP lookups. We use these similarities to store lookup tries in a new graph data structure that has a significantly lower memory-footprint. Using real IP forwarding tables, we compare the memory usage of this new data structure to that of multi-bit tries and of Bloom filters used for IP lookups. The shape graph requires significantly less memory and allows the far more effective use of on-chip memory. This effective use of on-chip memory combined with multi-threading on a multi-core processor makes shape-graph-based IP lookups well suited for 100 Gbps lookups. The small footprint also makes it well suited for use in router platforms that host a large number of virtual routers. Haoyu Song 0001, Murali S. Kodialam, Fang Hao, T. V. Lakshman |
ICNP | 1 |
| 2009 | Fast Multiset Membership Testing Using Combinatorial Bloom FiltersabstractIn this paper we consider the problem of designing a data structure that can perform fast multiset membership testing in deterministic time. Our primary goal is to develop a hardware implementation of the data structure which uses only embedded memory blocks. Prior efforts to solve this problem involve hashing into multiple bloom filters. Such approach needs a priori knowledge of the number of elements in each set in order to size the bloom filter. We use a single bloom filter based approach and use multiple sets of hash functions to code for the set (group) id. Since a single bloom filter is used, it does not need a priori knowledge of the distribution of the elements across the different sets. We show how to improve the performance of the data structure by using constant weight error correcting codes for coding the group id. Using error correcting codes improves the performance of these data structures especially when there are large number of sets. We also outline an efficient hardware based approach to generate the the large number of hash functions that we need for this data structure. The resulting data structure, COMB, is amenable to a variety of time-critical network applications. Fang Hao, Murali S. Kodialam, T. V. Lakshman, Haoyu Song 0001 |
INFOCOM | 4 |
| 2009 | Variable-Stride Multi-Pattern Matching For Scalable Deep Packet InspectionabstractAbstract—Accelerating multi-pattern matching is a critical is-sue in building high-performance deep packet inspection systems. Achieving high-throughputs while reducing both memory-usage and memory-bandwidth needs is inherently difficult. In this paper, we propose a pattern (string) matching algorithm that achieves high throughput while limiting both memory-usage and memory-bandwidth. We achieve this by moving away from a byte-oriented processing of patterns to a block-oriented scheme. However, different from previous block-oriented approaches, our scheme uses variable-stride blocks. These blocks can be uniquely identified in both the pattern and the input stream, hence avoid-ing the multiplied memory costs which is intrinsic in previous approaches. We present the algorithm, tradeoffs, optimizations, and implementation details. Performance evaluation is done using the Snort and ClamAV pattern sets. Using our algorithm, the throughput of a single search engine can easily have a many-fold increase at a small storage cost, typically less than three bytes per pattern character. I. Nan Hua, Haoyu Song 0001, T. V. Lakshman |
INFOCOM | 2 |
| 2009 | IPv6 Lookups using Distributed and Load Balanced Bloom Filters for 100Gbps Core Router Line CardsabstractInternet line speeds are expected to reach 100 Gbps in a few years. To match these line rates, a single router line card needs to forward more than 150 million packets per second. This requires a corresponding amount of longest prefix match operations. Furthermore, the increased use of IPv6 requires core routers to perform the longest prefix match on several hundred thousand prefixes varying in length up to 64 bits. It is a challenge to scale existing algorithms simultaneously in the three dimensions of increased throughput, table size and prefix length. Recently, Bloom filter-based IP lookup algorithms have been proposed. While these algorithms can take advantage of hardware parallelism and fast on-chip memory to achieve high performance, they have significant drawbacks (discussed in the paper) that impede their use in practice. In this paper, we present the distributed and load balanced bloom filters to address these drawbacks. We develop the practical IP lookup algorithm for use in 100 Gbps line cards. The regular and modular hardware architecture of our scheme directly maps to the state-of-art ASICs and FPGAs with reasonable resource consumption. Also, our scheme outperforms TCAMs on most metrics including cost, power dissipation, and board footprint. Haoyu Song 0001, Fang Hao, Murali S. Kodialam, T. V. Lakshman |
INFOCOM | 1 |
| 2006 | Fast packet classification using bloom filtersabstractTernary Content Addressable Memory (TCAM), although widely used for general packet classification, is an expensive and high power-consuming device. Algorithmic solutions which rely on commodity memory chips are relatively inexpensive and power-efficient but have not been able to match the generality and performance of TCAMs. Therefore, the development of fast and power-efficient algorithmic packet classification techniques continues to be a research subject.In this paper we propose a new approach to packet classification which combines architectural and algorithmic techniques. Our starting point is the well-known crossproduct algorithm which is fast but has significant memory overhead due to the extra rules needed to represent the crossproducts. We show how to modify the crossproduct method in a way that drastically reduces the memory requirement without compromising on performance. Unnecessary accesses to the off-chip memory are avoided by filtering them through on-chip Bloom filters. For packets that match p rules in a rule set, our algorithm requires just 4 + p + ε independent memory accesses to return all matching rules, where ε << 1 is a small constant that depends on the false positive rate of the Bloom filters. Using two commodity SRAM chips, a throughput of 38 Million packets per second can be achieved. For rule set sizes ranging from a few hundred to several thousand filters, the average rule set expansion factor attributable to the algorithm is just 1.2 to 1.4. The average memory consumption per rule is 32 to 45 bytes. Sarang Dharmapurikar, Haoyu Song 0001, Jonathan S. Turner, John W. Lockwood |
ANCS | 2 |
| 2006 | Packet classification using coarse-grained tuple spacesabstractWhile the problem of high performance packet classification has received a great deal of attention in recent years, the research community has yet to develop algorithmic methods that can overcome the drawbacks of TCAM-based solutions. This paper introduces a hybrid approach, which partitions the filter set into subsets that are easy to search efficiently. The partitioning strategy groups filters that are close to one another in tuple space [10], which makes it possible to use information from single field lookups to limit the number of subsets that must be searched. We can trade-off running time against space consumption by adjusting the coarseness of the tuple space partition. We find that for two-dimensional filter sets, the method finds the best-matching filter with just four hash probes while limiting the memory space expansion factor to about 2. We also introduce a novel method for Longest Prefix Matching (LPM), which we use as a component of the overall packet classification algorithm. Our LPM method uses a small amount of on-chip memory to speedup the search of an off-chip data structure, but uses significantly less on-chip memory than earlier methods based on Bloom filters. Haoyu Song 0001, Jonathan S. Turner, Sarang Dharmapurikar |
ANCS | 1 |
| 2006 | Fast Filter Updates for Packet Classification using TCAMabstractThis paper addresses the problem of efficient filter updates in TCAMs. Under realistic conditions, filter updates can lead to significant performance degradation. This paper introduces an approach to using TCAMs that encodes filter priority as a TCAM field, allowing the highest priority filter to be identified with a small number of lookups, while greatly simplifying filter set management, and reducing the impact of updates on lookup throughput. Our approach supports wire-speed processing for OC-192 links using commercially available TCAM components. Haoyu Song 0001, Jonathan S. Turner |
GLOBECOM | 1 |
| 2005 | Efficient packet classification for network intrusion detection using FPGAabstractUsing FPGA technology for real-time network intrusion detection has gained many research efforts recently. In this paper, a novel packet classification architecture called BV-TCAM is presented, which is implemented for an FPGA-based Network Intrusion Detection System (NIDS). The classifier can report multiple matches at gigabit per second network link rates. The BV-TCAM architecture combines the Ternary Content Addressable Memory (TCAM) and the Bit Vector (BV) algorithm to effectively compress the data representations and boost throughput. A tree-bitmap implementation of the BV algorithm is used for source and destination port lookup while a TCAM performs the lookup of the other header fields, which can be represented as a prefix or exact value. The architecture eliminates the requirement for prefix expansion of port ranges. With the aid of a small embedded TCAM, packet classification can be implemented in a relatively small part of the available logic of an FPGA. The design is prototyped and evaluated in a Xilinx FPGA XCV2000E on the FPX platform. Even with the most difficult set of rules and packet inputs, the circuit is fast enough to sustain OC48 traffic throughput. Using larger and faster FPGAs, the system can work at speeds greater than OC192. Haoyu Song 0001, John W. Lockwood |
FPGA | 1 |
| 2005 | Snort Offloader: A Reconfigurable Hardware NIDS FilterabstractSoftware-based network intrusion detection systems (NIDS) often fail to keep up with high-speed network links. In this paper an FPGA-based pre-filter is presented that reduces the amount of traffic sent to a software-based NIDS for inspection. Simulations using real network traces and the Snort rule set show that a pre-filter can reduce up to 90% of network traffic that would have otherwise been processed by Snort software. The projected performance enables a computer to perform real-time intrusion detection of malicious content passing over a 10 Gbps network using FPGA hardware that operates with 10 Gbps of throughput and software that needs only to operate with 1 Gbps of throughput. Haoyu Song 0001, Todd Sproull, Michael Attig, John W. Lockwood |
FPL | 1 |
| 2005 | Multi-pattern signature matching for hardware network intrusion detection systemsabstractNetwork intrusion detection system (NIDS) performs deep inspections on the packet payload to identify, deter and contain the malicious attacks over the Internet. It needs to perform exact matching on multi-pattern signatures in real time. In this paper we introduce an efficient data structure called extended Bloom filter (EBF) and the corresponding algorithm to perform the multi-pattern signature matching. We also present a technique to support long signature matching so that we need only to maintain a limited number of supported signature lengths for the EBFs. We show that at reasonable hardware cost we can achieve very fast and almost time-deterministic exact matching for thousands of signatures. The architecture takes the advantages of embedded multi-port memories in FPGAs and can be used to build a full-featured hardware-based NIDS. Haoyu Song 0001, John W. Lockwood |
GLOBECOM | 1 |
| 2005 | Shape Shifting Tries for Faster IP Route LookupabstractSome of the fastest practical algorithms for IP route lookup are based on space-efficient encodings of multi-bit tries (M. Degermark, et al., 1997, W. Eatherton, 1999). Unfortunately, the time required by these algorithms grows in proportion to the address length, making them less attractive for IPv6. This paper describes and evaluates a new data structure called a shape-shifting trie, in which the data structure nodes correspond to arbitrarily shaped subtrees of the underlying binary trie for a given set of address prefixes. The ability to adapt the node shape to the trie reduces the number of nodes that must be accessed to perform a lookup, especially for tries with large sparse regions. We give a fast algorithm for optimally dividing a trie into nodes so as to minimize the maximum lookup depth. We show that seven data structure accesses are sufficient for route tables with more than 150,000 IPv6 prefixes. This makes it possible to achieve wire-speed processing for OC192 link using a single QDRII SRAM chip. Haoyu Song 0001, Jonathan S. Turner, John W. Lockwood |
ICNP | 1 |
| 2005 | Fast hash table lookup using extended bloom filter: an aid to network processingabstractHash tables are fundamental components of several network processing algorithms and applications, including route lookup, packet classification, per-flow state management and network monitoring. These applications, which typically occur in the data-path of high-speed routers, must process and forward packets with little or no buffer, making it important to maintain wire-speed throughout. A poorly designed hash table can critically affect the worst-case throughput of an application, since the number of memory accesses required for each lookup can vary. Hence, high throughput applications require hash tables with more predictable worst-case lookup performance. While published papers often assume that hash table lookups take constant time, there is significant variation in the number of items that must be accessed in a typical hash table search, leading to search times that vary by a factor of four or more.We present a novel hash table data structure and lookup algorithm which improves the performance over a naive hash table by reducing the number of memory accesses needed for the most time-consuming lookups. This allows designers to achieve higher lookup performance for a given memory bandwidth, without requiring large amounts of buffering in front of the lookup engine. Our algorithm extends the multiple-hashing Bloom Filter data structure to support exact matches and exploits recent advances in embedded memory technology. Through a combination of analysis and simulations we show that our algorithm is significantly faster than a naive hash table using the same amount of memory, hence it can support better throughput for router applications that use hash tables. Haoyu Song 0001, Sarang Dharmapurikar, Jonathan S. Turner, John W. Lockwood |
SIGCOMM | 1 |
| 2004 | Secure Remote Control of Field-programmable Network DevicesabstractA circuit and an associated lightweight protocol have been developed to secure communication between a control console and remote programmable network devices. The circuit provides encryption, data integrity checking and sequence number verification to ensure confidentiality, integrity and authentication of control messages sent over the public Internet. All of these functions are performed directly in FPGA hardware to provide high throughput and near-zero latency. The circuit has been used to control and configure remote firewalls and intrusion detection systems. The circuit could also be used to control and configure other distributed network applications. Haoyu Song 0001, John W. Lockwood, James Moscola |
FCCM | 1 |