第三章 TCP/IP 协议栈
-
Upload
gil-levine -
Category
Documents
-
view
109 -
download
10
description
Transcript of 第三章 TCP/IP 协议栈
© 1999, Cisco Systems, Inc. 8-1
第三章TCP/IP 协议栈
第三章TCP/IP 协议栈
© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-2
本章目标本章目标
通过本章的学习,您应该掌握以下内容 :
• 掌握 TCP/IP 分层模型• 掌握三次握手过程• 理解 OSI 和 TCP/IP 模型的区别和联系
© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-3
早期的协议族全球范围
TCP/IP 介绍TCP/IP 介绍主机
Internet
TCP/IP
主机
© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-4
TCP/IP 协议族TCP/IP 协议族
7
6
5
4
3
2
5
4
3
2
应用层
表示层
会话层
传输层
网络层
数据链路层
物理层1
应用层
主机到主机层
Internet 层
1网络接入层
© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-5
应用层概述应用层概述
* 路由器使用
应用层
主机到主机层
Internet 层
文件传输- TFTP *- FTP *- NFS
E-Mail- SMTP
远程登陆- Telnet *- rlogin *
网络管理- SNMP *
名称管理- DNS*
文件传输- TFTP *- FTP *- NFS
E-Mail- SMTP
远程登陆- Telnet *- rlogin *
网络管理- SNMP *
名称管理- DNS*
网络接入层
© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-6
主机到主机层概述主机到主机层概述
Transmission ControlProtocol (TCP)
User Datagram Protocol (UDP)
Transmission ControlProtocol (TCP)
User Datagram Protocol (UDP)
应用层
主机到主机层
Internet 层
网络接入层
面向连接
非面向连接
© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-7
TCP 数据格式TCP 数据格式
Source port (16) Destination port (16)
Sequence number (32)
Headerlength (4)
Acknowledgement number (32)
Reserved (6) Code bits (6) Window (16)
Checksum (16) Urgent (16)
Options (0 or 32 if any)
Data (varies)
20Bytes
Bit 0 Bit 15 Bit 16 Bit 31
© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-8
端口号端口号
TCP
端口号
FTP
传输层
TELNET
DNS
SNMP
TFTP
SMTP
UDP
应用层
2121 2323 2525 5353 6969 161161
RIP
520520
© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-9
TCP 端口号TCP 端口号
源端口源端口 目标端口目标端口 ……
Host A
10281028 2323 ……SP DP
Host ZTelnet Z
目标端口 = 23.
© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-10
发送 SYN (seq=100 ctl=SYN)
接收 SYN
Host A Host B
TCP 三次握手TCP 三次握手
1
© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-11
发送 SYN (seq=100 ctl=SYN)
接收 SYN
发送 SYN, ACK (seq=300 ack=101 ctl=syn,ack)
Host A Host B
接收 SYN
1
2
TCP 三次握手TCP 三次握手
© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-12
发送 SYN (seq=100 ctl=SYN)
接收 SYN
发送 SYN, ACK (seq=300 ack=101 ctl=syn,ack)
建立会话(seq=101 ack=301 ctl=ack)
Host A Host B
1
2
3
接收 SYN
TCP 三次握手TCP 三次握手
TCP 连接建立
© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-13
TCP 简单确认TCP 简单确认
滑动窗口 = 1
发送方 接收方
© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-14
TCP 简单确认TCP 简单确认
滑动窗口 = 1
发送方 接收方发送 1 接收 1
© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-15
TCP 简单确认TCP 简单确认
滑动窗口 = 1
发送方 接收方发送 1 接收 1
接收 ACK 2 发送 ACK 2
© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-16
TCP 简单确认TCP 简单确认
滑动窗口 = 1
发送方 接收方发送 1 接收 1
接收 ACK 2发送 ACK 2
发送 2接收 2
© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-17
TCP 简单确认TCP 简单确认
滑动窗口 = 1
发送方 接收方发送 1 接收 1
接收 ACK 2发送 ACK 2
发送 2接收 2
接收 ACK 3发送 ACK 3
© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-18
TCP 简单确认TCP 简单确认
滑动窗口 = 1
发送方 接收方发送 1 接收 1
接收 ACK 2发送 ACK 2
发送 2接收 2
接收 ACK 3发送 ACK 3
发送 3接收 3
© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-19
滑动窗口 = 1
发送方 接收方发送 1 接收 1
接收 ACK 2发送 ACK 2
发送 2接收 2
接收 ACK 3发送 ACK 3
发送 3接收 3
接收 ACK 4 发送 ACK 4
TCP 简单确认TCP 简单确认
© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-20
TCP 顺序号和确认号TCP 顺序号和确认号
源端口源端口 目标端口目标端口 ……顺序号#
顺序号#
确认号#
确认号#
Source Dest. Seq. Ack.
1028 23 10 1
我发送 #10.
© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-21
TCP 顺序号和确认号
我已收到 #10,现在我需要 #11.
源端口源端口 目标端口目标端口 ……顺序号#
顺序号#
确认号#
确认号#
10281028 2323
Source Dest.
10101010
Seq.
11
Ack.
102810282323
Source Dest.
11111111
Seq.
11
Ack.
我发送 #10.
© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-22
TCP 顺序号和确认号TCP 顺序号和确认号
源端口源端口 目标端口目标端口 ……顺序号#
顺序号#
确认号#
确认号#
10281028 2323
Source Dest.
11111111
Seq.
22
Ack.
10281028 2323
Source Dest.
10101010
Seq.
11
Ack.
102810282323
Source Dest.
11111111
Seq.
11
Ack.
我已收到 #10,现在我需要 #11.
我发送 #10.
© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-23
TCP 顺序号和确认号TCP 顺序号和确认号
源端口源端口 目标端口目标端口 ……顺序号#
顺序号#
确认号#
确认号#
10281028 2323
Source Dest.
11111111
Seq.
22
Ack.
10281028 2323
Source Dest.
10101010
Seq.
11
Ack.
102810282323
Source Dest.
11111111
Seq.
11
Ack.
102810282323
Source Dest.
12121212
Seq.
22
Ack.
我已收到 #11,现在我需要 #12.
我发送 #11
© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-24
TCP 窗 口TCP 窗 口
发送方 接收方
© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-25
TCP 窗 口TCP 窗 口
Window size = 3Send 2
发送方 接收方Window size = 3Send 1
Window size = 3Send 3
© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-26
Window size = 3Send 2
TCP 窗 口TCP 窗 口
发送方 Window size = 3Send 1
Window size = 3Send 3
ACK 3Window size = 2 数据 3 被丢弃
接收方
© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-27
Window size = 3Send 2
TCP 窗 口TCP 窗 口
发送方 Window size = 3Send 1
Window size = 3Send 3
ACK 3Window size = 2 数据 3 被丢弃
Window size = 3Send 4
Window size = 3Send 3
接收方
© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-28
Window size = 3Send 2
TCP 窗 口TCP 窗 口
发送方 Window size = 3Send 1
Window size = 3Send 3
ACK 3Window size = 2数据 3 被丢弃
Window size = 3Send 4
Window size = 3Send 3
ACK 5Window size = 2
接收方
© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-29
没有顺序号和确认号
UDP 数据格式UDP 数据格式
Source port (16) Destination port (16)
Length (16)
Data (if any)
1Bit 0 Bit 15 Bit 16 Bit 31
Checksum (16)
8Bytes
© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-30
Internet 层概述Internet 层概述
OSI 网络层对应的是 TCP/IP 的 internet 层
Internet Protocol (IP)
Internet Control MessageProtocol (ICMP)
Address ResolutionProtocol (ARP)
Reverse AddressResolution Protocol (RARP)
Internet Protocol (IP)
Internet Control MessageProtocol (ICMP)
Address ResolutionProtocol (ARP)
Reverse AddressResolution Protocol (RARP)
应用层
主机到主机层
Internet 层
网络接入层
© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-31
IP 数据IP 数据
Version(4)
Destination IP Address (32)
Options (0 or 32 if any)
Data (varies if any)
1Bit 0 Bit 15 Bit 16 Bit 31
HeaderLength (4)
Priority & Type of Service (8) Total Length (16)
Identification (16)Flags
(3) Fragment offset (13)
Time to live (8) Protocol (8) Header checksum (16)
Source IP Address (32)
20Bytes
© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-32
决定上层协议
协议域协议域
TransportLayer
InternetLayer
TCP UDP
ProtocolNumbers
IP
176
© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-33
ICMP 协议ICMP 协议
Application
Transport
Internet
Network Access
Destination Unreachable
Echo (Ping)
Other
ICMP1
© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-34
ARP 协议ARP 协议
172.16.3.1 172.16.3.2
IP: 172.16.3.2 = ???IP: 172.16.3.2 = ???
我需要知道 176.16.3.2 的物理地址.
© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-35
ARP 协议ARP 协议
172.16.3.1 172.16.3.2
IP: 172.16.3.2 = ???IP: 172.16.3.2 = ???
我知道你的请求,这是我的物理地址
我需要知道 176.16.3.2 的物理地址.
© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-36
ARP 协议ARP 协议
172.16.3.1
IP: 172.16.3.2 Ethernet: 0800.0020.1111 IP: 172.16.3.2 Ethernet: 0800.0020.1111
172.16.3.2
IP: 172.16.3.2 = ???IP: 172.16.3.2 = ???
我知道你的请求,这是我的物理地址
我需要知道 176.16.3.2 的物理地址.
© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-37
ARP 协议ARP 协议
映射 IP Ethernet
Local ARP
172.16.3.1
IP: 172.16.3.2 Ethernet: 0800.0020.1111 IP: 172.16.3.2 Ethernet: 0800.0020.1111
172.16.3.2
IP: 172.16.3.2 = ???IP: 172.16.3.2 = ???
我知道你的请求,这是我的物理地址
我需要知道 176.16.3.2 的物理地址.
© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-38
RARP 协议RARP 协议
Ethernet: 0800.0020.1111 IP = ???Ethernet: 0800.0020.1111 IP = ???
我的地址是多少?
© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-39
RARP 协议RARP 协议
Ethernet: 0800.0020.1111 IP = ???Ethernet: 0800.0020.1111 IP = ???
我的地址是多少?
我听到了广播你的地址是 172.16.3.25.
© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-40
RARP 协议RARP 协议
Ethernet: 0800.0020.1111IP: 172.16.3.25
Ethernet: 0800.0020.1111IP: 172.16.3.25
Ethernet: 0800.0020.1111 IP = ???Ethernet: 0800.0020.1111 IP = ???
我的地址是多少?
我听到了广播你的地址是 172.16.3.25.
© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-41
RARP 协议RARP 协议
映射 Ethernet IP
Ethernet: 0800.0020.1111IP: 172.16.3.25
Ethernet: 0800.0020.1111IP: 172.16.3.25
Ethernet: 0800.0020.1111 IP = ???Ethernet: 0800.0020.1111 IP = ???
我的地址是多少?
我听到了广播你的地址是 172.16.3.25.
© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-42
本章总结本章总结
通过本章的学习,您应该掌握以下内容 :
• 掌握 TCP/IP 分层模型• 掌握三次握手过程• 理解 OSI 和 TCP/IP 模型的区别和联系
© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-43
问题回顾问题回顾
1. OSI 和 TCP/IP 层次模型的区别2. TCP/IP 的优点3. ARP 和 RARP 各用在什么场合