目录
网络通讯模型:OSI七层参考模型(OSI制定—国际公有化组织)
网络通讯模型:OSI七层参考模型(OSI制定—国际公有化组织)
应用层:—应用程序(人机交互的窗口)
接受人类传递的一些参数
表示层:
转为二进制
会话层:
建立维持和断开会话,PC和服务器之间建立的请求
传输层:
优化传输—实现端对端的传输(为了区分进程和服务)
端口号—二进制构成,16位二进制构成,65536个
0-65535,0-1023知名端口号(标定了特定的服务),著名端口号。
HTTP协议:80(不够安全)(超文本协议)
HTTPS:HTTP+SSL(HTTP改良版):443
网络层:—ip地址(依靠ip地址实现逻辑寻址)
寻址即寻找对端(目标ip或mac地址)主机
数据链路层:(介质访问控制层—MAC)逻辑访问控制层—LLC
物理寻址(依靠mac地址找到主机)
物理层:(物理原件)—处理电信号
核心:分层
分层的好处:
位于同一层的协议或者设备具备有相同或者相似的功能,
而不是层次之间的协议或者设备具有明显的差异。
1.更利于标准化
2.降低层次之间关联性
每一层都只提供自身的服务
每一层都在下层的基础上提供一些增值服务
封装和解封装:
封装—在某一层次数据之前封装上对应的功能数据,让它执行相应的功能。
应用层传输过程:
在应用层,数据翻译成网络世界所使用的语音——二进制对数据编码。
传输层传输过程:
在传输层,上层数据被分割成小的数据段,并为每个分段后的数据封装TCP报文头部。在TCP头部有一个关键的字段信息——端口号(用于标识上层的协议或应用程序,确保上层应用数据的正常通信)
网络层传输过程:
在网络层,上层数据被封装上新的报文头部——IP头部。(这里所说的上层数据包括TCP头部)
数据链路层传输过程:
在数据链路层,上层数据被封装一个MAC头部,其内部有一个关键的字段信息——MAC地址。
物理层传输过程:
无论是之前每一层封装的头部还是上层数据信息都是由二进制组成的,物理层将这些二进制数字组成的比特流转换成电信号在网络中传输。
解封装—封装的逆过程
TCP/IP模型:
上图左右两种模型都有使用
TCP/IP(最开始没有最早出现的)协议簇—一系列协议的组合
1.分的太细
TCP/IP模型
PDU—协议数据单元(PDU是指同层之间传递的数据单位)
L1PDU
L2PDU
…
L7PDU
TCP/IP对等模型:
应用层—数据报文
HTTP:80
HTTPS:443
TENET:23
传输层—数据段
TCP
UDP
不同点:
1.TCP是面向连接的协议,而UDP是无连接的一种协议(TCP会先进行询问)
2.TCP的传输是可靠的,而UDP的传输是不可靠的
TCP—排序确认重传(超时重传)流控的机制
3.TCP可以进行流控,而UDP不能(滑动窗口机制)
4.TCP可以进行分段,而UDP不能
5.TCP消耗资源会比较多,传输效率比较低,而UDP消耗资源比较小,传输效率比较高
应用场景:TCP一般运用在对数据可靠性要求比较较高,但是对于传输效率要求相对较低的情况,比如说传输文件/邮件等等。
TCP的报头:
URG:紧急指针标志位
ACK:确认标志位
PSH:紧急推送标志位
RST:
校验和:校验数据包完整性
三次握手:
ACKnuber—确认序号=本地接收到的序号+1
1、确认双方(客户端和服务端)的接受能力和发送能力是否正常
2、指定自己的初始化序列号,会可靠数据传输做准备
3、如果是 https 的话,三次握手过程还会进行数字证书的验证和加密秘钥的生成
四次挥手—数据发送结束后,正常断开连接
UDP:
UDP一般运用在对数据可靠性要求比较低,但是对于传输效率要求相对较高的情况,比如说通讯/直播等等。
IP协议
协议—指示上层使用何种协议
标识、标志、片偏移—ip的分片
MTU—最大传输单元,默认情况下规定的值
数据链路层最大不能超过1500字节
MSS—最大段长度—传输层分段后的数据大小—1460字节=MTU-ip报头-TCP报头
数据链路层—数据帧
以太网协议
类型—标识上层协议类型
FCS—帧校验序列—CRC算法
物理层—比特流
常用协议: