更新时间:2024-01-31 14:59
面向无连接是通信技术之一。是指通信双方不需要事先建立一条通信线路,而是把每个带有目的地址的包(报文分组)送到线路上,由系统自主选定路线进行传输。邮政系统是一个无连接的模式,天罗地网式的选择路线,天女散花式的传播形式;IP、UDP协议就是一种无连接协议。
分类
通信技术大致分为三类:面向连接的电路交换,面向连接的包交换,以及无连接的包交换。
在无连接方法中,网络除了把分组传送到目的地以外不需做任何事情,如果分组丢失了,接收方必须检测出错误并请求重发;如果分组因采用不同的路径而没有按序到达,接收方必须将它们重新排序。无连接的协议有TCP/IP协议组的IP部分,NetWare的SPX/IPX协议的IPX部分和OSI的无连接网络协议(CLNP)。这些协议在与OSI协议模型相当的网络层中。
在无连接的通信会话中,每个数据分组是一个在网络上传输的独立单元,称作数据报。发送方和接收方之间没有初始协商,发送方仅仅向网络上发送数据报,每个分组含有源地址和目的地址。该方法中没有接收方发来的分组接收或未接收的应答,也没有流控制,所以分组可能不按次序到达,接收方必须对它们重新排序。如果接收到有错误的分组,则将它删掉。当重新整理分组时,就会发现被删掉的包并请求重发。
使用无连接的协议有许多好处
就性能来说,无连接策略通常更好,因为大多数网络上只有相对少的错误,所以被破坏的或丢失的分组很少,端点不需很多时间来重发。
面向连接与无连接是计算机网络诸多概念中的很重要的之一。所谓面向连接,是指通信双方在进行通信之前,要事先在双方之间建立起一个完整的可以彼此沟通的通道。这个通道也就是连接,在通信过程中,整个连接的情况一直可以被实时地监控和管理。而无连接的通信,就不需要预先建立起一个联络两个通信节点的连接来,需要通信的时候,发送节点就可以往“网络”上送出信息,让信息自主地在网络上去传,一般在传输的过程中不再加以监控,让该信息的传递在网上尽力而为地往目的地节点传送。
在远程通信的技术中,X.25协议是面向连接的,它的传输方式叫做“虚电路”(virtual circuit);在因特网技术里,IP协议就是无连接的,它的信息传输方式叫做数据报(datagram)。而TCP协议就是面向连接的。
TCP是面向连接的。
UDP是面向无连接的。
TCP(Transmission Control Protocol,传输控制协议)
UDP(User Datagram Protocol,用户数据包协议)
当IP包通过路由将数据传输到目的地时,会根据TCP或UDP包头中的源端口和目的端口信息,请求和获取不同的应用。也就是说,不管TCP还是UDP,都含有网络服务必须的源端口和目的端口信息,以建立和实现网络传输服务。
在网络中,有些服务,如HTTP、FTP等,对数据的可靠性要求较高,在使用这些服务时,必须保证数据包能够完整无误的送达;而另外一些服务,如DNS、即时聊天工具等,并不需要这么高的可靠性,高效率和实时性才是它们所关心的。根据这两种服务不同的需求,也就诞生了面向连接的TCP协议,以及面向无连接的UDP协议。
连接(Connection)和无连接(Connectionless)是网络传输中常用的术语,二者的的关系可以用一个形象地比喻来说明,就是打电话和写信。
打电话时,一个人首先必须拨号(发出连接请求),等待对方响应,接听电话(建立了连接)后,才能够相互传递信息。通话完成后,还需要挂断电话(断开连接),才算完成了整个通话过程。写信则不同,你只需填写好收信人的地址信息,然后将信投入邮局,就算完成了任务。此时,邮局会根据收信人的地址信息,将信件送达指定目的地。
两者之间有很大不同。打电话时,通话双方必须建立一个连接,才能够传递信息。连接也保证了信息传递的可靠性,因此,面向连接的协议必然是可靠的。无连接就没有这么多讲究,它不管对方是否有响应,是否有回馈,只管将信息发送出去。就像信件一旦进了邮箱,在它到达目的地之前,你没法追踪这封信的下落;接收者即使收到了信件,也不会通知你信件何时到达。在整个通讯过程中,没有任何保障。因此面向无连接的协议也是不可靠的。当然,邮局会尽力将邮件送到目的地,99%的情况信件会安全到达,但在少数情况下也有例外。
面向连接的协议比面向无连接的协议在可靠性上有着显著的优势,但建立连接前必须等待接收方响应,传输信息过程中必须确认信息是否传到,断开连接时需要发出响应信号等,无形中加大了面向连接协议的资源开销。具体到TCP和UDP协议来说,除了源端口和目的端口,TCP还包括序号、确认信号、数据偏移、控制标志(通常说的URG、ACK、PSH、RST、SYN、FIN)、窗口、校验和、紧急指针、选项等信息,UDP则只包含长度和校验和信息。UDP数据报比TCP小许多,这意味着更小的负载和更有效的使用带宽。许多即时聊天软件采用UDP协议,与此有莫大的关系。
电路交换&面向连接:
电路交换是指在通信开始之前,先建立一条端到端的连接(中间可能经过很多的交换结点)。连接建立后,通信就沿着这条路径进行。在通信期间始终占用这条信道,只是通信完毕时就释放所占用的信道,即断开连接,此时其他用户才可以使用释放的资源。因此说电路交换是使用面向连接的服务。
分组交换&面向连接&无连接:
① 分组交换采用了存储转发技术。将欲发送数据以组为单位进行分割,再加上一些必要的控制信息,朝着目的地发送过去。各分组包可以通过不同的路径到达目的地。 ② 分组交换在被使用的时候,在传送数据之前可以先不建立连接,传送到哪条链路上才占用了该链路的信道资源,这种不建立连接而随时可以发送信息的方式,我们称为无连接。
③ 分组交换也可以使用面向连接的服务,例如X.25网络、帧中继网络或ATM网络都是属于分组交换网。这种面向连接的分组交换网在传送用户数据之前必须先建立连接,数据传送完毕后还必须释放连接。
物理连接&虚连接:
① 电路交换是在两个站点之间通过通信子网的结点建立一条专用的通信线路。这些结点通常是一些交换设备(例如程控交换机)。也就是说,在两个通信站点之间需要建立实际的物理连接。
② 两主机之间建立的TCP连接:运输层并不知道所传送的报文段都经过哪些中间结点,因此并非真正的物理连接。实际上,IP数据报都各自独立地选择路由,而所经过的中间结点(路由器)并不记录各IP数据报通过的情况。TCP连接只是从运输层看来,好像在两个运输实体之间有一条连接。因此这条连接可以称之为“虚连接”。
③ 分组交换则可分为面向连接的虚电路传输和无连接的数据报传输。
电路交换&分组交换 VS 面向连接&无连接:
① 电路交换&分组交换是强调在通信时用户对网络资源的占用方式。
电路交换是在连接建立后到连接释放前全程占用信道资源,而分组交换则是在数据传送时断续占用信道资源(分组在哪一条链路上传送就占用该链路的信道资源)。
② 面向连接&无连接则强调通信必须经过什么样的阶段。
面向连接必须经过三个阶段:“建立连接→传送数据→释放连接”,而无连接则只有一个阶段:“传送数据”。