IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> 【计算机网络】1_基础概念 -> 正文阅读

[网络协议]【计算机网络】1_基础概念

0 概述

互联网核心部分由路由器及网络组成。
网络核心部分向网络边缘部分的大量主机提供连通性
网络核心部分的重要组件是路由器
路由器是实现分组交换的关键构件,其作用是转发收到的报文

1 交换技术

为理解分组交换,首先介绍电路交换。

1.1 电路交换

对于N台电话,如果使用两两相连形式互联,则需要N(N-1)/2对电线(上/下行方向)。当用户数量增加到一定程度后,线材/安装成本极高。
因此,交换机诞生了。

从通信资源的分配角度,交换(switching)是按照某种方式动态地分配传输线路的资源。

“建立连接(占用通信资源)” -> “通话(持续占用通信资源)” -> “释放连接(归还通信资源)”
上述流程即电路交换

特点:使用期间独占,线路传输效率较低。

1.2 分组交换

采用存储转发技术。

对于一个完整的报文,首先将其划分为几个等长数据段,并分别添加header(包含必要的控制信息)构成分组(packet)进行传送。

packet是互联网中传送的数据单元。

header中包含目的地址,源地址等重要控制信息。

分组交换实质是采用了在数据通信的过程中断续(或动态)分配传输带宽的策略。
适用于传送突发式的计算机,提高了通信线路的利用率。

优点手段
高效在分组传输的过程中动态分配传输带宽,对通信线路式逐段占用的
灵活为每一个分组独立地选择最合适的转发路由
迅速以分组为传送单位, 可以不先建立连接就能向其他主机发送分组
可靠保证可靠性的网络协议;分布式多路由的分组交换网,使网络有很好的生存性
问题说明
1分组在各路由器存储转发时需要排队,造成一定的时延
2无法确保通信时端到端所需的带宽
3控制信息会增加开销

1.3 报文交换

也是基于存储转发原理。

1.4 对比

交换方式特点
电路交换整个报文的比特流连续地从源点直达终点,类似在一个管道中传送
报文交换整个报文先传送到相邻结点,全部存储下来后查找转发表,转发到下一个结点
分组交换单个分组(报文的一部分)传送到相邻结点,存储下来后查找转发表,转发到下一个结点

若传送数据量较大,且传送时间远大于连接建立时间,则电路交换的传输速率较快。
报文交换和分组交换不需要预先分配传输带宽,在传送突发数据时可提高整个网络的信道利用率。
分组长度通常远小于整个报文长度,因此具有小的时延,以及更好的灵活性。

2 网络

2.1 链路

链路特点:
互联网核心部分的路由器一般由高速链路相连接;
网络边缘部分的主机接入到核心部分则以相对低速链路相连接。

位于网络边缘的主机(为用户进行信息处理)和网络核心部分的路由器(转发分组)都是计算机,但作用不同。

2.2 转发过程

router接受到一个分组
暂时存储
检查首部
查找转发表
按照首部目的地址找到合适的接口进行转发
分组传递给下一个路由器或目的主机

2.3 分类

范围分类:
Wide Area Network, WAN
Metropolitan Area Network, MAN
Local Area Network, LAN
Persional Area Network, PAN

使用者分类:
Public Network
Private Network

接入网(Access Network):将用户接入到互联网的网络,一类特殊的计算机网络
接入网本身既不属于互联网的核心部分,也不属于互联网的边缘部分。其范围是从某个用户端系统到互联网中的第一个路由器。

2.4 性能指标

1 速率
2 带宽
3 吞吐量
4 时延
5 时延带宽积
6 往返时间RTT
7 利用率

2.5 非性能特征

1 费用
2 质量
3 标准化
4 可靠性
5 可扩展性和可升级性
6 易于管理和维护

3 体系结构

法律上的国际标准 OSI
事实上的国际标准 TCP/IP

3.1 协议与划分层次

计算机网络交换数据的规则:明确规定所交换数据的格式以及相关的同步问题。

为进行网络中的数据交换而建立的规则、标准或约定称为网络协议。

网络协议包含要素有:
<1> 语法, 即数据与控制信息的结构或格式;
<2> 语义,即需要发出何种控制信息,完成何种动作以及作出何种响应;
<3> 同步,即事件实现顺序的详细说明。

网络协议是计算机网络中不可缺少的组成部分。

协议的形式:
<1> 便于人阅读和理解的文字描述;
<2> 使用计算机能够理解的程序代码。

分层:
<1> 各层之间是独立的;
<2> 灵活性好;
<3> 结构上可分隔开;
<4> 易于实现和维护;
<5> 能促进标准化工作;

各层完成的功能主要有:
<1> 差错控制
<2> 流量控制
<3> 分段和重装
<4> 复用和分用
<5> 连接建立和释放

体系结构:计算机网络的各层及其协议的集合。

体系结构是抽象的,而实现是具体的,是真正在运行的计算机硬件和软件。

3.2 常见体系结构

3.2.1 OSI

Open Systems Interconnection Reference Model, OSI/RM, 开放系统互联基本参考模型
7层协议体系结构

7_应用层
6_表示层
5_会话层
4_运输层
3_网络层
2_数据链路层
1_物理层

3.2.2 TCP/IP

4层协议体系结构

4_应用层
3_运输层
2_网际层
1_网络接口层

与OSI模型相比,应用层对应OSI的应用层+表示层+会话层, 网络接口层对应OSI的数据链路层+物理层。

3.2.3 五层协议

5_应用层
4_运输层
3_网络层
2_数据链路层
1_物理层

应用层等价于OSI的应用层+表示层+会话层,其他等同于OSI模型

3.2.4 各层功能介绍

3.2.4.1 应用层

通过应用进程间的交互来完成特定网络应用。
该层协议定义的是应用进程间通信和交互的规则。(此处的进程指主机中正在运行的程序)

应用层协议:
域名协议DNS
支持万维网应用的HTTP协议
支持电子邮件的SMTP协议

应用层交互的数据单元:报文

3.2.4.2 运输层

负责向两台主机中进程之间的通信提供通用的数据传输服务

应用进程通过该服务传送应用层报文

运输层有复用分用的功能。

复用:多个应用层进程可同时使用下面运输层的服务。
分用:运输层将收到的信息分别交付上面应用层中的相应进程。

使用的协议:

传输控制协议(Transmission Control Protocol, TCP):提供面向连接的、可靠的数据传输服务,其数据传输的单位是报文段(Segment)
用户数据报协议(User Datagram Protocol, UDP):提供无连接的、尽最大努力的数据传输服务(不保证数据传输的可靠性),其数据传输的单位是用户数据报

3.2.4.3 网络层

负责为分组交换网上的不同主机提供通信服务;
选择合适的路由,使源主机运输层所传下来的分组,能够通过网络中的路由器找到目标主机。

网络层将运输层产生的报文段或用户数据报封装成分组进行传送。

TCP/IP体系使用IP协议,因此分组也叫IP数据报

互联网是由大量的异构网络通过路由器相互连接起来的。

互联网使用的网络层协议是无连接的网际协议IP和许多路由选择协议,因此互联网的网络层也称为网际层或IP层。

3.2.4.4 数据链路层

在两个相邻结点之间传送数据时,数据链路层将网络层交下来的IP数据包组装成帧,在两个相邻结点间的链路上传送帧。每一帧包括数据和必要的控制信息(如同步信息、地址信息、差错控制等)。

3.2.4.5 物理层

传输数据的单位是比特。

解释比特代表的意思

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2021-10-11 17:52:51  更:2021-10-11 17:53:41 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年6日历 -2024/6/29 18:30:36-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码