Computer Communication 2 - Transmission
Signal
electron의 움직임이 DC/AC로 전달되는 전자기파가 신호의 기본적인 형태이다. 그렇게 전압을 시간에 대해 sin 형태로 보내는 것이 analog signal의 가장 기초가 된다.
그러나 Digital signal에서는 1 또는 0의 값으로, 특정 전압 이상을 기준으로, 특정 주파수로 신호를 생성하게 된다. (By Fourier Series)
임피던스 Z가 작아질수록 전력 p는 커진다. (P=VI, I=V/Z) 이렇게 하기 위해서는 XL = Xc로 만들면 Z=0이 되어 최소가 된다. (capacitor와 inductor의 위상은 전압을 기준으로 대칭이므로 상쇄 가능 -> 회로가 가지는 저항값만 존재하게 됨)
이더넷과 같은 버스에서는 동시에 신호를 보내도 중간에서 딜레이 때문에 만나서 원하던 값보다 큰 전압이 검출될 수 있다. 이는 만약 예상한 값이 아니라면 버리고 기다렸다가 다시 보내는 방식으로 해결한다.
송신과정에서 통신 케이블로 보내는 과정
1. 정보 생성 - 2. 부호화(해밍 코드, 패러티 비트 등 오류를 줄이기 위해 추가) - 3. 프레이밍 (부호화된 신호를 프레임으로 나누어 전송) - 4. 변조 (생성된 정보를 전송 가능한 신호로 변환, digital/analog 변환. 멀리 보내기 위해 높은 주파수/높은 진폭으로 보내는 것. AM/FM) - 5. 통신 포트를 통해 전송 - 6. 통신 케이블을 통한 전송
장거리를 보내기 위해서는 인코딩과 변조가 필수적이다. 통신 과정에서 발생 가능한 오류를 잡기 위해 인코딩이 필요하며 멀리 보내기 위해 진폭 혹은 주파수를 증가시키는 변조를 한다.
- manchester encoding ; 0은 rising, 1은 falling signal로 하여 패킷에서 정확하게 값과 타이밍을 잡아낼 수 있도록 하는 인코딩 방식 (0과 1의 주파수 형태를 바꿈)
- Amplitude Modulation(AM) ; 1은 큰 진폭, 0은 작은 진폭으로 구분
- Frequency Modulation(FM) : 1은 짧은 주파수, 0은 큰 주파수로 구분
- Phase Modulation(PM) : 신호의 골과 봉우리를 변환하여 1과 0을 구분하는 방법
광통신도 비슷하게 기본적인 원리는 밝으면 1, 흐리면 0으로 신호를 구분하는 것에서 출발한다.
수신측 신호 구분
1. 복조(필터링, 동기화) - 2. 디지털 신호처리 (오류 검출, 복조된 신호를 디지털 형태로 변환해 원래의 데이터 복원) - 3. 디코딩 (디지털 신호를 원래의 데이터 형태로 변환)
* 복조(demodulation)
1. 신호수신 - 2. 주파수 변환 - 3. 필터링 - 4. 복조 - 5. 이득 조정 - 6. 디지털 변환
복조란 AM/FM/PM 등으로 변환된 신호를 다시 원래대로 바꾸는 과정이다. 필터링은 원하지 않은 주파수를 제거하며 0과 1을 convolution을 통해 구분하는 작업도 포함한다.
동기화 : 수신된 신호의 타이밍을 맞춰서 정확한 데이터 복원을 할 수 있게 하는 것. (보내는 데이터의 순서와 타이밍을 정확히 알아야 오리지널 데이터를 복원할 수 있음)
*디지털 신호 처리 (Digital Signal Processing, DSP)
1. 샘플링(아날로그를 일정한 시간 간격으로 측정하여 디지털 값으로 변환) - 2. 양자화(샘플링된 값을 일정한 비트로 변환, 가장 가까운 디지털 값으로 근사) - 3. 코딩(이진 코드로 변환) - 4. 필터링(디지털 신호에서 불필요한 것을 제거하고 원하는 부분을 추출) - 5. 변환(신호를 주파수로 변환 - 푸리에 변환을 통해 시간에 따른 변화를 주파수 대역별로 변환. 특정 주파수의 진폭을 확인 가능) - 6. 압축 - 7. 복원
* 디코딩(Decoding)
1. 신호 수신 - 2. 프레임 동기화(수신된 신호에서 데이터 프레임의 시작과 끝을 구분) - 3. 에러 검출, 수정(패리티 비트, 해밍 코드 등 오류 검출 및 수정) - 4. 디코딩 알고리즘 적용 (변조 방식에 따라) - 5. 데이터 복원(신호를 원래의 데이터 형식으로) - 6. 데이터 검증
BPSK(Binary Phase Shift Keying)
위상 변조 방식으로 신호가 1이라면 위로 볼록, 0이라면 아래로 볼록하도록 변조하는 것.
[1 : Acos(wt), 0 : Acos(wt+pi)]
이는 구조가 간단하지만 SNR이 높아도 잡음에 강하다. (왜냐하면 서로 위상이 완전히 반대인 신호가 되므로) 따라서 잡음에 강하고 먼거리를 전송 가능하며 간단한 구조를 강점으로 가지므로 위성, 무선, 데이터 통신 등 다양한 분야에서 사용된다.
디지털 전송
신호 : 시간의 함수 혹은 주파수의 함수로 표현
S(t) = Asing(2pi*f *t + n *pi)
푸리에 변환은 서로 orthogonal(서로소)한 주파수를 합친 것이므로 다시 원래의 주파수를 추출해낼 수 있다.
대역폭(bandwidth) : 신호의 대부분의 에너지가 밀집되어 있는 주파수 영역. 해당 부분을 샘플링하여 0과 1을 구분한다. (하나의 파형이 0과 1을 나타낼 수 있으므로 1bit는 1/2로 가능하다. 이를 통해 데이터율을 계산할 수 있다.)
따라서 전송률을 높이려면 높은 주파수 성분을 전송하고 전송 매체 자체의 대역폭이 커져야 한다.
baud : 초당 전달하는 비트수
-> 한 신호 모양 = 1 bit라면 baud = bps, 한 신호 모양이 2 bit라면 baud *2 =bps
data rate = baud rate * n, 대역폭 B, 한 전송 신호가 M 가지 signature를 표현할 때 최대 전송률 c= 2B log2 M bps이다. (Nyquist 공식)
Nyquist 정리 : 전송 매체의 최대 전송 주파수가 f일 떄 수신측이 2*f 회 샘플링하면 완벽하게 신호를 재생 가능하다.
아날로그와 디지털의 가장 큰 차이 : 노이즈를 제거할 수 있는 정도의 차이, 디지털을 0과 1로 구분되므로 훨씬 좋은 퀄리티를 낼 수 있다.
* 음성 신호는 4KHz에 대부분 에너지가 집중(대역폭)된다. 따라서 Nyquist를 적용하여 8KHz로 샘플링하면 완벽히 샘플링 가능하고, 1샘플링은 8비트 단위로 추출하여 64kbit/sec의 디지털 음성을 생성하는 방식으로 전화가 작동한다.
또한 신호는 고주파일수록 감쇠가 커짐. 그러나 디지털 신호는 저주파에 대부분의 내용이 집중되어 잇기에 신호 감쇠가 덜하다. 따라서 아날로그에 비해 좋은 퀄리티를 보장한다.
Signal to noise Raito (S/N) = 10 * log (signal power / noise power) [dB]
이 값이 얼마 이상이면 통신이 가능 (노이즈에 비해 신호가 훨씬 커서 안정적으로 수신할 수 있으므로)
디지털 데이터의 상한 전송률 : C = W log2 (1+ S/N) bps (shannon의 통신 채널 용량 공식, 왜냐하면 위의 nyquist의 오리지널 신호에서 노이즈의 비율을 뺀 것이 내가 원하는 정보이므로)
전송시스템의 성능 지표 SNR : Eb/N0 (Eb = signal power * 1비트 전송에 필요한 시간, N0 = kT)
다중화(Multiplexing)
저속의 채널을 여러개 모아 하나의 고속 전송 링크로 보내는 것. (여러 느린 모뎀을 모아 하나의 광통신에 넣어 전달하는 방법)
- 시분할 다중화 (Time Division Multiplexing, TDM)
대부분의 음성신호 및 컴퓨터 신호는 64kbps에서 수 Mbps가 최대이므로 데이터링크가 bottleneck이 되지 않는다. 따라서 여러 개의 채널을 모아 동축 케이블, 광섬유 등을 통해 장거리 통신을 하는 방법이다.
시분할 다중화는 각 채널을 시간 순서대로 돌아가면서 보내는 방법이다. (각 프레임에 time slot을 나누어 담아 전달)
- 주파수 분할 다중화 (Frequency Division Multiplexing, FDM)
위와 다르게 특정 주파수에 각 채널을 할당하여 사용하는 방법. 일반적으로 방송/케이블 TV 등이 이 주파수 분할 다중화 방법을 사용한다.
이는 앞서 살펴본 것 처럼 orthogonal 한 신호에 담아 증폭하고, 하나로 합쳐 변조하여 보내는 방식을 사용하며 수신 측에서도 각각을 받아 다시 원래대로 분리할 수 있다. (대역 통과 필터 & 복조기를 통해 원하는 신호를 필터링, 변환)
- 코드 분할 다중화 (Code Division Multiplexing, CDM)
각 채널이 고유의 코드로 데이터를 전송하고, 데이터 흐름이 동시에 같은 주파수 대역에서 전송됨. 수신 측이 특정 코드를 사용하여 원하는 신호를 구분. 이는 위와 달리 주파수 자체를 분할 하는 것이 아니라 특정 키 값을 가지고 인코딩 하여 같은 주파수에 담아 보내고, 수신 측에서 해당 코드를 사용하여 다시 복조하는 방법이다. (이 코드를 또한 orthogonal하게 설정하여 원하는 정보를 꺼낼 수 있다)
- 동기식 시분할 다중화 (Synchronized TDM)
전송 시간을 일정 간격의 time slot으로 나누어 전송, 보내는 사람과 받는 사람이 각각 동기화 되어야 올바르게 통신이 가능하다.
1.544Mbps 급 DS-1 프레임 = 24*8 + 1 = 193bits (1 프레임은 구분용)
* Synchronous DIgital Hierarchy (SDB) & SONET (ITU-T)
전체 통신망 구간에 대해 하나의 기준 클럭으로 동시를 설정하는 전송 표준
(이와 반대로 구간별로 개별적인 클럭을 설정하는 방법은 PDH라 한다.)
- 통계적 시분할 다중화 (Statistical TDM) - ATM
동기식 시분할의 경우 해당 채널이 전송 데이터가 없을 때는 낭비된다. 따라서 전송 데이터가 있을 때만 시간 슬롯을 할당하는 것이 통계적 시분할 방법이다. (그러나 실제로는 이러한 전송 데이터가 있을 시간을 통계적으로 예측하기가 어려우므로 완벽하게 할당하기 어렵다. 따라서 성능 저하가 발생 가능)
따라서 현재 사용되는 인터넷과 데이터 등은 가변 트래픽 환경으로 필요한 경우에만 동적으로 할당되는 방식이다. 단 슬롯 할당을 위한 제어 복잡도가 증가하고 완벽히 예측할 수 없으므로 사용자가 몰릴 경우 제대로 작동하지 않을 수 있다.
댓글
댓글 쓰기