TCP/P应用层 TeP协议组不仅包括第3层和第4层的规范(如IP和TCP),也包括一些普通应用规范, 即应用层规范,其中某些应用也能在网络设备如路由器和交换机上实现 TCP/IP协议栈 文件传输 TFTP FTP NFS 应用层 电子邮件 SMTP 远程登录 传输层 Telnet rl ogIn 网络层 网络管理 SNMP 域名管理 网络接口层 -DNS
TCP协议组不仅包括第3层和第4层的规范(如IP和TCP),也包括一些普通应用规范, 即应用层规范,其中某些应用也能在网络设备如路由器和交换机上实现 TCP/IP协议栈 应用层 网络接口层 网络层 传输层 TCP/IP应用层 文件传输 —TFTP — FTP — NFS 电子邮件 —SMTP 远程登录 — Telnet — rlogin 网络管理 —SNMP 域名管理 — DNS
TCPP传输层 TCP/IP协议栈 主要功能 —流量控制:由滑动窗口实现流量控制 —确保通信可靠:由序号和确认实现可靠性 应用层 TCP 传输层 UDP 网络层 两种协议 网络接口层 TCP Transmission Control Protocol) 面向连接的可靠传输协议,为用户 应用端之间提供一个虚拟电路 UDP:( User Datagram Protocol) 无连接的非可靠传输协议
TCP/IP传输层 TCP/IP协议栈 应用层 网络接口层 网络层 传输层 TCP UDP 主要功能: —流量控制:由滑动窗口实现流量控制 —确保通信可靠:由序号和确认实现可靠性 两种协议: —TCP :( Transmission Control Protocol) 面向连接的可靠传输协议,为用户 应用端之间提供一个虚拟电路。 — UDP :( User Datagram Protocol) 无连接的非可靠传输协议
TCP报文格式 TCP报文格式定义了12个字段: 比特数1616 32 6 源端口目端口序列号确认号报文长度保留编码偷 16 16 16 0-32 窗口校验和紧急指针选项 数据 源端口( Source port):呼叫端端口号 目端口( Destination Port):被叫端端口号 序列号(Seqμ uence Number):分配给报文的序号,用于跟踪报文通信顺序确保无丢失 确认号( Acknowledgement Number):所期待的下一个TCP报文的序列号,并表示 对此序列前报文正确接收的确认 报头长度(HEN):报文头部的字节数 保留域( Reserved):设置为0 编码位( Code bits):控制功能(如TCP连接的建立和终止) 窗口( Window):发送者愿意接收的字节数 校验和( Checksum):报头和数据字段的校验和 紧急指针( Urgent Pointer):指示紧急数据段的末尾 选项( Option):当前定义TCP段的最大值 数据(Data):上层协议数据
TCP报文格式 TCP报文格式定义了12个字段: 源端口 目端口 序列号 确认号 报文长度 保留 编码位 比特数 16 16 32 32 4 6 6 窗口 校验和 紧急指针 选项 数据 16 16 16 0-32 — 源端口(Source Port):呼叫端端口号 — 目端口(Destination Port):被叫端端口号 — 序列号(Sequence Number):分配给报文的序号,用于跟踪报文通信顺序确保无丢失 — 确认号(Acknowledgement Number):所期待的下一个TCP报文的序列号,并表示 对此序列前报文正确接收的确认 — 报头长度(HLEN):报文头部的字节数 — 保留域(Reserved):设置为0 — 编码位(Code Bits):控制功能(如TCP连接的建立和终止) — 窗口(Window):发送者愿意接收的字节数 — 校验和(Checksum):报头和数据字段的校验和 — 紧急指针(Urgent Pointer):指示紧急数据段的末尾 — 选项(Option):当前定义TCP段的最大值 — 数据(Data):上层协议数据
TCP/UDP端口号 FTS D T S TeMNFN 应用层p1TsTM n P P P 25369)16 层间端口号 传输层 TCP UDP 端口号是TCP和UDP报文的地址 端口号描述了传输层上正在使用的上层协议 TCP和UD用端口号把数据传送到上层,端口号用来跟踪同一时间内通过网络的不同会话 端口号分配遵循RFClπ00定乂,如果会话不涉及到特殊端口号,将在特定取值范围内随机 分配一个端口号 TCP和UDP保留了一些端口,应用程序不能随便使用 端口号指定范围: *低于255的端口号用于公共应用 *255~1023的端口号被指定给各个公司 *高于1023的端口号未做规定
TCP/UDP端口号 F T P T e l n e t S M T P D N S T F T P S N M P 21 23 25 53 69 161 TCP UDP 应用层 传输层 层间端口号 — 端口号是TCP和UDP报文的地址 — 端口号描述了传输层上正在使用的上层协议 — TCP和UDP用端口号把数据传送到上层,端口号用来跟踪同一时间内通过网络的不同会话 — 端口号分配遵循RFC1700定义,如果会话不涉及到特殊端口号,将在特定取值范围内随机 分配一 个端口号 — TCP和UDP保留了一些端口,应用程序不能随便使用 — 端口号指定范围: * 低于255的端口号用于公共应用 * 255~1023的端口号被指定给各个公司 * 高于1023的端口号未做规定
TCP/UDP通信和端口号 Telnet B 目标端口号=23, 将报文发送到 Telnet应用程序 主机A 主机B中 源端口目的端口 1028 23 TCP报文目的端口号必须根据 Telnet协议的端口号确定 源端口号由源主机动态地分配起始源端口号,通常是 些高于1023的端口号
TCP/UDP通信和端口号 主机A 主机B Telnet B 目标端口号=23, 将报文发送到 Telnet应用程序 中 源端口 目的端口 1028 23 — TCP报文目的端口号必须根据Telnet 协议的端口号确定 — 源端口号由源主机动态地分配起始源端口号,通常是一 些高于1023的端口号