基于socks5代理协议实现多媒体代理服务控制的方法

文档序号:7860907阅读:220来源:国知局
专利名称:基于socks5代理协议实现多媒体代理服务控制的方法
技术领域
本发明涉及网络技术领域,特别涉及网络代理服务实现方法技术领域,具体是指一种基于S0Cks5代理协议实现多媒体代理服务控制的方法。
背景技术
随着网络的不断发展和网络服务应用的越来越多样化,网络代理服务在复杂的网络环境中正扮演着越来越重要的角色。代理服务器的功能就是代理网络用户去取得网络信息。形象地说,它是网络信息的中转站。有了代理服务之后,网络中断不是直接到服务器去取回网络资源而是向代理服务器发出请求,由代理服务器来取回终端所需要的信息并传送给用户终端。而且,大部分代理服务器都具有缓冲的功能,就好像一个大容量缓存,它有很大的存储空间,不断将新取得数据储存到服务器本机的存储器上,这样就能显着提高资源获取的效率,也能够丰富获取资源的手段。更重要的是代理服务器是因特网链路级网关所提供的一种重要的安全功能,它的工作主要在开放系统互联(OSI)模型的会话层。 现有的代理服务大体上可以分为两类线路层代理和应用层代理。线路层代理工作在TCP/IP传输层与应用层之间,在OSI模型中属于会话层,这种代理的特点在于与代理层之上的应用交互无关,由专有的代理交互协议支持。不管是基于HTTP的网页交互,还是基于SIP的远程会话交互,甚至是基于私有协议的应用交互,都能够通过线路层代理服务提交请求,获取相应的资源。同样的,由于与应用程序的无关性,使之无法针对特定的应用服务进行一些优化(比如HTTP代理中的网页元素抽取缓冲模型等)。线路层代理使用最为广泛的是S0Cks5代理。由于S0CKS5代理时并不关心承载协议的内容,这在普通的代理业务中并不受影响(如HTTP),如图I所示,终端将HTTP请求封装在S0CKS5报文中通过接I发送给代理服务器,代理服务器通过连接2与远程资源交互并将资源通过连接I传回给终端,实现代理业务。应用层代理大多针对某个应用,并由具体的应用协议提供支持,最为人所熟知的就是基于HTTP协议的WEB代理,通过HTTP协议预留的关键字PROXY和相关的服务请求格式,HTTP代理服务器能够通过web应用的方式中继终端的网络请求。这类代理的特点是,没有专有的代理承载协议,提供代理服务的服务器本身就是该类的应用服务器,同时,该类代理服务和具体的应用结合更紧密,能够针对应用的特点进行很多优化,提供更安全更高效的服务。与此同时,随着网络带宽的不断增加,网络中的多媒体请求越来越多,而在请求多媒体资源时代理成为了无法避免的接入手段之一。将上述的两种传统代理方式应用于多媒体代理时,会遇到下面几个问题I、媒体交互一般涉及控制信道和数据信道两股数据流,传统代理对这类交互无法实现。2、媒体接入时经常有编码方式、接入带宽的特殊需求,传统代理无法据此经行调节。3、传统代理服务无法提供三层以下接入的支持(比如组播业务)。4、代理服务后多媒体质量无法保证。

发明内容
本发明的目的是克服了上述现有技术中的缺点,提供一种能够解决现有技术中多媒体代理接入的问题,实现控制信道和数据信道双通道交互,进而能够对多媒体代理根据其编码方式进行调节,支持组播业务,并有效保证多媒体传输质量,且应用方式简便,实现成本低廉,应用范围广泛的计算机网络中基于socks5代理协议实现多媒体代理服务控制的方法。 计算机网络包括终端、多媒体代理服务器和远端多媒体服务器,所述的多媒体代理服务器分别连接所述的终端和远端多媒体服务器。为了实现上述的目的,本发明的该基于s0Cks5代理协议实现多媒体代理服务控制的方法包括以下步骤(I)所述的终端通过第一连接向所述的多媒体代理服务器发出包括代理请求的多媒体接入会话;(2)所述的多媒体代理服务器根据s0Cks5代理协议通过第二连接向所述的远端多媒体服务器发送多媒体服务会话;(3)所述的多媒体代理服务器解析所述的代理请求获得媒体交互信息,并根据所述的媒体交互信息通过第四连接从所述的远端多媒体服务器获得媒体信息;(4)所述的多媒体代理服务器将所获得的媒体信息通过第三连接转发至所述的终端。该计算机网络中基于s0Cks5代理协议实现多媒体代理服务控制的方法中,所述的多媒体代理服务器解析所述的代理请求获得媒体交互信息,具体包括以下步骤(31)所述的多媒体代理服务器解析所述的代理请求获得媒体交互类型;(32)所述的多媒体代理服务器对于媒体交互类型为媒体接入请求的代理请求,分析其交互内容;(33)所述的多媒体代理服务器根据所述的交互内容确定媒体内容连接通道;(34)所述的多媒体代理服务器根据内容连接通道所述的并建立与所述的终端间的第三连接以及与所述的远端多媒体服务器之间的第四连接。该计算机网络中基于s0Cks5代理协议实现多媒体代理服务控制的方法中,所述的媒体交互类型为媒体接入请求的代理请求包括http协议请求、ftp协议请求、rtsp协议请求、rtmp协议请求和HLS协议请求。该计算机网络中基于s0Cks5代理协议实现多媒体代理服务控制的方法中,所述的代理请求为所述的终端向所述的多媒体代理服务器发出的基于UDP-TRANS协议的组播加入代理请求;所述的多媒体服务会话为所述的多媒体代理服务器向所述的远端多媒体服务器发出的IGMP join组播加入请求;所述的第三连接为所述的多媒体代理服务器创建于所述的终端之间的单播UDP视频链路;所述的第四连接为所述的多媒体代理服务器创建于所述的远端多媒体服务器之间的组播视频流链路。该计算机网络中基于s0Cks5代理协议实现多媒体代理服务控制的方法中,所述的组播加入代理请求中的代理目的地址设置为组播地址,所述的单播UDP视频链路与所述的组播加入代理请求中的组播服务端口一致。该计算机网络中基于s0Cks5代理协议实现多媒体代理服务控制的方法中,所述的方法在步骤(3)之后还包括以下步骤(35)所述的多媒体代理服务器对从所述的远端多媒体服务器获得媒体信息进行媒体信息数据完整性检测,并获得检测结果;(36)所述的多媒体代理服务器判断所述的检测结果为不合格,则缓存所获得的媒体信息,并向所述的远端多媒体服务器发起前向纠错请求或重传请求;(37)所述的多媒体代理服务器判断所述的检测结果为合格,则进入步骤(4)。该计算机网络中基于s0Cks5代理协议实现多媒体代理服务控制的方法中,所述的媒体信息数据完整性检测包括网络丢包检测和视频包序列乱序检测。 该计算机网络中基于s0Cks5代理协议实现多媒体代理服务控制的方法中,所述的步骤(4)之后还包括以下步骤(5)所述的终端对从所述的多媒体代理服务器获得的媒体信息进行丢包检测,并将丢包信息反馈至所述的多媒体代理服务器;(6)所述的多媒体代理服务器判断丢包反馈信息超过预设值后,对流媒体进行转码压缩带宽,并发送至所述的终端。该计算机网络中基于s0Cks5代理协议实现多媒体代理服务控制的方法中,所述的步骤(6)具体包括以下步骤(61)所述的多媒体代理服务器根据帧率压缩、分辨率压缩、裁剪的自低到高的压缩手段等级顺序,首先采用低等级的压缩手段对流媒体进行转码压缩;(62)所述的多媒体代理服务器判断丢包反馈信息是否仍然超过预设值,若是,则进入步骤(63),若否,则进入步骤(65);(63)所述的多媒体代理服务器判断当前是否采用最高等级的压缩手段,若是,则向所述的终端发送出错提示信息,若否,则进入步骤(64);(64)所述的多媒体代理服务器根据所述的等级顺序采用更高一级的压缩手段对流媒体进行转码压缩,并返回步骤(62);( 65 )所述的多媒体代理服务器保持当前压缩手段对流媒体进行转码压缩。该计算机网络中基于s0Cks5代理协议实现多媒体代理服务控制的方法中,所述的方法在所述的步骤(6)之后还包括以下步骤(7)所述的多媒体代理服务器从所述的媒体信息中获得视频和音频帧数据,并判断所述的视频和音频帧数据是否损坏,若是,则进入步骤(8),若否,则返回步骤(4);(8)所述的多媒体代理服务器对所损坏的视频和音频帧数据进行填充补偿或丢弃损坏的视频和音频帧数据。采用了该发明的计算机网络中基于s0Cks5代理协议实现多媒体代理服务控制的方法,终端通过第一连接向多媒体代理服务器发出包括代理请求的多媒体接入会话;多媒体代理服务器则根据S0Cks5代理协议通过第二连接向远端多媒体服务器发送多媒体服务会话;进而多媒体代理服务器再通过第四连接从远端多媒体服务器获得媒体信息,并将所获得的媒体信息通过第三连接转发至所述的终端。从而实现控制信道和数据信道采用不同的通道进行交互,进而能够对多媒体代理根据其编码方式进行调节,支持组播业务,并有效保证多媒体传输质量,克服了现有技术中多媒体代理所存在的问题,且本发明的计算机网络中基于socks5代理协议实现多媒体代理服务控制的方法的应用方式简便,实现成本低廉,应用范围广泛。


图I为现有技术中基于s0Cks5代理协议实现普通代理业务的网络示意图。图2为本发明的基于s0Cks5代理协议实现多媒体代理服务控制的方法的步骤流程图。图3为本发明的基于s0Cks5代理协议实现多媒体代理服务的网络示意图。图4为本发明的方法在实际应用中在代理协议的基础上增加媒体接入协议支持的流程示意图。 图5为本发明的方法在实际应用中实现组播接入的会话过程示意图。图6为本发明的方法在实际应用中的反馈过程示意图。图7为本发明的方法在实际应用中远端媒体服务器发送的媒体数据后对媒体数据进行完整性检测的流程示意图。
具体实施例方式为了能够更清楚地理解本发明的技术页面,特举以下实施例详细说明。图2为本发明的基于s0Cks5代理协议实现多媒体代理服务控制的方法的步骤流程图。在一种实施方式中,如图3所示,计算机网络包括终端、多媒体代理服务器和远端多媒体服务器,所述的多媒体代理服务器分别连接所述的终端和远端多媒体服务器。该计算机网络中基于S0Cks5代理协议实现多媒体代理服务控制的方法,如图2及图3所示,包括以下步骤(I)所述的终端通过第一连接向所述的多媒体代理服务器发出包括代理请求的多媒体接入会话;(2)所述的多媒体代理服务器根据s0Cks5代理协议通过第二连接向所述的远端多媒体服务器发送多媒体服务会话;(3)所述的多媒体代理服务器解析所述的代理请求获得媒体交互信息,并根据所述的媒体交互信息通过第四连接从所述的远端多媒体服务器获得媒体信息;(4)所述的多媒体代理服务器将所获得的媒体信息通过第三连接转发至所述的终端。在一种较优选的实施方式中,所述的多媒体代理服务器解析所述的代理请求获得媒体交互信息,具体包括以下步骤(31)所述的多媒体代理服务器解析所述的代理请求获得媒体交互类型;(32)所述的多媒体代理服务器对于媒体交互类型为媒体接入请求的代理请求,分析其交互内容,所述的媒体交互类型为媒体接入请求的代理请求包括http协议请求、P协议请求、rtsp协议请求、rtmp协议请求和HLS协议请求;
(33)所述的多媒体代理服务器根据所述的交互内容确定媒体内容连接通道;(34)所述的多媒体代理服务器根据内容连接通道所述的并建立与所述的终端间的第三连接以及与所述的远端多媒体服务器之间的第四连接。在另一种较优选的实施方式中,所述的代理请求为所述的终端向所述的多媒体代理服务器发出的基于UDP-TRANS协议的组播加入代理请求,该组播加入代理请求中的代理目的地址设置为组播地址;所述的多媒体服务会话为所述的多媒体代理服务器向所述的远端多媒体服务器发出的IGMP join组播加入请求;所述的第三连接为所述的多媒体代理服务器创建于所述的终端之间的单播UDP视频链路,该单播UDP视频链路与所述的组播加入代理请求中的组播服务端口一致;且所述的第四连接为所述的多媒体代理服务器创建于所述的远端多媒体服务器之间的组播视频流链路。在又一种较优选的实施方式中,所述的方法在步骤(3)之后还包括以下步骤(35)所述的多媒体代理服务器对从所述的远端多媒体服务器获得媒体信息进行 媒体信息数据完整性检测,并获得检测结果;(36)所述的多媒体代理服务器判断所述的检测结果为不合格,则缓存所获得的媒体信息,并向所述的远端多媒体服务器发起前向纠错请求或重传请求;(37)所述的多媒体代理服务器判断所述的检测结果为合格,则进入步骤(4)。在一种进一步优选的实施方式中,所述的媒体信息数据完整性检测包括网络丢包检测和视频包序列乱序检测。在另一种进一步优选的实施方式中,所述的步骤(4)之后还包括以下步骤(5)所述的终端对从所述的多媒体代理服务器获得的媒体信息进行丢包检测,并将丢包信息反馈至所述的多媒体代理服务器;(6)所述的多媒体代理服务器判断丢包反馈信息超过预设值后,对流媒体进行转码压缩带宽,并发送至所述的终端。在一种更优选的实施方式中,所述的步骤(6)具体包括以下步骤(61)所述的多媒体代理服务器根据帧率压缩、分辨率压缩、裁剪的自低到高的压缩手段等级顺序,首先采用低等级的压缩手段对流媒体进行转码压缩;(62)所述的多媒体代理服务器判断丢包反馈信息是否仍然超过预设值,若是,则进入步骤(63),若否,则进入步骤(65);(63)所述的多媒体代理服务器判断当前是否采用最高等级的压缩手段,若是,则向所述的终端发送出错提示信息,若否,则进入步骤(64);(64)所述的多媒体代理服务器根据所述的等级顺序采用更高一级的压缩手段对流媒体进行转码压缩,并返回步骤(62);(65 )所述的多媒体代理服务器保持当前压缩手段对流媒体进行转码压缩。在另一种更优选的实施方式中,所述的方法在所述的步骤(6)之后还包括以下步骤(7)所述的多媒体代理服务器从所述的媒体信息中获得视频和音频帧数据,并判断所述的视频和音频帧数据是否损坏,若是,则进入步骤(8),若否,则返回步骤(4);(8)所述的多媒体代理服务器对所损坏的视频和音频帧数据进行填充补偿或丢弃损坏的视频和音频帧数据。
在本发明的应用中,综合考虑音视频数据的代理接入方式,可以看到接入协议十分多样,应用层的代理协议由于依赖于具体的应用通信协议显然没有办法满足这一要求,因此本发明选择基于线路层的S0CKS5协议进行扩展实现流媒体交互。SOCKS (套接字安全性,socket security,SOCKS)是一种网络代理协议。目前最新版本为S0CKS5,相对之前版本添加了 UDP应用支持和IPV6支持。SOCKS工作在“线路层”,这是一个通俗且形象的说法,具体说来是传输层之上,应用层之下,因此SOCKS不关心具体的应用协议,只进行传输层级别的转发服务,适合多业务代理的实现。SOCKS代理的核心在于SOCKS协议,其协议头在传输层协议头之后,传输层数据之间,对应用最广泛的TCP来说,即在TCP头之后,payload数据之前。格式如下表I所示(单位字节)
权利要求
1.一种计算机网络中基于socks5代理协议实现多媒体代理服务控制的方法,所述的计算机网络包括终端、多媒体代理服务器和远端多媒体服务器,所述的多媒体代理服务器分别连接所述的终端和远端多媒体服务器,其特征在于,所述的方法包括以下步骤 (1)所述的终端通过第一连接向所述的多媒体代理服务器发出包括代理请求的多媒体接入会话; (2)所述的多媒体代理服务器根据s0Cks5代理协议通过第二连接向所述的远端多媒体服务器发送多媒体服务会话; (3)所述的多媒体代理服务器解析所述的代理请求获得媒体交互信息,并根据所述的媒体交互信息通过第四连接从所述的远端多媒体服务器获得媒体信息; (4)所述的多媒体代理服务器将所获得的媒体信息通过第三连接转发至所述的终端。
2.根据权利要求I所述的计算机网络中基于S0Cks5代理协议实现多媒体代理服务控制的方法,其特征在于,所述的多媒体代理服务器解析所述的代理请求获得媒体交互信息,具体包括以下步骤 (31)所述的多媒体代理服务器解析所述的代理请求获得媒体交互类型; (32)所述的多媒体代理服务器对于媒体交互类型为媒体接入请求的代理请求,分析其交互内容; (33)所述的多媒体代理服务器根据所述的交互内容确定媒体内容连接通道; (34)所述的多媒体代理服务器根据内容连接通道所述的并建立与所述的终端间的第三连接以及与所述的远端多媒体服务器之间的第四连接。
3.根据权利要求2所述的计算机网络中基于s0Cks5代理协议实现多媒体代理服务控制的方法,其特征在于,所述的媒体交互类型为媒体接入请求的代理请求包括http协议请求、ftp协议请求、rtsp协议请求、rtmp协议请求和HLS协议请求。
4.根据权利要求I所述的计算机网络中基于S0Cks5代理协议实现多媒体代理服务控制的方法,其特征在于, 所述的代理请求为所述的终端向所述的多媒体代理服务器发出的基于UDP-TRANS协议的组播加入代理请求; 所述的多媒体服务会话为所述的多媒体代理服务器向所述的远端多媒体服务器发出的IGMP join组播加入请求; 所述的第三连接为所述的多媒体代理服务器创建于所述的终端之间的单播UDP视频链路; 所述的第四连接为所述的多媒体代理服务器创建于所述的远端多媒体服务器之间的组播视频流链路。
5.根据权利要求4所述的计算机网络中基于s0Cks5代理协议实现多媒体代理服务控制的方法,其特征在于,所述的组播加入代理请求中的代理目的地址设置为组播地址,所述的单播UDP视频链路与所述的组播加入代理请求中的组播服务端口一致。
6.根据权利要求I所述的计算机网络中基于S0Cks5代理协议实现多媒体代理服务控制的方法,其特征在于,所述的方法在步骤(3)之后还包括以下步骤 (35)所述的多媒体代理服务器对从所述的远端多媒体服务器获得媒体信息进行媒体信息数据完整性检测,并获得检测结果;(36)所述的多媒体代理服务器判断所述的检测结果为不合格,则缓存所获得的媒体信息,并向所述的远端多媒体服务器发起前向纠错请求或重传请求; (37)所述的多媒体代理服务器判断所述的检测结果为合格,则进入步骤(4)。
7.根据权利要求6所述的计算机网络中基于s0Cks5代理协议实现多媒体代理服务控制的方法,其特征在于,所述的媒体信息数据完整性检测包括网络丢包检测和视频包序列乱序检测。
8.根据权利要求I所述的计算机网络中基于S0Cks5代理协议实现多媒体代理服务控 制的方法,其特征在于,所述的步骤(4)之后还包括以下步骤 (5)所述的终端对从所述的多媒体代理服务器获得的媒体信息进行丢包检测,并将丢 包信息反馈至所述的多媒体代理服务器; (6)所述的多媒体代理服务器判断丢包反馈信息超过预设值后,对流媒体进行转码压缩带宽,并发送至所述的终端。
9.根据权利要求8所述的计算机网络中基于s0Cks5代理协议实现多媒体代理服务控制的方法,其特征在于,所述的步骤(6)具体包括以下步骤 (61)所述的多媒体代理服务器根据帧率压缩、分辨率压缩、裁剪的自低到高的压缩手段等级顺序,首先采用低等级的压缩手段对流媒体进行转码压缩; (62)所述的多媒体代理服务器判断丢包反馈信息是否仍然超过预设值,若是,则进入步骤(63),若否,则进入步骤(65); (63)所述的多媒体代理服务器判断当前是否采用最高等级的压缩手段,若是,则向所述的终端发送出错提示信息,若否,则进入步骤(64); (64)所述的多媒体代理服务器根据所述的等级顺序采用更高一级的压缩手段对流媒体进行转码压缩,并返回步骤(62); (65)所述的多媒体代理服务器保持当前压缩手段对流媒体进行转码压缩。
10.根据权利要求8所述的计算机网络中基于s0Cks5代理协议实现多媒体代理服务控制的方法,其特征在于,所述的方法在所述的步骤(6)之后还包括以下步骤 (7)所述的多媒体代理服务器从所述的媒体信息中获得视频和音频帧数据,并判断所述的视频和音频帧数据是否损坏,若是,则进入步骤(8),若否,则返回步骤(4); (8)所述的多媒体代理服务器对所损坏的视频和音频帧数据进行填充补偿或丢弃损坏的视频和音频帧数据。
全文摘要
本发明涉及一种计算机网络中基于socks5代理协议实现多媒体代理服务控制的方法,该方法中终端通过第一连接向多媒体代理服务器发出包括代理请求的多媒体接入会话;多媒体代理服务器则根据socks5代理协议通过第二连接向远端多媒体服务器发送多媒体服务会话;进而多媒体代理服务器再通过第四连接从远端多媒体服务器获得媒体信息,并将所获得的媒体信息通过第三连接转发至所述的终端。从而实现控制信道和数据信道采用不同的通道进行交互,而且能够对多媒体代理根据其编码方式进行调节,支持组播业务,并有效保证多媒体传输质量,克服了现有技术中多媒体代理所存在的问题,且本发明的应用方式简便,实现成本低廉,应用范围广泛。
文档编号H04L29/08GK102882865SQ20121035177
公开日2013年1月16日 申请日期2012年9月19日 优先权日2012年9月19日
发明者逯利军, 钱培专, 李晏 申请人:上海美琦浦悦通讯科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1