1. 传输层概述
传输层是只有主机才有的层次,路由器只有下三层(物理层、数据链路层、网络层)
传输层承上启下:为应用层提供通信服务,使用网络层的服务
传输层的功能:
传输层提供进程和进程之间的逻辑通信
网络层提供主机和主机之间的逻辑通信
复用 & 分用
复用:多个进程的数据打包成一个报文发出
分用:到了目的地,一个报文分成多个进程的数据发送给相应的进程
传输层对收到的报文进行差错控制
传输层的两种协议(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