网络协议分层
身为小白,需要有不断进取的心,于是开始学习swoole之路了,但是开始前。需要了解一些基础的网络协议。
让我们带着问题出发
那么电脑根据域名或者ip访问服务器到底经历了什么呢?
理解这个需要理解什么是网络协议?
网络协议总共7层,也有称之为四层或者五层,主要根据功能相似做的事理解。
以五层为例,分为应用层、传输层、网络层,链接层,实体层
1.实体层,就是把比特位转换为电信号,为链接层提供在真实介质上数据传输功能,简单的说就是网线做的事,跳过。
2.链接层,使用物理层的数据传输功能,为网络层提供点对点的数据通信服务,而实现这个功能的地址成为mac地址
3.网络层,实际就是指ip的校验和处理。简单的说就是要找到自己要找的ip,因为mac地址不具备这样的功能
4.传输层,使用端口号将网络层主机对主机的通信转换成进程对进程的通信。所以还需要端口告知这个数据包供哪个进程使用
5.应用层,主要功能是封装或解析具体应用的数据。
所谓的socket层,其实指的是程序与程序之间通信的一个中间层,属于一个资源。程序会对socket进行读写操作。而交互的程序或系统内核(Linux)也会监听sokcet信息变化而执行相应的信息传输