CN107426263A - 数据包的发送、接收方法及装置、电子设备 - Google Patents
数据包的发送、接收方法及装置、电子设备 Download PDFInfo
- Publication number
- CN107426263A CN107426263A CN201610353279.0A CN201610353279A CN107426263A CN 107426263 A CN107426263 A CN 107426263A CN 201610353279 A CN201610353279 A CN 201610353279A CN 107426263 A CN107426263 A CN 107426263A
- Authority
- CN
- China
- Prior art keywords
- packets
- raw
- ethernet data
- packet
- data bag
- 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.)
- Withdrawn
Links
- 238000000034 method Methods 0.000 title claims abstract description 57
- 238000005538 encapsulation Methods 0.000 claims abstract description 21
- 238000010586 diagram Methods 0.000 description 16
- 230000008569 process Effects 0.000 description 9
- RTZKZFJDLAIYFH-UHFFFAOYSA-N Diethyl ether Chemical compound CCOCC RTZKZFJDLAIYFH-UHFFFAOYSA-N 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 239000000203 mixture Substances 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/40—Support for services or applications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/565—Conversion or adaptation of application format or content
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/45—Network directories; Name-to-address mapping
- H04L61/4505—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
- H04L61/4511—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5007—Internet protocol [IP] addresses
- H04L61/5014—Internet protocol [IP] addresses using dynamic host configuration protocol [DHCP] or bootstrap protocol [BOOTP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供了一种数据包的发送、接收方法及装置、电子设备,其中,该方法包括:获取Mac设备待发送的以太网数据包;将所述以太网数据包封装成原始Raw IP数据包;发送封装后的所述Raw IP数据包,解决了相关技术中Raw Ip帧格式的数据不能在Mac系统上无法使用的问题。
Description
技术领域
本发明涉及通信领域,具体而言,涉及一种数据包的发送、接收方法及装置、电子设备。
背景技术
相关技术中,Mac机器是一类使用mac操作系统(也叫OS X系统)的设备,是苹果公司专属,在市场上主要区分于使用比较广泛的安装windows操作系统的设备,Mac机器和网络上的数据都是以太网包,而现在原始Raw Ip的概念推出后,越来越多的机器和设备已经支持Raw Ip frame。比如windows从win7开始支持Raw Ip协议,但是现有的Mac机器并不支持Raw Ip,所以会存在这样的问题,设备和windows都支持Raw Ip,设备可以在windows上正常联网,但是在Mac上无法使用。
相关技术中,无线数据卡可以虚拟出各种无线网卡,通过虚拟无线网卡进行联网。而在Mac电脑上的无线数据卡通过三种方式可以进行联网。Modem(调制解调器)方式、网络驱动接口规范(Network Driver Interface Specification,简称为Ndis)方式和以太网控制模型(Ethernet Control Model,简称为ECM)方式。其中Modem方式比较常见,也是速率最低的;Ndis方式都是走的Ethernet frame(以太网帧)格式,并不支持Raw Ip frame的格式;ECM则使用了系统驱动。
相关技术中存在如下问题:如果设备是支持Raw Ip frame的格式,那么只能在windows下使用。
针对相关技术中存在的上述问题,目前尚未发现有效的解决方案。
发明内容
本发明实施例提供了一种数据包的发送、接收方法及装置、电子设备,以至少解决相关技术中Raw Ip帧格式的数据不能在Mac系统上无法使用的问题。
根据本发明的一个实施例,提供了一种数据包的发送方法,包括:获取Mac设备待发送的以太网数据包;将所述以太网数据包封装成原始Raw IP数据包;发送封装后的所述Raw IP数据包。
可选地,将所述以太网数据包封装成Raw IP数据包包括:去掉所述以太网数据包的以太网包头得到第一数据包;在所述第一数据包上添加头字节和填充字节,组成第二数据包;将一个或多个所述第二数据包进行组合得到所述Raw IP数据包。
可选地,在所述第一数据包上添加头字节和填充字节包括:在所述第一数据包的包头添加头字节,在所述第一数据包的包尾添加填充字节。
可选地,所述第二数据包的总长度为4字节的整数倍。
可选地,所述以太网包头包括:目的地址destination address、源地址sourceaddress、协议格式type。
可选地,在将所述以太网数据包封装成Raw IP数据包之前,所述方法还包括:判断所述以太网数据包的格式;在所述以太网数据包的格式是IPV4协议或IPV6协议时,确定将所述以太网数据包封装成Raw IP数据包。
可选地,在所述以太网数据包的格式是地址解析协议ARP时,判断所述以太网数据包所请求的IP地址是否为所述Mac设备的IP地址;在判断结果为否时,发送所述以太网数据包所请求的IP地址,和/或,在判断结果为是时,放弃发送所述以太网数据包所请求的IP地址。
可选的,在将所述以太网数据包封装成原始Raw IP数据包之前,所述方法还包括:判断所述以太网数据包的接收端是否支持所述以太网数据包;在判断结果为否时,确定将所述以太网数据包封装成原始Raw IP数据包。
根据本发明的一个实施例,提供了一种数据包的接收方法,应用在Mac操作系统中,包括:接收原始Raw IP数据包;将所述Raw IP数据包解封装成以太网数据包;将封装后的所述以太网数据包发送给Mac设备。
可选地,将所述Raw IP数据包解封装成以太网数据包包括:将所述Raw IP数据包拆分成一个或多个第二数据包;对每个所述第二数据包去掉头字节和填充字节得到第一数据包;对所述第一数据包添加以太网包头得到以太网数据包。
可选的,在将所述Raw IP数据包解封装成以太网数据包之前,所述方法还包括:判断所述Mac设备是否支持所述Raw IP数据包;在判断结果为否时,确定将所述Raw IP数据包解封装成以太网数据包。
根据本发明的另一个实施例,提供了一种数据包的发送装置,应用在Mac操作系统中,包括:获取模块,用于获取Mac设备待发送的以太网数据包;封装模块,用于将所述以太网数据包封装成原始Raw IP数据包;发送模块,用于发送封装后的所述Raw IP数据包。
根据本发明的另一个实施例,提供了一种数据包的接收装置,应用在Mac操作系统中,包括:接收模块,用于接收原始Raw IP数据包;解封装模块,用于将所述Raw IP数据包解封装成以太网数据包;发送模块,用于将封装后的所述以太网数据包发送给Mac设备。
根据本发明的又一个实施例,提供了一种电子设备,所述无线网卡包括:发送模块:用于获取Mac设备待发送的以太网数据包,将所述以太网数据包封装成原始Raw IP数据包后进行发送;接收模块,用于接收原始Raw IP数据包,将所述Raw IP数据包解封装成以太网数据包后发送给所述Mac设备。
根据本发明的又一个实施例,还提供了一种存储介质。该存储介质设置为存储用于执行以下步骤的程序代码:
获取Mac设备待发送的以太网数据包;
将所述以太网数据包封装成原始Raw IP数据包;
发送封装后的所述Raw IP数据包。
通过本发明,获取Mac设备待发送的以太网数据包,然后将所述以太网数据包封装成原始Raw IP数据包,最后再发送封装后的所述Raw IP数据包。由于将Mac设备待发送的以太网数据包封装和转换成了Raw IP数据包,使得Mac设备和对应的Mac系统也能使用Raw Ip帧格式的数据,因此,可以解决相关技术中Raw Ip帧格式的数据不能在Mac系统上无法使用的问题,达到Mac系统和其他操作系统之间高效的联网功能,提高了在Mac下的用户体验。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的数据包的发送方法的流程图;
图2是根据本发明实施例的数据包的接收方法的流程图;
图3是根据本发明实施例的数据包的发送装置的结构框图;
图4是根据本发明实施例的数据包的接收装置的结构框图;
图5是本实施例的发送模块工作示意图;
图6是本实施例的接收模块工作示意图;
图7是本实施例的Ethernet frame数据包的示意图;
图8是本实施例的Ethernet frame和Raw Ip frame的示意图;
图9是本实施例的发送数据处理流程示意图;
图10是本实施例的DHCP数据包格式示意图;
图11是本实施例的DHCP获取IP地址流程图;
图12是本实施例的PC驱动处理ARP数据流程图;
图13是本实施例的组包格式示意图;
图14是本实施例的PC驱动和设备协商组包示意图;
图15为本实施例的PC发送模块处理流程示意图;
图16为本实施例的PC接收模块处理流程图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
实施例1
在本实施例中提供了一种数据包的发送方法,图1是根据本发明实施例的数据包的发送方法的流程图,如图1所示,该流程包括如下步骤:
步骤S102,获取Mac设备待发送的以太网数据包;
步骤S104,将以太网数据包封装成原始Raw IP数据包;
步骤S106,发送封装后的Raw IP数据包。
通过上述步骤,获取Mac设备待发送的以太网数据包,然后将以太网数据包封装成原始Raw IP数据包,最后再发送封装后的RawIP数据包。由于将Mac设备待发送的以太网数据包封装和转换成了Raw IP数据包,使得Mac设备和对应的Mac系统也能使用Raw Ip帧格式的数据,因此,可以解决相关技术中Raw Ip帧格式的数据不能在Mac系统上无法使用的问题,达到Mac系统和其他操作系统之间高效的联网功能,提高了在Mac下的用户体验。
可选地,上述步骤的执行主体可以为无线网卡等,但不限于此。
可选的,可以通过如下步骤将以太网数据包封装成Raw IP数据包:
S11,去掉以太网数据包的以太网包头得到第一数据包;
S12,在第一数据包上添加头字节和填充字节,组成第二数据包;
S13,将一个或多个第二数据包进行组合得到Raw IP数据包。
可选的,在第一数据包上添加头字节和填充字节包括:在第一数据包的包头添加头字节,在第一数据包的包尾添加填充字节。头字节的长度可以是4个字节,第二数据包的总长度为4字节的整数倍。
在本实施例中,以太网包头包括:目的地址destination address、源地址sourceaddress、协议格式type。
可选的,在将以太网数据包封装成Raw IP数据包之前,方法还包括:
S21,判断以太网数据包的格式;
S22,在以太网数据包的格式是IPV4协议或IPV6协议时,确定将以太网数据包封装成Raw IP数据包。
作为另外一个分支,在以太网数据包的格式是地址解析协议ARP时,执行:
S23,判断以太网数据包所请求的IP地址是否为Mac设备的IP地址;
S24,在判断结果为否时,发送以太网数据包所请求的IP地址,和/或,在判断结果为是时,放弃发送以太网数据包所请求的IP地址。
可选的,在封装之前还可以判断报文是否需要封装,在以太网数据包的接收端不支持以太网数据包,或者只支持Raw IP数据包时,才执行后续的封装操作,而在相互兼容的情况下,则不需要封装,减少了系统对数据包的额外处理。在将所述以太网数据包封装成原始Raw IP数据包之前,本实施例的方法还包括:
S31,判断所述以太网数据包的接收端是否支持所述以太网数据包;
S32,在判断结果为否时,确定将所述以太网数据包封装成原始Raw IP数据包。
在本实施例中提供了一种数据包的发送方法,图2是根据本发明实施例的数据包的接收方法的流程图,为上述发送方法的逆过程,如图2所示,该流程包括如下步骤:
步骤S202,接收原始Raw IP数据包;
步骤S204,将Raw IP数据包解封装成以太网数据包;
步骤S206,将封装后的以太网数据包发送给Mac设备。
可选的,将Raw IP数据包解封装成以太网数据包包括:
S41,将Raw IP数据包拆分成一个或多个第二数据包;
S42,对每个第二数据包去掉头字节和填充字节得到第一数据包;
S43,对第一数据包添加以太网包头得到以太网数据包。
可选的,在解封装之前还可以判断报文是否需要解封装,在Mac设备不支持Raw IP数据包,或者只支持以太网数据包时,才执行后续的解封装操作,而在Mac设备可以兼容的情况下,则不需要解封装,减少了系统对数据包的额外处理。在将所述Raw IP数据包解封装成以太网数据包之前,本实施例的方法还包括:
S51,判断所述Mac设备是否支持所述Raw IP数据包;
S52,在判断结果为否时,确定将所述Raw IP数据包解封装成以太网数据包。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例的方法。
实施例2
在本实施例中还提供了一种数据包的发送装置、接收装置、无线网卡,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图3是根据本发明实施例的数据包的发送装置的结构框图,如图3所示,该装置包括:
获取模块30,用于获取Mac设备待发送的以太网数据包;
封装模块32,用于将以太网数据包封装成原始Raw IP数据包;
发送模块34,用于发送封装后的Raw IP数据包。
图4是根据本发明实施例的数据包的接收装置的结构框图,如图4所示,该装置包括:
接收模块40,用于接收原始Raw IP数据包;
解封装模块42,用于将Raw IP数据包封装成以太网数据包;
发送模块44,用于将封装后的以太网数据包发送给Mac设备。
本实施例还提供一种电子设备,可选的,该电子设备可以是具体的无线网卡、数据卡等,可以灵活在电脑上进行插拔,也可以是无线网卡驱动或数据卡驱动等,安装在Mac设备的系统内,将上述发送装置和接收装置设置在其中,分别为:
发送模块:用于获取Mac设备待发送的以太网数据包,将以太网数据包封装成原始Raw IP数据包后进行发送;
接收模块,用于接收原始Raw IP数据包,将Raw IP数据包解封装成以太网数据包后发送给Mac设备。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
实施例3
本实施例是本发明的可选实施例,用于对本方案进行详细的解释和说明:
相关技术中,Mac系统无法识别Raw Ip frame数据包,只能识别带有链路层帧头的Ethernet frame数据包,因此Raw Ip驱动需要一下几部分模块组成:
发送模块:PC->数据卡,要去掉Ethernet的14字节帧头。图5是本实施例的发送模块工作示意图,如图5所示。
接收模块:数据卡->PC,要对Raw Ip数据包进行封装14字节帧头后递交OS,即mac系统。图6是本实施例的接收模块工作示意图,如图6所示。
数据包格式识别模块:对区分出的IPV4、IPV6和ARP数据包分别进行处理。
发送模块中,Ethernet包头包含了6byte的destination address、6byte的sourceaddress以及2byte的type,总共14byte。图7是本实施例的Ethernet frame数据包的示意图,如图7所示。
图8是本实施例的Ethernet frame和Raw Ip frame的示意图,如图8所示。
发送模块,判断出数据包格式为IPV4或者IPV6则去掉14byte的Ethernet包头,如果是ARP数据包则不到设备,直接在PC驱动中处理。图9是本实施例的发送数据处理流程示意图,如图9所示。
接收模块与发送模块的工作是相反的,也就是需要填充这14byte的三个参数。
destination address,这个参数就是USB物理网卡的Mac地址,驱动通过QMI从板侧获得。
source address,源地址,Mac操作系统并不关注,全部填充为0.
type,表明了数据包的协议格式,因只分析以太网,所以仅判断IPV4/IPV6格式,并添加相应的协议码。这些可以从IP包头获得。
接收模块的流程相比发送模块的流程较为简单,因为设备发过来的数据包只会是IPV4和IPV6,所以只需要加上相应的包头即可。
PC驱动处理ARP模块:
DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一个局域网的网络协议,使用UDP协议工作,主要用途有两个,给内部网络或网络服务供应商自动分配IP地址,给用户或者内部网络管理员作为对所有计算机中央管理的手段。它是在Bootstrap Protocol引导程序协议发展来的。
DHCP可以使计算机用一个消息获取它所需要的所有配置信息,即传送配置信息的协议。允许计算机快速、动态的获取IP地址,即动态分配IP地址的机制。图10是本实施例的DHCP数据包格式示意图,如图10所示。
DHCP报文类型由选项字段中的DHCP Message type选项中的Value值来决定,共有一下8种类型,其中我们常关注前四种:
DHCPDISCOVER(01)DHCPOFFER(02)
DHCPREQUEST(03)DHCPACK(05)
DHCPDECLINE(04)DHCPN53139AK(06)
DHCPRELEASE(07)DHCPINFORM(08)
ARP(Address Resolution Protocol,地址解析协议),是根据IP地址获取物理地址的一个TCP/IP协议。主机发送信息时将包含目标IP地址的ARP请求广播到网络上的所有主机,并接收返回消息,来确定目标主机的物理地址;收到返回消息后将该IP地址和物理地址存入本机ARP缓存中并保留一段时间,下次请求时直接查询ARP缓存以节约资源。
通过DHCP,可以获得PC本机和数据卡网关的IP地址。
通过ARP,得到数据卡IP地址和Mac地址的对应关系,正常获得后,通过arp–a可以查询到目前缓存中已有的对应关系。
Raw Ip机制,设备已经不再应答ARP请求,需要Mac驱动来完成这个过程,具体策略为:
如果ARP请求IP地址为网络分配给Mac机的IP地址,则不回复;
如果ARP请求IP地址为网络DNS服务器IP地址,则应答;
如果ARP请求IP地址为169网段IP地址,则应答。
网络分配IP地址以及如何获取网络DNS服务器IP地址,则需要从DHCP offer包中解析出来。
图11是本实施例的DHCP获取IP地址流程图,如图11所示,图12是本实施例的PC驱动处理ARP数据流程图,如图12所示。
图13是本实施例的组包格式示意图,图13显示了在Bulk管道中传输的一个Datapacket和组包之间的关系。Header是整个DataPacket的一部分,它添加在Datapacket的每个IP数据包前。在每个Raw Ip包前都有个Header,长4byte。
Header+Raw Ip包构成一个Data Unit,一次USB传输中由数个Data Unit组成。
Header中定义了每个Data Unit最后的PAD填充的长度;
IP Packet是要传输的Raw Ip包;
PAD是为了使Data Unit的总长度为4bytes的整数倍,在数据处理中需要忽略。
以下是装置侧方法实施例:
预置前提:设备支持Raw Ip,Mac机器不支持Raw Ip,PC驱动支持Raw Ip(无线网卡上)。
PC驱动与设备协商是否组包,设备支持组包则回复;不支持则不回复,PC驱动等待回复超时则确认。图14是本实施例的PC驱动和设备协商组包示意图,如图14所示。
图15为本实施例的PC发送模块处理流程示意图,如图15所示,PC发送模块处理流程如下:
步骤S201-S202:PC发送以太网包到PC驱动层;
步骤S203:PC驱动判断从PC过来的数据包是何种格式?IPV4、IPV6或者ARP数据包;
步骤S204:如果是IPV4或IPV6数据包,则去掉14bytes的以太网数据包头;如果是ARP数据包的话,则到S205步骤;
步骤S206:对去了以太网包头的IPV4和IPV6的Raw IP包添加一个Header和PAD,成为一个Data Unit;
步骤S207:将多个Data Unit组合成一个大数据包,发送到S208设备上进行处理;
步骤S209-S211:从网络侧获取的DHCP offer消息中,可以解析出Mac机器的IP地址和网络DNS服务器的IP地址;
步骤S212:PC驱动收到PC侧发过来的ARP数据请求,结合S209-S211解析出的Mac机器IP地址和网络DNS服务器IP地址,判断PC请求的是Mac机器的IP地址吗?如果是,则到S214,不回复;如果不是,则到S213,回复相应IP地址多对应的Mac地址。
图16为本实施例的PC接收模块处理流程图,如图16所示,PC接收模块处理流程包括:
步骤S301-S302:设备向PC驱动返回Raw IP格式组成的大数据包;
步骤S303-S304:对大数据包进行解包,拆分成多个Data unit单元;
步骤S305:对单个Data unit数据包去掉Header和PAD,成为单个的Raw IP数据包;
步骤S306-S307:对Raw IP数据包添加以太网包头,并传送到PC端。
通过以上所有流程,PC驱动完成了数据卡适配Mac机器的功能,并且通过组包的方式提高了USB传输能力。
用户将仅支持Raw IP的无线网卡,插入仅支持以太网数据的Mac机器上时,能够通过本方案提供的PC驱动,进行正常且高效的联网功能,提高了在Mac下的用户体验。
可选的,可以将本方案中的组包方式替换为NTB的组包方式,但这种方式组包结构复杂。
通过本实施例提供的PC驱动,进行正常且高效的联网功能,提高了在Mac下的用户体验。
实施例4
本发明的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的程序代码:
S1,获取Mac设备待发送的以太网数据包;
S2,将以太网数据包封装成原始Raw IP数据包;
S3,发送封装后的Raw IP数据包。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行获取Mac设备待发送的以太网数据包;
可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行将以太网数据包封装成原始Raw IP数据包;
可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行发送封装后的Raw IP数据包。
可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (14)
1.一种数据包的发送方法,其特征在于,包括:
获取Mac设备待发送的以太网数据包;
将所述以太网数据包封装成原始Raw IP数据包;
发送封装后的所述Raw IP数据包。
2.根据权利要求1所述的方法,其特征在于,将所述以太网数据包封装成Raw IP数据包包括:
去掉所述以太网数据包的以太网包头得到第一数据包;
在所述第一数据包上添加头字节和填充字节,组成第二数据包;
将一个或多个所述第二数据包进行组合得到所述Raw IP数据包。
3.根据权利要求2所述的方法,其特征在于,在所述第一数据包上添加头字节和填充字节包括:
在所述第一数据包的包头添加头字节,在所述第一数据包的包尾添加填充字节。
4.根据权利要求2或3所述的方法,其特征在于,所述第二数据包的总长度为4字节的整数倍。
5.根据权利要求2所述的方法,其特征在于,所述以太网包头包括:目的地址destination address、源地址source address、协议格式type。
6.根据权利要求1所述的方法,其特征在于,在将所述以太网数据包封装成Raw IP数据包之前,所述方法还包括:
判断所述以太网数据包的格式;
在所述以太网数据包的格式是IPV4协议或IPV6协议时,确定将所述以太网数据包封装成Raw IP数据包。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
在所述以太网数据包的格式是地址解析协议ARP时,判断所述以太网数据包所请求的IP地址是否为所述Mac设备的IP地址;
在判断结果为否时,发送所述以太网数据包所请求的IP地址,和/或,在判断结果为是时,放弃发送所述以太网数据包所请求的IP地址。
8.根据权利要求1所述的方法,其特征在于,在将所述以太网数据包封装成原始Raw IP数据包之前,所述方法还包括:
判断所述以太网数据包的接收端是否支持所述以太网数据包;
在判断结果为否时,确定将所述以太网数据包封装成原始Raw IP数据包。
9.一种数据包的接收方法,其特征在于,包括:
接收原始Raw IP数据包;
将所述Raw IP数据包解封装成以太网数据包;
将封装后的所述以太网数据包发送给Mac设备。
10.根据权利要求9所述的方法,其特征在于,将所述Raw IP数据包解封装成以太网数据包包括:
将所述Raw IP数据包拆分成一个或多个第二数据包;
对每个所述第二数据包去掉头字节和填充字节得到第一数据包;
对所述第一数据包添加以太网包头得到以太网数据包。
11.根据权利要求9所述的方法,其特征在于,在将所述Raw IP数据包解封装成以太网数据包之前,所述方法还包括:
判断所述Mac设备是否支持所述Raw IP数据包;
在判断结果为否时,确定将所述Raw IP数据包解封装成以太网数据包。
12.一种数据包的发送装置,应用在Mac操作系统中,其特征在于,包括:
获取模块,用于获取Mac设备待发送的以太网数据包;
封装模块,用于将所述以太网数据包封装成原始Raw IP数据包;
发送模块,用于发送封装后的所述Raw IP数据包。
13.一种数据包的接收装置,应用在Mac操作系统中,其特征在于,包括:
接收模块,用于接收原始Raw IP数据包;
解封装模块,用于将所述Raw IP数据包解封装成以太网数据包;
发送模块,用于将封装后的所述以太网数据包发送给Mac设备。
14.一种电子设备,其特征在于,所述电子设备包括:
发送模块:用于获取Mac设备待发送的以太网数据包,将所述以太网数据包封装成原始Raw IP数据包后进行发送;
接收模块,用于接收原始Raw IP数据包,将所述Raw IP数据包解封装成以太网数据包后发送给所述Mac设备。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610353279.0A CN107426263A (zh) | 2016-05-24 | 2016-05-24 | 数据包的发送、接收方法及装置、电子设备 |
PCT/CN2017/070184 WO2017202034A1 (zh) | 2016-05-24 | 2017-01-04 | 数据包的发送、接收方法及装置、电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610353279.0A CN107426263A (zh) | 2016-05-24 | 2016-05-24 | 数据包的发送、接收方法及装置、电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107426263A true CN107426263A (zh) | 2017-12-01 |
Family
ID=60412070
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610353279.0A Withdrawn CN107426263A (zh) | 2016-05-24 | 2016-05-24 | 数据包的发送、接收方法及装置、电子设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN107426263A (zh) |
WO (1) | WO2017202034A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111221622A (zh) * | 2019-12-17 | 2020-06-02 | 京信通信系统(中国)有限公司 | 通信模块间通信方法、装置、计算机设备和可读存储介质 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200136779A1 (en) * | 2018-10-30 | 2020-04-30 | Mediatek Singapore Pte. Ltd. | Overhead Reduction In Transmission of Small Ethernet Packets Over A Wireless Link |
CN110505222B (zh) * | 2019-08-14 | 2022-09-20 | 中国电力科学研究院有限公司 | 一种用于电力设备专用校准装置的协议转换方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1504034A (zh) * | 2001-03-12 | 2004-06-09 | �����ɷ� | 基于宽带调制的时分复用方法和装置 |
CN1953416A (zh) * | 2006-09-16 | 2007-04-25 | 华为技术有限公司 | 一种以太网传输IPv6报文方法、系统与装置 |
US20130205043A1 (en) * | 2010-08-06 | 2013-08-08 | Beijing Qiantang Network Technology Company, Ltd. | Ethernet-compatible method and system |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE69925453T2 (de) * | 1999-02-26 | 2006-05-11 | Lucent Technologies Inc. | Mobiles IP ohne Einkapselung |
CN100486225C (zh) * | 2006-01-24 | 2009-05-06 | 华为技术有限公司 | 分组域网络中减少数据ip分片数量的方法 |
CN101226700A (zh) * | 2008-01-28 | 2008-07-23 | 哈尔滨工业大学 | Ip数据报的分片与重组过程的教学实验方法 |
WO2013126918A1 (en) * | 2012-02-24 | 2013-08-29 | Ruckus Wireless, Inc. | Wireless services gateway |
-
2016
- 2016-05-24 CN CN201610353279.0A patent/CN107426263A/zh not_active Withdrawn
-
2017
- 2017-01-04 WO PCT/CN2017/070184 patent/WO2017202034A1/zh active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1504034A (zh) * | 2001-03-12 | 2004-06-09 | �����ɷ� | 基于宽带调制的时分复用方法和装置 |
CN1953416A (zh) * | 2006-09-16 | 2007-04-25 | 华为技术有限公司 | 一种以太网传输IPv6报文方法、系统与装置 |
US20130205043A1 (en) * | 2010-08-06 | 2013-08-08 | Beijing Qiantang Network Technology Company, Ltd. | Ethernet-compatible method and system |
Non-Patent Citations (1)
Title |
---|
罗宁: "支持IP业务的链路层协议转换技术研究", 《第二十六届中国(天津)2012IT、网络、信息技术、电子、仪器仪表创新学术会议》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111221622A (zh) * | 2019-12-17 | 2020-06-02 | 京信通信系统(中国)有限公司 | 通信模块间通信方法、装置、计算机设备和可读存储介质 |
WO2021121287A1 (zh) * | 2019-12-17 | 2021-06-24 | 京信网络系统股份有限公司 | 通信模块间通信方法、装置、计算机设备和可读存储介质 |
CN111221622B (zh) * | 2019-12-17 | 2023-10-24 | 京信网络系统股份有限公司 | 通信模块间通信方法、装置、计算机设备和可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2017202034A1 (zh) | 2017-11-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11018892B2 (en) | Broadband remote access server (BRAS) system-based packet encapsulation | |
CN107426077B (zh) | 用于实现物理网络和虚拟网络互通的方法和设备 | |
US10038646B2 (en) | Method and apparatus for acquiring port range resource, and method and apparatus for allocating port range resource | |
CN108111523A (zh) | 数据传输方法和装置 | |
CA2507529A1 (en) | Data transfer from a host server via a tunnel server to a wireless device, and associating a temporary ipv6 address with a temporary ipv4 address for communicating in an ipv4 wireless network with the device | |
CN102377671B (zh) | 负载均衡方法及系统、宽带远程接入服务器设备 | |
CN112583910B (zh) | 物联网平台的设备接入方法、装置及电子设备和存储介质 | |
CN105359458A (zh) | 网络设备通信方法及网络设备 | |
CN107426263A (zh) | 数据包的发送、接收方法及装置、电子设备 | |
CN101141439B (zh) | 报告用户设备接入类型和分配网络配置信息的方法及装置 | |
CN112787902A (zh) | 报文封装方法及装置、报文解封装方法及装置 | |
CN102904814B (zh) | 数据传输方法、源pe、目的pe和数据传输系统 | |
CN107070719B (zh) | 一种设备管理方法和装置 | |
EP3306901A1 (en) | Domain name system address configuration method and apparatus, and computer storage medium | |
TWI735633B (zh) | 資料傳輸的方法、設備、裝置及系統 | |
CN105338528B (zh) | 数据包重定向的方法、系统及无线访问节点 | |
CN106850871B (zh) | 一种单物理网卡多vlan的dhcp服务器实现方法 | |
CN110351394B (zh) | 网络数据的处理方法及装置、计算机装置及可读存储介质 | |
CN102368786B (zh) | 负载均衡方法及系统 | |
CN107547668A (zh) | 报文处理方法及装置、dhcp服务器 | |
CN101667971A (zh) | 发送、接收报文的方法、装置和系统 | |
CN100518196C (zh) | 动态主机配置协议基于虚接口的分布式处理方法及系统 | |
CN111654390A (zh) | 一种数据传输方法、装置、终端设备和存储介质 | |
CN116055452A (zh) | 一种数据处理方法、装置、设备及计算机可读存储介质 | |
CN115038138B (zh) | 数据转发方法、装置、计算机设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20171201 |
|
WW01 | Invention patent application withdrawn after publication |