计算机网络系统实践报告Word格式.docx
- 文档编号:20056436
- 上传时间:2023-01-16
- 格式:DOCX
- 页数:24
- 大小:330.85KB
计算机网络系统实践报告Word格式.docx
《计算机网络系统实践报告Word格式.docx》由会员分享,可在线阅读,更多相关《计算机网络系统实践报告Word格式.docx(24页珍藏版)》请在冰豆网上搜索。
点击“开始”
“运行”,在对话框中填入“cmd”,点“确定”。
(2)在MS-DOS方式下执行如下命令:
arp-a
显示如下结果:
NoARPEntriesFound
(3)在MS-DOS方式下执行如下命令:
ping192.168.30.77
然后再用arp-a命令查看,显示结果如下:
结果中的MAC地址为user2主机的地址,在user2主机上用ipconfig/all命令可以验证,显示结果如下图:
4、在“网上邻居”里查看其他计算机
双击“网上邻居”,双击“邻近的计算机”就能看到在同一工作组里的其他计算机,如下图所示:
5、双击“我的电脑”,在某一个盘符或者某一个文件夹右击点选“共享”选项卡,点击“共享该文件夹”,这样别的主机就可以共享你的资源。
结果如下图所示:
4总结
本次实验是我们计算机网络系统实践的第一次实验,在本次实验中我学习到了很多知识,例如:
如何配置IP地址、如何查看当前主机的IP地址、如何进行局域网组建、如何进行文件共享。
在实验的过程当中,我注重把计算机网络课程的课堂内容跟实践内容相互糅合,从而实现将理论知识运用于具体实践当中。
(二)WWW服务器、FTP服务器的构建
(1)了解WWW的基本概念;
(2)了解B/S开发模式的概念;
(3)熟悉HTTP协议;
(4)掌握常见的WWW服务器的构建方法。
在Windows2000平台上,基于IIS或者Apache构建WWW服务器,利用IE浏览器进行测试。
1、利用Apache构建WWW服务器:
(1)安装:
a.双击安装软件,开始安装,首先出现一个欢迎窗口,点击“Next”按钮继续,出现如图所示的“LicenseAgreement”对话框,选择第一项接受许可协议。
b.连续点击“Next”按钮,按界面提示继续,直到出现如图所示的界面,在此设置服务器的基本信息。
c.点击“Next”按钮继续,出现如图所示的界面,在此选择安装类型Typical选项,连续点击“Next”按钮,按界面提示继续,直到点击“Install”按钮开始拷贝文件,最后点击“Finish”按钮完成安装。
d.安装完成在“开始”菜单中可以找到“ApacheHTTPServer”组,在Windows任务栏中出现Apache的图标,在Window的系统服务列表中也会增加如图所示的Apache的条目。
(2)配置
a.DocumentRoot
该参数制定Apache服务器存放网页的路径,默认所有要求提供HTTP服务的连接,都以这个目录为主目录。
默认值为:
DocumentRoot“C:
/ProgramFiles/ApacheGroup/Apache2/htdocs”
b.Listen
该参数用来制定Apache服务器用于监听客户端连接请求IP地址和端口。
c.ServerName
该参数使得用户可以自行设置主机名,以取代安装Apache服务器主机的真实名字。
d.MaxKeepAliveRequests
当使用保持连接功能时,可以使用本参数觉得每次连接所能发出的要求数目的上限。
e.MaxRequestsPerChild
该参数限制每个子进程在结束前所能处理的请求数目。
(3)测试
Apache安装完成,服务器启动以后,默认情况下它会在80端口上进行监听。
要连接到服务器访问默认页面,启动一个浏览器并输入下列URL:
http:
//localhost/
如果看到图示页面,则表明Apache的安装、配置是成功的,否则检查Apache安装文件夹中logs目录下的“erro.log”文件。
一旦基本配置可以工作,你应该编辑conf目录下的文件来恰当的配置Apache。
2、利用Serv-U构建FTP服务器
(1)安装
a.按照屏幕上的提示操作执行安装过程,当看到图示的“SelectComponents”对话框时,选择要安装的组件。
b.根据提示一步步执行安装过程。
安装完成后紧接着进入初始配置阶段,出现图示“SetupWizard”对话框,引导用户进行初始化配置。
c.连续点击“Next”按钮,将出现图示的“Startlocalserver”对话框。
d.点击“Next”按钮,出现图示的“YourIPaddress”对话框,在其中输入本机的IP地址。
e.点击“Next”按钮,出现如图所示的“SystemService”对话框,在此处选择是否将FTP服务作为系统服务,在系统启动时自动运行该服务,在此处选择“Yes”。
f.点击“Next”按钮,出现如图所示的“Homedirectory”对话框,在此处指定供匿名用户访问的FTP服务的目录所在的本地文件夹。
g.点击“Next”按钮,出现图示的“Namedaccount”对话框,在此处选择“Yes”,进一步创建非匿名用户。
(2)配置
a.Serv-U安装完成后,在“开始”菜单中可以找到“Serv-UFTPServer”组,Windows任务栏中会出现Serv-U的图标,在Windows的系统服务列表中也会增加相应的条目。
b.通过运行Serv-UAdministrator可以对Serv-U服务器进行配置喝多管理,如图所示,在这里可以改变FTP服务器的监听端口号。
c.“Users”条目中显示了所有的FTP用户,如图所示,游记单击“Users”条目可以添加用户。
d.选择某个用户条目,将显示如图所示的界面,可以修改该用户的详细配置参数。
e.在图示的“DirAccess”标签页中,可以添加、删除访问目录和修改目录的访问权限。
(3)测试
使用Windows自带的工作于命令行方式的ftp程序为例进行测试,并熟悉常见的ftp命令。
启动Windows的命令行方式,输入“ftp127.0.0.1”命令,看到图示界面则表明FTP服务器安装成功。
本次实验总共分为两个模块:
WWW服务器的构建和FTP服务器的构建。
WWW服务器的构建是通过Apache来实现的,通过对Apache的安装,配置,选择实验中所需要的组件,若Apache安装并且配置成功的话将会出现前述的显示图;
FTP服务器的构建则是通过Serv-U来实现的,通过对Serv-U进行安装和配置,为FTP服务器设置好登录账户和密码,若FTP服务器安装并且运行成功,此时可以使用预先设置的账户和密码进行登录测试,并且此时已经可以实现上传文件等功能;
(三)串口通讯
(1)理解虚拟串口通讯和RS-232协议的原理
(2)掌握RS-232串口的基本连接方法
(3)在Windows环境下设计完成通过串口进行计算机通讯的程序设计
(4)掌握ActiveX控件MSComm在VC编程中的使用
(5)掌握CRC编码的原理及在串口通讯中的应用
PC机两台、串口线、Windows2000Profession操作系统、VC++6.0软件、串口调试助手、SnSetup
(1)创建接收端的主程序
创建空的MFC工程
打开VC环境,单击“文件”主菜单中的“新建”菜单项,在弹出的“新建”窗体选择“工程”标签,在标签下的列表框中列出的应用程序类型中选择“MFCAppWizard”选项。
在右边的“工程”文本框中填写工程名“JieShou”,并指定路径。
在弹出的对话框中选择“基本对话”,在其后弹出的3个窗体中,单击“下一步”即可,直至完成,至此,空的MFC工程建立完毕。
添加MSComm控件
选择“Project->
AddtoProject->
ComponentsandControls”菜单命令,弹出如图所示的ComponentsandControlsGallery对话框。
用户在“RegisteredActiveX”文件夹中选中“MicrosoftCommunicationControlVersion6.0”选项,单击“Insert”按钮就可以完成添加MSComm控件的操作。
在左边的项目工作区中点击Resourse选项卡,单击Dialog选项左边的+,在展开的项目中双击IDD_JIESHOU_DIALOG,这时在项目工作区右边出现已有两个按钮和一行文本的设计窗体,把MSComm控件转移至设计窗体中,并修改控件的ID为ID_COMMCTRL,再打开取消按钮的属性页,把它的ID改为IDC_CLEAR,标题改为“清屏”。
设计窗体及相应变量和函数的设置
将edit控件中的ID设置为ID_RECEIVE,在菜单“查看”中选择“建立类向导”,打开MemberVaviables选项卡。
如图所示:
在ClassName中选择类CjieShouDlg,先在ControlIDs中双击ID_COMMCTRL,在弹出窗体的MemberVariablename下为此控件命名为m_Com,类型为Control;
同理,在ControlIDs中双击IDC_RECEIVE,在弹出窗体的MemberVariablename下为此控件命名为m_Jieshou,类型为Cstring。
打开MemberVariables选项卡左边的MessageMaps选项卡,在ObjectIDs中选择IDC_CLEAR,在Messages下的文本框中双击BN_CLICKED,在弹出的对话框中双击BN_CLICKED,在弹出的对话框中将清屏按钮的对应函数命名为OnClear,再在ObjectIDs中选择ID_COMMCTRL,在Message下的文本框中双击OnComm,在弹出的对话框中将MSComm控件的对应函数命名为OnComm,在此函数中将完成发送信息的功能,代码如下:
voidCReceiveDlg:
:
OnComm()
{
//TODO:
Addyourcontrolnotificationhandlercodehere
VARIANThuiying;
char*string;
char*qinchustring;
intk,nEvent,i;
nEvent=m_Com.GetCommEvent();
if(nEvent==2)
{
k=m_Com.GetInBufferCount();
if(k>
0)
{
huiying=m_Com.GetInput();
string=(char*)(unsignedchar*)huiying.parray->
pvData;
}
i=0;
qinchustring=string;
while(i<
k)
i++;
qinchustring++;
*qinchustring='
\0'
;
m_Receive=(constchar*)string;
UpdateData(FALSE);
}
}
在项目工作区中选择ClassView选项卡,单击打开CjieShouDlg类,在函数OnInitDialog()中完成MSComm控件的初始化。
接受字符的功能是由函数OnComm()完成的。
在项目工作区中选中ClassView选项卡,找到CJieShouDlg类,在CJieShouDlg类中双击OnComm()函数,具体代码设计如下:
MSComm控件的初始化:
在项目工作区中选择ClassView选项卡,单击打开CSendDlg类,在函数OnInitDialog()末尾添加如下程序:
BOOLCSendDlg:
OnInitDialog()
……
SetIcon(m_hIcon,FALSE);
m_Com.SetCommPort
(1);
m_Com.SetInBufferSize(1024);
m_Com.SetOutBufferSize(512);
if(!
m_Com.GetPortOpen())m_Com.SetPortOpen(TRUE);
m_Com.SetInputMode
(1);
m_Com.SetSettings("
9600,n,8,1"
);
m_Com.SetRThreshold
(1);
m_Com.SetInputLen(0);
returnTRUE;
最后为“清屏”按钮的相应函数中添加如下代码:
OnClear()
m_Receive.Empty();
UpdateData(FALSE);
至此整个接收端的功能就完成了。
(2)虚拟串口设置部分
a.安装SnSetup,并创建通讯所用的窗口com1,com2,其中com2为接受端口。
b.打开串口调试助手,设置com1为发送端口,设置波特率及发送格式。
(3)运行
a.运行JieShou程序。
b.关闭com1口,然后打开,在串口调试助手中发送数据。
c.接受端窗体中显示接受字符。
本次实验内容为串口通信,它的基本原理是在主机中端口连接的基础上实现的,若两个端口未正常连接则此时不会正常通信。
而要想让端口正常连接,在实验中我们使用了串口调试工具。
此外,在实验中,我们为了形象的显示数据在串口之间的成功的传送,所以我们采用了MFC的方式来形象的展示串口通信。
二、选做部分
题目:
局域网实时通讯工具
1设计要求
(1).熟悉WinSockAPI主要函数的使用;
(2).掌握相应开发工具对WindowsSocketAPI的封装;
(3).制作基于局域网的一对一网络即时通讯工具,实现基本数据的网络传输。
2开发环境
Windows7系统,eclipse,java语言
3基本原理
TCP/IP实际上是一个协议组,它不仅包括TCP协议和IP协议,还包含许多其它的协议,所有这些协议共同工作,完成Internet上的信息传递。
本程序使用的是TCP/IP协议中的TCP传输控制协议(TransmissionControlProtocol),负责在应用程序之间传递数据。
TCP/IP协议的核心是传输层协议(TCP、UDP)、网络层协议(IP)和物理接口层,这三层通常在操作系统的内核中实现。
TCP/IP网络环境下的应用程序是通过网络系统编程界面(Socket)实现的,而Socket又利用下层的网络通信协议实现实际的通信工作。
IP地址即Internet地址,通常,IP地址标识Internet网上的某一台主机。
但是,TCP/IP网络实际上是将IP。
地址和网卡而不是主机联系起来。
互连网上的每一个网卡都有一个唯一的IP地址,而一台主机可能有多个有效的IP地址,如一台计算机可能拥有几块网卡。
网络协议(IP)是网络上信息从一台计算机传递给另一台计算机的方法或者协议。
网络上每台计算机(主机)至少具有一个IP地址将其与网络上其他计算机区别开。
IP地址通常使用点分十进制表示法,一个IP地址有32位或4个字节长点分十进制表示法将IP地址表示为一系列以圆点隔开的十进制数,其中每个数对应于一个字节。
4功能模块
1、C/S模块:
客户/服务器模型,在TCP/IP网络应用中,多数网络应用程序是使用客户/服务器.
服务程序通常在一个众所周知的地址监听对服务的请求,也就是说,服务进程一直处于休眠状态,直到一个客户程序提出了请求信息。
此时,服务程序被“惊醒”并且为客户端提供服务(对客户发出的请求作出适当的反应)虽然基于连接的服务是设计客户/服务器应用程序的标准,但有些服务也是可以通过数据报Socket提供的。
通常,网络应用程序包含两个独立的应用程序:
客户程序和服务器程序。
但是,也可以设计同时完成这两种功能的程序,例如,一些服务器程序如果不能完成一个服务请求时,它将充当客户程序,向其它服务器程序请求信息。
2、服务器端:
服务器端分为监听、接收和发送两个模块;
监听模块是由一个单独线程控制,在服务器启动后,始终监听是否有数据包发送过来。
服务器端代码如下:
/******************************ChatServer.java***********************************/
importjava.io.*;
importjava.awt.*;
importjava.awt.event.*;
importjavax.swing.*;
import.*;
import.ServerSocket;
/**聊天器的服务端*/
publicclassChatServerextendsJFrameimplementsActionListener{
ServerSocketserver;
//服务器端套接字
SockettheClient;
//与客户端通信的套接字
booleandone;
//通信是否结束
JButtonsend;
//发送按钮
JTextAreachatContent;
//聊天内容区
JTextFieldsentence;
//聊天信息栏
DataInputStreamin=null;
//来自客户端的输入流
DataOutputStreamout=null;
//发送到客户端的输出流
/**构造方法,建立服务端聊天室主窗口,准备通信*/
publicChatServer(){
buildGUI("
聊天室--服务器端"
try{
server=newServerSocket(2013);
//创建服务器端套接字对象
}catch(IOExceptione1){
System.out.println("
e1"
/**等待多个客户端的请求*/
while(true){
try{
theClient=server.accept();
//得到客户端的套接字
out=newDataOutputStream(theClient.getOutputStream());
//得到输出流
in=newDataInputStream(theClient.getInputStream());
//得到输入流
done=true;
Stringline=null;
//保存从客户端读取的一行信息
while(done){//提供Socket服务
while((line=in.readUTF())!
=null){
//等待对方输入流数据
chatContent.append("
对方:
"
+line+"
\n"
}
in.close();
//关闭输入流
out.close();
//关闭输出流
theClient.close();
//关闭与客户端通信的套接字
}
}catch(Exceptione){
chatContent.append("
对方("
+theClient.getInetAddress()+"
)已经离开聊天室...\n"
}
publicvoidbuildGUI(Stringtitle){
this.setTitle(title);
//设置窗口标题
this.setSize(400,300);
//设置窗口大小
Containercontainer=this.getContentPane();
//获取JFrame的内容面板
container.setLayout(newBorderLayout());
//设置布局方式为BorderLayout
JScrollPanecenterPanel=newJScrollPane();
//创建用于存放聊天记录的滚动面板
chatContent=newJTextArea();
//创建存放聊天内容的多行文本输入区对象
centerPanel.setViewportView(chatContent);
//将文本区放入滚动面板
container.add(centerPanel,BorderLayout.CENTER);
//将滚动面板放在主窗口的内容面板的中央位置
chatContent.setEditable(false);
//将文本区设置为不可编辑的状态
//创建底层面板对象,存放聊天标签、聊天栏、发送按钮
JPanelbottomPanel=newJPanel();
sentence=newJTextField(20);
//创建文本输入行对象,存放每次聊天的内容
send=newJButton("
发送"
//创建按钮对象
bottomPanel.add(newJLabel("
聊天信息"
));
//将标签贴到底部面板
bottomPanel.add(sentence);
//把聊天内容栏添加到底部面板上
bottomPanel.add(send);
//把发送按钮添加到底部面板上
container.add(bottomPanel,BorderLayout.SOUTH);
//把底部面板添加到主窗口的底部
send.addActionListener(this);
//注册发送按钮的动作事件
sentence.addActionListener(this);
//注册聊天信息栏的动作事件
this.setVisible(true);
//显示主窗口
/**使用匿名内部类监听窗口
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机网络 系统 实践 报告
![提示](https://static.bdocx.com/images/bang_tan.gif)