我是靠谱客的博主 安详绿茶,最近开发中收集的这篇文章主要介绍计算机网络——网络层学习笔记(上),觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

从发送主机向接受主机传送数据段(segment)。每个主机和路由器都运行网络层协议。

  • 网络层核心功能:

1、转发:涉及单一路由器

将分组从路由器的输入端口转移到合适的输出端口。

2、路由:涉及一个网络的所有路由器

确定分组从源到目的的经过的路径。

*在某些计算机网络中,还有第三种重要的网络功能:连接建立。(如ATM、帧中继、MPLS)

因特网的网络层提供了单一的服务:尽力而为服务。

其他的网络体系结构已定义和实现了许多超过因特网的尽力而为服务的服务模型。如ATM提供了多重服务模型,有恒定比特率和可用比特率服务等。

仅在网络层提供连接服务的计算机网络:虚电路网络

仅在网络层提供无连接服务的计算机网络:数据报网络

网络层与运输层连接和无连接服务的区别:

1、网络层提供的服务是由网络层向运输层提供的主机到主机的服务,运输层的服务是运输层向应用层提供的进程向进程的服务。

2、运输层面向连接服务是在位于网络边缘的端系统中实现的,网络层连接服务除了在端系统中实现,也在位于网络核心的路由器中实现。


  • 虚电路网络:

组成:

1、从源到目的的路径;

2、VC号,标识沿路径每条链路的号码;

3、沿路径路由器中转发表中的项。

虚电路的三个阶段:

1、虚电路建立

2、数据传送

3、虚电路拆除

 

  • 数据报网络(重点):

每个分组携带目的地址,路由器根据分组的目的地址转发分组。

路由器使用最长前缀匹配规则与转发表中的表项进行匹配。


  • 路由器工作原理:

4个组成部分:

1. 输入端口:线路端接→数据链路处理(协议、拆封)→查找、转发、排队(→交换结构)

2. 交换结构:三种交换技术(经内存交换、经总线交换、经互联网交换)

3. 输出端口:排队(缓存管理)→数据链路处理(协议、封装)→线路端接→

4. 路由选择处理器

  • 因特网网络层的内部视图:

网络层具有3个主要组件:

IP协议、因特网路由选择协议(RIP/OSPF/BGP)、因特网控制报文协议(ICMP)


  • IPv4数据报格式:

IP数据报分片:

一个链路层帧能够承载的最大数据量叫做最大传输单元(MTU)。

IP分片过程:

假设原IP分组总长度为L,待转发链路的MTU=M

若L>M,且允许分片,则需要分片,

分片时每个分片的标识号复制原IP分组的标识号。

除最后一个分片,其他分片均分为MTU允许的最大分片。

一个最大分片可封装的数据应该是8的倍数,因此一个最大分片可封装的数据为:

d=[(M-20)/8] * 8  向下取整

需要的总片数是L-20/d向上取整

  • IPV4编址:

接口:主机/路由器与物理链路之间的边界叫做接口。

实现网络层功能,路由器通常有多个接口,主机通常只有一个或两个接口。

IP地址:32bit,点分十进制记法,编号标识主机、路由器的接口。IP地址与每个接口关联。分为网络号(高比特位)和主机号(低比特位)。

IP子网:IP地址具有相同网络号的设备接口。不跨越路由器可以波次物理联通的接口。

“有类编址”:A B C D E

因特网的地址分配策略:无类别域间路由选择(CIDR)a.b.c.d/x,x指示了地址的第一部分中的比特数(前缀)。

路由聚合,最长前缀匹配

 

DHCP:动态主机配置协议

从服务器动态获取:IP地址、子网掩码、默认网关地址、DNS服务器名称与IP地址。

即插即用,允许地址重用,支持在用地址续租,支持移动用户加入网络

4个步骤:

1、DHCP discover发现报文(客户端)

2、DHCP offer提供报文(服务器)

3、DHCP request请求报文(客户端)

4、DHCP ack确认报文(服务器)

 

网络地址转换(NAT)

所有数据包本地离开本地网络具有相同的单一源NAT IP地址,不同的源端口号

本地网络中内通信的IP数据报的源于目的IP地址均在子网内。

动机:

只需/能从ISP申请一个IP地址,本地网络设备IP地址的变更不需要稿纸外界网络,变更ISP时也不需要修改内部网络设备IP地址。内部网络设备对外部网络不可见,即不可直接寻址(安全性)。

实现:

替换、记录(NAT转换表)、替换。

争议:

路由器应该只处理第三层功能,违背端到端通信原则(妨碍P2P应用)

NAT穿越

 

因特网控制报文协议(ICMP)

差错报告、网络探询

ICMP报文有一个类型字段和一个编码字段。

8   0   回显请求(ping)

11  0   TTL过期

应用举例:Traceroute

源主机想目的主机发送一系列UDP数据报,第一组IP数据报TTL=1,第二组IP数据报TTL=2,以此类推。目的端口号为不可能使用的端口号。

当第n组数据报(TTL=n)到达第n个路由器时路由器丢弃数据报,向源主机发送ICMP报文(11  0),ICMP报文携带路由器名称和IP地址信息。

当ICMP报文返回到源主机时,记录RTT。

停止准则:

1、当UDP数据报最终到达目的主机;

2、目的主机返回“目的端口不可达”ICMP报文(3  0);

3、源主机停止


IPv6

IPv6数据报格式:

扩大的地址容量。32bit→128bit,引入任播地址(将数据交付给一组主机中的任意一个)。

固定长度的40字节基本首部;

流标签与优先级。

不允许分片。

 各字段:

版本:6

流量类型:根据不同流量类型提供不同的服务质量。

流标签:20bit,用于标识一条数据报的流。

有效载荷长度:16bit,跟在40字节首部后面的字节数量

下一个首部:标识数据报中的内容需要交付给哪个协议。

跳限制:转发数据报的每台路由器对该数值减一。如果跳限制计数为0,该数据报被丢弃。

源地址和目的地址

数据


IPv4到IPv6的迁移:

不可能在某个时刻所有路由器同时被更新成IPv6

隧道:IPv6数据报作为IPv4数据报的载荷进行封装,穿越IPv4网络。

将两台IPv6路由器之间的中间IPv4路由器的集合称为一个隧道。


最后

以上就是安详绿茶为你收集整理的计算机网络——网络层学习笔记(上)的全部内容,希望文章能够帮你解决计算机网络——网络层学习笔记(上)所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(34)

评论列表共有 0 条评论

立即
投稿
返回
顶部