본문 바로가기
CS/데이터 통신

4. Physical Layer - Digital Signals

by D.O.T 2024. 4. 24.

그림 A. 디지털 신호

 

디지털 신호는 0과 1로 표현할 수 있는 실제 전기 신호이다.

물리 계층에서는 실제 전기를 통해 bit 정보를 전송하기 때문에 디지털 신호에 대해 알고 있어야 한다.

 

Bit Rate (비트 전송률)

 

1초 당 비트 전송률이고 Bit Per Second로 bps라고도 한다. 물리적인 장치로 디지털 데이터를 전달할 때 디지털 신호로 전달하게 되는데 그림 A와 같이 bit rate가 몇 bit냐에 따라서 디지털 신호의 레벨을 나누게 된다.

 

한 줄당 80글자가 있는 문장이 총 24줄 있다고 가정하자. 이를 한 페이지라고 했을 때 총 100페이지가 있다면 이 정보를 채널을 통해 전송하는 Bit Rate는 어떻게 될까? 한 글자는 1Byte = 8bit 이므로 8 * 80 * 24 * 100 으로 1,536,000bps가 된다.

1.536 * 10^6 bps로 1.536Mbps로 표현한다. 

 

디지털 신호를 어떻게 전송할까?

 

디지털 신호가 복합 아날로그 신호라는 것을 알아야 한다.

왜 그럴까? 그 이유는 푸리에 변환을 공부해야 알게 되는데,,, 어렵다.

간략히 설명하자면, 통신에서 디지털신호(이산 신호)를 표현하기 위해서 푸리에 변환이라는 공식을 통해 되게 짧은 Time Slice로 나타낸다. 반대로 디지털 신호를 이산신호로 표현하기 위해 아날로그 신호의 합으로 디지털 신호처럼 보이도록 한다. 자세한 내용은 디지털 신호 처리나 응용 수학에서 알 수 있다.

그림 B. 아날로그 신호의 이산 신호 표현법

 

주파수가 높은 아날로그 신호를 합치면 합칠수록 이산신호의 가까운 모습을 띄게 된다. 그래서 무한한 대역폭을 가진 경우, 디지털 신호는 주파수 도메인에서 복합 아날로그 신호로 관측된다.

 

Baseband Transmission

 

Baseband 신호는 원래의 신호 그 자체를 의미하는 것이다. 즉, 주파수 도메인 상 표현되는 0Hz 부터 최대 주파수까지 표현되는 모든 정보를 Baseband 신호라고 한다. Baseband 전송은 디지털 신호를 복합 아날로그 신호로 바꾸는 과정이 복잡하므로 아날로그 신호로 변경하지 않고 Channel을 통해 디지털 신호 그 자체(Baseband)를 보내는 것이다. 

 

그럼, 앞에서 했던 말을 생각해보자. 디지털 신호는 주파수 범위가 무한하므로 대역폭이 넓을 수록 필요 없는 정보까지 같이 전달하게 될 것이다. 그래서 디지털 통신에서 Baseband 전송을 하게 된다면 Low-pass filter를 통해서 의미있는 정보만 추출해서 사용할 수 있다.

Baseband 전송에서 넓은 대역폭을 가진 경우
Low-pass channel로 의미있는 값만 추출한 경우

 

이러한 특성을 이용한다면, 대역폭이 넓을 수록 원래의 디지털 신호에 가까운 형태로 복원할 수 있게 된다.

넓은 대역폭을 이용한 디지털 신호의 복원

 

Broadband Transmission

 

디지털 신호를 전송하는 방법에는 Broadband 전송 방식도 있다.

Broadband 전송 방식은 디지털 신호를 그대로 전송하는 것이 아닌 아날로그 신호로 변환한 뒤 전송하는 것이다. 이 과정에서 사용되는 것이 변조(Modulation)라는 개념인데 Modulation을 통해 디지털 신호를 아날로그 신호로 변환한다. 아날로그 신호로 변환 후 주파수에 맞는 Bandpass Channel을 통해서 신호를 전송하는 것이다.

 

'Baseband와 큰 차이가 없는데 왜 사용할까?' 이런 생각이 들었다면 정말 좋은 접근이라고 생각한다.

디지털 통신에서 Broadband와 Baseband의 차이는 디지털 신호 그대로 전송하기 vs 아날로그 신호로 변환해서 전송하기로 생각할 수 있다. 단순히 생각하면 변조 과정을 거치고 보내는걸 사용할 바에 Baseband 신호를 그냥 보내는게 훨씬 빠르고 좋다고 할 수 있다. 그럼에도 데이터 통신에서 Broadband를 설명하는 이유는 나중에 나올 Multiplexing 개념 때문이다.

 

Broadband Transmission

 

간단히 설명해서, 우리가 Channel을 통해서 신호를 보낸다고 생각해보자.

신호A는 10hz~50hz의 정보가 있고 신호 B는 51hz~60hz 정보가 있고, 신호 C는 30hz~50hz 정보가 있다. 

채널A는 10hz~50hz bandwidth를 채널B는 51hz~60hz bandwidth를 가지고 있다.

신호 A,B,C가 동시에 신호를 보낸다면 신호 A와 B는 각 각 채널 A, B를 선택하면 된다.

그럼 채널 C는? 여기서 문제가 발생한다. 채널 A를 선택하면 신호 A와 충돌, 채널 B를 선택하면 신호 B와 충돌...

이런 문제점을 전송 장애라고 하고 해결할 수 있는 방법이 Multiplexing 개념을 사용한 Broadband Transmission 이다.

 

자세한 Multiplexing 내용은 다른 포스트에 설명하겠다.

 

Transmission Impairment

 

전송 장애는 크게 3가지가 있다.

감쇠(Attenuation)

 

간단히 음성만 한 번 생각해보자.

아~~ 하고 소리를 내면 일정 거리가 지나면 소리가 작아지거나 안들린다. 이런 현상이 감쇠이다.

통신에서 신호도 음파와 같은 파동이므로 일정 구간을 지나면 작아질 수 밖에 없다.

 

감쇠 정도를 확인하는 방법이 데시벨(dB)인데 전기 쪽에서는 전기의 세기, 디지털 신호에서는 신호의 세기로 사용하는 단위다. 통신에서는 디지털 신호이므로 신호의 세기 개념이 적용되는데 dB로 신호의 감쇠(세기가 얼마나 약해졌는지) 정도를 알 수 있다. dB을 구하는 방법은 10 log_10 (P2/P1) 이다.

 

dB 측정

입력 구간 P1, 출력 구간 P2의 세기를 통해 이 신호가 얼마나 감쇠했는지 확인할 수 있고, 중간에 증폭기(Amplifier)를 통해 신호의 세기를 증폭해 줄 수 있다. 실제로 리피터라는 통신 H/W로 신호를 증폭한다.

 

왜곡 (Distortion)

 

예를 들어 진폭이 다른 1hz, 100hz 신호가 있다고 생각해보자. 전파의 특성상 주파수가 높을수록 곧게 직진하고 더 빠르다. 그래서 100hz 신호 전송이 1hz 신호 전송보다 빨리 끝날 수가 있게 된다. 이것을 주파수에 따른 지연 차이라고 한다.

그럼 주파수가 높은 신호는 조금 더 짧아져서 원신호와 다른 모양이 나오게 되는 것이다. 이것을 주파수에 따른 지연 차이로 인한 위상 차이라고 한다. 

 

즉, 왜곡은 다른 주파수가 섞여 있는 복합신호에서 주파수에 따른 지연차이가 발생하고 그로 인해 위상차이가 발생하게 된다. 모든 신호를 수신하고 복합신호로 합치게 되면 위상차이로 인해 다른 파형이 만들어지는 현상을 말한다.

 

주파수 지연에 따른 왜곡 현상

 

잡음 (Noise)

 

잡음은 신호에서 우리가 원치 않는 정보를 말하는 것이다.

Broadband Transmission에서 설명한 전송 장애의 예시가 잡음에 대한 설명이다.

 

잡음은 전송 과정에서 다른 신호와 합쳐지면서 신호의 왜곡이 발생하는 현상이다.

Noise 현상

 

신호가 잡음에 대해 얼마나 영향을 받는지 확인하는 지표로 SNR(Signal-to-Noise Ratio)을 사용한다.

SNR = (신호의 세기) / (노이즈의 세기), SNR_dB = 10log_10(SNR)

 

하지만! 전송 장애는 거의 H/W 쪽에서의 문제이므로 H/W 나 Embedded 개발자가 될 것이 아니라면..

하지만! 화상 채팅, 영상 처리, Discord 쪽의 방향을 생각한다면 필요하다!

그 이유는 데이터 속도와 연관있기 때문이다.

1. 사용 가능한 대역폭 2. 신호 수준 3. 노이즈 수준 (채널 품질)


데이터 속도와 어떤 연관이 있을까?

 

Nyquist bit rate

 

나이퀴스트의 bit rate는 잡음이 없는 채널일 경우, 구할 수 있는 최대 bit rate를 구하는 공식이다.

Bit Rate = 2 * bandwidth(hz) * log_2(Siganl's Level)

여기서 신호의 레벨이 높아질 수록 신뢰할 수 있는 정보는 줄어든다.

왜 그럴까?

 

그림 A를 보면 초 당 전달할 수 있는 bit 레벨이 높아질 수록 세분화해서 양자화를 진행하게 된다.

근데 실제 통신 과정에서 잡음이 발생할텐데 잡음이 생기면서 왜곡이 생긴다고 생각해보자.

레벨이 세분화 되어있을수록 왜곡으로 인해 원 신호와 더욱 바뀌게 된다.

 

Shannon's Capacity

 

샤논의 용량은 잡음이 있는 채널일 경우, 구할 수 있는 최대 전송량을 구하는 공식이다.

샤논은 실제 통신 과정에서 잡음은 무조건 있으므로 해당 공식을 제시하게 된다.

우리가 실제 Download 하거나 어떤 통신 장비의 속도 정보를 볼 때, 이 공식을 통해 얻게 된 정보이다.

 

Capacity = bandwidth(hz) * log_2(1+SNR)

 

대역폭마다 잡음이 없는 경우는 없으므로 만약의 잡음의 세기가 0이라서 SNR이 0이 나올 경우, 채널의 용량은 0이 된다. 즉, 존재할 수 없는 경우라는 뜻이다. 

 

반대로 샤논의 용량을 통해 최대 용량을 구하게 됐으면 Nyquist 정리에 의해 신호의 Level도 구할 수 있다.

C = 4Mbps 이고 채널이 1Mhz 대역폭이라면, 2 * 1Mhz * log_2(L) 이므로 신호의 L은 4임을 알 수 있다.


통신 성능에 대한 정보

 

데이터 통신에서 성능을 결정 짓는 요소는 다양하게 있다.

  • Bandwidth에서 가용해주는 주파수 범위
  • 네트워크를 통해 실제로 데이터를 전송할 수 있는 속도 (Throughput, Shannon과 연관)
  • 전파시간 + 전송시간 + 큐딜레이 시간 + 처리 시간을 칭하는 Latency(지연시간, Delay)
    • Transmission Time은 data size / bandwidth 가 된다.
    • Queuing Time은 중간 목적지, 최종 목적지에서 데이터를 처리하기 위해 대기열에서 대기하는 시간
  • Bandwidth Delay Product
    • bandwidth의 길이가 목적지까지 도착하는 지연 시간
  • Jitter
    • 네트워크 상태에 따른 패킷의 우선순위 등 패킷마다 다른 지연시간을 가진다.

'CS > 데이터 통신' 카테고리의 다른 글

3. Physical Layer - Data와 Signals 그리고 Bandwidth  (0) 2024.04.23
2. Protocol Model  (0) 2024.04.22
1. Protocol Layering  (1) 2024.04.22