Browse

Cross-layer Optimization Techniques for Secure Real-time 3D NAND Flash-Based Storage Systems
3차원 낸드 플래시 저장 장치의 보안성과 실시간성 보장을 위한 계층 교차 최적화 기법

Cited 0 time in Web of Science Cited 0 time in Scopus
Authors
김명석
Advisor
김지홍
Issue Date
2020
Publisher
서울대학교 대학원
Keywords
3D NAND Flash MemoryFlash Translation LayerNAND Flash-Based Storage SystemsEmbedded SystemsSecurityReal-timePerformance OptimizationLifetime Optimization낸드 플래시 메모리플래시 변환 계층낸드 플래시 기반 저장장치내장형 시스템데이타 보안실시간성성능 최적화수명 최적화
Description
학위논문 (박사) -- 서울대학교 대학원 : 공과대학 컴퓨터공학부, 2020. 8. 김지홍.
Abstract
In recent years, NAND flash-based storage systems have explosively grown in popularity owing to their unique advantages and the successful reduction in the cost-per-bit value of NAND flash memory. As NAND flash memory is widely adopted in various emerging data-driven applications, modern storage systems are required to satisfy new requirements such as high data security or real-time processing. Therefore, it becomes crucial to develop new optimization techniques that can properly address new challenges.

In this dissertation, we propose various optimization techniques that enable flash storage systems to support high data security and real-time processing without compromising the performance and the reliability of NAND flash memory. Our techniques are motivated by key findings that are based on comprehensive NAND characterization studies. We found that the read service time of flash storage systems can be significantly fluctuated and delayed by two major factors; One is iterative read operations to search optimal read reference voltages, called read retries and the other is a command conflict between read tasks and preceding I/O requests. Moreover, we also founded that the existing data sanitization techniques cannot avoid large performance or reliability penalties because they physically destroy the stored data. Therefore, to protect sensitive data reliably, a new approach is needed that provides equivalent security guarantees without physically changing the data. Based on our findings, we proposed optimization techniques to satisfy the new requirements of emerging storage markets.

We first introduce a practical read retry mitigation technique based on a new NAND aging marker that accurately represents the wear status of NAND blocks. Since the read retry operation is closely related to the wear of NAND flash memory, knowing the exact aging characteristics of individual NAND block is a prerequisite to minimize the read retries. From our evaluation study, we first show that the existing P/E cycle-based aging marker (PeWear) is inadequate to estimate the actual aging status of NAND blocks, thus losing opportunities for further optimizations. To overcome the limitations of PeWear, we propose a new NAND aging marker, RealWear, based on extensive characterization studies using real 3D TLC flash chips. By considering multiple variables that can affect the NAND cell wear, RealWear can accurately indicate the actual wear status of NAND blocks during run time. Based on the value of RealWear, we construct optimal read reference voltage tables and implement a RealWear-aware FTL, rFTL, that employs RealWear-specific module. Since an optimal read reference voltages can be directly provided without the time-consuming iterative searching, rFTL can significantly mitigate read latency fluctuations, guaranteeing that the read latency can be bounded with at most 2 read retry operations even in the worst-case scenario.

Secondly, we propose a new suspend/resume command for 3D NAND flash memory, called priority-aware Suspend/Resume (pSR). Unlike the existing preemption techniques, pSR limits the number of suspend/resume operations by permitting the preemption command only at predefined safe points, thus efficiently avoiding large reliability penalties due to excessive preemptions. Based on the accurate NAND error model, pSR partially allows read tasks to immediately suspend the ongoing flash operations with carefully managing the flash reliability. Since pSR efficiently eliminating the conflicts between flash operations, a high-priority read request can be served in a timely fashion without an unpredictable long delay.

Finally, we propose evanesco, a new data sanitization technique specifically designed for high-density 3D NAND flash memory. Unlike existing techniques that physically destroy stored data, evanesco provides data sanitization by blocking access to stored data. By exploiting existing spare flash cells in the flash memory chip, evanesco efficiently supports two new flash lock commands (pLock and bLock) that disable access to deleted data at both page and block granularities. Since the locked page (or block) can be unlocked only after its data is erased, evanesco provides a strong security guarantee even against an advanced threat model. To evaluate our technique, we build SecureSSD, an evanesco-enabled emulated flash storage system. Our experimental results show that SecureSSD can effectively support data sanitization with a small performance overhead and no reliability degradation.

In order to evaluate the effectiveness of the proposed techniques, we conducted a set of experiments with various benchmark tools and I/O traces collected from real-world applications. The experimental results showed that our proposed techniques allow a flash storage system to be managed in a timely fashion and to reliably protect sensitive data from a malicious attack, thus enabling NAND flash-based storage systems to better meet the various requirements of modern computing systems. Furthermore, our techniques can also improve both the performance and lifetime by fully leveraging the exact status of the individual NAND block.
최근 몇 년 동안 낸드 플래시 기반 스토리지 시스템은 플래시 메모리이 가지고 있는 여러 고유한 장점과 비트 당 비용 가치의 성공적인 감소로 인해 저장 장치 시장에서 폭발적으로 성장하고 있다. 낸드 플래시 메모리가 다양한 새로운 데이터 중심 애플리케이션에 널리 채택됨에 따라 최신 스토리지 시스템은 높은 데이터 보안 또는 실시간 처리와 같은 새로운 요구 사항을 충족해야한다. 따라서 새로운 요구 사항을 해결하기 위해서는 기존 기법의 최적화 정도를 뛰어넘을 수 있는 새로운 기법의 개발이 필요하다.

본 논문에서는 플래시 스토리지 시스템이 낸드 플래시 메모리의 성능과 안정성을 손상시키지 않으면서도 높은 데이터 보안 및 실시간 처리를 지원할 수 있는 다양한 최적화 기술을 제안한다. 우리의 기술은 실제 낸드 소자를 활용한 포괄적인 특성 연구의 결과를 기반으로 고안되었다. 플래시 스토리지 시스템 의 읽기 서비스 시간은 크게 두 가지 요인에 의해 변동되고 지연 될 수 있다. 하나는 최적의 읽기 기준 전압을 검색하기 위하여 반복적으로 읽기 작업을 수 행하는 읽기 재시도 동작이고 다른 하나는 읽기 작업과 이전에 수행중인 I/O 요청 간의 충돌이다. 또한 기존 데이터 삭제 기술은 저장된 데이터를 물리적으로 파괴하기 때문에 성능이나 신뢰성의 열화를 피할 수 없다. 따라서 중요한 데이터를 안정적으로 보호하려면 물리적으로 데이터를 변경하지 않고도 동등한 보안성을 보장할 수 있는 새로운 접근 방식이 필요하다.

본 논문에서는 낸드 소자에 대한 평가 결과를 바탕으로 스토리지 시장의 새로운 요구 사항을 충족시키는 최적화 기술을 제안한다.

첫째로, 낸드 블록의 마모 상태를 정확하게 나타내는 새로운 낸드 노화 지수를 기반으로 하는 실제 읽기 재시도 완화 기술을 개발하였다. 읽기 재시도 작업은 낸드 플래시 메모리의 마모와 밀접한 관련이 있으므로 개별 낸드 블록의 정확한 노화 특성을 아는 것은 읽기 재 시도를 최소화하기위한 필수 전제 조건이다. 사전 평가를 통하여 우리는 기존의 P/E 사이클 기반 노화 지수(PeWear)가 낸드 블록의 실제 노화 상태를 측정하기에 부적절함을 확인하였다. PeWear의 한계를 극복하기 위해 실제 3D TLC 플래시 칩을 사용한 광범위한 특성 평가를 기반으로 새로운 낸드 노화 지수 RealWear를 제안하였다. 낸드 셀의 마모에 영향을 줄 수있는 여러 변수를 고려하여 RealWear는 런타임 동안 낸드 블록의 실제 마모 상태를 정확하게 나타낼 수 있다. RealWear 의 값을 바탕으로 다양한 동작 조건을 고려한 최적의 읽기 기준 전압 테이블을 구성하고 이를 활용하기 위하여 RealWear 특정 모듈을 사용하는 RealWear-aware FTL, rFTL을 구현하였다. 성능 열화를 유발하는 반복적인 검색 작업없이 최적의 읽기 기준 전압을 직접 제공 할 수 있기 때문에 rFTL 은 읽기 지연 시간 변동을 크게 완화하여 최악의 시나리오에서도 읽기 지연 시간을 최대 2 번의 읽기 재시도 작업으로 제한 할 수 있다.

둘째로, 3D 낸드 플래시 메모리의 특성을 기반으로 우선 순위에 따라 suspend/resume (일시 선점/재개) 동작을 지원하는 기법을 제안한다 (pSR). 기존의 선점 기술과 달리 pSR 은 사전에 정의된 safe 지점에서만 선점 명령을 허용하여 일시 선점/재개 작업의 수를 제한하므로 과도한 선점 작업으로 인한 신뢰성 열화를 효과적으로 피할 수 있다. 정확한 낸드 오류 모델을 기반으로 pSR 은 부분적으로 읽기 작업이 진행중인 I/O 작업을 즉시 중단할 수 있도록 허용한다. pSR 은 플래시 작업 간의 충돌을 효율적으로 제거하기 때문에 예측할 수 없는 긴 지연없이 우선 순위가 높은 읽기 요청을 적시에 제공 할 수 있습니다.

마지막으로, 고 용량의 3D 낸드 플래시 메모리를 위해 새로운 데이터 삭제 기술인 evanesco 를 제안한다. 저장된 데이터를 물리적으로 파괴하는 기존 기술과 달리 evanesco 는 저장된 데이터에 대한 접근을 차단함으로써 저장된 데이터의 보안을 보장한다. 플래시 메모리 칩에서 제공되는 여분의 플래시 셀을 활용하여 evanesco 는 페이지 및 블록 단위로 삭제된 (플래시 칩에는 남아있는) 데이터에 대한 접근을 비활성화하는 두 개의 새로운 플래시 명령 (pLock 및 bLock)을 효율적으로 지원한다. 잠긴 페이지 (또는 블록)는 물리적으로 데이터 가 지워진 후에 만 잠금을 해제 할 수 있으므로 evanesco 는 다양한 위협 모델에 대해서도 강력한 보안을 보장한다. 이 기법의 효과를 평가하기 위해 evanesco를 지원하는 에뮬레이트 플래시 스토리지 시스템인 SecureSSD 를 구현하였다. 실험 결과를 바탕으로 SecureSSD 가 작은 성능 오버 헤드와 신뢰성 저하없이 데이터 삭제를 효과적으로 지원할 수 있음을 확인하였다. 본 논문에서 제안한 기법들은 저장장치 프로토타입 및 공개 낸드 플래시 저장장치 개발/평가 환경에 구현되었으며, 실제 응용 프로그램에서 수집한 다양한 벤치 마크 도구 및 I/O 트레이스들을(traces) 사용하여 그 유용성을 검증하였다. 실험 결과에 따르면 제안된 기술을 통해 플래시 스토리지 시스템을 적시에 관리하고 악의적 인 공격으로부터 민감한 데이터를 안전하게 보호할 수 있음을 확인하였다. 또한, 당사의 기술은 개별 드 블록의 정확한 상태를 완전히 활용하여 성능과 수명을 모두 향상시킬 수 있었다.
Language
eng
URI
https://hdl.handle.net/10371/169341

http://dcollection.snu.ac.kr/common/orgView/000000163460
Files in This Item:
Appears in Collections:
College of Engineering/Engineering Practice School (공과대학/대학원)Dept. of Computer Science and Engineering (컴퓨터공학부)Theses (Ph.D. / Sc.D._컴퓨터공학부)
  • mendeley

Items in S-Space are protected by copyright, with all rights reserved, unless otherwise indicated.

Browse