当前位置:文档之家› 实验四、UDP及TCP协议分析与验证

实验四、UDP及TCP协议分析与验证

实验四:UDP及TCP协议分析与验证

一、实验目的

1.学会使用Wireshark或其他抓包工具进行特定包抓取,并对包进行必要分析。

2.分析验证UDP协议首部信息。

3.分析验证TCP协议首部信息。

4.分析验证TCP连接建立与释放过程。

5.分析验证TCP协议的数据传输过程。

二、预计实验学时

2学时

三、实验步骤

1、UDP包捕获与分析:打开Wireshark,进行必要设置(非混杂模式以避免干扰,仅UDP包,达到设定的抓包数量后自动停止等),随机抓取两个UDP包,分别提取出包的UDP首部,分析出该包的源端口、目的端口、UDP数据包长度、该包是客户发给服务器方的还是相反等信息。

这个UDP包的源端口 Source port:54644

目的端口 Destination port:10505

UDP数据包长度 Length:99 (99字节)

这个UDP包是服务器方发给客的信息,因为,Src:172.20.68.43 而,本地IP地址为10.169.13.108

这个UDP包的源端口 Source port:63664

目的端口 Destination port:10019

UDP数据包长度 Length:136 (136字节)

这个UDP包也是服务器发给客户的信息。

2、TCP包捕获与分析:

1)打开浏览器到空白页。

2)打开Wireshark,进行必要设置(非混杂模式以避免干扰,仅TCP 80端口包),打开一个网页,等到捕获了打开该网页的所有数据包后,停止捕获。

3)对前10个包的序号seq及确认序号ack进行跟踪分析,看看他们是否与所学知识的变化情况一致。

答:一致。

4)随机抓取两个TCP包,分别提取出包的UDP首部,分析出该包的源端口、目的端口、TCP数据包长度、该包是客户发给服务器方的还是相反等信息。

这个TCP包的源端口 Source port: 52140

目的端 Destination port: 80 这是http客户机进程向服务器发起的TCP连接的端口号

TCP数据包长度 Header length:32bytes

该TCP包是客户发给服务器方的信息,因为Src :10.169.13.108 这是本地计算机的IP地址

这个TCP包的源端口 Source port: 80

目的端 Destination port: 52140

TCP数据包长度 Header length:28bytes

该TCP包是服务器方发给客户的信息,因为Dst :10.169.13.108 这是本地计算机的IP地址

5)通过设置过滤条件(IP地址为特定目的IP地址),找出一个TCP连接的完整通信信息。从中找出该连接建立时使用的数据包,分析其中相关信息,检验是否与所学一致。

以下为TCP连接三次握手具体过程:

第一次握手:52142>http 客户发出连接请求,标志位为SYN ,Seq=0

第二次握手:http>52141 服务器收到连接请求报文后,向客户发出确认报文段,标志位为SYN+ACK,Seq=0, Ack=1

第三次握手:52141>http 客户收到服务器确认报文段后向服务器发送连接请求确认报文段,标志位为ACK,Seq=1,Ack=1。

结论:从这一过程来看,跟所学的知识一致。

6)从中找出撤销该连接时使用的数据包,分析相关信息,检验是否与所学一致。判断该撤销过程采用了半关闭模式。

以下为TCP连接释放四次握手具体过程:

第一次握手:标志位为FIN+ACK,Seq=280,Ack=328。

第二次握手:标志位为ACK,Seq=328,Ack=281(seq+1),此时,TCP的连接处于半关闭状态。

第三次握手:标志位为FIN+ACK,Seq=328,Ack=281 (seq+1)

第四次握手:标志位为ACK,Seq=281 (seq+1),Ack=329。

结论:服务器在接收到客户连接释放请求报文之后发出确认,此时,服务器进入了CLOSE-WAIT(关闭状态),TCP服务器进程这时通知高层应用进程,因而从客户到服务器这个方向的连接就开始释放了,而从服务器到客户这个方向的连接并未关闭,所以这时,TCP连接处于半关闭状态。

3.总结TCP的连接建立、数据传输及连接撤消过程。

答:TCP连接要经过三次握手:

第一次握手、客户向服务器发出连接请求报文段;

第二次握手、服务器接收到连接请求报文段后,向客户发出确认报文段;

第三次握手、客户收到服务器的确认报文段后向服务器发送连接请求确认报文段,

此时,TCP连接已经建立。

TCP连接建立后就可以传输数据了,要知道,TCP提供的是可靠交付的传输,如果数据在传输过程中,出现差错,就需要进行数据重传;如果发生丢失或者超时传输,这时就需要自动重传请求ARQ来进行重新传输数据。

当数据传输结束后,通信双方都可以释放已经建立的TCP连接,而TCP连接释放要经过四次握手:第一次握手、客户先向服务器发出连接释放报文段,并停止再发送数据,主动关闭TCP连接;

第二次握手、服务器接收到连接释放报文段后向客户发出确认报文段,此时,TCP处于半关闭状态;

第三次握手、客户接收到确认报文段后进入终止等待状态,等待服务器发出的连接释放报文段,此时,若服务器已经没有数据发给客户,就向客户发出连接释放报文段,此时,服务器进入最后确认状态;

第四次握手、客户接收到服务器的连接释放报文段后向服务器发送连接释放确认报文段,此时,TCP连接还没有释放掉,在客户撤销相应的传输控制块TCB后,才结束本次TCP连接。

TCP协议分析实验报告

TCP协议分析实验报告 实验4传输层协议分析 一、实验目的 1、学习3CDaemon FTP服务器的配置和使用,分析TCP报文格式,理解TCP的连接建立、和连接释放的过程。 2、学习3CDaemon TFTP服务器的配置和使用,分析UDP报文格式,理解TCP 协议与UDP协议的区别。 二、实验工具软件3CDaemon软件简介 3CDaemon是3Com公司推出的功能强大的集FTP Server、TFTP Server、Syslog Server 和TFTP Client于一体的集成工具,界面简单,使用方便。 这里主要介绍实验中需要用到的FTP Server功能和TFTP Server功能。 1、FTP Server功能 (1)配置FTP Server功能:选中左窗格功能窗口,打开FTP Server按钮,单击窗格中的 Configure FTP Server按钮,打开3CDaemon Configuration配置窗口,配置FTP Server功能。 这里需要设置的就是“Upload/Download”路径,作为FTP Server的文件夹,其它选项可以使用系统缺省设置。设置完成后,单击确认按钮,设置生效。 (2)在实验中,我们使用3CDaemon系统内置的匿名帐户“anonymous”登陆FTP 服务器, 客户端使用微软FTP客户端命令,关于Ftp命令的说明介绍如下。 (3) Ftp命令的说明 FTP的命令格式:ftp[-v][-d][-i][-n][-g][-w:windowsize][主机名/IP地址] 其中:

-v不显示远程服务器的所有响应信息; -n限制ftp的自动登录; -i在多个文件传输期间关闭交互提示 -d允许调试、显示客户机和服务器之间传递的全部ftp命令; -g不允许使用文件名通配符; -w:windowsize忽略默认的4096传输缓冲区。 使用FTP命令登录成功远程FTP服务器后进入FTP子环境,在这个子环境下,用户可以使用FTP的内部命令完成相应的文件传输操作。 FTP常用内部命令如下: open host[port]:建立指定ftp服务器连接,可指定连接端口。 user user-name[password][account]:向远程主机表明身份,需要口令时必须输入。 append local-file[remote-file]:将本地文件追加到远程系统主机,若未指定远程系统文件名,则使用本地文件名。 cd remote-dir:进入远程主机目录。 cdup:进入远程主机目录的父目录。 cd[dir]:将本地工作目录切换至dir。 dir[remote-dir][local-file]:显示远程主机目录,并将结果存入本地文件。get remote-file[local-file]:将远程主机的文件remote-file传至本地硬盘的local-file。 ls[remote-dir][local-file]:显示远程目录remote-dir,并存入本地文件local-file。 put local-file[remote-file]:将本地文件local-file传送至远程主机。 mput local-file:将多个文件传输至远程主机。 nlist[remote-dir][local-file]:显示远程主机目录的文件清单,存入本地硬盘local-file。

wireshark分析tcp协议

WireShark分析TCP协议 韩承昊3172700 摘要: 利用wireshark分析TCP协议的报文,和其基本行为,包括三 次握手,中间信息的交互,和最后的断开连接。其中通过中间信息的交互,可以看出TCP的累积式确认。 一:基本TCP报文分析 我们来看一个简单的TCP报文,现在蓝字选中的是源端口号,

我们可以看到在这个报文中是14065,下面对应的是相应的二进制代码,我们可以看到的确是16bit。紧随其后的16bit就是目的端口号。 下面是序号,Sequence number: 1169。接下来的32bit是确认号,Acknowledgement number: 19353。再后面是首部长度,Header length: 20 bytes,和未用的3bit数据。 0= Urgent:Not set,1=Acknowledgement: set,0= Push:Not set,0= Reset:Not set,0= Syn:Not set,0= Fin:Not set,这些表示的是一些标识位,是URG紧急标识,ACK确认标识,PSH推送标识,RST、SYN、FIN用于建立和结束连接。window size value:65535 表示接收窗口。 二:三次握手分析 三次握手的第一步,客户机端会向服务器端发送一个特殊的TCP报文段,这个报文段的SYN被置为1,并会发送一个起始序号seq。

我们看到SYN为1,且Sequence number=0,这样,面对这样的请求报文段,服务器听该返回一个SYN=1,返回自己的初始seq,并且要求主机发送下一个报文段的序号,ack=1。下面是服务端实际返回的报文。 正如我们所期待的那样,服务器返回了自己的seq=0,并且要求主机端发送下一个报文段,并且SYN=1。这样主机端就应该返回seq=1,ack=1,要求服务端发送下一个报文,并且SYN=0,结束建立连接阶段,结束三次握手。

TCP和UDP协议简介

TCP和UDP协议简介 从专业的角度说,TCP的可靠保证,是它的三次握手机制,这一机制保证校验了数据,保证了他的可靠性。而UDP就没有了,所以不可靠。不过UDP的速度是TCP比不了的,而且UDP的反应速度更快,QQ就是用UDP协议传输的,HTTP是用TCP协议传输的,不用我说什么,自己体验一下就能发现区别了。再有就是UDP和TCP的目的端口不一样(这句话好象是多余的),而且两个协议不在同一层,TCP在三层,UDP不是在四层就是七层。TCP/IP协议介绍 TCP/IP的通讯协议 这部分简要介绍一下TCP/IP的内部结构,为讨论与互联网有关的安全问题打下基础。TCP/IP协议组之所以流行,部分原因是因为它可以用在各种各样的信道和底层协议(例如T1和X.25、以太网以及RS-232串行接口)之上。确切地说,TCP/IP协议是一组包括TCP 协议和IP协议,UDP(User Datagram Protocol)协议、ICMP(Internet Control Message Protocol)协议和其他一些协议的协议组。 TCP/IP整体构架概述 TCP/IP协议并不完全符合OSI的七层参考模型。传统的开放式系统互连参考模型,是一种通信协议的7层抽象的参考模型,其中每一层执行某一特定任务。该模型的目的是使各种硬件在相同的层次上相互通信。这7层是:物理层、数据链路层、网路层、传输层、话路层、表示层和应用层。而TCP/IP通讯协议采用了4层的层级结构,每一层都呼叫它的下一层所提供的网络来完成自己的需求。这4层分别为: 应用层:应用程序间沟通的层,如简单电子邮件传输(SMTP)、文件传输协议(FTP)、网络远程访问协议(Telnet)等。 传输层:在此层中,它提供了节点间的数据传送服务,如传输控制协议(TCP)、用户数据报协议(UDP)等,TCP和UDP给数据包加入传输数据并把它传输到下一层中,这一层负责传送数据,并且确定数据已被送达并接收。 互连网络层:负责提供基本的数据封包传送功能,让每一块数据包都能够到达目的主机(但不检查是否被正确接收),如网际协议(IP)。 网络接口层:对实际的网络媒体的管理,定义如何使用实际网络(如Ethernet、Serial Line 等)来传送数据。 TCP/IP中的协议 以下简单介绍TCP/IP中的协议都具备什么样的功能,都是如何工作的: 1.IP 网际协议IP是TCP/IP的心脏,也是网络层中最重要的协议。 IP层接收由更低层(网络接口层例如以太网设备驱动程序)发来的数据包,并把该数据包发送到更高层---TCP或UDP层;相反,IP层也把从TCP或UDP层接收来的数据包传送到更低层。IP数据包是不可靠的,因为IP并没有做任何事情来确认数据包是按顺序发送的

TCP IP网络协议分析实验报告

TCP/IP网络协议分析实验 一、实验目的 1. 通过实验,学习和掌握TCP/IP协议分析的方法及其相关工具的使用; 2. 熟练掌握 TCP/IP体系结构; 3. 学会使用网络分析工具; 4. 网络层、传输层和应用层有关协议分析。 二、实验类型 分析类实验 三、实验课时 2学时 四、准备知识 1.Windows 2003 server 操作系统 2.TCP/IP 协议 3.Sniffer工具软件 五、实验步骤 1.要求掌握网络抓包软件Wireshark。内容包括: ●捕获网络流量进行详细分析 ●利用专家分析系统诊断问题 ●实时监控网络活动 ●收集网络利用率和错误等 2.协议分析(一):IP协议,内容包括: ●IP头的结构 ●IP数据报的数据结构分析 3.协议分析(二):TCP/UDP协议,内容包括: ●TCP协议的工作原理 ●TCP/UDP数据结构分析

六、实验结果 1.IP协议分析: (1)工作原理:IP协议数据报有首部和数据两部分组成,首部的前一部分是固定长度,共20字节,是IP数据报必须具有的。首部分为,版本、首部长度、服务类型、总长度、标识、标志、片偏移、生存时间、协议、首部检验和、源地址、目的地址、可选字段和数据部分 (2)IPV4数据结构分析:

2.TCP协议分析: (1)工作原理:TCP连接是通过三次握手的三条报文来建立的。第一条报文是没有数据的TCP报文段,并将首部SYN位设置为1。因此,第一条报文常被称为SYN分组,这个报文段里的序号可以设置成任何值,表示后续报文设定的起始编号。连接时不能自动从1开始计数,选择一个随机数开始计数可避免将以前连接的分组错误地解释为当前连接的分组。

tcp协议分析报告

tcp协议分析报告 篇一:TCP协议分析报告 TCP/IP协议分析实验报告 一、本人承担的工作 在这次利用Wireshark 进行TCP/IP协议分析实验中,我负责协助使用Wireshark软件分析IP数据包、TCP数据结构,以及编写实验报告。 二、遇到的困难及解决方法 遇到的困难是我们在自己的电脑上ping本地一个IP地址时,出现了错误导致抓包进行不了, 后来在实验室里进行抓包就可以了。我觉得可能是在ping本地IP地址时无法与那个IP地址的主机连接,可以ping其他的本地网关,且让ping的次数增多让Wireshark抓包成功率加大即可。 三、体会与总结 通过这次利用Wireshark捕获数据包并且分析IP, TCP数据结构,结合课本第三章知识,我了解了数据结构包括版本,头部长度,区分服务,总长度,标识,标志,片偏移,生存时间,协议,检验和,源IP地址,目标IP地址,选项等, 1 而且知道ping(packet internet grope)是用于测试源主机到目的主机网络的连通性,Wireshark是用于尝试捕获网络包并显示包的尽可能详细的情况。 篇二:实验报告(TCP协议分析实验报告) 实验四传输层协议分析 一、实验目的

1、学习3CDaemon FTP服务器的配置和使用,分析TCP报文格式,理解TCP的连接建立、和连接释放的过程。 2、学习3CDaemon TFTP服务器的配置和使用,分析UDP报文格式,理解TCP 协议与UDP协议的区别。 二、实验工具软件3CDaemon软件简介 3CDaemon是3Com公司推出的功能强大的集FTP Server、TFTP Server、Syslog Server 和TFTP Client于一体的集成工具,界面简单,使用方便。 这里主要介绍实验中需要用到的FTP Server功能和TFTP Server功能。 1、FTP Server功能 (1)配置FTP Server功能:选中左窗格功能窗口,打开FTP Server按钮,单击窗格中的 Configure FTP Server按钮,打开3CDaemon Configuration配置窗口,配置FTP Server功能。 这里需要设置的就是“Upload/Download”路径,作为FTP Server的文件夹,其它选项可以使用系统缺省设置。设置完 2 成后,单击确认按钮,设置生效。 (2)在实验中,我们使用3CDaemon系统内置的匿名帐户“anonymous”登陆FTP 服务器, 客户端使用微软FTP客户端命令,关于Ftp命令的说明介绍如下。 (3) Ftp命令的说明 FTP的命令格式:ftp[-v][-d][-i][-n][-g][-w:windowsize][主机名/IP地址] 其中: -v不显示远程服务器的所有响应信息; -n限制ftp的自动登录; -i在多个文件传输期间关闭交互提示

TCP协议和UDP协议的原理及通信特点

这里介绍非常有用的TCP协议和UDP协议的基本原理及通信特点TCP协议原理: TCP(Tranfer Control Protocol)提供面向连接、可靠的字节流服务。在传输数据流前,双方会先建立一条虚拟的通信道。一个TCP连接必须要经过三次“对话”才能建立起来,一为请求连接,二为同步要求,三为确认发送。详细的讲,TCP连接为接受端的接收缓冲区设置滑动窗口,接收端只允许发送缓冲区能容纳的数据,在滑动窗口的基础上进行流量控制,以防止数据溢出缓冲区。接收端还会在接收时进行TCP数据校验,有错就放弃该分片,不确认其接收,使之超时重发。这就保证数据的准确性和可靠性,同时也相对增加数据量和传输时间。 UDP协议原理: UDP(User Data Protocol)协议是将网络数据量压缩成数据包的形式在网络中进行传输,是一种无连接的协议。使用UDP传输数据时,每个数据段都是一个独立的信息,包括完整的源地址和目的地,在网络上以任何可能的路径传到目的地,因此,能否到达目的地,以及到达目的地的时间和内容的完整性都不能保证。不过UDP报头携带的信息比TCP的少的多,有更多的数据空间。 TCP协议和UDP协议的通信特点: TCP是面向连接的可靠的协议,适用于传输大批量的文件。它提供有效流控、全双工操作和多路复用的服务。

DP适用于一次只传送少量数据、对可靠性要求不高、对速度要求很高的应用环境(如在线视频)。UDP协议是面向非连接的协议,没有建立连接的过程。正因为UDP协议没有连接的过程,所花时间少,此外它的数据密度大,所以它的通信效率高,实时行很好。 此外TCP不能发送广播和组播,只能单播,而UDP可以广播和组播。TCP的传输模式是流模式,UDP的是数据报模式。TCP占用的系统资源较多。UDP段结构比TCP的简单,网络开销小。 总之,速度和可靠性只能二选一,目前最常用的协议是TCP/IP 协议和UDP 协议。而其他的如RMI,SOAP,FTP ,等协议都可以说是构建在这两者之上的。怎么选看环境了。

网络实验报告 TCP协议分析

《计算机网络(II)》实验报告 实验名称:TCP协议分析 班级:100341C 姓名:汪何媛学号:100341324 任课教师:顾兆军 完成日期:2012.12.14 实验环境:网络结构一 一、实验目的 1)查看TCP连接的建立和释放 2)编辑并发送TCP报文段 3)TCP的重传机制 二、实验内容 练习一:察看TCP连接的建立和释放 1. 主机B、C、D启动协议分析器进行数据捕获,并设置过滤条件(提取TCP协议)。 2. 主机C打开TCP工具,类型选择“服务器”,端口填写大于1024的值; 点击“创建”,如果端口被占用则选择其它。主机A打开TCP工具,类型选择“客户端”,地址填入主机C的IP地址;在端口填入主机C的TCP工具监听的端口;点击[连接]按钮进行连接。

3.察看主机B、C、D捕获的数据,填写下表。

TCP 连接建立时,前两个报文的首部都有一个“maximum segment size”字段,它的值是多少?作用是什么?结合IEEE802.3协议规定的以太网最大帧长度分析此数据是怎样得出的。 maximum segment size=1460 4. 主机A 断开与主机C 的TCP 连接。 5. 察看主机B 、C 、D 捕获的数据,填写下表。 字段名称 报文1 报文2 报文3 序列号 2532372657 1948328206 2532372658 确认号 0 2532372658 1948328207 ACK 0 1 1 SYN 1 1

字段名称 报文4 报文5 报文6 报文7 序列号 3013278418 1558034120 1558034120 3013278419 确认号 1558034120 3013278419 3013278419 1558034121 ACK 1 1 1 1 FIN 1 1 练习二:利用仿真编辑器编辑并发送TCP 数据包 ? 本练习将主机A 和B 作为一组,主机C 和D 作为一组,主机E 和F 作为一组,现仅以主机A 和B 为例,说明实验步骤。 ? 在本实验中由于TCP 连接有超时时间的限制,故仿真编辑器和协议分析器的两位同学要默契配合,某些步骤(如计算TCP 校验和)要求熟练、迅速。 ? 为了实现TCP 三次握手过程的仿真,发送第一个连接请求帧之前,仿真端主机应该使用“仿真编辑器/工具菜单/TCP 屏蔽/启动屏蔽”功能来防止系统干扰(否则计算机系统的网络会对该请求帧的应答帧发出拒绝响应)。 ? 通过手工编辑TCP 数据包实验,要求理解实现TCP 连接建立、数据传输以及断开连接的全过程。在编辑的过程中注意体会TCP 首部中的序列号和标志位的作用。

传输控制协议(TCP)

《计算机网络实验》实验报告 实验名称:传输控制协议(TCP) 年级: 专业:班级: 姓名: 学号:成绩: 指导教师:卢正添 提交报告时间: 2012年 5月3 日 实验目的 1.掌握TCP协议的报文格式 2.掌握TCP连接的建立和释放过程

3.掌握TCP数据传输中编号与确认的过程 4.掌握TCP协议校验和的计算方法 5.理解TCP重传机制 实验环境配置 该实验采用网络结构一 实验步骤 练习一 1.主机B、C、D启动协议分析器进行数据捕获,并设置过滤条件(提取TCP协议)。 2.主机C打开TCP工具,类型选择“服务器”,端口填写大于1024的值;点击“创建”,如 果端口被占用则选择其它。主机A打开TCP工具,类型选择“客户端”,地址填入主机C 的IP地址;在端口填入主机C的TCP工具监听的端口;点击[连接]按钮进行连接。 3.察看主机B、C、D捕获的数据,填写下表。 CP连接建立时,前两个报文的首部都有一个“maximum segment size”字段,它的值是多少?作用是什么?结合IEEE802.3协议规定的以太网最大帧长度分析此数据是怎样得出的。 maximum segment size=1460

4.主机A断开与主机C的TCP连接。 5.察看主机B、C、D捕获的数据,填写下表。

练习二 ?本练习将主机A和B作为一组,主机C和D作为一组,主机E和F作为一组,现仅以主机A和B为例,说明实验步骤。 ?在本实验中由于TCP连接有超时时间的限制,故仿真编辑器和协议分析器的两位同学要默契配合,某些步骤(如计算TCP校验和)要求熟练、迅速。 ?为了实现TCP三次握手过程的仿真,发送第一个连接请求帧之前,仿真端主机应该使用“仿真编辑器/工具菜单/TCP屏蔽/启动屏蔽”功能来防止系统干扰(否则计算机系统的网络会对该请求帧的应答帧发出拒绝响应)。 ?通过手工编辑TCP数据包实验,要求理解实现TCP连接建立、数据传输以及断开连接的全过程。 在编辑的过程中注意体会TCP首部中的序列号和标志位的作用。 首先选择服务器主机上的一个进程作服务器进程,并向该服务器进程发送一个建立连接请求报文,对应答的确认报文和断开连接的报文也编辑发送。其步骤如下: 1.主机B启动协议分析器捕获数据,设置过滤条件(提取HTTP协议)。 2.主机A上启动仿真编辑器,在界面初始状态下,程序会自动新建一个单帧,可以利用仿真 编辑器打开时默认的以太网帧进行编辑。 3.填写该帧的以太网协议首部,其中: 源MAC地址:主机A的MAC地址。 目的MAC地址:服务器的MAC地址。 协议类型或数据长度:0800(IP协议)。 4.填写IP协议头信息,其中: 高层协议类型:6(上层协议为TCP)。 总长度:40(IP首部+TCP首部)。 源IP地址:主机A的IP地址。

TCPIP协议分析教案

《TCP/IP协议分析》课程教学大纲 一、课程的性质和教学目标 【课程性质】计算机网络是计算机技术和通信技术紧密结合的产物。计算机网络的发展水平不仅反映了一个国家的计算机科学和通信技术水平,而且已经成为衡量其国力及现代化程度的重要标志之一。网络技术的应用几乎已经渗透到社会的各个行业,了解网络和应用网络已成为当今大学生必备知识范畴和技能。 【教学目标】本课程在计算机网络原理课程的基础上,指导学生进一步了解TCP/IP协议的运作方式和细节,并掌握利用TCP/IP协议进行网络编程的基本能力。具体任务包括:掌握ARP、IP、TCP、FTP、HTTP等常见协议的工作原理、流程及相互联系;掌握通过协议栈接口编写网络通信程序的方法,为后续专业课程的学习打下基础。 二、课程支撑的毕业要求及其指标点 该课程支撑以下毕业要求和具体细分指标点: 【毕业要求1】工程知识:能够将数学、自然科学、工程基础和专业知识用于解决复杂工程问题。 支撑指标点1.6:掌握计算机科学与技术专业中计算机体系构成及相关基本原理。

三、课程教学内容、学时分配及对毕业要求的支撑 1.理论教学安排 加深对于TCP/IP协议的体系架构、工作原理、使用方法的理解。

2.课内实践教学安排

四、课程教学方法设计 以课堂教学为主,结合自学、课堂讨论和实验演示等教学形式。 课堂教学主要对TCP/IP协议栈中重要层次典型协议进行深入分析。通过理论讲解和实际网络抓包演示相结合,分析TCP/IP栈中重要协议在各种场景下的数据交换过程,使同学们更好地了解TCP/IP协议的设计和实现,并具备利用抓包工具对网络中数据包进行分析的能力。同时,结合网络编程训练,使同学们更好地理解TCP/IP协议栈与网络程序之间的关系,了解TCP/IP协议栈向网络程序提供的编程接口,并初步掌握利用该接口编写简单的网络程序的能力,从而加深对TCP/IP协议栈功能的理解。 通过课后作业、自学和讨论的方法来使同学们加深对概念和原理的理解。习题内容注意网络协议分析实际动手能力的训练。认真批改作业,并统计记录每次作业成绩。对作业中的常见错误和共性问题进行讲解。 课堂内实践教学要求学生动手进行抓包分析,编写简单的网络程序代码,并以组为单位完成任务和实验报告的编写,从而培养其自主学习能力和团队协作能力。

《TCPIP协议分析》课程设计

成绩: 《TCP/IP协议分析》课程设计 题目: ICMP协议分析 院(系): 专业班级: 姓名: 学号: 任课教师: 2013年6月10日

精品文档 。 1欢迎下载 目 录 1协议概述 (1) 1.1协议名称 (1) 1.2协议主要功能 (1) 1.3协议来源 (1) 1.4协议版本发展历程 (2) 2协议工作原理及流程 (2) 2.1协议工作原理 (2) 2.2协议工作流程分析 (3) 3协议格式分析 (5) 4协议应用 (10) 4.1 ICMP FLOOD 攻击 (10) 4.1.1 ICMP 洪水的成因 (10) 4.1.2 实现ICMP 洪水的前提 (10) 4.1.3 洪水——两败俱伤的攻击方式 (10) 4.1.4 不同方式的ICMP 洪水 (11) 4.2 ICMP 防御 (12) 5结术语 (14) 参考文献 (14)

《TCP/IP协议分析》课程设计 1协议概述 1.1协议名称 ICMP是Internet Control Message Protocol的简称,即Internet控制报文协议。ICMP协议是一种面向连接的协议,属于网络层协议,用来测试网络是否畅通。 1.2协议主要功能 ICMP是Internet控制报文协议。它是TCP/IP协议族的一个子协议,用于在IP主机、路由器之间传递控制消息,包括报告错误、交换受限控制和状态信息等。当遇到IP数据无法访问目标、IP路由器无法按当前的传输速率转发数据包等情况时,会自动发送ICMP消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。这些控制消息虽然并不传输用户数据,但是对于用户数据的传递起着重要的作用。 ICMP协议是一种面向连接的协议,用于传输出错报告控制信息。它是一个非常重要的协议,它对于网络安全具有极其重要的意义。[1] 主要功能是: 1.侦测远端主机是否存在? 2.建立及维护路由资料? 3.重导资料传送路径。 4.资料流量控制? 1.3协议来源 在IP通信中,经常有数据包不能到达对方的情况,原因是在通信途中的某处的一个路由器由于不能处理所有的数据包,就将数据包一个一个的丢弃。或者因为搞错了端口号,因而服务器软件不能接受它,所以作为IP不可缺少的功能来规定了ICMP网络传输协议。 1

TCP协议分析

实验四传输层协议分析 一、实验目的 1、学习3CDaemon FTP服务器的配置和使用,分析TCP报文格式,理解TCP的连接建立、和连接释放的过程。 2、学习3CDaemon TFTP服务器的配置和使用,分析UDP报文格式,理解TCP协议与UDP协议的区别。 二、实验工具软件3CDaemon软件简介 3CDaemon是3Com公司推出的功能强大的集FTP Server、TFTP Server、Syslog Server 和TFTP Client于一体的集成工具,界面简单,使用方便。 这里主要介绍实验中需要用到的FTP Server功能和TFTP Server功能。 1、FTP Server功能 (1)配置FTP Server功能:选中左窗格功能窗口,打开FTP Server按钮,单击窗格中的Configure FTP Server按钮,打开3CDaemon Configuration配置窗口,配置FTP Server功能。 这里需要设置的就是“Upload/Download”路径,作为FTP Server的文件夹,其它选项可以使用系统缺省设置。设置完成后,单击确认按钮,设置生效。 (2)在实验中,我们使用3CDaemon系统内置的匿名帐户“anonymous”登陆FTP服务器,客户端使用微软FTP客户端命令,关于Ftp命令的说明介绍如下。 (3) Ftp命令的说明 FTP的命令格式:ftp[-v][-d][-i][-n][-g][-w:windowsize][主机名/IP地址] 其中: -v不显示远程服务器的所有响应信息; -n限制ftp的自动登录; -i在多个文件传输期间关闭交互提示 -d允许调试、显示客户机和服务器之间传递的全部ftp命令; -g不允许使用文件名通配符; -w:windowsize忽略默认的4096传输缓冲区。 使用FTP命令登录成功远程FTP服务器后进入FTP子环境,在这个子环境下,用户可以使用FTP 的内部命令完成相应的文件传输操作。 FTP常用内部命令如下: open host[port]:建立指定ftp服务器连接,可指定连接端口。 user user-name[password][account]:向远程主机表明身份,需要口令时必须输入。append local-file[remote-file]:将本地文件追加到远程系统主机,若未指定远程系统文

实验四 TCP 协议分析

郑州轻工业学院本科 实验报告 题目:实验四TCP 协议分析 学生姓名:王冲 系别:计算机与通信工程学院 专业:网络运维 班级:网络运维11-01 学号:541107110123 指导教师:熊坤 2014 年10 月28 日

实验四TCP 协议分析 一、实验目的 1、分析HTTP 协议 2、分析DNS 协议 二、实验环境 与因特网连接的计算机网络系统;操作系统为windows;Ethereal、IE 等软件。 三、实验步骤 1.俘获大量的由本地主机到远程服务器的TCP 分组 (1)启动浏览器,打开http://biz.doczj.com/doc/839368832.html,/ethereal- labs/alice.txt 网页,得到ALICE'S ADVENTURES IN WONDERLAND文本,将该文件保存到你的主机上。

(2)打开http://biz.doczj.com/doc/839368832.html,/ethereal- labs/TCP-ethereal- file1.html (3)窗口如下图所示。在Browse按钮旁的文本框中输入保存在你的主机上的文件ALICE'S ADVENTURES IN WONDERLAND的全名(含路径),此时不要按“Upload alice.txt file”按钮 (4)启动Ethereal,开始分组俘获。 (5)在浏览器中,单击“Upload alice.txt file”按钮,将文件上传到http://biz.doczj.com/doc/839368832.html,服务器,一旦文件上传完毕,一个简短的贺词信息将显示在你的浏览器窗口中。 (6)停止俘获。 2.浏览追踪信息

(1)在显示筛选规则中输入“tcp”,可以看到在本地主机和服务器之间传输的一系列tcp和http报文,你应该能看到包含SYN报文的三次握手。也可以看到有主机向服务器发送的一个HTTP POST 报文和一系列的“http continuation”报文。 (2)根据操作回答“四、实验报告内容”中的1-2题。 3.TCP 基础 根据操作回答“四、实验报告内容”中的3-10 题 4.TCP 拥塞控制 (1)在Ethereal已俘获分组列表子窗口中选择一个TCP 报文段。选择菜单: Statistics->TCP Stream Graph-> Time-Sequence-Graph(Stevens)。你会看到如下所示的图。

简述TCP和UDP协议在通信原理上的区别和相同之处

简述TCP和UDP协议在通信原理上的区别和相同之处。 TCP(Transmission Control Protocol,传输控制协议)是基于连接的协议,也就是说,在正式收发数据前,必须和对方建立可靠的连接。一个TCP连接必须要经过三次“对话”才能建立起来,其中的过程非常复杂,我们这里只做简单、形象的介绍,你只要做到能够理解这个过程即可。我们来看看这三次对话的简单过程:主机A向主机B发出连接请求数据包:“我想给你发数据,可以吗?”,这是第一次对话;主机B向主机A发送同意连接和要求同步(同步就是两台主机一个在发送,一个在接收,协调工作)的数据包:“可以,你什么时候发?”,这是第二次对话;主机A再发出一个数据包确认主机B的要求同步:“我现在就发,你接着吧!”,这是第三次对话。三次“对话”的目的是使数据包的发送和接收同步,经过三次“对话”之后,主机A才向主机B正式发送数据。 TCP协议能为应用程序提供可靠的通信连接,使一台计算机发出的字节流无差错地发往网络上的其他计算机,对可靠性要求高的数据通信系统往往使用TCP协议传输数据。 UDP(User Data Protocol,用户数据报协议)是与TCP相对应的协议。它是面向非连接的协议,它不与对方建立连接,而是直接就把数据包发送过去! UDP适用于一次只传送少量数据、对可靠性要求不高的应用环境。比如,我们经常使用“ping”命令来测试两台主机之间TCP/IP通信是否正常,其实“ping”命令的原理就是向对方主机发送UDP数据包,然后对方主机确认收到数据包,如果数据包是否到达的消息及时反馈回来,那么网络就是通的。例如,在默认状态下,一次“ping”操作发送4个数据包(如图2所示)。大家可以看到,发送的数据包数量是4包,收到的也是4包(因为对方主机收到后会发回一个确认收到的数据包)。这充分说明了UDP协议是面向非连接的协议,没有建立连接的过程。正因为UDP协议没有连接的过程,所以它的通信效果高;但也正因为如此,它的可靠性不如TCP协议高。QQ就使用UDP发消息,因此有时会出现收不到消息的情况。 TCP协议和UDP协议各有所长、各有所短,适用于不同要求的通信环境。 其中TCP提供IP环境下的数据可靠传输,它提供的服务[1]包括数据流传送、可靠性、有效流控、全双工操作和多路复用。通过面向连接、端到端和可靠的数据包发送。通俗说,它是事先为所发送的数据开辟出连接好的通道,然后再进行数据发送;而UDP则不为IP提供可靠性、流控或差错恢复功能。一般来说,TCP对应的是可靠性要求高的应用,而UDP对应的则是可靠性要求低、传输经济的应用。TCP支持的应用协议主要有:Telnet、FTP、SMTP等;UDP支持的应用层协议主要有:NFS(网络文件系统)、SNMP(简单网络管理协议)、DNS(主域名称系统)、TFTP(通用文件传输协议)等。 两种协议均是最常见的网络通讯协议,两种协议优缺点同样突出, TCP重安全,轻速度。 遵循三次会话原则。一些比较重要的数据可以用它,可靠性比较高。UDP轻安全,重速度。无连接传输数据协议,简单、不可靠的信息传输服务.

tcp协议分析

Tcp 协议分析实验报告 学院:电气与信息工程学院 专业: 网络工程 班级:XXXX 实验项目名称 TCP 协议分析 运行Wireshark ,开始截获报文,三次握手截图如下 ... 1 a Vcrs-ioH ; J .4.1 e-LBl * Header isnftfh: 2日 hrt? (5) filFFdrantSJitdd SrtL"% FEt-ld! f 昭叙匚油fCH! Mot ELT} 1-atdcL L pn^thi : W B K #J (Don't Fro^Kfiit) i r-i^dnc. oPfiAK! v Ti ?F 十口 3 Ci< Prcrtocul; TCP (?) Hfr*fer c heck-siM!收咖[vjdidsMw di&atoLed) [MtJdPF Chtfklufi GtatuA^ LMMArifEMl] Swr?V ; J 管芥出-■旧 OritlniaticHF EH J 自辞 (-hx*CQ 6eoEP! UfAjvwnj [□Vh t LndbCiM Uiikncwi] TrvnsaBVfj-cm Cgn^rgl PrMlMPlli. Wr : tAgJH ? CS-t Pwf; *4,旨怕:9. Lj?m: 9 1 )结合本节TCP 协议介绍部分的内容,分析 TCP 连接建立的 三次握手”过程, 找到对应的报 文,填写表 8 (传输方向填写客户机->服务器或相反)。 2)从报文中的第一个 FIN=1的TCP 报文开始分析 TCP 连接释放的 四次握手” 过程,截图如下 实 验 过 程

报文 号 传输 方向 源端口 目的端 口 序号 确认序 号 终止位 FIN 同步位 SYN 确认位 ACK 39 A>B 80 62504 1 1 0 1 2 40 B>A 62504 80 0 2 1 0 2 41 A>B 80 62503 0 1 1 0 2 42 B>A 62503 80 1 2 1 2 本次实验,对于同步位和确认位的数据与指导书的计算不相同,但对于 tcp 的三次握手连接和四次连接释放有了比较加深的了解。 与udp 的区别在 于TCP 保证数据正确性,UDP 可能丢包,TCP 保证数据顺序,UDF 不保证。 实 验 总 结 指 导 教 师 意 签名: 年 月曰

TCPIP协议分析试验报告

.. TCP/IP协议分析及应用实验报告 学号:姓名:班级: 实验项目编号: B03862704 实验项目名称:传输控制协议TCP 一、实验目的: 1. 掌握TCP协议的报文格式。 2. 掌握TCP连接的建立和释放过程。 3. 掌握TCP数据传输中编号与确认的过程。 4. 掌握TCP协议校验和的计算方法。 5. 理解TCP重传机制。 二、实验环境: Windows server 2003 TCP/IP协议分析及应用教学实验平台 三、实验原理(或要求): TCP报文格式 16位源端口号 16位目的端口号 位序号32 位确认序号32F P U A R S 4位首6保留(16I 位窗口大小 C 部长R S S Y 位)N N T G K H 度位紧急指针16位校验和16 选项数据 连接的建立TCP在面向连接的环境中,开始传输数据之前,在两个终 TCP是面 向连接的协议。通信双方必须用彼此的初端之间必须先建立一个连接。对于一个 要建立的连接,(指明希望收到的下一个ackseq始化序列号和来自对方成功传输 确认的应答号。ACK,应答信号写为八位组的编号)来同步,习惯上将同步信 号写为SYN整个同步的过程称为三次握手,如图: 优质范文.

连接的释放TCP附加标记的报FINTCP使用四次握手来结束通话(使用一个带有对于一个已经建立的连接,如图。文段) TCP重传机制只要计时器设置的重传时间到期,就对这个报文段设置一次计时器。TCP每发送一个报文段,但还没有收到确认,就要重传这一报文段。

优质范文. .. 四、实验步骤: 练习一:察看TCP连接的建立和释放 主机B、C、D启动协议分析器进行数据捕获,并设置过滤条件(提取TCP协议)。主机A启动仿真编辑器,进入TCP连接视图。在“服务器信息/IP地址”中填入主机C的IP地址;使用“端口扫描”获取主机C的TCP端口列表,在“服务器信息/端口”中填入主机C的一个TCP端口(大于1024);点击“连接”按钮进行连接。 察看主机B、C、D捕获的数据,填写下表。 字段名称报文1 报文2 报文3 Sequence Number Acknowledgement Number ACK SYN TCP连接建立时,前两个报文的首部都有一个“maximum segment size”字段,它的值是多少?作用是什么?结合IEEE802.3协议规定的以太网最大帧长度分析此数据是怎样得出的。 主机A断开与主机C的TCP连接。 察看主机B、C、D捕获的数据,填写下表。

tcpip协议与udpip协议的区别

T C P/I P协议与U D P/I P协议的区别TCP(Transmission Control Protocol,传输控制协议)是面向连接的协议, 也就是说,在收发数据前,必须和对方建立可靠的连接。 一个TCP连接必须要经过三次“对话”才能建立起来,其中的过程非常复杂,只简单的描述下这三次对话的简单过程: A ---> B //主机A向主机B发出连接请求数据包:“我想给你发数据,可以吗?”,这是第一次对话; A <--- B //主机B向主机A发送同意连接和要求同步(同步就是两台主机一个在发送,一个在接收,协调工作) //的数据包:“可以,你什么时候发?”,这是第二次对话; A ---> B //主机A再发出一个数据包确认主机B的要求同步:“我现在就发,你接着吧!”,这是第三次对话。 三次“对话”的目的是使数据包的发送和接收同步,经过三次“对话”之后,主机A才向主机B 正式发送数据。 详细点说就是: TCP接通连接要进行3次握手过程 1 主机A通过向主机B 发送一个含有同步序列号的标志位的数据段给主机B ,向主机B 请求建立连接,通过这个数据段, 主机A告诉主机B 两件事:我想要和你通信;你可以用哪个序列号作为起始数据段来回应我. 2 主机B 收到主机A的请求后,用一个带有确认应答(ACK)和同步序列号(SYN)标志位的数据段响应主机A,也告诉主机A两件事:

我已经收到你的请求了,你可以传输数据了;你要用哪佧序列号作为起始数据段来回应我 3 主机A收到这个数据段后,再发送一个确认应答,确认已收到主机B 的数据段:"我已收到回复,我现在要开始传输实际数据了 这样3次握手就完成了,主机A和主机B 就可以传输数据了. 3次握手的特点 没有应用层的数据 SYN这个标志位只有在TCP建产连接时才会被置1 握手完成后SYN标志位被置0 TCP断开连接要进行4次 1 当主机A完成数据传输后,将控制位FIN置1,提出停止TCP连接的请求 2 主机B收到FIN后对其作出响应,确认这一方向上的TCP连接将关闭,将ACK置1 3 由B 端再提出反方向的关闭请求,将FIN置1 4 主机A对主机B的请求进行确认,将ACK置1,双方向的关闭结束. 由TCP的三次握手和四次断开可以看出,TCP使用面向连接的通信方式,大大提高了数据通信的可靠性,使发送数据端 和接收端在数据正式传输前就有了交互,为数据正式传输打下了可靠的基础 名词解释 ACK TCP报头的控制位之一,对数据进行确认.确认由目的端发出,用它来告诉发送端这个序列号之前的数据段

TCPIP协议分析实验报告2

TCP/IP协议分析及应用实验报告 学号:姓名:班级: 实验项目编号:B03862702 实验项目名称:网际协议IP 一、实验目的: 1. 掌握IP数据报的报文格式 2. 掌握IP校验和计算方法 3. 掌握子网掩码和路由转发 4. 理解特殊IP地址的含义 5. 理解IP分片过程 二、实验环境: Windows server 2003 TCP/IP协议分析及应用教学实验平台 三、实验原理(或要求): IP报文格式 IP数据报是由IP首部加数据组成的。IP首部的最大长度不超过60字节。 IP IP分片 链路层具有最大传输单元(MTU)这个特性,它限制了数据帧的最大长度。不同的网络类型都有一个上限值。以太网通常是1500字节。如果IP层有数据包要传输,而数据包的长度超过了MTU,那么IP层就要对数据包进行分片操作。使每一片长度都小于MTU。 IP首部中“16位标识”、“3位标志”和“13位片偏移”包含了分片和重组所需的信息。另外,当数据被分片后,每个片的“16位总长度” 值要改为该片的长度值。

IP路由表 大部分网络层设备都存储着一张记录路由信息的表格,称为路由表。它由许多条项目组成。网络层设备收到数据报后,根据其目的IP地址查找路由表确定数据报传输的最佳路径(下一跳)。然后利用网络层的协议重新封装数据报,利用下层提供的服务把数据报转发出去。路由表的项目一般含有五个基本字段:目的地址、网络掩码、下一跳地址、接口、度量。路由表按如下顺序匹配:直接交付->特定主机交付->特定网络交付->默认交付 路由选择过程 路由选择模块从IP处理模块接收到IP分组后,使用该分组的目的IP地址同路由表中的每一个项目按特定的顺序(按照前面介绍的“路由表匹配顺序”)查找匹配项,当找到第一个匹配项后就不再继续寻找了,这样就完成了路由选择过程。 匹配路由表项的方法是将IP地址与路由表中的一个项目的“子网掩码”进行按位“与”操作,然后判断运算结果是否等于该项目的“目的地址”,如果等于,则匹配成功,否则,匹配失败。 四、实验步骤: 练习三:IP数据报分片 在主机B上使用“MTU工具”设置以太网端口的MTU为800字节(两个端口都设置)。主机A、B、E启动协议分析器,打开捕获窗口进行数据捕获并设置过滤条件(提取ICMP协议)。 在主机A上,执行命令ping -l 1000 172.16.0.2。 主机A、E停止捕获数据。主机E如下图所示,重新定义过滤条件(取一个ICMP数据包,按照其上层协议IP的Identification字段设置过滤)。

相关主题