5. 搭建Web服务器

如果你已经在net-lab工程上实现了TCP协议,是不是觉得我们其实还可以更进一步:)

是的,可以在属于我们自己的TCP/IP协议栈上构建出更多有趣的应用层协议,比如实现http协议,搭建Web服务器。

5.1. 实验要求

为了降低难度,我们在net-lab工程上添加了HTTP协议框架,你只需要补充完整http.c文件中的send_file函数和http_server_run函数,并通过实验自测。

如果你能通过这个实验,那么你可以不需要做 Lab9:邮件客户端的设计与实现,也就是可以用这个实验替代 Lab9:邮件客户端的设计与实现。当然,要能搭建Web服务器,你得必须先完成TCP/IP整套协议栈:)

5.2. 实验自测

运行net-lab,在浏览器输入地址:http://192.168.254.13:62000/( 该目标IP地址需要改成你自己代码中config.h中定义的IP地址 ,关于目标IP地址的定义可参考 Windows开发环境搭建),冒号后面的62000代表端口号。

../_images/http-1.jpg

点击“哈工大深圳,春色正浓”

../_images/http-2.jpg

返回主页,再点击“404页面”

../_images/http-3.jpg

5.3. 实验提交

请提交实验报告和代码。

实验报告需要给出设计方案、实验结果及分析。

注意:本实验需要分析tcp协议和http协议的交互过程。