在面向连接的方法中,网络负责顺序发送报文分组并且以一种可靠的方法检测丢失和冲突。这种方法被“可靠的”传输服务使用。
在无连接的方法中,网络只需要将报文分组发送到接收点,检错与流控由发送方和接收方处理。这种方法被称作“最佳工作(best-effort)”或“无应答(unacknowledged)”的传输协议所使用。
假定你想给你在另一个城市的朋友发送一系列信件,信件类似于通过计算机网络发送的数据分组。有两种发送方法,一种方法是把信件交给一位可信的朋友,由他私人传送,之后再向你证实已经发送。在这种方法中,你在传送的两端都保持着联系,你的朋友提供了面向连接的服务。另外一种是,你在信封上注明地址并将它们投进邮局,你并没有得到保证说每封信都会达到目的地,如果都到达了,它们可能在不同的时间到达并且不是连续的,这就象一个无连接服务。
面向连接的通信
在面向连接方法中,在两个端点之间建立了一条数据通信信道(电路)。这条信道提供了一条在网络上顺序发送报文分组的预定义路径,这个连接类似于语音电话。发送方与接收方保持联系以协调会话和报文分组接收或失败的信号。但这并不意味着面向连接的信道比无连接的信道使用了更多的带宽,两种方法都只在报文分组传输时才使用带宽。
为面向连接的会话建立的通信信道自然是逻辑的,常被称作虚电路(virtual circuit),它关心的是端点。与在网络上寻求一条实际的物理路径相比,这条信道更关心的是保持两个端点的联系。在有多条到达目的地路径的网络中,物理路径在会话期间随着数据模式的改变而改变,但是端点(和中间节点)一直保持对路径进行跟踪,
一台计算机上的应用程序启动与另一台计算机的面向连接的会话,它通过访问基本的通信协议来请求这样的对话。在传输控制协议/因特网协议(TCP/IP)组中,TCP提供面向连接的服务,而IP(较低层的协议)提供传输服务。在NetWare SPX/IPX协议组中,SPX提供面向连接的服务。
因为报文分组是通过虚电路传输的,所以并不需要使用全分组地址,这是由于网络已经知道了发送方与接收方的地址。网络路径上的每个节点都保持跟踪虚电路和需要交换分组的端口。顺序编号用来保证分组的顺序流动。虚电路需要一个建立过程,但电路一旦建立,它就为长时间的处理提供一条有效的路径,如由管理程序对网络站点的连续监控和许多大文件的传送。与此相比,无连接方法是设计用于突发的、暂时的通信,这种方法中如用虚电路建立就不是很有效的。
无连接通信
Connectionless Communication 无连接通信
在无连接方法中,网络除了把分组传送到目的地以外不需做任何事情,如果分组丢失了,接收方必须检测出错误并请求重发;如果分组因采用不同的路径而没有按序到达,接收方必须将它们重新排序。无连接的协议有TCP/IP协议组的IP部分,NetWare的SPX/IPX协议的IPX部分和OSI的无连接网络协议(CLNP)。这些协议在与OSI协议模型相当的网络层中。
在无连接的通信会话中,每个数据分组是一个在网络上传输的独立单元,称作数据报。发送方和接收方之间没有初始协商,发送方仅仅向网络上发送数据报,每个分组含有源地址和目的地址。
该方法中没有接收方发来的分组接收或未接收的应答,也没有流控制,所以分组可能不按次序到达,接收方必须对它们重新排序。如果接收到有错误的分组,则将它删掉。当重新整理分组时,就会发现被删掉的包并请求重发。
使用无连接的协议有许多好处。就性能来说,无连接策略通常更好,因为大多数网络上只有相对少的错误,所以被破坏的或丢失的分组很少,端点不需很多时间来重发。