태터데스크 관리자

도움말
닫기
적용하기   첫페이지 만들기

태터데스크 메시지

저장하였습니다.
밤하늘의 실제별, 나도 가질 수 있다?!

Adobe Stratus 2.0 - 더욱 향상된 Flash Player로 P2P 구현

2010/01/25 12:20

 

[공지]이미지나 링크가 깨졌다면 댓글 부탁드립니다.




지난 22일에 Adobe Labs에서 Adobe Stratus 2에 대한 소개가 있었습니다.

http://labs.adobe.com/technologies/stratus/

Stratus는 RTMFP(Real Time Message FlowProtocal)이라 불리우는 통신프로토콜을 이용해 Flash Player 10이 설치된 클라이언트 까지 P2P(Peer to Peer)가 가능하게한 기술입니다. TCP가 아닌 UDP기반으로 동작하고요.

이번 Stratus 2는 Adobe Flash Player 10.1 beta, Adobe AIR 2 Beta에서 동작하도록 만들어졌습니다. 재미있게도 이번 버전에서는 애플리케이션 수준에서 멀티케스트와 소스 공급자의 로드를 줄여주는 구조를 지원하게 되었습니다. 맨 위의 그림에서 좌측 그림은 기존 Flash Player끼리 통신하기 위해 서버를 항상 거쳐야만 했었습니다. 서버입장에서는 완전 부담이죠. 그런데 중간 그림에서 볼 수 있듯이 Stratus가 나오면서 서버와는 한번의 접속으로 하고 Flash Player끼리 통신이 되었습니다. 이것도 소스 공급자인 Flash Player 입장에서는 로드가 심할 수 있습니다. 이를 Flash Player 단위에서 분산시키도록 한 것이 이번 배포의 핵심인 것 같네요.

물론 Stratus 2는 아직 베타버전인 Flash Player 10.1과 AIR 2.0에서만 동작하므로 바로 실무에 사용할 수는 없습니다. 그러나 조만간 이 기술을 사용할 수 있게 되겠죠.

Stratus 1.0에 대한 많은 실험이 국내에도 있었습니다. 저도 조금 테스트 해봤었고요.
http://blog.jidolstar.com/498 

다른 분들의 글들입니다.
플래시 P2P RTMFP에 대해(예제 파일 첨부)
[Flex] Stratus를 이용한 P2P방식의 Flash간에 1:1 다이다이 오목게임-_-
Flash로 p2p를 만들어보자 - Stratus 라이브러리
Flash로 채팅을 구현해보자.


하지만 방화벽, 공유기를 통해 접근 문제가 해결되었는지는 미지수네요.(테스트 안해봤음)
이 문제만 해결되면 정말 멋진 애플리케이션이 많이 나올거라 생각됩니다. ^^

글쓴이: 지돌스타(http://blog.jidolstar.com/651)




저작자 표시 비영리 동일 조건 변경 허락
크리에이티브 커먼즈 라이선스
Creative Commons License

Adobe Flash Platform , , , , , , , , , , , , ,

Trackback 주소: http://blog.jidolstar.com/trackback/651
  1. Blog Icon
    ADO

    지돌스타님 덕에 중요한 정보 많이 알아가고 있습니다. 정말 고마운 분이시네요. ^^

  2. 도움이 되었다니 좋네요.
    사실 저는 블로깅하는 목적은 정보전달만은 아닙니다. 그 정보가 더 좋은 정보로 발전해서 만들어져 저도 배울 수 있길 바라는것이지요. ^^

  3. Blog Icon
    neec

    저도 AIR 2.0 beta가 배포되고 바로 테스트 해 본 것이 UDPSocket을 이용한 P2P 테스트 였습니다. 지난주에 adobe labs에 포스팅 된 타이틀만 보고 지나쳤었는데 지돌스타님 덕에 자세하게 읽게 됐습니다.

    UDP 통신에서 공유기(NAT) 문제는 개발사의 프로젝트 정책에 따라 결정할 문제이고 방화벽은 개발사가 아닌 사용자의 몫 입니다. 사용자(peer)의 방화벽을 인위적으로 뚫는 다는건 해킹이 아닐까요 :)

    NAT의 구분은 STUN을 통해 Full cone과 Restrict cone를 super peer로 하는 방법을 사용합니다.

  4. 좋은 댓글 적어주셔서 감사합니다.
    적어주신 내용은 제게 큰 도움이 됩니다.

  5. Blog Icon

    비밀댓글 입니다

  6. 감사합니다. 수정했어요~ ㅎㅎ

  7. ㅎㅎ 과연 실용성이 ^^;
    전에도 느꼈지만 뭐랄까 FMS와 결합할때 강력한 거 같아요. FMS 입장에선 값비싼 TCP를 스트리밍따위에 지불하기 보다는 가능하다면 UDP를 사용하면 더 많은 유저를 받아줄 수 있으니 일단 RTMPS를 시도해보고 안되면 RTMP를 시도한다는 것만으로도 상당히 성능이 개선됩니다. (FMS3.5 스펙의 일부 아니었나요 ^^; 가물가물)
    이제 이 새로운 버전이 활성화되면 심지어 클럽박스나 판도라처럼 다른 클라이언트에게 스트리밍 책임의 일부를 지울수도 있겠군요 ㅋㅋㅋ

  8. 깊숙하게 기술적으로 별로 아는바가 없어서 저로서는 평가하기 힘드네요. 그래도 재미있는 시도가 아닐까 생각합니다.

  9. 워워.. 라이브 스트리밍에서는 RTMP는 죽음이에요 ㅎㅎ

  10. 안녕하세요 지돌스타님.. 매번 좋은 글 감사드립니다.(__)
    이제 AS3.0를 조금씩 공부하고 있는데요.. 보안쪽에서 궁금한 점이 있습니다.

    제가 만들고 싶은 것은 웹상에 있는 플래시(원격샌드박스가 적용되겠죠)를 접근하여 그림을 그린 후 그 그림을
    로컬로 다운로드하고 싶은데요. 이게 가능할까요?? 원격샌드박스라고 하면 로컬데이터에는 접근을 하지 못하는
    데요. 이것이 궁금합니다.

    아 또..;;죄송죄송
    보안샌드박스 LOCAL_TRUSTED는 원격과 로컬을 접근한다고 하는데요. 이걸 웹상으로 올리고 클라이언트가 접근하면
    클라이언트 플래시플레이어는 이 SWF파일에 대해선 원격샌드박스를 적용되는 것이 맞나요?

    정말 긴 질문.. 난해한 질문ㅠ 죄송합니다..하지만 보안문제공부하면서 무척 궁금해서요.
    읽어주셔서 감사합니다. 좋은 하루 되시길...^-^

  11. 로컬과 리모트 보안센드박스는 만약 웹에 올리는 플래시 컨텐츠라면 리모트가 자동으로 됩니다. 로컬에 대한 자세한 내용은 일단 Essential ActionScript 3.0 서적을 구입하셔서 보안부분을 보시면 정말 자세히 잘 나와있습니다. 웹에서도 한글관련 문서가 꽤 있고요.

    플래시 플레이어에서 로컬과 리모트 자원 접근은 서로 상반됩니다. 로컬을 마음대로 접근할 수 있다면 리모트 접근은 불가능하고 그 반대의 경우도 마찬가지입니다. 당연히 보안문제이기 대문에 이렇게 됩니다.

    원하시는 기능을 하려면 그림을 그린후에 로컬에 저장하는 과정을 수행하시려면 반드시 사용자 반응이 있은후에 그 기능을 수행하도록 하면 됩니다. FileReference에 save(), load()를 참고하세요. 물론 FP10이상이어야 이 기능을 수행할 수 있습니다.

  12. 아..네 답변 정말 감사합니다.
    그러면 웹상의 플래시(리모트샌드박스)이면서 FileReference를 사용한다면 로컬에 그린 그림을 파일로 저장하는데 보안 샌드박스상 문제가 없다는 말씀이신가요?
    아참..리모트샌드박스이면서 로컬리소스에 접근하는 방법은 없을까요??
    질문이 너무 많죠..죄송죄송 검색해봤는데 잘나와서요..이렇게 여쭙니다...ㅠㅠ

  13. 원하시는 기능에 대한 문제는 샌드박스 보안문제는 아닙니다. 리모트인데 로컬자원을 접근하는 방법은 javascript의 쿠키나 sharedObject에 관련된것은 일반 api로 접근할 수 있고요. 일반 파일에 접근하려면 사용자 인터렉션이 있은 바로 직후에 접근할 수 있습니다. 직접접근은 불가능합니다.(그게 가능하다면 개인정보가 완전 끝장나겠죠?) 이는 FileReference API (FP10)을 참고하세요.

  14. 휴...속이 다 시원하네요ㅋ
    빠르고 시원한 답변 정말 감사합니다. 좋은 하루 되시구요.^-^