728x90
OSI L4
- OSI 7계층 중 4계층인 전송 계층(Transport Layer)이다
- 전송 상의 유효성, 신뢰성을 체크하여 통신할 수 있도록 해준다
- 4계층의 가장 중요한 특징은 송수신지 포트번호를 인지할 수 있다는 것이다
- L3에서 올라온 패킷에 송수신지 포트 정보를 추가하여 서비스 종류를 구분할 수 있다
- 대표 프로토콜로는 TCP와 UDP가 있다
- TCP : Transmission Control Protocol
- UDP : User Datagram Protocol
- 대표 장비로는 L4 스위치가 있다
OSI 7계층
- L1 : 물리(피지컬) 계층
- L2 : 데이터링크 계층
- L3 : 네트워크 계층
- L4 : 전송(트랜스포트) 계층
- L5 : 세션 계층
- L6 : 표현(프레젠테이션) 계층
- L7 : 응용(애플리케이션) 계층
스위치
- 네트워크를 연결하는 일을 하는 목적을 가진 기기이다
- 스위치는 자신에게 연결된 모든 기기들로부터 들어오는 패킷을 수신하고 이 패킷을 적당한 기기로 보내는 일을 한다
- 스위치는 OSI 7계층에서 어느 계층까지를 다루는지 기준으로 스위치의 카테고리를 나눈다
L2 스위치
- 자신에게 패킷이 오면 패킷의 목적지를 확인한 후 패킷을 목적지까지 전달한다
- IP 주소가 아닌 MAC 주소 기반으로 동작한다 → 이더넷(Ethernet) 레벨로 동작
L3 스위치
- L3 계층의 프로토콜은 IP이기 때문에 IP 주소 기반으로 라우팅할 수 있다
- 목적지 IP 주소가 외부 IP 주소일 경우 이를 외부에 위치한 L3 Switch 혹은 라우터에 전달한다
- 라우터, 공유기 등의 장비가 해당된다
💡 라우팅
- 경로를 선택하고, ip 주소를 정하고 경로에 따라 패킷을 전달한다
L4 스위치
- L4 계층의 프로토콜은 TCP/UDP 프로토콜의 헤더를 보고 스위칭한다
- IP/TCP/UDP 포트 정보를 참조하여 패킷을 확인하고 세션을 관리하며 로드 밸런싱을 제공하는 스위치 장비다
- L4 스위치는 부하 분산, 성능 최적화, 리다이렉션 기능을 제공한다
- VIP(Virtual IP)를 통해 특정 포트에 집중되는 서비스를 여러 서버로 분산 처리하는 로드 밸런싱 기능을 지원한다
- L4 스위치가 동작하려면 아래 4가지를 설정해야 한다
- 가상 서버(Virtual Server) : 사용자 바라보는 실제 서비스
- 가상 IP(Virtual IP) : 사용자가 접근해야 하는 서비스 IP 주소
- 리얼 서버(Real Server) : 실제 서비스를 수행하는 서버
- 리얼 IP(Real IP) : 실제 서버의 IP
💡 로드 밸런싱
- 트래픽을 분배해주는 역할
- 트래픽이 몰렸을 때 각 서버로 분배해주는 역할을 한다
L4의 로드밸런싱 방식
Round Robin
- L4 하단에 연결된 서버에 순차적으로 접속한다
- 트래픽이 몰려있더라도 하단의 서버 상태는 상관하지 않는다
- 때에 따라 각 서버 별로 가중치(weight)를 부여할 수 있다
Least Connection
- L4 하단에 현재 세션 수가 가장 작은 서버에 접속한다
Hash (Source IP)
- 한번 연결되었던 서버는 계속 그 서버에 접속한다
- 어느 정도 접속 사용자가 늘어나면 거의 공평한 로드 밸런싱이 가능하게 된다
- 새로운 사용자가 들어오면 사용자 IP(혹은 Port) 기반으로 key 값을 생성한다
L7 스위치
- L7 스위치는 OSI 7계층에서 동작하는 스위치이다
- URL의 헤더, FTP에서 전송하는 바이너리 등을 분석하고 종합하여 불필요 트래픽에 대한 차단 기능을 지원한다
- HTTP의 URL, FTP 쿠키 정보 및 바이러스 패턴을 분석하여 보안에 더 유리하고 정교한 로드 밸런싱이 가능하다
- 다만 데이터 페이로드 분석에 많은 자원 소모를 보여 병목현상을 일으킬 수 있다
L4 스위치 vs L7 스위치
- L4는 페이로드에 대해서 신경쓰지 않지만, L7은 세션을 분리하고 자신이 철저하게 클라이언트/서버로 동작한다
- L7은 데이터 분석을 통해 보안 기능을 제공하고 HTTP Header 값에 따른 부하 분산이 가능하다
로드 밸런서
- 서버나 장비의 부하를 분산하기 위해 사용하는 장비
- IP 주소나 4계층 정보, 애플리케이션 정보를 확인 및 수정하는 기능이 있다
- 로드 밸런서가 서비스에 사용되는 대표 IP 주소를 서비스 IP로 갖고, 그 밑에 시스템이 늘어나면 로드 밸런서가 각 시스템의 실제 IP로 변경해 요청을 보낸다
L4 로드 밸런싱
- 일반적인 로드 밸런서가 동작하는 방식
- TCP, UDP 정보(특히 Port 번호)를 기반으로 로드 밸런싱을 수행한다
- 4계층에 대한 정보로만 분산 처리하는 경우를 L4 로드 밸런싱이라고 한다
L7 로드 밸런싱
- HTTP, FTP, SMTP와 같은 애플리케이션 프로토콜 정보를 기반으로 로드 밸런싱을 수행한다
- HTTP 헤더 정보나 URI와 같은 정보를 기반으로 프로토콜을 이해한 후 부하를 분산한다
- 일반적으로 이런 장비를 ADC(Application Delivery Controller)라고 부르며, 프록시 역할을 수행한다
참고)
https://sarc.io/index.php/miscellaneous/758-osi-7-l4-l7
https://kchanguk.tistory.com/181
728x90
'야미스터디 > Network' 카테고리의 다른 글
[Network] IP, TCP/UDP, HTTP (0) | 2023.03.24 |
---|---|
[Network] DNS (0) | 2023.03.16 |
[Network] OSI 7계층 (0) | 2023.03.15 |
[Network] HTTP Status code 📌 (0) | 2022.11.19 |
[Network] 라우터 📌 (0) | 2022.09.20 |
댓글