서지주요정보
Design consideration for secure and reliable networked systems with high performance = 안전하고 믿을 수 있는 고성능 네트워크 시스템 설계에 대한 고찰
서명 / 저자 Design consideration for secure and reliable networked systems with high performance = 안전하고 믿을 수 있는 고성능 네트워크 시스템 설계에 대한 고찰 / Younghwan Go.
발행사항 [대전 : 한국과학기술원, 2018].
Online Access 원문보기 원문인쇄

소장정보

등록번호

8032441

소장위치/청구기호

학술문화관(문화관) 보존서고

DEE 18012

휴대폰 전송

도서상태

이용가능(대출불가)

사유안내

반납예정일

리뷰정보

초록정보

The explosive popularity of network communicating devices such as PCs, smartphones, tablets and IoT devices has driven massive growth in network data usage around the world. To meet the increasing network communication demand, a large number of networked systems are being constantly designed and deployed. Unfortunately, despite numerous efforts, we find that many networked systems often expose serious design problems in security, reliability and performance, which result in network attack, data corruption and perfor-mance bottleneck. This dissertation aims to identify the fundamental causes of these suboptimal designs and share our lessons in addressing them in real networked systems. As the first lesson in designing a secure networked system, we learn that a na?ve implementation of a complex policy often exposes security vulnerabilities, which leads to serious network attacks. When accounting for cellular data usage, we find that cellular ISPs either charge for TCP retransmission packets without robust retransmission detection or exclude them from billing by identifying retransmissions purely based on TCP header information. In either case, an attacker can easily exploit fake TCP retransmissions to either overcharge a targeted user or evade charging to use cellular data for free. To prevent such vulnerabilities, we develop a robust cellular data accounting system named Abacus, which accurately identifies fake TCP retransmission packets via efficient DPI. Abacus samples a few bytes strategically chosen from a retransmitted packet, unknown to the attacker, and efficiently compares against original packet payload for verification. As our second lesson, designing a reliable networked system often requires a clear understanding of users’ data usage patterns as a single corner case can result in catastrophic behavior that breaks data reliability. Mobile data clouds provide services to store and update user data with a guarantee for reliability and consistency. One important factor in mobile data synchronization is that these services operate over both structured and unstructured data such as a photo image linked with its metadata. However, we identify that existing services do not consider this close linkage and often fail to restore data to a consistent state after network or hard-ware failures, which are common for mobile users. As a result, unsynchronized mobile data can remain in a corrupted state and become unusable. We address this problem by presenting Simba, a novel mobile data synchronization service that ensures data consistency between tabular and object data through a logically unified table. To handle recovery after data corruption, we study mobile users’ data usage patterns and employ multiple local flags that can identify current state of the data after various failures. As our final lesson, we learn that building a networked system with high performance needs to take architectural differences into consideration as a reuse of existing designs from older platforms may result in an underperforming system. As a promising platform for high performance network applications, modern GPUs have been experimented with by many researchers to accelerate packet processing. Unfortunately, despite past research works that report performance improvement with GPUs, the PCIe data transfer delay, which is typically longer than individual packet processing time in GPU kernel, limits performance benefit in GPU-accelerated networked systems. As an alternate platform, an integrated GPU that shares DRAM with CPU can eliminate this overhead. However, we find that simply implementing the discrete GPU-based design on top of integrated GPU actually further degrades the performance. To avoid the problem, we redesign a networked system named APUNet, which addresses integrated GPU-specific issues such as memory contention and data synchronization overheads. We find that APUNet fully exploits the capacity of integrated GPU and operates in multi-10 Gbps networks with low cost and power. With the research works presented by Abacus, Simba and APUNet, we demonstrate that building a secure and reliable networked system with high performance requires design consideration on i) the security implications from any policy decision, ii) clear understanding of data usage patterns, and iii) architectural differences with existing design. While this dissertation focuses on addressing each design issue independently, we believe that our solutions are general and can be applied to other networked systems as well. We hope that our lessons and solutions serve as a stepping stone for building a next-generation networked systems platform.

네트워크 통신 기기인 PC, 스마트폰, 태블릿, IoT 기기 등의 인기로 인하여 모바일 데이터 사용량이 기하급수적으로 증가하였다. 증가하는 네트워크 통신 수요를 충족하기 위해 다수의 네트워크 시스템이 지속적으로 설계되고 구축되고 있다. 불행하게도 많은 노력에도 불구하고, 많은 네트워크 시스템이 보안, 신뢰성 및 성능을 위한 설계에서 중대한 문제를 노출하여 네트워크 공격, 데이터 손상 및 성능 병목 현상이 발생하는 경우가 많다. 이 논문은 이러한 하위 표본 설계의 근본적인 원인을 파악하고 실제 네트워크 시스템에서 다룰 때 얻은 우리의 교훈을 공유하는 것을 목표로 한다. 보안 네트워크 시스템을 설계하는 첫번째 교훈으로서 복잡한 정책을 순진하게 구현할 경우 종종 보안 취약성을 드러내고 이는 대부분 심각한 네트워크 공격으로 이어진다. 우리는 통신사가 셀룰러 데이터 사용량을 계산할 때 TCP 재전송 패킷을 강력한 재전송 탐지 없이 과금하거나 단순히 TCP헤더 정보에 근거하여 재전송이라 확인 후 과금에서 배제한다. 하지만 어느 경우에든 공격자는 허위 TCP재전송을 쉽게 이용하여 대상 사용자에게 추가과금을 시키거나 과금을 피해 셀룰러 데이터를 공짜로 쓸 수 있다. 이러한 취약점을 방지하기 위해 우리는 효율적인 DPI를 통해 가짜 TCP재전송 패킷을 정확히 식별하는 강력한 셀룰러 데이터 과금 시스템, Abacus를 개발한다. Abacus는 재전송 패킷에서 전략적으로 공격자에게 알려지지 않은 몇 바이트를 선택하고, 검증을 위해 원본 패킷 페이 로드와 효율적으로 비교한다. 두번째 교훈으로서, 신뢰할 수 있는 네트워크 시스템을 설계하는 것은 한 개의 특별 경우에 의해서 데이터 신뢰성을 떨어뜨리는 결과가 나올 수 있으므로 사용자들의 데이터 사용 패턴을 명확하게 파악하는 것이 필요하다. 모바일 데이터 클라우드는 신뢰성과 일관성을 보장하기 위해 사용자 데이터를 저장하고 업데이트하는 서비스를 제공한다. 모바일 데이터 동기화에서 한가지 중요한 요인은 이러한 서비스는 사진 이미지에 연결된 메타 데이터처럼 구조화와 구조화 되지 않은 데이터를 함께 사용한다는 점이다. 그러나 우리는 기존 서비스들이 이러한 긴밀한 연계를 고려하지 않고 있으며 모바일 사용자에게 일반적인 네트워크나 하드웨어 장애 이후에 일관된 상태로 데이터를 복원하지 못하는 것을 확인하였다. 그 결과 동기화되지 않은 모바일 데이터는 손상된 상태로 유지되고 사용할 수 없게 된다. 우리는 이 문제를 해결하기 위해 논리적으로 통합된 테이블을 통해 테이블 데이터와 객체 데이터 간의 일관성을 보장하는 새로운 모바일 데이터 동기화 서비스인 Simba를 소개한다. 데이터 손상 후 복구를 하기 위해 우리는 모바일 사용자의 데이터 사용 패턴을 연구하고 다양한 장애가 발생한 후 데이터의 현재 상태를 파악할 수 있는 여러 개의 로컬 플래그를 기용한다. 마지막 교훈으로 고성능 네트워크 시스템을 구축할 때 낡은 플랫폼에서 사용된 기존 설계를 사용할 경우 저성능을 보일 수 있으므로 구조적 차이에 대한 이해가 필요하다. 많은 연구자들은 고성능 네트워크 애플리케이션을 위한 유망한 플랫폼으로서 현대 GPU를 패킷 처리를 가속화하기 위한 실험으로 사용했다. 불행하게도, GPU를 통한 성능 개선을 보고하는 과거 연구 결과에도 불구하고 일반적으로 GPU 커널 안에서의 개별 패킷 처리 시간보다 긴 PCIe 데이터 전송 지연이 GPU 가속화 된 네트워크 시스템의 성능 이점을 제한하였다. 이를 대체하는 플랫폼인 내장 GPU는 CPU와 DRAM을 공유하여 이 오버헤드를 제거할 수 있다. 하지만 우리는 내장 GPU위에 외장 GPU 기반 설계를 구현할 경우 오히려 성능을 저하시킨다는 점을 발견하였다. 이 문제를 피하기 위해 우리는 메모리 경합과 데이터 동기화 오버헤드와 같이 내장 GPU에 국한된 문제를 해결하는 APUNet 네트워크 시스템을 설계한다. 우리는 APUNet이 내장 GPU의 용량을 모두 활용하고 저렴한 비용과 에너지로 수십 Gbps의 성능을 내는 것을 확인한다. Abacus, Simba와 APUNet에서 제시된 연구를 통해 우리는 안전하고 신뢰할 수 있는 네트워크 시스템을 구축할 떼 다음과 같은 설계 고려가 필요하다: i) 정책 결정시 보안 영향, ii) 데이터 사용 패턴에 대한 확실한 이해, iii) 기존 설계와 구조적 차이. 비록 이 논문은 각 설계 문제를 독립적으로 다루는 데 초점을 맞추고 있으나 우리는 해결책들이 일반적이고 다른 네트워크 시스템에도 적용될 수 있다고 믿는다. 우리는 이 교훈과 해결책들이 차세대 네트워크 시스템 플랫폼을 구축하기 위한 디딤돌 역할을 하기를 바란다.

서지기타정보

서지기타정보
청구기호 {DEE 18012
형태사항 viii, 92 p. : 삽화 ; 30 cm
언어 영어
일반주기 저자명의 한글표기 : 고영환
지도교수의 영문표기 : KyoungSoo Park
지도교수의 한글표기 : 박경수
학위논문 학위논문(박사) - 한국과학기술원 : 전기및전자공학부,
서지주기 References : p. 81-87
QR CODE

책소개

전체보기

목차

전체보기

이 주제의 인기대출도서