`
xiaoheliushuiya
  • 浏览: 400108 次
文章分类
社区版块
存档分类
最新评论

TCP/IP体系结构之网络层相关概念

 
阅读更多

网络层特性
划分为网络
IP 地址表示方法
最大传输单位(MTU)
网关
IP 多播
虚拟专用网 VPN 和网络地址转换NAT


网络层特性

设计思路:

功能:

网络层向上只提供简单灵活的,无连接的,尽最大努力交付的数据报服务

方法:

网络在发送分组时不需要先建立连接.每一个分组(即IP数据报)独立发送,与其前后的分组无关(不进行编号)

基本过程:

    • 编址
    • 封装
    • 解封装

优点:

网络的造价大大降低,运行方式灵活,能够适应多种应用

缺点:

网络层不提供服务质量的承诺.即所传送的分组可能出错,丢失,重复和失序(不按序到达终点),当然也不保证分组传送的时限

注意:

不管网络层使用什么协议,在实际网络链路上传送数据帧时,最终还须使用硬件地址

从协议栈的层次上看数据的流动:

提供的两种服务:

面向连接(可靠交付由网络)

    • 建立虚电路(虚电路表示这只是一条逻辑上的连接,分组都沿着这条逻辑连接按照存储转发方式传送,而并不是真正建立了一条物理连接)以保证双方通信所需的一切网络资源
    • 用可靠传输的网络协议,就可使所发送的分组无差错按序到达终点

无连接(可靠交付由端系统)

面向连接与无连接对比:

对比的方面        虚电路服务                  数据报服务                    
思路           可靠通信应当由网络来保证           可靠通信应当由用户主机来保证
连接的建立        必须有                    需要
终点地址         仅在连接建立阶段使用,每个分组使用短的虚电路号 每个分组都有终点的完整地址
分组的转发         属于同一条虚电路的分组均按照同一路由进行转发 每个分组独立选择路由进行转发
当结点出故障时      所有通过出故障的结点的虚电路均不能工作    出故障的结点可能会丢失分组,一些路由可能会发生变化
分组的顺序        总是按发送顺序到达终点            到达终点时不一定按发送顺序
端到端差错处理和流量控制 可以由网络负责,也可以由用户主机负责     由用户主机负责

中间设备 /中间系统 /中继(relay)系统:

  • 物理层中继系统:    转发器(repeater)
  • 数据链路层中继系统:  网桥或桥接器(bridge)
  • 网络层中继系统:    路由器(router)
  • 网桥和路由器的混合物: 桥路器(brouter)
  • 网络层以上的中继系统: 网关(gateway)

划分为网络

目的:

性能:

    • 分割大型网络,将通信的主机划分到一起,可以降低网间流量
    • 广播含于网络之中.就此意义而言,网络也称为广播域

安全:

根据所有权划分网络就意味着可以禁止,允许或监控与每个网络各自范围之外的资源相互访问

地址管理:

分割大型网络,将需要通信的主机划分到一起,可以减少因所有主机都需要知道所有地址而产生的不必要开销

划分子网:

步骤:


子网掩码:


要求:

    • 路由器上的每个接口都必须有唯一的网络 ID
    • 使用一个或多个主机位作为子网络位创建子网
    • 子网数量 = 2^n (n = 借用的位数)4.主机数量 = 2^n - 2 (n = 剩余的主机位数)

IP 地址表示方法

图释:


定义:

把整个因特网看成一个单一的抽象的网络.IP地址就是给每个连接在因特网上的主机(或路由器)分配一个在全世界范围是唯一的32位的标识符它由网络号net-id和主机号host-id组成

特别注意:

  • 实际上IP地址是标志一个主机(或路由器)和一条链路的接口
  • 当一个主机同时连接到两个网络上时,该主机就必须同时具有两个相应的IP地址,其网络号net-id 必须是不同的.这种主机称为多归属主机(multihomed host)
  • IP 数据报的首部中没有地方可以用来指明"下一跳路由器的 IP 地址".当路由器收到待转发的数据报,不是将下一跳路由器的IP地址填入IP数据报,而是送交下层的网络接口软件.网络接口软件使用ARP负责将下一跳路由器的IP地址转换成硬件地址,并将此硬件地址放在链路层的MAC帧的首部,然后根据这个硬件地址找到下一跳路由器
两级划分

形式:

IP 地址 ::= { <网络号>, <主机号>}

缺点:

  • IP 地址空间的利用率有时很低
  • 两级的 IP 地址不够灵活

优点:

  • IP 地址管理机构在分配IP地址时只分配网络号,而剩下的主机号则由得到该网络号的单位自行分配.这样就方便了IP地址的管理
  • 路由器仅根据目的主机所连接的网络号来转发分组(而不考虑目的主机号),大幅度减少路由表中的项目数
三级划分

形式:

IP地址 ::= {<网络号>, <子网号>, <主机号>}

原理:

划分子网是单位内部的事情.单位对外仍然表现为没有划分子网的网络.从主机号借用若干个位作为子网号subnet-id而主机号host-id也就相应减少了若干个位,采用与子网掩AND运算得到网络地址

三级划分数据交换过程:

接受数据:

    • 从其他网络发送给本单位某个主机的IP数据报,仍然是根据IP数据报的目的网络号net-id,找到连接在本单位网络上的路由器
    • 此路由器在收到IP数据报后,再按目的网络号net-id和子网号subnet-id找到目的子网
    • 最后就将 IP 数据报直接交付目的主机

发送数据:

    • 将数据先发送到网关
    • 网关再把数据发送出去

注意:

    • 当没有划分子网时,IP地址是两级结构.划分子网后IP地址就变成了三级结构
    • 划分子网只是把IP地址的主机号host-id这部分进行再划分,而不改变IP地址原来的网络号net-id

三级划分路由器转发分组的算法:

CIDR

定义:

使用"斜线记法"(slash notation),它又称为CIDR记法,即在IP地址面加上一个斜线"/",然后写上网络前缀所占的位数(这个数值对应于三级编址中子网掩码中 1 的个数)

例子:

192.168.0.0/24

目的:

为了有效地分配 IPv4 的地址空间

形式:

IP地址 ::= {<网络前缀>, <主机号>}  ("网络前缀"(network-prefix)来代替分类地址中的网络号和子网号)

作用:

CIDR 把网络前缀都相同的连续的 IP 地址组成"CIDR 地址块".

路由聚合:

定义:

一个CIDR地址块可以表示很多地址,这种地址的聚合常称为路由聚合路由聚合也称为构成超网(supernetting)

优点:

它使得路由表中的一个项目可以表示很多个(例如上千个)原来传统分类地址的路由

最长前缀匹配:

    • 来源:   使用CIDR时,路由表中每个项目由"网络前缀"和"下一跳地址"组成.在查找路由表时可能会得到多个匹配结果
    • 解决:   应当从匹配结果中选择具有最长网络前缀的路由:最长前缀匹配(longest-prefix matching)

二叉线索查找路由表:

    • 将无分类编址的路由表存放在一种层次数据结构中后至上而下按层进行查找,最常用的就是二叉线索(binary trie)
    • IP地址从左到右比特值决定了从根结点逐层向下延伸的路径,而二叉线索中各个路径就代表路由表中存放的各个地址
    • 为了提高二叉线索的查找速度,广泛使用了各种压缩技术
IPv4

地址类型:

  • 网络地址:指代网络的地址
  • 广播地址:用于向网络中的所有主机发送数据的特殊地址
  • 主机地址:分配给网络中终端设备的地址

点分十进制:

特殊IPv4地址:

  • 默认路由:0.0.0.0
  • 环回地址:127.0.0.0/8
  • 链路本地地址:169.254.0.0 /16
  • TEST-NET地址:192.0.2.0 /24

分类:

网络类别 最大网络数      第一个可用的网络号  最后个可用的网络号 每个网络中最大的主机数
A     126(27-2)       1.0.0.0       126.0.0.0      16,777,214
B     16,383(214-1)    128.1.0.0      191.255.0.0     65,536
C      2,097,151(221-1)  192.0.1.0      233.255.255.0   254

保留地址:

特点:

  • 无连接
  • 尽力:尽力服务 (不可靠)
  • 介质无关性
IPv6

特性和优点:

  • 128位分层编址,用以提高编址能力
  • 报头格式简化,用以改进数据包处理过程
  • 提高对扩展和选项的支持,用以增强可扩展性和延长生命周期并改进数据包处理过程
  • 流标签功能,作为QoS机制
  • 身份验证和隐私权功能,用于集成安全性

最大传输单位(MTU)

每种介质可以传输的最大 PDU 大小


网关

定义

网关是连接到本地网络的路由器接口

作用

将该数据包发送到本网络以外的网络

IP是网络层上的主要协议,同时被 TCP和UDP使用,也会被ICMP(IP协议的附属协议)、IGMP(Internet组管理协议)用到

在 TCP/IP 协议族中,网络层IP 提供的是一种不可靠的服务.也就是说,它只是尽可能快地把分组从源结点送到目的结点,但是并不提供任何可靠性保证.而另一方面,TCP 在不可靠的 IP层上提供了一个可靠的运输层.为了提供这种可靠的服务, TCP 采用了超时重传、发送和接收端到端的确认分组等机制.由此可见,运输层和网络层分别负责不同的功能.


IP 多播

图释:

特点:

  • 永久组地址——由因特网号码指派管理局 IANA 负责指派
  • 多播使用组地址—— IP 使用 D 类地址支持多播。多播地址只能用于目的地址,而不能用于源地址
  • 动态的组成员
  • 使用硬件进行多播

优点:

多播可明显地减少网络中资源的消耗

硬件多播:

  • 因特网号码指派管理局 IANA 拥有的以太网地址块的高 24 位为 00-00-5E
  • 因此 TCP/IP 协议使用的以太网多播地址块的范围是:从 00-00-5E-00-00-00 到 00-00-5E-FF-FF-FF
  • D 类 IP 地址可供分配的有 28 位,在这 28 位中的前 5 位不能用来构成以太网硬件地址

需协议:

网际组管理协议 IGMP (Internet Group Management Protocol)

转发多播数据报使用的方法:

洪泛与剪除

适用范围:

这种方法适合于较小的多播组,而所有的组成员接入的局域网也是相邻接的

方法:

一开始,路由器转发多播数据报使用洪泛的方法(这就是广播)。为了避免兜圈子,采用了叫做反向路径广播 RPB (Reverse Path Broadcasting)的策略

RPB

要点:

      • 路由器收到多播数据报时,先检查是否从源点经最短路径传送来的.若是,就向所有其他方向转发刚才收到的多播数据报(但进入的方向除外),否则就丢弃而不转发
      • 如果存在几条同样长度的最短路径),那么只能选择一条最短路径,选择的准则就是看这几条最短路径中的相邻路由器谁的 IP 地址最小图释:

图释:


隧道技术

基于核心技术的发现:

  • 这种方法对于多播组的大小在较大范围内变化时都适合。
  • 这种方法是对每一个多播组 G 指定一个核心(core)路由器,给出它的 IP 单播地址
  • 核心路由器按照前面讲过的方法创建出对应于多播组 G 的转发树

几种多播路由选择协议:

  • 距离向量多播路由选择协议 DVMRP (Distance Vector Multicast Routing Protocol)
  • 基于核心的转发树 CBT (Core Based Tree)
  • 开放最短通路优先的多播扩展 MOSPF (Multicast Extensions to OSPF)
  • 协议无关多播-稀疏方式 PIM-SM(Protocol Independent Multicast-Sparse Mode)
  • 协议无关多播-密集方式 PIM-DM (Protocol Independent Multicast-Dense Mode)

虚拟专用网 VPN 和网络地址转换NAT

本地地址——仅在机构内部使用的 IP 地址,可以由本机构自行分配,而不需要向因特网的管理机构申请
全球地址——全球唯一的IP地址,必须向因特网的管理机构申请
RFC 1918指明的专用地址(private address)
10.0.0.0 到 10.255.255.255172.16.0.0 到 172.31.255.255
192.168.0.0 到 192.168.255.255
这些地址只能用于一个机构的内部通信,而不能用于和因特网上的主机通信,专用地址只能用作本地地址而不能用作全球地址.在因特网中的所有路由器对目的地址是专用地址的数据报一律不进行转发

分享到:
评论

相关推荐

    TCP/IP体系结构

    1. 介绍TCP/IP 的历史,设计思想; 2. 介绍了OSI模型,TCP/IP协议栈内容和为什么TCP/IP普及度高的原因; 3. 对TCP/IP协议栈的各层做了一个简要的介绍;

    嵌入式Linux网络体系结构设计与TCP/IP协议栈.part5

    第7章讲解了网络层IP协议的实现。第8~9章介绍传输层数据收发过程,重点介绍基于套接字的TCP/UDP传输实现。第10章讨论了Linux内核套接字层的实现,以及套接字层与应用层、传输层之间的接口。第11章介绍网络应用软件...

    嵌入式Linux网络体系结构设计与TCP/IP协议栈.part3.rar

    第7章讲解了网络层IP协议的实现。第8~9章介绍传输层数据收发过程,重点介绍基于套接字的TCP/UDP传输实现。第10章讨论了Linux内核套接字层的实现,以及套接字层与应用层、传输层之间的接口。第11章介绍网络应用软件...

    嵌入式Linux网络体系结构设计与TCP/IP协议栈.part4.rar

    第7章讲解了网络层IP协议的实现。第8~9章介绍传输层数据收发过程,重点介绍基于套接字的TCP/UDP传输实现。第10章讨论了Linux内核套接字层的实现,以及套接字层与应用层、传输层之间的接口。第11章介绍网络应用软件...

    OSI七层网络模型与TCP/IP四层网络模型

    描述了OSI七层网络模型与TCP/IP四层网络模型的基础知识。

    TCP/IP教程TCP/IP基础

    3.2.6 网络层 25 3.2.7 链路层 25 3.3 远程登录(Telnet) 25 3.4 文件传输协议(FTP) 25 3.5 普通文件传输协议(TFTP) 26 3.6 简单邮件传输协议(SMTP) 26 3.7 网络文件系统(NFS) 26 3.8 简单网络管理协议(SNMP) 27 3.9 ...

    计算机网络体系结构_OSI与TCP/IP的分层模型

    TCP/IP 是一个四层的模型,在学习计算机网路的原理时往往采取折中的方法,即综合 OSI 和 TCP/IP 的优点,采用一种只有五层的体系结构模型。不过,五层模型只是为了介绍网络原理而设计的,实际应用还是 TCP/IP 四层...

    TCP/IP技术大全

    3.2.6 网络层 25 3.2.7 链路层 25 3.3 远程登录(Telnet) 25 3.4 文件传输协议(FTP) 25 3.5 普通文件传输协议(TFTP) 26 3.6 简单邮件传输协议(SMTP) 26 3.7 网络文件系统(NFS) 26 3.8 简单网络管理协议(SNMP) 27 3.9 ...

    TCP/IP协议详细介绍

    TCP/IP协议详细介绍,计算机网络体系结构分层,TCP/IP 基础,传输层中的 TCP 和 UDP,网络层中的 IP 协议,IP 协议相关技术

    嵌入式Linux网络体系结构设计与TCP/IP协议栈.part1

    第7章讲解了网络层IP协议的实现。第8~9章介绍传输层数据收发过程,重点介绍基于套接字的TCP/UDP传输实现。第10章讨论了Linux内核套接字层的实现,以及套接字层与应用层、传输层之间的接口。第11章介绍网络应用软件...

    TCP/IP协议详细介绍.docx

    计算机网络体系结构分层,TCP/IP 基础,传输层中的 TCP 和 UDP,网络层中的 IP 协议,IP 协议相关技术

    TCP/IP网络工程师资料

    TCP/IP 定义了电子设备(比如计算机)如何连入...TCP/IP是一个四层的分层体系结构。高层为传输控制协议,它负责聚集信息或把文件拆分成更小的包。低层是网际协议,它处理每个包的地址部分,使这些包正确的到达目的地。

    嵌入式Linux网络体系结构设计与TCP/IP协议栈.part2.rar

    第7章讲解了网络层IP协议的实现。第8~9章介绍传输层数据收发过程,重点介绍基于套接字的TCP/UDP传输实现。第10章讨论了Linux内核套接字层的实现,以及套接字层与应用层、传输层之间的接口。第11章介绍网络应用软件...

    网络的体系结构与参考模型 Internet TCP/IP

    概述 网络的体系结构与参考模型 物理层 数据链路层 局域网与媒体访问控制 网络层 Internet & TCP/IP 传输层 应用层 其他网络举例 信息网安全

    TCP/IP技术大全(中文PDF非扫描版)

    本书内容十分丰富,几乎涵盖了有关TCP/IP的各个方面,包括开放式通信模型、TCP/IP通信模型、IP网络中的命名和寻址机制、地址解析及反向地址解析协议、DNS域字服务器、WINS、地址发现协议、IPv6、IP网络中的路由协议...

    viso计算机网络:TCP/IP五层协议的体系结构总结

    viso计算机网络:TCP/IP五层协议的体系结构总结

    TCP/IP体系结构深入理解

    TCP/IP协议集把整个网络分成四层,包括网络接口层、网际层、传输层和应用层,需要了解更多的朋友可以查看本

    TCP-IP技术大全

    TCP/IP概述 20 3.1 TCP/IP的优点 20 3.2 TCP/IP的层和协议 21 3.2.1 体系结构 21 3.2.2 传输控制协议 21 3.2.3 IP协议 23 3.2.4 应用层 25 3.2.5 传输层 25 3.2.6 网络层 25 3.2.7 链路...

    嵌入式系统/ARM技术中的基于嵌入式TCP/IP软件体系结构的优化设计与实现

    摘要: 本文提出一种基于嵌入式TCP/IP软件体系结构的优化设计和解决方案,通过分析在嵌入式系统上实现TCP/IP的速度、程序结构、内存需求等特点,优化设计了清晰的TCP/IP和应用层接口、防止多余的内存拷贝和实现数据包整...

    OSI TCP/IP 域名系统 网络 网络课程

    第三部分(第7~11章)讨论网络互连技术及其相关协议,涉及网络互连、TCP/IP参考模型、IP、ARP和ICMP、IP路由以及TCP和UDP等内容。第四部分(第12~17章)讨论网络应用程序相互作用模式以及各种具体的网络应用,涉及...

Global site tag (gtag.js) - Google Analytics