第2章协议模型与网络协议_第1页
第2章协议模型与网络协议_第2页
第2章协议模型与网络协议_第3页
第2章协议模型与网络协议_第4页
第2章协议模型与网络协议_第5页
已阅读5页,还剩59页未读 继续免费阅读

下载本文档

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

文档简介

1、SQL Server实用简明教程(第三版)第3章 Transact-SQL语言第1页第第2章章协议模型与网络协议协议模型与网络协议本章概述 本章的学习目标主要内容SQL Server实用简明教程(第三版)第3章 Transact-SQL语言第2页本章概述本章概述l通信双方就像调制和解调一样互逆,实现互逆操通信双方就像调制和解调一样互逆,实现互逆操作的是有双方的子实体对象之间完成的,也就是作的是有双方的子实体对象之间完成的,也就是说发送方(说发送方(N)子实体的操作,只有接收方()子实体的操作,只有接收方(N)子实体才能实施逆操作,其他子实体的操作也是子实体才能实施逆操作,其他子实体的操作也是一

2、样的。一样的。l这主要是因为只有同一层次子实体之间采用的通这主要是因为只有同一层次子实体之间采用的通信语言是相同的,即每个子实体都有自己独特的信语言是相同的,即每个子实体都有自己独特的通信协议,只有对等层的子实体才能理解。本章通信协议,只有对等层的子实体才能理解。本章全面研究协议模型和现实的网络协议。全面研究协议模型和现实的网络协议。SQL Server实用简明教程(第三版)第3章 Transact-SQL语言第3页本章的学习目标本章的学习目标l掌握协议模型的结构功能掌握协议模型的结构功能l理解理解TCP/IP网络协议集网络协议集l理解理解IP协议格式协议格式l理解理解IP地址格式与分类地址格

3、式与分类l掌握其他网络协议掌握其他网络协议SQL Server实用简明教程(第三版)第3章 Transact-SQL语言第4页主要内容主要内容2.1 协议模型协议模型2.2 TCP/IP网络协议网络协议2.3 IP协议协议2.4 其他网络协议其他网络协议2.5 本章小结本章小结SQL Server实用简明教程(第三版)第3章 Transact-SQL语言2.1协议模型协议模型l由一个或多个服务对象构成的(由一个或多个服务对象构成的(N)服务提供者)服务提供者,提供(,提供(N)服务。为了服务的提供,这些对象)服务。为了服务的提供,这些对象使用(使用(N-1)服务。)服务。l如果该提供者包含一个

4、以上的服务对象,(如果该提供者包含一个以上的服务对象,(N-1)服务用来使它们按照已定义的、被称为协议的)服务用来使它们按照已定义的、被称为协议的一组规则、数据格式和功能,进行协作。然而使一组规则、数据格式和功能,进行协作。然而使用了(用了(N-1)服务和特定的协议这一点,对这些)服务和特定的协议这一点,对这些服务对象是隐蔽的。因此对(服务对象是隐蔽的。因此对(N)服务用户也是)服务用户也是透明的。透明的。第5页SQL Server实用简明教程(第三版)第3章 Transact-SQL语言服务提供者的分解服务提供者的分解第6页SQL Server实用简明教程(第三版)第3章 Transact-

5、SQL语言2.1.1协议行为协议行为l完成协议的对象的行为通常按有限状态机模型设完成协议的对象的行为通常按有限状态机模型设计。有限状态机存在着不同的变体(计。有限状态机存在着不同的变体(Holzmann,1991),从协议的功能和目标出发,),从协议的功能和目标出发,使用有限状态机的定义和组成成分。使用有限状态机的定义和组成成分。l一个有限状态集;一个有限的转换规则集;一个一个有限状态集;一个有限的转换规则集;一个有限谓词集;一个有限外来事件集;一个有限外有限谓词集;一个有限外来事件集;一个有限外出事件集。出事件集。第7页SQL Server实用简明教程(第三版)第3章 Transact-SQ

6、L语言一个(一个(N)服务对象的环境)服务对象的环境第8页SQL Server实用简明教程(第三版)第3章 Transact-SQL语言2.1.2协议数据协议数据l协同工作的服务对象用协议数据单元(协同工作的服务对象用协议数据单元(PDU)交)交换信息。换信息。PDU还有一些其他的常用表示法,这些还有一些其他的常用表示法,这些表示法依赖于所处的表示法依赖于所处的OSI层次。层次。l一个一个PDU通常由头部、有效载荷和尾部(通常由头部、有效载荷和尾部(trailer)三个字段组成。所有的字段都可以用来传递协)三个字段组成。所有的字段都可以用来传递协议控制信息(议控制信息(protocol con

7、trol information, PCI)。但服务数据单元仅能放在有效载荷字段)。但服务数据单元仅能放在有效载荷字段中传输。中传输。l根据根据PDU是否携带服务数据,我们把它们分成两是否携带服务数据,我们把它们分成两种类型:数据种类型:数据PDU和控制和控制PDU。第9页SQL Server实用简明教程(第三版)第3章 Transact-SQL语言协作的(协作的(N)服务对象与它们的)服务对象与它们的(N)服务用户)服务用户第10页SQL Server实用简明教程(第三版)第3章 Transact-SQL语言2.1.3协议功能协议功能l一个协议除了行为和数据格式,也规定协一个协议除了行为和数

8、据格式,也规定协同的服务对象应执行的功能。这些协议功同的服务对象应执行的功能。这些协议功能在调用一个对象的操作时执行,或者在能在调用一个对象的操作时执行,或者在一个有限状态机模型中,出现一个外来事一个有限状态机模型中,出现一个外来事件时执行。一个服务对象的协议功能,通件时执行。一个服务对象的协议功能,通常要求所有与之通信的服务对象具有协同常要求所有与之通信的服务对象具有协同的协议功能。的协议功能。第11页SQL Server实用简明教程(第三版)第3章 Transact-SQL语言第12页主要内容主要内容2.1 协议模型协议模型2.2 TCP/IP网络协议网络协议2.3 IP协议协议2.4 其

9、他网络协议其他网络协议2.5 本章小结本章小结SQL Server实用简明教程(第三版)第3章 Transact-SQL语言2.2 TCP/IP网络协议网络协议l因特网在不同层次使用了一组不同但互补的协议因特网在不同层次使用了一组不同但互补的协议,这组协议常被称为因特网协议组。虽然它包括,这组协议常被称为因特网协议组。虽然它包括了一百多个协议,但最流行的是网际协议(了一百多个协议,但最流行的是网际协议(IP)和传输控制协议(和传输控制协议(TCP),而因特网协议组也被),而因特网协议组也被称为称为TCP/IP协议集。协议集。lTCP/IP也是大多数中等和大型网络的协议选择。也是大多数中等和大型

10、网络的协议选择。Novell NetWare、UNIX和和Windows NT网络都网络都可以实现可以实现TCP/IP,在不断增长的网络上和使用客,在不断增长的网络上和使用客户机户机/服务器或者基于服务器或者基于Web的应用中更是如此。的应用中更是如此。第13页SQL Server实用简明教程(第三版)第3章 Transact-SQL语言2.2.1因特网概述因特网概述1. 因特网组织因特网组织l因特网技术标准化,控制因特网技术标准化,控制TCP/IP协议族,定制新协议族,定制新的标准以及其他类似的事情和技术,是由四个非的标准以及其他类似的事情和技术,是由四个非盈利性国际团体监督、协调及演化的。

11、盈利性国际团体监督、协调及演化的。l因特网协会(因特网协会(ISOC,Internet Society),因特网因特网体系结构委员会(体系结构委员会(IAB,Internet Architecture Board),因特网研究部(因特网研究部(IRIF,Internet Research Task Force),因特网工程部(因特网工程部(IETF,Internet Engineering Task Force)l为帮助为帮助IETF主席,又成立了主席,又成立了Internet工程指导小工程指导小组(组(IESG, Internet Engineering Steering Group)。)。

12、第14页SQL Server实用简明教程(第三版)第3章 Transact-SQL语言2. 因特网协议因特网协议l网络协议通常分不同层次进行开发,每一层分别网络协议通常分不同层次进行开发,每一层分别负责不同的通信功能。负责不同的通信功能。TCP/IP是因特网协议组的是因特网协议组的核心协议族,是一组不同层次多个协议的组合。核心协议族,是一组不同层次多个协议的组合。l一个管理机构为接入互联网的网络分配一个管理机构为接入互联网的网络分配IP地址。地址。这个管理机构就是互联网络信息中心(这个管理机构就是互联网络信息中心(Interne tNetwork Information Centre),称作)

13、,称作InterNIC。InterNIC只分配网络号,主机号的分配由系统只分配网络号,主机号的分配由系统管理员来负责。管理员来负责。l我国的我国的IP地址和地址和DNS域名管理,是由中国互联网域名管理,是由中国互联网络中心络中心http:/ Server实用简明教程(第三版)第3章 Transact-SQL语言3. 客户客户-服务器模型服务器模型l网络中计算机之间的通信,实质上是计算机上进网络中计算机之间的通信,实质上是计算机上进程的通信,大部分网络应用程序在编写时都假设程的通信,大部分网络应用程序在编写时都假设一端是客户,另一端是服务器,其目的是为了让一端是客户,另一端是服务器,其目的是为了

14、让服务器为客户提供一些特定的服务。可以将这种服务器为客户提供一些特定的服务。可以将这种服务分为两种类型:重复型或并发型。服务分为两种类型:重复型或并发型。第16页SQL Server实用简明教程(第三版)第3章 Transact-SQL语言重复型服务器交互步骤重复型服务器交互步骤lI1.等待一个客户请求的到来。等待一个客户请求的到来。lI2.处理客户请求。处理客户请求。lI3.发送响应给发送请求的客户。发送响应给发送请求的客户。lI4.返回返回I1步。步。l重复型服务器主要的问题发生在重复型服务器主要的问题发生在I2状态。在这个状态。在这个时候,它不能为其他客户机提供服务。时候,它不能为其他客

15、户机提供服务。第17页SQL Server实用简明教程(第三版)第3章 Transact-SQL语言并发型服务器交互步骤并发型服务器交互步骤lC1.等待一个客户请求的到来。等待一个客户请求的到来。lC2.启动一个新的服务器来处理这个客户的请求。启动一个新的服务器来处理这个客户的请求。在这期间可能生成一个新的进程、任务或线程,在这期间可能生成一个新的进程、任务或线程,并依赖底层操作系统的支持。这个步骤如何进行并依赖底层操作系统的支持。这个步骤如何进行取决于操作系统。生成的新服务器对客户的全部取决于操作系统。生成的新服务器对客户的全部请求进行处理。处理结束后,终止这个新服务器请求进行处理。处理结束

16、后,终止这个新服务器。lC3.返回返回C1步。步。第18页SQL Server实用简明教程(第三版)第3章 Transact-SQL语言2.2.2TCP/IP协议体系协议体系1. TCP/IP体系结构体系结构l在在20世纪世纪60年代后期,年代后期,ARPA开始着手组建开始着手组建ARPANET,希望能够找到一种通用的方式,使,希望能够找到一种通用的方式,使得大学、研究所和得大学、研究所和DoD的计算机能够通过的计算机能够通过WAN进进行相互通信,即能够对行相互通信,即能够对ARPANET进行普遍的访进行普遍的访问。问。ARPA启动了一个研究项目对之进行改进。启动了一个研究项目对之进行改进。他

17、们所开发的协议实际上是两个协议的组合,即他们所开发的协议实际上是两个协议的组合,即传输控制协议(传输控制协议(TCP)和网际协议()和网际协议(IP)。)。第19页SQL Server实用简明教程(第三版)第3章 Transact-SQL语言TCP/IP体系结构体系结构图图第20页SQL Server实用简明教程(第三版)第3章 Transact-SQL语言2. 网络接口层协议网络接口层协议lTCP/IP网络接口层细分为逻辑链路层和物理层接网络接口层细分为逻辑链路层和物理层接口层。逻辑链路层协议适配不同的子网特征,以口层。逻辑链路层协议适配不同的子网特征,以便为高层提供统一的子网接口,链路层存

18、在着一便为高层提供统一的子网接口,链路层存在着一些将些将IP映射为特殊网络类型的适配协议映射为特殊网络类型的适配协议l还存在着一个独立于还存在着一个独立于IP的专用于串行链路的适配的专用于串行链路的适配协议,称为点到点协议(协议,称为点到点协议(Point-to-Point Protocol,PPP)。)。第21页SQL Server实用简明教程(第三版)第3章 Transact-SQL语言4. 网络层协议网络层协议l互联网络层是整个体系结构的关键部分,它的功互联网络层是整个体系结构的关键部分,它的功能是使主机可以把分组发往任何网络,并且是分能是使主机可以把分组发往任何网络,并且是分组独立地传

19、向目的地。组独立地传向目的地。l网络层协议负责一个特殊的工作,实现中继、差网络层协议负责一个特殊的工作,实现中继、差错报告、组管理、资源预留或路由选择等功能。错报告、组管理、资源预留或路由选择等功能。包括包括网际协议(网际协议(IP)网际组管理协议()网际组管理协议(IGMP),网际控制报文协议(网际控制报文协议(ICMP), 资源预留协议(资源预留协议(RSVP),网际数据流协议版本网际数据流协议版本2(ST2),边界网边界网关协议(关协议(BGP),开放最短路径优先(开放最短路径优先(OSPF),路路由选择信息协议(由选择信息协议(RIP)第22页SQL Server实用简明教程(第三版)

20、第3章 Transact-SQL语言5. 传输层协议传输层协议l传输层协议通过增加功能改进端到端的网络服务传输层协议通过增加功能改进端到端的网络服务,诸如差错控制提供了可靠通信,多路分解可同,诸如差错控制提供了可靠通信,多路分解可同时支持多个应用等传输层常用协议。时支持多个应用等传输层常用协议。l传输控制协议(传输控制协议(Transmission Control Protocol,TCP),用户数据报协议(用户数据报协议(User Datagram Protocol,UDP),通用消息事务协通用消息事务协议(议(Versatile Message Transaction Protocol,V

21、MTP),网络块传送(网络块传送(NETwork Block Transfer,NETBLT),多点播送传输协议(多点播送传输协议(Multicast Transport Protocol,MTP),可靠可靠数据协议(数据协议(Reliable Data Protocol,RDP)第23页SQL Server实用简明教程(第三版)第3章 Transact-SQL语言6. 应用层协议应用层协议l应用层协议使用适当的传输协议来支持基本的面应用层协议使用适当的传输协议来支持基本的面向应用服务,例如文件传送、远程登录和电子邮向应用服务,例如文件传送、远程登录和电子邮件等应用层常用协议。件等应用层常用协

22、议。l自举协议(自举协议(BOOTP),动态主机配置协议(动态主机配置协议(DHCP),ECHO,DISCARD,TIME由由,CHARGEN,文件传送协议(文件传送协议(FTP),平常文件平常文件传送协议(传送协议(TFTP),远程通信网络(远程通信网络(TELNET),简单网络管理协议(简单网络管理协议(SNMP),简单邮件传送简单邮件传送协议(协议(SMTP),域名系统(域名系统(DNS)。第24页SQL Server实用简明教程(第三版)第3章 Transact-SQL语言第25页主要内容主要内容2.1 协议模型协议模型2.2 TCP/IP网络协议网络协议2.3 IP协议协议2.4 其

23、他网络协议其他网络协议2.5 本章小结本章小结SQL Server实用简明教程(第三版)第3章 Transact-SQL语言2.3 IP协议协议l因特网中随处可见的因特网中随处可见的IP协议协议有有两个著名的版本。两个著名的版本。虽然从版本编号来看,两个版本的虽然从版本编号来看,两个版本的IP之间是兼容之间是兼容演变或扩展,但实际上两个版本是完全不同的。演变或扩展,但实际上两个版本是完全不同的。第26页SQL Server实用简明教程(第三版)第3章 Transact-SQL语言2.3.1 IP版本版本4lIP版本版本4(IPv4)使用可变长的头部,但无尾部,)使用可变长的头部,但无尾部,由由

24、14个字段组成的头部结构,最小个字段组成的头部结构,最小IP头部长度为头部长度为20字节。如图字节。如图2-11所示,所示,IP分组头的长度为分组头的长度为4个个字节(字节(32位)的整数倍。位)的整数倍。第27页SQL Server实用简明教程(第三版)第3章 Transact-SQL语言IP分组图分组图第28页SQL Server实用简明教程(第三版)第3章 Transact-SQL语言1.版本号(版本号(Version)l该该4位段表示协议支持的位段表示协议支持的IP版本号。版本号。在处理在处理IP分分组之前,所有组之前,所有软件都要检查分组的版本段,以便软件都要检查分组的版本段,以便保

25、证分组格式与软件期待的格式一样。如果标准保证分组格式与软件期待的格式一样。如果标准不同,机器将拒绝与其协议版本不同的不同,机器将拒绝与其协议版本不同的IP分组。分组。本书给出的是对版本为本书给出的是对版本为4的的IP的描述,版本的描述,版本1-3现现已过时不用。已过时不用。第29页SQL Server实用简明教程(第三版)第3章 Transact-SQL语言2.互联网分组头长互联网分组头长HeadLengthl该该4位表示位表示IP分组头的长度,以分组头的长度,以32个二进制位(个二进制位(4个字节)为单位,取值的范围是个字节)为单位,取值的范围是5-15(缺值是(缺值是5)。由于。由于IP分

26、组头的长度是可变的,故这个段是必分组头的长度是可变的,故这个段是必不可少的。不可少的。第30页SQL Server实用简明教程(第三版)第3章 Transact-SQL语言3.服务类型(服务类型(TypeOfService)l该该8位段说明分组所希望得到的服务质量。位段说明分组所希望得到的服务质量。l服务类型段的头服务类型段的头3位表明位表明IP分组的优先权,该值在分组的优先权,该值在0(正常)(正常)-7(网络控制)之间变化,数值越大则(网络控制)之间变化,数值越大则IP分组越重要。但大多数分组越重要。但大多数TCP/IP产品和实际使用产品和实际使用TEP/IP的所有硬件都忽略该的所有硬件都

27、忽略该3位域,用相同的优位域,用相同的优先权处理所有先权处理所有IP分组。分组。l接下来的接下来的3位控制网络的延迟时间、吞吐率和可位控制网络的延迟时间、吞吐率和可靠性,如果置零则表示常规服务,如果置靠性,如果置零则表示常规服务,如果置1则分则分别表明短延迟、高吞吐率和高可靠性,最后两位别表明短延迟、高吞吐率和高可靠性,最后两位未使用,置成零即可。未使用,置成零即可。第31页SQL Server实用简明教程(第三版)第3章 Transact-SQL语言4.总长度(总长度(Length)l该该16位段给出位段给出IP分组的总长度,单位是字节,包分组的总长度,单位是字节,包括分组头和数据的长度。数

28、据段的长度可以从总括分组头和数据的长度。数据段的长度可以从总长度减去分组头长度计算出来。由于总长度段有长度减去分组头长度计算出来。由于总长度段有16位,所以最大位,所以最大IP分组允许有分组允许有65535个字节。但个字节。但这样大的这样大的IP分组在现有物理网络上传输不现实。分组在现有物理网络上传输不现实。l协议规定,所有主机和路由器至少能支持协议规定,所有主机和路由器至少能支持576字字节的分组长度。在本节的稍后我们将会说明,节的分组长度。在本节的稍后我们将会说明,IP分组在网络传送过程中被分成报片的情况下,分分组在网络传送过程中被分成报片的情况下,分片后形成的片后形成的分组中的总长度段指

29、的是单个报片的分组中的总长度段指的是单个报片的总长度,而不是原先总长度,而不是原先IP分组的总长度。分组的总长度。第32页SQL Server实用简明教程(第三版)第3章 Transact-SQL语言5.标识符(标识符(Identify)l16位的标识符段包含一个整数,唯一地标识该位的标识符段包含一个整数,唯一地标识该IP分组。分组。IP分组在传输时,其间可能会通过一些子分组在传输时,其间可能会通过一些子网。这些子网允许的最大协议数据单元(网。这些子网允许的最大协议数据单元(PDU)长度可能小于该长度可能小于该IP分组的长度。为了处理这种情分组的长度。为了处理这种情况,况,IP为以数据报方式传

30、送的为以数据报方式传送的IP分组提供了分片分组提供了分片和重组的功能。这也正是和重组的功能。这也正是IP模块的主要功能之一模块的主要功能之一。第33页SQL Server实用简明教程(第三版)第3章 Transact-SQL语言l当路由器准备将当路由器准备将IP分组发送到网络上,而该网络分组发送到网络上,而该网络又无法将整个分组一次发送时,路由器必须将该又无法将整个分组一次发送时,路由器必须将该IP分组分成小块(亦即分组),使其长度能满足分组分成小块(亦即分组),使其长度能满足这一网络对数据分组的限制。这一网络对数据分组的限制。IP分组可以独立地分组可以独立地通过各个路径发送,使得分片后的通过

31、各个路径发送,使得分片后的IP分组直至到分组直至到达目的地主机才可能汇集到一起,并且甚至不一达目的地主机才可能汇集到一起,并且甚至不一定以原先的次序到达。这样,所有进行接收的主定以原先的次序到达。这样,所有进行接收的主机都要求支持重组能力。机都要求支持重组能力。第34页SQL Server实用简明教程(第三版)第3章 Transact-SQL语言6.标志(标志(Flags)l3位的标志段含有控制标志,如图位的标志段含有控制标志,如图2-13所示,所示,3位位中的低序中的低序2位控制位控制IP分组的分片,这分组的分片,这2位分别称作位分别称作不可分片位和还有分组片位。不可分片位和还有分组片位。l

32、当不可分片位置当不可分片位置1时,规定不要将时,规定不要将IP分组分片。仅分组分片。仅当完整的当完整的IP分组才是有用的情况下,应用程序才分组才是有用的情况下,应用程序才可选择禁止分片可选择禁止分片。l标志段的低位标明这个分组片包含的数据是取自标志段的低位标明这个分组片包含的数据是取自原始原始IP分组中间,还是取自原始分组中间,还是取自原始IP分组的最后分组的最后。第35页SQL Server实用简明教程(第三版)第3章 Transact-SQL语言标志段的含义图标志段的含义图第36页SQL Server实用简明教程(第三版)第3章 Transact-SQL语言7.分组片偏移(报片偏移)分组片

33、偏移(报片偏移)l13位的分组左偏移段标明当前分组片在初始位的分组左偏移段标明当前分组片在初始分分组中的位置。为了重组组中的位置。为了重组分组,报宿必须得到从偏分组,报宿必须得到从偏移移0开始,直到最高偏移值之间的所有分组片。开始,直到最高偏移值之间的所有分组片。l分组片不需要按顺序到达,接收分组片的报宿与分组片不需要按顺序到达,接收分组片的报宿与分割分割IP分组的路由器之间不进行通信,报宿也能分组的路由器之间不进行通信,报宿也能重新组合重新组合IP分组。分组片偏移以分组。分组片偏移以64位(位(8个字节个字节)为单位,取值范围)为单位,取值范围0-8191,默认值是,默认值是0。第37页SQ

34、L Server实用简明教程(第三版)第3章 Transact-SQL语言8.生存时间(生存时间(TTL)l8位的生存时间段指定位的生存时间段指定IP分织能在互联网中停留的分织能在互联网中停留的最长时间,以秒为单位。当该值降为最长时间,以秒为单位。当该值降为0时,时,IP分组分组就应被舍弃。该段的值在就应被舍弃。该段的值在IP分组每通过一个路由分组每通过一个路由器时都减去器时都减去1。l该段决定了源发该段决定了源发IP分组在网上存活时间的最大值分组在网上存活时间的最大值、它保证、它保证IP分组不会在一个互联网中无休止地往分组不会在一个互联网中无休止地往返传输,即使在路由表变乱形成路由器循环为返

35、传输,即使在路由表变乱形成路由器循环为IP分组选择路由时也不要紧。分组选择路由时也不要紧。第38页SQL Server实用简明教程(第三版)第3章 Transact-SQL语言9.协议(协议(Protocol)l八位的协议段表示哪一个高层协议将用于接收八位的协议段表示哪一个高层协议将用于接收IP分组中的数据。高层协议的号码由分组中的数据。高层协议的号码由TCP/IP中央权中央权威管理机构予以分配。威管理机构予以分配。l例如,该段值的十进制表示对应例如,该段值的十进制表示对应ICMP(互联网控(互联网控制报文协议)是制报文协议)是1,对应传输控制协议(,对应传输控制协议(TCP)是)是6,对应,

36、对应EGP(外部网关协议)是(外部网关协议)是8,对应用户数,对应用户数据报协议(据报协议(UDP)是)是17,对应,对应ISO传输层协议第传输层协议第4类(类(ISO-TP4)是)是29。第39页SQL Server实用简明教程(第三版)第3章 Transact-SQL语言10. 校验和(校验和(Checksum)l16位的分组校验和段保证位的分组校验和段保证IP分组头值的完整性,分组头值的完整性,当当IP分组头通过路由器时,分组头发生变化(例分组头通过路由器时,分组头发生变化(例如生存时间段值减如生存时间段值减1),校验和必须重新计算。),校验和必须重新计算。l校验和的计算十分简单。首先,

37、在计算前将校验校验和的计算十分简单。首先,在计算前将校验和段的所有和段的所有16位均置成位均置成0,然后,然后IP分组头从头开分组头从头开始每两个字节为一个单位相加,若相加的结果有始每两个字节为一个单位相加,若相加的结果有进位,那么将和加进位,那么将和加1。如此反复,直到所有分组。如此反复,直到所有分组头的信息都相加完为止,将最后的值对头的信息都相加完为止,将最后的值对1求补,求补,即得出即得出16位的校验和。位的校验和。第40页SQL Server实用简明教程(第三版)第3章 Transact-SQL语言11.源地址源地址和和12.目标地址目标地址l32位的源地址段包含发送位的源地址段包含发

38、送IP分组的源主机的分组的源主机的IP地地址。址。l32位的目标地址段包含位的目标地址段包含IP分组的目的地主机的分组的目的地主机的IP地址。地址。第41页SQL Server实用简明教程(第三版)第3章 Transact-SQL语言13.任选段(任选段(variable Option)l可变长的任选段提供了一种策略,允许今后的版可变长的任选段提供了一种策略,允许今后的版本包含在当前设计的头中尚未出现的信息,也避本包含在当前设计的头中尚未出现的信息,也避免使用固定的保留长度,从而可以根据实际需要免使用固定的保留长度,从而可以根据实际需要选用某些头部登录项。选用某些头部登录项。第42页SQL S

39、erver实用简明教程(第三版)第3章 Transact-SQL语言14.填充段(填充段(Pad)lIP分组头必须是分组头必须是4个字节长的整数倍。填充段是为个字节长的整数倍。填充段是为了使有任选项的了使有任选项的IP分组满足分组满足4个字节长度的整数倍个字节长度的整数倍而设计的,通常用而设计的,通常用0填人填充段来满足这一要求填人填充段来满足这一要求。填充段的有无或所需要的长度取决于选择项的。填充段的有无或所需要的长度取决于选择项的使用情况。使用情况。第43页SQL Server实用简明教程(第三版)第3章 Transact-SQL语言2.3.2 IP版本版本4地址基本格式地址基本格式lIP

40、v4地址是一个地址是一个32位的二进制数,通常被分割为位的二进制数,通常被分割为4个个“8位位二进制二进制数数”(也就是(也就是4个字节)。个字节)。IP地地址通常用址通常用“点分十进制点分十进制”表示成(表示成(a1.a2.a3.a4)的形式,其中,的形式,其中,a1,a2,a3,a4是是0至至255之间的十进之间的十进制整数。例如点分十进制整数。例如点分十进IP地址(地址(23),实际上是),实际上是32位二进制数(位二进制数(11010010.00101110.01100110.01111011)。)。IP地址范围最小地址值地址范围最小地址值,最大的

41、地址值,最大的地址值55。点分十进制数表示的。点分十进制数表示的IP地址格地址格由由网络地址网络地址和和主机地址主机地址组成。组成。第44页SQL Server实用简明教程(第三版)第3章 Transact-SQL语言IPv4分类分类第45页SQL Server实用简明教程(第三版)第3章 Transact-SQL语言IPv4地址地址lA类地址的最高位为类地址的最高位为0和随后的和随后的7位是网络地址部位是网络地址部分,剩下的分,剩下的24位表示网内主机地址。这样在一个位表示网内主机地址。这样在一个互联网络内可能会有互联网络内可能会有126个个A类网络,而每一个类网络

42、,而每一个A类网络中允许有类网络中允许有1600万个节点。非常大的地区网万个节点。非常大的地区网,如美国的,如美国的MILNET和某些很大的商业网,才能和某些很大的商业网,才能使用使用A类地址。类地址。lB类地址的最高两位类地址的最高两位10和后随的和后随的14位是网络地址位是网络地址部分,剩下的部分,剩下的16位表示网内的主机地址。这样,位表示网内的主机地址。这样,在某种互联环境下可能会有大约在某种互联环境下可能会有大约16,000个个B类网类网络,而每个络,而每个B类网络中可以有类网络中可以有65,000多个节点。多个节点。一般大单位和大公司营建的网络使用一般大单位和大公司营建的网络使用B

43、类地址。类地址。第46页SQL Server实用简明教程(第三版)第3章 Transact-SQL语言IPv4地址地址lC类地址的最高三位类地址的最高三位110和后随的和后随的21位是网络地址位是网络地址部分,剩下的部分,剩下的8位表示网内主机地址。这样,一位表示网内主机地址。这样,一个互联网将允许包含个互联网将允许包含200万个万个C类网络,每一个类网络,每一个C类网络中最多可以有类网络中最多可以有254个节点,较小的单位和个节点,较小的单位和公司都使用公司都使用C类地址。类地址。第47页SQL Server实用简明教程(第三版)第3章 Transact-SQL语言lD类地址用于在类地址用于

44、在IP网络中的组播(网络中的组播(multicasting,又称为多播广播)。又称为多播广播)。D类地址的前类地址的前4位恒为位恒为1110,预置前预置前3位为位为1意味着意味着D类十进制地址开始于类十进制地址开始于128+64+32等于等于224。第。第4位为位为0意味着意味着D类十进制类十进制地址的最大值为地址的最大值为128+64+32+8+4+2+1为为239,因,因此此D类地址空间的范围从类地址空间的范围从到到55。lE类地址保留作研究之用。因此类地址保留作研究之用。因此Internet上没有可上没有可用的用的E类地址。类地址。E类地址的前

45、类地址的前4位恒为位恒为1,因此有效,因此有效的十进制地址范围从的十进制地址范围从至至55。第48页SQL Server实用简明教程(第三版)第3章 Transact-SQL语言2.3.3 IP版本版本6l当前采用的当前采用的IP协议是它的第协议是它的第4版(版(1PV4),),IPV5的称号被赋给了一个实验的称为流协议的面向连的称号被赋给了一个实验的称为流协议的面向连接的互联网协议。现在人们普遍意识到,接的互联网协议。现在人们普遍意识到,IPV4的的剩余生命期已经屈指可数了,并且最终要被一个剩余生命期已经屈指可数了,并且最终要被一个称为称为IPV6

46、的新协议替代。的新协议替代。第49页SQL Server实用简明教程(第三版)第3章 Transact-SQL语言IPv6lIPv6使用了固定长度为使用了固定长度为40字节的头部,可附接不字节的头部,可附接不同的扩展头部。每个头部的长度是同的扩展头部。每个头部的长度是8字节的倍数字节的倍数。IPv6没有定义尾部。在没有定义尾部。在IPv6中,包头以中,包头以64位为位为单位,且包头的总长度是单位,且包头的总长度是40字节。字节。IPv6协议为对协议为对其包头定义了以下字段:位为单位,且包头的总其包头定义了以下字段:位为单位,且包头的总长度是长度是40字节,字节,第50页SQL Server实用

47、简明教程(第三版)第3章 Transact-SQL语言IPv6第51页SQL Server实用简明教程(第三版)第3章 Transact-SQL语言IPv6协议包头协议包头l版本:长度为版本:长度为4位,对于位,对于IPv6,该字段必须为,该字段必须为6。l类别:长度为类别:长度为8位,指明为该包提供了某种位,指明为该包提供了某种“区区分服务分服务”。RFC1883中最初定义该字段只有中最初定义该字段只有4位位,并命名为,并命名为“优先级字段优先级字段”,后来该字段的名字,后来该字段的名字改为改为“类别类别”,在最新的,在最新的IPv6Internet草案中,草案中,称之为称之为“业务流类别业

48、务流类别”。该字段的定义独立于。该字段的定义独立于IPv6,目前尚未在任何,目前尚未在任何RFC中定义。该字段的默中定义。该字段的默认值是全认值是全0。第52页SQL Server实用简明教程(第三版)第3章 Transact-SQL语言l流标签:长度为流标签:长度为20位,用于标识属于同一业务流位,用于标识属于同一业务流的包。一个节点可以同时作为多个业务流的发送的包。一个节点可以同时作为多个业务流的发送源。流标签和源节点地址唯一标识了一个业务流源。流标签和源节点地址唯一标识了一个业务流。在。在RFC1883中这个字段最初被设计为中这个字段最初被设计为24位,但位,但当类别字段的长度增加到当类

49、别字段的长度增加到8位后,流标签字段被位后,流标签字段被迫减小长度来作补偿。迫减小长度来作补偿。l净荷长度:长度为净荷长度:长度为16位,其中包括包净荷的字节位,其中包括包净荷的字节长度,即长度,即IPv6头后的包中包含的字节数。这意味头后的包中包含的字节数。这意味着在计算净荷长度时包含了着在计算净荷长度时包含了IPv6扩展头的长度。扩展头的长度。第53页SQL Server实用简明教程(第三版)第3章 Transact-SQL语言l下一个头:这个字段指出了下一个头:这个字段指出了IPv6头后所跟的头字头后所跟的头字段中的协议类型。与段中的协议类型。与IPv6协议字段类似,下一个协议字段类似,

50、下一个头字段可以用来指出高层是头字段可以用来指出高层是TCP还是还是UDP,但它,但它也可以用来指明也可以用来指明IPv6扩展头的存在。扩展头的存在。l跳极限:长度为跳极限:长度为8位。每当一个节点对包进行一位。每当一个节点对包进行一次转发之后,这个字段就会被减次转发之后,这个字段就会被减1。如果该段达。如果该段达到到0,这个包就将被丢弃。,这个包就将被丢弃。IPv4中有一个具有类中有一个具有类似功能的生存期字段,但与似功能的生存期字段,但与IPv4不同,人们不愿不同,人们不愿意在意在IPv6中由协议定义一个关于包生存时间的上中由协议定义一个关于包生存时间的上限。这意味着对过期包进行超时判断的

51、功能可以限。这意味着对过期包进行超时判断的功能可以由高层协议完成。由高层协议完成。第54页SQL Server实用简明教程(第三版)第3章 Transact-SQL语言l源地址:长度为源地址:长度为128位,指出了位,指出了IPv6包的发送方包的发送方地址。地址。l目的地址:长度为目的地址:长度为128位,指出了位,指出了IPv6包的接收包的接收方地址。这个地址可以是一个单播、组播或任意方地址。这个地址可以是一个单播、组播或任意点播地址。如果使用了选路扩展头点播地址。如果使用了选路扩展头(其中定义了一其中定义了一个包必须经过的特殊路由个包必须经过的特殊路由),其目的地址可以是其,其目的地址可以

52、是其中某一个中间节点的地址而不必是最终地址。中某一个中间节点的地址而不必是最终地址。第55页SQL Server实用简明教程(第三版)第3章 Transact-SQL语言第56页主要内容主要内容2.1 协议模型协议模型2.2 TCP/IP网络协议网络协议2.3 IP协议协议2.4 其他网络协议其他网络协议2.5 本章小结本章小结SQL Server实用简明教程(第三版)第3章 Transact-SQL语言2.4其他网络协议其他网络协议2.4.1IPX/SPX协议体系协议体系1. IPX/SPX与与OSI模型的比较模型的比较lIPX/SPX协议群包含了许多属于协议群包含了许多属于OSI模型不同层模型不同层的子协议,但子协议个数不如的子协议,但子协议个数不如TCP/IP协议群的子协议群的子协议多。由于这个原因,

温馨提示

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

评论

0/150

提交评论