通俗易懂的五层模型功能
-
物理层负责把两台计算机连起来,然后在计算机之间传送0,1这样的电信号。
-
数据链路层工作在物理层之上,负责给这些0,1制定传送的规则,然后另一方再按照相应的规则来进行解读。
- 以太网协议 以太网协议规定,一组电信号构成一个数据包,把这个数据包称之为“桢”。每一个桢由标头(Head)和数据(Data)两部分组成。
- MAC地址 连入网络的每一个计算机都会有网卡接口,每一个网卡都会一个地址,这个地址就叫做MAC地址。计算机之间的数据传送,就是通过MAC地址来唯一寻找、传送的。MAC地址在网卡生产是就被唯一标识了。
- ARP协议,通过它我们可以知道子网中其他计算机的MAC地址。
-
网络层
- IP协议区分MAC地址是否处于同一个子网中。IP地址被分为两部分,前面一部分代表网络部分,后面一部分代表主机部分。并且网络部分和主机部分的二进制位数是不固定的。假如两台计算机的网络部分是一模一样的,我们就说这两台计算机是处于同一个子网中。
- 子码掩码。知道了子码掩码,相当于我们知道了网络部分是几位,主机部分是几位。IP地址和子网掩码是一起的,同时产生同时销毁。
- ARP协议 ARP协议也是通过广播的形式给同一个子网中的每台电脑发送一个数据包(当然,这个数据包会包含接收方的IP地址)。对方收到这个数据包之后,会取出IP地址与自身的对比,如果相同,则把自己的MAC地址回复给对方,否则就丢弃这个数据包。这样,计算机A就能知道计算机B的MAC地址了。发送数据是通过广播的形式发送,询问对方的MAC地址也是通过广播的形式来发送,那其他计算机怎么知道你是要传送数据还是要询问MAC地址呢?其实在询问MAC地址的数据包中,在对方的MAC地址这一栏中,填的是一个特殊的MAC地址,其他计算机看到这个特殊的MAC地址之后,就能知道广播想干嘛了。
- **DNS服务器 ** 解析域名,然后返回域名对应的IP。
-
传输层
-
我们已经把数据成功从计算机A传送到计算机B了,可是,计算机B里面有各种各样的应用程序,计算机该如何知道这些数据是给谁的呢?
-
这个时候,端口(Port)这个家伙就上场了,也就是说,我们在从计算机A传数据给计算表B的时候,还得指定一个端口,以供特定的应用程序来接受处理。
-
传输层的功能就是建立端口到端口的通信。相比网络层的功能是建立主机到主机的通信。
-
有了IP和端口,我们就可以进行通信了。这个时候可能有人会说,我输入IP地址的时候并没有指定一个端口啊。其实呢,对于有些传输协议,已经有设定了一些默认端口了。例如http的传输默认端口是80,这些端口信息也会包含在数据包里的。
-
TCP服务
包括面向连接服务和可靠的数据传输服务。
面向连接的服务:在应用层数据报文开始流动前,TCP让客户和服务器互相交换运输层的控制信息。在握手阶段,一个TCP连接就在两个连通的套接字简历,双方的进程可以在次连接上同时进行报文的收发。
可靠地数据传输服务:当应用程序的一端讲字节流传进套接字是,他能够依靠TCP将相同的字节流交付给接收方的套接字,没有字节的丢失和冗杂。TCP 安全
-
UDP 服务 仅提供最小服务,UDP是无连接的,两个进程通信前没有握手的过程,提供一种不可靠的数据服务
-
-
-
应用层
-
我们收到了传输层传来的数据,可是这些传过来的数据只是一个个字节。
因此我们需要指定这些数据的格式规则,收到后才好解析成有用的数据。而应用层的功能,就是用来规定应用程序的数据格式的。
-
HTTP FTP DNS SMTP等
-
网友评论