<관련 포스팅>
[네트워크 기초] 허브, 스위치, 라우터 차이
[네트워크 계층 모델] TCP/IP 4계층
[네트워크 계층 모델] OSI 7계층
[네트워크] TCP/UDP 차이(3, 4-way handshaking)
네트워크 기기의 처리 범위
- OSI 7계층별로 처리 범위를 나눌 수 있음
- 상위 계층을 처리하는 기기는 하위 계층을 처리할 수 있지만 그 반대는 불가능
계층별 기기의 종류
- 물리 계층: 허브, NIC, 리피터, AP
- 데이터 링크 계층: L2 스위치, 브리지
- 인터넷 계층: 라우터, L3 스위치
- 전송 계층: L4 스위치
- 애플리케이션 계층: L7 스위치
1계층(물리 계층) 기기
NIC(Network Interface Card)
- 컴퓨터와 네트워크 사이의 중개자 역할
- 이더넷 케이블을 사용하여 네트워크에 연결하기 위한 컴퓨터 확장 카드
- 이더넷 표준의 인기와 낮은 비용 때문에 대부분의 마더보드에 네트워크 인터페이스가 내장됨
- 각 카드에는 고유의 식별번호인 MAC 주소가 있음
- 전송시, CPU가 패킷 생성 → NIC가 전송 시작 → 종료 시, 인터럽트로 CPU에 통보
- 수신시, CPU 메모리에 버퍼공간 할당 → NIC가 버퍼에 데이터 저장 → 종료 시, 인터럽트로 CPU에 통보
리피터
- 단지 약해진 전기 신호를 증폭하여 전달하는 역할을 수행
- 현재는 광케이블이 보급됨에 따라 잘 쓰이지 않음
더미 허브(L1 스위치)
- 리피터 역할을 하며, 기존의 리피터와 다르게 여러 장비를 연결할 수 있음
- CSMA/CD 방식을 적용하고 있기 때문에 여러 장비에서 동시에 데이터를 전송하지 못함
- 하나의 허브에 연결된 모든 장비는 같은 Collision(충돌) 도메인에 속함
AP(Access Point)
- 패킷을 복사하는 기기
- AP에 유선 LAN을 연결한 후 다른 장치에서 무선 LAN 기술(와이파이 등)을 사용하여 무선 네트워크 연결을 할 수 있음
- 공유기도 AP의 한 종류
2계층(데이터 링크 계층) 기기
브리지
- 두 개의 근거리 통신망(LAN)을 상호 접속할 수 있도록 하는 연결 장치 → 통신망 범위를 확장
- 포트와 포트 사이의 다리 역할을 하며, MAC 주소를 테이블로 관리함
- 단순히 전기적 신호만을 증폭시키는 것이 아니라 Frame의 전송 포트를 결정하여 다시 만들어 전송
L2 스위치
- 가장 기본적인 스위치(계층 지정 없이 부를 경우 이에 해당)
- 장치들의 MAC 주소를 테이블을 통해 관리함
- 단순히 패킷의 MAC 주소를 읽어 스위칭하는 역할
- IP주소를 이해하지 못해 IP주소를 기반으로 라우팅은 불가능
브리지와 스위치의 차이
- 스위치는 HW, 브리지는 SW 방식으로 처리함
- 스위치의 속도가 더 빠르고, 제공되는 포트 수가 많으며 포트 별로 속도를 지정할 수도 있음
- 스위치가 브리지의 상위 호환 장비로, 브리지는 현재 사용되지 않음
수행 기능
- Learning: 호스트에서 요청이 오면 해당 MAC 주소를 테이블에 저장함
- Flooding: 목적지 정보가 테이블에 없으면 모든 포트로 데이터를 전송함(Broadcasting)
- Forwarding: 테이블의 MAC 주소를 참조하여 해당 포트로 데이터를 전송함(Unicasting)
- Filtering: 출발지와 목적지가 같은 세그먼트에 있는 경우에는 다른 세그먼트로의 통로를 차단
→ 허브와 달리 Collision 도메인을 나눌 수 있음 - Aging: 특정 시간이 지나면 테이블에서 오래된 MAC 주소를 삭제함
3계층(네트워크 계층) 기기
라우터
- 네트워크간 데이터 전송을 위해 패킷 소모를 최소화하고 경로를 최적화하여 패킷을 포워딩함
- L3 스위치에 비해 가격이 비싸고 초기 설정이 복잡하다는 단점이 있음
L3 스위치
- L2 스위치에 라우팅 기능이 추가된 장비로, IP 정보를 보고 스위칭함
- 기능적으로는 라우터와 차이가 거의 없으며 L3 스위치를 라우터라 해도 무방함
- 라우터는 SW 방식이고 L3 스위치는 HW 방식이기 때문에 스위치가 훨씬 빠르고 저렴
- 제품에 따라 지원하는 기능이 다르기 때문에 라우터와 스위치는 용도에 맞게 사용하면 됨
구분 | L2 스위치 | L3 스위치 |
참조 테이블 | MAC 주소 테이블 | 라우팅 테이블 |
참조 PDU | 이더넷 프레임 | IP 패킷 |
참조 주소 | MAC 주소 | IP 주소 |
4계층(전송 계층) 기기
L4 스위치
- TCP/UDP 등의 헤더를 보고 FTP, HTTP 등 프로토콜을 확인하여 스위칭의 우선 순위를 부여
- IP주소와 PORT 기반으로 스위칭
- 로드 밸런싱(많은 양의 트래픽을 여러 서버로 분산) 기능을 제공
로드밸런서를 이용한 서버 이중화
- 여러 대의 서버를 마치 하나의 서버처럼 동작시키는 것
- 로드밸런서의 대표적인 기능으로 서버 이중화를 들 수 있음
- 성능을 쉽게 확장하고, 장애 발생 시에도 타 서버로 운영이 가능하게 함으로써 신뢰성을 향상
7계층(응용 계층) 기기
L7 스위치
- 로드 밸런서라고도 하며, 시스템이 처리할 수 있는 트래픽 증가를 목표로 함
- URL, 서버, 캐시, 쿠키뿐 아니라 IP주소, TCP/UDP 포트 정보의 패킷 내용까지 참조하여 세밀하게 트래픽을 분산함
- 바이러스, 불필요한 외부 데이터 등을 걸러내는 필터링 기능
- 응용 프로그램 수준의 트래픽 모니터링도 가능
- 정기적인 헬스 체크(health check)를 통해 장애가 발생한 서버를 감지하고 분산 대상에서 제외함
L4 스위치와 L7 스위치의 차이
- L4 스위치와 기능과 역할은 동일하나, 추가적으로 페이로드를 분석하여 패킷을 처리함
- 페이로드를 분석함으로써 네트워크 공격에 대해 방어가 가능하며, 특정 바이러스 감염 패킷을 필터링할 수도 있음
- L7 스위치는 네트워크 보안 강화의 장점이 있지만, 가격이 비싸다는 단점
- L4 스위치는 스트리밍 관련 서비스에는 사용할 수 없으며 메시지를 기반으로 인식하지 못하고 IP와 포트를 기반으로(특히 포트) 트래픽을 분산함
- 반면 L7 로드밸런서는 IP, 포트 이외에도 URL, HTTP 헤더, 쿠키 등을 기반으로 트래픽을 분산함
헬스 체크(health check)
- 전송 주기와 재전송 횟수 등을 설정한 이후 반복적으로 서버에 요청을 보내는 것
- L4, L7 스위치 모두 헬스 체크를 통해 정상적인/비정상적인 서버를 판별함
- 서버에 부하가 되지 않을 만큼 요청 횟수가 적절해야 함
- TCP, HTTP 등 다양한 방법으로 요청을 보내며 이 요청이 정상적으로 이루어졌다면 정상적인 서버로 판별함
- 예를 들어 TCP 요청을 보냈는데 3-way handshake가 정상적으로 일어나지 않았다면 정상이 아닌 것
References
'Computer Science > 네트워크' 카테고리의 다른 글
[네트워크 IP] IP 주소 체계(클래스 기반 할당 방식, 서브넷 마스크) (0) | 2023.02.08 |
---|---|
[네트워크 IP] IP 기반 통신(ARP, 게이트웨이) (0) | 2023.02.07 |
[네트워크] TCP/UDP 차이(3, 4-way handshaking) (0) | 2023.01.25 |
[네트워크 계층 모델] OSI 7계층 (0) | 2023.01.24 |
[네트워크 계층 모델] TCP/IP 4계층 (0) | 2023.01.24 |