Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 9 Next »


FSR 복제성능의 최적화는 로컬 쓰기 I//O 지연시간과 복제 트래픽 전송량 두 가지 관점에서 설명합니다.

지연시간

로컬 쓰기 I/O 지연시간에 영향을 주는 요소는 다음과 같습니다.

  • 시스템 지연 시간
  • FSR 커널 엔진 지연 시간
    • 경로필터 탐색 시간
    • 송신 버퍼를 위한 메모리 버퍼, 파일버퍼 크기

위 요소들에 의해 로컬 쓰기 I/O 의 총 지연시간은 시스템 지연시간과 FSR 커널엔진의 지연시간의 합으로 구할 수 있으며 그 중에서 FSR 커널엔진의 지연은 경로필터 지연, 송신버퍼링 지연으로 분류됩니다. 

이 지연요소들의 지연시간(Latency)을 최소화 할 때 최적의 성능을 도출할 수 있습니다.

먼저 FSR 엔진의 지연을 튜닝하기 전에 시스템 환경에서의 I/O 지연시간을 측정하여 환경적으로 성능 병목이 없는지 먼저 확인합니다. 이것은 일반적으로 사용하는 성능 측정 도구를 활용하여 측정하면 됩니다. 최근 성능이 좋은 스토리지 환경에서는 1회 쓰기 당 수 nano 초 수준의 응답성능으로 측정될 경우 병목이 없다고 보면 됩니다. 이것은 전적으로 하드디스크의 하드웨어 성능 명세에 좌우됩니다.

다음은 FSR 커널엔진 동작에 따르는 지연입니다. 쓰기 I/O 가 FSR 커널 엔진으로 유입되면 해당 쓰기가 복제로 수행될 I/O 인지를 식별하기 위해 FSR 엔진 내부적으로 관리되는 복제경로를 기반으로한 경로필터 탐색을 수행합니다. 탐색 결과에 의해 복제로 수행될 I/O 로 판정되면 해당 I/O 를 타깃으로 전송하기 위해 메모리 버퍼로 큐잉합니다. 이 때 메모리 버퍼의 공간은 충분히 여유가 있어야 하며 혼잡하지 않아야 합니다. 만약 메모리 버퍼가 혼잡할 경우 I/O 는 파일버퍼로 큐잉되고 파일버퍼 조차 넘치게 되면 복제가 중단되어 전체 재동기화 상태로 전환됩니다.

복제 I/O 를 판별하는 경로필터는 경로검색을 위해 최적의 알고리즘으로 구현되어 있으나 검색비용이 증가할 경우 Latency 의 저하는 불가피 합니다. 따라서 복제 대상 경로를 너무 복잡하게 설정하거나 비 효율적으로 설정하는 것은 성능을 위해 바람직 하지 않습니다. 되도록 이면 제외필터를 활용하거나 경로필터의 요소 개수를 줄여서 설정하는 것이 바람직 합니다.

송신버퍼는 메모리버퍼와 파일버퍼 기능으로 제공됩니다. 파일버퍼는 디스크 공간을 버퍼공간으로 활용할 수 있다는 점에서 장점이 있지만 디스크에 I/O를 해야 하는 만큼 성능의 저하를 감수해야 합니다. 파일버퍼링이 동작하게 되면 기존 디스크 I/O에 비해 2배의 I/O 가 발생하게 되므로 최상의 조건에서도 최소한 2배의 성능저하가 있습니다. 만약 이러한 성능저하가 우려된다면 파일버퍼는 제외하고 메모리 버퍼만 사용해야 합니다. 그러나 시스템의 여유 메모리 공간은 한계가 있기 때문에 메모리 버퍼에만 의존하기 어려운 경우에는 메모리 버퍼와 파일버퍼를 적절히 혼합하여 사용할 것을 권장합니다. 

전송량

FSR의 전송량에 영향을 주는 요소는 다음과 같습니다.


  • No labels