8/22/2023

5G Overview

1. 5G 관련사항 정리 

Udemy 다음강의를 듣고, 정리를 하도록 하겠으며, 이곳에 주신 제공해주자료들은, Blog에 올리수 없을 것 같아, 
해당 관련자료를 검색하면서,각 부분들을 직접 Review를 하면서 새로 정리하도록 하겠다. 


  • AWS 5G 설명
AI/ Smart IoT/Vehicle , 4G에서 벗어나, 확장되어진 5G로 아래의 각 개념을 정리 


1.1 1G/2G/3G/4G/5G 변화 

각 변화를 대충 눈으로 보면 될꺼 같으며, 중요한 것은 4G 와 5G 의 차이만 알면될 것 같다.
구지 이 긴역사를 달 알필요가 있을까 

  • 1G/2G/3G/4G/5G의 변화 
  1. 1G: Analog Voice 
  2. 2G: Digital Voice 변경과 문자 
  3. 3G: Digital Voice 와 문자, Multimedia 
  4. 4G: Digtal  Voice 와 NB-IoT, VoLTE
  5. 5G: Digital Voice 와 각 IoT 와 C-V2X 


https://commsbrief.com/what-do-the-terms-1g-2g-3g-4g-and-5g-really-mean/

AMPS (Advanced Mobile Phone System)
NMT (Nordisk MobilTelefoni or Nordic Mobile Telephone)
TACS (Total Access Communications System) 
C-Netz (Funktelefonnetz-C or Radio Telephone Network C)


https://commsbrief.com/what-do-the-terms-1g-2g-3g-4g-and-5g-really-mean/

4G LTE(Long Term Evolution)
5G NR(New Radio) 


아래사이트에 너무 자세히 설명을 해주므로 여기를 참조

1.2 5G Standard and Specification

전체적인 Concept은 ITU 이지만, 모든 세부적인 내용은 3GPP를 봐야한다. 

  • ITU(International Telecommunication Union)
5G의 전체적인 Concept 과 Service 및 관련부분을 기술했다고 하며, 아직 직접 다 찾아 보지를 못했다.  
ITU의 문서는 전체적인 5G Concept이며, 세부 기술내용을 본다고 하면, 아래 3GPP기반으로 봐야함 

  • 3GPP Specifcation & Technologies Releases
세부적인 5G 관련 Specification 이며, 오래전에 본적이 있으나, 너무 오래되어 많이 까먹으며,
가능하면, 각 부분을 정리하도록한다. 
https://www.3gpp.org/specifications-technologies/releases


3GPP 내의 각 기술 검색 
3GPP에서 각 Release를 쉽게 검색해서 찾도록 하자. 



  • 3GPP TSGs(Techincal Specifications Groups)
 각 Group 과 역할을 설명을 해주고 있으며, 이 부분을 보도록하자. 

https://www.3gpp.org/3gpp-groups

쉽게 검색해서 관련문서 확인 


2. 5G System Overview  

3GPP에서 5G에 대해 잘설명해주고 있다.

대체적으로 아래 사항을 주로 언급하며, 이외사항은 상위에 3GPP Overview 보도록하자.

eMBB(Enhanced broadband)
기존보다 늘어난 주파수 대역폭(Bandwith)가 늘어나, 전체 Data Bandwith가 늘어날 것이며, 
한마디로, 기존 4G 속도가 빨라진 것임 

MMTC(Massive machine-to-machine communication)
상위 3GPP에는 mIoT(Massive Internet of Thing) 와 Flexible network operation 
전화 와 Internet 이외에도  확장된 Commnication , 즉 Smart IoT 와 Vechicle 자동차(C-V2X)
전화만이 아니라, Data Bandwith가 늘어났으니, 더 많은 IoT 가 늘어날 것이며, C-V2X도 확장되어진다.

URLLC(Ultra-reliable low latency communication)
4G보다 더 적어진 Latency(빠른 응답성) 와 reliability(신뢰성)이라고 한다. 
근데 신뢰성은 잘 모르겠다.  

  • 5G의 강점이 상위 3개로 요약 Verizion 에서 관련 설명자료 

https://www.verizon.com/about/news/5g-understanding-embb-urllc-mmtc




2.2  5G 나라별(Country) 정보

각 나라별 5G 관련정보이며, 한국은 아래와 같다.  

https://blog.router-switch.com/2020/06/5g-nr-and-list-of-5g-nr-networks/


  
2.3 5G  전체구성 확인 

자료를 찾다가, 화웨이가 가장 설명을 잘해놓다니, 많이 놀랬으며, 일단 아래부터 이해하기로 했다.

  • 5G의 기본구성 
https://info.support.huawei.com/info-finder/encyclopedia/en/5G+Transport+Network.html

  1. RAN(Radio Access Network):  4G/5G의 물리적 부분이라고 생각하면 되겠다.
  2. Transport network : 4G or 5G의 Protocol 인 것로 생각되어짐  
  3. Core Network: 무선 or 유선 Network 망을 의미하는 걸로 생각되어짐 

  • 5G 전체구성도
일단 완벽하게 이해하지 못하겠으며, 한국도 이렇게 되는지는 모르겠으며,아래부터 그냥 하나씩 보자.
하단 E2E SRv6 EVPN 와 Infrastructure Layer
Backbone 망과 5G 연결부분 말하는 것 같으며, Ring(아마 Token Ring??)기반으로 구성이 되어지는 것 같다. 
FTTx(광통신)라고 생각하고 넘어가도록하자. 

iMaster NCE에서 보면, 각 3개군으로 속도기반으로 분할해서 운영하며, 최종 상단의 Cloud 그림(아마 Network의미??)이 아마 최종 연결단 인 것 같다.
  1. Access: 50GE 기반으로 Access Ring사용하며, 2 개의 종단 왼쪽 개별 아이콘들상위 Campus MEC 연결 
  2. Metro: 100GE or 400GE 사용하며, 상위 MEC/EDC 와 RDC로 연결  
  3. IP Core: 400GE 로만 초고속으로사용하며, 상위 CDC로 연결  



상위 링크를 연결해서보면, MPLS까지 설명해놓았으며, 2000대 초반, ATM이후로 나의 경우는 지금 처음본다. 
추후 MPLS 자료가 필요하다면, 그때 다시 링크로 연결하도록 하자.

  • FlexE
Flexible Ethernet이라고 하는데 이 부분과 아래의 5G QoS하고 Mapping 되는 것이라고 생각하면 될것 같다.



상위 Slice가 각 QoS라고 생각하면 될꺼 같다. 
  1. AMF(access and mobility management function)
  2. UPF(user plane function)
  3. SMF(session management function)


2.4 5G Key Capabilities 와 Use Cases

ITU문서는 대체적으로 전체적인 컨셉으로 전체구조와 그림은 이곳에서 가져오도록 하자.

  • 5G Key Capablities
쉽게 Radar Graph로 이전세대와 비교하여 각 기능의 개선점을 쉽게 파악가능 
https://www.itu.int/en/ITU-D/Regional-Presence/CIS/Documents/Events/2017/06_Saint_Petersburg/Presentations/ITU%20Workshop%2019.06%20-%20Denis%20Andreev%202.pdf

  • 5G Use cases 
  1. eMBB(Enhanced broadband)
  2. MMTC(Massive machine-to-machine communication)
  3. URLLC(Ultra-reliable low latency communication)
각 중요포인트 별로 각 Use cases들을 보면 되겠다. 

  • 5G의 시장성 
  1. e-Health  (시장성, 별도로 시장성을 확인해야함, 5G에서 가장 시장성이 높다고함)
  2. Self-driving Car (C-V2X)

주로보면, Smart IoT 와 C-V2X일 것 같은데, Smart IoT에 많은부분이 확장되어 들어갈 것이라고 생각되어진다.
일단 간단히만 생각해봐도 Smart City 와 Smart Home/Build 있다. 


  • 기타링크 

8/11/2023

Mkdoc 와 Github 문서정리

1. Mkdocs 

이전에 Sphinx 와 Mkdocs 기반으로 환경을 구축하여 간단하게 테스트를 한적이 있는데, 
Mkdocs만으로 쉽게 Github의 Markdown 문서를 관리하는 법을 간단히 소개한다. 

이유는 Mkdocs는 Markdown 으로만 사용하기 때문에 Github와 더 잘 어울린다. 
다만 아쉬운것은 Sphinx에 비해 Plugin이 좀 떨어질 뿐이다. 

  • ReadTheDoc (Mkdocs/Sphinx 둘 다 지원)
ReadTheDoc 사용법 및 Sphinx 와 Mkdocs 비교 (Doxygen 기본 사용법)

  • Mermaid.JS 사용예제
Github에서는 이미 Markdown에 mermaid를 제공하지만, 아래와 같이 Mermaid.js로 해도됨


  • 기본설치 및 테스트 진행
가급적 Linux 기반으로 설치하도록 하며, Window에서는 WSL를 통해서 하자  
$ pip install mkdocs
$ sudo apt install mkdocs 
$ mkdocs new mkdocs-project
$ cd mkdocs-project
$ ls docs mkdocs.yml $ cat mkdocs.yml #설정확인 site_name: My Docs $ mkdocs serve # 에러발생하여 아래 Package Version 변경으로 해결 INFO - Building documentation... INFO - Cleaning site directory INFO - Documentation built in 0.08 seconds INFO - [16:11:08] Watching paths for changes: 'docs', 'mkdocs.yml' INFO - [16:11:08] Serving on http://127.0.0.1:8000/ INFO - [16:11:11] Browser connected: http://127.0.0.1:8000/ INFO - Shutting down... $ mkdocs build # site에 webpapage 와 xml 생성확인 $ mkdocs build INFO - Cleaning site directory INFO - Building documentation to directory: /home/jhlee/project/mkdocs-project/site INFO - Documentation built in 0.03 seconds



1.1 Mkdocs PDF 배포 

아래와 같이  mkdocs-with-pdf를 별도 설치진행 
$ pip install mkdocs-with-pdf 

$ vi mkdocs.yml  #plugins 추가 pdf 
site_name: My Docs
plugins:
    - with-pdf

$ mkdocs build  # PDF 파일 과 HTML 파일 생성  
INFO     -  Cleaning site directory
INFO     -  Building documentation to directory: /home/jhlee/project/mkdocs-project/site
INFO     -  Number headings up to level 3.
INFO     -  Generate a table of contents up to heading level 2.
INFO     -  Generate a cover page with "default_cover.html.j2".
INFO     -  Converting  alignment(workaround).
INFO     -  Rendering for PDF.
INFO     -  Output a PDF to "/home/jhlee/project/mkdocs-project/site/pdf/document.pdf".
INFO     -  Converting 1 articles to PDF took 0.7s
INFO     -  Documentation built in 0.70 seconds

$ tree      # tree 명령어로 전체구성 다시 확인 
.
├── docs                # docs 밑에, Markdown 구성하여 문서 구성 , 이는 Github에서 호환사용가능
│   └── index.md          # 기본 문서확인
├── mkdocs.yml             # 상위 설정확인
└── site                # mkdocs build 결과 (HTML, PDF)             
    ├── 404.html
    ├── css
    │   ├── base.css
    │   ├── bootstrap.min.css
    │   └── font-awesome.min.css
    ├── fonts
    │   ├── fontawesome-webfont.eot
    │   ├── fontawesome-webfont.svg
    │   ├── fontawesome-webfont.ttf
    │   ├── fontawesome-webfont.woff
    │   └── fontawesome-webfont.woff2
    ├── img
    │   ├── favicon.ico
    │   └── grid.png
    ├── index.html
    ├── js
    │   ├── base.js
    │   ├── bootstrap.min.js
    │   └── jquery-1.10.2.min.js
    ├── pdf
    │   └── document.pdf
    ├── sitemap.xml
    └── sitemap.xml.gz


mkdocs-with-pdf


1.2 CHM (Window HTML 설명서)

chm파일은 Window에 주로 API 설명서를 구성하기 위해서 예전에 많이 사용했다. 

  • chm 파일 viewer 설치  (WSL 설치가능, Linux 지원)
sudo apt-get install xchm 

상위를 실행시키면 쉽게 Viewer 확인 


  • HTML -> CHM 파일 생성 방법 링크 
다 확인해보지 않고 링크만


1.3 mkdocs 문제사항 정리 

Linux에서는 거의 발견못했는데, 주로 Window 기반의 WSL에서 실행했을 경우 발생하였다.  
원인을 보면, 버전의 호환성문제로 각 버전을 맞춰 재설치를 진행

  • mkdocs serve 에러문제 
 AttributeError: 'zipimport.zipimporter' object has no attribute 'exec_module'
$ pip install markdown==3.2.2  # 

 AttributeError: 'EntryPoints' object has no attribute 'get
$ pip install importlib-metadata==4.13.0   # (5.0.0->4.13.0)

  • mkdocs build (plugin)에러문제 
Window에서 실행할 경우 발생 
 OSError: cannot load library 'gobject-2.0-0': error 0x7e.  Additionally, ctypes.util.find_library() did not manage to locate a library called 'gobject-2.0-0' 

보통 Doxygen을 사용하면, chm file을 많이 사용하는데, Linux에서도 아래와 같이 볼수는 있다.


2. mkdocs 쉬운구성환경 

  • Mkdocs 사용방법정보 
모든정보가 다 이곳에 있어, 간단히 여기서 정리끝날꺼 같다.   


Github 와 연동 예제 


현재 나의 경우, Sphinx 보다는 mkdocs가 좀 더 Github와 Markdown으로 잘되어 이게 더 편한 것 같다. 
설정이야, 본인 theme 부터 변경해서 차근차근사용하면 될꺼 같다. 

8/01/2023

RF Information (자료수집, 글작성중)

1. Modem

통신(Communication)의 기본이며, 유선 Modem 안 사람은 쉽게 무선통신도 알게되어진다. 

이번 5G를 정리하면서 Radio 뿐만아니라, 각 RF 관련사항들을 정리하며, 아래의 링크 기반으로 자료수집후, 정리한다. 

아직 자료 수집 후에 글의 방향을 정하며, 5G가 아닌, 유선 or 무선 기본 글?>? 정함!
이 부분은 삭제?? 

너무 많은 자료를 수집했으며, 관련부분을 정리하도록함 (시간될때!)

필요 없다면, 유선쪽 관련내용은 추후 전부 삭제  


1.1 Radio Spectrum 

일반적인 Radio 관련자료로 시작해야 할 것 같다. 
유선을 넣으면???


1.2 WIFI 6 

이 부분은 추후 RF-WIFI 분리 

이 부분 좀 더 각 WIFI Spec에 맞게 비교분석하며, 기능별로 새로 자료 수집 

예전처럼 WIFI Spec이 없어도 될꺼 같다. 
요즘 인터넷에 자료가 넘처나서 

TWT(Target Wake Time, WIFI 6의 New Feature 기능)
배터리 or Low Power를 위해서 Target Wake Time을 두어 외부에서 Control하는 개념 

WIFI (802.11ax) 즉 WIFI 6 
각 비교가 잘되어 있어 아래부분 링크 
분명, 칩제조사별로 조금씩 다를 텐데, 그 부분까지는 파악하기가 좀 
 
OFDMA 그림과 WIFI6의 각 그림이 너무 좋음 

새로찾은 사이트

WIFI6 OFDM 와 OFDMA 차이 
내 경우는 OFDM 과 OFDMA 차이를 그냥 무선으로 생각한 나의 무식함!!!

아래그림으로 OFDM 과 OFDMA 차이를 쉽게이해 
현재 내 생각으로 OFDM에 MU-MIMO를 넣은 것으로 보임 
정확히 말하면, OFDM 에 TDM을 섞은거라고 봐야 할 것 같은데, 뭔가 찜찜함. 


OFDM 의 절차 및 설명 필요 여부??? 
왜 OFDM의 사용하는가? 
이유는 간단하다. 모든 모듈레이션을 사용하고 싶으며, 2개의 Multiplexing을 같이 사용하고 싶어서다. 
QAM이 AM 과 PM의 합성이고, 이 전체 Channel들을 Multiplexing하면, FDM 와 TDM 좀 같이 사용할 방법을 찾아서 OFDM을 사용한다. 
더불어 Guard Band도 필요 없으니, 전체 Bandwith도 줄어든다. 

송신  S/P -> IFFT or IDFT -> P/S -> add  CP -> Channel
수신  remove CP  -> S/P  -> DFT -> P/S

Python 예제 
내가 이것으로 변경해서 만들어도 될 듯하다


Beamforming
주파수가 높아질수록, 전파는 직진성으로 가게되어지는데, 이를 이용하는 기술이다.
이전에 낮은 주파수 대역을 사용할때, 사용을 못하고, 주파수가 높아지니, 
전파를 직접적으로 Control 하고 싶어하는 것이다. 
아래에 한글로 너무 잘 설명되어 있으니, 한번 나중에 이를 정리?


Wireshark
비싼장비를 이용하여 분석하면 좋겠지만, Wireshark 같이 무료 Tool 기반으로 분석할수 있는 방법을 모색 
Wireshark 802.11 Packet 분석 (Ethernet으로 Converting 된것이 아님)
역시 O'Reilly 설명!!
Wireshart 세부 Filter 설정 

WIFI support monitor mode
기본적으로 WIFI Driver가 monitor mode(sniffing)가 지원되어야 하며, 지원이 안되는 Driver 들이 많다.
Ehternet Converting 부분이전에서 sniffing 지원을 해줘야함 



1.4 C-V2X

이전에 내가 가장 주의 깊게 봤던 것으로, 이 부분의 승자가 누가 될지와 법이 어떻게 될지도? 



2. LR(Long Range)-WPAN (Thread 와 Matter 때문에)

Zigbee 기반이라고 하며, Thread라는 새로운  것이 나왔는데, 정확한 기능 부분 좀 더 
Thread 와 Matter 의 연결 확장성 도 역시 확인 
  1. Microchip 사에서는 WIFI가 아닌 BLE기반으로 연결하여 확장 
  2. Espressif 사는 Matter 와 함께 IPv6기반으로 제공, (Thread) 

추후 시간이 될때 상위 자료를 보완하여, RF-WIFI or RF-BLE로 별도로 분리
요즘 예전부터 정리하던 것도 빨리 정리해야함 
아직 쓰던것도 많이 남아 있어 이부분도 같이 정리해야함 


2.1 Smarthing Develop

Samsung이 밀고 있는 것이며, LG는 내가 보기에는 별로라서 이 부분은 세부적으로 확인 

개발방법

1. SDK 기반의 Matter 직접 Device이용
Device가 직접 Matter를 지원되는 경우, 이를 이용

2. Samsung의 Station 에 연결 
Device가 Samsung에서 제공하는 Station에 연결사용 (Zigbee 

3. Cloud 기반의 Lamda 이용하여 Hook 방식

4. Automation :  상위 기능들을 묶는 기술 



3. RF 의 일반적인 것들?


RF Wireless World 
내가 좋아하는 사이트이며, 이 부분을 좀 더 한글화? 


Multiplexing 
통신의 기본인 Multiplexing FDM TDM 을 설명?? 그냥 통신책봐도 이해가 될 듯. 
FDM 과 OFDM 차이 
좋은 자료이며, 이부분은 1Post해야 할듯, 

OFDM 와 OFDMA 차이 
지금까지, OFDM 유선   OFDMA 무선으로 만 생각했는데, 좀 나의 상식이 깨짐 

SISO 와 MIMO의 차이
기본개념은 간단하며, MIMO가 되면 Channel 이 등장하며, Multiplexing 어떻게 하냐가 관건이다.

FDMA vs TDMA vs CDMA
FDMA 와 TDMA는 알겠지만, CDMA이는 예전에도 그랬지만, 정확한 차이를 구분짓기가 어렵다.
이 부분은 예제를 찾아야함 

TDD vs FDD
상위에서 Multiplexing 하면 반대 Duplexing 하여 각 Channel을 분리하는 방법


  • LoRAWan 
이전에 직접 LoRa Gateway 와 KCMVP를 Reversing Engineering으로 하여 HW 암호화로 직접 개발해봤기에, 이부분도 나중에 세부 정리?? 
이부분은 1 Post로 각 Semtech Datasheet 와 함께 정리해야하나???
추후에 다시 이 부분은 생각 



WIFI

WIMAX
오래전에 잠깐 Driver로만 만들었으나, 요즘은 거의 안쓰는 것 같음.


Anthena 
안테나의 기본내용은 알아아야 할꺼 같으며, 관련부분 도 가능하다면 자료 수집 

추후 시간된다면, TI Anthena 부분 별도자료수집 확인