728x90
성능
- 네트워크 비교/평가 기준
- 빠른 네트워크란?
성능 (Performance) : 대역폭
- 대역폭 (Bandwidth) - 처리량/처리속도 (throughput)
- 단위 시간당 전송될 수 있는 데이터의 양
- Ex. 10Mbps (bits-per-second) → 얼마나 보낼 수/받을 수 있는지에 대한 양
- 측정 지점 : 링크간 대 종단간 (end-point, end-to-end)
- 표기 방법
- KB : 2^10 bytes
- Mbps = 10^6 bits per second
- 대역폭은 비트 폭 (bit width) 과 관련 있다.
- 속도가 높아지면 비트폭은 작아진다. (비트 사이가 좁아진다.)
- Ex. 속도를 두 배로 보내면 비트간 간격이 가까워진다
- 속도가 높아지면 비트폭이 작아져서 간섭/오류 가능성이 높고, 천재 지변시 오류 가능성이 높다. 고속 전달로 정보를 많이 받을 수 있다.
성능 : 소요시간/지연시간
현재는 스위칭이 더 느리고, 예전에는 스위칭이 더 빨랐다.
스위치 : 컴퓨터. 2배씩 빨라짐
링크 : 10배씩 빨라짐
- 소요시간 (Latency) / 지연 시간 (delay)
- 소요시간 ≠ 처리 시간
- 소요시간 = 뭔가 하는데 진짜로 걸리는 시간
- A 지점에서 B 지점으로 메시지를 송신하는데 걸리는 시간 (t1 - t0)
- 때로는 왕복 지연 시간 (round-trip time: RTT)이 중요할 수도 있다.
- 시간 소요 항복
- 소요시간 = Propagation + Transmit + Queue [+ 스위칭 시간]
- Propagation (전파지연시간) = Distance / SpeedOfLight
- Physical한 길이에 영향을 받는다.
- Transmit (전송 시간) = Size(메시지의 크기) / Bandwidth (파이프의 용량)
- 광속 (Speed of Light) — 전파의 속도
- 직접 링크에서는 큐잉 지연(queueing delay)은 없다. (스위칭에서만 일어나고, 점대점 연결이나 직접 링크에서는 없다)
성능 (Performance) - 3
- 대역폭과 소요시간의 상대적 중요성
- 작은 메시지 (1byte): 소요시간 중요
- 1ms vs 100ms dominates 1Mbps vs 100Mbps
- 큰 메시지 (25 MB) : 대역폭 중요
- 1Mbps vs 100Mbps dominates 1ms vs 100ms
- 무한대 대역폭
- 총 소요시간이 중요하다.
- Throughput = TransferSize / TransferTime(전송 완료시간)
- 회선 스위칭 : TransferTime = RTT + (1/Bandwidth) x TransferSize
- 패킷 스위칭 : 여러 요소에 영향
- 1-MB file to 1-Gbps link as 1-KB packet to 1-Mbps link
- 데이터도 같이 증가한다. (대역폭을 무시할 수는 없음)
- 총 소요시간이 중요하다.
지연시간 x 대역폭 (Delay x Bandwidth Product = BDP)
효율을 고려할 때 핵심적인 기준
- 전송중인 비트 수 (in flight) or “in the pipe” 최대/적정 데이터 양
- 비트로 나타내는 링크의 길이 (bit length)
- 링크의 부피
- 대역폭이 반영된 지연시간
- Ex. 100ms x 45Mbps = 560KB
- 옛날 링크들은 BDP가 작아서 파이프의 효율이 높았다. 그러나 최신 링크들은 BDP가 커서 파이프의 효율이 낮다.
- 1KB를 1kbps로 보내면 1초, 1Mbps로 보내면 1/100초이다.
- 파이프의 효율 : 파이프가 놀지 않게 꽉 채우고 있는지에 대한 것. 얼마나 파이프를 효율적으로 사용하는가?
- BDP를 넘치게 하면 overflow가 난다.
성능 : 기타 사항
- 응용의 요구 사항
- 대역폭 요구 : 버스트(burst) 대 최고속도 (peak rate)
- 지터(jitter): 소요시간의 변이 (패킷 사이의 차이)
- 기타 주의 사항
- 만일 (메시지) 길이가 1이라면 대역폭은 의미가 없다. (큰 차이 없음)
- 프로세스 간의 소요시간에는 소프트웨어 처리 부하도 포함된다.
- 거리가 짧으면 소요 시간에는 소프트웨어 부하가 주 요소가 된다.
통신 성능을 높이는 방법?
- 처리량 (대역폭)을 높이는 방법
- 소요시간 (지연시간)을 줄이는 방법
- 두 방법은 다르다.
- 대역폭을 높이면 소요 시간이 일부 개선되지만, 소요시간은 그 외에도 다른 요소가 포함된다.
- 또한, 데이터 양이 작으면 대역폭 확장은 효과가 미미하다.
대역폭을 높이는 방법?
- 한 번에 보내는 양을 높인다. (1M → 2M으로 전송량 늘리기)
- 대형 운송차, 2층 버스 …
- 데이터를 신호화하는 작업의 효율을 증대시킨다.
- but 한 없이 쪼개는 것은 불가능하다. 물리적 한계에 거의 다다른 상태
- 고속 도로 / 차선을 만들어 사용한다. (고주파 채널 사용)
- 채널을 넓힌다.
- 많은 차선을 확보하고, 많은 차량으로 동시에 운반한다.
- 넓은 대역 채널을 사용한다.
- 여러 통신 채널을 병렬으로 사용한다.
소요시간을 줄이는 방법?
- 신호 (전파/광파)의 속도를 높일 수는 없다. 속도는 상수임.
- 지역 처리를 높여서 실질적인 거리를 줄인다.
- Caching, proxy
- 트래픽을 조절해서 큐잉 대기 시간을 줄인다.
728x90
'School Lecture Study > 컴퓨터 통신' 카테고리의 다른 글
6. 프레이밍 (Framing) (0) | 2022.10.25 |
---|---|
5. 인코딩 (Encoding) (0) | 2022.10.25 |
4. 점대점(Point-To-Point) 링크 - 하드웨어 구성요소 (0) | 2022.10.25 |
2. 네트워크 구조 (0) | 2022.10.25 |
1. 네트워크 기본 개념 - 요구사항 (0) | 2022.10.25 |