合肥学院TCPIP协议分析及应用实验报告 (1)

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

计算机科学与技术系

实验报告

专业名称网络工程

课程名称 TCP/IP协议

项目名称 TCP/UDP

班级

学号

姓名

同组人员

实验日期 2014.11

一、实验目的与要求:

1、实验目的:

TCP:

1)掌握TCP协议的报文格式

2)掌握TCP连接的建立和释放过程

3)掌握TCP数据传输中编号与确认的过程

4)掌握TCP协议校验和的计算方法

5)理解TCP的重传机制

UDP:

1)掌握UDP协议的报文格式

2)掌握UDP协议校验和的计算方法

3)理解UDP协议的优缺点

2、实验环境

二、实验内容

1、实验原理

TCP:

1)TCP报文格式

16位源端口号16位目的端口号

32位序号

32位确认序号

4位首部长度保留(6

位)

U

R

G

A

C

K

P

S

H

R

S

T

S

Y

N

F

I

N

16位窗口大小16位校验和16位紧急指针

选项

数据

2)TCP连接的建立

TCP是面向连接的协议。在面向连接的环境中,开始传输数据之前,在两个终端之间必须先建立一个连接。对于一个要建立的连接,通信双方必须用彼此的初始化序列号seq和来自对方成功传输确认的应答号ack(指明希望收到的下一个八位组的编号)来同步,习惯上将同步信号写为SYN,应答信号写为ACK。

整个同步的过程称为三次握手.

3)TCP连接的释放

对于一个已经建立的连接,TCP使用四次握手来结束通话(使用一个带有FIN附加标记的报文段)。

4)TCP重传机制

TCP每发送一个报文段,就对这个报文段设置一次计时器。只要计时器设置的重传时间到期,但还没有收到确认,就要重传这一报文段。

5)实验流程概述

①在机房调试好需做的拓扑结构

②根据拓扑结构,配置小组成员各自电脑的IP地址,子网掩码和网管

③根据课件中的具体实验要求和实验步骤进行操作

UDP:

1)UDP报文格式

每个UDP报文称为一个用户数据报(User Datagram)。用户数据报分为两个部分:UDP首部和UDP数据区。

源端口目的端口

报文长度校验和

数据

2)UDP单播与广播

在UDP单播通讯模式下,客户端和服务端之间建立一个单独的数据通道。从一台服务端传送出的数据包只能由一个客户端接收。众所周知,UDP协议是不可靠的,数据包可能在传输过程中丢失、重复、没有按照发送顺序到达,而且作为UDP数据包,其大小还受限于数据包的最大上限。

在UDP广播通讯模式下,一个单独的数据包拷贝发送给网络上所有主机。当不能明确具体的服务器,而又要求该服务时,UDP广播提供了传输不区分种类的消息的便捷方式。在

多数情况下UDP广播仅仅作为本地网络通信形式。受限的广播地址是255.255.255.255。该地址用于主机配置过程中IP数据报的目的地址,此时,主机可能还不知道它所在网络的网络掩码,甚至连它的IP地址也不知道。在任何情况下,路由器都不转发目的地址为受限广播地址的数据报,这样的数据报仅出现在本地网络中。已知网络主机的IP地址和子网掩码,可以算得指向主机所在子网的广播。子网广播地址 = (主机IP)“或”(子网掩码取反)。

3)UDP校验和的计算

3、实验具体步骤及结果

TCP:

练习一:察看TCP连接的建立和释放

1.主机B、C、D启动协议分析器进行数据捕获,并设置过滤条件(提取TCP协议)。

2.主机A启动仿真编辑器,进入TCP连接视图。在“服务器信息/IP地址”中填入主

机C的IP地址;使用“端口扫描”获取主机C的TCP端口列表,在“服务器信息/

端口”中填入主机C的一个TCP端口(大于1024);点击“连接”按钮进行连接。

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

字段名称报文1 报文2 报文3

Sequence Number 3757305840 1880103358 3757305841

Acknowledgement Number 0 3757305841 1880103359

ACK 0 1 1

SYN 1 1 0

4.TCP连接建立时,前两个报文的首部都有一个“maximum segment size”字段,它

的值是多少?作用是什么?结合IEEE802.3协议规定的以太网最大帧长度分析此数

据是怎样得出的

maximum segment size=1460

5.主机A断开与主机C的TCP连接。

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

字段名称报文4 报文5 报文6 报文7

Sequence Number 588108412 3571458836 3571458836 588108413

Acknowledgement

3571458836 588108413 588108413 3571458837 Number

ACK 1 1 1 1

SYN 0 0 0 0

7.结合步骤3、5所填的表,理解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地址。

目的IP地址:服务器的IP地址(172.16.0.10)。

其它字段任意。

应用前面学到的知识计算IP首部校验和。

5)填写TCP协议信息,其中:

源端口:任意大于1024的数,不要使用下拉列表中的端口。

目的端口:80(HTTP协议)。

序列号:选择一个序号ISN(假设1942589885),以后的数据都按照这个来填。

确认号:0。

首部长度和标志位:5002(即长度20字节,标志SYN=1)。

窗口大小:任意。

紧急指针:0。

使用协议仿真编辑器的“手动计算”方法计算校验和;再使用协议仿真编辑器的“自动计算”方法计算校验和。将两次计算结果相比较,若结果不一致,则重新计算。

TCP在计算校验和时包括哪些内容?将设置完成的数据帧复制2份;修改第二帧的TCP 层的“首部长度和标志”位为5010(即标志位ACK=1),TCP层的“序号”为1942589885+1。

相关文档
最新文档