在以太网传输过程中,通常经过多路由后导致以太网包乱序。参照以太网TCP/IP协议,FPGA通过创建固定链表方式对以太网进行乱序重拍。
首先,创建多个数组,分别记录接收包起始序号、接收包序号、包填充标志等。首先,判定起始包位置(考虑因素包括时延、乱序程度、抖动等)。然后,后续接收包与起始序号进行比较,若落入接收窗内,将此包放入数据相应的BUFFER中;反之,将包丢弃,认为此包为旧包。
在包被读取时,判断包起始序号相邻的包是否被接收,若被接收,将包起始序号位置的包读出,并更新包起始序号为相邻的包序号;反之,等待一段时间用于接收相邻包;
在等待未超时时,相邻包到达,则启动包起始序号读取操作;等待超时则认为相邻包丢失,则包起始序号跳转至下一个已接收的包序号(距离最近的序号包)
5万+

被折叠的 条评论
为什么被折叠?



