IP是TCP/IP协议族中最为核心的协议。所有的TCP、UDP、ICMP及IGMP数据都以IP数据报格式传输。

IP提供不可靠、无连接的数据报传送服务。

1.不可靠:就是它不能保证IP数据报能成功地到达目的地。IP仅提供最好的传输服务。

2.无连接:每个数据报的处理都是相互独立的,IP数据报可以不按发送顺序接收。

1.IP首部

其中TTL(time-to-live)生存时间字段设置了数据报可以经过的最多路由器数。

一旦经过一个处理它的路由器,它的值就减去1。当该字段的值为0时,数据报就被丢弃。并发送ICMP报文通知源主机

2.IP路由选择

IP路由选择是简单的,大多数主机都是采用下面的简单机制。

如果目的主机与源主机直接相连(点对点链路)或在一个共享网络上(以太网),那么IP数据报就直接送到目的主机上。

否则,主机把数据报发往一默认路由器上,由路由器来转发数据报。

在一般的体制中,IP层在内存中由一个路由表。当收到一份数据报并进行发送时,它都要对该表搜索一次。

路由表中的每一项包含下面这些信息:

1.目的地址。既可是一个完整的主机地址,也可以是一个网络地址,由该表的标志字段来指定。

2.下一跳路由器的IP地址,或者有直接连接的网络IP地址。

3.标志

4.为数据报传输指定一个网络接口

IP路由选择主要完成以下的功能:

1.搜索路由表,寻找能与目的IP地址完全匹配的表目。如果找到,则把报文发送给该表目指定的下一跳路由器或直接连接的网路接口。

2.搜索路由表,寻找能与目的网络号相匹配的表目。如果找到,则把报文发送给该表目指定的下一跳路由器或直接连接的网络接口。

3.搜索路由器,寻找标为默认的条目。如果找到,则把报文发送给该表目指定的下一跳路由器。

如果上面这些步骤都没有成功,那么该数据报就不能被传送。

3.子网寻址

现在所有的主机都要求支持子网编址(把主机号再分成一个子网号和主机号)

在InterNIC获得某类IP网络号后,就由当地的系统管理员来进行分配,由他来决定是否建立子网,以及分配多少比特给子网号和主机号。

下面是一个B类地址的一种子网编址

4.子网掩码

除了IP地址以外,主机还需要知道有多少比特用于子网号及多少比特用于主机号,这是通过子网掩码来确定的。

这个掩码是一个32bit的值,其中值为1的比特留给网络号和子网号,为0的比特留给主机号。下图是一个B类地址的两种不同的子网掩码格式。

给定IP地址和子网掩码后,主机就可以确定IP数据报的目的是:

1.本子网上的主机

2.本网络中的其他子网中的主机

3.其他网络上的主机

 

TCP/IP详解 卷一(第三章 IP:网际协议)的更多相关文章

  1. TCP/IP详解 卷一(第二章 链路层)

    在TCP/IP协议族中,链路层主要有三个目的: 1.为IP模块发送和接收IP数据报 2.为ARP模块发送ARP请求和接收ARP应答 3.为RARP请求和接收RARP应答 TCP/IP支持多种不同的链路 ...

  2. TCP/IP详解 卷一(第一章 概述)

    很多不同的厂家生产各种型号的计算机,它们运行完全不同的操作系统,但TCP/IP协议族允许它们相互进行通信. 1.分层 TCP/IP不是一个协议,而是一个协议族,通常它被认为是一个四层的协议系统,下面展 ...

  3. 《TCP/IP 详解 卷一》读书笔记-----IP静态 路由

    1.主机中的路由表只能被守护进程routing daemon或者“redirect”类型的ICMP报文所更新. 2.在根据路由表进行路由选择时,判断的优先级从高到低依次为1)表中存在与目的IP完全匹配 ...

  4. 【TCP/IP详解 卷一:协议】第二章:链路层

    2.1 引言 链路层的三个目的: (1)为IP模块发送和接收IP数据报. (2)为ARP模块发送ARP请求和接收ARP应答.地址解析协议:ARP. (3)为RARP模块发送RARP请求和接收RARP应 ...

  5. 『TCP/IP详解——卷一:协议』读书笔记——10

    2013-08-22 22:57:17 3.8 ifconfig命令 这个命令在Linux系统下可以通过下面的指令阅读说明文档: ifconfig 由于书中作者用的系统比较早的某Unix系统,所以我的 ...

  6. 『TCP/IP详解——卷一:协议』读书笔记——01

    从今日起开始认真研读TCP/IP详解这本经典制作,一是巩固我薄弱的计算机网络知识,二来提高我的假期的时间利用率.将心得与思考记录下来,防止白看-哦耶 2013-08-14 18:47:06 第一章 概 ...

  7. 『TCP/IP详解——卷一:协议』读书笔记——07

    2013-08-20 17:51:49 第三章 IP:网际协议 3.1 引言 IP是TCP/IP协议族中最为核心的协议.所有的TCP.UDP.ICMP和IGMP数据都以IP数据报格式传输.再来看一下图 ...

  8. 【TCP/IP详解 卷一:协议】第十一章 UDP 用户数据报协议

    11.1 引言 UDP 是一个简单的 面向数据报 的运输层协议:进程的每个 输出操作 都正好产生一个 UDP数据报,并且组装成一份待发送的IP数据报. 这与 TCP 不一样,它是 面向流字符 的协议, ...

  9. 【TCP/IP详解 卷一:协议】第9章 IP选路

    推荐链接:网络地址与主机地址 9.1 引言 路由选择程序(daemon),通常这是一个用户进程.在大多数的Unix系统中,大多数的路由选择程序都是路由程序和网关程序. 路由表经常被IP访问,但是它被路 ...

  10. 【TCP/IP详解 卷一:协议】第六章:DHCP 和自动配置

    简介 为了使用 TCP/IP 协议族,每台主机or路由器都需要一定的配置信息: IP地址 子网掩码 广播地址 路由或转发表 DNS 协议配置方法: 手动 通过使用网络服务来获得 使用一些算法来自动确定 ...

随机推荐

  1. Hadoop入门第五篇:Hive简介以及部署

    标签(空格分隔): Hadoop Hive hwi 1.Hive简介   之前我一直在Maxcompute上进行大数据开发,所以对数仓这块还算比较了解,在接受Hive的时候基本上没什么大的障碍.所以, ...

  2. CSU 1809 Parenthesis(RMQ-ST+思考)

    1809: Parenthesis Submit Description Bobo has a balanced parenthesis sequence P=p1 p2…pn of length n ...

  3. python网络

    try: import urllib.request as urllib2 except ImportError: import urllib2 response = urllib2.urlopen( ...

  4. chrome浏览器警告:Failed to decode downloaded font:

    使用iconfont字体时chrome报错 Failed to decode downloaded font: 在服务器设置一下自己定义MIME类型. 扩展名: .woff Mime类型:applic ...

  5. 通过Xode上传代码到GIthub---步骤

    ---恢复内容开始--- 一:打开终端,git命令进行全局配置 由于本人已经配置完成,so,直接查看配置信息 然后在本地创建一个文件夹, 然后在gitHub上创建一个代码库 在终端clone到本地创建 ...

  6. Why Namespace?

    上一节我们讨论了 Neutron 将虚拟 router 放置到 namespace 中实现了不同 subnet 之间的路由.今天探讨为什么要用 namespace 封装 router? 回顾一下前面的 ...

  7. mongoDB最新版安装

    转载自:http://www.higis.org/2012/04/25/ubuntu-install-mongodb/ ubuntu上安装mongodb本可以直接通过sudo apt-get inst ...

  8. linux下解压zip文件

    linux下解压zip文件 linux自带的unzip命令可以解压windows下的zip格式的压缩文件. unzip命令 语法:unzip [选项] 压缩文件名.zip 各选项的含义分别为: -x ...

  9. duilib入门简明教程 -- 响应按钮事件(4) (转)

    原文转自 http://www.cnblogs.com/Alberl/p/3343610.html     上一个Hello World的教程里有一句代码是这样的:CControlUI *pWnd = ...

  10. GPIO和门电路

    1. GPIO 1.1 简介 GPIO, General Purpose I/O, 通用输入输出接口, 是最简单的数字输入输出引脚 - 作为输出可以有两种状态: 0和1 - 作为输入,它接收外面输入的 ...