730 likes | 1.12k Views
Internet 原理及应用简介. 主要内容. TCP/IP 简介( Internet 物理结构、 TCP/IP 原理 ) IP 路由协议介绍 其它. Intranet. Intranet. Intranet. Intranet. LAN. Internet 原理简介 ——TCP/IP 简介. 一、 Internet 的物理结构. Internet 是一个利用 TCP/IP 技术 ,通过 路由器 连接 各种局域网 的覆盖全球的计算机网络,在它上面提供了许多我们所需要的服务。如, WWW ,FTP ,TFTP ,Telnet,BBS,Mail,Gopher 等。.
E N D
Internet 原理及应用简介 主要内容 • TCP/IP简介(Internet物理结构、TCP/IP原理) • IP路由协议介绍 • 其它 上海贝尔培训中心
Intranet Intranet Intranet Intranet LAN Internet 原理简介——TCP/IP简介 一、Internet的物理结构 • Internet是一个利用TCP/IP技术,通过路由器连接各种局域网的覆盖全球的计算机网络,在它上面提供了许多我们所需要的服务。如,WWW ,FTP ,TFTP ,Telnet,BBS,Mail,Gopher等。 Router Router Router FTP Server HTTP Server SMTP Server Intranet 图1 Internet结构示意图 上海贝尔培训中心
Internet 原理简介——TCP/IP简介 二、了解TCP/IP——信息如何从源端穿越网络到达目的端? • 在TCP/IP中,所有的协议被封装在IP分组中,通过IP网间网传输。 IP是一个路由协议,这意味着使用IP通信的两个节点不必连接到同一物理线路上(不进行路由)。要对信息是如何穿越有一个基本的了解,要理解以下六个问题: • 1。该协议中的地址格式是什么? • 2.。设备如何获得一个地址? • 3。协议中的地址如何映射到一个物理地址? • 4。终端节点如何查找路由器? • 5。路由器如何由网络的拓扑结构进行路由? • 6。用户如何查找网络上的服务(服务名字解析:DNS等)? 上海贝尔培训中心
Internet 原理简介——TCP/IP简介 第一个问题、 MAC(物理地址)地址与IP地址 • MAC地址: 在网上的两个计算机要通信,最终要利用它们的物理地址来联系。在局域网的技术中,使用最普遍的物理地址是MAC地址(以太网卡标识),它在以太网中唯一地标识了每个对象。MAC地址是一个48bit的整数。一般写成:U:V:W:X:Y:Z或U-V-W-X-Y-Z,U到Z是0~255的整数(常用16近制表示),其中X:Y:Z代表以太网卡厂家,如 00:20:AF属于3Com。MAC地址是全球唯一的。 • IP地址:IP地址由一个32位值组成,它是由网络管理员为每一台工作站(或服务器)设置的一组数字。一般写成:W.X.Y.Z,W到Z是0~255的整数。Internet上的每个机器具有唯一的IP地址。它用于节点在IP互联网上的通信。为了便于路由,IP地址是一种层次化地址,它可分为两部分:网络地址和节点地址。当一个IP包要前往一个IP终端的时候,先利用该网络地址寻找最佳的到达终端网络的路径,然后利用节点地址定位到目的地。共由五类IP地址:A类地址、B类地址、C类地址、D类地址、E类地址。 上海贝尔培训中心
Internet 原理简介——TCP/IP简介 地址 用途 • IP地址中有一些是保留的,它们具有特殊的用途。 全0网络地址 只在系统启动时有效,用于启动时临时通信 网络127 指本地节点(一般为127.0.0.1),用于测试网卡及TCP/IP软件,这样浪费了1700万个地址 全0节点地址 用于指定网络本身,指网络号,如用于子网掩码 全1节点地址 用于广播,也称定向广播,需要指定目标网络 RIP协议中用它指定默认路由,路由表中信宿的网络号为0.0.0.0 全0 IP 地址 全1 IP 地址 用于本地广播,也称有限广播,无须知道本地网络地址 五类地址 表1 特殊的IP地址 上海贝尔培训中心
Internet 原理简介——TCP/IP简介 31 0 0 7bit 24bit • (1) A类地址 网络号 节点号 共有27-2(全0、全1)=126个A类网络,每个网络可容纳224-2(全1、全0)个节点。 • (2) B类地址 172.16.199.121---scsnt.sbell.com.cn 31 0 10 14bit 16bit 节点号 网络号 共有214-1=16,383个B类网络,每个网络可容纳216-2=65,534个节点。 上海贝尔培训中心
Internet 原理简介——TCP/IP简介 • (3) C类地址 202.96.245.133----www.sbell.com.cn 192.168.2.37---lacalhost 31 0 110 21bit 8bit 节点号 网络号 共有221-1=2,097,171个C类网络,每个网络可容纳28-2=254个节点。一般net.1用于默认路由器,最多只有253个主机。 • (4) D类地址 31 0 1110 28bit 该地址 用于组播,从224.0.0.0~239.255.255.255,其中224.0.0.1用于永久组播。 • (5) E类地址:11110XXX.H.H.H,作为实验的保留地址,从240.0.0.0~247.255.255.255。 另外,11111XXX.H.H.H留着备用。 上海贝尔培训中心
Internet 原理简介——TCP/IP简介 • IP地址与MAC地址的关系: • 既然每一台设备已经有一个物理地址,那么为什么还需要IP地址呢?首先,并不是每一台设备都支持以太地址,而IP地址能使那些没有以太地址的设备(光纤、令牌环等)能利用IP地址连接到Internet。其次,以太地址由设备商管理,而不是由买方机构管理,因此最终要得到一个基于设备商,而不是设备位置的有效路由方式是不可能的。而IP地址是根据网络拓扑结构来分配的,这利于网络路由。最后一点,利用IP地址和MAC地址结合的方式增加了组网的灵活性。如果一块以太卡坏了,可以换掉它,而不必获取一个新的IP地址;如果一个IP节点从一个网络被移到另一个网络,可以给它分配一个新的IP地址,而不必更换一块新的以太卡。 • IP地址是网络层地址,用于信息穿越互联网络的目的,可利用它路由。而MAC地址用于同一线路上两个节点间的通信,不能用来路由。 上海贝尔培训中心
Internet 原理简介——TCP/IP简介 第二个问题、 给TCP/IP设备分配IP地址 • 要将网络连接到Internet,可以向InterNIC(Internet Network Information Center)申请IP地址。可通过E-MAIL到hostmaster@internic.net联系。也可以向ISP申请IP地址。过去,当一个组织向NIC申请IP地址时,你可以取得一个A或B或C。在某一类地址中具体的地址分配可以由组织自己控制。由于IP地址的紧张,现在已不以地址类别为地址分配单位了,而采用CIDR(Classless InterDomain Routing,无类型域间路由)分配方式。 • 解决IP地址紧张的手段有两种:利用Proxy代理技术和子网划分技术。假设公司只得到了一个B的地址172.16.0.0。公司可能有几个物理网络,由于只有一个网络号,所以不可能给每个物理网络一个网络地址。可以将公司的Intranet划分成几个子网,它们之间通过路由器连接起来。在IP地址中,可以将172.16.0.0中的后两个字节的一部分作为子网地址。这样还可以减少网络交通,便于管理。划分子网时,要为每台设备指定子网掩码。这样,具有相同的子网掩码的设备就处于同一个子网内。子网之间的路由与Internet中的路由相似。注意,RIP I 不支持子网路由,RIP II支持。 • 例:将网络172.16.0.0分成4个子网。网络结构-掩码配置-子网识别。 上海贝尔培训中心
Internet 原理简介——TCP/IP简介 • 有了子网的概念,下面进一步讲CIDR地址分配。现在NIC可以给你一个子网掩码地址(即给你一个子网),如可以提供子网号192.168.2.192,这样你的网络中可以有26-2=62台设备。这样的子网称slash网(它具有的是子网号,而不是网络号)。192.168.2.192子网是一个slash 26网,NIC控制前26位,组织控制后6位。 • 得到了IP地址,就可以将它分配给设备。大部分IP设备需要人工配置IP地址,将IP地址输入到某些配置程序或控制台中。一起输入的通常还有其它信息,如广播地址,子网掩码和默认网关地址等。某些站点支持IP地址的动态配置。像引导协议(Boot Protocol, BOOTP)和动态主机配置协议(Dynamic Host Configuration Protocol,DHCP)这样的协议能利用集中服务器分配唯一的IP地址,并根据需求配置其它信息。 上海贝尔培训中心
Internet 原理简介——TCP/IP简介 第三个问题、 将IP地址映射到MAC地址(ARP) • Internet中的两个节点要通信,它们首先是靠IP地址来标识联系的,但它们最终要靠MAC地址来通信,一旦知道了对方的MAC地址,两个节点就可以在以太网内进行通信。所以要将IP地址映射到MAC地址。完成这个工作的协议是地址解析协议(Address Resolution Protocol,ARP)。在具体讲述ARP之前,先来了解一下以太网中流动的信息(IEEE802.3)。 • 我们先看一下以太网的一般配置: 同轴电缆 可放置一中继器 <=50m 网卡 收发器: 负责处理载波监听和冲突检测(A/D、D/A) 打、拆帧和计算校验和 主机 上海贝尔培训中心
Internet 原理简介——TCP/IP简介 总体结构(10M): • 以太帧格式: 目的地址 数据 CRC 帧前导 源地址 帧类型 8B 6B 6B 2B 46~1500B 填充 4B 基于CSMA/CD原因 10...10,10101011 帧起始 自识别,增加上层协议的灵活性 帧同步 ARP 可能是单目、多目和广播(FFFFFF) 上海贝尔培训中心
Internet 原理简介——TCP/IP简介 • 当信源网卡想通过信宿IP地址知道其MAC地址的时候,它向同一线路上的所有机器广播一个ARP报文(如下图),该报文封装在以太帧中。它填充以太帧的“数据”字段。 帧头 ARP数据报文 CRC 31 0 8 16 硬件类型 协议类型 操作 硬件地址长度 协议地址长度 发送者硬件地址(0~3B) 发送者硬件地址(4~5B) 发送者IP(0~1B) 发送者IP(2~3B) 目的硬件地址(0~1B) 目的硬件地址(2~5B) 目的IP(0~3B) 上海贝尔培训中心
Internet 原理简介——TCP/IP简介 • ARP报文解释: • 硬件类型:发送者本机硬件接口类型(以太网卡:1) • 协议类型:发送者提供的高级协议类型(IP协议:0X0800) • 操作:说明报文类型 • 1:ARP请求 • 2:ARP响应 • 目的硬件地址:ARP请求时,空出该域。 • 有些硬件技术不支持上层软件访问帧头,所以在帧头中和ARP数据报文中都有发送者硬件地址域。 • ARP报文处理 • 进行ARP请求时,发送者在“发送者硬件地址”域和“发送者协议地址”域分别填入本机的硬件地址和IP地址;并在“目标协议地址”域填入要解析的目标机的IP地址,在“操作”域填入“1”。 • 目标机处理请求时,在所缺域中填入相应数据,交换发送者域和目标域的位置,将“操作”域更改为“2”。 上海贝尔培训中心
Internet 原理简介——TCP/IP简介 • 当A(IPa)为得到B(IPb)的MAC地址而广播ARP请求时,它在以太帧头的目的物理地址中填入“FFFFFF”。问在同一线路上的所有机器,“请IP地址是IPb的机器告诉它的MAC地址”。这时候只有B会响应,并回答出自己的MAC地址。 • 为了提高效率,ARP使用了高速缓存技术。机器尽可能地将它所能知道的IP和MAC地址对存入高速缓存(默认生存期是30s,可人为修改),对在高速缓存中有的IP地址,它将不进行ARP请求。另外,在新机入网时,它主动广播其MAC地址。 上海贝尔培训中心
Internet 原理简介——TCP/IP简介 第四个问题、 终端节点找路由器 • 路由器是将局域网连接成广域网的常用的方法。路由器在网络中的一般位置如图:它有两个MAC地址和两个IP地址。 路由器 LAN LAN • 当TCP/IP网络上的节点有一个IP分组要发送给另一个节点时,它遵循一个简单的算法来决定如何进行。它利用目标地址与子网掩码“与”的方法来决定发送者和目标是否在同一个网段。若它们在同一个网段,发送节点就使用ARP得到信宿节点的MAC地址,并将分组封装在一个数据链路层的帧中,直接传送到信宿节点。如果它们不在同一个网段,这时候要将分组交给路由器去处理(同前)。节点如何知道到哪一个路由器呢?在TCP/IP的终端上至少要人工配置一个路由器的地址,通常称默认网关(我机器的默认网关是192.168.2.1)。当分组到达路由器以后,路由器对它的处理就是路由的问题。 上海贝尔培训中心
Internet 原理简介——TCP/IP简介 第五个问题、 路由器路由 • 一个以太网中包含IP数据的帧传向路由器是为了到达其它网络,那么在终端节点和路由器之间流动的到底是什么呢?一旦终端节点通过ARP知道了路由器的MAC地址,它就可以将IP数据封装在以太帧中(如下图)传向路由器。这种方式使得IP具有很好的灵活性,能适应各种下层网络。下面按照Internet协议(IP协议)和TCP及UDP协议以下层以太网为例来介绍一下帧内容。 上海贝尔培训中心
Internet 原理简介——TCP/IP简介 • IP协议: • 传输机制 IP数据报传输是一种简洁而有效的分组交换方式,为了达到最高的传输速率,它放弃了可靠性保证(如检错、重传等,数据的可靠性要靠更高层协议,如TCP等来保证),以便尽快将数据报传往目的地。它不保证传输质量,只是尽最大努力来传输要传的数据。IP数据报传输的关键问题是分片和重组。分片是为了适应物理网的最大传输单元(MTU),重组是为了将已分片的数据根据分片规则重新组合起来。数据报传输的一大特点是随机路由,因而从信源到信宿的时延也是随机的。另外,在路由时数据报还可能进入一条循环路由,IP中采用“生存期”来解决。 上海贝尔培训中心
Internet 原理简介——TCP/IP简介 • IP数据报 4 8 16 19 24 31 0 版本号 报头长度TOS 总长度 版本号(4B) 报头长度(4B) TOS(8B) 总长度 标识符 标志 分片偏移量 TTL 协议 首部校验和 信源IP地址 目的IP地址 IP选项(若有) 填充 数据 ………………... • 版本:V4 • 报头长度:它是以32比特为单位的。最常见的是5(不含IP选项,20B),也有为6的(含IP选项,24B)。 • TOS(业务类型):IP协议是一个不保证质量的协议。它通过 TOS来弥补一下其QOS的不足。其8个比特的含义如下: 上海贝尔培训中心
Internet 原理简介——TCP/IP简介 0 3 5 7 优先级 D T R 保留 三个比特的优先级指明本数据报的优先级,允许发送方表示数据报的重要程度。优先级从0到7,其中“0”表示普通用户优先级,“7”表示网络控制优先级。 D、T、R表示本数据报希望的传输类型。D=1表示低时延,T=1表示高吞吐量,R=1表示高可靠性。注意,优先级对网络没有强制性,目前大多数网络对此一般不作处理,但为技术的进一步的提供了手段。 • 总长度:指明IP数据报的长度,以字节为单位。数据报最长为216=64k字节 • 标识符、标志和分片偏移量:它们用于分片和重组,下面一同介绍。 上海贝尔培训中心
Internet 原理简介——TCP/IP简介 • 我们知道,任何IP帧最终都要封装在链路层帧中才能发送和被目标所接收。而链路层帧在每一种物理网络中都有一个最大长度限制,这个最大长度称为最大传输单元(Maximum Transfer Unit,MTU)。所以虽然IP数据报的最大长度可以达到64k,但在链路上传输的数据帧最大只能达到MTU。所以当IP数据报从IP层传到数据链路层和从一个MTU较大的的物理网络通过路由器达到另外一个MTU较小的网络的时候,主机和路由器先要将IP数据报划分成较小的数据单元,这个过程叫做数据报分片。较小的数据报在达到目的地之前不会进行重组,他们可以自由路由,到达目的地后他们会重新组合成原来的数据报,若在这个过程中,某一个数据报片丢失,整个数据报将无法重组。在实际情况下,接收机在收到初始片后将启动一个重组定时器,如果在收到所有分片之前定时器超时,则接收机丢弃已收到的分片,不对数据报进行进行处理。IP规范要求:路由器必须接收所连网络中MTU大小的数据报;同时必须随时能够处理至少576B的数据报,对主机的要求也是如此。 • 分片和重组的具体过程: 上海贝尔培训中心
Internet 原理简介——TCP/IP简介 • 在将数据报分片时,先将原数据报的报头复制到每个数据报片中,然后填入“标志”域,它一共有3个比特,第一个比特指明是否要对数据报分片,为‘1’表明这是一个分片数据报;第二个比特指明该分片是否是这个数据报的最后一个分片,‘1’表示不是最后一个分片,也就是说分片未完;第三个比特未用。其中的标识符指明了它原来属于哪一个数据报。然后填入“偏移量”域,它指明该分片的数据在原来数据只能中从数据头开始的字节偏移量,第一个分片的偏移量为0,这样可以确定数据片在原数据中的位置,以便到终端进行重组。它还要填入“总长度”域,它指明分片的长度。 • 当各分片通过各种路径到达接收机的时候,通过“标志”域的第一位可以知道这是一个分片,并且由“标识符”知道它属于哪一个数据报;由第二位知道是否收到了最后一个分片,如果收到了最后一个分片,由该分片中的“偏移量”和所有属于该数据报的数据总长度就可以知道是否收到了所有的分片,从而可以进行重组。重组好数据报后就可以交给IP层去处理。 上海贝尔培训中心
Internet 原理简介——TCP/IP简介 • TTL(Time To Live,生存期):它用来处理时延。它以秒为单位,指明了数据报在网络中的最长有效时间。路由器处理报头时,从TTL中减1;若数据报在路由器中排队而被延迟;则要从TTL中减去等待时间;若TTL=0则将它从网络中删除。 • 协议:它指明数据区中的数据格式,说明在IP的上一层(传输层)所采用的协议,如(TCP、UDP)。当IP数据报到达对端以后,将按照“协议”来将数据报交给传输层进行相应处理。 • 头部校验和:对报头的CRC。 • IP选项:包括时间戳、源站路由、路由器路由,IP数据报中可以没有这些选项。 • UDP、TCP协议:为了对基于TCP/IP的高层服务进行访问,TCP和UDP数据报被封装在IP分组中进行传送。为了把数据交给相应的上层程序去处理,需要另一级寻址。在节点上提供的每一个服务可以通过“端口”的唯一地址访问。它们位于传输层,提供了端口(进程)复用的能力。 上海贝尔培训中心
Internet 原理简介——TCP/IP简介 TCP、UDP 服务/端口(保留):一共有216=65536个端口 关键字 描述 端口号 NAMESERVER 主机名字服务 42 DOMAIN 域名服务 53 UDP BOOTPS 启动协议服务 67 TFTP 简单文件传输 69 SUNRPC 微系统公司RPC(远程过程调用) 111 FTP-DATA 文件传输服务(数据连接) 20 文件传输服务(控制连接) FTP 21 TELNET 远程登录服务 23 TCP SMTP 简单邮件服务 25 NAMESERVER 主机名字服务 42 DOMAIN 域名服务 53 上海贝尔培训中心
UDP源端口 UDP信宿端口 长度 UDP校验和 数据 ……………….. Internet 原理简介——TCP/IP简介 16 31 0 • UDP建立在IP协议之上,它封装在IP数据区中,同IP协议一样提供无连接数据报传输。相对于IP协议,它唯一增加的能力是提供协议端口,以保证进程通信。UDP报文格式如下: • UDP信宿端口:一个UDP端口是一个可读写的软件结构,内部有一个接收报文缓冲区。接收数据时,UDP软件要判断此信宿端口是否与当前使用的端口匹配,如是,则将数据报放入相应的接收队列,否则,抛弃该数据并向信源端口发送“端口不可达”的差错消息报文。 • 长度:以字节计的整个报文长度,最小为8,只有报头。 • 校验和:它是一个可选项,以提高效率。 • 在利用IP传送语音和视频的时候,要利用UDP协议。 上海贝尔培训中心
Internet 原理简介——TCP/IP简介 • TCP也是建立在IP协议之上,封装在IP数据区中,但它是在基于无连接的IP协议之上提供面向连接的高可靠性数据传输和与进程通信的能力。它利用确认与超时重传、滑动窗口机制进行流控和拥塞控制来保证高可靠性的,同时,为了保证可靠性,它以牺牲效率为代价,在高适时要求场合不合适。TCP段格式如下: 10 16 24 4 31 0 源端口 信宿端口 序号 确认号 头长 保留 码位 窗口 校验和 紧急指针 可选项 填充 数据 ……………….. 上海贝尔培训中心
Internet 原理简介——TCP/IP简介 • 序号:指出段中数据在发送端数据流中的位置。 • 确认号:指出本机希望下一个接收的字节的序号。 • 头长:指出以32比特为单位的段头长度。它是针对便长的“选项”域设计的。 • 码位:有些报文段是用于传输数据的,但有些报文段仅仅携带了确认信息,另一些报文段携带的是建立和关闭连接的请求。它使用“码位”来指出段的目的与内容。这6个比特各位的意义如图: 0 URG,紧急指针字段可用 1 ACK,确认字段可用 2 PSH,本报文段请求急迫(PUSH)操作 3 RST,连接复位 4 SYN,序号同步,用于建立连接中的同步 5 FIN,发送方字节流结束 由于有时发送方希望终止操作,不想接收方接收完所有的比特。如远程主机上的程序错误时就需要这种信号。TCP将数据指定为“紧急”型,接收方收到这种数据后,会不必排队而尽快通知应用程序。URG比特为1时,表明它是紧急的,其中的“紧急指针”指出了紧急数据在报文段中的结束位置。 上海贝尔培训中心
Internet 原理简介——TCP/IP简介 当所有的紧急数据消失之后,TCP软件会告诉应用程序恢复正常的操作状态。PUSH位提供了数据强迫传输机制,以强迫传输当前流中的数据,而不必等待缓冲区满。远程登录中,终端的击键信号就是用PUSH操作来提供的。 • 窗口(滑动窗口):用于通知接收端接收缓冲区的大小。 • 理解TCP的面向连接特性: • 一条TCP连接是一条虚电路,它通过主机IP地址和端口号来标识一条连接。如(192.168.2.37,21;192.168.2.30,21)就标识了一条TCP连接。所以两个程序可以共享主机上的同一端口,因为连接不同。 • 连接的建立和拆除需要得到对方的认可,而UDP中,一方发送数据是不需要得到对方的认可的。 • 连接能保持状态并实现可靠性,而无连接不能保持状态。一般来说,控制信息是通过TCP来传递的。 • 它是在无连接的协议,IP协议之上来实现面向连接的。 上海贝尔培训中心
Internet 原理简介——TCP/IP简介 高层 Telnet,FTP等 报文或数据流 • TCP/IP Internet环境中的协议层次 TCP/UDP 数据报或段 IP IP数据报 802.3等 特定网络帧 硬件(含ARP) 数据流内容 ….. 信源IP 信宿IP …… 以太帧头 IP头 TCP/UDP头 应用数据 校验 同步 目标MAC 源MAC 协议类型 上海贝尔培训中心
主机 主机 192.168.3.2 192.168.2.2 00:08:00:00:02:01 00:08:00:00:03:01 00:08:00:00:03:02 00:08:00:00:02:02 路由器 192.168.2.1 192.168.3.1 … 00:08:00:00:02:01 00:08:00:00:02:02 0800 … 192.168.2.2 192.168.3.2 ... … 00:08:00:00:03:02 00:08:00:00:03:01 0800 … 192.168.2.2 192.168.3.2 ... Internet 原理简介——TCP/IP简介 • 前面讲述了在网络上流动的信息的内容,当IP分组到达路由器以后,路由器要通过路由将它传向下一个路由器或直接交给目标网络(若目标机在路由器所在的网络)。具体的路由过程留在后面讲述。这里还有一个问题,终端节点在通过ARP用路由器的IP地址找到其MAC地址后,在IP头中的“目标IP地址”中的内容是什么呢,是路由器的IP地址,还是最终节点的IP地址? 当然是最终节点的IP地址,否则路由 器不会知道把该分组送到那里去。 事实上,分组在网络中穿梭的过程中,IP头中的“目标IP地址”和源“源IP地址”始终不变,都是最终节点的IP地址。而两个MAC地址是随着穿越不同的网络而改变的。 上海贝尔培训中心
Internet 原理简介——TCP/IP简介 第六个问题、 域名系统(Domain Name System,DNS) • 域名系统是Internet中最早出现的一种名字解析方法。到现在为止,在实际应用系统中,名字解析有许多方法。这里我们仅仅了解一下DNS的原理。 • 从前面的学习中我们知道,在Internet中的两台机器可以通过它们的IP地址来通信。但用户在真正使用时,他们是要用Internet中的具体的服务。为了指明服务所在的的机器,用户不得不指明一个机器。用户记住一个有意义的机器名比记住一个机器的IP地址要方便得多。所以我们在用IP地址作为机器的标识以上又增加了机器名来作为机器的标识,这样用户可以更加方便地访问Internet中的服务。由于Internet上的机器之间最终要靠IP地址来通信,所以在一台机器在可以正式访问另一台机器之前,不得不先将它对方的机器名转换成其IP地址,DNS就是这样一种将机器名转换成其IP地址的方法。 • DNS是TCP/IP互连网中实现机器名分级的一种机制,它指明了名字语法和名字授权管理规则,指明了一个分布式计算系统的实现,这个系统能高效地将名字映射到地址。下面按照这些要点逐一介绍: 上海贝尔培训中心
Internet 原理简介——TCP/IP简介 • 名字语法和分级 • Internet的域名由一系列标号组成,这些标号从右到左构成了一棵从根上一级到叶的树。如www.sbell.com.cn中有四个标号。标号连同其后缀称为域。如www.sbell.com.cn的第三级域为sbell.com.cn,它表示Internet上我们贝尔公司的计算机群体。在域名的最高级可以有两种不同的命名分级:地理的和组织的(见下表)。在每一级中,又可以划分出很多子级(如图): 含义 域名 COM 商业组织 EDU 教育机构 GOV 政府机构 MIL 军队 NET 主要网络支持中心 ORG 上述以外的组织 INT 国际组织 国家代码 国家或地区(按地理划分) 上海贝尔培训中心
Internet 原理简介——TCP/IP简介 根 COM EDU …... CN SH IBM PKU MATH WWW.MATH.PKU.EDU WWW FTP Internet 中的域名的分级结构 上海贝尔培训中心
Internet 原理简介——TCP/IP简介 • 域名的授权管理规则 • NIC将第一级域的管理特权分派给指定的管理机构,各管理机构再对其管辖下的域名空间继续划分,并将各子部分管理特权授予子管理机构。如此下去,便形成层次型域名。由于各子管理机构是逐级授权的,所以最终的域名都得到NIC的承认。这样,域名管理系统和域名系统本身一样构成了一个树形结构,其中树根作为唯一的中央管理机构(NIC)是未命名的,不构成域名的一部分。实际上,NIC控制了第一、第二级域的分派。 • 例;www.sbell.com.cn的域名申请。 上海贝尔培训中心
Internet 原理简介——TCP/IP简介 • 分布式域名解析 • 域名解析的系统构成 当一个组织申请一个域而被授权以后,它需要为它的域配置一个域名服务器。这个域名服务器上首先有该域下的域名-IP地址数据库或者有关它下面的子域域名服务器的信息(如果它下面还有许多子域的话),另外它必须知道至少一个根服务器的地址。这样域名服务器也构成了一个树形结构: 根服务器 .COM服务器 .EDU服务器 .CN服务器 …... 上海贝尔培训中心
Internet 原理简介——TCP/IP简介 • 域名解析的过程 • 当一个客户端需要进行域名 的时候,它先查看自己的域名高速缓存中是否有该域名的IP地址,如果没有,它将形成一个域名查询报文送往指定的本地域名服务器(该服务器是由系统管理员指定的)。当域名服务器收到查询时,它检查名字是否处于它授权管理的子域内。如果是,它就根据自己的数据库把名字转换成IP地址,并将结构返回客户机;如果不是,它查看自己的高速缓存,看能否找到,找到则响应。否则它检查客户机指明的是哪一种转换,如果是递归转换,服务器就和它上级的能解析该名字的服务器联系,它取得对应后以响应客户机;如果是迭代转换,该服务器直接回答客户机它解析不了,但告诉客户机应该和哪一个名字服务器联系。这样,对一个域名的解析可能有多个服务器参加,从而实现其分布式解析,达到高效的解析过程。 • 例:从stc_hjx.sbell.com.cn上请求www.ibm.com bellnet-dns 202.96.203.168------>根服务器(包括第一级域名服务) 上海贝尔培训中心
Internet 原理简介——TCP/IP简介 16 31 0 • 域服务器报文格式:请求和响应使用同一种报文格式。在响应中,服务器尽可能地将它所知道的信息返回请求者。 标识 参数 标识 参数 定长部分 问题数 回答数 管理机构数 附加信息数 问题部分 变长部分 回答部分 管理机构部分 附加信息部分 • 标识:用于解析器匹配请求与响应 • 参数:含义见下表 上海贝尔培训中心
Internet 原理简介——TCP/IP简介 参数域位 含义 操作:0—查询、1—响应 0 查询类型:0—标准、1—反向 1~4 若回答是授权则置位 5 若报文被截断则置位 6 若需要递归则置位 7 若有递归可用则置位 8 保留 9~11 响应类型:0—无差错、1—查询格式错、2—服务器失效、3—名字不存在 12~15 • 四个“数”:指明后面可变部分相应的项目数 • 问题部分:一个解析报文中可以包含多个域名询问。问题部分由一组询问组成,它包括以下几个部分: 上海贝尔培训中心
Internet 原理简介——TCP/IP简介 0 16 31 询问域名 ……. 询问类型 询问类别 询问域名:域名由一组标号组成,每个标号开始是一个指明其长度的字节,紧接着是该标号的实际字符。当长度为0时,表示域名结束。 询问类型:指明解析的是机器名还是邮件地址 询问类别:指协议类型,DNS不只仅仅能解析Internet域名 • 回答部分、管理机构部分和附加信息部分:由一组“资源记录”(见下图)组成,描述域名和映射(域名和有关该域名的信息)。 上海贝尔培训中心
Internet 原理简介——TCP/IP简介 0 16 31 资源域名 ……. 类型 类别 TTL 资源数据长度 资源数据 ……. 资源域名:指明本资源记录(回答、管理机构信息、附加信息)所涉及的域名。在回答域名中,多个回答域名可能采取压缩域名格式。 TTL:指明资源记录可在缓存中保留的秒数。 资源数据:可能是IP地址、管理机构信息、附加信息。 类型:指明资源是有关IP地址的、邮件交换机名、CPU和操作系统、别名的规范名字等类型。 上海贝尔培训中心
Internet 原理简介——TCP/IP简介 • 以上讲了域名系统的原理,它是一个高效的分布式多级的将域名转换成IP地址的系统。当用户通过域名请求一个主机上的服务时候,系统通过多个域名服务器将对端主机的域名转换成对方的IP地址,然后它们就可以通过IP地址进行Internet上的通信。 上海贝尔培训中心
Internet原理——IP路由 • 当IP分组被送到直接与该网络相连的路由器以后,路由器就要对该分组进行处理。从IP协议的学习我们知道,需要路由的携带IP分组的帧送到路由器是靠分组中路由器的MAC地址而不是其IP地址来标识这段行程的。该帧在通过路由器的数据链路层时,路由器将帧头去掉,将IP数据报送到路由器的IP层。路由器拿到该数据报的目的IP地址,如果它发现该地址不是自己的IP地址。它将通过路由将数据报转发到下一路由器或目标主机。路由器在路由时,是靠其中的路由表为依据的。在详细地讨论路由器中的IP路由算法前,我们来看一下路由表。 • 在进行分组投递时,路由器分两个阶段:1、如何到达目标主机的网络。2、分组到了目标网络后,由终端路由器将分组送到目标主机。一般来说,第一个阶段才是路由的实质阶段,它关系到分组穿越网间网的路径。所以,在网络上路由是以目标IP地址中的网络号为依据的。这样可以只关心目标网络的信息,而不用关心目标主机的信息,从而简化路由表,提高路由效率。典型地,路由表包含许多(N,R,D)向量,其中N是目的网络的IP地址,R是为了到达相应目的网络要经过的下一个路由器的IP地址(下一跳,next hop),D是到该网络要经过的跳数(代价)。一面是一个路由表的例子: 上海贝尔培训中心
Internet原理——IP路由 20.0.0.5 30.0.0.6 40.0.0.7 10.0.0.0 Q 20.0.0.0 R 30.0.0.0 S 40.0.0.0 20.0.0.6 10.0.0.5 30.0.0.7 网络 路由器 跳数 20.0.0.0 直接到达 1 30.0.0.0 直接到达 1 10.0.0.0 20.0.0.5 2 40.0.0.0 30.0.0.7 2 R中的路由表 在路由表中,一般还有默认路由。当表中没有到达目标网络的下一跳时,分组将送到默认路由器。在路由表中该项网络号为0.0.0.0。 另外,虽然路由是基于网络,但多数IP路由软件允许把每个主机的路由作为特例来指定。这样可以便于测试和达到特别的安全性要求。 综上,得到路由器的路由算法: 上海贝尔培训中心
Internet原理——IP路由 RouteDatagram(Datagram,RortingTable) 从数据报中抽取出目的IP地址D,计算网络前缀N; if N与任何直接连接的网络地址匹配 then在该网络上把数据报投递到目的地D上(包括把D转换成一个物理地址、封装数据报并发送该帧。) else if 表中包含了一个到D的指定主机路由 then把数据报发送到表中指定的下一站 else if 表中包含到网络N的一个路由 then把数据报发送到表中指定的下一站 else if 表中包含一个默认路由 then把数据报发送到表中指定的默认路由器上 else 宣布路由出错; 上海贝尔培训中心
Internet原理——IP路由 • 随着Internet的发展,Internet的体系结构也在不断变化(核心结构、对等结构、自治域集合结构)。路由协议随着Internet的规模的增大和体系结构的变化也在不断发展。这里只讲述发展到现在的Internet的路由,我们先从Internet的体系结构讲起。我们知道,Internet是由很多路由器连接起来的,但并不是所有的路由器都是完全对等的,不同的路由器在Internet中的位置和作用可能是不一样的。事实上,Internet包括两部分:主干和外围。其中主干由主干网络和连接主干和外围的核心路由器组成,外围部分划分为若干自治系统。这样,它构成一个树形组织结构。 主干网络 核心系统 核心 …... 路由器 路由器 ... 自治系统 自治系统 自治系统 ... ... LAN LAN LAN LAN LAN 上海贝尔培训中心
Internet原理——IP路由 • 从上面的体系结构可以看出,Internet路由包括两部分:自治系统内的路由和自治系统间的路由(由于核心网络实际上也是一个自治系统,只是它连接了其它的自治系统)。所谓自治系统,它是一个处于一个管理机构控制下的网络和路由器的群组,在一个自治系统内的路由器可以自由地寻找路由、广播路由、确认路由以及检测路由的一致性的机制。在位于两个自治系统的边界路由器负责在这两个自治系统之间交换路由信息,这样的边界路由器称特权路由器。在对这两部分路由的具体介绍之前,我们先看一下路由中的两种基本算法:矢量—距离算法和链路—状态算法。 上海贝尔培训中心
Internet原理——IP路由 • 思想:基于将最短全局路由信息逐步扩散的思想。 • 矢量—距离路由算法 • 1、路由器在启动时对路由表进行初始化,对每个与自己直接相连的网络生成一个表项。路由表中的每个项目指出了一个目的网络、给出相应的距离(一般以跳数为单位)和到达该网络的下一跳(初试化时,相连网络的下一跳为“直接”) • 2、更新路由:路由器周期性地向直接相连的其他路由器发送自己的路由表,当一个路由器K收到它相邻的路由器J发来的一个更新报文后,它按以下规则来更新自己的路由表。 • 如果J知道去某个目的网络的路由有更短的距离N,K将自己的路由表中到相应网络的距离改为N+1,下一跳为J。 • 如果J列出了K不知道的目的网络,在K路由表中将增加到该网络的一项,其中下一跳为J,距离为J中的距离+1。 • 如果K原来到目的网络的路由经过J而J到该网络的距离变化为N,K就修改自己路由表中相应的项目,其中距离改为N+1。 • 如果K中原来到目的网络经过J,而J中没有到该网络的路由,则K删除相应的项目。 • 特征:1、基于逐步扩散,收敛慢,实现简单。2、参加路由交流的路由器多(所有) ,报文数量大。3、每一个报文长度大(更新报文包括每一个可达网络项目)。 上海贝尔培训中心
Internet原理——IP路由 • 思想:基于同步(收集链路状态组成全局信息)每个路由器中的网络拓扑图(以为路由器节点,可通的网络为边,线路状态为距离或代价的无向图),独立计算最短路径(包括链路带宽、拥塞情况等因素所组成的链路代价)。 • 链路—状态算法(SPF,Shortest Path First,最短路径优先) 1、测试相邻路由器状态:路由器周期性发送短报文,询问邻站是否可达,如果邻站在 n 次询问中有 k 次应答,并且最后有连续两次应答,说明相邻路由器处于活跃状态,否则,它处于故障状态。 2、广播链接状态:路由器利用上一步中的结果周期性地向参与算法的路由器广播自己与相邻路由器的链接状态报文。这种报文指出一对路由器之间是否能够通信。 3、链接状态报文到达之后,路由器把链接状态标为正常或故障,更新自己的网络拓扑图。 4、链接状态变化之后,路由器利用戴克斯特拉(Dijkstra)最短路径优先算法对相应的拓扑图计算到参加算法的每个网络的最短路径。 • 特征:1、每个路由器中有一张标出所有路由器及其链接状态的网络拓扑图。2、只传输链接状态短报文,传送信息少。3、每个路由器独立计算最短路径,它确保了路由算法的收敛性,但实现复杂。 上海贝尔培训中心
Internet原理——IP路由 • 前面讲了路由问题中的两种基本算法。现在开始介绍Internet中的两部分路由。首先看一下自治系统内的路由协议(内部路由协议),在自治系统内,路由器间通过它来建立路由表。内部路由协议有许多种,包括RIP(Routing Information Protocol)、HELLO、OSPF(Open Shortest Path First)协议,它们统称为IGP(Interior Gateway Protocol)。其中,RIP是过去使用较多的协议,HELLO已废弃不用,OSPF正逐渐被越来越多的厂家支持。 • RIP协议 • RIP协议采用矢量—距离算法。运行RIP的设备可能包括主机和路由器,其中主机只是监听路由报文并更新自己的路由表。运行RIP的路由器每30秒钟广播(内部广播)一次路由报文,该报文包括(N,D)向量。其中N是网络号,D是跳数。由于只考虑跳数而不考虑线路情况来衡量最短路径,从而不一定得到好的路由结果,所以许多RIP软件在通过低速网络路由时人为增加了条数。为了处理路由器故障带来的问题,RIP规定,对某路由如果自收到该路由通告开始,180秒后还没有收到该路由的再一次通告,则认为该路由变为无效路由。另外,在RIP中要处理慢收敛问题(路由循环问题)。 • 例:建立路由表----->连接失效引起IP报文进入路由循环--->路由表更新引起跳数增加。 R1 R2 网络1 上海贝尔培训中心
Internet原理——IP路由 • 为了解决路由循环问题,RIP首先规定:路由信息中的最大跳数不能大于16,若等于16则表示该路由不可达。另外,它还包括如下技术:水平分割法、抑制法、毒性逆转法和触发更新法。 • 有了RIP协议的思想和概念,下面我们具体介绍一下RIP的报文格式(内容包括目的网络和距离): 上海贝尔培训中心