1. 传输层概述

传输层是只有主机才有的层次,路由器只有下三层(物理层、数据链路层、网络层)

传输层承上启下:为应用层提供通信服务,使用网络层的服务

传输层的功能:

  1. 传输层提供进程和进程之间的逻辑通信

    网络层提供主机和主机之间的逻辑通信

  2. 复用 & 分用

    复用:多个进程的数据打包成一个报文发出

    分用:到了目的地,一个报文分成多个进程的数据发送给相应的进程

  3. 传输层对收到的报文进行差错控制

  4. 传输层的两种协议(UDP、TCP)

1. 传输层的两个协议

1.1 面向连接的传输控制协议 TCP

过程:传输数据之前必须建立连接,数据传送结束后要释放连接。不提供广播或多播服务。由于 TCP 要提供可靠的面向连接的传输服务,因此不可避免增加了许多开销:确认、流量控制、计时器、连接管理等

特点:可靠,面向连接,时延大,适用于大文件

1.2 无连接的用户数据报协议 UDP

过程:传送数据之前不需要建立连接,收到 UDP 报文后也不需要给出任何确认

特点:不可靠,无连接,时延小,适用于小文件

2. 传输层的寻址与端口

复用:应用层所有的应用进程都可以通过传输层再传输到网络层

分用:传输层从网络层收到数据后交付指明的应用进程

端口:传输层的 SAP,标识主机中的应用进程

  • 端口号只有本地意义,在因特网中不同计算机的相同端口是没有联系的

  • 端口号长度为 16bit,能表示 65536 个不同的端口号

端口号分类:

  • 服务端使用的端口号

    • 熟知端口号:给 TCP/IP 最重要的一些应用程序,让所有用户都知道(0 ~ 1023)

    • 登记端口号:为没有熟知端口号的应用程序使用(1024 ~ 49151)

  • 客户端使用的端口号

    • 仅在客户进程运行时才动态选择的端口号(49152 ~ 65535)

在网络中采用发送方和接收方的套接字组合来识别端点,套接字唯一标识了网络中的一个主机和它上面的一个进程。

  • 套接字 Socket = (主机 IP 地址,端口号)

Last updated