连接协议
指定“控制信息”和“数据信息”如何在通信实体之间交换
所谓协议(protocol),就是一组规则,用来指定“控制信息”和“数据信息”如何在通信实体(譬如,在网络计算环境内部相互作用的应用程序进程)之间交换。协议一般分为无连接(connectionless)和面向连接(connection-oriented)两种。在这一设计空间,需要权衡的地方主要涉及延迟(latency)、可伸缩性(scalability)和可靠性(reliability)。
优点
连接协议提供的是可靠、有序、不重复的发送服务。对那些不允许数据丢失的应用程序来说,这种协议十分有用。为了提高性能并保证可靠性,“面向连接”协议在发送端和(或)接收端交换并维护状态信息。传输控制协议(TCP,Transmission Control Protocol)是一种面向连接协议,它被运用于很多“面向会话(session-oriented)”的Internet应用中,如Web服务和电子邮件。
当使用面向连接协议时,应用程序和中间件开发者还必须作出以下设计选择:
l 数据成帧策略(data framing strategies)。“面向连接”协议提供了不同种类的数据成帧策略。例如,“面向消息”发送策略为某些“面向连接”协议所支持,如TP4和XTP。相反,TCP是一种字节流(bytestream)协议,不保护应用程序消息的边界(boundaries)。因此,在TCP上,如果某一应用程序通过4个send()调用传输4条不同的消息,会有一个或多个(可能大于4个)TCP数据段(segment)被传输给接收端。所以,如果某一应用程序需要“面向消息”发送,发送端和接收端就必须执行额外的处理,以将4条“在TCP上交换”的消息分割成帧。如果消息的长度总相同,并且永远没有网络错误发生,成帧相对来说简单;否则,这会成为一个不小的问题。
参考资料
最新修订时间:2024-08-08 14:59
目录
概述
参考资料