Skip to content

Commit

Permalink
修改
Browse files Browse the repository at this point in the history
  • Loading branch information
arkingc committed Jun 28, 2018
1 parent 3e29890 commit c0b015a
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 12 deletions.
13 changes: 8 additions & 5 deletions interview/网络.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
* 12)[在浏览器中输入URL后执行的全部过程](https://github.com/CyC2018/Interview-Notebook/blob/master/notes/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C.md#web-%E9%A1%B5%E9%9D%A2%E8%AF%B7%E6%B1%82%E8%BF%87%E7%A8%8B)(DHCP获取主机和网关路由IP,ARP解析网关路由MAC地址,DNS解析域名,TCP连接,HTTP请求响应)
* 13)[URL](https://github.com/CyC2018/Interview-Notebook/blob/master/notes/HTTP.md#url)包括哪些部分?(协议、服务器名称、文件路径、还可能带有参数)
* 14)http[请求](https://github.com/arkingc/note/blob/master/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C.md#1http%E6%8A%A5%E6%96%87%E6%A0%BC%E5%BC%8F%E8%AF%B7%E6%B1%82%E6%8A%A5%E6%96%87)/[响应报文](https://github.com/arkingc/note/blob/master/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C.md#2http%E6%8A%A5%E6%96%87%E6%A0%BC%E5%BC%8F%E5%93%8D%E5%BA%94%E6%8A%A5%E6%96%87)构成
* 15)[DNS解析主机名的过程?]()
* **2.运输层**
* 1)[一个机器能够使用的端口号上限是多少,为什么?可以改变吗?那如果想要用的端口超过这个限制怎么办?](https://www.cnblogs.com/solohac/p/4154180.html)
* 2)[TCP](https://github.com/arkingc/note/blob/master/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C.md#5tcp)[UDP](https://github.com/arkingc/note/blob/master/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C.md#3udp)的区别(什么时候用TCP,什么时候用UDP、首部?)
Expand All @@ -35,11 +36,13 @@
* 1)[路由协议所使用的算法](https://github.com/arkingc/note/blob/master/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C.md#31-%E5%85%A8%E5%B1%80%E9%80%89%E8%B7%AF%E7%AE%97%E6%B3%95ls%E7%AE%97%E6%B3%95)
* 2)对路由协议的了解,[内部网关协议IGP包括RIP,OSPF,和外部网关协议EGP和BGP](https://github.com/arkingc/note/blob/master/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C.md#31-%E5%85%A8%E5%B1%80%E9%80%89%E8%B7%AF%E7%AE%97%E6%B3%95ls%E7%AE%97%E6%B3%95)
* 3)[网络层分片的原因与具体实现](https://github.com/arkingc/note/blob/master/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C.md#43-ip%E6%95%B0%E6%8D%AE%E6%8A%A5%E5%88%86%E7%89%87)(标识、标志、比特片偏移,分片、重组)
* 4)介绍一下ping的过程,分别用到了哪些协议(ping 域名、ping ip、DNS,ARP,ICMP回显,ICMP回显应答)
* 5)[TraceRoute实现原理](https://github.com/arkingc/note/blob/master/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C.md#47-icmp%E4%BA%92%E8%81%94%E7%BD%91%E6%8E%A7%E5%88%B6%E6%8A%A5%E6%96%87%E5%8D%8F%E8%AE%AE)
* 6)[NAT过程?](https://github.com/arkingc/note/blob/master/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C.md#46-nat%E7%BD%91%E7%BB%9C%E5%9C%B0%E5%9D%80%E8%BD%AC%E6%8D%A2)
* 7)一个ip配置多个域名,靠什么识别?
* 8)[为什么选择在网络层分片](https://www.zhihu.com/question/22181709)
* 4)[ICMP?](https://github.com/arkingc/note/blob/master/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C.md#47-icmp%E4%BA%92%E8%81%94%E7%BD%91%E6%8E%A7%E5%88%B6%E6%8A%A5%E6%96%87%E5%8D%8F%E8%AE%AE)
* 5)介绍一下ping的过程,分别用到了哪些协议(ping 域名、ping ip、DNS,ARP,ICMP回显,ICMP回显应答)
* 6)[TraceRoute实现原理](https://github.com/arkingc/note/blob/master/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C.md#47-icmp%E4%BA%92%E8%81%94%E7%BD%91%E6%8E%A7%E5%88%B6%E6%8A%A5%E6%96%87%E5%8D%8F%E8%AE%AE)
* 7)[DHCP?](https://github.com/arkingc/note/blob/master/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C.md#45-dhcp%E5%8A%A8%E6%80%81%E4%B8%BB%E6%9C%BA%E9%85%8D%E7%BD%AE%E5%8D%8F%E8%AE%AE)
* 8)[NAT过程?](https://github.com/arkingc/note/blob/master/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C.md#46-nat%E7%BD%91%E7%BB%9C%E5%9C%B0%E5%9D%80%E8%BD%AC%E6%8D%A2)
* 9)一个ip配置多个域名,靠什么识别?
* 10)[为什么选择在网络层分片](https://www.zhihu.com/question/22181709)
* **4.链路层**
- 1)[多路访问协议](https://github.com/arkingc/note/blob/master/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C.md#22-%E5%A4%9A%E8%B7%AF%E8%AE%BF%E9%97%AE%E5%8D%8F%E8%AE%AE)
- 2)[MAC地址](https://github.com/arkingc/note/blob/master/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C.md#31-mac%E5%9C%B0%E5%9D%80)
Expand Down
12 changes: 5 additions & 7 deletions 计算机网络/计算机网络.md
Original file line number Diff line number Diff line change
Expand Up @@ -849,8 +849,7 @@ DV使用公式:dx(y) = minv{c(x,v)+dv(y)} 更新x到y的距离(dx(y)是从x
### 4.3 IP数据报分片

一个链路层帧能承载的最大数据量叫做**最大传输单元(MTU)(以太网可承载不超过1500字节的数据)**,因为每个IP数据报封装在链路层帧中,再从一台路由器运输到下一台路由器,故链路层协议MTU严格地限制着IP数据报的长度。发送方与目的地路径上的**每段链路可能使用不同的链路层协议****每种协议**可能具有不同的MTU,如果转发表查找决定的出链路的MTU比该IP数据报的长度小,则需要对IP数据报进行分片
片在到达目的地运输层以前需要被组装,如果一个或多个片没有到达目的地,则该不完整的数据报被丢弃
一个链路层帧能承载的最大数据量叫做**最大传输单元(MTU)(以太网可承载不超过1500字节的数据)**,因为每个IP数据报封装在链路层帧中,再从一台路由器运输到下一台路由器,故链路层协议MTU严格地限制着IP数据报的长度。发送方与目的地路径上的**每段链路可能使用不同的链路层协议****每种协议**可能具有不同的MTU,如果转发表查找决定的出链路的MTU比该IP数据报的长度小,则需要对IP数据报进行分片。片在到达目的地运输层以前需要被组装,如果一个或多个片没有到达目的地,则该不完整的数据报被丢弃

分片可以通过4.2中介绍的IP数据报中的标识、标志、比特片偏移来识别

Expand Down Expand Up @@ -965,7 +964,7 @@ IPv6引入了称为**任播地址**的新地址,这种地址可以使一个数
* **下一个首部**:应该交付给运输层的哪个协议
* **跳限制**:同TTL

**IPv6不允许在中间路由器上进行分片与重新组装,这种操作只能在源于目的地上进行**。如果一台路由器收到的IPv6数据报因太大而不能转发到出链路上,则只需丢掉该数据报,并返回一个”分组太大“的ICMP差错报文。因此IPv6中没有IPv4用于分片相关的3个字段
**IPv6不允许在中间路由器上进行分片与重新组装,这种操作只能在源与目的地上进行**。如果一台路由器收到的IPv6数据报因太大而不能转发到出链路上,则只需丢掉该数据报,并返回一个”分组太大“的ICMP差错报文。因此IPv6中没有IPv4用于分片相关的3个字段

IPv6的关注快速处理分组,由于运输层提供了差错检测,IP设计者可能觉得没必要再在网络层进行差错检测,所以去掉了首部校验和字段

Expand All @@ -981,9 +980,8 @@ IPv4中的选项字段并没有作为IPv6的首部字段出现,但其并未消

![](../pic/net-4-16.png)

假定2个IPv6节点要使用IPv6通信,但经由IPv4路由器而互连,将中间IPv4路由器的集合称为一个隧道
借助于隧道,在该隧道发送端的IPv6节点可将整个IPv6数据报放在一个IPv4数据报的数据字段中。于是该IPv4数据报地址设为指向隧道接收端的IPv6节点(同时具有IPv6和IPv4地址),然后通过隧道传输
隧道接收端的IPv6节点最终收到该IPv4数据报,并确定IPv4数据报含有一个IPv6数据报,提取出后再为IPv6数据报选路,转发
假定2个IPv6节点要使用IPv6通信(图中的B和E),但经由IPv4路由器而互连,将中间IPv4路由器的集合称为一个隧道
借助于隧道,在该隧道发送端的IPv6节点可将整个IPv6数据报放在一个IPv4数据报的数据字段中。于是该IPv4数据报的目的地址设为隧道接收端的IPv6节点(同时具有IPv6和IPv4地址),然后通过隧道传输,隧道接收端的IPv6节点E最终收到该IPv4数据报,并确定IPv4数据报含有一个IPv6数据报,提取出后再为IPv6数据报选路,转发

# 第五章.链路层和局域网

Expand Down Expand Up @@ -1063,7 +1061,7 @@ IPv4中的选项字段并没有作为IPv6的首部字段出现,但其并未消

**如果相应表项尚未存在ARP表中**
1. 查询节点构造**ARP查询分组**,包含有查询节点和目的节点的IP地址,适配器在链路层帧中封装这个ARP分组,广播帧
2. 子网中的所有其他适配器接收到帧,将帧中的ARP分组向上传递给ARP模块,每个节点检查自身IP是否与ARP分组中的目的地址相同,相同的返回一个**ARP响应分组**​​​​​​
2. 子网中的所有其他适配器接收到帧,将帧中的ARP分组向上传递给ARP模块,每个节点检查自身IP是否与ARP查询分组中的目的IP地址相同,相同的返回一个**ARP响应分组**​​​​​​
3. 查询节点接收到ARP分组,获得目的MAC地址,并更新自身的ARP表

**发送数据报到子网以外**
Expand Down

0 comments on commit c0b015a

Please sign in to comment.