0
点赞
收藏
分享

微信扫一扫

源码搭建:从零开始实现程序的步骤解析

棒锤_45f2 2024-09-06 阅读 3

数据链路层:

服务:将来自网络层的数据传输到相邻节点的网络层

作用加强物理层传输原始比特流的功能

封装成帧---组帧:将来自网络层的数据首尾添加特定信息(帧定界:帧的起始,结束)

差错控制

CRC循环冗余码:发现接收数据错误--->丢弃     

海明距离:两个编码对应位置比特不同的数量  000 - 001--海明距离为1

流量控制,可靠传输

        1.停止--等待协议

        2.滑动窗口协议

                2.1后退N帧协议 GBN

                2.2选择重传协议 SR

停止--等待协议:

1.数据帧丢失:发送端没在特定时间内接收到来自接收端的确认帧,发送端将重新传输该数据

2.ACK确认帧丢失:发送端在特定时间没有接收到来自接收端的ACK信号,发送端将重新传输该信号,此时接收端就连续收到两个相同数据,接收端将第二次接收到的数据删除,重新发送ACK

3.ACK接收超时:发送端重新传输原数据,接收端连续收到两个相同数据,将数据丢弃一份重新传输ACK;当超时的ACK发送给发送端,发送端将其删除

GBN后退N帧协议:发送窗口【1,2^n-1】,接收窗口大小为1

当发送端的数据2丢失时,接收端未接受到数据不能给发送端发送ACK2信号,发送端接续发送数据3,接收端收到数据3但与其预期的数据(expectedseqnum)不同,接收端将数据3删除返回ACK2信号,发送端在特定时间未收到ACK2信号,则重新发送已经发送但是为被确定的帧

选择重传协议SR:发送端窗口大小=接收端窗口大小 2^(n-1)

当发送端数据2丢失时,发送端继续发送数据3,接收端接收数据3发送ACK3,当ACK2超出特定时间还未接收到时,发送端重新传输数据2,接收端接收数据2并将数据2-5交付给网络层向发送端发出ACK2

举报

相关推荐

0 条评论