윈도우 미디어 플레이어에서 지원하는 프로토콜에 대해서.
글쓴이: plusme / 작성시간: 수, 2004/02/25 - 11:37오후
UNIX 기반으로
윈도 미디어 플레이어의 프락시 서버를
만들려고 합니다.
윈도 미디어 플레이어 에서 지원하는 세션매니징 프로토콜이
MMS 인것 같드라고요..
Real 계열에서는.. RTP/RTCP/RTSP 를 사용하는거 같구요.
(근데 사실상.. de facto 표준인 윈도미디어플레이어 를 위해서 만들어야 겠지요..)
근데 MMS 를 보니, 실제로 UDP 기반만이 아니라
여러 트랜스포트 레이어 기반으로 동작을 하는것 같은 느낌이 듭니다.
심지어 HTTP 기반으로도 동작을 하는것 같더라고요..
근데 실제 TCP나 HTTP 기반으로 스트리밍 을 했을떄
현재 인터넷 환경에서 만족할 만한 품질이 나올수 있을까요?
경험있는 분들의
어떠한 조언도 환영합니다.!
Forums:
MMS는 MS 자체 프로토콜이고, 트랜스포트는 다섯가지가 있습니다.
MMS는 MS 자체 프로토콜이고, 트랜스포트는 다섯가지가 있습니다.
- MMSU: UDP
- MMST: TCP
- HTTP
- RTSPU: UDP
- RTSPT: TCP
HTTP는 IIS랑 결합되어야 진정한 능력이 발휘되죠.
MMS[UT]는 윈도우 미디어 서비스에서만 실행됩니다.
RTSP는 리얼에서도 쓰이는 멀티미디어 통신 프로토콜이고, Windows Media 9(윈도 2003 서버 이상)에서만 가능합니다.
플레이어는 8.0 이하는 MMS[UT]와 HTTP, 9.0은 모두 지원됩니다. 다만 프로토콜 선택은 플레이어와 서버간에 협상을 해야 하는데, mms:// 라고만 지정하면 보통 RTSP -> MMS, UDP -> TCP 순으로 찾습니다.
현재 상태로는 MMST나 RTSPT가 가장 품질이 좋습니다. 대신 서버 부하가 좀 있죠...
프록시 만드시려면 kingate라는 오픈 소스 서버가 있습니다. 방법에 대해서는 MSDN에도 관련 문서가 있으니 찾아보세요...
--
익스펙토 페트로눔
그렇다면?...
TCP/IP 기반으로 트랜스포트가 이루어지는것이
이해가 안갓던 이유가 2가지 입니다.
1. 퍼포먼스 (live cast 같은 목적으로 과연 사용이 가능할지?)
2. MMS 는 잘몰겠는데, RTP의 경우 RTCP라는 QoS 관련 채널이 있잖습니까?
이것이 필수(???) 아닌가요? 그렇다면 TCP/IP 의 경우도
컨트롤채널과 데이터 채널 두개의 포트로 리스닝 합니까? 그렇담,
http의 경우엔 어떻게 되는건지?
1. 이미 MMS 프로토콜로 라이브 사용을 많이 하고 있습니다. 국내는
1. 이미 MMS 프로토콜로 라이브 사용을 많이 하고 있습니다. 국내는 99%라고 해도 과언이 아니죠. 성능상 크게 문제될 점은 없습니다. 물론 웹 서비스에 비하면 리소스를 많이 먹기는 하죠.
2. WMT9 RTSP의 경우 제가 아는한 TCP/UDP소켓을 하나만 엽니다(port 554).
3. HTTP도 80번 포트만 갖고 통신합니다.
생각보다 멀티미디어 전송하는데 QoS같은거 안따집니다. :< 요즘은 그냥 플레이어로 죽 보내 버리고 마니까요.
--
익스펙토 페트로눔
지금 제가 하려는것이..
기존의 IP 기반의 멀티캐스트를 application layer 로
구현하려는 것입니다. 일단, 완전한 multicast 가 아닌
한쪽은 보내는 다른 한쪽은 받기만 하는 live cast 를 위한..
그런데 기존의 미디어 플레이어 기반으로 구현하려다 보니
힘든점이 많군요..(잘 몰라서)
기존의 서버와 클라이언트 는 하나도 변경하지 않는 다는 목적하에..
그 중간에 프락시를 둘 예정이거든요.
근데 이 프락시가 단순히 한쪽방향으로 패킷포워딩만 하면 되는건
아닌거 같거든요.
SOCKS V4/5 같이 양쪽으로 패킷을 포워딩 시켜야 하는데
그러려면 미디어세션 프로토콜 (MMS or RTSP.. ) 와 관련된 메카니즘이
있을테고..
그래서 지금은 그냥 JMF 를 써서 RTP로 프락시로 전송하고
프락시에서는 특정 JMF rtp client 들로 패킷을 전송하거나
다른 프락시로 패킷을 전송하도록 하려고 합니다.
그런데 이것은 실제 현실과는 조금 동 떨어진듯 한 느낌이 드네요..
어떠한 조언이라도 감사할듯......^_^
아.. 글구... 저 말고 저거 구현하는 사람들 그룹이 또 있는데
아.. 글구...
저 말고 저거 구현하는 사람들 그룹이 또 있는데
그쪽은 그냥 http proxy 를 약간 변경해서 구현하려고
하고 있다는 소문이 들리는데..
과연 제 방법이
아니면 저쪽 방법이 더
구현 목표(application layer approach multicast)
에 가까운지
평가해주실수 있나요?
댓글 달기