该笔记是笔者学习计算机网络的思考记录,总结(满更):
概述
1. 网络层提供主机到主机的通信服务,是一种尽力而为的通信服务。
2.网络层两个重要的两个功能:
转发:当一个分组达到路由器的一个输入端口时,路由器将该分组移动到适当的输出端口,概念偏重于落在路由器本地。
路由选择:当分组从发送方流向接受方时,网络层决定决定分组实际的路径(即需要经过哪些路由器达到接受方)
3.每个路由器都有一张路由表。路由器通过查询分组首部字段的目的地址,通过路由表,获得该分组应该转发的输出端口。路由器由此完成转发功能。后面我们将深入看到路由器的内部,实际上这个查询功能是由每个输入端口完成,每个输入端口都有路由表的影子副本,由此可以实现多个查询并行。
4.那么路由表是如何配置的呢?这是由网络中的路由选择协议决定。(补充:大致可以分为:静态路由。静态路由由管理员手动添加配置到路由器的路由表中,其优先级最高。动态路由:多台路由器之间通过动态路由协议,协商获取,不同的动态协议获得的路由表表项优先级也不同。)
5.注意区分交换机和路由器。交换机,指的是链路层分组交换机。路由器指的是,网络层路由器。它们之间最为重要的区别:前者根据链路层首部处理转发链路层数据帧,后者根据网络层首部处理转发数据报(datagram)
6. 网络服务模型:1.虚电路网路 2. 数据报网络。
路由器工作原理
理解交换机的工作原理,我们可以把交换机想象成一个超级无敌的立交桥,可能不同的设计师设计了不同的样式。
1. 路由器的组成:
输入端口:输入端口需要完成很多事情:首先,我拥有基本物理层信号解析功能,其次,它能够完成数据链路层的数据交互共功能,最后,需要完成网络层转发功能,即查询路由表,决定数据报输出到哪个输出端口。同时它带有一定的队列缓存,能够缓冲一定容量的数据报,但是有限。
交换结构:硬件完成数据报从输入端口到输出端口的高速转移。
输出端口:输出端口也拥有缓冲,同时,和输入端口一样完成数据链路层和物理层的功能。
路由选择处理器:执行路由选择协议,维护路由表。
2. 输入端口:
总结输入端口的活就是:1.完成物理层和数据链路层功能 2. 每个输入端口都有一份路由表的影子副本(这样无须中央处理器来查询,避免集中式处理的瓶颈,达到并行),获取数据报中网络层首部字段,查询路由表,决定适当的输出端口。3.缓冲被阻塞的数据报。
具体的技术细节我们就不用过多摄入了。
3. 交换结构,分为三种:
内存式,每个输入输出端口相当于一个i/o设备,因此,这种方式一个只能让一个端口的一个数据报通过交换结构。
总线式:用总线的方式链接所有输入输出端口,每次某个输入端口向总线内广播数据报,并且附加上输出端口信息,每个输出端口查询数据报的端口号和自身是否匹配,只有匹配的才接受,并把它放入输出缓冲中,等待发送。老毛病,一次只能发送一个数据报,慢。
互联网络式:输入输出端口之间构成一个围棋那样的纵横网络,每个节点上都是交换控制端元,因此,如果所有端口的数据都输出到不同的输出端口,那么可以达到并行交换。当然如果是有两个数据报需要转发到同一输出端口,那么其中之一必须阻塞等待。
----------------------↑ 2018.5.18-------------------