当前位置:
文档之家› 图解TCP-IP协议(netexpert)
图解TCP-IP协议(netexpert)
描述该IP包头的总长度, 4bit;除非options中有内容, 否则所有的ip包头中必须含 最小的20字节值;最大值可 到60字节
需注意的是此值的1位标识 32bit,即4个字节值
仅仅是IP包头的长度,不含后面的数 据值部分,如后面的TCP报文长度、应 用层协议内容等
www.netexpert.cn
0
www.netexpert.cn
‹#›
详解_ fragment offset(段偏移)
Fragment offset(段偏移): 标识分片后的数据报在发送的 数据流中的位置,接收端将根 据此值进行数据流重组并发现 是否有丢失,13bit
www.netexpert.cn
‹#›
详解_ fragment offset(段偏移)
www.netexpert.cn
‹#›
详解_ source、destination address(源、目标地址)
source address(源地址): 发送该数据报的源的IP地址, 32bit
Destination address(目标地址):
该数据报发送的目标的IP地址, 32bit
www.netexpert.cn
R3
A、源向目标传递1500bytes数据
MTU=1518
B、源~R1~R2链路都支持1518,直接发送
C、R2~网络中链路为512,进行分片
D、由于网络中多路径,到R3时数据报顺序变化
1500
E、最终目标根据ID、flags、offset进行数据重组
1500
数据源
数据目标
www.netexpert.cn
注意标识号为11520 分片包 最后一个 非1480的倍数,最后一个报文
MTU=1500,包头长=20
www.netexpert.cn
‹#›
详解_ TTL(存活时间)
TTL(存活时间): 定义一个数据报在网络上被丢 弃前的最大时间;保证不能被 传递的数据报也被丢弃。数据 报经过一个网关设备(1跳)后 将此值减1。1个字节 此值可以进行修改设定,最大 不能超过255,当值减少到0时设 备就向源主机发送超时的回应。
IP包头长度+承载的数据长度 包含后面的数据值部分,如后面的 TCP报文长度、应用层协议内容等
www.netexpert.cn
‹#›
详解_标识ID
Identification(标识): 唯一的标识数据报或数据 报的流;目的主机将根据 此ID来对接收到的数据报 进行重组
www.netexpert.cn
www.netexpert.cn
‹#›
详解_ Flags(分片标志)
Flags(数据流分片标识): 根据比特位标识表明该数 据包是否是进行过数据流 分片(分段),3bit
www.netexpert.cn
‹#›
详解_ Flags(分片标志)
1 2 3
预 留 为位 固 定 1 没 有 分 段 0 可 以 分 段 1 分 段 未 完 0 最 后 一 段
数量 32 16
类别 1 2
xxxx01
1,5,9,13,…61
16
3
临时或测试
使用非连续号码,且保同TOS解释的兼容性 指派工作并未真正完成
www.netexpert.cn
‹#›
详解_ IP包总长度
Total length(IP包长度): 描述该IP包头的总长度, 16bit;
数据值=包头长度+承载的 数据长度
两种可能会造成多个包的标识ID值相同
A、环路(ID相同,包重复)
B、数据分段、偏移(后面偏移中探讨)
www.netexpert.cn
‹#›
详解_标识ID
多包相同标识ID之--环路 这是个过滤的trace file文件,交换机环路后导致网络拥塞,我们来看选中的4个包的ID
www.netexpert.cn
‹#›
详解_ DS(区分服务)
DS(区分服务): 原来称为服务类型, IETE现更改为区分服务, 允许路由器对发送方的 数据进行路由选择抉择, 8bit
www.netexpert.cn
‹#›
详解_ DS(区分服务)—tos定义
123 456 78
编码值 000 001 010 011 100
优先控制 常规、默认 次优先 立即 优先 最优先
‹#›
详解_ Flags(分片标志)
前言:数据流分片
MTU=1518
R1
ID=X Flage=001 Flage=000 offset=512 offset=0 R2offset=1024
MTU=512
网络
ID=X Flage=001 Flage=000 offset=1024 offset=512 offset=0
‹#›
详解_ Flags(分片标志)
一个完整的分片过程分解-1
注意标识号为11520 分片包 不是最后一个 第一个报文
总共大小为5608个bytes 被分片成4个包,每个长度为1480个bytes
www.netexpert.cn
‹#›
详解_ Flags(分片标志)
一个完整的分片过程分解-2
注意标识号为11520 分片包 不是最后一个 第二个报文
MTU=1500,包头长=20
www.netexpert.cn
‹#›
详解_ Flags(分片标志)
一个完整的分片过程分解-3
注意标识号为11520 分片包 不是最后一个 第三个报文
MTU=1500,包头长=20
www.netexpert.cn
‹#›
详解_ Flags(分片标志)
一个完整的分片过程分解-4
Data Link
Physical
功能:提供端到端的通讯 寻址和路由选择
Network Access
不可靠的无连接数据报协议
www.netexpert.cn
‹#›
IP包头标准格式
版本
RFC 791
IP包头长度 区分服务 总长度
标识
标志比特 可通过协议分析系统进行具体查看和排错 段偏移 TTL值
协议
123 456 78
编码值 000 001 010 011 100
优先控制 常规、默认 次优先 立即 优先 最优先
此3位为0时,前3位的解 释同TOS
暂 未 使 用
101
110 111
关键信息
网络互联控制 网络控制
网络出现拥塞或为了确保关键应用运行而进行的 数据传输路由优化
www.netexpert.cn
www.netexpert.cn
‹#›
详解_ Flags(分片标志)
前言:数据流分片 A、每个主机、网关等网络设备都有MTU(最大传输单元)指标参数
B、当主机、网关等网络设备收到数据报文后将同自己、链路支持的MTU进行计算
1、当准备传输的数据报文小于自己和所在链路支持的MTU值时将立即转发报文
2、当准备传输的数据报文大于自己支持的MTU值时:
‹#›
详解_标识ID
附:案例分析分享--环路诊断 1、出现网络环路时,往往会造成部分区域或整个网络拥塞,网络缓慢或中断 2、极短的时间内产生大量的报文(视网络应用规模大小来判断)
数据报持续捕获时间:6.391秒
持续捕获期间捕获的报文总数
平均每秒中产生的网络流量 平均每秒中产生的报文:3891个 捕获环境中产生的广播数量在故障 排除时也是重要参数之一
其他的包分布的情况视网络应用环境来参考判断
‹#›
www.netexpert.cn
详解_标识ID
附:案例分析分享--环路诊断 3、环路中数据报文反复传递,因此基本上相同内容的报文标识ID相同(数据未分片) 可设置基于标识ID的过滤器,快速分析诊断,查看具备标识ID相同的报文是否正常
短时间内产生大量 的字节数相同的数 据报文
一、IP包头 二、ICMP 三、ARP 四、RARP 五、BOOTP 六、DHCP 七、RIP 八、OSPF 九、IGRP 十、EIGRP
www.netexpert.cn
‹#›
一、IP包头
▪ 1、IP协议简介 ▪ 2、IP包头标准格式 ▪ 3、IP包头详解
• • • • • • • • 版本 IP包头长度 区分服务 总长度 标识 标志比特 段偏移 TTL值 • • • • • • 协议 头校验和 源地址 目标地址 可选项 填充
‹#›
详解_ DS(区分服务)—区分服务定义
123 456 78 暂 未 使 用 指派机构 internet 本地
此3位为非0时,结合前三位将组成64 种服务,这些服务是基于internet网络 或本地管理机构指派的优先级
码点 xxxxx0 xxxx11
号码 0,2,4,6,…,62 3,7,11,15,…,63
‹#›
详解_标识ID
我们选取一个trace文件中的连续3个客户端对服务器数据包(5、7、9)
一般情况下,一个数据流{(源ip+源端口)+(目标ip+目标端口)}的一方的ID是连 续的,接收者通过此ID可将数据报按顺序进行合并解析
www.netexpert.cn
‹#›
详解_标识ID
一般而言每个包的标识ID值不同
如果设备不支持分片,将直接向源发出目标不可达;
如果设备支持分片,将数据报文分割成截至可接收的小报文
最终目的地主机将根据接收到的报文中的标识、标志、段偏移数值进行数据重组
注:数据分片可由源主机、途径的设备来进行,可进行更小的分段,但是重组只能由最终目标完成 数据分片影响设备的处理性能
www.netexpert.cn
www.netexpert.cn
‹#›
IP 协议简介
OSI 参考模型
TCP/IP协议栈
传输层
Application Presentation
TCP
ICMP IGMP
UDP
OSPF
Application
Session
Transport Network
网络层 IP包头 承载上层数据
Transport Internet
未分片时 此值为0,标识就此一个包 分片时
第一个报文赋值为0; 表示该报文为数据流分片中的的第一个报文; 其数据报总长度=该链路上的MTU值 第二个报文赋值=链路上的MTU值-包头长20; 表示该报文在首个报文后面,第二个报文; 其数据报总长度=该链路上的MTU值 第n个报文赋值=链路上的MTU值-包头长20×(n-1); 表示该报文在分片中的位置为n; 其数据报总长度=该链路上的MTU值 根据flags的第三个bit位确定为最后一个分片流中的报文 Fragment offset赋值如上面计算公式 报文总长度=数据流总长度-fragment offset值
传输层
TCP
UDP IGMP OSPF
ICMP 网络层 IP包头
承载上层数据
www.netexpert.cn
‹#›
详解_ protocol(协议类型)
www.netexpert.cn
‹#›
详解_ protocol(头检验和)
Header checksum(头检验和): 进行简单的校验和来验证IP头的 完整性,保证源和目标之间进 行传输过程中没有出现差错 2字节; 不对所传递的数据进行校验; 传输的过程中IP头中的部分字段 会发生变化(TTL); 有错误时将丢弃该报文且不发 信息给源主机,依靠高层协议 来检测数据报的丢失和恢复。
www.netexpert.cn
‹#›
详解_ TTL(存活时间)
设置的值为52
从我这里到论坛服 务器14跳
www.netexpert.cn
‹#›
详解_ protocol(协议类型)
protocol(协议类型): 表明该数据包上层协议类型: ICMP:1 IGMP:2 TCP:6 UDP:17 OSPF:89 ……
头校验和 源地址 目标地址 可选项 填充
www.netexpert.cn
‹#›
详解_版本
Version(版本): 描述该IP包采用何种版 本,IPV4 OR IPV6,固定 长度4bit,现多为4,是 现在绝大多数的IP版本
www.netexpert.cn
‹#›
详解_ IP包头长度
IHL(IP包头长度):
0
1
0
1
0 正 常 可 靠 性
1 高 可 靠 性
0
1
正 低 常 延 延 时 时
正 常 吞 吐 量
高 吞 吐 量
正 低 常 开 开 销 销
暂 未 使 用
101
110 111
关键信息
网络互联控制 网络控制
网络出现拥塞或为了确保关键应用运行而进行的 数据传输路由优化
www.netexpert.cn
‹#›
详解_ DS(区分服务)—区分服务定义
图示TCP/IP协议__IP包头
fishyxq@netexpert.cn
பைடு நூலகம்
www.netexpert.cn
‹#›
目
▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪
录
▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ 十一、TCP包头 十二、UDP包头 十三、TELNET 十四、FTP 十五、SMTP 十六、DNS 十七、HTTP 十八、TFTP 十九、SNMP 二十、SMB消息块