L4 로드밸런싱은 Layer 4(TCP와 UDP)에서 IP와 Port를 활용하여

서버부하분산을 하는 것을 의미

 

적합한 Virutal Server IP와 Port를 목적지로 들어온다면 골고루 서버에 부하 분산합니다.

 

<F5 Networks의 L4 Virtual Server Protocol 정의>

TCP를 사용할 경우 사용자와 서버가 논리적인 Connection(이하 커넥션)을 맺을 수 있도록 중간자의 입장에서

3-way handshake 실시를 지원합니다.

 

사용자와 서버가 생성하여 던지는 SYN, SYN/ACK, ACK Flag Packet을 순서대로 전달하죠.

 

'3-way handshake 실시를 지원한다'는 모호한 표현을 쓴 이유는 F5 Networks Switch처럼 3-way handshake에

 

적극적으로 개입할 수 있는 L4 스위치도 있지만

 

매우 소극적으로 IP와 Port를 활용한 로드밸런싱 / 커넥션 생성만 하는 L4 스위치도 존재하기 때문입니다.

 

 

로드밸런싱의 기준점이 IP와 Port이기 때문에 TCP/UDP의 Header를 분석하여 로드밸런싱에 활용하지는 않습니다. 

 

그래서 프로토콜 헤더를 통해 로드밸런싱하기보다 해당 프로토콜들의 특성으로 인한 행동을 제어하는 편입니다.

 

예를 들어 3-way handshake를 제어하거나 커넥션을 언제 끊을 것인지, 커넥션을 얼마나 유지할 것인지,

Connection Time out에 도달하면 어떻게 할 것인지 등을 제어합니다. 

 

이처럼 L4 로드밸런싱은 IP와 Port를 활용해 부하분산을 실시하는 것을 의미하며

 

TCP / UDP의 특징을 활용한 그 밖의 부가 행동에 초점이 맞추어져 있음을 알 수 있습니다.

+ Recent posts