정보광장

보기

제 목 [Vol.6 No.4] OPEN CONNECTIVITY FOUNDATION (OCF) 소개
작성자 관리자 이메일 information@kics.or.kr
작성일 2016-12-14 조 회 187
내 용
 

OPEN CONNECTIVITY FOUNDATION (OCF) 소개


작성자: 김태영(한경대), 정진호(한경대), 이호원(한경대)

1.OCF (Open Connectivity Foundation) 개요

  ① OIC(Open Interconnect Consortium)에 Microsoft, Qualcomm, Electrolux가 새롭게 합류하면서 확장된 Internet of Things(IoT) 표준 단체임[1] [2]
   I.OIC: Samsung, Intel, Cisco, MediaTek 4개사가 창립 보드 멤버로 신설한 IoT 표준 단체
    A.2015년 12월 smart home의 대표적 표준 단체인 UPnP(Universal Plug and Play)포럼을 통합 흡수하면서 회원사 수가 100개 이상으로 성장함
    B.UPnP의 다양한 기술을 OIC로 통합하면서 기술발전과 연결기기를 지속적으로 확대 중임

Figure 1. OIC에서 OCF로 단체명 변경



  ② OCF의 운영, 특허 정책 등 모든 내용이 OIC와 동일하지만 신규 회원사의 참여 후 새로운 branding과 marketing 차원에서 Figure 1과 같이 단체명만
     변경함
  ③ OCF 회원사는 지속적으로 증가하여 현재 200개를 넘어서고 있으며 그 규모는 더욱 빠르게 증가하고 있음
  ④ 현재 OCF 전체의 운영 및 결정권을 행사하는 보드 멤버는 Figure 2에서 보이는 총 15개의 기관으로 구성되어 있음



Figure 2. OCF 보드 회원사



 ⑤ 회원사는 Diamond members, Platinum members, Gold members, Non-profit/Academic members, Basic members로 분류되며, 현재 국내에서 참여 중인
    업체로는 Diamond members에 Samsung과 LG, Gold members에 DT&C, ETRI, Modacom, Samsung Electro-Mechanics, Samsung SDS, SK Telecom,
    SmartThings (Samsung), TTA, Non-profit/Academic members에 Hankyong National University, KAIST, KETI, Kookmin University, NIA, NIPA, POSTECH,
    Seoul University, Sungkyungkwan University, Soongsil University가 있다.


2. OCF 운영 방식

  ①Open Source와 specification을 동시에 개발하는 운영 방식을 채택함[3] [4]
   I.Specification을 개발함과 동시에 open source를 개발하여 외부에 확산하는 역할을 동시에 수행함
   II.Specification 개발 이후 각 업체가 자체적으로 software를 개발해야 하는 부담을 줄이고 OCF specification 개발과 동시에 시장에서 제품에 즉시
     탑재되어 확산될 수 있도록 유도함
  ②Linux Foundation을 통해 OCF open source project인 IoTivity를 운영 중임[5]
   I.Linux Foundation : Open source project 운영을 전담하는 비영리 단체
   II.Open source의 외부 개발자 참여가 확산되는 것을 목적으로 두고 있음
Figure 3. OCF의 open source와 specification의 개발 협력 구조도


  ③Open source project인 IoTivity는 OCF specification을 기반으로 개발되며 그 외에 다양한 IoT 기술들도 수용되어 개발되고 있음
   I.IoTivity 개발에 필요한 운영 비용은 OCF에서 지원함
   II.외부 open source 개발자 입장에서 보면, IoTivity는 OCF와는 무관한 순수 open source project임
   III.IoTivity를 채용하는 제품은 OCF specification을 자연스럽게 혼용할 수 있도록 하여 제품 간 연동성을 확보함
  ④OCF는 specification을 준수하여 개발된 제품에 대한 인증 프로그램을 운영하고 있음
   I.인증에 필요한 검사를 통과한 제품에 대해 OCF 공식 logo를 부여하고 이 logo을 통해 소비자가 쉽게 OCF 인증 제품을 확인하고 구매할 수 있도록 유도함
  ⑤무상 특허 정책[3]
   I.기술 특허에 대한 제약은 결국 IoT 시장 형성과 확산에 큰 저해 요소가 될 것이므로 OCF는 이러한 문제가 발생하지 않도록 무상 특허 정책을 수립함
    A.OCF 회원 가입 시 회원사 간 OCF의 기술 관련 특허를 무상으로 사용 가능함
    B.회원사의 자회사와 모회사를 모두 포함하므로 OCF 기술을 상품화하고 사업화하는데 특허에 대한 제약이 없음
    C.IoTivity의 경우 Apache 2.0 Open Source License를 채택하였으며 open source에 기여하는 모든 기술의 특허는 모두 무상으로 사용 가능함

☞ Apache 2.0 Open Source License : Apache Software Foundation에서 자체적으로 만든 software에 대한 license 규정. Apache 2.0 Open Source License는 누구나 해당 software에서 파생된 program을 제작할 수 있으며 저작권을 양도, 전송할 수 있는 license규정을 의미한다. Apache license에 따르면 누구든 자유롭게 Apache software를 다운받아 부분 혹은 전체를 개인적, 상업적 목적으로 이용할 수 있으며 재배포시에는 원본 source code 또는 수정한 source code를 반드시 포함시켜야 하는 것은 아니고 Apache License 2.0을 포함시켜야 하며 Apache Software Foundation에 개발된 software라는 것을 명확하게 밝혀야 한다.

3. OCF 표준 동향

 ①다양한 IoT 유무선 연결 기술들 상에서 program이 유연하게 탑재되어 동작이 가능하도록 framework이 고안됨[5]
   I.Framework을 기반으로 smart home, auto mobile, healthcare등등의 다양한 IoT service를 개발 중임
   II.IoT기기의 연결을 위한 공통된 standard model 구축을 통해 device들 사이의 결집성을 확대시킴.
   III.Peer-to-peer나, mesh & bridging이나 reporting & control과 같은 다양한 통신 model들에 대한 구현을 지원함.
IV.IoT와 wearable device에 대한 접근성을 확대하고 onboarding & provisioning을 지원함.

☞ Onboarding은 network에 안전하게 접속하기 위한 자동 device 구성을 의미한다. Provisioning은 user의 요구에 맞게 system resource를 할당, 배치, 배포해 두었다가 필요 시 system을 즉시 사용할 수 있는 상태로 미리 준비해 두는 것을 의미한다. Server resource provisioning, OS provisioning, software provisioning, storage provisioning, account provisioning 등이 있다. 또한, 수동으로 처리하는 ‘manual-provisioning’과 자동화 tool을 이용해 처리하는 ‘auto-provisioning’이 있다.

Figure 4. OCF architecture 개념도[2]


  ②OIC specification 1.1 기반의 IoTivity 1.1.0 open source는 현재 개발이 완료되어 배포되고 진행 중임.
   I.OIC specification 1.1, IoTivity 1.1.0 open source 모두 해당 홈페이지 에 공개됨
   II.IoTivity 1.1.0은 Ubuntu, Tizen, Android 등 다양한 software platform 상에서 동작이 가능하며 특히 Arduino와 같은 경량 platform에도 탑재 가능함
   III.OIC 1.1 이후 version은 AllSeen Alliance 관련 요구사항을 수렴하여 기기 간 상호 호환성 보장을 위해 확대 개발될 예정임
  ③OCF 1.0은 기존 OIC 1.1 표준 기술과 호환되며 동시에 AllSeen 인증 device와의 호환성도 제공함
   I.다양한 IoT 관련 기존 기술들과 연결성을 제공하기 위해 bridging 기능을 제공하며 이를 통해 OCF기술이 아닌 device들과도 연결이 가능함
  ④OCF는 현재 사용자들이 폭넓게 사용하는 Internet/Web 구조인 RESTful 방식을 채용함
   I.Client-server 모델로 각 server는 자신들이 제공 가능한 다양한 IoT service를 resource 형태로 정의함
   II.IoT 특성 상 경량 device 수의 증가를 예상하여 OCF는 CoAP(Constrained Application Protocol) specification을 채택하여 OCF device를 탐색하고,
   발견하고 제어하는 protocol을 사용해 경량 device로의 IoT program 탑재 및 동작을 지원함
   III.OCF device 발견을 지원하는 RD(Resource Directory) 기능도 제공하여 사용자가 원하는 OCF device를 쉽게 발견 가능함

☞ RESTful : REST(Representational State Transfer)란 World Wide Web과 같은 분산 hyper media system을 위한 software architecture의 한 형식. Resource를 정의하고 resource에 대한 주소를 지정하는 방법 전반을 일컫는 말이며 간단한 의미로는, 웹 상의 자료를 HTTP위에서 SOAP나 cookie를 통한 session tracking같은 별도의 전송 계층 없이 전송하기 위한 아주 간단한 interface이다. 이러한 REST원리를 따르는 system을 RESTful system이라고 지칭한다.
☞ CoAP(Constrained Application Protocol) : Internet에서 IoT device처럼 제한된 computing 성능을 갖는 device들의 통신을 위해 IETF의 CoRE(Constrained RESTful Environment) working-group에서 표준화한 protocol. 신뢰성 있는 동기 수송 방식의 TCP와 그 위의 HTTP는 많은 resource제약을 가진 IoT 환경에서는 적합하지 않아 비동기 수송 방식의 UDP상에서 UDP의 단점을 보완하는 개념을 포함한 통신 protocol이 CoAP이다.


Figure 5. OCF service 구조[3]

1 https://openconnectivity.org/resources/iotivity
 
⑤OCF에서 RAML(RESTful API Modeling Language)과 JSON(JavaScript Object Notation) 언어를 이용해 data model을 정의하며 공개 사이트를 통해 이를
   공개하고 있음
   I.IoT service 특징 상 다양한 service가 개발되고 확장될 것으로 예상되며 따라서 쉽게 확장될 수 있는 date model이 필요함
   II.개발자가 자신이 필요한 data model을 확인하여 사용 가능함
   III.신규 service를 위해 추가로 data model을 정의해야 하는 경우 해당 data model을 제안하고 검토하는 과정을 거쳐 OCF specification에 반영할 수 있음
   IV.공개 사이트를 통해 개발자의 중복 service 정의를 방지하고 동일한 data model을 device에 탑재함으로써 호환성 확대 효과를 기대하고 있음

4. References

[1]Open Connectivity Foundation, “What is OCF?”, http://openconnectivity.org.
[2]Open Connectivity Foundation (OCF), “OCF overview seminar - Taipei 2016”, http://openconnectivity.org/search/seminar.
[3]박수홍, “OCF 사물인터넷 오픈소스 플랫폼 표준 동향”, TTA 저널, vol. 166, pp 41-45, Jul. 2016.
[4]Open Connectivity Foundation (OCF), “OIC Specification overview”, http://openconectivity.org/search/oic+specification.
[5]Open Connectivity Foundation (OCF), “Introduction to OCF and IoTivity”, http://openconnectivity.org/search/introduction.
 
첨부파일