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. 第二篇:python基础_2

    本篇内容 数字 字符串 元祖 字典 列表 集合 for循环 二进制 字符编码 文件处理 一.数字 1.int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,即-2 ...

  2. iOS开发UI篇—自定义layer

    一.第一种方式 1.简单说明 以前想要在view中画东西,需要自定义view,创建一个类与之关联,让这个类继承自UIView,然后重写它的DrawRect:方法,然后在该方法中画图. 绘制图形的步骤: ...

  3. 【bzoj3083】遥远的国度 树链剖分+线段树

    题目描述 描述zcwwzdjn在追杀十分sb的zhx,而zhx逃入了一个遥远的国度.当zcwwzdjn准备进入遥远的国度继续追杀时,守护神RapiD阻拦了zcwwzdjn的去路,他需要zcwwzdjn ...

  4. DOM解析和优化

    DOM解析 1. css不会阻塞DOM解析(DOM Tree),但会阻塞DOM渲染(css Tree + DOM Tree -> render Tree )2. JS阻塞DOM解析,但浏览器会预 ...

  5. Java面试题之在多线程情况下,单例模式中懒汉和饿汉会有什么问题呢?

    懒汉模式和饿汉模式: public class Demo { //private static Single single = new Single();//饿汉模式 private static S ...

  6. Why Namespace?

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

  7. EntityFramework4.1 MODEL代码生成器 database first

    原文发布时间为:2011-04-02 -- 来源于本人的百度文章 [由搬家工具导入] Generating EF Code First model classes from an existing d ...

  8. bzoj 2115 [Wc2011] Xor 路径最大异或和 线性基

    题目链接 题意 给定一个 \(n(n\le 50000)\) 个点 \(m(m\le 100000)\) 条边的无向图,每条边上有一个权值.请你求一条从 \(1\)到\(n\)的路径,使得路径上的边的 ...

  9. Hadoop-hdfs安装与配置

    一.安装要求   安装JDK   yum -y install jdk(或手动安装)  设置namenode节点到datanode节点的免密码登陆   a. 本地免密码登录     # ssh loc ...

  10. 数据库索引实现原理—B_TREE

    数据库索引,是数据库管理系统中一个排序的数据结构,以协助快速查询.更新数据库表中数据.索引的实现通常使用B_TREE.B_TREE索引加速了数据访问,因为存储引擎不会再去扫描整张表得到需要的数据:相反 ...