Transcript 发送SYN
HL-002 TCP/IP原理和子网规划 日期: 课程目标 学习完本课程,您应该能够: 描述TCP/IP协议与OSI参考模型 描述TCP/IP协议栈各层次功能和原理 了解IPv4的不足和IPv6的基本特点 描述IP地址分类和应用 进行子网地址划分 目录 TCP/IP协议 IP的未来 子网规划 TCP/IP协议和OSI参考模型 TCP/IP协议栈具有简单的分层设计,与OSI参考模型有 清晰的对应关系。 7 应用层 TCP/IP OSI参考模型 应 用 TCP/IP 层 6 表示层 5 会话层 4 传输层 传输层 3 网络层 网络层 2 数据链路层 数据链路层 1 物理层 物理层 TCP/IP协议栈 提供应用程序网络接口 常见协议:HTTP、FTP、SMTP、DNS、 TFTP…… 建立端到端连接 常见协议:TCP、UDP 应用层 传输层 网络层 数据链路层 物理层 寻址和路由选择 常见协议:IP(ICMP、ARP/RARP) 物理介质访问 常见协议:Ethernet、PPP、HDLC、 Frame Relay、X.25…… 定义接口与线缆 二进制数据流传输 TCP/IP协议数据封装 TELNET FTP 23 20/21 SMTP 25 TCP/UDP 6/17 IP PACKETS FRAMES BITS TFTP 69 应用层协议 文件传输 FTP、TFTP 邮件服务 应用层 SMTP、POP3 网络管理 传输层 网络层 数据链路层 SNMP 远程登录 Telnet 网络服务 物理层 HTTP、DNS、WINS 传输层协议 TCP(Transmission UDP(User 应用层 传输层 网络层 数据链路层 物理层 Control Protocol) Datagram Protocol) TCP 三次握手 Host A 1 发送 SYN (seq=100 ctl=SYN) Host B 接收 SYN TCP 三次握手 Host A 1 发送 SYN (seq=100 ctl=SYN) 接收 SYN Host B 接收 SYN 2 发送 SYN, ACK (seq=300 ack=101 ctl=syn,ack) TCP 三次握手 Host A Host B 1 发送 SYN (seq=100 ctl=SYN) 接收 SYN 3 建立会话 (seq=101 ack=301 ctl=ack) 接收 SYN 2 发送 SYN, ACK (seq=300 ack=101 ctl=syn,ack) TCP 简单确认 发送方 接收方 滑动窗口 = 1 TCP 简单确认 发送方 接收方 发送 1 接收 1 滑动窗口 = 1 TCP 简单确认 发送方 接收方 发送 1 接收 1 发送 ACK 2 接收 ACK 2 滑动窗口 = 1 TCP 简单确认 发送方 接收方 发送 1 接收 1 发送 ACK 2 接收 ACK 2 发送 2 接收 2 滑动窗口 = 1 TCP 简单确认 发送方 接收方 发送 1 接收 1 发送 ACK 2 接收 ACK 2 发送 2 接收 2 发送 ACK 3 接收 ACK 3 滑动窗口 = 1 TCP 简单确认 发送方 接收方 发送 1 接收 1 发送 ACK 2 接收 ACK 2 发送 2 接收 2 发送 ACK 3 接收 ACK 3 发送 3 接收 3 滑动窗口 = 1 TCP 简单确认 发送方 接收方 发送 1 接收 1 发送 ACK 2 接收 ACK 2 发送 2 接收 2 发送 ACK 3 接收 ACK 3 发送 3 接收 3 发送 ACK 4 接收 ACK 4 滑动窗口 = 1 TCP 顺序号和确认号 源端口 目标端口 我发送 #10. Source Dest. Seq. Ack. 1028 23 10 1 顺序号 # 确认号 # … TCP 顺序号和确认号 源端口 目标端口 顺序号 # 确认号 # … 我发送 #10. 我已收到 #10, 现在我需要 #11. Source Dest. Seq. Ack. 1028 23 10 1 Source Dest. Seq. Ack. 23 1028 1 11 TCP 顺序号和确认号 源端口 目标端口 顺序号 # 确认号 # … 我发送 #10. 我已收到 #10, 现在我需要 #11. Source Dest. Seq. Ack. 1028 23 10 1 Source Dest. Seq. Ack. 23 1028 1 11 Source Dest. Seq. Ack. 1028 23 11 2 TCP 顺序号和确认号 源端口 目标端口 顺序号 # 确认号 # … 我发送 #11 我已收到 #11, 现在我需要 #12. Source Dest. Seq. Ack. 1028 23 10 1 Source Dest. Seq. Ack. 23 1028 1 11 Source Dest. Seq. Ack. 1028 23 11 2 Source Dest. Seq. Ack. 23 1028 2 12 端口号 传输层协议用端口号来标识和区分各种上层应用程序。 套接字(Socket)=IP+端口号 HTTP 80 FTP Telnet SMTP 20/21 23 25 DNS TFTP 53 69 套 接 TCP UDP 字 IP 数 据 包 SNMP 161 端口号 F T P T E L N E T S M T P D N S T F T P S N M P R I P 21 23 25 53 69 161 520 应用层 传输层 TCP UDP 端口号 如何使用TCP端口号 主机 Telnet 10.1.1.2,目的端口23 1028 23 源端口 目的端口 10.1.1.2 IP地址 服务器 IP:10.1.1.2 TCP三次握手建立连接 主机 服务器 发送SYN 接收SYN,发 送SYN,ACK 发送SYN, 建立会话 滑动窗口 需要修改窗口大小 发送数据太快了! 网络层协议 Internet Protocol (IP) Internet Control Message Protocol (ICMP) 应用层 传输层 网络层 数据链路层 物理层 Address Reverse (RARP) Resolution Protocol (ARP) Address Resolution Protocol IP报文格式 版本 报文长度 标志 标 识 符 生存时间 总 长 度 服务类型 协 议 源 IP 地 址 目 的 IP 地 址 IP 选 项 片 偏 移 报头校验和 ARP(地址解析协议) 10.0.0.2 对应的MAC: 00-E0-FC-00-00-12 IP:10.0.0.1/24 MAC:00-E0-FC-00-00-11 ARP Reply 需要10.0.0.2 的MAC地址? ARP Request IP:10.0.0.2/24 MAC:00-E0-FC-00-00-12 RARP(反向地址解析协议) 你的IP地址是10.0.0.1 无盘工作站 RARP Reply 我的IP地址是 什么? RARP Request RARP Server ICMP协议 我在 A B ICMP Echo Reply B可达吗? ICMP Echo Request 目录 TCP/IP协议 IP的未来 子网规划 IPv6引入 IPv4取得了极大的成功 Internet的快速发展同IPv4地址的短缺矛盾越来越突 出 新技术的应用对IP提出了更多的要求 IP为什么要升级 以IPv4为核心技术的Internet获得巨大成功 但IPv4地址资源紧张直接限制了IP技术应用的 进一步发展,到1996年已将80%的A类网络地 址,50%的B类地址,10%的C类地址全部分配 了,有专家估计到2010年IPv4地址将全部用完 移动和宽带技术的发展要求更多的IP地址 CIDR,VLSM,NAT,混合地址等技术只能暂 时缓解IPv4地址紧张,但无法根本解决地址问 题 IP地址短缺问题直接加速了IPv4升级的需求 IPv6主要特点 最本质的改进——几乎无限的地址空间 地址长度由32位增加到128位 其他(锦上添花): 简单——简化固定的基本报头,提高处理效率 可扩展——引入灵活的扩展报头,协议易扩展 即插即用——地址配置简化,自动配置 安全——网络层的IPSec认证与加密,端到端安全 QoS——新增流标记域 移动——Mobile IPv6 IPv6的发展历程 1992年 IETF成立了IPng工作组 1994年 IPng工作组提出下一代IP网络协议(IPv6)的 推荐版本 1995年 IPng工作组完成IPv6的协议文本 1996年 IETF发起成立全球IPv6实验床 - 6BONE 1998年 启动面向实用的IPv6教育科研网 - 6REN 1999年 完成IETF要求的协议审定和测试 1999年 成立了IPv6论坛,开始正式分配IPv6地址, IPv6的协议文本成为标准草案 2001年 多数主机操作系统支持IPv6,Windows XP, Linux,Solaris 2003年 各主流厂家基本已推出IPv6网络产品 2003年 中国启动国家下一代网络示范工程 - CNGI 浅尝IPv6地址 IPv6地址与IPv4地址表示方法有所不同 用十六进制表示,如:FE08:…. 4位一组,中间用“:”隔开,如:2001:12FC:…. 若以零开头可以省略,全零的组可用“::”表示,如: 1:2::ABCD:…. 地址前缀长度用“/xx”来表示,如:1::1/64 以下是同一个地址不同表示法的例子: 0001:0123:0000:0000:0000:ABCD:0000:0001/96 1:123:0:0:0:ABCD:0:1/96 1:123::ABCD:0:1/96 目录 TCP/IP协议 IP的未来 子网规划 IP地址介绍 IP地址唯一标识一台网络设备 IP地址以点分十进制的方式进行表示 IP地址通常分为网络位和主机位两部分 10.110.192.111 20.130.188.144 IP地址格式 点分 十进 制 二进 制 32bit 255 255 255 255 11111111 11111111 11111111 11111111 27 26 25 24 23 22 21 20 128 64 32 16 8 4 2 1 IP地址举例 192 168 100 122 11000000 10101000 01100100 01111010 IP地址分类 (保留) IP 地址分类 8 bits 8 bits 8 bits 8 bits Host Host Host Host Host Class A: Network Class B: Network Network Class C: Network Network Network Class D: 组播地址 Class E: 科研用 Host IP 地址分类 Bits: Class A: Bits: Class B: Bits: Class C: Bits: Class D: 1 8 9 0NNNNNNN 16 17 24 25 Host Host 32 Host Range (1-126) 1 8 9 10NNNNNN 16 17 Network Range (128-191) 1 8 9 110NNNNN Host 16 17 Network Range (192-223) 1 8 9 1110MMMM 24 25 Host 24 25 Network 16 17 32 32 Host 24 25 32 Multicast Group Multicast Group Multicast Group Range (224-239) 特殊IP地址 网络部分 主机部分 地址类型 网络地址 用途 代表一个网段 Any 全“0” Any 全“1” 广播地址 特定网段的所有节点 any 环回地址 环回测试 127 全“0” 全“1” 所有网络 广播地址 通常 用于指定默认路由 本网段所有节点 私有IP地址 私有IP地址: 1.A 类地址中:10.0.0.0 到10.255.255.255 2.B 类地址中:172.16.0.0 到172.31.255.255 3.C 类地址中:192.168.0.0 到 192.168.255.255 计算可用的主机地址 网络 0 0 ... ... 10101100 00010000 00000000 00000000 00000000 00000001 00000000 00000011 N 1 2 3 ... 16 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 172 主机 11111111 11111101 11111111 11111110 11111111 11111111 65534 65535 65536 2 2N-2 = 216-2 = 65534 65534 IP地址分类练习 地址 10.2.1.1 128.63.2.100 201.222.5.64 192.6.141.2 130.113.64.16 256.241.201.10 类别 网络 主机 IP地址分类练习 (答案) 地址 类别 网络 主机 10.2.1.1 A 10.0.0.0 0.2.1.1 128.63.2.100 B 128.63.0.0 0.0.2.100 201.222.5.64 C 201.222.5.0 0.0.0.64 192.6.141.2 C 192.6.141.0 0.0.0.2 130.113.64.16 B 130.113.0.0 0.0.64.16 256.241.201.10 Nonexistent 无子网编址 无子网编址是指使用自然掩码,不对网段进行细分。 比如B类网段172.16.0.0,采用255.255.0.0作 为掩码。 172.16.30.1 172.16.28.1 以 太 网 172.16.30.10 带子网编址 B类网段172.16.0.0 172.16.4.1, 255.255.255.0 以 太 网 以 太 网 172.16.8.1, 255.255.255.0 子网划分的好处 1.缩减网络流量 2.优化网络性能 3.简化管理 4.更为灵活地形成打覆盖范围的网络 子网掩码 Network IP Address 172 Host 16 0 Network Default Subnet Mask 0 Host 255 255 0 0 11111111 11111111 00000000 00000000 Subnet Host 255 0 “/16” 表示子网掩码有16位. Network 8-bit Subnet Mask 255 255 “/24”表示子网掩码有24位. 利用子网掩码划分子网 子网 网络 172.16.2.160 10101100 00010000 00000010 10100000 11111111 11111111 11111111 00000000 10101100 00010000 00000010 00000000 172 16 128 192 224 240 248 252 254 255 255.255.255.0 主机 网络号 2 扩展了8位地址的网络 0 利用子网掩码划分子网 子网 255.255.255.192 10101100 00010000 00000010 10100000 11111111 11111111 11111111 11000000 10101100 00010000 00000010 10000000 128 192 224 240 248 252 254 255 172.16.2.160 主机 128 192 224 240 248 252 254 255 网络 172 16 2 128 网络号 扩展了10位地址的网络 子网划分的核心思想 “借用”主机位来“制造”新的“网络” 划分子网方法 划分子网方法: 1.你所选择的子网掩码将会产生多少个子网?:2 的x 次方(x 代表掩码位数) 2.每个子网能有多少主机?: 2 的y 次方-2(y 代 表主机位数) 3.有效子网是?:有效子网号=256-10 进制的子 网掩码(结果叫做block size 或base number) 4.每个子网的广播地址是?:广播地址=下个子网 号-1 5.每个子网的有效主机分别是?:忽略子网内全为 0 和全为1 的地址剩下的就是有效主机地址. 最后有效1 个主机地址=下个子网号-2(即广播地 址-1) C类地址子网划分例子 网络地址192.168.10.0;子网掩码 255.255.255.192(/26) 1.子网数=2*2=4 2.主机数=2 的6 次方-2=62 3. 有效子网?:block size=256-192=64; 所以第一个子 网为192.168.10.0, 第二个为192.168.10.64,最后一 个为192.168.10.192 4.广播地址:下个子网-1.所以第一个子网的广播地址是 192.168.10.63,第二个是192.168.10.127,最后一个 是192.168.10.255 5.有效主机范围是:第一个子网的主机地址是 192.168.10.1 到192.168.10.62;第二个是 192.168.10.65 到192.168.10.126;最后一个是 192.168.10.193到192.168.10.254 B类地址子网划分例子1 例子1:网络地址:172.16.0.0;子网掩码 255.255.192.0(/18) 1.子网数=2*2=4 2.主机数=2 的14 次方-2=16382 3.有效子网?:block size=256-192=64;所以第一个 子网为172.16.0.0,第二个为172.16.64.0,最后1 个 为172.16.192.0 4.广播地址:下个子网-1.所以第一个子网的广播地址是 172.16.63.0,第二个为172.16.127.0,最后一个为 172.16.255.0 5.有效主机范围是:第一个子网的主机地址是 172.16.0.1 到172.16.62.254;第二个是 172.16.64.1 到172.16.126.254;最后一个是 172.16.192.1到172.16.254.254 十进制和二进制的转换 128 64 32 16 8 4 2 1 1 0 0 0 0 0 0 0 = 128 1 1 0 0 0 0 0 0 = 192 1 1 1 0 0 0 0 0 = 224 1 1 1 1 0 0 0 0 = 240 1 1 1 1 1 0 0 0 = 248 1 1 1 1 1 1 0 0 = 252 1 1 1 1 1 1 1 0 = 254 1 1 1 1 1 1 1 1 = 255 子网规划 201.222.5.0 255.255.255.0 201.222.5.8 255.255.255.248 201.222.5.9 255.255.255.248 201.222.5.16 255.255.255.248 201.222.5.17 255.255.255.248 201.222.5.24 255.255.255.248 201.222.5.32 255.255.255.248 201.222.5.25 255.255.255.248 201.222.5.33 255.255.255.248 B类子网规划实例 子网地址 172.16.2.0 主机地址 172.16.2.1-172.16.2.254 广播地址 172.16.2.255 IP主机地址 172.16.2.120 子网掩码 255.255.255.0 C类子网规划实例 子网地址 主机地址 广播地址 192.168.5.120 192.168.5.121-192.168.5.126 192.168.5.127 IP主机地址 192.168.5.121 255.255.255.248 子网掩码 变长子网掩码(VLSM) 变长子网掩码(Variable-Length Subnet Masks,VLSM)的出现是打破传 统的以类(class)为标准的地址划分方法, 是为了缓解IP 地址紧缺而产生的 作用:节约IP 地址空间;减少路由表大小. 注意事项:使用VLSM 时,所采用的路由 协议必须能够支持它,这些路由协议包括 RIPv2,OSPF,EIGRP 和BGP. 变长子网掩码(VLSM) 192.168.1.32/27 192.168.1.160/30 192.168.1.64/27 ISP ISP 通告 192.168.1.0 192.168.1.164/30 192.168.1.168/30 192.168.1.96/27 192.168.1.172/30 192.168.1.128/27 无类域间路由 (CIDR) CIDR的概念:忽略A、B、C类网络的规 则,定义前缀相同的一组网络为一个块, 即一条路由条目。(如:199.0.0.0/8) CIDR的优点 • 减少了网络数目,缩小了路由选择表 • 从网络流量、CPU和内存方面说,开 销更低 • 对网络进行编址时,灵活性更大 无类域间路由(CIDR) CIDR减少了路由表的规模,增加了网络的可扩展性。 198.168.1.0/24 Internet ISP 198.168.2.0/24 通告路由 198.168.0.0/16 198.168.3.0/24 CIDR计算方法 本章总结 TCP/IP协议栈与OSI参考模型比较 TCP/IP协议栈各层主要协议介绍 IP子网规划原理 IP子网规划实例