Download presentation
Presentation is loading. Please wait.
1
第七讲 网际协议IP
2
本讲内容 分组格式 分组处理 分组投递 IP软件设计 第七讲 IP协议
3
IP 协议 Internet Protocol,RFC 791 Application Layer Transport Layer ICMP
IGMP Network Layer IP ARP RARP Network Access Layer LANs MANs WANs 第七讲 IP协议
4
IP:不可靠无连接数据报协议 IP通信 无连接:跨越多个异构物理网 通用性
不可靠:尽最大努力交付(best-effort delivery) 可靠性问题交由高层协议解决 第七讲 IP协议
5
7.1 分组格式 IP Datagram 第七讲 IP协议
6
长度字段 首部长度字段,HLEN,4 bits 总长度字段,Total length,16 bits 思考:IP分组的最大长度是多少?
取值:5 ~ 15(即首部长度为 20 ~ 60 bytes) 总长度字段,Total length,16 bits 以字节单位 首部长度(即4*HLEN)+ 数据长度 思考:IP分组的最大长度是多少? 65535 第七讲 IP协议
7
Differentiated Services Code Point,区分服务编码点
网络工程系 服务类型字段 Type of Service(TOS),8 bits 该分组所期望的服务质量 D T R Precedence Reserve RFC 1349 D T R Precedence C D: Minimize delay R: Maximize reliability T: Maximize throughput 指示对分组进行处理(排队或丢弃)的优先权,值从0(普通优先级)到7(网络控制) 该分组所希望的路由转发服务类型,不能同时设置 The precedence subfield is not used in IPv4. C: Minimize cost RFC 2474 DSCP CU Differentiated Services Code Point,区分服务编码点 Currently Unused 第七讲 IP协议 电子科大通信学院
8
分片控制字段 标识字段,Identification,16 bits 标志字段,Flags,3 bits
网络工程系 分片控制字段 标识字段,Identification,16 bits 源站每发送一个分组,标识值+1 (源IP地址,标识) 全网唯一分组标识 标志字段,Flags,3 bits 分片偏移字段,Fragmentation offset,13 bits 以8 bytes为单位 D M Flags D: Do not fragment M: More fragments 如何判断一个IP分组是否被分片?是第一片、中间片、最后一片? 思考:IP数据报为什么需要被分片? 第七讲 IP协议 电子科大通信学院
9
生存时间字段 Time to Live(TTL),8 bits 最大值? 255 分组寿命:防止路由成环时,IP被无限次转发
网络工程系 生存时间字段 Time to Live(TTL),8 bits 分组寿命:防止路由成环时,IP被无限次转发 取值:分组传输时间+路由器转发处理时间 困难 实际:源和目的之间的路由器个数(跳数) 路由器转发时将 TTL值减1 ,TTL值为零时丢弃该分组 最大值? 255 第七讲 IP协议 电子科大通信学院
10
协议字段 Protocol,8 bits 使用IP服务的高层协议 Transport layer TCP UDP EGP OSPF ICMP
IGMP Network layer Header IP Datagram 1:ICMP 2:IGMP :IP 6:TCP 8:EGP 17:UDP :IPv6 89:OSPF 第七讲 IP协议
11
校验和字段 Checksum,16 bits 只校验首部,数据部分由高层协议校验 差错检测 无须重复校验数据部分
缩短了路由器转发分组时的处理时间 第七讲 IP协议
12
选项字段 Option,0 ~ 40 bytes 网络测试或调试 不是IP分组的必需部分,但其处理是IP软件的必需部分 Code
8 bits Length 8 bits Data variable length Copy 1 bit Class 2 bits Number 5 bits Copy 0 Copy only in first fragment 1 Copy into all fragments Number End of option No option Loose source route Record route Strict source route Class 00 Datagram control 01 Reserved Debugging and management Reserved 第七讲 IP协议
13
IP分组封装 直接封装在数据链路帧中 例:Ethernet 帧 Ethernet frame header IP header
byte 6 6 2 46 ~ 1500 4 0x0800 IP Packet Packet 目的MAC 源MAC 类型 FCS Ethernet frame header IP header IP data 第七讲 IP协议
14
IP分组实例 第七讲 IP协议
15
7.2 IP软件设计 第七讲 IP协议
16
7.3 IP分组处理 合法性检查 版本 长度 TTL Protocol IP地址 Checksum 分片与重组 选项处理 第七讲 IP协议
17
If the result is 0, keep; otherwise, discard
Checksum RFC 1071(RFC 1141,1624,1936) Sender Receiver Section 1 16 bits 16 bits Section 1 Section 2 16 bits 16 bits Section 2 Packet Checksum All 0s 16 bits Checksum 16 bits Section k 16 bits 16 bits Section k Checksum Sum 16 bits 16 bits Sum If the result is 0, keep; otherwise, discard 取反 取反 Checksum 16 bits 16 bits Result 第七讲 IP协议
18
Example 0100 0101 4 5 30 1 000 10 17 0x D190 100. 12. 14. 5 102. 36. 7. 9 Checksum:0x D190 + 取 反 1 第七讲 IP协议
19
7.3.2 分片与重组 适应在不同MTU的物理网上传输 Datagram IP datagram Frame Header MTU
网络工程系 分片与重组 适应在不同MTU的物理网上传输 Datagram IP datagram Frame Header MTU Trailer 物理网 MTU Token ring (16 Mbps) 17914 Token ring (4 Mbps) 4464 FDDI 4352 Ethernet 1500 X.25 576 PPP 296 数据帧中封装的最大数据长度 第七讲 IP协议 电子科大通信学院
20
分片操作(Fragmentation) 仅由路由器执行:转发分组时 确实需要时才进行分片:提高传输效率 每个分片都要包含IP首部:无连接通信
数据报可被多次分片 MTU = 620 bytes 600 1200 首部 Data 1 600 bytes Data 2 Data 3 200 bytes Data 首部 Data 1 首部 Data 2 首部 Data 3 Offset = 0 Offset = 600/8 = 75 Offset = 150 第七讲 IP协议
21
分片举例 MTU = 1420 片1 数据: 0 ~ 1399 MTU = 820 片2.1 数据: 1400 ~ 2199 片2 数据:
14567 1 片2.1 数据: 1400 ~ 2199 820 14567 1 175 4020 片2 数据: 1400 ~ 2799 1420 14567 14567 1 175 原始分组数据 0 ~ 3999 片2.2 数据: 2200 ~ 2799 620 14567 1 275 片3 数据: 2800 ~ 3999 1220 14567 350 第七讲 IP协议
22
重组操作( Reassembly) 仅由目的主机执行:将数据递交给上层时 目的主机能区分和重组不同的原IP报文
有重组时限 若丢失分片,则无法重组IP分组 目的主机能区分和重组不同的原IP报文 (源IP地址,标识) MTU3 620 50 1200 75 R4 1220 Net 3 B 75 75 50 Net 4 A Net 1 MTU4 820 R2 R1 Net 2 MTU1 620 MTU2 420 R3 第七讲 IP协议
23
重组表 第七讲 IP协议
24
7.3.3 选项处理 选项类型 无操作 No operation 单字节 Single-byte 选项结束 End of option
网络工程系 选项处理 选项类型 无操作 No operation 单字节 Single-byte 选项结束 End of option 记录路由 Record route 选项 Option 严格源路由 Strict source route 十四 多字节 Multiple-byte 松散源路由 Loose source route 时间戳 Timestamp 第七讲 IP协议 电子科大通信学院
25
无操作选项 格式 作用:选项间的填充 Code:1 00000001 一个7字节的选项 NO-OP NO-OP 一个11字节的选项
一个8字节的选项 用来对齐一个选项的开始 用来对齐下一个选项 第七讲 IP协议
26
选项结束选项 格式 作用:标识选项字段的结束 Code:0 选项 END-OP 数据 ~ ~ 第七讲 IP协议
27
记录路由选项 格式 … Code:1 Code:7 00000111 Length (Total length) Pointer
(NO-OP) Code:7 Length (Total length) Pointer First IP address (Empty when started) Second IP address (Empty when started) … Last IP address (Empty when started) 第七讲 IP协议
28
作用 记录处理IP分组的路由器 7 15 16 12 8 4 第七讲 IP协议
29
严格源路由选项 格式 … Code:1 Code:137 10001001 Length (Total length) Pointer
(NO-OP) Code:137 Length (Total length) Pointer First IP address (Filled when started) Second IP address (Filled when started) … Last IP address (Filled when started) 第七讲 IP协议
30
作用 严格按给定的IP地址逐跳转发,中间不允许经过其它IP地址 67.0.0.0 140.10.0.0 200.14.7.0
137 15 12 4 16 8 第七讲 IP协议
31
松散源路由选项 格式 作用 依次通过给定的IP地址,中间可经过其它IP地址 … Code:131 10000011 Length
(Total length) Pointer First IP address (Filled when started) Second IP address (Filled when started) … Last IP address (Filled when started) 第七讲 IP协议
32
时间戳选项 格式 作用 … 0 = 忽略IP , 仅记录时间 1 = 记录IP和时间 3 = 发方指定IP,
Code:68 Length (Total length) Pointer Overflow 4 bits Flags 4 bits First IP address First timestamp … Last IP address Last timestamp 第七讲 IP协议
33
选项的分片控制 哪些选项会复制到所有分片中?哪些只在第一个分片中出现?为什么? 哪些选项用于数据报控制?哪些选项用于调试管理?
No operation End of option Record route Strict source route Loose source route Timestamp No copy Control No copy Control No copy Control Copy Control Copy Control No copy Debug 第七讲 IP协议
34
7.4 小结 IP协议 IP分组格式 IP分组处理 不可靠、无连接、数据报交付协议 数据报:首部 + 数据 首部:各字段的含义、作用、取值
7.4 小结 IP协议 不可靠、无连接、数据报交付协议 IP分组格式 数据报:首部 + 数据 首部:各字段的含义、作用、取值 (长度、TTL、协议、片标志、片偏移、校验和) 封装:直接封装在数据帧中 IP分组处理 TTL、校验和计算、分片和重组、选项处理 第七讲 IP协议
Similar presentations