计算机网络和因特网
mindmap
root((计算机网络和因特网))
互联网基本概念与问题
什么是网络和互联网
网络
不同类型的网络
基本问题
互联网的组成部分
互联网的组件视图
互联网的服务视图
网络协议
协议
互联网标准
接入互联网
网络边缘
接入网络
家庭接入网络
物理介质
有导向介质
无导向介质
网络核心
数据传输方式
电路交换
分组交换
网络性能
延迟
吞吐量
协议分层与服务模型
OSI 模型
TCP/IP 模型
互联网基本概念与问题
什么是网络和互联网
网络是一种通过「链路」将「节点」连接起来,以在节点之间传输「信息」的系统。虽然定义较为宽泛,但其核心在于 节点(node)和 链路(link)的交互。
不同类型的网络:
- 互联网(Internet)
- 电话网络
- 无线网络
- 光纤网络
- 数据中心网络
- 交通网络
- 社交网络
本课程主要聚焦于互联网(Internet)。
互联网是全球互联的大型主机、个人计算机和无线网络系统,使用 TCP/IP 协议族 来连接数十亿设备。它由数百万个私有、公共、学术、企业和政府网络组成,范围从局域到全球,通过多种电子、无线和光纤技术连接。
基本问题:
- 互联网由什么组成?
- 如何接入互联网?
- 数据如何在网络中传输?
互联网的组成部分
互联网的组件(component)视图
- 计算设备(computing devices):数百万台连接的计算设备(主机 Hosts = 终端系统 End systems),运行网络应用程序。
- 通信链路(communication links):光纤、铜线、无线电、卫星等物理媒介,构建物理网络。
- 路由器(routers):在物理网络之间转发数据包(chunks of data)。
互联网的服务(service)视图:
- 互联网作为通信基础设施,支持分布式应用,例如:
- Web、VoIP、电子邮件、在线游戏、电子商务、文件共享等。
- 提供的通信服务包括:
- 可靠的数据传输(从源到目的地)。
- 「尽力而为」(不可靠)的数据传输。
- 保证延迟和吞吐量。
网络协议
协议(Protocol)
协议(Protocol)是控制消息发送和接收的规则集合。
例如:
- HTTP(HyperText Transfer Protocol):Web 页面传输协议。
- Skype
- TCP(Transmission Control Protocol):提供可靠的数据传输。
- IP(Internet Protocol):定义了数据包的格式和路由规则。
- PPP(Point-to-Point Protocol):在两个节点之间建立连接。
- 以太网
互联网标准由 IETF(Internet Engineering Task Force)制定,并通过 RFC(Request for Comments)发布。
协议定义了网络实体之间发送和接收的消息的格式和顺序,以及在消息传输和接收时采取的操作。
接入互联网
接入网络的方式:
- 网络边缘(Network Edge)
- 应用和主机
- 接入网络(Access Network)
- 物理媒体
- 有线和无线通信链路
- 网络核心(Network Core)
- 互联的路由器网络
- 网络的网络
网络边缘
- 终端系统(End systems, hosts):运行应用程序(如 Web 浏览器、电子邮件客户端)。
- 客户端/服务器模型:
- 客户端请求并接收来自始终在线的服务器的服务。
- 对等模型(Peer-to-Peer, P2P):
- 几乎不使用专用服务器(如 Skype、BitTorrent)。
接入网络
接入网络的方式包括:
- 家庭接入:DSL(Digital Subscriber Line)、电缆调制解调器、光纤等。
- 机构接入:学校或公司局域网(LAN, Local Area Network)。
- 移动接入:蜂窝网络(3G、4G、5G)。
家庭接入网络
- 拨号(Dial-up modem):通过调制解调器
- 最高 56 Kbps 直接接入路由器
- DSL(Digital Subscriber Line):数字用户线路
- 部署:电话公司
- 上行高达 1 Mbps,下行 8 Mbps
- 到电话总局的专用物理线路
- HFC(Hybrid Fiber Coax):混合光纤同轴电缆
- 非对称:下行高达 30 Mbps,上行 2 Mbps
- 家庭共享接入 ISP 路由器
- 部署:有线电视公司
物理介质
物理介质
物理介质是信号传播的载体,分为有导向介质(guided media)和无导向介质(unguided media)。
- 有导向介质:信号在固体介质中传播,如铜线、光纤、同轴电缆。
- 无导向介质:信号自由传播,如无线电波。
常见物理介质:
- 双绞线(Twisted Pair, TP)
- 由两根绝缘铜线组成。
- Category 5:支持 100 Mbps 或 1 Gbps 的以太网传输。
- Category 6:支持 10 Gbps 的高速传输。
- 同轴电缆(Coaxial Cable)
- 包含两层同心铜导体,支持双向通信。
- 特点:宽带传输(multiple channels on cable)。
- 光纤(Fiber Optic Cable)
- 利用玻璃纤维传输光脉冲,每个脉冲代表一个比特。
- 优点:
- 高速传输(如 10~100 Gbps)。
- 低误码率(immune to electromagnetic noise)。
- 中继器间距远。
- 无线电波(Radio)
- 信号通过电磁频谱传播,无需物理连接。
- 特点:双向通信,但受环境影响(如反射、障碍物阻挡、干扰)。
- 常见类型:
- 地面微波(terrestrial microwave):速率可达 45 Mbps。
- 局域网(LAN,如 WiFi):速率 11 Mbps 或 54 Mbps。
- 广域网(如蜂窝网络):3G 蜂窝网络约 1 Mbps。
- 卫星通信:延迟约 270 毫秒。
网络核心
网络核心
网络核心是由互联路由器组成的网格,负责数据在网络中的传输。
数据传输方式
电路交换(Circuit Switching)
- 原理:为每次通信建立专用电路(dedicated circuit),例如传统电话网络。
- 过程:
- 源节点发送预留请求到目标节点。
- 交换机完成电路建立(admission control)。
- 数据传输。
- 发送拆除请求释放电路。
- 优点:性能可预测,切换简单快速。
- 缺点:资源独占导致效率低下(尤其在突发流量时),电路建立增加延迟。
分组交换(Packet Switching)
- 原理:主机将应用层消息拆分为分组(packet),逐跳转发至目标。
- 特点:
- 每个分组包含目标地址(destination)。
- 使用缓冲区应对瞬时过载(buffers to absolve transient overloads)。
- 优点:资源利用率高,实现简单,鲁棒性强(可绕过故障)。
- 缺点:性能不可预测,需要缓冲管理与拥塞控制。
网络性能
网络性能
网络性能是衡量数据传输效率的关键指标,主要包括延迟(delay)、吞吐量(throughput)和丢包率(loss)。
延迟(Delay)
延迟由以下四个部分组成:
- 传输时延(Transmission Delay)
- 公式:
- 示例:
- 传播时延(Propagation Delay)
- 公式:
- 示例:
- 排队时延(Queuing Delay)
- 受流量混合和交换机内部特性影响,通常用统计方法描述(如平均值、方差)。
- 瞬时过载是常见现象,可能导致队列增长。
- 处理时延(Processing Delay)
- 交换机处理分组所需时间,通常可忽略。
未过载时的排队时延示意图:
过载时的排队时延示意图:
过载丢包示意图:
端对端延迟:
吞吐量(Throughput)
传输速率为 ,文件大小为 ,分组大小为 ,则传输时间 ,平均吞吐量 。
端对端吞吐量:
协议分层与服务模型
协议分层
协议分层是将网络功能划分为多个层次,每层实现特定服务并依赖下层提供的服务。
OSI 模型
OSI(Open Systems Interconnection) 模型是国际标准化组织(ISO)定义的网络协议体系结构,用于指导网络协议设计。
OSI 模型分为七层,从下到上依次为:
- 物理层(Physical Layer):定义物理链路的电气、机械特性(如电缆、插头)。
- 数据链路层(Data Link Layer):将比特分组为帧(frame),提供错误检测与重传。
- 网络层(Network Layer):负责跨多链路的数据包传输,包括路由(routing)和转发(forwarding)。
- 传输层(Transport Layer):提供端到端可靠数据传输(如 TCP、UDP)。
- 会话层(Session Layer):控制应用程序间的对话。
- 表示层(Presentation Layer):处理数据格式与编码。
- 应用层(Application Layer):为应用程序提供网络接口(如 HTTP、FTP)。
TCP/IP 模型
TCP/IP 模型是互联网广泛使用的协议架构,分为四层:
- 应用层(Application Layer):支持网络应用(如 HTTP、SMTP)。
- 传输层(Transport Layer):提供进程间数据传输(如 TCP、UDP)。
- 网络层(Internet Layer):负责跨网络的数据报路由(如 IP)。
- 链路层(Link Layer):实现相邻节点间的数据传输(如 Ethernet)。
分层模型的优点:
- 降低复杂性
- 提高灵活性
缺点:
- 增加开销
- 往往要求跨层协作