(一)计算机网络概述
1.1 计算机网络基本概念
什么是计算机网络?
计算机网络是通信技术与计算机技术紧密结合的产物。
通信系统模型如图:
定义:计算机网络就是互连的、自治的计算机集合。
互联互通 无主从关系
主机间连接由交换网络实现,交换网络中存在交换节点(路由器或交换节)
什么是Internet?
全球最大的互联网络 ISP(Internet Service Provider)网络互联的“网络之网络”
组成:计算设备(主机or端系统)、通信链路(光纤、铜缆、无线电、卫星等)、分组交换(路由器和交换机)
定义:为网络应用提供通信服务的通信基础设施
什么是网络协议?
计算机网络的所有通信过程都必须遵守某种/些规则——协议
定义:是为进行网络中的数据交换而建立的规则、标准或规定
协议规定了通信实体之间所交换的信息的格式、意义、顺序以及针对收到信息或发生的事件所采取的“动作”
协议的三要素:
语法(Syntax)
语义(Semantics)
时序(Timing)
1.2 计算机网络结构
计算机网络结构
网络边缘--接入网络、物理介质--网络核心
网络边缘:指主机、端系统;运行网络程序;(如:web,email)
客户/服务器应用模型:客户发送请求,接收服务器响应(web)
对等(peer-peer,P2P)应用模型:通信在对等实体之间直接进行(QQ)
接入网络:数字用户线路(DSL):用滴电话线
电缆网络:频分多路复用技术(电视滴不同频道原理)、HFC(非独占)
家庭网络接入、企业网络接入、无线网络接入(无线局域网LANs,广域无线接入)
网络核心:关键功能:路由+转发
路由表,路由协议,路由算法(确定路径)
Internet结构
网络之网络
端系统->接入ISP->Internet
接入ISP后还要进行进一步互连
构成负责的网络互连的网络
其中ISP是如何彼此互连?
1.3 网络核心
数据交换是数据传输的基础
三大交换类型(从技术分类)
电路交换、报文交换、分组交换
电路交换
最经典的电路交换网络:电话网络
三个阶段:建立连接(呼叫/电路建立)、通信、释放连接(拆除电路)
特点:独占资源
多路复用技术(Multiplexing):简称复用
将链路/网络资源划分为“资源片”,将资源片分配给各路“呼叫”,每路呼叫独占分配到的资源片进行通信,资源片可能闲置;
时分多路复用,波分多路复用,码分多路复用
频分多路复用(FDM):将信道资源在频率上进行划分,让某个信号只是用某个频率段的资源段(电视频道)
时分多路复用(TDM):将信道使用时间划分为一段段等长的时分复用帧,每个用户在每个TDM帧中用固定序号的时隙(用户所占时隙具有周期性)
波分多路复用(WDM):就是光的频分复用
码分多路复用(CDM):广泛用于无线链路分享(蜂窝网,卫星通信)
给每个用户分配一个唯一发m bit码片序列,其中“0”用“-1”表示、“1”用“+1”表示
例:S站的码片序列:(-1 -1 -1 +1 +1 -1 +1 +1)
编码信号=(原始数据)*(码片序列)
各个用户的码片序列必须相互正交(orthogonal):
报文交换和分组交换
最经典的报文交换:电报
分组交换既是把报文交换中的报文进行分组处理,需要对报文进行拆分与重组(会产生额外开销(时间和空间))
分组交换的报文交付时间
分组交换 VS 电路交换
大部分应用场景下,用户的平均活动时间较低,一般情况下,分组交换允许更多的用户同时使用网络,网络资源利用率更高。
但是分组交换并不是绝对优于电路交换,分组交换适用于突发的数据传输网络;
资源充分共享、简单、无需呼叫建立
可能产生拥塞:分组延迟和丢失
1.4 计算机网络性能
速率、带宽、延迟
速率即数据率(data rate)或比特率,单位时间(秒)传输信息(比特)量:b/s,kb/s,Mb/s
带宽原本指信号具有的频带宽度,即最高频率与最低频率之差。网络中“带宽”通常是数字信道的最高数据率。
延迟/时延(delay or latency)
结点处理延迟(nodal processing delay): 差错检测、确定输出链路
排队延迟(queueing delay): 等待输出链路可用、取决于路由器拥塞程度
传输延迟(transmission delay): L:分组长度、 R:链路带宽
传播延迟(propgation delay): d:物理链路长度、s:信号传播速度()
排队延迟具有特殊性,时间不确定
时延带宽积、丢包率、吞吐量
时延带宽积 = 传播时延 * 带宽
又称为以比特为单位的链路长度
分组丢失:原因队列缓存容量有限,分组到达已满队列将被丢弃(即丢包)
吞吐量:表示在发送端与接受端之间传送数据速率(b/s)=min(a,b,c)
(二)应用层
2.1网络应用的基本原理
网络应用体系结构
客户机/服务器结构(Client-Server,C/S)(web)
服务器性质:不间断提供服务、永久性访问地址、利用大量服务器实现可扩展性
客户机性质:间歇性接入网络、可能使用动态IP地址、不与其他客户机直接通信
点对点结构(Peer-to-peer,P2P)
性质:节点间歇性接入网络,IP地址可能改变、任意节点之间可以直接通讯
混合结构(Hybrid)
例:Napster:文件传输使用P2P结构、文件的搜索采用C/S结构
网络应用进程通信
进程:主机上运行的程序
客户机进程:发起通信的进程
服务器进程:等待通信请求的进程
进程间通信利用socket发送/接收消息
传输基础设施向进程提供API
·传输协议的选择
·参数的设置
寻址进程
进程标识符:IP地址+端口号
端口号:HTTP:80 Mail Server:25
应用层协议
网络应用应遵循应用层协议
公开协议:由RFC(Request For Comments)定义,允许互操作,例:HTTP、SMTP
私有协议:多数P2P文件共享应用
协议中内容:消息类型(type)(请求消息、相应消息)、消息的语法(syntax)、字段的语义(semantics)、规则(rules)
网络应用的需求与传输层服务
需求:数据丢失(data loss)/可靠性(reliability)
时间(timing)/延迟(delay)
带宽(bandwidth)
TCP和UDP对比
HTTP
C/S结构
客户——Browser,服务器——Web Server
HTTP连接的两种类型
非持久性连接:每个TCP连接最多允许传输一个对象;
持久性连接:每个TCP连接允许传输多个对象
(期末考试了,考研继续哈哈哈)