4 분 소요

Endcoding/Decoding

Error correction: bit수가 n배가 됨.

Capacity의 개선: Scrambling, Repetition, Puncturing 등

000 → 100 으로 변해도 000으로 알 수 있음.

적어도 하나씩은 에러가 날 수 있는데, 패킷을 버릴 수 있기 때문에.

Coding theory (부호 이론)을 기반으로 오류 정정 법을 만듦.



Real-time traffic VS NON Real-time traffic

Real-time traffic

시간이 지나면 의미가없어지기 때문에 바로 정정 할 수 있어야함.

▪ Unguided media

와이파이는 5G 주파수라 무료, LTE는 해당 주파수를 기관에서 구매했기때문에 유료

속도는 대역폭과 밀접한 관계가있다. 따라서 효율성을 따지려면 대역폭으로 나눠준다.

Spectral efficiency : Hz당 전송률▪ data rate / throughput에서 bandwidth를 나눈 값 (bit/s/Hz)



  • L1 - bit → 전파 한 홉으로 되어있는 encoding을 해주는것.

링크 계층은 Media Access Control, Data Link Control 두가지의 역할을 수행한다.

Data Link Control

  • Error Control (L1이 error 잘 안나도록)
  • Flow Control (여러개 동시에 보낼 수 있도록)

Media Access Control (다수가 접속할때 누구부터)



Packet Error

  • 통신 시스템에서 Error는 피할 수 없는 숙명임 (노이즈), 아무리 낮은 확률이라도 노이즈가 있다.
    • 어느 환경이나 random process인 noise N(t) 존재
    • 수신신호에 더해져 demodulation/decoding에 영향을 줌
    • 결과적으로 bit error가 확률적으로 발생할수 밖에 없음
  • packet error는 Signal to Noise Ratio (SNR) 에 따라 발생 빈도가 달라짐 (SNR이 높으면 Error가 적어짐)
  • s(t) N(t) 대비 작으면 packet error가 자주 일어남
    • 시그널(신호)가 노이즈 대비 작으면 = SNR이 낮다.
  • 수신 신호 환경에 따라 error bit 패턴이 달라짐
    • Single-bit Errors: 간혈적인 노이즈 분산으로 에러가 난 경우
    • Burst Errors: 수신신호 감도가 낮아지면서 연속적으로 발생



Error Detection

패리티 비트 추가.

원래 데이터 뒤에 붙인다.

데이터와 패리티를 보고 정상인지 아닌지 판단.

Tx Rx
11011 10011 (짝수개로 판단하는 형식)
11011 00011 (이렇게 두 비트가 달라져도 에러 검출이 쉽지않다. 따라서 더 복잡한 패리티 비트 생성법이 생겨난다.)

오류 검출을 위해 추가적으로 붙이는 것이 패리티 비트이다.

패킷(데이터그램) 에 헤더 뿐만이 아니라 패리티 비트를 붙인다.

L1의 에러 correction 패리티 비트와 다른 것이다. detection이 더 짧음. CRC 의 경우 뒤에 비트를 추가하면되기 때문에 비트수 추가 부담이 많이 없다.

error correction - 0 을 000으로 바꾸는 방법 (PEC)



Parity 생성 방법

  • odd/even parity
    • 1bit를 붙여서 전체 data+parity bit들의 1의 개수가 홀수 혹은 짝수가 되도록 함
  • 2-dimensional parity check
    • 더 많은 parity bit 활용.

가장 많이 사용되는게 Checksum , CRC



Checksum : IP header에서 주로 활용하는 방식

  • 16bit 단위로 끊어서 1’s complement 누적 덧셈 수행
  • 최종 결과를 1’s complement operation을 해서 parity에 붙임



0001F203F4F5F6F7

송신측

수신쪽

  • 수신측에서는 다 더하면 FFFF 가 되는지 확인한다.
  • 누적덧셈을 해서, 결과 pariry와 더했을 때 FFFF면 error가 안났다고 판단한다.

0001/F202/F4F6/

운이 안좋게 같은 자리수가 높아지고 낮아지고 한다면 에러 발생한다.



CRC방식

  • 가장 강력하고 두루 활용되는 Error Detection 방식
  • 2진수의 n차 다항식 나눗셈 원리를 통해 CRC parity bit 도출
    • 송수신측에서는 서로 약속된 polynomial (P) 로 나누기를 함

가장 효율적인 Polynomial은 정해져있음 ⇒ 99.9% Error Detection가능.



Error Control

  • detect: 송신 측에서 error 한 상황 인지 (프로토콜 입장에서 송신측이 인지 해야함)
  • react : error상황에서 송신측 응답.

Explicit ACK는 기본적으로 두가지 세부 방법 존재

Explicit acknowledgement : receiver entity가 PDU를 온전히 받았는지 여부를 다시 보내줌

  • 가장 단순하고도 확실하게 confirmation을 하는 방법

Positive ACK : 정상 수신된 PDU를 알려주는 방식

지금까지 수신한 PDU의 다음 sequence number를 알려줌

network load를 줄이기 위해 cumulative ACK가 주로 사용됨

자원의 낭비 때문에 데이터를 연속적으로 보낸다음에 ACK를 보낸다.

Negative ACK : 미수신 PDU를 알려주는 방식

  • faulty or outstanding sequence
  • active error control



Timer

Acknowledgement 전송 역시 손실될 수 있음

  • TX entity 입장에서는 PDU를 보낸 뒤 acknowledgement를 무기한 기다릴 수는 없음

    • Deadlock situation
  • 따라서 ACK에 대한 기한을 두고 기한을 넘기면 action을 취할 필요가 있음

    • timer에 의해 ACK 도달을 monitoring

    ARQ (Automatic Repeat request) 재전송 요청.

  • Acknowledgement + timer + reactions
  • 자동 반복적 재전송 방법
  • ARQ는 궁극적으로 unreliable data link(신뢰성 떨어지는)를 reliable하게 만들어주는 역할
  • 재전송 방법에 따라 여러가지 방식
    • Stop and wait
    • Go back N
    • Selective repeat

Go back N : N으로 되돌아가기

  • N번째 unconfirmed PDU로 돌아가서 거기서부터 재전송함
  • TX entity는 acknowledged되기 전까지 보낸 PDU를 그대로 저장하고 있어야 함
  • RX entity는 N번째 PDU가 문제가 생기면 이후 PDU는 모두 버림 ▪ time-out의 경우 N번째 PDU부터 재전송

Selective repeat

  • RX entity는 제대로 받은 PDU을 저장
  • transmission order대로 다 받을때 까지 저장
  • Cumulative ACK를 통해 제대로 전달된 PDU를 TX entity에서 확인

Go back N vs. selective repeat

  • Selective repeat는 RX entity 측에 buffer 필요
  • Go back N는 TX entity 측에 buffer 필요 (일반적으로 기지국쪽이 Computing power 가 쌔기때문에 부담을 버틸 수 있음)
  • Go back N은 재전송 수신까지 시간이 걸리나
  • selective repeat은 재전송 수신이 상대적으로 시간이 덜 걸림(시간적 효율성이 있지만 RX쪽에 부담이 있다.)



Hybrid ARQ

일반적인 ARQ는 error packet은 버림 HARQ는 error packet을 재활용하는것이 키포인트

  • error packet과 이후 재전송된 packet을 잘 결합해서 Forward Error Correction을 함
  • FEC동작과ARQ재전송개념을잘합친기법

LTE, 5G 등에서 활용



Flow Control : 연속적인 데이터의 개수 결정

  • Stop - and - wait 방식 : 하나씩 전달
    • ACK이 오면 다음 패킷 전송
    • Link 활용성이 좋지 않다.
  • Slide-Window 방식 : 일정 범위에 대해서 몰아서 전달.



Media Access Control (MAC)

  • Contention 기반 (경쟁)
    • 블루투스(80개의 채널중에 비어 있는 채널을 사용)
  • non-Contention 기반 MAC (경쟁 x)
    • Link의 자원을 나눠서 사이좋게 사용하는 방식

LTE (기지국이 자원을 나눠줌)

어떻게 나눌까?

  • Time Division Multiplexing (TDM) 시간 자원
  • Frequency Division Multiplexing (FDM) 주파수
  • Code Division Multiplexing (CDM) 코드를 곱해서 전송. 모든 데이터를 섞어서 보냄.

Scheduling


여기서 자원은 시간과 주파수를 의미한다.

  • Non-contention 방식은 궁극적으로 중앙집권적 L2 entity가 모든 media access를 제어하는 방식
  • 특정 L1이 특정 자원을 통해 전송하는 것을 결정하는 과정을 scheduling이라고 함
  • 대표적인 예시 : LTE/5G 기지국 ▪ 1ms 단위로 scheduling 수행
  • 수신 단말과 단말에게 보낼 data, 자원 결정 ▪ 송신 단말 및 자원 결정



Slotted ALOHA

  • IEEE 계열 MAC (ethernet, WiFi)
    • 유선 : Carrier Sensing Multiple Access/Collision Detection (CSMA/CD) 주파수가 비어있을때까지 기다렸다가 접속.
    • 무선 : Carrier Sensing Multiple Access/Collision Avoidance(CSMA/CA)

댓글남기기