1七层模型
互联网的本质就是一系列的网络协议,这个协议就叫OSI协议(一系列协议)
人为的分为七层为:应用层、表示层、会话层、传输层、网络层、数据链路层、物理层
应用层:网络服务与最终用户的一个接口(用户操作)
表示层:数据的表示、安全、压缩(人的语言翻译成计算机)
会话层:建立、管理、中止会话
传输层:定义传输数据的协议端口号,以及流控和差错校验
网络层:定义逻辑地址、实现不同网络之间的寻址,理论选择转发数据的最佳路径
数据链路层:建立逻辑连接、进行硬件地址寻址、差错校验等功能(交换机 网卡)
物理层:建立、维护、断开物理连接
tips:
网络层及以下的通信为点对点通信
传输层的通信为端到端通信
2 TCP/IP协议
TCP/IP(Transmission Control Protocol/Internet Protocol,传输控制协议/网际协议)是指能够在多个不同网络间实现信息传输的协议簇。TCP/IP协议不仅仅指的是TCP 和IP两个协议,而是指一个由FTP、SMTP、TCP、UDP、IP等协议构成的协议簇, 只是因为在TCP/IP协议中TCP协议和IP协议最具代表性,所以被称为TCP/IP协议。
TCP/IP协议族的组成分层:物理层 数据链路层 网络层 传输层 应用层
3 每层对应的协议
3.1协议
应用层:
HTTP(超文本传输协议):是一个简单的请求-响应协议,现在主要的场景是web服务,就是网页的传输,默认使用tcp的80端口 http
FTP文件传输协议:FTP( File Transfer Protocol)提供交互式的访问,允许客户指明文件的类型与格式,并允许文件具有存取权限,默认使用tcp的20,21端口
TFTP简单文件传输协议:是一个小而易于实现的文件传送协议,TFTP只支持文件传输,不支持交互,没有庞大的命令集。也没有目录列表功能,以及不能对用户进行身份鉴别,默认使用udp的69端口
DNS 域名解析系统:将域名和IP地址相互映射,默认使用tcp和udp的53端口
ssh安全的远程登陆协议,默认使用tcp的22端口ssh
telnet远程登陆协议:一种字符模式的终端服务,可以使用户通过网络进入远程主机或网络设备,然后对远程主机或设备进行操作,默认使用tcp的23端口
传输层:tcp:传输控制协议 可靠协议 (安全性高,速度慢) udp:用户数据报协议 不可靠协议(安全性不高,速度快)
网络层: arp(是将IP地址转换成物理mac地址 的协议 ) icmp(ping 网络连通性检测 检测网络连通性 )
3.2端口号
4 数据封装的过程
应用层: 首先将数据分片( 不可能将整个文件直接传输过去文件过大等因素) 数据变成bit流
传输层: 接收上一层的分片数据,加入tcp头部地址 变成数据段,(传输层功能)
网络层:接收数据段加入 ip头部 变成 数据包
数据链路层: 接收数据包 加入 MAC 头部 变成 数据帧
物理层:接收数据帧,变成信号
传输层 |
接收上层数据
加入tcp或 udp头部
| 数据段 | 防火墙 | |
网络层 | 接收上层数据 加入源目ip地址 | 数据包 | 路由器 | |
数据链路层 | 接收上层数据 加入源目mac地址 | 数据帧 | 交换机 | |
物理层 | 接收上层数据
转为 bit流
| bit | 网卡 |
5 总结
5.1 七层小结
应用层、表示层、会话层为高三层,是面向用户的
网络层、数据链路层、物理层为低三层,是面向硬件的
网络层及以下的通信为点到点通信(主机与主机)
传输层的通信为端到端(端口到端口)
5.2 TCP/IP小结