目录

  • 一、网络发展史
    • 1.1 独立模式
    • 1.2 网络互联模式
  • 二、网络分类
    • 2.1 局域网
    • 2.2 广域网
  • 三、协议
    • 3.1 协议的概念
    • 3.2 协议的必要性
    • 3.3 协议分层
      • 3.3.1 通过对话理解协议分层
      • 3.3.2 协议分层的好处
    • 3.4 OSI七层模型
    • 3.5 TCP/IP模型
    • 3.6 封装和分用

一、网络发展史

从独立模式到网络互联模式。

1.1 独立模式

独立模式:计算机之间相互独立;

1.2 网络互联模式

随着计算机的不断发展,人们不在局限于单机模式,而是将一个个计算机连接在一起,形成一个计算机网络。连接多台计算机可以实现信息共享,同时还能在两台位置较远的机器之间即使传递信息。
网络互连:将多台计算机连接在一起,完成数据共享。
数据共享本质是网络数据传输,即计算机之间通过网络来传输数据,也称为网络通信。
根据网络互连的规模不同,可以划分为局域网广域网。

二、网络分类

计算机网络可根据其规模分为WAN(Wide Area NetWork,广域网)和LAN(Local Area NetWork,局域网)。

2.1 局域网

局域网:指一个楼层、一栋楼或一个校园等相对较小的区域内的网络。
局域网内的主机之间能方便的进行网络通信,又称为内网;局域网和局域网之间在没有连接的情况下,是无法通信的。

一栋大楼或校园中有限的、狭小的、区域内网络

局域网组建网络的几种方式如下:

(1)基于网线直连

当主机数目很少的时候,我们可以基于网线实现将所有主机相连组建成局域网,但当主机数量较多的时候,通过网线的方式组建局域网就不太现实了,于是就有了后面的集线器、交换机和路由器
(2)基于集线器组建

(3)基于交换机组建

(4)基于交换机和路由器组建

【集线器和交换机的区别】:

  • 交换机工作在数据链路层,通过MAC地址转发数据;

  • 集线器工作在物理层,通过广播的形式转发数据。

  • 集线器内部采用了总线型拓扑,在同一时间内必须是单向的,只能维持在半双工模式下;

  • 交换机上的两个端口之间的通道是相互独立的,可以实现全双工通信

  • 由于集线器的功能有限,组建局域网的时候现在很少使用了

【交换机和路由器】

交换机:是将多个机器连接到一个局域网中,工作在数据链路层
路由器:连接了多个局域网,工作在网络层
在交换机和路由器,反复的连接下,就可以把很多的设备都连接到一起,使他们之间可以直接进行通信

但是实际上,当下交换机和路由器的功能都越来越强大,彼此之间有很多功能的重叠,例如三层交换机(带有路由器的功能),路由器,也有桥接模式,也相当于交换机一样,甚至有些设备也有可能有一些传输层和应用层的功能。

2.2 广域网

通过路由器,将多个局域网连接起来,在物理上组成很大范围的网络,就形成了广域网。广域网内部的局域网都属于其子网

跨接相距较远的计算机或LAN网络

如果有北、中、南等分公司,甚至海外分公司,把这些分公司以专线方式连接起来,即称为“广域网”。
如果属于全球化的公共型广域网,则称为互联网(又称公网,外网),属于广域网的一个子集。
有时在不严格的环境下说的广域网,其实是指互联网。
所谓 “局域网” 和 “广域网” 只是一个相对的概念。比如,我们有 “天朝特色” 的广域网,也可以看做一个比较大的局域网。

三、协议

3.1 协议的概念

协议,网络协议的简称,网络协议是网络通信(即网络数据传输)经过的所有网络设备都必须共同遵从的一组约定、规则。如怎么样建立连接、怎么样互相识别等。只有遵守这个约定,计算机之间才能相互通信交流。通常由三要素组成:

  1. 语法:数据与控制信息的结构或格式
    类似打电话时,双方要使用同样的语言:普通话
  2. 语义:即需要发出何种控制信息,完成何种动作以及做出何种响应 语义主要用来说明通信双方应当怎么做。
    用于协调与差错处理的控制信息。 类似打电话时,说话的内容。一方道:你瞅啥?另一方就得有对应的响应:瞅你咋的!
  3. 时序:即事件实现顺序的详细说明
    时序定义了何时进行通信,先讲什么,后讲什么,讲话的速度等。比如是采用同步传输还是 异步传输。 女生和男生的通话,总是由男生主动发起通话,而总是在男生恋恋不舍的时候,由女生要求 结束通话。

3.2 协议的必要性

简单来说,协议就是计算机与计算机之间通过网络实现通信事先达成的一种"约定"。这种"约定"使那些有不同厂商的设备、不同CPU以及不同的操作系统组成的计算机之间,只要能够遵循相同的协议就能实现通信反之,如果所使用的协议不同,就无法进行通信。就好比两个人使用不同国家的语言是无法进行交流的。
同时,协议分很多种,每一种协议都明确的界定了它的行为规范

协议所起到的作用就好比见网友,彼此协商胸口插支玫瑰花见面,这就是一种提前的约定,也可以称之为协议


计算机之间的传输媒介是光信号和电信号。通过 “频率” 和 “强弱” 来表示 0 和 1 这样的信息。要想传递各种不同的信息,就需要约定好双方的数据格式

  • 计算机生产厂商有很多;
  • 计算机操作系统,也有很多;
  • 计算机网络硬件设备,还是有很多;
  • 如何让这些不同厂商之间生产的计算机能够相互顺畅的通信? 就需要有人站出来,约定一个共同的标准,大家都来遵守,这就是网络协议;

3.3 协议分层

网络通信是一个非常复杂的过程,有很多的问题和细节需要处理,如果只使用一个协议去解决所有的问题,就会造成这个协议很复杂。
协议拆分:把一个协议拆分成多个协议,这也类似于我们平时写代码,如果一个类写的太复杂,就把拆成多个类,一个方法写的太复杂就把他分成多个方法

在协议拆分的过程中,程序员就发现,有些拆出来的协议其实解决的问题都差不多,因此程序员就把这些协议分成了很多类,也可以称为协议分层,类似于我们开发中将功能相似的类放在同一包下。

3.3.1 通过对话理解协议分层

关于协议分层,我们以A和C的对话举例简单说明,此处只考虑了语言层和通信设备层这两个分层的情况
A和C正通过电话(通信设备)用汉语(语言协议)进行聊天。

  • 当我们该变通信设备层的时候,用无线电代替电话机之后,由于通信设备层改用了无线电,就需要学会使用无线电的方法,而语言层仍使用汉语协议,因此可以向往常一样进行聊天
  • 当我们将语言层改为英语的时候,由于电话记本身不受限于使用者使用的语言,因此仍可以实现通话
    这都是协议分层的优点

3.3.2 协议分层的好处

  • 下层协议给上层提供服务,上层调用下层协议。(封装)
    实现上层协议的人,不必考虑下层协议的细节
  • 解耦合,可以把同一层的协议替换成其他协议,对于其他层协议来说,基本是无感知的,因此可以构造一个扩展性和灵活性都较强的系统。
  • 通过分层能够细分功能,更易于单独实现每个分层的意义,并界定各个分层的具体责任和义务

3.4 OSI七层模型

OSI:即Open System Interconnection,开放系统互连

  • OSI 七层网络模型是一个逻辑上的定义和规范:把网络从逻辑上分为了7层。
  • OSI 七层模型是一种框架性的设计方法,其最主要的功能使就是帮助不同类型的主机实现数据传输;
  • 它的最大优点是将服务、接口和协议这三个概念明确地区分开来,概念清楚,理论也比较完整。通过七个层次化的结构模型使不同的系统不同的网络之间实现可靠的通讯。

OSI七层模型的划分以及各个分层的作用:

OSI 七层模型既复杂又不实用:所以 OSI 七层模型没有落地、实现。
实际组建网络时,只是以 OSI 七层模型设计中的部分分层,也即是以下 TCP/IP 五层(或四层)模型来实现。

3.5 TCP/IP模型

TCP/IP分层模型与OSI参考模型

【说明】:

观察上面的TCP/IP模型我们发现,只有应用层是程序员写代码处理的,下面的四层都是操作系统和硬件处理好了的,因此网络编程的主要工作,也就是写应用层的代码,来处理应用层的协议数据

  • 应用层:负责应用程序间沟通,如简单电子邮件传输(SMTP)、文件传输协议(FTP)、网络远程访问协议(Telnet)等。我们的网络编程主要就是针对应用层。
  • 传输层:负责两台主机之间的数据传输。如传输控制协议 (TCP),能够确保数据可靠的从源主机发送到目标主机。
  • 网络层:负责地址管理和路由选择。例如在IP协议中,通过IP地址来标识一台主机,并通过路由表的方式规划出两台主机之间的数据传输的线路(路由)。路由器(Router)工作在网路层。
  • 数据链路层:负责设备之间的数据帧的传送和识别。例如网卡设备的驱动、帧同步(就是说从网线上检测到什么信号算作新帧的开始)、冲突检测(如果检测到冲突就自动重发)、数据差错校验等工作。有以太网、令牌环网,无线LAN等标准。交换机(Switch)工作在数据链路层。
  • 物理层:负责光/电信号的传递方式。比如现在以太网通用的网线(双绞 线)、早期以太网采用的同轴电缆(现在主要用于有线电视)、光纤,现在的wifi无线网使用电磁波等都属于物理层的概念。物理层的能力决定了最大传输速率、传输距离、抗干扰性等。集线器(Hub)工作在物理层。

【举例理解各层的作用】:

将我在tb上买了一台电脑,卖家给我发货到我收到快递使用电脑这个过程类比于通信,下面是各层所起到的作用

  • 物理层:运快递的高速公路
  • 数据链路层:两个集散点之间的传输
  • 网络层: 物流公司规划的路径
  • 传输层:卖家发货时,只需考虑发件人和收件人
  • 应用层:我收到电脑后具体用来做什么

【举例区分网络层和数据链路层】:

假设我从广州放假回家的路线有很多条:
(1)广州->北京->哈尔滨->齐齐哈尔->甘南
(2)广州->哈尔被->大庆->齐齐哈尔->甘南

网络层的作用是路径规划,也就是选择一条路线,假设选择的路线是(1)
数据链路层的作用是,两个相邻节点之间的传输(也就是两个相邻节点之间乘坐什么交通工具)
广州->北京 (飞机)
北京->哈尔滨(高铁)
哈尔滨->齐齐哈尔 (大巴)
齐齐哈尔-> 甘南 (轿车)

3.6 封装和分用

  • 不同的协议层对数据包有不同的称谓,在传输层叫做段(segment),在网络层叫做数据报(datagram),在链路层叫做帧(frame)。
  • 应用层数据通过协议栈发到网络上时,每层协议都要加上一个数据首部(header),称为封装(Encapsulation)。
  • 首部信息中包含了一些类似于首部有多长,载荷(payload)有多长,上层协议是什么等信息。
  • 数据封装成帧后发到传输介质上,到达目的主机后每层协议再剥掉相应的首部,根据首部中的 “上层协议字段” 将数据交给对应的上层协议处理

【举例理解封装和分用】
当我使用QQ向好友发送一个hello的信息


上述的封装分用,不仅仅出现在主机上,也出现在传输过程中,包括路由器和交换机上。

计算机网络(一) | 初识网络相关推荐

  1. 计算机网络之初识网络

    ⭐️前面的话⭐️ 本篇文章将介绍计算机网络部分的知识,这是关于计算机网络的第一篇文章,主要介绍什么是网络以及网络协议是如何分层的,数据是如何传输的.

  2. 精通Python网络爬虫:核心技术、框架与项目实战.1.1 初识网络爬虫

    摘要 网络爬虫也叫做网络机器人,可以代替人们自动地在互联网中进行数据信息的采集与整理.在大数据时代,信息的采集是一项重要的工作,如果单纯靠人力进行信息采集,不仅低效繁琐,搜集的成本也会提高.此时,我们 ...

  3. 《Python爬虫开发与项目实战》——第3章 初识网络爬虫 3.1 网络爬虫概述

    本节书摘来自华章计算机<Python爬虫开发与项目实战>一书中的第3章,第3.1节,作者:范传辉著,更多章节内容可以访问云栖社区"华章计算机"公众号查看 第3章 初识网 ...

  4. 计算机网络层次结构特点,网络层次结构

    网络层次结构 一.网络分层的原因 1.网络通信面临的一些问题: 硬件故障.网络拥塞.包延迟.包丢失.数据损坏.数据重复.数据乱序 2.假设:将所有工作分成面向应用与面向传输两部分 ---------- ...

  5. 计算机网络设备安装调试,网络设备安装与调试

    图书简介 本书是北京市教育委员会实施的"北京市中等职业学校以工作过程为导向课程改革实验项目"计算机网络技术专业系列教材之一,依据"北京市中等职业学校以工作过程为导向课程改 ...

  6. 高校间计算机专业交流研讨会,第七届全国高校计算机网络教学暨网络工程专业建设研讨会...

    由中国计算机学会主办,中国计算机学会互联网专业委员会.计算机教育专业委员会.网络与数据通信专业委员会和浙江省计算机应用与教育学会协办,杭州电子科技大学承办的"第七届全国高校计算机网络教学暨网 ...

  7. 通信网与计算机网络的区别,计算机网络和计算机通信网络之间的本质区别是什么?...

    原标题:计算机网络和计算机通信网络之间的本质区别是什么? 1.用途不同 计算机网络在网络操作系统,网络管理软件及网络通信协议的管理和协调下,实现资源共享和信息传递.计算机通信在计算机与计算机之间或计算 ...

  8. 【计算机网络系列】网络概述与体系结构

    概述 网络概论 定义 计算机-计算机网络 以资源共享为目标,在网络协议的支持下,用户使用远方计算机系统的资源就好像使用本地计算机系统一样方便,几乎觉察不到地理位置的差别. 计算机网络定义(供参考):将 ...

  9. 电子商务计算机网络安全技术教案,网络安全技术教案.doc

    <网络安全技术>教案 2011-2012第2学期 适用班级:2010级计算机网络技术专业 编写:徐英武 第 1~2 课时 周次 1 日期 2012 授课班级 2010级计算机网络技术 课题 ...

最新文章

  1. ZooKeeper与Eureka对比
  2. JS原生封装动画函数
  3. Bootstrap 高亮某个菜单项
  4. 优秀的设计UI界面按钮素材,让点击率飙升
  5. git与svn, tfs等源代码管理器的协同
  6. linux box 黑屏,在linux16.04上安装virturalbox的时候出现问题
  7. LR11录制手机/pad App脚本多种方法介绍(Mobile App补丁包)
  8. 单片微型计算机原理及应用第三版课后答案,单片微型计算机原理及应用 - 课后习题答案 - 山东理工...
  9. 《私募股权基金投资基础知识》---第二章
  10. 内存卡没有Android,安卓内存卡读不出来怎么办
  11. 用HTML编写的一个小调查表
  12. 手机投屏电视显示服务器连接失败,投屏失败怎么办?两种投屏到电视的方法教学...
  13. hibernate中的dialect解释
  14. RGB565颜色表,附RGB888转RGB565工具,RGB24转RGB565工具
  15. 40、查询选修“张三”老师所授课程的学生中成绩最高的学生姓名及其成绩(重要top)
  16. Jstack查询线程堆栈
  17. vue-router 判断是否登陆,未登录跳转登陆页面
  18. maven私服下载jar包失败的问题记载
  19. 加速度jsudo:电子元器件商城网站功能测评——华强电子
  20. HR 必须了解的绩效评估方式

热门文章

  1. 某教程学习笔记(一):15、编辑器漏洞
  2. 平均增长率增长率的平均平均值的增长率 的对比
  3. 异常错误-Table configuration with catalog null, schema null, and table “表”did not resolve to any
  4. git bad signature,签名坏了 问题已处理,我只用了第一步就解决了
  5. oppo装鸿蒙系统,针对华为鸿蒙系统,小米、OPPO相继表态,魅族的态度截然相反...
  6. Fluent中的离散格式选择
  7. 服装连锁店管理系统设计与实现
  8. 【源码解析】Encoding in Style: a StyleGAN Encoder for Image-to-Image Translation
  9. 恢复视力的辅助训练方法
  10. 【SpringBoot-3】切面AOP实现权限校验:实例演示与注解全解