实验六:传输层TCP与应用层FTP协议分析.docx

实验六:传输层TCP与应用层FTP协议分析.docx

  1. 1、本文档共23页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
计 算 机 网 络 实 验 实 验 指 导 书 实验名称 传输层TCP与应用层FTP协议分析 实验目的 1.了解应用层协议与传输层协议的关系 2.掌握TCP连接的建立和释放过程以及其重传机制 3.掌握TCP数据传输中编号与确认的过程 4.理解FTP协议的工作原理和常用命令 实验背景 网络体系结构中传输层(transport)层的任务是考虑从主机到主机的分组传递服务转向进程到进程的通信信道的问题。由于它支持在终端节点上运行的应用程序之间的通信,因此传输层协议有时也称为端到端(end-to-end)协议。 两种因素促成了端到端协议的形成。从其上层看,需要使用传输层服务的应用层进程有一些特定的需求。从其下层看,传输层协议赖以运行的下层网络所能提供的服务能力有某些限制。因此,问题的关键是设计出各种算法,把下层网络低于要求的特性转变为应用程序所需的高级服务。不同的传输层协议应用这些算法的不同组合。 可靠字节流(TCP) TCP(Transmission Control Protocol 传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议,由IETF的RFC 793定义。在简化的计算机网络OSI模型中,它完成第四层传输层所指定的功能,用户数据报协议(UDP)是同一层内另一个重要的传输协议。在因特网协议族(Internet protocol suite)中,TCP层是位于IP层之上,应用层之下的中间层。不同主机的应用层之间经常需要可靠的、像管道一样的连接,但是IP层不提供这样的流机制,而是提供不可靠的包交换。 文件传输协议(FTP) 文件传输协议(File Transfer Protocol, FTP)用于Internet上的控制文件的双向传输。同时,它也是一个应用程序(Application)。基于不同的操作系统有不同的FTP应用程序,而所有这些应用程序都遵守同一种协议以传输文件。在FTP的使用当中,用户经常遇到两个概念:下载(Download)和上传(Upload)。下载文件就是从远程主机拷贝文件至自己的计算机上;上传文件就是将文件从自己的计算机中拷贝至远程主机上。用Internet语言来说,用户可通过客户机程序向(从)远程主机上传(下载)文件。 实验原理 TCP协议分析 与UDP那种简单的多路分解协议相比,一种更复杂的传输协议提供了可靠的、面向连接的字节流服务。事实证明,这种协议对于众多的各类应用程序是有用的,因为它使应用程序从数据丢失和失序的顾虑中解脱出来。因特网的传输控制协议是这类协议中使用最广泛的协议,也是协调性最精确的协议。 TCP能保证可靠的、有序的字节流传输。它是全双工协议,也就是说每个TCP连接支持一对字节流,每个方向一个字节流。对这两个字节流中的每个流,它还包含流量控制机制,允许接收方限制发送方在给定时间内发送的数据量。另外,像UDP一样,TCP支持多路分解机制,允许任何主机上的多个应用程序同时与它们各自的对等实体进行对话。 报文段格式 TCP是面向字节的协议,这就是说发送方向一个TCP连接写入字节,接收方从这个TCP连接读出字节。虽然用“字节流”描述TCP提供给应用进程服务,但是TCP本身并不在因特网上传送单个字节。实际上,在源主机上的TCP收集发送进程交付的字节,存在缓冲区中,积累到足够的数量,将其一起放入一个大小适宜的分组,再发送给目的主机上的对等实体。目的主机上的TCP把这个分组的内容存入接收缓冲区,接收进程在空闲时从这个缓冲区读出字节。 由于TCP对等实体之间交换的每个分组都携带一段字节流,所以将这些分组称为报文段(segment)。每个TCP报文段包含如图3-1所示的首部。 图 3-1 TCP首部格式 当没有选项和填充字段时,首部长度是 20 字节。其中个字段含义如下: ? 源端口地址:长度为 16 比特,定义了在主机中发送这个报文段的应用程序的端口号,如应用程序为客户端,端口号通常为随机端口,如果应用程序为服务端,端口号通常为熟知端口。 ? 目的端口地址:长度为 16 比特,定义了在主机中接收报文段的应用程序的端口号。 ? 序号:长度为 32 比特,定义了本数据段中封装数据的的第一个字节的序号。在 TCP 的数据传输中,传输数据前随机产生一个数字,叫初始序号,初始序号分配给需要传输的第一个字节,此后需要传输的数据在此基础上依次递增,因此需要传输的每个字节都有一个字节序号,TCP 报头中序号字段放置的是本数据段中数据部分的第一个字节的序号。 ? 确认号:长度为 32 比特,定义了接收端希望从源端接收的报文段的序号,通常, 接收端收到源端发送的数据后,将最后一个字节序号加 1,定义为发送数据确认号发送给源端,表示此序号之前的数据均已收到。 ? 首部长度:长度为 4 比特,定义了 T

文档评论(0)

东山书苑 + 关注
实名认证
内容提供者

业务以学生学习成长为中心,为外语培训、中小学基础教育、学前教育,提供各种学习资料支持服务。

1亿VIP精品文档

相关文档