OSI模型是一个分层的模型,每一个部分称为一层,每一层扮演固定的角色,互不干扰。OSI有7层,从上到下分别是:
一,每层功能
7.应用层(Application layer ):应用层功能:规定应用程序的数据格式。例:TCP协议可以为各种各样的程序传递数据,比如Email、WWW、FTP等等
通俗一点说就是为用户提供服务,给用户一个操作界面
6.表示层(Presentation layer): 为数据提供表示,加密,压缩
5.会话层(Session layer): 确定数据是否需要进行网络传递
4.传输层(Transport layer): 建立端口到端口的通信:功能↓↓↓
①对报文进行分组,和组装(对数据对拆分与组装)
② 提供传输协议的选择:
TCP(传输控制协议):可靠的,面向连接的传输协议(可靠,准确)(慢,消耗资源
A→B 发数据要询问三次 TCP发数据时三次握手,断开时四次挥手
安全:指的是数据不被窃取,不被篡改
可靠:指的是数据不丢,补充,不传丢,不传错
UDP(用户数据报协议):不可靠的,面向无连接的传输协议(快)(不可靠)
A→B A传给B不需确认对方在不在,直接发送数据。
③端口封装: 源端口 目标端口
④ 插错校验 (TCP:差错重传) (UDP:差错丢弃)
(在包头中要写入双方端口号,QQ,微信www服务等去哪里了?)
QQ微信等都是应用层的网络程序,应用层到传输层,两个包头二选一(A是客户端从上到下发到传输层一般选TCP,靠目标端口来决定你访问的目标是谁,IP能找对方服务器位置,对方身上可能打各种各样的服务器,怎么找到目标服务,靠的是目标端口,)源端口一般是1万以上的随机端口,端口范围是0-65535。
源端口:是你A电脑扫描本机,假设10001没有被占,说明就是源端口号。然后发到对方,对方返回时把端口号颠倒。
源端口是随机的,目标端口是通过客户端程序确定访问对方的服务找到的
命令:
netstat:查询网络状态(主要看本机开的那个端口,看本机的网络服务)
—an
—a —all (查询本机网络连接)
—n number (加n显示数字,不加n显示服务名www)
ESTABLISHED 意思是已经建立连接
UDP没有连接状态,是因为UDP协议是双方不建立连接的
bit流指向接收端
3.网络层(Network layer ):网络层定义了一个IP协议。
IP地址编址: 写入源IP和目标IP
路由选择
2、数据链路层( Data Link layer :数据链路层就是来对电信号来做分组的。
1、物理层 ( Physical layer :硬件,有线及无线。例如网线,中间的物理链接可以是光缆、电缆、双绞线、无线电波。中间传的是电信号,即010101...这些二进制位。
记忆口诀:
All People Seem To Need Data Processing。
从第7层到第一层,从下到上每一个的首字母刚好组成这句话。