14
이름 학번 이메일 전화번호 김세호 201011317 [email protected] 010-9568-8280 박대규 201011329 [email protected] 010-9552-1624 차금옥 201011369 [email protected] 010-9437-0713 Wi-Fi 내 Direct 통신 프레임워크

Wi-Fi 내 Direct 통신dslab.konkuk.ac.kr/Class/2014/14CD2/1/제안서_final.pdf목차 1. 개발 동기 2. 관련 연구 2.1. IoT 2.1.1. IoT 기술 동향 2.1.2. IoT 관련 응용

  • Upload
    ngoanh

  • View
    233

  • Download
    10

Embed Size (px)

Citation preview

Page 1: Wi-Fi 내 Direct 통신dslab.konkuk.ac.kr/Class/2014/14CD2/1/제안서_final.pdf목차 1. 개발 동기 2. 관련 연구 2.1. IoT 2.1.1. IoT 기술 동향 2.1.2. IoT 관련 응용

이름 학번 이메일 전화번호

김세호 201011317 [email protected] 010-9568-8280

박대규 201011329 [email protected] 010-9552-1624

차금옥 201011369 [email protected] 010-9437-0713

Wi-Fi 내 Direct 통신 프레임워크

Page 2: Wi-Fi 내 Direct 통신dslab.konkuk.ac.kr/Class/2014/14CD2/1/제안서_final.pdf목차 1. 개발 동기 2. 관련 연구 2.1. IoT 2.1.1. IoT 기술 동향 2.1.2. IoT 관련 응용

목차

1. 개발 동기

2. 관련 연구

2.1. IoT

2.1.1. IoT 기술 동향

2.1.2. IoT 관련 응용

2.1.3. IoT 발전 방향

2.2. AllJoyn

2.2.1. AllJoyn 응용

3. Wi-Fi 내 Direct 통신 프레임워크

3.1. 전체 프레임워크 구조도

3.2. core 프레임워크

3.2.1. Discovery 모듈

3.2.2. Connection Management 모듈

3.2.3. Network Management 모듈

3.2.4. Security 모듈

3.3. Service 프레임워크

4. 역할 분담

5. 개발 일정

Page 3: Wi-Fi 내 Direct 통신dslab.konkuk.ac.kr/Class/2014/14CD2/1/제안서_final.pdf목차 1. 개발 동기 2. 관련 연구 2.1. IoT 2.1.1. IoT 기술 동향 2.1.2. IoT 관련 응용

1. 개발 동기

최근 IT분야에서 가장 주목 받고 있는 기술 중 하나가 IoT(Internet Of Thing)이다. 사물

간에 Network를 통하여 상호작용하는 이 기술은 추후 더욱 발전되어 인간의 생활에 필수

적인 기술이 될 것이라 예상한다. 그러므로 사물간의 네트워크를 필요로 하는 어플리케이

션을 구현하는 개발자들에게 좀 더 손쉽게 프로그램을 구현할 수 있도록 프레임워크를 개

발하고자 한다. 그리고 평소 관심을 두고 공부하였던 네트워크에 대해 더욱 심층적으로 공

부하고 유망한 기술에 대해 탐구하는 계기가 될 것이라 생각한다.

Windows 플랫폼 뿐만 아니라 Android나 다른 플랫폼 상에서도 쉽게 사용할 수 있는

cross-platform framework를 구현하고자 한다. 가장 먼저 고려했던 것은 Android

플랫폼을 탑재한 스마트폰과 windows나 여타 플랫폼을 기반으로 한 laptop 간의

Network였다. Gateway에 대하여 공부를 하다가 Gateway를 직접 Framework로 구현하여

사물 안에 탑재하는 방식을 고려하게 되었다. Alljoyn 방식의 Framework를 분석하고 좀

더 보완된 framework를 구현하고자 한다.

2. 관련 연구

2.1. IoT(Internet of Thing)

[그림1] IoT의 3대 주요 구성 요소

Page 4: Wi-Fi 내 Direct 통신dslab.konkuk.ac.kr/Class/2014/14CD2/1/제안서_final.pdf목차 1. 개발 동기 2. 관련 연구 2.1. IoT 2.1.1. IoT 기술 동향 2.1.2. IoT 관련 응용

● IoT란?

- 사람과 사물, 서비스 세가지 분산된 환경 요소에 대해 인간의 명시적 개입 없이 상

호 협력적으로 센싱, 네트워킹, 정보 처리 등 지능적 관계를 형성하는 사물 공간 연

결 망을 말한다.

- IoT의 주요 구성 요소인 사물은 유무선 네트워크에서의 end-device 뿐만 아니라,

인간 차량, 교량, 각종 전자장비, 문화재, 자연 환경을 구성하는 물리적 사물 등이

포함

- 이동통신망을 이용하여 사람과 사물, 사물과 지능통신을 할 수 있는 M2M의 개념을

인터넷으로 확장하여 사물은 물론, 현실과 가상세계의 모든 정보와 상호작용하는

개념으로 진화

● IoT 3대 주요 기술

1) 센싱 기술

- 전통적인 온도/습도열/가스/조도/초음파 센서 등에서부터 원격 감지, SAR, 레이더,

위치, 모션, 영상 센서 등 유형 사물과 주위 환경으로부터 정보를 얻을 수 있는 물

리적 센서를 포함

- 물리적인 센서는 응용 특성을 좋게 하기 위해 표준화된 인터페이스와 정보 처리 능

력을 내장한 스마트 센서로 발전하고 있으며, 또한, 이미 센싱한 데이터로부터 특정

정보를 추출하는 가상 센싱 기능도 포함되며 가상 센싱 기술은 실제 IoT 서비스 인

터페이스에 구현

- 기존의 독립적이고 개별적인 센서보다 한 차원 높은 다중(다분야) 센서기술을 사용

하기 때문에 한층 더 지능적이고 고차원적인 정보를 추출할 수 있음

[그림2] M2M과 IoT의 개념변화

Page 5: Wi-Fi 내 Direct 통신dslab.konkuk.ac.kr/Class/2014/14CD2/1/제안서_final.pdf목차 1. 개발 동기 2. 관련 연구 2.1. IoT 2.1.1. IoT 기술 동향 2.1.2. IoT 관련 응용

2) 유무선 통신 및 네트워크 인프라 기술

- IoT의 유무선 통신 및 네트워크 장치로는 기존의 WPAN, WiRi, 3G/4G/LTE,

Bluetooth, Ethernet, BcN, 위성통신, Microware, 시리얼 통신, PLC 등, 인간과 사

물, 서비스를 연결시킬 수 있는 모든 유·무선 네트워크를 의미

※ WPAN(Wireless Personal Area Networks)

※ 시리얼 통신: 일반적으로 컴퓨터 기기를 접속하는 방법의 하나로, 접속하는 선

의 수를 줄이고, 원거리까지 신호를 보낼 수 있도록 한 통신 방식이다.

3) IoT 서비스 인터페이스 기술

- IoT서비스 인터페이스는 IoT의 주요 3대 구성 요소(인간 · 사물 · 서비스)를 특정

기능을 수행하는 응용서비스와 연동하는 역할

- IoT 서비스 인터페이스는 네트워크 인터페이스의 개념이 아니라, 정보를 센싱, 가

공/추출/처리, 저장, 판단, 상황 인식, 인지, 보안/프라이버시 보호, 인증/인가, 디

스커버리, 객체 정형화, 온톨로지 기반의 시맨틱, 오픈센서 API, 가상화, 위치확인,

프로세스 관리, 오픈 플랫폼 기술, 미들웨어 기술, 데이터 마이닝 기술, 웹 서비스

기술, 소셜네트워크 등, 서비스 제공을 위해 인터페이스(저장, 처리, 변환 등) 역할

수행

2.1.1. IoT 기술 동향 - 개방형 IoT 디바이스 및 표준플랫폼 기술 동향

2.1.1.1. 국내 IoT/M2M 기술 동향

- 2012년 국내 최초로 전자부품연구원에서는 건물/빌딩 에너지 통합 관제 및 제어기술을

IoT를 오픈 웹기반 기술들을 중심으로 정의한 WoT(Web of Things)기술로 개발하였음. 본

기술은 다양한 스마트 에너지 관리 기술에 적용이 가능한 수준이며, 향후 클라우드 및 분

산환경에 적용이 가능함. 현재 본 기술은 오라클에서도 매우 큰 관심을 보이고 있으며, 활

발한 후속 연구 기획이 진행중임

- 2010년 국내 대표적인 통신기업인 KT에서 M2M 플랫폼을 개발하여 사물인터넷을 통한

USN기술이 통신사 서비스플랫폼에 연결되는 결과를 만든바 있으며, 이후 Open API기반의

KT의 KHub를 통해 유비쿼터스 미들웨어 기반 기술도 확보한바 있음

- 2012년 SKT에서는 국제 표준 규격을 준수한 서버와 단말 플랫폼으로 구성되는 개방형

M2M플랫폼을 개발하여, 상용화 서비스를 제공하고 있음. 이는 현재 국내에서 배포한 상용

M2M플랫폼 중 가장 완성도가 높은 상용 시스템으로 향후 국내 M2M시장의 성장을 크게

Page 6: Wi-Fi 내 Direct 통신dslab.konkuk.ac.kr/Class/2014/14CD2/1/제안서_final.pdf목차 1. 개발 동기 2. 관련 연구 2.1. IoT 2.1.1. IoT 기술 동향 2.1.2. IoT 관련 응용

견인할 것으로 평가 받고 있음

- 전체적으로 국내의 경우, M2M 단말 및 플랫폼 기술은 국책 연구를 넘어서 상용 화 단계

로 추진되고 있지만, IoT 플랫폼은 연구 초기 단계임. 삼성전자, LG전자 등 국내업체들이

글로벌 가전시장을 양분하고 있으나 IoT를 활용한 장기적 융합전략 부재로 IoT 시장에서

큰 성과를 보이지 못하고 있음

- 따라서, 규격화된 통신 모듈 및 다양한 센서의 생산과 보급, 무선네트워크 기술 발전에

따른 표준화 적극 참여, IoT 플랫폼 관련 개방성 확보 등의 노력을 적극적으로 추진하는 등

의 IoT 서비스 활성화 노력이 연속적으로 필요함

2.1.1.2. 국내 IoT/M2M 표준화 방향

- 우리나라의 경우 국책연구소 및 학교, 그리고 이동통신 사업자(KT, SKT와 LG U+)들과

삼성, LG 등 단말기사업자를 중심으로 M2M 기술 및 서비스 전략을 개발하고 있으며, 2009

년에는 방송통신위원회 산하에 IoT/M2M 포럼이 신설되어 표준화 활동을 추진하고 있음

- 2011년에는 정보통신기술협회(TTA) 이동통신 기술위원회(TC7) 산하에 사물지능통신 프

로젝트 그룹(PG708)이 생성되어 국가차원의 M2M 표준기술 개발을 기대할 수 있게 되었음

2.1.1.3. 국외 IoT 기술 동향

- 기업 IT 인프라가 인터넷을 기반으로 한 시스템으로 전환되면서 인터넷 아키텍처

(Internet Oriented Architecture)에 대한 관심이 증대되고 있으며 IBM은 스마트 그리드

서비스/관리 플랫폼 분야, Intel은 GE와 스마트 그리드 표준화 분야, Cisco는 보안 통신 인

프라분야, 구글은 GE와 스마트미터 협업을 통한 Power Meter 서비스 및 웹-에너지 IoT정

보 플랫폼 분야에서 두각을 나타내고 있음. Comverge는 스마트계량기 기반 가정에너지 사

용관리 분야, EnerNoc은 가정용 웹전력시스템 분야에 활발한 제품개발을 추진 중에 있음

ISSUE 11 개방형 IoT 플랫폼 기술 동향

- 2012년 윈드리버는 M2M 어플리케이션에 특화된 소프트웨어 개발 환경인 ‘윈드리버 인텔

리전트 디바이스 플랫폼’을 발표하여, M2M 디바이스 개발에 필요한 다양한 소프트웨어 모

듈을 상용 컴포넌트 형태로 제공하여 개발 시간을 줄일 수 있도록 하였음

- 개방형 IoT 디바이스로는 Arduino, Nanode가 있음. Arduino는 오픈소스 Wiring 플랫

폼의 연장으로 개발된 오픈소스 싱글보드 마이크로컨트롤러로서 이종프로젝트(multi-

disciplinary projects)에서 사용되는 전자기기들의 접근성을 용이하게 하기위한 목적으로

개발되었음. Nanode는 유무선 이더넷 인터페이스를 기반으로한 웹 접근성이 기본으로 구

현이 된 Arduino와 같은 오픈소스형 하드웨어임

Page 7: Wi-Fi 내 Direct 통신dslab.konkuk.ac.kr/Class/2014/14CD2/1/제안서_final.pdf목차 1. 개발 동기 2. 관련 연구 2.1. IoT 2.1.1. IoT 기술 동향 2.1.2. IoT 관련 응용

- 대표적인 실시간 개방형 IoT 플랫폼 및 응용서비스 구축 사례로는 사람들과 사물, 어플

리케이션, 그리고 IoT에 이어주기 위한 목적으로 개발된 세계최초 상용화 IoT프랫폼 서비

스인 Pachube가 있음. 영국에 본사가 있는 Pachube는 인터넷 기반 서비스를 통해 전세

계의 데이터를 실시간으로 관리할 수 있으며 등록한 사람들에게 전세계로부터 수집한 정보

들을 공유하고 협업할 수 있는 환경을 제공해 줌

2.1.1.4. 국외 IoT 표준 동향

- IoT 기술 표준은 유럽을 중심으로 다양한 연구 및 기술개발을 진행하고 있고, EC는 정책

적으로 확산에 주력하고 있는 가운데, 미래정보화 시대의 비전으로 자리매김하고 있음.

ITU-T를 중심으로 IoT에 관련된 표준화 활동이 2010년에 제안되었으며, 2011년 2월 새로

운 표준화 영역으로 설정하여 ITU-T의 관련 표준화 그룹들이 한 곳에 모여 협력 개발할

수 있도록 2011년 5월 IoT-GSI(Global Standards Initiative)를 설치하여 운영하기 시작하

였음

2.1.3. IoT 발전 방향

- IoT 시장을 빠르게 확대하기 위해서는 소비자 수요, 투자, 그리고 관련 정책계획의 균형

적 추진이 필수적이므로, 수요중심으로의 패러다임 전환에 적합한 시장 환경을 마련해야함

- 국제표준 기반의 개방형 IoT 플랫폼 개발 및 확보 : Network Connectivity와 IoT 응용

서비스에 대해 표준/개방형 인터페이스 제공 필요함

- 모듈/단말 제조업체, 솔루션 사업자 등의 직접적 이해당사자뿐만 아니라 대학 및 연구소,

정부 등의 협력을 통한 IoT 사업 선순환 체계 형성 필요)

- 크리티컬 매스에 도달하기 위해서는 수익성 확보와 함께 관련 업체들 간의 협업이 중요

하며, 협업의 구심점이 되는 IoT 플랫폼을 장악하는 기업이 IoT 시장의 리더가 될 것으로

예상

- 국내에서도 IoT 디바이스, 네트워크, 애플리케이션뿐만 아니라 IoT 플랫폼역량을 가진

업체가 등장해야 하며, 그렇지 못할 경우 해외 업체의 플랫폼에 종속될 가능성이 있음

- IoT 지원 Access망 확대, 서비스 범위 확장, 서비스 유형 확대, 지원 부가서비스 확대를

목표로 Multi-Access 기반 개방형 IoT 플랫폼으로 고도화 추진

Page 8: Wi-Fi 내 Direct 통신dslab.konkuk.ac.kr/Class/2014/14CD2/1/제안서_final.pdf목차 1. 개발 동기 2. 관련 연구 2.1. IoT 2.1.1. IoT 기술 동향 2.1.2. IoT 관련 응용

2.2 AllJoyn

- Alljoyn이라는 기술은 Quacomm 산하 Qualcomm Inovation Center(QuIC)가 개발하였으며, 오

픈소스로 개발.

- Alljoyn은 근거리 기반의 기기간 peer-to-peer기술로 중계서버(termidiary server)없이 device와

device가 direct로 통신할 수 있도록 하는 Framework이다. Windows, linux, android 환경에서

alljoyn에 기반을 둔 application을 개발할 수 있다. Alljoyn 기술은 같은 AP안의 Wi-Fi에 연결 되

어있는 Device간의 통신을 하도록 한다.

- Alljoyn는 Application 개발자가 Network Layer에서 어떤 통신 기술을 사용하는지 고려하지 않

아도 된다. 개념적으로는 Alljoyn 프레임워크가 알아서 Wi-Fi 혹은 Bluetooth를 상황에 맞게 선택

하나 현실적으로는 동일 Wi-Fi 내에 접속 중인 Device끼리 통신한다.

-연결된 Device들은 RMI(Remote Method Invocation)방식으로 데이터를 전달한다. Annotaion을

추가한 interface 파일을 서로 공유하고, proxy를 통해 해당 interface의 method를 호출하는 방식

이다. 소켓 프로그래밍처럼 주고 받을 데이터의 순서와 타입에 대한 약속을 하고 예외처리를 할 필

요 없이 method를 정의하고 호출하는 방식으로 동작한다.

-Alljoyn Daemon : Alljoyn기반의 Application이 정상적으로 다른 Device와 통신하기 위해서는 각

device에 한 개 이상의 Alljoyn daemon이 동작하고 있어야 한다. Application 개발자는 Alljoyn

library를 링크하고 여기에 정의된 API를 호출하는 방식으로 Daemon에 Service를 등록하거나

Client로서 Service를 찾고 연결하여 method를 호출할 수 있다.

-Daemon이 설치된 Device가 같은 네트워크 안에 연결되면, Daemon이 서로의 존재를 인지하고

정보를 교환한다. 교환하는 정보는 자신에게 연결된 Service의 종류, 자신에게 연결된 Client와

해당 Client가 요청하는 Service 등이 있다. 개념적으로는 같은 네트워크 안에 연결된 Device

가 하나로 연결되어 가상의 Alljoyn Bus가 만들어지는 형태이다. Device의 경계는 사라지고

Page 9: Wi-Fi 내 Direct 통신dslab.konkuk.ac.kr/Class/2014/14CD2/1/제안서_final.pdf목차 1. 개발 동기 2. 관련 연구 2.1. IoT 2.1.1. IoT 기술 동향 2.1.2. IoT 관련 응용

Alljoyn Bus안에서 Client가 제공하는 Service의 종류와 Client가 요청하고 있는 Service의 종

류가 중요해졌다.

2.2.1. alljoyn 응용

1) Gaming & Play

Alljoyn의 peer-to-peer를 이용하여 플랫폼에 상관없이 local의 player와 함께 게임을 즐길 수 있

다. 현재 alljoyn을 이용한 다양한 게임들이 개발되어 있다.

<Alljoyn을 통해 개발한 3D Rollercoaster Rush New York APP>

2) Multi-Screen

요즘 거실에서 TV와 경쟁하는 매체로 가장 주목 받는 것이 Tablet이다. Alljoyn Framework를 사

용하여 TV와 Tablet간에 공유되는 미디어 쉐어 응용을 구현할 수 있다.

<Alljoyn을 통해 상호작용하는 스마트폰과 TV>

Page 10: Wi-Fi 내 Direct 통신dslab.konkuk.ac.kr/Class/2014/14CD2/1/제안서_final.pdf목차 1. 개발 동기 2. 관련 연구 2.1. IoT 2.1.1. IoT 기술 동향 2.1.2. IoT 관련 응용

3. Wi-Fi 내 Direct 통신 프레임워크

3.1. 전체 프레임워크 구조도

3.2. core 프레임워크

각 디바이스, 즉 Wi-Fi 연결이 가능한 Mobile 기기의 응용프로그램들은 해당 플랫폼의

Daemon과 통신을 하게 되고, Daemon은 응용프로그램이 다른 디바이스와 주고 받는 데이

Page 11: Wi-Fi 내 Direct 통신dslab.konkuk.ac.kr/Class/2014/14CD2/1/제안서_final.pdf목차 1. 개발 동기 2. 관련 연구 2.1. IoT 2.1.1. IoT 기술 동향 2.1.2. IoT 관련 응용

터를 Routing하는 역할을 한다. 각 디바이스는 Wi-Fi에 연결된 상태에서 TCP 통신을 하고

응용프로그램과 Daemon은 Local socket 통신을 한다.

Daemon은 디바이스 내 응용프로그램들이 전송하는 데이터 패킷들이 거쳐가는 일종의

Gateway 역할을 하는데, 디바이스 간 Direct 통신을 제공하는 주체이다. 각 디바이스의

Daemon들은 같은 네트워크(Wi-Fi)에 접속된 Daemon들 간의 정보를 주기적으로 교환한다.

해당 Daemon이 네트워크 상에 아직 존재하는지 Health checking을 하는 것이다.

각 Daemon들은 데이터를 주고 받는 메시지 타입이 4가지로 정의된다.

Signal (Async.) : 시그널은 Broadcast, Multicast, Point-to-Point 전송에 사용한다.

Method call (Sync.) : RPC(Remote Procedure Call)를 할 때 사용한다.

Method reply (Sync.) : RPC의 리턴 메시지를 보낼 때 사용한다.

Error : RPC에 대한 에러 메시지를 리턴할 때 사용한다.

Method call과 reply는 Synchronous 이벤트이므로 response가 올 때까지 Block된다.

3.2.1. Discovery 모듈

Discovery : ad-hoc bus formation between devices or applications.

Page 12: Wi-Fi 내 Direct 통신dslab.konkuk.ac.kr/Class/2014/14CD2/1/제안서_final.pdf목차 1. 개발 동기 2. 관련 연구 2.1. IoT 2.1.1. IoT 기술 동향 2.1.2. IoT 관련 응용

Ad-hoc 버스 형식으로 응용프로그램 간 Peer-To-Peer 통신을 한다. 각 Peer들은

RPC Call이나 일반적인 TCP 송수신을 수행할 수 있다.

3.2.2. Connection Management 모듈

Connection Management : namespace maintenance, app addressing

각 Daemon들은 응용프로그램에 대한 namespace를 유지하고 있다가, 세션이 연결되

면 각 Daemon들은 namespace를 공유한다. 세션이 유지되는 동안 디바이스 간 통신

상태는 살아있음을 의미한다. Multicast의 경우 세션에 연결된 모든 Peer에게 보낼 수

있다.

3.2.3. Network Management 모듈

Network Management : participants recognize when peers join or leave network

각 Peer들은 다른 Peer들이 접속하거나 떠날 때 그를 발견할 수 있어야 한다. 그리고

API를 이용하여 Peer들은 서로 상호작용이 가능하다.

3.2.4. Security 모듈

Page 13: Wi-Fi 내 Direct 통신dslab.konkuk.ac.kr/Class/2014/14CD2/1/제안서_final.pdf목차 1. 개발 동기 2. 관련 연구 2.1. IoT 2.1.1. IoT 기술 동향 2.1.2. IoT 관련 응용

각 응용프로그램들은 중요한 정보에 대한 암호화 키를 유지하고 있다. 패킷에 대한 필요한 정보를

추출하기 위해 유지하고 있던 키로 인증을 한다. 보안 및 비보안 Method call 인터페이스를 제공한

다.

3.3. Service 프레임워크

Onboarding

같은 네트워크(Wifi) 상의 디바이스가 접속했을 때 사용자가 쉽게 사용 가능한 서비스

들을 볼 수 있고, 선택할 수 있다.

Notification

쉽게 다른 디바이스의 응용프로그램에 Broadcast할 수 있고, 기본적인 데이터(텍스트

나 이미지 등)를 수신할 수 있다.

Control Panel

스마트폰 혹은 태블릿 PC 같은 Graphical interface를 사용할 수 있는 디바이스로 다

른 디바이스들을 제어(control)할 수 있다.

Audio

Audio 기능이 사용 가능한 디바이스는 다른 디바이스로부터 받은 Audio를 출력한다.

Page 14: Wi-Fi 내 Direct 통신dslab.konkuk.ac.kr/Class/2014/14CD2/1/제안서_final.pdf목차 1. 개발 동기 2. 관련 연구 2.1. IoT 2.1.1. IoT 기술 동향 2.1.2. IoT 관련 응용

4. 역할 분담

이름 역할

김세호 discovery, security 모듈 구현

박대규 Connection 모듈, Service Framework 구현

차금옥 Network 모듈, Service Framework 구현

5. 개발 일정

일련

번호

주요 내용 추진 일정 소요

기간 4 5 6 7 8 9 10

1 자료조사 및 분석 6주

2 제안서 작성 6주

3 프레임워크 구조 설계 10주

4 CORE 프레임워크 개발 8주

5 Service 프레임워크 개발 8주

6 모듈 통합 및 통합 테스트 4주

7 프레임워크 활용성 검증 4주

8 최종 테스트 및 보고서 작성 4주