《CPIP简介教材》PPT课件.ppt_第1页
《CPIP简介教材》PPT课件.ppt_第2页
《CPIP简介教材》PPT课件.ppt_第3页
《CPIP简介教材》PPT课件.ppt_第4页
《CPIP简介教材》PPT课件.ppt_第5页
已阅读5页,还剩51页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第二章 TCP IP简介 周荣庆 2 1TCP IP简介2 2TCP IP协议栈2 3IP地址综述2 4TCP IP使用工具 2 1TCP IP简介 TCP IP TransmissionControlProtocol InternetProtocol 最初由美国国防部高级研究计划局 DepartmentofDefenceAdvancedResearchProjectAgency DARPA 在1969年提出的 并把它用在ARPANET AdvancedResearchProjectAgency 中 随着ARPANET在规模和作用范围的日益扩大 TCP IP协议也逐渐完善 最终成为Internet的基础 并且应用范围也愈来愈广 几乎已成为广域网和局域网内的标准网络协议 TCP IP协议族给出了独立于厂商硬件的数据传送格式及规则 由于它的独特的硬件独立性 所以迅速被众多系统使用 比如UNIX就采用TCP IP协议 WindowsNT和Novell的Netware都有支持TCP IP的支持软件或模块 之所以称之为TCP IP协议族 是因为TCP IP包含着一系列的协议和应用程序 2 2TCP IP协议栈 所谓 协议 是关于通信过程的规则或条约 它规定了如何传输信号 如何在宿主计算机上将数据包重新组成计算机信息等等 IP的结构模型与ISO的OSI模型略有不同 IP对OSI模型进行了更进一步的简化 它采用4层结构模型 图中也画出了对应的OSI层次 这里需说明的是IP协议分层并不严格对应OSI模型的相关协议层次 最上面第4层为应用层 它支持用户 提供通信工具和相关服务 如FTP E mail等 往下第3层为传输层 负责传输控制 保证端对端数据传输的完整性 TCP 第2层为网络层 负责数据传输 将数据发往目的地 最底层为网络接口层 负责访问具体网络 如以太网 令牌网等 接口层 模型的基础是网络接口层 它负责数据帧的发送和接收 该层通常包括操作系统中的设备驱动程序和计算机中对应的网络接口卡 接口层还包括ARP 地址解析协议 和RARP 反向地址解析协议 等 网络层 这一层负责把下层传来的数据进行分组 并进行必要的路由算法 把这些分组通过相同或者不同的路径传向目标 网络层有四个主要的协议 网际协议IP Internet控制报文协议ICMP 地址解析协议APR和逆地址解析协议RARP 网络层的主要功能是使主机可以把分组发往任何网络并使分组独立地传向目标 可能经由不同的网络 这些分组到达的顺序和发送的顺序可能不同 因此如果需要按顺序发送及接收时 高层必须对分组排序 这就象一个人邮寄一封信 不管他准备邮寄到哪个国家 他仅需要把信投入邮箱 这封信最终会到达目的地 这封信可能会经过很多的国家 每个国家可能有不同的邮件投递规则 但这对用户是透明的 用户是不必知道这些投递规则 另外 网络层的网际协议IP的基本功能是 无连接的数据报传送和数据报的路由选择 即IP协议提供主机间不可靠的 无连接数据报传送 互连网控制报文协议ICMP提供的服务有 测试目的地的可达性和状态 报文不可达的目的地 数据报的流量控制 路由器路由改变请求等 地址转换协议ARP的任务是查找与给定IP地址相对应主机的网络物理地址 反向地址转换协议RARP主要解决物理网络地址到IP地址的转换 IP协议 IP协议对应于OSI模型的第三层 即网络层 它提供了一种不可靠 无连接的投递机制 IP提供了三个重要的定义 第一 IP定义了在整个计算机网络上数据传输所用的基本单元 它规定了互连网上传输数据的确切格式 第二 IP软件完成路由选择的功能 选择一个数据发送的路径 第三 除了数据格式和路由选择的精确而正式的定义外 IP还包括了一组嵌入了不可靠分组投递思想的规则 这些规则指明了主机和路由器应该如何处理分组 何时以及如何发出错误信息以及在什么情况下可以放弃数据包 现在所用的以及所指的IP协议版本为1981年定义的第四版 即IPv4 地址解析协议 ARP 在IP数据包能够转发到另外一台计机之前 必须知道接收机器的硬件地址 ARP就是用来确定与IP地址相对应的MAC地址的协议 如果ARP在它自己的缓存中没有包含这个地址 那么 这就对这个地址发出一个广播请求 网络上所有主机都处理这个请求 如果其中包含对那个地址的映射 那么就把该地址传递到发出广播请求的那台主机 然后再把数据包发送上路 并且将新的信息地址存储到路由器的缓存中 逆向地址解析协议 RARP RARP服务器以ARP表 或者缓存 的形式维护着机器号码的数据库 这个数据库由系统管理员所创建 跟ARP相反的是 RARP协议提供了一个IP号码与一个请求硬件地址相对应 当RARP服务器接收到来自网络上某个节点发出的对某个IP号码的请求时 该服务器就通过检查它的路由表来获取发出请求的那个节点的机器号码 并把合适的IP号码发送回去到请求节点以做出响应 Internet控制信息协议 ICMP ICMP由IP所使用 它们是一些更高层次的协议 用来发送和接收有关正在传输信息的状态报告 路由器通常使用ICMP来控制路由器之间数据的通信量或者速度 如果数据通信量对于某台路由器来说太快的话 这台路由器就请求其他的路由器把速度降低 ICMP的两种基本类别是报告错误和发查询 Internet组管理协议 IGMP 该协议运行于主机和与主机直接相连的组播路由器之间 是IP主机用来报告多址广播组成员身份的协议 通过IGMP协议 一方面可以通过IGMP协议主机通知本地路由器希望加入并接收某个特定组播组的信息 另一方面 路由器通过IGMP协议周期性地查询局域网内某个已知组的成员是否处于活动状态 IGMP协议的主要作用是解决网络上广播时占用带宽的问题 在网络中 当给所有客户端发出广播信息时 支持IGMP的交换机会将广播信息不经过滤地发给所有客户端 但是这些信息只需要通过组播的方式传输给某一个部分的客户端 传输层 传输层的功能是使源端和目标端主机上的对等实体可以进行端到端的通信 TCP IP的运输层提供了两个主要的协议 即传输控制协议TCP和用户数据报协议UDP 它的功能是使源主机和目的主机的对等实体之间可以进行会话 其中TCP是面向连接的协议 所谓连接 就是两个对等实体为进行数据通信而进行的一种结合 面向连接服务是在数据交换之前 必须先建立连接 当数据交换结束后 则应终止这个连接 面向连接服务具有连接建立 数据传输和连接释放这三个阶段 在传送数据时是按序传送的 用户数据协议是无连接的服务 在无连接服务的情况下 两个实体之间的通信不需要先建立好一个连接 因此其下层的有关资源不需要事先进行预定保留 这些资源将在数据传输时动态地进行分配 无连接服务的另一特征就是它不需要通信的两个实体同时是活跃的 即处于激活态 当发送端的实体正在进行发送时 它才必须是活跃的 无连接服务的优点是灵活方便和比较迅速 但无连接服务不能防止报文的丢失 重复或失序 无连接服务特别适合于传送少量零星的报文 传输控制协议 TCP TCP负责把数据从一个节点可靠地传输到另外一个节点 它是一种基于连接的协议 在任何数据发送之前 它在两台机器之间建立一个连接 也叫做会话 虚拟电路或者链接 为了建立一个可靠的链接 TCP使用了叫做 三向握手 的方式 这样就在传输双方都建立端口号码和初始序列号码 握手包括下面这3个步骤 请求者发送一个用来指定它计划使用的端口号码和初始的序列号码的数据包到服务器 服务器用它的ISN SYN标志置位 来确认 这个ISN由请求者的ISN加1组成 请求者用服务器的ISN加1来发出确认信息 为维护一个可靠的连接 每个数据包必须包含 源和目的地TCP端口号码 必须分割成为更小块的消息的序列号码 一个用来确保消息无错误发送校验和 一个用来告诉发送机器 消息的哪些小块已经到达的确认号码 端口 套接字和滑动窗口 协议的端口号码是用来引用每一台机器上 在应用层中的 某个特定应用程序或者进程的位置的 就像IP地址是用来标志网络上主机的地址一样 端口地址是用来给传输层标识应用程序的 这样就在一台主机上的应用程序和另外一台主机上的应用程序之间建立了一个完整的连接 应用程序和服务 比如文件和打印服务 或者远程登录服务等 可以配置高达65536个端口 典型的TCP IP应用程序和服务使用前面的1023个端口 IAN已经把这些端口分配为标准的 默认的端口 任何客户端应用程序都根据需要动态分配端口号码 端口和节点地址一起就组成了套接字 服务和应用程序使用套接字来建立一台计机同另外一台主机之间的连接 如果应用程序需要管理数据发送的话 那么 套接字就选择面向连接的服务 比如TCP 如果应用程序不需要管理数据发送 那么套接字就选择非面向连接的服务 比如UDP TCP使用滑动窗口在主机之间进行数据传输 滑动窗口控制在接收主机必须发送一个确认信息之前可以通过TCP连接所进行传送的信息量 每一台计算机都有一个发送窗口和一个接收窗口 计算机使用这两个窗口来缓冲保存数据 并使通信过程的效率更高 滑动窗口允许发送计算机以数据流的形式传输数据 而不用等待每个数据包的确认信息 这样也允许接收计算机不必按照顺序来接收数据包 在接收计算机等待接收更多数据包时 它可以识别出数据包 发送窗口跟踪已经发送了数据 如果在一个给定的时间内还没有收到确认信息的话 就重新发送数据包 用户数据报协议 UDP 无连接协议UDP负责数据的端对端传输 不过 与TCP不一样的是 UDP并不建立连接 它试图发送数据 并试图确认目的主机真正接收至了数据 UDP最好用来发送数量很少的数据 在这样的情况下是不需要控制发送的 尽管UDP也使用端口 但这样的端口与TCP的端口是不一样的 所以 这两种协议可以使用相同的号码而不会相互影响 UDP是一种非常简单的无连接的协议 它提供的是不可靠的数据传输服务 UDP的简单性使它不适合于一些应用 但对另一些更加复杂的 自身提供面向连接功能的应用却很适合 其它可能使用UDP的情况包括 转发路由表数据交换 系统信息 网络监控数据等的交换 这些类型的交换不需要流量控制 应答 重排序或任何TCP提供的服务 应用层 它包含所有的高层协议 应用程序通过这一层访问网络 这层包含的协议有Telnet 虚拟终端协议 FTP 文件传输协议 SMTP 简单邮件传输协议 SNMP 简单网络管理协议 和DNS 域名系统服务 等 图一是TCP IP协议族中不同层次的协议 看到TCP IP的四层参考模型 很自然就会想到非常著名的OSI七层参考模型 这两个模型之间确实有很多相似的地方 它们都是基于独立的协议栈的概念 而且 层的功能也大体相似 比如在这两个模型中 传输层及传输层以上的层都为希望通信的进程提供端到端的 与网络无关的传输服务 这些层形成了传输提供者 除了这些相似之处以外 两个模型也有很多差别 OSI模型中每层都有一个接口 由接口来告诉上面的进程如何访问它 因此 OSI模型中的协议比TCP IP参考模型中的协议具有更好的隐藏性 在技术发生变化时能相对比较容易的替换掉 OSI参考模型产生在协议发明之前 这表明它没有偏向于任何特定的协议 因此非常通用 但不利的方面是设计者在协议方面没有太多的经验 因此不知道该把哪些功能放到哪一层最好 而TCP IP模型则正好相反 首先出现协议 模型是对已有的协议的描述 因此不会出现协议与模型不匹配的情况 唯一问题就是该模型不适合于任何其它协议栈 所以它对描述其它非TCP IP网络并不特别有用 另一个差别是关于面向连接的和无连接的通信 OSI模型在网络层支持无连接和面向连接的通信 但在传输层仅有面向连接的通信 这是它所依赖的 因为传输服务对用户是可见的 而TCP IP模型在网络层仅有一种通信模式 无连接 但在传输层支持两种模式 给了用户选择的机会 2 3IP地址综述 IP地址的概念 我们知道因特网是全世界范围内的计算机联为一体而构成的通信网络的总称 联在某个网络上的两台计算机之间在相互通信时 在它们所传送的数据包里都会含有某些附加信息 这些附加信息就是发送数据的计算机的地址和接受数据的计算机的地址 象这样 人们为了通信的方便给每一台计算机都事先分配一个类似我们日常生活中的电话号码一样的标识地址 该标识地址就是我们今天所要介绍的IP地址 根据TCP IP协议规定 IP地址是由32位二进制数组成 而且在INTERNET范围内是唯一的 例如 某台联在因特网上的计算机的IP地址为 11010010010010011000110000000010很明显 这些数字对于人来说不太好记忆 人们为了方便记忆 就将组成计算机的IP地址的32位二进制分成四段 每段8位 中间用小数点隔开 然后将每八位二进制转换成十进制数 这样上述计算机的IP地址就变成了 210 73 140 2 IP地址的分类 因特网是把全世界的无数个网络连接起来的一个庞大的网间网 每个网络中的计算机通过其自身的IP地址而被唯一标识的 据此我们也可以设想 在INTERNET上这个庞大的网间网中 每个网络也有自己的标识符 这与我们日常生活中的电话号码很相像 例如有一个电话号码为0515163 这个号码中的前四位表示该电话是属于哪个地区的 后面的数字表示该地区的某个电话号码 与上面的例子类似 我们把计算机的IP地址也分成两部分 分别为网络标识和主机标识 同一个物理网络上的所有主机都用同一个网络标识 网络上的一个主机 包括网络上工作站 服务器和路由器等 都有一个主机标识与其对应的网络标识 IP地址的4个字节划分为2个部分 一部分用以标明具体的网络段 即网络标识 另一部分用以标明具体的节点 即主机标识 也就是说某个网络中的特定的计算机号码 例如 盐城市信息网络中心的服务器的IP地址为210 73 140 2 对于该IP地址 我们可以把它分成网络标识和主机标识两部分 这样上述的IP地址就可以写成 网络标识 210 73 140 0主机标识 2合起来写 210 73 140 2由于网络中包含的计算机有可能不一样多 有的网络可能含有较多的计算机 也有的网络包含较少的计算机 于是人们按照网络规模的大小 把32位地址信息设成三种定位的划分方式 这三种划分方法分别对应于A类 B类 C类IP地址 A类IP地址 一个A类IP地址是指 在IP地址的四段号码中 第一段号码为网络号码 剩下的三段号码为本地计算机的号码 如果用二进制表示IP地址的话 A类IP地址就由1字节的网络地址和3字节主机地址组成 网络地址的最高位必须是 0 A类IP地址中网络的标识长度为7位 主机标识的长度为24位 A类网络地址数量较少 可以用于主机数达1600多万台的大型网络 网络号7bit表示网络号 27 2个网络主机号24bit表示主机号 224 2台主机地址范围1 0 0 0 126 255 255 255保留地址 10 0 0 0 10 255 255 255回环地址 127 0 0 0 127 255 255 255 B类IP地址 一个B类IP地址是指 在IP地址的四段号码中 前两段号码为网络号码 B类IP地址就由2字节的网络地址和2字节主机地址组成 网络地址的最高位必须是 10 B类IP地址中网络的标识长度为14位 主机标识的长度为16位 B类网络地址适用于中等规模规模的网络 每个网络所能容纳的计算机数为6万多台 网络号14bit表示网络号 214 2个网络主机号16bit表示主机号 216 2台主机地址范围128 1 0 0 191 254 255 255保留地址 172 16 0 0 172 31 255 255 C类IP地址 一个C类IP地址是指 在IP地址的四段号码中 前三段号码为网络号码 剩下的一段号码为本地计算机的号码 如果用二进制表示IP地址的话 C类IP地址就由 字节的网络地址和1字节主机地址组成 网络地址的最高位必须是 110 C类IP地址中网络的标识长度为21位 主机标识的长度为8位 C类网络地址数量较多 适用于小规模的局域网络 每个网络最多只能包含254台计算机 网络号21bit表示网络号 221 2个网络主机号8bit表示主机号 28 2台主机地址范围192 0 1 0 223 255 254 255保留地址 192 168 0 0 192 168 255 255 除了上面三种类型的IP地址外 还有几种特殊类型的IP地址 TCP IP协议规定 凡IP地址中的第一个字节以 lll0 开始的地址都叫多点广播地址 因此 任何第一个字节大于223小于240的IP地址是多点广播地址 IP地址中的每一个字节都为0的地址 0 0 0 0 对应于当前主机 IP地址中的每一个字节都为1的IP地址 255 255 255 255 是当前子网的广播地址 IP地址中凡是以 llll0 的地址都留着将来作为特殊用途使用 IP地址中不能以十进制 127 作为开头 127 1 1 1用于回路测试 同时网络ID的第一个6位组也不能全置为 0 全 0 表示本地网络 D类地址 D类地址不分网络地址和主机地址 它的第1个字节的前四位固定为1110 D类地址范围 224 0 0 1到239 255 255 254 3 主要用于组播 E类地址 E类地址也不分网络地址和主机地址 它的第1个字节的前五位固定为11110 E类地址范围 240 0 0 1到255 255 255 254 3 保留地址 IP地址规则在使用IP地址时 还要知道下列地址是保留作为特殊用途的 一般不使用 全0的主机号码 这表示该IP地址就是网络的地址 全1的主机号码 表示广播地址 即对该网络上所有的主机进行广播 全0的IP地址 即0 0 0 0 网络号码为127 X X X 这里X X X为任何数 这样的网络号码用作本地软件回送测试 Loopbacktest 之用 全1地址255 255 255 255 这表示 向我的网络上的所有主机广播 原先是使用0 0 0 0 地址的使用范围 IP地址重要的特点 IP地址有一些是一种非等级的地址结构 这就是说 和电话号码的结构不一样 IP地址不能反映任何有关主机位置的地理信息 当一个主机同时连接到两个网络上时 作路由器用的主机即为这种情况 该主机就必须同时具有两个相应的IP地址 其网络号码net id是不同的 这种主机成为多地址主机 multihomedhost 按照Internet的观点 用转发器或网桥连接起来的若干个局域网仍为一个网络 因此这些局域网都具有同样的网络号码net id 在IP地址中 所有分配到网络号码net id的网络 不管是小的局域网还是很大的广域网 都是平等的 子网掩码的概念子网掩码是一个32位地址 用于屏蔽IP地址的一部分以区别网络标识和主机标识 并说明该IP地址是在局域网上 还是在远程网上 子网化是一个能够大大减少IP地址浪费的解决方案 子网化指的是由负责一个特定的TCP IP网络编号的网络工程师来实际地改变规则的过程 子网化允许把一个A类 B类或C类网络划分为更小的网络 叫做子网 并用原来的网络规则来处理每个子网 在B类网络150 1 0 0中 所有地址从150 1开始的主机都位于同一个网络中 一个IP网络只不过是一组主机 并且他们的IP地址的某一部分的值相同 子网化允许网络工程师来配置网络设备 从而把前3个8位组相同的地址看作位于一个网络中 比如 把一个B类网络150 1 0 0划分为更小的网络 创建如下子网 以150 1 1开头的地址以150 1 2开头的地址以150 1 3开头的地址等等 尽管所有的地址仍然位于B类网络150 1 0 0中 但网络设备并不认为网络是一个大组 而是认为网络有很多个小组 也就是子网 一个子网只是一个大的A类 B类或C类网络的一个分支 术语子网化指的是网络工程师决定创建子网的过程 划分子网的方法子网的划分 实际上就是设计子网掩码的过程 子网掩码主要是用来区分IP地址中的网络ID和主机ID 它用来屏蔽IP地址的一部分 从IP地址中分离出网络ID和主机ID 子网掩码是由4个十进制数组成的数值 中间用 分隔 如255 255 255 0 若将它写成二进制的形式为 11111111 11111111 11111111 00000000 其中为 1 的位分离出网络ID 为 0 的位分离出主机ID 也就是通过将IP地址与子网掩码进行 与 逻辑操作 得出网络号 例如 假设IP地址为192 160 4 1 子网掩码为255 255 255 0 则网络ID为192 160 4 0 主机ID为0 0 0 1 计算机网络ID的不同 则说明他们不在同一个物理子网内 需通过路由器转发才能进行数据交换 划分子网的方法如果希望在一个网络中建立子网 就要在这个默认的子网掩码中加入一些位 它减少了用于主机地址的位数 加入到掩码中的位数决定了可以配置的子网 因而 在一个划分了子网的网络中 每个地址包含一个网络地址 一个子网位数和一个主机地址 如图1所示 在图1中 子网位来自主机地址的最高相邻位 并从一个8位的位组边界开始 因为默认的子网掩码总是在8位位组的边界处结束 随着主机位中加入子网位的增加 我们可以从左到右计数 并用和它们位置相关的值 将它们转换为十进制 划分子网的方法 确定子网掩码数用于子网掩码的位数决定于可能的子网数目和每个子网的主机数目 在定义子网掩码前 必须弄清楚本来使用的子网数和主机数目 定义子网掩码的步骤为 A 确定哪些组地址归我们使用 比如我们申请到的网络号为 150 73 a b 该网络地址为c类IP地址 网络标识为 150 73 主机标识为 a b B 根据我们现在所需的子网数以及将来可能扩充到的子网数 用主机的一些位来定义子网掩码 比如我们现在需要12个子网 将来可能需要16个 用第三个字节的前四位确定子网掩码 前四位都置为 1 即第三个字节为 11110000 这个数我们暂且称作新的二进制子网掩码 C 把对应初始网络的各个位都置为 1 即前两个字节都置为 1 第四个字节都置为 0 则子网掩码的间断二进制形式为 11111111 11111111 11110000 00000000 D 把这个数转化为间断十进制形式为 255 255 240 0 这个数为该网络的子网掩码 确定子网掩码数若有一个B类IP地址172 16 2 160 其默认的子网掩码是255 255 0 0 若不使用子网 即只使用默认的子网掩码 其运算过程如图2所示 确定子网掩码数若使用子网位 则其运算过程如图3所示 注意 在图3中 使用了子网位 其子网掩码值从默认的255 255 0 0转变为255 255 255 0 从而使逻辑 与 之后的网络号发生了变化 IPConfig命令IPConfig实用程序和它的等价图形用户界面可用于显示当前的TCP IP配置的设置值 这些信息一般用来检验人工配置的TCP IP设置是否正确 但是 如果我们的计算机和所在的局域网使用了动态主机配置协议 DHCP 这个程序所显示的信息也许更加实用 这时 IPConfig可以让我们了解自己的计算机是否成功的租用到一个IP地址 如果租用到则可以了解它目前分配到的是什么地址 了解计算机当前的IP地址 子网掩码和缺省网关实际上是进行测试和故障分析的必要项目 2 4TCP IP实用工具 IPCONFIG当使用IPConfig时不带任何参数选项 那么它为每个已经

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论