OSI七层模型
- 模型层数
- 每个层级
-
应用层:不是指用什么样的应用程序,表示的是应用层具体是怎么样沟通的,常见的协议是http协议,按照应用层的协议只是在逻辑上将两个应用连通,实际上的连通需要物理层;
-
物理层:计算机之间的通讯实际上就是无数的0和1,也就是高低电平,是无数的0和1,用不同的媒介传输出去,可以使用电,光,电磁波等;
- 物理层,线路连接和芯片,解决了传输问题,两台设备之间的 主要就是使用PHY芯片
- CSMA/CD 技术,解决了防碰撞的问题,可以多机通信
-
数据链路层:会将比特流封装成为帧,在这一层会封装物理地址,Mac地址,这是网卡出场时候的唯一地址,然后通过二层交换机,也就是普通交换机,将数据传输到目标的Mac地址的电脑上进行通讯,同时这一层还有流量控制和差错检验的功能
- 链路层 LLC 解决怎么将要发送的信息按照一定的顺序发送过去,还有数据传输丢失了,检测重新传送,因为自动的带了CRC校验,这些都是芯片自带的功能
- Mac芯片: ① mac地址,每个设备就能区分开 ,主板将内容给Mac芯片 然后给PHY源地址 + 信息 + 目标Mac地址 ②Mac芯片中有流控制,一次只能发送一定的长度,将大的内容进行切割,每次间隔中间会有一定的空隙留给其他电脑通信说话,切割后在拼接 ③校验crc校验码,芯片自带的,不需要人为写程序,校验不对就会将数据丢掉
- 在一个网络中通信,就需要知道对方的Mac地址来区分是传输给哪台设备的,Mac地址是唯一的
- 这里就有分层的概念 PHY芯片 —物理层—比特流–高低电平 MAc芯片—链路层
-
网络层:如果只有mac地址,那么只有一个局域网,倒是可以通信,但是如果局域网太大,根本无法交流,数据量过大会导致局域网崩溃,IP地址就是为了进行寻址和路由选择,IP这样的逻辑地址就是实现端到端的基础了;
- 一个重点,Mac地址是一个物理地址,而IP是一个逻辑地址
- 地址管理和路由器是网络层的核心
- 包是网络层里数据的名称
- 路由器根据包里面的IP地址进行路由转发
-
传输层:IP地址加上Mac地址就已经可以将数据带到目标的电脑,但是却不能让数据到达指定的电脑中的特定的软件进程中,因为一个电脑可能同时运行无数个软件,数据应该给到需要的软件上
- 端口号来进行更详细的定位,端到端的基础上实现了服务进程到服务进程的通讯
- TCP/UDP
- 流量控制和错误控制
-
会话层:网站服务可以保持登陆状态,不用每次都输入账号密码,会话层还负责同步服务,记录上一状态;
-
表示层:主要就是编码方式,解码方式和加密传输甚至包括压缩传输文件
-
每一层的内容
-
客户端主机一开始并不知道默认网关的的Mac地址,没有办法封装为帧,这时候就要使用ARP协议进行广播,找到默认网关IP对应的Mac地址
DNS
-
IP地址就相当于电话号码,没有人能记住所有的IP地址,但是手机有电话簿的功能;
-
电脑客户端想要访问一个服务器,一定需要服务器的IP地址,比如访问百度的的服务器可以输入百度的服务器IP地址,但是现在没有人会记住IP地址去访问网页,而是输入百度的域名,同样可以 访问到百度的服务器,这时候没有输入百度的地址就能进行访问;
-
以上的原因就是电脑内有一个和电话本一样的文件,记录着域名对应的IP地址,这个文件就是Hosts文件,一般在— C:\Windows\System32\drivers\etc—下,当输入域名的时候,系统不知道IP地址会先到Hosts文件中查找域名对应的IP地址是什么,查到之后会去访问域名对应的IP,而不是访问对应的域名
-
Hosts文件是有限的,而域名总在不断的更新,这时候独立出来一个服务器,让这台服务器专门去存储这个世界上绝大多数的域名和IP的映射关系表
-
这里的结果就是不用去记住没有规律的IP地址而是可以记住对应的域名就可以了,这里的DNS的响应越快,就能越快的访问对应的网站
-
DNS没有绝对的好与坏,和地区以及网络供应商都有关系
-
登陆QQ是直接访问QQ的腾讯服务器,QQ内部已经配置好了对应的IP,但是网页的浏览就要进行域名的转换,需要配置合理的DNS服务器;
-
DNS劫持和污染
- 当访问DNS服务器的时候,DNS可以返回被修改过的IP地址,那么访问的网页也就不是需要的网页