其他分享
首页 > 其他分享> > 互联网协议

互联网协议

作者:互联网

本文希望读者读完这篇文章,能大概了解互联网是怎么运作,有些地方不是很精确,但是应该能说明白互联网的原理

互联网的实现可以分为7层,4层,但是我更倾向于分为5层,它们自底向上分别为 物理层,链接层,网络层,传输层,应用层。

其中,应用层是用户所看到的,物理层把电脑连接起来的物理手段,作用是发送0和1的电气信号。

单是0和1的电气信号是没有什么用,它必须要有可以解读这些电气信号的东西,那么这时候就需要链接层了。链接层可以把这些一整串的0,1信号分组,这是通过以太网协议来分组,每一组称为一个帧,帧有head和data组成,head主要是说明发送方、接收方和数据类型等。

那么发送方和接收方是怎么定义的呢?他们都是01信号呀!这里有一个MAC地址,说白了就是网卡地址,每张网卡出厂的时候都会有一个独一无二的地址,这个地址会唯一地标识一台计算机。那么一张网卡是怎么知道另外一张网卡的地址呢?通过一个ARP协议。
有了这个MAC地址,系统怎么能精确将data送到接收方呢?通过广播的方式,将这个帧发送给本网络所有计算机,然后这些计算机就查看head,对比一下自己的MAC地址,判断是不是应该接受这个数据包

但是如果两台计算机是不在同一个子网的,那么就不能通过上诉的广播的方式进行发送,必须找到一种方法来解决这个问题,那就是路由
"路由"的意思,就是指如何向不同的子网络分发数据包,这是一个很大的主题,这里不会说明。

然后就催生了网络层,它的作用是引进一套新的地址,叫做网络地址,简称网址,它的作用是判断另外一台计算机的网络是否属于发送方计算机的子网,如果是子网,那就采取广播的形式,如果不是子网那就采取路由的方式。**所有每台计算机都有两者地址,一种MAC地址,一种是网址,因此我们可以知道,必定是先处理网址,再去处理MAC地址。

规定网络地址的协议叫做IP协议,它所定义的地址叫做IP地址,也就是网络地址+IP协议 = IP地址
IP地址由网络部分和主机部分,例如,192.168.146.3这个IP地址,如果前24位是网络部分,那么3(8位二进制数)就是主机部分
但是我们无法从IP地址中直接观察到,两个主机的网络部分是否相等的,我们不知道它的IP地址的前几位是网络部分,这时候我们就需要子网掩网

子网掩网:它的网络部分全是1,主机部分全是0,比如255.255.255.0就可以确定,这个IP地址的网络部分一定是前24位,它的主机部分是最后8位

由IP地址发送的数据,就叫做IP数据包,它也有head和data,head是放IP地址,IP数据包是放在以太数据包中的,所以我们要知道对方的MAC地址,还要知道对方的IP地址

一般情况下对方的IP地址是可以已知的,但是MAC地址不未知的,如果两个机子是在同一个子网中,那么,通过ARP协议,通过广播的方式对比IP地址,返回MAC地址给发送发,如果不在同一子网中,那么就要通过网关了。 有了ARP协议,才能在同一个子网中获得对方的MAC地址

数据包发过去了,那么到底是给对方的浏览器使用还是给在线聊天使用呢?这就需要传输层了,多设置一个参数,那就是端口,也就是数据包发送到对应的端口,那么对方的程序就可以在特定的端口那里获取数据包。

传输层的功能就是建立端口到端口的通信,网络层就是建立主机到主机的通信,因此unix系统把主机和端口称为socket(套接字)

那么加的这个端口是需要一个UDP协议的,也会有UDP数据包,也把它加在以太数据包中,这个协议简单,但是不可靠,于是就出现了TCP协议,它可靠,但是复杂,如果丢失了一个数据包,那么就需要重新发送

应用层就是规定应用程序的数据格式。TCP协议可以为WWW,FTP,Email等程序传输协议

标签:协议,子网,地址,MAC,互联网协议,IP地址,数据包
来源: https://blog.csdn.net/weixin_44763210/article/details/104906254