找回密码
 立即注册

微信扫码登录

使用验证码登录

搜索
查看: 76|回复: 0

11.第11节课第5章运输层

[复制链接]

6476

主题

3

回帖

1万

积分

管理员

积分
19556
发表于 2024-4-15 08:44:08 | 显示全部楼层 |阅读模式
好同学们,大家好,今天呢,我们来为大家介绍一下计算机网络当中运输层这样一部分内容。我们呢,给大家先概括的介绍一下运输层协议的特点,进程之间和通信的端口,那么这样一些概念。然后呢,讲述udp协议。以及呢TCP协议和可靠传输的工作原理。那么并且呢,大家呢,要了解停止等待协议和arq协议。另外呢,

大家还要着重掌握的呢,是TCP的三个重要问题滑动窗口。流量控制以及呢,拥塞控制机制。首先我们来看一下。运输层。从通信和处理信息的角度看呢,运输层向它上面的应用层提供通信服务。它属于面向通信部分的最低层。同时呢,也是用户功能中的最低层。当网络的边缘部分中的两个主机呢?边缘部分就是我们的资源子网。也就是我们的端系统。当网络的边缘部分中的两个主机呢?

使用网络的核心部分,网络的核心部分。就是我们的。通信子网,我们的路由器。使用我们网络的核心部分功能呢,进行端到端的通信时,只有位于网络层。边缘的。主机的协议站才有运输产。而网络的核心部分,中间的路由器呢?在转发分组时呢,都只用到了下三层的功能。这里呢,

我们得再给大家详细的介绍一下网络的边缘部分,就是我们的资源子网,就是我们的端系统。它在进行通信的时候呢,它使用了我们网络层次结构当中的五层协议。包括了应用层,运输层。网络层数据链路层以及呢,物理层。而在网络的核心部分,也就是我们的通信子网,我们的路由器当中。它在进行这样一个数据传输的时候呢,只用到了网络层次协议当中的下三层,比如说我们的网络层。

数据链路层以及了物理层这三层的功能,那么这是我们进程之间通信的部分。那么,我们来看一下。运输层呢,为相互通信的应用进程提供了逻辑通信,我们呢两个主机。在进行通信的时候呢,通过我们网络核心部分的路由器的转发分组。我们看上去了,好像。是在。进行运输层之间的这样一个通信,那么是什么含义呢?我们好像我们的信息呢?

我们的应用程进程一应用进程二应用进程三应用进程四进行通信。那么我们好像进行通信的时候呢,是在我们的运输层之间呢,就直接把我们的信息呢进行了传递。这里呢,大家要明白一个概念。主机间的通信。它的实质上。是我们。主机当中的应用进程之间的通信,这里大家了解。主机的通信实质上是主机当中的应用进程之间的通信。那么,这里大家要知道。我们在使用网络中的路由器进行转发的时候。

看上去了,好像是两个主机当中的。运输层之间就提供了这样一个逻辑通信。但实际上呢,大家还是要知道它是通过我们主机的,从上层到下层的这样一个信息传递。再从我们路由器的物理层,数据链路层传到网络层,再从网络层传到数据链路层传到物理,这样一个依次的转发。才将我们的信息呢,从一台主机当中的进程呢,传送到另外一台主机当中的进程。我们来看一下。在我们的。

路由器以及呢主机这样两种构成的协议部分呢?进行的数据交换当中。我们的IP协议网络层的作用范围是什么呢?我们的网络层的作用范围是什么呢?我们在网络层。它的作用范围。就是从我们的这样一个。路由器。进行传输。然后呢?传送到主机。也就说说什么含义呢?我们IP协议我们网络层它的这样一个作用范围呢?是将我们的信息呢?从主机传送到主机。

也就是说,网络层为主机之间提供逻辑通信。也就是说,网络进程呢?网络层呢?为主机进行逻辑通信。而我们的运输层的协议呢?TCP和udp协议它是什么呢?它为应用进程之间提供端到端的逻辑通信。那么,这里大家要知道。网络层为主机之间提供逻辑通信,而运输层呢,为应用进程之间。提供多机通信。

也就是说,运输层提供的是应用进程之间的逻辑通信。逻辑通讯的意思呢,是从应用层来看,只要把应用层报文交给下面的运输层。运输层呢,就可以把这种报文呢传到对方的运输层,好像这种通讯呢,是沿水平方向直接传送数据。那么,但实际上呢?并非这样,真正的这样通信,他们是通过路由器的转发,通过这样一个不同层次之间的传送,

那么实现我们信息的这样一个交换信息的这样交换。新的信息的这样一个传输。那么,这是我们的应用层,我们的物理层,我们的这样一个网络层和我们的运输层之间的这样一个部分。我们来看一下。IP协议的作用范围。是从一个网络到网络。而我们的运输层的作用范围呢?它的这样一个TCP udp的范围呢?是从我们的端到端,是从主机到主机。那么,这是我们。

IP协议的作用范围以及呢TCP协议和udp协议的作用范围。那么刚才我们讲过两个主机进行通信。实质上呢,是两个主机当中的应用进程之间进行通信。应用进程之间的通信呢,又称为端到端的通信。运输层呢,一个很重要的功能就是复用和分用。应用层不同进程的报文,通过不同的端口呢,向下交到运输层。再向下呢,就是用共用网络层呢,提供的服务。IP协议的作用范围呢,

是提供主机间的逻辑通讯。而运输层之间的作用范围呢,是提供进程之间的这样一个逻辑通信。运输层呢,向高层屏蔽了下面网络核心的细节,它使应用进程看见的了,好像在两个运输层实体之间有一条端到端的逻辑通信信道。但是这条逻辑通信信道呢,对上层表现却因为运输层使用不同协议而有很大的差别。到运输层呢,采用面向连接的TCP协议时,尽管下面的网络是不可靠的,但这种通信通,国际通信信道呢,相当于一条全双工的通信信道。

当运输层呢,采用无连接的utp协议时呢,这个逻辑通信信道呢,仍然是不可靠的信道,那么接下来我们来看一下运输层的两个协议。就是我们的TCP和udp。运输层呢,为应用进程之间提供端到端的逻辑通信。运输层要对收到的报文呢进行差错检测。运输层呢,需要有两种不同的运输协议,比如说面向连接的TCP和无连接的udp。我们来看一下一个呢。是用户数据报协议udp一个呢?是传输控制协议TCP。

两个对等实体。对等运输实体在传送时的数据单元呢,叫做运输协议数据单元。在TCP ID体系中,根据所使用的协议呢,是TCP和udp分别称之为TCP报文段或者udp用户数据报。udp在传送数据之前呢,不需要先建立连接对方的运输层呢?在收到udp报文之后呢,不需要给出任何确认。虽然udp呢,不提供可靠交付。但是呢,在某些情况下呢,udp是一种最有效的方式。

那么我们udp呢?它可以提供广播的服务。而我们的TCP。提供面向连接的服务。TCP呢,不提供广播或多播服务。由于TCP要提供可靠的面向连接的运输服务呢,因此不可避免的增加了许多开销。那么,这不仅呢,使协议数据单元的首部增大了很多,还需要有许多更多的处理器资源。那么,我们来看一下这个部分udp呢?它在收到udp报文后呢?

不需要给出任何确认。那么它就可以了,进行这样一个广播。而TCP呢,它不提供广播和多播服务,我们举一个例子,比如说我们上课。上课老师向学生们讲述这样一个知识内容。这样呢,可以看成是一种udp的广播形式。那么,为什么看作是udp的广播形式呢?然后比如说udp呢?我们学生呢?在收到老在听到老师讲的这样一个内容后呢?

不需要给出任何确认,那么如果呢,我们老师每讲一句话,每讲一个。内容那么就一就就问每个同学听到了没有,那么听到了就回回答一下,然后又问另一个同学听到了没有,听到了就回答一下。然后再问其他同学听到了没有,听到了就回答一下,那么这样呢,就大大的降低了我们这样一个上课的,这样一个效果,那么和它的这样一个。效率。

所以说我们老师呢,在给学生讲课。这样一种方式呢,采取的呢就是udp的形式,类似于广播的方式,那么不需要呢?学生给出确认老师呢?再讲这样一个部分呢,就可以了。那么,这是udp的方式,那么所以大家要记住udp呢?那么可以提供广播的服务。而TCP呢,是不提供广播的服务,

那么所以呢,大家这里要记住。运输层的udp用户数据报呢?与网络层的IP数据报有很大的区别。IP数据报要经过互联网的许多路由器的存储转发。但udp用户数据报呢,是在运输层端到端抽象的逻辑性当中传送的。TCP报文段在运输层抽象的端到端的逻辑性当中传送,但这种信道呢?是可靠的。全双工信道。但这样的信道呢,却不知道经过了哪些路由器,而这些路由器呢,也根本不知道上面的运输层呢。

是否建立了。你TCP连接。接下来我们看一下运输层的端口。运行在计算机中的进程呢,是用进程标识符来进行标识的。运行在应用层中,各种应用进程,那么却不应当呢?让计算机操作系统呢?指派它的进程标识服务。因为呢,在因特网上使用的计算机的操作系统种类很多,而不同的操作系统呢,有使用不同格式的进程标志符。为了使运行不同操作计算机的应用系统进程呢,

能够互相通信就必须呢,用统一的方法对TCP ib体系协议呢进行。进行标志。那么由于呢,我们需要解决这样一些问题,由于进程的创建和撤销都是动态的。发送方呢,几乎无法识别其他机器上的进程,有时呢,我们会改变接收报文的这样一个进程,但不需要了通知所有的发送方。那么另外呢,我们往往需要利用目的主机提供的功能来识别终点,而不需要知道实现这个功能的进程。那么,

我们的端口呢?就是提供一种功能。那么,我们举一个例子。我们来看一下。比如说。我们呢?打电话。比如说我们打幺幺零打报警电话。我们要使用的呢,只是这个幺幺零报警电话的,它的这样一个报警的,这样一个功能。那么,我们并不去了。

嗯,在意。这个接电话的究竟是哪一位哪一哪一个哪一个人?那么我就是接电话呢,没有去在意接电话的人是是谁是哪一个,那么我们只是要。去完成这项功能。报警的这样功能,又比如说我们去医院看病,比如说我们看一个。外科。那么,我们只需要呢?找一个外科医生来给我们看病就可以,那么我们不需要了。

去分辨。究竟是其中哪一个外科大夫来看病?来给我们看病,那么这是我们的端口。我们说端口呢。那么就是实现一定的功能用进程呢?来实现一定的功能,实现这个功能的部分,那么我们只需要呢使用的呢?是这样一个进程的,这样一个功能。那么,解决这个问题的方法呢?就是在运输层使用协议端口号或者简称为端口。虽然通信的终点呢,

是应用进程,但我们可以把端口号呢,想象成通讯的终点,因为我们只需要把呢传送的报文交到目的主题的最某一个合适的目的端口,剩下的工作呢,就交给TCP来完成。在协议债层间的抽象协协议端口呢,是软件端口,路由器或交换机上的端口呢,是硬件端口。硬件端口呢,用不同硬件设备进行交互的接口,而软件端口呢是应用层。各种协议进程与运输群体之间进行交互的一种地址。端口呢,

用一个16位的端口号进行表示,端口号只具有本地意义。比如说端口号呢,只是为了标志计算机应用层中的各进程,在因特网中不同计算机的相同端口号呢,是没有联系的。我们有三类端口,熟知端口,登记端口,那么客户端口号。熟知端口呢,数值一般为一到一零二三,登记端口号呢,一般为一零二四。到四九一五一。

那么,为没有熟知的端口号呢?提供的应用进程,程序使用。使用这个范围的端口呢,必须在iva进行登记,以防止重复。客户端口号呢,或者短暂端口号呢,数字为四九一五二和到六五五三五,留给客户进程转选择暂时使用。那么,当服务进程呢?收到客户进程的报文时,就知道客户进程所在的端口号,

因此呢,可以把数据呢?发送给客户进程,通信结束后呢,刚才已经使过了,使用的客户端口号呢,就不复存在,那么这个端口号呢,就可以提供给其他应用客户进行使用。接下来我们看一下用户数据报udp。udp呢?只在IP数据包服务上呢,增加了一点功能。就说端口的功能呢和差错检测的功能。udp呢,

它的主要特点我们看一下。udp是无连接的,比如说发送数据之前不需要建立连接。udp呢,尽最大努力交付,你说不保证可靠交付,也不使用拥塞控制。udp呢是面向报文的udp,没有拥塞控制,适合了多媒体通信的要求。udp支持一对一,一对多,多对一和多对多的交互通信。因为另外呢,udp的首部开销小只有八个字节,

比TCP的20个字节呢要短。我们来看一下。发送方udp对应用进程交下来的报文,在添加首部后呢,就向下交付给IP层。udp呢对应用层交下来的报文呢,既不合并也不拆分,而是保留着报文的边界。也就是说,我们应用层交给udp多长的报文呢?udp呢?就照原样发送一次呢?发送一个报文。接收方udp呢?对IP层上交来的udp用户数据报在去除手部后呢?

就原封不动的上交给上层的应用进程。一次呢,交付一个完整的报文。应用程序必须选择合适大小的报文,这是我们面向报文的udp。udp呢,是面向报文的。那么,我们来看一下。udp.它的这样一个。部分应用层报文呢?传送到。运输层。那么,

应用层交给udp多大的报文呢?udp呢?就照原样发送。那么。他对应用层交下来的报文既不合并,也不拆分,而是保留这些报文的边界。那么对于。往。对于IP层上交来的udp用户数据包呢,在去除手部后呢,就原封不动的交给上层的应用进程。那么也就是说udp呢,一次交付一个完整的报文。我们来看一下udp的首部格式。

用户数据报udp呢,有两个字段,数据字段和首部字段,首部字段的意义很简单,只有八个字节,由四个字段组成。每个字段的长度都是两个字节,那么我们先看一下原。端口原端口呢?这是原端口号。需要在对方回信时使用,不需要了,可以全为零。目的端口,目的端口号呢?

这需要在终点交付报文时使用长度。是在我们的udp用户数据报长度的这样一个部分,其最小值是八,那么仅有首部检验和是检验udp数据报了,在传送过程中呢?是否有错?有错就丢弃,那么在计算ud,在计算检验核的时候呢?在要在udp数据报之前增加12个字节的尾首部。所谓为首部呢,是因为这种为首部并不是udp用户数据报真正的首部,只是在计算检验核实,临时添加,在用户数据包前面。

是一个临时的udp用户数据报,结合了就是按照这个临时的udp用户数据报来计算为首付呢?进一步向下传送。也不了。上交这仅仅是为了计算检验和,那么这是我们为首部的这样一个方式,接下来我们看一下传输控制协议TCP。TCP呢?是TCP IP协议中一个重要的一个协议,那么我们首先呢,看一下它的特点。TCP it CP协议呢,是面向连接的运输协议,也就是说在运在应用程序使用utc p协议之前。必须先建立TCP连接,

在传送完数据后呢?必须释放已建立的连接,也就是说应用进程之间的通信呢?好像在打电话。通话之前呢,要不先拨号建立连接,通话结束后呢,挂机释放连接。每一条TCP连接呢,有两个端点,只能有两个端点,每一条TCP连接呢,只能是点对点的一对一的。TCP呢,提供可靠交付的服务,

由通过TCP传送的数据无差错,不丢失,不重复,并按需到达。TCP呢,提供全双工服务。TCP允许通信双方任何进程,在任何时候呢,都能发送入数数据。TCP连接的两端呢,都设有发送,缓存和接收缓存。用来临时存放双向数据的这样一个双向通讯的数据,在发送时应用程序呢?把数据传送给TCP的缓存后。

那么TCP呢?在合适的时候呢,把数据发送出去。在接收时TCP把收到的数据呢,放入缓存上层的应用进程呢,在合适的时候呢,读取缓存中的数据。那么TCP呢?是面向字节流的。面向字节流的含义呢,是虽然应用进程和TCP的交互,是一次一个数据块,但TCP把应用程序加下来的数据呢,看成一连串的无结构的字节流。TCP呢,

并不知道所传送的字节流的含义。TCP不保证接收方所收到的数据块和发送方所发送的数据块之间对应大小的关系。但接收方呢?应用程序收到的这样一个字,节流呢?必须和发送方的程序发出的字,节流完全一样。这是我们的,并且呢,接收方的应用进程必须有能力识别收到的字节流,把它还原成有意义的应用数成数据。那么,这是我们的TCP区的主要的特点。比如说TCP呢,面向自己流的概念发送方呢,

把字节流呢,把这个字节呢写入发送缓存。然后通过TCP连接呢,加上TCP首部构成TCP报文段,然后发送到接收方。接收方呢,从接收环境中读取字字字节,然后呢,将这个字节流呢传送给我们的接收方。那么,这是我们的TCP面向自己流的这样一个概念。那么,我们要注意TCP呢?连接是条虚连接,而不是真正一条物理连接。

TCP对应用进程一次把多长的报文呢发送TCP的缓存中是不关心的。TCP呢根据对方的窗口值和当前网络拥塞的程度呢?来决定一个报文段呢,应包含多少个字节?TCP可把太长的数据块划分短一些,再传送TCP呢,也可等待有足够多的字节后呢,再构成报文段发送。我们的TCP把连接作为最基本的抽象,每一条TCP呢,仅有两个端点。TCP连比如说TCP呢,是点对点点对点的TCP连接的端点呢,不是主机。不是主机的IP地址,

不是应用层,也不是运用书层的协议端口TCP连接的端点呢,叫做套接字或者插口。端口号拼接到IP地址了,就构成了我们的套接字。我们的套接着呢,是它的表示方式呢,是我们的IP地址,一个冒号端口号,每一条TCP连接了唯一的被通信两端的两个端点套接字呢所确定。比如说TCP连接等于socket 1,socket 2,那么等于你的IP 1,IP 2,二。

那么,这是我们的。TCP.这样一个连接的,这样一个套集字的部分。那么,大家要知道,同一个名字socket有多种不同的意思,应用程,编程接口API呢?称为socket API,简称为socket。socket的API中使用的一个函数名呢,也称为socket调用。socket的函数的端点呢,

称为socket。调用socket的函数使其返回值呢,称为socket描述服务,可简称为socket。在操作系统内核,中联网协议的。实现呢,称为实现。接下来。我们来看一下可靠传输的工作原理。我们知道TCP发送的报文段呢,是交给IP层发送的,而IP层呢,仅提供最大努力服务,也就是说。

TCP下面的网络呢,提供的服务呢,是不可靠的传输。因此TCP必须采用合适的措施,才能使两个运输层之间的通信呢变得可靠。理想的传输条件呢?有两个特点,传输信道呢?不产生差错,不管发送方以多快的速度发送数据呢?接收方总是来的处理。收到的数据。那么,在这样理想的传输条件下呢,不需要采取任何措施就能实现可靠传输。

然而,实际的网络呢,不具备这样一些条件。但我们可以通过一些可靠传输协议,让出现差错时呢,发送方重传出现差错的数据。同时,在接收方来不及处理接收到的数据时,及时告诉发送方呢,适当降低发送速率的速度。这样呢,我们呢,让信道呢,实现了可靠传输,首先我们来看一下,

停止等待协议。权数我们来看一下,这样一个部分。我们假设呢,是a是发送方b是接收方。那么,在无差错的情况下呢?那么是怎么办的呢?a发送分组m1。发送完后呢,就暂停发送,然后呢,等待b的确认b收到了m1呢,就向a发送确认。a收到了对这个m1的确认之后呢,

就再发送下一个m2。嗯。同样的,在b收到了对m2的确认后呢?再发送m3,那么依次呢进行发送?那么,这是我们。这样一个。无差错的情况。那么,我们来看一下出现差错的时候b接收到m1的时候呢?出现了差错就丢弃掉m1。其他的什么也不做,也不通知了a呢,

收到有差错的分组。有可能呢m是在传输过程中丢失了。那么,在这种情况下呢?b不会发生措施发发生任何信息可靠传输的协议呢?那么是这样设计的。只要a超过了一段时间仍没有收到确认,就认为刚才发送的分组丢失了。因而重传前面发送过的分组,就是叫做超时重传,要实现超时重传呢?就要在每发送完一个分组时呢?设置一个超时计时器。如果在超时计时器到期之前收到了对方的确认,就撤销已设置的超时计时器。

比如说在我们左边这个图当中a为每一个已发送的分组呢,都设置了一个超时计时器。但在超时计时器到时之前呢,收到了相应的确认就撤销掉超时计时器。那么这里呢?我们应该注意。


您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|5432考试网 ( 蜀ICP备2022024372号|川公网安备51152402000101号 )|网站地图

GMT+8, 2024-5-19 23:15 , Processed in 0.148385 second(s), 22 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表