计算机网络的概念
计算机网络是通过一定的连接方式将多台计算机或其他设备连接起来组成的,连接方式可以是电缆、宽带、光钎等传输介质。换句话说,我们可以把计算机看做结点,把这些连接方式看做链路,那么简单的网络就是多个结点(计算机)通过多条链路连接到一个集线器上,我们可以看成一个图。那么互联网(网络的网络)是由多个简单的网络组成。因特网是世界上最大的互联网,连接在因特网上的计算机都称为主机。
因特网的核心部分与边缘部分
核心部分:由大量网络和连接这些网络的路由器组成,这部分为边缘部分提供服务,进行数据交换与通信。
边缘部分:由所有连接在因特网上的主机,这些主机是由用户直接使用的,用来进行各种网络服务,为用户直接提供电子邮件、文件传输等服务。
位于网络的边缘主机与核心部分的路由器都是计算机,但是用途有所不同,主机的用途是为用户进行信息处理的,并且可以与其他主机通过网络交换信息,路由器的用途则是用来转发分组的,即进行分组交换的。
因特网的核心部分
在网络核心部分其特殊性作用的是路由器,它是一种专用计算器(不是主机)。路由器是实现分组交换的关键构件,其任务是转发收到的分组,这是网络核心部分最重要的功能。
计算机网络通常采用分组交换技术。通常我们把要发送的整块数据称为一个报文,我们在发送报文之前,先把较长的报文划分为一个个更小的等长数据段,类似于切片操作,但是,在每个数据段前面加上必要的控制信息组成的首部后,就构成一个分组,分组又称为“包”,而分组的首部叫做“包头”。分组中的首部存放着目的地址和源地址,计算机将分组通过链路直接发送给路由器(分组交换机),此时它会暂存下来,检查其首部,按照首部提供的目的地址找转发表,以此类推,经过多个路由器把分组转发到目的计算机。但是,如果在链路已经有正在传输的分组,则分组必须在该输出缓存中等待。当有大量分组在需要从某条链路转发时就可能出现这种分组丢失的情况,这是我们会说发生了网络拥塞。
因特网的边缘部分
连接在边缘部分上的主机称为端系统,边缘部分利用核心部分所提供的服务,使众多主机之间能够互相通信并交换或共享信息。
在计算机网络软件上下文中“client/server”通常指的是一种网络应用程序的工作方式(翻译成客户/服务器方式,简称C/S方式),它实际上就是把一个主机-终端模式中原来全部集中在主机部分的任务一分为二,保留在主机上的任务负责集中处理和汇总运算,称为服务器;而下放在终端的任务负责为用户提供友好的交互界面,称为客户机。在使用这种C/S方式时,运行在一个端系统的客户进程打开socket,连接服务器,总是主动向运行在另一个端系统上的服务器进程发出服务请求,从服务器接收消息并处理,而服务器进程监听socket并且接收来自多个客户进程的请求,并进行响应提供服务。我们很熟悉的网络应用采用的就是C/S方式:万维网、电子邮件、文件传输FTP等。
客户机与服务器之间通过相应的网络协议进行通信,特点是分布运算和分布管理。客户机向服务器发出数据请求,服务器将数据传送给客户机进行计算,计算完毕后计算结果返回给服务器。这种模式的优点充分利用了客户机的性能,使计算能力大大提高,灵为,由于客户机和服务器之间的通信是通过网络协议进行的,是一种逻辑联系,因此从物理上来看,客户机和服务器两端是易于扩充的。