[发明专利]一种基于TOE网卡的Target端协议硬件解析方法有效

专利信息
申请号: 201910368878.3 申请日: 2019-05-05
公开(公告)号: CN110177087B 公开(公告)日: 2021-06-01
发明(设计)人: 杨威锋;雷天语;云飞龙;鄢来明;贺颜 申请(专利权)人: 方一信息科技(上海)有限公司
主分类号: H04L29/06 分类号: H04L29/06
代理公司: 上海海钧知识产权代理事务所(特殊普通合伙) 31330 代理人: 王睿
地址: 200433 上海市杨*** 国省代码: 上海;31
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 toe 网卡 target 协议 硬件 解析 方法
【权利要求书】:

1.一种基于TOE网卡的Target端协议解析分流方法,其特征在于,包括:

步骤1,Initiator端通过TOE网卡向Target端发送ISCSI PDU,TOE网卡的FPGA的PhyCore和TOE IP完成以太网物理层、MAC层以及TCP/IP层的协议解析,并保留TCP Payload,FPGA将对TCP Payload数据流进行PDU帧界定,找出ISCSI PDU中的BHS字段和可能存在的AHS字段与数据段;

步骤2,BHS字段通过CQ包入PCIE TLP写入Host DDR;将ISCSI PDU剩余信息的AHS字段和数据段通过EMIF写入TOE网卡DDR;

步骤3,TOE网卡的驱动层从Host DDR获取BHS字段,根据BHS字段中的Opcode和Length进行操作,包括:首先驱动层判断Opcode是否为命令类型,如果否,则驱动层将BHS字段传送至CPU,CPU根据Login协商信息以及当前Write Command内容,计算出当前数据段存储在Flash中对应的地址;然后发送P2P传送指令至TOE网卡FPGA PCIE DMA引擎,TOE网卡的DMA将TOE网卡DDR的数据段传送至TOE网卡PCIE SSD的Bar2空间,并存入PCIE SSD的DDR中;

如果是,则驱动层根据Length判断ISCSI PDU长度是否大于48字节,在判断ISCSI PDU长度是否大于48字节的过程中,如果判断为是,则驱动层实施DMA操作将写入TOE网卡DDR中的ISCSI PDU剩余信息搬运至Host DDR,以供CPU处理;如果判断为否,则应用层将Host DDR中已获得的BHS信息发送给CPU处理。

2.根据权利要求1所述的方法,其特征在于,所述TOE网卡DDR的数据段通过P2P传送至TOE网卡PCIE SSD的Bar2空间。

3.根据权利要求1所述的方法,其特征在于,所述Target端的FPGA判断所发送的ISCSIPDU是否为正确的ISCSI PDU,如果不正确,发送错误信息给Target端的驱动层,驱动层发送重置指令到指定的session控制器,Initiator端重新发送ISCSI PDU;如果判断为正确,则解析ISCSI PDU并保留TCP Payload。

4.根据权利要求1所述的方法,其特征在于,所述Target端的FPGA根据协议解析的结果,判断ISCSI PDU是否正确。

5.一种通讯设备,其特征在于,包括:

ISCSI PDU接收模块,用于接收Initiator端发送的第一ISCSI PDU;

ISCSI PDU判断模块,用于判断Initiator端发送的第一ISCSI PDU是否正确;

ISCSI PDU解析模块,用于解析第一ISCSI PDU并保留TCP Payload,并将TCP Payload数据流进行PDU帧界定,找出第一ISCSI PDU中的BHS字段、可能存在的AHS字段和数据段;

TOE网卡DDR,用于写入AHS字段和数据段;

Host DDR,用于写入PCIE TLP,其中,BHS字段通过CQ包入PCIE TLP中;

CPU,用于接收BHS字段和可能存在的AHS字段,执行Initiator端发送的请求,并将执行请求所产生的相应数据封装成第二ISCSI PDU,发送给Host DDR;

Length判断模块,用于判断第一ISCSI PDU长度是否大于48字节;

PCIE DMA模块,在第一ISCSI PDU长度大于48字节时,将TOE网卡DDR中的信息搬运至Host DDR;将Host DDR中的第二ISCSI PDU发送给TOE网卡DDR;

DDR读取模块,读取TOE网卡DDR中的第二ISCSI PDU发送给Initiator端;

所述通讯设备还包括:

Opcode指令判断模块,判断Opcode是否为命令类型;

其中,在判断Opcode为命令类型时,Length判断模块判断第一ISCSI PDU长度是否大于48字节;

所述通讯设备还包括:

Flash地址计算模块,在判断Opcode不为命令类型时,应用层根据Login协商信息以及当前写命令的内容,计算当前数据段存储在Flash中对应的地址;

PCIE SSD,PCIE SSD的DDR用于接收并存储TOE网卡DDR中的数据段;

所述通讯设备还包括:PCIE DMA引擎,用于通过P2P将TOE网卡DDR中的数据段传输给PCIE SSD DDR;

其中,TOE网卡的驱动层从Host DDR获取BHS字段,根据BHS字段中的Opcode和Length进行操作,包括:首先驱动层判断Opcode是否为命令类型,如果否,则驱动层将BHS字段传送至CPU,CPU根据Login协商信息以及当前Write Command内容,计算出当前数据段的存储在Flash中对应的地址;然后发送P2P传送指令至TOE网卡FPGA PCIE DMA引擎,TOE网卡的DMA将TOE网卡DDR的数据段传送至TOE网卡PCIE SSD的Bar2空间,并存入PCIE SSD的DDR中;

如果是,则驱动层根据Length判断第一ISCSI PDU长度是否大于48字节,在判断第一ISCSI PDU长度是否大于48字节的过程中,如果判断为是,则驱动层实施DMA操作将写入TOE网卡DDR中的PDU剩余信息搬运至Host DDR,以供CPU处理;如果判断为否,则应用层将HostDDR中已获得的BHS信息发送给CPU处理。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于方一信息科技(上海)有限公司,未经方一信息科技(上海)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201910368878.3/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top