IP网与多层次交换.ppt
,IP技术基础,局域网与交换,6.2,路由器,交换层次的多样性,6.4,三层交换,6.5,6.3,第6章 网络交换基础与IP互连,6.1,多协议标记交换,6.6,四层交换,6.7,应用层交换,6.8,6.1.1.1 计算机通信的产生与发展,1969年美国国防部高级研究计划局(ARPA)提出将多个大学、公司和研究所的多台计算机互连成为一个计算机网络ARPANet。进入20世纪80年代末期后,ARPANet逐渐发展为国际性的计算机互连网络Internet,TCP/IP协议就是从中演变而来的。现在Internet是世界上最大的计算机网络,TCP/IP协议已成为网络互连事实上的标准。,6.1.1.2 计算机通信网分类,计算机网络有很多分类方法。可以从地理范围大小、拓扑结构等角度进行分类。按照地理范围大小,可以把计算机网络分成局域网(LAN,Local Area Network)(几千米以内)、城域网(MAN,Metropolitan Area Network)(几十千米)、广域网(WAN,Wide Area Network)(几百千米以上)。,6.1.1.2 计算机通信网分类,按照拓扑结构可以把计算机网络分成星形(Star)、树形(Tree)、总线形(Bus)、环形(Ring)及网状(Mesh)等类型。,6.1.1.3 TCP/IP参考模型,IP地址与域名服务,IP地址的长度是32b,根据高位比特的特殊编码,可以分成A、B、C、D、E类。,IP地址格式:,IP地址与域名服务,通常将32b地址用分成4节的十进制数字表示,如11111011 10000000 00000100 00000001是一个C类地址,可记为。A类地址的范围是:B类地址的范围是:C类地址的范围是:,IP地址格式:,IP地址与域名服务,特殊的IP地址,IP地址格式:,IP地址与域名服务,为了保护IP地址空间,减少无谓的IP地址消耗,在A类、B类和C类地址中,分别预留了部分地址空间,以便各单位内部计算机互连。这些预留的地址成为私有IP地址。私有IP地址空间如下:,IP地址格式:,IP地址与域名服务,为了提高IP地址的使用效率,可将一个网络划分为多个子网:采用借位的方式,从主机位最高位开始借位变为新的子网位,所剩余的部分则仍为主机位。这使得IP地址的结构由网络号加主机号变为三部分:网络号、子网号和主机号。(1)掩码(Mask):掩码用于识别IP地址网络部分/主机部分。每一个网络都选用32位的掩码,掩码中的1对应着IP地址的网络号,掩码中的0对应着IP地址的主机号。子网掩码(Subnet Mask)则是掩码中的一部分,可以进一步划分出子网。,划分子网:,IP地址与域名服务,(2)三类地址的子网划分A类:即B类:即C类:即,划分子网:,IP地址与域名服务,子网掩码 子网掩码的主要功能是告知网络设备,一个特定的IP地址的哪一部分是包含网络地址与子网地址,哪一部分是主机地址,划分子网:,IP地址与域名服务,1.无须划分成子网的IP地址:按照其定义就可写出。例如:某个IP地址为12.26.43.0,无须再分割子网,按照定义我们可以知道它是一个A类地址,其子网掩码应该是255.0.0.0;若此IP地址是一个B类地址,则其子网掩码应该为255.255.0.0;如果它是C类地址,则其子网掩码为255.255.255.0。其它类推,计算某一个IP地址的子网掩码,可以分以下两种情况来分别考虑:,IP地址与域名服务,2.要划分成子网的IP地址:方法一:利用子网数来计算:1.首先,将子网数目从十进制数转化为二进制数;2.接着,统计由“1”得到的二进制数的位数,设为N;3.最后,先求出此IP地址对应的地址类别的子网掩码。再将求出的子网掩码的主机地址部分(也就是“主机号”)的前N位全部置1,这样即可得出该IP地址划分子网的子网掩码例如:需将B类IP地址167.194.0.0划分成28个子网:1)(28)10=(11100)2;2)此二进制的位数是5,则N=5;3)此IP地址为B类地址,而B类地址的子网掩码是255.255.0.0,且B类地址的主机地址是后2位(即0-255.1-254)。于是将子网掩码255.255.0.0中的主机地址前5位全部置1,就可得到255.255.248.0,而这组数值就是划分成 28个子网的B类IP地址 167.194.0.0的子网掩码,IP地址与域名服务,方法二:利用主机数来计算:1首先,将主机数目从十进制数转化为二进制数;2接着,如果主机数小于或等于254(注意:应去掉保留的两个IP地址),则统计由“1”中得到的二进制数的位数,设为N;如果主机数大于254,则 N8,也就是说主机地址将超过8位;3最后,使用255.255.255.255将此类IP地址的主机地址位数全部置为1,然后按照“从后向前”的顺序将N位全部置为0,所得到的数值即为所求的子网掩码值例如:需将B类IP地址167.194.0.0划分成若干个子网,每个子网内有主机500台:1)(500)10=(111110100)2;2)此二进制的位数是9,则N=9;3)将该B类地址的子网掩码255.255.0.0的主机地址全部置 1,得到255.255.255.255。然后再从后向前将后9位置0,可得:11111111.11111111.11111110.00000000即255.255.254.0。这组数值就是划分成主机为500台的B类IP地址167.194.0.0的子网掩码,IP地址与域名服务,例题:已知某计算机所使用的IP地址是:195.169.20.25,子网掩码是:255.255.255.240,经计算写出该机器的网络号、子网号、主机号。,解:195=11000011B,240=11110000B,25=00011001B所以:1.计算机网络属于C类网 3.子网号为:1 4.主机号为:9,IP地址与域名服务,(3)超网(Supernetting)超网是与子网类似的概念,都是根据掩码重新划分IP地址的网络地址和主机地址。与子网把大网络分成若干小网络相反,它是把一些小网络组合成一个大网络超网。,划分子网:,IP地址与域名服务,(4)无类别域间路由(CIDR)CIDR 消除了传统的 A 类、B 类和 C 类地址以及划分子网的概念,因而可以更加有效地分配 IPv4 的地址空间。CIDR使用各种长度的“网络前缀”(network-prefix)来代替分类地址中的网络号和子网号。IP地址从三级编址(使用子网掩码)又回到了两级编址。,划分子网:,IP地址:=,CIDR 还使用“斜线记法”(slash notation),它又称为CIDR记法,即在IP地址后面加上一个斜线“/”,然后写上网络前缀所占的比特数(这个数值对应于三级编址中子网掩码中比特 1 的个数)。CIDR 将网络前缀都相同的连续的 IP 地址组成“CIDR地址块”。,无分类的两级编址的记法是:,IP地址与域名服务,表示的地址块共有 212 个地址(因为斜线后面的 20 是网络前缀的比特数,所以主机号的比特数是 12)。这个地址块的起始地址是。在不需要指出地址块的起始地址时,也可将这样的地址块简称为“/20 地址块”。地址块的最小地址:地址块的最大地址:全 0 和全 1 的主机号地址一般不使用。,CIDR 地址块,IP地址与域名服务,10000000 00001110 00100000 0000000010000000 00001110 00100000 0000000110000000 00001110 00100000 0000001010000000 00001110 00100000 0000001110000000 00001110 00100000 0000010010000000 00001110 00100000 0000010110000000 00001110 00101111 1111101110000000 00001110 00101111 1111110010000000 00001110 00101111 1111110110000000 00001110 00101111 1111111010000000 00001110 00101111 11111111,所有地址的 20 bit前缀都是一样的,IP地址与域名服务,IP地址与域名服务,使用名字比二进制代码更加易于记忆。任何一个连接在Internet上的主机和路由器都有一个唯一的名字,称为域名(Domain Name)。它是一个逻辑的概念,与计算机的物理位置无关。名字到域名的解析是由若干个域名服务器程序完成的。域名服务器程序在专设的结点上运行,运行该程序的机器称为域名服务器。,1.域名系统概述,因特网采用了层次树状结构的命名方法。域名的结构由若干个分量组成,各分量之间用点隔开:.三级域名.二级域名.顶级域名各分量分别代表不同级别的域名。,2.因特网的域名结构,IP地址与域名服务,(1)国家顶级域名 nTLD:如:.cn 表示中国,.us 表示美国,.uk 表示英国,等等。(2)国际顶级域名 iTLD:采用.int。国际性的组织可在.int 下注册。(3)通用顶级域名 gTLD:最早的顶级域名是:.com 表示公司企业.net 表示网络服务机构.org 表示非赢利性组织.edu 表示教育机构(美国专用).gov 表示政府部门(美国专用).mil 表示军事部门(美国专用),顶级域名 TLD(Top Level Domain),IP地址与域名服务,因特网的名字空间,com,net,org,edu,gov,mil,coop,biz,info,aero,int,cn,uk,hk,js,sh,bj,org,net,gov,edu,com,ac,pku,fudan,sjtu,tsinghua,树根,cctv,ibm,hp,mot,顶级域名,二级域名,三级域名,mail,ep,四级域名,mail,csnetl,seu,每一个域名服务器不但能够进行一些域名到 IP 地址的解析,而且还必须具有连向其他域名服务器的信息。当自己不能进行域名到 IP 地址的转换时,就能够知道到什么地方去找别的域名服务器。这种地址转换即地址解析(address resolution)。解析就是转换的意思。因特网上的域名服务器系统也是按照域名的层次来安排的。每一个域名服务器都只对域名体系中的一部分进行管辖。,3.用域名服务器进行域名解析,IP地址与域名服务,本地域名服务器(local name server)根域名服务器(root name server)顶级域名服务器(即TLD 服务器)权限域名服务器(authoritative name server),四种不同类型的域名服务器,IP地址与域名服务,每一个因特网服务提供者 ISP,或一个大学,甚至一个大学里的系,都可以拥有一个本地域名服务器,它也称为默认域名服务器。当主机发出 DNS 查询报文时,这个查询报文就首先被送往该主机的本地域名服务器。,本地域名服务器,IP地址与域名服务,每个根域名服务器都知道所有的顶级域名服务器的域名及其 IP 地址。现有 13 个不同 IP 地址的根域名服务器,共有一百多个根域名服务器机器分布在世界各地。根域名服务器并不直接把域名直接转换成 IP 地址。在使用迭代查询时,根域名服务器把下一步应当找的顶级域名服务器的 IP 地址回答本地域名服务器。,根域名服务器,IP地址与域名服务,顶级域名服务器负责管理在该顶级域名服务器注册的所有二级域名。当收到 DNS 查询请求时就给出相应的回答(可能是最后的结果,也可能是下一步应当找的权限域名服务器的 IP 地址)。,顶级域名服务器,IP地址与域名服务,每一个主机都必须在某个权限域名服务器处注册登记。因此权限域名服务器知道其管辖的主机名应当转换成什么 IP 地址。,权限域名服务器,IP地址与域名服务,主机向本地域名服务器的查询一般都是采用递归查询(recursive query)。递归查询就是如果本地域名服务器不知道被查询域名的 IP 地址时,那么本地域名服务器就以 DNS 客户的身份向某个根域名服务器继续发出查询请求报文(即替该主机继续查询),而不是让该主机自己进行下一步的查询。,4.域名的解析过程,IP地址与域名服务,优先采用迭代查询,即循环查询。当根域名服务器收到查询请求报文但并不知道被查询域名的 IP 地址时,这个根域名服务器就把自己知道的顶级域名服务器的 IP 地址告诉本地域名服务器,让本地域名服务器再向顶级域名服务器查询。顶级域名服务器在收到本地域名服务器的查询请求后,就告诉本地域名服务器下一步应当向哪一个权限域名服务器进行查询。最后主机就知道了所要解析的域名的IP地址。本地域名服务器也可以采用递归查询。,本地域名服务器向根域名服务器查询,IP地址与域名服务,顶级域名服务器,权限域名服务,本地域名服务器,根域名服务器,本地域名服务器进行迭代查询,本地域名服务器进行递归查询,顶级域名服务器,权限域名服务,本地域名服务器,根域名服务器,为了提高 DNS 查询效率,并减轻根域名服务器的负荷和减少因特网上的 DNS 查询报文数量,广泛地使用了高速缓存高速缓存用来存放最近查询过的域名以及从何处获得域名映射信息的记录。例如不久前已有用户查询过域名为 的 IP 地址,则本地域名服务器就不必再向根域名服务器重新查询 的 IP 地址了,而是直接把高速缓存中存放的上次查询结果(即 的 IP 地址)告诉用户。,5.高速缓存(高速缓存域名服务器),IP地址与域名服务,许多主机在启动时从本地域名服务器下载名字和地址的全部数据库,维护存放自己最近使用的域名的高速缓存,并且只在从缓存中找不到欲解析的域名时才向本地域名服务器发送查询请求报文。,在主机中也很需要高速缓存,IP地址与域名服务,6.1.3 报文格式,1.IP分组格式 IP协议是计算机网络的核心协议,网络中数据传送的基本单位是IP分组。IP分组由分组首部和净荷两部分构成。首部的最小长度为20个字节,包含用于路由选择的地址信息。净荷部分的最大长度接近64KB。,6.1.3 报文格式,IP分组的格式:,6.1.3 报文格式,各字段的含义:(1)版本:长度为4 bit,表示与IP分组对应的IP协议版本号。在处理IP分组前,IP软件都要检查IP分组的版本字段,以保证分组格式与软件期待的一致。目前的协议版本号是4,因此IP有时也称作IPv4。(2)分组头长度:长度为4 bit,用于指明IP分组头的长度,其单位是4个字节(32 bit),即分组头部是4个字节整数倍的数目。由于IP分组头的长度是可变的,因此,该字段是必不可少的,6.1.3 报文格式,(3)服务类型(TOS):长度为8 bit,用于指明IP分组所希望得到的有关优先级、可靠性、吞吐量、时延等方面的服务质量要求,如图10.15所示。它包括一个3 bit的优先级子字段,优先级取值范围07;D、T、R各占1 bit,表示该分组所期望的服务类型。D为最小时延,T为最大吞吐量,R为最高可靠性。如果所有比特位均为0,那么就意味着该服务为普遍服务,6.1.3 报文格式,(4)总长度:长度为16个比特,用于指名整个IP数据报的长度,以字节为单位。它包括分组头和数据区的长度,利用分组头部长度字段和总长度字段,我们就可以知道IP分组中数据内容的起始位置和长度。由于该字段长16 bit,所以IP分组最长可达65 535字节。当数据报被分片时,该字段的值也随着变化。总长度字段是IP分组头中必要的内容,因为一些数据链路(如以太网)需要填充一些数据以达到最小长度。例如,以太网的最小帧长为46字节,但是IP分组可能会更短。如果没有总长度字段,那么IP层就不知道46字节中有多少是IP数据报的内容,6.1.3 报文格式,(5)标识符:长度为16个bit,和源地址、目的地址、用户协议一起惟一地标识主机发送的每一个分组。通常每发送一个分组它的值就会加1。我们在10.5节介绍分片和重组时再详细讨论它。同样,在讨论分片时我们再来分析标志字段和片偏移字段。,6.1.3 报文格式,(6)标志:长度为3 bit,在3 bit中1位保留,另两位DF和MF分别用于指明IP分组不分片和分片。(7)分片偏移量:长度为13 bit,以8字节为1单位,用于指明当前分组片在原始分组中的位置,这是分段和重组所必需的。(8)生存时间TTL(Time-To-Live):长度为8 bit,用于指明IP分组可在网络中传输的最长时间,TTL的初始值由源主机设置(通常为32位或64位),一旦经过一个处理它的路由器,它的值就减去1。当该字段的值减为0时,该分组被丢弃,并发送ICMP消息通知源主机。这个字段用于保证IP分组不会在网络出错时无休止地传输,6.1.3 报文格式,(9)协议:长度为8 bit,用于指明调用IP协议进行传输的高层协议,高层协议的号码由TCP/IP权威管理机构统一分配。例如,ICMP的值为1,TCP的值为6,UDP的值为17。(10)分组头校验和:长度为16 bit,用于保证IP分组头的完整性。只对IP分组头部(不对分组头部后面的数据区)计算的检验和。其算法为:该字段初始值为0,然后对IP分组头以每16位为单位进行求异或,并将结果求反,便得到校验和。(11)源IP地址:长度为32 bit,用于指明发送IP分组的源主机IP地址。(12)目的地址:长度为32 bit,用于指明接收IP分组的目标主机IP地址。,6.1.3 报文格式,(13)任选项:长度可变,该字段允许在以后版本中包括在当前设计的分组头中未出现的信息,其使用有一些特殊的规定。目前,这些任选项定义如下:安全和处理限制(用于军事领域,详细内容参见RFC 1108);记录路径(让每个路由器都记下它的IP地址);时间戳(让每个路由器都记下它的IP地址和时间);宽松的源站选路(为分组指定一系列必须经过的IP地址)严格的源站选路(与宽松的源站选路类似,但是它要求只能经过指定的这些地址,不能经过其他的地址)。这些选项很少被使用,并非所有的主机和路由器都支持这些选项。,6.1.3 报文格式,(14)填充:长度不定,由于IP分组头必须是4字节的整数倍(这是分组头长度字段所要求的),因此,当使用任选项的IP分组头长度不足4字节的整数倍时,必须用0填入填充字段来满足这一要求,6.1.3 报文格式,2.TCP报文格式,TCP/IP的传输层有两个不同的协议:(1)用户数据报协议 UDP(User Datagram Protocol)(2)传输控制协议 TCP(Transmission Control Protocol),TCP传送的协议数据单位是TCP报文段(segment)UDP传送的协议数据单位是UDP报文或用户数据报。,TCP 与 UDP的协议数据单位,6.1.3 报文格式,UDP在传送数据之前不需要建立连接。对方的传输层在收到UDP报文后,不需要给出任何确认。虽然UDP不提供可靠交付,但在某些情况下(如广播、组播)UDP是一种最有效的工作方式。TCP则提供面向连接的服务。由于TCP要提供可靠的、面向连接的运输服务,因此不可避免地增加了许多的开销。这不仅使协议数据单元的首部增大很多,还要占用许多的处理机资源。,面向连接与无连接,6.1.3 报文格式,传输层的UDP用户数据报与网络层的IP数据报有很大区别。IP数据报要经过互连网中许多路由器的存储转发,但UDP用户数据报是在传输层的端到端抽象的逻辑信道中传送的。TCP报文段是在传输层抽象的端到端逻辑信道中传送,这种信道是可靠的全双工信道。但这样的信道却不知道究竟经过了哪些路由器,而这些路由器也根本不知道上面的传输层是否建立了TCP连接。,TCP 与 UDP有关问题说明,6.1.3 报文格式,端口就是传输层服务访问点TSAP。端口的作用就是让应用层的各种应用进程都能将其数据通过端口向下交付给传输层,以及让传输层知道应当将其报文段中的数据向上通过端口交付给应用层相应的进程。从这个意义上讲,端口是用来标志应用层的进程。,(2)端口的概念,6.1.3 报文格式,端口用一个16 bit 端口号进行标志。端口号只具有本地意义,即端口号只是为了标志本计算机应用层中的各进程。在因特网中不同计算机的相同端口号是没有联系的。,端口的含义,6.1.3 报文格式,一类是熟知端口,其数值一般为 01023。当一种新的应用程序出现时,必须为它指派一个熟知端口。另一类则是一般端口,用来随时分配给请求通信的客户进程。,两类端口,6.1.3 报文格式,TCP 使用“连接”(而不仅仅是“端口”)作为最基本的抽象,同时将TCP连接的端点称为插口(socket),或套接字、套接口。插口和端口、IP 地址的关系是:,插口(socket),6.1.3 报文格式,(2)TCP报文格式,TCP首部,20字节固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,FIN,SYN,RST,PSH,ACK,URG,比特 0 8 16 24 31,填 充,源端口和目的端口字段各占 2 字节。端口是传输层与应用层的服务接口。传输层的复用和分用功能都要通过端口才能实现。,TCP首部,20字节固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,FIN,SYN,RST,PSH,ACK,URG,比特 0 8 16 24 31,填 充,序号字段占 4 字节。TCP 连接中传送的数据流中的每一个字节都编上一个序号。序号字段的值则指的是本报文段所发送的数据的第一个字节的序号。,TCP首部,20字节固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,FIN,SYN,RST,PSH,ACK,URG,比特 0 8 16 24 31,填 充,确认号字段占 4 字节,是期望收到对方的下一个报文段的数据的第一个字节的序号。,TCP首部,20字节固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,FIN,SYN,RST,PSH,ACK,URG,比特 0 8 16 24 31,填 充,数据偏移占 4 bit,它指出 TCP 报文段的数据起始处距离 TCP 报文段的起始处有多远。“数据偏移”的单位不是字节而是 32 bit 字(4 字节为计算单位)。,TCP首部,20字节固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,FIN,SYN,RST,PSH,ACK,URG,比特 0 8 16 24 31,填 充,保留字段占 6 bit,保留为今后使用,但目前应置为 0。,TCP首部,20字节固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,FIN,SYN,RST,PSH,ACK,URG,比特 0 8 16 24 31,填 充,紧急比特 URG 当 URG 1 时,表明紧急指针字段有效。它告诉系统此报文段中有紧急数据,应尽快传送(相当于高优先级的数据)。,TCP首部,20字节固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,FIN,SYN,RST,PSH,ACK,URG,比特 0 8 16 24 31,填 充,确认比特 ACK 只有当 ACK 1 时确认号字段才有效。当 ACK 0 时,确认号无效。,TCP首部,20字节固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,FIN,SYN,RST,PSH,ACK,URG,比特 0 8 16 24 31,填 充,推送比特 PSH(PuSH)接收 TCP 收到推送比特置 1 的报文段,就尽快地交付给接收应用进程,而不再等到整个缓存都填满了后再向上交付。,TCP首部,20字节固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,FIN,SYN,RST,PSH,ACK,URG,比特 0 8 16 24 31,填 充,复位比特 RST(ReSeT)当 RST 1 时,表明 TCP 连接中出现严重差错(如由于主机崩溃或其他原因),必须释放连接,然后再重新建立运输连接。,TCP首部,20字节固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,FIN,SYN,RST,PSH,ACK,URG,比特 0 8 16 24 31,填 充,同步比特 SYN 同步比特 SYN 置为 1,就表示这是一个连接请求或连接接受报文。,TCP首部,20字节固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,FIN,SYN,RST,PSH,ACK,URG,比特 0 8 16 24 31,填 充,终止比特 FIN(FINal)用来释放一个连接。当FIN 1 时,表明此报文段的发送端的数据已发送完毕,并要求释放运输连接。,TCP首部,20字节固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,FIN,SYN,RST,PSH,ACK,URG,比特 0 8 16 24 31,填 充,窗口字段 占 2 字节。窗口字段用来控制对方发送的数据量,单位为字节。TCP 连接的一端根据设置的缓存空间大小确定自己的接收窗口大小,然后通知对方以确定对方的发送窗口的上限。,TCP首部,20字节固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,FIN,SYN,RST,PSH,ACK,URG,比特 0 8 16 24 31,填 充,检验和 占 2 字节。检验和字段检验的范围包括首部和数据这两部分。在计算检验和时,要在 TCP 报文段的前面加上 12 字节的伪首部。,TCP首部,20字节固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,FIN,SYN,RST,PSH,ACK,URG,比特 0 8 16 24 31,填 充,紧急指针字段 占 16 bit。紧急指针指出在本报文段中的紧急数据的最后一个字节的序号。,TCP首部,20字节固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,FIN,SYN,RST,PSH,ACK,URG,比特 0 8 16 24 31,填 充,选项字段 长度可变。TCP 只规定了一种选项,即最大报文段长度 MSS(Maximum Segment Size)。MSS 告诉对方 TCP:“我的缓存所能接收的报文段的数据字段的最大长度是 MSS 个字节。”,MSS 是 TCP 报文段中的数据字段的最大长度。数据字段加上 TCP 首部才等于整个的 TCP 报文段。,TCP首部,20字节固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,FIN,SYN,RST,PSH,ACK,URG,比特 0 8 16 24 31,填 充,填充字段 这是为了使整个首部长度是 4 字节的整数倍。,UDP只在IP的数据报服务之上增加了很少一点的功能,即端口的功能和差错检测的功能。虽然UDP用户数据报只能提供不可靠的交付,但UDP在某些方面有其特殊的优点。发送数据之前不需要建立连接,UDP的主机不需要维持复杂的连接状态表。UDP用户数据报只有8个字节的首部开销。网络出现的拥塞不会使源主机的发送速率降低。这对某些实时应用是很重要的。,3.UDP 报文格式,6.1.3 报文格式,UDP 端口 51000,UDP 端口 69,出队列,入队列,出队列,入队列,TFTP 服务器,TFTP 客户,UDP 用户数据报,应用层,运输层,UDP举例,6.1.3 报文格式,伪首部,源端口,目的端口,长 度,检验和,数 据,首 部,UDP长度,源 IP 地址,目的 IP 地址,0,17,IP 数据报,字节,4,4,1,1,2,12,2,2,2,2,字节,发送在前,数 据,首 部,UDP 用户数据报,(2)UDP 用户数据报的首部格式,6.1.3 报文格式,伪首部,源端口,目的端口,长 度,检验和,数 据,首 部,UDP长度,源 IP 地址,目的 IP 地址,0,17,IP 数据报,字节,4,4,1,1,2,12,2,2,2,2,字节,发送在前,数 据,首 部,UDP 用户数据报,用户数据报 UDP 有两个字段:数据字段和首部字段。首部字段有 8 个字节,由 4 个字段组成,每个字段都是两个字节。,伪首部,源端口,目的端口,长 度,检验和,数 据,首 部,UDP长度,源 IP 地址,目的 IP 地址,0,17,IP 数据报,字节,4,4,1,1,2,12,2,2,2,2,字节,发送在前,数 据,首 部,UDP 用户数据报,在计算检验和时,临时把“伪首部”和 UDP 用户数据报连接在一起。伪首部仅仅是为了计算检验和。,计算 UDP 检验和的例子,10011001 00010011 153.1900001000 01101000 8.10410101011 00000011 171.300001110 00001011 14.1100000000 00010001 0 和 1700000000 00001111 1500000100 00111111 108700000000 00001101 1300000000 00001111 1500000000 00000000 0(检验和)01010100 01000101 数据01010011 01010100 数据01001001 01001110 数据01000111 00000000 数据和 0(填充)10010110 11101101 求和得出的结果01101001 00010010 检验和,12 字节伪首部,8 字节UDP 首部,7 字节数据,按二进制求和将得出的结果求反码,全 0 17 15 1087 13 15 全 0数据 数据 数据 数据数据 数据 数据 全 0,请注意:进行求和时,最高位有进位 2,这个 2 应当加到最低位。,TCP和UDP是传输层的两大协议。TCP提供可靠流服务,UDP提供数据报服务。TCP和UDP共同点在于提供进程通信能力。为此,引入端口概念。UDP是简单的传输协议,几乎不提供可靠性措施。TCP为保证可靠性做了大量工作:确认与超时重传机制、滑动窗口机制、三次握手建立连接和释放连接机制等。,小结,6.1.3 报文格式,IP技术基础,局域网与交换,6.2,路由器,交换层次的多样性,6.4,三层交换,6.5,6.3,第6章 网络交换基础与IP互连,6.1,多协议标记交换,6.6,四层交换,6.7,应用层交换,6.8,6.2 局域网交换,局域网概述传统以太网以太网的工作原理以太网的 MAC 层MAC 层的硬件地址两种不同的 MAC 帧格式扩展的局域网虚拟局域网,6.2 局域网概述,定义局域网(LAN)是一种将小区域内的各种通信设备互连在一起的通信网络。局域网的基本特点高数据传输率(10 1000 Mbps)短距离(0.1 10 km)低出错率(10-8 10-11),局域网定义及特点,局域网标准由IEEE 802委员会制定;所有标准都以802开头。,局域网标准和体系结构,6.2 局域网概述,802.1A概述、体系结构802.1B寻址、网络互连,以及网络管理和性能测量802.2 逻辑链路控制。802.3 CSMA/CD。定义CSMA/CD总线网的MAC子层和物理层的规约。802.4 令牌总线网。定义令牌总线网的MAC子层和物理层的规约。802.5 令牌环网。定义令牌环网的MAC子层和物理层的规约。802.6 城域网MAN。定义城域网的MAC子层和物理层 的规约。,802参考模型的分类,6.2 局域网概述,802.7 宽带局域网802.8 光纤技术802.9 综合话音数据局域网802.10局域网的安全性802.11无线局域网标准802.12优先级高速局域网(100Mb/s的100BaseVG-AnyLAN)802.13未使用802.14电缆电视(Cable-TV)。Cable Modem标准802.15定义无线个人区域网(WPAN,wireless personal area network)802.16定义固定宽带无线标准,WiMax,802参考模型的分类,6.2 局域网概述,802.17弹性分组数据环技术802.18Radio Regulatory Technical Advisory Group(RR-TAG)802.19Wireless Coexistence Technical Advisory Group(TAG)802.20定义移动宽带无线标准 802.21网络无缝融合技术 802.22认知无线电,802参考模型的分类,6.2 局域网概述,802.3x以太网802.4令牌总线网802.5令牌环802.11无线局域网802.16固定宽带无线接入网802.20移动宽带无线接入网,常用局域网分类,6.2 局域网概述,802.4令牌总线,802.5令牌环,802.11无线局域网,802.2 LLC逻辑链路,物理层,LLC子层,MAC子层,数据链路层,MAC子层实现共享信道的动态分配功能。控制和管理信道的使用,实现一对多通信(多址访问),即用一个共享信道将多个用户连接起来,实现他们之间的相互通信。,LLC子层具有差错控制和流量控制功能,实现数据帧在两个站点之间的可靠传送。,IEEE 802标准局域网体系结构,6.2 局域网概述,CSMA/CD访问方法及物理层规定。十兆/百兆/千兆位以太网标准都属于此类的一个分项。,IEEE 802.3,6.2 局域网概述,6.2.2 局域网交换,1.传统网桥 利用网桥将一个较大的局域网分割为多个网段。网桥可将两个以上的LAN互联为一个逻辑LAN工作原理:若一个网段收到一个目的地址不是本网段的MAC帧时,向别网段进行转发,否则不转发,两个标准 DIX Ethernet V2 是世界上第一个局域网产品(以太网)的规约。IEEE 的 802.3 标准。DIX Ethernet V2 标准与 IEEE 的 802.3 标准只有很小的差别,因此可以将 802.3 局域网简称为“以太网”。,2.交换式集线器(传统以太网的工作原理),6.2.2 局域网交换,由于TCP/IP 体系经常使用的局域网是 DIX Ethernet V2 而不是 802.3 标准中的几种局域网,因此现在 802 委员会制定的逻辑链路控制子层 LLC(即 802.2 标准)的作用已经不大了。很多厂商生产的网卡上就仅装有 MAC 协议而没有 LLC 协议。,以后一般不考虑 LLC 子层,6.2 传统以太网,网络接口板又称为通信适配器(adapter)或网络接口卡 NIC(Network Interface Card),或“网卡”。网卡的重要功能:进行串行/并行转换。对数据进行缓存。实现以太网协议。,(2)网卡的作用,6.2 传统以太网,CPU,高速缓存,存储器,I/O 总线,计算机,至局域网,网络接口卡(网卡),