1.계획서

 
                      종합설계 프로젝트 계획서 요약

팀명

CLASS

제출일

2014 3 13

프로젝트 제목

Sendfile(2) : Improvement and Analysis of Energy Efficiency over Linux web server

팀원

성명

학번

SNS 주소

전이나(조장)

20113321

김현철

20083221

이고운

20093315

 이상현

20093320

 조승희

20113332

설계 프로젝트 개요

프로젝트 개요

 리눅스 커널 상에서 태스크가 자원을 사용할 때, User space Kernel space 사이의 많은 횟수의 copy가 이루어 진다. 이는 read(), write() 함수의 사용 때문인데 운영체제 상의 성능 면에서 효율적으로 개선될 여지를 가지고 있다. 띠라서 본 프로젝트는 이러한 문제점을 보완하기 위한 방법으로서, 리눅스 커널을 수정하여 조금 더 빠르게 파일이 읽히는 경로를 제시하고자 한다. 이는 Kernel 상에서의 내부적인 인코딩 및 디코딩 과정을 통하여 이루어질 전망이다. 이 과정에서 MIME Base64 코드 표준을 기반으로 하는, 페이지 전송을 위한 분할 과정의 효율성을 비교 및 분석한다. 이는 CPU상의 에너지 능률로 이어지며, 메일 시스템 상 등에서 다양한 언어와 여러 종류의 첨부파일이 전송될 때 유용하게 활용될 수 있다.

장점

 본 프로젝트는 기존의 Sendfile()함수에서 한 단계 더 진보된 형태로서, Sendfile(2)함수를 제작한다. Sendfile(2)함수는 커널 내부에서 인코딩 및 디코딩이 가능하다. 이를 통하여 웹 서버 상에서 텍스트, 이미지, 영상, 응용 프로그램 등의 다양한 파일을 전송할 때 성능을 더 향상시켜줄 것으로 기대된다.

현실적 제한요소

인코딩 이전, 페이지 할당 작업이 적절하게 이뤄지지 않았을 경우에 문제가 발생할 수 있다. 이러한 경우 전송된 페이지의 양이 적은 때에는 내부적으로 처리가 가능하나,  전송된 페이지의 양이 많은 때에는 할당과 해지 상의 오류로 인하여 오버플로우 (overflow)가 생길 수 있으므로 주의해야 한다.

웹 서비스 상에서 Base64 기반의 인코딩 과정이 로딩 속도보다 빨라야 한다는 제약을 가진다.

비교대상

1) 타겟 논문

TPF: TCP Plugged File System for Efficient Data Delivery over TCP
IEEE 2007 Sang Seok Lim, Kyu Ho Park 

2) sendfile()함수의 CPU 성능 분석

 Project 4a - Design and implementation of a fiber loop buffer for an edge server
Suhas Hegde A, Vivek Kumar Singh, Naveen Kumar V, Uday kamal R
 

일정

결론

 현재 계획은 인코딩과 디코딩 과정을 마치고 각각의 결과 로그 값을 비교 및 분석하여 개발을 완료하고, 이러한 커널 상에서의 수정한 변환 효율을 직접적으로 확인해보기 위하여 웹 서비스를 통해 응용 단계로 부가적인 구현을 해보고자 한다. PHP library를 수정하는 방향으로 구상하고 있는데, XHTML 형식으로 내보낼 수 있도록 하는 것을 목표로 한다. PHP 파일에서는 XHTML을 구현할 예정인데, PHP library를 수정하여 sendfile(2)를 호출하도록 함으로써 진행이 가능할 것으로 보인다.

XHTML 형식에서는 HTML과 동일한 부분은 자동으로 커널이 처리해주지만

encoding 소스가 있는 sendfile(2)은 그렇지 않다. 따라서 sendfile(2)를 부르기 위해서는, 웹을 거치는 것이 아니라 PHP library를 수정해야 한다. 이를 통하여 프로그램의 목적인 '브라우저 혹은 유저 공간을 거치지 않고 전송하는 파일 시스템'의 형성이 가능하다.


       
      Ċ
      2조 캡스톤,
      2014. 3. 12. 오후 11:24
      Ċ
      2조 캡스톤,
      2014. 3. 12. 오후 8:16
      ć
      2조 캡스톤,
      2014. 3. 12. 오후 8:35