《计算机网络》谢希仁(第7版) 第四章 c语言http://c.biancheng.net/cpp/html/3137.html
第四章 网络层
电信网使用面向连接的通信方式,使电信网络能够向用户提供可靠传输的服务。
互联网设计思路:网络层向上只提供简单灵活的、无连接的、尽最大努力交付的数据报(分组)服务。
网络层不提供可靠传输服务,所传送的分组可能出错、丢失、重复和失序。
TCP/IP体系的网络层提供的是数据报服务。
网络层协议:IP协议、地址解析协议ARP、网际控制报文协议ICMP、网际组管理协议IGMP。
ICMP和IGMP要使用IP协议、IP协议要经常使用ARP。
IP地址是32位二进制代码,每8位换成一个十进制数并中间加一个点即叫点分十进制。
ARP协议:知道自己的IP、硬件地址和对方的IP地址求对方的硬件地址。
IP地址和硬件地址不是简单映射关系,ARP解决方法是在主机ARP高速缓存中存放一个IP地址到硬件地址的映射表,而且经常动态更新(新增或超时删除)
网络链路上传送的帧是按照硬件地址找到目的主机的,使用IP地址的好处在于不需要进行非常复杂的硬件地址转换工作就能使这些异构网络能够互相通信,一个主机只有一个IP地址,它们之间的通信就像连接在同一个网络一样简单。
IP数据报格式:
32位(4个字节)为单位进行描述,固定首部长度为20字节。首部长度是20-60字节。
首部检验和采用反码算术运算求和的方式进行检验。
互联网有两种交付:在本网络上的直接交付和到其他网络的间接交付。
网络地址=IP地址与子网掩码化成二进制后逐位相与,网络地址指的是网络号+主机号全为0。
无分类域间路由选择CIDR是解决IP地址紧缺第一个好方法。CIDR记法把IP地址后面加上斜线‘/‘,然后写上网络号所占的位数,把前缀都相同的连续IP地址组成一个“CIDR地址块“。
CIDR主要特点:(1)消除了传统的A类、B类C类地址以及划分子网的概念
(2)CIDR把网络前缀都相同的连续IP地址组成一个“CIDR地址块“。
路由表必须包含三个内容:目的网络地址、子网掩码和下一跳地址。
ICMP报文有两类:ICMP差错报告报文和ICMP询问报文。
ICMP的一个重要应用:分组网间探测PING,测试两台主机之间的连通性。
路由选择协议划分:内部网关协议IGP(RIP和OSPF等)和外部网关协议EGP(目前用的是BGP)
RIP协议:一种分布式的基于距离向量的路由选择协议,距离是指跳数,RIP适用于小型互联网。
RIP协议特点:仅和相邻路由器交换信息、交换的信息是自己现在的路由表、按固定的时间间隔交换路由信息。
RIP协议最大优点就是实现简单,开销较小,缺点首先是RIP限制了网络的规模;其次,路由器之间交换的路由信息是完整路由表,随着网络规模扩大,开销也增加;最后是坏消息传播得慢,当网络出现故障时,要经过较长时间才能将此信息传送到所有路由器。
OSPF协议:使用分布式的链路状态协议。
OSPF协议特点:向本自治系统中所有路由器发送信息(洪泛法)、发送的信息是与本路由器相邻的所有路由器的链路状态、只有当链路状态发生变化时,路由器才向所有路由器用洪泛法发送此消息。
OSPF的优点是OSPF的更新过程收敛得快,链路状态数据库能较快地进行更新;对于不同类型的业务可计算出不同的路由;提供负载均衡功能;支持可变长度的子网划分和无分类的编址CIDR,缺点是协议本身庞大复杂,实现起来难度大。
路由器可划分为:路由选择部分和分组转发部分。
解决IP地址耗尽的问题,根本办法就是采用具有更大地址空间的新版本IP协议IPv6。
IPv6的主要变化:
(1)更大的地址空间(128位地址) (2)灵活的首部格式
(3)改进的选项 (4) 支持即插即用 (5)支持资源的预分配
(6)首部改为8字节对齐(IPv4是4字节对齐)
IPv6数据包的目的地址有三种基本类型地址:单播、多播、任播。
IPv6地址采用冒号十六进制记法。
向IPv6过渡只能逐步演进,可以使用双协议栈或隧道技术。
一个VPN至少要有一个路由器具有合法的全球IP地址,这样才能和本系统的另一个VPN通过互联网进行通信,所有通过互联网传送的数据都必须加密。
《计算机网络》谢希仁(第7版) 第四章 c语言http://c.biancheng.net/cpp/html/3137.html的更多相关文章
- 重读 谢希仁《计算机网络》3 - 网络层和IP协议
- C++PrimerPlus第6版 第四章——复合类型
1,复合类型主要包含:数组.结构.联合.枚举.类.指针.引用等. 2,数组.长度必须确定.即编译阶段,数组的长度就得确定好.所以只能使用常量(#define.const)声明数组长度.如果使用变量声明 ...
- Java 线程第三版 第四章 Thread Notification 读书笔记
一.等待与通知 public final void wait() throws InterruptedException 等待条件的发生. public final void wait(lo ...
- C#高级编程第11版 - 第四章 索引
[1]4.2 继承的类型 1.C#不支持类的多继承,但它支持一个接口继承自多个接口. 2.单继承:单继承允许一个类继承自另外一个基类,C#支持. 3.多级继承:多级继承允许创建一个类继承自它的父类,而 ...
- MVC5+EF6 简易版CMS(非接口) 第四章:使用业务层方法,以及关联表解决方案
目录 简易版CMS后台管理系统开发流程 MVC5+EF6 简易版CMS(非接口) 第一章:新建项目 MVC5+EF6 简易版CMS(非接口) 第二章:建数据模型 MVC5+EF6 简易版CMS(非接口 ...
- 图片人脸检测——Dlib版(四)
上几篇给大家讲了OpenCV的图片人脸检测,而本文给大家带来的是比OpenCV更加精准的图片人脸检测Dlib库. 点击查看往期: <图片人脸检测——OpenCV版(二)> <视频人脸 ...
- ROS机器人程序设计(原书第2版)补充资料 (肆) 第四章 在ROS下使用传感器和执行器
ROS机器人程序设计(原书第2版)补充资料 (肆) 第四章 在ROS使用传感器和执行器 书中,大部分出现hydro的地方,直接替换为indigo或jade或kinetic,即可在对应版本中使用. 第四 ...
- Python操作redis系列以 哈希(Hash)命令详解(四)
# -*- coding: utf-8 -*- import redis #这个redis不能用,请根据自己的需要修改 r =redis.Redis(host=") 1. Hset 命令用于 ...
- C语言程序设计:现代方法(第2版)第二章全部习题答案
前言 本人在通过<C语言程序设计:现代方法(第2版)>自学C语言时,发现国内并没有该书完整的课后习题答案,所以就想把自己在学习过程中所做出的答案分享出来,以供大家参考.这些答案是本人自己解 ...
随机推荐
- IDEA在编辑时提示could not autowire
IDEA在编辑时提示could not autowire 原创 2016年05月14日 10:53:38 28338 在开发中我再applicationContext-dao.xml中加入了mappe ...
- HtmlRowCreated关于e.Row.Cells[0]的获取和设置
获取采用: cmd2.Parameters.AddWithValue("@xh", e.GetValue("学号").ToString().Trim()); ...
- PHP函数注释规范
<?php/*** @name 名字* @abstract 申明变量/类/方法* @access 指明这个变量.类.函数/方法的存取权限* @author 函数作者的名字和邮箱地址* @cate ...
- Mybatis知识(1)
1.#{}和${}的区别是什么? #{}是预编译处理,${}是字符串替换. Mybatis在处理#{}时,会将sql中的#{}替换为?号,调用PreparedStatement的set方法来赋值: M ...
- UGUI Auto Layout 自动布局
Layout Element 首先分配 Minimum Size 如果还有足够空间,分配 Preferred Size 如果还有额外空间,分配 Flexible Size 比较特别的是 Flexibl ...
- Haskell语言学习笔记(47)Arrow(2)
Function, Monad, Arrow f :: Int -> (Int, Int) f = \x -> let y = 2 * x z1 = y + 3 z2 = y - 5 in ...
- 迷你MVVM框架 avalonjs 学习教程22、avalon性能大揭密
avalon之所以能在页面处理1W个绑定(angular对应的数字是2000),出于两个重要设计--基于事件驱动的双向绑定链及智能CG回收机制. avalon的双向绑定链是通过Object.defin ...
- Python递归的经典案例
目录 : 一.递归的简介 二.递归的经典应用 2.1 递归求阶乘 2.2 递归推斐波那契数列 2.3 二分法找有序列表指定值 2.4 递归解汉诺塔 前言: 当我们碰到诸如需要求阶乘或斐 ...
- 八大排序算法python实现
一.概述 排序有内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存. 我们这里说说八大排序就是内部排序. 当 ...
- Ansible 管理MySQL主从复制
mysql_replication - 管理MySQL复制 1.3版新功能 概要 要求(在执行模块的主机上) 选项 例子 笔记 状态 支持 概要 管理MySQL服务器复制,从属,主状态获取和更改主控主 ...