网络技术基础实验报告华北电力大学.docx
《网络技术基础实验报告华北电力大学.docx》由会员分享,可在线阅读,更多相关《网络技术基础实验报告华北电力大学.docx(18页珍藏版)》请在冰豆网上搜索。
![网络技术基础实验报告华北电力大学.docx](https://file1.bdocx.com/fileroot1/2023-2/2/c4634baa-77a6-4f88-89ca-2c7d00b350af/c4634baa-77a6-4f88-89ca-2c7d00b350af1.gif)
网络技术基础实验报告华北电力大学
课程设计(综合实验)报告
(2011—2012年度第2学期)
名称:
网络通信实验与设计
题目:
VB6.0、网线制作、路由器配置及组网、网络通信综合实验
院系:
电子与通信工程系
班级:
通信0903
学号:
学生姓名:
指导教师:
李然陈智雄贾惠彬王雅宁
设计周数:
2周
成绩:
日期:
2012年5月19日
实验环境
VB6.0
实验名称
实验一:
熟悉VB环境及UDP通信实验程序的设计
实验目的
1.通过实验熟悉VB语言开发平台。
2.通过实验进一步理解UDP通信协议,掌握UDP通信协议的特点。
实验原理
在TCP/IP模型中,UDP为网络层以上和应用层以下提供了一个简单的接口。
UDP只提供数据的不可靠传递,它一旦把应用程序发给网络层的数据发送出去,就不保留数据备份(所以UDP有时候也被认为是不可靠的数据报协议)。
UDP在IP数据报的头部仅仅加入了复用和数据校验(字段)。
用户数据文报协议 (UDP) 是一个无连接协议。
跟 TCP 的操作不同,计算机并不建立连接。
另外,UDP应用程序可以是客户机,也可以是服务器。
应用层
UDP
TCP
IP
各种网络接口
传输层
为了传输数据,首先要设置本机的使用协议和本机端口号。
然后,本机计算机只需将RemoteHost设置为需要聊天的计算机的Internet地址,并将RemotePort属性设置为跟需要聊天的计算机的LocalPort属性相同的端口,并调用SendData方法来发送信息。
最后,本台计算机使用DataArrival事件内的GetData方法来获取对方计算机已发送的信息。
实验内容
实验步骤:
1.用自己的名字建立子目录。
2.进入VB6.0,双击StandardEXE。
3.出现标准窗体,调整窗体大小到适当尺寸。
4.工程名改为UdpTest,窗体名改为FrmMain,窗体的caprion属性改为“聊天程序”。
5.添加TextBox控件,名字改为IPAdr,Text属性为空,用以输入聊天对象的IP地址。
6.添加两个Lable控件,一个作为背景色,一个作为前景色,属性改为对方“IP地址”,为了使文字在lable的正中央,调整两个lable的叠放位置。
7.添加CommandButton控件,Caption属性改为“确定”,用以确定IP地址。
实
验
内
容
8.添加TextBox控件,名字改为TextRecieve,Text属性为空,MultiLine属性为True,ScrollBars属性为2,用以显示接受聊天内容。
9.添加TextBox控件,名字改为TextSend,Text属性为空,MultiLine属性为True,Scrollballs属性为2,用以显示发送聊天内容。
10.添加CommandButton控件,Caption属性改为“发送”,用以发送聊天内容。
11.添加Winsock控件,名字改为UdpSocket.
12.存盘,存盘路径为自己建立的子目录。
程序代码:
PrivateSubCommand1_Click()
UdpSocket.Protocol=sckUDPProtocol'选择UDP协议
UdpSocket.RemoteHost=IPAdr'远方IP地址
UdpSocket.RemotePort=2012'远方端口
UdpSocket.Bind2012'本地端口
EndSub
PrivateSubCommand2_Click()
UdpSocket.SendDataTextSend.Text
DimstrData1AsString
DimstrData2AsString
strData1=TextSend.Text
strData2="发送:
"
TextRecieve.Text=TextRecieve&Chr(13)&Chr(10)
TextRecieve.Text=TextRecieve&strData2&strData1'本机发送数据也显示在'TextSend对话框中
TextSend.Text=""'清空发送文本框
EndSub
PrivateSubUdpSocket_DataArrival(ByValbytesTotalAsLong)
DimstrDataAsString'定义接收数据以字符串形式显示
DimstrData3AsString
UdpSocket.GetDatastrData
strData3="接收:
"
TextRecieve.Text=TextRecieve&Chr(13)&Chr(10)'在旧数据后加回车换行
TextRecieve.Text=TextRecieve&strData3&strData'将新数据加到旧数据之后都在对话框中显示
EndSub
实验结果及分析
1.运行程序,分别和两个人聊天
2.聊天双方在IPAdr中输入对方IP地址,点确定,开始通信。
3.在TextSend中输入发送信息,点发送,可以在TextReceive中看到对话内容,自己发送的是“发送:
”后显示的内容。
4.同理,对方收到信息后,显示在对方TextRecieve中。
对方进行同种操作,将可以在本机的TextRecieve中显示,显示在“接收:
”后,现在即实现了利用UDP进行双方聊天。
分析:
UDP协议是端到端的协议,不需要实现建立连接,只需知道对方的IP地址就可发送数据,每个报文都带有完整的目的地址,协议比较简单,但是它不保证报文传输的可靠性。
IP地址知道后,就可以利用SendData发送数据,数据利用UDP协议传输数据,接收方利用GataData接收数据。
至此,双方可以进行正常的聊天。
实验名称
实验二:
TCP通信程序的设计
实验目的
1、本实验为验证性实验。
2、掌握TCP协议的基本原理。
3、掌握TCP协议的通信过程,加深对TCP通信协议的理解。
实
验
原
理
TCP是一种面向连接的、可靠的、基于字节流的运输层(Transportlayer)通信协议。
TCP的服务流程:
TCP协议提供的是可靠的、面向连接的传输控制协议,即在传输数据前要先建立逻辑连接,然后再传输数据,最后释放连接3个过程。
TCP提供端到端、全双工通信;采用字节流方式,如果字节流太长,将其分段;提供紧急数据传送功能。
TCP提供的面向连接意味着两个使用TCP的应用(通常是一个客户和一个服务器)在彼此交换数据之前必须先建立一个TCP连接。
TCP连接的建立:
TCP协议通过三次握手完成连接的建立
TCP连接的终止:
由于TCP的半关闭,需要四次握手
实验步骤:
1.用自己的名字建立子目录。
2.进入VB6.0,双击StandardEXE。
3.出现标准窗体,调整窗体大小到适当尺寸。
4.工程名改为TcpTest,窗体名改为FrmMain,窗体的caprion属性改为“数据流通信程序”。
5.添加TextBox控件,名字改为TexrSendYourName,Text属性为空,用以输入你的汉语名字。
6.添加TextBox控件,名字改为TextRecieve,Text属性为空,MultiLine属性为True,ScrollBars属性为2,用以显示接受数据。
7.添加TextBox控件,名字改为TextSend,Text属性为空,MultiLine属性为True,Scrollballs属性为3,用以显示你设计的程序。
8.添加CommandButton控件,Caption属性改为“连接”,用以连接服务器的IP地址。
9.添加CommandButton控件,Caption属性改为“发送数据”,用以发送固定格式数据。
实
验
内
容
10.添加CommandButton控件,Caption属性改为“发送姓名”,用以发送你的汉语名字。
11.添加三个Lable控件,属性分别为“发送”,“接受”,“程序”,用以显示Text控件的意义。
12.添加Winsock控件,名字改为TcpSocket.
存盘,存盘路径为自己建立的子目录。
程序代码:
PrivateSubCommand1_Click()
TcpSocket.Close
TcpSocket.Protocol=sckTCPProtocol
TcpSocket.RemoteHost="129.9.0.X"
TcpSocket.RemotePort=2012
TcpSocket.Connect
EndSub
PrivateSubCommand2_Click()
TcpSocket.SendData"网络通信实验与设计"
EndSub
PrivateSubCommand3_Click()
TcpSocket.SendDataTextSendYourName.Text
TextSendYourName.Text=""
EndSub
PrivateSubCommand4_Click()
TcpSocket.SendDataTextSend.Text
EndSub
PrivateSubTcpSocket_DataArrival(ByValbytesTotalAsLong)
DimstrDataAsString
TcpSocket.GetDatastrData
TextReceive.Text=TextReceive&Chr(13)&Chr(10)
TextReceive.Text=TextReceive&strData
EndSub
运行程序:
1.点击连接。
在状态栏中可看到“已建立连接,请发送数据“字样。
2.点发送数据,发送“网络通信实验与设计”到服务器,即在服务器可以显示这些文字。
状态栏中出现“接收数据成功,请发送姓名”。
3.在TextSendYourName中输入自己的名字,点发送,在服务器即可显示你的名
字,状态栏显示“发送姓名成功,请发送程序”。
将自己的程序复制到TextRecieve中,点发送程序,服务器即可显示你发的程序,此时你的状态栏显示“程序传送成功,实验已经完成”。
实
验
结
果
及
分
析
TCP界面截图:
TCP服务器显示:
分析:
TCP协议是面向连接的传输协议,它需要先建立连接,这样保证了数据传输的可靠性。
在简化的计算机网络OSI模型中,它完成第四层传输层所指定的功能。
应用层向TCP层发送用于网间传输的、用8位字节表示的数据流,然后TCP把数据流分割成适当长度的报文段(通常受该计算机连接的网络的数据链路层的最大传送单元(MTU)的限制)。
之后TCP把结果包传给IP层,由它来通过网络将包传送给接收端实体的TCP层。
TCP为了保证不发生丢包,就给每个字节一个序号,同时序号也保证了传送到接收端实体的包的按序接收。
然后接收端实体对已成功收到的字节发回一个相应的确认(ACK);如果发送端实体在合理的往返时延(RTT)内未收到确认,那么对应的数据(假设丢失了)将会被重传。
实验名称
实验三:
基于FTP的文件传输程序设计
实验目的
1、本实验为设计性实验。
2、掌握FTP协议的基本原理。
3、通过自主设计FTP协议通信程序,进一步学习理解FTP通信协议,掌握FTP通信协议的基本工作原理。
·实
验
原
理
FTP是TCP/IP协议组中的协议之一,是英文FileTransferProtocol的缩写。
该协议是Internet文件传送的基础,它由一系列规格说明文档组成,目标是提高文件的共享性,提供非直接使用远程计算机,使存储介质对用户透明和可靠高效地传送数据。
简单的说,FTP就是完成两台计算机之间的拷贝,从远程计算机拷贝文件至自己的计算机上,称之为“下载(download)”文件。
若将文件从自己计算机中拷贝至远程计算机上,则称之为“上传(upload)”文件。
在TCP/IP协议中,FTP标准命令TCP端口号为21。
FTP也是一个客户/服务器系统。
用户通过一个客户机程序连接至在远程计算机上运行的服务器程序。
依照FTP协议提供服务,进行文件传送的计算机就是FTP服务器,而连接FTP服务器,遵循FTP协议与服务器传送文件的电脑就是FTP客户端。
用户要连上FTP服务器,就要用到FPT的客户端软件。
实
验
内
容
1.用自己的名字建立子目录。
2.进入VB6.0,双击StandardEXE。
3.出现标准窗体,调整窗体大小到适当尺寸。
4.工程名改为FtpTest,窗体名改为FrmMain,窗体的caprion属性改为“文件传输程序”。
5.添加TextBox控件,名字改为TextIP,Text属性为为服务器IP地址。
6.添加TextBox控件,名字改为TextPort,Text属性为21,用以显示端口号。
7.添加TextBox控件,名字改为TextUserName,Text属性为雷玉芬,用以显示服务器允许用户名。
8.添加TextBox控件,名字改为TextPassWord,属性为空,PassWord的属性为“*”,用以显示密码。
9.添加TextBox控件,名字改为TextUpFile,Text属性为空,用以显示上传文件路径和名称。
实验内容
10.添加TextBox控件,名字改为TextDownFile,Text属性为空,用以显示下载文件路径和名称。
11.添加TextBox控件,名字改为TextState,Text属性为空,用以显示文件输出状态。
12.添加CommandButton控件,Caption属性改为“连接”,用以连接服务器的IP地址。
13.添加CommandButton控件,Caption属性改为“上传文件”,用以向服务器发送文件。
14.添加CommandButton控件,Caption属性改为“下传文件”,用以从服务器下载文件。
15.添加7个Lable控件,属性分别为“服务器地址”,“端口”,“用户名”,“密码”,“上传文件”,“下传文件”,“状态”,用以显示Text控件的意义。
16.添加InternetTransfer控件,名字改为FtpInt..
程序代码:
PrivateSubCommand1_Click()‘初始化InternetTransfer控件
FtpInet.Protocol=icFTP‘定义协议类型
FtpInet.RemoteHost="129.9.0.X"‘定义FTP服务器所在IP
FtpInet.RemotePort=TextPort.Text‘定义服务器所用端口号
UserName=TextUserName‘设置用户名为TextUserName中输入的名字
Password=TextPassWord‘设置密码为TextPassWord中输入的密码
FtpInet.Execute‘FTP执行
EndSub
PrivateSubCommand2_Click()‘发送文件到服务器
FtpInet.Execute,"SEND"&TextUpFile.Text‘用Execute方法传送文件,路径,源文件名和目标文件名在TextUpFile中输入
EndSub
PrivateSubCommand3_Click()‘下载文件
FtpInet.Execute,"GET"&TextDownFile.Text‘用Execute方法下载文件,目标文件名,存储路径和存储文件名在TextDownFile中输入
EndSub
PrivateSubFtpInet_StateChanged(ByValStateAsInteger)‘设置状态变化事件
TextState.Text=FtpInet.ResponseInfo‘在TextState中显示状态信息
EndSub
实验结果及分析
1.运行程序,由于是一人使用本机,为了方便,将用户名和服务器都已在属性中更改,填写密码,在服务器开启的状态下,并且都已输入用户信息后,点连接。
2.在TextUpFile中输入路径,源文件名和目标文件名,点上传文件,即可在服务器指定访问目录中找到自己上传的文件
3.在TextDownFile中输入源文件名,存储路径和目标文件名,点击下载文件,即可从服务器指定访问目录中下载源文件到自己指定的目的文件夹中,文件名为指定目标文件名。
FTP窗体界面:
分析:
上传文件的目的地址和下载文件的源地址,都是FTP服务器指定的目录。
FTP客户端首先和FTP服务器的TCP21端口建立连接,通过这个通道发送命令,客户端需要接收数据的时候在这个通道上发送PORT命令。
PORT命令包含了客户端用什么端口接收数据。
在传送数据的时候,服务器端通过自己的TCP20端口连接至客户端的指定端口发送数据。
FTPserver必须和客户端建立一个新的连接用来传送数据。
实验名称
实验四:
网线制作
实验设备
压线钳一把、测线仪一个、双绞线若干段、RJ-45水晶头若干
实验目的
1.了解常用网线的种类。
2.掌握在各种应用环境下非屏蔽双绞线制作网线的方法及连接方法。
3.掌握网线连通性测试方法。
实验原理
双绞线可按其是否外加金属网丝套的屏蔽层而区分为屏蔽双绞线(STP)和非屏蔽双绞线(UTP)。
从性价比和可维护性出发,大多数局域网使用非屏蔽双绞线(UTP)作为布线的传输介质来组网。
双绞线由8根不同颜色的线分成4对绞合在一起,成对扭绞是因为,发送和接收的数据均以差分方式传输,即每一对线互相扭在一起传输一路差分信号(所谓的差分信号是指一根线以正电平方式传输信号,另外一根线以负电平方式传输同一信号),当线路中出现干扰信号时,其对两根线的影响是相同的,因而在接收端还原差分信号时就可以屏蔽掉该干扰信号,减少和抑制外界的干扰,从而减少和抑制外界的干扰。
绞线由8很不同颜色的线分成4对绞合在一起,成对扭绞的作用是尽可能减少电磁辐射与外部电磁干扰的影响。
在EIA/TIA-568标准中,将双绞线按电气特性区分为:
三类、四类、五类线。
网络中最常用的是三类线和五类线,目前已有六类以上的。
做好的网线要将RJ45水晶头接入网卡等网络设备的RJ45插座内。
相应地RJ45插头座也区分为三类或五类电气特性。
RJ45水晶头由金属片和塑料构成,制作网线所需要的RJ一45水晶接头前端有8个凹僧,简称“SE”(Position,位置)。
凹槽内的金属触点共有8个,简称“8C”(Contact,触点)。
特别需要注意的是RJ45水晶头引脚序号,当金属片面对我们的时候从左至右引脚序号是1~8,序号对于网络连线非常重要。
网线制作方法有两种:
(1)直通线:
双绞线两边都按照EIAT/TIA568B标准连接水晶头。
(2)交叉线:
双绞线一边是按照EIAT/TIA568A标准连接,另一边按照EIT/TIA568B标准连接水晶头。
用户可根据实际需要选用直通线或交叉线,各种使用情况如下(PC:
计算机、HUB:
集线器、SWITCH:
交换机、ROUTER:
路由器):
PC——PC:
交叉线;PC——HUB:
直通线;HUB普通口——HUB普通口:
交叉线;HUB级联口——HUB级联口:
交叉线
本实验使用直通线:
双绞线两边都按照EIAT/TIA568B标准连接水晶头,线序:
白橙/橙/白绿/蓝/白蓝/绿/白棕/棕。
在实际通信中,只用到双绞线八根铜线中的第1、2、3、6四条铜线。