네트워크 성능의 예측과 수량 예측
- blackrusiper
- 2016년 5월 1일
- 2분 분량
서버의 수량 예측 후, 네트워크의 트래픽량의 예측이 필요하다.
네트워크의 트래픽량은 생각보다 간단한데 위의 서버의 수량에 이미 포함 되어있기 때문이다.
UDP, TCP등등 구분과 내부의 트래픽 외부의 트래픽등을 구분 해야 하지만, 최근의 추세는 대용량의 트래픽 사용이 많은 서비스가 대부분이므로 여유있는 구성이 필요하다.
그리고 네트워크는 거의 반드시 이중화로 구성되므로 여러가지 고려해야 할 사항들이 많다.
이로 인해 네트워크의 설계와 예측이 어려워지는데 최근엔 클라우드로 넘어오면서 모든 구성이 쉽게 되어있고, 구성의 단순함을 보장해주므로 참 편리하다고 볼 수있다.
그렇지만 실 구성에서 어떻게 구성이 되는지 본다면 최 상단 혹은 최 끝단부터 시작을 하면 되는데, 보통 웹단에서부터 데이터를 계산하면 된다.
웹단의 네트워크를 계산한다면 두번의 계산이 필요하다. 이것은 네트워크의 구조를 이해 하면 알 수 있는데 네트워크는 Tx, Rx 로 구분이 되기 때문이다.
흔히들 말하는 100Mbps ( Mega bits Per Second ) 라는게 네트워크의 양이라고 보면 된다. 물론 이를 어떻게 얼마나 처리 되는가는 다른것이고 이를 이해하려면 상당히 깊은 수양이 필요하다.
쉽게 설명한다면 가정용 기가 인터넷은 실제로 트래픽양으로 계산하면 100Mpbs라고 하는 네트워크의 트래픽은 약 11MByte 가 된다. 왜 이런 변환이 필요하냐면 실제 사용 데이터나 사용하는 트래픽계산을 Mega Byte단위로 하게 되기 때문이고 트래픽량의 계산은 데이터와 달리 1024 단위가 아닌 1000 단위 이기 때문이다. 사람을 정말 헷갈리게 하는 계산법이 필요하지만, 아래의 기본적인 계산법을 알고 있다면 큰 무리는 없을것이다.

만약 웹에서 요청이 시간당 1KByte, 요청에 대한 응답이 2MByte 그리고 이런 요청이 총 처리량의 100% 이다. 피크치를 계산할때 총 트랜잭션은 시간에 10,000 건이라면 2MByte * 10,000 + 1KByte * 10,000 / 3600 이 초당 사용량이 되는데 초당 약 5.56 MByte의 데이터트래픽이 사용된다는것을 알 수있다. 위의 기준으로는 100 Mbps 이상의 장비가 필요한 것이다.
여기에 만약 대용량의 트래픽이 처리 되는 시스템이라면 그 용량에 맞춰야 한다.
예를 들자면 음원 스트리밍 서비스혹은 비디오 서비스의 경우 40G 100G 이상의 장비를 대비해 둔다.
지금의 계산은 외부의 네트워크 계산이고 내부의 네트워크 계산은 다르다.
내부에서 사용하는 처리 내역을 전부 더해야 하고 백업의 데이터 흐름과 파일등의 흐름등을 다 계산해야 하기때문이다. 그리고 내부 서비스 로직을 제외한 트래픽의 계산은 가능하면 정확해야 한다. ( 특히 Loadbalancer ) 이부분에 실수가 발생한다면 서비스단에서는 절대 발견할 수 없는 병목현상이 발생하기 때문이다. 네트워크의 사용은 언제나 탄력적이고 대용량의 흐름을 처리하므로 가능한 안정적이고 고 가용성의 구성을 해야한다. 물론 이중화는 당연한 처리 이다.
위의 내용을 그림으로 설명한다면, 아래의 그림의 녹색 테두리의 네트워크 장비 전체를 따로 각자 구해서 트래픽을 측정해야 한다는 것이다.

위의 계산식을 이용하고 추가를 한다면 항목으로는 F/W, Router, L4, BB, L3 그리고 이에따른 서버의 NIC 속도도 정해지게 될 것이다.
다만 주의 할 점은 데이터가 몰리는 부분에 ( BB 혹은 L4 ) 처리의 지연을 대비 할 수있도록 대용량의 네트워크 장비를 설계 해야 한다는 것이다.
Comments