查看原文
其他

收藏:通信网络基础知识

点击上方 "Linux就该这样学关注,星标或者置顶,第一时间送达

责编:Linux妹 | 来源:网络

上一篇:一个很酷的3D冰墩墩,太浪漫了吧!

大家好,我是Linux妹。


什么是通信网络

我们周围无时无刻不存在一张网,如电话网、电报网、电视网、计算机网络等;即使我们身体内部也存在许许多多的网络系统,如神经系统、消化系统等。最为典型的代表即计算机网络,它是计算机技术与通信技术两个领域的结合。

计算机网络的演进

60 基于主机架构的低速串行链路,X.25和IBM的SNA

计算机网络的主要特性

  • 资源共享
  • 信息传输与集中处理
  • 负载均衡与分布处理
  • 综合信息服务

局域网、城域网、广域网定义

LAN(Local Area Network)

通常指几千米以内的,可以通过某种介质互联的计算机、打印机、modem或其他设备的集合

MAN(Metropolitan Area Network)MAN覆盖范围为中等规模,介于局域网和广域网之间,通常是在一个城市内的网络连接(距离为10KM左右)WAN(Wide Area Network)分布距离远,它通过各种类型的串行连接以便在更大的地理区域内实现接入

常见网络拓扑结构


电路交换和分组交换

电路交换:基于电话网的电路交换
  • 优点:延迟小、透明传输
  • 缺点:带宽固定,网络资源利用率低,初始连接建立慢
分组交换:以分组为单位存储转发
  • 优点:多路复用,网络资源利用率高
  • 缺点:延迟大,实时性差,设备功能复杂
分组交换的单位,信元,二层帧。

计算机网络的性能标准

带宽(bandwidth)

描述在一定时间范围内能够从一个节点传送到另一个节点的数据量,通常以bps为单位,例如以太网带宽为10Mbps,快速以太网为100Mbps

延迟(delay)

描述网络上数据从一个节点传送到另一个节点所经历的时间

协议、标准

网络协议(protocol)是什么?

  • 网络协议是为了使网络中的不同设备能进行数据通信而预先制定的一套通信双方相互了解和共同遵守的格式和约定。

  • 网络协议是一系列规则和约定的规范性描述,定义了网络设备之间如何进行信息交换。

数据通信标准分为两类:事实的和法定的

  • 事实标准:未经组织团体承认但已在应用中被广泛使用和接受的就是事实标准(de facto standard)

  • 法定标准:由官方认可的团体制定的标准称为法定标准(de jure standard)

标准化组织

  • 国际标准化组织(ISO)

  • 电子电器工程师协会(IEEE)

  • 美国国家标准局(ANSI)

  • 电子工业协会(EIA / TIA)

  • 国际电信联盟(ITU)

  • INTERNET工程任务委员会(IETF)

  • 研究任务委员会IRTF    

  • 号码分配委员会IANA

OSI参考模型

OSI RM:开放系统互连参考模

OSI参考模型具有以下优点

  • 简化了相关的网络操作

  • 提供设备间的兼容性和标准接口

  • 促进标准化工作

  • 结构上可以分隔

  • 易于实现和维护

第一层到第三层成为底层(Lower Layer),又叫介质层(media ),底层负责数据在网络中的传送,网络互连设备往往位于下三层,以硬件和软件相结合的方式来实现。OSI参考模型的第五层到第七层成为高层(Upper Layer),又叫主机层(Host Layer),高层用于保障数据的正确传输,以软件方式来实现。另外,搜索公众号顶级架构师后台回复“offer”,获取一份惊喜礼包。OSI参考模型层次结构,OSI参考模型自下而上分为七层:

TCP/IP协议栈概述

TCP/IP起源于60年代末美国政府资助的一个分组交换网络研究项目,到90年代已发展成为计算机之间最常用的组网形式。TCP/IP是一个真正的开放系统,因为其协议簇的定义及其多种实现可以免费或花费很少就可以公开地得到。TCP/IP是“全球互联网”或“因特网”Internet的基础。

与OSI参考模型一样,TCP/IP对等模型也分为不同的层次,每一层负责不同的通信功能。五层对等模型是OSI和TCP/IP模型的综合。

TCP/IP协议栈

IP协议是尽力传输的网络协议,其提供的数据传送服务是不可靠的、无连接的。IP协议不关心数据包的内容,不能保证数据包是否成功到达目的地,也不关心任何关于前后数据包的状态信息。面向连接的的可靠服务由上层的TCP协议实现。所有的TCP、UDP、ICMP及IGMP等数据都最终封装在IP报文中传输。

物理层功能

物理层主要是:规定介质类型、接口类型、信令类型 ;规范在终端系统之间激活、维护和关闭物理链路的电气、机械、流程和功能等方面的要求;规范电平、数据速率、最大传输距离和物理接头等特征;看看人家那远程控制系统,那叫一个优雅(附源码)!同步串口可作为DCE 或者DTE,支持多种物理层协议:V.24/V.35/X.21 等协议,异步串口支持RS232 协议,最大速率为115.2kbit/s。G.703 E1/T1接口类型。

物理层介质和物理层设备

物理层介质:同轴电缆、双绞线、光纤、无线电波;物理层设备:中继器、集线器;

数据链路层功能

MAC Sub-layer:Media Access Control Sub-Layer 介质访问控制子层指定数据如何通过物理线路进行传输,并与物理层通信LLC Sub-layer:Logic Link Control Sub-layer逻辑链路控制子层识别协议类型并对数据进行封装通过网络进行传输

数据链路层协议

数据链路层局域网、广域网协议数据链路层设备:以太网交换机

网络层功能与设备

功能 :在不同的网络之间转发数据包设备:路由器、三层交换机网络层的任务就是要选择合适的路径并转发数据包,使数据包能够正确无误的从发送方传递到接收方。网络层的主要功能包括:
  • 编址:网络层为每个节点分配标识,这就是网络的地址(address)。地址分配也为从源到目的的路径选择提供了基础。
  • 路由选择:网络层的一个关键作用是要确定从源到目的的数据传递应该如何选择路由,网络层设备在计算路由之后,按照路由信息对数据包进行转发。执行网络层路由选择的设备成为路由器(router)。
  • 拥塞管理:如果网络同时传送过多的数据包,可能会产生拥塞,导致数据丢失或延迟,网络层也负责对网络上的拥塞进行控制。
  • 异种网络互联:通信链路和介质类型是多种多样的,每种链路都有其特殊的通信规定,网络层必须能够工作在多种多样的链路和介质类型上,以便能够跨越多个网段提供通信服务。
网络层处于传输层和数据链路层之间,他它负责向传输层提供服务,同时负责将网络地址翻译成对应的物理地址。网络层协议还能协调发送、传输及接收设备的处理能力的不平衡性,如网络层可以对数据进行分段和重组,以使得数据包的长度能够满足该链路的数据链路层协议所支持的最大数据帧长度。

网络层协议

当某一网络的主机应用程序需要发送报文到位于另一个网络的目的地时,与该主机在同一网络上的路由器的一个接口会接收到数据帧,路由器的链路层检查该帧,确定被携带的网络层数据类型,去掉链路层帧头,并将网络层数据送往相应的网络层进行处理;网络层检查报文头以决定目的地址所在网段,然后通过查找路由表以获取相应输出接口;输出接口的链路层为该报文加上链路层帧头,封装成数据帧并发送到下一跳;每一个报文的转发都要进行这一过程。在到达目的主机所在网络时,报文被封装成目地网络的链路层数据帧,发送给相应的目的主机。目的主机接收到该报文后,经过链路层、网络层的处理,去掉链路层帧头、网络层报文头后,送给相应的协议。路由器能支持多个相互独立的路由协议(例如IP RIP、OSPF、IPX RIP等),能为不同的网络协议栈(如 TCP/IP、IPX)相对应的路由协议维护各自的路由表。路由器的这种能力允许路由器能同时支持多种网络层协议,进行报文的转发。

传输层功能

最终目标是向用户(一般指应用层的进程)提供有效、可靠的服务。传输层主要定义了主机应用程序间端到端的连通性,它一般包含四项基本功能。
  • 分段上层数据
  • 建立端到端连接
  • 将数据从一端主机传送到另一端主机
  • 保证数据按序、可靠、正确传输
传输层位于OSI参考模型第四层,最终目标是向用户— 一般指应用层的进程,提供有效、可靠的服务。传输层主要定义了主机应用程序间端到端的连通性,它一般包含四项基本功能:
  1. 将应用层发往网络层的数据分段或将网络层发往应用层的数据段合并。
  2. 建立端到端的连接,主要是建立逻辑连接以传送数据流。
  1. 将数据段从一台主机发往另一台主机。在传送过程中通过计算校验和以及通过流控制的方式保证数据的正确性,流控制可以避免缓冲区溢出。
  2. 部分传输层协议保证数据传送正确性。主要是在数据传送过程中确保同一数据既不多次传送也不丢失。同时还要保证数据包的接收顺序与发送顺序一致。
传输层协议主要有TCP/IP协议栈的TCP协议和UDP协议,IPX/SPX协议栈的SPX协议等。其中,TCP协议和SPX协议为应用程序提供可靠的、面向连接的服务;UDP协议提供不可靠的、无连接的服务。

传输层主要协议对比

应用层功能

应用层的主要功能
  1. 为用户提供接口、处理特定的应用
  2. 数据加密、解密、压缩、解压缩
  1. 定义数据表示的标准

  声明:本文部分素材转载自互联网,如有侵权立即删除 。

END


往日精彩:

重磅!阿里发布全新操作系统,能不能干翻 CentOS 呢!

Tabby:一款超高颜值的终端工具(开源免费,全平台支持)

看看人家那远程控制系统,那叫一个优雅(附源码)!

适合程序员的5款Linux发行版

Linux 中 find 命令的 35 个实际例子

Linux 环境变量配置的 6 种方法,建议收藏!

5 张图带你搞懂容器网络的工作原理

代码对比工具,我就用这几个

这篇 Linux 总结的真棒!

一万个很酷的红包封面(定制版)

喜欢本文的朋友们,欢迎长按二维码,关注订阅号Linux就该这样学


收看更多精彩内容

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存