网络装置及其帧处理方法

文档序号:7957941阅读:122来源:国知局
专利名称:网络装置及其帧处理方法
技术领域
本发明涉及网络通信领域,尤其涉及网络装置及其帧处理方法。
背景技术
动画专家群组(Motion Picture Expert Group Layer-4, MPEG-4 )格式的^见频文 件与其它的视频文件相比,具有压缩比高、图像效果清晰、占用网络带宽小的优 点,因此特别适用于基于因特网的流媒体文件传输。
然而,MPEG-4文件所具有的突发性(Burstiness)容易引起恒定速率变化, 因此当网络装置的恒定速率达到峰值速率(Peakrate)时,如果该峰值速率大于客 户端的緩存器(Buffer)所能够接纳的最大速率,则会发生丟包(Packet loss)现 象。

发明内容
有鉴于此,需要提供一种网络装置,用于稳定帧恒定速率,从而避免丢包现 象发生。
此外,还需提供一种帧处理方法,用于稳定帧恒定速率,从而避免丟包现象 发生。
一种网络装置,与客户端通信连接,该网络装置包括速率确定模块、判定模 块、设定模块以及传送模块。速率确定模块用于确定传送多个帧的最长恒定速率。 判定模块用于依次判定每个帧的大小是否大于预设的帧大小值。设定模块用于当 其中一个帧的大小大于该预设的帧大小值时,重新设定大于该预设的帧大小值的 帧的大小。传送模块用于根据最长恒定速率传送多个帧至客户端。
一种帧处理方法,应用于与客户端通信连接的网络装置中,该帧处理方法包 括确定传送多个帧的最长恒定速率;依次判定每个帧的大小是否大于预设的帧 大小值;如果其中一个帧的大小大于预设的帧大小值,则重新设定大于预设的帧
大小值的帧的大小;以及根据最长恒定速率传送多个帧至客户端。
上述网络装置及其帧处理方法首先通过速率确定模块确定传送多个帧的最长 恒定速率,使该最长恒定速率不超出客户端的緩存所能够接纳的最大速率,接着 通过判定模块依次判定每个帧的大小是否大于预设的帧大小值,然后通过设定模 块在其中一个帧的大小大于预设的帧大小值时重新设定大于预设的帧大小值的帧 的大小,最后通过传送模块根据最长恒定速率传送多个帧至客户端来稳定帧恒定 速率,从而避免丢包现象发生。


图1为本发明网络装置的应用环境示意图。 图2为本发明网络装置的模块图。 图3为本发明确定最长恒定速率的示意图。 图4为本发明帧处理方法的流程图。
具体实施例方式
参阅图1,所示为本发明网络装置10的应用环境示意图。
如图1所示,网络装置10通过网络30传送流媒体文件至客户端20, 网络装置10在传送流媒体文件之前先对其执行帧处理。在本实施例中, 网络装置10为内容服务器(Content Server),客户端20为个人计算机 (Personal Computer, PC ),网纟各30为因特网(Internet),流々某体文件为 MPEG-4 ( Motion Picture Expert Group Layer-4 )格式的文件。
参阅图2,所示为本发明网络装置10的模块图。
网络装置10包括速率确定模块120、判定模块130、设定模块140 以及传送模块150。在本实施例中,网络装置10为内容服务器,其以可 变速率(Variable bit rate, VBR )传送流媒体文件。
在客户端20中设置有緩存器(未示出),用于緩存网络装置10传送 的帧。在本实施例中,緩存器的緩存大小为B字节。
速率确定模块120用于确定传送多个帧的最长恒定速率。速率确定 模块120包括统计子模块1202、确定子模块1204以及最长速率确定子 模块1206。请同时参阅图3,所示为本发明确定最长恒定速率的示意图。
在图3中,曲线B(tx)为客户端20在t0、 h..... t6时刻累计接收的
最大帧大小B(t0)、 B(t,).....B(t6),曲线D(tx)为客户端20在t0、 t!.....
t6时刻累计接收的最小帧大小D(t。)、 D(t,)..... D(t6)。 Rate(l)为第一最
长恒定速率,Rate(2)为第二最长恒定速率。
统计子模块1202用于统计传送帧的时间间隔。在本实施例中,传送 帧的时间间隔以T表示。
统计子模块1202还用于统计客户端20在不同时刻累计接收的最小 帧大小。在本实施例中,在to、 t,、 ...U时刻累计接收的最小帧大小分别
表示为D(t。)、 D(t,)..... D(t6),其中,本实施例中的to时刻为零时刻。
具体为,客户端20在不同时刻所累计接收的最小帧大小即为客户端20 在不同时刻所播放的帧大小,统计子模块1202通过查看网络装置IO发 送的流媒体文件的头部(Header)字段来确定客户端20在不同时刻所累 计接收的最小帧大小。
确定子模块1204用于根据统计的客户端20在不同时刻累计接收的 最小帧大小以及客户端20的緩存大小B确定客户端20在不同时刻累计 接收的最大帧大小。网络装置10通过客户端发送的响应帧确定客户端 20的緩存大小B。在本实施例中,客户端20不同时刻累计接收的最大
帧大小分别表示为B(t0)、 B(tO..... B(t6),其中B(t0)=D(t0)+B ,
B(ti"D(t!)+B,…,B(t6)=D(t6)+B。
最长速率确定子模块1206用于根据统计的客户端20在不同时刻累 计接收的最小帧大小,以及确定的客户端20在不同时刻累计接收的最大 帧大小确定传送该帧的最长恒定速率,以使该最长恒定速率持续的时间 间隔最长。最长速率确定子模块1206确定最长恒定速率以后,还用于使 该最长时间间隔内的不同时刻以该最长恒定速率传送的帧大小小于统计 的对应时刻接收的最大帧大小,并大于确定的对应时刻接收的最小帧大 小。在本实施例中,仅以确定第一最长恒定速率以及第二最长恒定速率 为例。最长速率确定子模块].206从t。时刻开始,依次确定第一最长恒 定速率Rate(l)及第二最长恒定速率Rate(2),以使该第一最长恒定速率 Rate(l)及第二最长恒定速率Rate(2)分别具有最长的时间间隔4T及2T。 在时间间隔4T及2T内,累计传送的帧大小分别为Rate(l)*4T及 Rate(2)*2T。 Rate(l)*4T及Rate(2)*2T均小于对应的最大帧大小B(t4)、 B(t6),且大于对应的最小帧大小D(t4)、 D(t6)。
如图3所示,最长速率确定子模块1206确定从to时刻至U时刻, 为第一最长恒定速率Rate(l)所在的时刻,并且Rate(l)=[D(t4)-D(tQ)]/4T, 这是由于在时间间隔T、 2T、. 3T、 4T内,传送的帧大小T*Rate(l)、 2T*Rate(l)、 3T*Rate(l)、 4T^Rate(l)均小于对应的最大帧大小B(tt)、 B(t2)、 B(t3)、 B(t4),并大于对应的最小帧大小D(tJ、 D(t2)、 D(t3)、 D(t4), 而在下一个T时间间隔内,如果仍以Rate(l)的速率传送帧,则传送的帧 大小会低于接收的帧大小。第二最长恒定速率Rate(2)从U时刻开始,依 照第 一 最长恒定速率 Rate(l)的方式确定,在本实施例中 Rate(2)=[B(t5)-D(t4)]/2T。
判定模块130用于预设帧大小值,并依次判定每个帧的大小是否大 于预设的帧大小值。在本实施例中,帧大小值等于40字节。
设定模块140用于在其中一个帧的大小大于预设的帧大小值时,重
新设定大于预设的帧大小值的帧的大小,以使不同时刻传送的帧的大小
大致一致,从而稳定帧的传送速率。具体为,设定模块140将大于预设
的帧大小值的帧部分加入前一个帧。例如,如果其中一个帧的大小等于
60字节,则设定模块140将大于预设的帧大小值的20字节加入该帧的 前 一 个帧。
传送模块150用于根据最长恒定速率传送全部帧至客户端20。
请参阅图4,所示为本发明帧处理方法的流程图。
在步骤S202中,速率确定模块120确定传送多个帧的最长恒定速 率,以使该最长恒定速率持续的时间间隔最长,并且在该时间间隔内的 不同时刻以最长恒定速率传送的帧大小小于统计的对应时刻接收的最大 帧大小,并大于确定的对应时刻接收的最小帧大小。
如图3所示,最长速率确定子模块1206确定从t。时刻至tt时刻, 为第一最长恒定速率Rate(l)所在的时刻,并且Rate(l)=[D(t4)-D(to)]/4T, 这是由于在时间间隔T、 2T、 3T、 4T内,传送的帧大小T*Rate(l)、 2T*Rate(l)、 3T*Rate(l)、 4PRate(l)均小于对应的最大帧大小B(tJ、 B(t2)、 B(t3)、 B(t4),并大于对应的最小帧大小D(ti)、 D(t2)、 D(t3)、 D(t4), 而在下一个T时间间隔内,如果仍以Rate(l)的速率传送帧,则传送的帧 大小会低于接收的帧大小。第二最长恒定速率Rate(2)从U时刻开始,依 照第 一 最长恒定速率 Rate(l)的方式确定,在本实施例中 Rate(2)=[B(t5)-D(t4)]/2T。在步骤S204中,判定模块130预设帧大小值,并依次判定每个帧 的大小是否大于预i殳的帧大小<i 。如果其中 一 个帧的大小大于预i殳的帧 大小值,则进入步骤S208。如果其中一个帧的大小小于或等于预设的帧 大小值,则进入步骤S210。在本实施例中,判定模块130依次判定每一 帧的大小是否大于40字节。
在步骤S206中,设定模块140重新设定大于预设的帧大小值的帧 的大小。在本实施例中,设定模块140通过将大于预设的帧大小值的帧 部分加入前一个帧的方式设定大于预设的帧大小值的帧的大小于该预设 的帧大小值。例如,如果其中一个帧的大小等于60字节,则设定模块 140将大于预设的帧大小值的20字节加入该帧的前一个帧。
在步骤S208中,判定模块130判定是否所有帧均已处理完毕。如 果并非所有帧均已处理完毕,则过程进入步骤S210。如果所有帧均已处 理完毕,则过程进入步骤S212。
在步骤S210中,转入前一个帧,然后返回步骤S204。
在步骤S212中,传送模块130根据最长恒定速率传送全部帧至客 户端20。在本实施例中,传送模块130在t。至t4时刻以第 一最长恒定速 率Rate(l)、在tt至t6时刻以第二最长恒定速率Rate(2)传送帧至客户端 20。
本发明的网络装置10及其帧处理方法首先通过速率确定模块120 确定传送多个帧的最长恒定速率,使该最长恒定速率不超出客户端20 的緩存所能够接纳的最大速率,接着通过判定模块130依次判定每个帧 的大小是否大于预设的帧大小值,然后通过设定模块140在其中一个帧 的大小大于预设的帧大小值时重新设定大于预设的帧大小值的帧的大 小,最后通过传送模块150根据最长恒定速率传送全部帧至客户端20 来稳定帧恒定速率,从而避免丢包现象发生。
权利要求
1.一种网络装置,与客户端通信连接,其特征在于,所述网络装置包括速率确定模块,用于确定传送多个帧的最长恒定速率;判定模块,用于依次判定所述多个帧的大小是否大于预设的帧大小值;设定模块,用于在其中一个帧的大小大于所述预设的帧大小值时,重新设定大于所述预设的帧大小值的帧的大小;以及传送模块,用于根据所述最长恒定速率传送所述多个帧至所述客户端。
2. 如权利要求1所述的网络装置,其特征在于,所述速率确定模块包括统计子 模块,用于统计传送所述多个帧的时间间隔。
3. 如权利要求2所述的网络装置,其特征在于,所述统计子模块还用于统计在 不同时刻累计传送的帧大小。
4. 如权利要求3所述的网络装置,其特征在于,所述速率确定模块还包括确定 子模块,用于统计所述客户端在不同时刻累计接收的最小帧大小。
5. 如权利要求4所述的网络装置,其特征在于,所述速率确定模块更包括最长 速率确定子模块,用于根据统计的所述客户端在不同时刻累计接收的最小帧大小 以及所述客户端的緩存大小确定所述客户端在不同时刻累计接收的最大帧大小。
6. 如权利要求1所述的网络装置,其特征在于,所述重新设定大于所述预设 的帧大小值是将所述帧大于所述预设的帧大小值的部分加入前一个帧。
7、一种帧处理方法,应用于与客户端通信连接的网络装置中,其特征在于,所述帧处理方法包括确定传送多个帧的最长恒定速率;依次判定所述多个帧的大小是否大于预设的帧大小值;如果其中一个帧的大小大于所述预设的帧大小值,则重新设定大于所述预 设的帧大小值的帧的大小;以及根据所述最长恒定速率传送所述多个帧至所述客户端。
8.如权利要求7所述的帧处理方法,其特征在于,所述确定传送多个帧的最长 恒定速率的步骤包括统计所述客户端在不同时刻累计接收的最小帧大小;根据统计的所述客户端在不同时刻累计接收的最小帧大小以及所述客户端的 缓存大小确定所述客户端在不同时刻累计接收的最大帧大小;以及根据统计的所述客户端在不同时刻累计接收的最小帧大小以及确定的所述客户端在不同时刻累计接收的最大帧大小确定传送所述帧的最长恒定速率。
9.如权利要求7所述的帧处理方法,其特征在于,所述如果所述帧大小大于所 述预设的帧大小值,则重新设定大于所述预设的帧大小值的帧的大小的步骤 是将所述帧大于所述预设的帧大小值的部分加入前一个帧。
全文摘要
一种帧处理方法,应用于与客户端通信连接的网络装置中,所述帧处理方法包括确定传送多个帧的最长恒定速率;依次判定每个帧的大小是否大于预设的帧大小值;如果其中一个帧的大小大于预设的帧大小值,则重新设定大于预设的帧大小值的帧的大小;以及根据最长恒定速率传送多个帧至客户端。本发明还提供一种使用所述帧处理方法的网络装置。上述网络装置及帧处理方法,可稳定帧恒定速率,从而避免丢包现象发生。
文档编号H04L12/28GK101163061SQ20061006303
公开日2008年4月16日 申请日期2006年10月11日 优先权日2006年10月11日
发明者陈建华 申请人:鸿富锦精密工业(深圳)有限公司;鸿海精密工业股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1