计算机网络-网络层
一 引言
1.常见面试题
a. 介绍三次握手和四次挥手的过程?
b. HTTP的常见方法,get和post区别?
c. 请介绍浏览器从输入url到返回数据过程中发生了什么?
2. 进阶面试题
a. 为什么要有第四次挥手?只有两次握手会怎样?
网络OSI七层及各层作用
二、 网络层
1. 网络层的作用
负责在不同的网络之间(基于数据包的IP地址)尽力转发数据包,不负责丢包重传和接收顺序。
有点像送快递,一个人往另一个地方寄快递,每个快递走不同的路线,可能后发的先到了,也可能丢件了。但是网络层不管这些,只管寄快递。
2. pc4向pc3传输数据流程
PC:计算机;Hub:集线器;Switch:交换机;Router:路由
发送端(封装):
1.应用层准备要传输的数据;
2.传输层把文件进行分段并编号;(数据段)
3.网络层把传输层的每一个数据包增加 源IP地址和目标IP地址;(数据包)
4.数据链路层把每个数据加上MAC地址;(数据帧)
两种情况:
使用自己的子网掩码判断自己和目标地址分别在哪个网段(与运算),
若在同一个网段(不经过路由器),通过ARP协议广播的方式得到目标IP地址的MAC地址,然后就能封装成一个数据帧;
若不是一个网段,通过ARP协议广播的方式得到路由器(网关)的MAC地址,然后把数据通过交换机发送到路由器M2,因为M2和M3是点对点通信,没有别的主机,所以他们之间的MAC地址就是FF。
5.物理层把数据帧变成数字信号(bit流)。
接收端(解封):
1.交换机Hub0接收bit流,能对数据进行存储转发。它根据数据帧的MAC地址,确定数据是从哪来的,要去哪。
2.路由器M2获取交换机的数据包,识别其中的IP地址,根据路由表选择出口,它无法识别数据段内容。
3.路由器M2到M3是点对点通信,遵守PPP协议。
4.pc3收到bit流后,数据链路层发现MAC地址自己的,去掉MAC地址给它的网络层,网络层去掉它的IP地址给出传输层,传输层把数据给应用层,应用层把各个数据拼接起来。
3.路由器/交换机/集线器 会不会中病毒?
不会,路由器/交换机/集线器 不能识别数据内容,只负责信息的传递。但是病毒会影响网络设备,因为病毒会占用网络流量。
4.ARP协议
4.1TCP/IP协议的层次关系
IP协议:把数据包从一个网段转到另一个网段,就是用来选择路径用的。
ARP为IP服务,IP为ICMP/IGMP服务。
4.2ARP协议的作用
简单定义ARP:地址解析协议,即ARP(Address Resolution Protocol),是根据IP地址获取物理地址的一个TCP/IP协议。
1.在局域网中,PC1要想与PC2通信,PC1必须知道PC2的MAC地址!
2.所以PC1会发送一个ARP请求的广播包(去请求PC2的MAC地址)
3.这时,PC2会接收到此请求,PC2会发送给PC1一个ARP应答包(应答包中包含了PC2的MAC地址)
4.PC1收到此应答后,就会有一个ARP缓存,以后通信就会查找ARP表
应用环境:局域网
定义:知道源IP、源MAC、目的IP,求目的MAC
ARP是解决同一个局域网上的主机或路由器的IP地址和MAC地址的映射关系。如果所找的主机和原主机不在同一个局域网上,那么就要通过ARP找一个位于本局域网上的某个路由器的MAC地址,然后把分组发送给这个路由器,让这个路由器把分组转发给下一个网络。剩下的工作就由下一个网络来做。
代理ARP:
简单定义:代理ARP是一个"善意的欺骗",当电脑要跨网段访问外网设备时,网关设备用自己的MAC返回
只要主机或路由器要和本网络上的另一个已知IP地址的主机或路由器进行通信,ARP协议就会自动地将该IP地址解析为链路层所需要的MAC地址。
4.3 逆地址解析协议RARP
只知道自己MAC地址就能获得其IP地址。
5.网际控制报文协议ICMP
ICMP:在IP之上,用来测试网络层有没有故障。使用最多的命令是ping。
它是TCP/IP协议族的一个子协议,用于在IP主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。这些控制消息虽然并不传输用户数据,但是对于用户数据的传递起着重要的作用。
6.组管理协议IGMP
IGMP(Internet Group Management Protocol)互联网组管理协议是TCP/IP 协议族中负责IP组播成员管理的协议,用来在IP主机和与其直接相邻的组播路由器之间建立、维护组播组成员关系。
点到点通信:
广播:目标MAC地址全是F,目标IP地址全是255,也就是全是1.全网广播不能跨越路由器。
组播=多播:分组广播。
7.IP数据包
8.IP协议
1)网络畅通的条件
沿途路由器必须知道下一跳给谁,数据包有去有回。
8.1静态路由
需要管理员告诉路由器所有没有直连的网络下一跳给谁。适合于小规模网络,不能自动调整路由。
8.2 动态路由
(1)RIP协议
周期性广播(30s)路由表,选择路径的依据是最少的跳数,最大跳数是15跳,所以一般不适合大网络。
(2)OSPF协议
根据带宽选择路径。
9.子网掩码
能够帮助路由器判断对应主机是否在同一个网段中。
10.ABCDE类网络地址
网络地址(网络号)唯一指定了每个网络。同一网络中的每台计算机都共享相同的网络地址,并用它作为自己IP地址的一部分。ABC对应的子网掩码分别是255.0.0.0和255.255.0.0和255.255.255.0。
保留地址:
A级:10.0.0.0 - 10.255.255.255
B级:172.16.0.0 - 172.31.255.255
C级:192.168.0.0 - 192.168.255.255
除此之外还有一个特殊的IP地址:127.0.0.1,用于本机环回测试用
11.子网划分
划分子网的基本思路如下:
(1)一个拥有许多物理网络的单位,可将所属的物理网络划分为若干个子网(subnet)。划
分子网纯属--个单位内部的事情。本单位以外的网络看不见这个网络是由多少个子网组成,
因为这个单位对外仍然表现为一个网络。
(2)划分子网的方法是从网络的主机号借用若千位作为子网号(subnet-id),当然主机号
也就相应减少了同样的位数。于是两级IP地址在本单位内部就变为三级IP地址:网络号、
子网号和主机号。也可以用以下记法来表示:
IP地址:={ <网络号>, <子网号>, <主机号>}
(3)凡是从其他网络发送给本单位某台主机的IP数据报,仍然是根据IP 数据报的目的
网络号找到连接在本单位网络.上的路由器。但此路由器在收到IP数据报后,再按目的网络
号和子网号找到目的子网,把IP数据报交付目的主机。