| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 网络协议 -> 你必须要理解的计算机网络基础知识(精简版) -> 正文阅读 |
|
[网络协议]你必须要理解的计算机网络基础知识(精简版) |
计算机网络体系结构? ? ? ? 计算机网络本质:将一个个具有独立功能的计算机系统,通过通信设备和线路连接起来,使得它们之间能够进行数据通信和资源共享。 ???????? ?计算机网络组成:硬件、软件、协议(协议是指一系列在网络进行信息交互的规则和约定) 按网络覆盖范围对网络进行区分:广域网(WAN)? ?局域网(LAN)? ?城域网(MAN)? ? 个人网(PAN) 按使用者划分:公用网 专用网(如公司内部的网络) 按交换技术划分:电路交换? 报文交换? 分组交换 按拓扑结构划分: ?按传输技术划分:分为广播式网络(所有计算机共享公共通信信道,例如总线型网络)和点对点网络(使用了分组存储转发和路由选择机制) 衡量网络性能的指标:1、数据率(也称数据传输率或比特率):连接在网络中的主机在信道上的比特传输速率 ????????单位:b/s? ?kb/s? ?Mb/s? ?Gb/s? ?Tb/s ? ? ? ? 1kb/s = 10^3 b/s? ????????1Mb/s = 10^6?b/s ????????1Gb/s = 10^9?b/s ????????1Tb/s = 10^12?b/s???????? ? ? ? ? 这里要区分一下存储容量单位:1byte = 8bit ? ? ? ? 1KB = 2^10B = 1024B ????????1MB = 2^20B = 1024KB ????????1GB = 2^30B = 1024MB ????????1TB = 2^40B = 1024GB 2、带宽:通常表示从网络中的一点到另外一点所能通过的最高数据率(实际上由于各种因素而无法达到),单位?b/s? ?kb/s? ?Mb/s? ?Gb/s? ?Tb/s 3、吞吐量:表示单位时间内通过某个网络(例如信道、接口)的数据量,单位?b/s? ?kb/s? ?Mb/s? ?Gb/s? ?Tb/s 4、时延:发送时延(从发送分组的第一个bit到发完这个分组的最后一个bit所需的时间)? ? ? ? ? ? ? ? ? 传播时延(数据在信道中上的传播时间,只取决于电磁波的传播速度和信道的长度) ? ? ? ? ? ? ? ? 排队时延(例如有多个数据经过网络中的路由器需要排队等待的时间) ? ? ? ? ? ? ? ? 处理时延(在网络中对数据进行处理所花费的时间,例如检错、纠错) 5、时延带宽积(传播时延?带宽):表示经过一个传播时延的时间,此时该信道中的数据量 6、往返时间RTT:从发送方开始发送数据,到发送方接收到来接受方已经收到数据的响应所经历的时间 7、利用率:在信道中,有数据通过的时间/(有数据通过的时间+无数据通过的时间),一般用来衡量当前网络是否拥堵 计算机网络体系结构????????其中OSI模型是官方发布的标准模型,而TCP/IP协议模型是市面上使用最广泛的体系结构模型,它们之间的层次都有对应关系,五层协议模型则是我们需要重点掌握的。 ? ? ? ? 对于OSI模型,应用层、表示层和会话层组成资源子网(实现资源共享/数据处理),而网络层、数据链路层以及物理层共同构成通信子网(实现数据通信)。上四层提供端到端的数据传输,下三层提供点到点的数据传输。 在主机A和主机B的分层体系中,每层之间的活动元素(即控制信息和数据信息)称为本层的实体,各层之间相互独立。两台主机间相同的层次互相称为对等实体,并且遵循着该层所规定的协议,而且下层会为上层提供服务(下层为上层提供功能调用) 每层的活动实体也称为协议数据单元(PDU),是对等实体之间传输的数据单位,它由两部分组成,分别是服务数据单元(SDU)和协议控制信息(PCI),其中本层的SDU是上层的PDU。 协议(水平):为网络中的对等实体之间进行数据交换所确立的规则,分为语义(规定接收到数据的主机应作出什么操作),语法(规定传输数据的格式),同步(规定操作的执行顺序) 计算机网络体系结构是抽象的,它需要通过硬件和软件来进行实现。 五层协议体系结构各层次的任务
????????
物理层的主要任务
:解决如何在连接各种计算机的传输媒体上传输数据
比特流
,而不是指具体的传输媒体。物理层的设备主要有集线器和中继器。
????????
数据链路层的主要任务
:在一个局域网内,分组如何从一个主机发往另一个主机(期间不经过路由器),将网络层传下来的IP数据报
组装成帧
,主要是在该数据报的首尾添加首部和尾部,并在相邻结点之间的链路上传送帧,实现透明传输和差错检测。数据链路层的设备主要有网桥和交换机。
????????
网络层的主要任务
:使
IP数据报
从一个网络传输到另一个网络(中间需要经过路由器),为处于不同网络之间的主机提供通信服务,将传输层的报文段或用户数据报封装层分组进行传送,网络层传输的数据单位是IP数据报。网络层的设备主要是路由器。
????????
传输层的主要任务
:为两个主机的
进程之间
的通信提供数据传输服务。
TCP
是面向连接的、可靠的数据传输服务,传输的数据单位是
报文段
;
UDP
是无连接的,尽最大努力交付数据的服务,传输的数据单位是
用户数据报
。
????????
应用层的主要作用
:位于不同主机中的多个
应用进程之间
进行通信和协同工作,其中DNS具有解析域名的作用,可以将目的地址解析为IP地址。
????????数据传输的过成就是数据经过网络中各层次的封装和拆解并送至目的主机,然后进行拆解还原的过程。
|
|
网络协议 最新文章 |
使用Easyswoole 搭建简单的Websoket服务 |
常见的数据通信方式有哪些? |
Openssl 1024bit RSA算法---公私钥获取和处 |
HTTPS协议的密钥交换流程 |
《小白WEB安全入门》03. 漏洞篇 |
HttpRunner4.x 安装与使用 |
2021-07-04 |
手写RPC学习笔记 |
K8S高可用版本部署 |
mySQL计算IP地址范围 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
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年11日历 | -2024/11/26 4:27:22- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |