为什么要分层? 将复杂的流程分解为单一的子过程 分层的作用:整个流程更加清晰,复杂问题简单化 ????????????更容易发现问并针对性的解决问题
1. OSI七层参考模型
OSI七层参考模型 |
---|
| 功能 | 应用层 | 网络服务与最终用户的一个接口 | 表示层 | 数据的表示、压缩与安全 | 会话层 | 建立、管理、终止会话 | 传输层 | 定义传输数据的协议的端口号,进行流量控制及差错校验 | 网络层 | 进行逻辑地址寻址,实现不同网络之间路径选择 | 数据链路层 | 建立逻辑链接,进行硬件地址寻址,差错校验 | 物理层 | 建立、维护、中断物理连接 |
应用层、表示层、会话层:面向用户 传输层:承上启下 网络层:面向硬件
2. TCP/IP参考模型
早期的TCP/IP模型是一个四层结构,从下往上依次是网络接口层、网络层、传输层和应用层。在后来的使用过程中,借鉴OSI的七层参考模型,将网络接口层划分为物理层和数据链路层,形成了一个新的五层结构。TCP/IP是一系列协议的集合,所以严格的称呼应该是TCP/IP协议簇。
2.1 OSI参考模型与TCP/IP参考模型
TCP/IP四层 | TCP/IP五层 | OSI七层 | 应用层 | 应用层 | 应用层 | 表示层 | |
会话层 | 传输层 | 传输层 | 会话层 | 网络层 | 网络层 | 网络层 | |
网络接口层 | 数据链路层 | 数据链路层 | |
物理层 | 物理层 | |
2.2 TCP/IP五层协议簇
应用层 | HTTP ?SNMP ?SMTP ? FTP? TFTP ? | 传输层 | TCP ? UDP | 网络层 | ICMP ?IGMP? IP ARP?RARP | 数据链路层 | 由底层网络定义的协议 | 物理层 |
2.2.1 应用层常用的协议及端口号及作用
| | 传输层协议端口号 | 作用 | 应用层 | HTTP(超文本传输协议): ? | TCP:80 | 用于web | SNMP(简单网络管理协议): | UDP:161、162 | 用于监控网络设备 | FTP(文件传输协议) | TCP:21 、20 | 用于上传下载文件 | TFTP(简单文件传输协议) | UDP:69 | 主要用于上传小文件,常用于路由器交换机ISO系统升级与更新 | POP3(邮局协议) | TCP:110 | 主要用于接收邮件 | IMAP4(交互式数据消息访问协议) | TCP:143 | 主要用于下载邮件 | SMTP(简单邮件传输协议) | TCP:25 | 主要用于发送邮件 | DHCP(动态配置协议) | UDP:67、68 | 用于给客户机分发IP地址 |
2.2.2 传输控制协议
TCP(传输控制协议) : 协议号6 优点三次握手、分段重传、四次断开、滑动窗口机制 可靠性高 缺点因为机制耗费大量时间
UDO(用户数据报协议):协议号17 优点 无机制保护可靠性 效率高 缺点可靠性不高
2.2.2.1 三次握手及四次断开的原理
三次握手:
客户机
服务器
1.客户端请求建立链接
2.服务器确认建立链接并请求建立链接
3.客户机确认建立链接
客户机
服务器
三次握手的作用:保证建立双向的数据通道
四次断开:
客户机
服务器
1.客户端请求断开链接
2服务器确认断开链接
2.服务器请求断开链接
3.客户机确认断开链接
客户机
服务器
三次握手握三次,为什么四次断开断四次? 数据传输方向是双向的,一个方向的数据通道关闭需要一个请求和确认因,此需要断两次。数据是双向的,因此要断4次。
|