计算机网络基础知识

  • 什么是网络
  • 什么是计算机网络
  • 互联网的组成
  • 计算机网络结构
  • TCP/IP协议

什么是网络

网络是由节点和连线构成,表示诸多对象及其相互联系。对于计算机领域来说:网络是代表传输数据之间的联系的一种平台。对于数据结构来说,就是图的表示 ,对于定量分析就是

应用层:提高常见的网络应用

应用层利用传输层的服务将数据传输给应用进程,完成进程间的通信。

再根据特定应用再进行数据进一步去封装。

定义了应用层的协议:包含以下内容

  • 报文类型
  • 各种报文类型的语法
  • 字段的语义
  • 进程之间何时、如何发送报文

应用层协议只是网络应用的一个部分,是网络应用的一个子集

应用层的具体内容就是规定应用进程在通信时所遵守的协议

特点:

  • 应用层协议基于客户服务端模式(前面的概念) p2p也是客户服务端模式的一个变式。
  • 最高层协议,最活跃的一层。变化最多的一层
  • 有公开的协议(HTTP)也有不公开的协议(p2p下载的协议)

应用层协议(基本的协议)

  • DNS(域名系统):实现网络用户到IP地址映射的网络服务
  • FTP(文件传输协议):用于实现交互式文件传输功能
  • SMTP(简单邮件传送协议):用于实现电子邮件传送功能
  • HTTP(超文本传输协议):用于www服务
  • SNMP(简单网络管理协议):用于管理与监视网络设备。
  • Telnet(远程登录协议):用于实现远程登录功能。

DNS(域名系统(system))

  1. 作用:把提交给系统的域名转换成ip地址

互联网采用层次结构的命名数作为主机的名字,使用分布式的域名系统,实现域名到IP地址的转换的操作

将域名转换为ip地址的操作叫DNS解析

如果使用直接的ip地址有两个缺点:①不好记②计算机是经常更换ip地址,而且不可能告诉你ip地址

  1. 概述:域名系统就是起名字,映射到ip地址

  2. 域名服务器:DNS(server)是进行域名和之对于的ip地址转换的服务器,在这里保存了一张域名和与之对于的ip地址的表,以解析消息的域名。

  3. 互联网的域名解构:唯一的层次结构为域名,域名的结构由标号序列组成,各标号之间用点隔开:

    三级域名.二级域名.顶级域名(层次树状结构的命名方法)

域名服务器(树状的层次结构)

  • 一个域名服务器所管辖的范围叫做区
  • 各单位根据具体情况来划分自己管辖的区,但是一个区中的所有节点是必须能够连通的
  • 每一个区设置相应的权限域名服务器,用来保存该区中的所有主机的域名到IP地址的映射
  • 管辖范围不是以“域”作为单位,而是以“区”

分类:

  1. 根域名服务器
  2. 顶级域名服务器
  3. 权限域名服务器
  4. 本地域名服务器

根域名服务器:最高层,最重要的域名服务器

  • 所有的根域名服务器都知道所有的顶级域名服务器的域名和IP地址
  • 不管哪一个本地域名服务器,若是无法解析,则求助于根域名服务器
  • 有13个不同的IP地址的根域名服务器,它们的名字是用一个英文字母命名,从a-m(但不是只有13台主机)
  • 作用:不是直接吧域名转换为ip地址,使用迭代查询,把下一步应当找到的顶级域名服务器的ip地址告诉本地域名服务器
  • 就近原则

顶级域名服务器(TLD服务器)

  • 管理在改顶级域名服务器注册的所有二级域名
  • 当收到DNS查询的请求的时候,给出相应的回答

权限域名服务器

  • 管理一个区的域名服务器
  • 当一个权限域名服务器不能给出最后的查询回答的时候,就会告诉发出查询请求的DNS客户,下一步应当从哪一个寻找权限域名服务器

本地域名服务器(在本地网络连接的设置中)

  • 当一个主机发出DNS查询请求的时候,这个请求报文就会发送给本地域名服务器(如果不成功就交给上一级的域名服务器查询)
  • 每一个互联网提供者ISP都可以拥有一个本地域名服务器
  • 也被成为默认服务器

处于对于安全的考虑,我们会设置一个备用DNS服务器。

当主域名服务器出现故障的时候,为了保证查询不中断,就可以在辅助域名服务器中查询。

但是更改域名服务器只能在主域名服务器,主域名服务器定期的将数据复制到辅助域名服务器 保证数据的完整性

DNS解析过程

  • 间接完成 由其他应用服务来间接调用

主机提出查询请求->本地域名服务器->根域名服务器

主机向本地域名服务器的查询一般是采用的递归查询

流程图如下:

img

一共使用了8个UDP报文

不需要建立连接

一共执行了3次迭代查询

少见的递归查询的过程:

img

高速缓存(代理服务器)

每一个域名服务器都维护一个高速缓存,存放最近使用过的名字以及从何处获取名字映射信息的记录

大大减轻服务器的负荷

为了保持高速缓存保持正确,需要去在高速缓存中设置计时器

  • 将最近一些请求和响应暂存在本地磁盘中。代表服务器发出HTTP协议

万维网WWW

  • 概述:应用层的服务,把所有的信息以网状的方式连接到一起,通过超链接的方式展现给我们
  • 大规模的联机式的信息存储所
  • 从一个链接跳转到另一个链接(超链接) 万维网独有的服务
  • 分布式超媒体系统(一个超文本由多个信息源链接,超媒体更加广泛)
  • 客户-服务端的方式工作

万维网使用统一资源定位符URL来标志万维网上的各种文档。每一个文档在整个互联网的范围内具有唯一的标识符URL

(如何定位)

万维网使用HTTP协议(超文本传送协议,是一个应用层协议)使用TCP进行可靠的传送。

(如何传输)

万维网使用超文本标记语言对万维网的页面进行设计

(如何表示)

万维网使用搜索引擎来搜索超链接的多媒体形式的内容

(如何搜索)

如何定位

使用URL(统一资源定位符)

URL:对可以从互联网上得到的资源的位置和访问方法的一种简洁表示

提供一种抽象的表示方便的找到资源

  • 形式:协议、主机、端口、路径
    • img

如何传输

HTTP协议:如何实现链接和传输的协议

  • 面向事物类型:在万维网上可靠的交换文件的基础(各种多媒体文件)

img

HTTP1.0:无连接,每次先建立TCP的连接,取得文档吼再释放

HTTP1.1: 在一段时间之内维持TCP连接(持续连接)

  • 持续连接的两种工作方式:
    • 非流水线方式:客户在收到前一个相应后才能发出下一个请求。少了一个TCP连接所需要的RTT时间(与非持续连接的两倍RTT相比)
    • 流水线方式:客户在收到HTTP的响应报文之前就能够发送新的请求报文。只需要花费一个RTT时间(不断发送请求,统一接受请求)

HTTP的报文结构:

  • 请求报文:开始行、首部行、请求主体

img

  • 相应报文:

img

img

HTTP是面向正文的协议,在报文中的每一个字段都是ASCII码串 每个字段的长度都是不确定的

万维网的文档

  • 静态
  • 动态