第7章TCP/IP协议原理
课程目标:
初级
●掌握TCP/IP的协议体系
●掌握IP协议报文结构
●掌握IP地址分类及掩码计算
●了解TCP、UDP协议基本原理
中级、高级
●掌握IP分片和重组的理论
●掌握TCP、UDP的报文结构
●掌握TCP、UDP的工作原理
●熟悉使用抓包工具对TCP/IP报文进行抓包分析
7.1 TCP/IP概述
7.1.1 TCP/IP 的产生背景及特点
1. TCP/IP的产生背景
传输控制协议/Internet协议(TCP/IP)
是业界标准的协议组,为跨越 LAN 和 WAN 环境的大规模互联网络设计。如下面的时间线所示,TCP/IP 始于 1969 年,也就是美国国防部 (DoD) 委任高级资源计划机构网络(ARPANET) 的时间.......感谢聆听
ARPANET是资源共享实验的结果。其目的是在美国不同地区的各种超级计算机之间提供高速网络通讯链路。
早期协议,如Telnet(用于虚拟终端仿真)和文件传输协议(FTP)是最早开发的,以指定通过ARPANET共享信息所需的基本实用程序。随着ARPANET在规模和作用范围上的日益扩大,出现了其他两个重要协议:
在1974年,传输控制协议(TCP)作为规范草案引入,它描述了如何在网络上建立可靠的、主机对主机的数据传输服务。
在1981年,Internet协议(IP)以草案形式引入,它描述了如何在互联的网络之间实现寻址的标准以及如何进行数据包路由。
1983年1月1日,ARPANET开始对所有的网络通讯和基本通讯都要求标准使用TCP 和 IP协议.从那天开始,ARPANET逐渐成为众所周知的 Internet,它所要求的协议逐渐变成 TCP/IP 协议组。TCP/IP 协议组在各种TCP/IP 软件中实现,可用于多种计算机平台,并经常用于建立大的路由专用国际网络。......感谢聆听TCP/IP是指一整套数据通信协议,其名字是由这些协议中的两个协议组成的,即传输控制协议(Transmission Control Protocol 。—TCP)和网间协议(InternetProtocol —IP)。虽然还有很多其他协议,但是TCP和IP显然是两个最重要的协议。......感谢聆听
2. TCP/IP的特点
TCP/IP协议有一些重要的特点,以确保在特定的时刻能满足一种重要的需求,即世界范围的数据通信。其特点包括:
·开放式协议标准.可免费使用,且与具体的计算机硬件或操作系统无关。由于它受到如此广泛的支持,因而即使不通过Internet 通信,利用TCP/IP来统一不同的硬件和软件也是很理想的。
·与物理网络硬件无关.这就允许TCP/IP可以将很多不同类型的网络集成在一起,它可以适用于以太网、令牌环网、拨号线、X。25网络以及任何其它类型的物理传输介质。
·通用的寻址方案。该方案允许任何TCP/IP设备唯一的寻址整个网络中的任何其他设备,该网络甚至可以象全球Internet那样大。
·各种标准化的高级协议.可广泛而持续地提供多种用户服务。
7。1.2TCP/IP协议体系
TCP/IP参考模型
TCP/IP 协议体系和 OSI参考模型一样,也是一种分层结构。它是由基于硬件层次上的四个概念性层次构成,即网络接口层、互联网层、传输层和应用层。图7.1 表示TCP/IP与OSI参考模型的对应关系。图7.2 TCP/IP参考模型的层次结构.......感谢聆听
图7。1 OSI与TCP/IP参考模型对照图
图7.2TCP/IP参考模型
在TCP/IP参考模型中,去掉了OSI参考模型中的会话层和表示层(这两层的功能被合并到应用层实现)。同时将OSI参考模型中的数据链路层和物理层合并为网络接口层.下面,分别介绍各层的主要功能。
·网络接口层
网络接口层也称为数据链路层,它是TCP/IP的最底层,但是 TCP/IP协议并没有严格定义该层,它只是要求能够提供给其上层--网络层一个访问接口,以便在其上传递IP分组。由于这一层次未被定义,所以其具体的实现方法将随着网络类型的不同而不同。......感谢聆听
·互联网层
互联网层(InternetLayer)俗称 IP层,它处理机器之间的通信。它接受来自传输层的请求,传输某个具有目的地址信息的分组.该层把分组封装到IP数
据报中,填入数据报的首部(也称为报头),使用路由算法来选择是直接把数据报发送到目标机还是把数据报发送给路由器,然后把数据报交给下面的网络接口层中的对应网络接口模块。该层还有处理接收到的数据报,检验其正确性,使用路由算法来决定对数据报是否在本地进行处理还是继续向前传送。......感谢聆听
·传输层
在TCP/IP模型中,传输层的功能是使源端主机和目标端主机上的对等实体可以进行会话。在传输层定义了两种服务质量不同的协议。即:传输控制协议TCP(transmission controlprotocol)和用户数据报协议UDP(user datagram protocol)。TCP协议是一个面向连接的、可靠的协议。它将一台主机发出的字节流无差错地发往互联网上的其他主机。在发送端,它负责把上层传送下来的字节流分成报文段并传递给下层.在接收端,它负责把收到的报文进行重组后递交给上层。TCP协议还要处理端到端的流量控制,以避免缓慢接收的接收方没有足够的缓冲区接收发送方发送的大量数据。UDP协议是一个不可靠的、无连接协议,主要适用于不需要对报文进行排序和流量控制的场合。......感谢聆听
·应用层
TCP/IP模型将OSI参考模型中的会话层和表示层的功能合并到应用层实现.应用层面向不同的网络应用引入了不同的应用层协议。其中,有基于TCP协议的,如文件传输协议( Protocol,FTP)、虚拟终端协议(TELNET)、超文本链接协议(HyperText Transfer Protocol,HTTP),简单邮件传输协议(Simple Mail Transport