TCP/IP协议与子网规划TCP/IP协议与子网规划i目录课程说明.......................................................................................................................................1课程介绍.......................................................................................................................................1课程目标.......................................................................................................................................1相关资料.......................................................................................................................................1第1章TCP/IP协议......................................................................................................................21.1TCP/IP协议与OSI参考模型.................................................................................................21.2应用层....................................................................................................................................31.3传输层....................................................................................................................................41.4网络层....................................................................................................................................8第2章子网规划.........................................................................................................................102.1IP地址介绍.........................................................................................................................102.2子网规划..............................................................................................................................13TCP/IP协议与子网规划1课程说明课程介绍本课程主要介绍TCP/IP协议的基础知识。课程目标完成本课程的学习后,您应该能够:理解TCP/IP分层模型理解IP地址的分类与应用运用IP子网的规划原则对简单网络进行规划相关资料TCP/IP协议与子网规划2第1章TCP/IP协议1.1TCP/IP协议与OSI参考模型与OSI参考模型一样,TCP(TransferControlProtocol)/IP(InternetProtocol)协议(传输控制协议/网际协议)也分为不同的层次开发,每一层负责不同的通信功能。但是,TCP/IP协议简化了层次设计,只有五层:应用层、传输层、网络层、数据链路层和物理层。从上图可以看出,TCP/IP协议栈与OSI参考模型有清晰的对应关系,覆盖了OSI参考模型的所有层次。应用层包含了OSI参考模型所有高层协议。因为TCP/IP协议栈支持所有的标准的物理层和数据链路层协议,而且物理层和数据链路层在前面已经做过简述,所以本章不对TCP/IP协议的物理层和数据链路层做进一步的描述。关于这两层协议和标准的深入细节,在后续章节会有讲解。TCP/IP协议与子网规划3物理层和数据链路层涉及到在通信信道上传输的原始比特流,它实现传输数据所需要的机械、电气、功能性及过程等手段,提供检错、纠错、同步等措施,使之对网络层显现一条无错线路;并且进行流量调控。网络层检查网络拓扑,以决定传输报文的最佳路由,执行数据转发。其关键问题是确定数据包从源端到目的端如何选择路由。网络层的主要协议有IP、ICMP(InternetControlMessageProtocol,互联网控制报文协议)、IGMP(InternetGroupManagementProtocol,互联网组管理协议)、ARP(AddressResolutionProtocol,地址解析协议)和RARP(ReverseAddressResolutionProtocol,反向地址解析协议)等。传输层的基本功能是为两台主机间的应用程序提供端到端的通信。传输层从应用层接受数据,并且在必要的时候把它分成较小的单元,传递给网络层,并确保到达对方的各段信息正确无误。传输层的主要协议有TCP、UDP(UserDatagraphProtocol,用户数据报协议)。应用层负责处理特定的应用程序细节。应用层显示接收到的信息,把用户的数据发送到低层,为应用软件提供网络接口。应用层包含大量常用的应用程序,例如HTTP(HyperTextTransferProtocol文本传输协议)、Telnet(远程登录)、FTP(FileTransferProtocol)等。同OSI参考模型数据封装过程一样,TCP/IP协议在报文转发过程中,封装和去封装也发生在各层之间。发送方,加封装的操作是逐层进行的。各个应用程序将要发送的数据送给传输层;传输层(TCP/UDP)对数据分段为大小一定的数据段,加上本层的报文头。发送给网络层。在传输层报文头中,包含接收它所携带的数据的上层协议或应用程序的端口号,例如,Telnet的端口号是23。传输层协议利用端口号来调用和区别应用层各种应用程序。网络层对来自传输层的数据段进行一定的处理(利用协议号区分传输层协议、寻找下一跳地址、解析数据链路层物理地址等),加上本层的IP报文头后,转换为数据包,再发送给链路层(以太网、帧中继、PPP、HDLC等);链路层依据不同的数据链路层协议加上本层的帧头,发送给物理层以比特流的形式将报文发送出去。在接收方,这种去封装的操作也是逐层进行的。从物理层到数据链路层,逐层去掉各层的报文头部,将数据传递给应用程序执行。1.2应用层应用层为用户的各种网络应用开发了许多网络应用程序,例如文件传输、网络管理等,甚至包括路由选择。这里我们重点介绍常用的几种应用层协议。TCP/IP协议与子网规划4FTP(文件传输协议、FileTransferProtocol)是用于文件传输的Internet标准。FTP支持一些文本文件(例如ASCII、二进制等等)和面向字节流的文件结构。FTP使用传输层协议TCP在支持FTP的终端系统间执行文件传输,因此,FTP被认为提供了可靠的面向连接的服务,适合于远距离、可靠性较差线路上的文件传输。TFTP(TrivialFileTransferProtocol,简单文件传输协议)也是用于文件传输,但TFTP使用UDP提供服务,被认为是不可靠的,无连接的。TFTP通常用于可靠的局域网内部的文件传输。SMTP(SimpleMailTransferProtocol。简单邮件传输协议)支持文本邮件的Internet传输。POP3(PostOfficeProtocol)是一个流行的Internet邮件标准。SNMP(SimpleNetworkManagementProtocol。简单网络管理协议)负责网络设备监控和维护,支持安全管理、性能管理等。Telnet是客户机使用的与远端服务器建立连接的标准终端仿真协议。Ping命令是一个诊断网络设备是否正确连接的有效工具。Tracert命令和Ping命令类似,tracert命令可以显示数据包经过的每一台网络设备信息,是一个很好的诊断命令。HTTP协议支持(WorldWideWeb,万维网)和内部网信息交互,支持包括视频在内的多种文件类型。HTTP是当今流行的Internet标准。DNS(DomainNameSystem,域名系统)把网络节点的易于记忆的名字转化为网络地址。WINS(WindowsInternetNameServer,WindowsInternet命名服务器),此服务可以将NetBIOS名称注册并解析为网络上使用的IP地址。BootP(BootstrapProtocol,引导协议)是使用传输层UDP协议动态获得IP地址的协议。1.3传输层传输层位于应用层和网络层之间,为终端主机提供端到端的连接,以及流量控制(由窗口机制实现)、可靠性(由序列号和确认技术实现)、支持全双工传输等等。传输层协议有两种:TCP和UDP。虽然TCP和UDP都使用相同的网络层协议IP,但是TCP和UDP却为应用层提供完全不同的服务。TCP/IP协议与子网规划5传输控制协议TCP:为应用程序提供可靠的面向连接的通信服务,适用于要求得到响应的应用程序。目前,许多流行的应用程序都使用TCP。用户数据报协议UDP:提供了无连接通信,且不对传送数据包进行可靠的保证。适合于一次传输小量数据,可靠性则由应用层来负责。TCP协议通过以下过程来保证端到端数据通信的可靠性:1、TCP实体把应用程序划分为合适的数据块,加上TCP报文头,生成数据段;2、当TCP实体发出数据段后,立即启动计时器,如果源设备在计时器清零后仍然没有收到目的设备的确认报文,重发数据段;3、当对端TCP实体收到数据,发回一个确认。4、TCP包含一个端到端的校验和字段,检测数据传输过程的任何变化。如果目的设备收到的数据校验和计算结果有误,TCP将丢弃数据段,源设备在前面所述的计时器清零后重发数据段。5、由于TCP数据承载在IP数据包内,而IP提供了无连接的、不可靠的服务,数据包有可能会失序。TCP提供了重新排序机制,目的设备将收到的数据重新排序,交给应用程序。6、TCP提供流量控制。TCP连接的每一端都有缓冲窗口。目的设备只允许源设备发送自己可以接收的数据,防止缓冲区溢出。7、TCP支持全双工数据传输。TCP协议为终端设备提供了面向连接的、可靠的网络服务,UDP协议为终端设备提供了无连接的、不可靠的数据报服务。从上图我们可以看出,TCP协议为了保证数据传输的可靠性,相对于UDP报文,TCP报文头部有更多的字段选项。首先让我们来看一下TCP的报文头部主要字段:每个TCP报文头部都包含源端口号(sourceport)和目的端口号(destinationport),用于标识和区分源端设备和目的端设备的应用进程。在TCP/IP协议栈中,源端口号和目的端口号分别与源IP地址和目的IP地址组成套接字(socket),唯一的