计算机网络知识回顾 ---运输层

Posted wx62c2ea9a5dac8

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了计算机网络知识回顾 ---运输层相关的知识,希望对你有一定的参考价值。


 记得自己在人生的低潮阶段,高四补习的时候遇到的传奇班主任小马哥曾经说过:学不可以已。意思是,学习,不因该以任何时间,任何地点,任何境遇,任何理由而停滞。   因此,尽管这段时间心情很压抑,还是希望能坚持学习。

    今天整理的是计算机网络运输层的知识,前面已经比较系统的回顾了一下物理层,数据链路层,网络层。  比起第一次学习来说,不敢说醍醐灌顶,但是至少收获要比最开始学的时候好很多。

 运输层的重要概念:

        运输层为相互通信的应用进程提供逻辑通信。

        端口和套接字。

        UDP与TCP。

        在不可靠的网络上实现可靠传输的工作原理,停止等待协议和ARQ协议。

        TCP的滑动窗口,流量控制,拥塞控制,连接管理。

   运输层协议概述:

         对于运输层来说,端对端的通信并不是主机,而是主机中的进程。  网络层为信息的交互提供了逻辑通信,而运输层为应用进程之间提供端到端(进程到进程) 的逻辑通信。  是属于通信部分的最高层,同时也是用户功能的最底层。

         运输层协议主要包括面向连接的TCP以及无连接的UDP。  我们知道网络世界也是基于客观物质而存在的,所以它是一个有机整体。 它的发展经历了确确实实的一个时代进行完善。 现如今普遍(所谓普遍,是针对普通人的全部)使用的是TCP/IP协议。  也就是说,在进行通信时,我们对使用运输层的协议(TCP,和UDP)不应当产生任何疑问。 换言之,所有的基于互联网的通信都是要使用TCP或UDP协议的。

        看一看长用的各种应用和应用层协议使用的运输层协议吧:

计算机网络知识回顾

   运输层的通信概要:

      运输层具有复用和分用的功能。 应用层多有的应用程序都可以通过运输层传送到IP层,便是复用。   运输层从IP 层收到数据后必须交互给指定的应用进程,这就是分用。    我们知道运输层解决的是端到端的通信,也就是进程间通信。 但是我们要明白不同的操作系统使用不同格式的进程标识符,因此,要在因特网的主机间进行进程间通信,必须采用统一的方法(这种方法必须是与特定的操作系统无关)对TCP/IP体系的应用进程进行标志。。  然而,这个思路任然行不通。  因为进程的创建和撤销都是动态的,通信的一方无法识别对方机器上的进程。   因此,一个抽象的协议端口号就产生了。

       常见的端口号有:

常见端口号

应用程序

FTP

TELNET

SMTP

DNS

TFTP

HTTP

SNMP

SNMP(trap)

端口号

21

23

25

53

69

80

161

162

     UDP:

         在IP数据报的基础上增加了复用分用,以及差错检测的功能。

        UDP组成举例:

计算机网络知识回顾

      TCP:

          每一条TCP连接只能有两个端点,每一条TCP连接必须是点对点的。  它把连接作为最基本的抽象。TCP连接的端点叫套接字或插口。 

           同一个IP地址可以有多个不同的TCP连接,同一个端口也可以出现在多个不同的TCP连接中。   

           TCP发送的报文段是交给IP层传送的,但是IP层只能提供尽最大努力的服务,也就是说,TCP下面的网络所提供的是不可靠的传输。

           TCP使用停止等待协议。 在发送完一个分组后,必须暂时保存已经发送的分组的副本,当收到确认后才清除。  所有的分组和确认分组都采用编号进行交互。   通过确认和重传机制,TCP可以实现在不可靠的传输网络上可靠通信。

           停止等待协议很简单,但是效率太低!  ARQ:automatic repeat request,自动重传请求。

我的理解:  为何会存在效率问题一说???   我认为产生这个原因有两个前提,第一通信是全双工通信,它在物理层的表现是,具有两条物理线路,一条线路只用于发送或者只用于接收。   第二,基于电子的信息通信足够快,快到哪怕眨眼一瞬对它来说也是天文数字的地步!!

             针对效率问题解决的思路是采用流水线传输,具体的实现包括了 连续ARQ协议 和滑动窗口协议。

            TCP可靠传输的实现: 

                   一,以字节为单位的滑动窗口传输;

                   二,选择确认SACK,使得TCP可以能够设法只传送缺少的数据,而不是重传已经正确到达接收方的数据。

             TCP的亮点:  基于滑动窗口的流量控制;  基于链路状态的拥塞控制;基于连接的运输管理。

 

以上是关于计算机网络知识回顾 ---运输层的主要内容,如果未能解决你的问题,请参考以下文章

计算机网络重点回顾

知识点回顾(自顶向下)

知识点回顾(自顶向下)

云计算网络基础课程-----内容回顾

第239天学习打卡(知识点回顾 线程和进程)

网络计算典型形态的发展回顾和愿景展望