网络程序设计的高手,往这儿看!

xlqin 2001-07-02 05:50:08
网上视频直播,应是用多播来实现的,我想做一个模拟的系统,写了一个很简单的多播程序,在局域网中工作的很好,可是我用两台机器,都拔号上网,却不行,程序收不到数据,为什么?
...全文
238 点赞 收藏 35
写回复
35 条回复
切换为时间正序
请发表友善的回复…
发表回复
xlqin 2001-07-04
感谢大家的参与
回复
xxxbird 2001-07-03
>>所有介于组播源和接收者之间的路由器、集线器、交换机、TCP/IP栈、防火墙均需支持组播

如果要实现组播的话,至少必须满足这些条件。再考虑到各种底层网络硬件平台如Ethernet, ATM, Frame Delay, FDDI, PSTN 等等的不同,实现起来非常复杂。

对于组播安全性问题已有Naïve密钥管理、Iolus、Nortel框架和SRM(Secure Reliable Multicast)等解决方案(说实话,这些方案我也不是很清楚,不知哪位大侠能指点指点),但是这些方案并完全解决组播的安全性问题。组播的安全性问题仍是一个世界性难题。
回复
xlqin 2001-07-03
其实我对网络真的是没入门,再问 xxxbird(*说你行,你就行,不行也行*) ,对地方电信而言,如果它是大的局域网,能否在网内组播。
其实,我所要的就是网内的组播,不需要也不希望播出网外。
对UDP安全的理解,我是这样的,是不是如果存在一个破坏者,加入组播组后,向此组发大量数据,就会致使电信网络的破坏。从协议上,任何加入组播组的成员都能向所有成员播发
数据的。在局域网中有没有对此的防范办法?
回复
piaoyun 2001-07-03
我不是很熟,但是仍然关注!推一推吧,高手请继续!
回复
xxxbird 2001-07-03
如果只考虑宽带用户可能会好一些。现在组播技术主要应用于局域网中,而现在很多地方的有线网就是一个大的局域网。在Internet使用组播技术是目前一个研究热点。

如果要用组播的话,必须注意到所有介于组播源和接收者之间的路由器、集线器、交换机、TCP/IP栈、防火墙均需支持组播。同时因为组播使用的是UDP协议,它的可靠性(丢包,乱序等)很成问题,特别是在Internet上。你的服务器软件必须充分考虑这个问题。

还有一个问题,就是组播的安全性问题,安全组播就是只有注册的发送者才可以向组发送数据;只有注册的接收者才可以接收组播数据。然而IP组播很难保证这一点。 首先,IP组播使用UDP,任何主机都可以向某个组播地址发送UDP包,并且低层组播机构将传送这些UDP包到所有组成员。其次,Internet缺少对于网络层的访问控制。第三,组成员可以随时加入/退出组播组。这几点使组播安全性问题同组播的可靠性问题一样难以解决。

因此我们说组播技术目前在Internet上应用还不是很成熟。当然其在LAN上应用完全没有问题。
回复
xlqin 2001-07-03
up
回复
xlqin 2001-07-03
组播对带宽应要求不会太高吧?
回复
xxxbird 2001-07-03
理论是当然没有问题。但我总觉得在在Internet上实际应用有点玄。主要考虑的是带宽问题。
回复
xlqin 2001-07-03
up
回复
xlqin 2001-07-03
我针对的是地方电信,希望的是一个地方一台服务器,组播理论上应是可以实现的呀,怎么就不行呢,当前在互联网中就没有组播的实例吗,如没有还要IGMP协议做什么呢?
回复
xxxbird 2001-07-03
能带多少用户的问题,主要与两个方面有关,一个是你的服务器接入Internet上的带宽,一个是你的服务器的性能。前者可能计算,后者我没有做过测试。不过你在设计的时候要考虑系统的可扩展性,当用户增多的时候多加一些服务器就行了,不要指望一台服务器就可能搞定一切。

回复
xlqin 2001-07-03
每秒钟给用户3K数据,就能做到与实时行情同步,如果以此流量,一般的服务器,能带多少个用户呢!我想的是,组播对其它用户应没有影响吧,又不是对某个网段的广播!
回复
xxxbird 2001-07-03
你的方法至少在目前是不可行的。
回复
xxxbird 2001-07-03
对呀,你难道不知道CCTV的视频直播经常连不上吗?不是经常说已经达到系统的最大连接数了么?

股票的实时行情数据量不小啊,一次数据大约有100多K(压缩后的)。服务器不会拔号上网,但是用户需要拔号上网吧? (当然宽带用户除外)。目前最合理的方法是让用户需要的时候上网取数据,而不是广播。服务器的性能要求高一点也没有办法,多用几台吧。
回复
xlqin 2001-07-03
如果网上视频直播(如CCTV的)不是用多播的形势,对服务器要求也太高了吧,
我想作的就是播实时的股市行情,数据量不算太大,真正工作时,服务器当然不
会是拔号上网,现在只是想模拟一下,看看可行性!
回复
xxxbird 2001-07-03
目前而言网上直播都不是通过多播的方式实现的(就我所知而言),通常都是通过连接的方式实现的,最多加几个gateway. 如果在拔号网络上视频多播,想想看对同一网段上别的用户影响有多大?因此这种实现方式至少到目前为止是不现实的。你需要改变你的系统实现方式。
回复
xlqin 2001-07-03
up
回复
xlqin 2001-07-03
我想作的东西,到时一定是和地方电信合作的,在当地电信范围内进行多播,应是可以的
我以为网上直播就应是这样的!
如果ISP同意,我的机器有些什么特别的设置吗?
回复
xxxbird 2001-07-03
通过拔号上网?你需要同你的ISP联系。如果他们不同意在路由器中加入多播支持-这简直是一定的,你就没招了。
回复
xlqin 2001-07-03
up
回复
发动态
发帖子
网络编程
创建于2007-09-28

1.8w+

社区成员

VC/MFC 网络编程
申请成为版主
社区公告
暂无公告