第二章     因特网协议<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

 

TCP/IPDoD模型

DoD模型是OSI模型的一个基本的、浓缩的版本,他只有四个层次,而不是七个:

1.  过程/应用层

2.  主机到主机层

3.  因特网层

4.  网络接入层

DoD模型的过程/应用层中包含了大量的协议它集成了各种应用和功能来省城一个可以和OSI模型中三个高层(应用层、表示层和会话层)相对应的集合。

 

过程/应用层协议

1.  Telnet

它允许一个用户在一个远程的客户机上,访问另一台机器上的资源。

2.  FTP

文件传输协议实际上就是传输文件的协议,它可以应用在任意两个主机之间。

3.  TFTP

简单文件传输协议是FTP的简化版本,只有在你确切地知道想到得到的文件名及他的准确位置时,才可有选择的使用TFTP

4.  NFS

网络文件系统在文件共享中是一个特殊的协议珍宝。他允许两个不同类型的文件系统实现互操作。

5.  SMTP

简单邮件传输协议,是对应于我们普遍使用的被称为E-mail的应用,他描述了邮件投递中的假脱机、排列及方法。

6.  LPD

行式打印机守护进程协议,使被设计用于实现打印机共享的。

7.  X Window

为客户-服务器业务而设计,X Window定义了一个编写基于图形化用户界面(GUI)的客户-服务器应用程序的协议

8.  SNMP

简单网络管理协议采集并使用一些有价值的网络信息。

9.  DNS

域名服务可以解析主机名,特别是Internet名。

10.              DHCP/BootP

动态主机配置协议可以为主机分配IP地址。

 

主机到主机层协议

主机到主机层的主要目的,是将上层的应用从网络传输的复杂性中屏蔽出来。

在这里将描述着一层上的两个协议:

1.  传输控制协议(TCP

2.  用户数据报协议(UDP

 

传输控制协议

传输控制协议通常是从应用程序中得到大段的信息数据,然后将它分割成若干个数据段。

TCP的数据段格式

TCP报头是一个20字节长的段,在带有选项时可以达到24个字节。

TCP数据段中包含如下字段:

1.  源端口

2.  目的端口

3.  序列号

4.  确认应答号

5.  偏移量

6.  保留

7.  代码位

8.  窗口

9.  效验和

10.              紧急指针

11.              选项

12.              数据

 

用户数据报协议

如果将用户数据报协议(UDP)与TCP座一个比较,UDP基本是一个缩小规模的经济化模式,有时也被称为瘦协议。

UDP数据段的格式

UDP数据段中包含了下列字段:

1.  源端口

2.  目的端口

3.  数据段长度

4.  CRC

5.  数据

 

主机到主机层的重要概念

TCPUDP的重要功能
TCP           UDP
排序           无序
可靠           不可靠
面向连接       无连接
虚电路         低开销
确认           无确认
窗口流量确认   没有窗口或流量控制

 

端口号

TCPUDP都必须使用端口号来与上层进行通信,因为他们需要跟踪同时使用网络进行的不同的会话过程。不使用带有众所周知的端口号的应用程序的虚电路时从一个指定的范围中随机地指定端口号。
下面解释了可以使用的不同的端口号:
1.  低于1024的端口号被称为众所周知的端口号,他们是由RFC 3232所定义。

2.  大于10241024的端口号被上层用来建立与其他主机的会话,并且在TCP数据段中被TCP用来作为源方和目的方的地址。

 

因特网层协议

DoD的模型中,设置因特网层有两个主要的理由:路由及为上层提供一个简单的网络接口。

没有任何一个其他的高层或低层协议会涉及到任何有关路由的功能,这个复杂和重要的任务是完全属于因特网层。

因特网层协议:

1.  因特网协议(IP

2.  因特网控制报文协议(ICMP
3.  地址解析协议(ARP
4.  逆向地址解析协议(RARP

 

因特网协议(IP

因特网协议其实质就是因特网层。其他的协议仅仅是建在离其基础上用于支持IP协议的。

IP是从主机到主机层处接受数据段的,在需要时再将他们组合成数据报(数据包),然后接收方的IP再重新组合数据报为数据段。每个数据报都被指定了发送者和接收者的IP地址。每个接收了数据报的路由器都是基于数据包的目的IP地址来决定路由的。

构成IP报头的字段如下: 

1.  版本                         4

2.  报头长度(HLEN             4
3.  IP优先位或ToS               8
4.  总长度                       16
5.  标识                         16
6.  标志                         3
7.  分段偏移                     13
8.  TTL(存活期)                  8
9.  协议                         8
10.              报头和效验和                 16
11.              IP地址                    32
12.              IP选项                      032
13.              数据                         可变
注:后面的数字表示长度

 

IP报头的协议字段中可能发现的协议

协议

协议号

ICMP

1

IGRP

9

EIGRSP

88

OSPF

89

IPv6

41

GRE

47

IPX in IP

111

Layer-2 tunnel(L2TP)

115

 

因特网控制报文协议

因特网控制报文协议(ICMP)工作在网络层,它被IP用于提供许多不同的服务。ICMP是一个管理性协议,并且也是一个IP信息服务的提供者。他的信息是被作为IP数据报来传送的。

下面是与ICMP相关的一些常见的事件和信息:

1. 目的不可达 如果路由器不能再向前发送某个IP数据报,这是路由器会使用ICMP来传送一个信息返回给发送端,来通告这一情况。

2. 缓冲区满 如果路由器用于接收输入数据的内存缓冲区已经满了,他将会使用ICMP向外发送这个信息直道拥塞解除。

3. 每个ip数据报都被分配了一个所允许经过路由器个数的数值,被称为跳(hop)。

4. Ping Ping(即数据包的因特网探测)使用ICMP回应信息在互联网络上检查计算机间物理连接的连通性。

5. Traceroute Traceroute是通过使用ICMP的超时机制,来发现一个数据报在穿越互联网络时它所经历的路径。

 

地址解析协议ARP

地址解析协议(ARP)可以由已知主机的IP地址,在网络上查找到他的硬件地址。

逆向地址解析协议RARP

当一台误判计算机被用做IP主机时,它没有办法在其初始化时了解自己的IP地址。但是他可以知道自己的MAC地址。逆向地址解析协议(RARP)可以通过发送一个包含有无盘主机MAC地址的数据包,来询问与此MAC地址相对应的IP地址。

 

二进制、十进制和十六进制的转换

二进制到十进制的记忆表

二进制取值

十进制取值

10000000

128

11000000

192

11100000

224

11110000

240

11111000

248

11111100

252

11111110

254

11111111

255

 

十六进制到二进制到十进制表

十六进制值

二进制值

十进制值

0

0000

0

1

0001

1

2

0010

2

3

0011

3

4

0100

4

5

0101

5

6

0110

6

7

0111

7

8

1000

8

9

1001

9

A

1010

10

B

1011

11

C

1100

12

D

1101

13

E

1110

14

F

1111

15

 

IP寻址

IP地址是IP网络上每个计算机的数字化标识符。它指明了在此网络上某个设备的位置。

IP地址是一个软件地址,而不是硬件地址,后者是被硬烧录到网卡(NIC)中的并且主要是用于在本地网络上定位主机的。

IP术语

一位就是一个数字,要么是1,要么是0

字节 一个字节可以是7位或8

八位位组 就是8位,一个最基本的8位二进制数

网络地址 它是用来指定数据包所要传送的远程网络

广播地址 被应用程序或主机用来将信息发送给网络上所有节点的地址,我们称之为广播地址。

 

分层的IP寻址方案

一个IP地址包含有32位的信息。这些位通常被分割为四个部分,被称为八位位组或字节,每一部分包含一个字节(8个位)。

可以使用下面3种不同的方式来描述一个IP地址:

1.  点分十进制,如172.16.30.56

2.  二进制,10101100.00010000.00011110.00111000

3.  十六进制,AC.10.1E.38

所有例子表示的都是同一个IP地址

 

网络寻址

网络地址唯一地制定了每个网络。在同一网络中的美态计算机都共享相同的网络地址,并用它来作为自己IP地址的一部分。

节点地址是在一个网络中用来标识每台计算机的,它是一个唯一的标识符。这个地址的节点部分必须是唯一的,因为相对于网络而言它是用来独立的标识指定计算机的。

因特网的设计者决定根据网络的大小来创建网络的类别。

三个网络类别的总结

 

8

8

8

8

A

网络

主机

主机

主机

B

网络

网络

主机

主机

C

网络

网络

网络

主机

D

组播

E

研究

 

网络地址范围:A

00000000=0

01111111=127

网络地址范围:B

10000000=128

10111111=191

网络地址范围:C

11000000=192

11011111=223

网络地址范围:C类和E

介于224255之间的地址是被保留用作D类和E类网络的。D类是用于组播的地址(224239),而E类(240255)是被用于科学实验用途的。

网络地址:用于特殊目的

有些IP地址是被保留用于某些特殊目的的,网络管理员不能将这些地址分配给节点。

 

一些特殊的IP地址:

1.IP地址127.0.0.1:本地回环(loopback)测试地址

2.广播地址:255.255.255.255

3.IP地址0.0.0.0:代表任何网络

4.网络号全为0:代表本网络或本网段

5.网络号全为1:代表所有的网络

6.节点号全为0:代表某个网段的任何主机地址

7.节点号全为1:代表该网段的所有主机

 

一些私有地址的范围:

1.A类地址中:10.0.0.010.255.255.255.255

2.B类地址中:172.16.0.0172.31.255.255

3.C类地址中:192.168.0.0192.168.255.255

 

广播地址:

1.2广播:FF.FF.FF.FF.FF.FF,发送给LAN内所有节点

2.3广播:发送给网络上所有节点

3.单播(unicast):发送给单独某个目标主机

4.多播:1台主机发出,发送给不同网络的许多节点