计算机网络复习小结(3)-IPv4
IPv4分组
一个IP分组由首部和数据两部分组成,首部前一部分的长度固定,共20B,是所有IP分组必须具有的。在IP数据报首部中有三个关于长度的标记,一个是首部长度,一个是总长度,一个是片偏移,基本单位分别是4B、1B、8B。TCP、UDP的首部也是一样的。
一个链路层数据报能承载的最大数据量称为最大传送单元(MTU)。IP首部中的标志位有3比特,但只有后2比特有意义,分别是MF位,DF位。只有当DF=0时,该IP数据报才可以被分片,MF用来判断告知目的主机该IP数据报时候为原始数据报的最后一个片。如果MF=1,表示相应的原始数据报还有后续的片,MF=0表示该数据报是最后一个片。
因为偏移值得单位是8B,所以除了最后一片外,其他所有片中的有效数据载荷都是8的倍数。
网路层转发分组的流程
网络层的路由器执行的分组转发算法如下:
1.从数据报的首部提取目的主机的IP地址D,得出目的网络地址N。
2.若网络N与此路由器直接相连,则把数据报发送给目的主机D,这称为路由器的直接交付,否则是间接交付
3.若路由表中有目的地址为D的特定主机路由,则把数据报传送给路由表中所知名的下一跳路由器。
4.若路由表中有到达网络N的路由,则把数据报传送给路由表指明的下一跳路由器
5.若路由表中有一个默认路由,则把数据报传送给表中所指明的默认路由器
6.报告转发分组出错
在不同的网络中传送时,MAC帧中的源地址和目的地址要发生变化,但是网桥在转发帧时,不改变帧的源地址
IP地址与NAT
一个IP地址在整个因特网范围内是唯一的。
在各类IP地址中,有些IP地址具有特殊用途,不用做主机的IP地址
主机号全为0,表示本网络本身
主机号全为1表示本网络的广播地址,又称直接广播地址
127.0.0.0保留为环路自检地址,此地址表示任意主机本身,目的地址为环回地址的IP数据报永远不会出现在任何网络上。
32位全为0,即0.0.0表示本网络上的本主机
32位全为1,表示整个TCP/IP网络上的广播地址,又称受限广播地址。实际使用时,由于路由器对广播域的隔离,255.255.255.255等效为本网络的广播地址。
网络地址转换(NAT)
NAT是指通过专用网络地址转换为共用地址,从而对外隐藏内部管理的IP地址。大大节省了IP地址的消耗。
普通路由器在转发IP数据报时,不改变其源IP地址和目的IP地址.而NAT路由器在转发IP数据报时,一定要更换其IP地址(转换源IP地址和目的IP地址),普通路由器仅工作在网络层,而NAT路由器转发数据报时需要查看和转换运输层的端口号
子网划分与子网掩码、CIDR
子网划分
添加一个子网号字段,使二级IP地址变成三级IP地址,这种做法称为子网划分。
子网划分的基本思路:
1.子网划分纯属一个单位内部的事情,单位对外仍然表现为没有划分子网的网络。
2.凡是从其他网络发送给本单位某台主机的IP数据报,仍然是根据IP数据报的目的网络号,先找到连接到本单位网络上的路由器。然后该路由器在收到IP数据报后,按目的网络号和子网号找到目的子网。最后把IP数据报直接交付给目的主机。
子网划分时,子网号不能全1或全0,子网中主机号全0的地址为子网的网络号,主机号全1的地址为子网的广播地址。
ARP、DHCP、与ICMP
IP地址与硬件地址
IP地址是网络层使用的地址,它是分层次等级的。硬件地址是数据链路层使用的地址(MAC地址),在网络层及网络层之上使用IP地址,IP地址放在IP数据报的首部,MAC地址放在MAC帧的首部。通过数据封装,把IP数据报分组封装为MAC帧后,数据链路层看不见数据报分组中的IP地址。
在IP网络的网络层只是用IP地址来完成选址,依据路右边选择到目的网络需要转发到的下一跳,IP分组经过多次路由转发到达目的网络后,改为在LAN中通过数据链路层的MAC地址以广播方式寻址。
1.在IP层抽象的互联网上只能看到IP数据报
2.在IP数据报首部中有完整的源IP地址和目的IP地址,但路由器只根据目的IP地址的网络号进行路由选择
3.在局域网的链路层,只能看见MAC帧,通过路由器转发IP分组时,此IP分组在每个网络中都被路由器解封和重新封装。所以IP数据报在被路由器钻法师,其数据链路层封装所使用MAC地址是不断改变的。这也改变不了无法使用MAC地址跨网络通信
路由器由于互联多个网络,因此它不仅有多个IP地址,也有多个硬件地址
地址解析协议(ARP)
ARP将IP地址解析为链路层所需要的硬件地址。
DHCP协议
DHCP是应用层协议,基于UDP,常用于给主机动态地分配IP地址。
ICMP协议
ICMP报文作为IP层数据报的数据,加上数据报的首部,组成IP数据报发送出去。ICMP是IP层协议。
报文类型:
终点不可达:路由器或主机不能交付数据报时
源点抑制:因为拥塞而丢弃数据报时
时间超时
参数问题
改变路由(重定向)
PING工作在应用层,它直接使用网络层的ICMP,而未使用传输层的TCP或UDP。
题目小结
协议字段表示为IP使用的上层协议
首部三个关于长度的标记:首部长度,总长度,片偏移,对应:4B、1B、8B
IP分组的校验字段,只检查首部信息,不包括数据部分。
数据链路层使用MAC地址标识主机或路由器,IP地址对应物理地址。
分片后,每个分片独立地前往目的地,到达目的地后重组。
片偏移标识分片携带数据在原始分组中的位置
不管网络又没有划分子网,只要把子网掩码和IP地址逐位相与,就可以得出网络地址来
127.xx.yy的IP地址都作为保留地址
划分子网增加了灵活性,但是减少了连接在网络上的主机数。
划分子网可以增加子网数量,但是减少了广播域的大小。
如果一个主机有两个IP地址表示该主机属于两个或两个以上的逻辑网络。
IPv4会设定生存时间,每经过一次就会减1,直到为0,不再转发。用来解决网络中的数据形成传输环路而无限转发环路的分组。
IP分组可以被路径中的路由器分片,并在目的主机进行重组。
NAT的表项需要管理员添加,若在NAT表项中找不到则不转发该分组。
DHCP提供一种机制,使用DHCP可以自动获得IP的配置信息。
ICMP属于IP层协议,在网络层
PING指令使用了ICMP的回送请求和回答报文。
MAC地址会随着信息发往不同的网络而改变,会改变为路由器两个端口的MAC地址。
在数据链路层,MAC地址用来标识主机或路由器,数据报到达具体目的网络后,需要知道目的主机的MAC地址才能成功送达,因此需要将IP地址转换成对应的MAC地址,即物理地址
CIDR是一种归并网络的技术,CIDR技术的作用就是把小的网络汇聚成大的超网
在实际网络的数据链路层上传送数据时,最终必须使用硬件地址,ARP将网络层的IP地址解析为数据链路层的MAC地址。
因为不知道目标设备在哪里,所以ARP请求务必使用广播方式,但是ARP请求包中包含有发送方的MAC地址,因此应答应该使用单播方式。
ICMP是一个网络层协议,但是其文仍然要封装在IP分组中发送。
UDP和TCP都是传输层协议,为应用层提供服务,PPP是链路层协议,为网络层提供服务。
默认路由只有当前面的所有目的网络都不能和分组的目的IP地址匹配时才使用。
IPv6的特点
地址从32位扩展到128位
IPv6的字节数为16B,IPv4的字节数4B
IPv6没有提供校验和字段,没有使用首部校验和来保证传输的正确性。
路由信息协议
RIP规定
所有的结点都定期地将它们整个路由器选择表传送给所有与之直接相邻的结点
这种路由选择表包含每条路径的目的地址和距离——以跳数为单位
所有结点都监听从其他结点传送来的路由选择更新信息,并更新路由表,使得更新为最佳路由
更新条件
1.被通告一条新的路由,该路由在本地结点的路由表中不存在,则本地结点中加入该新的路由
2.通过发送路由信息的结点有一条达到某个目的地的路由,该路由比当前使用的路由有更短的距离用经过发送路由信息的结点的新路由顶替当前路由表中的现有路由
特点
仅和相邻路由器交换信息
路由器交换的信息是当前路由器知道的全部信息,即自己的路由表
按固定的时间间隔交换路由信息
开放最短路径优先协议
OSPF协议属于内部网关的一种,和RIP有4点主要区别
OSPF向本自治系统中的所有路由器发送信息,使用的时洪泛法,RIP只向相邻的路由器发送信息
发送的信息是本路由器相邻的所有路由器的链路状态
只有链路状态发生变化时,路由器才用洪泛法向所有路由器发送信息
OSPF是网络层协议,不使用UDP或TCP
计算机网络复习小结(3)-IPv4的更多相关文章
- 2016.7.7 计算机网络复习要点第四章之网际协议IP
1.与IP协议配套使用的还有三个协议: **地址解析协议ARP: **网际控制报文协议ICMP: **网际组管理协议IGMP: 2.虚拟互连网络: **没有一种单一的网络能够适应所有用户的需求: ** ...
- 设计模式复习小结一(Strategy Pattern/Observer Pattern/Decorator Patter/Factory Pattern)
目录: 前言 1. Stratrgy Pattern 2. Observer Pattern 3. Decorator Pattern 4. Factory Pattern 4.1 FactoryPa ...
- 2016.7.9 计算机网络复习要点第四章之虚拟专用网VPN和网络地址转换NAT
1.虚拟专用网VPN (1)一个机构内,对于那些仅在本机构内部使用的计算机就可以由本季候自行分配其IP地址,让这些计算机使用仅在本机构有效的IP地址(本地地址),不需要申请全球唯一的IP地址(全球地址 ...
- 2016.7.9 计算机网络复习要点第四章之网际控制报文协议ICMP
1.ICMP允许主机或路由器报告差错情况和提交有关异常情况的报告:为了更有效地转发IP数据报和提高交付成功的机会: 2.ICMP不是高层协议,因为ICMP报文是装在IP数据报中的,作为其中数据部分,所 ...
- 2016.7.8 计算机网络复习要点第四章之地址解析协议ARP
1.地址解析协议ARP:知道一个机器的IP地址,需要找到其相应的硬件地址:ARP协议的用途是为了从网络层使用的IP地址解析出在链路层使用的硬件地址: 2.由于是IP协议使用了ARP协议,因此通常就把A ...
- 2016.6.20 计算机网络复习要点第三章之CSMA/CD协议
1.最早的以太网是将许多计算机都连接到一根总线上: (1)总线的特点是:当一台计算机发送数据时,总线上的所有计算机都检测到这个数据,这种就是广播通信方式: (2)为了实现在总线上的一对一通信,可以使每 ...
- 2016.6.17 计算机网络复习要点之PPP协议
点对点协议PPP是目前使用最广泛的数据链路层协议. 1.PPP协议的特点: **我们知道因特网用户通常需要连接到某个ISP才能接入到因特网,PPP协议就是用计算机和ISP进行通信时所使用的数据链路层协 ...
- React复习小结(一)
一.React的发展 facebook在构建instagram网站的时候遇见两个问题: 1.数据绑定的时候,大量操作真实dom,性能成本太高 2.网站的数据流向太混乱,不好控制 于是facebook起 ...
- html复习小结
border-radius可以设置百分比 百分之五十是圆形 class="class1 class2" 无序列表 <ul><li></li>&l ...
- 数位DP复习小结
转载请注明原文地址http://www.cnblogs.com/LadyLex/p/8490222.html 之前学数位dp的时候底子没打扎实 虚的要死 这次正好有时间……刷了刷之前没做的题目 感觉自 ...
随机推荐
- nestjs mongoose关联查询
nestjs,mongoose关联查询网上搜不到了,查看了nest/mongoose.d.ts文件,分享一波 user.model.ts import { Prop, Schema, SchemaFa ...
- Java编码规范总结(腾讯)
以下内容参考自:Java编码规范总结(腾讯+阿里)_pursue_vip的博客-CSDN博客_java编码规范 Java编码规范总结(参考腾讯编码规范) 一.java文件组织 文件组织规则:由于超过2 ...
- 第六章:用Python实现自动发送邮件和发送钉钉消息
目录 发送邮件源码 发送钉钉消息源码 源码地址 本文可以学习到以下内容: 使用requests库发送钉钉消息 使用email和smtplib库发送邮件 使用163邮箱服务,自动发送邮件及附件 发送邮件 ...
- ORACLE 失效索引重建
-- 获取失效索引 SELECT * FROM USER_INDEXES WHERE TABLE_NAME IN ('表名') AND STATUS = 'UNUSABLE'; -- 重建语法alte ...
- android修改frameework与service,vendor分区需要替换的文件
1. 修改framework代码 需要将framework.jar包提供给android studio使用,并替换车机内文件(两种framework.jar不是同一文件,一个是生成文件一个是安卓目录文 ...
- yarn 更新依赖包
yarn upgrade --latest 其他的以后再记录.
- 配dns
cat /etc/resolv.conf
- [Javascript摸鱼记录] 关于js简单字符删减替换增加插入追加前中后处理
以前总是怕死js如其名,能让我入坑润不出来,然后最近被迫写点静态html,又要用到数值运算处理, 于是又开启了「好几十个标签栏解决一个问题」的"探索路程",顺便记录一下摸鱼结果希望 ...
- xfce-debian10 英文环境安装配置记录
Centos还没有用利索(因为我听说debian是更纯正的社区开源项目???可是这对于我这样毫无技术菜鸟来说有什么关系呢???可是耐不住心中的悸动???悸动又从哪里了呢???哎,不管了),突然心血来潮 ...
- uniapp打包app出现HTML5+ Runtime
在manifest.json->源码视图的 "app-plus"下面添加: "app-plus" : { "compatible" : ...