'HTTP'에 해당되는 글 1건

  1. 2010/02/22 귀차니스트 VirtualHttpServer - 가상URL 처리 서버 (4)

VirtualHttpServer - 가상URL 처리 서버

Programming 2010/02/22 01:19 귀차니스트

  요사이 또 한 동안 포스팅을 하지 못했던 것이 있군요. 최근 삼성소프트웨어멤버십이라는 곳에 지원을 하게 되어 그 곳에서 열심히 살다보니 포스팅이 조금 늦었습니다. 사실 이전에 올리던 OS 쪽 부분에서는 조금 많은 변화가 있었습니다.

  실제 Buddyblock 을 통한 메모리 할당 부분쪽이 수정되어 정상적인 동작을 하고 있고, 이로 인해 스케쥴러를 만들 기반은 된 상태구요. 시간이 나게 되면 틈틈이 작업을 할 생각입니다. 현재는 다른 작업 때문에 OS를 통 건드리지 못하고 있네요^^;
  최근 하고 있는 일은 가상의 Http 서버를 만드는 일 입니다. 단순히 이 문장으로는 아마 파악하시기가 힘드실 것 같은데요. 공유기를 한 번 보시면 쉽게 판단이 되실듯 합니다. 공유기의 주소가 대충 몇 가지 있지만 제가 사용하는 공유기의 경우를 예를 들어서 http://192.168.0.1 로 접속을 하면 보통 인증창이 뜨게 되고 HTTP 파일로 공유기의 설정을 서로 바꿀 수 있습니다.
  공유기 쪽에서 클라이언트로부터 전송받은 HTTP 페이지 데이터를 기반으로 공유기의 설정을 계속하여 바꾸게 되는 것인데요. 일반적인 IIS 같은 웹서버를 비롯하여 파일 전송을 주로 하는 역할과는 많이 다르다고 보시면 됩니다. 현재 많이 쓰이는 프로그램 들 중에서 하나를 비교하라고 한다면 BerrysWebShare 프로그램과 가장 비슷할 것 같군요.
  원리는 대충 아래와 같습니다. 어차피 HTTP 프로토콜이라는 것이 TCP 위에서 아스키로 이루어지는 통신의 규약이다보니 HTTP 프로토콜을 서로 전송하고 처리할 수 만 있다면 훌륭한 통신매개체로 사용할 수 도 있습니다. 더욱이 HTTP 라는 것이 범용적으로 사용하는 프로토콜이다 보니 요새 열풍이 불고 있는 스마트폰이나 PSP, PMP등으로도 웹브라우져만 있다면 접근이 가능하게 되어 있는 점이 무척 좋습니다.

POST /aa.html HTTP/1.1
Accept: application/x-ms-application, image/jpeg, application/xaml+xml, image/gif, image/pjpeg
Referer: http://127.0.0.1/
Accept-Language: ko-KR
User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET
Content-Type: application/x-www-form-urlencoded
Accept-Encoding: gzip, deflate
Host: 127.0.0.1
Content-Length: 40
Connection: Keep-Alive
Cache-Control: no-cache
q=abcdefg&btnG=%C4%F5%B8%AE+%C0%FC%BC%DB


  위 사각형 상자 안에 있는 내용이 어떠한 내용을 요청 받음과 동시에 데이터를 전송하는 형태의 한 부분 입니다. POST 형태로 데이터가 전송되는 부분이 맨 아래에 보입니다. 이러한 데이터를 가지고서 여러가지 가공을 한다면 HTTP 서버에서 즉각적인 처리가 가능하게 됩니다. 좀 재미있는 응용이라고 생각할 수도 있는 부분이라 사실 구현하면서도 정말 재미있었습니다.
  하지만 만들어야 하는 기능이 이 것을 제외하고도 스크립트 언어 쪽 기능도 있다보니 이 부분 또한 처리를 해야 하여 더욱 바쁩니다^^. 그럼 이만 글을 줄이도록 하겠습니다.
크리에이티브 커먼즈 라이센스
Creative Commons License
2010/02/22 01:19 2010/02/22 01:19
TAG

댓글을 달아 주세요

  1. 당구리 2010/02/22 08:26  댓글주소  수정/삭제  댓글쓰기

    ㅎㅎ RSS로 첨 온 글이네.ㅋ

  2. 준호씨 2010/03/16 14:36  댓글주소  수정/삭제  댓글쓰기

    이것은 바로 그것이군.