计算机网络-网络层和传输层
网络层概述
- 面向连接的服务,即虚电路(virtual circuit)
- TCP/IP采用数据报服务,无连接的服务,因为网络层是整个互联网的核心,因此应当让网络层尽可能简单。网络层向上只提供简单灵活的、无连接的、尽最大努力交互的数据报服务。
- 与 IP 协议配套使用的还有四个 协议: – 地址解析协议ARP (Address Resolution Protocol):ARP 实现由 IP 地址得到 MAC 地址。 – 逆地址解析协议RARP (Reverse Address Resolution Protocol) – 网际控制报文协议ICMP:ICMP 报文分为差错报告报文和询问报文 (Internet Control Message Protocol) – 网际组管理协议IGMP (Internet Group Management Protocol)
- IP 数据报格式
- IP 地址编址方式
- 分类:IP 地址 ::= {< 网络号 >, < 主机号 >}
- 子网划分:IP 地址 ::= {< 网络号 >, < 子网号 >, < 主机号 >}
- 无分类:IP 地址 ::= {< 网络前缀号 >, < 主机号 >}
路由算法及协议
- 路由器从功能上可以划分为:路由选择和分组转发。
- 路由器分组转发流程
- 路由选择协议
- 自治系统内部的路由选择:RIP 和 OSPF
- 自治系统间的路由选择:BGP
- VPN
- NAT
传输层
传输层 vs. 网络层 – 网络层实现主机之间的逻辑通信 – 传输层实现应用进程之间的逻辑通信 • 真正的端到端通信 • 复用(multiplexing)和解分(demultiplexing)
传输层主要协议 – TCP 协议:可靠传输协议:传输控制协议 TCP(Transmission Control Protocol)是面向连接的,提供可靠交付,有流量控制,拥塞控制,提供全双工通信,面向字节流(把应用层传下来的报文看成字节流,把字节流组织成大小不等的数据块),每一条 TCP 连接只能是点对点的(一对一)。 – UDP协议:不可靠传输协议:用户数据报协议 UDP(User Datagram Protocol)是无连接的,尽最大可能交付,没有拥塞控制,面向报文(对于应用程序传下来的报文不合并也不拆分,只是添加 UDP 首部),支持一对一、一对多、多对一和多对多的交互通信。
传输层向它上面的应用层提供通信服务 – 实现可靠传输:差错控制、顺序控制、拥塞控制等
- TCP 的三次握手
- TCP 的四次挥手
- TCP 使用超时重传来实现可靠传输
- TCP 滑动窗口
- TCP 流量控制
- TCP 拥塞控制:TCP 主要通过四个算法来进行拥塞控制:慢开始、拥塞避免、快重传、快恢复。