7.应用层 为应用程序提供网络服务:
用户app里面的数据,图片,声音,文字
6.表示层 数据格式化,加密,解密:
对app数据进行加密,就是相当于独创一套编码方式,只有自己人才知道解码方式,则可以实现数据加密
我们看到的,听到的,都是用计算机的编码来表示
用bmp,jpeg编码来表示图片数据
用wav或mp3编码来表示声音数据
用wmv或avi编码,来表示视频数据
5.会话层 建立,维护,管理会话连接:
两个app之间的会话,是否可以对接
4.传输层 建立,维护,管理端到端连接:
两个端之间建立tcp、udp连接,对数据完整性要求高使用tcp,保障数据传输的完整性 ,但是成本比udp高,速度慢,语音视频这类实时采集的数据,没有文件完整性一说,而是采集多少就传输 多少,就用udp
3.网络层 ip寻址和路由选择
路由技术是网络工程师核心技术之一,直接影响到各个互联网app的应用体验
使用的协议统一,网络层基于IP地址进行路由转发
2.数据链路层 控制网络层和物理层之间的通信
数据链路层协议由很多种协议,解决各端链路之间的协议标准
每台路由器之间的链路使用的协议都有可能不一样,比如说以太网协议(适合广播型协议),帧中继协议,ppp协议(适用于点到点),802.11协议(适合无线网络),为了让整个网络的性能更加强大,可以在不同的链路段使用不同的协议
1.物理层 比特流传输
TCP/UDP 区别: TCP,UDP 都处于传输层 TCP连接保证数据传输的完整性,UDP连接用于实时传输 如视频直播 连接与未连接
http/https : https = http + ssl 加密传输 。http 80端口 https 443端口
四次挥手:
客户端向服务端发出fin包关闭连接请求并进入终止等待1状态 --第一次挥手
服务端发送ack包 进入关闭等待状态 客户端进入终止等待2状态 --第二次挥手
------此时客户端向服务端发送未发送完的数据
服务端在接受完数据向客户端发送fin包,进入最后确认状态 --第三次挥手
客户端收到fin包,向服务端发送ack包,进入超时等待状态,之后关闭连接。服务端在接受到ack包后立即关闭连接。--第四次挥手
其实二次握手就可以建立链接,三次握手是为了防止丢包的链接被服务端等待(syn~ask~ask)
四次挥手是因为服务端有未发送完的数据。所以需要服务端连续发两次。同时客户端最后的等待也是为了确保服务端收到ASK请求fin~ask~fin~ask
如果过了等待时间则认为服务端已经关闭(没有关闭的话会有ASK)