媒体内容的传输方法和系统的制作方法

文档序号:7762017阅读:124来源:国知局
专利名称:媒体内容的传输方法和系统的制作方法
技术领域
本发明涉及通信技术领域,尤其涉及一种媒体内容的传输方法和系统。
背景技术
作为“三网融合”的重要形式,交互电视已经成为通信行业发展的重点业务方向, 其终端用户的规模正在迅速扩张。交互电视的主要业务形态是通过用户终端为用户提供基 于IP网络的直播、点播、录播、时移等音视频服务和其它增值类媒体服务。为了确保终端用户的业务体验,CDN(Content Delivery Network,内容分发网络) 系统通常致力于将媒体内容推送到部署在网络边缘的媒体服务器,通过媒体服务器向边缘 节点提供媒体内容的传输服务。由于边缘节点数量巨大,所有的内容均在CDN的边缘节点 进行存储将需要大量的存储资源。由于长尾效应的存在,大约80%的用户请求会集中在 20%的媒体内容之上。基于这一现象,CDN往往在边缘节点仅存放那些热门内容。但是随 着媒体数字化进程的不断深化,媒体内容的数量在爆炸性的增长,即使仅在CDN边缘节点 存放前20%的热门内容仍然会消耗终大量的存储资源。进一步分析终端用户对媒体内容即 媒体文件的访问模型可以发现,对媒体文件文件头的访问量大于对媒体文件文件尾的访问 量,在这种情况下,将一个每一文件分割为多个片段,在边缘节点仅存储部分较热的片段能 够进一步降低边缘节点的存储消耗。采用分片存储的另一个优势是一个媒体内容的分片 片段能够均勻的分布在边缘节点的多台服务器上,这样能够在很大程度上实现边缘节点服 务器的负载均衡,实现对服务器资源的充分利用。现有技术中的第一种媒体服务器向用户终端传输媒体内容的方法为用户终端 向控制服务器发送媒体内容即媒体文件的传输请求,控制服务器根据上述媒体文件的存储 情况选择相应的媒体服务器,该媒体服务器向上述用户终端发送上述媒体文件分片的数据 包,直到整个媒体文件发送完毕或用户终端主动选择退出媒体文件的接收。在实现本发明过程中,发明人发现现有技术中的第一种媒体服务器向用户终端传 输媒体内容的方法至少存在如下问题存在NAT(Network AddressTranslation,网络地址 转换)穿越问题。在该方法中,控制服务器和用户终端之间采用TCP (Transmission Control ftOtocol,传输控制协议)方式交互,媒体服务器和用户终端之间采用UDP^ser Datagram Protocol,用户数据报文协议)方式交互。在用户终端处于私网、媒体服务器处于公网的情 况下,媒体服务器为NAT设备,如果不在NAT设备上预先设定公网地址和私网地址的映射 关系,NAT设备将无法把UDP报文转发至用户终端。此外,媒体服务器与用户终端之间采用 UDP方式交互,媒体内容的传输质量还需要额外的机制去保障。现有技术中的第二种媒体服务器向用户终端传输媒体内容的方法为用户终端向 控制服务器发送媒体内容即媒体文件的传输请求,控制服务器根据上述媒体文件的存储情 况选择相应的媒体服务器,该媒体服务器向控制服务器发送上述媒体文件的数据包,控制 服务器将收到的数据包转发至用户终端,直到整个媒体文件发送完毕或用户终端主动选择 退出媒体文件的接收。
在实现本发明过程中,发明人发现现有技术中的第二种媒体服务器向用户终端传 输媒体内容的方法至少存在如下问题需要占用双倍带宽为一个用户终端提供媒体内容的 传输服务,控制服务器还需要承担数据包的转发功能,限制了控制服务器的并发处理能力。

发明内容
本发明的实施例提供了一种媒体内容的传输方法和系统,以实现媒体服务器利用 控制服务器和用户终端之间的TCP连接向用户终端传输媒体内容。一种媒体内容的传输系统,包括控制服务器,用于在接收用户终端发送的媒体内 容的传输请求后,与所述用户终端之间建立传输控制协议TCP连接,并向媒体服务器发送 所述媒体内容的传输参数;媒体服务器,用于根据所述控制服务器发送的所述媒体内容的 传输参数构造所述媒体内容的TCP报文,向所述用户终端发送所述TCP报文。一种控制服务器,包括传输控制协议TCP连接处理模块,用于当接收用户终端发 送的媒体内容传输请求时,建立与用户终端的双向TCP连接;传输控制模块,用于根据所述 传输请求中媒体内容信息选择向所述用户终端提供相应媒体内容的媒体服务器,并向所述 媒体服务器发送所述媒体内容的传输指令;以及TCP流控模块,用于向所述媒体服务器发 送所述媒体内容的传输参数,使得所述媒体服务器根据所述媒体内容的传输指令及传输参 数向所述用户终端传输所述媒体内容。一种媒体服务器,包括传输控制协议TCP流控模块,用于接收控制服务器发送的 媒体内容的传输参数和传输指令;TCP报文构造模块,用于根据所述媒体内容的传输参数 构造媒体内容的TCP报文;以及传输控制模块,用于根据所述媒体内容的传输指令向用户 终端发送所述媒体内容的TCP报文。由上述本发明的实施例提供的技术方案可以看出,本发明实施例实现了媒体服务 器利用控制服务器和用户终端之间的TCP连接向用户终端传输媒体内容,既规避了媒体服 务器和用户终端之间采用UDP方式交互时中的NAT穿越问题,又克服了在服务器侧占用两 份带宽和过度消耗服务器资源的问题。


为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用 的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本 领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他 的附图。图1为本发明实施例一提供的一种向用户终端传输媒体内容的系统的结构示意 图;图2为本发明实施例一提供的一种控制服务器的具体结构图;图3为本发明实施例一提供的一种媒体服务器的具体结构图;图4为本发明实施例二提供的一种向用户终端传输媒体内容的方法的处理流程 图;图5为本发明实施例三提供的一种向用户终端传输媒体内容的方法的处理流程 图。
具体实施例方式为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例 中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是 本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员 在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。为便于对本发明实施例的理解,下面将结合附图以几个具体实施例为例做进一步 的解释说明,且各个实施例并不构成对本发明实施例的限定。实施例一该实施例提供的一种向用户终端传输媒体内容的系统结构示意图如图1所示,包 括如下的设备控制服务器11,用于在接收用户终端13发送的媒体内容的传输请求后,与用户终 端13建立双向的TCP连接,并向媒体服务器12发送媒体内容的传输参数以及媒体内容的 传输指令,以实现媒体内容传输的控制。该媒体内容的传输参数包括控制服务器11和用 户终端13之间的TCP连接的源地址、目的地址和TCP报文的当前序列号。,媒体服务器12,用于根据控制服务器11发送过来的所述媒体内容的传输参数构 造媒体内容的TCP报文,根据控制服务器11发送过来的所述媒体内容的传输指令向所述用 户终端13发送所述媒体内容的TCP报文。该媒体服务器12具体可以是流服务器。用户终端13,用于和控制服务器11建立双向的TCP连接,接收所述媒体服务器12 发送的媒体内容的TCP报文。对于成功接收到的媒体内容的TCP报文,向控制服务器11发 送TCP应答响应;对于网络传输中丢失的媒体内容的TCP报文,向控制服务器11发送TCP 重传请求。上述控制服务器11的具体结构如图2所示,上述控制服务器11具体可以包括TCP连接处理模块111,用于在接收用户终端13发送的媒体内容的传输请求后,通 过和用户终端进行TCP协商,与用户终端建立双向的TCP连接。传输控制模块112,用于在所述TCP连接处理模块111建立了和用户终端13之间 的TCP连接后,根据所述传输请求中的媒体内容信息选择向用户终端13提供相应媒体内容 的媒体服务器12,向所述媒体服务器12发送媒体内容的传输指令。TCP流控模块113,用于向所述传输控制模块112选择的媒体服务器12发送媒体 内容的传输参数,所述传输参数包括控制服务器11和用户终端13之间的TCP连接的源地 址、目的地址和TCP报文的当前序列号。进一步地,所述的TCP连接处理模块111,还用于和用户终端13之间进行心跳检 测,检测和用户终端之间的TCP连接是否正常。进一步地,所述的传输控制模块112,还用于根据和用户终端13之间的交互信息 向媒体服务器12发送相应的状态切换指令,控制所述媒体服务器12在快进、快退、跳转、暂 停、播放等状态间切换。进一步地,所述的传输控制模块112,还用于接收用户终端13发送的TCP应答响应 或TCP重传请求后,将所述TCP应答响应或TCP重传请求发送给所述媒体服务器12 ;在进 行媒体服务器12切换的过程中,当接到用户终端13发送的TCP应答响应或TCP重传请求后,若TCP应答响应或TCP重传请求对应的TCP序列号小于或等于切换前的媒体服务器12 的最后TCP序列号,则将TCP应答响应或TCP重传请求发送给切换前的媒体服务器12 ;若 TCP应答响应或TCP重传请求对应的TCP序列号大于切换前的媒体服务器12的最后TCP序 列号,则将TCP应答响应或TCP重传请求发送给切换后的媒体服务器12。当上述用户终端13所请求的媒体内容的分片存储在多个媒体服务器12上时进一步地,所述的传输控制模块112,还用于选择多个媒体服务器12向所述用户 终端13发送媒体内容,当控制服务器11接收到上一个媒体服务器12发送的携带最后一个 TCP报文的序列号的通知消息后,向下一个媒体服务器12发送所述媒体内容的传输指令。进一步地,所述的TCP流控模块113,还用于当控制服务器11接收到上一个媒体服 务器12发送的携带最后一个TCP报文的序列号的通知消息后,向下一个媒体服务器12发 送媒体内容的传输参数,所述传输参数包括控制服务器11和用户终端13之间的TCP连接 的源地址、目的地址和上述通知消息中携带的最后一个TCP报文的序列号。从而使得上述下一个媒体服务器12根据接收到的媒体内容的传输指令和媒体内 容的传输参数,接替上述上一个媒体服务器12继续向所述用户终端13发送媒体内容的TCP 报文。上述媒体服务器12的具体结构如图3所示,上述媒体服务器12具体可以包括TCP流控模块121,用于接收所述控制服务器11发送的上述媒体内容的传输参数, 所述传输参数包括控制服务器11和用户终端13之间的TCP连接的源地址、目的地址和TCP 报文的当前序列号。将上述媒体内容的传输参数传输给TCP报文构造模块122。TCP报文构造模块122,用于根据接收到的所述TCP流控模块121发送的媒体内容 的传输参数构造媒体内容的TCP报文。TCP报文构造模块121所构造的第一个TCP报文的 序列号为上述媒体内容的传输参数中的TCP报文的当前序列号加一,TCP报文构造模块121 所构造的TCP报文的源地址、目的地址为所述媒体内容的传输参数中的源地址、目的地址。传输控制模块123,用于接收所述控制服务器11发送的上述媒体内容的传输指 令,根据上述传输指令以控制服务器11的身份向所述用户终端13发送所述TCP报文构造 模块122所构造的TCP报文。进一步地,所述的传输控制模块123,还用于根据控制服务器11发送的状态切换 指令,在快进、快退、跳转、暂停、播放等状态间切换。进一步地,所述的传输控制模块123,还用于接收到控制服务器11转发的来自用 户终端13的TCP应答响应后,向所述用户终端13发送下一个TCP报文;还用于接收到控制 服务器11转发的来自用户终端13的TCP重传请求后,向所述用户终端13重传相应的TCP 报文。进一步地,所述的传输控制模块123,还用于当媒体内容的分片存储在多个媒体服 务器12上时,在向用户终端13发送了所述媒体服务器12存储的分片中的所有媒体内容 后,向控制服务器11发送携带其发送的最后一个TCP报文的序列号的通知消息。该实施例实现了媒体服务器利用控制服务器和用户终端之间的TCP连接的源地 址、目的地址,以控制服务器的身份向所述用户终端发送TCP报文。由于媒体服务器和用户 终端之间没有采用UDP方式进行交互,从而规避了 UDP方式交互时中的NAT穿越问题,媒体 内容的传输质量也不需要额外的机制去保障。由于是通过媒体服务器而不是控制服务器向用户终端发送媒体数据,从而克服了在控制服务器侧占用两份带宽和过度消耗控制服务器 资源的问题。该实施例通过将媒体内容的分片存储在多个媒体服务器上与TCP连接相互结合 的方式向用户终端传输媒体内容的TCP报文,从而实现了多个媒体服务器接替向用户终端 发送媒体内容的TCP报文,能够实现媒体服务器的负载均衡,实现对媒体服务资源的充分 利用。该实施例通过控制服务器将接收到的用户终端发送的TCP应答响应或TCP重传请 求都转发给媒体服务器,实现了媒体服务器根据用户终端的TCP报文的接收情况,向用户 终端发送后续的或者重传媒体内容的TCP报文。实施例二基于上述图1所示的向用户终端传输媒体内容的系统,该实施例提供的一种向用 户终端传输媒体内容的方法的处理流程如图4所示,包括如下的处理步骤步骤41、控制服务器11在接收到用户终端13发送的媒体内容的传输请求后,与用 户终端13之间建立TCP连接,向媒体服务器12发送媒体内容的传输参数和媒体内容的传 输指令。控制服务器11在接收到用户终端13发送的媒体内容的传输请求后,和用户终端 13协商用于传输媒体内容的协议,确定采用何种协议传输媒体内容。上述传输媒体内容的 协议可以为TCP协议或者UDP协议,当协商采用TCP协议传输媒体内容时,上述控制服务器 11和用户终端13之间通过TCP协商建立TCP连接。控制服务器11确定媒体内容的传输参数,该传输参数包括控制服务器11和用户 终端13之间的TCP连接的TCP源地址、TCP目的地址以及TCP连接的TCP报文的当前序列号等。上述控制服务器11根据接收到的上述传输请求中的媒体内容信息选择向用户终 端13提供媒体内容的媒体服务器12,向该媒体服务器12发送上述媒体内容的传输参数和 媒体内容的传输指令。步骤42,媒体服务器12根据接收到的媒体内容的传输参数构造媒体内容的TCP报 文,根据接收到的媒体内容的传输指令向所述用户终端13发送媒体内容的TCP报文。上述媒体服务器12接收到上述媒体内容的传输指令和媒体内容的传输参数后, 根据上述媒体内容的传输参数构造TCP报文。上述媒体服务器12所构造的第一个TCP报 文的序列号为上述媒体内容的传输参数中的TCP报文的当前序列号加一,所构造的TCP报 文的源地址和目的地址为所述媒体内容的传输参数中的源地址和目的地址。然后,上述媒体服务器12根据上述媒体内容的传输指令,以控制服务器11的身份 向用户终端13发送上述构造的TCP报文。该实施例实现了媒体服务器利用控制服务器和用户终端之间的TCP连接的源地 址、目的地址,以控制服务器的身份向所述用户终端发送TCP报文。由于媒体服务器和用户 终端之间没有采用UDP方式进行交互,从而规避了 UDP方式交互时中的NAT穿越问题。由 于是通过媒体服务器而不是控制服务器向用户终端发送媒体数据,从而克服了在控制服务 器侧占用两份带宽和过度消耗控制服务器资源的问题。实施例三
基于上述图1所示的向用户终端传输媒体内容的系统,以及上述图2所示的控制 服务器和图3所示的媒体服务器的具体结构图,该实施例提供的一种向用户终端传输媒体 内容的方法的处理流程如图5所示,包括如下的处理步骤步骤51、控制服务器11在接收到用户终端13发送的媒体内容的传输请求后,与用 户终端13之间建立TCP连接。控制服务器11中的TCP连接处理模块111在接收到用户终端13发送的媒体内容 的传输请求后,上述TCP连接处理模块111和用户终端13协商用于传输媒体内容的协议, 确定采用何种协议传输媒体内容。上述传输媒体内容的协议可以为TCP协议或者UDP协议, 当协商采用TCP协议传输媒体内容时,上述TCP连接处理模块111和用户终端13之间通过 TCP协商建立TCP连接。上述媒体内容可以包括RTSP (Real-time Transport StreamingProtocol,实时 流媒体传输协议)、HTTP(Hypertext Transfer Protocol,超文本传输协议)流等媒体内容。用户终端13需要定期向控制服务器11发送心跳消息,控制服务器11中的TCP连 接处理模块111向用户终端13返回心跳响应,通过上述用户终端13和控制服务器11之间 的心跳检测来检测上述用户终端11和控制服务器13之间的TCP连接的状态。步骤52、控制服务器11向媒体服务器13发送媒体内容的传输参数和媒体内容的 传输指令。上述控制服务器11中的TCP流控模块113确定媒体内容的传输参数,该传输参数 包括控制服务器11和用户终端13之间的TCP连接的TCP源地址、TCP目的地址以及TCP 连接的TCP报文的当前序列号等。上述控制服务器11中的传输控制模块112根据接收到的上述传输请求中的媒体 内容信息选择向用户终端13提供相应媒体内容的媒体服务器12,向该媒体服务器12发送 上述媒体内容的传输参数和媒体内容的传输指令。在实际应用中,当上述用户终端13请求传输的媒体内容的分片存储在多个媒体 服务器12上时,控制服务器11中的传输控制模块112选择上述多个媒体服务器12向用户 终端13发送媒体内容,向上述多个媒体服务器12中的存储上述媒体内容的起始分片的第 一个媒体内容服务器12发送上述媒体内容的传输参数和媒体内容的传输指令。步骤53、上述媒体服务器12根据接收到的媒体内容的传输参数构造媒体内容的 TCP报文,根据接收到的媒体内容的传输指令向所述用户终端13发送媒体内容的TCP报文。上述媒体服务器12中的TCP流控模块121接收到上述传输媒体内容的传输参数 后,将上述传输参数传输给上述媒体服务器12中的TCP报文构造模块122。上述TCP报文 构造模块122根据上述媒体内容的传输参数构造TCP报文,所构造的第一个TCP报文的序 列号为上述媒体内容的传输参数中的TCP报文的当前序列号加一,所构造的TCP报文的源 地址和目的地址为所述媒体内容的传输参数中的源地址和目的地址。然后,上述媒体服务器12中的传输控制模块123根据上述媒体内容的传输指令, 以控制服务器11的身份向用户终端13发送上述构造的TCP报文。当上述用户终端13请求传输的媒体内容的分片存储在多个媒体服务器12上时, 当一个媒体服务器12完成其保存的媒体内容的分片的发送后,则上述媒体服务器12中的 传输控制模块123向控制服务器11发送携带其发送的最后一个TCP报文的序列号的通知消息。控制服务器11根据上述通知消息中携带的最后一个TCP报文的序列号和上述媒体 内容的所有分片在各个媒体服务器12中的存储情况,选择其他的媒体服务器12继续向上 述用户终端发送媒体内容,并向该其他的媒体服务器12发送包含上述最后一个TCP报文的 序列号的媒体内容的传输参数和媒体内容的传输指令。上述其它的媒体服务器12根据所 述媒体内容的传输参数构造TCP报文,并根据上述媒体内容的传输指令向用户终端13发送 所述TCP报文。上述控制服务器11中的传输控制模块112还用于根据和用户终端13之间的交互 信息向媒体服务器12发送相应的状态切换指令,所述媒体服务器12中的传输控制模块123 根据接收到的上述状态切换指令,在快进、快退、跳转、暂停、播放等状态间切换。步骤M、用户终端13接收到媒体服务器12发送的媒体内容的TCP报文后,向控制 服务器11返回TCP应答响应或TCP重传请求,上述控制服务器11将上述TCP应答响应或 TCP重传请求转发给媒体服务器12。用户终端13接收到媒体服务器12发送的媒体内容的TCP报文后,对于成功接收 到的TCP报文,向控制服务器11发送TCP应答响应;对于网络传输中丢失的TCP报文,向控 制服务器11发送TCP重传请求。控制服务器11中的传输控制模块112将接收到的用户终 端13发送的TCP应答响应或TCP重传请求都转发给媒体服务器12。在进行媒体服务器切换的过程中,控制服务器11仍然会接到用户终端13发送的 TCP应答响应或TCP重传请求。在这种情况下,控制服务器11将根据如下原则对上述TCP 应答响应或TCP重传请求进行转发1、若TCP应答响应或TCP重传请求对应的TCP序列号小于或等于切换前的媒体服 务器12的最后TCP序列号,则控制服务器11中的传输控制模块112将TCP应答响应或TCP 重传请求发送给切换前的媒体服务器12 ;2、若TCP应答响应或TCP重传请求对应的TCP序列号大于切换前的媒体服务器12 的最后TCP序列号,则控制服务器11中的传输控制模块112将TCP应答响应或TCP重传请 求发送给切换后的媒体服务器12。步骤55、媒体服务器12根据接收到的TCP应答响应或TCP重传请求,向用户终端 13发送后续的或者重传媒体内容的TCP报文。媒体服务器12中的传输控制模块123在接收到控制服务器11转发的TCP应答响 应后,继续向用户终端发送后续的媒体内容的TCP报文;在接收到TCP重传请求后,向用户 终端重传相应的媒体内容的TCP报文。在进行媒体服务器12切换的过程中,控制服务器12接收到控制服务器11发送的 包含上一个媒体服务器12发送的最后一个TCP报文的序列号的媒体内容的传输参数和媒 体内容的传输指令,上述媒体服务器12根据所述媒体内容的传输参数构造TCP报文,并接 替上一个媒体服务器12向用户终端13发送TCP报文。该实施例实现了媒体服务器利用控制服务器和用户终端之间的TCP连接的源地 址、目的地址,以控制服务器的身份向所述用户终端发送TCP报文。由于媒体服务器和用户 终端之间没有采用UDP方式进行交互,从而规避了 UDP方式交互时中的NAT穿越问题。由 于是通过媒体服务器而不是控制服务器向用户终端发送媒体数据,从而克服了在控制服务 器侧占用两份带宽和过度消耗控制服务器资源的问题。
该实施例通过将媒体内容的分片存储在多个媒体服务器上与TCP连接相互结合 的方式向用户终端传输媒体内容的TCP报文,从而实现了多个媒体服务器接替向用户终端 发送媒体内容的TCP报文,能够实现媒体服务器的负载均衡,实现对媒体服务资源的充分 利用。该实施例通过控制服务器将接收到的用户终端发送的TCP应答响应或TCP重传请 求都转发给媒体服务器,实现了媒体服务器根据用户终端的TCP报文的接收情况,向用户 终端发送后续的或者重传媒体内容的TCP报文。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以 通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质 中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁 碟、光盘、只读存储记忆体(Read-Only Memory, ROM)或随机存储记忆体(Random Access Memory, RAM)等。综上所述,本发明实施例实现了媒体服务器利用控制服务器和用户终端之间的 TCP连接的源地址、目的地址,以控制服务器的身份向所述用户终端发送TCP报文。由于媒 体服务器和用户终端之间没有采用UDP方式进行交互,从而规避了 UDP方式交互时中的NAT 穿越问题。由于是通过媒体服务器而不是控制服务器向用户终端发送媒体数据,从而克服 了在控制服务器侧占用两份带宽和过度消耗控制服务器资源的问题。该实施例通过将媒体内容的分片存储在多个媒体服务器上与TCP连接相互结合 的方式向用户终端传输媒体内容的TCP报文,从而实现了多个媒体服务器接替向用户终端 发送媒体内容的TCP报文,能够实现媒体服务器的负载均衡,实现对媒体服务资源的充分 利用。该实施例通过控制服务器将接收到的用户终端发送的TCP应答响应或TCP重传请 求都转发给媒体服务器,实现了媒体服务器根据用户终端的TCP报文的接收情况,向用户 终端发送后续的或者重传媒体内容的TCP报文。本发明实施例无需额外引入应用层的可靠性机制,对用户终端和网络设备没有额 外的要求,降低了实现的复杂度,适用于RTSP、HTTP和HTTPMreaming等多种媒体文件的传输。以上所述,仅为本发明较佳的具体实施方式
,但本发明的保护范围并不局限于此, 任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换, 都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围 为准。
权利要求
1.一种媒体内容的传输系统,其特征在于,包括控制服务器,用于在接收用户终端发送的媒体内容的传输请求后,与所述用户终端之 间建立传输控制协议TCP连接,并向媒体服务器发送所述媒体内容的传输参数;媒体服务器,用于根据所述控制服务器发送的所述媒体内容的传输参数构造所述媒体 内容的TCP报文,向所述用户终端发送所述TCP报文。
2.根据权利要求1所述的媒体内容的传输系统,其特征在于,所述媒体内容的传输参 数包括所述控制服务器与所述用户终端之间建立的TCP连接的源地址、目的地址和TCP报 文的当前序列号。
3.—种控制服务器,其特征在于,包括传输控制协议TCP连接处理模块,用于当接收用户终端发送的媒体内容传输请求时, 建立与用户终端的双向TCP连接;传输控制模块,用于根据所述传输请求中媒体内容信息选择向所述用户终端提供相应 媒体内容的媒体服务器,并向所述媒体服务器发送所述媒体内容的传输指令;以及TCP流控模块,用于向所述媒体服务器发送所述媒体内容的传输参数,使得所述媒体服 务器根据所述媒体内容的传输指令及传输参数向所述用户终端传输所述媒体内容。
4.根据权利要求3所述的控制服务器,其特征在于,所述的媒体内容的传输参数包括 所述控制服务器与所述用户终端之间建立的TCP连接的源地址、目的地址和TCP报文的当 前序列号。
5.根据权利要求3所述的控制服务器,其特征在于所述TCP连接处理模块,还用于和用户终端之间进行心跳检测,检测控制服务器和用 户终端之间的TCP连接是否正常。
6.根据权利要求3所述的控制服务器,其特征在于所述传输控制模块,还用于接收所述用户终端发送的TCP应答响应或TCP重传请求后, 并将所述TCP应答响应或TCP重传请求发送给所述媒体服务器;在进行媒体服务器切换的过程中,当接到用户终端发送的TCP应答响应或TCP重传请 求后,若所述TCP应答响应或TCP重传请求对应的TCP序列号小于或等于切换前的媒体服 务器的最后TCP序列号,则将所述TCP应答响应或TCP重传请求发送给切换前的媒体服务 器;若所述TCP应答响应或TCP重传请求对应的TCP序列号大于切换前的媒体服务器的最 后TCP序列号,则将所述TCP应答响应或TCP重传请求发送给切换后的媒体服务器。
7.根据权利要求3所述的控制服务器,其特征在于,当所述用户终端所请求的媒体内 容的分片存储在多个媒体服务器上时所述传输控制模块,还用于选择多个媒体服务器向所述用户终端发送媒体内容,当所 述传输控制模块接收到上一个媒体服务器发送的携带最后一个TCP报文的序列号的通知 消息后,向下一个媒体服务器发送所述媒体内容的传输指令;所述TCP流控模块,还用于传输控制模块接收到上一个媒体服务器发送的携带最后一 个TCP报文的序列号的通知消息后,向下一个媒体服务器发送所述媒体内容的传输参数。
8.一种媒体服务器,其特征在于,包括传输控制协议TCP流控模块,用于接收控制服务器发送的媒体内容的传输参数和传输 指令;TCP报文构造模块,用于根据所述媒体内容的传输参数构造媒体内容的TCP报文;以及 传输控制模块,用于根据所述媒体内容的传输指令向用户终端发送所述媒体内容的 TCP报文。
9.根据权利要求8所述的媒体服务器,其特征在于,所述的媒体内容的传输参数包括 所述控制服务器与所述用户终端之间建立的TCP连接的源地址、目的地址和TCP报文的当 前序列号。
10.根据权利要求8所述的媒体服务器,其特征在于所述传输控制模块,还用于接收到所述控制服务器转发的来自所述用户终端的TCP应 答响应后,向所述用户终端发送后续的TCP报文;接收到所述控制服务器转发的来自所述 用户终端的TCP重传请求后,向所述用户终端重传相应的TCP报文。
11.一种媒体内容的传输方法,其特征在于,包括 控制服务器接收用户终端发送的媒体内容的传输请求; 建立所述控制服务器与用户终端的传输控制协议TCP连接;向媒体服务器发送所述媒体内容的传输参数和所述媒体内容的传输指令,以使所述媒 体服务器根据所述媒体内容的传输参数构造所述媒体内容的TCP报文,根据所述媒体内容 的传输指令向所述用户终端发送所述媒体内容的TCP报文。
12.根据权利要求11所述的媒体内容的传输方法,其特征在于,所述媒体内容的传输 参数包括所述控制服务器与所述用户终端之间建立的TCP连接的源地址、目的地址和TCP 报文的当前序列号。
13.根据权利要求11所述的媒体内容的传输方法,其特征在于,所述的方法还包括 接收用户终端发送的TCP应答响应或TCP重传请求后,将所述TCP应答响应或TCP重传请求发送给所述媒体服务器。
14.根据权利要求11所述的媒体内容的传输方法,其特征在于,所述方法还包括当接到用户终端发送的TCP应答响应或TCP重传请求后,若所述TCP应答响应或TCP 重传请求对应的TCP序列号小于或等于切换前的媒体服务器的最后TCP序列号,则将所述 TCP应答响应或TCP重传请求发送给切换前的媒体服务器;若所述TCP应答响应或TCP重 传请求对应的TCP序列号大于切换前的媒体服务器的最后TCP序列号,则将所述TCP应答 响应或TCP重传请求发送给切换后的媒体服务器。
15.根据权利要求11所述的媒体内容的传输方法,其特征在于,所述的方法还包括 当所述用户终端所请求的媒体内容的分片存储在多个媒体服务器上时,选择多个媒体服务器向所述用户终端发送媒体内容,当接收到上一个媒体服务器发送的携带最后一个 TCP报文的序列号的通知消息后,向下一个媒体服务器发送所述媒体内容的传输指令和所 述媒体内容的传输参数,所述传输参数包括所述控制服务器和所述用户终端之间的TCP连 接的源地址、目的地址和所述通知消息中携带的最后一个TCP报文的序列号。
全文摘要
本发明实施例提供了一种媒体内容的传输方法和系统。该方法主要包括控制服务器在接收用户终端发送的媒体内容的传输请求后,与用户终端建立传输控制协议TCP连接,向媒体服务器发送媒体内容的传输参数和媒体内容的传输指令,所述媒体内容的传输参数包括控制服务器的TCP连接的源地址、目的地址和TCP报文的当前序列号,以使所述媒体服务器根据所述媒体内容的传输参数构造媒体内容的TCP报文,根据所述媒体内容的传输指令向所述用户终端发送所述媒体内容的TCP报文。本发明实施例实现了媒体服务器利用控制服务器和用户终端之间的TCP连接向用户终端传输媒体内容,从而规避了UDP方式交互时中的NAT穿越问题,克服了在控制服务器侧占用两份带宽和过度消耗控制服务器资源的问题。
文档编号H04L29/08GK102148813SQ20101050582
公开日2011年8月10日 申请日期2010年9月30日 优先权日2010年9月30日
发明者陈宇 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1