Multicore-based auto-scaling SEcure Neighbor Discovery for Windows operating systems

SEcure Neighbor Discovery (SEND) is proposed to counter IPv6 Neighbor Discovery Protocol (NDP) security threats. However, SEND is compute-intensive. Fulfilling Hash2 condition in Cryptographically Generated Addresses (CGA) is the main heavy part of SEND. Unfortunately, CGA computation cannot see significant speed improvement when it runs on multicore machine because CGA generation algorithm is sequential. In this paper, we propose a multicore-based high performance SEND implementation for Windows families to speed up SEND computations. The proposed approach automatically detects the number of processors available on a machine and creates equivalent number of working threads to compute Hash2 condition. The parallelization mechanism is implemented to assign CGA computation to all the cores. When one thread satisfies CGA Hash2 condition, the others stop. With the parallel approach, the speedup time has been increased extremely by increasing the number of cores in the computing device. Besides the parallelization, we extend SEND implementation to generate the key pair for CGA algorithm on-the-fly to enhance the security and to protect the privacy.