计算机网络

计算机网络 = 通信技术 + 计算机技术

1.计算机网络定义

定义:计算机网络就是互联的、自治的计算机集合
    (1)自治:无主从关系(某一个计算机不能控制另外一个计算机)
    (2)互联:互联互通(计算机之间要互联互通)
        通信链路(光线|同轴电缆|双角线|无线信号|卫星等)|(不可能直连所有的网络设备)
    *距离远,数量大如何保证互联
        通过交换网络(重要的是:交换节点(路由器|交换机))

*计算机网络是通信技术与计算机技术紧密结合的产物
*通信系统的模型:
信源——>发送设备——>信道(可能会受到噪声源的干扰)——>接受设备——>信宿
*计算机网络就是一种特殊的通信网络(特殊之处在于,信源和信宿就是我们通常说的计算机,发出的信息通常就是一些数字化信息)

2.什么是 Internet

1)组成细节
*全球最大的互联网络
    ISP(Internet Service Provider)网络互联的"网络之网络"
*概念:数以百万计的互联的计算设备的集合
    主机 = 端系统
    运行各种网络应用 
*通过通信链路相连
*实现数据的分组交换:转发分组(数据包)
    实现其最重要的设备:路由器和交换机

(2)服务角度
*为网络基础提供服务的通信基础设施
    web|网络游戏等
*为网络应用提供编程接口(API)
    支持程序"链接" Internet,发送/接受数据
    类似于邮政系统的数据传输服务

(3)问题
仅由硬件(主机、链路、路由器 . . .)链接,Internet 能否顺畅运行?能保证数据交付吗?......
答案:NO
    需要网络协议

3.什么是网络协议

概念:网络协议简称为协议,是为了进行网络中的数据交换而建立起来的规则、标准或约定
    协议规定了通信实体之间所交换信息的格式、意义、顺序及针对收到信息或发生事件所采取的动作

协议是计算机网络有序运行的重要保证

*硬件(主机、路由器、通信链路等)是计算机网络的基础
*计算机网络中的数据交换必须遵守事先约好的规则 
*如交通系统

任何通信或信息交换过程都需要规则

4.协议

*协议的三要素:
(1)语法
    数据与控制信息的结构或格式
    信号电平
(2)语义
    需要发出何种控制信息
    完成何种动作以及作出何种响应
    差错控制
(3)时序
    事件顺序
*协议规范了网络中所有信息发送和接收过程
*学习网络的重要内容之一
*网络创新的表现形式之一
*Internet协议标准

5.计算机网络结

1)网络边缘
    主机(端系统)
        位于网络边缘,运行程序如:web|email
        工作模型:
            *客户—服务器应用模型(web应用|文件ftp传输等)
            *对等(P2P)应用模型:无专用服务器,通信在对等的实体之间直接进行(QQ|Skype|BT|Gnutella)
    网络应用
        *接入网络:数字用户线路(DSL)|电缆网络
                都使用的是频分多路复用技术

(2)接入网络,物理介质
    有线或无线通信链路

(3)网络核心(核心网络)
    *解决的问题是:将数据从源主机通过网络核心送达目的主机(利用数交换)
    关键功能:路由 + 转发
    互联的路由器(或分组转发设备)
        发送时根据本:地转发表(由路由算法组成)

6.Internet 结构

*端系统通过 ISP(access ISPs)连接到 Interne
    家庭、公司和大学ISPs
*接入ISP进一步互相连接
    这样任意两个主机才可以互相发送分组
*构成复杂的网络互联网络

7.数据交换—电路交换

交换:动态转接 |动态分配传输资源

数据交换类型:
(1)电路交换
    典型:电话网络最典型
    电路交换的三个阶段:
        建立连接(呼叫/电路建立)—通信—释放连接(拆除电路)
    *最显著的特点:资源独占(两个人在通话个过程中所占用的链路资源不能被第三方所共享)
    *多路复用:中继线被共享

(2)报文交换
    *源(应用)发送信息的整体

(3)分组交换:统计多路复用
    *特点:A&B分组序列不确定,按需共享链路
    *存储——转发 的过程
    *报文拆分出来的一系小的数据包
    *分组交换需要报文的拆分与重组
    *产生额外开销
#报文交换和分组交换均采用存储——转发交换方式
    *区别:报文交换以完整的报文进行,分组交换需要将报文进行拆分



Question:存储——转发模式交换,哪种交换方式更好呢?

报文交换 VS 分组交换
(1)分组交换(并行的)更省时,并且所需存储空间小
分组交换 VS 电路交换
(1)分组交换允许更多用户同时使用网络(资源共享率更高)

分组交换:
*更适用于突发数据传输网络
    资源充分共享
    简单,无需呼叫建立
*可能产生拥塞:分组延迟或者丢失
    需要协议处理可靠数据传输和拥塞控制

8.多路复用

*简称复用,是通信技术中的基本概念(实现信道共享)

(1)频分多路复用(FDM)
        各用户占用不同的带宽(频率带宽:HZ而不是数据发送速率)资源
    将信道资源在频率上进行划分(有线电视网络)

(2)时分多路复用(TDM)
        将时间划分为一段段等长的时分复用帧,每个用户在每个TDM中帧中占用固定序号的时隙
        每用户所占用的时隙是周期性的出现(其周期就是TDM帧的长度)

(3)波分多路复用(WDM)
    *就是光的频分复用

(4)码分多路复用(CDM)
    *广泛应用于无线链路的共享(如蜂窝网,卫星通信等)
    *各用户使用相同频率载波,利用各自码片序列编码数据
    *编码信号:原始数据 * 码片序列
    *各个用户的码片序列必须相互正交

9.计算机网络性能

1)速率:即数据率|数据传输速率|比特率
    *单位时间(秒)传输信息(比特)量
    *计算机网络中最重要的一个性能指标
    *单位:b/s | kb/s | Mb/s | Gb/s    2)速率往往是指额定速率或者标称速率     
(3)带宽:最高频率与最低频率之差,单位(Hz)
(3)网络的带宽通常是指数字信道所能传输的最高速率(单位:b/s(bps))
    常用的带宽单位:kb/s | Mb/s | Gb/s | Tb/s 4)

Question:分组交换为什么会发生丢包和时延?
(1)分组在路由缓存中排队
    *分组到达速率超出链路容量时
    *分组排队,等待输出链路可用
(2)结点处理延迟 | 排队延迟 | 传输延迟 | 传播延迟 

10.时延带宽积

时延带宽 = 传播时延 × 带宽
又称为以比特为单位的链路长度

11.分组丢失(丢包)

*队列缓存容量有限
*分组到达已满队列将被丢弃(即丢包)
*丢弃分组可能由前序节点或源重发(也可能不重发)
*丢包率 = 丢包数/已发分组总数

12.吞吐量/率

*吞吐量:表示在发送端与接收端之间传递数据速率(b/s)
    即时吞吐量:给定时刻的速率
    平均吞吐量:一段时间的平均速率

13.计算机网络的体系结构

*网路体系结构是从功能上描述计算机网络结构的
*简称为网络体系结构,是分层结构
(1)为什么要采用分层结构?
    利:
    结构清晰,有利于识别复杂系统的部件及其关系
    模块化的分层更易于系统更新、维护
    有利于标准化
*计算机网络体系结构是计算机网络的各层及其协议的集合
*体系结构是一个计算机网络的功能和层次及其关系的定义
*体系结构是抽象的


(1)实体:表示任何可发送或接收信息的硬件或软件进程
(2)协议:是控制两个对等实体进行通信规则的集合,协议是'水平的'
(3)任一层实体需要使用下层服务,遵循本层协议,实现本层功能,向上层提供服务,服务是'垂直的'
(4)下层协议的实现对上层服务用户是透明的
(5)同系统的相邻层之间是通过接口进行交互,通过服务访问点SAP,交换原语(指示|请求|访问|响应等),指定请求的特定服务

14.OSI参考模型

计算机网络_第1张图片

*开放系统互连(OSI)参考模型是由国际标准化组织(OSI)于1984年提出的分层网络体系结构模型,目的是支持异构网络互连系统的互联互通
*异构网络互联的国际标准

OSI七层(从上到下):每个层次完成特定的网络功能
    主机A                中间系统           主机B
    7——应用层              
    6——表示层
    5——会话层
    4——传输层
    3——网络层
    2——数据链路层
    1——物理层

解释网络通信的过程:
    主机要完成所有7层协议,中间系统需要完成三层(1|2|3)
    4-7层成为端到端层

简述:
***非端到端实现的功能

1.物理层:实现每一个比特的传输
    (1)定义规范接口特性(机械特性|电气特性|功能特性|规程特性)2)比特编码
    (3)定义传输速率
    (4)解决比特同步:时钟同步


2.数据链路层功能:物理链路直接相邻的两个节点只见的数据传输
    (1)负责结点-结点数据传输
    (2)组帧:接收到数据流时,能分清楚数据
    (3)物理寻址:在帧头中增加发送端和/或接受端的物理地址标识数据帧的发送端和/或接受端
    (4)流量控制:避免淹没接受端
    (5)差错控制:检测并重传破损或丢失帧,并避免重复帧
    (6)访问(接入)控制:在任一给定时刻决定哪个设备拥有链路(物理介质)控制使用全

3.网络层功能:从源主机到目的主机可以跨越网络跨越多个链路数据分组的传输/交互
    (1)负责源主机到目的主机数据分组交付:可穿过多个网络层
    (2)逻辑寻址:全局为一的逻辑地址,确保数据分组被发送到目的主机,如IP
    (3)路由:选择路径|路由器(或网关)互联网络,并路由分组至最终目的主机4)分组转发


***端到端实现的功能

4.传输层:负责源-目的(端-端)(进程空间)完整报文传输
    (1)分段与重组
    (2)SAP寻址:确保将完整报文交给正确进程,如端口号
    (3)链接控制:端到端的链接控制
    (4)流量控制
    (5)差错控制

5.会话层:
    (1)对话控制:建立|维护
    (2)同步:在数据流中插入'同步点'
    (3)最宝的一层

6.表示层功能:处理两个系间交换信息的语法与语义问题
    (1)数据表示转化:转化为独立的编码
    (2)加密|解密
    (3)压缩|解压缩

7.应用层:支持用户通过用户代理(如浏览器)或网络接口使用网络(服务)
    (1)典型的应用层服务:FTP(文件传输)|SMPT(电子邮件)|HTTP(WEB)等


(2)问什么要进行数据封装?
    增加控制信息:构造协议数据单元(PDU)
    控制信息主要包括:地址(标识发送端|接受端)、差错检测编码(用于差错检测或纠正)、协议控制(实现协议附加信息,如:优先级|服务质量|安全控制等)

15.TCP/IP参考模型

四层(从上到下):
    4.应用层
    3.运输层
    2.网际层
    1.网络接口层

16.5层参考模型

***现实中所运用的

综合OSI和TCP/IP的优点
    应用层
    传输层
    网络层
    数据链路层
    物理层


**功能:

应用层:支持各种网络应用(HTTP|SMPT|FTP)
传输层:进程-进程的数据传输(TCP|UDP)
网络层:源主机到目的主机的数据分组与转发(IP协议|路由协议等)
链路层:相邻网络的元素(主机|交换机|路由器等)的数据传输(以太网|WIFI|PPP)
物理层:比特传输

17.网络应用


(1)客户机|服务器(C/S)

    服务器:
    *7*24小时提供
    *永久性的访问地址/域名
    *利用大量服务器实现可扩展性
    客户机:
    *与服务器通信,使服务器提供服务
    *间接性接入网络
    *可能使用动态IP地址
    *不会与其它客户机直接通信
WEB典型的C/S结构

(2)P2P(点对点结构)
    *没有永远在线的服务器
    *任意端系统/结点
    *节点间歇性接入网络
    *节点可能改变IP地址

文件共享是典型的P2P结构

(3)混合结构
*Napster:
文件传输使用P2P结构
文件搜索采用C/S结构——集中式
    每个节点向中央服务器登记自己的内容
    每个节点向中央服务器提交查询请求,查找感兴趣的内容

1.网络应用与单机应用有哪些本质性的不同?
2.网络应用采取什么样的体系结构?
3.P2P和C/S相比最大的优点是什么?
    优点:高度可伸缩
    缺点:难与管理


**网络应用的服务需求
    网络应用遵循应用层协议
(1)可靠性/数据丢失
    某些网络能够容忍一些数据的丢失:网络电话
    某些网络要求100%可靠的数据传输:文件传输|telent
(2)带宽
    某些网络应用只有在带宽达到最低要求时才'有效':网络视频
    某些应用能够适应任何带宽——弹性应用:email
(3)时延
    有些应用只有在延迟足够时才'有效'
    网络电话|网络游戏4)安全性

**Internet传输层服务模型
(1)TCP
    *面向链接:客户机|服务器间进程需要建立连接
    *可靠的传输
    *流量控制:发送方不会发送速度过快超过接收方的处理能力
    *拥塞控制:当网络负载过重时能够限制发送方的发送速度  
    *不提供时间|延迟的保障
    *不提供最小宽带保障

(2)UDP
    *无连接
    *不可靠的数据传输
    *不提供
        可靠性保障
        流量控制
        拥塞控制
        延迟保障
        带宽保障


**特定网络应用及协议
(1)HTTP
(2)SMTP | POP | IMAP
(3)P2P应用


**网络应用的基础:进程间通信
(1)进程:主机上运行的程序
(2)同一主机上的进程之间是如何通信?
    进程间的通信机制
    操作系统提供
(3)不同一主机上的进程之间是如何通信?
    消息|报文交换
客户机进程:发起通信的进程
服务器进程:等待通信请求的进程

**Socket(套接字)编程(网络应用的开发)

进程之间通信利用socket发送/接收消息实现|类似于寄信|传输基础设施向进程提供API
进程的标识符:IP地址+端口号
(1)TCP
(2)UDP

18.Web应用

*构成要素:网页|网页互相链接
*网页包含多个对象
    对象:HTML文件(超文本文件)|JPEG图片|视频文件|动态脚本
    基本HTML文件:包含其它对象引用的链接
*对象的寻址
    URL:统一资源定位器
    Scheme://host:port/path

*遵循HTTP协议
HTTP:超文本传输协议:C/S结构 | 采用客户机——服务器架构(请求|接收|解析|展示web对象)| 服务器——Web Server(响应客户的请求,发送对象)
*使用TCP传输服务
    服务器在80端口等待客户请求
    浏览器发起到服务器的TCP链接(创建套接字)
    服务器接受来自浏览器的TCP链接
    浏览器(HTTP客户端)与Web服务器(HTTP服务器)交换HTTP消息
    关闭TCP链接
*无状态
    服务器不维护任何有关客户端过去发请求的信息

19.

你可能感兴趣的:(计算机网络)