计算机网络
计算机网络基础知识
- 什么是网络
- 什么是计算机网络
- 互联网的组成
- 计算机网络结构
- TCP/IP协议
什么是网络
网络是由节点和连线构成,表示诸多对象及其相互联系。对于计算机领域来说:网络是代表传输数据之间的联系的一种平台。对于数据结构来说,就是图的表示 ,对于定量分析就是
应用层:提高常见的网络应用
应用层利用传输层的服务将数据传输给应用进程,完成进程间的通信。
再根据特定应用再进行数据进一步去封装。
定义了应用层的协议:包含以下内容
- 报文类型
- 各种报文类型的语法
- 字段的语义
- 进程之间何时、如何发送报文
应用层协议只是网络应用的一个部分,是网络应用的一个子集
应用层的具体内容就是规定应用进程在通信时所遵守的协议
特点:
- 应用层协议基于客户服务端模式(前面的概念) p2p也是客户服务端模式的一个变式。
- 最高层协议,最活跃的一层。变化最多的一层
- 有公开的协议(HTTP)也有不公开的协议(p2p下载的协议)
应用层协议(基本的协议)
- DNS(域名系统):实现网络用户到IP地址映射的网络服务
- FTP(文件传输协议):用于实现交互式文件传输功能
- SMTP(简单邮件传送协议):用于实现电子邮件传送功能
- HTTP(超文本传输协议):用于www服务
- SNMP(简单网络管理协议):用于管理与监视网络设备。
- Telnet(远程登录协议):用于实现远程登录功能。
DNS(域名系统(system))
- 作用:把提交给系统的域名转换成ip地址
互联网采用层次结构的命名数作为主机的名字,使用分布式的域名系统,实现域名到IP地址的转换的操作
将域名转换为ip地址的操作叫DNS解析
如果使用直接的ip地址有两个缺点:①不好记②计算机是经常更换ip地址,而且不可能告诉你ip地址
概述:域名系统就是起名字,映射到ip地址
域名服务器:DNS(server)是进行域名和之对于的ip地址转换的服务器,在这里保存了一张域名和与之对于的ip地址的表,以解析消息的域名。
互联网的域名解构:唯一的层次结构为域名,域名的结构由标号序列组成,各标号之间用点隔开:
三级域名.二级域名.顶级域名(层次树状结构的命名方法)
域名服务器(树状的层次结构)
- 一个域名服务器所管辖的范围叫做区
- 各单位根据具体情况来划分自己管辖的区,但是一个区中的所有节点是必须能够连通的
- 每一个区设置相应的权限域名服务器,用来保存该区中的所有主机的域名到IP地址的映射
- 管辖范围不是以“域”作为单位,而是以“区”
分类:
- 根域名服务器
- 顶级域名服务器
- 权限域名服务器
- 本地域名服务器
根域名服务器:最高层,最重要的域名服务器
- 所有的根域名服务器都知道所有的顶级域名服务器的域名和IP地址
- 不管哪一个本地域名服务器,若是无法解析,则求助于根域名服务器
- 有13个不同的IP地址的根域名服务器,它们的名字是用一个英文字母命名,从a-m(但不是只有13台主机)
- 作用:不是直接吧域名转换为ip地址,使用迭代查询,把下一步应当找到的顶级域名服务器的ip地址告诉本地域名服务器
- 就近原则
顶级域名服务器(TLD服务器)
- 管理在改顶级域名服务器注册的所有二级域名
- 当收到DNS查询的请求的时候,给出相应的回答
权限域名服务器
- 管理一个区的域名服务器
- 当一个权限域名服务器不能给出最后的查询回答的时候,就会告诉发出查询请求的DNS客户,下一步应当从哪一个寻找权限域名服务器
本地域名服务器(在本地网络连接的设置中)
- 当一个主机发出DNS查询请求的时候,这个请求报文就会发送给本地域名服务器(如果不成功就交给上一级的域名服务器查询)
- 每一个互联网提供者ISP都可以拥有一个本地域名服务器
- 也被成为默认服务器
处于对于安全的考虑,我们会设置一个备用DNS服务器。
当主域名服务器出现故障的时候,为了保证查询不中断,就可以在辅助域名服务器中查询。
但是更改域名服务器只能在主域名服务器,主域名服务器定期的将数据复制到辅助域名服务器 保证数据的完整性
DNS解析过程
- 间接完成 由其他应用服务来间接调用
主机提出查询请求->本地域名服务器->根域名服务器
主机向本地域名服务器的查询一般是采用的递归查询
流程图如下:

一共使用了8个UDP报文
不需要建立连接
一共执行了3次迭代查询
少见的递归查询的过程:

高速缓存(代理服务器)
每一个域名服务器都维护一个高速缓存,存放最近使用过的名字以及从何处获取名字映射信息的记录
大大减轻服务器的负荷
为了保持高速缓存保持正确,需要去在高速缓存中设置计时器
- 将最近一些请求和响应暂存在本地磁盘中。代表服务器发出HTTP协议
万维网WWW
- 概述:应用层的服务,把所有的信息以网状的方式连接到一起,通过超链接的方式展现给我们
- 大规模的联机式的信息存储所
- 从一个链接跳转到另一个链接(超链接) 万维网独有的服务
- 分布式超媒体系统(一个超文本由多个信息源链接,超媒体更加广泛)
- 客户-服务端的方式工作
万维网使用统一资源定位符URL来标志万维网上的各种文档。每一个文档在整个互联网的范围内具有唯一的标识符URL
(如何定位)
万维网使用HTTP协议(超文本传送协议,是一个应用层协议)使用TCP进行可靠的传送。
(如何传输)
万维网使用超文本标记语言对万维网的页面进行设计
(如何表示)
万维网使用搜索引擎来搜索超链接的多媒体形式的内容
(如何搜索)
如何定位
使用URL(统一资源定位符)
URL:对可以从互联网上得到的资源的位置和访问方法的一种简洁表示
提供一种抽象的表示方便的找到资源
- 形式:协议、主机、端口、路径
如何传输
HTTP协议:如何实现链接和传输的协议
- 面向事物类型:在万维网上可靠的交换文件的基础(各种多媒体文件)

HTTP1.0:无连接,每次先建立TCP的连接,取得文档吼再释放
HTTP1.1: 在一段时间之内维持TCP连接(持续连接)
- 持续连接的两种工作方式:
- 非流水线方式:客户在收到前一个相应后才能发出下一个请求。少了一个TCP连接所需要的RTT时间(与非持续连接的两倍RTT相比)
- 流水线方式:客户在收到HTTP的响应报文之前就能够发送新的请求报文。只需要花费一个RTT时间(不断发送请求,统一接受请求)
HTTP的报文结构:
- 请求报文:开始行、首部行、请求主体

- 相应报文:


HTTP是面向正文的协议,在报文中的每一个字段都是ASCII码串 每个字段的长度都是不确定的
万维网的文档
- 静态
- 动态
