Search
Duplicate

컴퓨터 네트워크/ 고속&기가비트 이더넷

LAN 스위칭의 개요

일반적으로 기존의 LAN에서는 적정한 노드(또는 호스트)가 연결된 환경에서 짧은 시간에 많은 양의 데이터를 전송하는 트래픽 패턴이 빈번히 발생하였기 때문에 공유 LAN 상의 어느 시점에서 한대의 노드(또는 호스트)가 대역폭 전체를 사용하는 것은 어느 정도 괜찮았다.
그러나 네트워크를 더 많은 노드(또는 호스트)들이 실시간으로 사용하고자 할 경우 혹은 대량의 데이터를 전송해야 하는 경우에는 이러한 공유 매체를 사용하는 LAN은 부적절하였다.
이러한 이유로 스위칭 LAN은 네트워크 분야에서 가장 빨리 성장한 기술이 되었다. 스위치는 네트워크의 전송 성능을 높이고 신뢰성을 향상시키기 위하여 LAN 세그먼트를 연결하는데 사용되는 특정 장치를 사용하여 수신 포트로 프레임을 수신하고, 목적지 주소를 검사하여 목적지 주소가 있는 출력 포트로 해당 프레임을 전송하는 기능을 제공하는 네트워크 구조이다.
기존의 이더넷은 가장 널리 사용되고 있는 LAN이지만, 하나의 LAN에 연결되는 노드(또는 호스트) 수가 많아지면 충돌율의 증가로 인해 네트워크의 성능은 급격히 떨어지는 단점이 있었다.
초기에는 브리지(Bridge)라는 네트워크 장비를 통하여 LAN을 분할하여 (”Segmentation”) 네트워크의 트래픽을 분산시키거나, OSI 3계층인 네트워크 계층에 속하는 라우터(Router)라는 장비를 사용하여 보다 정교하게 네트워크를 분할하였다.
그러나 이렇게 네트워크를 분할해도 한 세그먼트에 접속될 수 있는 호스트의 수를 어느 정도 일정하게 유지해야만 하였다. 이러한 네트워크의 한계를 극복하고 보다 향상된 성능을 제공기 위해 각각의 LAN 세그먼트들을 스위치의 포트에 연결하여 앞의 기능들을 통합한 것이 LAN 스위칭 구조이다.
이로 인해 각각의 LAN 세그먼트는 독립적인 LAN으로 동작하며, 충돌 도메인 또한 각각의 LAN 세그먼트로 한정되게 되었고, 처리 속도 면에서 기존의 브리지나 라우터를 능가하며, 기능들을 하나의 장비에 통합할 수 있게 되었다.
이를 가능하게 하는 핵심 기술로는 ASIC(Application Specific Integrated Circuit) 기술을 들 수 있다. ASIC 기술의 발전으로 스위칭을 장비의 중앙처리장치(CPU)가 아닌 ASIC이라는 하드웨어가 수행하게 함으로써 스위칭 속도를 획기적으로 향상시킬 수 있었다.
만약 이더넷 LAN이 20개의 노드(또는 호스트)로 구성되어 있으면, 각 노드(또는 호스트)의 대역폭은 네트워크 대역폭의 1/20이 된다. 또한 이러한 LAN을 다섯 개의 세그먼트로 나누고 스위치에 각각을 연결하면 각 호스트는 전체 대역폭의 1/4씩을 사용하게 된다.

공유 LAN과 스위칭 LAN

역사적으로 LAN은 공유 환경에서 몇 개의 LAN 접근 제어 기법에 의해 성장했다. 예컨대 CSMA/CD, 토큰 패싱 등의 MAC 프로토콜은 공유된 물리 매체 상에서 데이터를 어떻게 전송할 것인지를 결정하는 각각의 규칙을 갖고 있다.
그림 2-2의 (a)와 같은 전통적인 이더넷은 공통의 버스 형태의 토폴로지 상에서 10Mbps의 전송 속도로 동작한다. 그리고 노드(또는 호스트)는 물리적으로 하나의 브로드 캐스팅 도메인을 생성하는 허브, 리피터 등을 통하여 공통의 버스에 연결된다.
이러한 환경에서 각 노드(또는 호스트)는 모든 노드(또는 호스트)로부터 전송되는 데이터를 모두 수신할 뿐만 아니라 반이중 방식으로 동작한다. 즉 노드(또는 호스트)는 동시에 데이터를 송신할 수 없다는 것이다.
거기에다가 이더넷 네트워크의 노드들은 CSMA/CD 프로토콜을 사용하기 때문에 세그먼트 내에서 단지 하나의 노드만이 어느 한 시점에 데이터를 전송할 수 있다. 만약 동시에 프레임을 전송하고자 하면 충돌이 발생하기 때문에 다음과 같은 두 가지 경우에 데이터 전송 시간이 증가된다.
먼저 두 노드가 동시에 데이터를 전송하려고 할 때 충돌이 발생하며, 그와 동시에 두 노드는 전송을 중단하고 잠시 후 다시 재전송을 시도한다. 다음으로는 한 노드에서 프레임이 전송되기 시작할 때, 다른 한 노드는 프레임이 종단 호스트까지 도착되기 전까진 어떤 다른 데이터도 전송할 수 없다.
브리지(Bridge)는 특정 영역에 존재하는 네트워크들을 물리적인 다수의 세그먼트들로 나누고(업무 성격상 또는 사용자 구분상 등), 한 세그먼트상에서 목적지가 상이한 프레임만 브리지라는 네트워크 장비를 통해 전송이 요구된 세그먼트로 전달될 수 있게 허용 및 전송한다. 즉, 필요할 때만 프레임을 전달함으로써 충돌 도메인을 각 세그먼트로 한정하여 충돌률을 줄이는 것이다.
이와는 달리 라우터(Router)는 다양한 논리적인 네트워크를 연결하여 물리적으로는 다른 네트워크에서 충돌 도메인을 분리한다. 즉 물리적인 세그먼트를 나누는 OSI 참조모델의 2계층에서 동작하는 브리지의 기능과 파이어월(Firewall)로 불리는 논리적인 세그먼트 기능을 동시에 제공한다. 브리지와 라우터는 공유 매체에서 기본적으로 버스 형태라는 점이 유사하다.
반면에 스위치는 네트워크의 길이가 늘어나면 전송 지연 시간이 커져서 확장성이 떨어지는 버스구조의 단점을 극복하였다. 또한 브리지나 라우터의 지연 시간이 1,518바이트의 프레임에 대해 1-2ms인 반면 스위치는 0.2ms 처리 속도 또한 향상된 구조를 갖는다.
이더넷 스위치는 그림 2-2의 (b)와 같이 하나의 LAN을 많은 병렬 전용회선 형태로 세그먼트화 함으로써 충돌이 발생하지 않는 확장성 있는 네트워크를 구축할 수 있게 하였다.
스위치의 포트에는 많은 노드(또는 호스트)들이 연결된 하나의 세그먼트 혹은 하나의 노드(또는 호스트)로 연결이 가능하다. 하나의 세그먼트가 연결된 경우에는 해당 세그먼트가 충돌 도메인이 되며 CSMA/CD 프로토콜에 의한 충돌이 일어난다. 또한 세그먼트 상의 단 하나의 노드(또는 호스트)만이 특정 시점에 해당 스위치 포트로 데이터를 전송할 수 있다.
하나의 LAN 노드(또는 호스트)가 스위치의 포트에 직접적으로 연결된 경우에는 전이중 전송(Full Duplex Mode)이 가능하다. 전이중 모드에서는 충돌이 발생하지 않기 때문에 충돌 감지가 필요하지 않으며 특별한 매체 접근 프로토콜이 필요치 않다. 여기에서 이더넷 스위치의 총 대역폭은 스위치 포트의 수만큼 증가하게 된다.
전이중 모드의 스위칭은 동시에 송수신을 할 수 있다. 즉, 10Mbps의 전송 속도로 동작하는 이더넷이 전이중으로 동작한다면 네트워크 대역폭은 20Mbps(송신 10Mbps, 수신 10Mbps)로 늘어나게 된다.
오늘날에는 브리지라는 장비는 거의 존재하지 않으며 라우터만 망 연동을 위하여 사용되고 있는 상황이며, 스위치가 라우터나 브리지의 세그먼트화 기능을 수행하고 있다.
즉 스위치는 10/100/1000Mbps의 공유 세그먼트를 노드(또는 호스트) 각각이 10/100/1000Mbps로 연결된 형태의 전용회선 형태의 네트워크로 구성할 수 있게 해준다. 즉, 10/100/1000Mbps의 스위치를 사용하면 10/100Mbps의 공유 세그먼트에서의 전송을 10/100/1000Mbps의 LAN 세그먼트로 송수신할 수 있게 한다는 것이다.

미니강의| 반 이중(Half Duplex) 방식 vs 전 이중(Full Duplex) 방식

반 이중 방식(Half Duplex Mode)
양 방향으로 데이터가 전송될 수는 있으나 동시에 전송하는 것은 불가능한 방식으로 즉, 한 번에 한 쪽 방향으로만 데이터 전송이 가능한 단방향 통신 방식
전 이중 방식(Full Duplex Mode)
하나의 전송 선로에서 데이터가 동시에 양 방향으로 전송될 수 있는 방식으로 충돌이 발생하지 않음

미니강의| VLAN(Virtual LAN)

VLAN(IEEE 802.1Q)은 네트워크 관리자로 하여금 그룹 단위 혹은 세그먼트 포트 단위의 유용성을 보장하기 위해 논리적인 개별 스위칭 동작을 하게 하는 스위칭 LAN의 옵션 구성이다.
보통 동일 LAN 세그먼트에 있는 호스트들은 브로드캐스트를 통하여 데이터를 전송한다. 즉 하나의 LAN 세그먼트는 동일한 브로드캐스트 도메인에 있다.
VLAN은 가상적인 브로드캐스트 도메인을 생성함으로써 전체 브로드캐스트 트래픽을 제한할 수 있다. 즉 VLAN으로 생성된 가상 세그먼트는 인증된 VLAN 구성원만이 접근할 수 있다.
VLAN의 종류에는 포트기반 VLAN, MAC 주소기반 VLAN, 프로토콜기반 VLAN, 네트워크기반 VLAN, IP 서브넷을 이용한 VLAN, 다중 VLAN 등이 있다.

스위치(Switch)

스위치의 종류

스위치에는 응용 방법에 의해 그림 2-3과 같이 대칭 스위치와 비대칭 스위치가 있다. 대칭 스위치는 동일 대역폭을 가진 LAN 세그먼트에 대한 스위칭을 말하며, 비대칭 스위치는 서로 다른 대역폭을 가진 LAN 세그먼트에 대한 스위칭을 말한다.
또한 스위치를 OSI 참조 모델에 기초하여 구분하면 2계층 스위치, 3계층 스위치와 4계층 스위치로 나눌 수 있다.
2계층 스위치(Layer-2 Switch)는 OSI 참조 모델의 데이터 링크 계층에서 동작하는 스위치이다. 네트워크를 여러 개의 네트워크로 분리하거나 여러 개의 작업그룹(Workgroup)을 생성하는데 사용한다.
스위치의 한 포트로 입력된 프레임은 프레임의 MAC 주소를 기반으로 적절한 포트로 전송된다. 만약 브로드캐스트(Broadcast) 프레임이라면 스위치의 모든 포트로 전달한다.
2계층 스위치는 모든 포트에 여녈된 호스트의 MAC 주소를 학습하여 스위칭 테이블을 생성, 갱신한다. 스위치는 이 테이블을 기초로 하여 프레임을 전달한다.
3계층 스위치(Layer-3 Switch)는 소프트웨어보다는 하드웨어를 사용한 라우터의 한 형태라고 할 수 있다. 이러한 이유로 라우팅 스위치(Routing Switch)라고 불리기도 한다. 3계층 스위치는 크로스바(crossbar) 스위치와 같은 ASIC 스위칭 기술을 이용하며 OSI 참조 모델의 네트워크 계층에서 동작한다.
3계층 스위치의 기능은 3계층의 논리적인 주소(IP주소)를 기반으로 패킷의 경로를 정한다. 스위치는 입력 포트로부터 패킷을 수신하고 IP와 같은 논리적인 주소를 기반으로 적절한 포트로 해당 패킷을 전달한다.
성능 향상을 위해 스위치는 첫 패킷에 대한 경로를 찾고 패킷의 나머지 부분을 전달하기 위해 입력 포트와 출력 포트 사이의 직접적인 연결을 확립하기도 한다.
4계층 스위치(Layer-4 Switch)는 OSI 참조 모델의 전송계층에서 동작한다. TCP, UDP와 같은 프로토콜이 인터넷 프로토콜의 전송계층으로 TCP 헤더는 송신지 포트 번호와 수신지 포트 번호를 갖고 있다.
송신지 포트번호는 입력 패킷의 송신지 전송 계층의 프로토콜을 명시하고 있으며 수신지 포트 번호는 입력 패킷에 대한 수신지의 전송 계층 프로토콜을 명시하고 있다.
4계층 스위치는 이러한 포트번호를 기준으로 패킷을 전송한다. 4계층 스위치는 주로 네트워크의 암호화나 애플리케이션 프로토콜에 기반한 패킷 필터링에 사용된다.

미니요약| 스위치

스위치를 OSI 참조 모델에 기초하여 구분했을 때, 2계층 스위치(Layer-2 Switch)는 데이터 링크 계층에서 동작하는 스위치로 모든 포트에 연결된 호스트의 MAC 주소를 학습한 후 스위칭 테이블을 생성한다.
3계층 스위치(Layer-3 Switch)는 라우팅 스위치라고도 불리며 하드웨어를 사용한 라우터의 한 형태라고 할 수 있다. 노드의 IP 주소를 참조하여 패킷을 전송한다.
4계층 스위치(Layer-4 Switch)는 TCP/UDP의 포트 번호를 기준으로 패킷을 전송한다.

스위치의 동작

스위치의 구성 요소에는 일반적으로 전송 로직과 입출력 포트를 들 수 있다. LAN 스위치의 종류에 따라 입출력 포트는 많은 타입의 물리적인 네트워크와의 인터페이스를 지원하기 위해 여러 가지 종류가 존재한다.
LAN 스위치의 전송 로직은 입출력 포트와는 상관없이 일정하기 떄문에 물맂거인 인터페이스보다 이러한 전송 로직을 이용하여 스위치를 구분하는 것이 보편적이다.

전송 로직

LAN 스위치의 존송 로직은 IEEE 802.11D에 정의되어 있다. LAN 스위치의 동작을 이해하기 위해 스위치의 기본적인 전송 로직을 이해하는 것이 필요하다. 그림 2-4는 LAN 스위치(브리지)의 논리적인 모델을 표현한 것이다.
이 그림에서 스위치는 OSI 참조 모델의 3계층까지를 정의하고 있다. 기본적인 동작은 2계층에서의 MAC 계층의 프레임을 중계하는 것이다.
또한 LAN 혹은 MAN과 연결할 수 있는 물리적인 인터페이스가 필요하며, 스패닝 트리 알고리즘과 같은 관리 행위를 할 수 있는 상위 계층이 존재해야 한다.
전송 로직은 2계층에 존재하며 그림 2-5와 같이 필터/전송 로직, 학습 로직, 포트 인터페이스, 송신지 주소 테이블 등으로 구성되어 있다.

필터/전송 로직

필터/전송 로직은 스위치에 수신되는 모든 프레임의 운명을 결정한다. 수신한 프레임의 목적지 주소를 전송 로직에서 검사하고 송신지 주소 테이블의 엔트피와 비교한다.
만약 프레임의 목적지 주소가 송신지 주소 테이블에 존재하고 목적지의 위치가 수신한 포트가 아닌 다른 포트이면, 프레임을 해당 포트로 전송한다.
만약 송신지 주소 테이블의 목적지가 현재 프레임을 수신한 포트와 같다면 그 프레임을 폐기함으로써 필터링한다.
만약 송신지 주소 테이블이 목적지 주소에 관한 어떠한 정보다 가지고 있지 않다면 해당 프레임을 모든 포트로 플러딩(Flooding) 시킨다.

학습 로직

송신지 주소 테이블은 동적인 엔틔이다. 스위치가 처음에 초기화될 때에는 LAN 상의 각 호스트의 MAC 정보를 아무것도 가지고 있지 않다. 스위치의 학습 로직은 호스트들의 MAC 주소와 송신지 주소 테이블의 위치 정보를 수집하여 주소 테이블을 갱신한다.
이러한 학습은 수신한 프레임이 결과적으로 전송되든 혹은 폐기되든 상관없이 프레임이 수신될 때마다 수행된다. 수신한 각 프레임에 대해 학습 로직은 송신지 주소를 검사하며, 송신지 주소 테이블에 새로운 호스트의 MAC 주소와 해당 포트를 위한 엔트리를 추가하거나 존재하는 엔트리에 대한 경과 시간 타이머를 갱신한다.

포트 인터페이스

포트 인터페이스는 물리적인 포트의 논리적인 인터페이스이다. 포트 인터페이스에서는 1계층과 2계층의 기능이 수행된다. 즉 1계층의 정보를 2계층의 MAC 프레임으로 변환한다.

송신지 주소 테이블

LAN 스위치는 지능적으로 테이블으 기초하여 프레임의 흐름을 제어한다. 테이블은 호스트의 MAC 주소의 리스트와 해당 MAC 프레임을 수신한 가장 최근의 포트로 구성되어 있다.
이러한 테이블은 학습 로직에 의해 갱신되며, 필터/전송 로직에 의해 수신한 프레임 전송을 결정하기 위해 사용된다.
테이블 내의 엔트리들은 MAC 주소 정보가 언제 폐기될 것인가를 결정하는 경과 시간을 나타내기 위한 타이머를 가지고 있다. 스위치 내의 송신지 주소 테이블의 크기는 제한되어 있기 때문에, 하나의 LAN 스위치가 담당할 수 있는 MAC 주소의 수, 즉 호스트의 수는 제한적이다.
그림 2-6과 같은 네트워크를 구성하고, 이를 바탕으로 스위치의 실제 동작을 살펴보자. 네트워크 구성 초기에 스위치 A, 스위치 B의 송신지 주소 테이블은 빈 상태이다.
예컨대 호스트 1이 호스트 3으로 데이터 전송을 한다면, 해당 전송 프레임의 송신지 MAC 주소는 1로 수신지 MAC 주소는 3으로 설정된다.
이러한 프레임을 스위치 A가 수신하면 스위치 송신지 MAC 주소 1과 해당 포트 번호인 1을 송신지 주소 테이블에 추가한다.
이러한 식으로 각 호스트에 해당하는 MAC 주소와 호스트에 연결되는 해당 스위치의 포트를 송신지 주소 테이블에 추가하여 각 스위치의 송신지 주소 테이블을 완성한다. 그리고 스위치는 이런 송신지 주소 테이블을 이용하여 각 호스트의 데이터를 전송한다.
예컨대 호스트 2가 호스트 5로 데이터를 전송하는 경우, 전송되는 해당 프레임의 송신지 MAC 주소는 2로 수신지 MAC 주소는 5로 설정된다.
먼저 스위치 A가 해당 프레임을 수신하면 송신지 MAC 주소 5에 해당하는 출력 포트를 찾기 위해 송신지 주소 테이블을 검새한다. 검색 결과 해당 포트가 2이므로 스위치 A는 해당 프레임을 자신의 포트 2로 전송하게 된다.
그 후 스위치 B 또한 해당 프레임을 수신하게 되며 스위치 A에서와 같은 방법으로 프레임을 전송한다. 스위치 B의 송신지 주소 테이블 상에 송신지 MAC 주소 5에 해당하는 출력 포트는 2이므로 스위치 B는 해당 프레임을 자신의 출력 포트 2로 전달한다. 이러한 방법으로 호스트 2와 호스트 5사이의 데이터 전송이 이루어지게 된다.
이와 유사한 방법으로 3계층 스위치의 경우에는 2계층의 MAC 주소 대신에 3계층의 IP 주소를 매개체로 하여 원하는 데이터를 송수하게 된다. 그림 2-7은 이런 모습을 보여주고 있다.
단 여기서는 Hop 카운터라는 것을 기억하여 향후 최적의 전송을 보장하게 된다.

입출력 포트

LAN 스위치의 두 번째 구성 요소는 입출력 포트이다. LAN 스위치는 2계층 및 3계층 상에서 구성 필요에 의해 2계층의 경우 동일 지역에 존재하는 여러 개의 네트워크를 연결할 때 사용되며, 3계층의 경우는 상이한 여러 개의 네트워크를 연결할 때 사용된다.
이러한 경우 다양한 종류의 2/3계층 네트워크가 존재하기 때문에 LAN 스위치에는 다양한 종류의 물리적 인터페이스가 존재한다.
입출력 포트의 중요성은 네트워크를 연결할 떄, 다양한 물리적 인터페이스에 상관없이 기본적인 스위치의 전송 로직은 바뀌지 않아도 된다는 점이다. 여기서 액세스(access) 포트와 네트워크 업링크(network uplink) 포트라는 용어를 살펴볼 필요가 있다.
액세스 포트는 스위치가 LAN 상에 있는 각 노드(또는 호스트)들을 연동하기 위해 사용하는 물리적인 인터페이스이다. 그리고 네트워크 업링크 포트는 스위치 구성상 한 스위치를 다른 스위치와 연결할 떄 사용하는 포트이다.
보통 네트워크 업링크 포트는 액세스 포트 보다 대용량의 링크로 연결된다. 그 이유는 네트워크 업링크 포트는 구조상 스위치에 연결된 많은 액세스 포트에서 수신하는 트래픽까지 수용해야 하기 떄문이다. 그림 2-8은 이러한 액세스 포트와 네트워크 업링크 포트의 개념을 보여주고 있다.
네트워크 업링크 포트의 기본적인 정의는 몇 개의 액세스 포트로부터의 트래픽을 전송할 수 있는 적절한 대역폭을 가지고 있어야 한다는 것이다. 액세스 포트의 정의는 단순히 호스트 혹은 공유 세그먼트를 연결하는 스위치와 연결되어야 한다는 것이다.
네트워크에서 스위치의 구성 및 특성에 따라 액세스 포트 혹은 네트워크 업링크 포트의 수 및 접속 구성은 다양하다.

스위칭 방법에 따른 분류

LAN 스위치는 성능을 향상시키기 위해 RISC(Reduced Instruction Set Computer) 프로세서와 ASIC(Application Specific Integrated Circuit) 칩을 사용한다. 스위치들은 모든 스위치 동작을 하드웨어로 구현하였기 때문에 그만큼 성능이 우수하다.
LAN 스위칭 기술은 전송 로직, 즉 스위칭 구현 방법에 따라 Cut-Through 스위치, Interim Cut-Through 스위치, Store-and-Forward 스위치 등으로 구분할 수 있다.
Cut-Through 스위치
Cut-Through 스위칭은 전체 프레임이 수신되기를 기다리는 것 대신에 프레임의 송신지 및 수신지 주소를 얻기 위해 프레임의 첫 번째 몇 바이트만을 읽는다. 그리고 해당 프레임은 에러에 대한 검사 없이 해당 목적지 세그먼트로 전달된다. 이렇게 함으로써 프레임의 대기시간을 최소화 할 수 있다.
즉, Cut-Through 방식은 프레임의 중계 시간을 최소화하기 위한 방식이다. 또 다른 방식인 Store-and-Forward 방식에 비해 대기 시간이 1/20 밖에 되지 않는다.
그러나 이 방식은 전체 프레임이 수신되기 전에 중계를 함으로써 프레임의 최소 규격(64바이트)보다 작은 런트(runt) 프레임과 CRC 에러에 대한 검출을 할 수 없다는 점이 단점이다.
또한 복수의 포트에서 어느 한 포트로 프레임이 동시에 전송될 떄, 한 포트만이 프레임을 전송할 수 있고, 나머지 포트의 프레임을 버퍼에 저장하거나 폐기해야 하는데, 트래픽이 많은 상황에서는 이러한 현상이 자주 발생하게 된다.
또한 송신 포트에 접속되어 있는 장치가 프레임을 전송 중일 경우도 같은 현상이 발생하는데, 이러한 혼잡 문제 또한 Cut-Through의 주요 단점이다.
이러한 이유로 Cut-Through 방식만을 사용해 스위칭을 하는 것은 적절치 못하므로 다음에 설명하는 Store-and-Forward 방식과 병행하여 사용하는 것이 일반적이다. 이러한 Cut-Through 스위칭은 주로 ASIC 프로세서 칩을 사용하여 구현된다.
Interim Cut-Through(FragmentFree) 스위칭
Interim Cut-Through 스위칭은 Cut-Through 스위칭의 단점 중 크기가 작은 런트 프레임의 중계를 막는 기능을 보강한 스위칭 방식이다. 동작을 보면 먼저 수신하는 프레임의 시작부분부터 버퍼(FIFO)에 저장하기 시작한다. 그 후 저장한 프레임의 길이가 64바이트 이하인 경우에 저장한 프레임을 버퍼에서 삭제한다.
즉 프레임의 시작 부분부터 64바이트 부분까지를 버퍼에 저장하기 시작하여 수신한 전체 프레임의 크기가 64바이트 이하이면 해당 프레임을 버퍼에서 삭제하는 것이다.
이와 같은 방법을 사용하면 런트 프레임은 처리할 수 있지만, 여전히 에러가 난 프레임은 처리하지 못하고 그대로 중계하게 된다. 이 외의 기존의 Cut-Through 스위칭의 혼잡 문제도 그대로 존속되게 된다.
Store-and-Forward 스위칭
Store-and-Forward 스위칭은 프레임을 전송하기 전에 전체 프레임을 수신하는 방식으로 기존의 브리지와 거의 같은 방식으로 스위칭한다. 즉 해당 프레임 전체를 버퍼에 저장하고 에러 검사를 한 후 중계한다.
만약 에러가 발생한 프레임이라면 해당 프레임을 버리고, 그렇지 않다면 해당 목적지 포트로 프레임을 전달한다.
Store-and-Forward 스위칭은 에러가 있는 프레임을 다른 네트워크로 전달하지 않음으로써 그만큼 네트워크의 충돌율을 줄일 수 있으므로 이더넷 네트워크에 적합하다. 또한 런트 프레임 검사나 CRC에 대한 검출이 가능한 장점이 있지만 전체 프레임을 버퍼링하는 과정에서 프레임의 대기 시간이 길어진다는 단점이 있다.

스위치의 구조

ASIC 칩은 기본적으로 두 가지 종류가 있는데, 하나는 큰 ASIC 칩을 이용하는 것과 그것보다 좀 더 작은 ASIC 칩의 배열을 이용하는 것이 있다. 이러한 특징에 의해 LAN 스위칭은 크로스바(Cross-bar) 구조, 공유 메모리(Shared Memory) 구조, 고속 버스(High-bus) 구조로 구분될 수 있다.

크로스바(Cross-bar) 구조

크로스바 구조는 점대점 연결을 최적화하기 위해 설계된 것으로 마치 여러 개의 도로가 하나의 교차로를 지나는 형태와 유사하다. 이러한 구조는 트래픽이 많지 않을 때에는 Cut-Through 스위치처럼 프레임을 버퍼에 저장하지 않고 출력 포트로 전송할 수 있다.
그러나 트래픽이 많을 때에는 곧바로 출력 포트로 전송될 수 없어 해당 프레임을 입력 버퍼에 저장한다.
이 구조는 가격이 싸고 최초의 스위치 제품이 탑재된 구조이다. 그러나 저속의 인터페이스(이더넷 혹은 토큰링)를 고속의 인터페이스(ATM 혹은 FDDI)로 변환하는데 적당하지 않다.

공유 메모리(Share memory) 구조

공유 메모리 구조에서는 입력 버퍼들이 하나의 주 메모리에 있는 구조이다. 스위치가 프레임을 주 메모리에 저장하는 구조로 Store-And-Forward 스위치로 동작한다. 이러한 구조에서는 한 포트에서 다른 포트로 데이터를 전송할 필요가 없기 때문에 고속버스 스위치보다 가격 면에서 유리하다.

고속버스(High-speed Bus) 구조

고속 버스 구조에서는 스위칭 ASIC 칩들 사이에 고속의 데이터 버스가 연결되어 있다. 프레임은 전송하기 적절한 형태로 변환된 후, 이 버스를 통해 출력 포트로 전송된다. 이 버스는 각 포트의 최대 전송 속도를 동시에 처리할 수 있어서 데이터 경로의 병목 현상이 없으므로 “Non-Blocking” 스위치로 여겨진다.

고속 이더넷(Fast Ethernet)

고속 이더넷의 개요

고속 이더넷은 이더넷 프로토콜을 사용하여 데이터 전송 속도를 100Mbps로 향상 시킨 이더넷 표준의 확장이다. 고속 이더넷의 목표는 기존의 CSMA/CD 프로토콜을 사용하면서 이더넷의 대역폭을 증가시키는 것이었다.
고속 이더넷의 CSMA/CD 프로토콜의 사용은 기존의 10BaseT와 100BaseT를 스위치를 통하여 서로 연결할 수 있는 호환성을 제공하고 있다.
고속 이더넷은 기존의 LAN의 선로 구성과 MAC 프로토콜을 그대로 받아들이면서 전송 거리를 줄여 100Mbps의 속도를 낸다.
이더넷의 최소 프레임 길이는 기존의 64바이트로 유지하고 전송 속도를 높이더라도 케이블의 길이를 짧게하면 CSMA/CD 방식을 사용할 수 있다. 즉 고속 이더넷은 최대 케이블 길이를 줄이고 최소 프레임 길이는 기존의 이더넷과 동일하게 함으로써 전송 속도를 향상시킨 것이다.

고속 이더넷의 구조

고속 이던세의 구조는 그림 2-10과 같다.
Convergence Sublayer(CS)의 역할을 다른 전송 매체를 이용하여 높은 전송 속도로 전송하기 위한 MAC 계층과 Physical Medium Dependent(PMD) Sublayer 사이의 인터페이스를 제공하는 것이다.
Media Independent Interface(MII)는 CS와 PMD의 인터페이스이다.
MII는 보통 40핀으로 구성된 커넥터로 특정 규격이 아닌 다양한 규격의 매체와 연결할 수 있는 일종의 미디어 어뎁터(트랜시버)이다.
만약 네트워크 장비 설치시 100BASE-TX와 같은 특정 규격의 연결을 위해 100BASE-TX 전용 트랜시버와 해당 매체를 구입했다고 가정하자. 이 규격만을 사용하면 문제가 없겠지만 다른 규격의 매체를 사용하고자 한다면, 매체 뿐만 아니라 100BASE-X가 아닌 다른 트랜시버를 또 구입해야 한다.
즉 MII는 네트워크 장비 및 매체의 설치시 비용의 절감 및 효율적인 매체 연결을 위한 공통 커넥터로써 존재한다.

고속 이더넷의 특징 및 응용

네트워크의 수용 범위는 리피터, 스위치 및 브리지와 같은 네트워킹 장비로 연결된 두 종단 호스트 사이의 거리이다. 이러한 네트워크의 수용 범위는 전파 지연(Propagation Delay)과 밀접한 관련이 있다.
전파 지연은 전송 시간과 신호의 수신 시간 사이의 차이로 정의될 수 있다. 이러한 차이는 케이블, NIC 그리고 리피터와 같은 네트워크 구성 요소들에 의해 야기된다.
네트워크 내에서의 이러한 전파 지연은 비트 타임(Bit Time)으로 측정되는데, 1비트 타임은 네트워크 사으이 1비트의 지속시간이다. 예컨대 10Mbps 이더넷의 비트 타임은 1/10μs=0.1μs이며, 한 프레임의 첫 번째 비트는 반드시 마지막 비트가 송신지에서 출발하기 전에 수신지에 도착해야 한다.

기가비트 이더넷(Gigabit Ethernet)

기가비트 이더넷 등장 배경

인터넷 환경의 변화를 배경으로 100BASE-T 표준이 제정된 1995년에 고속 이더넷의 대역폭을 획기적으로 향상시키려는 또 다른 시도를 하게 되었다. 그러한 노력의 결과로 1Gbps 대역폭을 제공할 수 있을 뿐만 아니라, 기존의 이더넷 설비, 단말기 및 네트워크 관리 기술으 포함한 모든 이더넷 인프라를 그대로 활용 할 수 있는 기가비트 이더넷(Gigabit Ethernet) 기술이 등장하게 된다.

기가비트 이더넷 표준화

표준화된 내용을 살펴보면, 우선 물리층 규격으로는 파이버 채널(Fibre Channel)을 기본으로 하였는데 ANSI NCITS T11 파이퍼 채널 규격에서 채택하고 있는 8B/10B 부호화 방식을 기가비트 이더넷에서도 그대로 수용하고 있다.
그림 2-11은 기가비트 이더넷이 기존의 IEEE 802.3 이더넷과 ANSI NCITS T11 파이버 채널 세부사항에서 증명된 프로토콜들을 따르고 있음을 보여주는 기가비트 이더넷 프로토콜 구조도이다.
그림 2-12은 기가비트 이더넷을 구성하는 표준화된 기능 요소들을 나타내고 있다.

기가비트 이더넷 특징

기가비트 이더넷은 기가급 전송 속도를 제공한다는 것 이외에는 기존의 이더넷 기술과 유사하다. 그림 2-13은 기존의 고속 이더넷 네트워크가 기가비트 이더넷 적용시 변화되는 모습을 보여주고 있다.
이와 같은 기가비트 이더넷의 특성을 요약하면 다음과 같다.
1Gbps 속도에서 전이중, 반이중 통신 방식 지원
802.3의 이더넷 프레임 형식 사용
CSMA/CD MAC 이용
10Base-T, 100Base-T 이더넷 기술과의 완전한 호환성을 제공
그림 2-14는 기가비트 이더넷의 프레임 형식을 나타낸다.

기가비트 이더넷의 구조

기가비트 이더넷에서는 기존의 이더넷과 거의 유사한 구조를 가진다. 기가비트 이더넷의 계층별 구조를 보면 그림 2-15와 같다.
고속 이더넷과 비교하여 변경된 내용을 살펴보면 다음과 같다.
MAC 계층과 물리계층의 인터페이스인 MII가 GMII로 변경되었다.
4B5B(FDDI의 물리층) 방식을 사용하지 않고 8B10B(화이버 채널의 물리층, FC-0, FC-1)의 부호화/복호화 방식을 사용하고 있다.
MAC층과 LLC층 사이에 선택사항으로 MAC 제어 계층이 존재한다. (MAC 제어 계층은 전이중 통신을 수행할 떄 흐름 제어를 하는 IEEE 802.3x가 구현되어 있다)
(이하 설명 생략)

10G~ 기가비트 이더넷(10G~ Gigabit Ethernet)

10기가비트 이더넷 등장 배경

서버의 지속적인 성능 향상과 고성능의 SSD 장착 그리고 가상화 및 클라우드와 빅데이터 등의 대형 솔루션 등이 실제 업무에 적용됨으로써 늘어나는 요구 대역폭을 충족시키기 위해서는 저비용으로 구축 및 유지 관리가 가능한 10G/40G/100G 등으로 지속적인 성능 향상을 계속해 나갈 것이다.

10기가비트 이더넷 특징

10기가비트 이더넷은 IEEE 802.3ae-2002 표준으로부터 시작되었으나, 과거의 이더넷들과는 달리 ‘전 이중 방식’(Point-to-Point Full Duplex)만 지원하도록 정의되어 기존의 이더넷 방식의 주류인 반 이중 방식(Half Duplex)이나 중계기(Repeater Hub)의 수용을 포기하였다.
하지만 아직도 10기가비트 이더넷은 원래의 이더넷 범주에 속한다.

10기가비트 이더넷 구조

그림 2-19는 10기가비트 이더넷의 프로토콜 계층 구조도이다.
(이하 설명 생략)