第三章 TCP/IP 协议栈

43
© 1999, Cisco Systems, Inc. 8-1 第第第 TCP/IP 第第第

description

第三章 TCP/IP 协议栈. 本章目标. 通过本章的学习,您应该掌握以下内容 : 掌握 TCP/IP 分层模型 掌握三次握手过程 理解 OSI 和 TCP/IP 模型的区别和联系. TCP/IP 介绍. 主机. 主机. Internet. TCP/IP. 早期的协议族 全球范围. TCP/IP 协议族. 7. 5. 6. 应用层. 5. 应用层. 表示层. 4. 4. 会话层. 3. 3. 主机到主机层. 传输层. 2. 2. Internet 层. 网络层. 1. 1. 数据链路层. 网络接入层. 物理层. - PowerPoint PPT Presentation

Transcript of 第三章 TCP/IP 协议栈

Page 1: 第三章 TCP/IP 协议栈

© 1999, Cisco Systems, Inc. 8-1

第三章TCP/IP 协议栈

第三章TCP/IP 协议栈

Page 2: 第三章 TCP/IP 协议栈

© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-2

本章目标本章目标

通过本章的学习,您应该掌握以下内容 :

• 掌握 TCP/IP 分层模型• 掌握三次握手过程• 理解 OSI 和 TCP/IP 模型的区别和联系

Page 3: 第三章 TCP/IP 协议栈

© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-3

早期的协议族全球范围

TCP/IP 介绍TCP/IP 介绍主机

Internet

TCP/IP

主机

Page 4: 第三章 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网络接入层

Page 5: 第三章 TCP/IP 协议栈

© 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*

网络接入层

Page 6: 第三章 TCP/IP 协议栈

© 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 层

网络接入层

面向连接

非面向连接

Page 7: 第三章 TCP/IP 协议栈

© 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

Page 8: 第三章 TCP/IP 协议栈

© 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

Page 9: 第三章 TCP/IP 协议栈

© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-9

TCP 端口号TCP 端口号

源端口源端口 目标端口目标端口 ……

Host A

10281028 2323 ……SP DP

Host ZTelnet Z

目标端口 = 23.

Page 10: 第三章 TCP/IP 协议栈

© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-10

发送 SYN (seq=100 ctl=SYN)

接收 SYN

Host A Host B

TCP 三次握手TCP 三次握手

1

Page 11: 第三章 TCP/IP 协议栈

© 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 三次握手

Page 12: 第三章 TCP/IP 协议栈

© 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 连接建立

Page 13: 第三章 TCP/IP 协议栈

© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-13

TCP 简单确认TCP 简单确认

滑动窗口 = 1

发送方 接收方

Page 14: 第三章 TCP/IP 协议栈

© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-14

TCP 简单确认TCP 简单确认

滑动窗口 = 1

发送方 接收方发送 1 接收 1

Page 15: 第三章 TCP/IP 协议栈

© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-15

TCP 简单确认TCP 简单确认

滑动窗口 = 1

发送方 接收方发送 1 接收 1

接收 ACK 2 发送 ACK 2

Page 16: 第三章 TCP/IP 协议栈

© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-16

TCP 简单确认TCP 简单确认

滑动窗口 = 1

发送方 接收方发送 1 接收 1

接收 ACK 2发送 ACK 2

发送 2接收 2

Page 17: 第三章 TCP/IP 协议栈

© 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

Page 18: 第三章 TCP/IP 协议栈

© 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

Page 19: 第三章 TCP/IP 协议栈

© 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 简单确认

Page 20: 第三章 TCP/IP 协议栈

© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-20

TCP 顺序号和确认号TCP 顺序号和确认号

源端口源端口 目标端口目标端口 ……顺序号#

顺序号#

确认号#

确认号#

Source Dest. Seq. Ack.

1028 23 10 1

我发送 #10.

Page 21: 第三章 TCP/IP 协议栈

© 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.

Page 22: 第三章 TCP/IP 协议栈

© 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.

Page 23: 第三章 TCP/IP 协议栈

© 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

Page 24: 第三章 TCP/IP 协议栈

© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-24

TCP 窗 口TCP 窗 口

发送方 接收方

Page 25: 第三章 TCP/IP 协议栈

© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-25

TCP 窗 口TCP 窗 口

Window size = 3Send 2

发送方 接收方Window size = 3Send 1

Window size = 3Send 3

Page 26: 第三章 TCP/IP 协议栈

© 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 被丢弃

接收方

Page 27: 第三章 TCP/IP 协议栈

© 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

接收方

Page 28: 第三章 TCP/IP 协议栈

© 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

接收方

Page 29: 第三章 TCP/IP 协议栈

© 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

Page 30: 第三章 TCP/IP 协议栈

© 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 层

网络接入层

Page 31: 第三章 TCP/IP 协议栈

© 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

Page 32: 第三章 TCP/IP 协议栈

© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-32

决定上层协议

协议域协议域

TransportLayer

InternetLayer

TCP UDP

ProtocolNumbers

IP

176

Page 33: 第三章 TCP/IP 协议栈

© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-33

ICMP 协议ICMP 协议

Application

Transport

Internet

Network Access

Destination Unreachable

Echo (Ping)

Other

ICMP1

Page 34: 第三章 TCP/IP 协议栈

© 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 的物理地址.

Page 35: 第三章 TCP/IP 协议栈

© 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 的物理地址.

Page 36: 第三章 TCP/IP 协议栈

© 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 的物理地址.

Page 37: 第三章 TCP/IP 协议栈

© 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 的物理地址.

Page 38: 第三章 TCP/IP 协议栈

© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-38

RARP 协议RARP 协议

Ethernet: 0800.0020.1111 IP = ???Ethernet: 0800.0020.1111 IP = ???

我的地址是多少?

Page 39: 第三章 TCP/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.

Page 40: 第三章 TCP/IP 协议栈

© 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.

Page 41: 第三章 TCP/IP 协议栈

© 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.

Page 42: 第三章 TCP/IP 协议栈

© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-42

本章总结本章总结

通过本章的学习,您应该掌握以下内容 :

• 掌握 TCP/IP 分层模型• 掌握三次握手过程• 理解 OSI 和 TCP/IP 模型的区别和联系

Page 43: 第三章 TCP/IP 协议栈

© 1999, Cisco Systems, Inc. www.cisco.com ICND—8-43

问题回顾问题回顾

1. OSI 和 TCP/IP 层次模型的区别2. TCP/IP 的优点3. ARP 和 RARP 各用在什么场合