TY - GEN
T1 - Hardware-based hash functions for network applications
AU - Yamaguchi, Fumito
AU - Nishi, Hiroaki
N1 - Funding Information:
This work h:a.s been supportcd in part by a grant of thc EEC (BAP-0278-B) 2nd the Ddgi:w Fonds de 101 Recherche Scientilique Medicale (3.4512.85).
PY - 2013
Y1 - 2013
N2 - For rich network services, it is indispensable to reconstruct TCP stream in the middle of the network. In this reconstruction function, managing a large number of streams is a crucial as an embedded hardware for achieving high-throughput processing. In this case, hashing is a well-used solution as an ID key of TCP streams. Since CRC hashes have simple tree structure of XOR logics and are perfectly composed of combination logics, they can easily be hardware implemented and enables low-latency calculation of the hash values. Therefore, CRC hash has been used in network applications where low-latency and high speed operations are necessary. Some of their usages include data identification, load balancing, encryption, and checksum. Although CRC hashes may be well suited for hardware implementation, it is not the top choice when collision rates and distribution of hash values are considered. For some network workloads, CRC hashing shows very uneven distribution of hash values and can lead to decrease in the overall performance of network systems. In this study, two hashes, Jenkins hash and MurmurHash, are implemented on a FPGA as TCP connection manager and evaluated for their aptitude for hashing used in hardware-based network applications.
AB - For rich network services, it is indispensable to reconstruct TCP stream in the middle of the network. In this reconstruction function, managing a large number of streams is a crucial as an embedded hardware for achieving high-throughput processing. In this case, hashing is a well-used solution as an ID key of TCP streams. Since CRC hashes have simple tree structure of XOR logics and are perfectly composed of combination logics, they can easily be hardware implemented and enables low-latency calculation of the hash values. Therefore, CRC hash has been used in network applications where low-latency and high speed operations are necessary. Some of their usages include data identification, load balancing, encryption, and checksum. Although CRC hashes may be well suited for hardware implementation, it is not the top choice when collision rates and distribution of hash values are considered. For some network workloads, CRC hashing shows very uneven distribution of hash values and can lead to decrease in the overall performance of network systems. In this study, two hashes, Jenkins hash and MurmurHash, are implemented on a FPGA as TCP connection manager and evaluated for their aptitude for hashing used in hardware-based network applications.
KW - FPGA
KW - Hardware Implementation
KW - Hashing
KW - TCP Connection Manager
UR - http://www.scopus.com/inward/record.url?scp=84899416208&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=84899416208&partnerID=8YFLogxK
U2 - 10.1109/ICON.2013.6781990
DO - 10.1109/ICON.2013.6781990
M3 - Conference contribution
AN - SCOPUS:84899416208
SN - 9781479920846
T3 - IEEE International Conference on Networks, ICON
BT - 2013 19th IEEE International Conference on Networks, ICON 2013
PB - IEEE Computer Society
T2 - 2013 19th IEEE International Conference on Networks, ICON 2013
Y2 - 11 December 2013 through 13 December 2013
ER -