1、第2章 Internet基础网际协议(IP)ARP协议传输控制协议(TCP/UDP)ICMP协议域名解析DNS应用协议Internet接入2.1 网际协议(IP)lIP编址IP地址:TCP/IP为每台主机分配一个全网唯一的标识地址每个IP地址标识网络上所连接主机的位置IP地址结构IPv4地址:32位(w.x.y.z)网络标识号:区分不同网络主机标识号:区分同一网络中的不同主机。IP地址类型类别 w的值网络ID主机ID网络数量主机数量A1-126wx.y.z12616777214B128-191w.xy.z1638465534C192-223w.x.yZ2097152254D224-239多播保
2、留N/AN/AN/AE240-254实验保留N/AN/AN/A特殊地址l网络地址主机号对应位全为“0”的地址l广播地址主机号对应位全为“1”的地址受限广播地址:32位全为“1”的地址l回送地址(127.0.0.0)用于网络软件测试以及本地机进程间通信发往回送地址的数据不会交付给主机接口l私有地址不会被Internet分配,在Internet上也不会被路由A:10.0.0.010.255.255.255 即10.0.0.0/8B:172.16.0.0172.31.255.255即172.16.0.0/12C:192.168.0.0192.168.255.255 即192.168.0.0/16IP
3、子网技术l子网划分l可变长子网l超网子网划分方法l从IP地址主机号中分出一些位用作子网号lIP地址结构由二级结构(网络ID,主机ID)变成三级结构(网络ID,子网ID,主机ID)l子网长度由子网掩码确定lIP子网划分对外不可见网络号主机号网络号子网号主机可变长子网l可变长子网掩码(VLSM,Variable-length Subnet Mask)技术是子网划分的一种应用技术,其本质是对已划分的子网做进一步的划分。l引入可变长子网掩码技术,目的是优化可用地址空间,避免造成IP地址资源的浪费。VLSM应用应用需求申请一个B类网络,网络号为172.16.0.0。配置13个能容纳4000台计算机的子网
4、。配置6个能容纳250台计算机的子网。假定在划分中全0和全1的子网不可用。解决方案将B类网络划分为14个子网(172.16.0.0/20)前13个子网分配给需要4000台计算机的网络。对第14个子网(172.16.224.0/20)再次划分子网(172.16.224.0/24)。可分配的二级子网共14个,将前6个分配给需要200台计算机的网络即可。超网lIETF提出了超网(super net)和无类域间路由(CIDR,Classless Inter Domain Routing)的方法l采取了灵活选择IP地址中主机号的长度,不再机械地划分成类。l与子网编址相反,某组织内不用一个IP地址来代表多
5、个物理网络,而是用多个IP网络地址代表一个组织。l采用了CIDR后,将多个网络表项聚合成了一个路由表项,一般表示为:起始网络号,数量起始网络号:所分配的第一个C类网络IP地址。数量:分配的C类网络的总数。CIDR地址范围区域C类地址分配范围欧洲地区194.0.0.0195.255.255.255北美地区198.0.0.0199.255.255.255中美和南美地区200.0.0.0201.255.255.255亚太地区202.0.0.0203.255.255.255IP数据报l版本:记录该数据报符合协议哪版本号。l头标长(IHL):用32位编组形式标识IP报头的长度。l服务类型(ToS):记录
6、主机要求通信子网所提供的服务类型,如优先权或可靠性和数据的速度指标,通知IP如何处理输入的数据报。l数据报长度:指头标长和数据区的总长度。l标识符:标识数据报。l标志:指出数据报是否可分段,即无分段(DF)或多个分段(MF)。l片偏移:指出该分段在数据报中的位置。l生存时间(TTL):是限定数据报生存期的计数器。l 传输协议:标识将接收数据报的传输层协议类型。IP数据报含义l表头校验和:用于校验头标,判断IP报头是否已被破坏。l源地址:标识源节点的完整IP地址。l目标地址:标识目标节点的完整IP地址。l选择项:可以包含可选的路由和实时信息,也可包含安全保密和错误报告等信息。l填充位:包含填充信
7、息以确保报头是32位的倍数,该域的大小可变。l数据:包括了由源节点发送的原始数据。IP数据报含义lIP协议是无连接的、不可靠的数据报协议,主要负责在主机之间寻址和选择数据报的路由。无连接意味着交换数据之前不能建立会话;不可靠意味着传递没有担保;也就是说,IP数据报的传输不保证数据一定到达目的地。lIP总是尽力传递数据报。lIP数据报可能丢失、不按顺序传递、重复或延迟。IP不尝试从这些错误类型中恢复。IP数据报传输特征l IP数据报选项字段是任选的,长度不定,主要用于网络控制和测试。l IP具体实现对选项处理是必不可少的,但主机与路由器在处理上存在差异。l IP选项一共有四类,其中两类(1类和3
8、类)是未使用的,另两类(0类和2类)是使用的。IP选项选项类 意义0123数据报或网络控制未用调试与测量未用 选项类 选项号 长度(字节)意义 0 0 0 0 0 0 2 0 1 2 3 7 9 4-11 可变 可变 可变 可变 选项表结束(标志数据报报头任选项域的结束)无操作(作为填充数据,用于在任选项域中排列字节)安全和处理限制(用于军事领域)宽松的源站选路(为数据报指定一系列必须经过的 IP地址,也可经过其他地址)记录路径(记录所经过的路由器的 IP 地址)严格的源站选路(与宽松的源站选路类似,但是要求只能经过指定的这些地址,不能经过其他的地址)时间戳(记录所经过的路由器的 IP 地址和
9、相应时间)IP选项号2 地址解析协议l地址解析协议的工作机制lARP和RARP的协议格式lARP代理lARP实例ARP协议实现过程 检查检查ARP缓存缓存 BCAARPCache21465ARPCache3 发送发送ARP请求请求 添加添加ARP缓存条目缓存条目 发送发送ARP回应回应 添加添加ARP缓存条目缓存条目 发送发送IP数据包数据包ARP协议的工作过程172.16.3.1172.16.3.2IP:172.16.3.2=?I need the Ethernet address of 176.16.3.2.ARP协议的工作过程172.16.3.1172.16.3.2IP:172.16.3
10、.2=?I heard that broadcast.The message is for me.Here is my Ethernet address.I need the Ethernet address of 176.16.3.2.ARP协议的工作过程172.16.3.1IP:172.16.3.2 Ethernet:0800.0020.1111 172.16.3.2IP:172.16.3.2=?I heard that broadcast.The message is for me.Here is my Ethernet address.I need the Ethernet addre
11、ss of 176.16.3.2.ARP协议的工作过程Map IP EthernetLocal ARP172.16.3.1IP:172.16.3.2 Ethernet:0800.0020.1111 172.16.3.2IP:172.16.3.2=?I heard that broadcast.The message is for me.Here is my Ethernet address.I need the Ethernet address of 176.16.3.2.ARP帧格式ARP报文ARP报文帧类型以太网源地址以太网目的地址以太网首部由IP地址查到对应的物理地址 0 8 16 24
12、 31硬件类型协议类型硬件地址长度协议地址长度操作发送方首部(8bit组0-3)发送方首部(8bit组4-5)发送方IP地址(8bit组0-1)发送方IP地址(8bit组2-3)目标首部(8bit组0-1)目标首部(8bit组2-5)目标IP地址(8bit组0-3)ARP代理lARP代理是一个把IP网络前缀映射到两个物理地址上的技术。lARP代理仅仅适用于把互连网地址绑定到物理地址的网络。3 Internet控制报文协议lICMP用途与机制lICMP报文lICMP差错报文lICMP控制报文lICMP请求/应答报文lICMP重定向举例ICMP用途与机制l网间报文控制协议(ICMP,Interne
13、t Control Message Protocol),是一个工作在主机和路由器之间的消息控制和差错报告协议。l网络设备(通常是路由器)一旦发现传输问题,就会分析其错误类型,并向源主机返回一个ICMP消息。lICMP报文是放在一个IP数据报的数据部分中进行传输的。l常用的ping命令和tracert命令就是基于ICMP的工具程序。ICMP类型ICMP定义了很多信息类型,如:l目的地不可达 lTTL 超时 l信息请求 l信息应答 l地址请求 l地址应答 类型(8bit)代码(8bit)检验和(16bit)长度可变部分取决于ICMP类型0 7 8 15 16 31ICMP格式l类型字段:用来标识报
14、文。l代码字段:提供有关报文类型的进一步信息。l校验和字段:ICMP使用与IP相同的相加校验算法,但ICMP校验和只覆盖ICMP报文。ICMP差错报文l信宿不可到达报文当路由器检测出数据报不能发往目的地时,向信源发送一个信宿不可到达报文。l超时报文当路由器将数据报的生存时间字段的值减为零时还不能送达目标网络,放弃该数据报并发送一个超时报文;当目标主机对数据报的重组时间截止,而此时该数据报的分片还未全部到达,则主机放弃分片并发送一个超时报文。l参数出错报文网关或主机通过参数出错报文报告错误的数据报报头和错误的数据报选项参数等情况。ICMP控制报文l 拥塞控制与源抑制报文当路由器收到太多的数据报以
15、至于没有足够的缓冲区来处理时,路由器放弃到达的额外数据报,并使用ICMP源抑制报文向初始源主机报告拥塞状况,并请求它减慢目前的数据报发送速率。l路径控制与重定向报文当路由器检测到一台主机使用非优化路由时,它向该主机发送一个重定向的ICMP报文,请求该主机改变路由并把初始数据报转发给它的目的主机。ICMP请求/应答报文l回应请求与应答报文请求者向目的主机发送一个回应请求,回应请求中包含一个任选的数据区;目的主机发回相应的回应应答,应答中包含一个请求中任选数据的拷贝。假如主机成功地收到一个应答,说明数据报传输系统的相应部分工作正常。ping命令就是利用ICMP回应请求与应答报文测试目的主机的可到达
16、性。l时戳请求与应答报文用于时钟同步,以避免各主机的时钟相差太大。l地址掩码请求与应答报文 一台主机在系统启动时广播一个地址掩码请求,收到请求的路由器发送一个包含该计算机所在网络的32位掩码的应答。4 TCPTCP服务特征l面向连接l点对点通信每l完全可靠性l全双工通信l流接口 l可靠的连接建立l完美的连接终止l确保IP数据报的成功传递l对程序发送的大块数据进行分段和重组l确保正确排序以及按顺序传递分段的数据l通过计算校验和,进行传输数据的完整性检查l根据数据是否接收成功发送正消息l通过有选择的确认,也对没有收到的数据发送负确认TCP功能TCP连接建立三次握手TCP连接终止四次握手TCP连接状
17、态迁移TCP 报头格式 TCP流量控制A 向 B 发送数据;在连接建立时B向A申明接收窗口(rwnd)为400B。seq=201,DATAABACK=1,ack=201,rwnd=300允许 A 发送序号 201 至 500 共 300 字节seq=101,DATAA 发送了序号 101 至 200,还能发送 200 字节seq=1,DATAA 发送了序号 1 至 100,还能发送 300 字节seq=401,DATAA 发送了序号 401 至 500,不能再发送新数据了seq=201,DATAA 超时重传旧的数据,但不能发送新的数据ACK=1,ack=501,rwnd=100允许 A 发送序
18、号 501 至 600 共 100 字节seq=501,DATAA 发送了序号 501 至 600,不能再发送了ACK=1,ack=601,rwnd=0不允许 A 再发送(到序号 600 为止的数据都收到了)丢失丢失TCP拥塞控制TCP快速重传与恢复l快速重传算法首先要求接收方每收到一个失序的报文段后就立即发出重复确认。这样做可以让发送方及早知道有报文段没有到达接收方。l发送方只要一连收到三个重复确认就应当立即重传对方尚未收到的报文段。l快速重传并非取消重传计时器,而是在某些情况下可更早地重传丢失的报文段。TCP快速重传与恢复TCP定时器l重传定时器为每一个发送的数据段启动一个重传定时器,用于
19、完成出错后的数据重传。l坚持(persist)定时器TCP的可靠性实际上是针对那些包含有应用数据报文段对于纯控制报文段而言,TCP不予确认;为了防止因控制报文段的丢失而导致双方的“死锁”,发送方用坚持定时器来周期性地试探接收方以解除死锁。l保活(keepalive)定时器。用于检测一个空闲连接的另一端是否已经崩溃或重启。l2MSL定时器控制一个连接处于TIME_WAIT状态的时间。用户数据报协议(UDP)用户数据报协议(User Data Protocol,UDP)是使用IP协议在计算机数据交换时提供一定服务的通信协议。UDP是TCP的另外一种方法,和TCP一样,UDP使用IP协议来获得数据报
20、,但不同于TCP,它不提供数据报的分组和组装服务。TCP与UDP的比较TCP和UDP是TCP/IP协议传输层中的两个协议,它们使用IP路由功能把数据报发送到目的地,从而为应用程序及应用层协议(包括:HTTP、SMTP、SNMP、FTP和Telnet)提供网络服务。由于IP层不能保证传递数据报的正确性,因此,TCP采用超时重传的策略,即如果在时限内未接收到应答信号,则重传超时的TCP数据报。UDP则是一个无连接数据报传输协议。它的数据报头中包含少量数据,同时没有建立和拆除连接所引起的管理开销,致使在某些情况下,UDP的低开销和多播能力(如一个数据报,多个接收者)比TCP更适合。UDPTCP无连接
21、的服务;在主机之间不建立会话。面向连接的服务;在主机之间建立会话。UDP不能确保数据传递的正确性或序列化数据。TCP通过确认和按顺序传递数据来确保数据的传递。使用 UDP 的程序负责提供传输数据所需的可靠性。使用TCP的程序能确保可靠的数据传输。UDP快速,开销要求低,并支持点对点和一点对多点的通讯。TCP比较慢,开销要求高,而且只支持点对点通讯。TCP与UDP的比较5 DNS l任何一个连接在因特网上的主机或路由器,都有一个唯一的层次结构的名字,即域名。l域名是在IP地址基础上,提供了一种面向用户的字符型主机命名机制,它是一种更高级的地址形式。l域名是个逻辑概念,不代表计算机所在的物理地点。
22、l变长的域名和使用有助记忆的字符串,是为了便于人来记忆和使用。域名空间根四级域名mailwwwbjeducomcctvibmhp二级域名pkutsinghua三级域名mailwwwcomnetorgedugovaerocnuk顶级域名域名服务器l一个服务器所负责管辖的(或有权限的)范围叫做区(zone)。l各单位根据具体情况来划分自己管辖范围的区。但在一个区中的所有节点必须是能够连通的。l每一个区设置相应的权限域名服务器,用来保存该区中的所有主机的域名到IP地址的映射。lDNS 服务器的管辖范围不是以“域”为单位,而是以“区”为单位。“域”与“区”的区别域 区abcxuvwty(a)区=域(b
23、)区 域域 区区abcxuvwtycomeduorg根comeduorg根DNS域名服务器根域名服务器org 域名服务器com 域名服务器edu 域名服务器域名服务器abc 公司有两个权限域名服务器权限域名服务器根域名服务器顶级域名服务器域名服务器本地域名服务器也称为默认域名服务器,直接结束主机的域名查询请求域名解析过程迭代方式顶级域名服务器权限域名服务本地域名服务器根域名服务器 的 IP 地址 递归查询需要查找 的 IP 地址域名解析过程递归方式(少用)顶级域名服务器权限域名服务本地域名服务器 根域名服务器递归查询 的 IP 地址 需要查找 的 IP 地址域名缓存l每个域名服务器都维护一个高
24、速缓存,存放最近用过的名字以及从何处获得名字映射信息的记录。l可大大减轻根域名服务器的负荷,使因特网上的 DNS 查询请求和回答报文的数量大为减少。l为保持高速缓存中的内容正确,域名服务器应为每项内容设置计时器,并处理超过合理时间的项(例如,每个项目只存放两天)。l当权限域名服务器回答一个查询请求时,在响应中都指明绑定有效存在的时间值。增加此时间值可减少网络开销,而减少此时间值可提高域名转换的准确性。6 DHCPl动态主机配置协议 DHCP 提供了即插即用连网(plug-and-play networking)的机制。l这种机制允许一台计算机加入新的网络和获取IP地址而不用手工参与。DHCP工
25、作过程l需要 IP 地址的主机在启动时就向 DHCP 服务器广播发送发现报文(DHCPDISCOVER),这时该主机就成为 DHCP 客户。l本地网络上所有主机都能收到此广播报文,但只有 DHCP 服务器才回答此广播报文。lDHCP 服务器先在其数据库中查找该计算机的配置信息。若找到,则返回找到的信息。若找不到,则从服务器的 IP 地址池(address pool)中取一个地址分配给该计算机。DHCP 服务器的回答报文叫做提供报文(DHCPOFFER)。DHCP中继代理l并不是每个网络上都有 DHCP 服务器,这样会使 DHCP 服务器的数量太多。现在是每一个网络至少有一个 DHCP 中继代理
26、,它配置了 DHCP 服务器的 IP 地址信息。l当 DHCP 中继代理收到主机发送的发现报文后,就以单播方式向 DHCP 服务器转发此报文,并等待其回答。收到 DHCP 服务器回答的提供报文后,DHCP 中继代理再将此提供报文发回给主机。DHCP中继代理图示主机DHCP服务器其他网络DHCP中继代理DHCPDISCOVER广播DHCPDISCOVER单播注意:DHCP 报文封装在 UDP数据报中 7 Webl万维网以客户服务器方式工作。l浏览器就是在用户计算机上的万维网客户程序。万维网页面所驻留的计算机则运行服务器程序,因此这个计算机也称为Web服务器。l客户程序向服务器程序发出请求,服务器
27、程序向客户程序送回客户所要的万维网页面。l在一个客户程序主窗口上显示出的万维网页面称为页面(page)。Web核心问题l怎样标志分布在整个因特网上的Web页面?URLl用何协议实现Web上的数据传输?HTTPl怎样定义标准化的Web页面,如何关联Web页面?HTMLl怎样使用户能够很方便地找到所需的信息?搜索引擎Web页面类型l静态页面(static document)是指该页面创作完毕后就存放在Web服务器中,在被用户浏览的过程中,内容不会改变。l动态页面(dynamic document)是指页面的内容是在浏览器访问万维网服务器时才由应用程序动态创建。l活动页面(active docume
28、nt)所有的工作都转移给浏览器端执行,每当浏览器请求一个活动页面时,服务器就返回一段程序副本在浏览器端运行。8 电子邮件l电子邮件(e-mail)是因特网上使用得最多的和最受用户欢迎的一种应用。l电子邮件把邮件发送到收件人使用的邮件服务器,并放在其中的收件人邮箱中,收件人可随时上网到自己使用的邮件服务器进行读取。l电子邮件不仅使用方便,而且还具有传递迅速和费用低廉的优点。l现在电子邮件不仅可传送文字信息,而且还可附上声音和图像。电子邮件相关标准l发送邮件的协议:SMTPl读取邮件的协议:POP3 和 IMAPlMIME 在其邮件首部中说明了邮件的数据类型(如文本、声音、图像、视像等),使用 M
29、IME 可在邮件中同时传送多种类型的数据。电子邮件系统构件发送方邮件缓存 接收端邮件服务器用户代理SMTPSMTPPOP3 发送端邮件服务器用户代理用户邮箱接收方(发送邮件)(发送邮件)(读取邮件)因特网SMTPPOP3发送邮件发送邮件 SMTP读取邮件TCP连接TCP连接发送方邮件服务器SMTP客户POP3客户发件人用户代理接收方邮件服务器SMTP服务器POP3服务器SMTP服务器SMTP客户收件人用户代理TCP 连接基于Web的电子邮件HTTPHTTPABSMTP网易邮件服务器新浪邮件服务器9 Internet接入lADSLl基于HFC的CableModeml以太网接入l光纤接入有源光网络、无源光网络l电力线接入l宽带无线接入MMDS、LMDS、卫星接入l3G/4G接入3G:WCDMA,CDMA2000,TD-SCDMA4G:LTE,WiMax