L2 스위치는 메모리상에 MAC 어드레스 테이블이라는 테이블을 기반으로 프레임을 스위칭 하고 있습니다. MAC 어드레스 테이블은 포트, 발신지 MAC 어드레스로 구성되어 있으며, 어느 포트에 어떤 노드가 연결되어 있는지를 관리하고 있습니다.
주요 동작으로는 3가지입니다.
1. 수신한 프레임의 포트와 발신지 MAC 어드레스의 등록
2. 모르는 MAC 어드레스는 플러딩(flooding)
3. 사용하지 않으면 삭제
그림을 보면 노드A가 노드B에 대한 프레임을 만들고, 케이블에 전송합니다. 스위치는 이 프레임을 수신하고, 노드 A의 포트 번호와 발신지 MAC 어드레스를 MAC어드레스 테이블에 등록합니다. 이러한 동작을 학습한다라고 보시면 되겠습니다.
스위치는 노드B의 MAC 어드레스를 알지 못하기 때문에, 노드 A를 접속하고 있는 포트를 제외하고 모든 포트에 프레임의 복사본을 전달합니다. 이러한 동작을 플러딩이라고 합니다.
참고로 브로드캐스트의 MAC 어드레스 ‘FF-FF-FF-FF-FF-FF’는 발신지 MAC 어드레스가 될 수 없습니다. 그러므로 MAC 어드레스 테이블에 등록될 일이 없기 때문에 브로드캐스트는 항상 플러딩 됩니다.
프레임을 받은 노드B는 자신에게 온 프레임이라고 판단하고 노드 A에 대한 프레임을 만들어 케이블로 보냅니다. 스위치는 이 프레임을 MAC 어드레스 테이블에 등록합니다. 그러면 노드 A와 B에 대한 MAC 어드레스 테이블이 완성됩니다.
완성된 MAC 어드레스 테이블의 항목은 계속 유지되는 것은 아닙니다. 계속 유지가 된다면 메모리 부족현상이 발생할 수 있으므로 일정 시간 동안 사용되지 않으면 삭제됩니다. 삭제할 때까지의 시간을 에이징 타임(aging time)이라고 하며 보통 5분정도로 설정됩니다(시간 변경 가능).