在应用层模拟实用停等协议
本文允许转载,转载请保留全文! 【请先阅读】【说明&总目录】 http://www.cnblogs.com/tbcaaa8/p/4415055.html 1. 背景说明 本文章来源于近期需要提交的《计算机网络》课程实验。 教材使用高等教育出版社出版的陈鸣编著的《计算机网络:原理与实践》一书。 实验分为3部分,分别需要在应用层模拟实用停等协议、连续ARQ协议和滑动窗口协议,实现文件的传输。端与端之间的通信使用Socket完成。 语言可以任选,出于简单,本文以java为例,仅介绍使用停等协议的实现,其他内容由同学们自己探索吧。强烈不推荐MFC,除非想把自己玩死。 注:本人对网络兴趣不大,上课睡觉时间远远长于听课时间,故不对文章的正确性做任何保证,代码仅供参考。 2. 模拟实用停等协议的详细思路 本程序仅仅是一个课堂实验而已,故没有在程序结构上花太多心思,基本上算是想到哪儿写到哪儿,所以代码可能有一些奇♂怪的地方。 为了能在单机状态下进行端到端的通信,每个进程即作为Client,又作为Server。在演示时,同时打开两个进程,为两个进程的Server设置不同的端口号,分别由对方进程的Client进行连接,并将IP地址使用127.0.0.1,即可实现单机状态下进程之间的通信。 程序划分为6个类: Main:主要用于显示用户界面,完成与用户的交互;同时定义了程序中的全局常量。 Client