一、应用层:
域名系统--DNS
超文本传输协议--http、https
二、运输层主要使用以下两种协议
传输控制协议TCP(Transmisson Control Protocol)--提供面向连接的,可靠的数据传输服务。
用户数据协议UDP(User Datagram Protocol)--提供无连接的,尽最大努力的数据传输服务(不保证数据传输的可靠性)。
1.UDP的主要特点
a.UDP是无连接的;
b.UDP使用尽最大努力交付,即不保证可靠交付,因此主机不需要维持复杂的链接状态(这里面有许多参数);
c.UDP是面向报文的;
d.UDP没有拥塞控制,因此网络出现拥塞不会使源主机的发送速率降低(对实时应用很有用,如IP电话,实时视频会议等);
e.UDP支持一对一、一对多、多对一和多对多的交互通信;
f.UDP的首部开销小,只有8个字节,比TCP的20个字节的首部要短。
2.TCP的主要特点
a.TCP是面向连接的。(就好像打电话一样,通话前需要先拨号建立连接,通话结束后要挂机释放连接);
b.每一条TCP连接只能有两个端点,每一条TCP连接只能是点对点的(一对一);
c.TCP提供可靠交付的服务。通过TCP连接传送的数据,无差错、不丢失、不重复、并且按序到达;
d.TCP提供全双工通信。TCP允许通信双方的应用进程在任何时候都能发送数据。TCP连接的两端都设有发送缓存和接收缓存,用来临时存 放双方通信的数据;
e.面向字节流。TCP中的“流”(stream)指的是流入进程或从进程流出的字节序列。“面向字节流”的含义是:虽然应用程序和TCP的交 互是一次一个数据块(大小不等),但TCP把应用程序交下来的数据仅仅看成是一连串的无结构的字节流。
三、网络层:
a.负责为分组交换网上的不同主机提供通信服务;
b.使用IP协议,因此分组也叫IP数据报,简称数据报;
c.网络层的任务选择合适的路由router找到目的主机。
四、链路层:
数据链路层将网络层交下来的IP数据报组装程帧,在两个相邻节点间的链路上传送帧。
每一帧包括数据和必要的控制信息(如同步信息,地址信息,差错控制等)
五、物理层:
在物理层上所传送的数据单位是比特。物理层(physical layer)的作用是实现相邻计算机节点之间比特流的透明传送,
尽可能屏蔽掉具体传输介质和物理设备的差异。使其上面的数据链路层不必考虑网络的具体传输介质是什么。
“透明传送比特流”表示经实际电路传送后的比特流没有发生变化,对传送的比特流来说,这个电路好像是看不见的。
六、TCP三次握手四次挥手:
1.三次握手:客户端–发送带有SYN标志的数据包–一次握手–服务端
服务端–发送带有SYN/ACK标志的数据包–二次握手–客户端
客户端–发送带有带有ACK标志的数据包–三次握手–服务端
2.断开一个TCP链接需要四次挥手:
客户端-发送一个FIN,用来关闭客户端到服务器的数据传送
服务器-收到这个FIN,它发回一个ACK,确认序号为收到的序号加1 。和SYN一样,一个FIN将占用一个序号
服务器-关闭与客户端的连接,发送一个FIN给客户端
客户端-发回ACK报文确认,并将确认序号设置为收到序号加1
七、TCP、UDP的区别:
1.TCP:面向选择 可靠 字节流 传输慢 所需资源多 要求通信数据可靠 首部字节20-60个
TCP提供面向连接的服务。在传送数据之前必须先建立连接,数据传送结束后要释放连接。TCP不提供广播或多播服务。
TCP一般用于文件传输、发送和接收邮件、远程登录等场景。
2.UDP:无连接 不可靠 数据报文段 传输快 所需资源少 要求通信速度高 首部字节8个
UDP在传送数据之前不需要先建立连接,远地主机在收到UDP报文后,不需要给出任何确认。
虽然UDP不提供可靠交付,但在某些情况下UDP确是一种最有效的工作方式
一般用于即时通信:比如: QQ语音 QQ视频 、直播等等。
八、在浏览器中输入url地址 ->> 显示主页的过程会使用哪些协议
1.浏览器查找域名的IP地址:DNS查找过程--》浏览器缓存、路由器缓存、DNS缓存
2.浏览器向web服务器发生一个HTTP请求——》cookies会随着请求发送给服务器
3.服务器处理请求——>>请求 处理请求&它的参数、cookies 、生成一个HTML响应
4.服务器发回一个HTML响应
5.浏览器开始显示HTML
涉及的协议:1.---》DNS协议获取域名对应IP
2.TCP:与服务器建立TCP连接
3.IP:建立TCP协议时,需要发送数据,发送数据在网络层使用IP协议
4.OPSF:IP数据包在路由器之间,路由选择使用OPSF协议
5.ARP:路由器在与服务器通信时,需要将IP地址转换为MAC地址,需要使用ARP协议
6.HTTP:在TCP建立完成后,使用HTTP协议访问网页