总算克服自己的懒癌开始写博客了,给自己立个flag,每天都要写一篇博客。(我宛如一个身经百战的老将军,身上插满了flag)
By the way,今早老师在给我们讲课时问我们“现在互联网的流量限制在哪里?整个互联网的带宽为什么上不去?”,我们猜了很多硬件算法。老师说:“互联网最大的限制在我们的脑子里,因为地球人口总数就这么多、人能处理的信息就这么多,所以整个互联网其实在给人的流量上已经要到极限了。互联网的未来一定是万物互联,因为已经没什么要发展的了。”
闲话完毕,开始正文。
一、网络层概述
网络层的工作主要是把数据报从一台发送主机转发到一台接收主机。网络层取得来自运输层的报文段,将每个报文段封装成一个数据报(即网络层的一个分组),然后将这个数据报转发到另一个主机。在这个过程中,主要涉及了网络层两个功能——转发与路由选择。
对于分组转发,我们需要涉及到IP协议、网络层编址、网络地址转换(NAT)、数据报分段、因特网控制报文协议(ICMP)。
对于路由选择,我们需要涉及到路由选择算法、等级制链路算法、因特网的自动系统内部的路由选择协议、因特网自制系统之间的路由选择协议,以及广播包和路由选择。
还有网络层一个很重要东西——SDN(software defined network)。
这些我会在以后的文章中详写。(按照我自己的理解写,也不知道是不是正确的)
二、转发与路由选择
转发:当一个分组到达路由器的一条输入链路时,路由器必须将该分组移动到适合的输出链路。
路由选择:当分组从发送方向流向接收方是,网络层必须决定这些分组所采用的路由或路径。
每个路由器都维护着一张转发表。转发就是通过在转发表中查询索引来决定输出端口,路由选择就是更新转发表。这和链路层的链路层交换机有些像,但是链路层查询MAC地址,而路由器查询IP地址。
在网络层除了转发与路由选择外,有些还有第三种功能,即连接建立。某些网络层体系结构要求从源到目的地沿着所选择的的路径彼此握手,以便在给定源到目的地中的网络层数据分组可以在开始流动前建立起状态。
三、网络服务模型
网络服务模型定义了分组在发送与接收端系统之间的端到端运输特性。
因特网的网络层提供了尽力而为服务(best-effort service),实际上就是根本无服务的一种委婉说法。不能保证交付、不能保证交付顺序、不能保证到达时间,这是一种极为简化的网络层服务模型。当然,为了特殊需求,我们定制了许多超过尽力而为服务的网络模型,如ATM网络体系结构。两个最重要的ATM服务是恒定比特率和可用比特率。
四、虚电路与数据报网络
虚电路网络:仅在网络层提供连接服务的计算机网络。
数据报网络:仅在网络层提供无连接服务的计算机网络。
虚电路网络
虚电路组成:
1.源和主机之间的路径(即一系列链路和路由器)
2.VC号,沿着该路径的每段链路的一个号码
3.沿着该路径的每台路由器的转发表表项。
属于一条虚电路的分组将在它的首部携带一个VC号,每台中间路由器必须用一个新的VC号替代每个传输分组的VC号,VC号从转发表中获得。
虚电路网络中,无论何时通过路由器建立一条新的连接,或拆除一条现有的链接,路由器中的转发表就要被更新。
数据报网络
当分组从源到目的地传输,它通过一系列路由器传递,而路由器的转发主要是查询转发表。在查询转发表时,主要是使用的IP地址最长前缀匹配规则。
数据报网络中的转发状态信息表变化的时间尺度相对要慢。
这里我懒得做图了,如果有时间再把这部分给完善一下。
continue...