# SA算法的实现
## 实验说明
实现部分:基础GBN、选择重传;
传送二进制文件未实现
## 实验环境:
操作系统:win10
python版本: 3.8.0
## 测试语句:
python TestHarness.py -s Sender.py -r Receiver.py
## 代码修改:
修改添加的代码只有 Sender.py, Packet.py
## 实现思路:
Sender在启动后有两个线程,一个线程是listener,负责监听ack消息,并作出对应处理;
一个线程是超时重发线程,每隔100ms对窗口中已发送的包检查一次是否超时(每个包自带一个startTime属性),负责重发超时的块。
## SA算法的实现:
listener过程由两部实现,第一步是收到ACK消息后将滑动窗口中已确认的块标记;第二步是移动窗口,发送新的块。
不同的操作是: 处于SA模式时,根据所有确认号信息将已确认的块标记;而非SA模式不标记附加的确认号,只利用累计确认;
在移动窗口的步骤上两者相同,都是先看从左起已经连续确认了几块,就右移几块,并发送新块。
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
Sender在启动后有两个线程,一个线程是listener,负责监听ack消息,并作出对应处理; 一个线程是超时重发线程,每隔100ms对窗口中已发送的包检查一次是否超时(每个包自带一个startTime属性),负责重发超时的块。
资源推荐
资源详情
资源评论
收起资源包目录
100011666-基于Python实现SA算法.zip (41个子文件)
testharness
Sender.py 6KB
README 4KB
LICENSE 1KB
tests
__init__.py 37B
SackRandomDropTest.py 779B
BasicTest.py 4KB
DuplicationTest.py 405B
RandomShuffleTest.py 414B
SackDuplicationTest.py 545B
__pycache__
RandomShuffleTest.cpython-39.pyc 719B
SackDuplicationTest.cpython-39.pyc 938B
SackRandomDropTest.cpython-38.pyc 842B
SackRandomShuffleTest.cpython-39.pyc 959B
DuplicationTest.cpython-39.pyc 700B
__init__.cpython-39.pyc 198B
BasicTest.cpython-38.pyc 4KB
BasicTest.cpython-39.pyc 4KB
RandomDropTest.cpython-39.pyc 679B
RandomDropTest.cpython-38.pyc 605B
SackDuplicationTest.cpython-38.pyc 864B
DuplicationTest.cpython-38.pyc 626B
RandomShuffleTest.cpython-38.pyc 645B
SackRandomDropTest.cpython-39.pyc 916B
SackRandomShuffleTest.cpython-38.pyc 885B
__init__.cpython-38.pyc 124B
SackRandomShuffleTest.py 558B
RandomDropTest.py 638B
UnreliableSender.py 2KB
Receiver.py 8KB
Checksum.py 463B
BasicSender.py 2KB
127.0.0.1.33123 4KB
TestHarness.py 13KB
Packet.py 891B
实验说明文档.txt 1KB
__pycache__
BasicSender.cpython-38.pyc 2KB
Packet.cpython-38.pyc 1KB
Checksum.cpython-38.pyc 528B
InteractiveSender.py 2KB
README.md 1KB
实验截图.png 13KB
共 41 条
- 1
资源评论
神仙别闹
- 粉丝: 2704
- 资源: 7645
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- java-leetcode题解之第557题反转字符串中的单词III.zip
- java-leetcode题解之第521题最长的特殊序列I.zip
- java-leetcode题解之第459题重复的子字符串.zip
- java-leetcode题解之第443题压缩字符串.zip
- java-leetcode题解之第415题字符串相加.zip
- java-leetcode题解之第387题字符串中的第一个唯一字符.zip
- java-leetcode题解之第165题比较版本号.zip
- java-leetcode题解之第67题二进制求和.zip
- javaleetcode题解之第58题最后一个单词的长度.zip
- 基于Javascript和Vue的微信小程序抽奖打地鼠游戏设计源码 - 抽奖打地鼠
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功