http 阮一峰_阮一峰互联网协议入门学习笔记

互联网的核心是一系列协议,它们对电脑如何连接和组网,做出了详细规定。

一、五层模型

OSI七层模型(由上至下):应用层、表示层、会话层、传输层、网络层、数据链路层、物理层

OSI五层模型(由上至下):应用层、传输层、网络层、链接层、实体层

互联网的实现,每一层都有自己的功能,每一层都靠下一层的支持。越下面的层越靠近硬件,越上面的层越靠近用户。

每一层功能的实现都依赖于相应的协议。

二、实体层

光缆、电缆、双绞线、无线电波等构成了“实体层”,它是将电脑连接起来的物理手段,规定了网络的电气特性,作用是传送0和1的电信号。

三、链接层

在实体层之上,用于确定0和1电信号的分组方式。(0和1电信号的本质是高低电平)

3.1 以太网协议

“链接层”的协议是“以太网协议”。

以太网协议规定,一组电信号构成一个数据包,叫做“帧”。

“Head”包含一些说明项:发送者、接收者、数据类型等。len=18字节

“Data”包含数据包的具体内容。46

所以,每帧的长度 64

3.2 MAC地址

以太网规定,连入网络的所有设备,都必须具有"网卡"接口。数据包必须是从一块网卡,传送到另一块网卡。网卡的地址,就是数据包的发送地址和接收地址,即MAC地址。

每个网卡都有独一无二的MAC地址。

3.3 广播

发送者网卡通过ARP协议(网络层的一种协议)获得接受者MAC地址,然后采用“广播”的形式,向本网络内所有计算机发送数据包,让每台计算机自己判断,是否为接收方。

四、网络层

链接层通过广播的方式,根据MAC地址,可以实现子网内的数据传输,但是ARP下一无法获得不同子网之间的MAC地址。

“网络层”的作用是引进一套新的地址,用于区分不同计算机是否属于同一个子网。该地址称为“网络地址”,即“网址”。

网络层的出现,计算机有了两个地址,一个是网络地址,一个是MAC地址,二者无任何关系。网址用于确定计算机所属的子网,MAC地址用于确定目标网卡。

4.1 IP协议

规定网络地址的协议,叫做IP协议。它所定义的地址,就被称为IP地址。

互联网中每台计算机都会分配到一个IP地址,IP地址分为两部分,前半部分代表子网,后半部分代表组网中的主机。

通常观察IP地址即可确定两台电脑是否属于同一子网,更准确的方式是通过“子网掩码”,方法是将两个IP地址与子网掩码分别进行与运算,如果结果相同,就表明它们在同一个子网络中,否则就不是。

根据IP协议发送的数据,就叫做IP数据包。

"Head"部分包含IP地址,“Data”部门包含数据内容。

所以,以太网数据包变成了这样:

4.2 ARP协议

传输数据包必须同时知道IP地址和MAC地址,IP地址通常是已知的,怎么知道MAC地址呢?

分为两种情况:

第一种,发送者与接收者属同一子网。ARP协议发出一个数据包,其中包含它所要查询主机的IP地址,在对方的MAC地址这一栏,填的是FF:FF:FF:FF:FF:FF,表示这是一个"广播"地址。它所在子网络的每一台主机,都会收到这个数据包,从中取出IP地址,与自身的IP地址进行比较。如果两者相同,都做出回复,向对方报告自己的MAC地址,否则就丢弃这个包。

第二种,发送者与接收者属不同子网。只能把数据包传送到两个子网络连接处的"网关"(gateway),让网关去处理。

五、传输层

"传输层"的功能,就是建立"端口到端口"的通信。相比之下,"网络层"的功能是建立"主机到主机"的通信。只要确定主机和端口,我们就能实现程序之间的交流。

5.1 UDP协议

UDP协议是建立端口到端口通信最简单的协议。

“Head”部门包含发送端口和接收端口。

“Data”部分包含具体的内容。

所以以太网数据包就是这样:

5.2 TCP协议

UDP协议简单、易实现,但可靠性差,无法确定对方是否收到数据。

TCP协议可以认为是有确认机制的UDP协议,每发出一个数据包都要求确认。如果有一个数据包遗失,就收不到确认,发送方就知道有必要重发这个数据包。

TCP数据包和UDP数据包一样,都是内嵌在IP数据包的"数据"部分。

六、应用层

"应用层"的作用,就是规定应用程序的数据格式。

常见的应用层协议有:http(超文本传输协议)、https、DNS(域名系统协议)、FTP(文件传输协议)、Telnet(远程终端协议)、SMTP(简单邮件传送协议)、POP3(邮件读取协议)

因此,最终以太网数据包如下:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值