从开发的角度理解通讯中的逻辑连接和物理连接

转自:http://blog.sina.com.cn/s/blog_4b650d650100d70x.html

通讯协议有很多,物理是TCP/IP的网络通讯协议,还是USB的接口的通讯协议,以及无线通讯中的GSM,CDMA等通讯协议,都不会是简单的主从设备之间的直接通讯。在通讯的两端,设备会把整个结构划分为不同的层。

    例如,通讯的标准七层协议:从上到下会有应用层,表示层,会话层,传输层,网络层,数据链路层,物理层。那么,在通讯的两端,终端用户最终看到的是应用层的界面,要完成完整的通讯,我们就必须把应用层的东西通过表示层,会话层.....直到物理层通过电缆传给对方.这样做,在开发时是很麻烦的事情,你必须了解每一层是怎样从上到下调用的. 也就是说,所有的通讯必须最终通过物理连接将信息传递出去.

    为了在开发中简化这种烦琐的调用过程,在文档中出现了逻辑连接的概念.拿TCP/IP的分层来讲,TCP/IP分为应用层,传输层,网络层,网络接口层四层,如果我们只需要控制和了解传输层,我们只需要调用传输层的一组函数,就可以与对方进行传输层上的逻辑连接.但归根到底,传输层的函数函数通过调用网络层,网络接口层的函数,最终通过物理连接将信息传递出去的. 也就是说,我理解所谓的逻辑连接,无非就是对物理连接的一种封装而已.希望学习通讯的人能从开发的角度来理解逻辑连接和物理连接的概念.

感悟:物理连接环节很多很麻烦,逻辑连接其实就是物理连接的简化版。在互联网中的逻辑连接,实则就是点击一个按钮,触发onclick事件,向服务器发送请求,就可以与对方进行传输层上的逻辑连接。

原文地址:https://www.cnblogs.com/YangK-java/p/6422980.html