网络编程懒人入门(十五):外行也能读懂的网络硬件设备功能原理速成

简介: 本文是《网络编程懒人入门》系列文章的第15篇,本篇将继续以通俗易懂的文字,帮你无脑理解各种基础网络硬件设备的功能原理。

本文由黄工首先发表于strongerHuang公众号,原题“网络硬件的发展史”,本文有修订。

1、引言

本文是《网络编程懒人入门》系列文章的第15篇,本篇将继续以通俗易懂的文字,帮你无脑理解各种基础网络硬件设备的功能原理。

本文不罗列复杂、全面的计算机网络理论,目的是让阅读者脱离以往计算机理论专著的枯燥内容,在寓教于乐的语言文字中轻松快速的掌握这些知识,适合入门者,计网大佬和网络编程老油条们请略过。

学习交流:

- 移动端IM开发入门文章:《新手入门一篇就够:从零开发移动端IM

- 开源IM框架源码:https://github.com/JackJiang2011/MobileIMSDK备用地址点此

(本文已同步发布于:http://www.52im.net/thread-4188-1-1.html

2、如何连接个人计算机(PC)?

在发明网络之前,个人计算机之间是独立工作的,没有网卡、网线或协议栈,主要使用磁盘、CD 和其他东西来传输数据。

后来,网线出现了。

最小的网络单元由网线、网卡和协议栈组成:

  • 1)网线起着物理介质的作用,以传输比特流 / 电信号;
  • 2)网卡将转换数据(例如:它将计算机存储的数据转换为网线的比特流 / 电信号);
  • 3)协议栈作为一种通信语言,可以在通信过程中实现数据分析、地址寻址和流控制。

3、网线不够长怎么办?

如果终端之间的距离太远,一旦超过网线物理传输距离的上限,数据就会开始丢失。

中继器是物理层的设备,可以中继和放大信息以实现设备的远距离传输。

 

4、中继器端口不足怎么办?

中继器通常只有两个接口,这意味着如果网络中有三个以上的终端主机,则无法实现多个主机之间的直接数据通信。

集线器是一种多接口中继器,也是一个物理层设备。它可以中继和放大信息,从任何接口接收的数据都将被发送到所有其他接口。

5、如何有选择性的发送数据?

有人把网桥比喻成一个 “聪明” 的中继器。因为中继器只是对所接收的信号进行放大,然后直接发送到另一个端口连接的电缆上,主要用于扩展网络的物理连接范围。

而网桥除了可以扩展网络的物理连接范围外,还可以对 MAC 地址进行分区,隔离不同物理网段之间的碰撞(也就是隔离 “冲突域”)。

6、速度不够快怎么办?

交换机可以记录该终端主机的 MAC 地址,并生成一个 MAC 表。MAC 表相当于一个 “map”,交换机根据 MAC 表在主机之间转发数据流。

交换机基于网桥进行扩展和升级。

与网桥相比,交换机具有以下优点:

  • 1)接口数量更密集(每个主机位于一个独立的冲突域中,带宽利用率大大提高);
  • 2)使用专用的 ASIC 硬件芯片进行高速转发;
  • 3)VLAN 隔离(不仅可以隔离冲突域,还可以通过 VLAN 隔离广播域)。

交换机是一种局域网设备,通常用于局域网,不能实现远程广域网通信。

7、距离还不够怎么办?

世界上第一台路由器是由斯坦福大学的 Leonard Bossack 和 Santi Lerner 这对教师夫妇为斯坦福大学校园网络 (SUNet) 和思科公司发明的。

▲ 思科公司创始人Leonard Bossack 和 Santi Lerner 夫妇

路由器是一种基于 IP 寻址的网络层设备,利用路由表来实现数据转发。路由器主要用于连接不同的局域网以实现广播域隔离,也可以用于远程通信,如广域网连接。

诸如 IP 协议之类的逻辑寻址机制是实现不同类型局域网连接的关键。不同局域网的主机只要具有逻辑地址(IP 地址)和合理的逻辑地址规划(网段规划),它们就可以通信。

路由器的诞生是互联网爆炸的主要原因,跨媒介、跨地域的网络集成已成为现实。

8、接线太麻烦怎么办?

无线 AP可以被视为具有无线功能的交换机 / 路由器。随着无线城市和移动办公的发展趋势,无线产品在网络中所占的比例正在增加。

根据部署方式的不同,可以分为胖 AP 和瘦 AP 解决方案。

1)在胖 AP 方案中,无线 AP 具有独立的操作系统,该操作系统可以独立调试无线热点的所有配置,类似于家用 Tp-link 产品。

2)在瘦 AP 方案中,无线 AP 仅具有无线信号传输功能,所有命令调试都集中在后台的 AC / 无线控制器上。

小型无线网络(家庭、小型企业)可以使用胖 AP 解决,而大型无线网络(无线城市、无线园区网络)则需要使用瘦 AP(AC + AP)解决。

9、不够安全怎么办?

防火墙是一种用于限制网络安全访问的网络安全产品,通常用于 Internet 的边缘,以防止外部黑客的攻击。

根据防火墙的技术特点,可以分为包过滤、应用代理和状态检测防火墙。根据产品形式,可以分为软件防火墙和硬件防火墙。

防火墙可视为具有安全功能的路由器。早期的防火墙在路由器的基础上增加了访问控制功能,因此在路由器上可以看到许多防火墙的功能,例如路由协议、访问控制列表、地址转换技术等。

防火墙和路由器可以同时存在于网络中。例如,防火墙可以放置在路由器之前或之后。在这种情况下,路由器侧重于地址转换和路由策略,而防火墙侧重于安全隔离等。

在防火墙的基础上,扩展出了 Web 防火墙、安全网关和入侵检测 / 入侵防御等安全产品。

10、网络拥塞怎么办?

网络中的流量控制设备主要分为:

  • 1)上网行为管理;
  • 2)负载均衡器 / 应用交付;
  • 3)链路优化;
  • ... ...

上网行为管理产品主要关注细粒度的区分和流量控制。

负载平衡 / 应用程序交付侧重于流量的负载平衡(根据流量特征、应用程序、地址等进行区分,然后分配到不同的链接和服务器)。

链接优化主要用于广域网等低速链路的边界,以使链路利用率最大化。

问题来了:组成一个网络需要多少种设备?

11、家庭 SOHO 网络

这是一个典型的家庭网络,它通过无线路由器提供 WiFi 热点访问,并提供路由器连接到外部网络。

12、小型企业网络

小型企业网络使用二层架构、单核拓扑,需要路由器、交换机和服务器。

13、园区网

最常见的园区网架构,如大中型企业网络 / 校园网络,采用接入汇聚核三层架构和双核组网。

根据网络需求,分为:

  • 1)用户区;
  • 2)内部服务区;
  • 3)外部服务区;
  • 4)管理区;
  • 5)Internet 区;
  • ... ...

它们通过核心交换机和防火墙连接并隔离。

互联网使用多出口连接,通过路由器实现拨号和 NAT,通过流量控制设备实现负载均衡 / 上网行为管理,通过防火墙实现安全隔离。

14、数据中心网络

上图是典型的大型第二层数据中心网络 / IDC 设计。

主要分为:

  • 1)租户区(服务集群);
  • 2)Internet 区;
  • 3)安全管理区域。

租户区:采用设备虚拟化和链路虚拟化技术,提高设备处理能力和链路承载能力,并将负载均衡器放置在服务器区域中,以合理有效的方式将流量分配给固定服务器。

Internet 出口区域:使用路由器执行 BGP 和地址反转,使用 IPS / anti-DDoS 设备进行大流量泛洪攻击,使用流量控制执行出口负载,并使用防火墙进行安全隔离。

安全管理区:通过防火墙安全访问,通过审计、日志、入侵检测、网络管理等产品对整个网络进行管理。

15、系列文章

本文是系列文章中的第15篇,本系列文章的大纲如下:

[1] 网络编程懒人入门(一):快速理解网络通信协议(上篇)

[2] 网络编程懒人入门(二):快速理解网络通信协议(下篇)

[3] 网络编程懒人入门(三):快速理解TCP协议一篇就够

[4] 网络编程懒人入门(四):快速理解TCP和UDP的差异

[5] 网络编程懒人入门(五):快速理解为什么说UDP有时比TCP更有优势

[6] 网络编程懒人入门(六):史上最通俗的集线器、交换机、路由器功能原理入门

[7] 网络编程懒人入门(七):深入浅出,全面理解HTTP协议

[8] 网络编程懒人入门(八):手把手教你写基于TCP的Socket长连接

[9] 网络编程懒人入门(九):通俗讲解,有了IP地址,为何还要用MAC地址?

[10] 网络编程懒人入门(十):一泡尿的时间,快速读懂QUIC协议

[11] 网络编程懒人入门(十一):一文读懂什么是IPv6

[12] 网络编程懒人入门(十二):快速读懂Http/3协议,一篇就够!

[13] 网络编程懒人入门(十三):一泡尿的时间,快速搞懂TCP和UDP的区别

[14] 网络编程懒人入门(十四):到底什么是Socket?一文即懂!

[15] 网络编程懒人入门(十五):外行也能读懂的网络硬件设备功能原理速成(* 本文)

16、参考资料

[1] 快速理解网络通信协议(上篇)

[2] 快速理解网络通信协议(下篇)

[3] 假如你来设计网络,会怎么做?

[4] 史上最通俗的集线器、交换机、路由器功能原理入门

[5] 面视必备,史上最通俗计算机网络分层详解

[6] 技术往事:改变世界的TCP/IP协议(珍贵多图、手机慎点)

[7] P2P技术详解(一):NAT详解——详细原理、P2P简介

[8] 通俗讲解,有了IP地址,为何还要用MAC地址?

(本文已同步发布于:http://www.52im.net/thread-4188-1-1.html

目录
相关文章
|
2天前
|
机器学习/深度学习 算法 TensorFlow
深度学习基础:神经网络原理与构建
**摘要:** 本文介绍了深度学习中的神经网络基础,包括神经元模型、前向传播和反向传播。通过TensorFlow的Keras API,展示了如何构建并训练一个简单的神经网络,以对鸢尾花数据集进行分类。从数据预处理到模型构建、训练和评估,文章详细阐述了深度学习的基本流程,为读者提供了一个深度学习入门的起点。虽然深度学习领域广阔,涉及更多复杂技术和网络结构,但本文为后续学习奠定了基础。
21 5
|
2天前
|
存储 分布式计算 固态存储
Hadoop性能优化硬件和网络优化
【6月更文挑战第7天】
11 3
|
7天前
|
缓存
计算机网络——数据链路层-可靠传输的实现机制:选择重传协议SR(介绍、工作原理、窗口尺寸、题目练习)
计算机网络——数据链路层-可靠传输的实现机制:选择重传协议SR(介绍、工作原理、窗口尺寸、题目练习)
10 0
|
7天前
|
网络架构
计算机网络——计算机网络体系结构(2/4)-分层的必要性(五层协议原理体系结构)
计算机网络——计算机网络体系结构(2/4)-分层的必要性(五层协议原理体系结构)
8 0
|
7天前
|
网络协议 网络架构
计算机网络——计算机网络体系结构(1/4)-常见的计算机网络体系结构(OSI体系、TCP/IP体系、原理体系五层协议)
计算机网络——计算机网络体系结构(1/4)-常见的计算机网络体系结构(OSI体系、TCP/IP体系、原理体系五层协议)
13 0
|
9天前
|
缓存 网络协议 Linux
玩转网络调试利器:深入剖析ip命令的强大功能
玩转网络调试利器:深入剖析ip命令的强大功能
10 2
|
9天前
|
网络协议 前端开发 Java
网络原理 - HTTP / HTTPS(4)——构造http请求
网络原理 - HTTP / HTTPS(4)——构造http请求
13 1
|
9天前
|
JSON 缓存 前端开发
网络原理 - HTTP / HTTPS(3)——http响应
网络原理 - HTTP / HTTPS(3)——http响应
10 0
|
24天前
|
消息中间件 Java Linux
2024年最全BATJ真题突击:Java基础+JVM+分布式高并发+网络编程+Linux(1),2024年最新意外的惊喜
2024年最全BATJ真题突击:Java基础+JVM+分布式高并发+网络编程+Linux(1),2024年最新意外的惊喜
|
6天前
|
网络协议 算法 Linux
【嵌入式软件工程师面经】Linux网络编程Socket
【嵌入式软件工程师面经】Linux网络编程Socket
22 1