写在前面:本文章是针对《计算机网络第七版》的学习笔记

运输层1——运输层协议概述

运输层2——用户数据报协议UDP

运输层3——传输控制协议TCP概述

运输层4——TCP可靠运输的工作原理

运输层5——TCP报文段的首部格式

运输层6——TCP可靠传输的实现

运输层7——TCP的流量控制和拥塞控制

运输层8——TCP运输连接管理

1. 运输层的作用

提供应用进程之间的逻辑通信。

2. 运输层中两个主要的协议

  1. 用户数据报协议UDP(User Datagram Protocol)。UDP在传输数据前不需要建立连接,远程主机收到UDP报文后也不需要给出任何确认,因此UDP是不可靠的通信协议。UDP的运输协议单元(TPDU)是UDP用户数据报。

  2. 传输控制协议TCP(Transmission Control Protocol)。TCP提供面向连接的服务,在传输数据前必须先建立连接,数据传输结束后要释放连接,因此TCP是可靠的通信协议。TCP不提供广播和多播服务。TCP的运输协议单元是TCP报文段。

3. 运输层的端口

为什么需要端口:为了使不同操作系统的计算机的应用进程能够互相通信,就必须使用统一的方法对TCP/IP体系中的应用进程进行标志。

何为端口:软件端口是指应用层的各种协议进程与运输实体进行层间交换的一种地址。端口号只具有本地意义,不同计算机中相同的端口号没有联系。运输层用16位端口号来标志一个端口,因此允许有65535个不同的端口号。

端口号分类:

  • 服务器端使用的端口号。

    1. 熟知端口号:0~1023。IANA把一些端口号指派给了TCP/IP最重要的一些程序。当有一些新的应用程序出现后,IANA必须给它指定 一个熟知端口号,否则互联网上的其他应用进程无法和它进行通信。
    应用程序 FTP TELNET SMTP DNS TFTP HTTP SNMP SNMP(trap) HTTPS
    熟知端口号 21 23 25 53 69 80 161 162 443
    1. 登记端口号:1024~49151。这类端口号是为没有熟知端口号的应用程序使用。这类端口号必须在IANA中按照规定的手续进行登记,以防止重复。
  • 客户端使用的端口号:49152~65535。只有在客户端进程运行时才动态选择,因此又叫短暂端口号。这类端口号留给客户进程选择暂时使用,通信结束后就释放,不再占用。