1、计算机网络实验讲义计算机网络课程实验讲义车生兵 著中南林业科技大学计算机与信息工程学院实验一 网线的制作与网络框架的设计实验目的1、熟悉基本的计算机网络设备。2、熟悉568A与568B网线标准。3、熟悉网络拓扑图的绘制。实验内容1、认识基本的计算机网络设备,如:交换机、路由器、防火墙、网线、网钳、网卡等。2、学会配置计算机的基本网络设置参数。3、掌握网线的586A和586B标准,制作合格的网线:平行线和交叉线。4、根据需要绘制计算机网络拓扑图,并为拓扑图中每个设备和端口分配IP和子网掩码。实验步骤1、领取网线2根和水晶头10个,制作平行线和交叉线各1根。2、读懂如图1.1所示的计算机网络结构图
2、,画出拓扑图。3、为拓扑图上的每个计算机和设备端口配置IP。4、为拓扑图上的每个计算机和设备端口配置子网掩码。图1.1 计算机网络实验结构图参考文献1、Andrew S.Tanenbaum。Computer Networks, Fourth Edition(计算机网络第4版)。Vrije Universiteit, Amsterdam,The herlands,清华大学出版社。 2、Scott Ballew | 夏昊 洪峰。Managing IP Networks with Cisco Routers(Cisco路由器管理 )。中国电力出版社。 3、(美)Jeanna Matthews著。计算
3、机网络实验教程, Computer Networks: Internet Protocols in Action。John Wiley & Sons出版社。 4、黄明,梁旭编著。计算机网络管理习题详解。机械工业出版社。5、黄明 梁旭 吴镝编著。计算机网络与通信习题详解。机械工业出版社。 6、雷振甲。网络工程师教程。清华大学出版社。7、张国鸣。网络管理员教程。清华大学出版社。8、罗云彬。Windows环境下32位汇编语言程序设计。电子工业出版社。9、Dpouglas E. Comer。用TCP/IP进行网际互联(1-3卷)。电子工业出版社。10、WRichard Stevens。TCP/IP详解
4、(1-3卷)。机械工业出版社2002年3月。11、熊桂喜 等译。计算机网络。清华大学出版社2002年7月。附录 网线标准1、586A12345678线序绿白绿橙白蓝蓝白橙棕白棕颜色2、586B12345678线序橙白橙绿白蓝蓝白绿棕白棕颜色实验二 交换机的使用与局域网的组建实验目的1、熟悉多层交换机的工作原理。2、熟悉多层交换机在组建局域网中的使用。3、掌握多层交换机的配置指令。4、掌握多层交换机2960 VLAN路由的配置。实验内容1、利用网线、计算机和交换机组建好各自的局域网。注意区分锐捷和思科品牌机器配置的区别与联系。2、为每台计算机配置IP地址和子网掩码。3、配置好交换机的设置,测试局
5、域网中的计算机和网关是否可以通信。图2.1 计算机网络实验拓扑结构图(CISCO三层交换机)图2.2 计算机网络实验结构拓扑图(RUIJIE三层交换机)实验步骤1、利用图2.1中的交换机,组建好各自的局域网。2、为每台计算机配置IP地址和子网掩码。3、配置好交换机的设置,暂时不打开路由功能。4、测试局域网中的计算机和网关是否可以通信了。5、打开路由功能,判断两个连接的局域网是否可以通信了。6、任意划分VLAN,打开路由功能,看各个子网中的计算机是否能够通信。参考文献1、Andrew S.Tanenbaum。Computer Networks, Fourth Edition(计算机网络第4版)。
6、Vrije Universiteit, Amsterdam,The herlands,清华大学出版社。 2、Scott Ballew | 夏昊 洪峰。Managing IP Networks with Cisco Routers(Cisco路由器管理 )。中国电力出版社。 3、(美)Jeanna Matthews著。计算机网络实验教程, Computer Networks: Internet Protocols in Action。John Wiley & Sons出版社。 4、黄明,梁旭编著。计算机网络管理习题详解。机械工业出版社。5、黄明 梁旭 吴镝编著。计算机网络与通信习题详解。机械工业
7、出版社。 6、雷振甲。网络工程师教程。清华大学出版社。7、张国鸣。网络管理员教程。清华大学出版社。8、罗云彬。Windows环境下32位汇编语言程序设计。电子工业出版社。9、Dpouglas E. Comer。用TCP/IP进行网际互联(1-3卷)。电子工业出版社。10、WRichard Stevens。TCP/IP详解(1-3卷)。机械工业出版社2002年3月。11、熊桂喜 等译。计算机网络。清华大学出版社2002年7月。附录 实验配置指令一、 S1配置指令2、 CISCO三层交换机EnableVlan databaseVlan 2 name vlan2ExitShow vlanConfig
8、ure terminalInterface f0/1Switchport trunk allowed vlan allSwitchport mode trunkInterface f0/2Switchport mode accessSwitchport access vlan 1Interface f0/3Switchport mode accessSwitchport access vlan 1Interface f0/4Switchport mode accessSwitchport access vlan 2Interface f0/5Switchport mode accessSwit
9、chport access vlan 22、RUIJIE三层交换机% 注意:锐捷网络实验机房的命令为:enable 14,密码是rg。Enable 14rgvlan 2name vlan2configure terminalInterface f0/2Switchport mode accessSwitchport access vlan 1Interface f0/3Switchport mode accessSwitchport access vlan 1Interface f0/4Switchport mode accessSwitchport access vlan 2Interfac
10、e f0/5Switchport mode accessSwitchport access vlan 2EndInterface vlan 1Ip address 192.168.1.65 255.255.255.0Interface vlan 2Ip address 192.168.1.129 255.255.255.0Ip routingexit二、 R1配置指令(CISCO三层交换机)EnableConfigure terminalInterface f0/0No ip addressNo shutdownInterface f0/0.1Encapsulation dot1q 1Ip a
11、ddress 192.168.1.65 255.255.255.192Interface f0/0.2Encapsulation dot1q 2Ip address 192.168.1.129 255.255.255.224ExitShow running三、 各台计算机的配置(公共配置部分)1、 计算机AIP: 192.168.1.66MASK: 255.255.255.192GATEWAY: 192.168.1.652、 计算机BIP: 192.168.1.67MASK: 255.255.255.192GATEWAY: 192.168.1.653、 计算机CIP: 192.168.1.13
12、0MASK: 255.255.255.224GATEWAY: 192.168.1.1294、 计算机DIP: 192.168.1.131MASK: 255.255.255.224GATEWAY: 192.168.1.129图2.3 实验室布线图图2.4 思科三层交换机单臂路由的实现图2.5 锐捷三层交换机VLAN路由的实现实验三 路由器的使用与广域网的组建实验目的1、熟悉路由器的工作原理。2、掌握路由器的使用。3、掌握路由器2620的常用配置指令。4、掌握广域网的构建与配置。实验内容1、构建两个局域网。2、利用路由器将两个局域网连接起来。3、配置交换机,使得本地网能够通信。4、配置路由器,使得
13、两个局域网能够通信。实验步骤1、根据图3.1连接好各个路由器的本地网和核心子网。2、配置好各个路由器本地交换机,使得构成一个本地局域网。3、测试本地网是否连通。4、配置路由器的本地以太网端口,作为本地网的网关。5、测试本地网与网关是否连通。6、配置好路由器的路由端口,测试两个子网是否能够通信。7、配置路由协议,测试两个子网是否能够通信。参考文献1、Andrew S.Tanenbaum。Computer Networks, Fourth Edition(计算机网络第4版)。Vrije Universiteit, Amsterdam,The herlands,清华大学出版社。 2、Scott Ba
14、llew | 夏昊 洪峰。Managing IP Networks with Cisco Routers(Cisco路由器管理 )。中国电力出版社。 3、(美)Jeanna Matthews著。计算机网络实验教程, Computer Networks: Internet Protocols in Action。John Wiley & Sons出版社。 4、黄明,梁旭编著。计算机网络管理习题详解。机械工业出版社。5、黄明 梁旭 吴镝编著。计算机网络与通信习题详解。机械工业出版社。 6、雷振甲。网络工程师教程。清华大学出版社。7、张国鸣。网络管理员教程。清华大学出版社。8、罗云彬。Windows
15、环境下32位汇编语言程序设计。电子工业出版社。9、Dpouglas E. Comer。用TCP/IP进行网际互联(1-3卷)。电子工业出版社。10、WRichard Stevens。TCP/IP详解(1-3卷)。机械工业出版社2002年3月。11、熊桂喜 等译。计算机网络。清华大学出版社2002年7月。图3.1 计算机网络实验结构图附录 实验配置指令一、各台计算机的配置2、 计算机AIP: 168.1.1.2MASK: 255.255.255.0GATEWAY: 168.1.1.12、计算机BIP: 168.1.1.3MASK: 255.255.255.0GATEWAY: 168.1.1.13
16、、计算机CIP: 168.1.1.4MASK: 255.255.255.0GATEWAY: 168.1.1.12、 计算机DIP: 168.1.1.5MASK: 255.255.255.0GATEWAY: 168.1.1.12、 计算机EIP: 10.0.0.2MASK: 255.255.255.0GATEWAY: 10.0.0.12、 计算机FIP: 10.0.0.3MASK: 255.255.255.0GATEWAY: 10.0.0.17、计算机GIP: 10.0.0.4MASK: 255.255.255.0GATEWAY: 10.0.0.18、计算机HIP: 10.0.0.5MASK:
17、255.255.255.0GATEWAY: 10.0.0.1二、R1路由器的配置Enable % 注意:网络实验机房的命令为:enable 14,密码是rg。Configure terminalInterface f0/0Ip address 168.1.1.1 255.255.255.0No shutdownexitInterface s0/0Ip address 192.168.1.1 255.255.255.0No shutdownBandwidth 2000ExitIp route 10.0.0.0 255.255.255.0 192.168.1.2ExitShow ip route四
18、、 R2路由器的配置EnableConfigure terminalInterface f0/0Ip address 10.0.0.1 255.255.255.0No shutdownexitInterface s0/0Ip address 192.168.1.2 255.255.255.0No shutdownExitIp route 168.1.1.0 255.255.255.0 192.168.1.1ExitShow ip route图3.1 路由器实验连线图实验四 基于TCP协议的聊天程序的开发实验目的1、掌握TCP/IP协议的工作原理。2、理解TCP提供的可靠服务实现原语的工作过程。
19、3、掌握TCP状态转换的原理。4、编程实现TCP/IP协议的通信。实验内容1、理解TCP/IP协议通信方服务器的工作过程。2、理解TCP/IP协议通信方终端机的工作过程。3、编程实现TCP/IP协议的通信。实验步骤1、设置服务器的工作流程图,并写出程序。2、设置终端机的工作流程图,并写出程序。3、调试服务器和终端机的程序,并上网测试。4、写出测试结果。参考文献1、Andrew S.Tanenbaum。Computer Networks, Fourth Edition(计算机网络第4版)。Vrije Universiteit, Amsterdam,The herlands,清华大学出版社。 2、
20、Scott Ballew | 夏昊 洪峰。Managing IP Networks with Cisco Routers(Cisco路由器管理 )。中国电力出版社。 3、(美)Jeanna Matthews著。计算机网络实验教程, Computer Networks: Internet Protocols in Action。John Wiley & Sons出版社。 4、黄明,梁旭编著。计算机网络管理习题详解。机械工业出版社。5、黄明 梁旭 吴镝编著。计算机网络与通信习题详解。机械工业出版社。 6、雷振甲。网络工程师教程。清华大学出版社。7、张国鸣。网络管理员教程。清华大学出版社。8、罗云彬
21、。Windows环境下32位汇编语言程序设计。电子工业出版社。9、Dpouglas E. Comer。用TCP/IP进行网际互联(1-3卷)。电子工业出版社。10、WRichard Stevens。TCP/IP详解(1-3卷)。机械工业出版社2002年3月。11、熊桂喜 等译。计算机网络。清华大学出版社2002年7月。附录1 实验原理1. 基本术语客户机:Client,也称为工作站端或客户端,它是通信的发起端。服务器:Server,它是通信的等待方。图4.1显示了客户端和服务器端工作方式的不同。软件运行的界面如图4.2所示。图4.1 TCP C/S模型图4.2 软件运行界面2. 聊天室客户端的
22、实现客户端程序包括程序文件client.asm和资源文件client.rc。资源文件确定了客户端的界面形式。程序文件的流程图如图图4.3所示。它先调用WSAStartup函数初始化WinSock库。当用户输入IP并点击连接按钮后,使用Socket函数创建流套接字,使用WSAAsyncSelect函数将通知消息自定义的ID(即:hSocket)绑定到窗口过程中,再使用connect函数去连接服务器。连接成功时,系统的FD_CONNECT会通知消息给客户端窗口。连接成功后就可以传输数据了。A. 系统原语recv收到数据后,发送系统通知消息FD_READ,客户端将从缓冲区szReadBuffer中读
23、取数据。B. 客户端需要发送数据时,从对话框中获取数据,写入缓冲区szBuffer,调用系统原语send函数发送出数据,在收到系统FD_WRITE通知消息后,继续发送数据。C. 在缓冲区满或发送失败时,客户端将重发并等待FD_WRITE通知消息的到来。连接失败则调用closesocket函数断开连接。用户在数据传输完毕,调用closesocket函数断开连接。客户端收到FD_CLOSE通知消息时,连接已经断开。在客户端关闭时,调用WSACleanup函数卸载WinSock库。图4.3 客户端程序结构图4.4 服务器端程序结构3. 聊天室服务器端的实现服务器端程序包括程序文件server.asm
24、和资源文件server.rc。资源文件确定了服务器端的界面形式。程序文件的流程图如图图4.4所示。在WinSock库的加载和卸载,何时去读取套接字,发送数据时的流量控制等方面,服务器端和客户端的工作原理是一样的。当服务器端准备在端口9999提供服务时,需要创建流套接字,并设置为非阻塞模式,再使用bind函数将套接字hSocket和端口stSin绑定。接着调用函数listen让套接字进入监听状态,并指定监听队列允许保持的尚未处理的最大连接数为5。这样,主程序收到系统FD_ACCEPT通知消息后,调用accept接受客户机的连接请求,调用_AddClient将其加入到客户端列表中,并统计当前的用户
25、数dwCount。收到系统FD_READ通知消息后,服务器会调用_RecvData处理接收到的TCP包。收到系统FD_CLOSE通知消息后,服务器会调用_RemoveClient从客户端列表中删除当前用户的sochet。附录2 实验源程序1、 服务器端; Server.asm; 使用 TCP 协议的聊天室例子程序 服务器端; 使用 nmake 或下列命令进行编译和链接:; ml /c /coff Server.asm; rc Server.rc; Link /subsystem:windows Server.obj Server.res .386 .model flat, stdcall op
26、tion casemap :none ; case sensitive; Include 数据include windows.incinclude user32.incincludelib user32.libinclude kernel32.incincludelib kernel32.libinclude wsock32.incincludelib wsock32.lib; equ 数据DLG_MAIN equ 2000IDC_INFO equ 2001IDC_COUNT equ 2002WM_SOCKET equ WM_USER + 100TCP_PORT equ 9999MAX_SOC
27、KET equ 100 ;聊天室最大容量; 数据段 .data?hWinMain dd ?hSocket dd ?dwCount dd ?szReadBuffer db 32768 dup (?)szBuffer db 32768 dup (?)stTable dd MAX_SOCKET dup (?) .constszErrBind db 无法绑定到TCP端口9999,请检查是否有其它程序在使用!,0szFormat db 【客户端#%08x】- %s,0dh,0ah,0; 代码段 .code; 在客户端列表中加上一个 socket_AddClient proc _hSocket invok
28、e WSAAsyncSelect,_hSocket,hWinMain,WM_SOCKET,FD_READ or FD_CLOSE xor ebx,ebx mov esi,offset stTable .while ebx MAX_SOCKET .if ! dword ptr esi push _hSocket pop esi inc dwCount invoke SetDlgItemInt,hWinMain,IDC_COUNT,dwCount,FALSE ret .endif inc ebx add esi,4 .endw invoke closesocket,_hSocket ret_Add
29、Client endp; 从客户端列表中去掉一个 socket_RemoveClient proc _hSocket xor ebx,ebx mov esi,offset stTable mov edi,_hSocket .while ebx MAX_SOCKET .if esi = edi invoke closesocket,esi mov dword ptr esi,0 dec dwCount invoke SetDlgItemInt,hWinMain,IDC_COUNT,dwCount,FALSE ret .endif inc ebx add esi,4 .endw ret_RemoveClient endp; 处理接收到的TCP包_RecvData proc _hSocket local dwRecv invoke RtlZeroMemory,addr szReadBuffer,sizeof szReadBuffer invoke recv,_hSocket,addr szReadBuffer,sizeof szReadBuffer,NULL .if eax != SOCKET_ERROR mov dwRecv,eax i
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1