CN106487690A - 数据发送方法及装置 - Google Patents
数据发送方法及装置 Download PDFInfo
- Publication number
- CN106487690A CN106487690A CN201610848317.XA CN201610848317A CN106487690A CN 106487690 A CN106487690 A CN 106487690A CN 201610848317 A CN201610848317 A CN 201610848317A CN 106487690 A CN106487690 A CN 106487690A
- Authority
- CN
- China
- Prior art keywords
- multicast
- packet
- address
- multicast group
- group
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/16—Multipoint routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/06—Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services
- H04W4/08—User group management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供一种数据发送方法及装置,涉及互联网技术领域,用以解决现有技术中由于无线路由器会向组播组内的所有组播组成员发送组播数据,浪费了无线路由器大量的Wi‑Fi流量,导致组播组内真正需要组播数据的组播组成员,获取到组播数据的速度较慢的问题。本发明的主要技术方案包括:获取组播数据包;其中,所述组播数据包中包含组播组目的IP地址及组播组目的MAC地址;根据组播组目的IP地址获取组播组内组播组成员对应的MAC地址;将所述组播数据包中的组播组目的MAC地址替换为所述组播组成员对应的MAC地址,生成单播数据包;将所述单播数据包分别发送至所述组播组内的组播组成员。
Description
技术领域
本发明涉及互联网技术领域,尤其涉及一种数据发送方法及装置。
背景技术
随着互连网技术的发展,应用网络的用户也越来越多,特别是应用较为广泛的无线保真(Wireless-Fidelity,Wi-Fi)的应用。当今社会,Wi-Fi网络的使用已经随处可见,例如:一般家庭用户,还是小商户(如餐馆、咖啡馆、网吧等),以及大公司、机场、音乐厅等公共场所,Wi-Fi网络的使用给人们的生活、工作及学习带来了较大便利性。
目前,无线路由器作为Wi-Fi网络信号的转发器,供站点(终端设备,如笔记本电脑、支持Wi-Fi功能的智能手机等等)连接使用Wi-Fi网络。在连接同一Wi-Fi网络的各个站点获取数据时,有时会使用到Wi-Fi网络的组播流量,即连接到Wi-Fi网络上的多个站点同时接收无线路由器发送的同一组播数据。其中,数据的发送者称为组播源,数据接收者称为该数据的组播组,加入同一组播组的接收者称为组播组成员。例如:某公司不同会议室的人员观看同一电视会议等等。
发明人在实现本发明过程中,发现现有技术中无线路由器在基于Wi-Fi网络发送组播数据时,向连接于无线路由器的每一个站点都发送一份组播数据,不管连接于无线路由器的各个站点是否需要该组播数据未在,若确定不需要该组播数据则将其直接丢弃。由于无线路由器会向与其连接的各个站点均发送组播数据,浪费了无线路由器大量的Wi-Fi流量,进而使得导致组播组内该些站点中真正需要组播数据的组播组成员,获取到组播数据的速度较慢。特别是,当连接于同一无线路由器,且不为组播组成员的站点组播组内的组播较多组成员较多,但需要接收组播数据的组播组成员较少时,使得组播组成员接收组播数据的组播组成员获取组播数据的速度较慢,效率较低。
发明内容
本发明实施例提供一种数据发送方法及装置,用以解决现有技术中由于无线路由器会向与其连接的各个站点均发送组播数据,浪费了无线路由器大量的Wi-Fi流量,进而使得组播组内该些站点中真正需要组播数据的组播组成员,获取到组播数据的速度较慢的问题。
一方面,本发明实施例提供一种数据发送方法,包括:
获取组播数据包;其中,所述组播数据包中包含组播组目的IP地址及组播组目的MAC地址;
根据组播组目的IP地址获取组播组内组播组成员对应的MAC地址;
将所述组播数据包中的组播组目的MAC地址替换为所述组播组成员对应的MAC地址,生成单播数据包;
将所述单播数据包分别发送至所述组播组内的组播组成员。
另一方面,本发明实施例提供一种数据发送装置,包括:
第一获取单元,用于获取组播数据包;其中,所述组播数据包中包含组播组目的IP地址及组播组目的MAC地址;
第二获取单元,用于根据所述从第一获取单元获取的组播组目的IP地址获取组播组内组播组成员对应的MAC地址;
替换单元,用于将所述第一获取单元获取的所述组播数据包中的组播组目的MAC地址替换为所述第二获取单元获取的所述组播组成员对应的MAC地址;
生成单元,用于根据所述替换单元将所述组播数据包中的组播组目的MAC地址替换为所述第二获取单元获取的所述组播组成员对应的MAC地址后,生成单播数据包;
发送单元,用于将所述单播数据包分别发送至所述组播组内的组播组成员。
本发明实施例提供的数据发送方法及装置,首先,无线路由器获取组播数据包,根据该组播数据包中包含组播组IP地址确定组播组内待接收数据的组播组成员,获取该待接收数据的组播组成员对应的MAC地址;其次,无线路由器根据组播组目的IP地址获取组播组内组播组成员对应的MAC地址,将所述组播数据包中的组播组目的MAC地址替换为所述组播组成员对应的MAC地址,生成单播数据包;最后,将所述单播数据包分别发送至所述组播组内的组播组成员;与现有技术相比,本发明实施例中无线路由器只向组播组内的组播组成员,定向发送由组播数据包转换的单播数据包,而非是向连接与无线路由器的所有网络设备发送组播数据包,能够节省大量的网络资源,从而提升了组播组内组播组成员获取数据包的速度及效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了本发明实施例提供的一种数据发送方法的流程图;
图2示出了本发明实施例提供的一种组播数据包报头的示意图;
图3示出了本发明实施例提供的一种数据发送装置的组成框图;
图4示出了本发明实施例提供的另一种数据发送装置的组成框图;
图5示出了本发明实施例提供的一种无线路由器的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供一种数据发送方法,该方法应用于无线路由器中,如图1所示,该方法包括:
101、获取组播数据包。
本发明实施例所述的无线路由器,具有组播转发功能,用于接收组播源(即组播数据包发送者)发送的组播数据包,以及将接收到的组播数据包转发至组播组。在无线路由器执行组播之前,接收并获取组播源(即组播数据包发送者)发送的组播数据包,其中,所述组播数据包的报头中至少包含组播组目的IP地址及组播组目的MAC地址;还可以包括组播数据包的版本、类型、端口、存活时间等内容。示例性的,如图2所示,图2示出了本发明实施例提供的一种组播数据包报头的示意图,需要说明的是,图2仅为示例性的举例,本发明实施例对组播数据包的报头中包含的具体内容、对包头内容所占的字节数及具有组播功能无线路由器的具体种类不作限定。
在实际应用中,一个无线路由器中可能记录有多个组播组IP地址,该些组播组IP地址对应的组播组可能是永久的,也可能是临时的;可能是组播组内的一个主机只加入到一个组播组内,也可能是一个主机同时加入到多个组播组内。组播组目的IP地址用于标识一个IP组播组,无线路由器对获取的组播数据包进行解析,可获取组播组目的IP地址,其目的在于,通过该组播组目的IP地址,可从多个组播组对应的IP地址中确认一个目的IP地址,并将获取的数据包发送至组播组目的IP地址内的组播组成员。
102、根据组播组目的IP地址获取组播组内组播组成员对应的MAC地址。
终端设备(主机)向组播源发送加入某个组播组的请求信息,当组播源允许该终端设备(主机)加入某组播组时,由具有组播功能的无线路由器将该终端设备(主机)的IP地址和/或MAC地址等能够唯一标识终端设备(主机)的信息进行记录,以便后续进行组播数据包的发送。加入到组播组的终端设备(主机),可以选择组播组成员身份的继续或者退出。
当终端设备(主机)请求加入组播组后,向无线路由器发送报告报文(report报文),已告知无线路由器该终端设备(主机)已加入组播组。在终端设备(主机)向无线路由器发送report报文时,携带有其自身的唯一标识终端设备(主机)的信息,例如MAC地址等等。无线路由器将终端设备(主机)的MAC地址进行存储,当无线路由器需向组播组内的组播组成员发送组播数据包时,直接从无线路由器的预置存储路径下获取组播组内组播组成员对应的MAC地址的即可。
需要说明的是,在无线路由器进行组播数据包的转发时,依赖于MAC地址,而非是组播组成员的IP地址。IP地址是无线路由器提供的,不同的终端设备(主机)所分配的IP地址不同;而MAC地址是网卡的物理地址,其与网络无关,即无论将带有MAC地址的硬件(如网卡、集线器、无线路由器等)接入到网络的何处,它都有相同的MAC地址,MAC地址一般不可改变,不能由用户设定。
103、将所述组播数据包中的组播组目的MAC地址替换为所述组播组成员对应的MAC地址,生成单播数据包。
在现有技术中,无线路由器在接收到组播源发送的组播数据包后,根据组播组目的IP地址确定组播组后,将组播数据包进行转发,由连接于该无线路由器上的所有终端设备(主机)依次接收该组播数据包;当连接于该无线路由器上的所有终端设备(主机),且不存在组播组内的终端设备(主机)接收到组播数据包后,若确定该组播数据包为其需要的,则将该组播数据包存储、使用;若确定组播数据包不为其所需要的,则将接收到的组播数据包丢弃;既浪费了无线路由器的带宽资源,降低了需要获取组数据包的获取数据包的速度。
为了解决上述问题,无线路由器对组播数据包进行解析,获取其包含的组播组目的MAC地址,并将该组播组目的MAC地址替换为步骤102获取的组播组成员对应的MAC地址,将组播数据包转换为单播数据包。其目的在于,仅向组播组内的组播组成员定向发送数据包,而非是向连接于无线路由器上的所有终端设备(主机)均发送组播数据包,能够节省无线路由器不必要带宽资源的消耗,同时还能够提高需要获取组播数据包的速度。
需要说明的是,所述组播数据包与单播数据包中所包含的数据是相同的,不同点在于,无线路由器在对其转发时的转发次数存在差异。对于单播数据包的转发而言,无线路由器同时给多个的接收者(组播组成员)传输相同的单播数据包,也必须相应的复制多份的相同单播数据包;对于组播数据的转发而言,无线路由器同时给多个的接收者(组播组成员)传输相同的组播数据包,转发一份的相同数据包即可。
104、将所述单播数据包分别发送至所述组播组内的组播组成员。
在实际应用中,本发明实施例所述的组播数据包为组播视频数据包。示例性的,家庭中多台电视使用机顶盒观看同一个电视节目时,组播源可向与该机顶盒连接的无线路由器发送组播视频数据包;或者,某公司不同会议室的人员观看同一电视会议时,不同会议室的主机作为组播组成员,接收无线路由器发送的从组播源获取的组播视频数据包。为了便于理解,本发明实施例以组播数据包为组播视频数据包为例进行说明,但应当明确的是,该种说明方式并非意在限定组播数据包仅能为组播视频数据包;所述组播数据包还可以为文件组播数据包、应用程序(Application,APP)组播数据包等等,本发明实施例在此不再进行一一赘述。
本发明实施例提供的数据发送方法,首先,无线路由器获取组播数据包,根据该组播数据包中包含组播组IP地址确定组播组内待接收数据的组播组成员,获取该待接收数据的组播组成员对应的MAC地址;其次,无线路由器根据组播组目的IP地址获取组播组内组播组成员对应的MAC地址,将所述组播数据包中的组播组目的MAC地址替换为所述组播组成员对应的MAC地址,生成单播数据包;最后,将所述单播数据包分别发送至所述组播组内的组播组成员;与现有技术相比,本发明实施例中无线路由器只向组播组内的组播组成员,定向发送由组播数据包转换的单播数据包,而非是向连接与无线路由器的所有网络设备发送组播数据包,能够节省大量的网络资源,从而提升了组播组内组播组成员获取数据包的速度及效率。
进一步的,作为对上述实施例的细化和扩展,在步骤102根据组播组目的IP地址获取组播组内组播组成员对应的MAC地址时,首先,确定所述组播组成员的数量,并根据所述组播组成员的数量复制相同个数的所述组播数据包;其次,对所述组播数据包进行解析,并获取组播数据包报头中的目的MAC地址;最后,将所述组播数据包报头中的目的MAC地址替换为所述组播组成员对应的MAC地址。
示例性的,若连接于同一无线路由器的终端设备(主机)共有50个,其中有10个终端设备(主机)属于同一组播组,组播组的IP地址为XX.XX.XX.1,当路由器向该组播组转发组播数据包时,分别获取组播组内10个终端设备(主机)的MAC地址,将组播数据包中的组播组目的MAC地址替换为所述组播组成员对应的MAC地址,复制、生成10个单播数据包,并分别发送给组播组内的10个组播组目的MAC地址替换为所述组播组成员对应的MAC地址;而不是向连接于同一无线路由器的50个终端设备(主机)均发送数据包。特别是,当连接于同一路由器上,且属于非组播组成员的终端设备(主机)较多时,通过本发明实施例所述的方式,能够大量的减少无线路由器不必要的带宽资源,又提高了组播组成员获取组播数据包的获取速度。
进一步的,在实际应用中,可能会存在如下情况:组播组内的组播组成员虽然在该组播组内,但是,该组播组成员并不想继续接收无线路由器发送的组播数据包;或者,在无线路由器向该组播组发送组播数据包前,该组播组成员未主动退出该组播组;该些情况下,依然会浪费无线路由器的不必要的网络资源消耗。
为了解决上述问题,无线路由器在组播组目的IP地址向组播组发送组播数据之前,向所述组播组IP地址对应的组播组发送询问信息,所述询问信息用于确定所述组播组内的组播组成员是否接收组播数据;根据所述组播组成员对所述询问信息的响应信息确定所述组播组内待接收数据的组播组成员。在确定组播组内待接收数据的组播组成员之后,仅获取所述组播组内待接收数据的组播组成员对应的MAC地址,并向组播组内待接收数据的组播组成员发送组播数据包转换的单播数据包。因此,在无线路由器对组播数据包进行转发时,无需对未对询问信息进行响应的组播组成员进行发送,进一步减少了无线路由器不必要的带宽消耗,提高待接收数据的组播组成员获取组播数据包的速度
可选的,在无线路由器获取到组播数据包之后,无线路由器通过向组播组内的组播组成员发送询问信息的方式确定组播组内的待接收数据的组播组成员,若组播组成员对无线路由器发送的询问信息进行响应,则确认该组播组成员为待接收数据的组播组成员。在实际应用中,为了让组播组内的组播组成员获取到该组播数据包的内容,在无线路由器向组播组内的组播组成员发送询问信息时,无线路由器对组播数据包进行解析获取该组播数据包的内容简要说明,并将该组播数据包的内容简要说明携带于询问信息中,以便组播组成员确定是否接收组播数据包。
需要说明的是,单播数据包发送的数量与待接收数据的组播组成员的数量一一对应;若单播数据包发送的数量多余待接收数据的组播组成员的数量,则浪费了无线路由器不必要的带宽消耗;若单播数据包发送的数量少于待接收数据的组播组成员的数量,则导致组播组内的部分待接收数据的组播组成员接收不到单播数据包。
在无线路由器启动组播转单播功能,并将组播数据包转换成单播数据包后,大大提高了数据的发送速度,即待接收数据的组播组成员接收数据的速度也明显提高。示例性的,以用户数据报协议(User Datagram Protocol,UDP)为例,假设组播组成员有三台,将组播视频数据包转换为单播数据包后,视频数据包的发送速率可由原来的平均每台3-5Mbps提高到平均每台20Mbps以上,也就是说,可以由原来的流畅播放480p视频提高到流畅播放1080P视频。无线路由器接收组播数据包,并将其进行转发,发送组播数据包的速度理论上,在有干扰的环境下,无线路由器发送组播数据包的的速度可以达到130Mbps左右;在无干扰的环境下,无线路由器发送组播数据包的速度可以达到300Mbps左右。
进一步的,在启动无线路由器组播转发功能之前,需检测并确定无线路由器是否开启组播转单播功能,该组播转单播功能由一个控制按键所控制,若控制按键为开启状态,则说明无线路由器启动组播功能;若控制按键为关闭状态,则说明无线路由器未启动组播功能。在实际应用中,无论无线路由器是否开始组播功能,该无线路由器的用户都无从查觉,组播转单播功能的开启或者关闭是在无线路由器有组播需求时启动的;但是为了确保组播数据转发的及时性,无线路由器默认为组播功能为常开状态。
进一步的,作为对上述图1所示方法的实现,本发明另一实施例还提供了一种数据发送装置。该装置实施例与前述方法实施例对应,为便于阅读,本装置实施例不再对前述方法实施例中的细节内容进行逐一赘述,但应当明确,本实施例中的装置能够对应实现前述方法实施例中的全部内容。
本发明实施例还提供一种数据发送装置,该装置应用于数据的发送装置中,如图3所示,所述装置还包括:
第一获取单元31,用于获取组播数据包;其中,所述组播数据包中包含组播组目的IP地址及组播组目的MAC地址;本发明实施例所述的数据的发送装置,具有组播转发功能,用于接收组播源(即组播数据包发送者)发送的组播数据包,以及将接收到的组播数据包转发至组播组。在数据的发送装置执行组播之前,接收并获取组播源(即组播数据包发送者)发送的组播数据包,其中,所述组播数据包的报头中至少包含组播组目的IP地址及组播组目的MAC地址;还可以包括组播数据包的版本、类型、端口、存活时间等内容;
第二获取单元32,用于根据所述从第一获取单元31获取的组播组目的IP地址获取组播组内组播组成员对应的MAC地址;当终端设备(主机)请求加入组播组后,向数据的发送装置发送报告报文(report报文),已告知数据的发送装置该终端设备(主机)已加入组播组。在终端设备(主机)向就是数据的发送装置发送report报文时,携带有其自身的唯一标识终端设备(主机)的信息,例如MAC地址等等。数据的发送装置将终端设备(主机)的MAC地址进行存储,当数据的发送装置需向组播组内的组播组成员发送组播数据包时,直接从数据的发送装置的预置存储路径下获取组播组内组播组成员对应的MAC地址的即可;
需要说明的是,在数据的发送装置进行组播数据包的转发时,依赖于MAC地址,而非是组播组成员的IP地址。IP地址是数据的发送装置提供的,不同的终端设备(主机)所分配的IP地址不同;而MAC地址是网卡的物理地址,其与网络无关,即无论将带有MAC地址的硬件(如网卡、集线器、数据的发送装置等)接入到网络的何处,它都有相同的MAC地址,MAC地址一般不可改变,不能由用户设定。
替换单元33,用于将所述第一获取单元31获取的所述组播数据包中的组播组目的MAC地址替换为所述第二获取单元32获取的所述组播组成员对应的MAC地址;其目的在于,仅向组播组内的组播组成员定向发送数据包,而非是向连接于数据的发送装置上的所有终端设备(主机)均发送组播数据包,能够节省数据的发送装置不必要带宽资源的消耗,同时还能够提高需要获取组播数据包的速度;
生成单元34,用于根据所述替换单元33将所述组播数据包中的组播组目的MAC地址替换为所述第二获取单元获取的所述组播组成员对应的MAC地址后,生成单播数据包;需要说明的是,所述组播数据包与单播数据包中所包含的数据是相同的,不同点在于,数据的发送装置在对其转发时的转发次数存在差异。对于单播数据包的转发而言,数据的发送装置同时给多个的接收者(组播组成员)传输相同的单播数据包,也必须相应的复制多份的相同单播数据包;对于组播数据的转发而言,数据的发送装置同时给多个的接收者(组播组成员)传输相同的组播数据包,转发一份的相同数据包即可;
发送单元35,用于将所述生成单元34生成的所述单播数据包分别发送至所述组播组内的组播组成员。
进一步的,如图4所示,所述替换单元33包括:
确定模块331,用于确定所述组播组成员的数量;
复制模块332,用于根据所述确定模块331确定的所述组播组成员的数量复制所述组播数据包;
解析模块333,用于对所述组播数据包进行解析;
获取模块334,用于在所述解析模块333对所述组播数据包进行解析过程中,获取组播数据包报头中的组播组目的MAC地址;
替换模块335,用于将所述获取模块334获取的所述组播数据包报头中的组播组目的MAC地址替换为所述组播组成员对应的MAC地址。
进一步的,如图4所示,第二获取单元32包括:
确定模块321,用于根据所述组播组目的IP地址确定组播组内待接收数据的组播组成员;
获取模块322,用于获取所述确定模块321确定的所述组播组内待接收数据的组播组成员对应的MAC地址。
进一步的,如图4所示,所述确定模块321包括:
发送子模块3211,用于向所述组播组IP地址对应的组播组发送询问信息,所述询问信息用于确定所述组播组内的组播组成员是否接收组播数据;
确定子模块3212,用于根据所述组播组成员对是发送子模块3211发送的所述询问信息的响应信息确定所述组播组内待接收数据的组播组成员。
进一步的,如图4所示,所述装置还包括:
确定单元36,用于在所述生成单元生成单播数据包之前,确定是否启动组播转单播功能;
启动单元37,用于当所述确定单元36确定未启动组播转单播功能时,启动所述组播转单播功能;
所述生成单元34,还用于当所述确定单元36确定已启动组播转单播功能时,生成所述单播数据包。
进一步的,所述组播数据包为组播视频数据包。
本发明实施例提供的数据的发送装置,首先,无线路由器获取组播数据包,根据该组播数据包中包含组播组IP地址确定组播组内待接收数据的组播组成员,获取该待接收数据的组播组成员对应的MAC地址;其次,无线路由器根据组播组目的IP地址获取组播组内组播组成员对应的MAC地址,将所述组播数据包中的组播组目的MAC地址替换为所述组播组成员对应的MAC地址,生成单播数据包;最后,将所述单播数据包分别发送至所述组播组内的组播组成员;与现有技术相比,本发明实施例中无线路由器只向组播组内的组播组成员,定向发送由组播数据包转换的单播数据包,而非是向连接与无线路由器的所有网络设备发送组播数据包,能够节省大量的网络资源,从而提升了组播组内组播组成员获取数据包的速度及效率。
需要说明的是,针对上述数据的发送装置,凡是本发明实施例中使用到的各个单元模块的功能都可以通过硬件处理器(hardware processor)来实现。
示例性的,如图5所示,图5示出了本发明实施例提供的一种无线路由器的结构示意图,该服务器可以包括:处理器(processor)51、通信接口(Communications Interface)52、存储器(memory)53和总线54,其中,处理器51、通信接口52、存储器53通过总线54完成相互间的通信。通信接口52可以用于服务器与客户端之间的信息传输。处理器51可以调用存储器53中的逻辑指令,以执行如下方法:获取组播数据包;其中,所述组播数据包中包含组播组目的IP地址及组播组目的MAC地址;获取组播数据包;其中,所述组播数据包中包含组播组目的IP地址及组播组目的MAC地址;根据组播组目的IP地址获取组播组内组播组成员对应的MAC地址;将所述组播数据包中的组播组目的MAC地址替换为所述组播组成员对应的MAC地址,生成单播数据包;将所述单播数据包分别发送至所述组播组内的组播组成员。
此外,上述的存储器53中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (12)
1.一种数据发送方法,其特征在于,包括:
获取组播数据包;其中,所述组播数据包中包含组播组目的IP地址及组播组目的MAC地址;
根据组播组目的IP地址获取组播组内组播组成员对应的MAC地址;
将所述组播数据包中的组播组目的MAC地址替换为所述组播组成员对应的MAC地址,生成单播数据包;
将所述单播数据包分别发送至所述组播组内的组播组成员。
2.根据权利要求1所述的方法,其特征在于,将所述组播数据包中的组播组目的MAC地址替换为所述组播组成员对应的MAC地址包括:
确定所述组播组成员的数量,并根据所述组播组成员的数量复制所述组播数据包;
对所述组播数据包进行解析,并获取组播数据包报头中的组播组目的MAC地址;
将所述组播数据包报头中的组播组目的MAC地址替换为所述组播组成员对应的MAC地址。
3.根据权利要求2所述的方法,其特征在于,根据组播组目的IP地址获取组播组内组播组成员对应的MAC地址包括:
根据所述组播组目的IP地址确定组播组内待接收数据的组播组成员;
获取所述组播组内待接收数据的组播组成员对应的MAC地址。
4.根据权利要求3所述的方法,其特征在于,根据所述组播组目的IP地址确定组播组内待接收数据的组播组成员包括:
向所述组播组IP地址对应的组播组发送询问信息,所述询问信息用于确定所述组播组内的组播组成员是否接收组播数据;
根据所述组播组成员对所述询问信息的响应信息确定所述组播组内待接收数据的组播组成员。
5.根据权利要求1-4中任一项所述的方法,其特征在于,在生成单播数据包之前,所述方法还包括:
确定是否启动组播转单播功能;
若确定未启动组播转单播功能,则启动所述组播转单播功能;
所述生成单播数据包包括:
若确定已启动组播转单播功能,则生成所述单播数据包。
6.根据权利要求5所述的方法,其特征在于,所述组播数据包包括组播视频数据包。
7.一种数据传输装置,其特征在于,包括:
第一获取单元,用于获取组播数据包;其中,所述组播数据包中包含组播组目的IP地址及组播组目的MAC地址;
第二获取单元,用于根据所述从第一获取单元获取的组播组目的IP地址获取组播组内组播组成员对应的MAC地址;
替换单元,用于将所述第一获取单元获取的所述组播数据包中的组播组目的MAC地址替换为所述第二获取单元获取的所述组播组成员对应的MAC地址;
生成单元,用于根据所述替换单元将所述组播数据包中的组播组目的MAC地址替换为所述第二获取单元获取的所述组播组成员对应的MAC地址后,生成单播数据包;
发送单元,用于将所述生成单元生成的所述单播数据包分别发送至所述组播组内的组播组成员。
8.根据权利要求7所述的装置,其特征在于,所述替换单元包括:
确定模块,用于确定所述组播组成员的数量;
复制模块,用于根据所述确定模块确定的所述组播组成员的数量复制所述组播数据包;
解析模块,用于对所述组播数据包进行解析;
获取模块,用于在所述解析模块对所述组播数据包进行解析过程中,获取组播数据包报头中的组播组目的MAC地址;
替换模块,用于将所述获取模块获取的所述组播数据包报头中的组播组目的MAC地址替换为所述组播组成员对应的MAC地址。
9.根据权利要求8所述的装置,其特征在于,第二获取单元包括:
确定模块,用于根据所述组播组目的IP地址确定组播组内待接收数据的组播组成员;
获取模块,用于获取所述确定模块确定的所述组播组内待接收数据的组播组成员对应的MAC地址。
10.根据权利要求9所述的装置,其特征在于,所述确定模块包括:
发送子模块,用于向所述组播组IP地址对应的组播组发送询问信息,所述询问信息用于确定所述组播组内的组播组成员是否接收组播数据;
确定子模块,用于根据所述组播组成员对是发送子模块发送的所述询问信息的响应信息确定所述组播组内待接收数据的组播组成员。
11.根据权利要求7-10中任一项所述的装置,其特征在于,所述装置还包括:
确定单元,用于在所述生成单元生成单播数据包之前,确定是否启动组播转单播功能;
启动单元,用于当所述确定单元确定未启动组播转单播功能时,启动所述组播转单播功能;
所述生成单元,还用于当所述确定单元确定已启动组播转单播功能时,生成所述单播数据包。
12.根据权利要求11所述的装置,其特征在于,所述组播数据包包括组播视频数据包。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610848317.XA CN106487690A (zh) | 2016-09-23 | 2016-09-23 | 数据发送方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610848317.XA CN106487690A (zh) | 2016-09-23 | 2016-09-23 | 数据发送方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106487690A true CN106487690A (zh) | 2017-03-08 |
Family
ID=58268836
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610848317.XA Pending CN106487690A (zh) | 2016-09-23 | 2016-09-23 | 数据发送方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106487690A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018068727A1 (zh) * | 2016-10-13 | 2018-04-19 | 华为技术有限公司 | 直播视频的传输方法、装置和系统 |
CN108667735A (zh) * | 2017-03-29 | 2018-10-16 | 中兴通讯股份有限公司 | 一种组播数据的转发方法和装置 |
WO2019223639A1 (zh) * | 2018-05-21 | 2019-11-28 | 华为技术有限公司 | 无线通信方法和设备 |
CN113709272A (zh) * | 2021-08-26 | 2021-11-26 | 无锡思朗电子科技有限公司 | 一种提高图像切换速度的方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1933385A (zh) * | 2006-09-30 | 2007-03-21 | 中兴通讯股份有限公司 | 无线局域网ip组播帧传输速率动态自调整的实现方法 |
CN101232391A (zh) * | 2007-01-25 | 2008-07-30 | Lg电子株式会社 | 组播数据收发方法 |
US20080186896A1 (en) * | 2007-02-07 | 2008-08-07 | Robert Fanfelle | Wireless multicast proxy |
CN101917670A (zh) * | 2010-05-20 | 2010-12-15 | 中兴通讯股份有限公司 | 一种无线组播数据的传输方法及系统 |
CN102387140A (zh) * | 2011-10-18 | 2012-03-21 | 华为技术有限公司 | 无线局域网络中开展多媒体业务的方法、装置及系统 |
-
2016
- 2016-09-23 CN CN201610848317.XA patent/CN106487690A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1933385A (zh) * | 2006-09-30 | 2007-03-21 | 中兴通讯股份有限公司 | 无线局域网ip组播帧传输速率动态自调整的实现方法 |
CN101232391A (zh) * | 2007-01-25 | 2008-07-30 | Lg电子株式会社 | 组播数据收发方法 |
US20080186896A1 (en) * | 2007-02-07 | 2008-08-07 | Robert Fanfelle | Wireless multicast proxy |
CN101917670A (zh) * | 2010-05-20 | 2010-12-15 | 中兴通讯股份有限公司 | 一种无线组播数据的传输方法及系统 |
CN102387140A (zh) * | 2011-10-18 | 2012-03-21 | 华为技术有限公司 | 无线局域网络中开展多媒体业务的方法、装置及系统 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018068727A1 (zh) * | 2016-10-13 | 2018-04-19 | 华为技术有限公司 | 直播视频的传输方法、装置和系统 |
US11019367B2 (en) | 2016-10-13 | 2021-05-25 | Huawei Technologies Co., Ltd. | Live video transmission method and system, and apparatus |
CN108667735A (zh) * | 2017-03-29 | 2018-10-16 | 中兴通讯股份有限公司 | 一种组播数据的转发方法和装置 |
WO2019223639A1 (zh) * | 2018-05-21 | 2019-11-28 | 华为技术有限公司 | 无线通信方法和设备 |
CN110519172A (zh) * | 2018-05-21 | 2019-11-29 | 华为技术有限公司 | 无线通信方法和设备 |
EP3817309A4 (en) * | 2018-05-21 | 2021-07-14 | Huawei Technologies Co., Ltd. | WIRELESS COMMUNICATION PROCESS AND DEVICE |
CN110519172B (zh) * | 2018-05-21 | 2022-05-13 | 华为技术有限公司 | 无线通信方法和设备 |
US12010018B2 (en) | 2018-05-21 | 2024-06-11 | Huawei Technologies Co., Ltd. | Wireless communication method and device |
CN113709272A (zh) * | 2021-08-26 | 2021-11-26 | 无锡思朗电子科技有限公司 | 一种提高图像切换速度的方法 |
CN113709272B (zh) * | 2021-08-26 | 2024-01-19 | 无锡思朗电子科技有限公司 | 一种提高图像切换速度的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7646739B2 (en) | Multicast routing over unidirectional links | |
CN104509073A (zh) | 在软件定义的网络中发现ip多播组成员 | |
EP1564930B1 (en) | Method of transporting a multipoint stream in a local area network and device for connection implementing the method | |
CN101272520A (zh) | 在系统架构演进中支持多媒体广播组播业务的方法和装置 | |
CN104221326A (zh) | 用于在双向主动测量协议(twamp)实体之间的连接性的可扩展的测量的方法 | |
EP3949468A1 (en) | Apparatus, method and computer program for group communication | |
CN106487690A (zh) | 数据发送方法及装置 | |
EP2991294A1 (en) | Data transmission method, apparatus, and computer storage medium | |
WO2018068588A1 (zh) | 提供组播业务的方法和软件定义网络控制器 | |
CN108768866A (zh) | 组播报文跨卡转发方法、装置、网络设备及可读存储介质 | |
Ciubotaru et al. | Advanced Network Programming–Principles and Techniques: Network Application Programming with Java | |
CN101651609A (zh) | 实现组播负载分担的方法及装置 | |
EP2457348B1 (en) | Efficient host management protocol on multicast capable router | |
CN103716169A (zh) | 点到多点的组播实现方法、网络节点和系统 | |
CN100417141C (zh) | 一种组播业务实现方法 | |
JP2015537454A (ja) | キュースケジューリング方法、装置及びシステム | |
CN110391919A (zh) | 组播流量转发方法、装置、电子设备 | |
Baek et al. | A reliable overlay video transport protocol for multicast agents in wireless mesh networks | |
WO2015131380A1 (zh) | 一种数据处理方法及装置 | |
CN101632261A (zh) | 网络中的全网状速率事务 | |
CN109039675A (zh) | 基于IGMPv2协议的成员离开管理方法及系统 | |
Bartczak et al. | Lightweight PIM—a new multicast routing protocol | |
CN100508467C (zh) | 一种转发层代理pim的方法及路由设备 | |
US20060083240A1 (en) | Broadcasting data over multiple dissimilar wireless networks | |
CN103780503A (zh) | 一种负载均衡的实现方法和设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20170308 |