上一篇:【计算机网络 实验报告6】路由选择协议
目录
实验目的
二、实验环境
三、实验内容
四、实验过程与结果
五、实验遇到的问题及解决方法
实验心得
实验目的
1.1熟悉UDP与TCP协议的主要特点及支持的应用协议
1.2理解UDP的无连接通信与TCP的面向连接通信
1.3熟悉TCP报文段和UDP报文的数据封装格式
1.4熟悉TCP通信的三个阶段
1.5理解TCP连接建立过程和TCP连接释放过程
二、实验环境
软件Cisco Packet Tracter Student
网络拓扑及网络参数
三、实验内容
4.1任务一:观察UDP无连接的工作模式
步骤2:分析UDP无连接的工作过程
源端口(Source Port):1026
目的端口(Destination Port):53
长度(Length):0x23,整个UDP报文的长度是35字节。
校验和(Checksum):0x0校验和的值为0。 数据部分长度 = 35字节 - 8字节 = 27字节
任务二:分析TCP连接建立阶段的三次握手
l
四、实验过程与结果
1、给出计算机和服务器的IP地址配置结果的截图。
PC0
Server0
2、给出服务器上DNS配置结果的截图。
3、DNS服务器进程使用的端口号是多少?它传输数据时使用的是传输层的那种协议?
端口号:53 传输层协议:UDP
4、在浏览器访问网站过程中,是访问了服务器的哪个端口,浏览器本身使用的端口是固定的吗?
服务器的80端口,浏览器本身使用的端口是不固定的
给出在进行TCP连接管理分析时,你捕获到的“Event List (事件列表)”截图。
6、经过实验后回答
(1)TCP报文首部中的序号和确认号有什么作用?
序号(Sequence Number):序号用于标识从TCP源端向目的端发送的数据字节流,确保数据的顺序性。每个字节的数据都有一个序号,这样即使数据包在传输过程中乱序,接收端也可以根据序号重新排列。序号也用于处理数据包的重复问题。确认号(Acknowledgment Number):确认号是接收端期望收到的下一个字节的序号,表示接收端已经成功接收了序号小于这个值的所有数据。它是一个回执,告诉发送端可以继续发送数据,或者在需要时进行重传。确认号机制是TCP可靠传输的一个重要组成部分。
(2)链接过程经过几次握手,每次的SEQ,ACK,SYN的值分别是什么?
TCP连接建立过程(三次握手)的要点是:客户端发送SYN报文段(SEQ=x)请求连接,服务器响应SYN+ACK报文段(SEQ=y,ACK=x+1),客户端再发送ACK报文段(ACK=y+1)确认连接建立。
(3)链接释放过程经过几次握手,每次的SEQ,ACK,SYN的值分别是什么?
TCP连接释放过程(四次挥手)的要点是:客户端发送FIN报文段(SEQ=u)请求关闭连接,服务器响应ACK报文段(ACK=u+1),然后服务器发送FIN报文段(SEQ=w)请求关闭连接,客户端最后发送ACK报文段(ACK=w+1)确认连接关闭。
五、实验遇到的问题及解决方法
问题:设置DNS服务器的时候没有找到如何设置,解决方法网上找教程需要打开DNS服务器设立地址
实验心得
本次实验围绕UDP与TCP两种传输层协议展开,通过Cisco Packet Tracer Student软件搭建实验环境,完成了UDP无连接工作模式观察、TCP连接建立与释放过程分析等任务,不仅让我扎实掌握了两种协议的核心特性,更将课堂上的理论知识与实践操作深度结合,深刻体会到网络协议在数据传输中的核心作用,收获颇丰。
实验之初,我明确了实验目的,重点聚焦于熟悉UDP与TCP协议的特点、理解无连接与面向连接的差异、掌握报文封装格式及TCP通信的三个阶段。在实验环境搭建阶段,通过配置计算机与服务器的IP地址、设置DNS服务器,我初步熟悉了网络拓扑的构建流程,也认识到网络参数配置的严谨性——任何一个参数的错误设置,都可能导致整个实验无法正常进行。其中,在设置DNS服务器时,我曾遇到无法找到配置入口的问题,通过查阅教程得知需先打开DNS服务器设立地址,这一过程让我明白,实验中遇到问题不可急于求成,耐心排查并主动寻找解决方法,是完成实验的关键。
在任务一观察UDP无连接工作模式时,通过分析捕获的UDP报文,我清晰了解到其数据封装格式:源端口1026、目的端口53,整个报文长度35字节,减去8字节的首部后,数据部分长度为27字节,校验和为0。这让我直观感受到UDP协议的简洁性——无需建立连接,直接发送数据,开销小、传输速度快,也理解了其无连接特性的本质:发送方无需确认接收方是否准备就绪,接收方也无需反馈接收状态,这也决定了其不可靠传输的特点,适合对实时性要求高、可容忍少量数据丢失的场景,如DNS查询,这与实验中DNS服务器使用UDP协议、端口号53的结果相呼应。
任务二分析TCP连接建立的三次握手,是本次实验的重点与难点。通过捕获事件列表、分析TCP报文首部的序号和确认号,我深入理解了TCP面向连接的核心机制。TCP连接建立需经过三次握手,客户端发送SYN报文段发起连接,服务器响应SYN+ACK报文段确认,客户端再发送ACK报文段完成连接建立,这一过程确保了通信双方都能确认彼此的接收和发送能力,避免了无效连接的建立。而序号与确认号的作用更是让我深刻认识到TCP可靠传输的原理:序号标识数据字节流,确保数据有序传输,即使数据包乱序也能重新排列;确认号作为接收回执,告知发送端数据已接收,便于重传机制的实现。此外,通过分析TCP连接释放的四次挥手,我了解到双方需分别确认数据传输完成后再关闭连接,进一步体现了TCP协议的可靠性。
实验过程中,我还明确了浏览器访问网站时的端口使用规则:服务器使用80端口提供服务,而浏览器使用的端口不固定,这一细节让我意识到端口在网络通信中的标识作用,不同端口对应不同的应用服务,确保数据能够准确送达目标进程。同时,通过对比UDP与TCP协议,我总结出两者的核心差异:UDP无连接、不可靠、开销小,TCP面向连接、可靠、开销大,它们各自适用于不同的应用场景,如UDP适用于实时音视频,TCP适用于文件传输、网页浏览等对可靠性要求高的场景。
此次实验也让我认识到自身的不足:初期对报文格式的分析不够熟练,对三次握手、四次挥手的细节理解不够透彻,通过反复捕获报文、对照理论知识逐一分析,才逐步掌握核心要点。同时,我深刻体会到理论与实践结合的重要性,课堂上抽象的协议概念,通过实验操作变得直观可感,不仅加深了记忆,更提升了我的动手能力和问题排查能力。
总而言之,本次实验让我全面熟悉了UDP与TCP协议的相关知识,掌握了实验操作的基本方法,也培养了严谨的实验态度和解决问题的能力。在今后的学习中,我将继续加强网络协议的学习,多动手实践,深入理解网络通信的底层原理,为后续相关知识的学习和应用奠定坚实的基础。