网站大量收购独家精品文档,联系QQ:2885784924

第六章.docVIP

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第六章

第六章 传输层 传输层协议为运行在不同主机上的应用进程提供逻辑通信功能,使得从应用程序的角度来看运行不同进程的主机好像是直接相连的。应用进程使用传输层提供的逻辑通信功能相互发送消息,而无需考虑承载这些消息的物理网络的细节。 传输服务 在网络体系结构中设置传输层有两个原因。第一,端系统上通常运行多个进程,为允许多个进程共享网络,需要有一个层次来提供多路复用和解多路复用的功能。比如,在源主机上各个进程的数据被封装在不同的数据报中送入网络(多路复用),而在目的主机上从数据报中取出的数据被交给相应的进程处理(解多路复用)。第二,网络层提供的服务有时不能满足应用程序的需要,需要有一个层次将网络层低于要求的服务转变成应用程序需要的高级服务。比如,应用程序要求消息按顺序传输,并且是无差错的,而网络层(如数据报网络)提供的是不可靠无连接服务,这时传输层必须负责对数据报进行差错控制和排序,以使应用进程得到满意的服务。 在传输层上提供传输服务的硬件或软件称为传输实体,传输实体可能在操作系统内核中,或在一个单独的用户进程内,也可能包含在网络应用的程序库中,或是位于网络接口卡上。传输服务也分为面向连接和无连接两类,分别和网络层上的面向连接和无连接服务类似。 为允许用户访问传输服务,传输层必须向应用程序提供一组操作,也就是传输服务接口。由于传输接口的使用者主要是人(程序员),因此传输服务必须方便易用。比如,在面向连接的传输服务中,为提供可靠性,传输实体需要对数据包进行确认、超时处理、排序、流量控制等一系列复杂的操作,但用户完全不需要知道这些,用户只知道他使用的是一个可靠的比特管道,数据从一方进入管道,就会从另一方正确地出现。因此,用于数据传输的原语只有接收和发送,象确认、超时重传、流量控制等操作均被隐藏起来了。一组最简单的面向连接的传输原语只需要包括监听、建立连接、拆除连接、接收数据和发送数据,如图6-2所示。 图6-5是伯克利UNIX的TCP传输原语,传输原语在这儿称为套接字。伯克利套接字采用客户-服务器模式工作,通信的端点称为套接口(socket)。平时服务器总在一个套接口上监听客户的服务请求,客户则在另一个套接口上向服务器请求服务。当客户的服务请求到达服务器时,服务器会创建一个新的但属性完全相同的套接口,在该套接口上创建一个新的服务进程或线程为用户服务,而自己仍然回到原来的套接口上继续监听下一个服务请求。 2. 传输协议的要素 传输服务是通过在两个传输实体间执行传输协议来实现的。在某些方面传输服务和数据链路层服务很类似,比如都要进行差错控制、流量控制、排序等。然而由于这两个协议工作的环境不同,它们之间还是有很大的区别。如图6-7所示,数据链路层处理相邻两个节点间的数据传输,而传输层处理两个端主机(中间可能隔了一个网络)之间的数据传输,这种差异对协议有很大的影响。具体体现在: 寻址:在点-点网的数据链路层上,一条线路仅连接两个节点,因此节点不需要显式指出它要和谁通信;但在传输层上,通信的两个实体中间隔了一个网络,一个传输实体必须显式指出它要与之通信的目的传输实体。 建立连接的难易:在数据链路层上建立连接很简单,但在传输层上,由于数据包在穿过通信子网时会丢失、失序、重复,这使得可靠地建立传输连接非常困难。 存储管理和流量控制:数据链路层上存储管理很容易,只需要为每条线路固定分配与发送窗口和接收窗口相同大小的缓冲区就可以了;但是在传输层上,由于连接数目很大且动态可变,这种固定的存储分配就行不通了,必须采用动态存储管理方法。 传输层编址 为指明数据包应交给哪个进程处理,每个进程需要有一个标识。适合于网络环境的进程标识方法是为每个进程指定一个传输地址,源进程向目的进程的传输地址发送消息,而目的进程从自己的传输地址接收消息。传输地址在因特网中称为端口(一个16比特的整数),在ATM网络中称为AAL-SAP,它的更一般性的术语是传输服务访问点TSAP(Transport Service Access Point),即应用程序调用传输层服务的地方。 传输地址是传输层通信的端点,网络地址(更一般的术语是NSAP,Network Service Access Point)是网络层通信的端点,TSAP、NSAP与传输实体的关系如图6-1所示。每个TSAP上绑定一个应用进程,应用进程通过各自的TSAP调用传输层服务。传输实体(传输层服务的提供者)通过本地的NSAP调用网络层服务,与远程的对等传输实体进行通信。 在源主机(如主机1)上,源进程将应用数据、目的进程的TSAP以及目的主机(如主机2)的NSAP传递给与其关联的本地传输实体。本地传输实体构造一个传输层协议数据单元(Transport Protocol Data Unit,TPDU),将应用数据放入

文档评论(0)

daoqqzhuan2 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档