一,OSI七层参考模型(系统互联参考模型)
思想:分层
1.更利于标准化。
2.降低层次之间的关联性—某一层协议的增加或者减少,尽量不要影响其他层次。
3.相同层次之间的设备协议具体相同或者相似的作用,不同层次之间具有明显的差异,每一层都在下层的基础上提供某种增值服务。
(1)应用层—为应用软件提供的接口,用于与其他应用软件之间的通信。
(2)表示层—把数据转化为能与接受者的系统格式兼容并适合传输的格式。
(3)会话层—负责在数据传输中设置和维护计算机网络中两台计算机之间的通信连接(也就是发现建立和维护和断开一次会话链接)。
(4)传输层—优化传输,端对端的传输。典型协议:TCP,UDP等。
区分进程和服务—端口号—16位二进制65536 0-65535
0-1023知名端口号,著名端口号,1024-65535
(5)网络层—路由器—IP地址(逻辑地址)。决定数据的传输路径选择和转发,将网络表头附加至数据段后以形成报文。典型协议:IPV4/IPV6等。
(6)数据链路层—介质访问控制层MAC,逻辑链路控制层LLC。
电信号和二进制之间的转换,MAC地址—物理地址。
(7)物理层—处理电信号。
二,TCP/IP模型和TCP/IP协议簇
TCP/IP协议模型—是靠不同种的协议完成的。
PDU协议数据单元 每层数据的单位
应用层的数据—数据报文
传输层—数据段
网络层—数据包
数据链路层—数据帧
物理层—比特流
DNS—域名解析服务 铜鼓域间解析为IP地址的服务
记录了各台服务器域名及IP地址,通过将域名发送给DNS服务器来裸去对应的IP地址
三,传输层—TCP/UDP
TCP和UDP的区别:
1.TCP是面向连接(TCP的三次握手)的协议,而UDP是无连接的协议
2.TCP的传输的可靠的传输,而UDP的传输是不可靠的。Udp 没有排序,确认,重传、流控。
3.TCP可以进行流控,而UDP不行。滑动窗口机制。
4.TCP可以进行分段,而UDP不能。
5.TCP转发数据包的速率慢,并且占用资源比较大。UDP的转发效率高于TCP,并且占用资源也会小一些。应用场景:TCP更加适用于对数据包可靠性要求较高的情况,比如说传输文件,邮件等等,而UDP适用于对可靠性要求较低,但是对转发效率要求较高的场景,比如说:即时通讯类。
注:TCP的三次握手(建立连接):第一个身份c客户端和第二种身份s服务端SYN=1则会向对方发起三次握手;SYN=0则不会向对方发起第三次握手。
(1)第一次握手:客户端会给服务端发送请求。
(2)第二次握手:服务端确定收到了客户端的请求(必须确认客户端的ACK=j+1)。
(3)第三次握手:客户端收到服务端的确认,给服务端回复(ACK=y+1)。
分析:1.如果第一次丢失则需要设定时间然后重新请求;如果第二次丢失则和第一次丢失意思大概相同则重新发送。2.如果数据包没有丢失但是网络传送时间太久了,客户端会重新发送数据包只是收到两个数据包。
四,网络层是靠源IP和目标IP来工作的。
http:80是访问网站的协议;
https:相较http更为安全,端口号为443是超文本传输安全协议;
ftp(控制:先建立连接后输入数据的端口号为21,数据端口号是20)。
五,封装和解封装
1.封装:高层向低层的一个数据加工过程,过程中书包将不断地变大。
2.解封装—封装的逆过程,可以理解为就是还原数据的过程(低层向高层的数据识别过程,过程中数据包不断减小)。