Education

Research Experience

Networking and Mobile Systems Laboratory, KAIST MAR. 2016 ∼ present

Networked and Distributed Computing Systems Laboratory, KAIST AUG. 2012 ∼ FEB. 2016

Electronics and Telecommunications Research Institute (ETRI) JUN. 2012 ∼ AUG. 2012

Electronics and Telecommunications Research Institute (ETRI) JUN. 2011 ∼ AUG. 2011

Publications

Awards

Research Projects

What can we do on an app crash? (ongoing)

No matter how hard app developers debug and test, no app can be guaranteed to be crash-free. On a crash, a user's ongoing task is disrupted and the user has to repeat the task. But who knows? The crash can happen again. We believe users deserve more than a frustrating 'app crashed' pop up that doesn't solve any problem. We are researching a better way to handle an app crash.

X-Droid: Ease the functional prototyping of Android apps

X-Droid is a framework that provides Android app developers an ability to quickly and easily produce functional prototypes. This work is motivated by the need for such ability and the lack of tools that provide it. Developers want to produce a functional prototype rapidly to test out potential features in real-life situations. However, current prototyping tools for mobile apps are limited to creating non-functional UI mockups that do not demonstrate actual features. With X-Droid, developers can create a new app that imports various kinds of functionality provided by other existing Android apps. [Website] [Paper] [Video (2 mins)] [Video (30 secs)] [Source]

mOS: Making middlebox networking stack reusable

Stateful middleboxes, such as intrusion detection systems and application-level firewalls, have provided key functionalities in operating modern IP networks. However, designing an efficient middlebox is challenging due to the lack of networking stack abstraction for TCP flow processing. Thus, middlebox developers often write the complex flow management logic from scratch, which is not only prone to errors but also wastes efforts for similar functionalities across applications. In this work, we design and implementation of mOS, a reusable networking stack for stateful flow processing in middlebox applications. [Paper] [Source]

Cedos: Offloading cellular data in the urban mobile network

Delay-tolerant Wi-Fi offloading is known to improve overall mobile network bandwidth at low delay and low cost. Yet, in reality, we rarely find mobile apps that fully support opportunistic Wi-Fi access. This is mainly because it is still challenging to develop delay-tolerant mobile apps due to the complexity of handling network disruptions and delays. In this work, we present Cedos, a practical delay-tolerant mobile network access architecture in which one can easily build a mobile app. [Paper] [Source]

Project For Fun

Street curator: Searching graffiti from Google street-views

Did you know that graffitis are not just scribbles and now perceived as a genre of modern art? Valparaiso, a small city in Chile even became UNESCO world heritage for its valuable graffitis. Graffitis have many fans who want to see and enjoy them; however, graffitis are hard to locate unlike other visual artworks as they are spread over cities. In this work, I present a graffiti search service that finds a geographic location for a graffiti image query by searching the image over the street-view of Valparaiso. It takes only 4.3 secs to search a graffiti over 4K+ streetview images through 3.4B+ vector comparison with a single machine. This work is presented as a term project for "Introduction to Big Data Analytics" course in KAIST in spring, 2014. [Source]

Skills

Android internals: Migrated activity manager framework and UI framework of Android from OS-level to user-level for a research prototype.

Network programming in C: Built high-speed network event processing module and elastic TCP ring buffer for mOS project. Also have experience on performance optimization on multi-10Gbps network system.

Parallel computing: Accelerated image searching by 38x with x86_64 SIMD instructions and GPU offloading for street curator project.

SPARC assembly: Developed a Linux USB driver and audio codecs for a SPARC-compatible processor.