tcp.ip网络编程new

tcp.ip网络编程new

ID:34528381

大小:1.13 MB

页数:31页

时间:2019-03-07

tcp.ip网络编程new_第1页
tcp.ip网络编程new_第2页
tcp.ip网络编程new_第3页
tcp.ip网络编程new_第4页
tcp.ip网络编程new_第5页
资源描述:

《tcp.ip网络编程new》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第18章IP数据报和数据报转发18.1概述前面我们介绍了互联网的体系结构,因特网寻址以及用来将IP地址翻译成硬件地址的地址解析软件。本章我们将讨论互联网中基本的通讯服务,包括互联网中包的格式以及路由器如何处理和转发这些包。第19章接着讨论路由器如何利用底层硬件来传送包。18.2无连接服务网络互联的目的是为了提供这样一种包通讯系统:一台计算机上运行的程序能够向另一台计算机上运行的程序发送数据。在一个设计良好的互联网中,底层物理网络对应用程序来说是透明的——这些应用程序能够收发数据而又无须了解很多细节,比如本机

2、所连的局域网、目的机所连的远程网络以及两者之间的互联等等。协议的设计者必须决定互联网协议要提供哪些通讯服务,以及如何高效地实现这些服务。另外,设计者还须决定是否为程序提供面向连接(connection-oriented)的服务,或是无连接(connectionless)的服务,或是两者都提供。TCP/IP的设计者既提供了无连接服务,也提供了面向连接的服务:他们选择了无连接的基本传送服务(deliveryservice),并在这些无连接的底层服务之上增加了可靠的面向连接的服务。这一设计非常成功,以至于经常被其

3、他的协议所模仿。18.3虚拟包无连接的互联网服务其实是包交换的一种扩展——这种服务允许发送方通过互联网传输单独的包。每一个包独立地在网上传送,它本身包含了用以标识接收方的信息。一个包是如何在互联网上传输的呢?答案就在于路由器将包从一个网转发到另一个网。源主机创建了一个包,将目的地址放入包的头部,然后将包送往相邻的路由器。当一个路由器收到一个包,就会使用包的目的地址来选择下一个路由器并向之转发。最终,包会到达这样一个路由器,此路由器能够直接将包传给它的最终目的地。一个互联网上的包的格式是怎样的呢?不幸的是,传

4、统的硬件帧格式不适合作为互联网上的包格式。这是因为路由器能够连接异构网络,而不同类型网络的帧格式不同,因此路由器不能直接将包从一个网络传送到另一个网络。另外,路由器也不能简单地重新格式化帧的头部,因为两个网络可能使用不兼容的地址格式(例如,一个输入帧中的地址可能对另一个网络而言是毫无意义的)。为了克服异构性,互联网协议软件定义了一种独立于底层硬件的互联网包格式。结果就产生了一种能无损地在底层硬件中传输的通用的(universal)、虚拟的(virtual)包(第19章将详细说明一个互联网包怎样在物理网中传输

5、)。就像虚拟(virtual)一词所示,协议软件负责产生和处理互联网包—底层硬件并不认识这种包的格式。又如通用(universal)一词所示,互联网上的每一台主机或路由器都有认识这种包的协议软件。概述如下:由于路由器可能连接异构的网络,它就不能直接将网上送来帧的传给另一个网。为了克服异构性,一个互联网必须定义一种与硬件无关的包格式。18.4IP数据报TCP/IP协议使用IP数据报(IPdatagram)这个名字来命名一个互联网包。令人惊奇的是,IP数据报竟然与硬件帧有同样的基本格式:IP数据报也是以一个头部

6、开始,后跟数据区。图18-1例举了这种数据报格式。一个数据报携带的数据量不固定,发送方根据特定的用途选择合适的数据量。例如,一个应用若需要传送击键信息,则可以将每次击键放在单独的数据报中,而当一个应用要传送大文件时,则会发送大数据报。关键在于:数据报的尺寸取决于发送数据的应用。大小可变的数据报使得IP可以适应各种应用。在当前IP版本(版本4)中,一个数据报的数据量可以小到一个字节,而数据报本身可以大到64K字节(包括头部)。在大部分数据报中,头部比数据区要小得多。为了理解这一点,有必要了解一下传输数据的开销

7、。就像物理网络帧中的帧头,数据报的头部意味着开销——传输头部所花费的时间中,并没有传输用户自己的数据。由于数据报头部的尺寸是固定的,发送大数据报导致单位时间内传送了更多的用户数据(即更高的吞吐率)。与帧头类似,数据报头部包含的信息是为了在互联网中寻径用。例如,头部包含发出该数据报的计算机地址和目的计算机的地址。当然,数据报头部的地址形式与帧头的地址形式是不同的——数据报包含的是IP地址,而帧包含的是硬件地址。概述如下:一个通过TCP/IP互联网的包叫IP数据报。每个数据报由一个头部和紧跟其后的数据区组成,数

8、据报头部中源地址和目的地址都是IP地址。18.5IP数据报的转发一个数据报沿着从源地址到目的地的一条路径穿过互联网,中间会经过很多路由器。路径上的每个路由器收到这个数据报时,先从头部取出目的地址,根据这个地址决定数据报该发往的下一站。然后路由器将此数据报转发给下一站,该下一站可能就是最终目的地,也可能是另一个路由器。为了使对下一站的选择高效而且便于理解,每个IP路由器在一张路由表(routingtable)中保存

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。