【NetWork】-- 网络原理
2019-07-18 21:00:25 by冲冲
1. 网络拓扑
把网络中的计算机和通信设备抽象为一个点,把传输介质抽象为一条线,由点和线组成的几何图形就是计算机网络的拓扑结构(Network Topology)。
网络拓扑结构的本质是,用传输介质互连各种设备的物理布局。
(1)术语
① 节点。一个“节点”是指一个网络端口。节点划分为“转节点”和“访问节点”两类。“转节点”的作用是支持网络的连接,它通过通信线路转接和传递信息,如交换机、网关、路由器、防火墙设备的各个网络端口等。“访问节点”是信息交换的源点和目标点,通常是用户计算机上的网卡接口。如我们在设计一个网络系统时,通常所说的共有××个节点,其实就是在网络中有多个要配置IP地址的网络端口。
② 结点。一个“结点”是指一台网络设备。
③ 链路。“链路”是两个节点间的线路。
④ 通路。“通路”从发出信息的节点到接收信息的节点之间的一串节点和链路的组合。“通路”与“链路”的区别在于一条“通路”中可能包括多条“链路”。
(2)分类
类型 | 优点 | 缺点 | 结构 |
总线拓扑 |
易于扩展 线路利用率高 布线简单费用低 |
总线是全网的瓶颈 可靠性不高 维护困难 传输效率低 |
|
环型拓扑 |
令牌控制,没有线路竞争 实时性强 传输控制容易 |
维护困难 可靠性不高 |
|
星型拓扑 |
易于扩展 可靠性高 方便管理 传输效率高 |
线路利用率低 中心节点是全网的瓶颈 |
|
网状拓扑 |
可靠性高 易于扩充 组网灵活 |
费用高 结构复杂 维护困难 |
|
树型拓扑 |
易于扩展 成本低 管理较方便 故障隔离较容易 |
根节点是全网的瓶颈 | |
蜂窝拓扑 | |||
混合拓扑 |
易于拓展 安装方便 故障诊断和隔离较为方便 |
建设成本比较高 中心节点是全网的瓶颈 |
2. OSI七层模型
OSI(Open System Interconnect),开放式系统互联。 通常称为OSI参考模型,它是ISO(国际标准化组织)组织在1985年研究创建的网络互连模型,用于统一网络规范。
类型 | 作用 | 类比 |
---|---|---|
应用层 | 为应用提供网络跟身份验证 | 创建业务文件 |
表示层 | 确保接收可读 | 转译和加密文件 |
会话层 | 建立、管理应用程序之间的对话 | 标注文件的投递地址 |
传输层 | 数据传输,使用TCP、UDP协议 | 投递文件 |
网络层 | 使用IP识别、网关 | 标注投递路线的各个中转站IP |
数据链路层 | 使用MAC地址,交换机、VALN | 拆解文件,以帧单位分组投递 |
物理层 | 定义规范、标准各种网线设备接口 | 投递所使用到的硬件工具 |
OSI通信特点:对等通信。源端OSI模型的每一层,与目的端的对等层进行通信,能确保数据分组从源端传送到目的端。每一层都使用自己本层的协议进行通信。
3. TCP/IP五层模型
类型 | 作用 |
---|---|
应用层 | 为应用提供网络跟身份验证 |
传输层 | 数据传输,使用TCP、UDP协议 |
网络层 | 使用IP识别、网关 |
数据链路层 | 使用MAC地址,交换机、VALN |
物理层 | 定义规范、标准各种网线设备接口 |
注:
1、TCP/IP模型的应用层 相等于是 OSI模型中应用层、表示层、会话层 的三层功能。
2、数据链路层与物理层又合称网络访问层。
3、在每一层都工作着不同的设备。
4、在每一层实现的协议各不同,即每一层的服务不同.。
4. IP地址分类
(1)概念
① MAC地址:物理地址(48位),每台机器出厂时规定的唯一地址。如果根据物理地址来判断某台主机,数据将十分庞大且不利于管理。
② IP地址:逻辑地址 (32位), IP 地址给每个连接在因特网上的主机(或路由器)分配一个在全世界范围是唯一的 32 位的标识符。IP地址可以由用户根据规定进行更改和设置。
(2)格式
每一类IP地址都由两个固定长度的字段组成,IP地址通常用点分十进制的方式来表示。
① 网络号 net-id:它标志主机(或路由器)所连接到的网络。
② 主机号 host-id:它标志该主机(或路由器)。
注:
1、网络号的前位是类别位,分别是0、10、110。凭借类别号能判断网络类别。
2、32位的总长度,由于A、B、C 三类网络号的长度不同,导致ABC 类地址的主机号字段的字节数分别为3、2、1(一个字节8位)。
私有IP范围:
类 |
私有IP地址范围 |
A |
10.0.0.0~10.255.255.255 |
B |
172.16.0.0~172.31.255.255 |
C |
192.168.0.0~192.168.255.255 |
公有IP范围:
类 |
公有IP地址范围 |
A |
1.0.0.0~9.255.255.255和11.0.0.0~127.255.255.255 |
B |
128.0.0.0~172.15.255.255和172.32.0.0~191.255.255.255 |
C |
192.0.0.0~192.167.255.255和192.169.0.0~223.255.255.255 |
27.0.0.0~127.255.255.255为环回地址
IP地址的ABC三段,由子网掩码区分
DHCP
DHCP技术:动态分配IP的技术,由DHCP服务器分配。
防范DHCP攻击的方法:设置唯一端口。
具体步骤:
1、客户端向DHCP服务器发送广播请求;
2、DHCP服务器广播回复客户端;
3、客户端向DHCP服务器单独发送请求;
4、DHCP服务器为客户端发送分配的IP。
DNS
DNS为域名解析系统。用户将一个域名发送至DNS服务器,由DNS服务器解析这个域名,得到相应的IP地址,发送到客户端,客户再由IP地址访问网站。
TCP
TCP协议是一种可靠地面向连接的有排序的准确的传输协议。其经过三次握手确定传输,比较可靠。
TCP/IP应用层
应用层协议主要包括如下几个:FTP、TELNET、DNS、SMTP、RIP、NFS、HTTP。
FTP(File Transfer Protocol)是文件传输协议,一般上传下载用FTP服务,数据端口是20H,控制端口是21H。
Telnet服务是用户远程登录服务,使用23H端口,使用明码传送,保密性差、简单方便。
DNS(Domain Name Service)是域名解析服务,提供域名到IP地址之间的转换。
SMTP(Simple Mail Transfer Protocol)是简单邮件传输协议,用来控制信件的发送、中转。
RIP (Router Information Protocol)是路由信息协议,用于网络设备之间交换路由信息。
NFS (Network File System)是网络文件系统,用于网络中不同主机间的文件共享。
HTTP(Hypertext Transfer Protocol)是超文本传输协议,用于实现互联网中的WWW服务。###ARP
地址解析协议,即ARP(Address Resolution Protocol),是根据IP地址获取物理地址的一个TCP/IP协议。主机发送信息时将包含目标IP地址的ARP请求广播到网络上的所有主机,并接收返回消息,以此确定目标的物理地址;收到返回消息后将该IP地址和物理地址存入本机ARP缓存中并保留一定时间,下次请求时直接查询ARP缓存以节约资源。ARP缓存中包含一个或多个表,它们用于存储IP地址及其经过解析的MAC地址。ARP命令用于查询本机ARP缓存中IP地址-->MAC地址的对应关系、添加或删除静态对应关系等。
需要注意的是,通过ARP,向目标主机发送数据包,第一个包因为寻找主机会丢失,后续包会传输成功
主机到主机的通信过程
主机A需要发送一个数据包到主机B,在整个传输流程中,源和目的IP地址是保持不变的(不考虑NAT),源和目的MAC地址是随着具体链路的变化而变化。以下分为两种情况讨论:
1、主机A和主机B不跨交换机
主机A在本机的路由表中查询匹配主机B的IP的网络号,如果能够查询到,说明主机B和主机A在同一网段(通常是在同一局域网内),则下一跳即为主机B。主机A在ARP缓存中查找主机B的MAC地址(如没有则先发送ARP广播),然后将数据包封装成帧发送至通信线路上。该帧的源MAC是主机A的MAC地址,目的MAC是主机B的MAC地址。
如果主机A和主机B是网线直连的,那么主机B直接收到主机A发来的帧。
2、主机A和主机B跨交换机
如果主机A和B是通过交换机相连的,交换机的某个端口收到主机A发来的帧,然后根据帧中的目的MAC地址在MAC地址表中查询对应的转发端口。如果找到了,直接从该端口转发出去;如果没找到,则在除了接收到数据包以外的所有端口进行转发(广播)。
参考:
https://www.cnblogs.com/qishui/p/5428938.html
https://blog.csdn.net/OUOll/article/details/88303448
【NetWork】-- 网络原理的更多相关文章
- linux基础-第十四单元 Linux网络原理及基础设置
第十四单元 Linux网络原理及基础设置 三种网卡模式图 使用ifconfig命令来维护网络 ifconfig命令的功能 ifconfig命令的用法举例 使用ifup和ifdown命令启动和停止网卡 ...
- 【centos6 , 7】 网络原理、网络配置
第一部分:网络原理: 一.网络编址 (主要使用IP编址) 1.ip编址是一个双层编址方案,一个ip地址标识一个主机(或一个网卡接口) 2.现在应用最为广泛的是IPv4编址,已经开始逐渐向IPv6编址转 ...
- kubernetes pod infra container网络原理
刚开始接触kubernetes时,对kubelet的--pod-infra-container-image参数非常不能理解,不理解为什么我的业务应用需要依赖一个第三方的容器: 上文入门级kuberne ...
- vCenter 部件关系简介 & 网络原理
目录 目录 主机和集群 vCenter Datacenter Cluster Host Virtual Machine Folder Resource Pool Template 数据存储 Datas ...
- core java 10~12(多线程 & I/O & Network网络编程)
MODULE 10 Threads 多线程-------------------------------- 进程: 计算机在运行过程中的任务单元,CPU在一个时间点上只能执行一个进程,但在一个时间段上 ...
- 【BZOJ】【1834】【ZJOI2010】Network 网络扩容
网络流/费用流 这题……我一开始sb了. 第一问简单的最大流…… 第二问是要建费用流的图的……但是是在第一问的最大流跑完以后的残量网络上建,而不是重建…… 我们令残量网络上原有的弧的费用全部为0(因为 ...
- bzoj1834: [ZJOI2010]network 网络扩容
努力看了很久样例一直过不了...然后各种输出中间过程啊巴拉巴拉弄了1h,没办法了...然后突然想到啊原来的边可以用啊为什么不用...于是A了...感人肺腑 #include<cstdio> ...
- BZOJ 1834: [ZJOI2010]network 网络扩容(最大流+最小费用最大流)
第一问直接跑最大流.然后将所有边再加一次,费用为扩容费用,容量为k,再从一个超级源点连一条容量为k,费用为0的边到原源点,从原汇点连一条同样的边到超级汇点,然 后跑最小费用最大流就OK了. ---- ...
- ZOJ 1542 POJ 1861 Network 网络 最小生成树,求最长边,Kruskal算法
题目连接:problemId=542" target="_blank">ZOJ 1542 POJ 1861 Network 网络 Network Time Limi ...
- BZOJ_1834_[ZJOI2010]network 网络扩容_费用流
BZOJ_1834_[ZJOI2010]network 网络扩容_费用流 题意: 给定一张有向图,每条边都有一个容量C和一个扩容费用W.这里扩容费用是指将容量扩大1所需的费用. 求: 1.在不扩容的 ...
随机推荐
- RabbitMQ的消息可靠性(五)
一.可靠性问题分析 消息的可靠性投递是使用消息中间件不可避免的问题,不管是使用哪种MQ都存在这种问题,接下来要说的就是在RabbitMQ中如何解决可靠性问题:在前面 在前面说过消息的传递过程中有三个对 ...
- Miller Rabin 详解 && 小清新数学题题解
在做这道题之前,我们首先来尝试签到题. 签到题 我们定义一个函数:\(qiandao(x)\) 为小于等于 x 的数中与 x 不互质的数的个数.要求 \(\sum\limits _{i=l}^r qi ...
- 用C++实现的数独解题程序 SudokuSolver 2.1 及实例分析
SudokuSolver 2.1 程序实现 在 2.0 版的基础上,2.1 版在输出信息上做了一些改进,并增加了 runtil <steps> 命令,方便做实例分析. CQuizDeale ...
- oo第三单元学习总结
OO第三单元小结 一.JML语言理论基础及工具链梳理 在本单元我们学习了JML语言的一些基础知识,能够让我们看懂简单的JML规格并写出对应代码, 主要用到的知识点有: 1.requires 该子句 ...
- mysql分表之后怎么平滑上线?
分表的目的 项目开发中,我们的数据库数据越来越大,随之而来的是单个表中数据太多.以至于查询数据变慢,而且由于表的锁机制导致应用操作也受到严重影响,出现了数据库性能瓶颈. 当出现这种情况时,我们可以考虑 ...
- 色彩滤镜矩阵(Color Filter Array)
数码相机上的每个象素都带有一个光感应器,用以测量光线的明亮程度.由于光电二极管是只支持单颜色的装置,它不能区别不同波长的光线.因此,数码相机工程师在相机感应器的上部装上了一套镶嵌式的颜色滤镜,一个颜色 ...
- 我的一些JAVA基础见解
这个学期学习JAVA基础课,虽说之前都自学过,但在学习时仍可以思考一些模糊不清的问题,可以更深一步的思考.在这里写下一些需要深入的知识点,对小白们也很友好~ 一.Java数据类型 1.基本数据类型 这 ...
- Python课程笔记(九)
本次课程主要学习了Excel和JSON格式的一些读写操作.课程代码 一.Excel数据读写操作 1.安装模块 pip install xlrd pip install xlwt 网不好可以采用三方库: ...
- ShardingSphere-初见
目录 概述 认识shardingjdbc shardingjdbc功能架构图 认识Sharding-Proxy 三个组件的比较 ShardingJdbc混合架构 ShardingShpere的功能清单 ...
- 外网访问vm虚拟机
目录 一.准备 二.外网访问主机电脑 三.外网访问VM虚拟机 一.准备 外网ip:39.189.8.5 访问https://www.ip138.com 可以查询外网ip 内网主机ip:192.168. ...