上传者: 35812582
|
上传时间: 2025-10-29 22:49:59
|
文件大小: 2.68MB
|
文件类型: DOCX
【小组实验一1】是北京邮电大学软件学院2019-2020学年第一学期通信协议软件设计课程的一个实验项目,主要目的是让学生理解通信协议形式化描述的重要性,掌握SDL(Sequential Diagram Language)描述语言及其开发工具PragmaDev Studio。实验中,学生们需要分析并基于SDL描述选定的通信协议,例如滑动窗口协议(包括停等协议和回退N协议)。
实验内容主要包括以下步骤:
1. 安装PragmaDev Studio作为SDL的开发环境。
2. 选择一个通信协议进行分析,如滑动窗口协议。
3. 使用PragmaDev Studio用SDL语言描述协议,包括SDL系统图、功能块图和进程图,对于单工通信协议需分别描述发送方和接收方。
4. 运行模拟分析,以验证描述的正确性。
实验分工明确,团队成员各自负责不同部分,如吴志镛负责停等协议的分析和实现,陈凌云负责选择重传部分,赵景煜负责数据的发送和接收,宋振铭处理ACK处理,陆琪伟处理计时器信号,薛子豪负责数据结构和系统架构。
实验中涉及的协议描述:
1. **停等协议**:是一种全双工协议,与ARQ协议相似,但ARQ是单工的。停等协议的基本流程包括发送方发送第一帧,接收方检查帧是否重复,通过比较ACK seq与next_frame_to_send和frame_expected来判断,若不重复则发送下一帧数据,否则重发当前帧。
2. **回退N协议(GoBack N)**:设计了详细的协议MSC(消息顺序图),它允许发送方在一个较大的窗口内发送多个帧,当接收方检测到错误时,发送方需要回退到错误帧之前的某个点重新发送。
SDL系统描述包括:
- 停等协议的系统图中,Signal表示来自物理层/网络层到物理层/网络层的传输数据,Sw_block表示滑动窗口协议功能块,数据定义中MAX_SEQ、SeqNo、AckNo和Nak等是关键变量。
- 回退N协议的系统描述未详细展开,但功能块图和进程状态图应包含类似的信息,以描述协议实体的状态转换和交互过程。
这个实验通过实际操作加深了学生对通信协议的理解,尤其是SDL描述语言的应用,锻炼了团队协作能力和问题解决能力。通过SDL,学生们能够更直观地理解和分析通信协议的逻辑和流程,这对于通信协议的开发和调试具有重要意义。