软件结构以及 网络通讯协议

软件结构

  • C/S结构
    全称为Client/Server结构。是指客户端和服务器结构,常见程序有QQ,迅雷等软件。
  • B/S结构
    全称为Browser/Server结构,是指浏览器和服务器结构,常见浏览器有谷歌、火狐等。

两种架构各有优势,但是无论哪种架构,都离不开网络的支持网络编程,就是在一定的协议下,实现两台计算机的通信的程序。

网络通信协议

  • 网络通信协议:
    通过计算机网络可以使多台计算机实现连接,位于同一个网络中的计算机在进行连接和通信时需要遵守一定的规则,在计算机网络中,这些连接和通信的规则被称为网络通信协议,它对数据的传输格式,传输速率,传输步骤等做了统一规定,通讯双方必须同时遵守才能完成数据交换。
  • TCP/IP协议: 传输控制协议/因特网协议(Transmission Control Protocol/Internet Protocol),是Internet最基本、最广泛的协议。它定义的计算机如何连入因特网,以及数据如何在它们之间传输的标准。它的内部包含一系列的用于数据通信的协议,并采用了4层的分层模型,每一层都呼叫它的小一层所提供的协议来完成自己的需求。

通讯app 架构图 软件通信架构_IP



  • 上图中,TCP/IP协议中的四层分别是应用层、传输层、网络层和链路层、每层分别负责不同的通信功能。
    链路层:链路层是用于定义物理传输通道通常是对某些网络连接设备的驱动协议,例如针对光纤,网线提供的驱动。
    网络层:网络是整个TCP/IP协议的核心,它主要用于将传输的数据进行分组,将分组数据发送到目标计算机或者网络。
    运输层:主要使网络程序进行通信,在进行网络通信时,可以采用TCP协议,也可以采用UDP协议。
    应用层:主要负责应用程序的协议,例如HTTP协议,FTP协议等。