计算机网络笔记——第四章

第四章 网络层

虚电路服务和数据报服务:

  • 虚电路(电话机采用这种服务): 可靠通信由网络来保证,通信前必须建立连接。
  • 数据报服务: 不提供可靠通信,不需要建立连接。

因特网的网络层采用数据报服务,网络层向上只提供简单灵活的,无连接的,尽最大努力交付的数据报服务。网络层不提供服务质量的承诺。


IP地址

IP地址分为两个部分,网络号主机号 。网络号标志主机所连接到的网络,一个网络号在整个因特网范围内必须是唯一的。主机号标志主机,一个主机号在它前面的内网络号所指明的网络范围内必须是唯一的。
由此可见,一个IP地址在整个因特网范围内是唯一的。

IP地址分为三类。

IP地址   网络号          主机号   子网数         主机数    第一个网络号    最后一个网络号
A类      8位(0开头)      24位    126(2^7-2)     2^24-2   1              126
B类      16位(10开头)    16位    2^14-1         2^16-2   128.1          191.255
C类      24位(110开头)   8位     2^21-1         2^8-2    192.0.1        223.255.255

B类和C类之所以减1是因为10和110开头使得不会出现网络号全部为0的情况,而128.0.0.0和192.0.0.0都是不指派的,所以减1。而主机号里面,主机号全部为0都是表示该网络,而全部为1作为本地软件环回测试。

IP地址和硬件地址

硬件地址是数据链路层和物理层使用的地址,而IP地址是网路层和以上各层使用的地址,是一种逻辑地址。
使用IP地址的IP数据报一旦交给了数据链路层,就被封装成了MAC帧。MAX帧在传送时使用的源地址和目的地址都是硬件地址,写在MAX帧的首部。

地址解析协议ARP(address resolution protocol)

ARP是用来解决知道机器的IP地址,找出相应的硬件地址的问题。

原理:每个主机ARP高速缓存中存放一个从IP地址到硬件地址的映射表,并且经常动态更新这个映射表。

过程:主机A有了主机B的IP地址,但是发现没有主机B的硬件地址,于是在本网络中 广播 发送一个ARP请求分组,这个请求分组的内容主要是主机A自己的IP地址和硬件地址,并想知道IP为XXX主机B的硬件地址。其他所有主机都会收到这个ARP分组,主机B会发回A自己的硬件地址,而其他主机都会不理睬这个ARP请求分组。主机A至此就可以获得主机B的硬件地址。

同时,ARP缓存中的每一个映射地址项目都设置了 生存时间 ,凡超过生存时间的项目就从高速缓存中删除掉。


划分子网和构造超网

三级IP地址

为了可以划分子网,IP地址从二级变成三级IP地址,在原有的主机号划分为子网号和主机号两部分,但是该网络对外依然表现为一个网络。

子网掩码

如果只用网络号和主机好二级IP地址,有时候不需要那么多的IP,容易造成IP地址的严重浪费。于是用子网掩码来再细分IP地址。

将子网掩码和IP地址进行逐位的 运算,就可以得出其网络地址。

如果网络没有划分子网,子网掩码就使用默认子网掩码。

  • A类地址的默认子网掩码是255.0.0.0
  • B类地址的默认子网掩码是255.255.0.0
  • C类地址的默认子网掩码是255.255.255.0

子网数 = 2^n-2,n是子网号的位数。

使用子网掩码后路由表必须包含三项内容:目的网络地址子网掩码,下一跳地址。在路由转发中需要用路由表中的每一行的子网掩码和目的IP地址相与操作,如果与目的网络地址符合则进行转发。


无分类编址CIDR(Classless Inter-Domain Routing 构成超网)

CIDR消除了传统的A类,B类和C类地址以及划分子网的概念,从三级IP地址又变回了 无分类两级地址。IP地址分为网络前缀和主机号两部分,使用斜线记法,例如128.14.35.7/20,20表示前20位是网络号,后12位是主机号。

另外CIDR可以很方便地推出最小地址和最大地址,例如128.14.35.7/20的最小地址是128.14.32.0(后12位都是0)和128.14.47.255(后12位都是1),但是一般最小地址和最大地址都不使用。

由于一个CIDR地址块中有很多地址,所以在路由表中就利用CIDR地址块来查找目的网络,这种地址的聚合常称为 路由聚合(构成超网)

最长前缀匹配

采用CIDR后路由表中的项目改成只有 网络前缀下一跳地址 。匹配方法也变成了直接匹配网络前缀。但是在查找路由表时可能会得到不止一个匹配结果。因此应当从匹配结果中选择具有最长网络前缀的路由(最长前缀匹配)。

为了加快最长前缀匹配的查找,有很多算法。最常用的就是 二叉线索 ,一棵不平衡的二叉树(左0右1)。首先为每个路由表中下一跳地址计算出 唯一前缀 ,用所有的唯一前缀构成这棵二叉线索树,然后只需要在这棵二叉线索树查找出唯一前缀即可。

另外还有一些压缩技术进一步加速二叉线索的查找速度,例如有几个IP地址的唯一前缀都是1011开头,那只要目的IP地址是1011开头,则可以直接从第五层开始(跳过前4层。)。


网际控制报文协议ICMP

为了更有效地转发IP数据报和提高交付成功的机会,在网络层使用ICMP(Internet Control Message Protocol)。允许主机或路由器报告差错情况和提供有关异常情况的报告。ICMP报文是装在IP数据报中,作为数据部分存在。

最典型的ICMP应用就是PING,用来测试两个主机之间的连通性。PING是应用层直接使用网络层ICMP的一个例子,它没有通过运输层的TCP或UDP。


路由选择协议

路由选择协议就是解决路由表中的路由是怎么得出的问题。

自治系统(AS),一个网络对其他AS表现出的是一个单一的和一致的路由选择策略。

路由选择协议划分为两大类:

  • 内部网关协议IGP(Interior Gateway Protocol):即在一个自治系统内部使用的路由选择协议,如RIP和OSPF。

  • 外部网关协议EGP(External Gateway Protocol):自治系统之间使用的路由选择协议,如BGP-4

RIP(Routing Information Protocol)

RIP是一种分布式的基于距离向量的路由选择协议,网络中的每一个路由器都要维护自己到其他每一个目的网络的距离记录。从一个路由器到直接连接的网络距离定义为1,每隔一个路由器距离就加1,RIP允许一条路径最多只能包含15个路由器,因此16以上的都被认为不可达。

RIP协议规定,路由器一开始只知道到直接连接的网络距离,每一个路由仅仅和相邻路由交换信息,每次交换的信息是当前本路由所知道的全部信息,即自己的路由表。这样继续下去,每个路由都最终拥有整个自治系统的全局路由信息。

OSPF(开放最短路径优先 Open Shortest Path First)

OSPF使用分布式的链路状态协议。每个路由向本自治系统中所有相邻路由发送信息,收到信息的路由再向其他路由发送信息(除了刚刚发来消息的路由),信息内容就是与本路由相邻的所有路由器的链路状态,称为"度量",用来表示费用,距离,时延,带宽等等,有时候会叫"代价"。另外只有当链路状态发生变化时,路由器才向所有路由发送信息。

OSPF由于各路由器之间频繁地交换链路状态信息,因此所有路由最终都能建立一个 链路状态数据库(即全网的拓扑结构图) ,而RIP每个路由只知道到所有网络的距离以及下一跳路由,却不知道全网拓扑结构。

BGP(边界网关协议,方便起见,BGP-4简称BGP)

BGP只能力求寻找一条能够到达目的网络且比较好的路由,并非寻找一条最佳路由。

BGP要求每一个自治系统的管理员至少配置一个路由器作为该自治系统的BGP发言人,以此简化边界路由选择。


IP多播

也叫组播,即一对多同时通信。例如视频服务,视频服务器只需要发送一次数据,其他路由在转发过程中,复制自己需要转发的分组,最终把数据传到各客户端中。

NAT(Network Address Translation)

使用NAT技术,在专用网络内部使用专用IP地址,可以节约宝贵的IP地址。

装有NAT软件的路由器叫做NAT路由,它至少有一个有效的外部全球IP地址,所有使用本地地址的主机在和外界通信时,都要在NAT路由器上将其本地地址转换成全球IP地址,才能和互联网连接。

NAT路由器会维护一个NAT地址转换表,用来做本地地址和外界全球IP地址的转换工作,因此一个NAT路由具有多少个全球IP地址时,就只能 同时 使多少个主机接入因特网。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,117评论 4 362
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,328评论 1 293
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,839评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,007评论 0 206
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,384评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,629评论 1 219
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,880评论 2 313
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,593评论 0 198
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,313评论 1 243
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,575评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,066评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,392评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,052评论 3 236
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,082评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,844评论 0 195
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,662评论 2 274
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,575评论 2 270

推荐阅读更多精彩内容