发明名称 一种IP报文接收处理方法及装置
摘要 本发明提供了一种IP报文的接收处理装置以及处理方法。来自MAC层的数据报文信息通过报文接收模块先缓存下来,报文接收模块同时控制着接收速度;接收到的速度合适的数据报文信息被放到缓存单元后,通过格式处理模块为后续的处理预留空白头,并添加头尾信息;然后数据一次进入长度校验模块和差错校验模块检验数据报文信息是否正确;未发生错误的数据报文信息随后一次进入填充处理模块和解封装处理模块,通过这些模块配合网络层的最大最小包限制;之后数据报文信息进入提取查找关键字模块,配合后面的路由表项查找与结果返回模块实现路由算法;最后通过转发模块形成处理好的IP报文发送至传输层。
申请公布号 CN105791128A 申请公布日期 2016.07.20
申请号 CN201610061358.4 申请日期 2016.01.28
申请人 东南大学 发明人 李冰;刘玉;刘洋;金涛;陈帅;刘勇;董乾;赵霞;王刚
分类号 H04L12/741(2013.01)I;H04L12/801(2013.01)I 主分类号 H04L12/741(2013.01)I
代理机构 南京苏高专利商标事务所(普通合伙) 32204 代理人 柏尚春
主权项 一种IP报文处理装置,其特征在于包括顺序连接的报文接收模块、格式处理模块、长度校验模块、差错校验模块、填充处理模块、解封装处理模块、提取查找关键字模块、路由表项查找与结果返回模块以及转发模块;报文接收模块接收来自MAC层的数据报文包,将MAC层的数据报文包进行缓存,同时计算数据报文包的个数以及数据报文包的拍数,进行流量控制;格式处理模块,接收报文接收模块缓存的数据报文包,在数据报文包中报文的最前面加上两拍空白头,去除数据报文包的头部,根据剥离出的数据报文包的头部信息,获得报文的长度,报文有无错误的信息;长度校验模块,对格式处理模块处理后的报文进行长度校验,若报文的长度符合数据报文包的头部信息中第一拍低16位记录的数据长度,则将报文送至差错校验模块;若报文的长度不符合数据报文包的头部信息中第一拍低16位记录的数据长度,则不予处理;差错校验模块,对长度校验模块校验后的报文进行差错校验,具体步骤如下:首先将数据报文包的头部信息中除报头校验和的16位外的所有数据报文包的头部信息的低16位与高16位相加,然后将计算溢出的高位部分再循环加进来,将最终的运算结果取反并与报文头部校验和进行校验,若两者相同则表示数据报文信息就是完全正确,将数据包文包传输至填充处理模块进行后续的处理;若两者不同则表示传输过程中出现错误,将出现错误的数据报文包丢弃;填充处理模块,对差错校验模块校验后的数据报文包进行处理,若数据报文包的长度小于48字节则填充空白字节将数据报文包的长度补充到48字节;若数据报文包的长度超过1500字节则丢弃冗余信息;填充处理模块调整好数据包文报的大小后,将处理后的数据包文包发送至解封装处理模块;解封装处理模块,接收填充处理模块处理后的数据报文包,并判断传输机制是否与数据报文包的标识相同,若相同则直接将数据报文包发送至提取查找关键字模块;若不同则在数据报文包的头部前加上需要传输的机制的头部,再将加上新头部信息的数据报文包发送至提取查找关键字模块;提取查找关键字模块,查找数据报文包的头部信息,将得到的关键字存入存储单元,具体需要查找的关键字有:起始与结束地址Start_end_addr、查询类型Lookup_type、物理端口Sph_port、源IP地址Sip、目标IP地址Dip、协议类型Protocol、源地址端口Sport、目标地址端口Dport和IPV6数据包流标签Flow_lable;存储单元由DDR单元和TCAM单元组成,TCAM单元的地址返回端连接DDR单元输入端,TCAM单元存储关键字的内容,DDR单元存储TCAM单元返回的地址;路由表项查找与结果返回模块,查询存储单元中的路由表项信息,若与需要传输的路由信息匹配则返回匹配的结果;若不匹配,则表示查找失败,不进行处理;转发模块,根据路由表项查找与结果返回模块查找到的路由表项对数据报文包进行格式调整,去除格式处理模块中加上的两拍空白头,添加数据包文报对应的头部,然后将调整好的报文转发出去。
地址 210000 江苏省南京市四牌楼2号