加菲猫窝

房价日涨,生活艰难
随笔 - 42, 评论 - 504, 引用 - 61

导航

工具

关于

标签

每月存档

广告



访客

 

MMS和RTSP都是用于通过网络进行流媒体服务的协议(mms是微软的私有协议,和那个手机的MMS没有关系的)。

前两天在内容重定向上碰到了问题:http://blog.joycode.com/peon/posts/14725.aspx

今天看了这篇文章:http://msdn.microsoft.com/library/en-us/dnwmt/html/mmsfirewall.asp

提到微软的mms协议关于NAT的问题,终于对这个问题有了初步的头绪:mms协议和rtsp协议都把流分为控制流和数据流,当使用udp作为数据流时候一般这样:

client连接到server的一个固定端口比如1755,一切就绪后,然后发送自己的ip地址和端口号给server,server就向这个IP和端口发送数据流。

但是经过NAT时,NAT修改IP包的端口和IP地址,但是NAT并不了解MMS协议,当然不知道修改client发送给server的信息了,于是server发出的数据就无法到达client,类似的还有FTP采用主动模式的情况。

原来一直没有意识到这个问题,因为我是采用的mms的方式,当使用这两种协议描述字的时候,其实client和server私下里会协商采用mmst(走tcp通道)或者mmsu(通过udp发送数据),这个过程称为协议翻转,通过NAT以后,一般都采用了tcp的方法(就是mmst),这种方法似乎数据流和控制流使用了同一个连接,对于NAT是友好的。

今天才意识到mmsu协议其实不是NAT友好的。

然后Client在重定向以后再协议翻转的时候(mms->mmst),出了问题,为什么会出问题,原因仍然不是很清楚,MediaPlayer可没有源代码看 :D

相关文章

Loading...

打印 | 张贴于 2004-03-05 16:55:00 | Tag:MediaTechnology

留言反馈

#请教 编辑
看过你的这篇文章我想知道我能正常播放的一个MMS流倒底是怎么播放出来的,因为我跟踪不到最后的视频,这让我很奇怪,这样的链接是怎么一回事呢:-D
如果可以麻烦你给解答一下喽,呵
mms://61.178.85.8/hotcache/34730
(在我这里可以正常播放)
2005-12-12 21:08:00 | [匿名用户:小语]
#re: 关于协议和NAT的亲和性 编辑
看了一下
2005-01-07 21:10:00 | [匿名用户:释都]
对不起,目前本随笔不允许发表新评论.

Powered by: Joycode MVC Blogger System