发布时间 : 星期六 文章计算机网络实验实验报告 - 图文更新完毕开始阅读
3.配置switch2,switch3,switch4之间的trunk链路。(switch2的配置如下,switch3,switch4的配置与之类似,端口为fa0/1和fa0/2)
此时,PC3,PC5,PC7处于VLAN2,PC4,PC6,PC8处于VLAN3,VLAN2和VLAN3内部PC可以互相访问,但VLAN之间无法访问。部分结果见图3-1。
图3-1 (a) PC3的ping结果
图3-1 (b) PC4的ping结果
第四项试验——访问控制配置试验
1. 对路由器Router A进行配置,使得PC1无法访问其它PC,也不能被其它PC访问
部分结果见图4-1。
图4-1 (a) PC1的ping结果
图4-1 (b) PC2的ping结果
实验二——
支持多线程处理的web服务服务端软件
一.环境
操作系统:WINDOWS 7 (32位 旗舰版) 运行工具:chrome浏览器 编写程序语言:C++ 环境:Qt Creator 5.1.0
二.实验目的
1. 了解应用层和运输层的作用以及相关协议的工作原理和机制 2. 掌握SOCKET编程的基本方法
三.实验内容及步骤(包括主要流程和说明)
内容:编写一个支持多线程处理的web服务服务端软件
要求如下:
第一级:
1.可配置Web服务器的IP地址、监听端口和主目录
2.制作一个主页放在主目录中,并配置Web服务器的IP地址、监听端
口和主目录
3.具备完成所需功能的基本图形用户界面(GUI),并具友好性
第二级:
1.选择合适的Socket编程模型,创建套接字,监听所配置的监听端口 2.支持服务的启动和关闭
3. 具备完成所需功能的基本图形用户界面(GUI),并具友好性 第三级:
1. 支持多线程,能够针对每一个新的请求创建新的线程
2. 在服务端的屏幕上输出每一个请求的来源(IP地址、端口号和HTTP请求命令行)
3. 支持一定的异常情况处理能力
4. 具备完成所需功能的基本图形用户界面(GUI),并具友好性 第四级:
1. 能够处理HTTP请求以及定位相应的HTML文件 2. 向客户端发送响应报文
3. 对于无法成功定位文件的请求,根据错误原因,做相应的错误提示 4. 在服务端的屏幕上能够输出对每一个请求处理的结果 5. 具备完成所需功能的基本图形用户界面(GUI),并具友好性 第五级:
1. 支持多种类型文件(如TXT和JPG等)的发送 2. 具备简洁方便的GUI界面
步骤:代码实现部分
1. 启动服务:
BOOL QHttpServer::Start(string HomeDir, string DefIndex, int Port, int PersTO)
{
m_HomeDir m_DefIndex { }
= HomeDir; = DefIndex;
if(m_HomeDir.substr(m_HomeDir.size() - 1, 1) != \)
m_HomeDir += \; if(bRun)
//LogMessage(LOGFILENAME, \return FALSE;
errno);
ServerPort = Port; PersistenceTO = PersTO; InitializeCriticalSection(&cs); InitializeCriticalSection(&_cs); Reset();
ThreadLaunchedEvent
= CreateEvent(NULL, FALSE, TRUE, NULL);