计算机网络篇 | 走进计算机网络-CSDN博客

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

在这里插入图片描述

✅作者简介大家好我是Leo热爱Java后端开发者一个想要与大家共同进步的男人
个人主页Leo的博客
当前专栏 计算机网络
✨特色专栏 MySQL学习
本文内容计算机网络篇 | 走进计算机网络
️个人小站 个人博客欢迎大家访问
个人知识库 Leo知识库欢迎大家访问

学习参考

课件资料及视频课程学习B站/MOOC计算机网络微课堂(湖科大 高军老师)

提示本篇内容为计算机网络第1章全章笔记适合入门学习以及后期复习建议收藏。

1.前言

大家好我是Leo计算机网络是Java网络编程的基础近期学习Java网络编程跟NIO相关内容遇到了一些网络的一些相关知识点我感觉到有点模棱两可所以还是把大学没学完的计算机网络知识重新捡起来学一遍也希望这些笔记能帮助到大家。好了话不多说让我们开始吧。

2.计算机网络的作用

  • 计算机网络已由一种通信基础设施发展成为一种重要的信息服务基础设施
  • 计算机网络已经像水电煤气这些基础设施一样成为我们生活中不可或缺的一部分

2.1我国互联网的发展状况

中国互联网络信息中心CNNIC

image-20201006160618748

image-20201006160645887

image-20201006160715764

2.2计算机网络在信息时代的作用

在信息时代计算机网络发挥着至关重要的作用它对社会、经济和个人的影响非常深远。以下是计算机网络在信息时代中的一些重要作用

  1. 全球连接 计算机网络使得全球范围内的人们能够实现即时通信和远程协作。通过互联网人们可以随时随地与世界各地的人进行交流、共享信息和合作工作。这种全球连接的能力极大地促进了全球化和跨国交流。
  2. 信息传递和共享 计算机网络为信息的传递和共享提供了高效、快速和安全的平台。人们可以通过电子邮件、即时消息、社交媒体和在线协作工具等方式发送和接收信息。无论是个人、组织还是政府都可以通过计算机网络获得所需的信息并将自己的信息传播给更广泛的受众。
  3. 电子商务 计算机网络为电子商务提供了基础设施和平台。人们可以通过互联网购物、进行在线支付促进了电子商务的迅速发展。电子商务不仅改变了商业模式也为消费者提供了更多的选择和便利。
  4. 在线娱乐和文化 计算机网络使得在线娱乐和文化活动变得更加丰富多样。人们可以通过流媒体服务观看电影、电视节目和音乐通过社交媒体分享生活和兴趣通过在线游戏进行虚拟交互和娱乐活动。
  5. 教育和学习 计算机网络为教育提供了巨大的机会和资源。学生可以通过网络获取在线课程、教育资源和学术研究资料。远程教育和在线学习使得教育变得更加灵活和普惠使得知识和教育机会不再受限于地理位置和时间限制。
  6. 科学研究和创新 计算机网络为科学研究和创新提供了强大的支持。科学家可以通过网络与全球同行合作共享数据、研究成果和技术资源。同时计算机网络也为开发人员和创业者提供了平台他们可以通过互联网将创新的产品和服务引入市场。

总的来说计算机网络在信息时代中扮演着关键的角色它连接了世界各地的人们促进了信息传递和共享推动了电子商务、教育、科学研究和创新的发展。计算机网络的发展也带来了许多挑战如网络安全和隐私保护等问题需要不断的技术创新和政策法规的完善来解决。

3.因特网概述

3.1什么是因特网

**因特网(Internet)**是全球最大的计算机网络由各种互联的计算机网络组成。它是一个开放的、去中心化的网络结构通过使用标准的互联网协议TCP/IP协议来实现数据的传输和通信。

因特网最初是由美国国防部在上世纪60年代末发起建立的目的是为了满足军事和科研领域之间的远程通信需求。随着技术的发展和普及因特网逐渐向公众开放并成为全球范围内连接数十亿设备和用户的基础设施。

因特网采用分组交换的通信方式将数据分割成小的数据包(packet)通过**互联网协议(IP)**进行路由传送。每个数据包都包含了源地址和目标地址的信息这样可以确保数据能够在网络中找到正确的路径传输。

因特网的核心技术是TCP/IP协议其中**TCP(Transmission Control Protocol)**负责数据的可靠传输**IP(Internet Protocol)**负责数据包的寻址和路由。这两个协议的组合使得因特网能够实现高效、灵活、安全的数据传输。

除了传输数据外因特网还提供了许多其他的服务和应用如电子邮件万维网(World Wide Web)即时通信文件传输等。这些服务和应用都是基于因特网的基础设施构建的为用户提供了丰富多样的功能和资源。

总的来说因特网是一个全球范围内互联的计算机网络通过TCP/IP协议实现数据的传输和通信。它以其开放性、去中心化和高度灵活性而成为信息时代最重要的基础设施之一。

3.2网络、互联网和因特网

网络网络Network由若干**结点Node和连接这些结点的链路Link**组成。

image-20201006163406232

**互连网(互联网)**多个网络通过路由器互连起来这样就构成了一个覆盖范围更大的网络即互连网互联网。因此互联网又称为网络的网络(Imetwork of Networks)

image-20201006163857236

因特网 因特网(Internet)是世界上最大的互连网络用户数以亿计互连的网络数以百万计。

image-20201006164114523

internet与Internet的区别

  • internet(互联网或互连网)是一个通用名词它泛指多个计算机网络互连而成的网络。在这些网络之间的通信协议可以是任意的。
  • Internet因特网则是一个专用名词它指当前全球最大的、开放的、由众多网络互连而成的特定计算机网络它采用TCP/IP协议族作为通信的规则其前身是美国的ARPANET。

任意把几个计算机网络互连起来不管采用什么协议并能够相互通信这样构成的是一个互连网(internet) 而不是互联网(Internet)。

image-20201010233227407

3.3因特网发展的三个阶段

image-20201006164655173

因特网服务提供者ISP(Internet Service Provider)

image-20201006165117756

普通用户是如何接入到因特网的呢

通过ISP接入因特网

ISP可以从因特网管理机构申请到成块的IP地址同时拥有通信线路以及路由器等联网设备。任何机构和个人只需缴纳费用就可从ISP的得到所需要的IP地址

因为因特网上的主机都必须有IP地址才能进行通信这样就可以通过该ISP接入到因特网

中国的三大ISP中国电信中国联通和中国移动

image-20201006165738879

基于ISP的三层结构的因特网

image-20201006170140504

一旦某个用户能够接入到因特网那么他也可以成为一个ISP所需要做的就是购买一些如调制解调器或路由器这样的设备让其他用户可以和他相连。

3.4因特网的标准化工作

  • 因特网的标准化工作对因特网的发展起到了非常重要的作用。
  • 因特网在指定其标准上的一个很大的特点是面向公众。
    • 因特网所有的RFC(Request For Comments)技术文档都可从因特网上免费下载
    • 任何人都可以随时用电子邮件发表对某个文档的意见或建议。
  • 因特网协会ISOC是一个国际性组织它负责对因特网进行全面管理以及在世界范围内促进其发展和使用。
    • 因特网体系结构委员会IAB负责管理因特网有关协议的开发
    • 因特网工程部IETF负责研究中短期工程问题主要针对协议的开发和标准化
    • 因特网研究部IRTF从事理论方面的研究和开发一些需要长期考虑的问题。
image-20201006170959060
  • 制订因特网的正式标准要经过一下4个阶段

    1、因特网草案在这个阶段还不是RFC文档

    2、建议标准从这个阶段开始就成为RFC文档

    3、草案标准

    4、因特网标准

3.5因特网的组成

  • 边缘部分

    由所有连接在因特网上的主机组成台式电脑大型服务器笔记本电脑平板智能手机等。这部分是用户直接使用的用来进行通信传送数据、音频或视频和资源共享

  • 核心部分

    大量网络和连接这些网络的路由器组成。这部分是为边缘部分提供服务的提供连通性和交换。

image-20201006180725282

路由器是一种专用计算机但我们不称它为主机路由器是实现分组交换的关键构建其任务是转发收到的分组这是网络核心最重要的部分。

处在互联网边缘的部分就是连接在互联网上的所有的主机。这些主机又称为端系统 (end system)

端系统在功能上可能有很大的差别

  1. 小的端系统可以是一台普通个人电脑具有上网功能的智能手机甚至是一个很小的网络摄像头。

  2. 大的端系统则可以是一台非常昂贵的大型计算机。

  3. 端系统的拥有者可以是个人也可以是单位如学校、企业、政府机关等当然也可以是某个ISP。

3.6补充知识

端系统之间通信的含义

主机A主机B 进行通信实际上是指运行在主机 A 上的某个程序和运行在主机 B 上的另一个程序进行通信即主机 A 的某个进程和主机 B 上的另一个进程进行通信”。简称为计算机之间通信

端系统之间的通信方式通常可划分为两大类

image-20201010234145371

客户-服务器方式

  • 客户 (client) 和服务器 (server) 都是指通信中所涉及的两个应用进程。
  • 客户 - 服务器方式所描述的是进程之间服务和被服务的关系。
  • 客户是服务的请求方服务器是服务的提供方。

服务请求方和服务提供方都要使用网络核心部分所提供的服务。

对等连接方式

  • 对等连接 (peer-to-peer简写为 P2P ) 是指两个主机在通信时并不区分哪一个是服务请求方还是服务提供方。
  • 只要两个主机都运行了对等连接软件 ( P2P 软件) 它们就可以进行平等的、对等连接通信
  • 双方都可以下载对方已经存储在硬盘中的共享文档。

4.三种交换方式

计算机网络的三种常见交换方式是电路交换、报文交换和分组交换。

  1. 电路交换电路交换是一种建立起端到端通信路径电路的交换方式。在通信开始之前两个通信节点之间的整条路径会被预留下来直到通信结束才会释放。在此期间所有数据都沿着这条预留的电路进行传输。这种交换方式适用于需要保证通信质量和实时性的场景如电话通信。然而由于资源占用比较高电路交换在大规模数据通信中并不常用。
  2. 报文交换报文交换是以报文为单位进行交换的方式。发送方将整个报文发送给网络网络将其存储并转发到目标节点。在报文交换中报文在网络中的传输是独立的可以按照任意路径传输并且不需要预先建立连接。报文交换适用于短消息和小数据量的通信但由于每次传输都需要整个报文因此可能会有较高的传输延迟。
  3. 分组交换分组交换是最常用的交换方式也是互联网所采用的方式。在分组交换中数据被划分为更小的数据包分组每个分组独立传输。发送方将数据划分为分组并加上目标地址等控制信息然后发送到网络中。网络根据目标地址将各个分组独立地转发到目标节点最后在目标节点将分组重新组装成完整的数据。分组交换具有较高的灵活性和资源利用率因为分组可以按需传输并且多个分组可以同时在网络中传输。然而分组交换可能会引入一定的延迟和拥塞问题。

这三种交换方式各有优缺点选择使用哪种方式取决于具体的通信需求和网络条件。在实际应用中一般采用分组交换来构建大规模的计算机网络以满足各种类型的通信需求。

4.1电路交换(Circuit Switching)

image-20201006182240000

传统两两相连的方式当电话数量很多时电话线也很多就很不方便

所以要使得每一部电话能够很方便地和另一部电话进行通信就应该使用一个中间设备将这些电话连接起来这个中间设备就是电话交换机

image-20201006182634249
  • 电话交换机接通电话线的方式称为电路交换

  • 从通信资源的分配角度来看交换Switching就是按照某种方式动态地分配传输线路的资源

  • 电路交换的三个步骤

    1、建立连接分配通信资源

    2、通话一直占用通信资源

    3、释放连接归还通信资源

image-20201006183020317

当使用电路交换来传送计算机数据时其线路的传输效率往往很低。

这是因为计算机数据是突发式地出现在传输线路上的。

所以计算机通常采用的是分组交换而不是线路交换

4.2分组交换(Packet Switching)

image-20201006183312843

通常我们把表示该消息的整块数据成为一个报文

在发送报文之前先把较长的报文划分成一个个更小的等长数据段在每一个数据段前面。加上一些由必要的控制信息组成的首部后就构成一个分组也可简称为“包”相应地首部也可称为“包头”。

首部包含了分组的目的地址

分组从源主机到目的主机可走不同的路径。

发送方

  • 构造分组
  • 发送分组

路由器

  • 缓存分组
  • 转发分组
  • 简称为分组转发

在路由器中的输入和输出端口之间没有直接连线。

路由器处理分组的过程是

  1. 把收到的分组先放入缓存暂时存储
  2. 查找转发表找出到某个目的地址应从哪个端口转发
  3. 把分组送到适当的端口转发出去。

接收方

  • 接收分组
  • 还原报文

4.3报文交换(Message Switching)

报文交换中的交换结点也采用存储转发方式但报文交换对报文的大小没有限制这就要求交换结点需要较大的缓存空间。报文交换主要用于早期的电报通信网现在较少使用通常被较先进的分组交换方式所取代

4.4三种交换方式的对比

假设ABCD是分组传输路径所要经过的4个结点交换机纵坐标为时间

image-20201006184451671

分析

电路交换

  • 通信之前首先要建立连接连接建立好之后就可以使用已建立好的连接进行数据传送数据传送后需释放连接以归还之前建立连接所占用的通信线路资源。

  • 一旦建立连接中间的各结点交换机就是直通形式的比特流可以直达终点

报文交换

  • 可以随时发送报文而不需要事先建立连接整个报文先传送到相邻结点交换机全部存储下来后进行查表转发转发到下一个结点交换机。
  • 整个报文需要在各结点交换机上进行存储转发由于不限制报文大小因此需要各结点交换机都具有较大的缓存空间。

分组交换

  • 可以随时发送分组而不需要事先建立连接。构成原始报文的一个个分组依次在各结点交换机上存储转发。各结点交换机在发送分组的同时还缓存接收到的分组。
  • 构成原始报文的一个个分组在各结点交换机上进行存储转发相比报文交换减少了转发时延还可以避免过长的报文长时间占用链路同时也有利于进行差错控制。

image-20201006185601460

5.计算机网络的分类和定义

5.1定义

计算机网络的定义包含以下几个关键要素

  1. 互联的计算机和网络设备计算机网络由一组计算机和网络设备(如路由器、交换机、调制解调器等)组成这些设备通过物理链路或无线连接相互通信和交换信息。
  2. 数据和资源的共享计算机网络允许连接在网络中的计算机之间共享数据和资源。这包括文件共享、打印机共享、数据库访问、远程登录等。通过网络共享用户可以方便地获取和利用其他计算机上的信息和服务。
  3. 通信和协作计算机网络提供了各种通信手段使连接在网络中的计算机可以相互发送和接收数据。通过网络用户可以进行电子邮件、即时通信、视频会议等各种形式的远程通信和协作。
  4. 系统性计算机网络是一个有组织的系统它涉及到物理层面的硬件设备、数据传输的协议、网络管理和安全等方面的技术和实践。
  • 计算机网络的精确定义并未统一。
  • 计算机网络的最简单的定义是一些接的、自治的计算机的集合
    • 互连是指计算机之间可以通过有线或无线的方式进行数据通信。
    • 自治是指独立的计算机他有自己的硬件和软件可以单独运行使用。
    • 集合是指至少需要两台计算机。
  • 计算机网络的较好的定义是计算机网络主要是由一些通用的可编程的硬件一定包含有中央处理机CPU互连而成的而这些硬件并非专门用来实现某一特定目的例如传送数据或视频信号。这些可编程的硬件能够用来传送多种不同类型的数据并能支持广泛的和日益增长的应用
    • 计算机网络所连接的硬件并不限于一般的计算机而是包括了智能手机等智能硬件。
    • 计算机网络并非专门用来传送数据而是能够支持很多种的应用包括今后可能出现的各种应用。

5.2分类

按交换技术分类

  • 电路交换网络
  • 报文交换网络
  • 分组交换网络

按使用者分类

  • 公用网
  • 专用网

按传输介质分类

  • 有线网络
  • 无线网络

计算机网络可以分为有线网络和无线网络两种。有线网络使用电缆等物理介质进行数据传输包括网线、光纤等无线网络则使用无线电波进行数据传输包括WiFi、蓝牙、移动通信等。

按照使用协议分类

计算机网络可以分为不同的层次和协议例如OSI参考模型或TCP/IP协议族。其中OSI参考模型将网络通信划分为七个层次分别是物理层、数据链路层、网络层、传输层、会话层、表示层和应用层而TCP/IP协议族则由四个层次构成分别是网络接口层、网络层、传输层和应用层。

按覆盖范围分类

  • 广域网WAN(Wide Area Network)

作用范围通常为几十到几千公里因而有时也称为远程网(long haul network)。广域网是互联网的核心部分其任务是通过长距离例如跨越不同的国家运送主机所发送的数据。

  • 城域网MAN

作用范围一般是一个城市可跨越几个街区甚至整个城市

  • 局域网LAN

一般用微型计算机或工作站通过高速通信线路相连**(速率通常在 10 Mbit/s 以上)**但地理上范围较小(1 km 左右)

  • 个域网PAN

就是在个人工作的地方把个人使用的电子设备用无线技术连接起来的网络。

按拓扑结构分类

  • 总线型网络

image-20231031202103301

  • 星型网络

image-20231031202118503

  • 环形网络

image-20231031202125478

  • 网状型网络

image-20231031202140692

6.计算机网络的性能指标

6.1速率

速率 即数据率或称数据传输率或比特率

image-20201007012419698

image-20201007012439769

需要注意的是比特率和数据传输速率之间存在一定的关系。由于在数据传输过程中还需要传输控制信息、纠错码、协议头等额外的开销因此实际的数据传输速率会低于比特率。

计算机网络的速率受到多种因素的影响包括网络的带宽、信道质量、网络拓扑结构、网络设备性能等。更高的速率通常代表着更大的网络带宽和更快的数据传输能力可以支持更高效的数据交换和通信。

总而言之计算机网络的速率是指在单位时间内传输的比特数或数据量通过比特率或数据传输速率来衡量。速率的高低直接影响着网络的传输性能和通信效率。

6.2带宽

在计算机网络中带宽(Bandwidth)指的是网络链路传输数据的能力通常以每秒传输的比特数(bps)来衡量。它表示在单位时间内可以通过网络链路传输的最大数据量。

带宽是一个重要的性能指标影响着网络传输速度和数据吞吐量。较高的带宽意味着网络可以更快地传输数据提供更高的数据吞吐能力。

带宽的大小受到多个因素的影响包括网络链路的物理特性、传输介质的类型和性能、设备的限制等。在有限的带宽资源下不同设备和应用程序之间需要共享带宽因此带宽的分配和管理也是网络设计和运维中需要考虑的问题。

带宽通常用以下单位来表示

  1. bps(比特每秒) 表示每秒传输的比特数是最基本的带宽单位。
  2. Kbps(千比特每秒) 表示每秒传输的千比特数等于10^3 bps。
  3. Mbps(兆比特每秒) 表示每秒传输的兆比特数等于10^6 bps。
  4. Gbps(千兆比特每秒) 表示每秒传输的千兆比特数等于10^9 bps。
  5. Tbps(太比特每秒) 表示每秒传输的太比特数等于10^12 bps。

需要注意的是实际网络中的带宽可能受到各种因素的限制和约束如网络拓扑、设备性能、网络拥塞等。因此网络的实际传输速度可能会低于链路的理论带宽。在网络设计和应用开发中需要合理评估和利用可用的带宽资源以满足用户需求并提供良好的网络体验。

image-20201007012943970

6.3吞吐量

image-20201007013119621

带宽1 Gb/s的以太网代表其额定速率是1 Gb/s这个数值也是该以太网的吞吐量的绝对上限值。因此对于带宽1 Gb/s的以太网可能实际吞吐量只有 700 Mb/s甚至更低。

注意吞吐量还可以用每秒传送的字节数或帧数表示

6.4时延

时延时指数据一个报文或分组甚至比特从网络或链路的一端传送到另一端所需的时间。

网络时延由几部分组成

  • 发送时延

主机或路由器发送数据帧所需要的时间也就是从发送数据帧的第一个比特算起到该帧的最后一个比特发送完毕所需的时间。

  • 传播时延

电磁波在信道中传播一定的距离需要花费的时间。

  • 处理时延

主机或路由器在收到分组时要花费一定时间进行处理

  • 排队时延

分组在进过网络传输时要经过许多路由器。但分组在进入路由器后要先在输入队列中排队等待处理。

有时会把排队时延看成处理时延 一部分

总时延 = 发送时延 + 传播时延 + 处理时延 处理时延 + 排队时延

image-20201007014139333

image-20201007015401505

当处理时延忽略不计时发送时延 和 传播时延谁占主导要具体情况具体分析

6.5时延带宽积

时延带宽积 = 传播时延 * 带宽

image-20201007115317347

6.6往返时间

互联网上的信息不仅仅单方向传输而是双向交互的。因此我们有时很需要知道双向交互一次所需的时间

image-20201007115647631

6.7利用率

利用率有信道利用率网络利用率两种。

image-20201012164544306

6.8丢包率

image-20201007132900210

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

更新中。。。。。。

8.文献参考

  • https://zh.wikipedia.org/zh-hans/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C
  • https://www.runoob.com/w3cnote/summary-of-network.html
  • https://lfool.gitbook.io/computer-network/di-yi-zhang-wang-luo-ji-chu-zhi-shi
  • https://www.bilibili.com/video/BV1c4411d7jb/?p=7&spm_id_from=pageDriver&vd_source=cea816a08805c218ac4390ae9b61ae31

9.总结

以上便是本文的全部内容本人才疏学浅文章有什么错误的地方欢迎大佬们批评指正我是Leo一个在互联网行业的小白立志成为更好的自己。

如果你想了解更多关于Leo可以关注公众号-程序员Leo后面文章会首先同步至公众号。

文末推荐与福利

爆火全网的原创提示词设计框架BROKE带你5步掌握向人工智能提问的艺术从小白变身ChatGPT应用专家将AI转化为生产工具重塑你的工作流

《ChatGPT时代系列》免费包邮送出2本

爆火全网的原创提示词设计框架BROKE带你5步掌握向人工智能提问的艺术。

image-20231110164527654

内容简介

本书是一本面向所有人的提示工程工具书旨在帮助你掌握并有效利用以ChatGPT为代表的AI工具。学习完本书后你将能够自如地将ChatGPT运用在生活和专业领域中成为ChatGPT进阶玩家。

本书共分为9章内容涵盖三个层次介绍与解读、入门学习、进阶提升。第12章深入介绍与剖析了ChatGPT与提示工程并从多个学科的角度探讨了提示工程学科。第35章演示了ChatGPT的实际运用教你如何使用ChatGPT解决自然语言处理问题并为你提供了一套可操作、可重复的提示设计框架让你能够熟练驾驭ChatGPT。第69章讲解了来自学术界的提示工程方法以及如何围绕ChatGPT进行创新此外为希望ChatGPT进行应用开发的读者提供了实用的参考资料并介绍了除ChatGPT之外的其他选择。

本书聚焦ChatGPT的实际应用可操作可重复轻松易读却不失深度。无论你是对ChatGPT及类似工具充满好奇还是期待将其转化为生产力本书都值得一读。此外本书还可作为相关培训机构的教材。

购买链接

京东购买链接京东
当当购买链接当当

活动规则

关注我的博客关注我的博客所有新鲜的博客文章和活动信息都不会错过。
添加博主wx添加Leocisyam,如果添加不了,请私信博主。
参与方式关注公众号程序员Leo或者文末扫码关注回复抽奖即可参与抽奖。
公布结果2023年11月15日晚我会亲自抽取2️⃣名幸运读者并在微信私信通知请大家注意查收哈。

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6