导图社区 信息技术
一张图让你了解信息技术的基础知识!内容涵盖计算机网络概述、网络交换技术、计算机网络体系结构、应用层 application layer等等,很全面详细,值得一看。
编辑于2023-02-22 22:15:419331
计算机网络概述
计算机网络定义:结合了现代通信技术和计算机技术能够使多台设备相互通信的网络
形成网络所需的条件
ISP
网络服务提供商
Communication links
通信链路
Packet switches
分组交换技术
Packet
数据包
网络协议
作用:保证计算机网络正常通信
为了进行网络中的数据交换而建立的规则标准或约定
协议的三个内容
语法(编程语言),语义( 要做什么),时序(数据需要有顺序)
消息的类型 请求,响应
消息的语法形式
字段信息的含义(语义)
进程发送和响应消息的规则
网络的组成部分
网络边缘:最边缘化的主机也就是终端,能被用户接触
主机,网络应用
接入网络:有线和无线通信链路
有线和无线通信链路
网络核心:Global ISP,Regional ISP
互联网间的路由器
网络服务类型
客户机\服务器
客户发请求,服务器响应
P2P
两个单机直接连接
接入方式,住宅入网,机构入网,移动入网
网络接入的几种传统方式
DSL—通过电话线入网 拨号上网
ADSL 非对称 上传下载带宽不同
网络传输介质(物理)
光纤,双绞线,同轴电缆,交换机,路由器,集线器…
网络的核心(路由器+交换机)
网络交换技术
电路交换:Circuit Switching
例如电话网络 双方必须建立实际的物理链路,并且每次通信的路径相同
优点
用户专用,传输时延小
随时可以通信
不会失序
控制相对简单
缺点
用户独占带宽,资源利用率低
不能满足互联网的动态
网络连接是突发性的,不会给足够时间
建立链路时间更长,成本更大
原理
三个阶段去建立连接:建立连接,通信,释放资源
多路复用技术
频分
各个用户占用不同的带宽资源
用户在分配到一定资源后,无论是否使用,都会占据资源
时分
将时间划分为一段段等长的时分复用帧,每个用户在每个TDM帧中占用固定序号的时序
用户在不同时间占用相同的频带宽度
分组交换
什么是分组
报文拆分出来的一系列相对较小的数据包
格式:header + payload 并且header里存储了很多地址信息
分组交换需要报文的拆分与重组,因此会有额外开销
分组交换采用
Sorted and forward Switching 存储-转发方式,接收完全部分组文件内容后才能进行转发
特点
检验差错的能力
自动缓存
时间慢,因为存储转发
Cut-through Switching 直通转发
特点
没有检验差错的能力
转发速度快,时延低
不需要两终端间建立实际的物理链路
工作原理 统计多路复用技术 Statistical Multiplexing
将尽可能的将带宽分配给需要数据量大的用户 比如下电影的带宽会比发微信消息的用户获得更多带宽
延时和丢包
延时的原因
分组到达速率超过链路容量,造成数据不能被即时发送
解决方案
给分组空间进行排队,等待先前分组发送
丢包的原因
排队队列满了,新来的分组无法进入队列
适用条件
突发数据传输网络
资源充分共享
分组短,减少重发数据量,提高可靠性
无需呼叫与建立链路
不需要建立也不存在电路交换的建立时延
可能产生延时和丢包
失序,丢失,重复分组
需要协议去处理可靠数据传输和拥塞控制
通信量大会有延时
PS 为分组交换提供电路级别保障,提前缓存视频
计算题,分组交换和电路交换可以服务的用户数量
二项分布 需要用到公示
网络中的各种时延以及formula
传输时延Transmation delay
文件大小B ➗ 上传带宽 R
x分组y hops 求 每个节点都需要t0 时间传输 求传输时延
(x+y-1)t0
传播时延 Propagation delay
物理路程L ➗ 传播速率V(一般是光速)
x分组y hops 求 每个分组每个节点都需要t1 时间传播到达下一节点 求传播时延
yt1
完整路径传播时延
排队时延 Queueing delay
原因
等待输出链路可用
取决于路由器拥塞程度
计算 R带宽链路,L分组长度,a平均分组到达率 流量强度 traffic intensity= La/R
结果接近0 延时小 接近 1 延时很大 超过1 约等于无限大延时
Average queueing delay,L(N-1)/(2R)N为等待包的数量
Arrival rate:a=R /L
结点处理时延 Nodal processing delay
原因
差错检测,确定输出链路
end to end delay , sum of all delay above
端到端时延:综合上面两个题 答案为 (x+y-1)t0+yt1
时延带宽积= 传播时延✖️带宽
吞吐量
短板决定一切
计算机网络体系结构
计算机网络是一个很复杂的系统,有很多组成部分,是分层结构
为什么要引入层的概念
引入了更多的网络技术的抽象层面
透明-不同层级信息我们得不到
引入层的缺点
Duplicate functionality
功能必须重复
Header
头部信息占用资源过多
Performance
分组的损坏和拥堵会造成数据包丢失
Layer violation
Nat技术的高效必须打破分层结构
一层层打包 然后每一层拆包 header越大 payload所占比重变少
应用层 application layer
网络应用体系结构
客户机/服务器
服务器 提供服务 (等待通讯的进程)
24小时提供服务
可以永久性访问的地址和域名
利用大量服务器实现可扩展性
客户机 使用服务(发起通讯的进程)
与服务器通信,使用服务器的服务
不会与其他客户机直接通信
间歇性接入网络
可能使用动态IP地址
网络弹性 负载均衡
水平弹性
增加服务器的数量
垂直弹性
增加服务器的效率
P2P 具有高度可伸缩性 但是难与管理
没有永远在线的服务器
任意端系统/节点之间可以直接通讯
节点间歇性接入网络
节点可能改变IP地址
混合结构
网络应用的服务需求
可靠性
网络电话 能容忍一定数据的丢失
文件传输 不能容忍数据丢失 乱序
带宽
网络视频需要带宽低时才有效
有些应用对带宽没有要求 比如Email
时延
网络电话和游戏只有在延迟足够低是才有效
需要下层传输层(Transport Layer)来提供服务
Internet传输层服务模型
TCP
C/S间要建立连接
传输很可靠
流量控制,发送方的发送速率不会超过接收方的处理能力
不提供延迟保障和最小带宽保障
UDP
无连接,因此传输不可靠
其余都不提供
特定网络应用及协议
Web网络应用
WWW world wide web 网页 和 网页互相连接
一个网页包含多个对象 html文件 img图片 视频文件 动态脚本
对象的寻址:URl 统一资源定位器 (Uniform Resource Locator)
Scheme://host:port/path
protocol://host-name[:port]/directory-path/resource
HTTP 超文本传输协议
HyperText Transfer Protocol
应用于CS结构
HTTP版本 1.0 RFC 1945 和 1.1 RFC 2068
交换信息 (request and response)
无状态(stateless) 服务器不维护任何有关客户端过去所发请求的信息 导致产生不一致现象
请求信息人类可直接读,对机器不友好
上传输入的方法
Post方法
网页里的表格 在请求消息的消息体(entity body )中上传客户端的输入
URL方法
输入信息通过request行的URL字段上传
连接两种类型
非持久性连接 Nonpersistent HTTP
每个TCP连接最多允许传输一个对象
有多少对象就会进行多少次传输
HTTP 1.0 版本 使用非持久性连接
持久性连接 Persistent HTTP
每个TCP连接最多允许传输多个对象
HTTP1.1版本默认使用持久性连接
为什么要升级连接方式
RTT (Round Trip Time)
从客户端发送一个很小的数据包到服务器并返回所经历的时间
响应时间(Response time)
发起,建立TCP连接,1个RTT
子主题
发送HTTP请求消息到HTTP响应消息前几个字节到达:1RTT
响应消息中所含的文件/对象传输时间
Total=2RTT+ 文件发送时间
优缺点
让协议变得简单
人类可读 可变数据长度 不必格式化数据 容易换行
并不是最高效的
很多协议用二进制文件 会让数字也按照 字符串的数据类型所占空间去发送,头文件顺序不稳定,需要编译字符串
SMTP
POP
IMAP
DNS
P2P应用
协议的类型
公有协议和私有协议
Socket编程
TCP
UDP
应用层的基础
进程 主机上运行的程序
进程间通讯机制
socket发送和接收消息
寻址和编址
通过标识符进行寻址
标识符由 IP地址+ 端口号组成 IP地址确定主机 端口号 Port 确定主机的应用
消息交换
主题