P1) 왜 위성은 uplink와 downlink 주파수를 다르게 가져야 할까?
위성은 송신(RX)와 수신(TX) 동시에 수행해야 함(full-duplex)
같은 주파수 사용하면 자기 송신 신호가 수신 방해(간섭)
self-interference 피하려면 주파수 분리 -> 분리된 통신경로 확보 필요
>> 송수신간의 self-interference를 방지하기 위해 uplink와 downlink는 서로 다른 주파수를 사용해야 한다.
P2) broadcast radio와 microwave의 주요 차이점을 몇 가지 제시하시오.
항목 Broadcast Radio Microwave
주파수 | 30MHz ~ 1GHz | 1GHz ~ 30GHz |
전파 방식 | Radio Line-of-Sight (전방향) | Strict Line-of-Sight (직선 경로 필요) |
안테나 | 정렬 필요 없음 | 접시형, 정렬 필요 |
용도 | 라디오, TV 방송 | Wi-Fi, 셀룰러, 위성통신 |
P3) 다음 각 질문에 답하시오:
- a) refraction이란?
- 전파가 매질을 통과할 때 속도 차이로 인해 굴절되는 현상(매질 변화에 따라 전파가 꺾이는 현상)
- b) attenuation이란?
- 감쇠, 전파가 거리나 매질에 따라 약해지는 신호 손실 현상(신호세기가 거리나 매질에 따라 감소하는 현상)
- c) channel capacity에 영향을 주는 주요 요소는?
- bandwidth, SNR, Error rate, encoding/modulation 방식(bandwidth, SNR, noise, error)
P4) 신호의 spectrum과 bandwidth는 어떤 관계가 있는가?
Spectrum은 신호가 포함하는 모든 주파수 성분 범위
bandwidth는 이 중 유효한 주파수 범위(최대-최소)
>> bandwidth는 spectrum 내에서 실제로 사용되는 주파수 범위. 넓을수록 더 많은 데이터 전송 가능
>>bandwidth는 spectrum의 유효 주파수 폭을 나타내며, 데이터 전송량에 직접적 영향을 준다.
P5) Asynchronous vs. Synchronous transmission
10,000 bytes 크기의 파일을 2400bps 속도로 전송한다고 가정하자.
- (a) asynchronous 통신을 사용할 때
bit overhead와 시간 overhead를 따로 계산하시오.
(가정: 각 문자마다 1 start bit, 1 stop bit, 8-bit data, parity 없음)- 문자 1개당 10비트, 총 비트 수= 10000*10 = 100000bits
- 시간 = 100000/2400 = 41.67sec
>> bit overhead : 20,000bits / time overhead : 20000/2400=8.33sec
- (b) synchronous 통신을 사용할 때
bit overhead와 시간 overhead를 따로 계산하시오.
(가정: 각 frame은 1000 문자 = 8000 bit + 48 control bit)- 10000 bytes = 10 frames
- frame당 48bits overhead -> 총 480bits overhead
- 오버헤드 시간 : 480/2400 = 0.2sec (overhead양/1초에 보낼 수 있는 bit 양)
P6) 각 문자마다 parity bit를 포함시키는 것이 정확한 메시지를 수신할 확률에 어떤 영향을 줄까?
parity bit는 오류 검출 도와줌
parity bit 추가 -> 에러 검출 능력 향상
but parity bit 자체가 오류 가질수도!
전송비트 수 증가 -> 오류 확률도 함께 증가
단 짝수개의 오류는 검출하지 못함
>> parity bit를 포함하면 단일 비트 검출 가능성이 생겨 수신 정확도는 증가 but 전송비트 수 증가로 오히려 오류발생확률도 함께 증가 --> 정확도는 향상 but 한계 있음
P7) Odd parity 사용 시 송신 비트 구성 및 오류 검출 조건
7비트 데이터가 1010110일 때 송신기는 어떤 비트를 보내야 하며, 수신기는 어떤 경우 오류를 검출할 수 있는가?
- 송신기 : odd parity 사용
- 1의 개수 : 4개(짝수) -> 홀수로 맞추기 위해 parity bit =1 추가
- 수신기가 오류를 검출할 수 있는 경우 : 홀수개의 비트오류 발생 시 가능. 짝수 개 비트오류 발생하면 검출 불가.
>> 송신 비트 : 10101101 / 오류 검출 가능 : 홀수 개 비트 오류 발생 시
P8) Internet Checksum 방식 - 더하기 스스로 해보자
송신 데이터가 5AD3 EE35일 때, 송신 메시지는?
수신자가 받은 메시지가 59D3 EF35 B6F6일 경우 수용되는가?
- checksum 알고리즘 : 16비트 단위로 덧셈, carry 발생 시 end-aroud carry 수행 (carry는 다시 더 함)
- 결과를 1의 보수(one's complement)해서 송신
- 수신자는 받은 모든 word 더해서 결과가 FFFF면 수용
- 송신 합 = 5AD3 + EE35 = 14908 → One’s complement: B6F6
- 송신 메시지 = 5AD3 EE35 B6F6
- 수신 메시지 59D3 EF35 B6F6 합 = FFFF → 검증 통과
하지만! 실제 에러 발생 사례 (교묘하게 합이 FFFF) → 검출 실패 가능
- 송신 메시지: 5AD3 EE35 B6F6
- 수신 메시지: 합이 FFFF이므로 수용됨
→ ❗ 오류 있음에도 검출 불가 예시
P9) CRC C(11,7), divisor: 110011 → 적합한가?
CRC 코드 C(11,7)에서 divisor가 110011일 경우, 해당 divisor는 적절한가?
(* C(11, 7)은 n = 11, k = 7임)
- 조건확인:
- C(11,7) : n=11, k=7 -> FCS 길이 = n-k = 4bits
- divisor P의 degree = 5 → bit 길이 = 6
- FCS길이와 P의 최고차항은 항상 같아야 함.
>> 적합하지 않다. CRC의 FCS 길이는 P의 최고차항 계수와 같아야 한다. FCS=4bit인데 P는 5차식이다.
5차식 divisior은 5bit FCS 생성 BUT C(11,7)은 FCS가 4bit 이어야 하므로 부적
P10) Divisor P = 110011, Message M = 11100011 → CRC 값은?
→ CRC 값을 구하시오.
- M : 11100011(8bit) -> 뒤에 5개 0 추가 -> 13bit
- 나눗셈 수행(mod 2 연산) -> remainder(FCS) = 11010
>> CRC=FCS(remainder) = 11010, 최송 전송 bit : 1110001111010
* CRC 값 = FCS, 즉 같은 의미!
* MOD2 연산 : 덧셈과 뺄셈이 XOR으로 동작하는 특별한 연산 방식 (0 + 1 = 1, 1 + 1 = 0)
P11) 11-bit 메시지에 대해 4-bit FCS를 생성하는 CRC가 구성되어 있고,
generator polynomial이 x⁴ + x³ + 1일 경우,
이 작업을 수행할 shift register 회로를 그리시오.
- 메시지 : 11bit, FCS: 4bit 따라서 generator polynomial의 차수 = 4.
- Generator polynomial 의 이진표현 : 11001
- 회로 구성 :
- shift registers : 4개 필요(4bit FCS -> r4,r3,r2,r1)
- XOR 게이트 위:
계수가 1인 항: x⁴, x³, x⁰ → 위치: 0, 1, 4
- Generator Polynomial: 11001
- Shift Register 개수: 4
- XOR 위치 (왼쪽부터 인덱스 기준): [0, 1, 4]
- 즉, 첫 입력과 r1, 마지막 출력 사이에 XOR 연결
P12) stop-and-wait 방식을 사용하는 half-duplex point-to-point link에 대해 다음을 고려하시오.
각 메시지는 여러 개의 frame으로 분할되어 전송됨. 오류나 frame overhead는 무시.
- (a) message size를 증가시키면 line utilization에 어떤 영향이 있는가?
(메시지 수는 줄어들고, 나머지 요소는 일정하다고 가정)- 하나의 메시지를 더 적은 수의 큰 프레임으로 나눌 수 있음 -> 프레임 수 감소
- 프레임 수가 줄면 그만큼 ACK을 기다리는 시간도 줄어든다.
- 전송효율(=utilization)이 증가
- 메시지 크기 증가 -> 프레임 수 감소, 프레임당 데이터비용 증가 -> 전송시간 증가, 대기 시간 감소 ->링크 utilization 증가
- 메시지 크기를 키워서 → 프레임 하나에 담을 양을 늘림"
→ 즉, Frame 크기를 키운다 = Message 크기도 커진다
- 메시지 크기를 키워서 → 프레임 하나에 담을 양을 늘림"
- (b) number of frames를 증가시키면 line utilization에 어떤 영향이 있는가?
(메시지 크기는 일정하다고 가정)- 프레임 수 증가 -> 프레임 당 크기 작아짐
- 프레임이 작아지면 T_trans(전송시간) 줄어듦, idle 대기시간 비중 커짐 -> 링크 utilization 감소
- (c) frame size를 증가시키면 line utilization에 어떤 영향이 있는가?
- 프레임 사이즈 증가 -> T_trans 증가 -> 대기시간에 비해 실제 전송에 쓰이는 시간 많아짐 -> 링크 활용률 증
P13) 다음은 optical fiber에 대한 문제이다.
- 광섬유 길이: 300 m
- 전송 속도: 900 Mbps
- 프레임 길이: 2000 bits
- 전파 속도: 2×10^8m/s
다음을 계산하시오:
- (a) **propagation delay TpropT_{prop}Tprop**는 얼마인가?
- (b) **transmission delay TtransT_{trans}Ttrans**는 얼마인가?
- (c) TpropT_{prop}Tprop과 TtransT_{trans}Ttrans의 관계를 통해 어떤 해석이 가능한가?

프레임 크기 / 전송속도

전송 속도: 900 Mbps = 900×10^6 bps
(C): 전파 지연보다 프레임 전송 지연이 더 크다.
→ 이 링크에서는 **거리에 의한 전파 시간보다 처리량(데이터 전송 시간)**이 더 중요한 성능 요인이다.
P14) 어떤 채널이 다음과 같은 조건을 가질 때:
- 전송 속도: 100 Mbps
- 전파 지연: 10 μs
stop-and-wait 방식에서 효율이 최소 90% 이상이 되기 위해
frame size는 어느 범위여야 하는가?

P15) 다음 그림은 A 노드에서 생성된 frame이 B를 거쳐 C로 전달되는 상황을 보여줌.
B의 버퍼가 overflow되지 않도록 B와 C 사이의 **최소 전송 속도 (R bps)**를 계산하시오.
조건:
- A-B 간 전송 속도: 100 Kbps
- 각 구간의 전파 지연: 5 μs/km
- full-duplex 연결
- 모든 frame: 1000 bits
- ACK는 별도 프레임, 길이 무시
- A-B 구간은 sliding-window 방식, window size = 3
- B-C 구간은 stop-and-wait 방식
- 오류 없음
- 힌트: B에 들어오는 frame 수와 나가는 frame 수가 같아야 B의 buffer가 넘치지 않음

P16) 지구와 어떤 행성 간의 거리: 약 9×10109 \times 10^{10}9×1010 m
이 링크는 전송 속도 64 Mbps인 point-to-point link로 연결되어 있음.
frame size: 32 KB, 빛의 속도: 3×1083 \times 10^83×108 m/s
이때 다음을 구하시오:
- sliding window protocol이 사용될 때, **link utilization이 100%**가 되기 위한
**최소 send window size (W)**는 얼마인가?
(송수신 측의 프로토콜 처리 시간은 무시)
P17) 한 채널의 전송 속도 R = 1 Kbps, 전파 지연: 0.2초/km
송수신 노드 간 거리: 30 km,
nodes는 500-bit frame을 주고받음.
- 다음 조건에서 **최소 sequence field size (k)**를 구하시오:
link utilization 100%, ACK 프레임의 길이 무시, 송수신 지연 무시
P18) 두 인접 노드가 5-bit sequence number를 사용하여 frame을 전송함.
다음 ARQ 프로토콜 각각에 대해 최대 send & receive window size는 얼마인가?
- (a) Stop-and-wait ARQ
- (b) Go-back-N ARQ
- (c) Selective-reject ARQ
'CS > 정보통신공학' 카테고리의 다른 글
[정보통신공학] CH10 교수님 요약 정리 (2) | 2025.05.20 |
---|---|
[정보통신공학] CH09 교수님 요약 정리 (0) | 2025.05.10 |
[정보통신공학] 숙영리 정리본_중간고사 ch01, 02, 04, 06, 07 (0) | 2025.04.11 |
[정보통신공학] Ch07. Data Link Control Protocols (1) | 2025.04.11 |
[정보통신공학] Ch06. Error Detection and Correction (4) | 2025.04.11 |