아래 자료는 ISASERVER.ORG에서 꾸준히 게재되는 글 중에서 ISA의 웹 캐싱 기능에 대해 자세한 언급이 되어 있어 번역 정리하여 올립니다.

ISA 를 도입하는 입장에서는(특히 우리나라를 제외한 외국에서) 방화벽 기능을 주로 검토하게 된다. 하지만, ISA에는 웹 캐싱이라는 훌륭한 기능이 조용히 숨겨져 있다. 웹 캐싱이란 내부 클라이언트들이 웹 브라우저를 통해 인터넷을 사용할 때 자주 방문하는 사이트의 개체들을 미리 또는 한 번 읽은 다음 캐시에 저장하여 다음에 다시 읽어 들일 때에는 사이트에서 요청하는 것이 아니라 캐시에 있는 객체를 반환하기 때문에 속도 향상이 이루어지게 된다. 사용자에 비해 인터넷 전용선의속도가 느린 경우에는 사용자의 불만을 잠재울 수 있는 기능 중의 하나이다. 또한, 자주 그런 경우는 아니지만 해당 웹 사이트가 잠시 사용할 수 없는 상태이더라도 사용자들이 이를 일시적으로 이용할 수 있는 장점도 있다.

2. 캐시 규칙 작성
웹 캐시 규칙은 다른 방화벽 규칙과는 달리 캐시에 저장되는 개체는 어떤 것인지, 그리고 그 특성을 어떻게 다룰 것인지 지정합니다. 새로운 캐시 규칙을 작성하려면 왼쪽에서 Cache 노드를 클릭하고 오른쪽에서 Tasks 탭을 클릭합니다. 아래쪽에서 Create a Cache Rule을 클릭합니다.
사용자 삽입 이미지


마이크로소프트 제품의 장점이라면 바로 '마법사' 기능이다. ISA 서버에서도 대부분의 설정에서 마법사 기능이 제공되며 캐시 규칙을 만들 때에도 마찬가지이다. Welcome to the New Cache Rule Wizard 페이지를 통해 캐시 규칙을 작성하는 마법사가 시작된다. Next버튼을 클릭한다.
사용자 삽입 이미지

Cache Rule Destination 페이지에서는 규칙을 적용할 대상(즉, 네트워크)을 선택한다. 여기 예에서는 Networks 폴더 내에 있는 External 항목을 선택했다. 참고로, Add Network Entities 대화상자를 통해 좀더 네트워크를 세분화하여 구성할 수 있으며 이러한 부분을 통해 캐시 규칙 또한 세분화할 수 있다.
사용자 삽입 이미지

Content Retrieval 페이지에서는 사용자가 요청할 때에 캐시에 있는 개체를 어떤 방식으로 가져올지 설정한다. 다음과 같이 3 가지 옵션이 있다.
  • Only if a valid version of the object exists in cache. If no valid version exists, route the request to the server. - 캐시에 만료된 개체가 있는 경우에는 ISA 방화벽이 개체의 원본이 저장된 웹 서버에 접속하여 객체의 새로운 버전을 가져 옵니다.
  • If any version of the object exists in cache. If none exists, route the request to the server. - 캐시에 개체가 있는 경우에는 만료여부에 관계없이 사용자에게 반환합니다. 캐시에 저장된 개체가 없는 경우에는 당연히 웹 서버에 접속하여 개체를 가져옵니다.
  • If any version of the object exists in cache. If none exists, drop the request (never route the request to the server. - 캐시에 개체가 있는 경우에는 만료 여부에 관계없이 사용자에게 반환합니다. 하지만 캐시에 개체가 없는 경우에는 웹 서버에서 가져오지 않고 사용자에게 없다는 내용을 보여 줍니다.

    
기본 옵션은 Only if a valid version of the object exists in the cache. If no valid version exists, route the request to the server.이며 대부분 이 옵션 이외에는 사용할 필요가 없을 것이다. 선택하고 Next 버튼을 클릭한다.
사용자 삽입 이미지


 Cache Content 페이지에서는 ISA 방화벽에 인터넷 상의 웹 서버에서 가져온 컨텐트를 캐시에 저장할 지 여부를 지정합니다. 기본적으로 원본 및 요청 헤더에 개체가 캐시될 수 있다고 명시된 경우에만 캐시에 개체를 저장합니다. 하지만 캐시로 저장하지 않으려면 Never, no content will ever be cached.를 선택한다. 이런 경우는 아마도 웹 서버에 가장 최신의 데이터가 꾸준히 그리고 활발하게 업데이트되는 경우라 할 수 있다.

원본 및 요청 헤더에서 캐시될 수 있다고 표시된 경우에는 다음과 같은 옵션을 선택한다.
  • Dynamic content: - 웹 서버에서 컨텐트가 캐시되어서는 안된다고 명시되어 있다라도 ISA 방화벽에서 강제로 캐시로 저장한다.
  • Content for offline browsing: - 웹 서버를 사용할 수 없을 때 또는 개체의 위치가 변경된 경우에도 컨텐트를 캐시로 저장합니다.
  • Content requiring user authentication for retrieval: - 사용자의 인증이 필요한 컨텐트를 캐시에 저장합니다. 이런 경우에는 인증한 사용자의 컨텐트를 다른 사용자들이 무단으로 볼 수 있으므로 보안상 위험할 수 있다. 주의해서 사용하도록 한다.

Next를 클릭한다.
사용자 삽입 이미지


Cache Advanced Configuration 페이지에서는 캐시되는 개체의 크기를 제한할 수 있다. 기본적으로 캐시되는 개체의 크기에는 제한이 없다. 하지만 Do not cache objects larger than 옵션을 선택한 경우에는 최대 크기를 제한할 수 있다. 조직의 환경에서 대용량의 파일이나 컨텐트를 자주 사용하는 경우라면 아마도 디스크 캐시의 공간이 기하급수적으로 증가할 수도 있다. 이런 경우를 대비하여 적절하게 제한하는 것을 추천한다.

일반적으로 SSL 통신을 하는 경우에는 암호화 통신이므로 ISA 방화벽이 내부의 컨텐트를 확인할 방도가 없다. 하지만 Collective Software사의 ClearTunnel 제품을 설치하면 SSL 연결에서 발생하는 응답을 캐시로 저장할 수 있다. Cache SSL responses 옵션에서 설정한다. ClearTunnel 제품에 대한 자세한 사항은 http://www.collectivesoftware.com 을 참고한다.

Next를 클릭한다.
사용자 삽입 이미지


HTTP Caching 페이지에서는 만료일자에 따라 캐시를 어떻게 관리할지를 설정한다. TTL(Time-To-Live)는 컨텐트의 유효 기간 즉 만료 시한을 나타낸다. 컨텐트 나이(age)는 개체가 생성되거나 변경된 이후의 시간을 나타낸 것으로 개체의 헤더에 이 정보가 포함되어 있다.
Set TTL of objects (% of content age)은 기본적으로 20%로 설정되어 있다. HTTP 개체들은 TTL 설정에 따라 캐시에 올바른 상태로 유지된다. TTL 설정은 응답 헤더에 지정된 값을 기준으로 하며 이를 바탄으로 캐시 규칙에서 적용된다. 컨텐트 나이의 백분율은 컨텐트가 존재할 수 있는 시간의 백분율을 나타내다. 백분율이 높을 수록 캐시가 덜 업데이트된다.
또한, No less than과 No more than 옵션을 통해 TTL 시간을 정할 수 있다.

마지막으로 Also apply these TTL boundaries to sources that specify expiration 옵션을 선택하여 캐시된 개체의 헤더에 포함된 만료 시한을 무시할 수 있다.
Next를 클릭한다.
사용자 삽입 이미지


ISA 방화벽에서는 HTTP 트래픽뿐만 아니라 FTP 트래픽도 캐시할 수 있다. 다만, 웹 프록시 클라이언트를 사용하는 경우로 한정한다. 기본적으로 FTP 트래픽을 캐시하도록 설정되어 있으며 TTL은 1일로 제한되어 있다. 필요한 경우 변경하고 Next 버튼을 클릭한다.
사용자 삽입 이미지


마지막으로 지금까지 설정한 사양을 간단히 요약하여 보여주는 페이지인 Completing the New Cache Rule Wizard가 나타난다. Finish 버튼을 눌러 마법사를 종료한다.
사용자 삽입 이미지

Fig
이제 규칙의 순서를 바꾸는 작업을 진행한다. 이러한 이유는 기본적으로 윈도우 업데이트에 관련된 웹 캐시 규칙이 설정되어 있기 때문이다. 관리자가 추가한 웹 캐시 규칙은 Microsoft Update Cache Rule 바로 아래쪽에 위치하도록 변경하는 것이 좋다.
Cache Rules 탭에서 좀 전에 작성했던 All Sites 규칙을 선택하고 위치를 이동시킨다.
사용자 삽입 이미지


3. 마무리

지금까지 ISA 방화벽에서 웹 캐시를 사용하도록 설정하는 방법과 이에 따른 웹 캐시 규칙을 작성하는 방법 그리고 실제 규칙을 어떻게 놓아야 하는지 구체적으로 살펴 보았다.

원본 위치 <http://isaserver.org/tutorials/ISA-2006-Web-Caching.html?printversion>

자료제공은 문스랩닷컴에서 제공해 주었습니다.

Posted by NTFAQ

트랙백 주소 :: http://ntfaq.co.kr/trackback/4080 관련글 쓰기

댓글을 달아 주세요

  1. 면땅 2008/07/30 17:01  댓글주소  수정/삭제  댓글쓰기

    좋은 정보 감사합니다.