C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
분야별 포럼
C++빌더
델파이
파이어몽키
C/C++
프리파스칼
파이어버드
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

자유게시판
세상 살아가는 이야기들을 나누는 사랑방입니다.
[28102] Re: 프로토콜 스택 레벨에서 보면...
빌더(TWx) [builder] 4368 읽음    2019-02-23 00:50
단단한돌 님이 쓰신 글 :
: 선배님들의 조언을 부탁드립니다 ...
:
: 조그만 회사에서 원격 데이터 수집 시스템을 주로 개발하고 있습니다.
:
: 지금까지는 주로 원격 유닛(보통 RTU)에 CDMA Modem을 통해
: 수집서버에 데이터를 전송했는데요.. (Socket 통신)
:
: 업계 상황은 기존의 3G Modem이 모두 단종되고  LTE Modem으로 전환되면서
: 3G Modem으로 운영했던 시스템을 LTE Modem으로 갈아 타거나,
: 이참에 IoT해볼까 하는 상황입니다.
:
: 세상이 IoT, IoT하니..
: 그 쪽으로 옮겨볼까 하고 각 통신사의 IoT 플렛폼을 들여다 보았는데요..
:
: 딱히 IoT로 이전해야 할 이유를 못 찾겠네요.
:
: 저의 경우
:
: 센서 <-> RTU <-> CDMA(LTE) Modem <-> 인터넷 <-> 수집서버
:
: 이렇게 구성되는데..
:
: IoT로 구성하면
:
: 센서 <-> RTU <-> CDMA(LTE) Modem <-> IoT Platform <-> Client(수집서버, Viewer, Phone, ...)
:
: 뭐 이런 식으로 구성되더군요 ..
:
: 각 통신사의 IoT Platform을 이용하면 표준화된 API로 인해 다양한 App을 구성할 수 있다
: (Web, Phone, 수집서버, 단순 Viewer 등)라고 하는데요..
:
: 수집 데이터의 지속적인 누적이 필요한 상황이라면(원격으로 수위, 유속, 등의 데이터 수집 및 누적)
: IoT Paltform에 수집된 데이터를 별도로 구축한 수집 서버에 모두 저장해야 한다는 얘기인데요..
: (제가 알기로 IoT Platform에서는 수집된 데이터을 일정 기간만 보관하고 지운다고 알고 있습니다.
:  그도 그럴 것이 수많은 단말에서 전송된 데이터를 무한정 저장할 수도 없는 노릇일 것 같네요.)
:
: 그리고, Web이나 Phone에서도 과거의 누적된 데이터를 보려면 IoT Paltform에서는 일정 기간만
: 있으니 별도의 수집 서버의 데이터를 이용해야 할 것 같습니다.
:
: 그런 상황이라면, 그냥 현재의 방식처럼 LTE Modem(CDMA  Modem)을 통해 직접 수집서버로
: 전송하고 수집서버에서 Web이나 Phone 접속에 서비스 방식(현재의 구조)과 별반 차이점이 없는 것 같은데요.
:
: 기존의 3G CDMA Modem이 모두 단종되고 LTE Modem으로 대체되는 과정에 있고,
: IoT로 넘어가볼까 하는 생각들을 하게 되는데,
: IoT로 넘어가는 것이 운영에 필요한 API를 익히는 시간도 필요하고, Platform 구성도
: 이해해야 하는 노력도 있고.. 이러저러한 것을 알아야 하는 부담도 있고,
: 막상 그것에 대한 혜택은 뭐 별로 없는 것 같아서..
:
: 막상 IoT로 구성해 보려니..이렇게 해서 별다른 이득이 없는 계륵같은 생각이 들어서요..
:
: 고수님들의 의견을 여쭈어 봅니다.
:
: 감사합니다.
:
: 아.. 원격 데이터 수집 및 누적의 경우 이렇다는 것이고,
: 다른 어플리케이션과 다른 상황이라면 IoT가 휼륭한 시스템일 수 있겠지요..
:
:



답변:



Iot 관련해서 국내에서 상용화 되어 있는 사물 인터넷 서비스는...
SKT는 LoRa, LGU+ 와 KT 는 Nb-Iot 로 양분 되어 있습니다.

LoRa는 설치되어 있는 망장비에 추가적인 하드웨어 설비 작업이 필요한 반면
Nb-Iot는 기존의 LTE 망 장비에 Nb-Iot 프로토콜을 지원하도록 펌웨어를 업데이트 하는
것으로 충분한데도 불구하고 SKT에서 LoRa를 선택한 것은 방향을 잘못 잡은 게 아닐까 싶습니다

먼저 시장에 도입되었다는 것 말고는 특별히 부각할 만한 장점이 있는 것도 아니고...
LG와 KT 양 사에서 Nb-Iot 프로토콜을 선택하고 있는 상황에서 얼마나 경쟁력을 가질 지 의문.
SKT 통신사를 이용할려면 LoRa 프로토콜을 지원하는 칩을 사용해야 함.


LoRa는 제외하고 Nb-Iot 에 대해서 짚어 봅시다.


Iot(사물 인터넷)가 주목을 받기 시작하면서...
Iot 디바이스들을 원격으로 액세스 하기 위한 방안들이 모색되기 시작했는데...
그 중에 하나가 Nb-Iot 입니다.


LTE 망 신호대역에서 사용되지 않는 200KHz 의 적은 대역을 할애해서 Iot 디바이스와
데이타를 주고 받을 수 있는 프로토콜을 만들자 해서 만들어진 프로토콜이 Nb-Iot 입니다.

사용되지 않는 200KHz의 적은 주파수 대역을 할애해서 사용하므로 기존 데이타 흐름에는
영향을 주지 않으면서 사용할 수 있어서 통신사 입장에서도 부담 될 게 없죠.

적은 주파수 대역을 사용하기 때문에 수십 Kbps 정도로 전송속도가 떨어지지만
온도 값, 미세 먼지 값 등... 몇 바이트로 표현할 수 있는 적은 데이타를 전송하기엔 충분하고.

적은 주파수 대역을 사용해서 전송 속도가 떨어지는 대신에 신호를 커버리지 할 수 있는
범위가 더 넓어지기 때문에 외딴 외지에서 사용할 때도 유리하고, 밧데리 하나로 디바이스를
10년 까지 사용할 수 있는 저전력 디바이스 구현을 가능하게 하기도 합니다.
통신비도 쌉니다. KT 경우 1년에 만원 정도 하는가 봅니다. (년간 데이타량 100MB 기준)
하드웨어적으로 Nb-Iot 프로토콜이 구현되어 있는 칩 가격도 저렴한 편입니다.


보드에서 TCP 프로토콜 스택을 구현해 넣을 수는 있으나
수십 Kbps 정도의 전송속도를 가지는 디바이스에 TCP 스택을 얹어서 돌리는 건 비효율적이어서
UDP를 기반으로하는 CoAP 프로토콜을 표준으로 정의해 놓고 있는데...

GET, POST, PUT, DELETE 등의 HTTP RESTful API의 Light-weight 구조라고 보면 됍니다.


여기에 Bootstrap, Device Discovery, Device Registration, Device Management 등의 기능을
지원하기 위해 CoAP 위에 표준으로 구현해 놓은 프로토콜이 LWM2M 입니다.

이와 같은 표준 프로토콜 규격이 있어야 제조사와 상관없이 클라우드 시스템에서 디바이스들을 관리하는 게
가능해 지죠. 플렛폼이란 용어는 딱히 의미가 정해져 있는 건 아닙니다. 어떤 식으로 의미를 부여하느냐에
따라 붙여서 쓸 수 있는 거죠.

M2M Protocol Iot Device <-----> M2M Protocol Server (플렛폼, 서비스)


인터넷에서 몇가지 Nb-Iot Development Board 를 찾아 보니...

Nb-Iot Core Chip과 펌웨어를 로드해서 실행하는 MPU 프로세서에...
모니터링과 디버깅 목적으로 시리얼 포트가 달려있는 형태가 많더군요.

보드를 테스트 할 때...
펌웨어에서 AT command 를 지원하면...

예를 들어서...
보드를 PC와 시리얼 포트로 연결하고 PC에서 터미널로 다음과 같은 명령을 이용해서...
서버를 지정해서 데이타를 보낼 수 있습니다.

"AT+NSOST=0,120.78.138.177,5683,3,616263"

여기서...

0 : UDP 프로토콜
120.78.138.177: UDP 서버 주소
5683: UDP 서버 포트
3: 데이타 갯수
616263: "abc"의 헥스 값.

프로토타입 검증을 마치면 펌웨어 레벨에서 코딩해서 정리.

테스트 하기 전에 통신사와 사용계약이 이루어져서 LTE 망에 연결 할 수 있는 Activation이 사전에 먼저 되어 있어야 함.


앞서 언급했듯이... CoAP 프로토콜이 표준으로 정해져서 사용되고, CoAP 프로토콜은 UDP 를 기반으로
구현되어 있기 때문에 사용자가 특정 서버를 지정해서 UDP 패킷을 바로 보낼 수도 있는 구조 입니다.

KT에서 제공하고 있는 M2M 서버를(플렛폼) 반드시 이용해야 하는 건 아니란 겁니다.

KT에서 제공하는 클라우드 서비스(플렛폼)가 필요 없으면...
CoAP, M2M 프로토콜 레이어 스킵하고 UDP 서버를 지정해서 데이타를 바로 보낼 수 있다는 거죠.

기술적인 부분은 KT Nb-Iot 담당자와 직접 컨텍해 보세요.


빌더(TWx) [builder]   2019-06-18 13:10 X
SKT도 Nb-Iot 지원하는 쪽으로 방향을 선회 했네요.
진작 부터 그렇게 하지않고, 바보 같은 짓을...

+ -

관련 글 리스트
28100 IoT .. 계륵인가요? 단단한돌 3789 2019/02/20
28102     Re: 프로토콜 스택 레벨에서 보면... 빌더(TWx) 4368 2019/02/23
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.