(참고: Fastcampus 강의, 강민철의 인공지능 시대 필수 컴퓨터 공학 지식)
2. 네트워크 엑세스 계층
Contents
- 이더넷 (Ethernet)
- 허브와 CSMA/CD
- 스위치와 VLAN
(1) 이더넷 (Ethernet)
a) 이더넷이란?
컴퓨터끼리 “유선으로” 데이터를 주고받게 해주는 기술
(LAN선(=이더넷 케이블)을 꽂아서 인터넷이 됨)
- 유선 네트워크의 표준
- 하나의 케이블로 여러 기기를 연결
- 데이터를 패킷 단위로 전송
b) WAN vs. LAN
- WAN: via 인터넷
- LAN: via 이더넷
- 이더넷은 현대 (유선) LAN에서 가장 대중적으로 이용되는 기술임
- “(1) 물리 계층 + (2) 데이터 링크 계층 (네트워크 엑세스 계층)“의 스펙과 프로토콜을 모두 정의한 유선 네트워크 표준
(참고) 물리 계층 & 데이터 링크 계층
- 물리 계층 (Physical Layer)
- 전기 신호, 케이블, 커넥터 같은 물리적 전송 수단을 다룸
- 이더넷에서는 UTP 케이블, RJ-45 포트, 전송 속도(예: 100Mbps, 1Gbps) 등이 포함됨
- 요약: 이더넷 신호를 보내는 케이블
- 데이터 링크 계층 (Data Link Layer)
- 프레임 단위로 데이터 전송
- MAC 주소, 에러 검사 (CRC), 충돌 처리 (CSMA/CD) 등을 다룸
- 이 계층에서 이더넷 프로토콜이 동작함
- 요약: 이더넷만의 데이터 포맷(프레임)
c) IEEE 802.3
IEEE 802.3 = 이더넷 국제 표준
이더넷 표준 규격 버전:
- 802.3 뒤의 알파벳으로 표기함
- e.g., 802.3u, 802.3ab, ..
“이더넷 표준 규격”이 달라지면, “케이블 전송 속도”도 달라진다!
이더넷 케이블 지칭: 전송속도 BASE-추가특성
(이더넷 케이블의 속도/특을 나타내는 표준 표현)
- 10BASE-T
- 25GBASE-LR
- 5GBASE-T
구성 요소 | 의미 |
---|---|
10, 5G, 25G | 전송 속도 (10Mbps, 5Gbps, 25Gbps) |
BASE | 베이스밴드 방식 (Ethernet 전용) |
-T, -LR 등 | 전송 매체 또는 거리 특성 |
- 속도 → 몇 Mbps or Gbps인지
- BASE → 이더넷 방식임을 나타냄
- -T, -SR, -LR → 케이블 종류 또는 도달 거리
d) 이더넷 프레임
이더넷 네트워크에서 주고받는 “데이터 형식”
이더넷 프레임 구성 요소
항목 | 설명 |
---|---|
프리앰블 (Preamble) | 데이터 전송 전에 수신 측이 동기화할 수 있도록 만드는 비트 패턴 - 이너뎃 프레임의 시작/끝을 알리는 비트열 - 첫 7바이트는 10101010 - 마지막 1바이트는 10101011 (SFD) |
목적지/송신지 MAC 주소 | 데이터가 도착해야 할/보낸 장치의 하드웨어 주소 - 네트워크 상의 주민등록 번호 - 물리적 주소, 네트워크 장치 (NIC)마다 할당된 고유한 주소 |
이더타입 / 길이 | 페이로드가 어떤 프로토콜인지 (IP 등), 또는 데이터 길이 - 1536 이상: 이더타입 (이 프레임이 무엇을 캡슐화 했는지) - 1500 이하: 프레임 크기 |
페이로드 (Payload) | 실제 전송하고 싶은 데이터 내용 (예: IP 패킷) |
FCS (Frame Check Sequence) | 오류 검출용. 데이터가 손상됐는지 확인하는 체크섬 |
NIC (네트워크 인터페이스)
- 컴퓨터를 네트워크에 연결해주는 하드웨어
- 인터넷을 쓰려면, 컴퓨터 안에서 ‘네트워크선’을 꽂는 곳이 있어야 함
- 유선: 랜선 꽂는 포트
- 무선: 와이파이 기능을 가진 칩
- 네트워크를 타고 많은 데이터(프레임)가 오는데, NIC는 “이게 나한테 온 건지” 판단해서 맞으면 받아들이고, 아니면 버림
- 내 MAC 주소 맞음: OS에 전달
- 내 MAC 주소 아님: 폐기
(2) 허브와 CSMA/CD
a) 허브 (hub)
허브 = 호스트를 연결할 수 있는 포트 (port)
-
“물리 계층”의 장비이다
$\rightarrow$ 따라서, MAC 주소를 사용하지 않는다 ($\because$ MAC 주소는 “데이터 링크” 계층 개념)
-
주소 식별 X $\rightarrow$ 연결되어있는 “모든” 포트로 정보를 내보냄
b) 반이중 통신 (half-duplex)
반이중 vs. 전이중
- 반이중 통신 (half-duplex): 송/수신이 “한번에 하나만”
- e.g., 허브, 무전기
- 전이중 통신 (full-duplex): 송/수신이 “동시에”
- e.g., 전화
허브는 “반이중 통신”을 하므로..
$\rightarrow$ 동시에 허브로 데이터를 전송할 경우, “충돌 (collision) 발생”
충돌 도메인
- 충돌이 발생할 수 있는 범위
c) CSMA/CD
“반이중 이더넷”의 충돌을 해결하기 위해!
- CS (Carrier Sense)
- 캐리어 (반송파) 감지: 메세지 전송 중, “현재 전송 중인 메세지가 있는지” 확인
- MA (Multiple Access)
- 다중 접근: 2개 이상의 호스트가 동시에 네트워크에 접근 (충돌 발생)
- CD (Collision Detection)
- 충돌 감지: 잼 신호 (jam signal)를 보낸 뒤, 임의의 시간 동안 대기 후에 재전송
d) 허브 요약
- 전달 받은 신호를 “모든 포트”로 내보냄
- 연결된 모든 호스트가 충돌 도메인
- “반이중 모드”로 통신
e) 스위치의 등장
허브의 한계점을 잘 알겠어… 그렇다면…
- (1) 전달받은 신호를 “목적지 포트로만” 내보내고,
- (2) “전이중 모드”로 통신하는 “데이터 링크 계층”의 네트워크 장비는 없을까?
$\rightarrow$ 스위치 (Switch)
(3) 스위치
a) 허브 vs. 스위치
항목 | 허브 (Hub) | 스위치 (Switch) |
---|---|---|
동작 방식 | 수신 데이터를 모든 포트에 전송 | 수신 데이터를 목적지 포트에만 전송 |
주소 인식 여부 | MAC 주소 인식 못함 | MAC 주소 테이블로 목적지 인식 |
효율성 | 낮음 (불필요한 트래픽 많음) | 높음 (필요한 포트에만 전달) |
충돌 가능성 | 높음 (같은 네트워크 내 충돌 발생 가능) | 낮음 (각 포트별로 독립된 전송 가능) |
계층 | 물리 계층 (Layer 1) | 데이터 링크 계층 (Layer 2) |
보안 | 낮음 (모든 포트에 정보 노출) | 높음 (선택된 포트에만 전송) |
- 허브는 “받은 거 다 뿌림”
- 스위치는 “어디로 보낼지 알고 거기로만 보냄”
b) 스위치의 MAC 주소 학습 기능
“포트에 연결된 호스트”와 “MAC 주소”의 관계를 기억하는 스위치 기능
- with MAC 주소 테이블!
$\rightarrow$ “보내는 주소를 기억해서 다음엔 정확히 그쪽으로만 보내는 똑똑한 장치”
Q) MAC 주소 테이블의 학습 과정?
1. 플러딩 (Flooding)
- 처음엔 MAC 주소 테이블이 비어 있음.
- 목적지 MAC 주소를 모르면, 모든 포트로 데이터를 전송함 (브로드캐스트처럼).
2. 포워딩과 필터링 (Forwarding & Filtering)
- 어떤 포트에서 어떤 MAC 주소가 들어오는지 기억함 → 테이블에 등록.
- (포워딩) 이후 그 MAC 주소로 보내야 할 데이터가 오면, 해당 포트로만 전송
- (필터링) 목적지 MAC이 같은 포트에 있으면 → 전송 안 함
3. 에이징 (Aging)
- MAC 주소 테이블은 영구적이지 않음.
- 일정 시간 동안 활동이 없으면, 해당 MAC 주소는 테이블에서 제거됨 → 최신 상태 유지.
c) VLAN (Virtual LAN)
(물리적 네트워크와 무관하게) 논리적으로 그룹을 나누는 기술
$\rightarrow$ 즉, 같은 스위치에 연결돼 있어도, 다른 VLAN이면 서로 통신 불가능
- 장점: 보안 향상, 트래픽 분리, 효율적인 관리 가능
d) VLAN의 종류
- (1) 포트 기반 VLAN (정적 VLAN)
- (2) MAC 주소 기반 VLAN (동적 VLAN)
포트 기반
MAC 주소 기반