第六章 传输层

传输层的作用是在通信子网提供的服务基础上,为源主机和目的主机之间提供可靠、透明和价格合理的数据传输。
  传输层的功能与服务
  传输层协议等级
  Internet中TCP
  用户数据报协议UDP

第一节 传输层的功能与服务
传输层的作用:
在通信子网提供服务的基础上,为源主机和目的主机之间提供可靠的、透明的、价格合理的数据传输;
是面向用户的高层和面向通信子网的低层之间的软件接口。
6.1.1 传输层服务类型
1.传输层抽象模型:利用网络层提供的服务来实现为用户提供有效、可靠的服务的目标。
传输实体:传输层为高层提供服务的软硬件。
2.服务类型:可提供面向连接的和无连接的两种类型的服务。

6.1.2 传输层服务质量
传输层的主要功能:增加和优化网络层服务质量。
传输层协议与通信子网服务的关系:

通信子网提供的服务越少, 则传输层协议越复杂!
服务质量参数:
建立连接延时:传输服务用户发出传输请求连接到收到确认之间的时间,包括远端传输实体处理的延时。延时越短,服务质量越好。
建立连接失败概率:在最大连接延时时间内不能建立连接的可能性。
吞吐率:每秒钟传输的用户数据的字节数。
传输延时:从源端传输用户发送报文开始到目的用户接收到报文为止的时间。
残余误码率:丢失的、错误的报文占全部报文数的百分比。
优先级:为传输用户提供一种表明连接重要程度的方法。当发生拥塞时,确保高优先级连接比低优先级连接先获得服务。
恢复功能:给出因内部原因或拥塞情况下自动终止连接的可能性。
6.1.3 传输服务原语
套接字(socket)原语:用于客户-服务器模式,通过系统功能调用来实现。
主要原语有:
SOCKET服务原语:用于建立发方通信端点,返回一个整数用作为标识。
BIND服务原语:用于给新建立的通信端点赋予一个地址。
CONNECT服务原语:在面向连接的TCP服务中用于在本地端点和远地端点间建立一条连接,在无连接的UDP服务中是把对方地址存储下来。
LISTEN服务原语:服务器为请求连接的客户分配请求连接队列空间,并指定队列长度(一般为5)。
ACCEPT服务原语:由服务器执行,等待连接请求的到来,请求到达后,服务器创建一个新连接端点,并将该端点的标识符返给请求端,接着产生一个进程为该连接服务,然后再去等待新的连接。
SEND服务原语:进行发送数据。
RECV服务原语:进行接收数据。
CLOSE服务原语:用于释放连接,双方都使用CIOSE原语后,连接即释放。
例如,在面向连接的服务中:
1.建立连接阶段:
服务器顺序执行:SOCKET-BIND-LISTEN-ACCEPT
客户顺序执行:SOCKET-BIND-CONNECT
2.数据传输阶段:双方用SEND和RECV原语进行发送和接收数据。
3.释放连接阶段:双方用CLOSE原语后释放连接。