
교환(Switching) 이란, 각 장치간에 일 대 일 통신이 가능하도록 연결하는 방법이다.
교환은 다양한 계층에서 일어나며, 좁게는 한 노드와 노드 사이의 연결만을 신경쓰는 2계층 스위치, 크게는 한 PC와 다른 PC 사이의일 대 일 통신인 TCP, UDP 통신이 될 수 있다. 정리하자면 다음과 같다.
TCP/IP 에서
1 Layer (물리층) : 회선 교환망
2 Layer (데이터 링크층) : 프레임을 패킷처럼 교환, 패킷 교환망 중 가상 회선망만 사용
3 Layer (네트워크층) : 패킷 교환망 (데이터그램망, 가상 회선망 둘 다 가짐 )
4 Layer (응용층) : 메시지 교환망
교환은 크게 3가지 회선-교환망, 패킷-교환망, 메시지-교환망이 존재한다. 그리고 패킷-교환망에서는 데이터그램망과 가상-회선망이 별도로 존재한다.
회선 교환망(circuit-switched network)
회선 교환망은 물리 링크로 연결된 교환기를 뜻한다. 두 지국간의 연결은 1개 또는 그 이상의 링크로 만들어진 전용 경로이다. 각 연결은 각 링크 중 하나의 전용 채널만 사용한다. 그게 무슨 말이냐면, FDM이나 TDM 방식으로 총 n개의 채널로 나눈 다음 두 링크를 연결하는 전용 채널로 사용한다는 뜻이다. 여기선 2개의 연결 밖에 없지만 만약 A가 다른 단말장치로 연결할려고 하면 M을 포함한 다른 모든 교환기로부터 연결 승인을 받아야 한다. 즉, 전화 연결과 비슷하다고 보면 된다. A가 B와 통화가 연결되면 그 둘은 전용 회선을 가지게 되며 간섭을 받을 수 없는 것과 같은 원리이다. 그리고 그 통화 중인 상태를 알고 있어야 다른 전화기가 통화중인 A나 B에게 전화를 걸었을 때 "고객이 통화중이라.." 하는 메시지를 받을 수 있는 것이다.

이렇듯 회선 교환망에서는 연결하기 위해 세 단계가 필요하다.
연결 설정(setup phase), 데이터 전송(data transfer phase), 연결 해제(teardrop phase) 이 3가지의 단계를 가진다.
setup phase : 교환기 사이에서 전용 채널을 만드는 것
data transfer phase : 전용 채널을 통해 데이터를 주고 받는 것
teardrop phase : 둘 중 하나가 연결을 끊기를 원하면 전용 채널을 닫기 위해 교환기로 신호를 보내는 것
이 때, 전체 지연 시간은 연결 + 데이터 전송 + 연결 해제 시간의 총합이다.

패킷 교환망(packet-switched network)
패킷 교환망을 사용하는 경우에는 패킷을 고정 또는 가변적인 길이로 나누는 것이 필수다. 이 때 패킷의 길이는 네트워크와 해당 프로토콜에 의해 결정된다. 패킷 교환망에는 크게 2가지의 종류로 나눠진다. 데이터그램망과 가상 회선망이다.
데이터그램망 (datagram network)
데이터그램망이란, 비 연결형 망이며 네트워크 층에서 다룬다. 그렇기 때문에 데이터그램망에서 교환기는 라우터를 뜻한다.

그렇기 때문에 라우터가 경로지정을 위해 사용하는 라우팅 테이블(Routing Table)이 존재한다.
라우팅 테이블은 말 그대로 경로지정을 위해 목적지 주소에 기반을 두는 테이블을 만들어 놓고 해당 테이블을 갱신하면서 목적지로 길을 알려주는 것이다.

데이터그램망에서의 지연은 다음과 같다.

전송시간을 $T$ 라고 했을 때, 각 교환기(라우터) 마다 대기 시간이 존재한다. 그 사이 총 3번의 전송이 일어나므로 $ 3T * delay1 + delay 2 $ 가 된다.
가상 회선망(vitual-circuit network)
데이터그램망과 회선 교환망을 섞은 것 이다.
가상 회선망은 크게 5가지의 특성을 가진다.
1. 회선 교환망 처럼 연결 해제 단계가 있다.
2. 회선교환 처럼 자원이 연결 설정 단계에서 할당될 수도 있고 필요에 따라 할당 될 수도 있다.
3. 데이터그램망처럼 데이터는 패킷으로 전송되며 각 패킷은 헤더에 주소가 들어 있다.
4. 회선 교환처럼 연결이 설정되고 나면 모든 패킷은 같은 경로를 따라 전송된다.
5. 가상 회선망은 보통 데이터링크층에서 구현된다. (데이터그램 - 네트워크층 , 회선교환 - 물리층)
가상 회선망은 두 종류의 주소가 존재한다. 하나는 전역(global) 주소, 다른 하나는 지역(local) 주소이다.

이 때 전역 주소는 네트워크의 전체에서 통용되는 주소를 뜻한다.
지역 주소는 가상회선식별자(VCI, vitural-circuit identifier) 라고 하는 가상 회선 망 안에서 목적지를 식별하기 위한 주소를 생성하기 위해 사용된다. 즉, 교환기에서 사용되는 주소로서 데이터링크층에서 프레임을 짤 때 사용된다.
가상 회선망의 세 단계는 회선 교환망과 마찬가지로 연결 설정(setup phase), 데이터 전송(data transfer phase), 연결 해제(teardrop phase) 이 3가지의 단계를 가진다.
setup phase 에서는 다음과 같은 절차를 통해 연결을 요청한다.

데이터그램망과 마찬가지로 라우팅테이블이 존재하며, VCI를 지정해 어디로 향하는지 교환기에게 알려준다. 그 후 세션이 수립되면 목적지 B는 연결 설정 요청 프레임을 받아서 둘의 연결 세션을 만든다. 이 때 보내는 연결 설정 요청 프레임은 TCP의 SYN과 같다.

이 때 연결되었음을 알리는 확인 응답을 보내며, 이것을 ACK 라고 한다.
이렇게 둘의 데이터그램망 처럼 연결 주소를 찾고, 한번 연결이 되면 그 둘은 회선 교환망 처럼 통신하는 것이 가상회선망이다.
가상회선망의 지연은 다음과 같다.

데이터그램망과 달리 교환기 사이의 지연시간이 없다. 오직 연결 설정과 연결 해제, 전송 시간만 포함된다.
교환기 구조
그렇다면 라우터를 제외한 나머지 교환기들은 어떻게 생긴 건지 알아보자. 크게 공간 분할 교환기 구조와 시분할 교환기 구조로 나뉜다.
그리고 오늘날 가장 많이 쓰는 것은 그 둘의 합쳐진 형태인 반얀 교환기(Banyan Switch) 이다.
슬 귀찮으니까 그냥 문제 푸는 법만 알아보자.

표현하고자 하는 경우의 수가 8개 인 경우 $2^3 = 8$ 이므로 총 3개의 마이크로 교환기를 준비한다. 그리고 각 마이크로교환기는 0또는 1을 구분할 수 있다. 0 번 출발지에서 6번 도착지로 가고 싶다. 그러면 6을 이진수로 변환한다. 110 이다. 그럼 이 110을 0번 출발지의 프레임이 꼭 쥐고 있다가 경로를 찾아간다.
110 중 가장 왼쪽이 1 이므로 A-1 에서 1로 향한다. 그럼 B-3로 오게 된다.
110 그 다음도 1 이므로 B-3 에서 1로 향한다. 그럼 C-4로 오게 된다.
110 마지막은 0 이므로 C-4에서 0으로 간다. 그럼 우리가 원했던 6 으로 도착 할 수 있다.
등장한 약어
VCI ( vitual-circuit idenfiter)
'network' 카테고리의 다른 글
| [데이터 통신] Chapter 08 교환 연습 문제 & 정답 (0) | 2023.06.13 |
|---|---|
| [데이터 통신] Chapter 12 매체 접근 제어 (MAC) (1) | 2023.06.12 |
| [데이터 통신] Chapter 11 데이터 링크 제어 DLC (0) | 2023.06.11 |
| [데이터 통신] Chapter 10 오류 검출과 오류 정정 (0) | 2023.06.11 |
| [데이터 통신] Chapter 09 데이터 링크층 개요 (0) | 2023.06.11 |