【技术实现步骤摘要】
一种网口硬件流控实现方法、智能终端及存储介质
本专利技术涉及嵌入式驱动
,尤其涉及一种网口硬件流控实现方法、智能终端及存储介质。
技术介绍
在以太网中,如果发送端发送过快,接收端接收不了那么大流量,就会造成丢包的问题。那么就需要进行流量控制,在半双工模式中,使用背压法,由于收发双方遵从CSMA/CD算法,如果接收方发现自己的接收缓冲区快要满了,于是它向信道发送一个信号,发送方感知到之后,就会停止发送一段时间;在全双工模式中,使用PAUSE帧(PAUSE帧是以太网在全双工模式下,MAC控制子层发出的流量控制帧),当收方端口缓存超过设定门限时,收方节点向远端节点发送延迟发送帧,收到帧后远端节点启动延迟计时;如果远端节点在本次计时期间内又收到延时帧,则重新开始计时;若收方的缓存低于设定值时,本节点发送0延时的帧到远端节点,远端节点收到帧后重新启动发送信息。以上方法不管全双工还是半双工,都是通过发送标准的以太网报文实现的;现在半双工的网络已经很少见,大部分都是全双工。PAUSE帧的帧长为64字节,结构非常简单,目的MA ...
【技术保护点】
1.一种网口硬件流控实现方法,其特征在于,所述网口硬件流控实现方法包括:/n设置GPIO1为输出功能,设置GPIO2为输入功能,创建一个网口接收BD空闲个数的检测任务;/n读取GPIO2的电平,根据GPIO2的电平发送报文或者等待发送报文,并反馈发送结果;/n获取BD空闲个数,根据所述BD空闲个数设置GPIO2的电平以控制报文发送。/n
【技术特征摘要】
1.一种网口硬件流控实现方法,其特征在于,所述网口硬件流控实现方法包括:
设置GPIO1为输出功能,设置GPIO2为输入功能,创建一个网口接收BD空闲个数的检测任务;
读取GPIO2的电平,根据GPIO2的电平发送报文或者等待发送报文,并反馈发送结果;
获取BD空闲个数,根据所述BD空闲个数设置GPIO2的电平以控制报文发送。
2.根据权利要求1所述的网口硬件流控实现方法,其特征在于,所述设置GPIO1为输出功能,设置GPIO2为输入功能,创建一个网口接收BD空闲个数的检测任务,之前还包括:
预先设定GPIO1为通用IO并且为输出功能。
3.根据权利要求1所述的网口硬件流控实现方法,其特征在于,所述设置GPIO1为输出功能,设置GPIO2为输入功能,创建一个网口接收BD空闲个数的检测任务,之前还包括:
预先设定GPIO2为通用IO并且为输入功能。
4.根据权利要求1所述的网口硬件流控实现方法,其特征在于,所述设设置GPIO1为输出功能,设置GPIO2为输入功能,创建一个网口接收BD空闲个数的检测任务,具体包括:
设置GPIO1为输出功能,初始值为低电平,用于表示对端允许发送报文给本端;
设置GPIO2为输入功能;
创建接收BD空闲个数的任务。
5.根据权利要求4所述的网口硬件流控实现方法,其特征在于,所述读取GPIO2的电平,根据GPIO2的电平发送报文或者等待发送报文,并反馈发送结果,具体包括:
读取GPIO2的电平,判断GPIO2的电平是否为低电平;
如果GPIO2为低电平,则表示对端允许接收报文,直接发送当前报文,发送完成后返回成功发送的信息;
如果GPIO2为高电平,则表示对端没有足够空间继续接收报文,对端已发送流...
【专利技术属性】
技术研发人员:秦金昆,吴闽华,孟庆晓,杨超,戴瑜,
申请(专利权)人:深圳震有科技股份有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。