互联网即时通讯数据的传输方法、装置及系统的制作方法

文档序号:7922986阅读:84来源:国知局
专利名称:互联网即时通讯数据的传输方法、装置及系统的制作方法
技术领域
本发明涉及计算机网络技术,特别地涉及一种互联网即时通讯数据的传输 方法、装置及系统。
背景技术
目前的互联网即时通讯系统中,在进^f亍即时通讯时既有一对一的通讯形 式,也有一对多的通讯形式,即发言者将语音及/或视频数据传输给多个会话参
与人。如图l所示,用户P与用户A、 B、 C进行即时通讯,用户A、 B、 C分 别与用户P有直接连接,用户P发出的语音及/或视频数据同时向用户A、 B、 C传输。
在一对多的通讯方式中,随着参与人数的增多,发言者向参与人传输即时 通讯数据时需要的网络带宽也在增大。以即时语音通讯为例,在网络带宽和语 音编码压缩率不变的情况下,发言者向多个会话参与人发送语音,在会话参与 人的人数到达一定数目时,会话参与人接收的语音会发生延时现象。又如在图 1中,如果用户P向多个用户发送语音及/或^L频凝:据,例如向用户A-E传送语 音及/或视频数据,则该语音及/或视频数据在传输至用户A-E时会发生延时, 语音的传输质量下降。

发明内容
本发明的主要目的是提供一种互联网中的即时通讯数据传输方法、装置及 系统,可解决现有技术中当接收语音^/或视频数据的用户数量增大时即时通讯 数据的传输质量下降的问题。
本发明实施例提供如下的技术方案
一种互联网即时通讯数据传输方法,包括发布终端向中转服务器发送语音及/或视频数据和中转信息,所述中转信息
用于指定接收所述语音及/或视频数据的多个目标终端;
所述中转服务器根据所述中转信息将所述语音及/或视频数据向所述多个 目标终端发送。
一种互if关网即时通讯数据传输系统包括
发布模块,用于发送语音及/或视频数据和中转信息,所述中转信息用于指 定接收所述语音及/或^L频数据的多个目标终端;
中转模块,用于根据所述中转信息将所述语音及/或视频数据向所述多个目 标终端发送。
另 一种互联网即时通讯数据传输系统包括
发布装置及多个终端,其中
所述发布装置用于发送语音及/或视频数据和中转信息,所述中转信息用于
指定接收所述语音及/或一见频数据的所述多个终端;
所述多个终端中的每个终端包括终端接收模块及/或终端中转模块,其中 终端接收模块,用于接收所述语音^/或视频数据和中转信息; 终端中转模块,用于根据所述中转信息将所述语音及/或视频数据向所述多
个终端发送。
一种互联网中转服务器,包括
服务器接收模块,用于接收语音及/或视频数据和中转信息,所述中转信息 用于指定接收所述语音及/或视频数据的多个目标终端;
服务器中转模块,用于根据中转信息确定目标终端,并将所述语音A/或视 频数据向所确定的多个目标终端发送。
一种即时通讯数据发布终端,包括
终端第一发送模块,用于向中转服务器发送语音及/或视频数据; 终端第二发送模块,用于向中转服务器发送中转信息,所述中转信息用于 指定接收所述语音及/或视频数据的多个目标终端。根据本发明实施例中的技术方案,发布终端将语音^/或视频数据向连接的 中转服务器发送,由中转服务器将语音及/或视频数据转发至接收语音及/或视 频数据的目标终端。因为将发布终端向多个目标终端的数据转发任务分配给中 转服务器完成,所以使用本发明实施例的技术方案能够降低发布终端的网络带 宽及资源消耗压力,使得在接收语音及/或视频数据的用户数量增大时仍然能够 保证语音^/或视频数据的传输质量。


图1为现有技术中互联网用户之间语音及/或视频数据传输示意图2为本发明实施例中的方法流程图3A为本发明实施例中的网络结构示意图3B为本发明实施例中另一种网络结构示意图4为本发明第一实施例中互联网即时通讯数据传输系统结构示意图5为本发明第二实施例中互联网即时通讯数据传输系统结构示意图6为本发明第三实施例中互联网即时通讯数据传输系统结构示意图7为本发明实施例中转服务器结构示意图8为本发明实施例中即时通讯数据发布终端结构示意图。
具体实施例方式
在利用互联网进行即时通讯时,发起通讯的终端装置需要将语音A/或视频 数据发送至其他需要接收的终端装置以完成用户之间语音及/或视频的传递。在 本发明实施例中,利用中转服务器接收和转发语音及/或视频数据,具体如图2 所示,包括如下步骤
步骤S23:发布终端向中转服务器发送语音及/或视频数据和中转信息。中 转信息指定了接收语音及/或视频数据的多个目标终端。
中转信息中具体指定哪些目标终端来接收语音及/或视频数据,可以由发布终端选择。用户可以在发布终端选择接收自己所发出语音及/或视频数据的目标 终端的标识信息,在即时通讯系统中,该标识信息可以是用户在该即时通讯系
统中的ID等可用于识别其身份的信息;用户也可以选择接收语音及/或视频数 据的终端装置的网络地址(IP地址或终端装置网卡的MAC (Media Access Control,介质访问控制)地址)。通常即时通讯软件都需要其使用者进行注册, 该即时通讯软件会分配给每个注册用户相应的ID,用户还可为该ID设置相关 信息,如名称、年龄、爱好等,ID及相关信息都将存储在该即时通讯软件的数 据库服务器中。用户通过自己的ID登录后,可根据ID号或相关信息搜索其他 注册用户以进行通讯,还可将其他注册用户添加为自己的好友,即在数据库中 建立多个ID之间的关联。用户需要发起群组通讯时,可将需要参与群组通讯 的多个用户的ID加入到该群组中,在群组通讯时,默认会将群组中一个用户 的语音A/或视频数据以广播方式发送至群组中的其他所有用户。通常,正在参 与一个群组通讯的用户会有其所在群组的成员列表(如成员的ID列表),当用 户有数据需要发送时,会根据该列表将数据发送至各成员。
用户所选择的终端装置的标识信息包含在中转信息中,与语音力或视频数 据一起发送给中转服务器,由此中转服务器在接收到语音及/或视频数据的同时 能够得知应该将哪些终端作为接收语音及/或视频数据目标终端。另外,在群组 通讯中,用户登录通讯服务侧,例如通讯服务器,或者由中转服务器提供通讯 服务,在通讯服务侧即保存参与群组通讯的用户的信息,例如其昵称或ID等 识别信息。以中转服务器提供通讯服务为例,中转服务器保存参与语音^/或视 频数据发送和接收的终端信息,例如群体通讯的用户的信息,有A, B, C, D 四个用户参与群组通讯,则当用户A发言,他将自己的语音及/或视频数据信 息发送到中转服务器时,后者根据该语音及/或视频数据信息来自于A即可判 断该语音及/或视频数据信息是发往群组中其他三个用户,即B、C和D。当然, 用户A同时可在多个群组中,所以在发送数据时还需在数据包中包含群组的标 识信息以识别是发往哪个群组的数据包。所以在这种应用环境中,上述的中转信息也可以是发布终端本身的标识信息,例如IP地址、发布终端网卡的MAC
地址等可在网络中标识发布终端的信息。在使用即时通讯软件进行语音;^/或视 频交互时,每个客户端在向其他客户端发送数据时,都相当于发布终端,而在 接收其他客户端发送的数据时,都相当于目标终端。
步骤S24:所述中转服务器根据所述中转信息将所述语音及/或视频数据向 所述多个目标终端发送。
在步骤S23中,中转服务器已经确定了接收语音及/或视频数据的目标终 端,所以将语音及/或^L频凄t据向这些目标终端发送之后,就完成了用户语音信 息向其他用户的传送。
由于中转服务器分担了发布终端将语音及/或视频数据发送给多个目标终 端的工作,发布终端只需进行相对少量的数据发送工作,在多人群组通讯时, 可极大的降低发布终端的系统资源消耗。而在网络侧的中转服务器的硬件配置 及网络环境能够灵活扩充使得中转服务器具有比发布终端具有更大带宽。
较佳地,发布终端在发送语音及/或视频数据之前,还可包括
发布终端采集语音及/或视频信号。本步骤中的语音及/或视频信号主要是 用户通过麦克风或摄像头等语音或视频输入装置输入至发布终端。
发布终端对采集的语音及/或视频信号进行编码,形成语音及/或视频数据 包。本步骤中,编码一般是由发布终端的软件来完成。语音质量与编码方式的 压缩率成反比,压缩率越大,语音质量越低,压缩所得的数据包体积越小。其 中,视频编码可采用H,264与MPEG4等常用3见频编码算法进行,而音频编码 可釆用G.723.1, G.729A及iLBC (Internet Low Bit Rate Codec)等算法进行。当 目标终端接收到所述语音及/或视频数据后,采用与发布终端相同的编码算法对 数据包进行解码,则可获得相应的语音及/或^L频信号,并可通过目标终端的语 音及/或视频输出设备输出。需要指出的是,在一个通讯群组中,每个终端既可 是发布终端(在需要发送语音及/或视频数据时),也可是目标终端(在需要接 收其他终端发送的语音^/或视频数据时)。在实际网络中,中转服务器不一定与用户指定的所有目标终端直接连接,
例如图3A所示,发布终端TO与中转服务器RS1连接,当发布终端TO需要将 语音传送至终端T1-T5,终端T1、 T2与中转服务器RSI连接,终端T3、 T4 和T5与中转服务器RS2连接。在这种情况下,中转服务器RS1在收到终端 TO发来的语音及/或视频数据和中转信息后,需要先判断自身与中转信息指定 的终端是否连接,然后采取相应的动作。如图3A,例如发布终端TO需要将语 音及/或视频数据传送至目标终端Tl,则发布终端TO先将语音及/或视频数据 传送至中转服务器RS1并在中转信息中指定了终端Tl接收语音及/或视频数 据,中转服务器RS1则判断自身是否与目标终端Tl连接,在本例中,中转服 务器RS1与终端Tl连接,则中转服务器RS1将语音及/或视频数据向终端Tl 发送。又如,图3A中,发布终端T0需要将语音及/或视频数据传送至目标终 端T3,则中转服务器RS1在收到发布终端Tl发送的语音及/或视频数据和中 转信息后,判断得出自身没有与发布终端Tl指定的目标终端T3连接,在这种 情况下,中转服务器RS1需要查找与目标终端T3连接的中转服务器,例如查 找得到中转服务器RS2,则中转服务器RS1将发布终端Tl发送的语音及/或视 频数据和中转信息转发至中转服务器RS2,中转服务器RS2根据收到的中转信 息,将收到的语音及/或视频数据转发至目标终端T3。再如,发布终端T0需要 将语音及/或视频数据发送至目标终端T1-T5,则中转服务器RS1在收到发布终 端T0发送的语音A/或视频数据和中转信息后,判断得出自身与目标终端Tl 、 T2连接,而未与终端T3-T5连接。于是将语音及/或视频数据发往终端Tl、 T2, 而且查得中转服务器RS2与T3-T5连接,所以中转服务器RS1将终端T0发送 的语音及/或视频数据和中转信息转发至中转服务器RS2,由后者进一步发往终 端T3-T5。较佳地,所述中转服务器可通过终端连接列表来确定与自身连接的 终端,该终端连接列表中可记录与该中转服务器连接的终端的标识信息(IP地 址或MAC地址等),当接收到发布终端所发送的中转信息时,查找该终端连接 列表中是否有中转信息中所包含的目标终端,如有,则说明该中转服务器与所述目标终端有连接。当中转信息中指定的目标终端与中转服务器连接时,将语 音及/或视频数据发送至该目标终端。
当中转服务器未与中转信息中的目标终端连接时,中转服务器可查找与所 述目标终端连接的其他中转服务器,并将所述语音及/或视频数据和所述中转信 息发送至所述其他中转服务器,所述其他中转服务器^f艮据所述中转信息将所迷 语音及/或视频数据向所述目标终端传输。
较佳地,中转服务器还可通过终端路由列表来确定到达未与自身连接的终 端的路径,该终端路由列表中可记录通过其他中转服务器能到达的终端,例如,
在图3A中,中转服务器RS1中可存储一个终端路由列表,其中记录了通过与 自己连接的另一个中转服务器RS2可到达终端T3及T4的路由信息。当然, 终端路由列表中也可存储通过未与自身连接的 一个或多个中转服务器才能到 达的终端,例如,RS1的终端路由列表可存储如下路由信息通过RS4可达到 RS3,通过RS3可到达终端T6。
为了减轻中转服务器的带宽压力,发布终端也可以将语音及/或视频数据直 接发往一个或多个目标终端,如图3B所示,终端T0与终端T6、 T7和T8连 接,而终端T6、 T7和T8与中转服务器RS1也连接。当终端TO向终端Tl-T8 发送语音及/或视频数据时,可以全部通过中转服务器RS1转发,也可以通过 预定规则选择一个或多个终端,向其直接发送语音及/或视频数据,比如在发布 终端有足够的网络带宽时,可选择与其连接速度较快的目标终端,直接向这些 目标终端传输数据,而其他需要接收数据的目标终端则通过中转服务器获取数 据。这样中转服务器RS1只需向较少数目的终端转发语音及/或视频数据,从 而带宽压力较低。当终端TO选择向连接的其他终端发送语音及/或视频数据时, 可以根据与其他终端之间的网络连接状况来选择终端。例如,当终端TO需要 向终端Tl-T8传输语音及/或视频数据时,终端TO检测与终端T6、 T7及T8 的数据传输速率分别为2Mb/S、 1Mb/S和1.8Mb/S,则选择其中传输速率较快 的两个终端,即终端T6和终端T8,于是终端TO直接向终端T6、 T8传输数据,并将除去自身已直接发送了数据的目标终端以外的需接收语音及/或视频数据
的目标终端列入中转信息中,即终端T1-T5以及T7将被列入中转信息中,其 将从中转服务器获取数据。
在终端T0检测与其他终端之间的数据传输速率时,可以使用专门的测试 数据包,也可用语音及/或视频数据本身作为测试数据包,以节省网络带宽。在 上例中,终端T0需要测试与终端T6-T8之间的网络连接状况,则向终端T6-T8 发送语音及/或视频数据包,终端T6-T8在收到后向终端T0发送响应数据包, 终端TO根据发送语音及/或视频数据包与收到终端T6-T8发出的相应的响应数 据包之间的时间间隔就可以得出与终端T6-T8之间的网络连接状况,当所述时 间间隔低于预设的阈值时,则说明两个终端之间的网络连接状况较好,根据网 络连接状况,在本例中选择了终端T6和T8直接接收终端T0发送的语音A/ 或视频数据。
终端TO发送的语音及/或视频数据的编码过程,可以根据语音A/或视频数 据的传输成功率,对编码的数据压缩率作出调整,不同的编码有不同的数据压 缩率,数据压缩率越高,则压缩获得的数据包体积越小,但语音及/或视频的质 量越低;反之,获得的数据包体积越大,但语音及/或视频的质量越高。当终端 TO向连接的其他终端例如终端T6和T8发送语音及/或视频数据时,检测与终 端T6和T8之间的数据包传输成功率,若该成功率在设定的阈值范围内,则和 终端T6和T8发送语音及/^y见频数据,即不调整当前编码的数据压缩率。另 一方面,如果终端T0与终端T6和T8之间的数据包传输成功率低于设定的阈 值范围,则要提高编码的数据压缩率,反之可保持或降低编码的数据压缩率, 以获得更好的通讯质量。当采用不同的编码算法或压缩率进行编码时,需在数 据包里面加入一个标识,用以区分不同的编码算法或压缩率,这样,目标终端 才能采用相应的编码算法正确解码。
则较佳地,所述发布终端向所述的至少一个终端发送语音及/或^L频数据之 前进一步包括发布终端采集语音及/或视频信号并进行编码;所述发布终端向所述一个或多个目标终端发送语音及/或3见频数据包括 发布终端检测与连接的目标终端之间的数据包传输成功率; 若所述成功率低于设定的阈值范围,则提高所述编码的压缩率,然后向所 述连接的终端发送语音及/或视频数据。
如果经测试,能够在接收语音数据的终端侧清晰地辨识语音,或所接收到 的视频数据较流畅,则还可以适当增加直接接收发布终端T0发送的语音A/或 视频数据的目标终端。例如本例中,目标终端T7直接接收发布终端TO发送的 语音及/或视频数据,并停止从中转服务器RS1接收转发的语音及/或视频数据。 如果终端侧收到的语音数据在网络传输时数据包丢失严重,使得语音不易辨 识,则应当适应减少直接接收终端TO发送的语音及/或视频数据的终端数,例 如将终端T7改为接收中转服务器RS1转发的语音及/或视频数据,或者将终端 T6或T8改为接收中转服务器RS1转发的语音及/或视频数据。以上的方法都 是调整接收语音及/或视频数据的目标终端的分配,分配的一部分由发布终端 TO直接发送语音及/或视频数据,另 一部分由中转服务器RS1转发语音及/或视 频数据。这样能够合理地利用网络带宽,提供尽可能好的语音及/或视频数据传 输质量。
如图3B所示,如果另有终端T10需要接收终端TO发出的语音及/或视频 数据,例如在语音或视频会议中,有新的听众加入,则终端T10可以从连接的 终端T6接收语音^J或视频数据,终端T6提供这种中转的前提是终端T6的带 宽足够宽,例如大于设定的阈值,以保证与终端T10的语音及/或视频数据传 输质量。在实际运用中,所述中转服务器与所述目标终端可为同一个物理终端。
较佳地,所述中转服务器可以为需要接收发布终端所发送数据的目标终 端,即一个终端可作为目标终端接收发布终端发送的语音及/或视频数据,同时 还可作为中转服务器根据从发布终端接收到的中转信息将所述语音及/或视频 数据向其他目标终端发送,此时,目标终端与中转服务器在同一个物理终端上, 例如在同一台电脑上。基于上述方法,本发明实施例中提供若干种系统及装置。
如图4所示,是本发明实施例提供的互联网即时通讯数据传输系统40,包

发布模块41,用于发送语音及/或视频数据和中转信息,所述中转信息用 于指定接收所述语音及/或视频数据的多个目标终端;
中转模块42,用于根据所述中转信息将所述语音及/或视频数据向所述多 个目标终端发送。
当所述中转模块42与目标终端连接时,则可直接将所述语音及/或视频数 据发送至目标终端。则较佳地,所述中转模块42可包括
判断单元,用于通过终端连接列表来确定与其连接的终端,该终端连接列 表中记录与该中转模块42连接的终端的标识信息;
第一发送单元,用于当中转信息中指定的目标终端与中转模块42连接时, 将语音及/或视频数据发送至该目标终端。
当所述中转模块42未与目标终端连接时,可将所述语音及/或视频数据发 送至与目标终端连接的其他中转模块42。则较佳地,所述中转模块42可包括
查找单元,用于当所述中转信息中指定的目标终端未与所述中转模块42 连接时,查找与所述目标终端连接的其他中转模块42;
第二发送单元,用于将所述语音A/或视频数据和所述中转信息发送至所述 其他中转模块42。
较佳地,所述查找单元可包括
存储子单元,用于存储终端路由列表,该终端路由列表中记录通过其他中 转模块42所能到达的终端的标识信息;
查询子单元,用于通过终端路由列表来确定到达未与自身连接的终端的路径。
当所述发布模块所在装置的网络带宽或处理资源较充足时,可直接向一个 或多个目标终端发送语音及/或视频数据。则较佳地,所述系统40还可包括直接发送模块43,用于直接向一个或多个目标终端发送语音及/或视频数据。
较佳地,所述直接发送模块43可包括
检测单元,用于检测所述装置与连接的目标终端之间的数据传输速率; 选取单元,用于按速率由高到低选取设定数目的目标终端; 第三发送单元,用于将所述语音及/或视频数据向选取的一个或多个目标终 端发送。
较佳地,所述;f企测单元可包括
接收子单元,用于向连接的目标终端发送语音及/或视频数据包,并接收目 标终端返回的响应数据包;
计算子单元,用于根据所述接收子单元发送语音及/或视频数据包与接收到 所述响应数据包之间的时间间隔得出所述数据传输速率。
在对语音及/或视频信号进行编码时,可根据网络传输速率选择不同的编码 方式或压缩率,以在数据传输速率及通讯质量之间获得平衡。则较佳地,所述 系统40还可包括
编码模块45,用于采集语音及/或视频信号并进行编码;
测试模块46,用于检测与连接的目标终端之间的数据包传输成功率,若所 述成功率低于设定的阈值范围,则提高所述编码的压缩率,然后向所述连接的 终端发送语音及/或视频数据。
较佳地,所述直接发送模块43还可进一步用于
判断自身网络带宽是否大于设定的阈值,若是,则向所述一个或多个目标 终端发送语音及/或一见频数据。
较佳地,所述系统40还可包括
中转信息确认模块44,用于将除去自身已直接发送了数据的目标终端以外 的需接收语音及/或^L频数据的目标终端列入中转信息。
如图5所示,较佳地,所述发布模块41可位于所述系统40中的发布终端,而所述中转模块42位于所述系统40中的中转服务器。
如图6所示,本发明实施例还提供一种互联网即时通讯数据传输系统60, 包括
发布装置61及多个终端62(在不同实施例中,终端62有不同构成,在图 6中分别标识为62a画d),其中
所述发布装置61用于发送语音及/或视频数据和中转信息,所述中转信息 用于指定接收所述语音及/或^L频数据的所述多个终端;
所述多个终端62中的每个终端包括终端接收模块及/或终端中转模块,其

终端接收模块63,用于接收所述语音及/或视频数据和中转信息; 终端中转模块64,用于根据所述中转信息将所述语音及/或视频数据向所 述多个终端发送。
在该系统60中,所述终端62既是一个目标终端,用于接收发布终端发出 的语音及/或视频数据,同时也是一个中转服务器,用于根据中转信息将语音及 /或视频数据转发给其他目标终端。
如图6中所示,终端62可有不同构成,62a-d,终端62a既可用于接收发 布终端发出的语音及/或视频数据,同时也可根据中转信息将语音及/或视频数 据转发给其他终端。终端62b及62d则仅用于接收发布终端发出的语音及/或视 频数据。终端62c则相当于前述的中转服务器,仅用于根据中转信息将语音及 /或视频数据转发给其他终端。
上述的中转服务器RS1和RS2的一种内部结构如图7中所示的中转服务 器70的结构,包括了服务器接收模块71和服务器中转模块72。服务器接收模 块71用于接收语音及/或视频数据和中转信息,该中转信息用于指定接收该语 音及/或视频数据的多个目标终端。这里的语音及/或视频数据和中转信息同时 来自于发布终端,例如图3中的终端T0。服务器中转模块72用于根据中转信 息确定目标终端,并将所述语音及/或视频数据向所确定的多个目标终端发送。例如在图3A中,终端TO需要将语音及/或视频数据传送至终端Tl和终端T2, 则服务器中转模块72根据终端T0发送的中转信息确定目标终端就是终端Tl 和终端T2,并将语音及/或视频数据向目标终端发送。
较佳地,所述服务器中转模块72的一种结构是包括
服务器判断单元,用于通过终端连接列表来确定与其连接的终端,该终端 连接列表中记录与该中转服务器连接的终端的标识信息;及服务器第 一发送单 元,用于当中转信息中指定的目标终端与中转服务器连接时,将所述语音及/ 或视频数据向所述目标终端发送。
较佳地,所述服务器中转模块72的另一种结构是包括
服务器查找单元,用于当所述中转信息中指定的目标终端未与所述中转服 务器连接时,查找与所述目标终端连接的其他中转服务器;及服务器第二发送 单元,用于将所述语音及/或视频数据和所述中转信息发送至所述其他中转服务 器。
较佳地,服务器查找单元的一种内部结构可以是包括
服务器存储子单元,用于存储终端路由列表,该终端路由列表中记录通过 其他中转服务器所能到达的目标终端的标识信息;及服务器查询子单元,用于 通过终端路由列表来确定到达未与自身连接的目标终端的路径。
下面说明本发明实施例中发送语音及/或视频数据的终端例如终端T0的结 构。如图8所示,本发明实施例中的即时通讯数据发布终端80包括终端第一 发送模块81和终端第二发送模块82。终端第一发送模块81用于向中转服务器 发送语音及/或视频数据。终端第二发送模块82用于向中转服务器发送中转信 息,该中转信息用于指定接收语音及/或视频数据的多个目标终端。所述中转服 务器与所述目标终端在物理上可为一体,例如在同一台电脑中。
即时通讯数据发布终端80还可以包括终端第三发送模块83,用于直接向 与即时通讯数据发布终端80连接的一个或多个目标终端发送语音及/或视频数 据。终端第三发送模块83的一种内部结构可包括终端检测单元、终端选取单元和终端发送单元。终端检测单元用于检测即
时通讯数据发布终端80与连接的目标终端之间的数据传输速率。终端选取单 元用于按速率由高到低选取设定数目的目标终端。终端发送单元用于将语音及 /或视频数据向选取的一个或多个目标终端发送。
较佳地,对于终端检测单元,它的一种内部结构是包括 终端接收子单元,用于向连接的目标终端发送语音及/或视频数据包,并接 收目标终端返回的响应tt据包;及终端计算子单元,用于根据所述终端接收子 单元发送语音及/或视频数据包与接收到所述响应数据包之间的时间间隔得出 所述数据传输速率。
在本发明实施例中,采用中转服务器对发布终端发出的语音及/或视频数据 进行转发,其减轻了发布终端向多个目标终端转发数据的压力,利用中转服务 器较大的带宽来保证即时通讯数据传输质量,同时对于没有与该中转服务器连 接的终端,能够利用中转服务器之间属于局域网内的中转操作使语音及/或视频 数据到达这些终端。为了减轻中转服务器的带宽压力,发出语音及/或视频数据 的终端也可以将语音及/或视频数据直接发送至其他终端。通过检测终端之间的 连接速率以及语音及/或视频数据传输成功率,能够适当分配接收语音及/或视 频数据的终端,使网络的带宽能够合理利用,从而进一步保证语音的传输质量。 此外,终端装置在收到语音及/或视频数据后,能够根据网络带宽选择向其他终 端转发语音及/或视频数据,从而扩大了语音及/或视频数据的传播范围,适用 于例如会议等参与人数较多且人数不固定的应用场合。
明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及 其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
权利要求
1、一种互联网即时通讯数据传输方法,其特征在于,包括发布终端向中转服务器发送语音及/或视频数据和中转信息,所述中转信息用于指定接收所述语音及/或视频数据的多个目标终端;所述中转服务器根据所述中转信息将所述语音及/或视频数据向所述多个目标终端发送。
2、 根据权利要求1所述的方法,其特征在于,所述中转服务器根据所述 中转信息将所述语音及/或视频数据向所述多个目标终端发送,包括中转服务器通过终端连接列表来确定与其连接的终端,该终端连接列表中 记录与该中转服务器连接的终端的标识信息;当中转信息中指定的目标终端与中转服务器连接时,将语音A/或视频数据 发送至该目标终端。
3、 根据权利要求1所述的方法,其特征在于,所述中转服务器根据所述 中转信息将所述语音及/或视频数据向所述多个目标终端发送,包括当所述中转信息中指定的目标终端未与所述中转服务器连接时,所述中转 服务器查找与所述目标终端连接的其他中转服务器,并将所述语音^/或视频数 据和所述中转信息发送至所述其他中转服务器,所述其他中转服务器根据所述 中转信息将所述语音及/或视频数据向所述目标终端传输。
4、 根据权利要求3所述的方法,其特征在于,所述查找与所述目标终端 连接的其他中转服务器包括中转服务器通过终端路由列表来确定到达未与自身连接的终端的路径,该 终端路由列表中记录通过其他中转服务器所能到达的终端的标识信息。
5、 根据权利要求1所述的方法,其特征在于,所述方法进一步包括 所述发布终端直接向一个或多个目标终端发送语音及/或视频数据。
6、 根据权利要求5所述的方法,其特征在于,所述方法进一步包括 所述发布终端将除去自身已直接发送了数据的目标终端以外的需接收语音及/或视频数据的目标终端列入中转信息。
7、 根据权利要求5或6所述的方法,其特征在于,所述发布终端直接向 一个或多个目标终端发送语音及/或视频数据包括发布终端检测与连接的目标终端之间的数据传输速率,按该速率由高到低 选取一个或多个目标终端;发布终端向选取的一个或多个目标终端发送语音及/或碎见频数据。
8、 根据权利要求7所述的方法,其特征在于,所述发布终端检测与连接 的目标终端之间的数据传输速率包括发布终端向连接的目标终端发送语音及/或视频数据包; 所述连接的目标终端收到所述语音及/或视频数据包之后向发布终端发送 响应数据包;发布终端根据发送所述语音及/或视频数据包与接收到所述响应数据包之 间的时间间隔得出所述数据传输速率。
9、 根据权利要求7所述的方法,其特征在于所述发布终端向所述的至少 一个终端发送语音及/或视频数据之前进一步 包括发布终端采集语音及/或视频信号并进行编码;所述发布终端向所述一个或多个目标终端发送语音及/或视频数据包括若所述成功率低于设定的阈值范围,则提高所述编码的压缩率,然后向所 述连接的终端发送语音及/或^见频数据。
10、 根据权利要求7所述的方法,其特征在于,所述发布终端直接向所述 一个或多个目标终端发送语音及/或视频数据包括所述发布终端判断自身网络带宽是否大于设定的阈值,若是,则向所述一 个或多个目标终端发送语音及/或视频数据。
11、 一种互联网即时通讯数据传输系统,其特征在于,包括 发布模块,用于发送语音及/或视频数据和中转信息,所述中转信息用于指定接收所述语音及/或^L频数据的多个目标终端;中转模块,用于根据所述中转信息将所述语音及/或视频数据向所述多个目 标终端发送。
12、 根据权利要求11所述的系统,其特征在于,所述中转模块包括 判断单元,用于通过终端连接列表来确定与其连接的终端,该终端连接列表中记录与该中转4莫块连4妄的终端的标识信息;第一发送单元,用于当中转信息中指定的目标终端与中转模块连接时,将 语音及/或视频数据发送至该与中转模块连接的目标终端。
13、 根据权利要求11所述的系统,其特征在于,所述中转模块包括 查找单元,用于当所述中转信息中指定的目标终端未与所述中转模块连接时,查找与所述目标终端连接的其他中转模块;第二发送单元,用于将所述语音A/或-现频数据和所述中转信息发送至所述 其他中转模块。
14、 根据权利要求13所述的系统,其特征在于,所述查找单元包括 存储子单元,用于存储终端路由列表,该终端路由列表中记录通过其他中转模块所能到达的终端的标识信息;查询子单元,用于通过终端路由列表来确定到达未与自身连接的终端的路径。
15、 根据权利要求11所述的系统,其特征在于,还包括 直接发送模块,用于直接向一个或多个目标终端发送语音A/或3见频数据。
16、 根据权利要求15所述的系统,其特征在于,还包括 中转信息确认模块,用于将除去自身已直接发送了数据的目标终端以外的需接收语音及/或视频数据的目标终端列入中转信息。
17、 根据权利要求15或16所述的系统,其特征在于,所述直接发送^^块 包括检测单元,用于检测所述装置与连接的目标终端之间的数据传输速率;选取单元,用于按速率由高到低选取设定数目的目标终端; 第三发送单元,用于将所述语音及/或视频数据向选取的一个或多个目标终 端发送。
18、 根据权利要求17所述的系统,其特征在于,所述检测单元包括 接收子单元,用于向连接的目标终端发送语音及/或视频数据包,并接收目标终端返回的响应数据包;计算子单元,用于根据所述接收子单元发送语音及/或视频数据包与接收到 所述响应数据包之间的时间间隔得出所述数据传输速率。
19、 根据权利要求17所述的系统,其特征在于,还包括 编码模块,用于采集语音及/或视频信号并进行编码;测试模块,用于检测与连接的目标终端之间的数据包传输成功率,若所述 成功率低于设定的阈值范围,则提高所述编码的压缩率,然后向所述连接的终 端发送语音及/或视频数据。
20、 根据权利要求17所述的系统,其特征在于,所述直接发送模块进一 步用于判断自身网络带宽是否大于设定的阈值,若是,则向所述一个或多个目标 终端发送语音及/或视频数据。
21、 根据权利要求ll、 12、 13、 14、 15、 16、 18、 19或20项所述的系统, 其特征在于所述发布模块位于发布终端; 所述中转模块位于中转服务器。
22、 一种互联网即时通讯数据传输系统,其特征在于,包括 发布装置及多个终端,其中所述发布装置用于发送语音^l/或一见频数据和中转信息,所述中转信息用于 指定接收所述语音及/或^见频数据的所述多个终端;所述多个终端中的每个终端包括终端接收模块及/或终端中转模块,其中终端接收模块,用于接收所述语音及/或视频数据和中转信息; 终端中转模块,用于根据所述中转信息将所述语音及/或视频数据向所述多 个终端发送。
23、 一种互联网中转服务器,其特征在于,包括服务器接收模块,用于接收语音及/或视频数据和中转信息,所述中转信息 用于指定接收所述语音及/或视频数据的多个目标终端;服务器中转模块,用于根据中转信息确定目标终端,并将所述语音及/或视 频数据向所确定的多个目标终端发送。
24、 如权利要求23所述的服务器,其特征在于,所述服务器中转模块包括服务器判断单元,用于通过终端连接列表来确定与其连接的终端,该终端 连接列表中记录与该中转服务器连接的终端的标识信息;服务器第 一发送单元,用于当中转信息中指定的目标终端与中转服务器连 接时,将所述语音及/或视频数据向所述连接的目标终端发送。
25、 如权利要求23所述的服务器,其特征在于,所述服务器中转模块包括服务器查找单元,用于当所述中转信息中指定的目标终端未与所述中转服 务器连接时,查找与所述目标终端连接的其他中转服务器;服务器第二发送单元,用于将所述语音及/或视频数据和所述中转信息发送至所述其他中转服务器。
26、 如权利要求25所述的服务器,其特征在于,所述服务器查找单元包括服务器存储子单元,用于存储终端路由列表,该终端路由列表中记录通过 其他中转服务器所能到达的目标终端的标识信息;服务器查询子单元,用于通过终端路由列表来确定到达未与自身连接的目 标终端的路径。
27、 一种即时通讯数据发布终端,其特征在于,包括 终端第一发送模块,用于向中转服务器发送语音及/或视频数据; 终端第二发送模块,用于向中转服务器发送中转信息,所述中转信息用于指定接收所述语音及/或视频数据的多个目标终端。
28、 如权利要求27所述的终端,其特征在于,进一步包括 终端第三发送模块,用于直接向与所述装置连接的一个或多个目标终端发送语音及/或视频数据。
29、 如权利要求28所述的终端,其特征在于,所述终端第三发送模块包括终端检测单元,用于检测所述装置与连接的目标终端之间的数据传输速率;终端选取单元,用于按速率由高到低选取设定数目的目标终端; 终端发送单元,用于将所述语音及/或视频数据向选取的一个或多个目标终 端发送。
30、 如权利要求29所述的终端,其特征在于,所述终端检测单元包括 终端接收子单元,用于向连接的目标终端发送语音及/或视频数据包,并接收目标终端返回的响应数据包;终端计算子单元,用于根据所述终端接收子单元发送语音^/或一见频数据包 与接收到所述响应数据包之间的时间间隔得出所述数据传输速率。
全文摘要
本发明提供一种互联网中的语音传输方法、装置及系统。所述方法包括发布终端向中转服务器发送语音及/或视频数据和中转信息,所述中转信息用于指定接收所述语音及/或视频数据的多个目标终端;所述中转服务器根据所述中转信息将所述语音及/或视频数据向所述多个目标终端发送。
文档编号H04L12/58GK101420390SQ200810185838
公开日2009年4月29日 申请日期2008年12月18日 优先权日2008年12月18日
发明者凯 王, 强 王, 栋 王, 罗海江 申请人:深圳市迅雷网络技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1