효율적인 p2p 전송을 위한 아이디어 정리



기존 p2p의 문제점 지적



기존 p2p의 경우 peer들의 요청을 큐를 이용해 먼저 요청한 peer부터, 그리고 peer의 rating이 높은( 공유를 많이 하는..)

peer들을 먼저 전송하는 방식이다. ( 정확히 분석은 못했고 들은 풍월, 프로그램 돌아가는걸 보니..)

이러한 방식의 문제점은 네트워크상 가까운 거리에 있음에도 불구하고 즉, 전송하는데 짧은 시간이 걸림에도 불구하고, 많은 시간을 기다리게 되는 점.

즉 os에서 task스케줄링 방식에서 fifo 방식의 문제점을 않고 있다.



이러한 문제점을 해결하고자,

task 스케줄링 방법중 가장 계산 시간이 짧은 task를 먼저 실행 시키는 스케줄링 방법을 적용하는 것이다.

p2p전송에서 계산 시간은 전송 시간으로 대응 될수 있고, 이는 전송하려는 파일의 크기로 간단히 생각할수 있다.

하지만 p2p로 전송하는 데이터들이 대부분 대용량이기 때문에 이러한 벡터로는 원하는 결과(peer들의 평균 대기 시간의 최소화)를 얻을수 없다.

그래서 추가적인 벡터를 계산할것을 제안하는데,

그것이 바로 네트워크간의 거리이다.



네트워크간의 거리란 홉이라고도 불리우는 최종 목적지까지 도착하는데 거치는 host들의 수이다.



우리는 이러한 네트워크간 거리를 유지하기 위해 서버단이나 각 클라이언트에서 네트워크 맵을 만들어 유지하여 데이터 요청이 있을시 데이터를 보유한 host들 중에서 가장 가까운 host를 요청한 peer에게 알려주는 방식으로 작동한다.



각 개별 peer들도 네트워크 맵을 가지고 있어서 요청이 들어오는 것중 네트워크간 거리가 짧은 peer들에게 더 높은 우선순위를 부여하여 전송 시간이 더 짧은 peer에게 먼저 전송하는 방식으로 구현 하는 것이다.



그래서, 우선 수위를 결정하는데 필요한 벡터는

대기시간↑, 전송하려는 데이터크기 ↓ , 네트워크간 거리↓

가 되고 각각의 벡터에 가중치를 부여해 우선순위를 결정할 수 있다.



응용분야로는

요즘 대새(?)인것 같은 그리드딜리버리(제품이름)방식의 소프트웨어들

한마디로 데이터를 릴레이 방식으로 다른 호스트들에게 계속 전송하는 방식의 소프트웨어들.







ps. 네트워크 맵에 관한 관련 링크 http://www.opte.org/

Posted by 루트

2006/06/29 00:49 2006/06/29 00:49
Response
No Trackback , No Comment
RSS :
http://abyss.jaram.org/tc/rss/response/121

Trackback URL : http://abyss.jaram.org/tc/trackback/121

Leave a comment

카메라를 이용한 마우스

누어서 컴퓨터를 자주 하다보니 생각난 아이디어인데...

마우스의 특징이 누어서 쓰려다 보면 꼭 바닦에 접촉해서 사용해야 하는 단점이있다.



허공에 대고(마우스 위,아래가 뒤집힌 방향) 마우스를 움직여도 마우스가 작동되면 좋을것 같다라는 생각이 들어서 생각해봄.



설명하자면.

usb카메라를 허공이나 기타 사물을 비추고 움직이면 카메라상에 잡힌 사물들의 움직임 정도를 가지고 마우스 포인터 이동에 적용하면 마우스처럼 사용할 수 있겠다라고 생각. 마우스 버튼도 usb카메라에 달린 캡춰버튼을 후킹해서 사용하면 추가 하드웨어도 필요 없고..



모티브는 다음 동영상..

http://www.robots.ox.ac.uk/~ajd/Movies/kitchen.mp4.avi



구현에 관련한 연구는 다 되어 있음.

밑에 논문이 이번 KCC에 갔다가 본 논문



능동 카메라를 이용한 이동 물체 추적(Moving object tracking using active camera)

박현석O 한종원 조진수 이일병 연세대학교 컴퓨터 과학과



ps. 보통 맨 마지막 저자는 지도교수님 성함인데... 교수님 성함이 이일병...

Posted by 루트

2006/06/23 19:00 2006/06/23 19:00
Response
No Trackback , No Comment
RSS :
http://abyss.jaram.org/tc/rss/response/119

Trackback URL : http://abyss.jaram.org/tc/trackback/119

Leave a comment

웹기반 msn메신저

http://webmessenger.msn.com

이라는 웹기반 msn메신저가 존재한다.



그렇지만 나도 만들고 싶어져서... 우선은 바쁘니 대충 구현 스캐치를 해보려고 글을 씀.





activex를 쓰지않고 오직 html과 자바스크립트만을 이용하여 구현... 서버푸시? 라는 방법이 있는지 최근에야 알았다.

이 방법을 이용해 구현해보자.



python을 이용해 구현 하려고 하고 있으며



python으로 간단한 웹서버를 제작, 그 웹서버로 서버푸시 방법으로 웹브라우저와 통신할 예정.



서버 쪽에 설치되는(돌아가는) 파이썬 웹서버 프로그램은 데몬으로 돌고 있으며 웹브라우저 요청에 따라 msn메신저 서버에 접속하여 메신저 게이트웨이 역할을 한다.





파이썬을 이용해 웹서버는 BaseHTTPServer? 이런 클래스가 있는것 같아 구현은 쉽게 될것 같다.

msn프로토콜 구현은 이미 해놓은 코드를 사용.





개발은 언제 시작할지 모름. 아~~주 여유가 생기면...

Posted by 루트

2006/03/30 23:37 2006/03/30 23:37
Response
No Trackback , a comment
RSS :
http://abyss.jaram.org/tc/rss/response/115

Trackback URL : http://abyss.jaram.org/tc/trackback/115

Comments List

  1. 제루 2006/03/31 11:35 # M/D Reply Permalink

    ㅎㅎ 여유만땅이면서~
    http://meebo.com 도 구경해보3

Leave a comment

게시판 찌질이 대처를 위한 방법 고안

게시판 문화가 발달한 만큼 별에 별 사람들이 게시판을 이용하게 되고

그중 찌질이 등급의 상대할 가치가 없는 사람들도 생겨 나게 된다.



대부분 게시판은 ip차단 기능을 이용하여 이러한 찌질이들을 내쫒고 있지만, 이런 차단은 찌질이의 반발심만 불러 일으켜 문제를 심화 시키는 경향이 있다. 그리고 대부분 유동 ip를 사용하기 때문에 ip차단으로 인한 반발심이 ip가 변경되어 들어간 이후에 폭발하여 일을 심하시키는 경우도 다수 발생한다.



이에 따라 새로운 대처 방법을 생각했봤는데



일딴 찌질이등급으로 분류된 ip는 그 찌질이는 자신이 찌질이 등급으로 분류되어 있는지를 느끼지 못한체 게시판을 이용할수 있게 한다.

단. 그 찌질이가 쓰는 글에 대해서는 다른 사용자가 볼수 없고 글을 올린지도 모르도록 만든다. 단지 그 찌질이 ip일 경우에만 그 글이 정상적으로 등록된것 처럼 보이게 만든다. 코멘트의 경우에도 같은 규칙을 적용한다. 이렇게 하면 그 찌질이는 자신의 글에 상대해주지 않는 사람들을 보고 금새 싫증을 느끼고 찌질이 짓을 그만하게 될것이다.


Posted by 루트

2006/03/26 15:46 2006/03/26 15:46
Response
No Trackback , No Comment
RSS :
http://abyss.jaram.org/tc/rss/response/112

Trackback URL : http://abyss.jaram.org/tc/trackback/112

Leave a comment

가상키보드,마우스 분배기?


갑자기 이런게 필요하게 되어서 나중에 만들어볼겸 적어봄.



하드웨어 방식으로된 키보드,마우스 분배기를 소프트웨어로 구현함.



서버 클라이언트 방식으로.



서버가 되는 컴퓨터의 화면 밖으로 (왼쪽이든 오른쪽이든) 커서가 벗어 나게 되면 다른 컴퓨터로 마우스 이벤트를 네트워크로 전송하여 다른 컴퓨터의 마우스와 키보드가 동작하게 한다.





사용될 기술?

윈도우 API , 이벤트 후킹, 소켓프로그래밍.





장점?

하드웨어가 필요 없으니 돈 절약,

듀얼 모니터를 쓰는 것과 같이 2대의 컴퓨터를 별도의 조작없이 오가며 작업 가능

(하드웨어로 구현된 제품은 버튼을 눌러야 전환됨)



요구사항?

서버 클라이언트 모두 트레이 아이콘으로 작동,

서버 클라이언트 구별없이 둘다 서버가 될수도 있고 클라이언트가 될수도 있음(클릭으로)


Posted by 루트

2005/11/27 18:28 2005/11/27 18:28
Response
No Trackback , 4 Comments
RSS :
http://abyss.jaram.org/tc/rss/response/103

Trackback URL : http://abyss.jaram.org/tc/trackback/103

Comments List

  1. 루트 2005/11/27 18:36 # M/D Reply Permalink

    조낸 일하다 조낸 귀찮아서 적어봄 -.-

  2. DK 2005/11/28 05:36 # M/D Reply Permalink

    화면 밖으로 커서가 벗어나자마자 바로 다른 컴으로 이동하지 말고, 특정 인터벌 동안 계속 화면 가장자리에 몇번씩 부딪히면 다른 컴으로 이동하게 하는 게 , 마우스를 대충 쓰는 사람들의 정신 건강에 좋을 듯...

  3. 아이스 2005/11/28 11:39 # M/D Reply Permalink

    저번에 빵집 만드신 양병규씨가 전에 만드신적이...

  4. 루트 2005/11/28 23:25 # M/D Reply Permalink

    //대기형 그럴수도 있겠네요 ㅎㅎ

    그리고 이미 오픈소스 프로젝트로 나와 있는 프로그램이..
    http://synergy2.sourceforge.net/

Leave a comment