前端应该了解的计算机网络-概念篇

370 阅读6分钟

什么是计算机网络?

通俗地讲就是通过传输介质将分布在各个地方的计算机网络设备连接起来,实现数据通信、资源共享的一张网络。简单地说,就是把一些计算机相互连接起来。

计算机网络主要包括三部分:

  • 计算机 (可以包括客户端、服务器)

  • 网络设备 (路由器、交换机、防火墙等)

  • 传输介质(可以分为有线和无线的)

计算机网络主要目的:

  • 资源共享:QQ群里面放一个文件,群里的成员都能下载,就是资源共享;
  • 数据通信:你收到别人发的一条微信然后又回复别人,就是数据通信。

计算机网络的正式定义是这样的:

利用通信线路和通信设备,将地理位置不同的、功能独立的多台计算机互连起来,以功能完善的网络软件来实现资源共享和信息传递,就构成了计算机网络系统。

数据通信

计算机网络是个非常复杂的系统,两个相互通信的计算机必须要能高度协调工作。而且不同网络体系结构的用户都需要通信,而且要做到在全世界范围的计算机都可以高效进行通信。于是OSI(Open Systems Interconnection Reference Model)协议诞生了。只要遵循OSI标准,一个计算机系统就可以和位于世界上也遵循这一标准的其他系统进行通信。

为了减少网络设计的复杂性,网络采用分层设计方法,按照数据的传输过程把网络的整体功能划分为一个个的功能层,每层负责一项具体的工作,然后再把数据传往下一层处理,以此来将负责的网络互联和通信过程简单化。

计算机网络主要分为两种模型:

  • OSI参考模型

  • TCP/IP参考模型

OSITCP/IP备注
应用层应用层例如HTTP、SSH、NFS
表示层
会话层
传输层传输层例如TCP、UDP
网络层互联网层路由器
数据链路层网络接口层交换机
物理层物理层网卡、集线器

实际的企业生产中并没有使用OSI标准模型的,TCP/IP模型是实际生产中使用的网络架构。

TCP/IP模型

简单介绍一下这五层的结构

物理层

在物理层所传的数据单位是比特,也就是二进制数据。无论是发送方还是接收方的物理层底层如何使用多大的电压来表示0和1,这些都是物理层的工作。

数据链路层

两台设备要进行数据传输,总是在一段一段的链路上进行传送的,数据链路层将网络层传递下来的IP数据或者物理层上传的数据报组装成帧,在两个相邻的节点通过节点的MAC地址进行帧的传送。其中帧包括数据和必要的控制信息,以便让接收端能够知道一个帧从那个比特开始和到那个比特结束,这样以来数据链路层就可以通过这个控制信息提取出数据部分上交给上一层网络层或者传递给物理层。控制信息还可以让接收端在接收到一个数据帧的时候对其进行检测,如果检测的结果显示接收的数据帧不完整或者有错误,将会丢弃这个数据帧。

网络层

在发送数据的时候,网络层将运输层的数据报文封装成包进行传送,简单的来说:互联网是大量的异构网络和路由器进行相连的。网络层的协议是无连接的IP协议。

  • Internet协议(IP)
  • Internet控制信息协议(ICMP)
  • 地址解析协议(ARP)
  • 反向地址解析协议(RARP)

传输层

传输层主要使用两种传输协议:TCP与UDP。其中TCP是面向连接的,可靠的数据传输服务,数据不会出现丢失的情况。UDP是面向无连接,但是数据传输可能会有丢包的情况出现。

  • 传输控制协议(TCP)
  • 用户数据报协议(UDP)

传输层提供数据传输的服务

应用层

应用层是体系结构中最高层,应用层协议定义的是应用进程间通信和交互的规则。应用层的协议我们比较熟悉,如

  • 超文本传输协议(HTTP):万维网的基本协议;
  • 文件传输(TFTP简单文件传输协议);
  • 远程登录(Telnet):提供远程访问其它主机功能, 它允许用户登录internet主机,并在这台主机上执行命令;
  • 网络管理(SNMP简单网络管理协议):提供了监控网络设备的方法,以及配置管理,统计信息收集,性能管理及安全管理等;
  • 域名系统(DNS):该系统用于在internet中将域名及其公共广播的网络节点转换成IP地址。

当用户使用浏览器来打开网页时,需要利用DNS提供的域名解析服务,来获取网址对应的IP地址,然后再通过另外一个协议HTTP来下载页面内容。在这个过程中出现的两个协议(DNS和HTTP)都是工作在应用层上的协议

知识支撑

网络通信协议

网络通信协议是一种网络通用语言,为连接不同操作系统和不同硬件体系结构的互联网络提供通信支持,是一种网络通用语言。网络协议遍及OSI通信模型的各个层次。比如应用层用到了DNS、HTTP等协议,网络层用到了TCP、UDP等协议

比较常见的TCP/IP、HTTP、FTP协议,到OSPF、IGP等特殊协议,有上千种之多。局域网常用TCP/IP、NetBEUI、IPX/SPX这三种通信协议。

  • 万维网:HTTP协议

  • 文件传输:FTP协议

    文件传输协议,两个主机之间实现文件互传的应用层协议

  • 电子邮件:SMTP协议

    实现邮件传输服务之间,或者用户代理到邮件传输服务的邮件传输

  • 远程终端接入:TELNET协议


最后一句
学习心得!若有不正,还望斧正。希望掘友们不要吝啬对我的建议。