허브의 충돌 문제 해결 방법
- 전달받은 신호를 수신지 호스트가 연결된 포트로만 내보내고, 전이중 모드로 통신하면 된다
스위치
- 허브와는 달리 특정 MAC 주소를 가진 호스트에만 프레임 전달 가능
- 전이중 모드 통신 지원
MAC 주소 학습 기능
- 전달받은 신호를 원하는 포트로만 내보냄
- 포트별로 콜리전 도메인이 나누어지기에 충돌 위험이 감소
- 특정 포트와 해당 포트에 연결된 호스트의 MAC 주소와의 관계를 기억
- MAC 주소 테이블
- 스위치 포트와 연결된 호스트의 MAC 주소 간의 연간 관계를 나타내는 정보
- 프레임 내 송신지 MAC 주소 필드를 바탕으로 이루어짐
MAC 주소 학습 과정
- 호스트 A가 호스트 C로 프레임을 전송하는 상황
- 플러딩(flooding): 허브처럼 모든 포트로 프레임 전송

- 호스트 B, C, D 프레임 수신 → 호스트 B와 D는 프레임 폐기(자기랑 관련 없으니까)
- 호스트 C는 스위치로 응답 프레임을 전송
- 송신지 MAC주소 필드로 호스트 C의 MAC 주소 학습, MAC 주소 테이블에 기록
- 이제 호스트 A와 C가 프레임을 주고받을 때는 다른 포트로 프레임을 내보낼 필요가 없음
- 호스트 A가 호스트 C에게 프레임을 전송하면
- 스위치는 호스트 B, D가 연결된 포트로는 내보내지 않도록 필터링(filtering)
- 호스트 C가 연결된 포트로 프레임을 포워딩(forwarding)
- 에이징(aging)
- 만약 MAC 주소 테이블에 등록된 포트에서 일정 시간 동안 프레임을 받지 못하면 해당 항목은 삭제
브리지
- 데이터 링크 계층의 스위치와 유사한 장비
- 네트워크 영역을 구획하여 콜리전 도메인을 나누거나 네트워크를 확장
- 최근에 사용 잘 안 함
VLAN 기능
- 논리적으로 LAN을 분리하는 가상의 LAN, VLAN 구성 가능
- VLAN: 한 대의 스위치로 가상의 LAN을 만드는 방법
- 불필요한 트래픽(허브, 스위치의 플러딩)으로 인한 성능 저하 방지
- 한 대의 물리적 스위치를 여러 대의 스위치가 있는 것처럼 논리적인 단위로 LAN을 구획
- VLAN은 사실상 다른 LAN, 서로 다른 네트워크로 간주, 브로드캐스트 도메인 달라짐

포트 기반 VLAN
- 스위치의 포트가 VLAN을 결정하는 방식
- 특정 포트에 VLAN을 할당한 뒤, 해당 포트에 호스트를 연결하여 VLAN에 참여
- 한 대의 스위치만으로 포트 기반 VLAN을 나누면 포트 수가 부족해질 수도 있다
- VLAN 트렁킹(Trunking): 두 대 이상의 VLAN 스위치를 효율적으로 연결하여 확장하는 방법
- 스위치 간의 통신을 위한 특별한 포트인 트렁크 포트에 VLAN 스위치를 서로 연결
- 포트 낭비 최소화, 같은 스위치에 연결되어 있지 않아도 같은 LAN에 속하게 네트워크 구성
MAC 기반 VLAN
- 사전에 설정된 MAC 주소에 따라 VLAN이 결정
- 송수신하는 프레임 속 MAC 주소가 호스트가 속할 VLAN을 결정하는 방식
- 호스트 A의 MAC 주소가 VLAN3에 할당되었다면, 어떤 포트에 연결되는 호스트 A는 VLAN3에 속한 호스트
