▶ 용어 설명
- Packet(패킷) : 네트워크 계층에서 사용하는 데이터의 형식화된 단위
- Host(호스트) : 인터넷에 연결된 컴퓨터
- Queue(큐) : FIFO(First-In-First-Out) 방식의 데이터 저장용 버퍼 (출구와 입구가 다름)
- Router(라우터) : 서로 다른 네트워크 간의 정보를 주고받기 위해 사용하는 네트워크 통신 장치
- Network(통신망) : 통신 시스템들을 통신 회선으로 연결하여 데이터(정보)를 주고받게 하는 시스템
▶ Packet-Switching (패킷 교환 방식)
- Store-and-Forward 방식 : 다음 링크로 전송되기 전에 라우터의 큐(저장용 버퍼)에 패킷을 쌓아놓고 한 번에 전송(Forwarding)하는 방식.
- 단, 큐는 패킷을 수용할 수 있는 범위가 정해져 있기 때문에 패킷의 양이 큐의 범위를 넘어설 경우 해당 패킷은 손실(Loss)되며, 이를 오버플로우(Overflow)가 발생했다고 한다.
- 패킷의 헤더에는 출발지(Source)와 목적지(Destination)의 정보(포트 번호, IP주소)가 있어 이 정보들을 통해 라우팅 알고리즘을 이용하여 경로를 설정한다.
- 라우팅 알고리즘(Routing Algorithms) : 라우팅 프로토콜이 포함하고 있는 알고리즘으로, routing table에는 패킷의 헤더로부터 읽어낸 목적지 IP주소가 있다. 이 정보를 기반으로 라우터가 패킷을 어떤 목적지로 보낼지 결정한다. 즉, 중간의 라우터(router)들이 표지판 역할을 하며 최종목적지까지 패킷들을 안내한다.
- 이 때, 패킷의 헤더에는 라우터를 지날 때마다 목적지 IP주소가 쌓이게 되므로 오버헤드가 점차 커지게 된다.
- 전송지연(Transmission-Delay) : L-bit 길이의 패킷을 속도가 R bps인 링크로 보낼 때, 큐에서 링크로 전달되는 시간은 L/R 초이다.
- 큐잉 지연(Queueing-Delay) : 라우터마다 큐가 각각 존재하기 때문에 다음 라우터로 이동되기 전에 패킷은 대기하게 된다. 즉, 패킷이 큐에 머무는 시간이다.
- 링크의 전송 속도(bps) < 큐에 패킷이 도착하는 속도 => 오버플로우 발생
- 전송 지연 시간 > 큐잉 지연 시간 => 오버플로우 발생
- 네트워크 상황에 따라 지나친 혼전 가능성이 있으며, 이를 위한 해결책으로 TCP(전송 제어 프로토콜)가 있다.
- source에서 router, router에서 router, router에서 destination 즉, 어떤 노드에서 다음 노드까지를 1hop이라고 표현한다.
- 이 방식은 주로 대용량 전송(Bursty Traffic)일 때 이용하며, 데이터가 한꺼번에 전송되므로 데이터가 활동하는 시간이 짧다고도 표현한다. 이러한 패킷 교환 방식은 컴퓨터 통신에서 쓰이는 방식이다.
▶ Circuit-Switching (회선 교환 방식)
[ 보라색 선이 전용 회선이다. ]
- 하나의 전용 회선을 할당받아 데이터를 주고받는 방식
- 패킷마다 각각의 전용 회선을 할당해야 하므로 통신을 위해 미리 연결(Set-up)절차를 거쳐야 한다. 셋업 절차는 송신측에서 수신측까지의 경로에 맞는 대역폭(Bandwidth)을 미리 할당받는 과정이다.
- 전용 회선은 패킷이 전송되지 않더라도 다른 패킷(데이터)이 끼어들 수 없으므로 속도와 성능이 항상 일정하다.
- 주로 실시간이 중요한 전화망에 사용된다.
- 회선을 할당하는 방식에는 주파수 분할 다중화(FDM)과 시 분할 다중화(TDM) 방식이 있다.
▶ Packet-Switching VS Circuit-Switching
- 패킷 교환 방식은 네트워크의 상황에 따라 대기시간이 다르므로 패킷의 순서가 보장되지 않는다. 그러나 회선 교환 방식은 정해진 경로를 따라 일정한 속도를 가지기 때문에 데이터의 전송 순서가 어긋나지 않는다.
- 패킷 교환 방식은 하나의 라우터가 잘못되어도 전송을 우회할 수 있기 때문에 오류에 강하다. 그러나 회선 교환 방식은 둘 사이에 오류가 생길 경우 데이터 전송이 실패하게 된다.
- 패킷 교환 방식은 라우터에 저장해놓는 시간(큐잉 지연)과 전파지연의 시간이 소비되어 전체 전송 시간이 지연된다. 그러나 회선 교환 방식은 미리 연결하는 시간을 제외하고 전파지연의 시간만 소비되므로 전체적으로 빠른 전송속도를 가지게 된다.
- 회선 교환 방식은 패킷 교환 방식에 비해 같은 네트워크 용량이라도 이용자 수가 제한되어 있다. 이는 전용 회선을 할당하기 때문이다.
1Mbps 짜리 링크에 각각의 사용자가 100kbps로 데이터를 전송한다면 패킷 교환 방식의 경우 10명 이상의 유저가 동시에 링크를 사용할 확률이 낮기 때문에 더 많은 이용자가 링크를 공유할 수 있다. 그러나 회선 교환 방식의 경우 각각의 사용자에게 전용 회선이 할당되기 때문에 최대 10명까지 이용자를 수용할 수 있다.
▶ Multiplexing (다중화)
- 여러 개의 데이터 신호(저수준의 채널)들을 합쳐서 고속신호(고수준의 채널)로 만들어서 하나의 링크로 전송하는 방식이다.
- 하나의 링크를 다중화시켜 여러 사용자가 동시에 링크를 사용하게 되므로 링크의 효율성이 높아진다.
- 이 때 사용하는 장치를 다중화기(Multiplexer)라고 한다. 만약 다중화기를 사용하지 않으면 단말기(사용자)마다 모뎀(변복조기)이 필요하므로 비용이 많이 들게 되어 비효율적이게 된다.
▶ 주파수 분할 다중화(Frequency Division Multiplexing, FDM)
- 링크의 대역폭(Bandwidth)을 주파수를 기준으로 분할하여 여러 개의 작은 채널을 할당하는 방식으로 한 전송로를 여러 단말기(사용자)가 이용한다.
- 링크의 대역폭이 전송할 신호들의 대역폭보다 클 경우에만 사용가능한 아날로그 기술이다.
- 간단한 구조로 모뎀(변복조기)이 필요 없어 비용이 저렴하다.
- 송신측 과정 : 각 단말기(Sender)가 비슷한 주파수 영역의 신호를 만들면 다중화기 내부에서 각 주파수를 각각의 다른 반송주파수(Carrier Frequency)로 변조(Modulate)한다. 만들어진 반송주파수들이 모여서 하나의 복합신호(Composite Signal)가 되면 수용 가능한 대역폭을 가진 전송 매체(전송로)를 통해 신호가 전송된다.
<Multiplexer - 다중화기>
- 수신측 과정 : 위의 과정에서 만들어진 복합신호는 다중 복구기(Demultiplexer) 내부에서 필터(Filter)를 통해 각각의 반송주파수로 분리되고, 제각각 복조기(Demodulator)를 통해 반송주파수에서 해당 주파수 영역의 신호로 복조(Demodulate)되어 해당 신호만 수신측으로 보내진다.
▶ 시 분할 다중화(Time Division Multiplexing, TDM)
- 링크의 대역폭을 시간 슬롯(Time Slot)으로 나누어 각각 채널을 할당하는 방식으로 다수의 채널이 하나의 링크의 시간을 분할하여 사용하는 방식이다.
- 링크의 높은 대역폭을 여러 채널이 공유할 수 있게하는 디지털 기술이다.
- 단, 어떤 채널이 사용되지 않을 경우(데이터를 전송하지 않는 경우)에도 시간이 할당되어 있기 때문에 시간 슬롯이 낭비 될 때가 있다. 이를 위한 해결책으로 비동기식 시분할 다중화기법(ATDM)이 있다.
- 송신측 과정 : 다중화기(Multiplexer)와 다중 복구기(Demultiplexer)는 각각 스위치의 역할을 한다. 서로 동시에 시스템이 동작되도록 설정(동기화)되어 같은 속도지만 서로 반대방향으로 돈다. 다중화기의 경우 스위치가 채널 앞에서 열리게 되며 그 채널은 링크에 보낼 수 있는 신호를 열린 순간 전송하게 된다. 이 과정을 끼워 넣기(Interleaving)이라고 한다.
- 수신측 과정 : 다중 복구기의 경우 스위치가 채널 앞에서 열릴 때, 그 채널은 링크에서 전송된 신호를 수신측으로 전송하게 된다.
▶ Multiplexing Summary
- 두 기술 모두 하나의 링크를 나누어 사용하는 점에서 같지만, FDM은 주파수 대역별로
나누어 채널을 할당하는 것이고, TDM은 시간별로 나누어 채널을 할당한다는 점에서 차이가 있다.
'Network > OSI 3-4 계층' 카테고리의 다른 글
6. Fast Retransmit and Flow Control - 빠른 재전송과 흐름 제어 (1) | 2017.04.19 |
---|---|
5. TCP Segment, Timeout, RTT, ACKs, and Sender/Receiver Event - TCP의 기본 개념과 송,수신측의 상황 (0) | 2017.04.19 |
4. Reliable Data Transfer in TCP - TCP에서의 신뢰성 있는 데이터 전송 (0) | 2017.04.12 |
3. Transport Layer - 전송 계층(4계층) (0) | 2017.04.12 |
1. Computer Network Introduction (0) | 2017.04.08 |