php特级课---5、网络数据转发原理
php特级课---5、网络数据转发原理
一、总结
一句话总结:
OSI七层模型 路由器 交换机 ARP 代理ARP
1、OSI7层模型?
电缆 MAC地址 ip 端口 应用
1层 通信电缆
2层 原MAC地址和要到达的MAC地址
3层 原ip和目的ip:同ip可能有多台电脑,对应多个MAC地址,所以需要找到真正需要的那个
4层 原端口号目的端口号
567层 人与应用软件完成(比如qq)

两台电脑通讯时,一台电脑通过7层模型组装数据,另一个通过7层模型解析数据

osi(Open System Interconnection Reference Model)
2、交换机工作原理?
学习 查找 广播

如上图所示,假设电脑的MAC地址分别为11、22、33、44
当主机11给主机33发送一个数据帧,目的地址33,源地址11,各个设备间工作如图所示:

提示:当在交换机的MAC地址表能找到对应设备的 MAC地址与端口关系,则单播发送至对应设备;如果不能找到,则进行广播,查找目标地址与端口。
3、路由器工作原理?
网段 查询路由表 传递数据
1、路由器接收来自它连接的某个网站的数据。
2、路由器将数据向上传递,并且(必要时)重新组合IP数据报。
3、路由器检查IP头部中的目的地址,如果目的地址位于发出数据的那个网络,那么路由器就放下被认为已经达到目的地的数据,因为数据是在目的计算机所在网络上传输。
4、如果数据要送往另一个网络,那么路由器就查询路由表,以确定数据要转发到的目的地。
5、路由器确定哪个适配器负责接收数据后,就通过相应的软件传递数据,以便通过网络来传送数据。
工作原理示例:
(1)工作站A将工作站B的地址12.0.0.5连同数据信息以数据包的形式发送给路由器1。
(2)路由器1收到工作站A的数据包后,先从包头中取出地址12.0.0.5,并根据路径表计算出发往工作站B的最佳路径:R1->R2->R5->B;并将数据包发往路由器2。
(3)路由器2重复路由器1的工作,并将数据包转发给路由器5。
(4)路由器5同样取出目的地址,发现12.0.0.5就在该路由器所连接的网段上,于是将该数据包直接交给工作站B。
(5)工作站B收到工作站A的数据包,一次通信过程宣告结束。
4、ARP协议工作原理?
地址 ARP 广播 回复 存储




5、如何查询电脑的ARP缓存?
arp -a

6、路由器能传递广播么?
不能
一个网段 穿越 交换机
不能
广播只能在一个网段里面传播,所以广播可以穿越交换机,但是广播没方法穿越路由器
7、代理ARP工作原理?
arp广播 不能 路由器 网关 转发
因为arp广播不能穿越路由器,但是路由器比较好,所以用arp广播把源数据给网关的MAC地址,路由器帮忙转发


8、路由器和交换机的对比?
路由 网络层 外网 ip
交换机 数据链路层 内网 MAC地址
路由工作在网络层
Ø根据“路由表”转发数据
Ø路由表中含有网段和接口
交换工作在数据链路层
Ø根据“mac地址表”转发数据
Ømac地址表中含有mac地址和接口
二、内容在总结中
php特级课---5、网络数据转发原理的更多相关文章
- H3C 无线交换机的数据转发原理
- TCP的三次握手和四次挥手与路由器(三层)转发原理
传输层是国际标准化组织提出的开放系统互连(OSI)参考模型中的第四层.该层协议为网络端点主机上的进程之间提供了可靠.有效的报文传送服务.其功能紧密地依赖于网络层的虚拟电路或数据报服务.传输层定义了主机 ...
- LINUX下的远端主机登入 校园网络注册 网络数据包转发和捕获
第一部分:LINUX 下的远端主机登入和校园网注册 校园网内目的主机远程管理登入程序 本程序为校园网内远程登入,管理功能,该程序分服务器端和客户端两部分:服务器端为remote_server_udp. ...
- php特级课---2、网站大数据如何存储
php特级课---2.网站大数据如何存储 一.总结 一句话总结: mysql主从,分库分表,mysql分区,mysql集群,Nosql 1.mysql主从服务器各自的功能是什么? 增删改,主服务器 查 ...
- 配置Linux数据转发(给其他接口转发一个接口的internet网络)
配置Linux数据转发 [主机]第一步开启转发net.ipv4.ip_forward = 1echo "1" > /proc/sys/net/ipv4/ip_forward第 ...
- php特级课---1、网站大访问量如何解决
php特级课---1.网站大访问量如何解决 一.总结 一句话总结: 负载均衡和冗余技术 1.负载均衡和冗余技术是一回事么? 并不是:负载均衡是用户分流:冗余技术是避免出现单点故障 负载均衡:将不同的用 ...
- Android利用Fiddler进行网络数据抓包,手机抓包工具汇总
Fiddler抓包工具 Fiddler抓包工具很好用的,它可以干嘛用呢,举个简单例子,当你浏览网页时,网页中有段视频非常好,但网站又不提供下载,用迅雷下载你又找不到下载地址,这个时候,Fiddler抓 ...
- ElasticSearch 学习记录之 分布式文档存储往ES中存数据和取数据的原理
分布式文档存储 ES分布式特性 屏蔽了分布式系统的复杂性 集群内的原理 垂直扩容和水平扩容 真正的扩容能力是来自于水平扩容–为集群添加更多的节点,并且将负载压力和稳定性分散到这些节点中 ES集群特点 ...
- 中间人攻击(MITM)之数据截获原理
中间人攻击(MITM)之数据截获原理 - The data interception principle of the man in the middle attack (MITM) 交换式局域网中截 ...
随机推荐
- 【巷子】---vue路由懒加载---【vue】
一.懒加载 也叫延迟加载或者按需加载,即在需要的时候进行加载, 二.为什么要使用懒加载 像vue这种单页面应用,如果没有应用懒加载,运用webpack打包后的文件将会异常的大,造成进入首页时,需要 ...
- zabbix添加简单的监控
本文讲述给zabbix添加zabbix自带模板和自定义添加模板:安装zabbix请参考本文 1.1. 给主机添加zabbix自带监控模板 第一步: 第二步: 如果添加模板,但是模板并没有监控项,下面的 ...
- Oracle数据类型number
oracle数值类型只有number number(变长) 1.number可以存放整数,可以存放小数: 2.number(p,s) 说明: p表示有效位,s为小数位:范围p[1,38],s[-84, ...
- poj1952 BUY LOW, BUY LOWER【线性DP】【输出方案数】
BUY LOW, BUY LOWER Time Limit: 1000MS Memory Limit: 30000K Total Submissions:11148 Accepted: 392 ...
- IIS与ASP.NET中的线程池
1. W3 Thread Pool(W3TP) 当处于内核模式的http.sys接收到来自用户的请求之后,会将请求放入队列中.那处于用户模式的w3wp进程如何从内核模式的队列中取出请求呢?I/O完成端 ...
- Android NDK 导出独立工具链
传统方式调试 NDK 开发的程序比较麻烦,先要编译成 JNI,又要导出 java接口,还要再写一个 java 工程,改一个地方又要连续改几处,这样效率是很低的.最频繁使用的关键工作路径(编译/调试环节 ...
- Tfs 2015 代理池配置笔记
Tfs的构建代理池其实是在代理服务器上开启一个TFSBuild的代理服务,配好相关的Tfs地址后,就能在Tfs管理界面看到了. 如果是Tfs服务和发布代理是同一台服务器,具体操作详见: 安装TFS20 ...
- make linux test main attempt to index a nil value
Lua: getting started http://www.lua.org/start.html#learning Building from source Lua is very easy to ...
- No module named pip.req
https://stackoverflow.com/questions/25192794/no-module-named-pip-req#
- Qt:QPushButton 单击、双击响应区分
开发环境:win10+vs2015+qt5.9.1 背景:QPushButton的双击事件虽然一直有,但是在双击完成之前,总会响应到单击的事件处理或者连接槽,使用很不方便.自己子类化了一个QPushB ...