在网络通信中,封装(Encapsulation)和解封装(Decapsulation)是关键的过程,它们描述了数据在网络协议栈中从发送到接收的转换过程。
最底层的数据单元最终会变成网络可以传输的帧或数据包。
数据封装和解封装过程(宛如人生)
假设我们有一个 Web 客户端向服务器发送 HTTP 请求的过程,以下是每一层的封装示例:
"GET /index.html HTTP/1.1\r\nHost: www.example.com\r\n\r\n"
TCP Header + Application Data
IP Header + TCP Header + Application Data
Ethernet Header + IP Header + TCP Header + Application Data(payload)+ Ethernet Trailer
当服务器收到这个 HTTP 请求时,解封装过程如下:
IP Header + TCP Header + Application Data
TCP Header + Application Data
Application Data
这个过程太有意思了,宛如一个人的完整一生。从淳朴到厚重最后再回归淳朴。返璞归真。带了很多了头衔,帽子,内容,负载了TTL生命的长度,过程中会经过各种人生旅程,但是最后到达终点的时候,只是为了回归本我,中间一路的嵌套,只是为了自我保护罢了,都很不容易呐。
TCP的header中的Port指示了设备上的哪个应用。 MTU是payload最大传输单元。
Client-Server 网络
在客户端-服务器(Client-Server)网络中,网络结构分为两个主要角色:客户端和服务器。服务器是一个强大的中央计算机,它提供资源和服务,如文件存储、数据库、应用程序和网络连接。客户端是用户设备(如电脑、智能手机等),它们通过网络向服务器请求资源和服务。这种模式常用于企业环境和互联网应用中,比如网页浏览和电子邮件服务。服务器集中管理资源,提供高效的控制和安全性,但也可能成为单点故障的瓶颈 。
Peer-to-Peer 网络
在对等(Peer-to-Peer, P2P)网络中,所有节点(设备)都是平等的,既可以作为客户端,也可以作为服务器。每个节点可以直接与其他节点交换资源和服务,而无需通过中央服务器。P2P 网络通常用于文件共享、分布式计算和区块链技术。它们的优点包括高扩展性和容错性,因为网络没有单点故障。然而,P2P 网络在管理和安全性方面相对较弱,因为没有中央控制点 。
LAN,PAN,CAN,WAN,MAN,WLAN,SAN
存储区域网(Storage Area Network)是一种专门的高速网络,连接服务器和存储设备,提供集中化的数据存储和管理
Demarcation Point & Smart Jack
Hypervisor & VMs
是一种虚拟化技术的软件或固件层,允许在单个物理计算机上运行多个虚拟机(VMs)。它的主要作用是管理和分配物理计算机的资源,如处理器、内存和存储,以便多个操作系统实例可以同时运行而互相隔离。Hypervisor通常分为两种类型:Type 1(裸机或本地)Hypervisor直接在硬件上运行,而Type 2(主机或嵌套)Hypervisor则运行在宿主操作系统上。
Virtual switch(虚拟交换机)
是一种软件定义网络(SDN)中的关键组件,用于在虚拟化环境中连接虚拟机(VMs)或虚拟网络功能(VNFs)。它类似于物理网络中的网络交换机,但在虚拟化环境中运行,并通过软件管理数据包的转发和网络流量的控制。
虚拟交换机允许虚拟机之间或虚拟机与物理网络之间的通信,同时提供网络隔离、流量控制、安全策略的实施等功能。它可以通过各种技术实现,如基于软件的交换机实现(如Linux Bridge)、硬件辅助虚拟交换机(如基于SR-IOV的交换机)或者专用的虚拟交换机软件(如VMware的vSwitch或Microsoft的Hyper-V虚拟交换机)。
vNIC
指的是虚拟网络接口卡(Virtual Network Interface Card),是在虚拟化环境中用于连接虚拟机(VM)到物理网络或虚拟网络的软件实体。每个虚拟机都可以有一个或多个vNIC,它们由虚拟化平台管理,并在虚拟机内部视为物理网络接口卡的仿真。vNIC通过虚拟交换机或虚拟网络设备与物理网络或其他虚拟机通信,允许虚拟机访问网络资源和与其他计算资源交互。
vNIC扮演了连接虚拟机与网络之间的桥梁角色,负责将虚拟机中产生的网络流量转发到正确的目的地,同时也负责接收来自网络的数据包并传输到虚拟机。
在AWS(亚马逊云计算服务)中,ENI(Elastic Network Interface,弹性网络接口)可以被视为一种vNIC(虚拟网络接口卡)。ENI允许将虚拟机(EC2实例)连接到一个或多个虚拟私有云(VPC)的子网中,并配置其网络属性,如IP地址、路由表和安全组等。每个EC2实例可以附加一个或多个ENI,每个ENI都可以有自己的MAC地址、IP地址和安全组规则,从而提供了灵活的网络配置选项。
因此,尽管ENI在AWS中具有更广泛的功能(如弹性IP绑定、多IP地址支持等),但从功能角度来看,它们可以被看作是AWS环境中虚拟机(EC2实例)的虚拟网络接口卡。
按照交换技术:
现在大部分是分组交换,也就是包。
网络硬件的意义在于,对包的格式进行转换,转换的目的是让包在OSI层之间进行通行。设备包括:中继器,集线器,网桥,交换机,路由器,网关。
Networking设备是指用于构建和管理计算机网络的设备(比如上面的那些),而Networked设备是指已连接到网络并可以相互通信的各种计算设备和物联网设备。
信号能够转化为光和电主要依赖于两种技术:光电转换和电光转换
原理:光电转换是指将光信号转换为电信号的过程。它利用光电二极管(Photodiode)或光电探测器(Photodetector)等器件,这些器件能够将接收到的光信号转换为相应的电压信号。光照射到光电二极管或探测器上产生光生载流子,从而引起电流或电压的变化,这一变化可以被检测和放大,进而提取原始的光信号信息。
应用:光电转换广泛应用于光通信、光电子传感器、医学成像和光电子设备等领域,其中光通信是最常见的应用,通过光纤传输数据时使用光电转换技术将光信号转换为电信号,然后再进行处理和解码。
原理:电光转换是指将电信号转换为光信号的过程。它利用激光二极管(Laser Diode)或LED(Light Emitting Diode)等发光器件,这些器件通过电流驱动,在内部产生电子和空穴的复合,从而激发出光子(光量子)。这些光子形成的光信号在光纤或空气中传输,携带着电信号的信息。
应用:电光转换在光通信、光电显示器、激光打印机和激光雷达等领域中得到广泛应用。在光通信中,电子设备产生的电信号经过电光转换器件转换为光信号,通过光纤传输至目标地点,再通过光电转换器件将光信号转换回电信号,完成数据的传输和接收。
Copper
光纤连接器
Patch panel(补丁面板)是一种网络设备,用于在计算机网络和通信系统中管理和组织网络电缆的连接。它通常安装在机架或机柜中,并提供了一个集中的位置,用于连接局域网(LAN)中的各种设备,如计算机、打印机、路由器、交换机等,以及外部电缆,如光纤或铜缆。
Fiber distribution panel(光纤配线面板)是用于管理和组织光纤连接的设备,通常安装在数据中心、企业网络或其他需要大量光纤连接的地方。它与常见的铜缆补丁面板类似,但专门设计用于光纤系统。
Punchdown block(压线块)是一种用于电信和网络布线的设备,主要用于连接和管理铜缆(如电话线和网络电缆)。它通常用于安装在电话机房或网络设备附近,提供了一个结构化的方式来组织和连接大量的电缆。
常见的Ethernet标准包括:
特性:逻辑编址,路由选择,域名解析,错误检测,流量控制,以及对应用程序的支持
物理层 - 网络接口 - 网际协议 - 传输层协议 - 应用层协议
网络物理层比如以太网协议,网际层比如IP/ICMP/ARP/RARP协议,传输层比如TCP/UDP,应用层协议比如FTP/Telnet/SMTP/NFS/SNMP协议
频分复用(FDM):在不同的频率上传输不同的信号,如广播电视台在不同的频率上发送多个频道。
以下是一些常用的 SSH 命令示例:
ssh user@remote_host
user
登录到远程主机 remote_host
。ssh -i /path/to/private_key user@remote_host
/path/to/private_key
来登录到远程主机。ssh user@remote_host 'ls -l /path/to/directory'
ls -l /path/to/directory
命令。scp /local/file user@remote_host:/remote/directory/
/local/file
复制到远程主机的 /remote/directory/
目录。ssh -L 8080:localhost:80 user@remote_host
NTP(网络时间协议):是一种用于同步计算机时钟的协议,通过分层次的服务器与参考时间源进行时间对比和调整,确保网络中所有设备的时间一致性。
Spanning Tree Protocol (STP): Spanning Tree Protocol (STP) 是一种网络协议,旨在防止网络环路,通过自动关闭冗余链路来维持以太网拓扑的无环性,确保网络的稳定性和高效性。
Carrier Sense Multiple Access (CSMA): Carrier Sense Multiple Access (CSMA) 是一种用于控制网络设备访问共享通信媒介的方法,设备在传输前会检测媒介是否空闲,以减少碰撞和提高传输效率。
ARP(地址解析协议)是一种网络协议,用于将IP地址解析为对应的物理MAC地址,以便在本地网络中实现数据包的正确传输。
NDP(Neighbor Discovery Protocol)是一种在IPv6网络中使用的协议,用于执行邻居发现、路由器发现、地址自动配置和重定向等功能,以确保网络设备间的高效通信。
External DNS(外部DNS):用于公共互联网的DNS服务,解析公开的域名和IP地址,使得内部和外部用户能够访问互联网资源和网站。
主从服务器(Primary and Secondary DNS Servers):在DNS系统中,主服务器(Primary)是负责管理和存储原始DNS数据的主要服务器,而从服务器(Secondary)通过区传输(Zone Transfer)从主服务器复制数据,以提供冗余和负载均衡。
Three Tier(三层架构):是一种数据中心网络设计,分为接入层(Access)、汇聚层(Aggregation/Distribution)和核心层(Core),每层分别负责不同的网络功能和流量管理。
Colocation:指企业将其服务器和网络设备托管在第三方提供的数据中心中,享受共享的基础设施和环境控制,但设备仍由企业自己管理。
社区云(Community Cloud):由一组有共同需求和关注点的组织共享和使用,通常由这些组织或第三方共同管理,提供共享的计算资源。
IaC:基础设施即为代码,版本控制,基础设施设置,降低手动错误风险,Ansible,Terraform,CloudFormation
本地连接云的方式:VPN(Site2Site),Private Direct Connections(AWSDX)
路由在计算机网络中是指选择数据包传输路径的过程。它是网络通信的核心,通过不同的方式将数据从源地址发送到目标地址。以下是关于路由的各个重要方面的详细解释。
路由表(Routing Table) 是路由器用来决定数据包转发路径的数据库。每个网络设备都会维护一个路由表,包含网络路径的信息。路由表的基本组成部分包括:
以下是一个简单的路由表示例:
| Destination | Subnet Mask | Next Hop | Interface | Metric |
|-----------------|---------------|----------------|-----------|--------|
| 192.168.1.0 | 255.255.255.0 | 192.168.1.1 | eth0 | 1 |
| 10.0.0.0 | 255.0.0.0 | 10.0.0.1 | eth1 | 2 |
| 0.0.0.0 | 0.0.0.0 | 192.168.1.254 | eth0 | 0 |
路由类型
路由类型可以根据其配置和学习方式分为以下几种:
route add -net 10.0.0.0 netmask 255.0.0.0 gw 192.168.1.1
route add default gw 192.168.1.254
路由协议(Routing Protocols) 用于在网络设备之间传递路由信息,帮助设备动态学习和更新路由表。主要的路由协议分为内部网关协议(IGP)和外部网关协议(EGP)。
// RIP 示例配置
// router rip
// network 192.168.1.0
// OSPF 示例配置
// router ospf
// network 192.168.1.0 0.0.0.255 area 0
// EIGRP 示例配置
// router eigrp 1
// network 192.168.1.0 0.0.0.255
// BGP 示例配置
// router bgp 65001
// neighbor 10.1.1.1 remote-as 65002
// ACL 示例配置
// access-list 100 permit ip 192.168.1.0 0.0.0.255 any
// NAT 示例配置
// ip nat inside source list 1 interface Serial0/0 overload
// QoS 示例配置
// class-map match-all VOIP
// match ip dscp 46
// OSPF 认证示例配置
// router ospf 1
// area 0 authentication message-digest
VLAN(Virtual Local Area Network,虚拟局域网) 是一种通过逻辑划分网络的方法,使得一个物理网络分割成多个虚拟网络。每个VLAN像一个独立的局域网,能提升网络性能、增强安全性,并简化网络管理。
// 配置交换机端口为Access Port并分配到VLAN 10
Switch(config)# interface FastEthernet 0/1
Switch(config-if)# switchport mode access
Switch(config-if)# switchport access vlan 10
// 配置动态VLAN(假设使用VMPS)
Switch(config)# vlan database
Switch(vlan)# vmps server 192.168.1.100
Port tagging 是一种网络技术,用于在同一条物理网络链路上,通过在数据帧中添加标签(通常是VLAN标签),来区分和管理不同的虚拟局域网(VLAN),从而使得多种网络流量可以共存而不会相互干扰。
Port aggregation 是一种将多个网络端口组合成一个逻辑链路,以增加带宽、提高冗余性和实现负载均衡的网络技术。
Duplex 是一种通信模式,定义了数据传输的方向性,可以是单向(半双工)或双向同时(全双工),影响网络设备之间的数据交换效率。
Port mirroring 是一种网络技术,用于将一个或多个端口上的数据流量复制到另一个端口,以便进行实时监控或分析,而不会影响原始流量的传输。
Jumbo Frames 是指大于标准MTU(通常为1500字节)的以太网帧,通常用于优化网络性能,特别是在高带宽和低延迟的网络环境中,可以减少处理开销和提高传输效率。
想象一个音乐会(频段),音乐会的整个场地内有多个舞台(信道)。每个舞台在同一时间段内演奏不同的音乐。音乐会场地是频段,所有的演奏舞台都是这个频段的一部分,但每个舞台是独立的演奏空间,即信道。多个信道可以在同一频段内同时工作,但它们必须在不同的频率范围内,以避免干扰。
SSID是无线网络的唯一标识符,用于帮助设备识别和连接到特定的 Wi-Fi 网络。当你打开设备的 Wi-Fi 功能时,设备会扫描周围的无线网络,并显示这些网络的 SSID,用户可以根据 SSID 选择要连接的网络。
无线加密技术比较:
加密协议 | 简介 | 安全性 | 适用场景 |
---|---|---|---|
WEP | 早期的加密标准,易被破解 | 弱 | 不推荐 |
WPA | WEP的改进版,动态密钥 | 中 | 过渡期设备 |
WPA2 | 目前主流标准,采用AES加密 | 强 | 现代无线网络 |
WPA3 | 最新标准,更强加密和安全性 | 最强 | 未来网络 |
协议(protocol)定义了在两个或多个通信实体之间交换的报文的格式和顺序,以及报文发送和/或接收一条报文或其他事件所采取的动作。
网络中的报文大家都叫分组。是靠路由器和链路层的交换机进行传输的。
分组是一段一段的。所以交换机都是先存储后传输。存储是因为分组还没收完呢要先存起来。
网络传输中的信息传播的本质是数字信号通过有线或无线介质进行传输,使用二进制系统(0和1),数据被编码成电信号或光信号,以便在网络中传输。并通过各种协议和标准来管理和控制数据包的发送、接收和重组。整个过程依赖于一系列技术和机制来确保信息能够准确、高效地从源到达目标。
分组交换优于电路交换,分组交换按需分配链路使用,电路交换不考虑需求,而是预先分配了传输链路的使用。
ISP(Internet Service Provider)是指互联网服务提供商:全球这么大的网络的构建是很难的,所以使用者,也就是接入者为客户customer,ISP则为提供商,也就是帮你入网的人。
传输时延是路由器推出分组所需要的时间,它是分组长度和链路传输速率的函数,而与两台路由器之间的距离无关。另一方面,传播时延是一个比特从一台路由器传播到另一台路由器所需要的时间,它是两台路由器之间距离的函数,而与分组长度或链路传输速率无关。