网络通讯模型
OSI七层参考模型:
应用层 -- 应用程序;接受人类传递的一些参数
表示层 -- 转为二进制
会话层 -- 建立维持断开一次会话,PC和服务器之间建立的请求
传输层 -- 优化传输,实现端对端的传输
传输层也有地址 -- 端口号 -- 二进制构成,16位二进制构成,65536个0-65535,0-1023知名端口号,著名端口号,标定了特定的服务 -- 端口号是为了区分进程和服务
HTTP:80
HTTPS:HTTP+SSL:443
网络层 -- IP地址,实现逻辑寻址
数据链路层(介质访问控制层—MAC)逻辑访问控制层LLC -- 物理寻址
物理层 -- 处理电信号
核心:分层
分层的好处:
位于同一层的协议或者设备具有相同或者相似的功能,而不同层次之间的协议或者设备具有明显的差异。
1)更利于标准化
2)降低层次之间的关联性
每一层都提供自身的服务
每一层都在下层的基础上提供一些增值服务
TCP/IP模型
两种模型的区别
TCP/IP协议簇一系列协议的组合
- 分的太细
TCP/IP模型
PDU - 协议数据单元
L1PDU
L2PDU
...
L7PDU
应用层--数据报文
HTTP:80
HTTPS:443
Telnet:23
封装和解封装
封装:达到某一层次数据之前封装上对应的功能数据,让它执行相应的功能
解封装 -- 封装的逆过程
应用层—数据报文
传输层--数据段
TCP
UDP
网络层--数据包
IP协议
数据链路层--数据帧
以太网协议
物理层--比特流
TCP
UDP
不同点:
- TCP是面向连接协议,而UDP是无连接的一种协议
三次握手
- TCP的传输是可靠的,而UDP的传输是不可靠的
TCP -- 排序确认重传流控的机制
- TCP可以进行流控,而UDP不能
- TCP可以进行分段,而UDP不能
- TCP消耗资源会比较多,传输效率比较低,而UDP消耗资源会比较小,传输效率比较高
应用场景:TCP一般应用在对数据可靠性要求比较高,但是对于传输效率要求相对较低的情况,比如说传输文件/邮件等等。
UDP一般应用在对数据可靠性要求比较低,但是对于传输效率要求相对较高的情况,比如说即时通讯、直播等等。
TCP的报头
TCP的三次握手:
ACKnuber --确认序号=本地接收到的序号+1
四次挥手
IP协议:
IP
协议 --指示上层使用何种协议
标识、标志、片偏移 --IP的分片
MTU—最大传输单元,默认情况下规定的大小
数据链路层最大不能超过1500字节
MSS—最大段长度—传输层分段后的数据大小——1460字节=MTU-IP报头-TCP报头
数据链路层—以太网协议
类型—标识上层协议类型
FCS—帧校验序列—CRC算法