A dynamic load-balanced hashing scheme for networking applications

N. Sertac Artan, Haowei Yuan, H. Jonathan Chao

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

Network applications often require large data storage resources, fast queries, and frequent updates. Hash tables support these operations with low costs, yet they cannot provide worst-case guarantees because of hash collisions. Also, the widely used, low-cost Dynamic Random Access Memory (DRAM) cannot suitably accommodate hash tables because DRAMs provide full bandwidth only if accessed in bursts, whereas hash tables require random access. In this paper, we propose a hash co-processor to support hash tables on DRAMs. The co-processor provides a load-balancing method to reduce the impact of hash collisions on the worst-case behavior by moving multiple keys within the hash table in constant time. This leads to a balanced distribution of keys in the hash table despite the collisions. Furthermore, the coprocessor guarantees the full DRAM bandwidth is always utilized by defining all fundamental hash table operations, namely insert, query, and delete, in terms of burst accesses. In the worst case, the query, delete, and insert operations take one, two, and three burst accesses, respectively. The proposed architecture reduces hash overflows by 35% compared to a naive hash table and for each key uses 6.42 bits of on-chip memory.

Original languageEnglish (US)
Title of host publication2008 IEEE Global Telecommunications Conference, GLOBECOM 2008
Pages2051-2056
Number of pages6
DOIs
StatePublished - 2008
Event2008 IEEE Global Telecommunications Conference, GLOBECOM 2008 - New Orleans, LA, United States
Duration: Nov 30 2008Dec 4 2008

Other

Other2008 IEEE Global Telecommunications Conference, GLOBECOM 2008
CountryUnited States
CityNew Orleans, LA
Period11/30/0812/4/08

Fingerprint

Dynamic loads
Data storage equipment
Dynamic random access storage
Bandwidth
Resource allocation
Costs
Coprocessor

ASJC Scopus subject areas

  • Electrical and Electronic Engineering

Cite this

Artan, N. S., Yuan, H., & Chao, H. J. (2008). A dynamic load-balanced hashing scheme for networking applications. In 2008 IEEE Global Telecommunications Conference, GLOBECOM 2008 (pp. 2051-2056). [4698170] https://doi.org/10.1109/GLOCOM.2008.ECP.395

A dynamic load-balanced hashing scheme for networking applications. / Artan, N. Sertac; Yuan, Haowei; Chao, H. Jonathan.

2008 IEEE Global Telecommunications Conference, GLOBECOM 2008. 2008. p. 2051-2056 4698170.

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Artan, NS, Yuan, H & Chao, HJ 2008, A dynamic load-balanced hashing scheme for networking applications. in 2008 IEEE Global Telecommunications Conference, GLOBECOM 2008., 4698170, pp. 2051-2056, 2008 IEEE Global Telecommunications Conference, GLOBECOM 2008, New Orleans, LA, United States, 11/30/08. https://doi.org/10.1109/GLOCOM.2008.ECP.395
Artan NS, Yuan H, Chao HJ. A dynamic load-balanced hashing scheme for networking applications. In 2008 IEEE Global Telecommunications Conference, GLOBECOM 2008. 2008. p. 2051-2056. 4698170 https://doi.org/10.1109/GLOCOM.2008.ECP.395
Artan, N. Sertac ; Yuan, Haowei ; Chao, H. Jonathan. / A dynamic load-balanced hashing scheme for networking applications. 2008 IEEE Global Telecommunications Conference, GLOBECOM 2008. 2008. pp. 2051-2056
@inproceedings{aa0ea1acdee6417cbde7fb9408a7ef40,
title = "A dynamic load-balanced hashing scheme for networking applications",
abstract = "Network applications often require large data storage resources, fast queries, and frequent updates. Hash tables support these operations with low costs, yet they cannot provide worst-case guarantees because of hash collisions. Also, the widely used, low-cost Dynamic Random Access Memory (DRAM) cannot suitably accommodate hash tables because DRAMs provide full bandwidth only if accessed in bursts, whereas hash tables require random access. In this paper, we propose a hash co-processor to support hash tables on DRAMs. The co-processor provides a load-balancing method to reduce the impact of hash collisions on the worst-case behavior by moving multiple keys within the hash table in constant time. This leads to a balanced distribution of keys in the hash table despite the collisions. Furthermore, the coprocessor guarantees the full DRAM bandwidth is always utilized by defining all fundamental hash table operations, namely insert, query, and delete, in terms of burst accesses. In the worst case, the query, delete, and insert operations take one, two, and three burst accesses, respectively. The proposed architecture reduces hash overflows by 35{\%} compared to a naive hash table and for each key uses 6.42 bits of on-chip memory.",
author = "Artan, {N. Sertac} and Haowei Yuan and Chao, {H. Jonathan}",
year = "2008",
doi = "10.1109/GLOCOM.2008.ECP.395",
language = "English (US)",
isbn = "9781424423248",
pages = "2051--2056",
booktitle = "2008 IEEE Global Telecommunications Conference, GLOBECOM 2008",

}

TY - GEN

T1 - A dynamic load-balanced hashing scheme for networking applications

AU - Artan, N. Sertac

AU - Yuan, Haowei

AU - Chao, H. Jonathan

PY - 2008

Y1 - 2008

N2 - Network applications often require large data storage resources, fast queries, and frequent updates. Hash tables support these operations with low costs, yet they cannot provide worst-case guarantees because of hash collisions. Also, the widely used, low-cost Dynamic Random Access Memory (DRAM) cannot suitably accommodate hash tables because DRAMs provide full bandwidth only if accessed in bursts, whereas hash tables require random access. In this paper, we propose a hash co-processor to support hash tables on DRAMs. The co-processor provides a load-balancing method to reduce the impact of hash collisions on the worst-case behavior by moving multiple keys within the hash table in constant time. This leads to a balanced distribution of keys in the hash table despite the collisions. Furthermore, the coprocessor guarantees the full DRAM bandwidth is always utilized by defining all fundamental hash table operations, namely insert, query, and delete, in terms of burst accesses. In the worst case, the query, delete, and insert operations take one, two, and three burst accesses, respectively. The proposed architecture reduces hash overflows by 35% compared to a naive hash table and for each key uses 6.42 bits of on-chip memory.

AB - Network applications often require large data storage resources, fast queries, and frequent updates. Hash tables support these operations with low costs, yet they cannot provide worst-case guarantees because of hash collisions. Also, the widely used, low-cost Dynamic Random Access Memory (DRAM) cannot suitably accommodate hash tables because DRAMs provide full bandwidth only if accessed in bursts, whereas hash tables require random access. In this paper, we propose a hash co-processor to support hash tables on DRAMs. The co-processor provides a load-balancing method to reduce the impact of hash collisions on the worst-case behavior by moving multiple keys within the hash table in constant time. This leads to a balanced distribution of keys in the hash table despite the collisions. Furthermore, the coprocessor guarantees the full DRAM bandwidth is always utilized by defining all fundamental hash table operations, namely insert, query, and delete, in terms of burst accesses. In the worst case, the query, delete, and insert operations take one, two, and three burst accesses, respectively. The proposed architecture reduces hash overflows by 35% compared to a naive hash table and for each key uses 6.42 bits of on-chip memory.

UR - http://www.scopus.com/inward/record.url?scp=67249160140&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=67249160140&partnerID=8YFLogxK

U2 - 10.1109/GLOCOM.2008.ECP.395

DO - 10.1109/GLOCOM.2008.ECP.395

M3 - Conference contribution

AN - SCOPUS:67249160140

SN - 9781424423248

SP - 2051

EP - 2056

BT - 2008 IEEE Global Telecommunications Conference, GLOBECOM 2008

ER -