파이톨치

[socket programming] IoT Datalink layer protocol 본문

대학수업/socket programming

[socket programming] IoT Datalink layer protocol

파이톨치 2024. 4. 20. 14:14
728x90

 

Datalink layer protocol 

개요

위 그림을 참조하면 데이터 링크 계층의 프로토콜로는 Bluetooth Smart, IEEE 802.15.4, ZigBee등이 있다. 

Datalink issue는 에너지 효율성, 작은 메시지, 제한된 컴퓨팅이 있다. 

 

초기에 wearable 장치에 초점을 맞추어 WPAN 발전 -> bluetooth, zigbee (2계층) 
이후에 IoT에 적합한 IP 기반 WPAN 프로토콜이 제안 -> 6LoWPAN (3계층) 

Networking issue는 큰 숫자 (32, 48비트 주소 불충분), 16비트 지역 주소, 64비트 광역 주소 등이 있다. 이 때문에 6LoWPAN 제안되었다. 6LoWPANIPv6와 802.15.4가 바로 연동하는데 문제가 있어 중간자 역할 담당한다. 구체적으로, IEEE 802.15.4 frame 크기는 최대 127 바이트인 반면에 상위 IPv6는 최대 MTU 크기가 1280 바이트임. 이 둘사이 차이를 절충하는 역할 담당한다.

 

WPAN(Wireless Personal Area Network): 개인 영역 무선 네트워크로, 대표적인 예로는 Bluetooth가 있습니다. Bluetooth는 IEEE 802.15.x 표준을 따르며, 저전력, 단거리 통신에 적합합니다.

WLAN(Wireless Local Area Network): 근거리 무선 네트워크로, 대표적인 예로는 Wi-Fi가 있습니다. Wi-Fi는 IEEE 802.11.x 표준을 따르며, 일반적인 네트워크에서도 널리 사용됩니다

 

Bluetooth 소개

컴퓨터주변장치를연결하는유선케이블을무선으로대체하는원래목표이었으나현재는목표가확장됨. 물론입니다.

 

Bluetooth 5.0 기술
- 속도 및 대역폭: Bluetooth 5.0은 Bluetooth 4.2 대비, 최대 2배의 전송 속도를 제공하고 대역폭도 4배가 더 넓습니다. 이는 더 높은 품질의 오디오 스트리밍 및 데이터 전송이 가능함을 의미합니다.
- 범위: Bluetooth 5.0은 Bluetooth 4.2 대비, 보다 더 긴 통신 거리(최대 4배)를 제공합니다. 
- 전력 소비: Bluetooth 5.0은 더 효율적인 에너지 관리 기능을 제공, 더 오랜 배터리 수명을 제공합니다.
- 더 나은 신호 강도 및 안정성: Bluetooth 5.0은 이전 버전보다 더 강한 신호를 제공하여 연결의 안정성을 향상시켰습니다.
요약하면 Bluetooth 5.0은 이전 버전 대비 속도, 범위, 전력 효율성, 신호 강도 등이 크게 향상되어 더 나은 연결 환경을 제공합니다.

 

Bluetooth classic 동작모드

Bluetooth classic 모드는연결지향적 (1:1 통신)이다. 통신하려면연결이필요하고, 일단장치가연결되고나면통신중데이터가없더라도연결은유지된다.

 

Bluetooth smart 동작모드

장치 노드는 애드버타이저 또는 스캐너일 수 있다. advertiser: 애드버타이징(광고용) 패킷을 전송하는 장치 scanner: 연결 목적 없이 애드버타이징 패킷을 수신하는 장치 initiator: 연결을 시도하는 장치 여러 가지 Bluetooth event advertising: pairing 하려는 장치의 존재를 알리거나 단순히 advertising 패킷의 메시지를 중개하고자 스캐닝 장치로 송출하는 장치로 시작 connection: 장치와 호스트의 pairing 과정에 해당되는 이벤트 periodic advertising: 애드버타이징 장치에서 7.5ms ~ 81.91875s 간격의 채널 호핑(무선주파수 채널을 주기적으로 변경하여 통신의 안정성과 보안성을 향상시키는 방법)으로 37개의 데이터 채널을 일시적으로 애드버타이징 가능
5가지 링크 상태 애드버타이징(advertising): 장치에서 애드버타이징 채널의 애드버타이징 패킷을 송신한다. 스캐닝(scanning): 장치에서 연결할 의도 없이 애드버타이징 채널의 애드버타이징을 수신한다. 이니시에이팅(initiating): 다른 장치와의 연결을 형성해야 하는 장치에서 연결 가능한 애드버타이징 패킷을 청취하고 연결 패킷을 전송해 연결을 개시한다. 연결됨: 이니시에이터가 마스터가 되고 애드버타이저가 슬레이브가 되어 연결된다. 중앙: 이니시에이터가 역할과 이름을 중앙 장치로 바꾼다

 

Bluetooth Smart (BLE) 특징 설명 

Bluetooth Smart, 즉 Bluetooth Low Energy (BLE)는 저전력 근거리 무선 통신을 위해 설계된 Bluetooth 표준입니다.

다음은 BLE의 주요 특징입니다:
1. 저전력 소모: BLE는 기존 Bluetooth 대비 훨씬 적은 전력을 소모하도록 최적화되어 있어, 배터리 수명이 긴 장치에 적합합니다.
2. 간헐적 데이터 전송: BLE는 간헐적으로 작은 양의 데이터를 전송하는데 최적화되어 있습니다. 이는 저전력 소모를 가능케 하는 주요 요인 중 하나입니다.
3. 빠른 연결 설정: BLE 장치는 빠르게 연결을 설정하고 데이터를 전송할 수 있습니다. 이는 저전력 소모와 함께 사용자 경험을 향상시킵니다.
4. 적은 비용: BLE 칩셋은 기존 Bluetooth 칩셋에 비해 저렴하며, 소형화가 가능합니다.

 

Bluetooth beacon 

BLE에서 발생하는 부차적 효과에 가까운 것이지만, IoT에는 매우 중요하고 큰 역할을 담당 비콘이란 단순히 LE 모드에 있는 Bluetooth 장치를 사용해 일정 간격으로 애드버타이징을 수행 유통, 의료, 자산 추적, 물류에 응용

 

Bluetooth 프로토콜과 프로파일의 주요 차이점
1. 프로토콜 (Protocol):
- Bluetooth 기기 간 통신을 위한 저수준(low-level) 규칙과 절차를 정의
- 데이터를 어떻게 포맷하고, 교환하고, 확인할 것인지 명시 
2. 프로파일 (Profile):
- Bluetooth 기기가 특정 용도로 어떻게 통신할 것인지를 정의한 고수준(high-level) 규격
- 특정 사용 사례를 위해 필요한 프로토콜, 절차, 기능 등을 조합하여 명시
- 기기 간 상호 호환성을 보장하기 위한 목적


IEEE 802.15.4

표준 무선 개인 통신망 스택의 하위 계층(물리 계층과 데이터 링크 계층)만 정의 전력 소비량이 적고 비용이 적은 WPAN 지원이 목표 원래 세 가지 주파수 대역(868MHz, 915MHz, 2400MHz) 사용 가능하나 주로 2.4GHz 사용됨. 이는 2.4GHz를 사용하는 bluetooth의 대중화로 인해 시장에서 수용한 덕분

 

IEEE 802.15.4 EUI 주소 format

모든 주소는 고유한 64비트(EUI) 값을 기반으로 해야 함 그러나 대역폭을 절감하고 대용량 주소를 송신하는데 드는 에너지를 줄이기 위해 802.15.4는 네트워크에 참여하는 장치에서 자체 고유 64비트 주소를 16비트 로컬 주소(local network 안 통신시에만 사용)로 교체하여 송신의 효율성을 높이고 에너지 소비량을 감소하는 걸 허용 이러한 교체 과정은 PAN 코디네이터가 담당.

 

Ethernet 동작(아래는Ethernet frame 구조)

1) Preamble과 SFD
Preamble과 SFD는 Header로 인식되지 않는다.
Preamble: 여기서부터 Frame의 시작임을 인식하도록 한다. 7 bytes가 1010...와 같이 반복적으로 나타난다.
- SFD: Frame 시작 구분자이다. 1 byte로 10101011 값을 가진다.
(2) Header
- Destination Address: 목적지의 MAC 주소 
- Source Address: 출발지의 MAC 주소  
- Type/Length 3계층 Header로 사용된 프로토콜의 종류 구분한다. 즉, 3계층에 사용된 프로토콜이 ARP인지, IP인지 등을 구분하는 번호가 들어간다. (IP: 0x0800, ARP: 0x0806)
(3) Data/Payload
Data/Payload의 맨 앞에는 3계층의 Header가 온다. 총 크기는 MTU에 맞춘다.
- Minimum Transmission Unit, 최소전송단위: 46 bytes에 해당
- Maximum Transmission Unit, 최대전송단위: 1500 bytes에 해당한다.
(4) Tailer
- Frame Check Sequence(CRC): Checksum과 동일한 의미를 지니며 2계층에서만 존재한다.


Ethernet MAC에서 최대 frame(packet) 크기가 1518 바이트인 반면 IEEE 802.15.4에서는 127 바이트라는 점에 주목, MAC 주소는 48비트인 반면에, 802.15.4에서는 MAC destination, source 각각 64bit EUI 포함

 

IEEE 820.15.4 패킷구조

프레임의 4가지 유형, 데이터 프레임: 어플리케이션 데이터 전송, 확인 응답 프레임: 수신 확인, 비콘 프레임: 프레임 구조 설정을 위해 PAN 코디네이터에서 전송, MAC 명령 프레임: MAC 계층 관리(결합, 해제, 비콘 요청)

 

요약

1. IoT 분야에서 Bluetooth Smart, ZigBee Smart 등 경쟁 프로토콜이 사용되고 있음을 언급하고 있습니다.
2. IEEE 802.15.4는 ZigBee나 WirelessHART 등 많은 IoT 프로토콜에서 사용되는 저전력 무선 PAN(Personal Area Network)임을 설명하고 있습니다. 
3. 802.15.4는 전이중(full function)과 반이중(reduced function) 장치를 사용하며, FFD(Full Function Device)는 코디네이터, 스타, 메시, 클러스터 트리 등 다양한 토폴로지 구성이 가능함을 언급하고 있습니다.
4. Slotted/Unslotted CSMA/CA를 사용하며, 저지연 애플리케이션을 위한 보장된 전송 서비스를 제공한다고 설명하고 있습니다.
5. UWB(Ultra-Wide Band)는 매우 낮은 평균 전력으로 대역폭에 걸쳐 전송이 가능함을 언급하고 있습니다.


Zigbee소개

ZigBee Overview

비용, 전력, 공간 등의 제약을 받는 상업 및 주거용 IoT 네트워킹 대상. 802.15.4에 기반하지만 TCP/IP와 유사한 네트워크 서비스 계층. Zigbee는 네트워크를 형성하고 장치를 검색하며 보안을 제공하고 네트워크를 관리할 수 있다. 그러나 데이터 전송 서비스를 제공하거나 애플리케이션 실행 환경을 조성하지 않는다. 메시 네트워크이기 때문에 자체 회복 능력이 있으며 ad-hoc 형태를 갖는다( 동적으로 경로 형성. 노드는 서로 발견 가능) 단순함을 자랑하는 Zigbee는 가벼운 프로토콜 스택을 사용하여 소프트웨어 지원을 50% 줄일 수 있다는 장점. 독점적이고 폐쇄적인 표준.

 

 Zigbee PHY/MAC IEEE 802.15.4 차이

Zigbee는 Bluetooth와 마찬가지로 2.4GHZ ISM 대역에서 주로 동작한다. 그러나 Bluetooth와는 달리 Zigbee는 유럽의 경우 868MHZ에서, 미국과 호주에서는 915MHZ에서 동작하는데 주파수가 낮은 덕분에 기존의 2.4GHZ 신호에 비해 벽이나 장애물에 침투하는 능력이 뛰어나다. Zigbee에서는 IEEE 820.15.4 모든 사양이 사용되지는 않는다. 예컨대 Zigbee 경우에는 CSMA/CA 충돌회피기법이 사용되지 않는다. 대신 노드끼리 송신을 막는 데 MAC 수준 메커니즘을 사용한다.

 

ZigBee Topologies

Star: 호핑 2회까지 허용. 단일 장애점 문제(이중화 경로가 없음).
Cluster: 다중 호핑 네트워크. 비콘을 채용하여 네트워크 커버리지와 스타 네트워크 범위를 확장. 단일 장애점 문제(이중화 경로가 없음).
Mesh동적으로 경로 형성. 라우팅은 어떤 소스 장치에서 어떤 대상 장치로도 가능. 여기에는 트리 및 테이블에 기반한 라우팅 알고리즘이 사용. 특정 범위에 있는 라우터끼리는 서로 직접 통신이 가능. 네트워크가 가시거리 이상으로 확장될 수 있고 여러 이중화 경로 존재

 

요약

1. ZigBee는 센서, 산업 자동화, 원격 제어를 위한 IoT 프로토콜로, IEEE 802.15.4 PHY와 MAC을 사용합니다.
2. ZigBee PRO는 확률적 주소 지정, 다대일 라우팅, 단편화, 메시 토폴로지를 지원합니다.
3. ZDO(ZigBee Device Object)에 의해 제공되는 제어 및 관리 기능을 통해 다양한 애플리케이션 프로파일이 정의되었습니다.
4. 애플리케이션 지원 계층(Application Support layer)은 애플리케이션 객체 간의 데이터 및 명령 통신을 제공합니다.
5. 네트워크 계층은 주소 지정과 라우팅을 제공하며, 분산 또는 확률적 방식으로 주소를 할당할 수 있습니다. 라우팅은 AODV, DSR, 트리 계층적 또는 다대일 라우팅을 통해 이루어집니다.
6. ZigBee RF4CE와 ZigBee SEP2는 각각 원격 제어와 스마트 그리드를 위해 특별히 설계된 ZigBee 프로토콜입니다.


그 외 

 IEEE 802.11ah 표준의 주요 특징
1. 802.11ah는 900 MHz 대역에서 동작하므로 전송 거리가 더 깁니다.
2. 802.11ah는 802.11ac에 비해 10배 낮은 주파수를 사용합니다. OFDM 변조 방식을 사용하며 1/2/4/8/16 MHz 채널을 지원합니다. 심볼 길이가 더 길어 멀티패스 전파에 유리합니다
3. MAC 효율성 향상을 위해 헤더 집계, ACK 병합, null 데이터 패킷 전송, 프레임 교환 속도 향상 등의 기법을 사용합니다.
4. Target Wakeup Time과 Restricted Access Window 기법을 통해 스테이션과 AP가 더 오랜 시간 동안 슬립 모드를 유지할 수 있어 에너지 절감 효과가 있습니다.

 

LoRaWAN의 주요 특징
1. LoRaWAN은 LoRa Alliance에 의해 표준화된 새로운 MAC 프로토콜입니다.
2. LoRa 변조 방식은 심볼 당 주파수 증가/감소 속도를 조절하여 확산 스펙트럼의 변형된 형태입니다.
   - 노이즈에 대한 내성을 높입니다.
   - 하나의 주파수에서 여러 개의 병렬 전송을 가능하게 합니다.
3. "서버"를 사용하여 중앙집중식 관리 및 미디어 액세스 제어를 수행합니다.
4. 모든 게이트웨이로 브로드캐스트하며, 최적의 게이트웨이가 응답합니다.

728x90