2 minute read

1. LAN

L2 switch는 3계층의 RIP, OSPF 등의 라우팅 알고리즘을 사용하지 않는다. 오로지 MAC주소만을 사용하여 스위치가 구성한 네트워크안에서 페킷을 주고 받는다.

2. MAC 주소

MAC주소는 노드를 구분해주는 48bit로 구성된 주소이다. 앞쪽의 24bit는 생산자를 구분해주는 코드이다. 엄밀히 말하면 호스트나 라우터가 MAC주소를 가지고 있는것이 아니라 호스트나 라우터의 네트워크 인터페이스 (NIC)가 고유한 MAC주소를 가지고 있다. 이를 생각해보면 호스트가 여러개의 NIC를 가지고 있다면 여러개의 MAC주소를 가지는것이 가능하다. 최종적으로 두 노드간에 통신을 할때는 반드시 MAC 주소로 통신을 한다.

3. 유니캐스트, 브로드캐스트, 멀티캐스트

유니캐스트는 받은 노드의 MAC 주소가 정해저 잇는것을 말한다. 어떤 PC가 유니캐스트를 발생시키면 일단 이더넷 네트워크상의 모든 포트로 전송된다. 패킷을 받은 노드의 NIC에서 자신의 MAC주소와 일치하는지 여부를 판단하여 패킷을 CPU로 전달할지 말지를 결정한다. 브로드캐스트란 보내는 MAC주소를 FF-FF-FF-FF-FF-FF로 설정하여 모든 노드가 패킷을 수신하게 되는 기법을 의미한다. 주로 ARP를 통해 상대편의 MAC주소를 알아내고 싶을때 발생된다. 멀티캐스트는 특정 집단의 노드들에 패킷을 보내는 기법으로 최근 화상회의등을 지원하기 위해 많이 사용한다.

4. 허브의 한계

허브란 브릿지, 스위치이전에 많이 사용했던 1계층 장비이다. 단순하게 송신지에서쏜 패킷을 모든 패킷으로 전달한후, 해당되는 노드에서 패킷을 받아 처리한다. 이때 하나의 PC가 허브에 데이터를 보낼때 다른 PC들은 데이터를 보내지 못하는데 이를 콜리젼 도메인이라고 한다. 노드들이 많지 않고 사용환경이 좋다면 허브로도 원하는 성능을 얻을수 있지만 화상회의등의 상황에서 허브는 충분한 성능을 발휘하지 못한다. 그래서 여러개의 콜리전 도메인을 만드는 시도를 통해 나온장비가 브릿지, 스위치이다.

5. 스위치

허브의 문제점인 콜리전 도메인을 나누어주는 2계층 장비이다. 스위치는 일반적으로 맥주소를 가지고 있지 않고 노드간 패킷교환만 담당한다. IP주소가 자신이 연결되어있는 네트워크가 바뀌면 변동의 가능성이 있지만 맥주소는 임의로 변경하지 않는이상 불변하다. 일반적으로 스위치의 성능이 허브보다 좋지만, 특정상황에서는 비슷한 양상을 보일수도 있다. 스위치는 크게 다섯가지의 기능을 제공한다.

먼저 learning을 통해 브리지에 도착한 패킷의 출발지 MAC주소와 콜리전 도메인 정보를 기억한다. 만약 브리지 테이블에서 받은 패킷의 목적지 주소가 콜리전 도메인을 넘어가야하는것인지 판단이 안되면 플러딩한다. (멀티캐스트, 브로드캐스트 상황에서도 발생) 만약 브리지 테이블에 정보를 가지고 있다면 포워딩하여 다른 콜리전 도메인으로 보내거나 필터링하여 해당 콜리전 도메인에서 처리한다. 만약 브리지 테이블에 들어있는 정보가 사용되지 않은채로 오래 방치되면 aging을 통해 제거한다.

스위치와 브릿지는 같은 기능을 제공하지만 몇가지 차이점이 있다. 스위치는 하드웨어 방식, 다른 속도의 포트간의 연결, 다량의 포트를 지원하고 cut-through, fragment-free 의 고성능화 기법을 지원하는것이 차이점이다. 스위치 자체는 ip주소가 반드시 필요하지는 않지만, ip주소 및 서브넷마스크와 디폴트게이트웨이(다른 네트워크로의 통신)를 할당함으로써 관리의 용이하게 하는것이 좋다. 각 스위치는 우선순위 + MAC주소의 형태로의 고유한 ID를 가지며, 뒤에 후술할 STP에서 활용한다.

6. 스패닝 트리

여러 스위치가 연결되어 있을때 별다른 조치를 취하지 않으면 브로드캐스팅 등의 상황에서 루핑이 발생할수 있다. 따라서 STP를 통해 가장 효율적인 경로를 찾고 나머지 경로로는 못가게 막는작업이 필요하다. STP의 과정은 대략적으로 아래와 같다.

1. 스위치중 가장 값이 작은 것을 골라 루트 스위치로 지정한다.
2. 스위치들의 포트들중 루트 스위치로 가장 싼 경로로 향하는 포트를 루트 포트로 지정한다.
3.세그먼트 의 양쪽 루트 포트중 값이 싼곳을 designated port로 지정한다.
4. 만약 판가름이 안나면 루트 포트중 번호가 낮은쪽으로 결정한다.

Cost는 IEEE에서 지정한 대역폭에 따른 정수 Cost표를 참조한다.

Leave a comment