우선 packet이란 네트워크에서 데이터를 전송하는 기본 단위를 의미한다.
그렇다면 packet 스위칭은 무엇일까?
packet 스위칭이란 말 그대로 패킷을 목표하는 호스트에게 전송하는 것이다.
네트워크의 라우터들에게 정해진 라우팅 방식대로 packet을 보내 목적지 까지 도달할 수 있게한다.
어플리케이션 계층에서 내려온 데이터를 패킷단위로 나눠서 보내는데 네트워크의 상황은 시시각각 변하기 때문에
패킷의 이동경로는 실시간으로 변한다.
따라서 목적지에 도달한 패킷은 순서에 맞지 않을수 있으며,
지연이 심할경우 버퍼에서 packet loss가 발생할 수도 있다.
그렇다면 packet 스위칭을 사용하는 이유는 무엇일까
바로 별 다른 자원의 할당이 필요치 않기 때문이다. 추가적인 자원이나 call set-up이 필요하지 않아
여러명의 사용자들이 효율적으로 사용할 수 있는 방식이어서 주로 packet 스위칭을 사용한다.
예시를 들어보겠다.
다음과 같이 1Gbps/s의 링크가 있고, 각각의 사용자에게 100Mb/s를 지원해준다고 가정해보자.
packet 스위칭의 상황에서 35명의 사용자가 1Gbps/s를 사용중일때,
동시에 10명 이상의 사용자가 인터넷에 접속해 있을 확률은 0.004%가 된다. (이것은 확률 문제이기 때문에 블로그에선 다루지 않도록 하겠다)
따라서 99% 이상의 확률로 사용자들은 100mb/s를 보장받을 수 있는것이다.
그렇다면 circuit 스위칭은 어떨까?
circuit 스위칭은 call set-up을 필요로한다. call set-up이란 미리 패킷의 이동 회선을 정해놓고,
그 회선을 독점적으로 사용하는 것을 의미한다.
회선을 독점적으로 사용하는 방법은 대표적으로 FDM과 TDM 방식이있다.
FDM은 특정 주파수를 사용하는 방식이며, TDM은 시간 간격마다 돌아가며 사용하는 방식이다.
그렇기에 어느 상황에서도 일정한 속도를 보장할 수 있다는 강력한 장점이 존재한다.
그러나 전체적인 관점에서 봤을 때는 회선을 독점적으로 사용하기 때문에 비효율적이라고 할 수 있다.
예시로 든 상황에서 circuit 스위칭을 예로 설명해보겠다.
각 사용자에게 100mb/s를 보장해야한다고 하면, link가 1gb/s이기 때문에 최대 10명밖에 사용하지 못한다.
packet 스위칭에서 35명도 수용했던 것을 보면 상당히 비효율적이라 할 수 있다.
그러나 인터넷 속도를 항상 일정하게 보장받을 수 있다는 장점 때문에 적지 않은 수의 사람들이 사용한다고 한다.
*circuit 스위칭은 packet 스위칭에 비해 구독료가 훨씬 비싸다고 한다.*
'CS > 컴퓨터 네트워크' 카테고리의 다른 글
정보보호 개론 소개 (2) | 2024.09.09 |
---|---|
packet loss와 packet delay (0) | 2024.01.19 |